class Rex::PeParsey::PeMemDump

Public Class Methods

new(isource, base) click to toggle source
# File lib/rex/peparsey/pe_memdump.rb, line 44
def initialize(isource, base)
  self._isource = isource
  self.header_section = Section.new(isource, base, nil)
  self.sections = [ self.header_section ]
  self.image_base = 0
end
new_from_file(filename, disk_backed = false) click to toggle source
# File lib/rex/peparsey/pe_memdump.rb, line 22
def self.new_from_file(filename, disk_backed = false)

  if filename[-4, 4] != '.rng'
    raise "Not a .rng file: #{filename}"
  end

  if filename[-9, 9] == "index.rng"
    raise SkipError
  end

  file = File.open(filename, 'rb')

  if disk_backed
    obj = ImageSource::Disk.new(file)
  else
    obj = ImageSource::Memory.new(file.read)
    obj.close
  end

  return self.new(obj, filename.gsub(/.*[\/\\]/, '')[0,8].hex)
end
new_from_string(data) click to toggle source
# File lib/rex/peparsey/pe_memdump.rb, line 18
def self.new_from_string(data)
  raise NotImplementError
end

Public Instance Methods

all_sections() click to toggle source
# File lib/rex/peparsey/pe_memdump.rb, line 51
def all_sections
  self.sections
end
ptr_64?() click to toggle source

No 64-bit support

# File lib/rex/peparsey/pe_memdump.rb, line 56
def ptr_64?
  false
end