flashget0.96去除廣告條方法 (3千字)

看雪資料發表於2001-06-15

軟體名稱:網際快車FlashGet(JetCar) 國際版
整理日期:2001.6.14
最新版本:0.96
檔案大小:1401KB
軟體授權:免費軟體
使用平臺:Win9x/Me/NT/2000
URL    :http://sd.onlinedown.net/down/fgf096.zip

安裝後先執行一下,把語言設為english,發現help選單中有Remove Banner...項。
執行w32dasm,找字串remove banner,沒找到。
再找字串remove,找到這一段。
* Reference To: USER32.DeleteMenu, Ord:0087h      <==(2) 哈,用的是deletemenu,你想到了什麼?
                                  |
:0044C2BC 8B3D20064B00            mov edi, dword ptr [004B0620]
:0044C2C2 6A00                    push 00000000

* Possible Reference to String Resource ID=32846: "Register to remove the banner"   
                                                  <==(1) w32dasm會找到這裡
                                  |
:0044C2C4 684E800000              push 0000804E
:0044C2C9 50                      push eax
:0044C2CA FFD7                    call edi
:0044C2CC 85C0                    test eax, eax
:0044C2CE 740D                    je 0044C2DD
:0044C2D0 8B4E04                  mov ecx, dword ptr [esi+04]
:0044C2D3 6800040000              push 00000400
:0044C2D8 6A01                    push 00000001
:0044C2DA 51                      push ecx
:0044C2DB FFD7                    call edi        <==(3)這句話去掉選單中的remove banner...項

* Referenced by a (U)nconditional or (C)onditional Jump at Addresses:
|:0044C28F(C), :0044C2B7(C), :0044C2CE(C)          <==(4)程式中有3處比較,可能會跳過(3) call edi
                                                      用trw設斷點,會發現程式會由44c28f直接過來,
                                                      現在goto code location 44c28f
|
:0044C2DD 8B4C241C                mov ecx, dword ptr [esp+1C]
:0044C2E1 5F                      pop edi
:0044C2E2 5E                      pop esi
:0044C2E3 5D                      pop ebp
:0044C2E4 5B                      pop ebx
:0044C2E5 64890D00000000          mov dword ptr fs:[00000000], ecx
:0044C2EC 83C418                  add esp, 00000018
:0044C2EF C3                      ret
----------------------------------------------------------------------------------------------
:0044C288 E893A6FCFF              call 00416920
:0044C28D 85C0                    test eax, eax    <==(5)如果eax=0就跳到44c2dd。讓我們看416920
:0044C28F 744C                    je 0044C2DD

----------------------------------------------------------------------------------------------
* Referenced by a CALL at Addresses:
|:0044A5DF  , :0044A80D  , :0044C288  , :0044FC5C  , :0044FE4E 
|

:00416920 8B815C020000            mov eax, dword ptr [ecx+0000025C]  <==(7)[ecx+025C]=[4da334],
                                                                            下bpm 4da334,再看看,
                                                                            會有更簡單的改法,
                                                                            只需改2個位元組。

:00416926 C3                      ret              <==(6)有沒有搞錯,這個call如此簡單,倒有5次
                                                          引用,就是它,懶的再看了。
                                                          把8b815c020000改為b80100000090
                                                          廣告條沒有了。收工。



2000.6.15

相關文章