吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 50044|回复: 265
收起左侧

[原创] 皇室取名软件的算法分析及注册机——纪念贴

    [复制链接]
wangzhe311 发表于 2012-7-29 15:28
本帖最后由 wangzhe311 于 2012-7-29 19:24 编辑

皇室取名软件2.28   算法分析:
通过查找字符串,找到关键call,进入进行算法分析。如下所示:
**********************************************************************************
004A3F31  |.  E8 FE05F6FF   call 皇室取名.00404534                       
004A3F36  |.  83F8 20       cmp eax,20 ; 对位数进行比较,20是十六进制表示法,转换成十进制应该是32,所以密码应该是32位的,输入32位的假码。                 
004A3F39  |.  74 07         je short 皇室取名.004A3F42  ;是32位就跳向验证。。。
004A3F3B  |.  33DB          xor ebx,ebx
004A3F3D  |.  E9 E0000000   jmp 皇室取名.004A4022
004A3F42  |>  8D45 F0       lea eax,[local.4]             跳向这里。
004A3F45      E8 9EFEFFFF   call 皇室取名.004A3DE8
004A3F4A  |.  8B55 F0       mov edx,[local.4]
004A3F4D  |.  A1 B48D5D00   mov eax,dword ptr ds:[5D8DB4]
004A3F52  |.  E8 2907F6FF   call 皇室取名.00404680
004A3F57  |.  74 07         je short 皇室取名.004A3F60
004A3F59  |.  33DB          xor ebx,ebx
004A3F5B  |.  E9 C2000000   jmp 皇室取名.004A4022
004A3F60  |>  FF35 548B5B00 push dword ptr ds:[5B8B54]     
004A3F66  |.  FF35 B48D5D00 push dword ptr ds:[5D8DB4]
004A3F6C  |.  FF35 508B5B00 push dword ptr ds:[5B8B50]     
004A3F72  |.  8D45 EC       lea eax,[local.5]
004A3F75  |.  BA 03000000   mov edx,3
004A3F7A  |.  E8 7506F6FF   call 皇室取名.004045F4
004A3F7F  |.  8B45 EC       mov eax,[local.5]
004A3F82  |.  8D55 F8       lea edx,[local.2]
004A3F85  |.  E8 0AF0FFFF   call 皇室取名.004A2F94    ;ASCII "Qingling72ea94c3047065d8CQL"初始码装入,计算出第一个码
004A3F8A  |.  B8 01000000   mov eax,1
004A3F8F  |>  8BD0          /mov edx,eax
004A3F91  |.  03D2          |add edx,edx
004A3F93  |.  8B4D FC       |mov ecx,[local.1]
004A3F96  |.  8A5411 FE     |mov dl,byte ptr ds:[ecx+edx-2]
004A3F9A  |.  8B4D F8       |mov ecx,[local.2]          ;把“Qingling72ea94c3047065d8CQL”进行md5加密,得到“6ea7ccd8d0180f0977d13c8da01a1cd1
004A3F9D  |.  3A5401 FF     |cmp dl,byte ptr ds:[ecx+eax-1]   ;  对注册码进行比较较验,拿6ea7ccd8d0180f0977d13c8da01a1cd1的前15位与注册码的奇数位进行校验。
004A3FA1      74 04         je short 皇室取名.004A3FA7   ;  要跳
004A3FA3  |.  33DB          |xor ebx,ebx
004A3FA5  |.  EB 7B         |jmp short 皇室取名.004A4022
004A3FA7  |>  40            |inc eax
004A3FA8  |.  83F8 10       |cmp eax,10     ;控制循环取数。10是十六进制数,转换成十进制数是16,从1开始,在16处跳,说明取了15位。
004A3FAB  |.^ 75 E2         \jnz short 皇室取名.004A3F8F
004A3FAD  |.  8D45 E4       lea eax,[local.7]
004A3FB0  |.  50            push eax
004A3FB1  |.  B9 10000000   mov ecx,10
004A3FB6  |.  BA 11000000   mov edx,11
004A3FBB  |.  8B45 F8       mov eax,[local.2]
004A3FBE  |.  E8 D107F6FF   call 皇室取名.00404794         ;取“6ea7ccd8d0180f0977d13c8da01a1cd1”的后十六位“77d13c8da01a1cd1
004A3FC3  |.  8B45 E4       mov eax,[local.7]
004A3FC6  |.  8D55 E8       lea edx,[local.6]
004A3FC9  |.  E8 C6EFFFFF   call 皇室取名.004A2F94         :对“77d13c8da01a1cd1”进行md5加密操作,得到“3015f57808ba01ce6cabd45a839b65f5
004A3FCE  |.  8B55 E8       mov edx,[local.6]
004A3FD1  |.  8D45 F8       lea eax,[local.2]
004A3FD4  |.  E8 3303F6FF   call 皇室取名.0040430C
004A3FD9  |.  B8 01000000   mov eax,1
004A3FDE  |>  8BD0          /mov edx,eax
004A3FE0  |.  03D2          |add edx,edx
004A3FE2  |.  8B4D FC       |mov ecx,[local.1]
004A3FE5  |.  8A5411 FF     |mov dl,byte ptr ds:[ecx+edx-1]
004A3FE9  |.  8B4D F8       |mov ecx,[local.2]
004A3FEC  |.  3A5401 0F     |cmp dl,byte ptr ds:[ecx+eax+F]
004A3FF0      74 04         je short 皇室取名.004A3FF6
004A3FF2  |.  33DB          |xor ebx,ebx
004A3FF4  |.  EB 2C         |jmp short 皇室取名.004A4022
004A3FF6  |>  40            |inc eax
004A3FF7  |.  83F8 10       |cmp eax,10
004A3FFA  |.^ 75 E2         \jnz short 皇室取名.004A3FDE      ;取“3015f57808ba01ce6cabd45a839b65f5”的“6cabd45a839b65f5”(前15位)与注册码的偶数位(15位)进行比较。
**********************************************************************************
至此,注册码的前30位的奇数位为:6ea7ccd8d0180f0
      30位的偶数位为:6cabd45a839b65f
