通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
资源搜索:
热门搜索:Linux VB C语言 PhotoShop Flash TCP/IP
   首页 | 文章 | 软件 | 动画 | 资源 | 励志 | 骗术 | 论坛 | 邮箱 | 会员中心 | 军事 | 科技 | 博客 | 图片 | 商城 | 最新更新 | 800g资源 | 爱心黑客
您现在的位置: 爱国者黑客 >> 资源 >> 安全技术 >> 软件破解 >> 破解实例 >> 文章正文
极速传真[SpeedFax] 2.4 破解手记--程序逆向分析算法
责任编辑:admin   更新日期:2005-8-6
作者:newlaos

整理日期:2003.3.14(华军网)
最新版本:2.4
使用平台:Win9x/Me/NT/2000
发布公司:http://www.speedfax.onchina.net/


软件简介:快捷高效的通过电脑收发传真精典工具,功能特色如下:1.◆可视化拖放式传真封面文件编辑、设计,真正图文并茂;2.◆支持Class1/class2/class2.0等多类传真卡并可自动侦测;3.◆功能强大的字符宏替换,轻松创建各类传真标注;4.◆可导入多种图像格式文件,方便实现传真图片和印章盖戳;5.◆一次添加数百个传真任务,极适合商务传真群发广播;6.◆可以手动方式接收传真,也可自动监控并接收传真;7.◆支持传真文件翻转、放大、缩小、压缩等方式浏览;8.◆轻松打印传真文件,支持一边接收传真一边自动打印传真;9.◆支持WORD/WPS等各类文字办公处理系统直接转发传真;10.◆真正绿色软件,无需安装即可使用,操作简便,界面美观。

加密方式:注册码
功能限制:次数限制
PJ工具:TRW20001.23注册版、PE-SCAN3.31、W32Dasm8.93黄金版,FI2.5
PJ日期:2003-03-17
作者newlaos申明:只是学习,请不用于商业用途或是将本文方法制作的注册机任意传播,造成后果,本人一概不负。

1、先用FI2.5看一下主程序speedfaxV24.exe,没有加壳

2、用W32Dasm8.93黄金版对主程序进行静态反汇编,再用串式数据参考,找到"软件登记注册成功!"(很经典的句子),双击来到下面代码段。这样就找到注册码的计算部分。

3、再用TRW20001.23注册版进行动态跟踪,下断BPX 4FF938(通常在注册成功与否前面一些下断,这样,才能找到关键部分),先输入假码78787878

......
......
:004FF924 8D4DF4                  lea ecx, dword ptr [ebp-0C]

* Possible StringData Ref from Code Obj ->"请输入您的软件注册码"
                                 |
:004FF927 BA2CFA4F00              mov edx, 004FFA2C

* Possible StringData Ref from Code Obj ->"登记注册"
                                 |
:004FF92C B84CFA4F00              mov eax, 004FFA4C
:004FF931 E87A36F4FF              call 00442FB0
:004FF936 3C01                    cmp al, 01                <===看你是点了确定还是放弃
:004FF938 0F85A8000000            jne 004FF9E6              <===如果是点的放弃,则跳到后面去了。
:004FF93E 8D55D4                  lea edx, dword ptr [ebp-2C]
:004FF941 8B45F4                  mov eax, dword ptr [ebp-0C]  <===EAX=78787878
:004FF944 E87B9DF0FF              call 004096C4            
                    <===EAX放了一个地址指针,正好指向我们输入的假码
:004FF949 8B45D4                  mov eax, dword ptr [ebp-2C]  <===EAX=78787878
:004FF94C E8C3A0F0FF              call 00409A14            
                    <===将注册码进行第一次加工,当输入假码是78787878时,这里EAX=4B23526,从下面推上来,EAX应该等于199FF22,才能注册成功,F8跟进看个究竟
:004FF951 8945F8                  mov dword ptr [ebp-08], eax
:004FF954 8955FC                  mov dword ptr [ebp-04], edx
:004FF957 6A00                    push 00000000
:004FF959 6A1B                    push 0000001B
:004FF95B 8B45F8                  mov eax, dword ptr [ebp-08]   <===上个CALL计算出来的EAX=4B23526
:004FF95E 8B55FC                  mov edx, dword ptr [ebp-04]   <===EDX=0
:004FF961 E88266F0FF              call 00405FE8                  
                    <===将注册码进行第二次加工,当输入假码是78787878时,这里EAX=2C86B5,从下面推上来,EAX应该等于F2F6,才能注册成功,F8跟进看个究竟
