section .text global ft_strcpy ft_strcpy: test rdi, rdi jz err test rsi, rsi jz err push rdi loop_start: mov al, [rsi] mov [rdi],al lea rdi, [rdi + 1] lea rsi, [rsi + 1] test al, al jne loop_start end: pop rax ret err: xor rax, rax ret