parent
7598920355
commit
3e28fedf4d
@ -1,3 +1,6 @@
|
|||||||
[submodule "dependencies/unicorn"]
|
[submodule "dependencies/unicorn"]
|
||||||
path = dependencies/unicorn
|
path = dependencies/unicorn
|
||||||
url = https://github.com/unicorn-engine/unicorn.git
|
url = https://github.com/unicorn-engine/unicorn.git
|
||||||
|
[submodule "dependencies/cli-parser"]
|
||||||
|
path = dependencies/cli-parser
|
||||||
|
url = https://githacks.org/_xeroxz/cli-parser.git
|
||||||
|
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 1aedaf8bb7f383f54b7cd498767611535526da85
|
@ -1,16 +0,0 @@
|
|||||||
#include <iostream>
|
|
||||||
#include <unicorn/unicorn.h>
|
|
||||||
|
|
||||||
int __cdecl main(int argc, const char* argv[])
|
|
||||||
{
|
|
||||||
uc_err err;
|
|
||||||
uc_engine* uc;
|
|
||||||
|
|
||||||
err = uc_open(UC_ARCH_X86, UC_MODE_64, &uc);
|
|
||||||
|
|
||||||
if (err)
|
|
||||||
{
|
|
||||||
std::printf("[!] uc open failed with: %u\n", err);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
}
|
|
@ -0,0 +1,31 @@
|
|||||||
|
#include <iostream>
|
||||||
|
#include <unicorn/unicorn.h>
|
||||||
|
#include <cli-parser.hpp>
|
||||||
|
|
||||||
|
int __cdecl main(int argc, const char* argv[])
|
||||||
|
{
|
||||||
|
argparse::argument_parser_t parser("uc-tracer",
|
||||||
|
"VMProtect 2 Virtual Instruction Tracer Using Unicorn");
|
||||||
|
|
||||||
|
parser.add_argument()
|
||||||
|
.name("--vmentry").required(true)
|
||||||
|
.description("relative virtual address to a vm entry...");
|
||||||
|
|
||||||
|
parser.add_argument()
|
||||||
|
.name("--vmpbin").required(true)
|
||||||
|
.description("path to unpacked virtualized binary...");
|
||||||
|
|
||||||
|
parser.add_argument()
|
||||||
|
.name("--imagebase").required("true")
|
||||||
|
.description("image base from optional PE header...");
|
||||||
|
|
||||||
|
auto result = parser.parse(argc, argv);
|
||||||
|
|
||||||
|
if (result)
|
||||||
|
{
|
||||||
|
std::printf("[!] error parsing commandline arguments... reason = %s\n",
|
||||||
|
result.what().c_str());
|
||||||
|
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue