CmpGetSubKeyCountForKeyNodeStack
INT64 __fastcall CmpGetSubKeyCountForKeyNodeStack(INT64 rcx0, INT64 *a2){
INT16 i;
__int16 v5;
int j;
int v7;
int v9;
__int16 a1[176];
memset(a1, 0i64, sizeof(a1));
CmpKeyEnumStackInitialize(a1);
for( i = *(_WORD *)rcx0; ; i = v5 - 1 )
{
if( i <= 0 )
{
j = *(_DWORD *)(*(_QWORD *)(rcx0 + 24) + 20i64) + *(_DWORD *)(*(_QWORD *)(rcx0 + 24) + 24i64);
LABEL_6:
*(_DWORD *)a2 = j;
v7 = 0;
goto LABEL_7;
}
if( *(_QWORD *)(CmpKeyNodeStackGetEntryAtLayerHeight(rcx0, i) + 16) )
break;
}
v7 = CmpKeyEnumStackStartFromKeyNodeStack(a1, (INT16 *)rcx0);
if( v7 >= 0 )
{
for( j = 0; ; ++j )
{
v9 = CmpKeyEnumStackAdvance(a1);
v7 = v9;
if( v9 == -2147483622 )
break;
if( v9 < 0 )
goto LABEL_7;
}
goto LABEL_6;
}
LABEL_7:
CmpKeyEnumStackCleanup((INT64)a1);
return(unsigned int)v7;
}Referenced by:
CmpGetSubKeyCountForKcbStack
CmpQueryKeyDataFromKeyNodeStack