            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