破文作者: machenglin 软件名称: DVDFab Platinum V2.9.8.0 下载地址: http://209.172.35.173/download/DVDFabPlatinum29.exe 软件大小: 2.8 MB 软件语言: 英文 软件类别: 国外软件 / 共享版 / 应用平台: Windows 98/SE/Me, NT/2000/XP, Server 2003 加入时间: 2006-06-29 软件介绍: DVDFab Platinum is all you need to backup DVDs. It combines the one-click convenience of DVDFab Express with the power of DVDFab Gold. Version : ASProtect 2.xx (may be 2.11) Registered [8] 编译语言: VC6 加壳选项: 无Stolen OEP SDK 使用: 无UserBuffer, 无CRC 用Volx大侠的脚本是本人认为最稳定和快速的,感谢Volx大侠的辛勤劳动,使我们感到方便。运行Volx大侠的脚本到OEP。 004797BE d> 55 push ebp ; OEP! 004797BF 8BEC mov ebp,esp 004797C1 6A FF push -1 004797C3 68 A8314800 push dumped_.004831A8 004797C8 68 C4954700 push 004797CD 64:A1 00000000 mov eax,dword ptr fs:[0] LordPE--->dump--->dumped.exe。 ImportREC,OEP=000797BE,RVA=0007E000,SIZE=BC8。 获取输入表,显示未解决的指针1个为AD7758,剪切这个无效指针,修复转存文件,保存为dumped_.exe。 ============================================================================================================ 重新启动OD,载入dumped_.exe。F9运行,出现“内存地址00AD7758处不易读取”错误。 在堆栈窗口找到: 0012FDE0 00404185 返回到 dumped_.00404185 来自 00AD7758 ; 这里右键反汇编跟随。 0012FDE4 02000000 CrashRpt.02000000 0012FDE8 0048A3C4 ASCII "InstallEx" 0012FDEC 0040331A 返回到 dumped_.0040331A 来自 dumped_.00404163 跟随到这里。 0040417F FF15 C0E14700 call dword ptr ds:[47E1C0] ; 注意这个[47E1C0] 00404185 85C0 test eax,eax ; 跟随到这里,望上看! 00404187 74 31 je short dumped_.004041BA 00404189 68 ACA34800 push dumped_.0048A3AC ; ASCII "DVDFab - Crash Report" 0040418E 68 98A34800 push dumped_.0048A398 ; ASCII "service@dvdidle.com" 00404193 6A 00 push 0 00404195 FFD0 call eax ds:[0047E1C0]=00AD7758 是这里出错了。 另启动一个OD,加载原版程序,用Volx大侠的脚本跑到OEP。 下断 BP 0040417F。 断下后,F7进入。 00AD7758 55 push ebp 00AD7759 8BEC mov ebp,esp 00AD775B 8B55 0C mov edx,dword ptr ss:[ebp C] 00AD775E 8B45 08 mov eax,dword ptr ss:[ebp 8] 00AD7761 3B05 58A4AE00 cmp eax,dword ptr ds:[AEA458] 00AD7767 75 09 jnz short 00AD7772 00AD7769 8B0495 58A4AE00 mov eax,dword ptr ds:[edx*4 AEA458] 00AD7770 EB 07 jmp short 00AD7779 00AD7772 52 push edx 00AD7773 50 push eax 00AD7774 E8 03E0FEFF call 00AC577C ; jmp to kernel32.GetProcAddress 右键跟随00AD7774进入: 00AC577C - FF25 78D2AE00 jmp dword ptr ds:[AED278] ; kernel32.GetProcAddress ds:[00AED278]=7C80AC28 (kernel32.GetProcAddress) 回到载入dumped_.exe的OD,修改: ds:[0047E1C0]=00AD7758 修改成: ds:[00AED278]=7C80AC28 (kernel32.GetProcAddress) 在数据窗口中选择7C80AC28,复制到可执行文件。 F9,运行。呵呵,出来一个注册的窗口,看来还需要解决注册的这个窗口。 ============================================================================================================ 反文件自校验的方法很多,我这里采用NBW大侠的401000搜索大法。 重新载入修改的脱壳文件,F9运行,停在调试字符2次后,Alt M,在00401000 ,F2下断。 F9运行,断在这里,F8步进。 00404197 83C4 0C add esp,0C 0040419A A3 F8244900 mov dword ptr ds:[4924F8],eax 0040419F EB 19 jmp short dumped_.004041BA 004041A1 68 8CA34800 push dumped_.0048A38C ; ASCII "UninstallEx" 004041A6 50 push eax 004041A7 FF15 C0E14700 call dword ptr ds:[47E1C0] ; kernel32.GetProcAddress 。。。。。。。。。。。 00403380 E8 B55B0700 call 00403385 E8 BF1A0200 call dumped_.00424E49 0040338A 8BC8 mov ecx,eax 0040338C E8 DD1B0200 call dumped_.00424F6E ; F7进入 00403391 FF15 B48B5100 call dword ptr ds:[<&ole32.OleUninitialize>] ; ole32.OleUninitialize F7进入,F8步进,来到这里。 004033CC E8 CF600700 call dumped_.004794A0 004033D1 51 push ecx 004033D2 56 push esi 004033D3 8BF1 mov esi,ecx 004033D5 E8 99040000 call dumped_.00403873 ; F7进入 F7进入,F8步进,来到这里。 004038CB FF15 4C805100 call dword ptr ds:[<&comctl32.ImageList_Load>; comctl32.ImageList_LoadImageA 004038D1 8986 14010000 mov dword ptr ds:[esi 114],eax 004038D7 E8 5D350200 call dumped_.00426E39 004038DC 8BC8 mov ecx,eax 004038DE E8 383D0200 call dumped_.0042761B ; F7进入 004038E3 33F6 xor esi,esi F7进入,F8步进,来到这里。 00427618 C2 0800 retn 8 0042761B E8 29D8FFFF call dumped_.00424E49 00427620 05 04010000 add eax,104 ; 注册标志在eax 104 00427625 74 0F je short dumped_.00427636 00427627 50 push eax 00427628 E8 AB1E0500 call 本机的eax=492CF0. eax 104=492CF0 104=492618. Ctrl G: 492618,这里全是0,写入想注册的名字,保存到执行文件。 OK。 为什么我在那里知道F7跟进, 我的经验是当步过这个CALL时,程序会稍微停滞读盘,就怀疑这个CALL有情况,由键跟随进去看看代码行就知道了。 |
|小黑屋|最新主题|手机版|微赢网络技术论坛 ( 苏ICP备08020429号 )
GMT+8, 2024-9-29 11:33 , Processed in 0.190634 second(s), 12 queries , Gzip On, MemCache On.
Powered by Discuz! X3.5
© 2001-2023 Discuz! Team.