Techniques for Self-Modifying Code
As an undergraduate I was interested in the more esoteric applications
of low-level assembly programming, such as reverse engineering object
code, Win32 assembly programming, etc. On this page I have collected some
experiments I did in self-modifying assembly code. Although to be
honest, I don't think any of these programs are actually
self-modifying, instead they nondestructively inject a useful piece of
code into another executable. I guess you could call it a first
necessary step toward writing real self-modifying code.
DOS program to modify COM files. comguard.asm
Explanation of how comguard works
DOS program which modifies both EXE and COM files. dosguard.asm dosguard.com
Explanation of how dosguard works
Version of Dosguard with self-encryption. encguard.asm encguard.com
A tutorial on DOS file
modification based on what I learned from writing Dosguard. This
was published in the ezine The Assembly Programming Journal under my
oh-so-cool psuedonym at the time, Digital Alchemist.
|