CmpLightWeightDuplicateParentLists
INT64 __fastcall CmpLightWeightDuplicateParentLists(UINT64 a1, INT64 a2, INT64 a3){
unsigned int v4;
__int64 v6;
int v7;
_DWORD *v8;
__int64 v9;
unsigned int v10;
int v11;
__int64 v13;
v4 = 0;
v13 = 0xFFFFFFFFi64;
v6 = (*(__int64(__fastcall **)(UINT64, INT64, __int64 *))(a1 + 8))(a1, a2, &v13);
if( !v6 )
return(unsigned int)-1073741670;
v7 = 0;
v8 = (_DWORD *)(a3 + 12);
v9 = v6 - a3;
while( 1 )
{
v10 = *(_DWORD *)((char *)v8 + v9 + 16);
if( v10 == -1 )
goto LABEL_8;
if( !(unsigned __int8)CmpMarkEntireIndexDirty((PVOID)a1, (PVOID)v10) )
break;
v11 = CmpDuplicateIndex(a1, v10, (unsigned int)v7);
*v8 = v11;
if( v11 == -1 )
{
v4 = -1073741670;
goto LABEL_12;
}
*(v8 - 2) = *(_DWORD *)((char *)v8 + v9 + 8);
LABEL_8:
++v7;
++v8;
if( v7 >= 2 )
goto LABEL_12;
}
v4 = -1073741443;
LABEL_12:
(*(void(__fastcall **)(UINT64, __int64 *))(a1 + 16))(a1, &v13);
return v4;
}Referenced by:
CmpLightWeightCreateModificationData