Hacker GitHub

← All repos

xoreaxeaxeax/movfuscator

View on GitHub ↗ ★ 10,588 C

The single instruction C compiler

103 mentions on Hacker News by 96 people: 19 stories, 84 comments · first 2015-06-20 · latest 2026-03-01

Mentions per year 103 mentions · busiest year 2016 (14)
20082026
  1. You can compute with less than that. (all links are to the same thing) https://github.com/xoreaxeaxeax/movfuscator https://m.youtube.com/watch?v=R7EEoWg6Ekk https://news.ycombinator.com/item?id=18991404
  2. …that only emits MOV instructions [0] [1]. His other talks are quite interesting, as well! [0]: https://github.com/xoreaxeaxeax/movfuscator [1]: https://www.youtube.com/watch?v=2VF_wPkiBJY
  3. All you need is `mov`: https://github.com/xoreaxeaxeax/movfuscator/ Including the obligatory port of doom: https://github.com/xoreaxeaxeax/movfuscator/tree/master/vali... Note: The mov-only DOOM renders approximately one frame every 7…
  4. …one frame every 7 hours, so playing this version requires somewhat increased patience. https://github.com/xoreaxeaxeax/movfuscator/tree/master/vali...
  5. And an implementation of Doom at merely 7 hours per frame! https://github.com/xoreaxeaxeax/movfuscator/tree/master/vali...
    comment by pjscott · 2018-11-10 · in How Many Computers Are in Your Computer?
  6. It's not just a paper... there's a reference implementation! https://github.com/xoreaxeaxeax/movfuscator
  7. …takes seconds now takes hours. ah, here it is - branchless doom (in the validation/doom directory - https://github.com/xoreaxeaxeax/movfuscator/tree/master/vali... ): > The mov-only DOOM renders approximately one frame every 7 hours, so…
  8. This is by the same badass who wrote a compiler that generates only MOV instructons [1] [1] https://github.com/xoreaxeaxeax/movfuscator
  9. Come on, the movfuscator has to be the best x86 I've seen: https://github.com/xoreaxeaxeax/movfuscator
  10. …can be constructed. An example of a compiler for an even more restricted environment might be https://github.com/xoreaxeaxeax/movfuscator Edit: in the same vein there's also https://esolangs.org/wiki/Higher_Subleq Further edit: The user…
  11. …compiled with the M/o/Vfuscator[0] is immune to this as it does not use branch instructions. [0] https://github.com/xoreaxeaxeax/movfuscator
  12. Another missing is the X86 mov instructor. https://github.com/xoreaxeaxeax/movfuscator
  13. Christopher Domas implemented this idea in his one instruction compiler, the M/o/Vfuscator: https://github.com/xoreaxeaxeax/movfuscator Here's a really nifty talk he gives about it: https://www.youtube.com/watch?v=R7EEoWg6Ekk
    comment by xelxebar · 2018-01-28 · in Redundancy of x86 Machine Code (2009)
  14. …essentially compile anything to c, after which you can just compile it with the movfuscator[1] 1: https://github.com/xoreaxeaxeax/movfuscator
    comment by earenndil · 2018-01-09 · in What Spectre and Meltdown Mean for WebKit
  15. …path, that straight path, that clean path that's wholly immune to those pesky branching bugs. 1: https://github.com/xoreaxeaxeax/movfuscator
  16. …can scramble the MOV instructions, truely making it a decompilation nightmare. 1. Movfuscator page https://github.com/xoreaxeaxeax/movfuscator 2. Derbycon 2015 video https://www.youtube.com/watch?v=R7EEoWg6Ekk
    comment by DogestFogey · 2017-11-16 · in A Sampling of Anti-Decompilation Techniques
  17. heh, by the same guy who made that compiler that translates C into only mov instructions: https://github.com/xoreaxeaxeax/movfuscator
  18. Technically, x86(and probably others) are turing complete with just MOV: https://github.com/xoreaxeaxeax/movfuscator
  19. Compiling C to assembly code that uses only one instruction, namely mov: https://github.com/xoreaxeaxeax/movfuscator
  20. …similar to the underlying mechanism used in the compiler that only used x86 mov instructions. https://github.com/xoreaxeaxeax/movfuscator
  21. Curiosly the capability of the x86 MOV is such that you can compile C code to only MOV instructions: https://github.com/xoreaxeaxeax/movfuscator Inspired by this paper about Turing-completeness of MOV:…
  22. An amusing application of mov's turing completeness https://github.com/xoreaxeaxeax/movfuscator
  23. Yep, just in case: https://news.ycombinator.com/item?id=9751312 https://github.com/xoreaxeaxeax/movfuscator And the XOR post-processor: https://github.com/xoreaxeaxeax/movfuscator/blob/master/post...
    comment by jaclaz · 2016-12-31 · in X86 Assembly Guide
  24. See https://github.com/xoreaxeaxeax/movfuscator
  25. …minimal, just a state machine reading/writing state on a tape Repo includes a good set of slides: https://github.com/xoreaxeaxeax/movfuscator/blob/master/slid... Indirect memory accesses serve for conditional execution Here's the macro for…
  26. Convoluted tricks? Certainly. There's a functioning mov-only compiler [1], though. [1] https://github.com/xoreaxeaxeax/movfuscator
  27. Here is a paper and a mov only compiler. http://www.cl.cam.ac.uk/~sd601/papers/mov.pdf , https://github.com/xoreaxeaxeax/movfuscator PS: Found these links on hn.algolia.com, the HN threads are: https://news.ycombinator.com/item?id=6309631…
    comment by terminalcommand · 2016-08-24 · in Does a compiler use all x86 instructions? (2010)
  28. Probably things like https://github.com/xoreaxeaxeax/movfuscator
  29. paper: https://www.cl.cam.ac.uk/~sd601/papers/mov.pdf compiler implementing it: https://github.com/xoreaxeaxeax/movfuscator HN discussions of these links: https://news.ycombinator.com/item?id=6309631 (paper) and…
  30. https://github.com/xoreaxeaxeax/movfuscator
  31. Also: https://github.com/xoreaxeaxeax/movfuscator (which makes x86 single-instruction)
    comment by TazeTSchnitzel · 2016-06-25 · in An emulator for a single-instruction (NOR) CPU
  32. …make this? A: I thought it would be funny Is the motivation of demovfuscator to be not funny? [1] https://github.com/xoreaxeaxeax/movfuscator#faq Edit: Not sure why the down vote. It was intended as a joke, if it means anything
    comment by a_c · 2016-06-24 · in Demovfuscator
  33. Related: an x86/x64 obfuscator that transforms a program to use only mov instructions https://github.com/xoreaxeaxeax/movfuscator
    comment by praseodym · 2015-08-24 · in Instruction-less computation
  34. I suggest taking a look at the slides, which show how much trickery is involved: https://github.com/xoreaxeaxeax/movfuscator/raw/master/slide...
    comment by cautious_int · 2015-08-07 · in Movfuscator: A single-instruction C compiler