最近在学习认识反汇编代码。
在阅读过基本的指令之后,开始想拿API的汇编代码来实践一下。
下面是TerminateProcess的反汇编代码,我遇到一处不解的地方。
盼版主帮助。
kernel32!TerminateProcess:
7c801e16 8bff mov edi,edi
7c801e18 55 push ebp
7c801e19 8bec mov ebp,esp
7c801e1b 837d0800 cmp dword ptr [ebp+8],0
7c801e1f 7509 jne kernel32!TerminateProcess+0x14 (7c801e2a)
kernel32!TerminateProcess+0xb:
7c801e21 6a06 push 6
7c801e23 e888740000 call kernel32!SetLastError (7c8092b0)
7c801e28 eb1b jmp kernel32!TerminateProcess+0x2f (7c801e45)
kernel32!TerminateProcess+0x14:
7c801e2a ff750c push dword ptr [ebp+0Ch]
7c801e2d ff7508 push dword ptr [ebp+8]
7c801e30 ff15fc13807c call dword ptr [kernel32!_imp__NtTerminateProcess (7c8013fc)]
7c801e36 85c0 test eax,eax
7c801e38 7c05 jl kernel32!TerminateProcess+0x29 (7c801e3f)
kernel32!TerminateProcess+0x24:
7c801e3a 33c0 xor eax,eax
7c801e3c 40 inc eax
7c801e3d eb08 jmp kernel32!TerminateProcess+0x31 (7c801e47)
kernel32!TerminateProcess+0x29:
7c801e3f 50 push eax
7c801e40 e826750000 call kernel32!BaseSetLastNTError (7c80936b)
kernel32!TerminateProcess+0x2f:
7c801e45 33c0 xor eax,eax
kernel32!TerminateProcess+0x31:
7c801e47 5d pop ebp
7c801e48 c20800 ret 8
请问红色的两句指令合起来是什么意思?
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!