17 stream <<
"hook_";
break;
19 stream <<
"addr_replaced_";
break;
62 std::cout << std::hex << startRva << std::endl;
72 outs <<
"\"" << std::hex << (
ULONGLONG)startRva <<
"\"" <<
",\n";
80 outs <<
"\"" << getFormattedName() <<
"\"";
88 if (this->hooked_func.length() > 0) {
91 outs <<
"\"" << hooked_func <<
"\"";
96 if (hookTargetModName.length() > 0) {
98 outs <<
"\"" << hookTargetModName <<
"\"" <<
",\n";
101 outs <<
"\"" << std::hex << (
ULONGLONG)hookTargetModule <<
"\"" <<
",\n";
103 outs <<
"\"" << std::hex << (
ULONGLONG)(hookTargetVA - hookTargetModule) <<
"\"" <<
",\n";
105 outs << std::dec << (
ULONGLONG)this->isTargetSuspicious <<
"\n";
119 if (
func ==
nullptr) {
122 this->hooked_func =
func->nameToString();
128 std::vector<Patch*>::iterator
itr;
143 std::vector<Patch*>::iterator
itr;
161 std::vector<Patch*>::iterator
itr;
173 std::vector<Patch*>::iterator
itr;
std::string getFormattedName()
std::string hookTargetModName
bool resolveHookedExport(peconv::ExportsMapper &expMap)
const bool toTAG(std::ofstream &patch_report, const char delimiter)
const bool toJSON(std::stringstream &outs, size_t level, bool short_info)
ULONGLONG hookTargetModule
size_t checkForHookedExports(peconv::ExportsMapper &expMap)
std::vector< Patch * > patches
const bool toJSON(std::stringstream &outs, size_t level, bool short_info)
const size_t toTAGs(std::ofstream &patch_report, const char delimiter)
size_t fill_iat(BYTE *vBuf, size_t vBufSize, IN const peconv::ExportsMapper *exportsMap, IN OUT IATBlock &iat, IN ThunkFoundCallback *callback)