解除TRW2000 1.06的時間限制
工具:
Procdump1.6.2
Hiew6.1
W32dasm8.93
首先用W32dasm載入TRW2000.EXE,但將告訴你“W32dasm執行了非法程式”,它崩潰了。
在Procdump中選擇 PEeditor\指定檔案 TRW2000.EXE\SECTIONS, 你會發現 .data 的 characteristics值為C0000040,將之改為60000020,儲存後再用W32dasm載入,OK!
反彙編後選 refs/string data references,找到"The vention is too old, please",雙擊後見到如下:
* Possible StringData Ref from Data Obj ->"This version is too old , please
"
->"visit http://trw2000.yeah.net
"
->"to get update."
|
:004018CD 682CF14100 push 0041F12C
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004016CA(U)
|
:004018D2 53
push ebx
向上找見
* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:0040164D(C), :00401675(C)
~~~~~~~~ ~~~~~~~~
|
:004018C6 6A10
push 00000010
* Possible StringData Ref from Data Obj ->"ERROR"
|
:004018C8 6828F24100 push 0041F228
就到:0040164D(C)及:00401675(C)
:00401643 056C070000 add eax,
0000076C
:00401648 3DD0070000 cmp eax,
000007D0 <----1
:0040164D 0F8F73020000 jg 004018C6
***2
:00401653 53
push ebx
:00401654 8D4DE8
lea ecx, dword ptr [ebp-18]
:00401657 E8AFDC0000 call 0040F30B
:0040165C 8B4010
mov eax, dword ptr [eax+10]
:0040165F 40
inc eax
:00401660 83F802
cmp eax, 00000002 <----3
:00401663 7E16
jle 0040167B ***4
猜到了嗎?
1 :00401648 3DD0070000 cmp eax,
000007D0 比較年份--2000年(000007D0)
2 :0040164D 0F8F73020000 jg 004018C6
若大於2000年則過期
3 :00401660 83F802
cmp eax, 00000002 比較月份--2月(00000002)
4 :00401663 7E16
jle 0040167B 若不大於2月就跳過前面的過期提示
知道如何作了?
1 改 3DD0070000
為 3D34080000 可以用到2100年(那時可就幹不動這活嘍!)
2 改 7E16
為 EB16 直接跳到開始
完成了嗎?執行TRW2000,它告訴你執行了非法程式。WHY?別忘了我們前面用過Procdump,只要用它將TRW2000.EXE\SECTIONS\
.data 的 characteristics值由60000020改回C0000040 ,儲存後執行TRW2000,OK!
附: 1 TRW2000確實是一個好程式,不象TRW0.75版本動不動就當機。目前它的升級非常快。勸各位還是儘量用最新的版本吧,不要象我沒事找使幹。寫這篇文章的目的是告訴大家:如何改動程式來使W32dasm工作。
2 TRW2000版的註冊費要六、七十元,我不願花這麼多錢來註冊。誰有註冊版本,能否E-MAIL我,在此先行謝過。
孫悟空之七十二變