只是兴趣,没有别的目的.
一个加了arpr 2.1壳.有附加数据.处理完了现在不能运行.一点一闪而过~
我用函数入手
我用OD载入软件下断 BP ExitProcess F9 运行.
7C81CAA2 > $ 8BFF MOV EDI,EDI ; 1.004AF048 鼠标停在这里.
7C81CAA4 . 55 PUSH EBP
7C81CAA5 . 8BEC MOV EBP,ESP
7C81CAA7 . 6A FF PUSH -1
7C81CAA9 . 68 B0F3E877 PUSH 77E8F3B0
7C81CAAE . FF75 08 PUSH DWORD PTR SS:[EBP+8]
7C81CAB1 . E8 46FFFFFF CALL kernel32.7C81C9FC
7C81CAB6 . E9 29CF0100 JMP kernel32.7C8399E4
看堆栈信息 从这里可以看出调用.0040419A 然后。CRTL+G 查找0040419A
0012FF94 0040419F /CALL 到 ExitProcess 来自 1.0040419A
0012FF98 00000000 \ExitCode = 0
0012FF9C 0012FFC0
0012FFA0 7C930738 ntdll.7C930738
0012FFA4 FFFFFFFF
找到这里
0040419A |. E8 29D1FFFF |CALL <JMP.&kernel32.ExitProcess> ; \ExitProcess 找这个CALL的首部
0040419F |> 8B03 |MOV EAX,DWORD PTR DS:[EBX]
004041A1 |. 56 |PUSH ESI
004041A2 |. 8BF0 |MOV ESI,EAX
004041A4 |. 8BFB |MOV EDI,EBX
__________________________
004040E0 /$ 53 PUSH EBX
004040E1 |. 56 PUSH ESI
004040E2 |. 57 PUSH EDI
004040E3 |. 55 PUSH EBP
信息栏内容。。
局部调用来自 004041BD, 004ABE9D
然后我查找。004041BD
来到这里。后向上没跳转了。显示跳转为
004041B8 /$ A3 00C04A00 MOV DWORD PTR DS:[4AC000],EAX
004041BD |. E8 1EFFFFFF CALL 1.004040E0
004041C2 |. C3 RETN
004041C3 | 90 NOP
004041C4 |$ 8F05 04C04A00 POP DWORD PTR DS:[4AC004]
信息栏内容为
[004AC000]=00000000
局部调用/跳转来自 00402882, 004041CA, 0040CE2A
望高手指点。我在这里怎么也找不下去了,
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课