Rizin
unix-like reverse engineering framework and cli tools
rz_analysis_t Struct Reference

#include <rz_analysis.h>

Public Attributes

char * cpu
 
char * os
 
int bits
 
int lineswidth
 
int big_endian
 
int sleep
 
RzAnalysisCPPABI cpp_abi
 
void * plugin_data
 
void * core
 
ut64 gp
 
RBTree bb_tree
 
RzListfcns
 
HtUP * ht_addr_fun
 
HtPP * ht_name_fun
 
RzRegreg
 
ut8last_disasm_reg
 
RzSyscallsyscall
 
int diff_ops
 
double diff_thbb
 
double diff_thfcn
 
RzIOBind iob
 
RzFlagBind flb
 
RzFlagSet flg_class_set
 
RzFlagGet flg_class_get
 
RzFlagSet flg_fcn_set
 
RzBinBind binb
 
RzCoreBind coreb
 
int maxreflines
 
int esil_goto_limit
 
int pcalign
 
struct rz_analysis_esil_tesil
 
RzAnalysisILVMil_vm
 user-faced VM, NEVER use this for any analysis passes! More...
 
struct rz_analysis_plugin_tcur
 
RzAnalysisRangelimit
 
RzListplugins
 
Sdbsdb_noret
 
Sdbsdb_fmts
 
HtUP * ht_xrefs_from
 
HtUP * ht_xrefs_to
 
bool recursive_noreturn
 
Sdbsdb
 
HtUP * addr_hints
 
RBTree arch_hints
 
RBTree bits_hints
 
RHintCb hint_cbs
 
RzIntervalTree meta
 
RzSpaces meta_spaces
 
RzTypeDBtypedb
 
HtUP * type_links
 
Sdbsdb_cc
 
Sdbsdb_classes
 
Sdbsdb_classes_attrs
 
RzAnalysisCallbacks cb
 
RzAnalysisOptions opt
 
RzListreflines
 
RzListComparator columnSort
 
int stackptr
 
bool(* log )(struct rz_analysis_t *analysis, const char *msg)
 
bool(* read_at )(struct rz_analysis_t *analysis, ut64 addr, ut8 *buf, int len)
 
int seggrn
 
RzFlagGetAtAddr flag_get
 
RzEventev
 
RzListimports
 
SetUvisited
 
RzStrConstPool constpool
 
RzListleaddrs
 
RzPlatformTargetarch_target
 
RzPlatformTargetIndexplatform_target
 
HtPP * ht_global_var
 
RBTree global_var_tree
 
RzHashhash
 

Detailed Description

Definition at line 553 of file rz_analysis.h.

Member Data Documentation

◆ addr_hints

HtUP* rz_analysis_t::addr_hints

◆ arch_hints

RBTree rz_analysis_t::arch_hints

Definition at line 597 of file rz_analysis.h.

Referenced by rz_analysis_arch_hints_foreach(), and rz_analysis_hint_arch_at().

◆ arch_target

◆ bb_tree

◆ big_endian

◆ binb

◆ bits

int rz_analysis_t::bits

Definition at line 556 of file rz_analysis.h.

