segment .data
a: dd 1, 2, 3, 4, 5
segment .bss
b: resd 10
segment .text
global main
main:
push rbp
mov rbp, rsp
sub rsp, 32
lea rcx, [b]
lea rdx, [a]
mov r8d, 5
call copy_array
xor eax, eax
leave
ret
copy_array:
xor r9d, r9d
more: mov eax, [rdx+4*r9]
mov [rcx+4*r9], eax
add r9, 1
cmp r9, r8
jne more
xor eax, eax
ret