INT64 __fastcall XmImulImmediate(INT64 a1, INT64 a2, VOID *a3){
UINT16 *v4;
VOID *v5;
INT64 result;
INT64 v7;
LODWORD(v7) = 0;
*(_DWORD *)(a1 + 120) = *(_BYTE *)(a1 + 138) != 0 ? 3 : 1;
v4 = (UINT16 *)XmEvaluateAddressSpecifier(a1, &v7, a3);
*(_DWORD *)(a1 + 108) = XmGetImmediateSourceValue(a1, *(_DWORD *)(a1 + 112) & 2, v5);
XmSetDestinationValue(a1, v4);
result = 1i64;
*(_QWORD *)(a1 + 88) = a1 + 4 * ((unsigned int)v7 + 6i64);
return result;
}