• 标 题:菜鸟破解录(10)之 A Day in the Life 1.51 (6千字)
  • 作 者:xiA Qin
  • 时 间:2000-7-23 9:23:57
  • 链 接:http://bbs.pediy.com

菜鸟破解录(10)之 A Day in the Life 1.51


软件名称:A Day in the Life
版    本:1.51
简    介:
        日记或是记录软件。完全支持中文不会有乱码!可记录每天生活的点点滴滴。附有万年历。可允许多人使用并各自设定自己的密码。这样你的日记就不会被偷看了。除了基本的功能外。还可以打印输出,载入图片,及录制声音。非常方便。
       
      有了这个软件再也不怕阿妈偷看日记了。我加密码。哈哈...
       
作    者:xiA Qin
等    级:很菜....很菜....
破解日期:2000年7月23日
破解工具:Trw2000 1.22
破解目的:学习注册码的破解(有点难)

说  明:

        本文是在我的软件破解记录上整理出来的,只作技术交流。如若有纰漏,请各位大侠多指教!



运行程序,输入注册信息。

name: xiA Qin          &任意输入
code: 1234567890        &任意输入


下指令bpx hmemcpy    //下中断点 

按F5回到程序,按register,这时会被Trw2000拦截到。

下指令bd *            //屏障中断点

下指令pmodule        //直接跳到程序的领空

按F10来到下面的代码。
...................

