diff options
Diffstat (limited to 'client/src/util')
| -rw-r--r-- | client/src/util/io.h | 10 | ||||
| -rw-r--r-- | client/src/util/syscalls.cpp | 2 |
2 files changed, 8 insertions, 4 deletions
diff --git a/client/src/util/io.h b/client/src/util/io.h index 400c089..03d6964 100644 --- a/client/src/util/io.h +++ b/client/src/util/io.h @@ -7,9 +7,10 @@ namespace io { template<typename... Args> void log(const std::string_view str, Args... params) { - SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN); + static auto handle = GetStdHandle(STD_OUTPUT_HANDLE); + SetConsoleTextAttribute(handle, FOREGROUND_GREEN); fmt::print("$> "); - SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_RED); + SetConsoleTextAttribute(handle, FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_RED); std::string msg{str}; msg.append("\n"); @@ -19,9 +20,10 @@ namespace io { template<typename... Args> void log_error(const std::string_view str, Args... params) { - SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED); + static auto handle = GetStdHandle(STD_OUTPUT_HANDLE); + SetConsoleTextAttribute(handle, FOREGROUND_RED); fmt::print("$> "); - SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_RED); + SetConsoleTextAttribute(handle, FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_RED); std::string msg{str}; msg.append("\n"); diff --git a/client/src/util/syscalls.cpp b/client/src/util/syscalls.cpp index e877932..96036a3 100644 --- a/client/src/util/syscalls.cpp +++ b/client/src/util/syscalls.cpp @@ -9,6 +9,8 @@ syscalls::syscalls() { m_call_table = VirtualAlloc(0, 0x100000, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE); std::memset(m_call_table, 0x90, 0x100000); + io::log("syscalls call table : {:#x}", uintptr_t(m_call_table)); + static auto nt = pe::virtual_image("ntdll.dll"); for (auto& exp : nt.exports()) { auto addr = exp.second; |