Theodosius v3.0
Jit linker, symbol mapper, and obfuscator
|
the routine class which is responsible for creating symbols for routines. if the routine is located inside a section with the name ".split" it will break functions into instruction symbols. More...
#include "routine.hpp"
Public Member Functions | |
routine_t (coff::symbol_t *sym, coff::image_t *img, coff::section_header_t *scn, std::vector< std::uint8_t > &fn, sym_type_t dcmp_type) | |
the explicit constructor for routine_t. More... | |
std::vector< decomp::symbol_t > | decompose () |
decompose the function into symbol(s). More... | |
coff::section_header_t * | scn () |
gets the section header of the section in which the symbol is located in. More... | |
std::vector< std::uint8_t > | data () |
gets the function bytes. More... | |
the routine class which is responsible for creating symbols for routines. if the routine is located inside a section with the name ".split" it will break functions into instruction symbols.
Definition at line 53 of file routine.hpp.
|
explicit |
the explicit constructor for routine_t.
sym | the coff symbol for the routine. |
img | the coff image which contains the symbol. |
scn | the section header of the section that contains the symbol. |
fn | the data (bytes) of the function. |
dcmp_type | the type of decomp to do. if this is sym_type_t::function then this class wont split the function up into individual instructions. |
Definition at line 34 of file routine.cpp.
std::vector< std::uint8_t > theo::decomp::routine_t::data | ( | ) |
gets the function bytes.
Definition at line 172 of file routine.cpp.
Referenced by decompose().
std::vector< decomp::symbol_t > theo::decomp::routine_t::decompose | ( | ) |
decompose the function into symbol(s).
Definition at line 41 of file routine.cpp.
References data(), theo::decomp::function, theo::decomp::symbol_t::hash(), theo::decomp::instruction, and theo::decomp::symbol_t::name().
coff::section_header_t * theo::decomp::routine_t::scn | ( | ) |
gets the section header of the section in which the symbol is located in.
Definition at line 168 of file routine.cpp.