Rizin
unix-like reverse engineering framework and cli tools
|
#include <rz_analysis.h>
Public Attributes | |
char * | name |
int | bits |
int | type |
const char * | cc |
ut64 | addr |
HtUP * | labels |
HtPP * | label_addrs |
RzPVector | vars |
RzType * | ret_type |
HtUP * | inst_vars |
ut64 | reg_save_area |
st64 | bp_off |
st64 | stack |
int | maxstack |
int | ninstr |
bool | is_pure |
bool | is_variadic |
bool | has_changed |
bool | bp_frame |
bool | is_noreturn |
ut8 * | fingerprint |
int | argnum |
size_t | fingerprint_size |
RzAnalysisDiff * | diff |
RzList * | bbs |
RzAnalysisFcnMeta | meta |
RzList * | imports |
struct rz_analysis_t * | analysis |
Definition at line 239 of file rz_analysis.h.
ut64 rz_analysis_function_t::addr |
Definition at line 244 of file rz_analysis.h.
Referenced by __core_analysis_fcn(), __fcns(), __rebase_everything(), agraph_update_title(), analysis_fcn_data(), analysis_fcn_data_gaps(), analysis_graph_to(), calc_reachable_and_remove_block(), check_purity(), cmd_analysis_graph(), core_analysis_graph_nodes(), core_analysis_var_list_show(), DEFINE_HANDLE_TS_FCN_AND_SYMBOL(), draw_graph_nodes(), ds_print_bbline(), ds_print_lines_left(), ds_show_xrefs(), fcn_list_bbs(), fcn_print_info(), fcn_takeover_block_recursive_followthrough_cb(), filter(), flirt_module_new(), function_list_print(), function_list_print_as_cmd(), function_list_print_quiet(), function_list_print_to_table(), function_print_calls(), function_print_to_json(), function_rename(), get_cgnodes(), graph_construct_nodes(), is_skippable_addr(), list_vars(), meta_variable_comment_print(), module_match_buffer(), node_match_functions(), num_callback(), on_fcn_delete(), on_fcn_new(), on_fcn_rename(), print_item(), propagate_types_among_used_variables(), purity_checked(), reanalyze_fcns_cb(), run_basic_block_analysis(), rz_analysis_add_function(), rz_analysis_aefa(), rz_analysis_basic_block_list_handler(), rz_analysis_block_chop_noreturn(), rz_analysis_create_function(), rz_analysis_diff_fcn(), rz_analysis_fcn(), rz_analysis_fcn_count(), rz_analysis_fcn_del(), rz_analysis_fcn_next(), rz_analysis_function_address_handler(), rz_analysis_function_all_opcode_stat_handler(), rz_analysis_function_complexity(), rz_analysis_function_describe_offset_handler(), rz_analysis_function_free(), rz_analysis_function_get_var_reg_at(), rz_analysis_function_get_var_stackptr_at(), rz_analysis_function_get_vars_used_at(), rz_analysis_function_new(), rz_analysis_function_relocate(), rz_analysis_function_resize(), rz_analysis_function_size_from_entry(), rz_analysis_function_type_matching_handler(), rz_analysis_function_vars_dis_refs_handler(), rz_analysis_functions_map_handler(), rz_analysis_get_fcn_in(), rz_analysis_get_fcn_in_bounds(), rz_analysis_var_get_access_at(), rz_analysis_var_get_dst_var(), rz_analysis_var_remove_access_at(), rz_analysis_var_set_access(), rz_cmd_search(), rz_core_analysis_callgraph(), rz_core_analysis_coverage_count(), rz_core_analysis_fcn(), rz_core_analysis_fcn_name(), rz_core_analysis_flag_every_function(), rz_core_analysis_function_add(), rz_core_analysis_function_rename(), rz_core_analysis_function_set_signature(), rz_core_analysis_graph(), rz_core_analysis_types_propagation(), rz_core_cmd_foreach(), rz_core_cmd_foreach3(), rz_core_link_stroff(), rz_core_print_function_disasm_json(), rz_core_recover_vars(), rz_core_seek_next(), rz_core_seek_prev(), rz_core_visual_analysis(), rz_core_visual_cmd(), rz_core_visual_define(), rz_core_visual_graph(), rz_core_visual_title(), rz_core_visual_view_graph(), rz_debug_thread_list(), rz_print_areas_no_functions_handler(), rz_seek_function_current_handler(), rz_seek_function_handler(), rz_sign_flirt_node_new(), set_fcn_name_from_flag(), skip_hp(), update_analysis(), var_accesses_list(), var_functions_show(), xrefs_graph(), and xrefs_graph_fcn_start_json().
struct rz_analysis_t* rz_analysis_function_t::analysis |
Definition at line 267 of file rz_analysis.h.
Referenced by calc_reachable_and_remove_block(), check_purity(), run_basic_block_analysis(), rz_analysis_function_add_block(), rz_analysis_function_check_bp_use(), rz_analysis_function_complexity(), rz_analysis_function_contains(), rz_analysis_function_cost(), rz_analysis_function_delete(), rz_analysis_function_free(), rz_analysis_function_get_var_fields(), rz_analysis_function_get_xrefs_from(), rz_analysis_function_get_xrefs_to(), rz_analysis_function_new(), rz_analysis_function_relocate(), rz_analysis_function_rename(), rz_analysis_function_resize(), rz_analysis_function_set_var(), rz_analysis_function_update_analysis(), rz_analysis_var_addr(), rz_analysis_var_get_argnum(), rz_analysis_var_resolve_overlaps(), rz_analysis_var_set_access(), rz_core_recover_vars(), and update_varz_analysisysis().
int rz_analysis_function_t::argnum |
Definition at line 261 of file rz_analysis.h.
Referenced by rz_analysis_function_args(), and rz_analysis_function_delete_all_vars().
RzList* rz_analysis_function_t::bbs |
Definition at line 264 of file rz_analysis.h.
Referenced by __analysis_esil_function(), __analysis_fcn_check_bp_use(), __check_func(), __rebase_everything(), analBars(), analysis_fcn_data(), automerge_get_predecessors_cb(), autoname_imp_trampoline(), bb_info_print(), bbBegin(), bbFail(), bbInstructions(), bbJump(), bbSize(), cmd_print_bars(), core_analysis_graph_construct_edges(), core_analysis_graph_construct_nodes(), core_analysis_graph_nodes(), DEFINE_HANDLE_TS_FCN_AND_SYMBOL(), disasm_strings(), draw_graph_nodes(), ensure_fcn_range(), fcn_get_refs(), fcn_list_bbs(), fcn_print_info(), function_list_print(), function_list_print_to_table(), function_print_to_json(), gather_opcode_stat_for_fcn(), get_bbnodes(), get_bbupdate(), graph_construct_edges(), graph_construct_nodes(), meta_function_comment_remove(), module_match_buffer(), rz_analysis_diff_bb(), rz_analysis_diff_fingerprint_fcn(), rz_analysis_fcn_bbget_at(), rz_analysis_fcn_bbget_in(), rz_analysis_function_add_block(), rz_analysis_function_blocks_del_all_handler(), rz_analysis_function_complexity(), rz_analysis_function_cost(), rz_analysis_function_count_edges(), rz_analysis_function_free(), rz_analysis_function_loops(), rz_analysis_function_new(), rz_analysis_function_realsize(), rz_analysis_function_remove_block(), rz_analysis_function_resize(), rz_analysis_function_setbits_handler(), rz_analysis_function_update_analysis(), rz_analysis_function_was_modified(), rz_analysis_functions_map_handler(), rz_analysis_trace_bb(), rz_core_analysis_bbs_asciiart(), rz_core_analysis_bbs_info_print(), rz_core_analysis_fcn_returns(), rz_core_analysis_resolve_golang_strings(), rz_core_analysis_type_match(), rz_core_cmd_foreach(), rz_core_cmd_foreach3(), rz_core_gdiff_2_files(), rz_core_gdiff_function_1_file(), rz_core_gdiff_function_2_files(), rz_core_link_stroff(), rz_core_print_bb_custom(), rz_core_print_bb_gml(), rz_core_print_function_disasm_json(), rz_core_visual_cmd(), rz_print_areas_no_functions_handler(), try_get_cmpval_from_parents(), and update_analysis().
int rz_analysis_function_t::bits |
Definition at line 241 of file rz_analysis.h.
Referenced by __core_analysis_fcn(), extract_arg(), fcn_print_info(), function_list_print_as_cmd(), function_print_to_json(), rz_analysis_create_function(), rz_analysis_extract_rarg(), rz_analysis_function_list_ascii_handler(), rz_analysis_function_new(), rz_analysis_function_setbits_handler(), and rz_core_hint_begin().
bool rz_analysis_function_t::bp_frame |
Definition at line 258 of file rz_analysis.h.
Referenced by __analysis_fcn_check_bp_use(), __core_analysis_fcn(), and rz_analysis_function_new().
st64 rz_analysis_function_t::bp_off |
Definition at line 251 of file rz_analysis.h.
Referenced by core_analysis_var_list_show(), ds_show_functions_argvar(), extract_arg(), fcn_takeover_block_recursive_followthrough_cb(), retype_callee_arg(), run_basic_block_analysis(), rz_analysis_dwarf_integrate_functions(), rz_analysis_function_vars_bp_handler(), rz_analysis_var_addr(), and rz_core_analysis_var_display().
const char* rz_analysis_function_t::cc |
Definition at line 243 of file rz_analysis.h.
Referenced by __core_analysis_fcn(), capstone.CsInsn::__gen_detail(), analysis_block_cb(), extract_arg(), fcn_print_info(), function_list_print_as_cmd(), function_print_to_json(), run_basic_block_analysis(), rz_analysis_create_function(), rz_analysis_extract_rarg(), rz_analysis_fcn(), rz_analysis_function_cc_reg_usage_handler(), rz_analysis_function_cc_set_get_handler(), rz_analysis_function_new(), and rz_analysis_var_get_argnum().
RzAnalysisDiff* rz_analysis_function_t::diff |
Definition at line 263 of file rz_analysis.h.
Referenced by fcn_print_info(), function_list_print_as_cmd(), function_print_to_json(), graph_construct_nodes(), rz_analysis_create_function(), rz_analysis_diff_bb(), rz_analysis_diff_fcn(), rz_analysis_function_free(), and rz_analysis_function_new().
ut8* rz_analysis_function_t::fingerprint |
Definition at line 260 of file rz_analysis.h.
Referenced by rz_analysis_diff_fcn(), rz_analysis_diff_fingerprint_fcn(), and rz_analysis_function_free().
size_t rz_analysis_function_t::fingerprint_size |
Definition at line 262 of file rz_analysis.h.
Referenced by rz_analysis_diff_fcn(), and rz_analysis_diff_fingerprint_fcn().
bool rz_analysis_function_t::has_changed |
Definition at line 257 of file rz_analysis.h.
Referenced by rz_analysis_function_new(), and rz_analysis_function_purity().
RzList* rz_analysis_function_t::imports |
Definition at line 266 of file rz_analysis.h.
Referenced by __replaceImports(), ds_show_functions(), rz_analysis_function_free(), rz_analysis_function_import_list_del_handler(), and rz_analysis_function_import_list_handler().
HtUP* rz_analysis_function_t::inst_vars |
Definition at line 249 of file rz_analysis.h.
Referenced by rz_analysis_function_free(), rz_analysis_function_get_var_reg_at(), rz_analysis_function_get_var_stackptr_at(), rz_analysis_function_get_vars_used_at(), rz_analysis_function_new(), rz_analysis_function_relocate(), rz_analysis_var_clear_accesses(), rz_analysis_var_remove_access_at(), and rz_analysis_var_set_access().
bool rz_analysis_function_t::is_noreturn |
Definition at line 259 of file rz_analysis.h.
Referenced by fcn_print_info(), function_list_print_to_table(), function_print_to_json(), reanalyze_fcns_cb(), rz_analysis_add_function(), rz_analysis_function_new(), and rz_analysis_noreturn_add().
bool rz_analysis_function_t::is_pure |
Definition at line 255 of file rz_analysis.h.
Referenced by check_purity(), and rz_analysis_function_purity().
bool rz_analysis_function_t::is_variadic |
Definition at line 256 of file rz_analysis.h.
Referenced by run_basic_block_analysis().
HtPP* rz_analysis_function_t::label_addrs |
Definition at line 246 of file rz_analysis.h.
Referenced by rz_analysis_function_delete_label(), rz_analysis_function_delete_label_at(), rz_analysis_function_free(), rz_analysis_function_get_label(), rz_analysis_function_new(), and rz_analysis_function_set_label().
HtUP* rz_analysis_function_t::labels |
Definition at line 245 of file rz_analysis.h.
Referenced by rz_analysis_function_delete_label(), rz_analysis_function_delete_label_at(), rz_analysis_function_free(), rz_analysis_function_get_label_at(), rz_analysis_function_new(), rz_analysis_function_set_label(), rz_flag_local_list_all_handler(), and rz_flag_local_list_handler().
int rz_analysis_function_t::maxstack |
Definition at line 253 of file rz_analysis.h.
Referenced by analysis_function_vars_getsetref(), core_analysis_graph_nodes(), core_analysis_var_list_show(), draw_graph_nodes(), fcn_print_info(), function_list_print_as_cmd(), function_list_print_to_table(), function_print_to_json(), run_basic_block_analysis(), rz_analysis_dwarf_integrate_functions(), rz_analysis_fcn(), rz_analysis_function_stacksz_handler(), rz_analysis_function_vars_sp_handler(), and rz_core_analysis_var_display().
RzAnalysisFcnMeta rz_analysis_function_t::meta |
Definition at line 265 of file rz_analysis.h.
Referenced by ensure_fcn_range(), rz_analysis_block_merge(), rz_analysis_block_relocate(), rz_analysis_block_set_size(), rz_analysis_function_add_block(), rz_analysis_function_linear_size(), rz_analysis_function_max_addr(), rz_analysis_function_min_addr(), rz_analysis_function_new(), rz_analysis_function_remove_block(), and rz_analysis_function_size_from_entry().
char* rz_analysis_function_t::name |
Definition at line 240 of file rz_analysis.h.
Referenced by __check_func_diff(), __core_analysis_fcn(), __fcns(), __refs(), cmd_descs_generate.Arg::__str__(), cmd_descs_generate.Detail::__str__(), __xrefs(), cmd_descs_generate.Arg::_get_choices_cname(), cmd_descs_generate.CmdDesc::_validate(), autoname_imp_trampoline(), backtrace_vars(), cmd_analysis_ucall_ref(), core_analysis_graph_construct_nodes(), core_analysis_graph_nodes(), DEFINE_HANDLE_TS_FCN_AND_SYMBOL(), do_ref_search(), draw_graph_nodes(), ds_print_calls_hints(), ds_print_esil_analysis(), ds_print_lines_left(), ds_show_refs(), ds_show_xrefs(), ds_sub_jumps(), extract_arg(), filter(), filter_function(), flirt_module_new(), function_list_print_quiet(), function_list_print_to_table(), function_print_calls(), function_print_to_json(), function_rename(), cmd_descs_generate.Detail::get_detail_entries_cname(), graph_construct_nodes(), module_match_buffer(), node_match_functions(), print_stats(), propagate_types_among_used_variables(), recovery_apply_vtable(), test_group_name.GroupTest::run(), run_basic_block_analysis(), rz_analysis_add_function(), rz_analysis_class_method_recover(), rz_analysis_create_function(), rz_analysis_diff_fcn(), rz_analysis_extract_rarg(), rz_analysis_function_all_opcode_stat_handler(), rz_analysis_function_args(), rz_analysis_function_describe_offset_handler(), rz_analysis_function_free(), rz_analysis_function_rename(), rz_analysis_function_signature_type_handler(), rz_analysis_list_vtables(), rz_analysis_noreturn_add(), rz_analysis_noreturn_drop(), rz_analysis_xrefs_to_graph_cmd_handler(), rz_analysis_xrefs_to_list_handler(), rz_cmd_debug_display_bt_handler(), rz_core_analysis_all(), rz_core_analysis_autoname_all_fcns(), rz_core_analysis_callgraph(), rz_core_analysis_coderefs(), rz_core_analysis_datarefs(), rz_core_analysis_fcn_name(), rz_core_analysis_flag_every_function(), rz_core_analysis_function_add(), rz_core_analysis_function_rename(), rz_core_analysis_function_set_signature(), rz_core_analysis_function_signature(), rz_core_analysis_hasrefs_to_depth(), rz_core_analysis_name(), rz_core_cmd_foreach(), rz_core_cmd_foreach3(), rz_core_gdiff_2_files(), rz_core_print_func_args(), rz_core_print_function_disasm_json(), rz_core_visual_define(), rz_core_visual_title(), rz_core_visual_xrefs(), rz_debug_thread_list(), rz_flag_local_list_all_handler(), rz_print_areas_no_functions_handler(), rz_sign_flirt_node_new(), set_fcn_name_from_flag(), set_retval(), cmd_descs_generate.CmdDesc::str_tab(), types_xrefs(), types_xrefs_graph(), types_xrefs_summary(), var_functions_show(), var_type_set(), xrefs_graph(), and xrefs_graph_fcn_start_json().
int rz_analysis_function_t::ninstr |
Definition at line 254 of file rz_analysis.h.
Referenced by calc_reachable_and_remove_block(), core_analysis_graph_nodes(), draw_graph_nodes(), module_match_buffer(), num_callback(), run_basic_block_analysis(), rz_core_analysis_type_match(), and update_analysis().
ut64 rz_analysis_function_t::reg_save_area |
Definition at line 250 of file rz_analysis.h.
Referenced by rz_analysis_fcn().
RzType* rz_analysis_function_t::ret_type |
Definition at line 248 of file rz_analysis.h.
Referenced by rz_analysis_function_signature_type_handler().
st64 rz_analysis_function_t::stack |
Definition at line 252 of file rz_analysis.h.
Referenced by analysis_block_cb(), analyze_function_locally(), extract_arg(), fcn_append_basic_block(), fcn_takeover_block_recursive(), run_basic_block_analysis(), rz_analysis_fcn(), and rz_core_recover_vars().
int rz_analysis_function_t::type |
Definition at line 242 of file rz_analysis.h.
Referenced by __core_analysis_fcn(), cmd_descs_generate.Arg::__str__(), cmd_descs_generate.Arg::_get_choices_cname(), cmd_descs_generate.Arg::_get_union(), cmd_descs_generate.CmdDesc::_validate(), core_analysis_graph_nodes(), cmd_descs_generate.Arg::decl(), draw_graph_nodes(), fcn_print_info(), function_print_to_json(), function_rename(), function_type_to_char(), cmd_descs_generate.Arg::get_cstructure(), cmd_descs_generate.CmdDesc::get_handler_cname(), node_match_functions(), run_basic_block_analysis(), rz_analysis_create_function(), rz_analysis_diff_fcn(), rz_analysis_fcn(), rz_analysis_fcn_del_locs(), rz_analysis_get_fcn_in_bounds(), rz_core_analysis_all(), rz_core_analysis_fcn(), rz_core_analysis_graph(), and rz_sign_flirt_node_new().
RzPVector rz_analysis_function_t::vars |
Definition at line 247 of file rz_analysis.h.
Referenced by clear_bb_vars(), get_stack_var(), meta_variable_comment_list(), meta_variable_comment_list_all(), rz_analysis_function_arg_count(), rz_analysis_function_args(), rz_analysis_function_autoname_var(), rz_analysis_function_delete_all_vars(), rz_analysis_function_delete_unused_vars(), rz_analysis_function_delete_var(), rz_analysis_function_delete_vars_by_kind(), rz_analysis_function_get_var(), rz_analysis_function_get_var_byname(), rz_analysis_function_get_var_fields(), rz_analysis_function_new(), rz_analysis_function_relocate(), rz_analysis_function_set_var(), rz_analysis_var_delete(), rz_analysis_var_resolve_overlaps(), rz_core_analysis_type_match(), and var_generate_list().