HalpAcpiGetCachedTable
LIST_ENTRY **__stdcall HalpAcpiGetCachedTable(UINT64 Signature, UINT8 *OemId, UINT8 *OemTableId){
const INT8 *v3;
__int64 v4;
int v7;
LIST_ENTRY **v8;
va_list v10;
v4 = HalpAcpiTableCacheList;
v7 = Signature;
v8 = 0i64;
while( (__int64 *)v4 != &HalpAcpiTableCacheList )
{
if( *(_DWORD *)(v4 + 24) == v7
&& (!OemId || !(unsigned int)strncmp((INT8 *)OemId, v4 + 34, 6ui64, v3, v10))
&& (!OemTableId || !(unsigned int)strncmp((INT8 *)OemTableId, v4 + 40, 8ui64, v3, v10)) )
{
return(LIST_ENTRY **)(v4 + 24);
}
v4 = *(_QWORD *)v4;
}
return v8;
}Referenced by:
HalpAcpiGetRsdt
HalpAcpiGetTableWork
HalpAcpiTableCacheInit