Dun Meter Millennium Pro 1.0是一个“能测试上网速度,并且用图形和文本建立下载速度表”的软件。你能自《软件》光盘2000年第三期中或从其作者主页http://dmmillennium.cjb.net/处得到。使用时无日期限制,但有延迟画面。
Let’s try to get rid of the NAG.
用Typ_d32发现此软件用ASPACK 1.083压缩。首先
第一步:解压缩 用TRW2000 LOAD DmMillennium.exe,程序自动停在入口 0167:004D0000 PUSHA 0167:004D0001 CALL 004DE006 <---用F10带过后程序主画面就显示出来。 故F8追入 以后用F10走,......这样一直走到 0167:004DE559 JNZ 004DE563 <---JUMP 0167:004DE55B MOV EAX, 01 0167:004DE560 RET 0C 0167:004DE563 PUSH EAX 0167:004DE564 RET <---走过这一步,就跳到
0167:004A1C18 ...... <---开始执行解压缩后的真正的程序代码 . . . . .
所以在 0167:004DE564 RET 这一步,可以脱壳了。TRW2000共享版未 提供PEDUMP与MAKEPE这两条命令,但我有TRW 0.75版,虽然很不稳定,却有上 述两条命令。所以改用TRW 0.75,载入后到 0167:004DE564 RET, 下命令 PEDUMP(回车) G(回车) 你会在DESKTOP OR TRW0.75目录下 OR C盘根目录下找到DUMP1.EXE文件 , 这就是解压缩后的DmMillennium.exe文件。但此时执行DUMP1.EXE,它会告诉你 执行了非法程序。WHY?因为它的Entry Point 是 000DE564,所以用PROCDUMP 1.62,选 PE Editor /DUMP1.EXE,将Entry Point 由000DE564 改为 000A1C18,即真正的程序入口处,OK!程序执行了。
第二步:去除延迟画面 用TRW2000再次载入DUMP1.EXE
//******************** Program Entry Point ******** :004A1C18 55 push ebp :004A1C19 8BEC mov ebp, esp :004A1C1B 83C4F4 add esp, FFFFFFF4 :004A1C1E 53 push ebx :004A1C1F B818174A00 mov eax, 004A1718 :004A1C24 E8AF46F6FF call 004062D8 :004A1C29 8B1D08384A00 mov ebx, dword ptr [004A3808] :004A1C2F 8B03 mov eax, dword ptr [ebx] :004A1C31 E83A68FAFF call 00448470 :004A1C36 8B03 mov eax, dword ptr [ebx] :004A1C38 BAA01C4A00 mov edx, 004A1CA0 :004A1C3D E85264FAFF call 00448094 :004A1C42 8B0DE4344A00 mov ecx, dword ptr [004A34E4] :004A1C48 8B03 mov eax, dword ptr [ebx] :004A1C4A 8B15D4F64900 mov edx, dword ptr [0049F6D4] :004A1C50 E83368FAFF call 00448488 :004A1C55 8B0D64354A00 mov ecx, dword ptr [004A3564] :004A1C5B 8B03 mov eax, dword ptr [ebx] :004A1C5D 8B1594C24900 mov edx, dword ptr [0049C294] :004A1C63 E82068FAFF call 00448488 :004A1C68 8B0D9C354A00 mov ecx, dword ptr [004A359C] :004A1C6E 8B03 mov eax, dword ptr [ebx] :004A1C70 8B1514F44900 mov edx, dword ptr [0049F414] :004A1C76 E80D68FAFF call 00448488 :004A1C7B A19C354A00 mov eax, dword ptr [004A359C] :004A1C80 8B00 mov eax, dword ptr [eax] :004A1C82 8B10 mov edx, dword ptr [eax] :004A1C84 FF92CC000000 call dword ptr [edx+000000CC] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ :004A1C8A 8B03 mov eax, dword ptr [ebx] :004A1C8C E87768FAFF call 00448508 :004A1C91 5B pop ebx :004A1C92 E8051DF6FF call 0040399C :004A1C97 00FF add bh, bh :004A1C99 FFFFFF BYTE 3 DUP(0ffh) 注意到:004A1C84 FF92CC000000 call dword ptr [edx+000000CC],由此延迟画面出现了,强迫程序跳过去即可。故 将 FF92CC000000 改为 909090909090 OK!
|