欢迎来到 嗅灵易学

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

破解HomeWatcher v1.2 第二回合 (6千字)

破解HomeWatcher v1.2 第二回合 (6千字)

最先最先得感谢TRW2000的作者朱楠灏和刘涛涛。
破解HomeWatcher v1.2  第二回合(转载希望保持完整)
级别:入门级-----前辈们请指点。

软件名称:HomeWatcher
整理
最新版本:1.2 Beta 9
文件大小:968KB
软件授权:共享软件
使用平台:Win95/98/NT
发布公司:Home Page
软件简介:
  能够定时拍照,能在景物发生变化时将照片保存下来,然后制作成网页,连接到internet,再通过FTP将照片上传
http://www.newhua.com/down/hw12.exe
第二回合较量。
用TRW2000,看一看能否可以TRACE出它的注册码,当然我个人感觉有一点麻麻地(广东话)。Do my best!
再通看一遍程序(在出现错误窗口的时候)
015F:00413250  MOV    CL,[EBX]
015F:00413252  MOV    [EDI],CL
015F:00413254  INC    DWord Ptr [ESP+08]
015F:00413258  INC    EDI
015F:00413259  INC    ESI
015F:0041325A  INC    EBX
015F:0041325B  LEA    EAX,[ESP+0C]
015F:0041325F  PUSH    EAX
015F:00413260  CALL    0047B320
                ^^^^^^^^^^^^^^^^-------------------------->注意这个CALL号
015F:00413265  POP    ECX
015F:00413266  CMP    EAX,ESI
015F:00413268  JA      00413232
015F:0041326A  MOV    EDX,[ESP+04]
015F:0041326E  LEA    EAX,[ESP+70]
015F:00413272  MOV    Byte Ptr [ESP+1*EDX+70],00
015F:00413277  MOV    ECX,[ESP+08]
015F:0041327B  MOV    Byte Ptr [ESP+1*ECX+00000084],00
015F:00413283  PUSH    EAX
015F:00413284  CALL    0047B320
                ^^^^^^^^^^^^^^^^-------------------------->又注意这个CALL号
015F:00413289  POP    ECX
015F:0041328A  CMP    EAX,00000011
015F:0041328D  JNZ    004132A2----------->不等,KEY就非法
015F:0041328F  LEA    EDX,[ESP+00000084]
015F:00413296  PUSH    EDX
015F:00413297  CALL    0047B320
                ^^^^^^^^^^^^^^^^-------------------------->又再注意这个CALL号
                                                看来这软件的作者的CALL号一定是47B320
                                                记得哦,去了美国,别忘了CALL他^_^
                                                一定有鬼,去捉鬼好不好!可要带好武器喔!
015F:0041329C  POP    ECX
015F:0041329D  CMP    EAX,00000010
015F:004132A0  JZ      004132CC
015F:004132A2  PUSH    00000030
015F:004132A4  PUSH    004A1E35
015F:004132A9  PUSH    004A1E28
015F:004132AE  MOV    EAX,[ESP+0C]
015F:004132B2  CALL    0045F960
015F:004132B7  PUSH    EAX
015F:004132B8  CALL    `USER32!MessageBoxA`------出错窗口

想想清楚罗、(远处有一个鬼屋)开了门,就不要往回走罗!好!GO GO 按F8,进入 call 47b320
好象都是黑乎乎的代码!
015F:0047B320  MOV    EAX,[ESP+04]------->EAX指向存KEY的地方 用D EAX 可以看到注册码
015F:0047B324  TEST    AL,03
015F:0047B326  JNZ    0047B355
015F:0047B328  MOV    EDX,[EAX]---------->把前四位,付给EDX,我的是1234。不过你看到是HEX
015F:0047B32A  ADD    EAX,00000004------->移动KEY的指针,到下四位。
015F:0047B32D  MOV    ECX,EDX
015F:0047B32F  SUB    EDX,01010101------->为什么都减1呢??我也不明白.
015F:0047B335  AND    EDX,80808080------->为什么都AND 80呢???
015F:0047B33B  JZ      0047B328
015F:0047B33D  NOT    ECX        -------> 为什么??
015F:0047B33F  AND    EDX,ECX    --------> 为什么??
经过反复多次的输入KEY值,跟踪、跟踪、再跟踪。我先说这段程序作用-----计算EAX指向的字符串的长度
这段的程序挺有趣的。可以分析一下。
几点TIPS: 1、HEX-01是判断当没有输入值的时候HEX为00
          2、AND 80 因为能输入的字符的HEX都是小于80的
          3、HEX是输入的键盘的16进制值,比如:'1'--->HEX为31。
