Applet Marquee Wizard v3.5
破解者:punisher(譯者注:punisher為原文作者)
保護機制:姓名/註冊碼
破解過程:執行程式,出現主視窗和一個要你註冊的nag screen。點選這個破框上的"Register"按鈕,彈出註冊視窗(還有一個preview視窗,關掉它)。
鍵入你的名字和隨便一個註冊碼。我用punisher和45454545。
按Ctrl-d啟用SOFTICE,下斷點BPX HMEMCPY,按F5返回註冊視窗。現在點選'REGISTER',程式被SOFTICE攔截。程式在到達保護機制前總共呼叫了三次HMEMCPY函式,我們必須略過前兩次,所以按F5兩次。我們現在是處在第三個呼叫HMEMCPY函式的CALL中,按F10直到這裡:
0117:9E8E shr ecx, 2
0117:9E92 repz movsd <- 將你的名字移到另一個位址
0117:9E96 pop ecx
0117:9E98 and ecx, 3
0117:9E9C repz movsb
0117:9E9F xor dx, dx
在 REPZ MOVSD時看一下EDI的內容:
D ES:EDI
將游標帶過REPZ MOVSB時你會看見你的名字被複製到你D過的位址中。注意一下你名字的起始地址,它的形式是253F:00000000(位址由於計算機的不同而各異)。我們將透過以下指令發現你名字的真實地址並在其上下斷點:
PAGE 253F:00000000 <-你的地址會不同
你會看到:
Linear Physical
Attributes Type
xxxxxxxx xxxxxxxx P D
A U SYSTEM
你想要的是Linear的地址,所以你可以根據名字的字元數在該範圍上下斷點。你選擇的段基址必須是30,如下:
BPR 30:xxxxxxxx 30:xxxxxxxx+8 rw
現在按F5讓程式繼續執行,SOFTICE會中斷在此:
:00408DC9 repz cmpsb <- 我們的名字和真名比較
:00408DCB jz 00408DF1
:00408DCD mov al, [esi-01]
:00408DD0 cmp al, 61
:00408DD3 jb 00408DDD
:00408DD5 cmp al, 7A
:00408DD8 ja 00408DDD
在:00408dc9 repz cmpsb處,D ESI會看到你的名字,D EDI會看到兩處ALPHA字元。第一處是和你的名字比較,第二處就是你的註冊碼了。還不快記下來!我看到的是p97z和23ws3,輸入後OK!