Rizin
unix-like reverse engineering framework and cli tools
|
#include <string.h>
#include <rz_types.h>
#include <rz_util.h>
#include <rz_asm.h>
#include <rz_analysis.h>
#include <rz_reg.h>
#include "../../asm/arch/gb/gbdis.c"
#include "../arch/gb/gb_makros.h"
#include "../arch/gb/meta_gb_cmt.c"
#include <gb.h>
Go to the source code of this file.
Macros | |
#define | GB_DIS_LEN_ONLY |
Variables | |
static const char * | regs_1 [] = { "Z", "N", "H", "C" } |
static const char * | regs_8 [] = { "b", "c", "d", "e", "h", "l", "a", "a" } |
static const char * | regs_x [] = { "b", "c", "d", "e", "h", "l", "hl", "a" } |
static const char * | regs_16 [] = { "bc", "de", "hl", "sp" } |
static const char * | regs_16_alt [] = { "bc", "de", "hl", "af" } |
RzAnalysisPlugin | rz_analysis_plugin_gb |
RZ_API RzLibStruct | rizin_plugin |
#define GB_DIS_LEN_ONLY |
Definition at line 13 of file analysis_gb.c.
|
static |
Definition at line 1533 of file analysis_gb.c.
References rz_analysis_esil_t::cb, RZ_FREE, and rz_analysis_esil_callbacks_t::user.
|
static |
Definition at line 1510 of file analysis_gb.c.
References rz_analysis_esil_t::analysis, rz_analysis_esil_t::cb, gb_custom_daa(), rz_io_bind_t::io, rz_analysis_t::iob, gb_user_t::mbc_id, gb_user_t::ramsz_id, rz_io_bind_t::read_at, rz_analysis_t::reg, gb_user_t::romsz_id, RZ_ANALYSIS_ESIL_OP_TYPE_CUSTOM, RZ_ANALYSIS_ESIL_OP_TYPE_MATH, rz_analysis_esil_set_op(), RZ_NEW0, rz_reg_get(), rz_reg_set_value(), and rz_analysis_esil_callbacks_t::user.
|
inlinestatic |
Definition at line 142 of file analysis_gb.c.
References reg, regs_16, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 150 of file analysis_gb.c.
References reg, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_append(), rz_strbuf_setf(), and st8.
Referenced by gb_anop().
|
inlinestatic |
Definition at line 297 of file analysis_gb.c.
References PFMT64d, reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 284 of file analysis_gb.c.
References PFMT64x, rz_analysis_t::reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 573 of file analysis_gb.c.
References reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 560 of file analysis_gb.c.
References reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 599 of file analysis_gb.c.
References reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 586 of file analysis_gb.c.
References reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 612 of file analysis_gb.c.
References reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 626 of file analysis_gb.c.
References reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 639 of file analysis_gb.c.
References reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 547 of file analysis_gb.c.
References reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 246 of file analysis_gb.c.
References reg, regs_1, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, RZ_TYPE_COND_EQ, and RZ_TYPE_COND_NE.
Referenced by gb_anop().
|
static |
Definition at line 40 of file analysis_gb.c.
References PFMT64d, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 44 of file analysis_gb.c.
References cond, PFMT64d, rz_strbuf_setf(), and RZ_TYPE_COND_EQ.
Referenced by gb_anop().
|
inlinestatic |
Definition at line 79 of file analysis_gb.c.
References cond, PFMT64x, rz_strbuf_setf(), and RZ_TYPE_COND_EQ.
Referenced by gb_anop().
|
inlinestatic |
Definition at line 65 of file analysis_gb.c.
References cond, rz_strbuf_setf(), and RZ_TYPE_COND_EQ.
Referenced by gb_anop().
|
inlinestatic |
Definition at line 98 of file analysis_gb.c.
References PFMT64x, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 61 of file analysis_gb.c.
References rz_strbuf_append().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 110 of file analysis_gb.c.
References rz_analysis_t::reg, regs_16, regs_8, RZ_ANALYSIS_OP_TYPE_ADD, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_set(), and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 102 of file analysis_gb.c.
References reg, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_set().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 462 of file analysis_gb.c.
References GB_SOFTCAST, PFMT64x, reg, regs_16, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_set(), and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 445 of file analysis_gb.c.
References reg, regs_8, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_append(), rz_strbuf_set(), and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 187 of file analysis_gb.c.
References reg, regs_16, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_append(), rz_strbuf_setf(), and st8.
Referenced by gb_anop().
|
inlinestatic |
Definition at line 210 of file analysis_gb.c.
References reg, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_append(), and rz_strbuf_setf().
Referenced by gb_anop().
|
static |
Definition at line 163 of file analysis_gb.c.
References GB_SOFTCAST, PFMT64x, reg, regs_16, regs_8, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
static |
Definition at line 202 of file analysis_gb.c.
References reg, regs_8, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 222 of file analysis_gb.c.
References reg, regs_1, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_set().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 179 of file analysis_gb.c.
References reg, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_set().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 310 of file analysis_gb.c.
References PFMT64x, rz_analysis_t::reg, regs_x, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 271 of file analysis_gb.c.
References reg, regs_16_alt, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_setf(), and val.
Referenced by gb_anop().
|
static |
Definition at line 516 of file analysis_gb.c.
References GB_SOFTCAST, PFMT64x, reg, regs_16, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_set(), and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 495 of file analysis_gb.c.
References reg, regs_8, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_set(), and rz_strbuf_setf().
Referenced by gb_anop().
|
static |
Definition at line 323 of file analysis_gb.c.
References reg, regs_x, RZ_ANALYSIS_OP_TYPE_ADD, RZ_ANALYSIS_OP_TYPE_AND, RZ_ANALYSIS_OP_TYPE_CMP, RZ_ANALYSIS_OP_TYPE_OR, RZ_ANALYSIS_OP_TYPE_SUB, RZ_ANALYSIS_OP_TYPE_XOR, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_setf().
Referenced by gb_anop().
|
static |
Definition at line 402 of file analysis_gb.c.
References reg, RZ_ANALYSIS_OP_TYPE_ADD, RZ_ANALYSIS_OP_TYPE_AND, RZ_ANALYSIS_OP_TYPE_CMP, RZ_ANALYSIS_OP_TYPE_OR, RZ_ANALYSIS_OP_TYPE_SUB, RZ_ANALYSIS_OP_TYPE_XOR, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, rz_strbuf_append(), and rz_strbuf_setf().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 238 of file analysis_gb.c.
References reg, regs_1, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_set().
Referenced by gb_anop().
|
inlinestatic |
Definition at line 230 of file analysis_gb.c.
References reg, regs_8, rz_analysis_value_new(), rz_reg_get(), RZ_REG_TYPE_GPR, and rz_strbuf_set().
Referenced by gb_anop().
|
static |
Definition at line 686 of file analysis_gb.c.
References addr, ARG_16, ARG_8, cb_ops, cb_regs, GB_16BIT, GB_8BIT, gb_analysis_add_hl(), gb_analysis_add_sp(), gb_analysis_and_bit(), gb_analysis_and_res(), gb_analysis_cb_rl(), gb_analysis_cb_rlc(), gb_analysis_cb_rr(), gb_analysis_cb_rrc(), gb_analysis_cb_sla(), gb_analysis_cb_sra(), gb_analysis_cb_srl(), gb_analysis_cb_swap(), gb_analysis_cond(), gb_analysis_esil_call(), gb_analysis_esil_ccall(), gb_analysis_esil_cjmp(), gb_analysis_esil_cret(), gb_analysis_esil_jmp(), gb_analysis_esil_ret(), gb_analysis_id(), gb_analysis_jmp_hl(), gb_analysis_load(), gb_analysis_load_hl(), gb_analysis_mov_hl_sp(), gb_analysis_mov_ime(), gb_analysis_mov_imm(), gb_analysis_mov_reg(), gb_analysis_mov_scf(), gb_analysis_mov_sp_hl(), gb_analysis_or_set(), gb_analysis_pp(), gb_analysis_store(), gb_analysis_store_hl(), gb_analysis_xoaasc(), gb_analysis_xoaasc_imm(), gb_analysis_xor_ccf(), gb_analysis_xor_cpl(), gb_hardware_register_name(), GB_IO, gb_op, gb_op_calljump(), GB_SOFTCAST, gbOpLength(), len, mask, memset(), meta_gb_bankswitch_cmt(), reg, rz_analysis_t::reg, RZ_ANALYSIS_OP_MASK_DISASM, RZ_ANALYSIS_OP_TYPE_ACMP, RZ_ANALYSIS_OP_TYPE_ADD, RZ_ANALYSIS_OP_TYPE_AND, RZ_ANALYSIS_OP_TYPE_CALL, RZ_ANALYSIS_OP_TYPE_CCALL, RZ_ANALYSIS_OP_TYPE_CJMP, RZ_ANALYSIS_OP_TYPE_CMP, RZ_ANALYSIS_OP_TYPE_CRET, RZ_ANALYSIS_OP_TYPE_ILL, RZ_ANALYSIS_OP_TYPE_JMP, RZ_ANALYSIS_OP_TYPE_LOAD, RZ_ANALYSIS_OP_TYPE_MOV, RZ_ANALYSIS_OP_TYPE_NOP, RZ_ANALYSIS_OP_TYPE_NULL, RZ_ANALYSIS_OP_TYPE_OR, RZ_ANALYSIS_OP_TYPE_POP, RZ_ANALYSIS_OP_TYPE_RET, RZ_ANALYSIS_OP_TYPE_ROL, RZ_ANALYSIS_OP_TYPE_ROR, RZ_ANALYSIS_OP_TYPE_RPUSH, RZ_ANALYSIS_OP_TYPE_SAL, RZ_ANALYSIS_OP_TYPE_SAR, RZ_ANALYSIS_OP_TYPE_SHR, RZ_ANALYSIS_OP_TYPE_STORE, RZ_ANALYSIS_OP_TYPE_SUB, RZ_ANALYSIS_OP_TYPE_UCALL, RZ_ANALYSIS_OP_TYPE_UCCALL, RZ_ANALYSIS_OP_TYPE_UCJMP, RZ_ANALYSIS_OP_TYPE_UJMP, RZ_ANALYSIS_OP_TYPE_UNK, RZ_ANALYSIS_OP_TYPE_XOR, RZ_ANALYSIS_STACK_INC, rz_strbuf_set(), sprintf, st8, strdup(), and type.
|
static |
Definition at line 652 of file analysis_gb.c.
References rz_analysis_esil_t::analysis, C, H, n, NULL, rz_analysis_t::reg, rz_analysis_esil_get_parm(), rz_analysis_esil_pop(), rz_analysis_esil_pushnum(), rz_analysis_esil_reg_read(), RZ_FREE, ut64(), ut8, v, and val.
Referenced by esil_gb_init().
|
static |
Definition at line 26 of file analysis_gb.c.
References a, addr, GB_IB_DST, GB_IS_RAM_DST, GB_IS_VBANK_DST, GB_SOFTCAST, rz_meta_set_string(), and RZ_META_TYPE_COMMENT.
Referenced by gb_anop().
|
static |
Definition at line 1468 of file analysis_gb.c.
Definition at line 20 of file analysis_gb.c.
Referenced by gb_analysis_cond(), gb_analysis_mov_scf(), and gb_analysis_xor_ccf().
Definition at line 23 of file analysis_gb.c.
Referenced by gb_analysis_add_hl(), gb_analysis_id(), gb_analysis_load(), gb_analysis_mov_hl_sp(), gb_analysis_mov_imm(), and gb_analysis_store().
|
static |
Definition at line 24 of file analysis_gb.c.
Referenced by gb_analysis_pp().
Definition at line 21 of file analysis_gb.c.
Referenced by gb_analysis_id(), gb_analysis_load_hl(), gb_analysis_mov_imm(), gb_analysis_mov_reg(), gb_analysis_store_hl(), and gb_analysis_xor_cpl().
Definition at line 22 of file analysis_gb.c.
Referenced by gb_analysis_and_bit(), gb_analysis_and_res(), gb_analysis_cb_rl(), gb_analysis_cb_rlc(), gb_analysis_cb_rr(), gb_analysis_cb_rrc(), gb_analysis_cb_sla(), gb_analysis_cb_sra(), gb_analysis_cb_srl(), gb_analysis_cb_swap(), gb_analysis_or_set(), and gb_analysis_xoaasc().
RZ_API RzLibStruct rizin_plugin |
Definition at line 1552 of file analysis_gb.c.
RzAnalysisPlugin rz_analysis_plugin_gb |
Definition at line 1538 of file analysis_gb.c.