Rizin
unix-like reverse engineering framework and cli tools
rz_core.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: 2009-2021 pancake <pancake@nopcode.org>
2 // SPDX-License-Identifier: LGPL-3.0-only
3 
4 #ifndef RZ_CORE_H
5 #define RZ_CORE_H
6 
7 #include <rz_main.h>
8 #include <rz_types.h>
9 #include <rz_magic.h>
10 #include <rz_agraph.h>
11 #include <rz_io.h>
12 #include <rz_lib.h>
13 #include <rz_diff.h>
14 #include <rz_egg.h>
15 #include <rz_lang.h>
16 #include <rz_asm.h>
17 #include <rz_parse.h>
18 #include <rz_analysis.h>
19 #include <rz_cmd.h>
20 #include <rz_cons.h>
21 #include <rz_search.h>
22 #include <rz_sign.h>
23 #include <rz_debug.h>
24 #include <rz_flag.h>
25 #include <rz_config.h>
26 #include <rz_bin.h>
27 #include <rz_hash.h>
28 #include <rz_util.h>
29 #include <ht_uu.h>
30 #include <rz_util/rz_print.h>
31 #include <rz_crypto.h>
32 #include <rz_bind.h>
34 #include <rz_heap_glibc.h>
35 #include <rz_windows_heap.h>
36 
37 #ifdef __cplusplus
38 extern "C" {
39 #endif
41 
42 #define RZ_CORE_CMD_OK 0
43 #define RZ_CORE_CMD_INVALID -1
44 #define RZ_CORE_CMD_EXIT -2
45 
46 #define RZ_CORE_BLOCKSIZE 0x100
47 #define RZ_CORE_BLOCKSIZE_MAX 0x3200000 /* 32MB */
48 
49 #define RZ_CORE_ANALYSIS_GRAPHLINES 1
50 #define RZ_CORE_ANALYSIS_GRAPHBODY 2
51 #define RZ_CORE_ANALYSIS_GRAPHDIFF 4
52 #define RZ_CORE_ANALYSIS_JSON 8
53 #define RZ_CORE_ANALYSIS_KEYVALUE 16
54 #define RZ_CORE_ANALYSIS_JSON_FORMAT_DISASM 32
55 #define RZ_CORE_ANALYSIS_STAR 64
56 
57 #define RZ_FLAGS_FS_CLASSES "classes"
58 #define RZ_FLAGS_FS_FUNCTIONS "functions"
59 #define RZ_FLAGS_FS_IMPORTS "imports"
60 #define RZ_FLAGS_FS_RELOCS "relocs"
61 #define RZ_FLAGS_FS_REGISTERS "registers"
62 #define RZ_FLAGS_FS_RESOURCES "resources"
63 #define RZ_FLAGS_FS_SECTIONS "sections"
64 #define RZ_FLAGS_FS_SEGMENTS "segments"
65 #define RZ_FLAGS_FS_SIGNS "sign"
66 #define RZ_FLAGS_FS_STRINGS "strings"
67 #define RZ_FLAGS_FS_SYMBOLS "symbols"
68 #define RZ_FLAGS_FS_SYMBOLS_SECTIONS "symbols.sections"
69 #define RZ_FLAGS_FS_SYSCALLS "syscalls"
70 #define RZ_FLAGS_FS_MMIO_REGISTERS "registers.mmio"
71 #define RZ_FLAGS_FS_MMIO_REGISTERS_EXTENDED "registers.extended"
72 #define RZ_FLAGS_FS_PLATFORM_PORTS "platform.ports"
73 #define RZ_FLAGS_FS_GLOBALS "globals"
74 #define RZ_FLAGS_FS_DEBUG_MAPS "maps"
75 
76 #define RZ_GRAPH_FORMAT_NO 0
77 #define RZ_GRAPH_FORMAT_GMLFCN 1
78 #define RZ_GRAPH_FORMAT_JSON 2
79 #define RZ_GRAPH_FORMAT_GML 3
80 #define RZ_GRAPH_FORMAT_DOT 4
81 #define RZ_GRAPH_FORMAT_CMD 5
82 
84 #define RZ_CONS_COLOR_DEF(x, def) ((core->cons && core->cons->context->pal.x) ? core->cons->context->pal.x : def)
85 #define RZ_CONS_COLOR(x) RZ_CONS_COLOR_DEF(x, "")
86 
87 /* rtr */
88 #define RTR_PROTOCOL_RAP 0
89 #define RTR_PROTOCOL_TCP 1
90 #define RTR_PROTOCOL_UDP 2
91 #define RTR_PROTOCOL_HTTP 3
92 #define RTR_PROTOCOL_UNIX 4
93 
94 #define RTR_MAX_HOSTS 255
95 
96 /* visual mode */
97 typedef enum {
104 
105 typedef enum {
118 } RzCoreWriteOp;
119 
120 typedef bool (*RzCorePluginInit)(RzCore *core);
121 typedef bool (*RzCorePluginFini)(RzCore *core);
122 
123 typedef struct rz_core_plugin_t {
124  const char *name;
125  const char *desc;
126  const char *license;
127  const char *author;
128  const char *version;
132 
133 typedef struct rz_core_rtr_host_t RzCoreRtrHost;
134 
135 typedef enum {
139 
144 typedef struct rz_core_seek_undo_t {
146  int cursor;
147  bool is_current;
148  int idx;
150 
151 typedef struct rz_core_file_t {
152  struct rz_core_t *core;
153  int dbg;
154  int fd;
155  RzPVector /*<RzBinFile *>*/ binfiles;
156  RzPVector /*<RzIODesc *>*/ extra_files;
157  RzPVector /*<RzIOMap *>*/ maps;
159 
163 typedef struct rz_core_io_map_info_t {
165 
176 
177 typedef struct rz_core_times_t {
182 
183 #define RZ_CORE_ASMQJMPS_NUM 10
184 #define RZ_CORE_ASMQJMPS_LETTERS 26
185 #define RZ_CORE_ASMQJMPS_MAX_LETTERS (26 * 26 * 26 * 26 * 26)
186 #define RZ_CORE_ASMQJMPS_LEN_LETTERS 5
187 
203  // --- left as last always
206 
207 typedef struct rz_core_autocomplete_t {
208  const char *cmd;
209  int length;
211  bool locked;
212  int type;
215 
216 typedef struct rz_core_visual_tab_t {
217  int printidx;
220  int cur;
221  int ocur;
222  int cols;
223  int disMode;
224  int hexMode;
234  int dumpCols;
235  char name[32]; // XXX leak because no rz_core_visual_tab_free
236  // TODO: cursor and such
238 // #define RzCoreVisualTab Tab
239 
240 typedef struct rz_core_visual_t {
242  int tab;
244 // #define RzCoreVisual Visual
245 
246 typedef struct {
247  int x;
248  int y;
249  int w;
250  int h;
251  char *cmd;
252 } RzCoreGadget;
253 
254 typedef struct rz_core_task_t RzCoreTask;
255 
259 typedef void (*RzCoreTaskContextSwitch)(RzCoreTask *next, void *user);
260 
264 typedef void (*RzCoreTaskBreak)(RzCoreTask *task, void *user);
265 
266 typedef struct rz_core_tasks_t {
276  struct rz_core_task_t *current_task;
277  struct rz_core_task_t *main_task;
282 
290 typedef struct rz_core_seek_history_t {
293  bool saved_set;
296 
297 struct rz_core_t {
299  RzList /*<RzCorePlugin *>*/ *plugins;
301  ut64 offset; // current seek
302  ut64 prompt_offset; // temporarily set to offset to have $$ in expressions always stay the same during temp seeks
308  bool tmpseek;
309  bool vmode;
310  int interrupted; // XXX IS THIS DUPPED SOMEWHERE?
311  /* files */
315  RzList /*<RzCoreFile *>*/ *files;
317  ut64 rc; // command's return code .. related to num->value;
321  RzList /*<RzCmdDescriptor *>*/ *cmd_descriptors;
324  /* ^^ */
336  char *cmdqueue;
337  char *lastcmd;
339  bool is_pipe;
340  char *cmdlog;
341  int cmdrepeat; // cmd.repeat
342  const char *cmdtimes; // cmd.times
343  RZ_DEPRECATE bool cmd_in_backticks; // whether currently executing a cmd out of backticks
344  int rtr_n;
345  RzCoreRtrHost *rtr_host; // array of RzCoreRtrHost
352  // visual // TODO: move them into RzCoreVisual
353  bool visual_is_inputing; // whether the user is inputing
354  char *visual_inputing; // for filter on the go in Vv mode
355  int http_up;
358  char *stkcmd;
359  bool in_search;
360  RzList /*<RzCoreCmpWatcher *>*/ *watchers;
361  RzList /*<char *>*/ *scriptstack;
367  int curtab; // current tab
368  int seltab; // selected tab
369  char *cmdremote;
370  char *lastsearch;
371  char *cmdfilter;
372  char *curtheme;
374  bool binat;
375  bool fixedbits; // will be true when using @b:
376  bool fixedarch; // will be true when using @a:
378  char *table_query;
379  struct rz_core_t *c2;
382  int maxtab;
384  RzList /*<RzCoreGadget *>*/ *gadgets;
386  bool log_events; // core.c:cb_event_handler : log actions from events if cfg.log.events is set
387  RzList /*<char *>*/ *ropchain;
390 
393 
395  // int (*rz_main_rizin)(int argc, char **argv);
396  int (*rz_main_rz_find)(int argc, const char **argv);
397  int (*rz_main_rz_diff)(int argc, const char **argv);
398  int (*rz_main_rz_bin)(int argc, const char **argv);
399  int (*rz_main_rz_run)(int argc, const char **argv);
400  int (*rz_main_rz_gg)(int argc, const char **argv);
401  int (*rz_main_rz_asm)(int argc, const char **argv);
402  int (*rz_main_rz_ax)(int argc, const char **argv);
403 };
404 
405 // maybe move into RzAnalysis
406 typedef struct rz_core_item_t {
407  const char *type;
411  int size;
412  int perm;
413  char *data;
414  char *comment;
415  char *sectname;
416  char *fcnname;
418 
419 typedef int (*RzCoreSearchCallback)(RzCore *core, ut64 from, ut8 *buf, int len);
420 
426 typedef struct rz_bin_sym_names_t {
427  const char *pfx;
428  char *name;
429  char *symbolname;
430  char *libname;
431  char *nameflag;
432  char *demname;
433  char *demflag;
434  char *classname;
435  char *classflag;
436  char *methname;
437  char *methflag;
439 
446  char *text;
448 
449 #ifdef RZ_API
450 RZ_API int rz_core_bind(RzCore *core, RzCoreBind *bnd);
451 
452 RZ_API void rz_core_notify_begin(RZ_NONNULL RzCore *core, RZ_NONNULL const char *format, ...) RZ_PRINTF_CHECK(2, 3);
453 RZ_API void rz_core_notify_done(RZ_NONNULL RzCore *core, RZ_NONNULL const char *format, ...) RZ_PRINTF_CHECK(2, 3);
454 RZ_API void rz_core_notify_error(RZ_NONNULL RzCore *core, RZ_NONNULL const char *format, ...) RZ_PRINTF_CHECK(2, 3);
455 
461 
462 RZ_API bool rz_core_plugin_init(RzCore *core);
463 RZ_API bool rz_core_plugin_add(RzCore *core, RzCorePlugin *plugin);
464 RZ_API bool rz_core_plugin_fini(RzCore *core);
465 
466 // #define rz_core_ncast(x) (RzCore*)(size_t)(x)
468 RZ_API char *rz_core_theme_get(RzCore *core);
469 RZ_API bool rz_core_theme_load(RzCore *core, const char *name);
475 RZ_API bool rz_core_init(RzCore *core);
476 RZ_API void rz_core_bind_cons(RzCore *core); // to restore pointers in cons
477 RZ_API RzCore *rz_core_new(void);
478 RZ_API void rz_core_free(RzCore *core);
479 RZ_API void rz_core_fini(RzCore *c);
480 RZ_API void rz_core_wait(RzCore *core);
482 RZ_API RzCore *rz_core_cast(void *p);
488 RZ_API int rz_core_prompt(RzCore *core, int sync);
490 RZ_API void rz_core_prompt_loop(RzCore *core);
492 RZ_API int rz_core_cmd(RzCore *core, const char *cmd, int log);
495 RZ_API int rz_core_fgets(char *buf, int len, void *user);
497 RZ_API int rz_core_flush(RzCore *core, const char *cmd);
498 RZ_API void rz_core_cmd_init(RzCore *core);
499 RZ_API int rz_core_cmd_pipe_old(RzCore *core, char *rizin_cmd, char *shell_cmd);
500 RZ_API char *rz_core_cmd_str(RzCore *core, const char *cmd);
501 RZ_API ut8 *rz_core_cmd_raw(RzCore *core, const char *cmd, int *length);
502 RZ_API char *rz_core_cmd_strf(RzCore *core, const char *fmt, ...) RZ_PRINTF_CHECK(2, 3);
503 RZ_API char *rz_core_cmd_str_pipe(RzCore *core, const char *cmd);
504 RZ_API int rz_core_cmd_file(RzCore *core, const char *file);
505 RZ_API int rz_core_cmd_lines(RzCore *core, const char *lines);
507 RZ_API int rz_core_cmd_command(RzCore *core, const char *command);
510 RZ_API bool rz_core_seek(RzCore *core, ut64 addr, bool rb);
511 RZ_API bool rz_core_seek_and_save(RzCore *core, ut64 addr, bool rb);
512 RZ_API bool rz_core_seek_opt(RzCore *core, ut64 addr, bool read_block, bool save);
513 RZ_API bool rz_core_seek_mark(RzCore *core);
514 RZ_API bool rz_core_seek_save(RzCore *core);
515 RZ_API bool rz_core_seek_undo(RzCore *core);
516 RZ_API bool rz_core_seek_redo(RzCore *core);
517 RZ_API void rz_core_seek_reset(RzCore *core);
518 RZ_API void rz_core_seek_free(RzCore *core);
519 RZ_API RzList /*<RzCoreSeekItem *>*/ *rz_core_seek_list(RzCore *core);
521 RZ_API int rz_core_seek_base(RzCore *core, const char *hex, bool save);
522 RZ_API bool rz_core_seek_prev(RzCore *core, const char *type, bool save);
523 RZ_API bool rz_core_seek_next(RzCore *core, const char *type, bool save);
524 RZ_API bool rz_core_seek_align(RzCore *core, ut64 align, bool save);
525 RZ_API bool rz_core_seek_delta(RzCore *core, st64 delta, bool save);
530 RZ_API int rz_core_block_read(RzCore *core);
531 RZ_API bool rz_core_block_size(RzCore *core, ut32 bsize);
533 RZ_API int rz_core_write_hexpair(RzCore *core, ut64 addr, const char *pairs);
536 RZ_API bool rz_core_write_block(RzCore *core, ut64 addr, ut8 *data, size_t len);
537 RZ_API bool rz_core_write_seq_at(RzCore *core, ut64 addr, ut64 from, ut64 to, ut64 step, int value_size);
538 RZ_API bool rz_core_shift_block(RzCore *core, ut64 addr, ut64 b_size, st64 dist);
546 RZ_API void rz_core_visual_toggle_decompiler_disasm(RzCore *core, bool for_graph, bool reset);
549 RZ_API int rz_core_visual_xrefs(RzCore *core, bool xref_to, bool fcnInsteadOfAddr);
550 RZ_API void rz_core_visual_append_help(RzStrBuf *p, const char *title, const char **help);
551 RZ_API bool rz_core_prevop_addr(RzCore *core, ut64 start_addr, int numinstrs, ut64 *prev_addr);
552 RZ_API ut64 rz_core_prevop_addr_force(RzCore *core, ut64 start_addr, int numinstrs);
556 RZ_API int rz_core_visual(RzCore *core, const char *input);
557 RZ_API int rz_core_visual_graph(RzCore *core, RzAGraph *g, RzAnalysisFunction *_fcn, int is_interactive);
558 RZ_API bool rz_core_visual_panels_root(RzCore *core, RzPanelsRoot *panels_root);
559 RZ_API void rz_core_visual_browse(RzCore *core, const char *arg);
560 RZ_API int rz_core_visual_cmd(RzCore *core, const char *arg);
566 RZ_API void rz_core_visual_showcursor(RzCore *core, int x);
568 RZ_API bool rz_core_visual_hud(RzCore *core);
569 RZ_API void rz_core_visual_jump(RzCore *core, ut8 ch);
570 RZ_API void rz_core_visual_disasm_up(RzCore *core, int *cols);
571 RZ_API void rz_core_visual_disasm_down(RzCore *core, RzAsmOp *op, int *cols);
575 RZ_API void rz_core_set_asmqjmps(RzCore *core, char *str, size_t len, int i);
577 
579 RZ_API char *rz_core_analysis_hasrefs_to_depth(RzCore *core, ut64 value, PJ *pj, int depth);
581 RZ_API bool cmd_analysis_objc(RzCore *core, bool auto_analysis);
583 RZ_API void rz_core_analysis_paths(RzCore *core, ut64 from, ut64 to, bool followCalls, int followDepth, bool is_json);
584 RZ_API void rz_core_types_link(RzCore *core, const char *typestr, ut64 addr);
585 RZ_API RZ_OWN char *rz_core_types_as_c(RZ_NONNULL RzCore *core, RZ_NONNULL const char *name, bool multiline);
586 RZ_API RZ_OWN char *rz_core_types_as_c_all(RZ_NONNULL RzCore *core, bool multiline);
587 
591 RZ_API RZ_OWN RzPVector /*<RzAnalysisBytes *>*/ *rz_core_analysis_bytes(RZ_NONNULL RzCore *core, RZ_NONNULL const ut8 *buf, int len, int nops);
592 
593 RZ_API RzListInfo *rz_listinfo_new(const char *name, RzInterval pitv, RzInterval vitv, int perm, const char *extra);
595 /* visual marks */
596 RZ_API void rz_core_visual_mark_seek(RzCore *core, ut8 ch);
597 RZ_API void rz_core_visual_mark(RzCore *core, ut8 ch);
599 RZ_API void rz_core_visual_mark_del(RzCore *core, ut8 ch);
602 
604 RZ_API bool rz_core_serve(RzCore *core, RzIODesc *fd);
605 RZ_API bool rz_core_file_reopen(RzCore *core, const char *args, int perm, int binload);
608 RZ_API bool rz_core_file_resize(RzCore *core, ut64 newsize);
616 RZ_API int rz_core_setup_debugger(RzCore *r, const char *debugbackend, bool attach);
617 
618 RZ_API bool rz_core_file_open_load(RZ_NONNULL RzCore *core, RZ_NONNULL const char *filepath, ut64 addr, int perms, bool write_mode);
623 RZ_API bool rz_core_file_close_fd(RzCore *core, int fd);
630 RZ_API void rz_core_io_file_reopen(RZ_NONNULL RzCore *core, int fd, int perms);
632 RZ_API bool rz_core_write_at(RzCore *core, ut64 addr, const ut8 *buf, int size);
633 RZ_API bool rz_core_write_value_at(RzCore *core, ut64 addr, ut64 value, int sz);
641 RZ_API bool rz_core_write_random_at(RzCore *core, ut64 addr, size_t len);
648 
649 /* creg.c */
654 
655 /* cdebug.c */
656 RZ_API bool rz_core_is_debug(RzCore *core);
657 RZ_API bool rz_core_debug_step_one(RzCore *core, int times);
661 
662 RZ_API void rz_core_debug_ri(RzCore *core);
665 
668 RZ_API bool rz_core_debug_step_back(RzCore *core, int steps);
669 RZ_API bool rz_core_debug_step_over(RzCore *core, int steps);
670 RZ_API bool rz_core_debug_step_skip(RzCore *core, int times);
672 
673 RZ_API RZ_OWN RzList /*<RzBacktrace *>*/ *rz_core_debug_backtraces(RzCore *core);
675 
679 
680 /* chash.c */
682 
683 /* cio.c */
685 
686 /* cio.c */
688 
689 /* fortune */
694 
695 #define RZ_CORE_FOREIGN_ADDR -1
697 RZ_API bool rz_core_yank(RzCore *core, ut64 addr, ut64 len);
699 RZ_API bool rz_core_yank_hexpair(RzCore *core, const char *str);
702 RZ_API bool rz_core_yank_set_str(RzCore *core, ut64 addr, RZ_NONNULL const char *str);
708 RZ_API bool rz_core_yank_hud_file(RzCore *core, const char *input);
709 RZ_API bool rz_core_yank_hud_path(RzCore *core, const char *input, int dir);
710 RZ_API bool rz_core_yank_file(RzCore *core, ut64 len, ut64 addr, const char *filename);
711 RZ_API bool rz_core_yank_file_all(RzCore *core, const char *filename);
712 
713 #define RZ_CORE_LOADLIBS_ENV 1
714 #define RZ_CORE_LOADLIBS_HOME 2
715 #define RZ_CORE_LOADLIBS_SYSTEM 4
716 #define RZ_CORE_LOADLIBS_CONFIG 8
717 #define RZ_CORE_LOADLIBS_ALL UT32_MAX
718 
720 RZ_API int rz_core_loadlibs(RzCore *core, int where);
721 RZ_API RzCmd *rz_core_cmd_new(bool has_cons);
722 RZ_API int rz_core_cmd_buffer(RzCore *core, const char *buf);
723 RZ_API int rz_core_cmdf(RzCore *core, const char *fmt, ...) RZ_PRINTF_CHECK(2, 3);
724 RZ_API int rz_core_cmd0(RzCore *core, const char *cmd);
726 RZ_API int rz_core_cmd_foreach(RzCore *core, const char *cmd, char *each);
727 RZ_API int rz_core_cmd_foreach3(RzCore *core, const char *cmd, char *each);
728 RZ_API char *rz_core_op_str(RzCore *core, ut64 addr);
730 RZ_API char *rz_core_disassemble_instr(RzCore *core, ut64 addr, int l);
731 RZ_API char *rz_core_disassemble_bytes(RzCore *core, ut64 addr, int b);
732 
733 /* carg.c */
734 RZ_DEPRECATE RZ_API ut64 rz_core_arg_get(RzCore *core, const char *cc, int num);
735 RZ_API RZ_OWN RzList /*<RzAnalysisFuncArg *>*/ *rz_core_get_func_args(RzCore *core, const char *func_name);
737 RZ_API char *resolve_fcn_name(RzAnalysis *analysis, const char *func_name);
738 
739 /* clang.c */
741 
742 /* ccore.c */
744 
745 /* cil.c */
746 // TODO : They should have been there, but require `static` vars inside canalysis.c
747 // : Keep esil in canalysis.c, and split the rzil in cil.c
749 RZ_API bool rz_core_esil_cmd(RzAnalysisEsil *esil, const char *cmd, ut64 a1, ut64 a2);
750 RZ_API int rz_core_esil_step(RzCore *core, ut64 until_addr, const char *until_expr, ut64 *prev_addr, bool stepOver);
760 
761 /* canalysis.c */
762 typedef enum rz_core_analysis_name_type {
763  RZ_CORE_ANALYSIS_NAME_TYPE_VAR = 0,
764  RZ_CORE_ANALYSIS_NAME_TYPE_FUNCTION,
765  RZ_CORE_ANALYSIS_NAME_TYPE_FLAG,
766  RZ_CORE_ANALYSIS_NAME_TYPE_ADDRESS,
767 } RzCoreAnalysisNameType;
768 
769 typedef struct rz_core_analysis_name_t {
770  char *name;
771  char *realname;
772  RzCoreAnalysisNameType type;
773  ut64 offset;
774 } RzCoreAnalysisName;
775 
783 RZ_API int rz_core_analysis_search(RzCore *core, ut64 from, ut64 to, ut64 ref, int mode);
785 RZ_API int rz_core_analysis_data(RzCore *core, ut64 addr, int count, int depth, int wordsize);
788 RZ_API RzGraph /*<RzGraphNodeInfo *>*/ *rz_core_analysis_codexrefs(RzCore *core, ut64 addr);
789 RZ_API RzGraph /*<RzGraphNodeInfo *>*/ *rz_core_analysis_importxrefs(RzCore *core);
790 RZ_API void rz_core_analysis_callgraph(RzCore *core, ut64 addr, int fmt);
793 RZ_API void rz_core_agraph_print(RzCore *core, int use_utf, const char *input);
795 RZ_API bool rz_core_analysis_function_rename(RzCore *core, ut64 addr, const char *_name);
796 RZ_API bool rz_core_analysis_function_add(RzCore *core, const char *name, ut64 addr, bool analyze_recursively);
797 RZ_API int rz_core_analysis_fcn(RzCore *core, ut64 at, ut64 from, int reftype, int depth);
807 RZ_API bool rz_core_analysis_graph(RzCore *core, ut64 addr, int opts);
808 RZ_API RzList /*<RzAnalysisBlock *>*/ *rz_core_analysis_graph_to(RzCore *core, ut64 addr, int n);
810 RZ_API bool rz_core_analysis_everything(RzCore *core, bool experimental, char *dh_orig);
811 RZ_API RZ_OWN RzList /*<RzSigDBEntry *>*/ *rz_core_analysis_sigdb_list(RZ_NONNULL RzCore *core, bool with_details);
812 RZ_API bool rz_core_analysis_sigdb_apply(RZ_NONNULL RzCore *core, RZ_NULLABLE int *n_applied, RZ_NULLABLE const char *filter);
814 RZ_API RzList /*<RzAnalysisCycleHook *>*/ *rz_core_analysis_cycles(RzCore *core, int ccl);
815 RZ_API RzList /*<RzAnalysisXRef *>*/ *rz_core_analysis_fcn_get_calls(RzCore *core, RzAnalysisFunction *fcn); // get all calls from a function
816 RZ_API void rz_core_analysis_calls(RZ_NONNULL RzCore *core, bool imports_only);
818 RZ_API bool rz_core_analysis_hint_set_offset(RZ_NONNULL RzCore *core, RZ_NONNULL const char *struct_member);
821 
825 
826 RZ_API RZ_BORROW const char *rz_core_analysis_name_type_to_str(RzCoreAnalysisNameType typ);
827 RZ_API void rz_core_analysis_name_free(RZ_NULLABLE RzCoreAnalysisName *p);
828 RZ_API RZ_OWN RzCoreAnalysisName *rz_core_analysis_name(RZ_NONNULL RzCore *core, ut64 addr);
830 
831 /*tp.c*/
832 RZ_API void rz_core_analysis_type_match(RzCore *core, RzAnalysisFunction *fcn, HtUU *addr_loop_table);
833 
834 /* asm.c */
835 #define RZ_MIDFLAGS_HIDE 0
836 #define RZ_MIDFLAGS_SHOW 1
837 #define RZ_MIDFLAGS_REALIGN 2
838 #define RZ_MIDFLAGS_SYMALIGN 3
839 
840 typedef struct rz_core_asm_hit {
841  char *code;
842  int len;
843  ut64 addr;
844  ut8 valid;
845 } RzCoreAsmHit;
846 
850 typedef struct rz_core_disasm_options {
851  int invbreak;
852  int cbytes;
853  RzAnalysisFunction *function;
854  RzPVector *vec;
855 } RzCoreDisasmOptions;
856 
857 #define RZ_CORE_MAX_DISASM (1024 * 1024 * 8)
858 
859 RZ_API RzBuffer *rz_core_syscall(RzCore *core, const char *name, const char *args);
860 RZ_API RzBuffer *rz_core_syscallf(RzCore *core, const char *name, const char *fmt, ...) RZ_PRINTF_CHECK(3, 4);
861 RZ_API RzCoreAsmHit *rz_core_asm_hit_new(void);
862 RZ_API RzList /*<RzCoreAsmHit *>*/ *rz_core_asm_hit_list_new(void);
863 RZ_API void rz_core_asm_hit_free(void *_hit);
864 RZ_API void rz_core_set_asm_configs(RzCore *core, char *arch, ut32 bits, int segoff);
865 RZ_API char *rz_core_asm_search(RzCore *core, const char *input);
867 RZ_API RzList /*<RzCoreAsmHit *>*/ *rz_core_asm_strsearch(RzCore *core, const char *input, ut64 from, ut64 to, int maxhits, int regexp, int everyByte, int mode);
868 RZ_API RzList /*<RzCoreAsmHit *>*/ *rz_core_asm_bwdisassemble(RzCore *core, ut64 addr, int n, int len);
869 RZ_API RzList /*<RzCoreAsmHit *>*/ *rz_core_asm_back_disassemble_instr(RzCore *core, ut64 addr, int len, ut32 hit_count, ut32 extra_padding);
870 RZ_API RzList /*<RzCoreAsmHit *>*/ *rz_core_asm_back_disassemble_byte(RzCore *core, ut64 addr, int len, ut32 hit_count, ut32 extra_padding);
871 RZ_API ut32 rz_core_asm_bwdis_len(RzCore *core, int *len, ut64 *start_addr, ut32 l);
873 RZ_API int rz_core_print_disasm_json(RzCore *core, ut64 addr, ut8 *buf, int len, int lines, PJ *pj);
874 RZ_API int rz_core_print_disasm_instructions_with_buf(RzCore *core, ut64 address, ut8 *buf, int nb_bytes, int nb_opcodes);
875 RZ_API int rz_core_print_disasm_instructions(RzCore *core, int nb_bytes, int nb_opcodes);
876 RZ_API int rz_core_print_disasm_all(RzCore *core, ut64 addr, int l, int len, int mode);
877 RZ_API int rz_core_disasm_pdi_with_buf(RzCore *core, ut64 address, ut8 *buf, ut32 nb_opcodes, ut32 nb_bytes, int fmt);
878 RZ_API int rz_core_disasm_pdi(RzCore *core, int nb_opcodes, int nb_bytes, int fmt);
879 RZ_API int rz_core_disasm_pde(RzCore *core, int nb_opcodes, RzCmdStateOutput *state);
882 RZ_API int rz_core_flag_in_middle(RzCore *core, ut64 at, int oplen, int *midflags);
883 RZ_API int rz_core_bb_starts_in_middle(RzCore *core, ut64 at, int oplen);
885 
886 /* cbin.c */
887 RZ_API bool rz_core_bin_raise(RzCore *core, ut32 bfid);
890 RZ_API void rz_core_bin_options_init(RzCore *core, RZ_OUT RzBinOptions *opts, int fd, ut64 baseaddr, ut64 loadaddr);
893 RZ_API bool rz_core_bin_apply_maps(RzCore *core, RzBinFile *binfile, bool va);
894 RZ_API bool rz_core_bin_apply_main(RzCore *r, RzBinFile *binfile, bool va);
895 RZ_API bool rz_core_bin_apply_dwarf(RzCore *core, RzBinFile *binfile);
896 RZ_API bool rz_core_bin_apply_entry(RzCore *core, RzBinFile *binfile, bool va);
897 RZ_API bool rz_core_bin_apply_sections(RzCore *core, RzBinFile *binfile, bool va);
898 RZ_API bool rz_core_bin_apply_relocs(RzCore *core, RzBinFile *binfile, bool va);
899 RZ_API bool rz_core_bin_apply_imports(RzCore *core, RzBinFile *binfile, bool va);
900 RZ_API bool rz_core_bin_apply_symbols(RzCore *core, RzBinFile *binfile, bool va);
901 RZ_API bool rz_core_bin_apply_classes(RzCore *core, RzBinFile *binfile);
902 RZ_API bool rz_core_bin_apply_resources(RzCore *core, RzBinFile *binfile);
905 RZ_API int rz_core_bin_set_by_fd(RzCore *core, ut64 bin_fd);
907 RZ_API bool rz_core_bin_load(RZ_NONNULL RzCore *core, RZ_NULLABLE const char *file_uri, ut64 base_addr);
909 RZ_API void rz_core_bin_export_info(RzCore *core, int mode);
912 RZ_API RZ_OWN HtPP *rz_core_bin_create_digests(RzCore *core, ut64 paddr, ut64 size, RzList /*<char *>*/ *digests);
913 
916 
920 
921 // bin_dwarf
925 RZ_API void rz_core_bin_dwarf_print_loc(HtUP /*<offset, RzBinDwarfLocList *>*/ *loc_table, int addr_size);
926 RZ_API void rz_core_bin_dwarf_print_aranges(RzList /*<RzBinDwarfARangeSet *>*/ *aranges);
927 RZ_API void rz_core_bin_dwarf_print_line_units(RzList /*<RzBinDwarfLineUnit *>*/ *lines);
928 
929 /* gdiff.c */
930 RZ_API bool rz_core_gdiff_2_files(RzCore *core1, RzCore *core2);
932 RZ_API bool rz_core_gdiff_function_2_files(RzCore *core1, RzCore *core2, ut64 addr, ut64 addr2);
933 
935 RZ_API void rz_core_sysenv_end(RzCore *core);
936 
937 RZ_API void rz_core_recover_vars(RzCore *core, RzAnalysisFunction *fcn, bool argonly);
938 
939 /* cmd_linux_heap_glibc.c */
940 RZ_API RzList /*<RzHeapChunkListItem *>*/ *rz_heap_chunks_list(RzCore *core, ut64 m_arena);
941 RZ_API RzList /*<MallocState *>*/ *rz_heap_arenas_list(RzCore *core);
943 RZ_API RzHeapBin *rz_heap_bin_content(RzCore *core, MallocState *arena, int bin_num, ut64 m_arena);
944 RZ_API RzHeapBin *rz_heap_fastbin_content(RzCore *core, MallocState *arena, int bin_num);
946 RZ_API RzList /*<RzHeapBin *>*/ *rz_heap_tcache_content(RzCore *core, ut64 arena_base);
947 RZ_API bool rz_heap_write_chunk(RzCore *core, RzHeapChunkSimple *chunk_simple);
948 
949 /* cmd_windows_heap.c */
950 RZ_API RZ_OWN RzList /*<RzWindowsHeapBlock *>*/ *rz_heap_windows_blocks_list(RzCore *core);
951 RZ_API RZ_OWN RzList /*<RzWindowsHeapInfo *>*/ *rz_heap_windows_heap_list(RzCore *core);
952 
953 // XXX dupe from rz_bin.h
954 /* bin.c */
955 #define RZ_CORE_BIN_ACC_STRINGS 0x001
956 #define RZ_CORE_BIN_ACC_INFO 0x002
957 #define RZ_CORE_BIN_ACC_MAIN 0x004
958 #define RZ_CORE_BIN_ACC_ENTRIES 0x008
959 #define RZ_CORE_BIN_ACC_RELOCS 0x010
960 #define RZ_CORE_BIN_ACC_IMPORTS 0x020
961 #define RZ_CORE_BIN_ACC_SYMBOLS 0x040
962 #define RZ_CORE_BIN_ACC_SECTIONS 0x080
963 #define RZ_CORE_BIN_ACC_FIELDS 0x100
964 #define RZ_CORE_BIN_ACC_LIBS 0x200
965 #define RZ_CORE_BIN_ACC_CLASSES 0x400
966 #define RZ_CORE_BIN_ACC_DWARF 0x800
967 #define RZ_CORE_BIN_ACC_SIZE 0x1000
968 #define RZ_CORE_BIN_ACC_PDB 0x2000
969 #define RZ_CORE_BIN_ACC_MEM 0x4000
970 #define RZ_CORE_BIN_ACC_EXPORTS 0x8000
971 #define RZ_CORE_BIN_ACC_VERSIONINFO 0x10000
972 #define RZ_CORE_BIN_ACC_SIGNATURE 0x20000
973 #define RZ_CORE_BIN_ACC_RAW_STRINGS 0x40000
974 #define RZ_CORE_BIN_ACC_HEADER 0x80000
975 #define RZ_CORE_BIN_ACC_RESOURCES 0x100000
976 #define RZ_CORE_BIN_ACC_INITFINI 0x200000
977 #define RZ_CORE_BIN_ACC_SEGMENTS 0x400000
978 #define RZ_CORE_BIN_ACC_BASEFIND 0x800000
979 #define RZ_CORE_BIN_ACC_TRYCATCH 0x20000000
980 #define RZ_CORE_BIN_ACC_SECTIONS_MAPPING 0x40000000
981 #define RZ_CORE_BIN_ACC_MAPS 0x80000000
982 #define RZ_CORE_BIN_ACC_ALL 0x80504FFF
983 
984 #define RZ_CORE_PRJ_FLAGS 0x0001
985 #define RZ_CORE_PRJ_EVAL 0x0002
986 #define RZ_CORE_PRJ_IO_MAPS 0x0004
987 #define RZ_CORE_PRJ_SECTIONS 0x0008
988 #define RZ_CORE_PRJ_META 0x0010
989 #define RZ_CORE_PRJ_XREFS 0x0020
990 #define RZ_CORE_PRJ_FCNS 0x0040
991 #define RZ_CORE_PRJ_ANALYSIS_HINTS 0x0080
992 #define RZ_CORE_PRJ_ANALYSIS_TYPES 0x0100
993 #define RZ_CORE_PRJ_ANALYSIS_MACROS 0x0200
994 #define RZ_CORE_PRJ_ANALYSIS_SEEK 0x0400
995 #define RZ_CORE_PRJ_DBG_BREAK 0x0800
996 #define RZ_CORE_PRJ_ALL 0xFFFF
997 
998 typedef struct rz_core_bin_filter_t {
999  ut64 offset;
1000  const char *name;
1001 } RzCoreBinFilter;
1002 
1003 RZ_API int rz_core_bin_set_arch_bits(RzCore *r, const char *name, const char *arch, ut16 bits);
1014 RZ_API char *rz_core_bin_pdb_gvars_as_string(RZ_NONNULL const RzPdb *pdb, const ut64 img_base, PJ *pj, const RzOutputMode mode);
1016 
1028 RZ_API bool rz_core_bin_sections_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RzCoreBinFilter *filter, RzList /*<char *>*/ *hashes);
1031 RZ_API bool rz_core_bin_segments_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RzCoreBinFilter *filter, RzList /*<char *>*/ *hashes);
1038 RZ_API bool rz_core_bin_class_as_source_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, const char *class_name);
1051 RZ_API bool rz_core_bin_print(RzCore *core, RZ_NONNULL RzBinFile *bf, ut32 mask, RzCoreBinFilter *filter, RzCmdStateOutput *state, RzList /*<char *>*/ *hashes);
1053 
1054 // cmeta.c
1057 
1058 // cprint.c
1059 typedef enum {
1060  RZ_CORE_PRINT_FORMAT_TYPE_OCTAL = 0,
1061  RZ_CORE_PRINT_FORMAT_TYPE_INTEGER,
1062  RZ_CORE_PRINT_FORMAT_TYPE_HEXADECIMAL,
1063  RZ_CORE_PRINT_FORMAT_TYPE_INVALID,
1064 } RzCorePrintFormatType;
1065 
1067 RZ_API RZ_OWN char *rz_core_hex_of_assembly(RzCore *core, const char *assembly);
1068 RZ_API RZ_OWN char *rz_core_esil_of_assembly(RzCore *core, const char *assembly);
1069 RZ_API RZ_OWN char *rz_core_assembly_of_hex(RzCore *core, ut8 *hex, int len);
1070 RZ_API RZ_OWN char *rz_core_esil_of_hex(RzCore *core, ut8 *hex, int len);
1071 
1073 RZ_API RZ_OWN char *rz_core_print_dump_str(RZ_NONNULL RzCore *core, RzOutputMode mode, ut64 addr, ut8 n, int len, RzCorePrintFormatType format);
1075 RZ_API RZ_OWN char *rz_core_print_hexdump_byline_str(RZ_NONNULL RzCore *core, bool hex_offset, ut64 addr, int len, ut8 size);
1076 
1077 /* rtr */
1079 RZ_API int rz_core_rtr_cmds(RzCore *core, const char *port);
1080 RZ_API char *rz_core_rtr_cmds_query(RzCore *core, const char *host, const char *port, const char *cmd);
1081 RZ_API void rz_core_rtr_pushout(RzCore *core, const char *input);
1082 RZ_API void rz_core_rtr_list(RzCore *core);
1083 RZ_API void rz_core_rtr_add(RzCore *core, const char *input);
1084 RZ_API void rz_core_rtr_remove(RzCore *core, const char *input);
1085 RZ_API void rz_core_rtr_session(RzCore *core, const char *input);
1086 RZ_API void rz_core_rtr_cmd(RzCore *core, const char *input);
1087 RZ_API int rz_core_rtr_http(RzCore *core, int launch, int browse, const char *path);
1089 RZ_API int rz_core_rtr_gdb(RzCore *core, int launch, const char *path);
1090 
1092 RZ_API void rz_core_visual_config(RzCore *core);
1093 RZ_API void rz_core_visual_analysis(RzCore *core, const char *input);
1094 RZ_API void rz_core_visual_debugtraces(RzCore *core, const char *input);
1095 RZ_API void rz_core_visual_define(RzCore *core, const char *arg, int distance);
1101 RZ_API bool rz_core_visual_esil(RzCore *core);
1102 RZ_API int rz_core_search_preludes(RzCore *core, bool log);
1103 RZ_API int rz_core_search_prelude(RzCore *core, ut64 from, ut64 to, const ut8 *buf, int blen, const ut8 *mask, int mlen);
1104 RZ_API RZ_OWN RzList /*<RzIOMap *>*/ *rz_core_get_boundaries_prot(RzCore *core, int protection, const char *mode, const char *prefix);
1105 
1106 RZ_API void rz_core_hack_help(const RzCore *core);
1107 RZ_API bool rz_core_hack(RzCore *core, const char *op);
1108 RZ_API bool rz_core_dump(RzCore *core, const char *file, ut64 addr, ut64 size, int append);
1109 RZ_API void rz_core_diff_show(RzCore *core, RzCore *core2, bool json);
1110 RZ_API bool rz_core_diff_show_function(RzCore *core, RzCore *core2, ut64 addr, bool json);
1111 RZ_API void rz_core_clippy(RzCore *core, const char *msg);
1112 
1113 // TODO MOVE SOMEWHERE ELSE
1114 typedef char *(*PrintItemCallback)(void *user, void *p, bool selected);
1115 RZ_API char *rz_str_widget_list(void *user, RzList /*<void *>*/ *list, int rows, int cur, PrintItemCallback cb);
1116 /* help */
1117 RZ_API void rz_core_cmd_help(const RzCore *core, const char *help[]);
1118 RZ_API const char **rz_core_help_vars_get(RzCore *core);
1119 
1120 /* analysis stats */
1121 
1127 typedef struct {
1128  ut32 youarehere;
1129  ut32 flags;
1130  ut32 comments;
1131  ut32 functions;
1132  ut32 blocks;
1133  ut32 in_functions;
1134  ut32 symbols;
1135  ut32 strings;
1136  ut32 perm;
1137 } RzCoreAnalysisStatsItem;
1138 
1142 typedef struct {
1143  ut64 from;
1144  ut64 to;
1145  ut64 step;
1146  RzVector blocks;
1147 } RzCoreAnalysisStats;
1148 
1152 RZ_API void rz_core_analysis_stats_free(RzCoreAnalysisStats *s);
1153 RZ_API ut64 rz_core_analysis_stats_get_block_from(RZ_NONNULL const RzCoreAnalysisStats *s, size_t i);
1154 RZ_API ut64 rz_core_analysis_stats_get_block_to(RZ_NONNULL const RzCoreAnalysisStats *s, size_t i);
1155 
1158 
1160 
1161 /* tasks */
1162 
1163 typedef enum {
1164  RZ_CORE_TASK_STATE_BEFORE_START,
1165  RZ_CORE_TASK_STATE_RUNNING,
1166  RZ_CORE_TASK_STATE_SLEEPING,
1167  RZ_CORE_TASK_STATE_DONE
1168 } RzTaskState;
1169 
1173 typedef void (*RzCoreTaskRunner)(RzCoreTaskScheduler *sched, void *user);
1174 
1178 typedef void (*RzCoreTaskRunnerFree)(void *user);
1179 
1180 struct rz_core_task_t {
1181  RzCoreTaskScheduler *sched;
1182  int id;
1183  RzTaskState state;
1184  bool transient; // delete when finished
1185  int refcount;
1186  RzThreadSemaphore *running_sem;
1187  bool dispatched;
1188  RzThreadCond *dispatch_cond;
1189  RzThreadLock *dispatch_lock;
1190  RzThread *thread;
1191  bool breaked;
1192 
1193  RzCoreTaskRunner runner; // will be NULL for main task
1194  RzCoreTaskRunnerFree runner_free;
1195  void *runner_user;
1196 };
1197 
1198 typedef void (*RzCoreTaskOneShot)(void *);
1199 
1201 
1203  RzCoreTaskContextSwitch ctx_switch, void *ctx_switch_user,
1204  RzCoreTaskBreak break_cb, void *break_cb_user);
1208 RZ_API RzCoreTask *rz_core_task_new(RzCoreTaskScheduler *sched, RzCoreTaskRunner runner, RzCoreTaskRunnerFree runner_free, void *runner_user);
1212 RZ_API void rz_core_task_enqueue_oneshot(RzCoreTaskScheduler *scheduler, RzCoreTaskOneShot func, void *user);
1219 RZ_API void rz_core_task_break(RzCoreTaskScheduler *scheduler, int id);
1221 RZ_API int rz_core_task_del(RzCoreTaskScheduler *scheduler, int id);
1223 RZ_API void rz_core_task_join(RzCoreTaskScheduler *scheduler, RzCoreTask *current, int id);
1224 typedef void (*inRangeCb)(RzCore *core, ut64 from, ut64 to, int vsize, void *cb_user);
1226  ut64 vmin, ut64 vmax, int vsize, inRangeCb cb, void *cb_user);
1227 
1228 // core-specific tasks
1229 typedef void (*RzCoreCmdTaskFinished)(const char *res, void *user);
1230 RZ_API RzCoreTask *rz_core_cmd_task_new(RzCore *core, const char *cmd, RzCoreCmdTaskFinished finished_cb, void *finished_cb_user);
1231 RZ_API const char *rz_core_cmd_task_get_result(RzCoreTask *task);
1232 typedef void *(*RzCoreTaskFunction)(RzCore *core, void *user);
1233 RZ_API RzCoreTask *rz_core_function_task_new(RzCore *core, RzCoreTaskFunction fcn, void *fcn_user);
1235 RZ_API const char *rz_core_task_status(RzCoreTask *task);
1236 RZ_API void rz_core_task_print(RzCore *core, RzCoreTask *task, int mode, PJ *j);
1237 RZ_API void rz_core_task_list(RzCore *core, int mode);
1238 RZ_API bool rz_core_task_is_cmd(RzCore *core, int id);
1240 
1244 RZ_API RzCoreAutocomplete *rz_core_autocomplete_find(RzCoreAutocomplete *parent, const char *cmd, bool exact);
1245 RZ_API bool rz_core_autocomplete_remove(RzCoreAutocomplete *parent, const char *cmd);
1247 
1248 RZ_API bool rz_core_flirt_dump_file(RZ_NONNULL const char *flirt_file);
1249 RZ_API bool rz_core_flirt_create_file(RZ_NONNULL RzCore *core, RZ_NONNULL const char *output_file, RZ_NULLABLE ut32 *written_nodes);
1250 RZ_API bool rz_core_flirt_convert_file(RZ_NONNULL RzCore *core, RZ_NONNULL const char *input_file, RZ_NONNULL const char *ouput_file);
1256 
1257 /* PLUGINS */
1260 
1261 /* DECOMPILER PRINTING FUNCTIONS */
1282 RZ_API void rz_core_annotated_code_print(RzAnnotatedCode *code, RzVector /*<ut64>*/ *line_offsets);
1292 
1293 /* serialize */
1294 
1298 RZ_API void rz_serialize_core_save(RZ_NONNULL Sdb *db, RZ_NONNULL RzCore *core, RZ_NULLABLE const char *prj_file);
1299 
1304 RZ_API bool rz_serialize_core_load(RZ_NONNULL Sdb *db, RZ_NONNULL RzCore *core, bool load_bin_io,
1305  RZ_NULLABLE const char *prj_file, RZ_NULLABLE RzSerializeResultInfo *res);
1306 
1310 RZ_API bool rz_core_project_load_for_cli(RzCore *core, const char *file, bool load_bin_io);
1311 
1313 
1314 /* regs */
1316 typedef bool (*RzCmdRegSync)(RzCore *core, RzRegisterType type, bool write);
1317 RZ_API bool rz_core_reg_assign_sync(RZ_NONNULL RzCore *core, RZ_NONNULL RzReg *reg, RzCmdRegSync sync_cb, RZ_NONNULL const char *name, ut64 val);
1318 RZ_API RZ_OWN RzList /*<RzRegItem *>*/ *rz_core_reg_filter_items_sync(RZ_NONNULL RzCore *core, RZ_NONNULL RzReg *reg, RzCmdRegSync sync_cb, RZ_NULLABLE const char *filter);
1319 
1320 #endif
1321 
1322 #ifdef __cplusplus
1323 }
1324 #endif
1325 
1326 #endif
size_t len
Definition: 6502dis.c:15
RZ_API int rz_core_visual_graph(RzCore *core, RzAGraph *g, RzAnalysisFunction *_fcn, int is_interactive)
Definition: agraph.c:4114
static int disMode
Definition: agraph.c:14
#define mask()
RZ_API bool cmd_analysis_objc(RzCore *core, bool auto_analysis)
RZ_API void rz_core_analysis_type_match(RzCore *core, RzAnalysisFunction *fcn, HtUU *loop_table)
Definition: analysis_tp.c:816
lzma_index ** i
Definition: index.h:629
static RzILOpEffect * cls(cs_insn *insn)
Definition: arm_il64.c:915
ut16 val
Definition: armass64_const.h:6
static const AvrInstruction instructions[]
Definition: assembler.c:880
static ut64 baddr(RzBinFile *bf)
Definition: bin_any.c:58
RzBinInfo * info(RzBinFile *bf)
Definition: bin_ne.c:86
RzList * symbols(RzBinFile *bf)
Definition: bin_ne.c:102
static RzBinSourceLineInfo * lines(RzBinFile *bf)
Definition: bin_symbols.c:427
const char * desc
Definition: bin_vsf.c:19
int bits(struct state *s, int need)
Definition: blast.c:72
FILE * fh
Definition: cabinfo.c:52
RZ_API void rz_core_analysis_function_strings_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzAnalysisFunction *fcn, RZ_NULLABLE PJ *pj)
Print all string flags referenced by the function.
Definition: canalysis.c:612
RZ_API RzGraph * rz_core_analysis_codexrefs(RzCore *core, ut64 addr)
Definition: canalysis.c:2412
RZ_API void rz_core_analysis_fcn_merge(RzCore *core, ut64 addr, ut64 addr2)
Definition: canalysis.c:4042
RZ_API RzList * rz_core_analysis_fcn_get_calls(RzCore *core, RzAnalysisFunction *fcn)
Definition: canalysis.c:2663
RZ_API char * rz_core_analysis_fcn_name(RzCore *core, RzAnalysisFunction *fcn)
Definition: canalysis.c:2647
RZ_API RZ_OWN RzPVector * rz_core_analysis_bytes(RZ_NONNULL RzCore *core, RZ_NONNULL const ut8 *buf, int len, int nops)
Definition: canalysis.c:6817
RZ_API void rz_core_analysis_hint_print(RzAnalysis *a, ut64 addr, RzCmdStateOutput *state)
Definition: canalysis.c:1433
RZ_API void rz_core_recover_vars(RzCore *core, RzAnalysisFunction *fcn, bool argonly)
Definition: canalysis.c:2779
RZ_API bool rz_core_analysis_esil_trace_stop(RzCore *core)
Stop ESIL trace session.
Definition: canalysis.c:6770
RZ_API int rz_core_analysis_fcn_clean(RzCore *core, ut64 addr)
Definition: canalysis.c:2099
RZ_API int rz_core_print_bb_custom(RzCore *core, RzAnalysisFunction *fcn)
Definition: canalysis.c:2118
RZ_API void rz_core_analysis_sigdb_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzTable *table)
Adds all the signatures to a RzTable structure.
Definition: canalysis.c:6026
RZ_API RzList * rz_core_analysis_graph_to(RzCore *core, ut64 addr, int n)
Definition: canalysis.c:2895
RZ_API int rz_core_analysis_all(RzCore *core)
Definition: canalysis.c:3552
RZ_API void rz_core_analysis_stats_free(RzCoreAnalysisStats *s)
Definition: canalysis.c:3818
RZ_API bool rz_core_analysis_continue_until_call(RZ_NONNULL RzCore *core)
Continue until call.
Definition: canalysis.c:7041
RZ_API ut64 rz_core_analysis_address(RzCore *core, ut64 addr)
Definition: canalysis.c:168
RZ_API void rz_core_analysis_type_init(RzCore *core)
Definition: canalysis.c:6610
RZ_API void rz_core_analysis_undefine(RzCore *core, ut64 off)
Definition: canalysis.c:4028
RZ_API bool rz_core_analysis_function_add(RzCore *core, const char *name, ut64 addr, bool analyze_recursively)
Definition: canalysis.c:5298
RZ_API int rz_core_analysis_search(RzCore *core, ut64 from, ut64 to, ut64 ref, int mode)
Definition: canalysis.c:3071
RZ_API void rz_core_analysis_cc_init(RzCore *core)
Definition: canalysis.c:6628
RZ_API void rz_core_analysis_coderefs(RzCore *core, ut64 addr)
Definition: canalysis.c:2342
RZ_API RZ_OWN RzCoreAnalysisStats * rz_core_analysis_get_stats(RZ_NONNULL RzCore *core, ut64 from, ut64 to, ut64 step)
Definition: canalysis.c:3722
RZ_API void rz_core_analysis_callgraph(RzCore *core, ut64 addr, int fmt)
Definition: canalysis.c:2425
RZ_API void rz_core_analysis_flag_every_function(RzCore *core)
Definition: canalysis.c:5202
RZ_API void rz_core_analysis_datarefs(RzCore *core, ut64 addr)
Definition: canalysis.c:2314
RZ_API void rz_core_analysis_hint_list_print(RzAnalysis *a, RzCmdStateOutput *state)
Definition: canalysis.c:1422
RZ_API RzAnalysisOp * rz_core_analysis_op(RzCore *core, ut64 addr, int mask)
Definition: canalysis.c:1033
RZ_API void rz_core_analysis_autoname_all_fcns(RzCore *core)
Definition: canalysis.c:504
RZ_API bool rz_platform_index_add_flags_comments(RzCore *core)
Adds the information from the Platform Profiles as flags and comments.
Definition: canalysis.c:5263
RZ_API bool rz_core_analysis_continue_until_syscall(RZ_NONNULL RzCore *core)
Continue until syscall.
Definition: canalysis.c:7005
RZ_API st64 rz_core_analysis_code_count(RZ_NONNULL RzCore *core)
Compute analysis code count.
Definition: canalysis.c:7098
RZ_API bool rz_core_analysis_everything(RzCore *core, bool experimental, char *dh_orig)
Definition: canalysis.c:5784
RZ_API RzList * rz_core_analysis_cycles(RzCore *core, int ccl)
Definition: canalysis.c:3847
RZ_API ut64 rz_core_analysis_stats_get_block_from(RZ_NONNULL const RzCoreAnalysisStats *s, size_t i)
Definition: canalysis.c:3829
RZ_API int rz_core_get_stacksz(RzCore *core, ut64 from, ut64 to)
Definition: canalysis.c:6582
RZ_API RZ_BORROW const char * rz_core_analysis_name_type_to_str(RzCoreAnalysisNameType typ)
Convert typ to string (const char*)
Definition: canalysis.c:7140
RZ_API int rz_core_analysis_search_xrefs(RZ_NONNULL RzCore *core, ut64 from, ut64 to)
Searches for xrefs in the range of the paramters 'from' and 'to'.
Definition: canalysis.c:3380
RZ_API bool rz_core_analysis_esil_trace_start(RzCore *core)
Start ESIL trace session.
Definition: canalysis.c:6746
RZ_API void rz_core_analysis_esil(RzCore *core, ut64 addr, ut64 size, RZ_NULLABLE RzAnalysisFunction *fcn)
Definition: canalysis.c:4499
RZ_API RZ_OWN RzList * rz_core_analysis_sigdb_list(RZ_NONNULL RzCore *core, bool with_details)
Returns all the signatures found in the default path.
Definition: canalysis.c:5994
RZ_API void rz_core_analysis_propagate_noreturn(RzCore *core, ut64 addr)
Definition: canalysis.c:5630
RZ_API void rz_core_analysis_paths(RzCore *core, ut64 from, ut64 to, bool followCalls, int followDepth, bool is_json)
Definition: canalysis.c:5121
RZ_API bool rz_core_analysis_function_rename(RzCore *core, ut64 addr, const char *_name)
Definition: canalysis.c:5270
RZ_API bool rz_core_analysis_graph(RzCore *core, ut64 addr, int opts)
Definition: canalysis.c:2917
RZ_API st64 rz_core_analysis_coverage_count(RZ_NONNULL RzCore *core)
Compute analysis coverage count.
Definition: canalysis.c:7072
RZ_API st64 rz_core_analysis_calls_count(RZ_NONNULL RzCore *core)
Compute analysis function xrefs count.
Definition: canalysis.c:7115
RZ_API ut64 rz_core_analysis_stats_get_block_to(RZ_NONNULL const RzCoreAnalysisStats *s, size_t i)
Definition: canalysis.c:3837
RZ_API int rz_core_analysis_fcn(RzCore *core, ut64 at, ut64 from, int reftype, int depth)
Definition: canalysis.c:2026
RZ_API void rz_core_analysis_resolve_jumps(RZ_NONNULL RzCore *core)
Resolves any unresolved jump.
Definition: canalysis.c:3242
RZ_API void rz_analysis_bytes_free(RZ_NULLABLE void *ptr)
Definition: canalysis.c:6791
RZ_API bool rz_core_analysis_rename(RZ_NONNULL RzCore *core, RZ_NONNULL const char *name, ut64 addr)
Rename whatever var/flag/function is used at addr to name.
Definition: canalysis.c:7166
RZ_API int rz_core_print_bb_gml(RzCore *core, RzAnalysisFunction *fcn)
Definition: canalysis.c:2193
RZ_API int rz_core_search_value_in_range(RzCore *core, RzInterval search_itv, ut64 vmin, ut64 vmax, int vsize, inRangeCb cb, void *cb_user)
Definition: canalysis.c:4895
RZ_API RzGraph * rz_core_analysis_importxrefs(RzCore *core)
Definition: canalysis.c:2387
RZ_API RZ_OWN RzCoreAnalysisName * rz_core_analysis_name(RZ_NONNULL RzCore *core, ut64 addr)
Get information on whatever var/flag/function is used at addr.
Definition: canalysis.c:7203
RZ_API int rz_core_analysis_data(RzCore *core, ut64 addr, int count, int depth, int wordsize)
Definition: canalysis.c:3635
RZ_API RZ_OWN char * rz_core_analysis_function_autoname(RZ_NONNULL RzCore *core, RZ_NONNULL RzAnalysisFunction *fcn)
Suggest a name for the function.
Definition: canalysis.c:545
RZ_API bool rz_core_analysis_sigdb_apply(RZ_NONNULL RzCore *core, RZ_NULLABLE int *n_applied, RZ_NULLABLE const char *filter)
tries to apply the signatures in the flirt.sigdb.path
Definition: canalysis.c:6057
RZ_API void rz_core_analysis_name_free(RZ_NULLABLE RzCoreAnalysisName *p)
Definition: canalysis.c:7153
RZ_API bool rz_core_analysis_refs(RZ_NONNULL RzCore *core, size_t nbytes)
Analyze xrefs and prints the result.
Definition: canalysis.c:3272
RZ_API bool rz_core_analysis_hint_set_offset(RZ_NONNULL RzCore *core, RZ_NONNULL const char *struct_member)
Set analysis hint for the first immediate of the instruction at current offset to struct_member.
Definition: canalysis.c:6947
RZ_API void rz_core_annotated_code_print_json(RzAnnotatedCode *code)
RZ_API void rz_core_annotated_code_print(RzAnnotatedCode *code, RzVector *line_offsets)
RZ_API void rz_core_annotated_code_print_comment_cmds(RzAnnotatedCode *code)
RZ_API void rz_core_print_func_args(RzCore *core)
Definition: carg.c:203
RZ_API RZ_OWN RzList * rz_core_get_func_args(RzCore *core, const char *fcn_name)
Definition: carg.c:276
RZ_DEPRECATE RZ_API ut64 rz_core_arg_get(RzCore *core, const char *cc, int num)
Get the value of the num-th argument from the current debug or emulation state.
Definition: carg.c:13
RZ_API char * resolve_fcn_name(RzAnalysis *analysis, const char *func_name)
Definition: carg.c:86
RZ_API char * rz_core_asm_search(RzCore *core, const char *input)
Definition: casm.c:56
RZ_API ut32 rz_core_asm_bwdis_len(RzCore *core, int *instr_len, ut64 *start_addr, ut32 nb)
Definition: casm.c:890
RZ_API RzList * rz_core_asm_back_disassemble_byte(RzCore *core, ut64 addr, int len, ut32 hit_count, ut32 extra_padding)
Definition: casm.c:882
RZ_API RzList * rz_core_asm_strsearch(RzCore *core, const char *input, ut64 from, ut64 to, int maxhits, int regexp, int everyByte, int mode)
Definition: casm.c:185
RZ_API RzCoreAsmHit * rz_core_asm_hit_new(void)
Definition: casm.c:28
RZ_API void rz_core_asm_hit_free(void *_hit)
Definition: casm.c:46
RZ_API RzCmdStatus rz_core_asm_plugins_print(RzCore *core, const char *arch, RzCmdStateOutput *state)
Definition: casm.c:150
RZ_API RzList * rz_core_asm_hit_list_new(void)
Definition: casm.c:38
RZ_API RzList * rz_core_asm_bwdisassemble(RzCore *core, ut64 addr, int n, int len)
Definition: casm.c:612
RZ_API RzList * rz_core_asm_back_disassemble_instr(RzCore *core, ut64 addr, int len, ut32 hit_count, ut32 extra_padding)
Definition: casm.c:876
RZ_API RzLineNSCompletionResult * rz_core_autocomplete_rzshell(RzCore *core, RzLineBuffer *buf, RzLinePromptType prompt_type)
Definition: cautocmpl.c:1048
RZ_API bool rz_core_bin_class_as_source_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, const char *class_name)
Definition: cbin.c:3773
RZ_API bool rz_core_sym_is_export(RZ_NONNULL RzBinSymbol *s)
Is RzBinSymbol exported?
Definition: cbin.c:1916
RZ_API bool rz_core_bin_exports_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RzCoreBinFilter *filter)
Definition: cbin.c:2044
RZ_API char * rz_core_bin_method_flags_str(ut64 flags, int mode)
Definition: cbin.c:4731
RZ_API void rz_core_bin_export_info(RzCore *core, int mode)
Definition: cbin.c:108
RZ_API bool rz_core_bin_headers_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf)
Definition: cbin.c:4122
RZ_API void rz_core_bin_print_source_line_info(RzCore *core, const RzBinSourceLineInfo *li, RzCmdStateOutput *state)
Definition: cbin.c:1811
RZ_API void rz_core_sym_name_init(RZ_NONNULL RzCore *r, RZ_OUT RzBinSymNames *sn, RZ_NONNULL RzBinSymbol *sym, RZ_NULLABLE const char *lang)
Initlize sn.
Definition: cbin.c:1322
RZ_API bool rz_core_bin_fields_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:4070
RZ_API bool rz_core_bin_apply_info(RzCore *r, RzBinFile *binfile, ut32 mask)
Definition: cbin.c:261
RZ_API bool rz_core_bin_entries_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:1907
RZ_API bool rz_core_bin_apply_main(RzCore *r, RzBinFile *binfile, bool va)
Definition: cbin.c:637
RZ_API RZ_OWN char * rz_core_bin_field_build_flag_name(RZ_NONNULL RzBinClass *cls, RZ_NONNULL RzBinField *field)
Returns the flag name of a class field.
Definition: cbin.c:4708
RZ_API bool rz_core_bin_apply_relocs(RzCore *core, RzBinFile *binfile, bool va_bool)
Definition: cbin.c:1206
RZ_API bool rz_core_bin_apply_maps(RzCore *core, RzBinFile *binfile, bool va)
Definition: cbin.c:887
RZ_API bool rz_core_bin_cur_symbol_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:2036
RZ_API bool rz_core_bin_memory_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:4955
RZ_API bool rz_core_bin_whole_strings_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:2917
RZ_API RZ_OWN HtPP * rz_core_bin_create_digests(RzCore *core, ut64 paddr, ut64 size, RzList *digests)
Create a hashtable of digests.
Definition: cbin.c:1641
RZ_API bool rz_core_bin_signatures_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:4038
RZ_API bool rz_core_bin_cur_export_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:2050
RZ_API bool rz_core_bin_libs_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:2163
RZ_API bool rz_core_bin_apply_sections(RzCore *core, RzBinFile *binfile, bool va)
Definition: cbin.c:926
RZ_API bool rz_core_bin_apply_symbols(RzCore *core, RzBinFile *binfile, bool va)
Definition: cbin.c:1447
RZ_API RZ_OWN RzList * rz_core_bin_whole_strings(RZ_NONNULL RzCore *core, RZ_NULLABLE RzBinFile *bf)
Definition: cbin.c:2866
RZ_API bool rz_core_bin_set_cur(RZ_NONNULL RzCore *core, RZ_NULLABLE RzBinFile *binfile)
Set binfile as current binfile.
Definition: cbin.c:1673
RZ_API bool rz_core_bin_initfini_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:1901
RZ_API bool rz_core_bin_print(RzCore *core, RZ_NONNULL RzBinFile *bf, ut32 mask, RzCoreBinFilter *filter, RzCmdStateOutput *state, RzList *hashes)
Print (to RzCons or inside RzCmdStateOutput) the binary information specified in mask.
Definition: cbin.c:386
RZ_API RZ_OWN char * rz_core_bin_super_build_flag_name(RZ_NONNULL RzBinClass *cls)
Returns the flag name of a super class.
Definition: cbin.c:4657
RZ_API bool rz_core_bin_apply_dwarf(RzCore *core, RzBinFile *binfile)
Definition: cbin.c:654
RZ_API int rz_core_bin_set_by_name(RzCore *core, const char *name)
Definition: cbin.c:253
RZ_API bool rz_core_binfiles_delete(RzCore *core, RzBinFile *bf)
Close an opened binary file.
Definition: cbin.c:4542
RZ_API int rz_core_bin_set_by_fd(RzCore *core, ut64 bin_fd)
Definition: cbin.c:100
RZ_API bool rz_core_bin_sections_mapping_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:5117
RZ_API int rz_core_bin_update_arch_bits(RzCore *r)
Definition: cbin.c:4503
RZ_API bool rz_core_binfiles_print(RzCore *core, RzCmdStateOutput *state)
Print all the opened binary files according to state.
Definition: cbin.c:4603
RZ_API RZ_OWN char * rz_core_bin_class_build_flag_name(RZ_NONNULL RzBinClass *cls)
Returns the flag name of a class.
Definition: cbin.c:4634
RZ_API bool rz_core_bin_size_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:5151
RZ_API bool rz_core_bin_apply_config(RzCore *r, RzBinFile *binfile)
Definition: cbin.c:582
RZ_API bool rz_core_bin_relocs_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:2224
RZ_API bool rz_core_bin_resources_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RZ_NULLABLE RzList *hashes)
Definition: cbin.c:5045
RZ_API void rz_core_bin_print_source_line_sample(RzCore *core, const RzBinSourceLineSample *s, RzCmdStateOutput *state)
Definition: cbin.c:1778
RZ_API bool rz_core_bin_archs_print(RZ_NONNULL RzBin *bin, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:5217
RZ_API bool rz_core_bin_info_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:3044
RZ_API bool rz_core_bin_segments_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RzCoreBinFilter *filter, RzList *hashes)
Definition: cbin.c:2633
RZ_API RzCmdStatus rz_core_bin_plugins_print(RzBin *bin, RzCmdStateOutput *state)
Definition: cbin.c:4855
RZ_API void rz_core_bin_options_init(RzCore *core, RZ_OUT RzBinOptions *opts, int fd, ut64 baseaddr, ut64 loadaddr)
Definition: cbin.c:87
RZ_API bool rz_core_bin_apply_imports(RzCore *core, RzBinFile *binfile, bool va)
Definition: cbin.c:1255
RZ_API bool rz_core_bin_cur_section_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RzList *hashes)
Definition: cbin.c:2541
RZ_API RZ_OWN char * rz_core_bin_method_build_flag_name(RZ_NONNULL RzBinClass *cls, RZ_NONNULL RzBinSymbol *meth)
Returns the flag name of a class method.
Definition: cbin.c:4680
RZ_API RZ_BORROW const char * rz_core_bin_get_compile_time(RZ_NONNULL RzBinFile *bf)
Get TimeDateStamp string from bf->sdb with key "info.image_file_header.TimeDateStamp_string".
Definition: cbin.c:1707
RZ_API bool rz_core_bin_strings_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:2853
RZ_API bool rz_core_bin_symbols_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RzCoreBinFilter *filter)
Definition: cbin.c:2030
RZ_API bool rz_core_bin_apply_resources(RzCore *core, RzBinFile *binfile)
Definition: cbin.c:1596
RZ_API bool rz_core_bin_classes_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:3939
RZ_API bool rz_core_bin_apply_strings(RzCore *r, RzBinFile *binfile)
Definition: cbin.c:531
RZ_API RZ_OWN char * rz_core_bin_pdb_get_filename(RZ_NONNULL RzCore *core)
Definition: cbin.c:4886
RZ_API bool rz_core_bin_dwarf_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:4880
RZ_API bool rz_core_bin_cur_segment_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RzList *hashes)
Definition: cbin.c:2549
RZ_API bool rz_core_bin_class_fields_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, const char *class_name)
Definition: cbin.c:3814
RZ_API bool rz_core_bin_raise(RzCore *core, ut32 bfid)
Definition: cbin.c:4524
RZ_API bool rz_core_bin_apply_entry(RzCore *core, RzBinFile *binfile, bool va)
Definition: cbin.c:699
RZ_API bool rz_core_bin_load_structs(RZ_NONNULL RzCore *core, RZ_NONNULL const char *file)
Definition: cbin.c:236
RZ_API int rz_core_bin_set_arch_bits(RzCore *r, const char *name, const char *arch, ut16 bits)
Definition: cbin.c:4467
RZ_API bool rz_core_file_info_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *binfile, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:2943
RZ_API void rz_core_sym_name_fini(RZ_NULLABLE RzBinSymNames *sn)
RZ_FREE all member of sn (sn->*)
Definition: cbin.c:1371
RZ_API bool rz_core_bin_sections_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RzCoreBinFilter *filter, RzList *hashes)
Definition: cbin.c:2472
RZ_API bool rz_core_bin_imports_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, RzCoreBinFilter *filter)
Definition: cbin.c:2058
RZ_API bool rz_core_bin_apply_classes(RzCore *core, RzBinFile *binfile)
Definition: cbin.c:1552
RZ_API bool rz_core_bin_basefind_print(RzCore *core, ut32 pointer_size, RzCmdStateOutput *state)
Definition: cbin.c:2573
RZ_API bool rz_core_bin_pdb_load(RZ_NONNULL RzCore *core, RZ_NONNULL const char *filename)
Definition: cbin.c:5264
RZ_API bool rz_core_bin_versions_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:5084
RZ_API bool rz_core_bin_apply_all_info(RzCore *r, RzBinFile *binfile)
Definition: cbin.c:311
RZ_API bool rz_core_bin_trycatch_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:5102
RZ_API bool rz_core_bin_main_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state)
Definition: cbin.c:2192
RZ_API bool rz_core_bin_class_methods_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzBinFile *bf, RZ_NONNULL RzCmdStateOutput *state, const char *class_name)
Definition: cbin.c:3881
RZ_API void rz_core_parse_rizinrc(RzCore *r)
Definition: cconfig.c:3704
RZ_API void rz_core_config_print_all(RzConfig *cfg, const char *str, RzCmdStateOutput *state)
Prints the configuation variables with their description and its values.
Definition: cconfig.c:1770
RZ_API bool rz_core_esil_cmd(RzAnalysisEsil *esil, const char *cmd, ut64 a1, ut64 a2)
Definition: cconfig.c:1669
RZ_API int rz_core_config_init(RzCore *core)
Definition: cconfig.c:2830
RZ_API RZ_OWN RzList * rz_core_config_in_space(RZ_NONNULL RzCore *core, RZ_NULLABLE const char *space)
Get config variable spaces.
Definition: cconfig.c:3759
RZ_API void rz_core_debug_bp_add_noreturn_func(RzCore *core)
Put a breakpoint into every no-return function.
Definition: cdebug.c:256
RZ_API void rz_core_debug_map_print(RzCore *core, ut64 addr, RzCmdStateOutput *state)
Definition: cdebug.c:481
RZ_API void rz_backtrace_free(RZ_NULLABLE RzBacktrace *bt)
Definition: cdebug.c:853
RZ_API bool rz_core_debug_step_over(RzCore *core, int steps)
Step over.
Definition: cdebug.c:802
RZ_API void rz_core_debug_breakpoint_toggle(RZ_NONNULL RzCore *core, ut64 addr)
Toggle breakpoint.
Definition: cdebug.c:235
RZ_API bool rz_core_debug_step_skip(RzCore *core, int times)
Skip operations.
Definition: cdebug.c:831
RZ_API bool rz_core_debug_step_back(RzCore *core, int steps)
Step back.
Definition: cdebug.c:777
RZ_API bool rz_core_debug_step_until_frame(RzCore *core)
Step until end of frame.
Definition: cdebug.c:745
RZ_API RZ_OWN RzList * rz_core_debug_backtraces(RzCore *core)
Get backtraces based on dbg.btdepth and dbg.btalgo.
Definition: cdebug.c:926
RZ_API bool rz_core_is_debug(RzCore *core)
Check whether the core is in debug mode (equivalent to cfg.debug)
Definition: cdebug.c:13
RZ_API bool rz_core_debug_continue_until(RzCore *core, ut64 addr, ut64 to)
Definition: cdebug.c:98
RZ_API bool rz_core_debug_process_close(RzCore *core)
Close debug process (Kill debugee and all child processes)
Definition: cdebug.c:707
RZ_API void rz_core_debug_map_update_flags(RzCore *core)
Definition: cdebug.c:462
RZ_API RzCmdStatus rz_core_debug_plugins_print(RzCore *core, RzCmdStateOutput *state)
Definition: cdebug.c:329
RZ_API bool rz_core_debug_step_one(RzCore *core, int times)
Definition: cdebug.c:56
RZ_API void rz_core_bin_dwarf_print_abbrev_section(const RzBinDwarfDebugAbbrev *da)
Definition: cdwarf.c:6
RZ_API void rz_core_bin_dwarf_print_debug_info(const RzBinDwarfDebugInfo *inf)
Definition: cdwarf.c:121
RZ_API void rz_core_bin_dwarf_print_attr_value(const RzBinDwarfAttrValue *val)
Definition: cdwarf.c:32
RZ_API void rz_core_bin_dwarf_print_line_units(RzList *lines)
Definition: cdwarf.c:343
RZ_API void rz_core_bin_dwarf_print_aranges(RzList *aranges)
Definition: cdwarf.c:222
RZ_API void rz_core_bin_dwarf_print_loc(HtUP *loc_table, int addr_size)
Definition: cdwarf.c:196
RZ_API ut32 rz_core_file_cur_fd(RzCore *core)
Definition: cfile.c:1584
RZ_API RZ_BORROW RzCoreFile * rz_core_file_open_many(RZ_NONNULL RzCore *r, RZ_NULLABLE const char *file, int perm, ut64 base_address)
Open the file as a compilation of files.
Definition: cfile.c:1133
RZ_API bool rz_core_file_close_all_but(RzCore *core)
Definition: cfile.c:1505
RZ_API void rz_core_sysenv_begin(RzCore *core)
Definition: cfile.c:540
RZ_API RzCoreFile * rz_core_file_cur(RzCore *r)
Definition: cfile.c:1591
RZ_API bool rz_core_file_reopen(RzCore *core, const char *args, int perm, int loadbin)
Definition: cfile.c:322
RZ_API RzCoreFile * rz_core_file_find_by_fd(RzCore *core, ut64 fd)
Definition: cfile.c:1528
RZ_API bool rz_core_file_print(RzCore *core, RzOutputMode mode)
Definition: cfile.c:1372
RZ_API void rz_core_file_reopen_debug(RzCore *core, const char *args)
Definition: cfile.c:269
RZ_API void rz_core_file_close(RzCoreFile *fh)
Definition: cfile.c:1299
RZ_API void rz_core_io_file_open(RZ_NONNULL RzCore *core, int fd)
Open file use read-only Permission.
Definition: cfile.c:1601
RZ_API int rz_core_file_set_by_file(RzCore *core, RzCoreFile *cf)
Definition: cfile.c:1573
RZ_API bool rz_core_file_resize(RzCore *core, ut64 newsize)
Definition: cfile.c:518
RZ_API bool rz_core_file_bin_raise(RzCore *core, ut32 bfid)
Definition: cfile.c:1451
RZ_API void rz_core_file_reopen_remote_debug(RzCore *core, const char *uri, ut64 addr)
Definition: cfile.c:222
RZ_API bool rz_core_raw_file_print(RzCore *core)
Definition: cfile.c:1339
RZ_API int rz_core_bin_rebase(RzCore *core, ut64 baddr)
Definition: cfile.c:822
RZ_API void rz_core_io_file_reopen(RZ_NONNULL RzCore *core, int fd, int perms)
Reopen file.
Definition: cfile.c:1650
RZ_API RZ_BORROW RzCoreFile * rz_core_file_open(RZ_NONNULL RzCore *r, RZ_NONNULL const char *file, int flags, ut64 loadaddr)
Tries to open the file as is, otherwise tries as is a compilation of files.
Definition: cfile.c:1182
RZ_API void rz_core_sysenv_end(RzCore *core)
Definition: cfile.c:526
RZ_API RzCoreFile * rz_core_file_get_by_fd(RzCore *core, int fd)
Definition: cfile.c:1328
RZ_API RzCoreFile * rz_core_file_find_by_name(RzCore *core, const char *name)
Definition: cfile.c:1540
RZ_API int rz_core_file_binlist(RzCore *core)
Definition: cfile.c:1465
RZ_API int rz_core_file_set_by_name(RzCore *core, const char *name)
Definition: cfile.c:1568
RZ_API bool rz_core_file_close_fd(RzCore *core, int fd)
Definition: cfile.c:1510
RZ_API bool rz_core_file_resize_delta(RzCore *core, st64 delta)
Definition: cfile.c:522
RZ_API bool rz_core_file_open_load(RZ_NONNULL RzCore *core, RZ_NONNULL const char *filepath, ut64 addr, int perms, bool write_mode)
Tries to open the file, load binary info and make RzIOMap.
Definition: cfile.c:189
RZ_API bool rz_core_bin_load(RZ_NONNULL RzCore *r, RZ_NULLABLE const char *filenameuri, ut64 baddr)
Definition: cfile.c:942
RZ_API int rz_core_file_set_by_fd(RzCore *core, ut64 fd)
Definition: cfile.c:1559
RZ_API RzCmdStatus rz_core_hash_plugins_print(RzHash *hash, RzCmdStateOutput *state)
Definition: chash.c:34
RZ_API RZ_OWN RzList * rz_heap_windows_heap_list(RzCore *core)
Definition: cheap.c:32
RZ_API RZ_OWN RzList * rz_heap_windows_blocks_list(RzCore *core)
Definition: cheap.c:28
RZ_API void rz_core_analysis_esil_init_mem(RZ_NONNULL RzCore *core, RZ_NULLABLE const char *name, ut64 addr, ut32 size)
Definition: cil.c:149
RZ_API void rz_core_analysis_esil_init_regs(RZ_NONNULL RzCore *core)
Definition: cil.c:264
RZ_API void rz_core_analysis_esil_step_over(RZ_NONNULL RzCore *core)
Definition: cil.c:269
RZ_API void rz_core_analysis_esil_reinit(RZ_NONNULL RzCore *core)
Reinitialize ESIL.
Definition: cil.c:54
RZ_API void rz_core_analysis_esil_deinit(RZ_NONNULL RzCore *core)
Deinitialize ESIL.
Definition: cil.c:66
RZ_API void rz_core_analysis_esil_init_mem_del(RZ_NONNULL RzCore *core, RZ_NULLABLE const char *name, ut64 addr, ut32 size)
Remove ESIL VM stack.
Definition: cil.c:241
RZ_API int rz_core_setup_debugger(RzCore *r, const char *debugbackend, bool attach)
Definition: cio.c:7
RZ_API bool rz_core_write_block_op_at(RzCore *core, ut64 addr, RzCoreWriteOp op, ut8 *hex, int hexlen)
Write a full block of data according to the operation op and the hexvalue hex.
Definition: cio.c:1038
RZ_API bool rz_core_write_string_at(RzCore *core, ut64 addr, RZ_NONNULL const char *s)
Write a given string s at the specified addr.
Definition: cio.c:605
RZ_API bool rz_core_extend_at(RzCore *core, ut64 addr, ut64 size)
Extend the file at current offset by inserting size 0 bytes at addr.
Definition: cio.c:172
RZ_API bool rz_core_write_string_wide_at(RzCore *core, ut64 addr, const char *s)
Write a given string s as a wide string at the specified addr.
Definition: cio.c:630
RZ_API int rz_core_write_hexpair(RzCore *core, ut64 addr, const char *pairs)
Definition: cio.c:268
RZ_API bool rz_core_write_at(RzCore *core, ut64 addr, const ut8 *buf, int size)
Definition: cio.c:145
RZ_API bool rz_core_shift_block(RzCore *core, ut64 addr, ut64 b_size, st64 dist)
Shift a block of data from addr of size b_size left or right based on dist.
Definition: cio.c:197
RZ_API RzCmdStatus rz_core_io_pcache_print(RzCore *core, RzIODesc *desc, RzCmdStateOutput *state)
Definition: cio.c:854
RZ_API RzCmdStatus rz_core_io_cache_print(RzCore *core, RzCmdStateOutput *state)
Definition: cio.c:797
RZ_API void rz_core_arch_bits_at(RzCore *core, ut64 addr, RZ_OUT RZ_NULLABLE int *bits, RZ_OUT RZ_BORROW RZ_NULLABLE const char **arch)
Definition: cio.c:97
RZ_API void rz_core_seek_arch_bits(RzCore *core, ut64 addr)
Definition: cio.c:132
RZ_API bool rz_core_write_block(RzCore *core, ut64 addr, ut8 *data, size_t len)
Definition: cio.c:299
RZ_API bool rz_core_write_string_zero_at(RzCore *core, ut64 addr, const char *s)
Write a given string s, followed by the zero terminator, at the specified addr.
Definition: cio.c:905
RZ_API int rz_core_write_assembly(RzCore *core, ut64 addr, RZ_NONNULL const char *instructions)
Assembles instructions and writes the resulting data at the given offset.
Definition: cio.c:327
RZ_API int rz_core_block_read(RzCore *core)
Definition: cio.c:243
RZ_API bool rz_core_write_base64d_at(RzCore *core, ut64 addr, RZ_NONNULL const char *s)
Write a given base64 string s at the specified addr, decoded.
Definition: cio.c:745
RZ_API bool rz_core_write_value_inc_at(RzCore *core, ut64 addr, st64 value, int sz)
Write at addr the current value + value passed as argument.
Definition: cio.c:551
RZ_API bool rz_core_write_length_string_at(RzCore *core, ut64 addr, const char *s)
Write at the specified addr the length of the string in one byte, followed by the given string s.
Definition: cio.c:673
RZ_API bool rz_core_dump(RzCore *core, const char *file, ut64 addr, ut64 size, int append)
Definition: cio.c:50
RZ_API int rz_core_is_valid_offset(RzCore *core, ut64 offset)
Definition: cio.c:250
RZ_API bool rz_core_write_seq_at(RzCore *core, ut64 addr, ut64 from, ut64 to, ut64 step, int value_size)
Write a full block of data with a sequence.
Definition: cio.c:1069
RZ_API bool rz_core_write_base64_at(RzCore *core, ut64 addr, RZ_NONNULL const char *s)
Write a given string s at the specified addr encoded as base64.
Definition: cio.c:700
RZ_API bool rz_core_write_random_at(RzCore *core, ut64 addr, size_t len)
Write len random bytes at address addr.
Definition: cio.c:773
RZ_API int rz_core_write_assembly_fill(RzCore *core, ut64 addr, RZ_NONNULL const char *instructions)
Assemble instructions and write the resulting data inside the current instruction.
Definition: cio.c:365
RZ_API RzCmdStatus rz_core_io_plugins_print(RzIO *io, RzCmdStateOutput *state)
Print the registered IO plugins according to state.
Definition: cio.c:481
RZ_API bool rz_core_write_duplicate_at(RzCore *core, ut64 addr, ut64 from, int len)
Copy len bytes from from to addr.
Definition: cio.c:1106
RZ_API bool rz_core_write_value_at(RzCore *core, ut64 addr, ut64 value, int sz)
Write a given value at the specified address, using sz bytes.
Definition: cio.c:506
RZ_API RZ_OWN ut8 * rz_core_transform_op(RzCore *core, ut64 addr, RzCoreWriteOp op, ut8 *hex, int hexlen, int *buflen)
Transform a block of data at addr according to the operation op and the hexvalue hex.
Definition: cio.c:934
RZ_API RzCmdStatus rz_core_lang_plugins_print(RzLang *lang, RzCmdStateOutput *state)
Definition: clang.c:33
RZ_API int rz_core_cmd_foreach3(RzCore *core, const char *cmd, char *each)
Definition: cmd.c:2449
RZ_API char * rz_core_cmd_str_pipe(RzCore *core, const char *cmd)
Definition: cmd.c:5438
RZ_API RzCmd * rz_core_cmd_new(bool has_cons)
Create an instance of RzCmd for the Rizin language.
Definition: cmd.c:5220
RZ_API int rz_core_cmd_buffer(RzCore *core, const char *buf)
Definition: cmd.c:5395
RZ_API int rz_core_cmd_lines(RzCore *core, const char *lines)
Definition: cmd.c:5336
RZ_API int rz_core_cmd0(RzCore *core, const char *cmd)
Definition: cmd.c:5428
RZ_API ut8 * rz_core_cmd_raw(RzCore *core, const char *cmd, int *length)
Executes a rizin command and returns the raw stdout and its length.
Definition: cmd.c:5521
RZ_API int rz_core_cmd_foreach(RzCore *core, const char *cmd, char *each)
Definition: cmd.c:2798
RZ_API void rz_core_cmd_help(const RzCore *core, const char *help[])
Definition: cmd.c:163
RZ_API int rz_core_cmd(RzCore *core, const char *cstr, int log)
Definition: cmd.c:5328
RZ_API int rz_core_cmd_file(RzCore *core, const char *file)
Definition: cmd.c:5341
RZ_API int rz_core_cmd_command(RzCore *core, const char *command)
Definition: cmd.c:5360
RZ_API bool rz_core_run_script(RzCore *core, RZ_NONNULL const char *file)
Definition: cmd.c:457
RZ_API char * rz_core_cmd_strf(RzCore *core, const char *fmt,...)
Definition: cmd.c:5472
RZ_API void rz_core_cmd_init(RzCore *core)
Definition: cmd.c:5562
RZ_API int rz_core_cmdf(RzCore *core, const char *fmt,...)
Definition: cmd.c:5413
RZ_API RzCmdStatus rz_core_cmd_lines_rzshell(RzCore *core, const char *lines)
Definition: cmd.c:5332
RZ_API RzCmdStatus rz_core_cmd0_rzshell(RzCore *core, const char *cmd)
Definition: cmd.c:5424
RZ_API char * rz_core_disassemble_instr(RzCore *core, ut64 addr, int l)
Definition: cmd.c:5375
RZ_API char * rz_core_cmd_str(RzCore *core, const char *cmd)
Executes a rizin command and returns the stdout as a string.
Definition: cmd.c:5513
RZ_API RzCmdStatus rz_core_cmd_rzshell(RzCore *core, const char *cstr, int log)
Definition: cmd.c:5324
RZ_API char * rz_core_disassemble_bytes(RzCore *core, ut64 addr, int b)
Definition: cmd.c:5385
RZ_API int rz_core_cmd_pipe_old(RzCore *core, char *rizin_cmd, char *shell_cmd)
Definition: cmd.c:1058
RZ_API int rz_core_flush(RzCore *core, const char *cmd)
Definition: cmd.c:5432
RZ_API bool rz_core_esil_continue_back(RZ_NONNULL RzCore *core)
RZ_API void rz_core_analysis_calls(RZ_NONNULL RzCore *core, bool imports_only)
RZ_API int rz_core_esil_step_back(RzCore *core)
RZ_API void rz_core_agraph_print(RzCore *core, int use_utf, const char *input)
RZ_API bool rz_core_esil_dumpstack(RzAnalysisEsil *esil)
RZ_API int rz_core_esil_step(RzCore *core, ut64 until_addr, const char *until_expr, ut64 *prev_addr, bool stepOver)
Definition: cmd_analysis.c:860
static int value
Definition: cmd_api.c:93
RZ_API void rz_core_dbg_follow_seek_register(RzCore *core)
Seek to PC if needed.
Definition: cmd_debug.c:474
RZ_API void rz_core_debug_clear_register_flags(RzCore *core)
Definition: cmd_debug.c:1449
RZ_API void rz_core_debug_ri(RzCore *core)
Definition: cmd_debug.c:3616
RZ_API void rz_core_debug_set_register_flags(RzCore *core)
Definition: cmd_debug.c:1443
RZ_API void rz_core_theme_nextpal(RzCore *core, RzConsPalSeekMode mode)
Definition: cmd_eval.c:148
RZ_API RZ_OWN RzList * rz_core_theme_list(RZ_NONNULL RzCore *core)
Returns the list of the rizin themes.
Definition: cmd_eval.c:119
RZ_API char * rz_core_theme_get(RzCore *core)
Definition: cmd_eval.c:103
RZ_API bool rz_core_theme_load(RzCore *core, const char *name)
Definition: cmd_eval.c:56
RZ_API void rz_core_help_vars_print(RzCore *core)
Definition: cmd_help.c:370
RZ_API const char ** rz_core_help_vars_get(RzCore *core)
Returns all the $ variable names in a NULL-terminated array.
Definition: cmd_help.c:360
RZ_API void rz_core_clippy(RzCore *core, const char *msg)
Definition: cmd_help.c:385
RZ_API bool rz_heap_write_chunk(RzCore *core, RzHeapChunkSimple *chunk_simple)
Write a heap chunk header to memory.
RZ_API RzHeapChunkSimple * rz_heap_chunk(RzCore *core, ut64 addr)
Returns detailed information about a heap chunk. The chunk is represented by RzHeapChunkSimple struct...
RZ_API RzList * rz_heap_chunks_list(RzCore *core, ut64 m_arena)
Returns RzList* for a list of chunks from the arena. Each chunk is represented by RzHeapChunkListItem...
RZ_API RzList * rz_heap_tcache_content(RzCore *core, ut64 arena_base)
Get a list of bins for the tcache associated with an arena The list is in form of RzList and the bins...
RZ_API RzList * rz_heap_arenas_list(RzCore *core)
Returns RzList* for a list of arenas. Each arena is represented by RzArenaListItem struct.
RZ_API MallocState * rz_heap_get_arena(RzCore *core, ut64 m_state)
Returns MallocState struct for given base address of the arena. This function checks if the arena is ...
RZ_API RzHeapBin * rz_heap_fastbin_content(RzCore *core, MallocState *arena, int bin_num)
Returns information about a fastbin. The information is represented as RzHeapBin struct.
RZ_API RzHeapBin * rz_heap_bin_content(RzCore *core, MallocState *arena, int bin_num, ut64 m_arena)
Returns information about a heap bin. The information is represented as RzHeapBin struct The bins cov...
RZ_API void rz_core_set_asm_configs(RzCore *core, char *arch, ut32 bits, int segoff)
Definition: cmd_print.c:1057
#define append(x, y)
Definition: cmd_print.c:1740
RZ_API void rz_core_gadget_free(RzCoreGadget *g)
Frees a visual print gadget.
Definition: cmd_print.c:1174
RZ_API void rz_core_gadget_print(RzCore *core)
Prints or displays the print gadgets while in visual mode.
Definition: cmd_print.c:1185
RZ_API bool rz_core_project_load_for_cli(RzCore *core, const char *file, bool load_bin_io)
Definition: cmd_project.c:6
RZ_API RZ_OWN RzList * rz_core_reg_filter_items_sync(RZ_NONNULL RzCore *core, RZ_NONNULL RzReg *reg, RzCmdRegSync sync_cb, RZ_NULLABLE const char *filter)
Definition: cmd_regs.c:203
RZ_API bool rz_core_reg_assign_sync(RZ_NONNULL RzCore *core, RZ_NONNULL RzReg *reg, RzCmdRegSync sync_cb, RZ_NONNULL const char *name, ut64 val)
Definition: cmd_regs.c:138
RZ_API RZ_OWN RzList * rz_core_get_boundaries_prot(RzCore *core, int perm, const char *mode, const char *prefix)
Definition: cmd_search.c:577
RZ_API int rz_core_search_preludes(RzCore *core, bool log)
Definition: cmd_search.c:330
RZ_API int rz_core_search_prelude(RzCore *core, ut64 from, ut64 to, const ut8 *buf, int blen, const ut8 *mask, int mlen)
Definition: cmd_search.c:292
RZ_API bool rz_core_meta_pascal_string_add(RzCore *core, ut64 addr, RzStrEnc encoding, RZ_NULLABLE const char *name)
add a pascal string to RzCore
Definition: cmeta.c:516
RZ_API bool rz_core_meta_string_add(RzCore *core, ut64 addr, ut64 size, RzStrEnc encoding, RZ_NULLABLE const char *name)
add a string to RzCore
Definition: cmeta.c:474
RZ_API bool rz_core_analysis_recover_golang_functions(RzCore *core)
reads pclntab table in go binaries and recovers functions. Follows the code https://github....
Definition: golang.c:405
RZ_API void rz_core_analysis_resolve_golang_strings(RzCore *core)
Attempts to recover all golang string.
Definition: golang.c:1613
RzCorePlugin rz_core_plugin_dex
Definition: core_dex.c:312
RzCorePlugin rz_core_plugin_java
Definition: core_java.c:317
#define RZ_API
RZ_API RzCmdStatus rz_core_parser_plugins_print(RzParse *parser, RzCmdStateOutput *state)
Definition: cparser.c:27
RZ_API void rz_core_pdb_info_print(RZ_NONNULL RzCore *core, RZ_NONNULL RzTypeDB *db, RZ_NONNULL RzPdb *pdb, RZ_NONNULL RzCmdStateOutput *state)
Print parsed PDB file info.
Definition: cpdb.c:273
RZ_API char * rz_core_bin_pdb_gvars_as_string(RZ_NONNULL const RzPdb *pdb, const ut64 img_base, PJ *pj, const RzOutputMode mode)
Return the PDB global vars string.
Definition: cpdb.c:128
RZ_API RzPdb * rz_core_pdb_load_info(RZ_NONNULL RzCore *core, RZ_NONNULL const char *file)
Parse PDB file info and integrate with typedb.
Definition: cpdb.c:245
RZ_API bool rz_core_plugin_init(RzCore *core)
Definition: cplugin.c:37
RZ_API bool rz_core_plugin_fini(RzCore *core)
Definition: cplugin.c:12
RZ_API bool rz_core_plugin_add(RzCore *core, RzCorePlugin *plugin)
Definition: cplugin.c:27
RZ_API RZ_OWN char * rz_core_assembly_of_hex(RzCore *core, ut8 *hex, int len)
Get the assembly of the hexstr.
Definition: cprint.c:109
RZ_API char * rz_core_print_dump_str(RZ_NONNULL RzCore *core, RzOutputMode mode, ut64 addr, ut8 n, int len, RzCorePrintFormatType format)
Print dump at addr.
Definition: cprint.c:281
RZ_API RZ_OWN char * rz_core_esil_of_hex(RzCore *core, ut8 *hex, int len)
Get the esil of the hexstr.
Definition: cprint.c:134
RZ_API RZ_OWN char * rz_core_print_hexdump_byline_str(RZ_NONNULL RzCore *core, bool hex_offset, ut64 addr, int len, ut8 size)
Hexdump at addr.
Definition: cprint.c:406
RZ_API RZ_OWN char * rz_core_hex_of_assembly(RzCore *core, const char *assembly)
Get the hexpair of the assembly.
Definition: cprint.c:41
RZ_API char * rz_core_print_hexdump_diff_str(RZ_NONNULL RzCore *core, ut64 aa, ut64 ba, ut64 len)
Print hexdump diff between aa and ba with len.
Definition: cprint.c:195
RZ_API char * rz_core_print_hexdump_or_hexdiff_str(RZ_NONNULL RzCore *core, RzOutputMode mode, ut64 addr, int len, bool use_comment)
Print hexdump at addr, but maybe print hexdiff if (diff.from or diff.to),.
Definition: cprint.c:337
RZ_API RZ_OWN char * rz_core_print_string_c_cpp(RzCore *core)
Definition: cprint.c:13
RZ_API RZ_OWN char * rz_core_esil_of_assembly(RzCore *core, const char *assembly)
Get the esil of the assembly.
Definition: cprint.c:68
RZ_API void rz_core_reg_update_flags(RzCore *core)
Update or create flags for all registers where it makes sense.
Definition: creg.c:106
RZ_API RzReg * rz_core_reg_default(RzCore *core)
Get the currently relevant RzReg.
Definition: creg.c:17
RZ_API ut64 rz_core_reg_getv_by_role_or_name(RzCore *core, const char *name)
rz_reg_getv_by_role_or_name() on rz_core_reg_default()
Definition: creg.c:24
RZ_API bool rz_core_reg_set_by_role_or_name(RzCore *core, const char *name, ut64 num)
set on rz_core_reg_default()
Definition: creg.c:39
#define r
Definition: crypto_rc6.c:12
RZ_API ut16 rz_core_flirt_os_from_option_list(RZ_NONNULL const char *os_list)
Returns the FLIRT file flags from a given list (comma spaced) of file types Returns RZ_FLIRT_SIG_OS_A...
Definition: csign.c:222
RZ_API ut16 rz_core_flirt_app_from_option_list(RZ_NONNULL const char *app_list)
Returns the FLIRT file flags from a given list (comma spaced) of file types Returns RZ_FLIRT_SIG_APP_...
Definition: csign.c:258
RZ_API bool rz_core_flirt_convert_file(RZ_NONNULL RzCore *core, RZ_NONNULL const char *input_file, RZ_NONNULL const char *output_file)
converts a FLIRT file to the other format.
Definition: csign.c:510
RZ_API const char * rz_core_flirt_arch_from_id(ut8 arch)
Returns the FLIRT arch name (string format) from a given arch id Returns "unknown" if name is not fou...
Definition: csign.c:168
RZ_API ut32 rz_core_flirt_file_from_option_list(RZ_NONNULL const char *file_list)
Returns the FLIRT file flags from a given list (comma spaced) of file types Returns RZ_FLIRT_SIG_FILE...
Definition: csign.c:186
RZ_API ut8 rz_core_flirt_arch_from_name(RZ_NONNULL const char *arch)
Returns the FLIRT arch id from a given arch name Returns RZ_FLIRT_SIG_ARCH_ANY if name is not found.
Definition: csign.c:148
RZ_API bool rz_core_flirt_create_file(RZ_NONNULL RzCore *core, RZ_NONNULL const char *output_file, RZ_NULLABLE ut32 *written_nodes)
Generates a new FLIRT file from a given RzCore structure.
Definition: csign.c:431
RZ_API bool rz_core_flirt_dump_file(RZ_NONNULL const char *flirt_file)
Dumps the contents of a FLIRT file.
Definition: csign.c:372
cs_arch arch
Definition: cstool.c:13
RZ_API RZ_OWN char * rz_core_syscall_as_string(RzCore *core, st64 n, ut64 addr)
Returns the syscall representation as a string.
Definition: csyscall.c:26
RZ_API RZ_OWN char * rz_core_types_as_c(RZ_NONNULL RzCore *core, RZ_NONNULL const char *name, bool multiline)
Get a type string by name (.
Definition: ctypes.c:424
RZ_API void rz_core_link_stroff(RzCore *core, RzAnalysisFunction *fcn)
Definition: ctypes.c:717
RZ_API RZ_OWN char * rz_core_types_as_c_all(RZ_NONNULL RzCore *core, bool multiline)
Get all types with pretty printing.
Definition: ctypes.c:439
RZ_API void rz_core_types_link(RzCore *core, const char *typestr, ut64 addr)
Link an address addr to the type referenced by typestr.
Definition: ctypes.c:954
static static fork const void static count static fd const char const char static newpath const char static path const char path
Definition: sflib.h:35
static static fork write
Definition: sflib.h:33
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void static offset struct stat static buf void nbytes
Definition: sflib.h:113
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void count
Definition: sflib.h:98
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags cmd
Definition: sflib.h:79
static static sync static getppid static getegid const char static filename char static len const char char static bufsiz static mask static vfork const void static prot static getpgrp const char static swapflags static arg static fd static protocol static who struct sockaddr static addrlen static backlog struct timeval struct timezone static tz const struct iovec static count static mode const void const struct sockaddr static tolen const char static pathname void static offset struct stat static buf void long static basep static whence static length const void static len static semflg const void static shmflg const struct timespec struct timespec static rem const char static group const void length
Definition: sflib.h:133
uint16_t ut16
uint32_t ut32
RZ_API int rz_core_print_disasm_instructions_with_buf(RzCore *core, ut64 address, ut8 *buf, int nb_bytes, int nb_opcodes)
Definition: disasm.c:5814
RZ_API int rz_core_flag_in_middle(RzCore *core, ut64 at, int oplen, int *midflags)
Definition: disasm.c:1702
RZ_API int rz_core_print_disasm_json(RzCore *core, ut64 addr, ut8 *buf, int nb_bytes, int nb_opcodes, PJ *pj)
Definition: disasm.c:6040
RZ_API int rz_core_disasm_pdi_with_buf(RzCore *core, ut64 address, ut8 *buf, ut32 nb_opcodes, ut32 nb_bytes, int fmt)
Definition: disasm.c:6324
RZ_API void rz_analysis_disasm_text_free(RzAnalysisDisasmText *t)
Free RzAnalysisDisasmText p.
Definition: disasm.c:5317
RZ_API bool rz_core_print_function_disasm_json(RzCore *core, RzAnalysisFunction *fcn, PJ *pj)
Definition: disasm.c:6726
RZ_API const char * rz_core_get_section_name(RzCore *core, ut64 addr)
Definition: disasm.c:457
RZ_API int rz_core_print_disasm_all(RzCore *core, ut64 addr, int l, int len, int mode)
Definition: disasm.c:6205
RZ_API int rz_core_bb_starts_in_middle(RzCore *core, ut64 at, int oplen)
Definition: disasm.c:1714
RZ_API ut64 rz_core_pava(RzCore *core, ut64 addr)
Definition: disasm.c:364
RZ_API RZ_OWN char * rz_core_disasm_instruction(RzCore *core, ut64 addr, ut64 reladdr, RZ_NULLABLE RzAnalysisFunction *fcn, bool color)
Returns a disassembly of one instruction.
Definition: disasm.c:6770
RZ_API int rz_core_print_disasm(RZ_NONNULL RzCore *core, ut64 addr, RZ_NONNULL ut8 *buf, int len, int nlines, RZ_NULLABLE RzCmdStateOutput *state, RZ_NULLABLE RzCoreDisasmOptions *options)
Disassemble len bytes and nlines opcodes restricted by len and nlines at the same time.
Definition: disasm.c:5336
RZ_API int rz_core_disasm_pdi(RzCore *core, int nb_opcodes, int nb_bytes, int fmt)
Definition: disasm.c:6558
RZ_API int rz_core_disasm_pde(RzCore *core, int nb_opcodes, RzCmdStateOutput *state)
Definition: disasm.c:6581
RZ_API int rz_core_print_disasm_instructions(RzCore *core, int nb_bytes, int nb_opcodes)
Definition: disasm.c:6030
static states step(struct re_guts *, sopno, sopno, states, int, states)
Definition: engine.c:888
struct @667 g
checking print the parsed form of the magic use in n conjunction with m to debug a new magic file n before installing it n output MIME type strings(--mime-type and\n" " --mime-encoding)\n") OPT('s'
RZ_API void rz_core_fortune_list(RzCore *core)
Definition: fortune.c:28
RZ_API void rz_core_fortune_list_types(void)
Definition: fortune.c:21
RZ_API RZ_OWN char * rz_core_fortune_get_random(RzCore *core)
Definition: fortune.c:49
RZ_API void rz_core_fortune_print_random(RzCore *core)
Definition: fortune.c:60
RZ_API bool rz_core_gdiff_function_2_files(RzCore *c, RzCore *c2, ut64 addr, ut64 addr2)
Calculates basic block differences of 2 functions within 2 files.
Definition: gdiff.c:47
RZ_API bool rz_core_gdiff_function_1_file(RzCore *c, ut64 addr, ut64 addr2)
Calculates basic block differences of 2 functions within the same file.
Definition: gdiff.c:17
RZ_API bool rz_core_diff_show_function(RzCore *core, RzCore *core2, ut64 addr1, bool json)
Generate a json or dot output of the graph and its data.
Definition: gdiff.c:574
RZ_API void rz_core_diff_show(RzCore *c, RzCore *c2, bool json)
Definition: gdiff.c:161
RZ_API bool rz_core_gdiff_2_files(RzCore *c, RzCore *c2)
Calculates basic block differences of all functions within 2 files.
Definition: gdiff.c:89
unsigned short prefix[65536]
Definition: gun.c:163
RZ_API void rz_core_hack_help(const RzCore *core)
Definition: hack.c:11
RZ_API bool rz_core_hack(RzCore *core, const char *op)
Write/Modify instructions at current offset based on op.
Definition: hack.c:280
voidpf void uLong size
Definition: ioapi.h:138
const char * filename
Definition: ioapi.h:137
voidpf uLong offset
Definition: ioapi.h:144
const char int mode
Definition: ioapi.h:137
voidpf void * buf
Definition: ioapi.h:138
#define reg(n)
uint8_t ut8
Definition: lh5801.h:11
void * p
Definition: libc.cpp:67
#define const
Definition: ansidecl.h:240
RZ_API RzAnalysisOp * rz_core_op_analysis(RzCore *core, ut64 addr, RzAnalysisOpMask mask)
Definition: core.c:2880
RZ_API int rz_core_prompt(RzCore *r, int sync)
Definition: core.c:2805
RZ_API RZ_OWN char * rz_core_editor(const RzCore *core, RZ_NULLABLE const char *file, RZ_NULLABLE const char *str)
Definition: core.c:3214
RZ_API RzTable * rz_core_table(RzCore *core)
Definition: core.c:3449
RZ_API RzBinReloc * rz_core_getreloc(RzCore *core, ut64 addr, int size)
Definition: core.c:178
RZ_API ut64 rz_core_get_asmqjmps(RzCore *core, const char *str)
Definition: core.c:203
RZ_API void rz_core_autocomplete_reload(RzCore *core)
Definition: core.c:2274
RZ_API const char * rz_core_analysis_optype_colorfor(RzCore *core, ut64 addr, bool verbose)
Definition: core.c:2108
RZ_API int rz_core_bind(RzCore *core, RzCoreBind *bnd)
Definition: core.c:369
RZ_API int rz_core_search_cb(RzCore *core, ut64 from, ut64 to, RzCoreSearchCallback cb)
Definition: core.c:3184
RZ_API void rz_core_autocomplete_free(RzCoreAutocomplete *obj)
Definition: core.c:3389
RZ_API void rz_core_notify_begin(RZ_NONNULL RzCore *core, RZ_NONNULL const char *format,...)
Prints a message definining the beginning of a task.
Definition: core.c:33
RZ_API RzCoreAutocomplete * rz_core_autocomplete_find(RzCoreAutocomplete *parent, const char *cmd, bool exact)
Definition: core.c:3403
RZ_API void rz_core_prompt_loop(RzCore *r)
Definition: core.c:2688
RZ_API void rz_core_bind_cons(RzCore *core)
Definition: core.c:2612
RZ_API RzBuffer * rz_core_syscall(RzCore *core, const char *name, const char *args)
Definition: core.c:3305
RZ_API void rz_core_fini(RzCore *c)
Definition: core.c:2623
RZ_API RzCore * rz_core_ncast(ut64 p)
Definition: core.c:392
RZ_API void rz_core_autocomplete(RZ_NULLABLE RzCore *core, RzLineCompletion *completion, RzLineBuffer *buf, RzLinePromptType prompt_type)
Definition: core.c:1550
RZ_API RzCmdStatus rz_core_core_plugins_print(RzCore *core, RzCmdStateOutput *state)
Definition: core.c:3483
RZ_API RzBuffer * rz_core_syscallf(RzCore *core, const char *name, const char *fmt,...)
Definition: core.c:3292
RZ_API RzFlagItem * rz_core_flag_get_by_spaces(RzFlag *f, ut64 off)
Definition: core.c:2280
RZ_API bool rz_core_block_size(RzCore *core, ut32 bsize)
Definition: core.c:2842
RZ_API RzCoreAutocomplete * rz_core_autocomplete_add(RzCoreAutocomplete *parent, const char *cmd, int type, bool lock)
Definition: core.c:3366
RZ_API char * rz_core_analysis_get_comments(RzCore *core, ut64 addr)
Definition: core.c:2091
RZ_API void rz_core_free(RzCore *c)
Definition: core.c:2683
RZ_API void rz_core_notify_done(RZ_NONNULL RzCore *core, RZ_NONNULL const char *format,...)
Prints a message definining the end of a task which succeeded.
Definition: core.c:60
RZ_API int rz_core_fgets(char *buf, int len, void *user)
Definition: core.c:1694
RZ_API bool rz_core_autocomplete_remove(RzCoreAutocomplete *parent, const char *cmd)
Definition: core.c:3419
RZ_API void rz_core_notify_error(RZ_NONNULL RzCore *core, RZ_NONNULL const char *format,...)
Prints a message definining the end of a task which errored.
Definition: core.c:87
RZ_API bool rz_core_init(RzCore *core)
Definition: core.c:2381
RZ_API char * rz_core_op_str(RzCore *core, ut64 addr)
Definition: core.c:2869
RZ_API RzCons * rz_core_get_cons(RzCore *core)
Definition: core.c:3280
RZ_API RzCore * rz_core_cast(void *p)
Definition: core.c:396
RZ_API void rz_core_set_asmqjmps(RzCore *core, char *str, size_t len, int pos)
Definition: core.c:282
RZ_API RzBin * rz_core_get_bin(RzCore *core)
Definition: core.c:3288
RZ_API RzConfig * rz_core_get_config(RzCore *core)
Definition: core.c:3284
RZ_API char * rz_core_analysis_hasrefs(RzCore *core, ut64 value, int mode)
Definition: core.c:1805
RZ_API char * rz_core_add_asmqjmp(RzCore *core, ut64 addr)
Definition: core.c:238
RZ_API RzCore * rz_core_new(void)
Definition: core.c:866
RZ_API RzBinReloc * rz_core_get_reloc_to(RzCore *core, ut64 addr)
Definition: core.c:189
RZ_API char * rz_core_analysis_hasrefs_to_depth(RzCore *core, ut64 value, PJ *pj, int depth)
Definition: core.c:1853
RZ_API int rz_core_prompt_exec(RzCore *r)
Definition: core.c:2830
RZ_API bool rz_core_serve(RzCore *core, RzIODesc *file)
Definition: core.c:2904
static void list(RzEgg *egg)
Definition: rz-gg.c:52
static int save
Definition: main.c:14
RZ_API void rz_core_loadlibs_init(RzCore *core)
Definition: libs.c:89
RZ_API int rz_core_loadlibs(RzCore *core, int where)
Definition: libs.c:119
static static fork const void static count static fd const char const char static newpath char char char static envp time_t static t const char static mode static whence const char static dir time_t static t unsigned static seconds const char struct utimbuf static buf static inc static sig const char static mode static oldfd times
Definition: sflib.h:70
static static fork const void static count static fd const char const char static newpath char char char static envp time_t static t const char static mode static whence const char static dir time_t static t unsigned static seconds const char struct utimbuf static buf static inc static sig const char static mode static oldfd struct tms static buf static getgid static geteuid const char static filename static arg static mask struct ustat static ubuf static getppid static setsid static egid sigset_t static set struct timeval struct timezone static tz fd_set fd_set fd_set struct timeval static timeout const char char static bufsiz const char static swapflags void static offset const char static length static mode static who const char struct statfs static buf unsigned unsigned num
Definition: sflib.h:126
static static fork const void static count static fd const char const char static newpath char char argv
Definition: sflib.h:40
static const char struct stat static buf struct stat static buf static vhangup int options
Definition: sflib.h:145
int args
Definition: mipsasm.c:18
int x
Definition: mipsasm.c:20
int n
Definition: mipsasm.c:19
int type
Definition: mipsasm.c:17
line
Definition: setup.py:34
int idx
Definition: setup.py:197
const char * name
Definition: op.c:541
int id
Definition: op.c:540
int off
Definition: pal.c:13
const char * code
Definition: pal.c:98
RZ_API bool rz_core_visual_panels_root(RzCore *core, RzPanelsRoot *panels_root)
Definition: panels.c:5947
static const char hex[16]
Definition: print.c:21
RZ_API void rz_core_rtr_session(RzCore *core, const char *input)
Definition: rtr.c:814
RZ_API void rz_core_rtr_list(RzCore *core)
Definition: rtr.c:631
RZ_API int rz_core_rtr_http_stop(RzCore *u)
Definition: rtr.c:110
RZ_API void rz_core_rtr_add(RzCore *core, const char *_input)
Definition: rtr.c:651
RZ_API char * rz_core_rtr_cmds_query(RzCore *core, const char *host, const char *port, const char *cmd)
Definition: rtr.c:983
RZ_API int rz_core_rtr_gdb(RzCore *core, int launch, const char *path)
Definition: rtr.c:571
RZ_API bool rz_core_rtr_init(RZ_NONNULL RzCore *core)
Allocates core rtr structure.
Definition: rtr.c:1020
static RzSocket * s
Definition: rtr.c:28
RZ_API void rz_core_rtr_remove(RzCore *core, const char *input)
Definition: rtr.c:793
RZ_API void rz_core_wait(RzCore *core)
Definition: rtr.c:52
RZ_API int rz_core_rtr_cmds(RzCore *core, const char *port)
Definition: rtr.c:1225
RZ_API void rz_core_rtr_pushout(RzCore *core, const char *input)
Definition: rtr.c:582
RZ_API void rz_core_rtr_cmd(RzCore *core, const char *input)
Definition: rtr.c:850
RZ_API int rz_core_rtr_http(RzCore *core, int launch, int browse, const char *path)
Definition: rtr_http.c:491
RzAnalysisOpMask
Definition: rz_analysis.h:439
enum rz_cmd_status_t RzCmdStatus
RzLinePromptType
Definition: rz_cons.h:1037
RzConsPalSeekMode
Definition: rz_cons.h:460
bool(* RzCorePluginFini)(RzCore *core)
Definition: rz_core.h:121
struct rz_core_visual_tab_t RzCoreVisualTab
void(* RzCoreTaskContextSwitch)(RzCoreTask *next, void *user)
Definition: rz_core.h:259
struct rz_core_seek_history_t RzCoreSeekHistory
RzCoreWriteOp
Definition: rz_core.h:105
@ RZ_CORE_WRITE_OP_BYTESWAP8
Swap the endianess of 8-bytes values.
Definition: rz_core.h:108
@ RZ_CORE_WRITE_OP_SHIFT_LEFT
Write the shift left of existing byte by argument value.
Definition: rz_core.h:116
@ RZ_CORE_WRITE_OP_AND
Write the bitwise-and of existing byte and argument value.
Definition: rz_core.h:113
@ RZ_CORE_WRITE_OP_SHIFT_RIGHT
Write the shift right of existing byte and argument value.
Definition: rz_core.h:117
@ RZ_CORE_WRITE_OP_BYTESWAP2
Swap the endianess of 2-bytes values.
Definition: rz_core.h:106
@ RZ_CORE_WRITE_OP_OR
Write the bitwise-or of existing byte and argument value.
Definition: rz_core.h:114
@ RZ_CORE_WRITE_OP_ADD
Write the addition of existing byte and argument value.
Definition: rz_core.h:109
@ RZ_CORE_WRITE_OP_MUL
Write the multiplication of existing byte and argument value.
Definition: rz_core.h:112
@ RZ_CORE_WRITE_OP_DIV
Write the division of existing byte and argument value.
Definition: rz_core.h:111
@ RZ_CORE_WRITE_OP_BYTESWAP4
Swap the endianess of 4-bytes values.
Definition: rz_core.h:107
@ RZ_CORE_WRITE_OP_XOR
Write the bitwise-xor of existing byte and argument value.
Definition: rz_core.h:115
@ RZ_CORE_WRITE_OP_SUB
Write the subtraction of existing byte and argument value.
Definition: rz_core.h:110
struct rz_core_times_t RzCoreTimes
struct rz_core_tasks_t RzCoreTaskScheduler
rz_core_autocomplete_types_t
Definition: rz_core.h:188
@ RZ_CORE_AUTOCMPLT_FCN
Definition: rz_core.h:193
@ RZ_CORE_AUTOCMPLT_MS
Definition: rz_core.h:201
@ RZ_CORE_AUTOCMPLT_BRKP
Definition: rz_core.h:196
@ RZ_CORE_AUTOCMPLT_END
Definition: rz_core.h:204
@ RZ_CORE_AUTOCMPLT_OPTN
Definition: rz_core.h:200
@ RZ_CORE_AUTOCMPLT_MACR
Definition: rz_core.h:197
@ RZ_CORE_AUTOCMPLT_DFLT
Definition: rz_core.h:189
@ RZ_CORE_AUTOCMPLT_EVAL
Definition: rz_core.h:194
@ RZ_CORE_AUTOCMPLT_FILE
Definition: rz_core.h:198
@ RZ_CORE_AUTOCMPLT_SDB
Definition: rz_core.h:202
@ RZ_CORE_AUTOCMPLT_FLAG
Definition: rz_core.h:190
@ RZ_CORE_AUTOCMPLT_MINS
Definition: rz_core.h:195
@ RZ_CORE_AUTOCMPLT_THME
Definition: rz_core.h:199
@ RZ_CORE_AUTOCMPLT_FLSP
Definition: rz_core.h:191
@ RZ_CORE_AUTOCMPLT_SEEK
Definition: rz_core.h:192
struct rz_core_seek_undo_t RzCoreSeekItem
struct rz_core_visual_t RzCoreVisual
struct rz_core_item_t RzCoreItem
int(* RzCoreSearchCallback)(RzCore *core, ut64 from, ut8 *buf, int len)
Definition: rz_core.h:419
struct rz_analysis_disasm_text_t RzAnalysisDisasmText
Message for pdJ
struct rz_core_file_t RzCoreFile
enum rz_core_autocomplete_types_t RzCoreAutocompleteType
RZ_LIB_VERSION_HEADER(rz_core)
bool(* RzCorePluginInit)(RzCore *core)
Definition: rz_core.h:120
struct rz_core_io_map_info_t RzCoreIOMapInfo
struct rz_bin_sym_names_t RzBinSymNames
Store some display name from RzBinSymbol.
RAutocompleteType
Definition: rz_core.h:135
@ AUTOCOMPLETE_MS
Definition: rz_core.h:137
@ AUTOCOMPLETE_DEFAULT
Definition: rz_core.h:136
struct rz_core_plugin_t RzCorePlugin
struct rz_core_autocomplete_t RzCoreAutocomplete
RzCoreVisualMode
Definition: rz_core.h:97
@ RZ_CORE_VISUAL_MODE_PD
Disassembly view.
Definition: rz_core.h:99
@ RZ_CORE_VISUAL_MODE_OV
Color blocks (entropy)
Definition: rz_core.h:101
@ RZ_CORE_VISUAL_MODE_CD
Print in string format.
Definition: rz_core.h:102
@ RZ_CORE_VISUAL_MODE_DB
Debug mode.
Definition: rz_core.h:100
@ RZ_CORE_VISUAL_MODE_PX
Hexadecimal view.
Definition: rz_core.h:98
struct rz_core_task_t RzCoreTask
Definition: rz_core.h:254
void(* RzCoreTaskBreak)(RzCoreTask *task, void *user)
Definition: rz_core.h:264
int(* RzMainCallback)(int argc, const char **argv)
Definition: rz_main.h:34
RzRegisterType
Definition: rz_reg.h:20
RzStrEnc
Definition: rz_str.h:19
#define RZ_NULLABLE
Definition: rz_types.h:65
#define RZ_OWN
Definition: rz_types.h:62
#define RZ_OUT
Definition: rz_types.h:51
#define RZ_NONNULL
Definition: rz_types.h:64
#define RZ_PRINTF_CHECK(fmt, dots)
Definition: rz_types.h:192
RzOutputMode
Enum to describe the way data are printed.
Definition: rz_types.h:38
#define RZ_BORROW
Definition: rz_types.h:63
#define RZ_DEPRECATE
Definition: rz_types.h:66
#define st64
Definition: rz_types_base.h:10
#define UT8_MAX
RZ_API bool rz_core_seek_redo(RzCore *core)
Definition: seek.c:316
RZ_API RzList * rz_core_seek_list(RzCore *core)
Return the seek history.
Definition: seek.c:411
RZ_API RzCoreSeekItem * rz_core_seek_peek(RzCore *core, int idx)
Return a element in the undo/redo list.
Definition: seek.c:361
RZ_API bool rz_core_seek_delta(RzCore *core, st64 delta, bool save)
Seek relative to current offset and optionally save the current offset in seek history.
Definition: seek.c:152
RZ_API bool rz_core_seek_and_save(RzCore *core, ut64 addr, bool rb)
Save currently marked state in seek history and seek to addr .
Definition: seek.c:101
RZ_API bool rz_core_seek_mark(RzCore *core)
Mark current state (offset+cursor) as the next state to save in history.
Definition: seek.c:57
RZ_API bool rz_core_seek_next(RzCore *core, const char *type, bool save)
Seek to the next type of item from current offset.
Definition: seek.c:203
RZ_API int rz_core_seek_base(RzCore *core, const char *hex, bool save)
Seek to a new address composed of current offset with last hex digits replaced with those of hex.
Definition: seek.c:171
RZ_API void rz_core_seek_reset(RzCore *core)
Definition: seek.c:388
RZ_API bool rz_core_seek_prev(RzCore *core, const char *type, bool save)
Seek to the previous type of item from current offset.
Definition: seek.c:241
RZ_API bool rz_core_seek_undo(RzCore *core)
Definition: seek.c:301
RZ_API void rz_core_seek_free(RzCore *core)
Definition: seek.c:398
RZ_API bool rz_core_seek_opt(RzCore *core, ut64 addr, bool rb, bool save)
Seek to addr and optionally save the current offset in seek history.
Definition: seek.c:141
RZ_API void rz_core_seek_item_free(RzCoreSeekItem *item)
Definition: seek.c:7
RZ_API bool rz_core_seek_align(RzCore *core, ut64 align, bool save)
Seek to current offset aligned to align.
Definition: seek.c:274
RZ_API bool rz_core_seek_save(RzCore *core)
Save last marked position, if any, in the seek history.
Definition: seek.c:87
RZ_API bool rz_core_seek_analysis_bb(RzCore *core, ut64 addr, bool save)
Seek to basic block that contains address addr.
Definition: seek.c:289
RZ_API bool rz_core_seek(RzCore *core, ut64 addr, bool rb)
Seek to addr.
Definition: seek.c:116
RZ_API bool rz_serialize_core_load(RZ_NONNULL Sdb *db, RZ_NONNULL RzCore *core, bool load_bin_io, RZ_NULLABLE const char *prj_file, RZ_NULLABLE RzSerializeResultInfo *res)
RZ_API void rz_serialize_core_save(RZ_NONNULL Sdb *db, RZ_NONNULL RzCore *core, RZ_NULLABLE const char *prj_file)
static struct sockaddr static addrlen static backlog const void static flags void struct sockaddr from
Definition: sfsocketcall.h:123
static struct sockaddr static addrlen static backlog const void static flags void struct sockaddr socklen_t static fromlen const void const struct sockaddr to
Definition: sfsocketcall.h:125
static struct sockaddr static addrlen static backlog const void static flags void flags
Definition: sfsocketcall.h:123
static int
Definition: sfsocketcall.h:114
static struct sockaddr static addrlen static backlog const void msg
Definition: sfsocketcall.h:119
#define b(i)
Definition: sha256.c:42
#define f(i)
Definition: sha256.c:46
#define c(i)
Definition: sha256.c:43
#define a(i)
Definition: sha256.c:41
char * cmd
Definition: rz_core.h:251
Definition: malloc.c:26
Definition: inftree9.h:24
Definition: gzappend.c:170
Definition: gzlog.c:289
Definition: z80asm.h:102
Definition: rz_pj.h:12
Message for pdJ
Definition: rz_core.h:443
ut64 arrow
In general, arrow = UT64_MAX, if there is a jump(jmp, ...), arrow = dst offset.
Definition: rz_core.h:445
This structure contains the decompiled code and all the annotations for the decompiled code.
XX curplugin == o->plugin.
Definition: rz_bin.h:298
A single sample of source line info for a specific address.
Definition: rz_bin.h:441
Store some display name from RzBinSymbol.
Definition: rz_core.h:426
char * methname
methods [class]::[method]
Definition: rz_core.h:436
char * demname
demangled raw symbol name
Definition: rz_core.h:432
char * methflag
methods flag sym.[class].[method]
Definition: rz_core.h:437
char * nameflag
flag name for symbol
Definition: rz_core.h:431
char * classflag
flag for classname
Definition: rz_core.h:435
char * name
raw symbol name
Definition: rz_core.h:428
char * symbolname
display symbol name
Definition: rz_core.h:429
const char * pfx
prefix for flags
Definition: rz_core.h:427
char * classname
classname
Definition: rz_core.h:434
char * libname
name of the lib this symbol is specific to, if any
Definition: rz_core.h:430
char * demflag
flag name for demangled symbol
Definition: rz_core.h:433
Represent the output state of a command handler.
Definition: rz_cmd.h:91
struct rz_core_autocomplete_t ** subcmds
Definition: rz_core.h:213
const char * cmd
Definition: rz_core.h:208
RzPVector binfiles
all bin files that have been created for this core file
Definition: rz_core.h:155
RzPVector extra_files
additional files opened during mapping, for example for zeroed maps
Definition: rz_core.h:156
struct rz_core_t * core
Definition: rz_core.h:152
RzPVector maps
all maps that have been created as a result of loading this file
Definition: rz_core.h:157
RzCoreFile * cf
Definition: rz_core.h:164
const char * type
Definition: rz_core.h:407
char * comment
Definition: rz_core.h:414
char * fcnname
Definition: rz_core.h:416
char * sectname
Definition: rz_core.h:415
char * data
Definition: rz_core.h:413
const char * license
Definition: rz_core.h:126
const char * version
Definition: rz_core.h:128
const char * desc
Definition: rz_core.h:125
RzCorePluginInit init
Definition: rz_core.h:129
const char * author
Definition: rz_core.h:127
const char * name
Definition: rz_core.h:124
RzCorePluginFini fini
Definition: rz_core.h:130
RzCoreSeekItem saved_item
Position to save in history.
Definition: rz_core.h:294
RzVector undos
Stack of RzCoreSeekItems, allowing to "go back in time".
Definition: rz_core.h:291
RzVector redos
Stack of RzCoreSeekItems, allowing to re-do an action that was undone.
Definition: rz_core.h:292
bool saved_set
When true, the saved field is set.
Definition: rz_core.h:293
int idx
Position of the item relative to the current seek item (0 current seek, < 0 for undos,...
Definition: rz_core.h:148
ut64 offset
Value of core->offset at the given time in history.
Definition: rz_core.h:145
bool is_current
True if this is the current seek value.
Definition: rz_core.h:147
int cursor
Position of the cursor at the given time in history.
Definition: rz_core.h:146
int(* rz_main_rz_asm)(int argc, const char **argv)
Definition: rz_core.h:401
bool vmode
Definition: rz_core.h:309
ut64 yank_addr
Definition: rz_core.h:307
ut64 marks[UT8_MAX+1]
Definition: rz_core.h:392
bool break_loop
Definition: rz_core.h:373
RzBuffer * yank_buf
Definition: rz_core.h:306
RzCons * cons
Definition: rz_core.h:312
RzCoreRtrHost * rtr_host
Definition: rz_core.h:345
char * cmdlog
Definition: rz_core.h:340
RzCoreAutocomplete * autocomplete
Definition: rz_core.h:380
bool scr_gadgets
Definition: rz_core.h:385
RzCoreVisualMode printidx
Definition: rz_core.h:357
int cmdrepeat
Definition: rz_core.h:341
bool visual_is_inputing
Definition: rz_core.h:353
RzList * files
Definition: rz_core.h:315
int(* rz_main_rz_bin)(int argc, const char **argv)
Definition: rz_core.h:398
RzSearch * search
Definition: rz_core.h:331
bool is_lastcmd
Definition: rz_core.h:338
ut64 rc
Definition: rz_core.h:317
RzEgg * egg
Definition: rz_core.h:332
RzCmd * rcmd
Definition: rz_core.h:319
char * cmdqueue
Definition: rz_core.h:336
RzBin * bin
Definition: rz_core.h:298
int interrupted
Definition: rz_core.h:310
ut64 offset
Definition: rz_core.h:301
int(* rz_main_rz_gg)(int argc, const char **argv)
Definition: rz_core.h:400
RzAsm * rasm
Definition: rz_core.h:323
char * lastcmd
Definition: rz_core.h:337
RzLang * lang
Definition: rz_core.h:328
int max_cmd_depth
Definition: rz_core.h:363
ut32 blocksize_max
Definition: rz_core.h:304
RzAnalysis * analysis
Definition: rz_core.h:322
bool marks_init
Definition: rz_core.h:391
int(* rz_main_rz_ax)(int argc, const char **argv)
Definition: rz_core.h:402
int rtr_n
Definition: rz_core.h:344
int(* rz_main_rz_run)(int argc, const char **argv)
Definition: rz_core.h:399
char * table_query
Definition: rz_core.h:378
struct rz_core_t * c2
Definition: rz_core.h:379
int seltab
Definition: rz_core.h:368
RzDebug * dbg
Definition: rz_core.h:329
RzPanels * panels
Definition: rz_core.h:335
int gdbserver_up
Definition: rz_core.h:356
RzIO * io
Definition: rz_core.h:313
RzEvent * ev
Definition: rz_core.h:383
const char * cmdtimes
Definition: rz_core.h:342
RzList * ropchain
Definition: rz_core.h:387
int asmqjmps_size
Definition: rz_core.h:348
int asmqjmps_count
Definition: rz_core.h:347
RzCmdDescriptor root_cmd_descriptor
Definition: rz_core.h:320
bool keep_asmqjmps
Definition: rz_core.h:350
RzNum * num
Definition: rz_core.h:316
RzLib * lib
Definition: rz_core.h:318
bool fixedbits
Definition: rz_core.h:375
RzMainCallback rz_main_rizin
Definition: rz_core.h:394
RZ_DEPRECATE bool cmd_in_backticks
Definition: rz_core.h:343
ut64 * asmqjmps
Definition: rz_core.h:346
RzList * scriptstack
Definition: rz_core.h:361
RzAGraph * graph
Definition: rz_core.h:333
bool binat
Definition: rz_core.h:374
int(* rz_main_rz_diff)(int argc, const char **argv)
Definition: rz_core.h:397
RzList * watchers
Definition: rz_core.h:360
RzList * plugins
List of registered core plugins.
Definition: rz_core.h:299
bool log_events
Definition: rz_core.h:386
RzParse * parser
Definition: rz_core.h:326
RzCoreTaskScheduler tasks
Definition: rz_core.h:362
RzCoreVisual visual
Definition: rz_core.h:351
int autocomplete_type
Definition: rz_core.h:381
int curtab
Definition: rz_core.h:367
bool is_pipe
Definition: rz_core.h:339
int incomment
Definition: rz_core.h:366
ut64 prompt_offset
Definition: rz_core.h:302
RzList * cmd_descriptors
Definition: rz_core.h:321
int maxtab
Definition: rz_core.h:382
bool tmpseek
Definition: rz_core.h:308
Sdb * sdb
Definition: rz_core.h:365
char * stkcmd
Definition: rz_core.h:358
ut8 * block
Definition: rz_core.h:305
RzList * gadgets
Definition: rz_core.h:384
RzFlag * flags
Definition: rz_core.h:330
char * cmdfilter
Definition: rz_core.h:371
bool fixedblock
Definition: rz_core.h:377
int(* rz_main_rz_find)(int argc, const char **argv)
Definition: rz_core.h:396
ut8 switch_file_view
Definition: rz_core.h:364
char * curtheme
Definition: rz_core.h:372
bool fixedarch
Definition: rz_core.h:376
RzPanelsRoot * panels_root
Definition: rz_core.h:334
RzCoreSeekHistory seek_history
Definition: rz_core.h:388
bool in_search
Definition: rz_core.h:359
RzPrint * print
Definition: rz_core.h:327
char * cmdremote
Definition: rz_core.h:369
RzHash * hash
Definition: rz_core.h:389
char * lastsearch
Definition: rz_core.h:370
RzCoreFile * file
Definition: rz_core.h:314
ut32 blocksize
Definition: rz_core.h:303
char * visual_inputing
Definition: rz_core.h:354
bool is_asmqjmps_letter
Definition: rz_core.h:349
RzConfig * config
Definition: rz_core.h:300
RzCoreTimes * times
Definition: rz_core.h:325
int http_up
Definition: rz_core.h:355
int oneshots_enqueued
Definition: rz_core.h:275
RzThreadLock * lock
Definition: rz_core.h:278
RzList * tasks_queue
Definition: rz_core.h:273
RzCoreTaskContextSwitch ctx_switch
Definition: rz_core.h:267
void * ctx_switch_user
Definition: rz_core.h:268
int tasks_running
Definition: rz_core.h:279
RzCoreTaskBreak break_cb
Definition: rz_core.h:269
bool oneshot_running
Definition: rz_core.h:280
RzList * tasks
Definition: rz_core.h:272
struct rz_core_task_t * current_task
Definition: rz_core.h:276
RzList * oneshot_queue
Definition: rz_core.h:274
void * break_cb_user
Definition: rz_core.h:270
int task_id_next
Definition: rz_core.h:271
struct rz_core_task_t * main_task
Definition: rz_core.h:277
ut64 file_open_time
Definition: rz_core.h:180
ut64 loadlibs_init_time
Definition: rz_core.h:178
ut64 loadlibs_time
Definition: rz_core.h:179
RzList * tabs
Definition: rz_core.h:241
Definition: rz_io.h:59
Definition: thread.h:84
Definition: sdb.h:63
Definition: dis.h:43
const char * command
Definition: main.c:7
int pos
Definition: main.c:11
bool valid
Definition: core.c:77
ut64 maxlen
Definition: core.c:76
ut64 buflen
Definition: core.c:76
uint64_t blocks
Definition: list.c:104
#define bool
Definition: sysdefs.h:146
RZ_API bool rz_core_task_is_cmd(RzCore *core, int id)
Definition: task.c:834
RZ_API void rz_core_task_join(RzCoreTaskScheduler *scheduler, RzCoreTask *current, int id)
Definition: task.c:96
RZ_API void rz_core_task_scheduler_init(RzCoreTaskScheduler *sched, RzCoreTaskContextSwitch ctx_switch, void *ctx_switch_user, RzCoreTaskBreak break_cb, void *break_cb_user)
Definition: task.c:7
RZ_API RzCoreTask * rz_core_task_new(RzCoreTaskScheduler *sched, RzCoreTaskRunner runner, RzCoreTaskRunnerFree runner_free, void *runner_user)
Definition: task.c:161
RZ_API void rz_core_task_decref(RzCoreTask *task)
Definition: task.c:200
RZ_API void rz_core_task_break_all(RzCoreTaskScheduler *scheduler)
Definition: task.c:495
RZ_API void rz_core_task_sync_end(RzCoreTaskScheduler *scheduler)
Definition: task.c:432
RZ_API void rz_core_task_scheduler_fini(RzCoreTaskScheduler *tasks)
Definition: task.c:27
RZ_API void rz_core_task_print(RzCore *core, RzCoreTask *task, int mode, PJ *j)
Definition: task.c:758
RZ_API void rz_core_task_enqueue_oneshot(RzCoreTaskScheduler *scheduler, RzCoreTaskOneShot func, void *user)
Definition: task.c:391
RZ_API void rz_core_task_sleep_end(RzCoreTask *task)
Definition: task.c:442
RZ_API void rz_core_task_incref(RzCoreTask *task)
Definition: task.c:190
RZ_API int rz_core_task_del(RzCoreTaskScheduler *scheduler, int id)
Definition: task.c:508
RZ_API void rz_core_task_del_all_done(RzCore *core)
Definition: task.c:844
RZ_API int rz_core_task_running_tasks_count(RzCoreTaskScheduler *scheduler)
Definition: task.c:71
RZ_API int rz_core_task_run_sync(RzCoreTaskScheduler *scheduler, RzCoreTask *task)
Definition: task.c:415
RZ_API RzCoreTask * rz_core_function_task_new(RzCore *core, RzCoreTaskFunction fcn, void *fcn_user)
Definition: task.c:700
RZ_API void rz_core_task_enqueue(RzCoreTaskScheduler *scheduler, RzCoreTask *task)
Definition: task.c:374
RZ_API RzCoreTask * rz_core_task_get_incref(RzCoreTaskScheduler *scheduler, int id)
Definition: task.c:461
RZ_API RzCoreTask * rz_core_cmd_task_new(RzCore *core, const char *cmd, RzCoreCmdTaskFinished finished_cb, void *finished_cb_user)
Definition: task.c:629
RZ_API void rz_core_task_list(RzCore *core, int mode)
Definition: task.c:811
RZ_API void rz_core_task_sleep_begin(RzCoreTask *task)
Definition: task.c:438
RZ_API void rz_core_task_yield(RzCoreTaskScheduler *scheduler)
Definition: task.c:336
RZ_API const char * rz_core_cmd_task_get_result(RzCoreTask *task)
Definition: task.c:646
RZ_API void rz_core_task_sync_begin(RzCoreTaskScheduler *scheduler)
Definition: task.c:421
RZ_API void rz_core_task_break(RzCoreTaskScheduler *scheduler, int id)
Definition: task.c:483
RZ_API RzCoreTask * rz_core_task_self(RzCoreTaskScheduler *scheduler)
Definition: task.c:446
RZ_API void * rz_core_function_task_get_result(RzCoreTask *task)
Definition: task.c:718
RZ_API const char * rz_core_task_status(RzCoreTask *task)
Definition: task.c:743
static void lock(volatile int *lk)
Definition: malloc.c:61
Definition: dis.c:32
RZ_API void rz_core_visual_asm(RzCore *core, ut64 off)
Definition: vasm.c:73
RZ_API void rz_core_print_scrollbar_bottom(RzCore *core)
Definition: visual.c:3608
static int color
Definition: visual.c:20
RZ_API void rz_core_visual_toggle_decompiler_disasm(RzCore *core, bool for_graph, bool reset)
Definition: visual.c:127
RZ_API int rz_core_visual_prevopsz(RzCore *core, ut64 addr)
Definition: visual.c:1272
RZ_API void rz_core_visual_offset(RzCore *core)
Definition: visual.c:1247
RZ_API void rz_core_visual_seek_animation_undo(RzCore *core)
Definition: visual.c:1088
RZ_API void rz_core_visual_applyDisMode(RzCore *core, int disMode)
Definition: visual.c:174
RZ_API void rz_core_visual_disasm_up(RzCore *core, int *cols)
Definition: visual.c:3802
RZ_API bool rz_core_visual_hud(RzCore *core)
Definition: visual.c:471
RZ_API int rz_core_visual_cmd(RzCore *core, const char *arg)
Definition: visual.c:2232
RZ_API void rz_core_visual_append_help(RzStrBuf *p, const char *title, const char **help)
Definition: visual.c:532
RZ_API bool rz_core_prevop_addr(RzCore *core, ut64 start_addr, int numinstrs, ut64 *prev_addr)
Definition: visual.c:1173
RZ_API void rz_core_visual_prompt_input(RzCore *core)
Definition: visual.c:733
RZ_API int rz_core_visual_prompt(RzCore *core)
Definition: visual.c:756
RZ_API void rz_core_visual_browse(RzCore *core, const char *input)
Definition: visual.c:2067
RZ_API void rz_core_print_scrollbar(RzCore *core)
Definition: visual.c:3541
RZ_API RzListInfo * rz_listinfo_new(const char *name, RzInterval pitv, RzInterval vitv, int perm, const char *extra)
Definition: visual.c:4020
RZ_API void rz_core_visual_applyHexMode(RzCore *core, int hexMode)
Definition: visual.c:84
RZ_API int rz_core_visual(RzCore *core, const char *input)
Definition: visual.c:3856
RZ_API void rz_core_visual_disasm_down(RzCore *core, RzAsmOp *op, int *cols)
Definition: visual.c:3806
RZ_API int rz_core_visual_xrefs(RzCore *core, bool xref_to, bool fcnInsteadOfAddr)
Definition: visual.c:1312
RZ_API void rz_listinfo_free(RzListInfo *info)
Definition: visual.c:4032
RZ_API void rz_core_visual_toggle_hints(RzCore *core)
Definition: visual.c:109
RZ_API void rz_core_visual_showcursor(RzCore *core, int x)
Definition: visual.c:420
RZ_API ut64 rz_core_prevop_addr_force(RzCore *core, ut64 start_addr, int numinstrs)
Definition: visual.c:1195
RZ_API void rz_core_visual_jump(RzCore *core, ut8 ch)
Definition: visual.c:514
RZ_API void rz_core_visual_seek_animation(RzCore *core, ut64 addr)
Definition: visual.c:1077
RZ_API int rz_line_hist_offset_up(RzLine *line)
Definition: visual.c:1222
RZ_API int rz_line_hist_offset_down(RzLine *line)
Definition: visual.c:1235
RZ_API void rz_core_visual_seek_animation_redo(RzCore *core)
Definition: visual.c:1082
static int hexMode
Definition: visual.c:18
RZ_API void rz_core_visual_mark(RzCore *core, ut8 ch)
Definition: vmarks.c:47
RZ_API bool rz_core_visual_mark_dump(RzCore *core)
Definition: vmarks.c:14
RZ_API void rz_core_visual_mark_seek(RzCore *core, ut8 ch)
Definition: vmarks.c:54
RZ_API void rz_core_visual_mark_set(RzCore *core, ut8 ch, ut64 addr)
Definition: vmarks.c:33
RZ_API void rz_core_visual_mark_del(RzCore *core, ut8 ch)
Definition: vmarks.c:40
RZ_API void rz_core_visual_mark_reset(RzCore *core)
Definition: vmarks.c:6
RZ_API int rz_core_visual_comments(RzCore *core)
Definition: vmenus.c:1793
RZ_API void rz_core_visual_define(RzCore *core, const char *args, int distance)
Definition: vmenus.c:3149
RZ_API int rz_core_visual_view_rop(RzCore *core)
Definition: vmenus.c:1232
RZ_API void rz_core_visual_debugtraces(RzCore *core, const char *input)
Definition: vmenus.c:2634
RZ_API void rz_core_visual_analysis(RzCore *core, const char *input)
Definition: vmenus.c:2739
RZ_API bool rz_core_visual_esil(RzCore *core)
Definition: vmenus.c:89
RZ_API void rz_core_visual_config(RzCore *core)
Definition: vmenus.c:1984
RZ_API int rz_core_visual_trackflags(RzCore *core)
Definition: vmenus.c:1485
RZ_API bool rz_core_visual_bit_editor(RzCore *core)
Definition: vmenus.c:234
RZ_API bool rz_core_visual_hudstuff(RzCore *core)
Definition: vmenus.c:539
static st64 delta
Definition: vmenus.c:2425
RZ_API void rz_core_visual_colors(RzCore *core)
Definition: vmenus.c:3615
RZ_API int rz_core_visual_analysis_classes(RzCore *core)
Definition: vmenus.c:1077
RZ_API int rz_core_visual_classes(RzCore *core)
Definition: vmenus.c:786
RZ_API int rz_core_visual_view_graph(RzCore *core)
Definition: vmenus_graph.c:255
RZ_API char * rz_str_widget_list(void *user, RzList *list, int rows, int cur, PrintItemCallback cb)
Definition: vmenus_graph.c:9
static bool breaked
ut64(WINAPI *w32_GetEnabledXStateFeatures)()
RZ_API bool rz_core_yank_to(RzCore *core, ut64 len, ut64 addr)
Definition: yank.c:193
RZ_API bool rz_core_yank_hud_file(RzCore *core, const char *input)
Definition: yank.c:333
RZ_API bool rz_core_yank(RzCore *core, ut64 addr, ut64 len)
Definition: yank.c:118
RZ_API bool rz_core_yank_set_str(RzCore *core, ut64 addr, RZ_NONNULL const char *str)
Definition: yank.c:101
RZ_API bool rz_core_yank_set(RzCore *core, ut64 addr, RZ_NONNULL const ut8 *buf, ut64 len)
Definition: yank.c:82
RZ_API bool rz_core_yank_hexpair(RzCore *core, const char *str)
Definition: yank.c:362
RZ_API bool rz_core_yank_file_all(RzCore *core, const char *filename)
Definition: yank.c:398
RZ_API bool rz_core_yank_hud_path(RzCore *core, const char *input, int dir)
Definition: yank.c:346
RZ_API bool rz_core_yank_file(RzCore *core, ut64 len, ut64 addr, const char *filename)
Definition: yank.c:384
RZ_API bool rz_core_yank_string(RzCore *core, ut64 addr, ut64 maxlen)
Definition: yank.c:147
RZ_API bool rz_core_yank_print_string(RzCore *core, ut64 pos)
Definition: yank.c:311
RZ_API bool rz_core_yank_dump(RzCore *core, ut64 pos, RzCmdStateOutput *state)
Definition: yank.c:219
RZ_API bool rz_core_yank_paste(RzCore *core, ut64 addr, ut64 len)
Definition: yank.c:174
RZ_API bool rz_core_yank_print(RzCore *core, ut64 pos)
Definition: yank.c:288
RZ_API RZ_OWN char * rz_core_yank_as_string(RzCore *core, ut64 pos)
Definition: yank.c:203
RZ_API bool rz_core_yank_print_hexdump(RzCore *core, ut64 pos)
Definition: yank.c:267
static const z80_opcode fd[]
Definition: z80_tab.h:997
static const char * cb[]
Definition: z80_tab.h:176
static int verbose
Definition: z80asm.c:73
static int baseaddr
Definition: z80asm.c:79
static int addr
Definition: z80asm.c:58
reftype
Definition: z80asm.h:66
static bool input(void *ud, zip_uint8_t *data, zip_uint64_t length)
int inf(FILE *source, FILE *dest)
Definition: zpipe.c:92