我的第一篇破文,獻給看學學院! 高手免進! (2千字)

看雪資料發表於2002-06-29

軟體名稱:某國產軟體 V.32

簡    介:一個很不錯的象棋軟體

破解目的:解掉它的時間限制(未註冊只能用30天)實現上只是一個Nag視窗,主要是解除其只能下50步的功能限制

所需工具:Ollydbg、win32api.chm

說    明:我乃一隻菜鳥,本文只作技術交流,
文中若有不當之處,還請“大蝦米”們多多指教,謝謝!
open “檔案.exe”,按Ctrl+F8執行。進入提示畫面。

0042DEF1  |. E8 11E10000    CALL 0043C007       
在Ollydbg中看到游標停在這行上,按下F2設定斷點 

0042DEF1  |. E8 11E10000    CALL 0043C007       
重新用Ollydbg的Debug下的Restore 裝入程式,再按Ctrl+F8執行,游標再次停在了這行上,按下F2取消斷點,再按6次F7後,再按Ctrl+F8

004463FF  |. FF50 50        CALL [DWORD DS:EAX+50]
這次停在了這裡,按下F2設定斷點,重新用Ollydbg的Debug下的Restore 裝入程式,再按Ctrl+F8執行,

004463FF  |. FF50 50        CALL [DWORD DS:EAX+50]
一樣停要這裡,按F7跟進,再按Ctrl+F8 繼續

00418AA4    E8 67610200    CALL 0043EC10                <-進入NAG視窗
00418AA9    83F8 01        CMP EAX,1                    <-比較選擇  繼續與退出
00418AAC    74 2D          JE  00418ADB                  <-繼續就跳00418ADB

這次停在這裡,仔細研究發現這裡就是NAG視窗的Call,

改:
在 00418AA4    E8 67610200    CALL 0043EC10 行處直接按空格輸入NOP,用Shift加游標選擇紅色行,
點滑鼠右鍵Copy to executable file 在新視窗的陰影行點右鍵 save files 儲存
在 00418AAC    74 2D          JE  00418ADB  行處直接按空格輸入JMP 00418ADB ,用Shift加游標選擇紅色行,
點滑鼠右鍵Copy to executable file 在新視窗的陰影行點右鍵 save files 儲存

時間限制已經解除,但試用版只能下50步棋。想了幾天都不知道從什麼地方下手解除,原來檢視win32api.chm函式手冊發現
這個捕獲滑鼠的SetCapture函式,再次用Ollydbg執行,先下幾步,
在Ollydbg的CPU視窗中Search for name(label)
在USER32.SetCapture行點右鍵 set breakpoint on every reference 然後移動棋字,就可以跟到這裡,要多跟幾次。

0041CD3A  |. 8B5424 10      MOV EDX,[DWORD SS:ESP+10]
0041CD3E  |. 8BCE          MOV ECX,ESI
0041CD40  |. 52            PUSH EDX
0041CD41  |. 55            PUSH EBP
0041CD42  |. C746 40 010000>MOV [DWORD DS:ESI+40],1
0041CD49  |. E8 12D0FFFF    CALL 00419D60
0041CD4E  |. 50            PUSH EAX
0041CD4F  |. 8BCE          MOV ECX,ESI
0041CD51  |. E8 5AFEFFFF    CALL 0041CBB0
0041CD56  |. 8B46 1C        MOV EAX,[DWORD DS:ESI+1C]
0041CD59  |. 50            PUSH EAX
0041CD5A  |. E9 BC000000    JMP 0041CE1B

0041CD5F  |> 83B8 8C110000 >CMP [DWORD DS:EAX+118C],64        <- 來回50步=100  100=64H
0041CD66  |. 0F8D 27010000  JGE 0041CE93                      <- 等於 64 就跳

0041CD6C  |. 8B4E 74        MOV ECX,[DWORD DS:ESI+74]
0041CD6F  |. 8BC3          MOV EAX,EBX
0041CD71  |. 2BC1          SUB EAX,ECX
0041CD73  |. 99            CDQ


改:
在 0041CD66  |. 0F8D 27010000  JGE 0041CE93  行處直接按空格輸入NOP,用Shift加游標選擇紅色行,
點滑鼠右鍵Copy to executable file 在新視窗的陰影行點右鍵 save files 儲存

好了,搞定收工!本次破解到此結束,因為是第一次寫東西,有什麼不對的地方請大家指出!謝謝了!
OICQ:2806369

相關文章