走进内存,走进汇编指令来看C/C++指针
摘要:摘要: 讲述两点:
1、反汇编下的p与*p
2、有关指针初始化的金科玉律
走进反汇编指令,走进内存,看看底层的C/C++指针是怎么一回事~
阅读全文
posted @
2010-04-11 01:35
石头儿
阅读(3344)
推荐(2) 编辑
内存对齐全攻略—刀枪入库 功德圆满
摘要:主要讨论四点:
一、不涉及位域的内存对齐
二、涉及位域的内存对齐
三、成员变量含有结构体的内存对齐情况
四、要求内存对齐的原因及优点
这次主要讨论三、成员变量含有结构体的内存对齐情况四、要求内存对齐的原因及优点,
关于内存对齐全攻略的问题,就算刀枪入库,功德圆满了,呵呵,各回各家,各找各妈~~
阅读全文
posted @
2010-04-08 18:45
石头儿
阅读(2976)
推荐(0) 编辑
内存对齐全攻略--涉及位域的内存对齐原则
摘要:这里接着上一节主要介绍第二点!
接下来主要讨论四点:
一、不涉及位域的内存对齐
二、涉及位域的内存对齐
三、成员变量含有结构体的内存对齐情况
四、要求内存对齐的原因及优点
阅读全文
posted @
2010-04-07 22:46
石头儿
阅读(4177)
推荐(3) 编辑
内存对齐全攻略--不涉及位域的内存对齐原则
摘要:主要讨论四点:
一、不涉及位域的内存对齐原则
二、涉及位域的内存对其原则
三、成员变量含有结构体的内存对齐情况
四、要求内存对齐的原因及优点
这里说第一点
阅读全文
posted @
2010-04-07 17:51
石头儿
阅读(3251)
推荐(1) 编辑
c++反汇编代码分析--偷调函数
摘要:注:不知道说“偷调函数”说法合不合适,在此也就这样一说了~
主要有点:
一、再说C++反汇编函数调用,重点是怎样通过堆栈实现由被调用函数转到调用者
二、在 1 的基础上,在WinDbg下通过修改EIP实现如下一个功能:
有两个函数foo()和hack(),在main函数中调用foo,但是在foo执行过程中,通过修改EIP来调用hack函数,最后再回到main中foo函数的下一条语句
阅读全文
posted @
2010-04-07 01:52
石头儿
阅读(3432)
推荐(3) 编辑
c++反汇编代码分析--循环结构
摘要:在此主要讨论或者验证三点:
1、循环结构的反汇编代码分析
2、函数中,局部变量的保存位置
3、方法的返回值保存位置验证
一个没有找到答案的疑问:
00401029 lea edi,[ebp-48h]
0040102C mov ecx,12h
00401031 mov eax,0CCCCCCCCh
;这段代码是在栈中开辟一个48字节大小的区域来存放局部变量,但是如果函数内
没有局部变量,则是lea edi,[ebp-40h]
一个局部变量,则是lea edi,[ebp-44h]
两个局部变量,则是lea edi,[ebp-48h]
也就是没有局部变量时开辟的40个字节,我用F11追踪过,单步调试时,这一部分区域并没有用到,这一区域的作用是什么?
阅读全文
posted @
2010-04-05 20:47
石头儿
阅读(1369)
推荐(0) 编辑