format ELF executable
entry start

segment readable writeable

cs_string DB "copy me", 0
r_string  DB "        "

segment readable executable

start:
 push cs_string
 push r_string
 call strcpy
 add esp, 8
 int 3

strcpy:
 push ebp
 mov ebp, esp
 mov edx, [ebp+08]
 mov esi, [ebp+0Ch]
 mov edi, [ebp+08]

copy:
 mov al, [esi]
 mov [edi], al
 inc esi
 inc edi
 cmp al, 0
 jne copy

 mov eax, edx
 pop ebp
 ret
