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