1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
.global _start _start: pop %eax mov %eax, environ pop %eax #mov %eax, _impure_ptr #mov $61, %eax # write syscall #mov $1,%edx # stdout #mov .hellostr,%ecx #mov 9,%ebx # string length #int $0x80 call main push environ push %eax call _exit2 # this should never be reached anyway! .wait: hlt jmp .wait