PnpGetObjectPropertyKeys

__int64 __fastcall PnpGetObjectPropertyKeys(
        __int64 a1,
        __int64 a2,
        unsigned int a3,
        __int64 a4,
        int a5,
        char a6,
        __int64 a7,
        int a8,
        __int64 a9){
  __int64(__fastcall *v13)(__int64, __int64, _QWORD, __int64, int, _DWORD *); 
  int v14; 
  unsigned int ObjectPropertyKeysWorker; 
  unsigned int v16; 
  int v17; 
  int v18; 
  unsigned int v19; 
  _DWORD result[4]; 
  __int64 v22; 
  const wchar_t *v23; 
  char v24; 
  __int64 v25; 
  int v26; 
  _DWORD *v27; 
  int v28; 
  memset((INT64)result, 0i64);
  v13 = *(__int64(__fastcall **)(__int64, __int64, _QWORD, __int64, int, _DWORD *))(a1 + 488);
  v23 = 0i64;
  v28 = 0;
  v24 = a6;
  v25 = a7;
  v26 = a8;
  v27 = (_DWORD *)a9;
  v22 = a4;
  if( v13 )
  {
    v14 = v13(a1, a2, a3, 6i64, 1, result);
    if( v14 == -1073741822 )
    {
      v13 = 0i64;
    }
    else
    {
      if( v14 == -1073741536 )
        return result[0];
      if( v14 )
        return(unsigned int)-1073741595;
    }
  }
  ObjectPropertyKeysWorker = PnpGetObjectPropertyKeysWorker(a1, a2, a3, v22, v23, v24, v25, v26, v27, v28);
  v16 = ObjectPropertyKeysWorker;
  if( !v13 )
    return v16;
  result[0] = ObjectPropertyKeysWorker;
  v17 = v13(a1, a2, a3, 6i64, 2, result);
  v18 = v17;
  if( v17 == -1073741822 )
    return v16;
  if( v17 == -1073741536 )
    return result[0];
  v19 = v16;
  if( v18 )
    return(unsigned int)-1073741595;
  return v19;
}

Referenced by:

PiCMGetObjectPropertyKeys
PiDevCfgCopyObjectProperties
PiDqPnPGetObjectPropertyKeys