所以注册码的前30位为:66ecaa7bcdc4d58ad803198b06f50f
**********************************************************************************
004A3FFC  |.  A1 B48D5D00   mov eax,dword ptr ds:[5D8DB4]
004A4001  |.  8A40 03       mov al,byte ptr ds:[eax+3]    :eax(机器码)的第4位(因为是空3位,所以是第4位)给al
004A4004  |.  8B55 FC       mov edx,[local.1]
004A4007  |.  3A42 1E       cmp al,byte ptr ds:[edx+1E]   ;取edx(假注册码)的第31位,与al直比较。。1e是十六进制,转换十进制是30
004A400A      74 04         je short 皇室取名.004A4010                  
004A4015  |.  8A40 0A       mov al,byte ptr ds:[eax+A]   ;取eax(机器码)的第11位(因为是空10位,所以是第11位)给al
004A4018  |.  8B55 FC       mov edx,[local.1]            
004A401B  |.  3A42 1F       cmp al,byte ptr ds:[edx+1F]   ;取edx(假注册码)的第32位,与al直比较。。1f是十六进制,转换十进制是31
31位和32位为:a7
软件机器码为“72ea94c3047065d8”时的注册码为“66ecaa7bcdc4d58ad803198b06f50fa7
****************************************************************************
注册码的计算过程为:
机器码                         ;机器码
Qingling+72ea94c3047065d8+CQL  ;把机器码前后都加上一个固定字符串。
6ea7ccd8d0180f0977d13c8da01a1cd1  ;把得到的字符串md5加密。
6ea7ccd8d0180f0             ;取前15位作为软件的注册码前30位的奇数位
77d13c8da01a1cd1      ;取md5加密后数据的后16
3015f57808ba01ce6cabd45a839b65f5:对字符串进行md5加密
6cabd45a839b65f       ;取加密后数据的后16位的前15位作为软件注册码前30位的偶数位
a                  ;取机器码的第4位作为注册码的第31
7                    ;取机器码的第11位作为注册码的第32
得到软件的注册码:66ecaa7bcdc4d58ad803198b06f50fa7

我电脑的机器码是:f1abac3298505f48
加上固定的字符串:Qinglingf1abac3298505f48CQL
Md5加密后是:73a1dd43d1ecb5814c45774217bceb5b
取前15位作为软件的注册码前30位的奇数位:73a1dd43d1ecb58
md5加密后数据的后16位,对字符串进行md5加密:985be925bef02ad7de44f549df4a3f2a
取加密后数据的后16位的前15位作为软件注册码前30位的偶数位:de44f549df4a3f2
取机器码的第4位作为注册码的第31位:b
取机器码的第11位作为注册码的第32位:5
得到软件的注册码:7d3ea414dfd54439dd1fe4cab35f82b5
************************************************************

演示

演示

皇室取名软件2.2.8(附算法注册机).rar

867.51 KB, 下载次数: 2679, 下载积分: 吾爱币 -1 CB

原程序和注册机

皇室取名软件注册机源码-VB版.zip

29.87 KB, 下载次数: 537, 下载积分: 吾爱币 -1 CB

应吾友要求现把vb注册机源码发上来与大家共享!请多多指教。

点评

贴个图吧  发表于 2012-7-29 15:49

免费评分

参与人数 11热心值 +11 收起 理由
mour + 1 热心回复!
洛水河图。 + 1 ..2015年了 还能用
baike0419 + 1 网页打不开!请楼主看下怎么回事
xmp12345 + 1 太牛了,今天最后一个cb热心送你了
sunflover + 1 分析到位,md5运用的很不错
my1229 + 1 已答复!
Hoe + 1 给给力~~~
qiaomang + 1 分析的很详细
Peace + 1 我很赞同!
Sound + 1 来几张图吧》。
Chief + 1 欢迎分析讨论交流[吾爱破解论坛]有你更精彩.

查看全部评分

本帖被以下淘专辑推荐:

  • · 教程|主题: 123, 订阅: 88

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

头像被屏蔽
wfzx002 发表于 2012-7-29 15:51
占个位置
969990916 发表于 2012-7-29 15:50
Chief 发表于 2012-7-29 15:46
本帖最后由 Chief 于 2012-7-29 16:12 编辑

不错,分析的蛮详细的。
期待下个作品,吾爱破解有你更精彩。
liuqiuhao 发表于 2012-7-29 15:54
shenmedongxi
wangnet 发表于 2012-7-29 16:15
感谢分享经验
wkxq 发表于 2012-7-29 16:16
如果用E语言写这个注册机怎么写?教教我
online 发表于 2012-7-29 16:40
真的感觉比较好
谢谢!
dj0390 发表于 2012-7-29 16:54
恩,不错啊 支持
feihe 发表于 2012-7-29 16:58
好文章。。留个几号先
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-17 03:51

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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