MiProtectSharedUserPage
VOID __stdcall MiProtectSharedUserPage(){
_MMPTE *v0;
__int64 v1;
_MI_TB_FLUSH_LIST TbFlushList[48];
memset(TbFlushList, 0i64, 0xB8u);
v0 = MmGetPteBase() + 0xF78000000i64;
LODWORD(v1) = MI_READ_PTE_LOCK_FREE((INT64)v0);
if( v1 >= 0 || (BYTE1(v1) & 1) != *(&stru_140C4DB30 + 536) )
{
*(_QWORD *)&TbFlushList[6] = 0i64;
TbFlushList[2] = 20;
MiWriteValidPteNewProtection(
(INT64 *)v0,
v1 & 0xFFFFFFFFFFFFFEFFui64 | ((*(&stru_140C4DB30 + 536) & 1 | 0xFF80000000000000ui64) << 8));
MiInsertTbFlushEntry(TbFlushList, &KUSER_SHARED_DATA, 1ui64, 0i64);
MiFlushTbList(TbFlushList);
}
}Referenced by:
MiInitNucleus