Cool Tray 2001 (2.0.0) 爆破札记
特别感谢TAE![CCG]对我的大力帮助,使我顺利完成此次破解!
作 者:PaulYoung[FCG,BCG]
时 间:2001年7月21日
软件简介:1、从1901年至2060年共计160年的中国农历历法,精确、方便,同时弥补了 Windows 时钟没有农历和星期显示;2、直观精确的键盘按键次数统计,操作异常方便;3、记录鼠标在屏幕上移动的距离,可以选择八种距离单位,击键次数严格区分左键、右键、单击、双击;4、在
Windows 任务栏状态区中提示物理内存、CPU 使用率图形显示,防止系统崩溃;5、即时、整点汉语语音报时,包含公历、农历日期及时间,小巧实用的闹钟,可以方便提醒您时间;6、Windows
任务栏状态区中动画显示 CD-ROM 中是否有光碟,可以通过右键菜单或双击图标开关 CD-ROM;软件对 CPU 的使用率低于百分之一,并且操作使用绝对直观方便!
下 载:http://mengliao.126.com
功能限制:未注册版在切换功能时,有提示窗口,而且时间非常的长,令人厌烦。
破解工具:FILEINFO V2.43A,CASPR 1.100,W32DASM V8.93,HIEW V6.45,TRW2000 V1.03
_________________________________________________________________________________________________
一、用FILEINFO侦察,发现其用ASPROTECT 1.1加壳,用CASPR脱壳。该软件防SOFT-ICE,反汇编找到出错语句,往上看……
:004B236E E879FBFFFF call 004B1EEC //NOP掉此call
:004B2373 84C0
test al, al
:004B2375 7457
je 004B23CE
.
.
.
* Possible StringData Ref from Data Obj ->"信息:
SoftICE 正在运行!
请退出 "
->"Debug 模式后,再运行本软件。"
二、脱壳后的程序运行出错,估计它有自校验。用TRW 2000 LOAD此软件,F10直到……
:004B2402 E875BDF9FF call 0044E17C
//此处出错,F8跟入……再F10单步跟踪……直到
:0044E1AD FF572C
call [edi+2C] //此处出错,F8跟入……再F10单步跟踪……直到
:004472BC E87BC0FBFF call 0040333C
//此处出错,F8跟入……再F10单步跟踪……直到
:004A95A1 8B45FC
mov eax, dword ptr [ebp-04]
:004A95A4 3B45F8
cmp eax, dword ptr [ebp-08]
:004A95A7 740C
je 004A95B5 //改为750C
* Possible StringData Ref from Data Obj ->"002FAE36" //出错信息
|
:004A95A9 6858964A00 push 004A9658
:004A95AE 6A00
push 00000000
:004A95B0 E837D1F5FF call 004066EC
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004A95A7(C)
|
:004A95B5 33C0
xor eax, eax
自校验问题解决。
三、在软件“关于”处,有“未注册版本,请您注册!”的信息,在“串式参考”处找到这条信息,来到……
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:004B1A68(C), :004B1A6D(C), :004B1A78(C), :004B1A7D(C)
//此4处调用,进入……
|
* Possible StringData Ref from Data Obj ->"未注册版本,请您注册!"
|
:004B1ACF B83C1C4B00 mov eax,
004B1C3C
:004B1AD4 894728
mov dword ptr [edi+28], eax
来到……
:004B1A62 8B55E4
mov edx, dword ptr [ebp-1C]
:004B1A65 3B55D4
cmp edx, dword ptr [ebp-2C]
:004B1A68 7565
jne 004B1ACF //改为7465
:004B1A6A 3B45D0
cmp eax, dword ptr [ebp-30]
:004B1A6D 7560
jne 004B1ACF //改为7460
:004B1A6F 8B45D8
mov eax, dword ptr [ebp-28]
:004B1A72 8B55DC
mov edx, dword ptr [ebp-24]
:004B1A75 3B55CC
cmp edx, dword ptr [ebp-34]
:004B1A78 7555
jne 004B1ACF //改为7455
:004B1A7A 3B45C8
cmp eax, dword ptr [ebp-38]
:004B1A7D 7550
jne 004B1ACF //改为7450
:004B1A7F 8D55E8
lea edx, dword ptr [ebp-18]
现在在“关于”处已经显示为注册版本了,注册信息放在注册表中的……
REGEDIT4
[HKEY_CURRENT_USER\Software\Mengliao\Cool Tray\Ver 2001 (2.0.0)\Registration]
"RegName"="用户名"
"RegCompany"="公司"
"RegSerial"="注册码"
你爱怎么填就怎么填吧。
四、但现在的程序在切换功能时,还有提示窗口。
此时在 TRW2000 下BPX HMEMCPY ,再切换功能,立即中断,按F12直到出现提示窗口,注册提示窗口消失时,再次中断于……
:004A98F2 C3
ret
往上看……
:004A9893 8B542404 mov
edx, dword ptr [esp+04]
:004A9897 3B542414 cmp
edx, dword ptr [esp+14]
:004A989B 751A
jne 004A98B7 //改为741A
:004A989D 3B442410 cmp
eax, dword ptr [esp+10]
:004A98A1 7514
jne 004A98B7 //改为7414
:004A98A3 8B442408 mov
eax, dword ptr [esp+08]
:004A98A7 8B54240C mov
edx, dword ptr [esp+0C]
:004A98AB 3B54241C cmp
edx, dword ptr [esp+1C]
:004A98AF 7504
jne 004A98B5
:004A98B1 3B442418 cmp
eax, dword ptr [esp+18]
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004A98AF(C)
|
:004A98B5 7434
je 004A98EB //改为7534
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:004A989B(C), :004A98A1(C)
|
:004A98B7 80BB2508000000 cmp byte ptr [ebx+00000825],
00
:004A98BE 752B
jne 004A98EB
:004A98C0 8B0D98204D00 mov ecx, dword
ptr [004D2098]
:004A98C6 8B09
mov ecx, dword ptr [ecx]
:004A98C8 B201
mov dl, 01
_________________________________________________________________________________________________
终于彻底搞定了!PeterChen,最近实在太忙了,这篇文章水平虽然不高,但也算是对Free Cracking Group 的一点小小心意吧。
- 标 题:PeterChen and [FCG]member,我交作业了:《Cool Tray 2001 (2.0.0) 爆破札记》 (5千字)
- 作 者:paulyoung
- 时 间:2001-7-21 20:47:20
- 链 接:http://bbs.pediy.com