PiDqObjectManagerInit

VOID __stdcall PiDqObjectManagerInit(_PI_DQ_OBJECT_MANAGER *ObjectManager, _PNP_OBJECT_TYPE PnpObjectType){
  memset(ObjectManager, 0i64, 0xF0u);
  *(_DWORD *)&ObjectManager[1].WorkItem[12] = PnpObjectType;
  ExInitializeResourceLite((INT64)ObjectManager);
  KeInitializeGuardedMutex((PKGUARDED_MUTEX)ObjectManager->QueryList);
  *(_QWORD *)&ObjectManager[1].DataLock[12] = (char *)ObjectManager + 192;
  *(_QWORD *)&ObjectManager[1].DataLock[4] = (char *)ObjectManager + 192;
  *(_QWORD *)&ObjectManager[1].DataLock[28] = (char *)ObjectManager + 208;
  *(_QWORD *)&ObjectManager[1].DataLock[20] = (char *)ObjectManager + 208;
  *(_QWORD *)&ObjectManager[1].ProcessLock[28] = 0i64;
  *(_QWORD *)&ObjectManager[1].ProcessLock[44] = PiDqObjectManagerServiceActionQueue;
  *(_QWORD *)&ObjectManager[1].ProcessLock[52] = ObjectManager;
}

Referenced by:

PiDqInit