015F:0047B341  JZ      0047B328
015F:0047B343  TEST    DL,DL
015F:0047B345  JNZ    0047B36F
015F:0047B347  TEST    DH,DH
015F:0047B349  JNZ    0047B370
015F:0047B34B  TEST    EDX,00FF0000
015F:0047B351  JNZ    0047B371
015F:0047B353  JMP    0047B372
015F:0047B355  ADD    EAX,00000004
015F:0047B358  TEST    Byte Ptr [EAX-04],FF
015F:0047B35C  JZ      0047B36F
015F:0047B35E  TEST    Byte Ptr [EAX-03],FF
015F:0047B362  JZ      0047B370
015F:0047B364  TEST    Byte Ptr [EAX-02],FF
015F:0047B368  JZ      0047B371
015F:0047B36A  DEC    EAX
015F:0047B36B  AND    AL,FC
015F:0047B36D  JMP    0047B328
015F:0047B36F  DEC    EAX
015F:0047B370  DEC    EAX
015F:0047B371  DEC    EAX
015F:0047B372  MOV    ECX,[ESP+04]
015F:0047B376  DEC    EAX
015F:0047B377  SUB    EAX,ECX  ------->得出Key的长度,确切的说是EAX指向的字符串的长度
015F:0047B379  RET
既然读懂了子程序,再跳回来看它的程序。
015F:00413284  CALL    0047B320
                ^^^^^^^^^^^^^^^^
015F:00413289  POP    ECX
015F:0041328A  CMP    EAX,00000011
                            ^^^^^^^^------->看来是11位的,错应是0X11
015F:0041328D  JNZ    004132A2----------->不等,KEY就说是非法
015F:0041328F  LEA    EDX,[ESP+00000084]
看来KEY是任意17位,YEAH!!!
试一试,噢,又是Invalid。
再看(眼睛好痛啊!!!)
015F:00413250  MOV    CL,[EBX]
015F:00413252  MOV    [EDI],CL
015F:00413254  INC    DWord Ptr [ESP+08]
015F:00413258  INC    EDI
015F:00413259  INC    ESI
015F:0041325A  INC    EBX
015F:0041325B  LEA    EAX,[ESP+0C]
015F:0041325F  PUSH    EAX
015F:00413260  CALL    0047B320
                ^^^^^^^^^^^^^^^^
015F:00413265  POP    ECX
015F:00413266  CMP    EAX,ESI
015F:00413268  JA      00413232
以上程序是取键入KEY值的奇数位,-----------很容易的,自己去折磨一下,我现在手好累。*_*
015F:0041326A  MOV    EDX,[ESP+04]
015F:0041326E  LEA    EAX,[ESP+70]
015F:00413272  MOV    Byte Ptr [ESP+1*EDX+70],00
015F:00413277  MOV    ECX,[ESP+08]
015F:0041327B  MOV    Byte Ptr [ESP+1*ECX+00000084],00
015F:00413283  PUSH    EAX
015F:00413284  CALL    0047B320
                ^^^^^^^^^^^^^^^^
015F:00413289  POP    ECX
015F:0041328A  CMP    EAX,00000011
                        ^^^^^^^^^^^^---------->因此KEY值是OX11*2=0X22=34(位)
                                              计算真确,加10000分:)
                        为了好计算我输入1234567891234567891234567891234567(根据个人爱好)
015F:0041328D  JNZ    004132A2----------->不等,KEY就非法
015F:0041328F  LEA    EDX,[ESP+00000084]
015F:00413296  PUSH    EDX
015F:00413297  CALL    0047B320
                ^^^^^^^^^^^^^^^^---------------
015F:0041329C  POP    ECX
015F:0041329D  CMP    EAX,00000010
015F:004132A0  JZ      004132CC
填好后,按确定出现“restar HomeWatcher to apply the changes”,重新启动HomeWatcher,瞧一瞧
好象还是不行。没有关系,CRACK的精神就是一追到底,誓不休。说的远一点,可以培养每个人的坚定不移的
斗志。即使不作CRACKER,追女孩法则之一也是一追到底喔!:))
希望有些收获,我可不管这些,反正,我功力可是增加了3点!!!现在经验值是23点^_^
(待续)
                                                                完成时间
                                                            2000.2.28 23:08
                                                                费时3个小时

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

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

0 0 0 举报
复制成功