MiKernelWriteToExecutableMemory

NTSTATUS __stdcall MiKernelWriteToExecutableMemory(INT64 a1, INT64 a2, _EPROCESS *a3){
  _MMWSL_INSTANCE *VmWorkingSetList; 
  INT16 *v7; 
  char *v8; 
  _MMPTE *NextPteToAccessClear; 
  INT16 v10; 
  VOID *v11; 
  INT64 v12; 
  INT64 v13; 
  NTSTATUS v14; 
  INT64 v15; 
  INT64 v16; 
  __int64 v17; 
  INT64 v19; 

  VmWorkingSetList = a3->Vm.Instance.VmWorkingSetList;
  v7 = (INT16 *)(a1 + 56);
  v8 = (char *)MmGetPteBase() + ((*(_QWORD *)a1 >> 9) & 0x7FFFFFFFF8i64);
  NextPteToAccessClear = VmWorkingSetList[15].NextPteToAccessClear;
  v10 = MiReleaseFaultState(a1 + 56, 0x11u, 0i64);
  if( NtWaitLowEventPair(v11) >= 0 )
  {
    MiRelockFaultState(v7, v10, v12, v13, v19);
    if( NextPteToAccessClear == VmWorkingSetList[15].NextPteToAccessClear
      && ((*(_BYTE *)(a1 + 69) & 1) == 0 || MmIsAddressValidEx((INT64)v8)) )
    {
      LODWORD(v17) = MI_READ_PTE_LOCK_FREE((INT64)v8);
      return((a2 ^ v17) & 0xFFFFFFFFFFFFFFDFui64) != 0 ? 0xC0000434 : 0;
    }
    else
    {
      return -1073740748;
    }
  }
  else
  {
    MiForceCrashForInvalidAccess(a3);
    v14 = -1073739997;
    MiRelockFaultState(v7, v10, v15, v16, v19);
  }
  return v14;
}

Referenced by:

MiValidFault