Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网络安全 > 黑客技术 > 热键大师1.13 算法分析
【标  题】:热键大师1.13 算法分析
【关键字】:算法分析,13,13
【来  源】:网络

热键大师1.13 算法分析

Your Ad Here   此软件算法极其简单,供我等初学者学习算法之用,最好能写出自己的注册机。好了,下面开始
*******************************************************************
* Possible StringData Ref from Code Obj ->"请输入注册码"
|
:004B4954 B8AC4A4B00 mov eax, 004B4AAC
:004B4959 E8E6A6F8FF call 0043F044
:004B495E E9DB000000 jmp 004B4A3E

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B4952(C)
|
:004B4963 8D55F4 lea edx, dword ptr [ebp-0C]
:004B4966 8B8370040000 mov eax, dword ptr [ebx+00000470]
:004B496C E8EB15F9FF call 00445F5C
:004B4971 8B45F4 mov eax, dword ptr [ebp-0C]
:004B4974 50 push eax
:004B4975 8D55EC lea edx, dword ptr [ebp-14]
:004B4978 8B836C040000 mov eax, dword ptr [ebx+0000046C]
:004B497E E8D915F9FF call 00445F5C
:004B4983 8B55EC mov edx, dword ptr [ebp-14]
:004B4986 8D4DF0 lea ecx, dword ptr [ebp-10]
:004B4989 8BC3 mov eax, ebx
:004B498B E8B4FEFFFF call 004B4844------>关键call,见下面
:004B4990 8B55F0 mov edx, dword ptr [ebp-10]
---------------------->此时d edx可见正确注册码
:004B4993 58 pop eax
:004B4994 E86F02F5FF call 00404C08
:004B4999 0F8588000000 jne 004B4A27

* Possible StringData Ref from Code Obj ->"感谢您对本软件的支持"
|
:004B499F B8C44A4B00 mov eax, 004B4AC4
:004B49A4 E89BA6F8FF call 0043F044

* Possible StringData Ref from Code Obj ->" 热键大师 v1.13(注册给:"
|
----->将软件标题改为“热键大师 v1.13(注册给:用户名)”
:004B49A9 68E44A4B00 push 004B4AE4
:004B49AE 8D55E4 lea edx, dword ptr [ebp-1C]
:004B49B1 8B836C040000 mov eax, dword ptr [ebx+0000046C]
:004B49B7 E8A015F9FF call 00445F5C
:004B49BC FF75E4 push [ebp-1C]
:004B49BF 680C4B4B00 push 004B4B0C
:004B49C4 8D45E8 lea eax, dword ptr [ebp-18]
:004B49C7 BA03000000 mov edx, 00000003
:004B49CC E8B301F5FF call 00404B84
…………
……
*******************************************************************
* Referenced by a CALL at Addresses:------>关键call
|:004AFCD5 , :004B498B
|
:004B4844 55 push ebp
:004B4845 8BEC mov ebp, esp
:004B4847 83C4EC add esp, FFFFFFEC
:004B484A 53 push ebx
:004B484B 56 push esi
:004B484C 33DB xor ebx, ebx
:004B484E 895DEC mov dword ptr [ebp-14], ebx
:004B4851 895DF4 mov dword ptr [ebp-0C], ebx
:004B4854 894DF8 mov dword ptr [ebp-08], ecx
:004B4857 8955FC mov dword ptr [ebp-04], edx
:004B485A 8B45FC mov eax, dword ptr [ebp-04]
:004B485D E84A04F5FF call 00404CAC
:004B4862 33C0 xor eax, eax
:004B4864 55 push ebp
:004B4865 68EF484B00 push 004B48EF
:004B486A 64FF30 push dword ptr fs:[eax]
:004B486D 648920 mov dword ptr fs:[eax], esp
:004B4870 C745F053469103 mov [ebp-10], 03914653
------------------->[ebp-10]中存入重要数据03914653
:004B4877 8D45F4 lea eax, dword ptr [ebp-0C]
:004B487A 8B55FC mov edx, dword ptr [ebp-04]
:004B487D E82200F5FF call 004048A4
:004B4882 8B45F4 mov eax, dword ptr [ebp-0C]
------------------->用户名放到eax
:004B4885 E83A02F5FF call 00404AC4
:004B488A 8BD8 mov ebx, eax
------------------->用户名长度放到ebx
:004B488C 85DB test ebx, ebx

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B481D(C)
|
:004B488E 7E2E jle 004B48BE
------------------->长度为0跳走
:004B4890 BE01000000 mov esi, 00000001

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B48BC(C)
#################################
#:004B4895 8D45EC lea eax, dword ptr [ebp-14] #
#:004B4898 50 push eax #
#:004B4899 B901000000 mov ecx, 00000001 #
#:004B489E 8BD6 mov edx, esi #
#:004B48A0 8B45F4 mov eax, dword ptr [ebp-0C] #
#:004B48A3 E87404F5FF call 00404D1C #
#:004B48A8 8B45EC mov eax, dword ptr [ebp-14] #
#:004B48AB E80C04F5FF call 00404CBC #
#:004B48B0 8A00 mov al, byte ptr [eax] #
#:004B48B2 25FF000000 and eax, 000000FF #
#:004B48B7 0145F0 add dword ptr [ebp-10], eax #
#:004B48BA 46 inc esi #
#:004B48BB 4B dec ebx #
#:004B48BC 75D7 jne 004B4895 #
#################################
---------------->[ebp-10]加上用户名的每一位的ascii值
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004B488E(C)
|
:004B48BE 8B55F8 mov edx, dword ptr [ebp-08]
:004B48C1 8B45F0 mov eax, dword ptr [ebp-10]
---------------->将[ebp-10]的值作为地址放到eax
:004B48C4 E8FF47F5FF call 004090C8
---------------->将此值转换为10进制(正确的注册码)
:004B48C9 33C0 xor eax, eax
:004B48CB 5A pop edx
:004B48CC 59 pop ecx
:004B48CD 59 pop ecx
:004B48CE 648910 mov dword ptr fs:[eax], edx
:004B48D1 68F6484B00 push 004B48F6
…………
……
*******************************************************************
算法总结:

假设用户名为:lenghost
则注册码=03914653+6C+65+6E+67+68+6F+73+74=39149B7(16进制)
转换为10进制=59853239(正确注册码)
屏幕录像专家 V3.0 算法分析:【上一篇】
时间到了V1.5超简单算法分析:【下一篇】
【相关文章】
  • 屏幕录像专家 V3.0 算法分析
  • 批量更名专家 1.5 算法分析
  • 排课博士 2003算法分析
  • 蓝帆打支票 V5.0 算法分析
  • 键盘乐器 2.15 算法分析
  • <<魔镜系列之心灵感应>>注册算法分析
  • Visual CHM 4.0 算法分析(1)
  • CCProxy 5.0 注册码算法分析 上
  • CCProxy 5.0 注册码算法分析 下
  • SuperCleaner 2.31注册码算法分析
  • 【随机文章】
  • 找到PHP v4.0.2rc1-v4.0.7RC2 exploit program
  • OPENGL中3DMAX模型的应用
  • 编程之道by Geoffrey James
  • 土净
  • 新课题:社区以太网布线
  • 动态设置DNS的例子
  • ASP.NET2.0应用中定制安全凭证之实践篇(三)
  • 《数据精灵》(DataFairy)?
  • 局域网IP地址非法使用问题的解决方法
  • 项目管理过程中的问题分析方法
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.