w32dsm反編譯sygate.exe,尋找"trial version expired"共找到5處。跟蹤可知第二處為過期時彈出視窗的程式段。
* Referenced by a CALL at Addresses:
|:004270DB , :00428B02
|
:0041FD40 64A100000000 mov eax, dword
ptr fs:[00000000]
:0041FD46 6AFF
push FFFFFFFF
:0041FD48 68D1B54600 push 0046B5D1
:0041FD4D 50
push eax
:0041FD4E A13CC94800 mov eax,
dword ptr [0048C93C]
:0041FD53 64892500000000 mov dword ptr fs:[00000000],
esp
:0041FD5A 81ECDC000000 sub esp, 000000DC
:0041FD60 8B8063010000 mov eax, dword
ptr [eax+00000163]
:0041FD66 56
push esi
:0041FD67 83E803
sub eax, 00000003
:0041FD6A 8BF1
mov esi, ecx
:0041FD6C 0F84FB010000 je 0041FF6D
--------> **關鍵,跳則活,不跳就死翹翹。
:0041FD72 48
dec eax
:0041FD73 0F84D7010000 je 0041FF50
:0041FD79 A108DF4800 mov eax,
dword ptr [0048DF08]
:0041FD7E 85C0
test eax, eax
:0041FD80 746E
je 0041FDF0
:0041FD82 8B4E1C
mov ecx, dword ptr [esi+1C]
:0041FD85 6A40
push 00000040
* Possible Reference to String Resource ID=02006: "This trial version has expired.
Please visit www.sygate.com "
|
:0041FD87 68D6070000 push 000007D6
* Possible Reference to String Resource ID=02005: "Trial Version Expired"
|
:0041FD8C 68D5070000 push 000007D5
:0041FD91 51
push ecx
先改日期,使sygate過期。在trw中設斷點bpx 41FD40,點load執行,f5執行sygate,trw欄下,在41fd67處吧al至為3,
f5執行程式發現程式不在過期。
那麼,怎麼讓SyGate 4.0 build712自己告訴你註冊碼呢?只要按下面的步驟就可搞定:
1。讓sygate過期,執行時彈出過期視窗讓你註冊,不管它,直接cancel掉。
2。用上面的改法執行一遍,在help-register license...中看到了什麼?
以後在執行sygate也不會過期了,因為那時真的註冊碼呀。這個註冊碼可能是sygate的萬能註冊碼,因為我在2臺
不同配置的機器下以不同的使用者名稱都得到了相同的註冊碼,不過也可能是根據windows的cdkey生成的因為2個機器
的win98都用1張盤裝的,所以沒法驗證了。不過為什麼會這樣,我想大概是sygate的程式設計師偷懶造成的吧:)
附:
serial number:520D7FA0-9AD4E63
registration code:2E549118
首次執行需輸trial key:
trial key:H1(或2)XXXXXX(6位任意數或字母)
不止為什麼,sygate在我的機器上始終無法實現共享上網(未破前也一樣),在別人的機器上可以,lan沒問題,
望高手指教。
另,拜託高手幫忙搞定mmtools(multimedia tools一個delphi VCL控制元件)1.7版()
老爸還急著要用呢。多謝!