segment .data
digit db 0,10
segment .text
global _start
_start:
push 4
push 3
push 2
push 1
pop rax
call _print
pop rax
call _print
pop rax
call _print
pop rax
call _print
mov rax, 60
mov rdi, 0
syscall
_print:
add rax, 48
mov [digit], al
mov rax, 1
mov rdi, 1
mov rsi, digit
mov rdx, 2
syscall
ret
c2VnbWVudCAuZGF0YQoJZGlnaXQgZGIgMCwxMAoKc2VnbWVudCAudGV4dAoJZ2xvYmFsIF9zdGFydApfc3RhcnQ6CglwdXNoIDQKCXB1c2ggMwoJcHVzaCAyCglwdXNoIDEKCQoJcG9wIHJheAoJY2FsbCBfcHJpbnQKCXBvcCByYXgKCWNhbGwgX3ByaW50Cglwb3AgcmF4CgljYWxsIF9wcmludAoJcG9wIHJheAoJY2FsbCBfcHJpbnQKCQoJbW92IHJheCwgNjAKCW1vdiByZGksIDAKCXN5c2NhbGwKCQpfcHJpbnQ6CglhZGQgcmF4LCA0OAoJbW92IFtkaWdpdF0sIGFsCgkKCW1vdiByYXgsIDEKCW1vdiByZGksIDEKCW1vdiByc2ksIGRpZ2l0Cgltb3YgcmR4LCAyCglzeXNjYWxsCglyZXQ=