老文章档案 · 2003 年

Bannershop 4.5破解手记

天下资讯 · 破解文章 · 2003-06-22 · 作者:rock 人气: · 出处:嬴政天下整理收藏)

Bannershop 4.5破解手记,大侠止步^_^

作者:石头 QQ:4477522

2002-10-23

一位网友让我给做一个logo,应充之下我下载了Bannershop 4.5

(下载地址:http://www.selteco.com/download/sbsga.exe)开始工作,

花了数小时努力,总算是完成任务了,马上save,不幸的事情发生了“非注册用户不能存盘”

一怒之下,菜菜的我下决心一定要把它搞定。

打开文件,输入"123456-123456789", 一共是15位。出现"Invalid Seviral number"

用w32dasm调入该文件,用数据参考,找"Invalid serial number."

:00402396 6A10 push 00000010

:00402398 688CF34700 push 0047F38C

:0040239D 6868F14700 push 0047F168 ->"Invalid serial number."

:004023A2 6A00 push 00000000

:004023A4 FF15F8B54600 Call dword ptr [0046B5F8]

:004023AA 8D4C2440 lea ecx, dword ptr [esp+40]

:004023AE C7842410040000FFFFFFFF mov dword ptr [esp+00000410], FFFFFFFF

:004023B9 E874630400 call 00448732

运行TRW2000(我的硬盘太小只能用它^_^)下中断402396,再逆向上往上查找,看看是谁在调用“00402396”

:004022A8 E8730A0000 call 00402D20

:004022AD 85C0 test eax, eax

:004022AF 0F84E1000000 je 00402396 ->原来在这里,如果不跳转的话,就可以过关了。

:004022B5 8B8424A4000000 mov eax, dword ptr [esp+000000A4]

一时兴起,想看看这"seviral number"长什么样,继速下去。

原来是根椐"call 00402d20"的结果判断是否宣布"Invalid seviral number"

进入 call 00402d20

:00402D20 83EC3C sub esp, 0000003C

:00402D23 8B4C2440 mov ecx, dword ptr [esp+40] =>123456在这里出现了

:00402D27 B88F588B4F mov eax, 4F8B588F

:00402D2C F7E1 mul ecx

:00402D2E 8BC1 mov eax, ecx

:00402D30 53 push ebx push ebx

:00402D31 2BC2 sub eax, edx

:00402D33 55 push ebp

:00402D34 D1E8 shr eax, 1

:00402D36 03C2 add eax, edx

:00402D38 56 push esi push edx

:00402D39 C1E810 shr eax, 10

:00402D3C 33D2 xor edx, edx

:00402D3E BE0A000000 mov esi, 0000000A

:00402D43 F7F6 div esi

:00402D45 B85917B7D1 mov eax, D1B71759

:00402D4A 57 push edi

:00402D4B BF0A000000 mov edi, 0000000A

:00402D50 BB0A000000 mov ebx, 0000000A

:00402D55 BD0A000000 mov ebp, 0000000A

:00402D5A 8BF2 mov esi, edx

:00402D5C F7E1 mul ecx

:00402D5E 8BC2 mov eax, edx

:00402D60 33D2 xor edx, edx

:00402D62 C1E80D shr eax, 0D

:00402D65 F7F7 div edi

:00402D67 B8D34D6210 mov eax, 10624DD3

:00402D6C 89542414 mov dword ptr [esp+14], edx ???

:00402D70 F7E1 mul ecx

:00402D72 8BC2 mov eax, edx

:00402D74 33D2 xor edx, edx

:00402D76 C1E806 shr eax, 06

:00402D79 F7F7 div edi

:00402D7B B81F85EB51 mov eax, 51EB851F

:00402D80 89542418 mov dword ptr [esp+18], edx ???

………………

原来是把我输入的错误serial number 依次一位一位分别放进:

ESI,[ESP+14],[ESP+18],EDI,EBX,[ESP+24],[ESP+28],[ESP+2C],[ESP+30],[ESP+34],[ESP+38],

[ESP+3C],[ESP+40],EDX,EAX

一共是15位,如是我按顺序以"x1,x2,x3,x4,x5,x6,y1,y2,y3,y4,y5,y6,y7,y8,y9"来表示它们

…………

:00402E65 8B44243C mov eax, dword ptr [esp+3C]

:00402E69 8D0C02 lea ecx, dword ptr [edx+eax]

:00402E6C 8B442434 mov eax, dword ptr [esp+34]

:00402E70 8B542430 mov edx, dword ptr [esp+30]

:00402E74 03C8 add ecx, eax

:00402E76 8B442428 mov eax, dword ptr [esp+28]

:00402E7A 03CA add ecx, edx

:00402E7C 8B542424 mov edx, dword ptr [esp+24]

:00402E80 03C8 add ecx, eax

:00402E82 03CA add ecx, edx

:00402E84 03CF add ecx, edi

:00402E86 03CE add ecx, esi

到这里就把 "x1,x4,x6,y1,y3,y4,y6,y9" 的总和放进了 "ecx" 就称为"sum"吧

:00402E88 BE0A000000 mov esi, 0000000A

:00402E8D 8D4102 lea eax, dword ptr [ecx+02]

:00402E90 99 cdq

:00402E91 F7FE idiv esi

:00402E93 3BD3 cmp edx, ebx

:00402E95 740C je 00402EA3

:00402E97 5F pop edi

:00402E98 5E pop esi

:00402E99 5D pop ebp

:00402E9A 33C0 xor eax, eax

:00402E9C 5B pop ebx

:00402E9D 83C43C add esp, 0000003C

:00402EA0 C20800 ret 0008

将(sum+2)/10的余数与"x5"作比,相等则继速,不等则宣布"Invalid seviral number"

(均为十进制数)换句话说就是: (sum+2)/10的余数=x5

:00402EA3 03CA add ecx, edx

:00402EA5 BE0A000000 mov esi, 0000000A

:00402EAA 8D4107 lea eax, dword ptr [ecx+07]

:00402EAD 99 cdq

:00402EAE F7FE idiv esi

:00402EB0 3B542418 cmp edx, dword ptr [esp+18]

:00402EB4 740C je 00402EC2

:00402EB6 5F pop edi

:00402EB7 5E pop esi

:00402EB8 5D pop ebp

:00402EB9 33C0 xor eax, eax

:00402EBB 5B pop ebx

:00402EBC 83C43C add esp, 0000003C

:00402EBF C20800 ret 0008

(sum+x5+7)/10余数=x3

…………

:00402F51 5B pop ebx

:00402F52 3BD1 cmp edx, ecx

:00402F54 0F94C0 sete al

:00402F57 83C43C add esp, 0000003C

:00402F5A C20800 ret 0008

依次类推得出全部结果:

(sum+2)/10的余数=x5

(sum+x5+7)/10的余数=x3

(sum+x5+x3+3)/10的余数=y2

(sum+x5+x3+y2+5)/10的余数=y7

(sum+x5+x3+y2+y7+1)/10的余数=y8

(sum+x5+x3+y2+y7+y8+9)/10的余数=y5

(sum+x5+x3+y2+y7+y8+y5+4)/10的余数=a2

我将sum假设为"0" 依次算出 x5=2, x3=9, y2=4, y7=0, y8=6, y5=0, a2=5

x1,x4,x6,y1,y3,y4,y6,y9自然是全部为“0”啦。

排列顺序得到 059020-040000060

嘿,相信你可以算出更多的注册码。

第一次crack,弯路走不少,可是感觉棒极了。(@_@)

(出处:嬴政天下整理收藏)

相关资讯:

·ASProtect的加密算法初步分析

·MD5算法研究

·Active Ebook Compiler的注册算法

·语音界面2.0算法分析及注册机源码!

·简单算法——小护士 V1.2

·侠客系统修改器1.21破解手记--算法分析

·中文拨号上网计时计费器 V4.12注册算法分析

·加密算法之RSA算法

·加密算法之DES算法

·加密算法之ElGamal算法

相关软件:

·胜新出纳-支票打印软件 V4.0X 的注册码算法

·胜新现代办公百宝箱 V5.01 的注册码算法

·胜新信函宝典-信封打印软件 V2.02 注册码的算法

·胜新通用企业计划管理系统的注册码算法

·共享软件加密算法库 V3.2

·操作系统内存分配银行家算法模拟系统 XP

→ 特别推荐

→ 热点TOP10

我为人人《《==》》人人为我

关于我们 |

帮助(?)

| 广告服务 |

版权声明 |

商业合作 |

发展历程 |

加盟我们 |

联系我们

Copyright ? 1998-2003 winzheng.com

All Rights Reserved.

特别感谢 蓝芒科技 提供下载站及论坛服务器

2003-2004 年,宽带刚刚普及,下载站的文章区是许多人学电脑的第一课堂。
🕰 → 🤖 从那时到现在

当年一篇教程能让一台电脑焕然一新;今天的效率工具换成了 AI。 想知道当下最可靠的 AI 模型怎么选?看 赢政指数——我们用了 28 年的选软件严谨,现在用来评测大模型。

档案性质声明:本页为赢政天下(1998-2011)老文章的历史档案复原, 内容反映当年发表时的原貌——包括当年的技术表述、软件版本与观点,部分方法在今天已不适用或不合规,仅作互联网历史记录与研究用途, 不提供任何形式的下载。原始数据经由公共网络存档(Internet Archive)复原。发现问题请联系我们
← 返回老文章档案 · 软件史档案馆 · 赢政天下站史