您好我有拆解一些程序(Linux)的我寫的更好的理解它是如何工作的,我注意到,主要功能總是開頭:試圖瞭解主拆卸第一指令
lea ecx,[esp+0x4] ; I assume this is for getting the adress of the first argument of the main...why ?
and esp,0xfffffff0 ; ??? is the compiler trying to align the stack pointer on 16 bytes ???
push DWORD PTR [ecx-0x4] ; I understand the assembler is pushing the return adress....why ?
push ebp
mov ebp,esp
push ecx ;why is ecx pushed too ??
所以我的問題是:爲什麼所有這些工作都完成了? 我才明白使用:
push ebp
mov ebp,esp
休息似乎對我沒用......
你正在使用什麼編譯器,你能提供完整的反彙編主子程序嗎? – Inshallah 2009-07-18 15:39:20