By reference is easy:mov eax, vpush eaxBy value:SUB Foo (BYVAL v AS VARIANT) !lea eax, v !mov ecx, [eax+12] !push ecx !mov ecx, [eax+8] !push ecx !mov ecx, [eax+4] !push ecx !mov ecx, [eax] !push ecxEND SUB