MmMapApiSetView
NTSTATUS __stdcall MmMapApiSetView(_EPROCESS *TargetProcess){
_EJOB *ProcessServerSilo;
_LOADER_PARAMETER_BLOCK *v3;
NTSTATUS result;
NTSTATUS v5;
__int64 v6;
__int64 *v7;
__int16 v8;
ProcessServerSilo = (_EJOB *)PsGetProcessServerSilo((__int64)TargetProcess);
if( PsIsHostSilo(ProcessServerSilo) )
v3 = *(_LOADER_PARAMETER_BLOCK **)LoaderBlock;
else
v3 = (_LOADER_PARAMETER_BLOCK *)PsGetServerSiloGlobals((__int64)ProcessServerSilo)[129];
result = MmMapViewOfSection(v3, (UINT64)TargetProcess);
v5 = result;
if( result >= 0 )
{
*(_QWORD *)(*((_QWORD *)TargetProcess + 170) + 104i64) = 0i64;
v6 = 0i64;
v7 = (__int64 *)*((_QWORD *)TargetProcess + 176);
if( v7 )
v6 = *v7;
if( v6 )
{
if( v7 && ((v8 = *((_WORD *)v7 + 4), v8 == 332) || v8 == 452) )
*(_DWORD *)(v6 + 56) = 0;
else
*(_QWORD *)(v6 + 104) = 0i64;
}
return v5;
}
return result;
}Referenced by:
PspAllocateProcess
PspSetupUserProcessAddressSpace