Howdy,
Not sure if this is an issue-issue but the value in sprint for EAX is never restored which causes segfaults on repeated calls.
;------------------------------------------
; void sprint(String message)
; String printing function
sprint:
push edx
push ecx
push ebx
push eax
call slen
mov edx, eax
pop eax
mov ecx, eax
mov ebx, 1
mov eax, 4
int 80h
mov eax, ecx ; <---- restore the contents of eax
pop ebx
pop ecx
pop edx
ret
Howdy,
Not sure if this is an issue-issue but the value in sprint for EAX is never restored which causes segfaults on repeated calls.