diff options
Diffstat (limited to 'courgette/disassembler_win32_x86.h')
-rw-r--r-- | courgette/disassembler_win32_x86.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/courgette/disassembler_win32_x86.h b/courgette/disassembler_win32_x86.h index c22872b..597f841f 100644 --- a/courgette/disassembler_win32_x86.h +++ b/courgette/disassembler_win32_x86.h @@ -29,6 +29,7 @@ class DisassemblerWin32X86 : public Disassembler { // Disassembler interfaces. RVA FileOffsetToRVA(FileOffset file_offset) const override; FileOffset RVAToFileOffset(RVA rva) const override; + RVA PointerToTargetRVA(const uint8_t* p) const override; ExecutableType kind() const override { return EXE_WIN_32_X86; } bool ParseHeader() override; bool Disassemble(AssemblyProgram* target) override; @@ -46,6 +47,10 @@ class DisassemblerWin32X86 : public Disassembler { // Returns Section containing the relative virtual address, or null if none. const Section* RVAToSection(RVA rva) const; + // (4) -> (5) (see AddressTranslator comment): Returns the RVA of the VA + // specified by |address|, or kNoRVA if |address| lies outside of the image. + RVA Address32ToRVA(uint32_t address) const; + static std::string SectionName(const Section* section); protected: |