Functions in Windows
Jo Van Hoey · Apress eBooks · 2019
Passing argument to functions is simple when you have four or fewer non-floating-point arguments. You use rcx , rdx , r8 , and r9 and provide shadow space on the stack before calling the function. After the call, you re-adjust the stack for the shadow space, and everything is fine. If you have more than four arguments, things are more complicated.