2

Calling conventions are compiler specific, meaning they are specified by the compiler manufacturer like Microsoft, and not by the 8086 manufacturer like Intel. In case you program in Assembler or build your own compiler, you can apply your own method to pass function parameters. Nevertheless, in the C/C++ world, there are mainly the __cdecl and the __stdcall ...


1

First make sure you are using correct calling convention, in 64-bit Windows most APIs expect parameters via registers not push. An example of calling convention for 64-bit Windows: lea r9d, uType ; uType lea r8, Caption ; Caption lea rdx, Text ; Text mov rcx, hWnd ; hWnd Call cs:MessageBoxW This is covered in more ...


Only top voted, non community-wiki answers of a minimum length are eligible