Referenced by __core_analysis_fcn(), analop(), analysis_mask(), analysis_preludes(), arc_op(), archinfo(), bin_dwarf(), bp_bits_at(), cb_asmarch(), cb_asmbits(), cb_asmos(), core_analysis_followptr(), decode_from_table(), DEFINE_HANDLE_TS_FCN_AND_SYMBOL(), do_syscall_search(), ds_print_esil_analysis(), esil_mem_addeq(), esil_mem_andeq(), esil_mem_deceq(), esil_mem_diveq(), esil_mem_inceq(), esil_mem_lsleq(), esil_mem_lsreq(), esil_mem_modeq(), esil_mem_muleq(), esil_mem_oreq(), esil_mem_subeq(), esil_mem_xoreq(), esil_peek(), esil_poke(), esil_rs(), esilbreak_reg_write(), extract_arg(), get_reg_profile(), get_regname(), get_src_regname(), il_config(), is_arm_thumb_hack(), mips_op(), print_format_values(), riscv_op(), run_basic_block_analysis(), rz_analysis_create_function(), rz_analysis_data(), rz_analysis_esil_get_parm_size(), rz_analysis_esil_reg_read(), rz_analysis_extract_rarg(), rz_analysis_function_new(), rz_analysis_function_setbits_handler(), rz_analysis_get_address_bits(), rz_analysis_set_bits(), rz_analysis_set_triplet(), rz_analysis_try_get_fcn(), rz_analysis_vtable_begin(), rz_core_analysis_cc_init(), rz_core_analysis_esil(), rz_core_analysis_propagate_noreturn_relocs(), rz_core_arg_get(), rz_core_bin_apply_dwarf(), rz_core_cmd_foreach3(), rz_core_get_func_args(), rz_core_print_examine(), rz_core_search_value_in_range(), rz_debug_bochs_reg_profile(), rz_debug_gdb_attach(), rz_debug_gdb_reg_profile(), rz_debug_gdb_reg_write(), rz_debug_qnx_attach(), rz_debug_qnx_reg_profile(), rz_debug_qnx_reg_write(), rz_egg_show_config_handler(), type_match(), and var_type_clone_or_default_type().

◆ bits_hints

RBTree rz_analysis_t::bits_hints

Definition at line 598 of file rz_analysis.h.

Referenced by rz_analysis_bits_hints_foreach(), and rz_analysis_hint_bits_at().

◆ cb

◆ columnSort

RzListComparator rz_analysis_t::columnSort

Definition at line 611 of file rz_analysis.h.

Referenced by cb_diff_sort().

◆ constpool

◆ core

void* rz_analysis_t::core

◆ coreb

◆ cpp_abi

RzAnalysisCPPABI rz_analysis_t::cpp_abi

Definition at line 560 of file rz_analysis.h.

Referenced by cb_analysis_cpp_abi(), rz_analysis_new(), and rz_analysis_vtable_begin().

◆ cpu

◆ cur

◆ diff_ops

int rz_analysis_t::diff_ops

◆ diff_thbb

double rz_analysis_t::diff_thbb

◆ diff_thfcn

double rz_analysis_t::diff_thfcn

◆ esil

struct rz_analysis_esil_t* rz_analysis_t::esil

Definition at line 584 of file rz_analysis.h.

Referenced by __analysis_esil_function(), __esil_step(), add_string_ref(), analysis_emul_init(), analysis_emul_restore(), cb_cmd_esil_intr(), cb_cmd_esil_ioer(), cb_cmd_esil_mdev(), cb_cmd_esil_step(), cb_cmd_esil_step_out(), cb_cmd_esil_todo(), cb_cmd_esil_trap(), cb_esilverbose(), cb_exectrap(), cb_gotolimit(), cb_iotrap(), cb_mdevrange(), cmd_analysis_esil(), core_esil_init(), do_esil_search(), ds_pre_emulation(), ds_print_esil_analysis(), ds_print_esil_analysis_fini(), ds_print_esil_analysis_init(), get_addr(), handle_stack_canary(), initializeEsil(), propagate_types_among_used_variables(), rop_classify_arithmetic(), rop_classify_arithmetic_const(), rop_classify_constant(), rop_classify_mov(), rop_classify_nops(), rz_analysis_esil_free(), rz_analysis_function_type_matching_handler(), rz_cmd_debug_trace_esil_handler(), rz_cmd_debug_trace_esils_handler(), rz_cmd_debug_traces_esil_delete_handler(), rz_cmd_debug_traces_esil_i_handler(), rz_core_analysis_continue_until_call(), rz_core_analysis_continue_until_syscall(), rz_core_analysis_esil(), rz_core_analysis_esil_deinit(), rz_core_analysis_esil_emulate(), rz_core_analysis_esil_init(), rz_core_analysis_esil_init_mem(), rz_core_analysis_esil_init_mem_del(), rz_core_analysis_esil_init_mem_p(), rz_core_analysis_esil_trace_start(), rz_core_analysis_esil_trace_stop(), rz_core_analysis_type_match(), rz_core_analysis_types_propagation(), rz_core_disasm_pde(), rz_core_esil_continue_back(), rz_core_esil_step(), rz_core_esil_step_back(), rz_debug_trace_op(), step_until_esil(), and type_match().

