CcComputeNextScanTime

VOID __stdcall CcComputeNextScanTime(LARGE_INTEGER *OldestScanTimeForMetadata, LARGE_INTEGER *NextScanDelay){
  _QWORD *v2; 
  _QWORD *v3; 
  volatile signed __int64 TickCountQuad; 
  unsigned __int64 v5; 
  LONGLONG QuadPart; 
  ULONG v7; 
  *v2 = 0i64;
  v3 = v2;
  if( OldestScanTimeForMetadata[120].LowPart < OldestScanTimeForMetadata[25].LowPart )
  {
    TickCountQuad = KUSER_SHARED_DATA.TickCountQuad;
    v5 = 0x9896800ui64 / KeMaximumIncrement;
    QuadPart = NextScanDelay->QuadPart;
    v7 = OldestScanTimeForMetadata[17].LowPart + 1;
    OldestScanTimeForMetadata[17].LowPart = v7;
    if( QuadPart != 0x7FFFFFFFFFFFFFFFi64 && (__int64)(QuadPart + v5) > TickCountQuad )
    {
      OldestScanTimeForMetadata[17].LowPart = 0;
      *v3 = v5 + QuadPart - TickCountQuad;
      v7 = 0;
    }
    if( v7 >= CcMaxWorklessLazywriteScans )
    {
      OldestScanTimeForMetadata[17].LowPart = 0;
      *v3 = 0x7FFFFFFFFFFFFFFFi64;
    }
  }
}

Referenced by:

CcLazyWriteScan