TtmpStopCallout

BOOLEAN __fastcall TtmpStopCallout(__int64 a1, int a2){
  UINT64 a6; 
  unsigned int CalloutTagFromCalloutType; 
  __int64 v6; 
  _ETHREAD *CurrentThread; 
  INT64 a5; 
  a6 = *(_QWORD *)&KUSER_SHARED_DATA.InterruptTime.LowPart - *(_QWORD *)(a1 + 32);
  if( *(_QWORD *)(a1 + 24) )
    TtmpCalloutDestroyWatchdog(a1);
  CalloutTagFromCalloutType = TtmpGetCalloutTagFromCalloutType(*(unsigned int *)(a1 + 16));
  LODWORD(a5) = a2;
  TtmiLogCalloutStop(
    *(unsigned int *)(v6 + 16),
    *(unsigned int *)(v6 + 72),
    *(_QWORD *)(v6 + 24),
    CalloutTagFromCalloutType,
    a5,
    a6);
  CurrentThread = (_ETHREAD *)KeGetCurrentThread();
  --*((_WORD *)CurrentThread + 242);
  return ExAcquireResourceExclusiveLite(&TtmpSessionLock, 1u);
}

Referenced by:

TtmiSessionDeviceListWorker
TtmpCallAssignedToTerminal
TtmpCallSetBuiltinPanelState
TtmpCallSetDisplayState
TtmpCallSetInputMode
TtmpUpdatePrimaryDisplayWnf