.globl main main: sub $0x44, %esp mov %esp, %ebx movb $0xeb, (%ebx) inc %ebx movb $0x17, (%ebx) inc %ebx movb $0x59, (%ebx) inc %ebx movb $0x31, (%ebx) inc %ebx movb $0xc0, (%ebx) inc %ebx movb $0x31, (%ebx) inc %ebx movb $0xdb, (%ebx) inc %ebx movb $0x43, (%ebx) inc %ebx movb $0x31, (%ebx) inc %ebx movb $0xd2, (%ebx) inc %ebx movb $0xb2, (%ebx) inc %ebx movb $0x0c, (%ebx) inc %ebx movb $0xb0, (%ebx) inc %ebx movb $0x04, (%ebx) inc %ebx movb $0xcd, (%ebx) inc %ebx movb $0x80, (%ebx) inc %ebx movb $0x31, (%ebx) inc %ebx movb $0xc0, (%ebx) inc %ebx movb $0x31, (%ebx) inc %ebx movb $0xdb, (%ebx) inc %ebx movb $0xb3, (%ebx) inc %ebx movb $0x64, (%ebx) inc %ebx movb $0x40, (%ebx) inc %ebx movb $0xcd, (%ebx) inc %ebx movb $0x80, (%ebx) inc %ebx movb $0xe8, (%ebx) inc %ebx movb $0xe4, (%ebx) inc %ebx movb $0xff, (%ebx) inc %ebx movb $0xff, (%ebx) inc %ebx movb $0xff, (%ebx) inc %ebx movb $0x68, (%ebx) inc %ebx movb $0x65, (%ebx) inc %ebx movb $0x6c, (%ebx) inc %ebx movb $0x6c, (%ebx) inc %ebx movb $0x6f, (%ebx) inc %ebx movb $0x20, (%ebx) inc %ebx movb $0x77, (%ebx) inc %ebx movb $0x6f, (%ebx) inc %ebx movb $0x72, (%ebx) inc %ebx movb $0x6c, (%ebx) inc %ebx movb $0x6d, (%ebx) inc %ebx movb $0x0a, (%ebx) // install signal handler mov %esp, %ecx xor %eax, %eax movb $48, %al xor %ebx, %ebx movb $17, %bl int $0x80 // loop doit: jmp doit mov %esp, %ebx