Cześć. Stworzyłem taką własną funkcję w assembly, za pomocą kompilatora NASM
[bits 32]
call func
call[ebx]
global func
func:
call write3 ; skaczemy do write i na stos wrzucamy db 'Hello World', 0xa, 0
db 'Hello World', 0xa, 0 ; Hello World, '\n', konic stringu
write3:
call [ebx + 3 * 4] ;printf
add esp, 4
Ale po dojściu do funkcji program crashuje. Crashuje całkiem normalnie, "program przestał działać" itd. Przy okazji warto by było dodać zakładkę kodu pod assembly