学着,各位高手的教程,脱一DELPHI的程序时遇到些困难,希望路过的高手帮帮忙。谢谢!!!
:问题一,[如何确定 windycandy 所说的 重要数据① 呢?]
00975BD0 55 PUSH EBP
00975BD1 8BEC MOV EBP,ESP
00975BD3 83C4 EC ADD ESP,-14
00975BD6 33C0 XOR EAX,EAX
00975BD8 8945 EC MOV DWORD PTR SS:[EBP-14],EAX
00975BDB B8 F0439700 MOV EAX,GGJ.009743F0
00975BE0 E8 A316A9FF CALL GGJ.00407288-----是这个吗?重要数据①
00975BE5 33C0 XOR EAX,EAX
00975BE7 55 PUSH EBP
00975BE8 68 1D5E9700 PUSH GGJ.00975E1D
00975BED 64:FF30 PUSH DWORD PTR FS:[EAX]
00975BF0 64:8920 MOV DWORD PTR FS:[EAX],ESP
00975BF3 E9 01000000 JMP GGJ.00975BF9
00975BF8 19A1 641B9800 SBB DWORD PTR DS:[ECX+981B64],ESP
00975BFE 8B00 MOV EAX,DWORD PTR DS:[EAX]
00975C00 E8 7B35B2FF CALL GGJ.00499180
问题二,如何确定IAT的开始位置:
...........省略部分代码
009941EC 00597820 test.00597820 [test为目标文件名称 ]
009941F0 00594C30 test.00594C30
009941F4 00000000
009941F8 00000000
009941FC 00000000
00994200 00000000
00994204 00000000
00994208 77F87BF9 ntdll.RtlDeleteCriticalSecti[这里是否是开始位置?]
0099420C 77F89134 ntdll.RtlLeaveCriticalSection
00994210 77F89103 ntdll.RtlEnterCriticalSection
...........省略部分代码
问题三,如何确定IAT的确定IAT的结束位置:
...........省略部分代码
00994C30 77E69BBA kernel32.MulDiv [这里是否是结束位置?]
00994C34 00000000
...........省略部分代码
00994E00 005A3476 test.005A3476
00994E04 00000000
...........省略部分代码
问题四:关于ESI值的变化
如何确定要更改的,那三个数字.
(就是其中两个跳转有效,如何辩别哪个数字对应的是IAT加密。)
这个问题困扰偶好久了,不知是什么原理。。。
015574FE 3BF0 CMP ESI,EAX
01557500 75 5E JNZ SHORT 01557560
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)