吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 22203|回复: 74
收起左侧

[原创] 悠仕书架2.0 简单算法分析+注册机源码(除了新手,请PASS)

    [复制链接]
null119 发表于 2011-10-8 01:20
本帖最后由 null119 于 2011-10-8 01:22 编辑


晚上BLOG看到还有人要这个软件的破解补丁,无奈时间太久远,找不到了。。。正好没事,晚上去下载了个回来,分析了一下算法(很简单,新手以外请PASS)。
00415698  /.  55            push ebp
00415699  |.  8BEC          mov ebp,esp
0041569B  |.  83C4 98       add esp,-0x68
0041569E  |.  53            push ebx
0041569F  |.  56            push esi
004156A0  |.  57            push edi
004156A1  |.  8BD8          mov ebx,eax
004156A3  |.  8D75 9C       lea esi,[local.25]
004156A6  |.  B8 D08D5D00   mov eax,usbsp.005D8DD0
004156AB  |.  E8 A4911900   call usbsp.005AE854
004156B0  |.  66:C746 10 08>mov word ptr ds:[esi+0x10],0x8
004156B6  |.  33D2          xor edx,edx
004156B8  |.  8955 FC       mov [local.1],edx
004156BB  |.  8D55 FC       lea edx,[local.1]
004156BE  |.  FF46 1C       inc dword ptr ds:[esi+0x1C]
004156C1  |.  8B83 F4020000 mov eax,dword ptr ds:[ebx+0x2F4]
004156C7  |.  E8 94A21600   call usbsp.0057F960                      ;  用户名
004156CC  |.  837D FC 00    cmp [local.1],0x0                        ;  检查用户名是否为空
004156D0  |.  74 08         je short usbsp.004156DA
004156D2  |.  8B4D FC       mov ecx,[local.1]
004156D5  |.  8B41 FC       mov eax,dword ptr ds:[ecx-0x4]
004156D8  |.  EB 02         jmp short usbsp.004156DC
004156DA  |>  33C0          xor eax,eax
004156DC  |>  48            dec eax
004156DD  |.  0F8C 8A000000 jl usbsp.0041576D
004156E3  |.  33D2          xor edx,edx
004156E5  |.  8955 F8       mov [local.2],edx
004156E8  |.  8D55 F8       lea edx,[local.2]
004156EB  |.  FF46 1C       inc dword ptr ds:[esi+0x1C]
004156EE  |.  8B83 F8020000 mov eax,dword ptr ds:[ebx+0x2F8]
004156F4  |.  E8 67A21600   call usbsp.0057F960                      ;  注册种子
004156F9  |.  837D F8 00    cmp [local.2],0x0                        ;  检查注册种子是否为空
004156FD  |.  74 08         je short usbsp.00415707
004156FF  |.  8B4D F8       mov ecx,[local.2]
00415702  |.  8B41 FC       mov eax,dword ptr ds:[ecx-0x4]
00415705  |.  EB 02         jmp short usbsp.00415709
00415707  |>  33C0          xor eax,eax
00415709  |>  48            dec eax
0041570A  |.  0F9CC2        setl dl
0041570D  |.  83E2 01       and edx,0x1
00415710  |.  8D45 F8       lea eax,[local.2]
00415713  |.  52            push edx
00415714  |.  BA 02000000   mov edx,0x2
00415719  |.  FF4E 1C       dec dword ptr ds:[esi+0x1C]
0041571C  |.  E8 3B311A00   call usbsp.005B885C
00415721  |.  59            pop ecx
00415722  |.  85C9          test ecx,ecx
00415724  |.  75 47         jnz short usbsp.0041576D
00415726  |.  33C0          xor eax,eax
00415728  |.  8945 F4       mov [local.3],eax
0041572B  |.  8D55 F4       lea edx,[local.3]
0041572E  |.  FF46 1C       inc dword ptr ds:[esi+0x1C]
00415731  |.  8B83 04030000 mov eax,dword ptr ds:[ebx+0x304]
00415737  |.  E8 24A21600   call usbsp.0057F960                      ;  注册码
0041573C  |.  837D F4 00    cmp [local.3],0x0                        ;  检查注册码是否为空
00415740  |.  74 08         je short usbsp.0041574A
00415742  |.  8B55 F4       mov edx,[local.3]
00415745  |.  8B4A FC       mov ecx,dword ptr ds:[edx-0x4]
00415748  |.  EB 02         jmp short usbsp.0041574C
0041574A  |>  33C9          xor ecx,ecx
0041574C  |>  49            dec ecx
0041574D  |.  BA 02000000   mov edx,0x2
00415752  |.  0F9CC0        setl al
00415755  |.  83E0 01       and eax,0x1
00415758  |.  50            push eax
00415759  |.  8D45 F4       lea eax,[local.3]
0041575C  |.  FF4E 1C       dec dword ptr ds:[esi+0x1C]
0041575F  |.  E8 F8301A00   call usbsp.005B885C
00415764  |.  59            pop ecx
00415765  |.  85C9          test ecx,ecx
00415767  |.  75 04         jnz short usbsp.0041576D
00415769  |.  33C0          xor eax,eax
0041576B  |.  EB 05         jmp short usbsp.00415772
0041576D  |>  B8 01000000   mov eax,0x1
00415772  |>  50            push eax
00415773  |.  FF4E 1C       dec dword ptr ds:[esi+0x1C]
00415776  |.  8D45 FC       lea eax,[local.1]
00415779  |.  BA 02000000   mov edx,0x2
0041577E  |.  E8 D9301A00   call usbsp.005B885C
00415783  |.  59            pop ecx
00415784  |.  84C9          test cl,cl
00415786  |.  74 1D         je short usbsp.004157A5
00415788  |.  A1 00035E00   mov eax,dword ptr ds:[0x5E0300]
0041578D  |.  6A 00         push 0x0
0041578F  |.  B9 E88B5D00   mov ecx,usbsp.005D8BE8
00415794  |.  BA CE8B5D00   mov edx,usbsp.005D8BCE
00415799  |.  8B00          mov eax,dword ptr ds:[eax]
0041579B  |.  E8 F42F1A00   call usbsp.005B8794
004157A0  |.  E9 6A030000   jmp usbsp.00415B0F
004157A5  |>  66:C746 10 20>mov word ptr ds:[esi+0x10],0x20
004157AB  |.  33D2          xor edx,edx
004157AD  |.  8955 F0       mov [local.4],edx
004157B0  |.  8D55 F0       lea edx,[local.4]
004157B3  |.  FF46 1C       inc dword ptr ds:[esi+0x1C]
004157B6  |.  8B83 F8020000 mov eax,dword ptr ds:[ebx+0x2F8]
004157BC  |.  E8 9FA11600   call usbsp.0057F960
004157C1  |.  8D45 F0       lea eax,[local.4]
004157C4  |.  8B00          mov eax,dword ptr ds:[eax]
004157C6  |.  E8 59821100   call usbsp.0052DA24
004157CB  |.  8BF8          mov edi,eax
004157CD  |.  FF4E 1C       dec dword ptr ds:[esi+0x1C]
004157D0  |.  8D45 F0       lea eax,[local.4]
004157D3  |.  BA 02000000   mov edx,0x2
004157D8  |.  E8 7F301A00   call usbsp.005B885C
004157DD  |.  66:C746 10 14>mov word ptr ds:[esi+0x10],0x14
004157E3  |.  66:C746 10 2C>mov word ptr ds:[esi+0x10],0x2C
004157E9  |.  33C9          xor ecx,ecx
004157EB  |.  894D EC       mov [local.5],ecx
004157EE  |.  8D55 EC       lea edx,[local.5]
004157F1  |.  FF46 1C       inc dword ptr ds:[esi+0x1C]
004157F4  |.  8B83 04030000 mov eax,dword ptr ds:[ebx+0x304]
004157FA  |.  E8 61A11600   call usbsp.0057F960
004157FF  |.  8D45 EC       lea eax,[local.5]
00415802  |.  8B00          mov eax,dword ptr ds:[eax]
00415804  |.  E8 1B821100   call usbsp.0052DA24
00415809  |.  8945 98       mov [local.26],eax
0041580C  |.  FF4E 1C       dec dword ptr ds:[esi+0x1C]
0041580F  |.  8D45 EC       lea eax,[local.5]
00415812  |.  BA 02000000   mov edx,0x2
00415817  |.  E8 40301A00   call usbsp.005B885C
0041581C  |.  66:C746 10 14>mov word ptr ds:[esi+0x10],0x14
00415822  |.  B9 9F860100   mov ecx,0x1869F                          ;  1869F
00415827  |.  2BCF          sub ecx,edi                              ;  X=1869F-注册种子
00415829  |.  8BC1          mov eax,ecx
0041582B  |.  03C0          add eax,eax                              ;  X=2X
0041582D  |.  8D0480        lea eax,dword ptr ds:[eax+eax*4]         ;  X=X+X*4
00415830  |.  83C0 21       add eax,0x21                             ;  X=X+21
00415833  |.  3B45 98       cmp eax,[local.26]
00415836  |.  0F85 B5020000 jnz usbsp.00415AF1                       ;  注册码不正确则跳向万恶的深渊
0041583C  |.  66:C746 10 38>mov word ptr ds:[esi+0x10],0x38
00415842  |.  BA F18B5D00   mov edx,usbsp.005D8BF1                   ;  ASCII "select * from reg"
00415847  |.  8D45 E8       lea eax,[local.6]
0041584A  |.  E8 C13B1A00   call usbsp.005B9410
1.jpg