◆ esil_goto_limit

int rz_analysis_t::esil_goto_limit

◆ ev

◆ fcns

RzList* rz_analysis_t::fcns

Definition at line 565 of file rz_analysis.h.

Referenced by __fcns(), __rebase_everything(), analysis_fcn_data_gaps(), autocmplt_cmd_arg_fcn(), autocomplete_functions(), cmd_analysis_graph(), DEFINE_HANDLE_TS_FCN_AND_SYMBOL(), filter_function(), function_rename(), module_match_buffer(), node_match_functions(), rz_analysis_add_function(), rz_analysis_fcn_count(), rz_analysis_fcn_del_locs(), rz_analysis_fcn_next(), rz_analysis_function_all_opcode_stat_handler(), rz_analysis_function_count_handler(), rz_analysis_function_del_all_handler(), rz_analysis_function_delete(), rz_analysis_function_list(), rz_analysis_function_size_sum_handler(), rz_analysis_functions_map_handler(), rz_analysis_get_fcn_in_bounds(), rz_analysis_get_fcns(), rz_analysis_new(), rz_analysis_purge(), rz_analyze_function_linked_offsets_handler(), rz_comment_function_remove_all_handler(), rz_core_analysis_all(), rz_core_analysis_autoname_all_fcns(), rz_core_analysis_callgraph(), rz_core_analysis_calls_count(), rz_core_analysis_coverage_count(), rz_core_analysis_esil_references_all_functions(), rz_core_analysis_everything(), rz_core_analysis_fcn_clean(), rz_core_analysis_flag_every_function(), rz_core_analysis_graph(), rz_core_analysis_propagate_noreturn(), rz_core_analysis_resolve_golang_strings(), rz_core_analysis_types_propagation(), rz_core_cmd_foreach(), rz_core_cmd_foreach3(), rz_core_gdiff_2_files(), rz_core_seek_next(), rz_core_seek_prev(), rz_core_visual_analysis(), rz_flag_local_list_all_handler(), rz_print_analysis_details_handler(), rz_print_areas_no_functions_handler(), types_xrefs(), types_xrefs_all(), types_xrefs_graph(), types_xrefs_summary(), and var_functions_show().

◆ flag_get

RzFlagGetAtAddr rz_analysis_t::flag_get

Definition at line 616 of file rz_analysis.h.

Referenced by retpoline_reg(), rz_analysis_noreturn_at(), and rz_core_init().

◆ flb

◆ flg_class_get

RzFlagGet rz_analysis_t::flg_class_get

◆ flg_class_set

RzFlagSet rz_analysis_t::flg_class_set

◆ flg_fcn_set

RzFlagSet rz_analysis_t::flg_fcn_set

Definition at line 578 of file rz_analysis.h.

Referenced by rz_analysis_add_function(), and rz_core_init().

◆ global_var_tree

◆ gp

◆ hash

RzHash* rz_analysis_t::hash

◆ hint_cbs

RHintCb rz_analysis_t::hint_cbs

Definition at line 599 of file rz_analysis.h.

◆ ht_addr_fun

◆ ht_global_var

◆ ht_name_fun

HtPP* rz_analysis_t::ht_name_fun

◆ ht_xrefs_from

◆ ht_xrefs_to

◆ il_vm

◆ imports

◆ iob

◆ last_disasm_reg

