#include int main() { // Store the current value of the return address void *return_address = __builtin_return_address(0); // Modify the return address to point to a different location __builtin_return_address(0) = (void *)0x123456; // Insert garbage bytes to break disassemblers __asm__("nop\n" "nop\n" "nop\n" "nop\n"); // Use the modified return address return 0; }