IDA-VC6生成汇编与编译汇编

8 篇文章 0 订阅
7 篇文章 1 订阅

1、生成汇编

1.1、建立工程

建立最简单的控制台程序

1.2、设置生成汇编参数

Project -> Settings -> C/C++ -> Project Options中增加/FAs

1.3、执行编译

在debug目录下生成汇编文件

	TITLE	D:\AsmDem\AsmDem.cpp
	.386P
include listing.inc
if @Version gt 510
.model FLAT
else
_TEXT	SEGMENT PARA USE32 PUBLIC 'CODE'
_TEXT	ENDS
_DATA	SEGMENT DWORD USE32 PUBLIC 'DATA'
_DATA	ENDS
CONST	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	ENDS
FLAT	GROUP _DATA, CONST, _BSS
	ASSUME	CS: FLAT, DS: FLAT, SS: FLAT
endif
PUBLIC	_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	ENDS
END

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文件夹中。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值