HalpAuditEnumerateRsdts
__int64 __fastcall HalpAuditEnumerateRsdts(__int64 a1, PVOID *a2){
__int64 v3;
int RsdtArrayTable;
unsigned int v6;
int v7;
PVOID P;
_LARGE_INTEGER v9;
v7 = HIDWORD(a1);
v9.QuadPart = 0i64;
v6 = 0;
P = 0i64;
RsdtArrayTable = HalpAuditAllocateRsdtArrayTable((int **)&P);
if( RsdtArrayTable >= 0 )
{
if( (int)HalpAuditGetExtendedBiosDataArea(v3, &v9, &v6) < 0
|| (RsdtArrayTable = HalpAuditEnumerateRsdtsInRange(v9, v6, 1, (int **)&P), RsdtArrayTable >= 0) )
{
RsdtArrayTable = HalpAuditEnumerateRsdtsInRange((_LARGE_INTEGER)917504i64, 0x20000u, 0, (int **)&P);
}
}
if( RsdtArrayTable < 0 )
{
if( P )
ExFreePoolWithTag(P, 0);
}
else
{
*a2 = P;
}
return(unsigned int)RsdtArrayTable;
}Referenced by:
HalpAuditAcpiTables