Hey,
When calling printf stub uses rax, so this register is nonzero.
This causes printf to "see" floating point arguments and starts using SSE.
At the same time if the stack does not have the proper alignment asmloader will crash.
With my friend we hopefully solved the problem using another register 'r15' in 'vaarg_converter':
https://github.com/artur-augustyniak/asmloader/blob/makefile_asmloader/stubs/x86_64_linux_stub.nasm#L60
Code causing crash:
https://github.com/artur-augustyniak/asmloader/blob/makefile_asmloader/examples/call_conv64.asm
Regards