RtlpHpScheduleCompaction

INT64 __fastcall RtlpHpScheduleCompaction(_QWORD *a1){
  unsigned int v1; 
  signed __int32 v2; 
  UINT64 v3; 
  INT64 v5[2]; 
  v1 = 0;
  if( ExpHpGCInitialized )
  {
    if( BYTE1(*a1) == 1 )
    {
      v2 = _InterlockedCompareExchange(&ExpHpGCScheduledNonPaged, 1, 0);
      v3 = ExpHpGCTimerNonPaged;
    }
    else
    {
      v2 = _InterlockedCompareExchange(&ExpHpGCScheduledPaged, 1, 0);
      v3 = ExpHpGCTimerPaged;
    }
    if( !v2 )
    {
      v5[1] = -1i64;
      v5[0] = 0i64;
      ExSetTimer(v3, -10000000i64, 0i64, (INT64)v5);
    }
  }
  else
  {
    return(unsigned int)-1073741822;
  }
  return v1;
}

Referenced by:

RtlpHpLfhSubsegmentDecommitPages
RtlpHpSegLfhVsDecommit
RtlpHpSegPageRangeCoalesce