飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2342|回复: 0

申请加入PYG破文一

[复制链接]

该用户从未签到

发表于 2005-11-19 15:50:08 | 显示全部楼层 |阅读模式
音像王 3.00  破解分析

=================================================================================
破解作者:风球
破解工具:PEID,OD
软件下载:http://nj.onlinedown.net/soft/44311.htm
软件大小:10545KB
软件语言:简体中文
软件类别:国产软件/共享版/商业贸易
运行环境:Win9x/Me/NT/2000/XP/2003
加入时间:2005-11-13 17:20:04
软件简介:荣创-音像王是目前音像行业最优秀的解决方案。荣创软件公司历经四年音像行业产品研发经验、成果集大成者,并在同类产品中长期保持绝对优势地位。目前全国用户逾2000家正在使用音像王软件,产品以界面简洁,操作方便,稳定性高,数据安全等特点获得广大用户的青睐。
=================================================================================

PEID查过为Borland Delphi 4.0 - 5.0
OD载入查找字符来到````

Ultra String Reference,项目 7134
Address=006F3CCD
Disassembly=mov eax,CdKing.006F3D30
Text String=祝贺您,注册成功!


006F3C70    55              push ebp                            ; 在此下断来分析
006F3C71    8BEC            mov ebp,esp
006F3C73    6A 00           push 0
006F3C75    6A 00           push 0
006F3C77    53              push ebx
006F3C78    8BD8            mov ebx,eax
006F3C7A    33C0            xor eax,eax
006F3C7C    55              push ebp
006F3C7D    68 153D6F00     push CdKing.006F3D15
006F3C82    64:FF30         push dword ptr fs:[eax]
006F3C85    64:8920         mov dword ptr fs:[eax],esp
006F3C88    8D55 FC         lea edx,dword ptr ss:[ebp-4]
006F3C8B    8B83 04030000   mov eax,dword ptr ds:[ebx+304]
006F3C91    E8 F659D4FF     call CdKing.0043968C
006F3C96    8D55 F8         lea edx,dword ptr ss:[ebp-8]
006F3C99    8B83 08030000   mov eax,dword ptr ds:[ebx+308]
006F3C9F    E8 E859D4FF     call CdKing.0043968C
006F3CA4    8B55 F8         mov edx,dword ptr ss:[ebp-8]        ; 假码
006F3CA7    8B45 FC         mov eax,dword ptr ss:[ebp-4]        ; 用户码
006F3CAA    E8 7DF6FFFF     call CdKing.006F332C                ; 跟进去看看
006F3CAF    84C0            test al,al
006F3CB1    74 47           je short CdKing.006F3CFA            ; 跳就OVER
006F3CB3    A1 CC1A7000     mov eax,dword ptr ds:[701ACC]
006F3CB8    8B00            mov eax,dword ptr ds:[eax]
006F3CBA    8B55 F8         mov edx,dword ptr ss:[ebp-8]
006F3CBD    E8 92EEE6FF     call CdKing.00562B54
006F3CC2    6A 00           push 0
006F3CC4    66:8B0D 243D6F0>mov cx,word ptr ds:[6F3D24]
006F3CCB    B2 02           mov dl,2
006F3CCD    B8 303D6F00     mov eax,CdKing.006F3D30             ; 祝贺您,注册成功
006F3CD2    E8 6519D7FF     call CdKing.0046563C

===================跟进 call CdKing.006F332C 分析===================

006F332C    55              push ebp                            ; 来到这里
006F332D    8BEC            mov ebp,esp
006F332F    83C4 E8         add esp,-18
006F3332    53              push ebx
006F3333    8955 F8         mov dword ptr ss:[ebp-8],edx        ; 假码
006F3336    8945 FC         mov dword ptr ss:[ebp-4],eax        ; 用户码
006F3339    8B45 FC         mov eax,dword ptr ss:[ebp-4]        ; 用户码入EAX
006F333C    E8 8F10D1FF     call CdKing.004043D0
006F3341    8B45 F8         mov eax,dword ptr ss:[ebp-8]
006F3344    E8 8710D1FF     call CdKing.004043D0
006F3349    33C0            xor eax,eax
006F334B    55              push ebp
006F334C    68 96336F00     push CdKing.006F3396
006F3351    64:FF30         push dword ptr fs:[eax]
006F3354    64:8920         mov dword ptr fs:[eax],esp
006F3357    8B45 FC         mov eax,dword ptr ss:[ebp-4]        ; 用户码
006F335A    E8 A9FDFFFF     call CdKing.006F3108                ; 算法CALL,跟进去看看
006F335F    DD5D F0         fstp qword ptr ss:[ebp-10]          ; 用户码运算出来39087.000000000000000
006F3362    9B              wait
006F3363    8B45 F8         mov eax,dword ptr ss:[ebp-8]        ; 假码
006F3366    E8 9DFDFFFF     call CdKing.006F3108                ; 跟上一样的算法CALL
006F336B    DD5D E8         fstp qword ptr ss:[ebp-18]          ; 假码运算出来的结果
006F336E    9B              wait
006F336F    DD45 F0         fld qword ptr ss:[ebp-10]           
006F3372    DC5D E8         fcomp qword ptr ss:[ebp-18]         ; 两者比较,相等即成功!
006F3375    DFE0            fstsw ax

