XmPushStack

_WORD *__fastcall XmPushStack(INT64 a1, INT64 a2){
  int v2; 
  unsigned int v3; 
  unsigned int v5; 
  v2 = *(_DWORD *)(a1 + 120);
  v3 = a2;
  v5 = *(_DWORD *)(a1 + 40) - v2 - 1;
  if( v5 > (unsigned int)*(unsigned __int16 *)(a1 + 72) - v2 )
    longjmp((_JBTYPE *)(a1 + 160), 15i64);
  *(_DWORD *)(a1 + 40) = v5;
  *(_QWORD *)(a1 + 88) = x86BiosTranslateAddress(*(_WORD *)(a1 + 60), v5);
  return XmStoreResult(a1, v3);
}

Referenced by:

XmCallOp
XmEnterOp
XmIntOp
XmPushOp
XmPushaOp