use Inline ASM => <<'END', PROTOTYPES => {JAxH => 'void(char*)'};
BITS 32
GLOBAL JAxH
EXTERN printf
SECTION .text
; prototype: void JAxH(char *x);
JAxH push ebp
mov ebp,esp
mov eax,[ebp+8]
push dword eax ; x
push dword jaxhstr ; "just ..."
call printf
mov esp,ebp
pop ebp
ret
SECTION .data
jaxhstr db "Just Another %s Hacker", 10, 0
END
print JAxH('Perl');