CmpInitializeMachineHiveLoadedCallbacks

CHAR *__stdcall CmpInitializeMachineHiveLoadedCallbacks(){
  char *v0; 
  __int64 v1; 
  CHAR *result; 

  KeInitializeEvent((INT64)&CmpDummyThreadEvent + 1984, 0, 0);
  v0 = (char *)&stru_140C00F40 + 88;
  v1 = 7i64;
  do
  {
    *((_QWORD *)v0 - 2) = 0i64;
    *((_QWORD *)v0 - 1) = 0i64;
    *((_QWORD *)v0 + 1) = v0;
    *(_QWORD *)v0 = v0;
    KeInitializeEvent((INT64)(v0 - 40), 0, 0);
    result = (CHAR *)ExAllocatePoolWithTag(0x200ui64, 0x20ui64, 842616131i64);
    *((_QWORD *)v0 + 2) = result;
    *(_QWORD *)result = 0i64;
    *((_QWORD *)result + 2) = CmpMachineHiveLoadedWorkItem;
    *((_QWORD *)result + 3) = v0 - 152;
    *((_DWORD *)v0 + 6) = 0;
    v0 += 200;
    --v1;
  }
  while( v1 );
  return result;
}

Referenced by:

CmInitSystem1