WinTopo Pro 2.11注册码计算方法
1、启动该软件,输入任意的注册码(16位)后,退出。此时注册信息会保存在软件安装目录的1814fd99.dat文件中。
2、启动该软件和TRW2000,下断点bpx 0040AD72,再打开"Help"菜单下的"License Wintopo Pro"选项,则会被中断。
:0040AD72 50
push eax
:0040AD73 E8A7050000 call
0040B31F ; 关键
:0040AD78 8B45F0
mov eax, dword ptr [ebp-10]
:0040AD7B 3B45EC
cmp eax, dword ptr [ebp-14] ; 相等即可
:0040AD7E 7514
jne 0040AD94
:0040AD80 8B45E8
mov eax, dword ptr [ebp-18]
:0040AD83 3B45E4
cmp eax, dword ptr [ebp-1C] ; 相等即可
:0040AD86 750C
jne 0040AD94
3、进入0040AD73 call 0040B31F调用,会看到对于注册码的变换过程。
其中有一张表格,由16个字符组成,对应数字0-F:
表格 G N P X W C D K R J F M B H T L
对应 0 1 2 3 4 5 6 7 8 9 A B C D E F
注册码就由这些字符组成。
4、执行完0040AD73 call 0040B31F的调用后,在内存[ebp-1c]处会保存计算结果。如:
18 3A 5C 7E D5 8F EF 0D-90 B2 D4 F6 57 03 D3 BF
^^^^^^^^^^^ *********** ^^^^^^^^^^^ ***********
(1) (2)
(3) (4)
其中,(1)为[ebp-1c]处内容,由你输入的注册码算得,(2)为[ebp-18]处内容,为真正的注册码内容,(3)为[ebp-14]处内容,由你输入的注册码算得,(4)为[ebp-10]处内容,为真正的注册码内容。
5、只要(1)=(2),(3)=(4)即可注册成功。
记下(2)和(4)处的内容。
6、下面反推注册码。
(2)处内容为:D5 8F EF 0D 根据此数由左向右得出注册码以下几位:
注册码第1位=D 换算为H ; 由上面的表格得来
第8位=5 C
第3位=8 R
第A位=F L
第5位=E T
第C位=F L
第7位=0 G
第E位=D H
(4)处内容为:57 03 D3 BF
则注册码第9位=5 换算为C
第0位=7 K
第B位=0 G
第2位=3 X
第D位=D H
第4位=3 X
第F位=B M
第6位=F L
7、最后,得出真正的注册码为:KHXRXTLGCCLGLHHM
重新注册,成功。
由于本人水平所限,可能很多地方没说清楚,欢迎交流。
- 标 题:注册码算法 (2千字)
- 作 者:lijing
- 时 间:2001-1-14 10:47:46
- 链 接:http://bbs.pediy.com