KeOutPageEnclavePage

NTSTATUS __fastcall KeOutPageEnclavePage(__int64 a1, __int64 a2){
  unsigned int v3; 
  __int64 v5; 

  memset((VOID *)(((unsigned __int64)&v5 & 0xFFFFFFFFFFFFFF80ui64) + 128), 0i64, 0x80u);
  if( ((unsigned __int64)KeFeatureBits & 0x10000000000i64) == 0 )
    return -1073741637;
  *(_QWORD *)((unsigned __int64)&v5 & 0xFFFFFFFFFFFFFF80ui64) = 0i64;
  *(_QWORD *)(((unsigned __int64)&v5 & 0xFFFFFFFFFFFFFF80ui64) + 0x18) = 0i64;
  *(_QWORD *)(((unsigned __int64)&v5 & 0xFFFFFFFFFFFFFF80ui64) + 0x10) = ((unsigned __int64)&v5 & 0xFFFFFFFFFFFFFF80ui64)
                                                                       + 128;
  *(_QWORD *)(((unsigned __int64)&v5 & 0xFFFFFFFFFFFFFF80ui64) + 8) = a2;
  v3 = KiEncls(0xBui64);
  return KiEnclsStatus(v3);
}

Referenced by:

MiDecommitHardwareEnclavePages