PnpGetRegistryDword
__int64 __fastcall PnpGetRegistryDword(void *a1, WCHAR *a2, _DWORD *a3){
NTSTATUS RegistryValue;
unsigned int *v5;
unsigned int v6;
PVOID P;
*a3 = 0;
P = 0i64;
RegistryValue = IopGetRegistryValue(a1, a2, 0i64, (KEY_VALUE_FULL_INFORMATION **)&P);
v5 = (unsigned int *)P;
v6 = RegistryValue;
if( RegistryValue >= 0 )
{
if( PnpValidateRegistryDword((KEY_VALUE_FULL_INFORMATION *)P) )
*a3 = *(unsigned int *)((char *)v5 + v5[2]);
else
v6 = -1073741271;
}
if( v5 )
ExFreePoolWithTag(v5, 0);
return v6;
}Referenced by:
PiDmaGuardProcessRegistry
PipDmgGetDriverDmarCompatLevel
PnpInitializePnpWatchdogs
PnpQueryWatchdogTimeoutConfiguration