2.jpg


Delphi注册机源码(懒人,直接嵌入汇编了):
var
  sn:Integer;
begin
asm
  mov ecx,$1869F                           {  1869F}
  sub ecx,zzm                              {  X=1869F-注册种子 }
  mov eax,ecx
  add eax,eax                              {  X=2X }
  lea eax,dword ptr ds:[eax+eax*4]         {  X=X+X*4 }
  add eax,$21                              {  X=X+21 }
  mov sn,eax
end;
  Form1.Edit2.text:=IntToStr(sn);
end;

免费评分

参与人数 3热心值 +3 收起 理由
千层雪 + 1 感谢lz.
shaunkelly + 1 是否为非原创作品禁止发布原创区?
Smoke + 1 欢迎讨论交流,[吾爱破解]有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

老万 发表于 2011-10-8 15:25
厉害,学习了
Smoke 发表于 2011-10-8 16:59
wuweiben 发表于 2011-10-8 17:52
注册账户好难 发表于 2011-10-10 14:07
膜拜大牛
学习了··自己试验下去了
White 发表于 2011-10-11 08:49
嗯膜拜一下呢  呵呵
rainisa 发表于 2011-10-11 16:21
新手疑问 貌似注册码跟用户名之间没关系啊?
hellcomer 发表于 2011-10-11 16:39
膜拜中,,,,
鬼刀 发表于 2011-10-11 23:07
不错 分析 的还不错
change 发表于 2011-10-12 08:29
历害,膜拜LZ。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 16:04

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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