IDA-VC6生成汇编与编译汇编
发布日期:2021-06-28 22:04:59
浏览次数:2
分类:技术文章
本文共 1339 字,大约阅读时间需要 4 分钟。
1、生成汇编
1.1、建立工程
建立最简单的控制台程序
1.2、设置生成汇编参数
Project -> Settings -> C/C++ -> Project Options中增加/FAs
1.3、执行编译
在debug目录下生成汇编文件
TITLE D:\AsmDem\AsmDem.cpp .386Pinclude listing.incif @Version gt 510.model FLATelse_TEXT SEGMENT PARA USE32 PUBLIC 'CODE'_TEXT ENDS_DATA SEGMENT DWORD USE32 PUBLIC 'DATA'_DATA ENDSCONST SEGMENT DWORD USE32 PUBLIC 'CONST'CONST ENDS_BSS SEGMENT DWORD USE32 PUBLIC 'BSS'_BSS ENDS$$SYMBOLS SEGMENT BYTE USE32 'DEBSYM'$$SYMBOLS ENDS$$TYPES SEGMENT BYTE USE32 'DEBTYP'$$TYPES ENDS_TLS SEGMENT DWORD USE32 PUBLIC 'TLS'_TLS ENDS; COMDAT _main_TEXT SEGMENT PARA USE32 PUBLIC 'CODE'_TEXT ENDSFLAT GROUP _DATA, CONST, _BSS ASSUME CS: FLAT, DS: FLAT, SS: FLATendifPUBLIC _main; COMDAT _main_TEXT SEGMENT_main PROC NEAR ; COMDAT; 8 : { push ebp mov ebp, esp sub esp, 64 ; 00000040H push ebx push esi push edi lea edi, DWORD PTR [ebp-64] mov ecx, 16 ; 00000010H mov eax, -858993460 ; ccccccccH rep stosd; 9 : return 0; xor eax, eax; 10 : } pop edi pop esi pop ebx mov esp, ebp pop ebp ret 0_main ENDP_TEXT ENDSEND
2、编译汇编文件
2.1、新建空的win32工程
2.2、将1.3生成的汇编文件加入工程
2.3、配置编译参数
将如我们要编译hello.asm文件,则将hello.asm文件增加到工程中,然后依次进入Project--->Setting---》Custom Build
点击左边的工程目录树,找到我们要编译的文件hello.asm并单击。然后再右边的Commands:中输入ml/c/coff hello.asm
Outputs:中输入hello.obj。按确认退出即可。
2.4、汇编工具配置
将masm32\bin中的ML.EXE,ML.ERR文件拷贝到VC98\bin文件夹中。
转载地址:https://blog.csdn.net/yfh1985sdq/article/details/113052407 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
很好
[***.229.124.182]2024年04月09日 13时18分15秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
SQL-Inject漏洞手动测试---基于函数报错的信息获取---floor()
2021-07-02
SQL注入---Http Header注入
2021-07-02
SQL注入---Cookie注入
2021-07-02
SQL注入---盲注
2021-07-02
吃透Java并发:AQS中的条件队列流程与源码剖析
2021-07-02
Spring5源码精讲:IOC源码剖析目录
2021-07-02
Spring5源码精讲(九):AOP源码篇#1:切面、切点、通知及基本概念
2021-07-02
聊聊SPI机制以及为什么说SPI破坏了双亲委派模型
2021-07-02
MySQL事务隔离级别以及三种异常总结
2021-07-02
Spring5源码精讲(十一):AOP源码篇#3:目标方法调用与切面执行逻辑
2021-07-02
Mybatis一级缓存与二级缓存原理及失效场景
2021-07-02
SpringMVC三个HandlerMapping实现类解读
2021-07-02
Java使用Selenium操作chrome进行debug
2021-07-02
No module named ‘torch‘ 解决方案(某git项目跑不起来)
2021-07-02
win10与linux以太坊客户端Geth私链搭建教程
2021-07-02
layui解决table表格某项内容过长导致挤开变形问题
2021-07-02
关于支付业务流程中幂等性的一些思考
2021-07-02
高级表单&高级表格&BFC
2021-07-02
html5基础(新增标签)
2021-07-02