; $nasm -f bin elf_nitr0us.asm -o elf_nitr0us
; $chmod +x ./elf_nitr0us
; $file ./elf_nitr0us
; $./elf_nitr0us
; nitr0us in ELF
; $objdump -D ./elf_nitr0us
; $readelf -S ./elf_nitr0us
; ;) ;) ;)
;
; nitr0us
; 25 nov 2006

[BITS 32]

org	0x08048000
  
ehdr:					; Elf32_Ehdr
	db	0x7F, "ELF", 1, 1, 1	;   e_ident
	times	9	db	0
	dw	2			;   e_type
	dw	3			;   e_machine
	dd	1			;   e_version
	dd	_start			;   e_entry
	dd	phdr - $$		;   e_phoff
	dd	0			;   e_shoff
	dd	0			;   e_flags
	dw	ehdrsize		;   e_ehsize
	dw	phdrsize		;   e_phentsize
	dw	1			;   e_phnum
	dw	0			;   e_shentsize
	dw	0			;   e_shnum
	dw	0			;   e_shstrndx

ehdrsize	equ	$ - ehdr

phdr:					; Elf32_Phdr
	dd	1			;   p_type
	dd	0			;   p_offset
	dd	$$			;   p_vaddr
	dd	$$			;   p_paddr
	dd	filesize		;   p_filesz
	dd	filesize		;   p_memsz
	dd	5			;   p_flags
	dd	0x1000			;   p_align

phdrsize	equ	$ - phdr

_start:	
	db	0x68, 0x4c, 0x46, 0x0a, 0x00, 0x68, 0x69, 0x6e
	db	0x20, 0x45, 0x68, 0x30, 0x75, 0x73, 0x20, 0x68
	db	0x6e, 0x69, 0x74, 0x72, 0x31, 0xc0, 0x31, 0xdb
	db	0x31, 0xd2, 0xb0, 0x04, 0xb3, 0x01, 0x89, 0xe1
	db	0xb2, 0x10, 0xcd, 0x80, 0x93, 0xcd, 0x80

filesize	equ	$ - $$
