?? 第4集.htm
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><html><head> <title>破解入門第四集</title> <meta content="text/html; charset=gb2312" http-equiv="Content-Type"></head><body bgcolor="#cc9966"><a name="home"></a><font face="宋體" size="+4" color="Black"><p align="center">破解入門第四集</font></p><p><table align="right"><tr style="font-size=9pt"> <td><a href="new1.htm">【第一集】</a></td> <td><a href="new2.htm">【第二集】</a></td> <td><a href="new3.htm">【第三集】</a></td> <td><a href="new4.htm"><font color="Gray">【第四集】</font></a></td> <td><a href="new5.htm">【第五集】</a></td> <td><a href="new6.htm">【第六集】</a></td></tr></table><br><br><font face="宋體"><font size="+2" color="#800000">KANJIWEB V3.0注冊實例破解</font><br><div align="right">〖<a href="tool\kanjiweb.zip">下載KanJiWeb</a>〗</div><P>各位破解愛好者們,你們好.相信大家都盼這一集盼了很久吧?不錯,真刀實槍上戰場的時候到了,不要掉頭跑開哦.<p>這次拿來開刀的程式是我比較喜歡用的內碼識別及轉換工具,它也是我的破解處女作.這個小程序功能很不錯,不過不注冊的話,只能用一個月左右.它每次安裝都會產生一個隨機數字,然后根據這個數字來算出注冊碼,所以每次安裝的注冊碼都不會完全相同.<p>首先,請準備一本草稿紙及一支筆,然后就可以開始了.<p>將 KanJiWeb V3.0的主程式 MultiWord 程式打開,然后單擊"X"形菜單,選擇"Register..."菜單,出現一個對話框:<br>最下面寫著: REGISTERED NO: 521608708 ,當然我們看到的數字肯定不一樣,因為是隨機的嘛!程式會根據這9個數字來重新算出9個字符的注冊碼來.<br>好,廢話少說,單擊 Register 按鈕,在 Serial NO: 中填入: 79797979.<br>第一步: 填好以后,記住不要急著按OK按鈕,因為我們先要進到 ICE 里面把中斷設好,不然的話怎么攔它呀?按 CTRL-D組合鍵呼出 ICE 來. 在命令區內輸入: BPX MESSAGEBOX .<br>第二步: 現在按 F5鍵返回原程式,按下剛才未按下的 OK 按鈕.<br>第三步: 發生了什么事? 看到了吧,厲害的ICE馬上攔到了,看看你現在在什么地方:<br><table border="0"><th colspan="3"></th><tr><font color="#ffff00">User !messagebox</font></tr><tr><td>從此處開始</td><td>按</td><td>F10鍵單步跟蹤程式...</td></tr><tr><td>178F:0000</td><td width="22"> </td><td> POP EAX</td></tr><tr><td>178F:0002</td><td> </td><td> XOR EBX,EBX</td></tr><tr><td>178F:0005</td><td> </td><td> POP DX</td></tr><tr><td>178F:0006</td><td> </td><td> AND BX,BF7F</td></tr><tr><td>178F:000A</td><td> </td><td> PUSH EBX</td></tr><tr><td>178F:000C</td><td> </td><td> PUSH 00</td></tr><tr><td>178F:000E</td><td> </td><td> PUSH EAX</td></tr><tr><td>178F:0010</td><td></td><td> JMP 0013</td></tr><tr><td>178F:0013</td><td></td><td> PUSH BP</td></tr><tr><td>178F:0014</td><td></td><td> MOV BP,SP</td></tr><tr><td>178F:0016</td><td></td><td> PUSH 6B</td></tr><tr><td>178F:0019</td><td></td><td> MOV BX,[BP+14]</td></tr><tr><td>178F:001C</td><td></td><td> TEST BX,BX</td></tr><tr><td>178F:001E</td><td></td><td> JNZ 0025</td></tr><tr><td>178F:0020</td><td></td><td> XOR EAX,EAX</tr></tr><tr><td>178F:0023</td><td></td><td> JMP 0028</td></tr><tr><td>178F:0025</td><td></td><td> CALL 00A0</td></tr><tr><td>178F:0028</td><td></td><td> PUSH EAX</td></tr><tr><td>...(略)</td></tr><tr><td>178F:0043</td><td></td><td> CALL 0119</td></tr><tr><td>178F:0046</td><td></td><td> MOV AX,[BP+08]</td></tr><tr><td>178F:0049</td><td></td><td> MOV CX,[BP+0A]</td></tr><tr><td>178F:004C</td><td></td><td> TEST AX,0C08</td></tr><tr><td>178F:004F</td><td></td><td> JNZ 0057</td></tr><tr><td>178F:0051</td><td></td><td> TEST CX,FFFE</td></tr><tr><td>178F:0055</td><td></td><td> JZ 005D</td></tr><tr><td>178F:0057</td><td></td><td> MOV BX,F005</td></tr><tr><td>178F:005A</td><td></td><td> CALL 0105</td></tr><tr><td>178F:005D</td><td></td><td> PUSH CX</td></tr><tr><td>178F:005E</td><td></td><td> PUSH AX</td></tr><tr><td>178F:005F</td><td></td><td> PUSH WORD PTR[BP+06]</td></tr><tr><td>178F:0062</td><td></td><td> PUSH CS</td></tr><tr><td>178F:0063</td><td></td><td> CALL 1DE2</td></tr></table><br>當程式走到 178F:0063 CALL 1DE2 處時會出現注冊碼錯誤的信息框,我們重新注冊一遍,當再次走到此地時按F8鍵進入觀察: <br><table border="0"><th colspan="3"></th><tr><td>178F:1DE2 </td><td> </td><td>Enter 0024,00</td></tr><tr><td>178F:1DE6 </td><td> </td><td>PUSH ESI</td></tr><tr><td>178F:1DE8 </td><td> </td><td>PUSH DS</td></tr><tr><td>178F:1DE9 </td><td> </td><td>MOV AX,1087</td></tr><tr><td>178F:1DEC </td><td> </td><td>MOV DS,AX</td></tr><tr><td>178F:1DEE</td><td> </td><td>MOV ESI,[BP+14]</td></tr></table><p>當走到此處時,下命令: D BP+14 ,在記憶體區會看見一組數字: D0980200(4 BYTES),你的數字和我寫的可能不一樣,再次下命令如下格式: D 000298D0 ,在記憶體區右邊欄里會看見一組9個字符,對了,這就是注冊碼了.趕快用筆抄下來,那么這個軟件就破解完成了,是不是很簡單啊?!<p>另外說明一下: 為什么 D0980200 在用 D 命令查看時會是 000298D0 呢?因為在匯編中寄存器的位置是高位在后,低位在前,所以變成 0200為第一個高字組,而排列時又為: 0002了,D098的排列一樣,排到 0200 的后面,變成是: 98D0.嗯,是有點復雜,不過習慣了就好了.<p>也許又有人問: 為什么我會知道剛才那處是注冊碼露頭的地方呢? 老實說,要靠判斷及經驗的積累,光靠一處處的死看是看不出來的,有個重要的概念給你們先提出來: 破解的時候,眼睛緊盯著很有問題的 CMP (比較命令)和 JNZ(跳轉命令)之類的語句,另外,像EAX,EDX,ESI,EDI,在算注冊碼的CALL處都會發生變化,注意它們的變化對你的破解會很有幫助.當進入一個CALL時,你要注意EBP的變化,它是隱藏真正注冊碼和你輸入的注冊碼的最后基地.<p><p><p><p><div align="center"> <a href="new3.htm"><img src="pre.gif" alt="上一篇" WIDTH="109" HEIGHT="32"></a> <a href="new5.htm"><img src="next.gif" alt="下一篇" WIDTH="108" HEIGHT="32"></a></div><P><font color=#6600ff>歡迎光臨"破解交流網" http://coolfly.126.com<BR>E-mail: CoolFly@yeah.net</font></body></html>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -