tailieunhanh - Cracker Handbook 1.0 part 217

Tham khảo tài liệu 'cracker handbook part 217', công nghệ thông tin, kỹ thuật lập trình phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả | Nhưng nhiệm vụ tiếp theo và rất quan trọng của chúng ta là làm cách nào để biểu đạt đoạn code dưới dạng ASM đó thành đoạn code dưới dạng cú pháp của một ngôn ngữ bậc cao ví dụ như C . IV. Assembly code to C Bây giờ giả sử rằng tôi và các bạn có một đoạn code ASM và chúng ta có thể đọc hiểu được nó để biết được chương trình đang làm nhiên vì hầu hết các câu lệnh ASM chỉ thực hiện một nhiệm vụ thông thường do đó rất khó cho chúng ta biết được tổng quát nhiệm vụ của chương trình đang thực hiện cái gì. Hãy xem một đoạn mã ASM dưới đây .004122F0 55 push ebp .004122F1 8BEC mov ebp esp .004122F3 83EC48 sub esp 048 H .004122F6 53 push ebx .004122F7 56 push esi .004122F8 57 .004122F9 C745F800000000 08 000000000 push edi mov d ebp - .00412300 EB09 jmps .00041230B ị 1 .00412302 8B45F8 mov eax ebp -08 .00412305 83C001 add eax 001 .00412308 8945F8 mov ebp -08 eax .0041230B 8B4508 mov eax ebp 08 .0041230E 50 push eax .0041230F FF1584A34300 call IstrlenA .00412315 3945F8 cmp ebp -08 eax .00412318 7D2E jge .000412348 -----ị 2 .0041231A 8B4508 mov eax ebp 08 .0041231D 0345F8 add eax ebp -08 .00412320 8A08 mov cl eax .00412322 884DFF mov ebp -01 cl .00412325 0FB645FF movzx eax b ebp -01 .00412329 83F861 cmp eax 061 a .0041232C 7C18 jl .000412346 -----ị 1 .0041232E 0FB645FF movzx eax b ebp -01 .00412332 83F87A cmp eax 07A z .00412335 7F0F jg .000412346 -----ị 2 .00412337 0FB645FF .0041233B 83E820 .0041233E 8B4D08 .00412341 034DF8 .00412344 8801 .00412346 EBBA .00412348 5F .00412349 5E .0041234A 5B .0041234B 8BE5 .0041234D 5D .0041234E C3 movzx eax b ebp -01 sub mov add mov jmps PoP PoP PoP mov PoP retn eax 020 ecx ebP 08 ecx ebP -08 ecx al .000412302 ----1 3 edi esi ebx esP ebP ebP Bạn thấy đấy trên đây là một đoạn mã ASM sử dụng rất nhiều các câu lệnh đơn giản kết hợp với nhau và cuối cùng là để thực hiện một nhiệm vụ nào đó mà chính chúng ta cần phải tìm hiểu. Chúng ta sẽ bắt đầu làm việc từ câu lệnh đầu tiên và cứ như thế cho đến hết cố gắng để có một cái nhìn

TÀI LIỆU LIÊN QUAN
10    158    1
6    184    1
7    162    1
5    157    1
6    160    1
6    152    1
6    150    1
6    206    1
7    154    1