DmrpRmrrTreeAddRegionToDevice
NTSTATUS __stdcall DmrpRmrrTreeAddRegionToDevice(INT64 a1, INT64 a2, INT64 a3){
INT64 v3;
_QWORD *v5;
NTSTATUS v7;
_QWORD *v8;
_QWORD *v9;
INT64 v11;
v3 = a1 + 16;
v5 = *(_QWORD **)(a1 + 16);
while( v5 != (_QWORD *)v3 )
{
a1 = (INT64)v5;
v5 = (_QWORD *)*v5;
if( *(_QWORD *)(a1 + 16) == a2 && *(_QWORD *)(a1 + 24) == a3 )
return 0;
}
v7 = 0;
v11 = 0i64;
ExtEnvAllocateMemory(a1, 0x20ui64, &v11);
v8 = (_QWORD *)v11;
if( !v11 )
return -1073741670;
*(_QWORD *)(v11 + 16) = a2;
v8[3] = a3;
v9 = *(_QWORD **)(v3 + 8);
if( *v9 != v3 )
__fastfail(3u);
*v8 = v3;
v8[1] = v9;
*v9 = v8;
*(_QWORD *)(v3 + 8) = v8;
return v7;
}Referenced by:
DmrEnumerateRmrrDomains