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
重新註冊,成功。
由於本人水平所限,可能很多地方沒說清楚,歡迎交流。