能力值:
( LV2,RANK:10 )
|
-
-
2 楼
****
|
能力值:
( LV12,RANK:250 )
|
-
-
3 楼
这个push ecx是编译器优化后的局部变量分配,因为函数只用到一个DWORD大小的局部变量,编译器不使用sub esp,4来开辟局部变量的堆栈空间,而是使用push reg32来开辟,一般就是push ecx。
这个局部变量应该是一个临时的未初始化的对象,被作为this(ecx)传递给00401020函数。
所以不要被push ecx给迷惑了,以为是传递参数什么的。书上教的是死的,要结合环境判定作用。
再如lea eax,[eax+1234578]就是取地址吗?其实只是编译器用来做简单加法而已。
call $+5就是用来调用函数吗?其实只是用来压入下一个指令地址而已。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
这个程序的main函数里边只有一个CSum变量,为什么会有DWORD大小的局部变量?
|
|
|