Skip to content

cycyrild/nt-call

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nt-call

Minimal NT syscall dispatcher for Windows x64.

nt-call provides a generic interface for invoking NT system calls using:

  • runtime syscall numbers
  • external syscall; ret stubs
  • a single syscall bridge

Use Cases

  • Direct NT syscall dispatching
  • Runtime-oriented alternative to SysWhispers-like stub generation

Example

HMODULE ntdll = GetModuleHandleW(L"ntdll.dll");

FARPROC pNtClose =
    GetProcAddress(ntdll, "NtClose");

NTSTATUS status =
    nt::NtCall<decltype(&NtClose)>(
        0x000F,                     // Syscall number
        (uintptr_t)pNtClose + 0x12, // "syscall; ret" stub
        handle                      // NtClose(HANDLE)
    );

About

Minimal Windows x64 NT syscall dispatcher

Topics

Resources

Stars

Watchers

Forks

Releases

Contributors

Languages