2025-01-24 18:55:26 +00:00
|
|
|
.include "lib/alloca.S"
|
2025-01-24 18:49:07 +00:00
|
|
|
|
|
|
|
.text
|
|
|
|
|
|
|
|
.globl _start
|
|
|
|
|
|
|
|
_start:
|
|
|
|
# Could just use push, but this also works.
|
|
|
|
alloca 16
|
|
|
|
mov byte ptr [rsp+15], 10
|
|
|
|
mov byte ptr [rsp+14], 33
|
|
|
|
mov byte ptr [rsp+13], 100
|
|
|
|
mov byte ptr [rsp+12], 108
|
|
|
|
mov byte ptr [rsp+11], 114
|
|
|
|
mov byte ptr [rsp+10], 111
|
|
|
|
mov byte ptr [rsp+9], 119
|
|
|
|
mov byte ptr [rsp+8], 32
|
|
|
|
mov byte ptr [rsp+7], 44
|
|
|
|
mov byte ptr [rsp+6], 111
|
|
|
|
mov byte ptr [rsp+5], 108
|
|
|
|
mov byte ptr [rsp+4], 108
|
|
|
|
mov byte ptr [rsp+3], 101
|
|
|
|
mov byte ptr [rsp+2], 72
|
|
|
|
|
|
|
|
# Can't move imm64 to memory directly, so have to copy to register first!
|
|
|
|
# mov rax, 729975031549884192
|
|
|
|
# mov qword ptr [rsp+8], rax
|
|
|
|
# mov rax, 48857072035144
|
|
|
|
# mov qword ptr [rsp], rax
|
|
|
|
|
|
|
|
mov rax, 1
|
|
|
|
mov rdi, 1
|
|
|
|
lea rsi, [rsp]
|
|
|
|
mov rdx, 15
|
|
|
|
syscall
|
|
|
|
|
|
|
|
mov rax, 60
|
|
|
|
mov rdi, 0
|
|
|
|
syscall
|