日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

WinRAR去广告

發布時間:2023/12/31 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WinRAR去广告 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

下載最新版本WinRAR,結果一打開就有廣告,說好的體驗30天呢。可能是之前裝過的WinRAR還殘留有注冊表信息吧,廣告如下:

打開x32dbg,附加到WinRAR進程,在DestoryWindow這個API下斷點,在調試器的命令行輸入bp DestoryWindow即可,點擊廣告窗口的關閉按鈕,在API中斷下,棧回溯返回地址就能找到廣告窗口的消息處理過程。在IDA中打開,找到對應廣告窗口的消息處理函數,交叉引用回溯,可以看到窗口類的注冊

可以看到這個窗口類名為RarReminder,Reminder是提示,提醒之類的意思,太真實了。

繼續看AdWndProc,可以發現一個詭異的URL

ad開頭肯定就是廣告的鏈接了,而緊接著的0xF4E9F0函數就是廣告的顯示函數了。IDA反編譯如下

HWND __thiscall sub_4BE9F0(LPVOID lpParam, int a2, HWND hWnd, int a4, int a5, char a6) {LPVOID v6; // ebxHWND v7; // eaxint v8; // ediint v9; // esiHINSTANCE v10; // ST28_4HWND v11; // eaxHWND result; // eaxbool v13; // zfWCHAR *v14; // esistruct tagRECT Rect; // [esp+Ch] [ebp-14h]v6 = lpParam;*((_DWORD *)lpParam + 2) = hWnd;*((_BYTE *)lpParam + 38) = a6;ShowWindow(hWnd, 0);sub_4BE560(a2);*((_DWORD *)v6 + 7) = a4;*((_DWORD *)v6 + 8) = a5;GetWindowRect(hWnd, &Rect);v7 = GetParent(hWnd);MapWindowPoints(0, v7, (LPPOINT)&Rect, 2u);if ( *((_DWORD *)v6 + 1) )DestroyWindow(*((HWND *)v6 + 1));v8 = Rect.left;v9 = Rect.right - Rect.left;v10 = *(HINSTANCE *)v6;v11 = GetParent(hWnd);result = CreateWindowExW(0,L"RarHtmlClassName",0,0x40000000u,v8,Rect.top,v9,Rect.bottom - Rect.top,v11,0,v10,v6);v13 = *((_DWORD *)v6 + 4) == 0;*((_DWORD *)v6 + 1) = result;if ( v13 ){if ( hWnd ){if ( !*((_DWORD *)v6 + 8) ){result = (HWND)*((_DWORD *)v6 + 7);if ( result ){result = (HWND)sub_4BE690(*((PCNZWCH *)v6 + 7));v14 = (WCHAR *)result;if ( result ){ShowWindow(hWnd, 5);SetWindowTextW(hWnd, v14);result = (HWND)j___free_base(v14);}}}}}else if ( result ){ShowWindow(result, 5);result = (HWND)UpdateWindow(*((HWND *)v6 + 1));}return result; }

若直接將這個函數在開頭就ret掉,那么廣告的內容就沒了,效果如下

說明這個窗口本質上是個子窗口,不過我們可以通過修改這個函數內容來使廣告內容變為我們想要的東西,這里懶得改了。

要去除廣告窗口,就要將這個父窗口也去掉,這其實很容易,我們可以在消息處理的開頭就修改控制流,直接跳轉到調用DestoryWindow的地址即可去除廣告。

patch后就算是去除廣告了。

總結

以上是生活随笔為你收集整理的WinRAR去广告的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。