HalpCmcStartPolling

VOID __stdcall HalpCmcStartPolling(){
  unsigned __int64 v0; 

  if( !HalpIsMicrosoftCompatibleHvLoaded() || (unsigned __int8)HalpIsPartitionCpuManager() )
  {
    v0 = (unsigned __int8)KeAcquireSpinLockRaiseToDpc(qword_140CED3C0);
    if( byte_140C50551 )
    {
      if( (*(&stru_140CF2E80 + 7433)
         || *(&stru_140CF2E80 + 1857)
         || *(&stru_140CF2E80 + 7432) != *(&stru_140CF2E80 + 7428))
        && !*(&stru_140CF2E80 + 7905) )
      {
        KiSetTimerEx(
          &stru_140C50578,
          (_LARGE_INTEGER)(-10000i64 * (unsigned int)Period),
          (unsigned int)Period,
          0,
          &stru_140C505B8);
        *(&stru_140CF2E80 + 7905) = 1;
      }
    }
    else
    {
      *(&stru_140CF2E80 + 7432) = 1;
    }
    KxReleaseSpinLock(qword_140CED3C0);
    __writecr8(v0);
  }
}

Referenced by:

HalpCmciDeferredRoutine
HalpInitializeCmc