Class: Relyze::ExecutableFileModel::CodeBlock
- Inherits:
-
BasicBlock
- Object
- BasicBlock
- Relyze::ExecutableFileModel::CodeBlock
- Defined in:
- C:/Program Files/Relyze/lib/relyze/core/executable_file_model.rb
Instance Method Summary collapse
-
#instruction(rva) ⇒ Relyze::ExecutableFileModel::Instruction?
Get an Instruction from this block which starts at a specific RVA location.
-
#instructions(rva = nil) {|inst| ... } ⇒ Array<Relyze::ExecutableFileModel::Instruction>?
Get every instruction in this code block, in ascending RVA locations.
-
#reprocess ⇒ Relyze::ExecutableFileModel::BasicBlock
Re-process a code blocks instructions in case any of the instructions op-codes have changed.
-
#reverse_instructions(rva = nil) {|inst| ... } ⇒ Array<Relyze::ExecutableFileModel::Instruction>?
Get every instruction in this code block, in descending RVA locations.
-
#to_code ⇒ CodeBlock
Convert this block to a code block.
-
#to_data ⇒ DataBlock
Convert this block to a data block, if possible.
-
#type ⇒ Symbol
Get this block type, :code.
Methods inherited from BasicBlock
#add_reference, #adjacent, #code?, #color, #color=, #custom_name?, #data?, #datatype, #datatype=, #display_name, #join, #length, #name, #name=, #nearest_boundary, #next_boundary, #previous, #previous_boundary, #references, #remove_reference, #render, #rva, #segment, #set_datatype, #split, #to_s
Instance Method Details
#instruction(rva) ⇒ Relyze::ExecutableFileModel::Instruction?
Get an Instruction from this block which starts at a specific RVA location.
1189 1190 1191 |
# File 'C:/Program Files/Relyze/lib/relyze/core/executable_file_model.rb', line 1189 def instruction( rva ) return nil end |
#instructions(rva = nil) {|inst| ... } ⇒ Array<Relyze::ExecutableFileModel::Instruction>?
Get every instruction in this code block, in ascending RVA locations.
1171 1172 1173 |
# File 'C:/Program Files/Relyze/lib/relyze/core/executable_file_model.rb', line 1171 def instructions( rva=nil ) return nil end |
#reprocess ⇒ Relyze::ExecutableFileModel::BasicBlock
Re-process a code blocks instructions in case any of the instructions op-codes have changed. This assumes the code block will remain the same size. All existing instructions and their references will be destroyed and new ones created.
1210 1211 1212 |
# File 'C:/Program Files/Relyze/lib/relyze/core/executable_file_model.rb', line 1210 def reprocess return nil end |
#reverse_instructions(rva = nil) {|inst| ... } ⇒ Array<Relyze::ExecutableFileModel::Instruction>?
Get every instruction in this code block, in descending RVA locations.
1181 1182 1183 |
# File 'C:/Program Files/Relyze/lib/relyze/core/executable_file_model.rb', line 1181 def reverse_instructions( rva=nil ) return nil end |
#to_code ⇒ CodeBlock
Convert this block to a code block.
1154 1155 1156 |
# File 'C:/Program Files/Relyze/lib/relyze/core/executable_file_model.rb', line 1154 def to_code return self end |
#to_data ⇒ DataBlock
Convert this block to a data block, if possible.
1161 1162 1163 |
# File 'C:/Program Files/Relyze/lib/relyze/core/executable_file_model.rb', line 1161 def to_data return nil end |
#type ⇒ Symbol
Get this block type, :code
1147 1148 1149 |
# File 'C:/Program Files/Relyze/lib/relyze/core/executable_file_model.rb', line 1147 def type return :code end |