CmpIsKeyStackDeleted
CHAR __fastcall CmpIsKeyStackDeleted(INT64 a1, INT64 a2){
__int16 v2;
__int64 v4;
__int64 v5;
__int64 v6;
LIST_ENTRY *v7;
int v8;
LIST_ENTRY *ListIterator;
v2 = *(_WORD *)(a1 + 2);
for( ListIterator = 0i64; v2 >= 0; --v2 )
{
v4 = v2 >= 2 ? *(_QWORD *)(*(_QWORD *)(a1 + 24) + 8i64 * v2 - 16) : *(_QWORD *)(a1 + 8i64 * v2 + 8);
if( *(_WORD *)(v4 + 66) && *(_BYTE *)(v4 + 65) == 1 )
break;
if( *(_DWORD *)(v4 + 40) != -1 )
{
if( !a2 )
goto LABEL_7;
LODWORD(v5) = CmListGetNextElement((LIST_ENTRY *)(*(_QWORD *)(a1 + 8) + 208i64), &ListIterator, 32i64);
if( !v5 )
goto LABEL_7;
while( 1 )
{
v8 = *(_DWORD *)(v5 + 68);
if( v8 == 2 || v8 == 11 )
break;
LODWORD(v5) = CmListGetNextElement(v7 + 13, &ListIterator, 32i64);
if( !v5 )
return v5;
}
if( !CmEqualTrans(*(_QWORD *)(v5 + 56), v6) )
{
LABEL_7:
LOBYTE(v5) = 0;
return v5;
}
break;
}
}
LOBYTE(v5) = 1;
return v5;
}Referenced by:
CmpCheckOpenAccessOnKeyBody
CmpCreateChild
CmpCreateKeyBody
CmpDoParseKey
CmpDoWritethroughReparse
CmpGetSymbolicLinkTarget
CmpIsKeyDeleted
CmpPromoteKey