Writing a Self-Mutating x86_64 C Program