CmpGetSecurityCacheEntryForKcbStack
LIST_ENTRY *__fastcall CmpGetSecurityCacheEntryForKcbStack(INT64 a1, INT64 a2, INT64 a3){
INT64 v3;
INT16 v4;
LIST_ENTRY *i;
INT64 KcbAtLayerHeight;
__int16 v7;
char v8;
v3 = a2;
v4 = *(_WORD *)(a1 + 2);
for( i = 0i64; v4 >= 0; v4 = v7 - 1 )
{
KcbAtLayerHeight = CmpGetKcbAtLayerHeight(a1, v4);
a3 = *(unsigned __int16 *)(KcbAtLayerHeight + 66);
if( (_WORD)a3 && *(_BYTE *)(KcbAtLayerHeight + 65) == 1 )
break;
if( *(_DWORD *)(KcbAtLayerHeight + 40) != -1 )
{
i = (LIST_ENTRY *)KcbAtLayerHeight;
if( (_WORD)a3 )
{
if( *(_BYTE *)(KcbAtLayerHeight + 65) != v8 )
break;
}
}
}
return CmGetKCBCacheSecurity(i, v3, a3);
}Referenced by:
CmpCheckCreateAccessOnKcbStack
CmpCheckKcbStackAccess
CmpCheckKeyBodyAccess
CmpCheckKeyOwnerForPca
CmpCheckNotifyAccess
CmpDoAccessCheckOnLayeredSubtree
CmpGetSecurityDescriptorForKcbStack
CmpQueryKeySecurity
CmpSnapshotKcbStackSecurity