You'd better avoid calling C function in ASM file, if need, only call the C function without input parameters, cause the input parameters are stored in registers or memory depending on the compiler. To call C function, it's usually call _func for func() routine, maybe you also should declare the function name in the asm file, depend on your specific compiler.