HvpIsMetadataArrayCoherent
char __fastcall HvpIsMetadataArrayCoherent(unsigned int *a1, __int64 a2, unsigned int a3){
__int64 v3;
unsigned __int64 v6;
__int64 v7;
unsigned int v8;
v3 = 0i64;
v6 = 8i64 * a1[5] + 40;
if( !a3 )
return 1;
while( 1 )
{
v7 = *(unsigned int *)(a2 + 8 * v3 + 4);
if( !(_DWORD)v7 )
break;
if( (v7 & 0xFFF) != 0 )
break;
v8 = *(_DWORD *)(a2 + 8 * v3);
if( (v8 & 0xFFF) != 0
|| v8 + (unsigned int)v7 < v8
|| v8 + (unsigned int)v7 > a1[4]
|| (_DWORD)v3
&& v8 <= *(_DWORD *)(a2 + 8i64 * (unsigned int)(v3 - 1)) + *(_DWORD *)(a2 + 8i64 * (unsigned int)(v3 - 1) + 4) )
{
break;
}
v6 += v7;
if( v6 > 0xFFFFFFFF || v6 > a1[1] )
break;
v3 = (unsigned int)(v3 + 1);
if( (unsigned int)v3 >= a3 )
return 1;
}
return 0;
}Referenced by:
HvpApplyIncrementalLogFile
HvpApplyLegacyLogFile