The function is returning the result in AL. But EAX is the general working directory and must be saved therefore elsewhere when doing anything else inbetween; especially when calling functions.
Untested (I don't know HLA well):
convChar : byte;
call converter;
mov( AL, convChar );
stdout.put( "converted that's " );
stdout.putc( convChar );