section .data 


msg db "I'm a true hacker",0xa ;String to be printed 


len equ $ - msg ;Length of the string 


section .text 


global _start ; we must export the entry point to the ELF linker or loader. 


;They conventionally recognize _start as their entry point. Use ld -e foo to
;override the default. 


_start: ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


 mov edx, len ;third argument: message length 


mov ecx, msg ;second argument: pointer to message to write 


mov ebx, 1 ;first argument: file handle(stdout) 


mov eax, 4 ;system call number (sys_write) 


int 0x80 ; call kernel ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


 mov ebx, 0 


mov eax, 1 ;system call number (sys_exit) 


int 0x80 