⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 exebin.mac

📁 Cracker终结者——提供最优秀的软件保护技术
💻 MAC
字号:
; -*- nasm -*-
; NASM macro file to allow the `bin' output format to generate
; simple .EXE files by constructing the EXE header by hand.
; Adapted from a contribution by Yann Guidon <whygee_corp@hol.fr>
; 1999.12.06 The Owl fixed/adapted for stubs
; 1999.12.28 The Owl fixed alignment problem

%define EXE_stack_size EXE_realstacksize

%macro EXE_begin 0
	org 0xC0
	section .text

header_start:
	db 4Dh,5Ah			; EXE file signature
	dw EXE_allocsize % 512
	dw (EXE_allocsize + 511) / 512
	dw 0				; relocation information: none
	dw (header_end-header_start)/16 ; header size in paragraphs
	dw (EXE_absssize + EXE_realstacksize) / 16 ; min extra mem
	dw (EXE_absssize + EXE_realstacksize) / 16 ; max extra mem
	dw -10h				; Initial SS (before fixup)
	dw EXE_endbss + EXE_realstacksize ; Initial SP (1K DPMI+1K STACK)
	dw 0				; (no) Checksum
	dw 100h				; Initial IP - start just after the header
	dw -10h				; Initial CS (before fixup)
	dw header_end-header_start	; file offset to relocation table: none
	dw 0				; (no overlay)
	align 64, db 0
header_end:

EXE_startcode:

	section .data
EXE_startdata:

	section .bss
EXE_startbss:
%endmacro

%macro EXE_stack 1
EXE_realstacksize equ %1
%define EXE_stack_size EXE_bogusstacksize ; defeat EQU in EXE_end
%endmacro

%macro EXE_end 0
	section .text
	align 16, db 0
EXE_endcode:

	section .data
	align 16, db 0
EXE_enddata:

	section .bss
EXE_endbss:

EXE_acodesize equ (EXE_endcode-EXE_startcode+3) & (~3)
EXE_datasize equ EXE_enddata-EXE_startdata
EXE_absssize equ (EXE_endbss-EXE_startbss+3) & (~3)
EXE_allocsize equ header_end - header_start + EXE_acodesize + EXE_datasize

EXE_stack_size equ 0x800	; default if nothing else was used
%endmacro

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -