《C++反汇编与逆向分析技术揭秘》之十——构造函数和析构函数
对象生成时会自动调用构造函数。只要找到了定义对象的地方,就找到了构造函数调用的时机。不同作用域的对象的生命周期不同,如局部对象、全局对象、静态对象等的生命周期各不相同,只要知道了对象的声明周期,便可以推断出构造函数的调用时机。
- 局部对象
反汇编:
获取对象首地址并调用构造函数:
对象的地址为:
进入构造函数,先是push一堆寄存器:
还原ecx寄存器,并初始化:
构造函数属于成员函数,在调用时要用到this指针。返回this指针是构造函数的特征之一(这是识别局部变量构造函数的必要条件)。
相关推荐
FCLAMP 2020-05-19
dageda 2020-04-21
Dablelv 2019-11-30
VitaLemon 2020-08-23
嵌入式移动开发 2020-08-17
Web前端成长之路 2020-07-07
wbczyh 2020-07-05
iconhot 2020-06-26
tangjikede 2020-06-21
Wmeng0 2020-06-14
82244951 2020-05-31
Cricket 2020-05-31
czsay 2020-05-25
火焰雪人 2020-05-09
yundashicom 2020-05-09
junzi 2020-04-22
xuguiyi00 2020-04-11
zhaowj00 2020-04-08