ut8* rz_analysis_t::last_disasm_reg

◆ leaddrs

RzList* rz_analysis_t::leaddrs

Definition at line 621 of file rz_analysis.h.

Referenced by __core_analysis_fcn(), run_basic_block_analysis(), and rz_analysis_new().

◆ limit

◆ lineswidth

int rz_analysis_t::lineswidth

Definition at line 557 of file rz_analysis.h.

Referenced by cb_asmlineswidth(), rz_analysis_new(), and rz_analysis_reflines_str().

◆ log

bool(* rz_analysis_t::log) (struct rz_analysis_t *analysis, const char *msg)

Definition at line 613 of file rz_analysis.h.

◆ maxreflines

int rz_analysis_t::maxreflines

Definition at line 581 of file rz_analysis.h.

Referenced by cb_analysis_maxrefs(), and rz_analysis_reflines_get().

◆ meta

◆ meta_spaces

◆ opt

◆ os

char* rz_analysis_t::os

◆ pcalign

◆ platform_target

RzPlatformTargetIndex* rz_analysis_t::platform_target

◆ plugin_data

void* rz_analysis_t::plugin_data

◆ plugins

RzList* rz_analysis_t::plugins

◆ read_at

bool(* rz_analysis_t::read_at) (struct rz_analysis_t *analysis, ut64 addr, ut8 *buf, int len)

Definition at line 614 of file rz_analysis.h.

Referenced by find_matching_bracket(), and rz_core_init().

◆ recursive_noreturn

bool rz_analysis_t::recursive_noreturn

Definition at line 593 of file rz_analysis.h.

Referenced by cb_analysis_rnr(), and rz_analysis_noreturn_at().

◆ reflines

◆ reg

RzReg* rz_analysis_t::reg

Definition at line 568 of file rz_analysis.h.

