parent
7598920355
commit
3e28fedf4d
@ -1,3 +1,6 @@
|
||||
[submodule "dependencies/unicorn"]
|
||||
path = dependencies/unicorn
|
||||
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