RtlGetRvaListIteratorState
INT64 __fastcall RtlGetRvaListIteratorState(INT64 a1, INT64 a2){
unsigned int v2;
unsigned int v3;
int v4;
unsigned int v5;
int v6;
__int64 v7;
__int64 v8;
int v9;
unsigned int *v11;
v2 = *(_DWORD *)(a1 + 8);
v3 = 0;
if( v2 <= 1 )
{
if( v2 == 1 )
{
v11 = *(unsigned int **)(a1 + 48);
if( v11 )
return *v11;
else
return 1;
}
}
else
{
v4 = *(_DWORD *)(a2 + 4);
v5 = 0;
v6 = v2 * v4;
v7 = 0i64;
do
{
if( _bittest64(*(const signed __int64 **)(a1 + 40), v6 + v5) )
{
v8 = *(_QWORD *)(a1 + 48);
if( v8 )
v9 = *(_DWORD *)(v7 + v8);
else
v9 = 1 << v5;
v3 |= v9;
}
++v5;
v7 += 4i64;
}
while( v5 < v2 );
}
return v3;
}Referenced by:
RtlEnumRvaListFirst