DrvDbGetObjectDatabaseNodeName
INT64 __fastcall DrvDbGetObjectDatabaseNodeName(INT64 *a1, INT64 a2, INT64 a3, VOID *a4, UINT64 arg20, UINT64 *a6){
int v7;
__int64 v8;
unsigned int v9;
INT64 a5;
__int64 v12;
void *Handle[2];
Handle[0] = 0i64;
v12 = 0i64;
*(_DWORD *)a6 = 0;
LODWORD(a5) = 1;
v7 = DrvDbOpenObjectRegKey(a1, 0i64, (unsigned int)a2, (WCHAR *)a3, a5, 0, (INT64)Handle, 0i64, (INT64)&v12);
if( v7 >= 0 )
{
v8 = v12;
v9 = *(unsigned __int16 *)(v12 + 16) + 2;
*(_DWORD *)a6 = v9;
if( a4 && (unsigned int)arg20 >= v9 )
memmove((UINT8 *)a4, *(UINT8 **)(v8 + 24), v9);
else
v7 = -1073741789;
}
if( Handle[0] )
ZwClose(Handle[0]);
return(unsigned int)v7;
}Referenced by:
DrvDbGetDeviceIdMappedProperty
DrvDbGetDriverFileMappedProperty
DrvDbGetDriverInfFileMappedProperty
DrvDbGetDriverPackageMappedProperty