欢迎来到 嗅灵易学

零基础也能上手的脚本技术课,一对一答疑带你入门

菜鸟破解录(九)之 CDSpace 1.95 (4千字)

菜鸟破解录(九)之 CDSpace 1.95 (4千字)

菜鸟破解录(九)之 CDSpace 1.95

软件名称:CDSpace
版    本:1.95
简    介:一个相当不错的虚拟光驱程序,操作简单,最大可同时使用23个虚拟光驱。
作    者:xiA Qin
等    级:很菜....很菜....
破解
破解工具:Trw2000 1.22
破解目的:学习注册码的破解(简单)
说  明:
        本文是在我的软件破解记录上整理出来的。所以在文中没有任何的注册码,只作技术交流。如若有纰漏,请各位大侠多指教!

运行程序,输入注册信息。
name: xiA Qin          &任意输入
code: 1234567890123456  必须是16位,为什么?程序会检查注册码位数。下面会讲到

下指令bpx hmemcpy    //下中断点 
按F5回到程序,按确定,这时会被Trw2000拦截到。
下指令bd *            //屏障中断点
下指令pmodule        //直接跳到程序的领空
按F10来到下面的代码。
...................
015F:00409570  CALL      0040FB9E
015F:00409575  LEA      ECX,[ESP+10]
015F:00409579  CALL      0040FB1A
015F:0040957E  XOR      ESI,ESI
015F:00409580  LEA      ECX,[ESP+14]
015F:00409584  MOV      [ESP+2C],ESI
015F:00409588  CALL      0040FB1A
015F:0040958D  MOV      EAX,[EDI+60]
015F:00409590  LEA      EBP,[EDI+60]
015F:00409593  MOV      BYTE PTR [ESP+2C],01
015F:00409598  CMP      DWORD PTR [EAX-08],06
015F:0040959C  JGE      004095AA
015F:0040959E  PUSH      ESI
015F:0040959F  PUSH      ESI
015F:004095A0  PUSH      00418810
015F:004095A5  JMP      004096AC              把16进制的10换算成10进制=16,表示注册码
015F:004095AA  MOV      EDX,[EDI+64]        ┍────────────      是16位
015F:004095AD  LEA      EBX,[EDI+64]        ↓
015F:004095B0  CMP      DWORD PTR [EDX-08],10  //检查注册码的位数是不是16位。
015F:004095B4  JZ        004095C2                //是16位就跳到004095C2继续检查注册码是否正确,
015F:004095B6  PUSH      ESI                      不然死给你看。当然我们可以把它改成无条件 
015F:004095B7  PUSH      ESI                      跳转 JMP 。
015F:004095B8  PUSH      004187FC
015F:004095BD  JMP      004096AC                 
015F:004095C2  XOR      ECX,ECX
015F:004095C4  MOV      AL,[ECX+EDX]
015F:004095C7  CMP      AL,30
015F:004095C9  JL        004095CF
015F:004095CB  CMP      AL,39
015F:004095CD  JLE      004095DF
015F:004095CF  CMP      AL,41
015F:004095D1  JL        0040969E
015F:004095D7  CMP      AL,46
015F:004095D9  JG        0040969E
015F:004095DF  INC      ECX
015F:004095E0  CMP      ECX,08
015F:004095E3  JL        004095C4
015F:004095E5  LEA      ECX,[ESP+1C]
015F:004095E9  PUSH      ECX
015F:004095EA  PUSH      ECX
015F:004095EB  MOV      ECX,ESP
015F:004095ED  MOV      [ESP+20],ESP
015F:004095F1  PUSH      EBP
015F:004095F2  CALL      0040FC0A
015F:004095F7  MOV      ECX,EDI
015F:004095F9  CALL      004096F0
015F:004095FE  LEA      ECX,[ESP+10]
015F:00409602  CALL      0040FCE2
015F:00409607  XOR      EDX,EDX            <--|
015F:00409609  LEA      EAX,[ESP+14]          |
015F:0040960D  MOV      DL,[ESI+ESP+1C]        |计
015F:00409611  PUSH      EDX                    |算
015F:00409612  PUSH      004187F4              |正
015F:00409617  PUSH      EAX                    |确
015F:00409618  CALL      0040FB98              |的
015F:0040961D  ADD      ESP,0C                |注
015F:00409620  LEA      ECX,[ESP+14]          |册
015F:00409624  PUSH      ECX                    |码
015F:00409625  LEA      ECX,[ESP+14]          |.
015F:00409629  CALL      0040FBEC              |注意 EDX 的变化。
015F:0040962E  INC      ESI                    |
015F:0040962F  CMP      ESI,08                |
015F:00409632  JL        00409607            <--|
015F:00409634  LEA      ECX,[ESP+10]
015F:00409638  CALL      0040FBC8
015F:0040963D  MOV      ECX,EBX            //正确的注册码 D EAX.
015F:0040963F  CALL      0040FBC8
015F:00409644  MOV      EAX,[EBX]
015F:00409646  MOV      EDX,[ESP+10]
015F:0040964A  PUSH      EAX
015F:0040964B  PUSH      EDX
015F:0040964C  CALL      [0041268C]
015F:00409652  ADD      ESP,08
015F:00409655  TEST      EAX,EAX
015F:00409657  PUSH      00
015F:00409659  PUSH      00
015F:0040965B  JNZ      004096A7          //比较注册码是否相等。
015F:0040965D  PUSH      004187D4         
015F:00409662  CALL      0040FB92          //注册成功对话框。
015F:00409667  CALL      0040FB68
015F:0040966C  MOV      ESI,[EAX+04]
015F:0040966F  MOV      EAX,[EBP+00]
015F:00409672  PUSH      EAX
015F:00409673  PUSH      004187CC
015F:00409678  MOV      ECX,ESI
015F:0040967A  CALL      0040BD70          //注册失败对话框。
015F:0040967F  MOV      EAX,[EBX]
015F:00409681  MOV      ECX,ESI
015F:00409683  PUSH      EAX
015F:00409684  PUSH      004187C0
015F:00409689  CALL      0040BD70
015F:0040968E  MOV      ECX,EDI
015F:00409690  MOV      BYTE PTR [ESI+000000C4],00
.........................

注意:上传附件及图片大小不得大于30M。

⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。

0 0 0 举报
复制成功