PnpGetRegistryDword
__int64 __fastcall PnpGetRegistryDword(void *a1, wchar_t *a2, _DWORD *a3){
NTSTATUS RegistryValue;
_KEY_VALUE_FULL_INFORMATION *v5;
unsigned int v6;
_KEY_VALUE_FULL_INFORMATION *Information;
*a3 = 0;
Information = 0i64;
RegistryValue = IopGetRegistryValue(a1, a2, 0i64, &Information);
v5 = Information;
v6 = RegistryValue;
if( RegistryValue >= 0 )
{
if( PnpValidateRegistryDword((__int64)Information) )
*a3 = *(ULONG *)((char *)&v5->TitleIndex + v5->DataOffset);
else
v6 = -1073741271;
}
if( v5 )
ExFreePoolWithTag(v5, 0);
return v6;
}Referenced by:
PiDmaGuardProcessRegistry
PipDmgGetDriverDmarCompatLevel
PnpInitializePnpWatchdogs
PnpQueryWatchdogTimeoutConfiguration