MiInitializeColorBase
VOID __stdcall MiInitializeColorBase(VOID *RealVa, _MI_COLOR_BASE *ColorBase){
_MI_COLOR_BASE *v2;
_MI_COLOR_BASE *v3;
unsigned int v4;
INT64 v6;
INT64 v7;
INT16 v8;
_MMSUPPORT_FULL *SessionVm;
v3 = v2;
v4 = (unsigned int)ColorBase;
if( MiGetSystemRegionType((UINT64)RealVa) == 1 )
{
SessionVm = (_MMSUPPORT_FULL *)MiGetSessionVm(v7, v6, v8);
}
else if( (unsigned __int64)RealVa > 0x7FFFFFFEFFFFi64
&& ((unsigned __int64)RealVa < *(&stru_140C4DB30 + 937) || (unsigned __int64)RealVa > *(&stru_140C4DB30 + 175))
&& (RealVa < MmGetPteBase() || RealVa > MmGetPteLimit()) )
{
SessionVm = 0i64;
}
else
{
SessionVm = &KeGetCurrentThread()->ApcState.Process->Vm;
}
MiInitializePageColorBase(&SessionVm->Instance, v4, v3);
}Referenced by:
MiDemoteValidLargePageOneLevel
MiMakeZeroedPageTablesEx
MmCreateShadowMapping