HalpAuditSlicTables

__int64 __fastcall HalpAuditSlicTables(__int64 a1){
  char v1; 
  char v2; 
  unsigned int v3; 
  char i; 
  __int64 v6; 
  __int64 result; 
  char v8; 
  __int64 v9; 
  unsigned int v10; 
  v1 = 0;
  v2 = 0;
  v3 = 0;
  for( i = 1; v3 < *(_DWORD *)(a1 + 4); ++v3 )
  {
    v6 = 32i64 * v3;
    if( v3 )
    {
      v8 = 0;
      v9 = 32i64 * (v3 - 1);
      v10 = *(_DWORD *)(a1 + v6 + 24);
      if( *(_QWORD *)(a1 + v6 + 8) == *(_QWORD *)(v9 + a1 + 8) )
        v8 = i;
      i = v8;
      if( v10 != *(_DWORD *)(v9 + a1 + 24)
        || RtlCompareMemory(*(VOID **)(a1 + v6 + 32), *(VOID **)(v9 + a1 + 32), 8i64 * v10) )
      {
        v2 = 1;
      }
    }
    if( *(_DWORD *)(a1 + v6 + 24) )
      v1 = 1;
  }
  HalpAuditResults = 0i64;
  result = *(unsigned int *)(a1 + 4);
  LODWORD(HalpAuditResults) = *(_DWORD *)(a1 + 4);
  if( i )
    HIDWORD(HalpAuditResults) |= 1u;
  if( v1 )
    HIDWORD(HalpAuditResults) |= 2u;
  if( v2 )
    HIDWORD(HalpAuditResults) |= 4u;
  return result;
}

Referenced by:

HalpAuditAcpiTables