diff options
| author | auth12 <[email protected]> | 2020-07-28 08:09:02 -0700 |
|---|---|---|
| committer | auth12 <[email protected]> | 2020-07-28 08:09:02 -0700 |
| commit | d4e2fe3f1a1d6d89e9110fa1361e942f57812e51 (patch) | |
| tree | 2e602ce164be6baf0281ed73086701cb8ae0ff11 /client/src/util | |
| parent | Process class redesign. (diff) | |
| download | loader-d4e2fe3f1a1d6d89e9110fa1361e942f57812e51.tar.xz loader-d4e2fe3f1a1d6d89e9110fa1361e942f57812e51.zip | |
Added server support for both x64 and x32 images with automatic selection.
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; |