_WORD *__fastcall XmCwdOp(INT64 a1){
bool v1;
INT64 v2;
v1 = *(_BYTE *)(a1 + 138) == 0;
*(_QWORD *)(a1 + 88) = a1 + 32;
if( v1 )
{
v2 = (unsigned __int16)(*(__int16 *)(a1 + 24) >> 15);
*(_DWORD *)(a1 + 120) = 1;
}
else
{
*(_DWORD *)(a1 + 120) = 3;
v2 = (unsigned int)(*(int *)(a1 + 24) >> 31);
}
return XmStoreResult(a1, v2);
}