29 bool insert(DWORD rva, ULONGLONG funcAddr)
31 rvaToFuncVA[rva] = funcAddr;
32 funcAddresses.insert(funcAddr);
29 bool insert(DWORD rva, ULONGLONG funcAddr) {
…}
39 bool makeCoverage(IN
const peconv::ExportsMapper* exportsMap);
48 return rvaToFuncVA.size();
57 bool fillNamesSpace(
const BYTE* buf_start,
size_t buf_size, DWORD bufRVA,
bool is64b);
69 std::string dllFullName;
70 std::set<ULONGLONG> funcAddresses;
71 std::map<DWORD, ULONGLONG> rvaToFuncVA;
73 peconv::ImportedDllCoverage *cov;
80 if (!lhs || !rhs)
return false;
108 bool append(DWORD rva, ULONGLONG functionVA,
const peconv::ExportedFunc *exp)
110 if (!exp)
return false;
119 if ((series->
endOffset +
sizeof(rva)) == rva) {
128 mySeries->
insert(rva, functionVA);
108 bool append(DWORD rva, ULONGLONG functionVA,
const peconv::ExportedFunc *exp) {
…}
153 IATThunksSeriesSet::iterator itr;
160 bool makeCoverage(IN
const peconv::ExportsMapper* exportsMap);
181 std::map<ULONGLONG, const peconv::ExportedFunc*>
functions;
IATBlock(bool _is64bit, DWORD _iat_offset)
std::map< ULONGLONG, const peconv::ExportedFunc * > functions
friend class ImpReconstructor
size_t countThunks() const
bool operator<(const IATBlock &other) const
bool append(DWORD rva, ULONGLONG functionVA, const peconv::ExportedFunc *exp)
bool makeCoverage(IN const peconv::ExportsMapper *exportsMap)
IATThunksSeriesSet thunkSeries
std::map< ULONGLONG, ULONGLONG > addrToFunctionVA
IATThunksSeriesSet splitSeries(IN IATThunksSeries *notCoveredSeries, IN const peconv::ExportsMapper &exportsMap)
bool makeCoverage(IN const peconv::ExportsMapper *exportsMap)
IATThunksSeries(DWORD start_offset)
bool insert(DWORD rva, ULONGLONG funcAddr)
bool operator<(const IATThunksSeries &other) const
size_t sizeOfNamesSpace(bool is64b)
bool fillNamesSpace(const BYTE *buf_start, size_t buf_size, DWORD bufRVA, bool is64b)
std::map< DWORD, ULONGLONG > getRvaToFuncMap()
std::set< IATThunksSeries *, IATThunksSeriesPtrCompare > IATThunksSeriesSet
bool operator()(const IATThunksSeries *lhs, const IATThunksSeries *rhs) const