IopAllocateBootResources

NTSTATUS __stdcall IopAllocateBootResources(
        _ARBITER_REQUEST_SOURCE ArbiterRequestSource,
        PDEVICE_OBJECT DeviceObject,
        PCM_RESOURCE_LIST BootResources){
  _ETHREAD *CurrentThread; 

  CurrentThread = (_ETHREAD *)KeGetCurrentThread();
  --CurrentThread->Tcb.KernelApcDisable;
  KeWaitForSingleObject((UINT64)&PnpReplaceEvent + 6016, 4, 0, 0, 0i64);
  LODWORD(BootResources) = IopAllocateBootResourcesInternal(ArbiterRequestSource, DeviceObject, BootResources);
  KeReleaseSemaphore((_KSEMAPHORE *)&PnpReplaceEvent + 188, 0i64, 1i64, 0);
  KeLeaveCriticalRegionThread(KeGetCurrentThread());
  return(int)BootResources;
}

Referenced by:

IopAllocateLegacyBootResources
IopReportBootResources