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,弯路走不少,可是感觉棒极了。(@_@)
相关视频
相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
热门文章 去除winrar注册框方法
最新文章
比特币病毒怎么破解 比去除winrar注册框方法
华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据
人气排行 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程
查看所有0条评论>>