9#define SEC_SHOW_LOCK false
75 DWORD
getRawPtr() {
return header ? header->PointerToRawData : 0; }
83 if (!header)
return false;
86 header->Characteristics = newCharacteristics;
111 static std::map<DWORD, QString> s_secHdrCharact;
112 IMAGE_SECTION_HEADER *header;
133 virtual QString
getName() {
return "Section Hdrs"; }
149 for (
auto itr =
entries.begin(); itr !=
entries.end(); ++itr, ++indx) {
178 virtual bool loadNextEntry(
size_t entryNum);
181 std::map<offset_t, SectionHdrWrapper*> vSec;
182 std::map<offset_t, SectionHdrWrapper*> rSec;
const size_t INVALID_ENTRYNUM
virtual bufsize_t getContentSize()
virtual void * getSubfieldPtr(size_t fieldId, size_t subField)
std::vector< ExeNodeWrapper * > entries
virtual bufsize_t getSubfieldSize(size_t fieldId, size_t subField)
SectHdrsWrapper(PEFile *pe)
virtual bufsize_t getFieldSize(size_t fieldId, size_t subField)
SectionHdrWrapper * _getSecHdr(size_t index)
SectionHdrWrapper * getSecHdr(size_t index)
void printSectionsMapping(Executable::addr_type aType)
ExeNodeWrapper * addEntry(ExeNodeWrapper *entry)
virtual bufsize_t getSize()
virtual QString getFieldName(size_t fieldId)
SectionHdrWrapper * getSecHdrAtOffset(offset_t offset, Executable::addr_type addrType, bool roundup, bool verbose=false)
virtual void reloadMapping()
static size_t SECT_COUNT_MAX
virtual void * getFieldPtr(size_t fieldId, size_t subField)
size_t getSecIndex(SectionHdrWrapper *sec) const
virtual QString getName()
static size_t SECT_INVALID_INDEX
virtual size_t getFieldsCount()
virtual size_t getFieldsCount()
static std::vector< DWORD > splitCharacteristics(DWORD characteristics)
DWORD getCharacteristics()
bufsize_t getMappedVirtualSize()
virtual QString getName()
bool setCharacteristics(DWORD newCharacteristics)
SectionHdrWrapper(PEFile *pe, size_t sectionNumber)
virtual QString getFieldName(size_t fieldId)
offset_t getContentDeclaredOffset(Executable::addr_type aType)
static void initSecCharacter(std::map< DWORD, QString > &secHdrCharact)
SectionHdrWrapper(PEFile *pe, IMAGE_SECTION_HEADER *v_header)
virtual void * getFieldPtr(size_t fieldId, size_t subField=FIELD_NONE)
virtual size_t getSubFieldsCount()
bufsize_t getContentDeclaredSize(Executable::addr_type aType)
virtual Executable::addr_type containsAddrType(size_t fieldId, size_t subField=FIELD_NONE)
static QString translateCharacteristics(DWORD charact)
offset_t getContentEndOffset(Executable::addr_type aType, bool roundup)
offset_t getContentOffset(Executable::addr_type aType, bool useMapped=true)
static QString getSecHdrAccessRightsDesc(DWORD characteristics)
bufsize_t getMappedRawSize()
static const size_t SECNAME_LEN
virtual WrappedValue::data_type containsDataType(size_t fieldId, size_t subField=FIELD_NONE)
virtual bufsize_t getSize()