1.得到**碼
A:
用smartcheck走一遍,就能得到你所需要的。
B:
因為知道輸入的**碼儲存在軟體安裝目錄下的boob.ini中:
[Reg]
Number=gWiT449x%
Test=0
exdec開啟主程式無限遊戲存檔II.exe,以關鍵詞“number”搜尋,共3處,其中一處是軟體啟動時應用的,如下
4618C5: 1b LitStr: Number
4618C8: 43 FStStrCopy local_0094
4618CB: 04 FLdRfVar local_0094
4618CE: 1b LitStr: Reg
4618D1: 43 FStStrCopy local_0090
......
461975: Lead0/33 EqVarBool
<--比較,msvbvm50!__vbastrcomp
461977: 36 FFreeVar
461984: 1c BranchF: 4619F9
<--jump if false
......
4619F9: 15 ExitProcI2 <--離開
所以用trw設斷
bpm 461975
中斷後F8走,直到你看到**碼。
2.“註冊版”180次使用限制
這樣註冊後依舊有180次使用限制。軟體使用次數記錄在軟體安裝目錄下的list.com中:
[sos]
sos=1
A:
研究後我認為在這個公共版本中必定存在180次限制。
看:軟體執行後首先執行程式碼如下:
Proc: 466c34
4666F4: 00 LargeBos
4666F6: 00 LargeBos
......
4668C3: f5 LitI4:
0xb4 180 (....) <--180次
4668C8: 71 FStR4
local_0110
4668CB: 00 LargeBos
4668CD: f5 LitI4:
0x0 0 (....) <--0次
4668D2: 94 FMemLdR4
4668D7: 1b LitStr: List.com
4668DA: 2a ConcatStr
4668DB: 46 CVarStr local_00B8
4668DE: 0b ImpAdCallI2 _rtcDir
4668E3: 23 FStStrNoPop local_008C
4668E6: 1b LitStr:
4668E9: Lead0/30 EqStr
<--比較
4668EB: 2f FFree1Str local_008C
4668EE: 35 FFree1Var local_00B8
4668F1: 1c 52 02 00 BranchF: 466946
<--jump then expired
4668F4: 00 LargeBos
4668F4: 00 LargeBos
4668F6: 04 FLdRfVar local_0120
4668F9: 94 FMemLdR4
4668FE: 1b LitStr: List.com
466901: 2a ConcatStr
466902: Lead2/59 PopTmpLdAdStr local_011C
466906: 1b LitStr: 1
<--
466909: 43 FStStrCopy local_0118
|
46690C: 04 FLdRfVar local_0118
|
46690F: 1b LitStr: sos
|令sos==1
466912: 43 FStStrCopy local_0114
|
466915: 04 FLdRfVar local_0114
|
466918: 1b LitStr: sos
<--
46691B: 43 FStStrCopy local_008C
46691E: 04 FLdRfVar local_008C
466921: 07 FMemLdRf
466926: 24 NewIfNullPr 407ea8
466929: 0d VCallHresult 7b3fbd80
46692E: 3e FLdZeroAd local_0120
466931: 46 CVarStr local_00B8
466934: Lead1/f6 FStVar
466938: 32 FFreeStr
466943: 1e Branch: 466c0f
......
......
466C0F: 00 LargeBos
......
466C32: 14 ExitProc
注意到
4668F1: 1c 52 02 00 BranchF: 466946 是關鍵跳轉,如果這裡永遠繼續執行
4668F4: 00 LargeBos
以後的程式碼,就會使得使用次數永遠是1次
所以更改 4668F1: 1c 52 02 00 BranchF: 466946
為 4668F1: 1c 00 02 00 BranchF: 4668F4
用ultraedit開啟主程式,定位到00065CF1h處,修改 1C 52 02 00
為 1C 00
02 00
B:
將list.com設定為“只讀”屬性,程式就不能記錄使用次數了。