如何讓 Mac 版微信客戶(hù)端防撤回

其實(shí)這件事情技術(shù)含量不大,而且網(wǎng)上之前就有過(guò)其他教程,稍微看得懂一點(diǎn)匯編的都可以改。但是先前的文章對(duì)于一些細(xì)節(jié)都沒(méi)有講得很清楚,因此我這篇其實(shí)是補(bǔ)完。

由于文內(nèi)有較多鏈接,微信內(nèi)看的話(huà)請(qǐng)點(diǎn)擊右上角 在瀏覽器打開(kāi)。

  • 工具準(zhǔn)備

    不得不說(shuō) Hopper Disassembler 是個(gè)好東西,就是下載起來(lái)麻煩了些,昨晚搞了半天,在貓貓的幫助下搞到了這工具,還是把它放在自己的服務(wù)器上比較好 >_<

    點(diǎn)擊下載 Hipper Disassembler

  • 反編譯程序

    整個(gè)反編譯的過(guò)程很簡(jiǎn)單,找到微信的二進(jìn)制程序,拖進(jìn) Hopper Disassembler 就可以了,一般情況下,微信的程序路徑在 /Applications/WeChat.app/Contents/MacOS/WeChat

    反編譯的過(guò)程是比較慢的,必須等待右下角的 Working 字樣消失才可以進(jìn)行操作,否則程序可能會(huì)卡住或是閃退。當(dāng)看到下方日志欄出現(xiàn) Background analysis ended 字樣時(shí),表示反編譯已完成。

反編譯
  • 查找關(guān)鍵函數(shù)

    關(guān)鍵函數(shù)就一個(gè),參考前人的經(jīng)驗(yàn),直接找 onRevokeMsg

查找 onRevokeMsg
  • 修改

    將光標(biāo)放在第一行 push rbp 后面的 rbp 上,按Option + A ,輸入 ret 并點(diǎn)擊 Assembler and Go Next,此時(shí)窗口會(huì)跳到下一行,按 ESC 退出即可。

修改
  • 重建可執(zhí)行文件

    Shift + Command + E 鍵來(lái)重建可執(zhí)行文件,在此之前,程序會(huì)提示你要移除簽名,選擇 Yes 就可以,默認(rèn)會(huì)把重建的程序保存在 Documents 目錄內(nèi)。

  • 替換文件

    將生成的可執(zhí)行文件替換到微信里就可以了,當(dāng)然你需要先關(guān)閉微信,在反編譯和修改的過(guò)程中,你還是可以正常使用微信的,并不需要關(guān)閉了才能改。

    $ cd /Applications/WeChat.app/Contents/MacOS/
    $ sudo mv WeChat WeChat.bak
    $ sudo cp ~/Documents/WeChat ./
    $ sudo chmod 755 WeChat
    

    搞定后直接運(yùn)行微信客戶(hù)端即可看到效果。

  • 下載

    方便起見(jiàn),我直接提供我改好的可執(zhí)行文件,懶人可以直接做最后的替換步驟

    點(diǎn)擊下載

  • 其他要說(shuō)的

    Hopper Disassembler 包含了很強(qiáng)大的生成偽代碼的功能,可以幫助開(kāi)發(fā)者整理邏輯,但是這個(gè)功能似乎很多人說(shuō)找不到,其實(shí)很簡(jiǎn)單的,把光標(biāo)移動(dòng)函數(shù)名稱(chēng)上然后按 Option + Enter 即可。

生成偽代碼

這樣生成偽代碼,一次只能一個(gè)函數(shù),略顯不便,這里也安利一個(gè)看雪大牛的程序,他實(shí)現(xiàn)了批量導(dǎo)出偽代碼的功能,相當(dāng)?shù)馁潯?/p>

$ git clone https://github.com/poboke/Class-Decompile
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容