這篇也是繼續介紹如何使用逆向工程的方式找回source code.
首先,要準備以下幾個工具:
Hxd
pyinstxtractor
uncompile6
開工:
示範檔名: reloadAP.exe
python pyinstxtractor.py **reloadAP.exe**
解開後會看到類似下面的目錄
2. 檢查解開的資料夾內有無副檔名為pyc的檔案
3. 因為找不到副檔名為pyc的檔案, 那就直接做一個吧
4. 首先,將reloadAP檔案名稱改成reloadAP.pyc
5. 打開Hxd 工具, 匯入一個正常的pyc檔案及reloadAP.pyc
6. 將正常pyc檔案的檔頭複製藍色區塊並插入到reloadAP.pyc 檔案中, 下圖為正常pyc的檔頭 (以xml.pyc為例)
[正常版]
[修改前]
7. 在第一個位置(00H) 點選滑鼠右鍵, 選擇貼上插入
[修改後]
8. 使用uncompile6 將pyc 檔案解開到log.txt中
uncompyle6 **reloadAP.pyc or .pyo** file
(1) 這樣就把 source code 找回來啦
(2) 如果包含pyside or pyQT做的UI檔, 在解開的過程中也會一併把檔案解開
8. 完工,很簡單吧