XmEnterOp
_WORD *__fastcall XmEnterOp(INT64 a1){
int v2;
int v3;
_WORD *result;
VOID *v5;
unsigned int v6;
v2 = *(_DWORD *)(a1 + 108);
v3 = *(_DWORD *)(a1 + 104);
if( *(_BYTE *)(a1 + 138) )
{
*(_DWORD *)(a1 + 120) = 3;
result = XmPushStack(a1, *(unsigned int *)(a1 + 44));
v6 = *(_DWORD *)(a1 + 40);
}
else
{
*(_DWORD *)(a1 + 120) = 1;
result = XmPushStack(a1, *(unsigned __int16 *)(a1 + 44));
v6 = *(unsigned __int16 *)(a1 + 40);
}
if( v3 )
{
if( v3 != 1 )
longjmp((unsigned __int64 *)(a1 + 160), (VOID *)8, v5);
result = XmPushStack(a1, v6);
}
if( *(_BYTE *)(a1 + 138) )
{
*(_DWORD *)(a1 + 40) -= v2;
*(_DWORD *)(a1 + 44) = v6;
}
else
{
*(_WORD *)(a1 + 40) -= v2;
*(_WORD *)(a1 + 44) = v6;
}
return result;
}Referenced by:
No references.