菜鳥破解實錄 之Terrapin FTP Browser
軟體名稱:Terrapin FTP Browser
軟體版本:2.2
軟體大小:1.4MB
軟體簡介:
如果你擁有自己的主頁或是希望更迅速有效地瀏覽遠端的FTP站點,Terrapin FTP Browser應該是你的理想選擇,Terrapin
FTP Browser的操作非常簡單,和Windows的資源管理器一樣可以任意拖拽檔案,你還可以從Windows的資源管理器或桌面上直接將檔案拖進Terrapin
FTP Browser的視窗進行上傳。它支援整個子目錄的上傳,這對於網站維護者來說是非常有用的。Terrapin FTP Browser還支援離線瀏覽並能夠儲存訪問過的站點的目錄與結構,而且當你再次訪問一個站點時,它會將儲存的資訊與該站點的檔案比較,如果某些檔案發生了改變,它會用一個特殊的圖示進行標識,以提醒你該檔案已經更新。Terrapin
FTP Browser的另一個不同尋常的功能是可以在兩個遠端電腦中進行傳輸,這對於軟體站點的Webmaster來說是一個多麼好的特性啊,因為用它可以輕鬆地將國外站點的軟體拉到國內的伺服器中,省去了下載、上傳所耗費的時間與金錢。除了上述功能外,Terrapin
FTP Browser同樣也具有其他優秀的FTP軟體的大多數功能。......
作 者:xiA Qin
解密日前:2000年9月5日
解密工具:Trw2000 1.22
說 明:本文是在我的軟體破解記錄上整理出來的。如若有紕漏,請各位大俠多指教!
輸入註冊資訊:
註冊 碼:11111-222222-33333
注:為了方便說明,分為2段。
第1段為:11111
第2段為:22222
第3段為:33333
下指令bpx hmemcpy //下中斷點
按F5回到程式,按確定,這時會被Trw2000攔截到。
下指令bd * //屏障中斷點
下指令pmodule //直接跳到程式的領空
按F10來到下面指令
015F:00449561 LEA EAX,[EBP-4C]
015F:00449564 PUSH EAX
015F:00449565 CALL 0043E7D8 //有問題,按F8進入。
015F:0044956A ADD ESP,BYTE +04
015F:0044956D TEST EAX,EAX //用eax當旗標,eax=1註冊成功。
015F:0044956F JNZ 004495AD
015F:00449571 PUSH BYTE +00
015F:00449573 PUSH BYTE +00
015F:00449575 PUSH DWORD 004D5653
015F:0044957A CALL 00499F40 //註冊失敗
015F:0044957F MOV DWORD [EBP-04],00
015F:00449586 LEA ECX,[EBP-4C]
015F:00449589 CALL 004A9BAC
015F:0044958E MOV DWORD [EBP-04],FFFFFFFF
015F:00449595 LEA ECX,[EBP-58]
015F:00449598 CALL 004A9BAC
015F:0044959D XOR EAX,EAX
015F:0044959F MOV ECX,[EBP-0C]
015F:004495A2 MOV [FS:00],ECX
015F:004495A9 MOV ESP,EBP
015F:004495AB POP EBP
015F:004495AC RET
...................
015F:0043E7DB PUSH BYTE -01
015F:0043E7DD PUSH DWORD 0043E9D5
015F:0043E7E2 MOV EAX,[FS:00]
015F:0043E7E8 PUSH EAX
015F:0043E7E9 MOV [FS:00],ESP
015F:0043E7F0 SUB ESP,BYTE +08
015F:0043E7F3 SUB ESP,BYTE +58
015F:0043E7F6 PUSH EBX
015F:0043E7F7 PUSH ESI
015F:0043E7F8 PUSH EDI
015F:0043E7F9 MOV EAX,[EBP+08]
015F:0043E7FC CMP DWORD [EAX+04],BYTE +0F //檢查輸入的註冊碼位數,15位。
015F:0043E800 JNZ 0043E87A
//不相等,就跳。
015F:0043E802 MOV EBX,[004D337C]
015F:0043E808 PUSH DWORD [004D337C]
015F:0043E80E CALL 0047E428
015F:0043E813 ADD ESP,BYTE +04
015F:0043E816 TEST EAX,EAX
015F:0043E818 JZ NEAR 0043E89F
015F:0043E81E PUSH BYTE +05
015F:0043E820 LEA ECX,[EBP-6C]
015F:0043E823 PUSH ECX
015F:0043E824 MOV ECX,[EBP+08]
015F:0043E827 CALL 004B5758
. . .
.
. . .
.
. . .
.
015F:0043E8A5 MOV ECX,[EBP+08]
015F:0043E8A8 CALL 004B5758
015F:0043E8AD MOV DWORD [EBP-04],02
015F:0043E8B4 PUSH EAX
015F:0043E8B5 LEA ECX,[EBP-3C]
015F:0043E8B8 CALL 004A9B34
015F:0043E8BD MOV DWORD [EBP-04],03
015F:0043E8C4 PUSH EAX
015F:0043E8C5 LEA EAX,[EBP-54]
015F:0043E8C8 PUSH EAX
015F:0043E8C9 CALL 0043E9DF
//根據11111計算正確的註冊碼。按F8進入。
015F:0043E8CE MOV DWORD [EBP-04],04 都是浮點指令,我看不懂。
015F:0043E8D5 PUSH BYTE +09
015F:0043E8D7 LEA EAX,[EBP-30]
015F:0043E8DA PUSH EAX
015F:0043E8DB LEA ECX,[EBP-54]
//正確的註冊碼 D EBP-54
015F:0043E8DE CALL 004B56EC
015F:0043E8E3 MOV DWORD [EBP-04],05
015F:0043E8EA MOV [EBP-18],EAX
015F:0043E8ED PUSH BYTE +09
015F:0043E8EF LEA ECX,[EBP-24]
015F:0043E8F2 PUSH ECX
015F:0043E8F3 MOV ECX,[EBP+08]
015F:0043E8F6 CALL 004B56EC
015F:0043E8FB MOV DWORD [EBP-04],06
015F:0043E902 PUSH DWORD [EAX]
015F:0043E904 MOV EAX,[EBP-18]
015F:0043E907 PUSH DWORD [EAX]
015F:0043E909 CALL 0047DFC8
//比較註冊碼CAll。
015F:0043E90E ADD ESP,BYTE +08
015F:0043E911 TEST EAX,EAX
015F:0043E913 JNZ 0043E924
015F:0043E915 PUSH BYTE +2D
015F:0043E917 LEA ECX,[EBP-54]
015F:0043E91A CALL 004AA044
015F:0043E91F CMP EAX,BYTE -01
015F:0043E922 JZ 0043E928
015F:0043E924 XOR EBX,EBX
015F:0043E926 JMP SHORT 0043E92D
015F:0043E928 MOV EBX,01
015F:0043E92D MOV DWORD [EBP-04],05
015F:0043E934 LEA ECX,[EBP-24]
015F:0043E937 CALL 004A9BAC
015F:0043E93C MOV DWORD [EBP-04],04
015F:0043E943 LEA ECX,[EBP-30]
015F:0043E946 CALL 004A9BAC
015F:0043E94B ADD ESP,BYTE +08
015F:0043E94E TEST EBX,EBX
015F:0043E950 JZ 0043E995
015F:0043E952 MOV DWORD [EBP-04],07
015F:0043E959 LEA ECX,[EBP-3C]
015F:0043E95C CALL 004A9BAC
015F:0043E961 MOV DWORD [EBP-04],08
015F:0043E968 LEA ECX,[EBP-48]
015F:0043E96B CALL 004A9BAC
015F:0043E970 MOV DWORD [EBP-04],FFFFFFFF
015F:0043E977 LEA ECX,[EBP-54]
015F:0043E97A CALL 004A9BAC
015F:0043E97F MOV EAX,01
<--將EAX賦值為1
015F:0043E984 MOV ECX,[EBP-0C]
015F:0043E987 MOV [FS:00],ECX
015F:0043E98E POP EDI
015F:0043E98F POP ESI
015F:0043E990 POP EBX
015F:0043E991 MOV ESP,EBP
015F:0043E993 POP EBP
015F:0043E994 RET
整理一下:
註冊碼:11111-1PAR3-23C89