#include <coff_analy.h>
Inheritance diagram for CoffAnalyser:
Public Member Functions | |
void | init (ht_coff_shared_data *Coff_shared, ht_streamfile *File) |
int | load (ht_object_stream *f) |
virtual void | done () |
virtual OBJECT_ID | object_id () const |
virtual void | beginAnalysis () |
virtual UINT | bufPtr (Address *Addr, byte *buf, int size) |
bool | convertAddressToRVA (Address *addr, RVA *r) |
virtual Address * | createAddress () |
Address * | createAddress32 (dword addr) |
virtual Assembler * | createAssembler () |
virtual const char * | getName () |
virtual char * | getSegmentNameByAddress (Address *Addr) |
virtual const char * | getType () |
virtual void | initCodeAnalyser () |
virtual void | initUnasm () |
virtual void | log (const char *msg) |
virtual Address * | nextValid (Address *Addr) |
virtual void | store (ht_object_stream *f) |
virtual int | queryConfig (int mode) |
virtual Address * | fileofsToAddress (FILEOFS fileofs) |
virtual FILEOFS | addressToFileofs (Address *Addr) |
virtual bool | validAddress (Address *Addr, tsectype action) |
Public Attributes | |
ht_coff_shared_data * | coff_shared |
ht_streamfile * | file |
Area * | validarea |
|
Implements Analyser. Definition at line 298 of file coff_analy.cc. References coff_rva_to_ofs(), coff_shared, convertAddressToRVA(), FILEOFS, INVALID_FILE_OFS, RVA, scinitialized, ht_coff_shared_data::sections, and validAddress(). Referenced by bufPtr(). |
|
|
Implements Analyser. Definition at line 234 of file coff_analy.cc. References addressToFileofs(), assert, buf, file, FILEOFS, INVALID_FILE_OFS, ht_stream::read(), ht_streamfile::seek(), size, and UINT. |
|
Definition at line 242 of file coff_analy.cc. References ATOM_ADDRESS_FLAT_32, ATOM_ADDRESS_X86_FLAT_32, Object::object_id(), and RVA. Referenced by addressToFileofs(), getSegmentNameByAddress(), and validAddress(). |
|
Implements Analyser. Definition at line 254 of file coff_analy.cc. References COFF_MACHINE_I386, COFF_MACHINE_I486, COFF_MACHINE_I586, coff_shared, and ht_coff_shared_data::coffheader. |
|
Definition at line 266 of file coff_analy.cc. References COFF_MACHINE_I386, COFF_MACHINE_I486, COFF_MACHINE_I586, coff_shared, and ht_coff_shared_data::coffheader. Referenced by beginAnalysis(), and fileofsToAddress(). |
|
Reimplemented from Analyser. Definition at line 281 of file coff_analy.cc. References COFF_MACHINE_I386, COFF_MACHINE_I486, COFF_MACHINE_I586, coff_shared, ht_coff_shared_data::coffheader, Object::init(), NULL, X86_ADDRSIZE32, and X86_OPSIZE32. |
|
Reimplemented from Analyser. Definition at line 80 of file coff_analy.cc. References Analyser::done(), Area::done(), and validarea. |
|
converts |FILEOFS fileaddr| to |Address| Reimplemented from Analyser. Definition at line 453 of file coff_analy.cc. References coff_ofs_to_rva(), coff_shared, createAddress32(), FILEOFS, RVA, and ht_coff_shared_data::sections. |
|
Reimplemented from Analyser. Definition at line 333 of file coff_analy.cc. References file, and ht_stream::get_desc(). |
|
Reimplemented from Analyser. Definition at line 315 of file coff_analy.cc. References coff_rva_is_valid(), coff_rva_to_section(), coff_shared, convertAddressToRVA(), NULL, RVA, coff_section_headers::sections, and ht_coff_shared_data::sections. Referenced by beginAnalysis(). |
|
Reimplemented from Analyser. Definition at line 341 of file coff_analy.cc. |
|
Definition at line 46 of file coff_analy.cc. References coff_shared, file, Analyser::init(), Area::init(), Analyser::setLocationTreeOptimizeThreshold(), Analyser::setSymbolTreeOptimizeThreshold(), and validarea. |
|
Reimplemented from Analyser. Definition at line 349 of file coff_analy.cc. References Analyser::initCodeAnalyser(). |
|
Implements Analyser. Definition at line 357 of file coff_analy.cc. References COFF_MACHINE_ALPHA, COFF_MACHINE_I386, COFF_MACHINE_I486, COFF_MACHINE_I586, COFF_MACHINE_POWERPC_BE, COFF_MACHINE_POWERPC_LE, COFF_MACHINE_R10000, COFF_MACHINE_R3000, COFF_MACHINE_R4000, COFF_MACHINE_UNKNOWN, coff_shared, ht_coff_shared_data::coffheader, DPRINTF, and warnbox. |
|
loads object from object stream.
Reimplemented from Analyser. Definition at line 66 of file coff_analy.cc. References GET_OBJECT, Analyser::load(), and validarea. |
|
Reimplemented from Analyser. Definition at line 403 of file coff_analy.cc. |
|
Implements Analyser. Definition at line 416 of file coff_analy.cc. References Area::findNext(), and validarea. |
|
Reimplemented from Object. Definition at line 226 of file coff_analy.cc. References ATOM_COFF_ANALYSER. |
|
Reimplemented from Analyser. Definition at line 438 of file coff_analy.cc. References Q_DO_ANALYSIS, Q_ENGAGE_CODE_ANALYSER, and Q_ENGAGE_DATA_ANALYSER. |
|
stores object. Reimplemented from Analyser. Definition at line 424 of file coff_analy.cc. References PUT_OBJECT, Analyser::store(), and validarea. |
|
Implements Analyser. Definition at line 466 of file coff_analy.cc. References coff_rva_is_physical(), coff_rva_to_section(), COFF_SCN_CNT_CODE, COFF_SCN_CNT_UNINITIALIZED_DATA, COFF_SCN_MEM_EXECUTE, COFF_SCN_MEM_READ, COFF_SCN_MEM_WRITE, coff_shared, convertAddressToRVA(), RVA, sccode, scinitialized, scread, screadwrite, scvalid, scwrite, coff_section_headers::sections, and ht_coff_shared_data::sections. Referenced by addressToFileofs(), and beginAnalysis(). |
|
Definition at line 30 of file coff_analy.h. Referenced by addressToFileofs(), beginAnalysis(), createAddress(), createAddress32(), createAssembler(), fileofsToAddress(), getSegmentNameByAddress(), init(), initUnasm(), and validAddress(). |
|
Definition at line 31 of file coff_analy.h. |
|
Definition at line 32 of file coff_analy.h. Referenced by beginAnalysis(), done(), init(), load(), nextValid(), and store(). |