用花指令加密的ASM源代码
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Coding program
"花指令"加密法
概述:
用‘花指令’来进行静态加密是很有效的,这会使解密者无法一眼看到全部指令,杜绝了先把程序打印下来再慢慢分析的做法。我们知道,一条指令的长度是不等长的,假使有一条指令为
3
字节长,然后你从它的第二个字节开始反汇编,你照样会看到一条面目全非的指令,‘花指令’就是在指令流中插入很多‘垃圾’,使静态反汇编无法进行,如何实现你把以下程序编译出来用
Debug 的 U 指令看一下,跟踪一下就能理解了。
汇编编程示例:
XX1 MACRO
local _next1
jmp short
_next1
db 0e8h
_next1:
ENDM
;--------------------------------------
XX2 MACRO
local _next2
jmp short
_next2
db 0e9h
_next2:
ENDM
;--------------------------------------
XX3 MACRO
local _next3
jmp short
_next3
db 09ah
db 0e8h
_next3:
ENDM
;--------------------------------------
XX4 MACRO
local _next4
jmp short
_next4
db 09ah
db 0e8h
_next4:
ENDM
;--------------------------------------
.286
CODE SEGMENT
ASSUME CS:CODE,DS:CODE
ORG 100H
start:
db 20 dup (90h)
xx3
mov ax,0201h
xx3
mov bx,0200h
xx3
mov cx,0001h
xx3
mov dx,0080h
xx2
int 13h
xx2
int 20h
CODE ENDS
END START