二、去自效验。OD载入修复后的文件,下bp rtcFileLen断点,运行,F8后返回到:
004C93CB . FF15 D4B25300 call dword ptr ds:[<&msvbvm60.rtcFile>; msvbvm60.rtcFileLen
上面的CALL取得文件大小存入EAX中。
004C93D1 3D F4600A00 cmp eax, 0A60F4 //
004C93D6 . 7E 36 jle short SSQXHDS.004C940E //0A60F4改为13C000
此处改为jmp short SSQXHDS.004C9439,在我的电脑上不能去自效验,看其他学员的破文好像能行不知怎么回事?
004C93D8 . BE E7030000 mov esi, 3E7
004C93DD . BA 01000000 mov edx, 1
004C93E2 . 33C9 xor ecx, ecx
004C93E4 > 3BCE cmp ecx, esi
004C93E6 . 7F 24 jg short SSQXHDS.004C940C
004C93E8 . 8BF8 mov edi, eax
004C93EA . 0FAFF8 imul edi, eax
004C93ED . 0F80 9B000000 jo SSQXHDS.004C948E
004C93F3 . 0FAFF8 imul edi, eax
004C93F6 . 0F80 92000000 jo SSQXHDS.004C948E
004C93FC . 8BC7 mov eax, edi
004C93FE . 8BFA mov edi, edx
004C9400 . 03F9 add edi, ecx
004C9402 . 0F80 86000000 jo SSQXHDS.004C948E
004C9408 . 8BCF mov ecx, edi
004C940A .^ EB D8 jmp short SSQXHDS.004C93E4
004C940C >- EB FE jmp short SSQXHDS.004C940C
004C940E > 83E8 01 sub eax, 1
004C9411 B9 F4600A00 mov ecx, 0A60F4 //0A60F4改为13C000
004C9416 . 70 76 jo short SSQXHDS.004C948E
004C9418 . 2BC8 sub ecx, eax
004C941A . 70 72 jo short SSQXHDS.004C948E
004C941C . 894D 98 mov dword ptr ss:[ebp-68], ecx
004C941F . DB45 98 fild dword ptr ss:[ebp-68]
004C9422 . DD5D 90 fstp qword ptr ss:[ebp-70]
004C9425 . 8B55 94 mov edx, dword ptr ss:[ebp-6C]
04C9428 . 8B45 90 mov eax, dword ptr ss:[ebp-70]
004C942B . 52 push edx
004C942C . 50 push eax
004C942D . FF15 30104000 call dword ptr [<&msvbvm60.rtcLog>] ; msvbvm60.rtcLog 这里会跳出自校验提示窗口
004C9433 . FF15 28134000 call dword ptr [<&msvbvm60.__vbaFpI4>>; msvbvm60.__vbaFpI4
这里会跳出自校验提示窗口
004C9439 . 8945 E0 mov dword ptr [ebp-20], eax