===================跟进call CdKing.006F3108 来分析===================

006F3108    55              push ebp                            ; 跟进来到这里
006F3109    8BEC            mov ebp,esp
006F310B    83C4 E4         add esp,-1C
006F310E    53              push ebx
006F310F    56              push esi
006F3110    57              push edi
006F3111    33D2            xor edx,edx
006F3113    8955 E8         mov dword ptr ss:[ebp-18],edx
006F3116    8955 EC         mov dword ptr ss:[ebp-14],edx
006F3119    8945 FC         mov dword ptr ss:[ebp-4],eax
006F311C    8B45 FC         mov eax,dword ptr ss:[ebp-4]
006F311F    E8 AC12D1FF     call CdKing.004043D0
006F3124    33C0            xor eax,eax
006F3126    55              push ebp
006F3127    68 F7316F00     push CdKing.006F31F7
006F312C    64:FF30         push dword ptr fs:[eax]
006F312F    64:8920         mov dword ptr fs:[eax],esp
006F3132    33D2            xor edx,edx
006F3134    55              push ebp
006F3135    68 C2316F00     push CdKing.006F31C2
006F313A    64:FF32         push dword ptr fs:[edx]
006F313D    64:8922         mov dword ptr fs:[edx],esp
006F3140    A0 08326F00     mov al,byte ptr ds:[6F3208]
006F3145    50              push eax
006F3146    8D45 EC         lea eax,dword ptr ss:[ebp-14]
006F3149    50              push eax
006F314A    33C9            xor ecx,ecx
006F314C    BA 14326F00     mov edx,CdKing.006F3214
006F3151    8B45 FC         mov eax,dword ptr ss:[ebp-4]
006F3154    E8 67B9D1FF     call CdKing.0040EAC0
006F3159    33F6            xor esi,esi
006F315B    33DB            xor ebx,ebx
006F315D    8D45 E8         lea eax,dword ptr ss:[ebp-18]
006F3160    8B55 EC         mov edx,dword ptr ss:[ebp-14]       ; 用户码 "6147804325788912")
006F3163    8A141A          mov dl,byte ptr ds:[edx+ebx]        ; 逐位取
006F3166    E8 C90FD1FF     call CdKing.00404134
006F316B    8B45 E8         mov eax,dword ptr ss:[ebp-18]
006F316E    E8 7173D1FF     call CdKing.0040A4E4
006F3173    A8 01           test al,1
006F3175    74 25           je short CdKing.006F319C
006F3177    68 00400000     push 4000
006F317C    68 00000080     push 80000000
006F3181    6A 00           push 0
006F3183    895D E4         mov dword ptr ss:[ebp-1C],ebx
006F3186    DB45 E4         fild dword ptr ss:[ebp-1C]
006F3189    83C4 F4         add esp,-0C
006F318C    DB3C24          fstp tbyte ptr ss:[esp]
006F318F    9B              wait
006F3190    E8 4757D3FF     call CdKing.004288DC
006F3195    E8 DAF9D0FF     call CdKing.00402B74
006F319A    03F0            add esi,eax
006F319C    43              inc ebx
006F319D    83FB 0E         cmp ebx,0E                          ; 取前14位
006F31A0  ^ 75 BB           jnz short CdKing.006F315D           ; 没取完循环取
006F31A2    B8 20326F00     mov eax,CdKing.006F3220             ; ASCII "1980-01-01"
006F31A7    E8 D49DD1FF     call CdKing.0040CF80
006F31AC    8975 E4         mov dword ptr ss:[ebp-1C],esi
006F31AF    DB45 E4         fild dword ptr ss:[ebp-1C]
006F31B2    DEC1            faddp st(1),st                      ; 浮点相加
006F31B4    DD5D F0         fstp qword ptr ss:[ebp-10]
006F31B7    9B              wait

========================================================================================

破解总结:

到此破解应该算是很清楚了```算法也不想再深入分析,就是取用户码的前14与固定字符“1980-01-01”浮点相加运算得到的结果,再同样取注册码的前14位与固定字符“1980-01-01”浮点相加运算得到的结果,两者进行比较,如果相等的话就注册成功,都是同样的运算```也就是说用户码的前14位转为浮点数跟注册码的前14位转浮点数相等即可```

也就是说只要前14位相等就OK了,那取用户码作为注册码就注册成功。注册机也就不用写了```哈```
这样不会破解的人,都可以注册成功了```只要他随便用用户码放到注册码上一试便OK了,软件作者真是的```汗```

---------------------------------------------------------------------2005.11.14
【版权声明】 本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!
PYG19周年生日快乐!
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表