手工打造超小PE文件

手工打造超小PE文件

作者:sunlin7

代码下载:https://download.csdn.net/download/lisunlin0/359340

最近试着做一些比较小的PE文件, 系统可识别的EXE做到了119 Bytes(压缩包中的MinApp_06.bat.exe文件, 期望再减小2 bytes左右), 弹出一个对话框的EXE做到了172 Bytes(压缩包中的MinMsg_10.bat.exe文件, 期望再减小8 – 10 bytes左右), 在笔者的机器(WinXp Sp2[版本5.1.2600]Celeron1.7G, 256M DDR)上测试通过. 通过这些低层的操作, 可以更深刻地理解Pe文件中各个成员的作用及相互关系.

对Pe结构感兴趣的朋友可以下载源文件研究.

具体制作步骤可以依照打包文件中的文件序号, 一步一步实现, 这里不想多费纸墨.

其中除了make.bat外,其它.bat文件都是源文件, 使用nasmw编译即生成可执行文件.

以下列出的是打包文件中的最终源代码:

================= MinApp_06.bat ==== 119 bytes ===============

; rem I only test on my pc, WinXp, sp2, Celeron1.7G, 256M DDR

; rem Constructed by Sunline           [email protected]

;

; nasmw -fbin -o %0.exe %0

; pause

; exit

bits32

.e_magic                    dw  'MZ'

.e_cblp                     dw  0090h

Nt_Header:

Signature                            dd 'PE'

.Machine                             dw 014Ch  

.NumberOfSections                    dw 0001h  

.TimeDateStamp                       dd 00000000h  

.PointerToSymbolTable                dd 00000000h 

.NumberOfSymbols                     dd 00000000h 

.SizeOfOptionalHeader                dw OptionalHeader_End - OptionalHeader ;*

.Characteristics                     dw 010Fh  

OptionalHeader:

.Magic                               dw 010Bh  

.MajorLinkerVersion                  db 05h  

.MinorLinkerVersion                  db 0Ch  

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值