Awesome Executable Packing Awesome Tweet

A curated list of resources related to executable packing (including Portable Executable, Executable and Linkable Format and others) containing references to books, papers, blog posts, and other written resources but also packers and tools for detecting packers and unpacking executables.

Packing is the action of modifying an executable in a way that does not modify its purpose. It is generally one or a combination of the following operations: - bundling: makes a single executable with multiple files - compression: compresses the executable to reduce its original size - encoding: obfuscates the executable by encoding it - encryption: obfuscates the executable by encrypting it - mutation: alters the executable's code so that it uses a modifided instruction set and architecture (e.g. using oligomorphism) - protection: makes the reversing of the executable harder (i.e. using anti-debugging, anti-tampering or other tricks) - virtualization: embeds a virtual machine that allows to virtualize executable's instructions

Contents

:books: Literature

Documentation