61 uint64_t STAR = ((uint64_t)
KERNEL_CS << 32) | ((uint64_t)(
USER_DS - 8) << 48);
FORCEINLINE int8_t InterlockedFetch8(volatile int8_t *target)
FORCEINLINE uint64_t __readmsr(uint32_t msr)
FORCEINLINE void __writemsr(uint32_t msr, uint64_t value)
#define IA32_KERNEL_GS_BASE
uint64_t(* SyscallHandler)(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, uint64_t)
void MtSetupSyscall(void)
SYSCALL_INIT_ENTRY SyscallTable[]
bool SyscallsAlreadyInitialized
void MtSyscallEntry(void)
MTSTATUS MtReadFile(IN HANDLE FileHandle, IN uint64_t FileOffset, OUT void *Buffer, IN size_t BufferSize, _Out_Opt size_t *BytesRead)
MTSTATUS MtTerminateProcess(IN HANDLE ProcessHandle, IN MTSTATUS ExitStatus)
MTSTATUS MtAllocateVirtualMemory(IN HANDLE ProcessHandle, _In_Opt _Out_Opt void **BaseAddress, IN size_t NumberOfBytes, IN uint8_t AllocationType)
MTSTATUS MtClose(IN HANDLE hObject)
MTSTATUS MtOpenProcess(IN uint32_t ProcessId, OUT PHANDLE ProcessHandle, IN ACCESS_MASK DesiredAccess)
MTSTATUS MtTerminateThread(IN HANDLE ThreadHandle, IN MTSTATUS ExitStatus)
MTSTATUS MtWriteFile(IN HANDLE FileHandle, IN uint64_t FileOffset, IN void *Buffer, IN size_t BufferSize, _Out_Opt size_t *BytesWritten)
MTSTATUS MtCreateFile(IN const char *path, IN ACCESS_MASK DesiredAccess, OUT PHANDLE FileHandleOut)