吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1483|回复: 13
收起左侧

[已解决] 请教关于C++内联汇编崩溃

  [复制链接]
h5587686 发表于 2021-3-16 09:07
本帖最后由 h5587686 于 2021-3-16 11:36 编辑

VS最近换了个2019
image.png
非常简单的一个内联汇编 还是无参的 代码看了下好像也感觉没有问题
用windbg调试发现 注入代码平白多了个不存在的CALL
image.png 走进这个CALL就异常了

我改成裸函数后
image.png
image.png
就正常了   

为什么系统编译会给我生成个不存在的CALL
听别人说有可能是编译的时候安全检查给代码生成的   可我也把安全检查关了阿
image.png
所以想请教下大大 这到底是编译器的什么问题
还是我个人的问题 被这东西恶心到了

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

156608225 发表于 2021-3-16 09:14
那是编译器堆栈平衡处理,既然自己处理了堆栈就用裸函数呗
 楼主| h5587686 发表于 2021-3-16 09:28
头像被屏蔽
yulinsoft 发表于 2021-3-16 09:36
bester 发表于 2021-3-16 09:43
我对C++的项目设置不是很熟,我提几个点你检查一下
1.把debug改release
2.C/C++ 全程序优化关闭,优化 禁用,启用内部函数 关  语言 符合模式 关
3.链接器  DEP 否
bester 发表于 2021-3-16 09:55
那个call应该叫__RTC_CheckEsp
至于你自己代码上面那段 是在初始化堆栈
 楼主| h5587686 发表于 2021-3-16 10:15
bester 发表于 2021-3-16 09:43
我对C++的项目设置不是很熟,我提几个点你检查一下
1.把debug改release
2.C/C++ 全程序优化关闭,优化 禁 ...

可以 谢谢大大
XuanCi 发表于 2021-3-16 10:15
mov edi,ds:[0x755e0c] 不能这样写哦 要写成 mov edi,0x755e0c mov edi,[edi] 把一句分成两句 就可以了
 楼主| h5587686 发表于 2021-3-16 10:16
bester 发表于 2021-3-16 09:55
那个call应该叫__RTC_CheckEsp
至于你自己代码上面那段 是在初始化堆栈

字面意思是 这个CALL也是检查堆栈的平衡?
 楼主| h5587686 发表于 2021-3-16 10:22
XuanCi 发表于 2021-3-16 10:15
mov edi,ds:[0x755e0c] 不能这样写哦 要写成 mov edi,0x755e0c mov edi,[edi] 把一句分成两句 就可以了

可以的  你看看上面的windbg反汇编
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-26 05:46

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表