class Metasm::Bflt::Header
Public Instance Methods
decode(exe)
click to toggle source
Calls superclass method
# File metasm/exe_format/bflt.rb, line 26 def decode(exe) super(exe) case @magic when MAGIC else raise InvalidExeFormat, "Bad bFLT signature #@magic" end if @rev >= 0x01000000 and (@rev & 0x00f0ffff) == 0 puts "Bflt: probable wrong endianness, retrying" if $VERBOSE exe.endianness = { :big => :little, :little => :big }[exe.endianness] exe.encoded.ptr -= 4*16 super(exe) end end
set_default_values(exe)
click to toggle source
Calls superclass method
# File metasm/exe_format/bflt.rb, line 42 def set_default_values(exe) @magic ||= MAGIC @rev ||= 4 @entry ||= 0x40 @data_start ||= 0x40 + exe.text.length if exe.text @data_end ||= @data_start + exe.data.data.length if exe.data @bss_end ||= @data_start + exe.data.length if exe.data @stack_size ||= 0x1000 @reloc_start ||= @data_end @reloc_count ||= exe.reloc.length @flags ||= [] super(exe) end