diff --git a/Source/AuProcAddresses.NT.cpp b/Source/AuProcAddresses.NT.cpp index bf5493b8..a9432df0 100644 --- a/Source/AuProcAddresses.NT.cpp +++ b/Source/AuProcAddresses.NT.cpp @@ -87,6 +87,7 @@ namespace Aurora ADD_GET_PROC(Nt, ZwSetTimerResolution) ADD_GET_PROC(Nt, NtQueryInformationProcess) ADD_GET_PROC(Nt, NtNotifyChangeDirectoryFile) + ADD_GET_PROC(Nt, NtTerminateProcess) ADD_GET_PROC_BI(Kernel32, KernelBase, VirtualAlloc2) ADD_GET_PROC_BI(Kernel32, KernelBase, MapViewOfFile3) @@ -249,7 +250,12 @@ namespace Aurora } else { - TerminateProcess(GetCurrentProcess(), 0); + if (pNtTerminateProcess) + { + pNtTerminateProcess((HANDLE)-1, 0x0); + } + + ::TerminateProcess(::GetCurrentProcess(), 0); } } } \ No newline at end of file diff --git a/Source/AuProcAddresses.NT.hpp b/Source/AuProcAddresses.NT.hpp index f33f5e1f..1ba7de93 100644 --- a/Source/AuProcAddresses.NT.hpp +++ b/Source/AuProcAddresses.NT.hpp @@ -139,6 +139,11 @@ namespace Aurora BOOLEAN WatchTree ); + inline NTSTATUS(__stdcall *pNtTerminateProcess)( + HANDLE ProcessHandle, + NTSTATUS ExitStatus + ); + inline BOOL(__stdcall *pGetSystemCpuSetInformation)( PSYSTEM_CPU_SET_INFORMATION Information, ULONG BufferLength,