Referenced by __analysis_esil_function(), __analysis_fcn_check_bp_use(), __init_panel_param(), __panels_check_stackbase(), __reg_read(), analysis_emul_init(), analysis_fill_ai_rg(), analysis_fill_r0_reg_ref(), analysis_pic_midrange_malloc(), analysis_regrel_jump(), asciiart_backtrace(), autocmplt_cmd_arg_reg_filter(), avr_custom_des(), avr_custom_spm_page_erase(), avr_custom_spm_page_fill(), avr_custom_spm_page_write(), backtrace_vars(), can_affect_bp(), cb_analysis_roregs(), cmd_aea(), cmd_analysis_esil(), core_analysis_var_list_show(), core_walk_function_blocks(), do_syscall_search(), ds_build_op_str(), ds_init(), ds_print_esil_analysis(), ds_print_esil_analysis_fini(), ds_print_esil_analysis_init(), ds_show_functions(), esil_6502_init(), esil_bigger(), esil_bigger_equal(), esil_cmp(), esil_gb_init(), esil_internal_sizeof_reg(), esil_smaller(), esil_smaller_equal(), esilbreak_reg_write(), extract_arg(), fillRegisterValues(), func_walk_blocks(), gb_analysis_and_res(), gb_analysis_id(), gb_analysis_or_set(), gb_anop(), gb_custom_daa(), get_bb_body(), get_bbnodes(), get_bbupdate(), get_regname(), get_src_regname(), getFunctionNamePrefix(), getpcfromstack(), handle_var_stack_access(), i8051_op(), internal_esil_reg_read(), internal_esil_reg_write(), internal_esil_reg_write_no_null(), ispackedreg(), list_vars(), loadGP(), map_direct_addr(), mips_op(), mipsTweak(), op_fillval(), pr_bb(), print_rop(), restore_register(), retype_callee_arg(), riscv_op(), rop_classify_arithmetic(), rop_classify_arithmetic_const(), rop_classify_constant(), rop_classify_mov(), rsp_op(), run_basic_block_analysis(), rz_analysis_appcall_handler(), rz_analysis_dwarf_integrate_functions(), rz_analysis_esil_get_parm_type(), rz_analysis_esil_trace_new(), rz_analysis_esil_trace_op(), rz_analysis_esil_trace_restore(), rz_analysis_extract_rarg(), rz_analysis_extract_vars(), rz_analysis_function_set_var(), rz_analysis_function_vars_handler(), rz_analysis_function_vars_regs_getref_handler(), rz_analysis_function_vars_regs_handler(), rz_analysis_function_vars_regs_setref_handler(), rz_analysis_il_vm_setup(), rz_analysis_new(), rz_analysis_rzil_trace_new(), rz_analysis_set_big_endian(), rz_analysis_set_reg_profile(), rz_analysis_value_set_ut64(), rz_analysis_value_to_ut64(), rz_analysis_var_addr(), rz_analysis_var_get_argnum(), rz_cmd_disassembly_all_possible_opcodes_handler(), rz_cmd_disassembly_all_possible_opcodes_treeview_handler(), rz_core_analysis_address(), rz_core_analysis_cc_init(), rz_core_analysis_continue_until_call(), rz_core_analysis_continue_until_syscall(), rz_core_analysis_esil(), rz_core_analysis_esil_emulate(), rz_core_analysis_il_reinit(), rz_core_analysis_set_reg(), rz_core_analysis_type_match(), rz_core_analysis_types_propagation(), rz_core_analysis_var_display(), rz_core_debug_step_skip(), rz_core_disasm_instruction(), rz_core_disasm_pde(), rz_core_disasm_pdi_with_buf(), rz_core_esil_continue_back(), rz_core_esil_step(), rz_core_get_func_args(), rz_core_il_step(), rz_core_link_stroff(), rz_core_print_disasm_all(), rz_core_print_disasm_instructions_with_buf(), rz_core_print_func_args(), rz_core_reg_default(), rz_core_reg_getv_by_role_or_name(), rz_core_reg_set_by_role_or_name(), rz_core_syscall_as_string(), rz_core_visual_bit_editor(), rz_core_visual_esil(), rz_debug_gdb_reg_write(), rz_debug_qnx_reg_write(), rz_il_vm_step_until_addr_handler(), set_cpu_model(), set_retval(), step_until_optype(), subvar(), trace_hook_reg_write(), type_pos_hit(), value_fill_addr_reg_disp(), value_fill_addr_reg_regdelta(), and var_variables_show().

◆ sdb

◆ sdb_cc

◆ sdb_classes

◆ sdb_classes_attrs

◆ sdb_fmts

Sdb* rz_analysis_t::sdb_fmts

Definition at line 590 of file rz_analysis.h.

Referenced by parse_format(), and rz_analysis_new().

◆ sdb_noret

◆ seggrn

int rz_analysis_t::seggrn

Definition at line 615 of file rz_analysis.h.

Referenced by cb_seggrn().

◆ sleep

int rz_analysis_t::sleep

Definition at line 559 of file rz_analysis.h.

Referenced by cb_analysis_sleep(), and run_basic_block_analysis().

◆ stackptr

◆ syscall

◆ type_links

◆ typedb

RzTypeDB* rz_analysis_t::typedb

Definition at line 602 of file rz_analysis.h.

