global _start
section .data
hello db 'Hello, World',0
name db 'Damian',0
section .text
_start:
mov eax, 4 ; the system interprets 4 as "write"
mov ebx, 1 ; standard output (print to terminal)
mov ecx, hello ; pointer to the value being passed
mov edx, 5 ; length of output (in bytes)
cmp hello,name
je _same
int 0x80 ; call the kernel
_same:
mov eax, 4
mov ebx, 1
mov ecx, name
mov edx, 5
int 0x80
Z2xvYmFsIF9zdGFydAoKc2VjdGlvbiAuZGF0YQoJaGVsbG8gZGIgJ0hlbGxvLCBXb3JsZCcsMAoJbmFtZSBkYiAnRGFtaWFuJywwCgkJCnNlY3Rpb24gLnRleHQKCQoKX3N0YXJ0OgoJbW92IGVheCwgNCAgICAgICAgICAgOyB0aGUgc3lzdGVtIGludGVycHJldHMgNCBhcyAid3JpdGUiCgltb3YgZWJ4LCAxICAgICAgICAgICA7IHN0YW5kYXJkIG91dHB1dCAocHJpbnQgdG8gdGVybWluYWwpCgltb3YgZWN4LCBoZWxsbyAgICAgICA7IHBvaW50ZXIgdG8gdGhlIHZhbHVlIGJlaW5nIHBhc3NlZAoJbW92IGVkeCwgNSAgICAgICAgICAgOyBsZW5ndGggb2Ygb3V0cHV0IChpbiBieXRlcykKCQoJY21wIGhlbGxvLG5hbWUKCWplIF9zYW1lCgkJCglpbnQgMHg4MCAgICAgICAgICAgICA7IGNhbGwgdGhlIGtlcm5lbAoKX3NhbWU6Cgltb3YgZWF4LCA0Cgltb3YgZWJ4LCAxCgltb3YgZWN4LCBuYW1lCgltb3YgZWR4LCA1CglpbnQgMHg4MAoJ