网上看到一个集装箱装箱软件1.03版本(如果需要,华君软件园就有),其执行程序spack.exe没有加壳,VB6.0, 用OD分析,W窗口,右击,点实行,出现列表中有注册字样,双击,返回C窗口,Crtl+N, 通过在注册窗口拦截rtcmsgbox,停在了下面所示的地方。朝上看了一点, 有getwindowthreadprocess的函数,照理说660DC5E8这个地方就是管注册的跳转,可是为什么我怎么改都无法爆破过去呢?请达人释疑。另外,这个软件是要取机器码的,这段程序n多循环,看到眼发花,不知哪位可以找出它的算法来。
660DC5DA FF15 94140066 CALL DWORD PTR DS:[<&USER32.GetWindowThreadProcess>;
USER32.GetWindowThreadProcessId
660DC5E0 8B4424 10 MOV EAX,DWORD PTR SS:[ESP+10]
660DC5E4 394424 14 CMP DWORD PTR SS:[ESP+14],EAX (本行应该是关键比较)
660DC5E8 ^0F84 C4FEFFFF JE MSVBVM60.660DC4B2
660DC5EE 6A 02 PUSH 2
660DC5F0 56 PUSH ESI
660DC5F1 ^EB D5 JMP SHORT MSVBVM60.660DC5C8
660DC5F3 > 55 PUSH EBP (拦截rtcmsgbox的时候停在了这里)
660DC5F4 8BEC MOV EBP,ESP
660DC5F6 83EC 4C SUB ESP,4C
660DC5F9 8B4D 14 MOV ECX,DWORD PTR SS:[EBP+14]
660DC5FC 53 PUSH EBX
660DC5FD 56 PUSH ESI
660DC5FE 57 PUSH EDI
660DC5FF 66:8339 0A CMP WORD PTR DS:[ECX],0A
660DC603 B8 04000280 MOV EAX,80020004
660DC608 0F85 FC000000 JNZ MSVBVM60.660DC70A
660DC60E 3941 08 CMP DWORD PTR DS:[ECX+8],EAX
660DC611 0F85 F3000000 JNZ MSVBVM60.660DC70A
[培训]科锐逆向工程师培训第53期2025年7月8日开班!