能力值:
(RANK: )
|
-
-
2 楼
如果014C1C3B处是一个Call foo指令的话, 对应的代码就是
foo(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &bar)
其中 &bar = 0x14C1C23
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
push 014C1C23 014C1C23是这个CALL的地址.你不会没看到吧.
每个CALL前面都是这种格式......
|
能力值:
( LV8,RANK:130 )
|
-
-
4 楼
push esi esi是0,那应该是在堆栈获取为0的一定容量的堆栈空间,作为参数使用吧。。。
push 014c1c23 应该是压入目前过程的初地址,应该CALL里有用吧。。。
惭愧,基本概念不熟啊。。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
没人知道吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
1.光看这些代码没人知道它是什么语言写的
2.push esi 是将0压堆栈
push 014C1C23 自然是将这个地址压堆栈
至于到底要做什么,要看后面的代码
|
能力值:
( LV4,RANK:50 )
|
-
-
7 楼
藐是用C/C++写的吧
014C1C23 55 push ebp
014C1C24 8BEC mov ebp,esp
014C1C26 53 push ebx
014C1C27 56 push esi
014C1C28 57 push edi
//上面应该是VC编译器生成的函数入口
014C1C29 83EC 64 sub esp,64 //临时变量分配用的
014C1C2C 68 231C4C01 push 014C1C23 //压入一个指针地址
014C1C31 31F6 xor esi,esi //esi请0
014C1C33 56 push esi //压入0,也就是NULL
014C1C34 56 push esi //连续压0 ,因为push esi比push 0用的机器码要短
014C1C35 56 push esi //所以优化使用push esi
014C1C36 56 push esi
014C1C37 56 push esi
014C1C38 56 push esi
014C1C39 56 push esi
014C1C3A 56 push esi
//下面应该是call XXXXXX
//变C语言就是fun(0,0,....&p014C1C23)
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
014C1C2C 68 231C4C01 push 014C1C23 //你没发现吗.这个就是这个CALL的地址....
014C1C23 55 push ebp
每个CALL前面都是这样的......
|
能力值:
( LV9,RANK:180 )
|
-
-
9 楼
就这么一大段?
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
还真看不出是用什么语言写的
|
|
|