{"id":4131,"date":"2016-06-06T13:55:23","date_gmt":"2016-06-06T05:55:23","guid":{"rendered":"https:\/\/www.darknet.org.uk\/?p=4131"},"modified":"2016-06-06T13:55:38","modified_gmt":"2016-06-06T05:55:38","slug":"movfuscator-compile-program-mov-instructions","status":"publish","type":"post","link":"https:\/\/www.darknet.org.uk\/2016\/06\/movfuscator-compile-program-mov-instructions\/","title":{"rendered":"movfuscator – Compile Into ONLY mov Instructions"},"content":{"rendered":"
The M\/o\/Vfuscator (short ‘o’, sounds like “mobfuscator”) helps programs compile into only mov instructions, and nothing else – no cheating. Arithmetic, comparisons, jumps, function calls, and everything else a program needs are all performed through mov operations; there is no self-modifying code, no transport-triggered calculation, and no other form of non-mov cheating.<\/p>\n
<\/p>\n
The compiler currently targets the C programming language and x86 processor architecture, but is easily adaptable to other languages and architectures.<\/p>\n
--mov-id\r\n Add reference instructions for each basic block to assist debugging.\r\n\r\n--no-mov-id\r\n Do not add reference instructions. This is the default.\r\n\r\n--mov-flow\r\n Use mov instructions in implementing control flow. This is the default.\r\n\r\n--no-mov-flow\r\n Use jmp instructions in implementing control flow. This will substantially\r\n speed up execution in larger projects.\r\n\r\n--mov-extern\r\n Use mov instructions to implement external function calls. This is the\r\n default.\r\n\r\n--no-mov-extern\r\n Use jmp instructions to implement external function calls. This is useful for\r\n debugging.\r\n\r\n--mov-loop\r\n Use mov instructions to implement the primary execution loop. This is the\r\n default.\r\n\r\n--no-mov-loop\r\n Use jmp instructions to implement the primary execution loop. This is useful\r\n for debugging.\r\n\r\n--crt0\r\n Build the M\/o\/Vfuscator crt0 library (_start routines).\r\n\r\n--crtf\r\n Build the M\/o\/Vfuscator crtf library (primary execution loop routines).\r\n\r\n--crtd\r\n Build the M\/o\/Vfuscator crtd library (data tables).\r\n\r\n--crt\r\n Same as --crt0 --crtf --crtd.<\/pre>\nThe inspiration for the compiler is the paper “mov is Turing-complete<\/a>“, by Stephen Dolan.<\/p>\n
You can download M\/o\/Vfuscator2 here:<\/p>\n