:004FF966 8945F8                  mov dword ptr [ebp-08], eax    <===这里就算出了EAX,这里要正确则EAX=686+EC70=F2F6
:004FF969 8955FC                  mov dword ptr [ebp-04], edx
:004FF96C 8B45F8                  mov eax, dword ptr [ebp-08]
:004FF96F 8B55FC                  mov edx, dword ptr [ebp-04]
:004FF972 2D70EC0000              sub eax, 0000EC70        
                    <===第二次计算出来的EAX再减去EC70,成功的关键就是要等于686
:004FF977 83DA00                  sbb edx, 00000000        <===EDX=0
:004FF97A 8945F8                  mov dword ptr [ebp-08], eax
:004FF97D 8955FC                  mov dword ptr [ebp-04], edx
:004FF980 8D45D8                  lea eax, dword ptr [ebp-28]
:004FF983 E8CCEDFFFF              call 004FE754
:004FF988 8B45D8                  mov eax, dword ptr [ebp-28]  <===这里的值是经过上面计算好的,是固定的686
:004FF98B 99                      cdq                          <===这里EDX被清0
:004FF98C 8945E8                  mov dword ptr [ebp-18], eax
:004FF98F 8955EC                  mov dword ptr [ebp-14], edx
:004FF992 8B45F8                  mov eax, dword ptr [ebp-08]    <===这里说明,[EBP-08]必须和[EBP-18]相等
:004FF995 8B55FC                  mov edx, dword ptr [ebp-04]    <===这里说明,[EBP-04]必须和[ebp-14]相等
:004FF998 3B55EC                  cmp edx, dword ptr [ebp-14]    <===必须相等
:004FF99B 7534                    jne 004FF9D1           <===都是0,所以不会跳过去的。
:004FF99D 3B45E8                  cmp eax, dword ptr [ebp-18]    
                    <===必须相等(EAX要等于686), 这个686好象是计算机的CPU ID
:004FF9A0 752F                    jne 004FF9D1           <===跳过去就OVER了
:004FF9A2 8B83B4030000            mov eax, dword ptr [ebx+000003B4]
:004FF9A8 E8037BFCFF              call 004C74B0
:004FF9AD 6A00                    push 00000000
:004FF9AF 668B0D58FA4F00          mov cx, word ptr [004FFA58]
:004FF9B6 B202                    mov dl, 02

* Possible StringData Ref from Code Obj ->"软件登记注册成功!"
                                 |
:004FF9B8 B864FA4F00              mov eax, 004FFA64
:004FF9BD E8D234F4FF              call 00442E94
:004FF9C2 33D2                    xor edx, edx
:004FF9C4 8B838C030000            mov eax, dword ptr [ebx+0000038C]
:004FF9CA E839C3F5FF              call 0045BD08
:004FF9CF EB15                    jmp 004FF9E6

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:004FF99B(C), :004FF9A0(C)
|
:004FF9D1 6A00                    push 00000000
:004FF9D3 668B0D58FA4F00          mov cx, word ptr [004FFA58]
:004FF9DA B201                    mov dl, 01

* Possible StringData Ref from Code Obj ->"软件注册号错误!"
                                 |
:004FF9DC B880FA4F00              mov eax, 004FFA80
:004FF9E1 E8AE34F4FF              call 00442E94

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:004FF938(C), :004FF9CF(U)
|
:004FF9E6 33C0                    xor eax, eax
:004FF9E8 5A                      pop edx
:004FF9E9 59                      pop ecx
:004FF9EA 59                      pop ecx
:004FF9EB 648910                  mov dword ptr fs:[eax], edx
:004FF9EE 680BFA4F00              push 004FFA0B

* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004FFA09(U)
|
:004FF9F3 8D45D4                  lea eax, dword ptr [ebp-2C]
:004FF9F6 E8F555F0FF              c

[1] [2] [3] [4] [5] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • 热门文章
    Olldbg常见问题
    汇编语言的艺术(组合语言的艺术)--观
    汇编语言的艺术(组合语言的艺术)--准
    汇编语言的艺术(组合语言的艺术)--基
    汇编语言的艺术(组合语言的艺术)--基
    汇编语言---程式设计 (4)
    虚拟8086模式
    SYS命令使用说明
    javascript + CSS 实现动态菜单显
    推荐文章
    自制Windows XP SP2自动安装光盘
    SQLServer注入工具改进版 v1.02
    使用photoshop CS进行自然美肤
    Photoshop绘制诺基亚手机
    PHOTOSHOP制作秋日之梦
    PHOTOSHOP鼠绘名模王爱萍
    Photoshop制作晶莹飞溅的水珠
    教你用PHOTOSHOP做放大镜
    鼠绘美女及服装修画全过程