PiDevCfgGetDriverPackageId

NTSTATUS __stdcall PiDevCfgGetDriverPackageId(PWCHAR DriverInfName, UNICODE_STRING *DriverPackageId){
  INT64 v4; 
  NTSTATUS ObjectProperties; 
  UINT64 v7; 
  INT64 v8; 
  int v9; 
  int v10; 
  UNICODE_STRING *v11; 
  int v12; 
  int v13; 
  __int64 v14; 
  HANDLE Handle; 
  Handle = 0i64;
  ObjectProperties = PnpOpenObjectRegKey(PiPnpRtlCtx, (__int64)DriverInfName, 9u, 131097, 0, (__int64)&Handle);
  if( ObjectProperties >= 0 )
  {
    v10 = 0;
    v12 = 0;
    v14 = 0i64;
    v8 = (INT64)DEVPKEY_DriverInfFile_ActiveDriverPackage;
    LODWORD(v7) = 1;
    v9 = 18;
    v11 = DriverPackageId;
    v13 = 6;
    ObjectProperties = PiDevCfgQueryObjectProperties(v4, (INT64)DriverInfName, 9ui64, (INT64)Handle, (INT64)&v8, v7);
    if( ObjectProperties >= 0 && (int)v14 < 0 )
      ObjectProperties = v14;
  }
  if( Handle )
    ZwClose(Handle);
  return ObjectProperties;
}

Referenced by:

PiDevCfgCheckDeviceNeedsUpdate
PiDevCfgFindDeviceMigrationNode
PiDevCfgQueryDriverNode
PiDevCfgQueryIncludedDriverNode