RtlRemoveDynamicEnforcedAddressRange
INT64 __fastcall RtlRemoveDynamicEnforcedAddressRange(RTL_BALANCED_NODE **a1, INT64 a2, INT64 a3){
__int64 *v3;
int v7;
INT64 v9;
__int128 v10;
INT64 v11;
INT64 v12;
v9 = 0i64;
v3 = (__int64 *)*a1;
v11 = a2;
v12 = a3;
v10 = 0i64;
if( !v3 )
return 3221226021i64;
do
{
v7 = RtlpDynamicEnforcedAddressRangesTreeCompare((INT64)&v9, (INT64)v3);
if( v7 >= 0 )
{
if( v7 <= 0 )
break;
v3 = (__int64 *)v3[1];
}
else
{
v3 = (__int64 *)*v3;
}
}
while( v3 );
if( !v3 )
return 3221226021i64;
if( v3[3] != a2 || v3[4] != a3 )
return 3221225496i64;
RtlAvlRemoveNode((unsigned __int64 *)a1, v3);
ExFreePoolWithTag(v3, 0);
return 0i64;
}Referenced by:
PspProcessDynamicEnforcedAddressRanges