#include <stdint.h>#include <stdbool.h>

Go to the source code of this file.
| bool emu_source_and_track_instr_info_cmp | ( | void * | a, | |
| void * | b | |||
| ) |
| void emu_source_and_track_instr_info_free | ( | struct emu_source_and_track_instr_info * | esantii | ) |
References emu_source_and_track_instr_info::instrstring.
Referenced by emu_source_and_track_instr_info_free_void().
| void emu_source_and_track_instr_info_free_void | ( | void * | x | ) |
References emu_source_and_track_instr_info_free().
Referenced by emu_source_instruction_graph_create().

| uint32_t emu_source_and_track_instr_info_hash | ( | void * | key | ) |
| struct emu_source_and_track_instr_info* emu_source_and_track_instr_info_new | ( | struct emu_cpu * | cpu, | |
| uint32_t | eip_before_instruction | |||
| ) | [read] |
References emu_instruction::cond_pos, emu_source_and_track_instr_info::cond_pos, CPU_DEBUG_FLAG_ISSET, emu_tracking_info::eflags, emu_source_and_track_instr_info::eip, emu_tracking_info::fpu, emu_instruction::has_cond_pos, emu_source_and_track_instr_info::has_cond_pos, emu_instruction::init, emu_source_and_track_instr_info::init, emu_cpu::instr, emu_cpu::instr_string, emu_source_and_track_instr_info::instrstring, instruction_size, instruction_string, emu_instruction::is_fpu, emu_instruction::need, emu_source_and_track_instr_info::need, emu_instruction::norm_pos, emu_source_and_track_instr_info::norm_pos, emu_tracking_info::reg, emu_instruction::source, emu_source_and_track_instr_info::source, emu_instruction::track, and emu_source_and_track_instr_info::track.
Referenced by emu_source_instruction_graph_create().
| void emu_track_and_source_free | ( | struct emu_track_and_source * | et | ) |
References emu_graph_free(), emu_hashtable_free(), emu_track_and_source::run_instr_graph, emu_track_and_source::run_instr_table, emu_track_and_source::static_instr_graph, and emu_track_and_source::static_instr_table.
Referenced by emu_shellcode_test().

| struct emu_track_and_source* emu_track_and_source_new | ( | void | ) | [read] |
References esp, emu_tracking_info::reg, and emu_track_and_source::track.
Referenced by emu_shellcode_test().
| int32_t emu_track_instruction_check | ( | struct emu * | e, | |
| struct emu_track_and_source * | et | |||
| ) |
References emu_tracking_info::eflags, emu_cpu_get(), esp, emu_tracking_info::fpu, emu_instruction::init, emu_cpu::instr, emu_instruction::is_fpu, emu_instruction::need, emu_tracking_info::reg, emu_track_and_source::track, and emu_instruction::track.
Referenced by emu_shellcode_run_and_track().

| void emu_tracking_info_clear | ( | struct emu_tracking_info * | eti | ) |
References esp, and emu_tracking_info::reg.
Referenced by emu_shellcode_run_and_track().
| void emu_tracking_info_copy | ( | struct emu_tracking_info * | from, | |
| struct emu_tracking_info * | to | |||
| ) |
| bool emu_tracking_info_covers | ( | struct emu_tracking_info * | a, | |
| struct emu_tracking_info * | b | |||
| ) |
Check if a instruction can satisfy the requirements of another instruction.
| a | ||
| b |
References emu_tracking_info::eflags, esp, emu_tracking_info::fpu, and emu_tracking_info::reg.
Referenced by emu_shellcode_run_and_track().
| void emu_tracking_info_debug_print | ( | struct emu_tracking_info * | a | ) |
References eflagm.
Referenced by emu_shellcode_run_and_track().
| void emu_tracking_info_diff | ( | struct emu_tracking_info * | a, | |
| struct emu_tracking_info * | b, | |||
| struct emu_tracking_info * | result | |||
| ) |
Calculate the logic difference between two instruction_infos and store the result.
| a | ||
| b | ||
| result |
References emu_tracking_info::eflags, emu_tracking_info::fpu, and emu_tracking_info::reg.
Referenced by emu_shellcode_run_and_track().
| void emu_tracking_info_free | ( | struct emu_tracking_info * | eti | ) |
Referenced by emu_shellcode_run_and_track().
| struct emu_tracking_info* emu_tracking_info_new | ( | void | ) | [read] |
References esp, and emu_tracking_info::reg.
Referenced by emu_shellcode_run_and_track().
1.6.1