首先本人是个菜鸟,今天碰到一个程序,是PECompact 2.x -> Jeremy Collake,最后壳是脱掉了,但有一个地方还是不懂,所以想请教下高手,这块到底是什么意思
OD载入
0041F18F > $ B8 40F14700 mov eax, 0047F140
0041F194 . 50 push eax
0041F195 . 64:FF35 00000>push dword ptr fs:[0]
0041F19C . 64:8925 00000>mov dword ptr fs:[0], esp
0041F1A3 . 33C0 xor eax, eax
0041F1A5 . 8908 mov dword ptr [eax], ecx
0041F1A7 . 50 push eax
0041F1A8 . 45 inc ebp
0041F1A9 . 43 inc ebx
0041F1AA . 6F outs dx, dword ptr es:[edi]
0041F1AB . 6D ins dword ptr es:[edi], dx
走了几步就跟到这个位置了
7C92E460 8B1C24 mov ebx, dword ptr [esp]
7C92E463 51 push ecx
7C92E464 53 push ebx
7C92E465 E8 E6C40100 call 7C94A950
7C92E46A 0AC0 or al, al
7C92E46C 74 0C je short 7C92E47A
7C92E46E 5B pop ebx
7C92E46F 59 pop ecx
7C92E470 6A 00 push 0
7C92E472 51 push ecx
7C92E473 E8 C8EBFFFF call ZwContinue
7C92E478 EB 0B jmp short 7C92E485
要是在7C92E473 E8 C8EBFFFF call ZwContinue这继续F8的话就挂掉了,我跟进去了,进去后是
7C92D040 > B8 20000000 mov eax, 20
7C92D045 BA 0003FE7F mov edx, 7FFE0300
7C92D04A FF12 call dword ptr [edx]
然后在7C92D04A FF12 call dword ptr [edx]这继续F7进去了
之后就是一直往下走,一直走到这个地方
0047F20D - FFE0 jmp eax ; Virtual_.<模块入口点>
它就跳到下面这了,然后脱了一下,脱掉了,也能正常运行
0041F18F > $ 6A 60 push 60
0041F191 ? 68 E84C4400 push 00444CE8
0041F196 ? E8 990B0000 call 0041FD34
0041F19B ? BF 94000000 mov edi, 94
0041F1A0 ? 8BC7 mov eax, edi
0041F1A2 ? E8 89EEFFFF call 0041E030
0041F1A7 . 8965 E8 mov dword ptr [ebp-18], esp
0041F1AA . 8BF4 mov esi, esp
我现在不明白的就是
7C92E473 E8 C8EBFFFF call ZwContinue这以后的操作及ZwContinue,站内找了下,还是不太明白,所以哪位能大概说一下这具体的含义,小弟先谢过了
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!