Пример #1
0
 def _ConvertFromRVA(self):
     rva = self._rva.GetValue()
     if not rva:
         rva = 0
     else:
         rva = int(rva, 16)
     
     try:
         offset = pedata.fromRvaToOffset(self._pe, rva)
         va = rva + self._pe.OPTIONAL_HEADER.ImageBase
         
         idx = pedata.guess_section_from_rva(self._pe, rva)
         if idx == -1:
             section = "Header"
         else:
             section = self._pe.sections[idx].Name
             
         bytes = get_hex_bytes(self._pe.get_data(rva, 16))
         
         self.PrintDataInCtrls(rva, va, offset, section, bytes)
         
     except Exception, e:
         #import traceback
         #traceback.print_exc()
         self._ShowError(e)
Пример #2
0
    def _ConvertFromVA(self):
        va = self._va.GetValue()
        if not va:
            va = 0
        else:
            va = int(va, 16)
            
        try:
            rva = va - self._pe.OPTIONAL_HEADER.ImageBase
            offset = pedata.fromRvaToOffset(self._pe, rva)

            idx = pedata.guess_section_from_rva(self._pe, rva)
            if idx == -1:
                section = "HEADER"
            else:
                section = self._pe.sections[idx].Name

            bytes = get_hex_bytes(self._pe.get_data(rva, 16))
            
            self.PrintDataInCtrls(rva, va, offset, section, bytes)
            
        except Exception, e:
            self._ShowError(e)