015F:004B9ED3  MOV      EAX,[EBP-08]      <--|
015F:004B9ED6  XOR      EBX,EBX              |
015F:004B9ED8  MOV      BL,[ECX+EAX-01]      |按正序
015F:004B9EDC  IMUL      EBX,EDI              |读入name
015F:004B9EDF  CMP      EBX,12                |即读入xiA Qin
015F:004B9EE2  JL        004B9EF3              |的顺序
015F:004B9EE4  MOV      EAX,[EBP-08]          |
015F:004B9EE7  MOV      EAX,EBX              | 注意EBX的变化
015F:004B9EE9  MOV      EBX,00000011          |
015F:004B9EEE  CDQ                            |
015F:004B9EEF  IDIV      EBX                  |
015F:004B9EF1  MOV      EDI,EAX              |
015F:004B9EF3  INC      ECX                  |
015F:004B9EF4  DEC      ESI                  |
015F:004B9EF5  JNZ      004B9ED3          <--|
015F:004B9EF7  MOV      EAX,[EBP-08]
015F:004B9EFA  CALL      00403EA0
015F:004B9EFF  MOV      ECX,EAX
015F:004B9F01  CMP      ECX,01
015F:004B9F04  JL        004B9F45
015F:004B9F06  MOV      EAX,[EBP-08]      <--|
015F:004B9F09  MOV      BL,[ECX+EAX-01]      |按逆序
015F:004B9F0D  MOV      ESI,EBX              |读入name
015F:004B9F0F  AND      ESI,000000FF          |即iQ Aix
015F:004B9F15  MOV      EAX,ECX              |的顺序
015F:004B9F17  CDQ                            |
015F:004B9F18  IDIV      ESI                  |
015F:004B9F1A  TEST      EDX,EDX              |
015F:004B9F1C  JZ        004B9F2B              |
015F:004B9F1E  MOV      EAX,[EBP-08]          |
015F:004B9F21  SUB      ESI,0B                |
015F:004B9F24  IMUL      ESI,EDI              |注意EBX的变化
015F:004B9F27  MOV      EDI,ESI              |
015F:004B9F29  JMP      004B9F40              |
015F:004B9F2B  MOV      EAX,[EBP-08]          | 
015F:004B9F2E  XOR      EAX,EAX              |
015F:004B9F30  MOV      AL,BL                |
015F:004B9F32  ADD      EAX,11                |
015F:004B9F35  PUSH      EAX                  |
015F:004B9F36  MOV      EAX,EDI              |
015F:004B9F38  POP      EDX                  |
015F:004B9F39  MOV      EBX,EDX              |
015F:004B9F3B  CDQ                            |
015F:004B9F3C  IDIV      EBX                  |
015F:004B9F3E  MOV      EDI,EAX              |
015F:004B9F40  DEC      ECX                  |
015F:004B9F41  TEST      ECX,ECX              |
015F:004B9F43  JNZ      004B9F06          <--|
015F:004B9F45  MOV      EAX,[EBP-08]
015F:004B9F48  CALL      00403EA0
015F:004B9F4D  PUSH      EAX
015F:004B9F4E  MOV      EAX,EDI
015F:004B9F50  POP      EDX
015F:004B9F51  SUB      EAX,EDX
015F:004B9F53  MOV      ECX,00000007
015F:004B9F58  CDQ
015F:004B9F59  IDIV      ECX
015F:004B9F5B  ADD      EAX,00000F92
015F:004B9F60  MOV      EDI,EAX
015F:004B9F62  LEA      EDX,[EBP-0C]
015F:004B9F65  MOV      EAX,EDI
015F:004B9F67  CALL      00408504
015F:004B9F6C  LEA      EAX,[EBP-10]
015F:004B9F6F  MOV      EDX,[EBP-08]
015F:004B9F72  MOV      DL,[EDX]
015F:004B9F74  CALL      00403DC8
015F:004B9F79  MOV      EAX,[EBP-10]
015F:004B9F7C  LEA      EDX,[EBP-0C]
015F:004B9F7F  MOV      ECX,00000001
015F:004B9F84  CALL      0040412C
015F:004B9F89  MOV      EDX,[EBP-08]
015F:004B9F8C  MOV      EAX,004BA098
015F:004B9F91  CALL      00404188
015F:004B9F96  MOV      EDX,[EBP-08]
015F:004B9F99  MOV      DL,[EAX+EDX]
015F:004B9F9C  LEA      EAX,[EBP-10]
015F:004B9F9F  CALL      00403DC8
015F:004B9FA4  MOV      EAX,[EBP-10]
015F:004B9FA7  PUSH      EAX
015F:004B9FA8  MOV      EAX,[EBP-0C]
015F:004B9FAB  CALL      00403EA0
015F:004B9FB0  MOV      ECX,EAX
015F:004B9FB2  INC      ECX
015F:004B9FB3  LEA      EDX,[EBP-0C]
015F:004B9FB6  POP      EAX
015F:004B9FB7  CALL      0040412C
015F:004B9FBC  MOV      EAX,[EBP-0C]    //生成注册码的数字部分,如x-182778339Q    
015F:004B9FBF  CALL      00403EA0       
015F:004B9FC4  MOV      ECX,EAX
015F:004B9FC6  SAR      ECX,1
015F:004B9FC8  JNS      004B9FCD
015F:004B9FCA  ADC      ECX,00
015F:004B9FCD  LEA      EDX,[EBP-0C]
015F:004B9FD0  MOV      EAX,004BA0A4
015F:004B9FD5  CALL      0040412C        //生成注册码的字母部分,如ClaDiTL
015F:004B9FDA  LEA      EDX,[EBP-14]
015F:004B9FDD  MOV      EAX,[EBP-04]
015F:004B9FE0  MOV      EAX,[EAX+000002F0]
015F:004B9FE6  CALL      004306F4
015F:004B9FEB  MOV      EDX,[EBP-14]
015F:004B9FEE  MOV      EAX,[EBP-0C]      //正确的注册码D EAX
015F:004B9FF1  CALL      00403FB0
015F:004B9FF6  JNZ      004BA028          //比较注册码。
015F:004B9FF8  LEA      EDX,[EBP-14]
015F:004B9FFB  MOV      EAX,[EBP-04]
015F:004B9FFE  MOV      EAX,[EAX+000002F0]
015F:004BA004  CALL      004306F4
015F:004BA009  MOV      EDX,[EBP-14]
015F:004BA00C  MOV      EAX,004BA0A4
015F:004BA011  CALL      00404188
015F:004BA016  TEST      EAX,EAX
015F:004BA018  JLE      004BA028
015F:004BA01A  MOV      EAX,[004C79A8]
015F:004BA01F  MOV      EAX,[EAX]
015F:004BA021  CALL      004C3DE4
015F:004BA026  JMP      004BA05F
015F:004BA028  PUSH      00
015F:004BA02A  MOV      CX,[004BA0AC]
015F:004BA031  MOV      DL,01
015F:004BA033  MOV      EAX,004BA0B8
015F:004BA038  CALL      00454628            //失败对话框
015F:004BA03D  MOV      EAX,[EBP-04]
015F:004BA040  MOV      EAX,[EAX+000002EC]
015F:004BA046  MOV      EDX,[EAX]
015F:004BA048  CALL      [EDX+000000D0]
015F:004BA04E  MOV      EAX,[EBP-04]
015F:004BA051  MOV      EAX,[EAX+000002F0]
015F:004BA057  MOV      EDX,[EAX]
015F:004BA059  CALL      [EDX+000000D0]

整理一下,输入注册信息。

name: xiA Qin         
code: x-182ClaDiTL778339Q