|
硬件HOOK 成功设置了VEH ,也在关键跳处设置了硬件断点,但是程序运行起来并没有进入VEH函数,测试了一天也没整明白,希望好心人解答,感激不尽!
补充一下,,上面的关键跳的地址是401104,不是4010FD,那个图我截错了 |
|
|
|
[求助]析构函数当中为什么赋值虚表??
maomaolk 实际上这个问题从逆向的角度来说您也不用太纠结, 因为它就是在析构的时候又为虚表赋了一次值而已,我们多了一次找到虚表的机会。 我个人认为可能编译器觉得假如虚表指针指向别处了呢?或者是我们自己写代码将虚表 ...这个地方我明白了,多谢,因为他在调用析构函数的时候,子类析构->父类析构,,,还得调用父类的,在父类的析构函数当中,还得把虚表赋值为父类的那个虚表,,,父类和子类的虚表是不一样的 |
|
[求助]析构函数当中为什么赋值虚表??
KevinsBobo 在析构中为虚表再次赋值是因为要考虑有继承关系的析构中调用虚函数,有继承的类析构顺序是:子类析构->父类析构......因此在执行析构时需要将虚表指针指向对应的子类或父类的虚表嗯嗯,我懂了,多谢 |
|
[求助]析构函数当中为什么赋值虚表??
maomaolk 编译器为了防止你在析构函数中调用虚表中的函数, 实际上在析构函数中调用虚表中的函数时,它不会生成调用虚函数的汇编代码, 而是会生成E8call. 你可以写代码验证下。没太听懂,,,那在析构函数当中赋值虚表有什么意义呢?。。。书上说的是这是因为C++语法规定,析构函数需要调用虚函数的无多态性。。。这句话我也没有理解,还望更详细的解答一下,,多谢 |
|
|
|
[求助]在这个程序当中的 64位X86汇编指令有2个不太懂
有没有什么博客专门介绍的这个?? |
|
[求助]在这个程序当中的 64位X86汇编指令有2个不太懂
hzqst windows上cs ds 段基址都是0嗯嗯,,懂,,请问您是从哪里知道cs ds的段基址都是0这个结论的呢??,,我把0带入那个汇编当中确实是可以反推出在32位或64位CPU当中cs ds的段地址是0,,, |
|
|
|
[求助]在150也switch那里有2行汇编指令没有懂,求大佬解决
但是这里是保护模式啊,,,不是实模式 .text:0000000140001000 _text segment para public 'CODE' use64 .text:0000000140001000 assume cs:_text .text:0000000140001000 ;org 140001000h .text:0000000140001000 assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing .text:0000000140001000 db 5 dup(0CCh) 在上面有一个assume cs:_text,,从这里可以看出cs的基址来不,,, |
|
[求助]在这个程序当中的 64位X86汇编指令有2个不太懂
我知道cs的基址是在描述符中存的,,,但是这里上面有一个assume cs:_text...就是想问一下cs的基址能不能直接看出来呢,,。。 |
|
[求助]在这个程序当中的 64位X86汇编指令有2个不太懂
text:0000000140001000 _text segment para public 'CODE' use64 .text:0000000140001000 assume cs:_text .text:0000000140001000 ;org 140001000h .text:0000000140001000 assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing .text:0000000140001000 db 5 dup(0CCh) 我想问一下 cs段的基址是不是140001000呢,,我看上面有一个assume cs:_text |
|
|
|
|
操作理由
RANk
{{ user_info.golds == '' ? 0 : user_info.golds }}
雪币
{{ experience }}
课程经验
{{ score }}
学习收益
{{study_duration_fmt}}
学习时长
基本信息
荣誉称号:
{{ honorary_title }}
能力排名:
No.{{ rank_num }}
等 级:
LV{{ rank_lv-100 }}
活跃值:
在线值:
浏览人数:{{ visits }}
最近活跃:{{ last_active_time }}
注册时间:{{ user_info.create_date_jsonfmt }}
勋章
兑换勋章
证书
证书查询 >
能力值