10 outs <<
"\"" << std::hex <<
moduleStart <<
"\"" <<
",\n";
12 outs <<
"\"" << std::hex <<
moduleSize <<
"\"" <<
",\n";
15 outs <<
"\"" << peconv::get_file_name(
dumpFileName) <<
"\"" <<
",\n";
22 OUT_PADDED(outs, level,
"\"pattern_tags_file\" : ");
26 OUT_PADDED(outs, level,
"\"imports_file\" : ");
27 outs <<
"\"" << peconv::get_file_name(
impListFileName) <<
"\"" <<
",\n";
30 OUT_PADDED(outs, level,
"\"imp_rec_result\" : ");
33 OUT_PADDED(outs, level,
"\"imp_not_recovered_file\" : ");
38 OUT_PADDED(outs, level,
"\"iat_hooks_file\" : ");
43 outs <<
"\"" <<
mode_info <<
"\"" <<
",\n";
45 OUT_PADDED(outs, level,
"\"is_shellcode\" : ");
48 OUT_PADDED(outs, level,
"\"is_corrupt_pe\" : ");
61 size_t level = start_level + 1;
65 stream << std::dec << getPid() <<
",\n";
67 OUT_PADDED(stream, level,
"\"output_dir\" : \"");
69 if (minidumpPath.length()) {
70 OUT_PADDED(stream, level,
"\"minidump_path\" : \"");
78 stream << std::dec << countTotal() <<
",\n";
79 OUT_PADDED(stream, level + 1,
"\"dumped\" : ");
80 stream << std::dec << countDumped() <<
"\n";
82 stream << list_dumped_modules(level);
91 std::stringstream stream;
95 std::vector<ModuleDumpReport*>::const_iterator itr;
96 for (itr = moduleReports.begin(); itr != moduleReports.end(); ++itr) {
103 if (mod->
toJSON(stream, level + 2)) {
110 if (moduleReports.size()) {
std::string notRecoveredFileName
virtual const bool toJSON(std::stringstream &outs, size_t level)
std::string hooksTagFileName
std::string iatHooksFileName
std::string impListFileName
std::string patternsTagFileName
virtual bool toJSON(std::stringstream &stream, size_t level) const
std::string list_dumped_modules(size_t level) const
std::string escape_path_separators(std::string path)