PnpAssignResourcesToDevices

__int64 __fastcall PnpAssignResourcesToDevices(unsigned int a1, PNP_RESOURCE_REQUEST *a2, _BYTE *a3){
  PNP_RESOURCE_REQUEST *v6; 
  __int64 v7; 
  __int64 v8; 
  INT64 v10; 
  INT64 v11; 
  INT64 v12; 

  if( a1 )
  {
    v6 = a2;
    v7 = a1;
    do
    {
      v8 = *(_QWORD *)(*(_QWORD *)(*(_QWORD *)v6 + 312i64) + 40i64);
      if( (*(_DWORD *)(v8 + 396) & 1) != 0 )
      {
        v10 = *(_QWORD *)(v8 + 48);
        LODWORD(v12) = 0;
        LOBYTE(v11) = 0;
        PnpGetObjectProperty(
          *(&stru_140CF2E80 + 1214),
          v10,
          1i64,
          0i64,
          0i64,
          (INT64)&DEVPKEY_Device_Reported,
          (INT64)&v12,
          (INT64)&v11);
      }
      v6 += 16;
      --v7;
    }
    while( v7 );
  }
  return PnpAllocateResources(a1, a2, 0, a3);
}

Referenced by:

PnpProcessAssignResources