- UID
- 9910
注册时间2006-3-22
阅读权限20
最后登录1970-1-1
以武会友
![Rank: 3](template/lewei_blue/images/star_level2.gif) ![Rank: 3](template/lewei_blue/images/star_level1.gif)
该用户从未签到
|
【破文标题】申请加入PYG第二篇破文
【破文作者】Fantasy
【作者邮箱】[email protected]
【破解工具】peid0.94, OD1.1
【破解平台】winxp sp2
【软件名称】百科知识竞赛
【软件大小】1744KB
【原版下载】http://www.fuzi.cn/
------------------------------------------------------------------------
【软件简介】
〖百科知识竞赛〗软件是一款模拟中央电视台“开心辞典”答题形式的软件。
软件集趣味性、知识性于一体。除了可以实现家庭式答题外,还可以网上答题。
软件还自带了丰富的“你知道吗?”知识库及“脑筋急转弯”训练题库。
软件还支持随时从网上提取开心问答题库。
软件功能强大,随时升级,随时添加丰富题库,谢谢你的使用。任何问题请与作者联系。
软件绿色、环保、小巧、功能强大、可完全卸载,放心使用。
升级:增加网上题库查阅功能。共47期节目。
升级:修正软件外壳,功能更全面、更安全。
升级:增加并修正部分题库。
------------------------------------------------------------------------
【破解声明】仅供学习和交流,没有其他目的。本人菜鸟一个,失误之处敬请诸位大侠赐教!
------------------------------------------------------------------------
【破解过程】
首先peid 查壳显示Borland Delphi 6.0 - 7.0 ,无壳
OD载入,运行程序,输入信息:
确认码:747474
注册码:123456
字符插件查找错误提示:你填写的注册吗错误!
双击来到
005377BD |> \B8 F0785300 mov eax, 005378F0 ; 你填写的注册码错误,请重新核对准确。\n\n如果你是软件注册用户,请与作者联系。
向上查找关键跳转
00537602 |. 55 push ebp
00537603 |. 68 4C785300 push 0053784C
00537608 |. 64:FF30 push dword ptr fs:[eax]
0053760B |. 64:8920 mov fs:[eax], esp
0053760E |. 68 80000000 push 80 ; /BufSize = 80 (128.)
00537613 |. 8D85 7BFFFFFF lea eax, [ebp-85] ; |
00537619 |. 50 push eax ; |Buffer
0053761A |. E8 BDFAECFF call <jmp.&kernel32.GetSystemDirector>; \GetSystemDirectoryA
0053761F |. 8D45 FC lea eax, [ebp-4]
00537622 |. 8D95 7BFFFFFF lea edx, [ebp-85]
00537628 |. B9 81000000 mov ecx, 81
0053762D |. E8 1AD4ECFF call 00404A4C
00537632 |. 8D95 74FFFFFF lea edx, [ebp-8C]
00537638 |. 8B83 FC020000 mov eax, [ebx+2FC]
0053763E |. E8 79E9F0FF call 00445FBC
00537643 |. 83BD 74FFFFFF>cmp dword ptr [ebp-8C], 0 ;把确认吗与0比较
0053764A |. 74 1A je short 00537666 ;没填就跳
0053764C |. 8D95 70FFFFFF lea edx, [ebp-90]
00537652 |. 8B83 04030000 mov eax, [ebx+304]
00537658 |. E8 5FE9F0FF call 00445FBC
0053765D |. 83BD 70FFFFFF>cmp dword ptr [ebp-90], 0 ;把注册吗与0比较
00537664 |. 75 0F jnz short 00537675 ;填了就跳到下面计算
00537666 |> B8 64785300 mov eax, 00537864 ; 注册信息没有填写完毕!
0053766B |. E8 407BF0FF call 0043F1B0
00537670 |. E9 5F010000 jmp 005377D4
00537675 |> 8D95 6CFFFFFF lea edx, [ebp-94]
0053767B |. 8B83 04030000 mov eax, [ebx+304]
00537681 |. E8 36E9F0FF call 00445FBC
00537686 |. 8B85 6CFFFFFF mov eax, [ebp-94]
0053768C |. 50 push eax
0053768D |. 8D95 64FFFFFF lea edx, [ebp-9C]
00537693 |. 8B83 FC020000 mov eax, [ebx+2FC]
00537699 |. E8 1EE9F0FF call 00445FBC
0053769E |. 8B85 64FFFFFF mov eax, [ebp-9C] ; 把 确认吗 放到eax
005376A4 |. E8 4F1DEDFF call 004093F8
005376A9 |. B9 77070000 mov ecx, 777
005376AE |. 99 cdq
005376AF |. F7F9 idiv ecx
005376B1 |. 8BC2 mov eax, edx ; 把 确认马 放到eax
005376B3 |. 8D95 68FFFFFF lea edx, [ebp-98]
005376B9 |. E8 D61CEDFF call 00409394
005376BE |. 8D85 68FFFFFF lea eax, [ebp-98]
005376C4 |. 50 push eax
005376C5 |. 8D95 58FFFFFF lea edx, [ebp-A8]
005376CB |. 8B83 FC020000 mov eax, [ebx+2FC]
005376D1 |. E8 E6E8F0FF call 00445FBC
005376D6 |. 8B85 58FFFFFF mov eax, [ebp-A8]
005376DC |. E8 171DEDFF call 004093F8
005376E1 |. 8D95 5CFFFFFF lea edx, [ebp-A4]
005376E7 |. E8 2CFCFFFF call 00537318 ; 算法call1
005376EC |. 8B85 5CFFFFFF mov eax, [ebp-A4]
005376F2 |. E8 011DEDFF call 004093F8
005376F7 |. 8D95 60FFFFFF lea edx, [ebp-A0]
005376FD |. E8 F6FCFFFF call 005373F8 ; 算法call2
00537702 |. 8B95 60FFFFFF mov edx, [ebp-A0]
00537708 |. 58 pop eax
00537709 |. E8 96D3ECFF call 00404AA4 ; 算法call3
0053770E |. 8B95 68FFFFFF mov edx, [ebp-98]
00537714 |. 58 pop eax
00537715 |. E8 C6D4ECFF call 00404BE0 ; 比较call
0053771A |. 0F85 9D000000 jnz 005377BD ; 关键跳转 跳就死
00537720 |. B8 84785300 mov eax, 00537884 ; 注册成功,谢谢您的注册!
00537725 |. E8 867AF0FF call 0043F1B0
0053772A |. 8BC3 mov eax, ebx
0053772C |. E8 77C1F2FF call 004638A8
00537731 |. A1 18CF5300 mov eax, [53CF18]
00537736 |. 8B00 mov eax, [eax]
00537738 |. 8B80 B4030000 mov eax, [eax+3B4]
0053773E |. BA A8785300 mov edx, 005378A8 ; 软件已注册
我们在00537715处下断,F9运行
断下,在edx可以看到真码,eax是刚才输入的假码
【算法总结】
具体算法我跟了一下,好象不怎么清楚,请高手指点。大概是
确认码 xor 0b25f1=结果1->在经过处理又加上了2位=结果2(具体不知道:(,请高手指点)
结果2 xor ddfb7687=结果3->经过处理=结果4(可能与作者名字fuzi有关)
结果4 + 确认马(如果<=3位,就取前3位。大与3位又要计算。晕死)=注册码
确认吗:747474
注册吗:27337i2u261}g7727
现在可以请出我们的注册机制作好工具Keymake v1.73,F8 制作内存注册机:
中断地址:00537715
中断次数:1
第一字节:E8
指令长度:5
选择内存方式:寄存器 → EDX → 生成! |
|