[問題] 反組譯詢問

看板ASM (組合語言)作者 (小綠)時間15年前 (2010/07/21 17:26), 編輯推噓7(7012)
留言19則, 5人參與, 最新討論串1/1
最近需要反組譯一個win32的程式 所以從小程式開始練習反組譯 沒想到int main(){} 反組譯出來之後重要的程式碼約700行 不知從何看起 請問有人做過反組譯可以給一些入門的意見嗎? 或者針對我目前在看得這個小程式有一些建議 環境:win7 IDE:DEV-C++ 程式內容:int main(){} 使用ollydbg反組譯之後的組合語言程式碼: http://nopaste.csie.org/8a8c2 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.122.186.169

07/21 17:51, , 1F
c compiler 出來的東西會多加 sub routine, 你直接跳到 main
07/21 17:51, 1F

07/21 17:51, , 2F
去看
07/21 17:51, 2F

07/21 18:30, , 3F
是zha0耶 ^^ 前幾天演講很精彩
07/21 18:30, 3F

07/21 18:31, , 4F
不過你說的意思我還是不太懂
07/21 18:31, 4F

07/21 22:40, , 5F
在進入main之前 CRT會先做初始化
07/21 22:40, 5F

07/22 08:18, , 6F
以上兩位大大說的我瞭解意思 卻不曉得如何實做
07/22 08:18, 6F

07/22 08:22, , 7F
因為不熟悉整個程式組成的基本架構 ex:程式入口點
07/22 08:22, 7F

07/22 08:25, , 8F
所以請問有文件可以參考嗎?
07/22 08:25, 8F

07/22 08:26, , 9F
新手上路第一次做反組譯請多多指教 >"<
07/22 08:26, 9F

07/22 09:46, , 10F
400000是程式載入記憶體的位址
07/22 09:46, 10F

07/22 09:49, , 11F
程式入口點看.text section的位址+base(=400000)
07/22 09:49, 11F

07/22 09:50, , 12F
另外程式入口點不等於main的入口
07/22 09:50, 12F

07/22 10:00, , 13F
這個例子main的位址應該是401290
07/22 10:00, 13F

07/22 15:52, , 14F
其實匪區有很多類似搞破解,外掛,資安論壇(For MS-Win)
07/22 15:52, 14F

07/22 15:53, , 15F
也有些人寫了一些書,有嘗"開班授課"也是也可能。
07/22 15:53, 15F

07/22 15:53, , 16F
就是你的動機是什麼了?
07/22 15:53, 16F

07/22 18:48, , 17F
去查查PE(Portable Execution)的格式吧 裡面有紀錄exe檔的
07/22 18:48, 17F

07/22 18:48, , 18F
entry point
07/22 18:48, 18F

07/22 19:09, , 19F
感謝各位的回答 ^^
07/22 19:09, 19F
文章代碼(AID): #1CHhqwrD (ASM)
文章代碼(AID): #1CHhqwrD (ASM)