Referenced by analysis_set_os(), autocmplt_cmd_arg_alias_type(), autocmplt_cmd_arg_any_type(), autocmplt_cmd_arg_enum_type(), autocmplt_cmd_arg_struct_type(), autocmplt_cmd_arg_union_type(), cb_asmarch(), cb_bigendian(), cmd_print_format(), core_analysis_var_list_show(), ds_print_calls_hints(), ds_print_esil_analysis(), ds_print_meta_infos(), ds_show_flags(), ds_show_functions(), ds_show_functions_argvar(), extract_arg(), function_type_derive(), print_fcn_arg(), propagate_types_among_used_variables(), resolve_fcn_name(), resolve_type_links(), rz_analysis_cc_func(), rz_analysis_dwarf_integrate_functions(), rz_analysis_extract_rarg(), rz_analysis_fcn_vars_add_types(), rz_analysis_function_blocks_switch_type_handler(), rz_analysis_function_clone_type(), rz_analysis_function_create_type(), rz_analysis_function_derive_args(), rz_analysis_function_get_arg_count(), rz_analysis_function_signature_type_handler(), rz_analysis_function_vars_bp_handler(), rz_analysis_function_vars_regs_handler(), rz_analysis_function_vars_sp_handler(), rz_analysis_function_vars_stackframe_handler(), rz_analysis_function_vars_type_handler(), rz_analysis_global_variable_add_handler(), rz_analysis_global_variable_retype_handler(), rz_analysis_is_noreturn(), rz_analysis_list_struct_offsets_handler(), rz_analysis_new(), rz_analysis_noreturn_add(), rz_analysis_noreturn_at_name(), rz_analysis_noreturn_functions(), rz_analysis_purge(), rz_analysis_set_big_endian(), rz_analysis_set_bits(), rz_analysis_set_cpu(), rz_analysis_type_links_by_offset(), rz_analysis_type_paths_by_address(), rz_analysis_var_global_get_byaddr_in(), rz_analysis_var_global_list_show(), rz_analysis_var_global_set_type(), rz_analysis_var_resolve_overlaps(), rz_cmd_info_pdb_show_handler(), rz_core_analysis_function_signature(), rz_core_analysis_hint_set_offset(), rz_core_analysis_type_init(), rz_core_analysis_var_display(), rz_core_base_type_as_c(), rz_core_bin_export_info(), rz_core_bin_print(), rz_core_get_func_args(), rz_core_init(), rz_core_run_script(), rz_core_types_enum_print_all(), rz_core_types_function_noreturn_print(), rz_core_types_function_print_all(), rz_core_types_link(), rz_core_types_link_print(), rz_core_types_print_all(), rz_core_types_show_format(), rz_core_types_struct_print(), rz_core_types_struct_print_all(), rz_core_types_struct_print_format_all(), rz_core_types_typedef_print(), rz_core_types_typedef_print_all(), rz_core_types_union_print(), rz_core_types_union_print_all(), rz_core_types_union_print_format_all(), rz_debug_dmp_init(), rz_debug_winkd_attach(), rz_type_del_all_handler(), rz_type_del_handler(), rz_type_enum_bitfield_handler(), rz_type_enum_c_handler(), rz_type_enum_c_nl_handler(), rz_type_function_cc_handler(), rz_type_function_del_all_handler(), rz_type_function_del_handler(), rz_type_list_enum_handler(), rz_type_list_function_handler(), rz_type_list_noreturn_handler(), rz_type_list_structure_handler(), rz_type_list_typedef_handler(), rz_type_list_union_handler(), rz_type_noreturn_del_all_handler(), rz_type_noreturn_del_handler(), rz_type_open_sdb_handler(), rz_type_structure_c_handler(), rz_type_structure_c_nl_handler(), rz_type_typedef_c_handler(), rz_type_union_c_handler(), rz_type_union_c_nl_handler(), rz_types_define(), rz_types_open_editor(), rz_types_open_file(), save_typelink(), set_fcn_args_info(), set_offset_hint(), type_format_print(), type_format_print_hexstring(), type_format_print_value(), type_format_print_variable(), type_match(), typelinks_load_sdb(), types_enum_member_find(), types_enum_member_find_all(), types_xrefs(), types_xrefs_function(), types_xrefs_graph(), types_xrefs_summary(), var_type_clone_or_default_type(), var_type_set(), var_type_set_sign(), var_type_set_str(), var_variables_show(), and variable_set_type().

◆ visited

SetU* rz_analysis_t::visited

Definition at line 619 of file rz_analysis.h.

Referenced by rz_analysis_fcn().


The documentation for this struct was generated from the following file: