mirror of
https://github.com/radareorg/radare2.git
synced 2024-11-23 05:09:43 +00:00
Replace "" with ' in more * subcommands, wip deprecation for safetiness ##shell
This commit is contained in:
parent
9bd991dfb4
commit
7073d534b2
@ -30,7 +30,7 @@ char *r2_asmjs_cmd(void *kore, const char *cmd) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void wget_cb(const char *f) {
|
static void wget_cb(const char *f) {
|
||||||
r_core_cmdf (core, "\"o %s\"", f);
|
r_core_cmdf (core, "'o %s", f);
|
||||||
}
|
}
|
||||||
|
|
||||||
void r2_asmjs_openurl(void *kore, const char *url) {
|
void r2_asmjs_openurl(void *kore, const char *url) {
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
/* Copyright radare2 - 2014-2024 - pancake, ret2libc */
|
/* Copyright radare2 - 2014-2024 - pancake, ret2libc */
|
||||||
|
|
||||||
#include <r_core.h>
|
#include <r_core.h>
|
||||||
#include <r_vec.h>
|
|
||||||
|
|
||||||
R_IPI void visual_refresh(RCore *core);
|
R_IPI void visual_refresh(RCore *core);
|
||||||
|
|
||||||
@ -4957,7 +4956,7 @@ R_API int r_core_visual_graph(RCore *core, RAGraph *g, RAnalFunction *_fcn, int
|
|||||||
char buf[256];
|
char buf[256];
|
||||||
r_line_set_prompt ("[comment]> ");
|
r_line_set_prompt ("[comment]> ");
|
||||||
if (r_cons_fgets (buf, sizeof (buf), 0, NULL) > 0) {
|
if (r_cons_fgets (buf, sizeof (buf), 0, NULL) > 0) {
|
||||||
r_core_cmdf (core, "\"CC %s\"", buf);
|
r_core_cmdf (core, "'CC %s", buf);
|
||||||
}
|
}
|
||||||
g->need_reload_nodes = true;
|
g->need_reload_nodes = true;
|
||||||
showcursor (core, false);
|
showcursor (core, false);
|
||||||
|
@ -3369,9 +3369,9 @@ static int fcn_print_detail(RCore *core, RAnalFunction *fcn) {
|
|||||||
*paren = '\0';
|
*paren = '\0';
|
||||||
}
|
}
|
||||||
char *fname = r_name_filter_dup (name);
|
char *fname = r_name_filter_dup (name);
|
||||||
r_cons_printf ("\"f %s %"PFMT64u" 0x%08"PFMT64x"\"\n", fname, r_anal_function_linear_size (fcn), fcn->addr);
|
r_cons_printf ("'f %s %"PFMT64u" 0x%08"PFMT64x"\n", fname, r_anal_function_linear_size (fcn), fcn->addr);
|
||||||
free (fname);
|
free (fname);
|
||||||
r_cons_printf ("\"af+ 0x%08"PFMT64x" %s %c %c\"\n",
|
r_cons_printf ("'af+ 0x%08"PFMT64x" %s %c %c\n",
|
||||||
fcn->addr, name, //r_anal_function_size (fcn), name,
|
fcn->addr, name, //r_anal_function_size (fcn), name,
|
||||||
fcn->type == R_ANAL_FCN_TYPE_LOC?'l':
|
fcn->type == R_ANAL_FCN_TYPE_LOC?'l':
|
||||||
fcn->type == R_ANAL_FCN_TYPE_SYM?'s':
|
fcn->type == R_ANAL_FCN_TYPE_SYM?'s':
|
||||||
@ -3386,7 +3386,7 @@ static int fcn_print_detail(RCore *core, RAnalFunction *fcn) {
|
|||||||
// FIXME command injection vuln here
|
// FIXME command injection vuln here
|
||||||
if (fcn->cc || defaultCC) {
|
if (fcn->cc || defaultCC) {
|
||||||
r_cons_printf ("s 0x%"PFMT64x"\n", fcn->addr);
|
r_cons_printf ("s 0x%"PFMT64x"\n", fcn->addr);
|
||||||
r_cons_printf ("\"afc %s\"\n", fcn->cc? fcn->cc: defaultCC);
|
r_cons_printf ("'afc %s\n", fcn->cc? fcn->cc: defaultCC);
|
||||||
r_cons_println ("s-");
|
r_cons_println ("s-");
|
||||||
}
|
}
|
||||||
if (fcn->folded) {
|
if (fcn->folded) {
|
||||||
|
@ -1259,13 +1259,10 @@ static bool bin_dwarf(RCore *core, PJ *pj, int mode) {
|
|||||||
|
|
||||||
pj_end (pj);
|
pj_end (pj);
|
||||||
} else {
|
} else {
|
||||||
r_cons_printf ("CL %s:%d 0x%08" PFMT64x "\n",
|
r_cons_printf ("'@0x%08"PFMT64x"'CL %s:%d\n",
|
||||||
file, (int)row->line,
|
row->address, file, (int)row->line);
|
||||||
row->address);
|
r_cons_printf ("'@0x%08"PFMT64x"'CC %s:%d %s\n",
|
||||||
r_cons_printf ("\"CC %s:%d %s\"@0x%" PFMT64x
|
row->address, file, row->line, r_str_get (line));
|
||||||
"\n",
|
|
||||||
file, row->line,
|
|
||||||
r_str_get (line), row->address);
|
|
||||||
}
|
}
|
||||||
free (file);
|
free (file);
|
||||||
free (line);
|
free (line);
|
||||||
@ -1545,9 +1542,9 @@ static bool bin_entry(RCore *r, PJ *pj, int mode, ut64 laddr, int va, bool inifi
|
|||||||
name = r_str_newf ("entry%i", i);
|
name = r_str_newf ("entry%i", i);
|
||||||
}
|
}
|
||||||
char *n = r_name_filter_quoted_shell (name);
|
char *n = r_name_filter_quoted_shell (name);
|
||||||
r_cons_printf ("\"f %s 1 0x%08"PFMT64x"\"\n", n, at);
|
r_cons_printf ("'f %s 1 0x%08"PFMT64x"\n", n, at);
|
||||||
r_cons_printf ("\"f %s_%s 1 0x%08"PFMT64x"\"\n", n, hpaddr_key, hpaddr);
|
r_cons_printf ("'f %s_%s 1 0x%08"PFMT64x"\n", n, hpaddr_key, hpaddr);
|
||||||
r_cons_printf ("\"s %s\"\n", n);
|
r_cons_printf ("'s %s\n", n);
|
||||||
free (n);
|
free (n);
|
||||||
free (name);
|
free (name);
|
||||||
} else {
|
} else {
|
||||||
@ -1959,7 +1956,7 @@ static bool bin_relocs(RCore *r, PJ *pj, int mode, int va) {
|
|||||||
}
|
}
|
||||||
int reloc_size = 4;
|
int reloc_size = 4;
|
||||||
char *n = r_name_filter_quoted_shell (name);
|
char *n = r_name_filter_quoted_shell (name);
|
||||||
r_cons_printf ("\"f %s%s%s %d 0x%08"PFMT64x"\"\n",
|
r_cons_printf ("'f %s%s%s %d 0x%08"PFMT64x"\n",
|
||||||
r_str_get_fail (r->bin->prefix, "reloc."),
|
r_str_get_fail (r->bin->prefix, "reloc."),
|
||||||
r->bin->prefix ? "." : "", n, reloc_size, addr);
|
r->bin->prefix ? "." : "", n, reloc_size, addr);
|
||||||
add_metadata (r, reloc, addr, mode);
|
add_metadata (r, reloc, addr, mode);
|
||||||
@ -1969,7 +1966,7 @@ static bool bin_relocs(RCore *r, PJ *pj, int mode, int va) {
|
|||||||
if (reloc->symbol && reloc->symbol->vaddr != addr) {
|
if (reloc->symbol && reloc->symbol->vaddr != addr) {
|
||||||
// ut64 saddr = reloc->symbol->vaddr;
|
// ut64 saddr = reloc->symbol->vaddr;
|
||||||
ut64 saddr = rva (r->bin, reloc->symbol->paddr, reloc->symbol->vaddr, va);
|
ut64 saddr = rva (r->bin, reloc->symbol->paddr, reloc->symbol->vaddr, va);
|
||||||
r_cons_printf ("\"f %s%s%s %d 0x%08"PFMT64x"\"\n",
|
r_cons_printf ("'f %s%s%s %d 0x%08"PFMT64x"\n",
|
||||||
r_str_get_fail (r->bin->prefix, "rsym."),
|
r_str_get_fail (r->bin->prefix, "rsym."),
|
||||||
r->bin->prefix ? "." : "", n, reloc_size, saddr);
|
r->bin->prefix ? "." : "", n, reloc_size, saddr);
|
||||||
}
|
}
|
||||||
@ -2675,7 +2672,7 @@ static bool bin_symbols(RCore *r, PJ *pj, int mode, ut64 laddr, int va, ut64 at,
|
|||||||
if (!flagname) {
|
if (!flagname) {
|
||||||
goto next;
|
goto next;
|
||||||
}
|
}
|
||||||
r_cons_printf ("\"f %s%s%s %u 0x%08" PFMT64x "\"\n",
|
r_cons_printf ("'f %s%s%s %u 0x%08" PFMT64x "\n",
|
||||||
r_str_get (r->bin->prefix), r->bin->prefix ? "." : "",
|
r_str_get (r->bin->prefix), r->bin->prefix ? "." : "",
|
||||||
flagname, symbol->size, addr);
|
flagname, symbol->size, addr);
|
||||||
free (flagname);
|
free (flagname);
|
||||||
@ -2691,10 +2688,10 @@ static bool bin_symbols(RCore *r, PJ *pj, int mode, ut64 laddr, int va, ut64 at,
|
|||||||
char *m = r_name_filter_shell (module);
|
char *m = r_name_filter_shell (module);
|
||||||
*p = 0;
|
*p = 0;
|
||||||
if (r->bin->prefix) {
|
if (r->bin->prefix) {
|
||||||
r_cons_printf ("\"k bin/pe/%s/%d=%s.%s\"\n",
|
r_cons_printf ("'k bin/pe/%s/%d=%s.%s\n",
|
||||||
module, symbol->ordinal, r->bin->prefix, symname);
|
module, symbol->ordinal, r->bin->prefix, symname);
|
||||||
} else {
|
} else {
|
||||||
r_cons_printf ("\"k bin/pe/%s/%d=%s\"\n",
|
r_cons_printf ("'k bin/pe/%s/%d=%s\n",
|
||||||
module, symbol->ordinal, symname);
|
module, symbol->ordinal, symname);
|
||||||
}
|
}
|
||||||
free (symname);
|
free (symname);
|
||||||
@ -3152,7 +3149,7 @@ static bool bin_sections(RCore *r, PJ *pj, int mode, ut64 laddr, int va, ut64 at
|
|||||||
if (IS_MODE_RAD (mode)) {
|
if (IS_MODE_RAD (mode)) {
|
||||||
char *fname = r_str_newf ("%s.%s", type, section->name);
|
char *fname = r_str_newf ("%s.%s", type, section->name);
|
||||||
r_name_filter (fname, -1);
|
r_name_filter (fname, -1);
|
||||||
r_cons_printf ("\"f %s 1 0x%08"PFMT64x"\"\n", fname, section->vaddr);
|
r_cons_printf ("'f %s 1 0x%08"PFMT64x"\n", fname, section->vaddr);
|
||||||
free (fname);
|
free (fname);
|
||||||
} else if (IS_MODE_SET (mode)) {
|
} else if (IS_MODE_SET (mode)) {
|
||||||
#if LOAD_BSS_MALLOC
|
#if LOAD_BSS_MALLOC
|
||||||
@ -3969,7 +3966,7 @@ static bool bin_classes(RCore *r, PJ *pj, int mode) {
|
|||||||
}
|
}
|
||||||
} else if (IS_MODE_RAD (mode)) {
|
} else if (IS_MODE_RAD (mode)) {
|
||||||
char *n = r_name_filter_shell (name);
|
char *n = r_name_filter_shell (name);
|
||||||
r_cons_printf ("\"f class.%s = 0x%"PFMT64x"\"\n", n, at_min);
|
r_cons_printf ("'f class.%s = 0x%"PFMT64x"\n", n, at_min);
|
||||||
if (c->super) {
|
if (c->super) {
|
||||||
const char *cn = cname;
|
const char *cn = cname;
|
||||||
RListIter *iter;
|
RListIter *iter;
|
||||||
@ -3977,7 +3974,7 @@ static bool bin_classes(RCore *r, PJ *pj, int mode) {
|
|||||||
r_list_foreach (c->super, iter, bn) {
|
r_list_foreach (c->super, iter, bn) {
|
||||||
char *fsk = strdup (r_bin_name_tostring2 (bn, pref));
|
char *fsk = strdup (r_bin_name_tostring2 (bn, pref));
|
||||||
r_name_filter (fsk, -1);
|
r_name_filter (fsk, -1);
|
||||||
r_cons_printf ("\"f super.%s.%s = %d\"\n", cn, fsk, c->index);
|
r_cons_printf ("'f super.%s.%s = %d\n", cn, fsk, c->index);
|
||||||
free (fsk);
|
free (fsk);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -3987,8 +3984,7 @@ static bool bin_classes(RCore *r, PJ *pj, int mode) {
|
|||||||
const char *n = cname; // r_name_filter_shell (cname);
|
const char *n = cname; // r_name_filter_shell (cname);
|
||||||
char *sn = r_bin_name_tostring (sym->name); //r_name_filter_shell (sym->name); // symbol contains classname
|
char *sn = r_bin_name_tostring (sym->name); //r_name_filter_shell (sym->name); // symbol contains classname
|
||||||
const char *predot = R_STR_ISNOTEMPTY (mflags)? ".": "";
|
const char *predot = R_STR_ISNOTEMPTY (mflags)? ".": "";
|
||||||
// char *cmd = r_str_newf ("\"f method%s.%s.%s = 0x%"PFMT64x"\"\n", mflags, n, sn, sym->vaddr);
|
char *cmd = r_str_newf ("'f method.%s%s%s.%s = 0x%"PFMT64x"\n", n, predot, mflags, sn, sym->vaddr);
|
||||||
char *cmd = r_str_newf ("\"f method.%s%s%s.%s = 0x%"PFMT64x"\"\n", n, predot, mflags, sn, sym->vaddr);
|
|
||||||
// free (n);
|
// free (n);
|
||||||
// free (sn);
|
// free (sn);
|
||||||
if (cmd) {
|
if (cmd) {
|
||||||
@ -4013,7 +4009,7 @@ static bool bin_classes(RCore *r, PJ *pj, int mode) {
|
|||||||
char *fn = r_str_newf ("field.%s.%s.%s", cname, kind, fname);
|
char *fn = r_str_newf ("field.%s.%s.%s", cname, kind, fname);
|
||||||
r_name_filter (fn, -1);
|
r_name_filter (fn, -1);
|
||||||
ut64 at = f->vaddr; // sym->vaddr + (f->vaddr & 0xffff);
|
ut64 at = f->vaddr; // sym->vaddr + (f->vaddr & 0xffff);
|
||||||
r_cons_printf ("\"f %s = 0x%08"PFMT64x"\"\n", fn, at);
|
r_cons_printf ("'f %s = 0x%08"PFMT64x"\n", fn, at);
|
||||||
free (fn);
|
free (fn);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -4231,7 +4227,7 @@ static bool bin_libs(RCore *r, PJ *pj, int mode) {
|
|||||||
// Nothing to set.
|
// Nothing to set.
|
||||||
// TODO: load libraries with iomaps?
|
// TODO: load libraries with iomaps?
|
||||||
} else if (IS_MODE_RAD (mode)) {
|
} else if (IS_MODE_RAD (mode)) {
|
||||||
r_cons_printf ("\"CCa entry0 %s\"\n", lib);
|
r_cons_printf ("'CCa entry0 %s\n", lib);
|
||||||
} else if (IS_MODE_JSON (mode)) {
|
} else if (IS_MODE_JSON (mode)) {
|
||||||
pj_s (pj, lib);
|
pj_s (pj, lib);
|
||||||
} else {
|
} else {
|
||||||
|
@ -3632,7 +3632,7 @@ static int cmd_system(void *data, const char *input) {
|
|||||||
cmd_help_exclamation (core);
|
cmd_help_exclamation (core);
|
||||||
} else if (input[1] == '*') {
|
} else if (input[1] == '*') {
|
||||||
char *cmd = r_str_trim_dup (input + 1);
|
char *cmd = r_str_trim_dup (input + 1);
|
||||||
(void)r_core_cmdf (core, "\"#!pipe %s\"", cmd);
|
(void)r_core_cmdf (core, "'#!pipe %s", cmd);
|
||||||
free (cmd);
|
free (cmd);
|
||||||
} else {
|
} else {
|
||||||
if (input[1]) {
|
if (input[1]) {
|
||||||
@ -3678,7 +3678,7 @@ static int cmd_system(void *data, const char *input) {
|
|||||||
cmd = r_str_replace (cmd, " ", "\\ ", true);
|
cmd = r_str_replace (cmd, " ", "\\ ", true);
|
||||||
cmd = r_str_replace (cmd, "\\ ", " ", false);
|
cmd = r_str_replace (cmd, "\\ ", " ", false);
|
||||||
cmd = r_str_replace (cmd, "\"", "'", false);
|
cmd = r_str_replace (cmd, "\"", "'", false);
|
||||||
ret = r_core_cmdf (core, "\"#!pipe %s\"", cmd);
|
ret = r_core_cmdf (core, "'#!pipe %s", cmd);
|
||||||
free (cmd);
|
free (cmd);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
@ -70,7 +70,7 @@ static RCoreHelpMessage help_msg_wa = {
|
|||||||
"wan", " jmp 0x8080", "write instruction(s) nopping the trailing bytes",
|
"wan", " jmp 0x8080", "write instruction(s) nopping the trailing bytes",
|
||||||
"wa+", " nop", "write a nop and seek after it (use 7wa+nop to write 7 consecutive nops)",
|
"wa+", " nop", "write a nop and seek after it (use 7wa+nop to write 7 consecutive nops)",
|
||||||
"wa*", " mov eax, 33", "show 'wx' op with hexpair bytes of assembled opcode",
|
"wa*", " mov eax, 33", "show 'wx' op with hexpair bytes of assembled opcode",
|
||||||
"\"wa nop;nop\"", "" , "assemble more than one instruction (note the quotes)",
|
"'wa nop;nop", "" , "assemble more than one instruction (note the single quote)",
|
||||||
"waf", " f.asm" , "assemble file and write bytes",
|
"waf", " f.asm" , "assemble file and write bytes",
|
||||||
"waF", " f.asm", "assemble file and write bytes and show 'wx' op with hexpair bytes of assembled code",
|
"waF", " f.asm", "assemble file and write bytes and show 'wx' op with hexpair bytes of assembled code",
|
||||||
"waF*", " f.asm", "assemble file and show 'wx' op with hexpair bytes of assembled code",
|
"waF*", " f.asm", "assemble file and show 'wx' op with hexpair bytes of assembled code",
|
||||||
|
@ -2763,13 +2763,13 @@ static void __handleComment(RCore *core) {
|
|||||||
char *arg = filter_arg (strdup (buf));
|
char *arg = filter_arg (strdup (buf));
|
||||||
switch (buf[0]) {
|
switch (buf[0]) {
|
||||||
case '-':
|
case '-':
|
||||||
cmd = r_str_newf ("\"CC-%s\"", arg);
|
cmd = r_str_newf ("'CC-%s", arg);
|
||||||
break;
|
break;
|
||||||
case '!':
|
case '!':
|
||||||
cmd = strdup ("CC!");
|
cmd = strdup ("CC!");
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
cmd = r_str_newf ("\"CC %s\"", arg);
|
cmd = r_str_newf ("'CC %s", arg);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
free (arg);
|
free (arg);
|
||||||
@ -5302,7 +5302,7 @@ static int __clear_layout_cb(void *user) {
|
|||||||
|
|
||||||
static int __copy_cb(void *user) {
|
static int __copy_cb(void *user) {
|
||||||
RCore *core = (RCore *)user;
|
RCore *core = (RCore *)user;
|
||||||
__add_cmdf_panel (core, "How many bytes? ", "\"y %s\"");
|
__add_cmdf_panel (core, "How many bytes? ", "'y %s");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5314,13 +5314,13 @@ static int __paste_cb(void *user) {
|
|||||||
|
|
||||||
static int __write_str_cb(void *user) {
|
static int __write_str_cb(void *user) {
|
||||||
RCore *core = (RCore *)user;
|
RCore *core = (RCore *)user;
|
||||||
__add_cmdf_panel (core, "insert string: ", "\"w %s\"");
|
__add_cmdf_panel (core, "insert string: ", "'w %s");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __write_hex_cb(void *user) {
|
static int __write_hex_cb(void *user) {
|
||||||
RCore *core = (RCore *)user;
|
RCore *core = (RCore *)user;
|
||||||
__add_cmdf_panel (core, "insert hexpairs: ", "\"wx %s\"");
|
__add_cmdf_panel (core, "insert hexpairs: ", "'wx %s");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5479,19 +5479,19 @@ static int __string_data_sec_cb(void *user) {
|
|||||||
|
|
||||||
static int __rop_cb(void *user) {
|
static int __rop_cb(void *user) {
|
||||||
RCore *core = (RCore *)user;
|
RCore *core = (RCore *)user;
|
||||||
__add_cmdf_panel (core, "rop grep: ", "\"/R %s\"");
|
__add_cmdf_panel (core, "rop grep: ", "'/R %s");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __code_cb(void *user) {
|
static int __code_cb(void *user) {
|
||||||
RCore *core = (RCore *)user;
|
RCore *core = (RCore *)user;
|
||||||
__add_cmdf_panel (core, "search code: ", "\"/c %s\"");
|
__add_cmdf_panel (core, "search code: ", "'/c %s");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int __hexpairs_cb(void *user) {
|
static int __hexpairs_cb(void *user) {
|
||||||
RCore *core = (RCore *)user;
|
RCore *core = (RCore *)user;
|
||||||
__add_cmdf_panel (core, "search hexpairs: ", "\"/x %s\"");
|
__add_cmdf_panel (core, "search hexpairs: ", "'/x %s");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5683,7 +5683,7 @@ static int __writeValueCb(void *user) {
|
|||||||
RCore *core = (RCore *)user;
|
RCore *core = (RCore *)user;
|
||||||
char *res = __show_status_input (core, "insert number: ");
|
char *res = __show_status_input (core, "insert number: ");
|
||||||
if (res) {
|
if (res) {
|
||||||
r_core_cmdf (core, "\"wv %s\"", res);
|
r_core_cmdf (core, "'wv %s", res);
|
||||||
free (res);
|
free (res);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -488,8 +488,8 @@ static bool store_files_and_maps(RCore *core, RIODesc *desc, ut32 id) {
|
|||||||
RIOMap *map;
|
RIOMap *map;
|
||||||
if (desc) {
|
if (desc) {
|
||||||
// reload bin info
|
// reload bin info
|
||||||
r_cons_printf ("\"obf %s\"\n", desc->uri);
|
r_cons_printf ("'obf %s\n", desc->uri);
|
||||||
r_cons_printf ("\"of \\\"%s\\\" %s\"\n", desc->uri, r_str_rwx_i (desc->perm));
|
r_cons_printf ("'of \\\"%s\\\" %s\n", desc->uri, r_str_rwx_i (desc->perm));
|
||||||
if ((maps = r_io_map_get_by_fd (core->io, id))) { //wtf
|
if ((maps = r_io_map_get_by_fd (core->io, id))) { //wtf
|
||||||
r_list_foreach (maps, iter, map) {
|
r_list_foreach (maps, iter, map) {
|
||||||
r_cons_printf ("om %d 0x%" PFMT64x " 0x%" PFMT64x " 0x%" PFMT64x " %s%s%s\n", fdc,
|
r_cons_printf ("om %d 0x%" PFMT64x " 0x%" PFMT64x " 0x%" PFMT64x " %s%s%s\n", fdc,
|
||||||
|
@ -916,7 +916,7 @@ R_API int r_core_visual_types(RCore *core) {
|
|||||||
{
|
{
|
||||||
char *file = prompt ("Filename: ", NULL);
|
char *file = prompt ("Filename: ", NULL);
|
||||||
if (file) {
|
if (file) {
|
||||||
r_core_cmdf (core, "\"to %s\"", file);
|
r_core_cmdf (core, "'to %s", file);
|
||||||
free (file);
|
free (file);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -969,7 +969,7 @@ R_API int r_core_visual_types(RCore *core) {
|
|||||||
{
|
{
|
||||||
txt = prompt ("add C type: ", NULL);
|
txt = prompt ("add C type: ", NULL);
|
||||||
if (txt) {
|
if (txt) {
|
||||||
r_core_cmdf (core, "\"td %s\"", txt);
|
r_core_cmdf (core, "'td %s", txt);
|
||||||
free (txt);
|
free (txt);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -509,7 +509,7 @@ static int rasm_disasm(RAsmState *as, ut64 addr, const char *buf, int len, int b
|
|||||||
if (acode) {
|
if (acode) {
|
||||||
if (as->oneliner) {
|
if (as->oneliner) {
|
||||||
r_str_replace_char (acode->assembly, '\n', ';');
|
r_str_replace_char (acode->assembly, '\n', ';');
|
||||||
printf ("%s\"\n", acode->assembly);
|
printf ("%s\n", acode->assembly);
|
||||||
} else if (acode->assembly[0]) {
|
} else if (acode->assembly[0]) {
|
||||||
printf ("%s", acode->assembly);
|
printf ("%s", acode->assembly);
|
||||||
} else {
|
} else {
|
||||||
@ -1056,7 +1056,7 @@ R_API int r_main_rasm2(int argc, const char *argv[]) {
|
|||||||
as->oneliner = true;
|
as->oneliner = true;
|
||||||
printf ("e asm.arch=%s\n", arch? arch: R_SYS_ARCH);
|
printf ("e asm.arch=%s\n", arch? arch: R_SYS_ARCH);
|
||||||
printf ("e asm.bits=%d\n", bits);
|
printf ("e asm.bits=%d\n", bits);
|
||||||
printf ("\"wa ");
|
printf ("'wa ");
|
||||||
}
|
}
|
||||||
ret = rasm_disasm (as, offset, (char *)usrstr, len,
|
ret = rasm_disasm (as, offset, (char *)usrstr, len,
|
||||||
as->a->config->bits, bin, dis - 1);
|
as->a->config->bits, bin, dis - 1);
|
||||||
|
@ -100,8 +100,8 @@ af
|
|||||||
afi*
|
afi*
|
||||||
EOF
|
EOF
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"f sym._checkinput 288 0x100000da0"
|
'f sym._checkinput 288 0x100000da0
|
||||||
"af+ 0x100000da0 sym._checkinput f n"
|
'af+ 0x100000da0 sym._checkinput f n
|
||||||
afb+ 0x100000da0 0x100000da0 22 0x100000db6 0xffffffffffffffff
|
afb+ 0x100000da0 0x100000da0 22 0x100000db6 0xffffffffffffffff
|
||||||
afb+ 0x100000da0 0x100000e99 5 0x100000e9e 0xffffffffffffffff
|
afb+ 0x100000da0 0x100000e99 5 0x100000e9e 0xffffffffffffffff
|
||||||
afb+ 0x100000da0 0x100000e9e 24 0x100000db6 0x100000eb6
|
afb+ 0x100000da0 0x100000e9e 24 0x100000db6 0x100000eb6
|
||||||
@ -128,7 +128,7 @@ afb+ 0x100000da0 0x100000e8b 5 0x100000e99 0xffffffffffffffff
|
|||||||
afb+ 0x100000da0 0x100000e90 9 0x100000eba 0xffffffffffffffff
|
afb+ 0x100000da0 0x100000e90 9 0x100000eba 0xffffffffffffffff
|
||||||
afB 64 @ 0x100000da0
|
afB 64 @ 0x100000da0
|
||||||
s 0x100000da0
|
s 0x100000da0
|
||||||
"afc amd64"
|
'afc amd64
|
||||||
s-
|
s-
|
||||||
s 0x100000da0
|
s 0x100000da0
|
||||||
'afvb -1 var_1h int64_t
|
'afvb -1 var_1h int64_t
|
||||||
|
@ -2564,7 +2564,7 @@ NAME=il* (file x86)
|
|||||||
FILE=bins/elf/analysis/x86-helloworld-gcc
|
FILE=bins/elf/analysis/x86-helloworld-gcc
|
||||||
CMDS=il*
|
CMDS=il*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"CCa entry0 libc.so.6"
|
'CCa entry0 libc.so.6
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
|
||||||
@ -2591,13 +2591,13 @@ FILE=bins/elf/analysis/x86-helloworld-gcc
|
|||||||
CMDS=ir*
|
CMDS=ir*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
fs relocs
|
fs relocs
|
||||||
"f reloc.__gmon_start__ 4 0x08049690"
|
'f reloc.__gmon_start__ 4 0x08049690
|
||||||
Cd 4 @ 0x08049690
|
Cd 4 @ 0x08049690
|
||||||
"f reloc.puts 4 0x080496a0"
|
'f reloc.puts 4 0x080496a0
|
||||||
Cd 4 @ 0x080496a0
|
Cd 4 @ 0x080496a0
|
||||||
"f reloc.__gmon_start__ 4 0x080496a4"
|
'f reloc.__gmon_start__ 4 0x080496a4
|
||||||
Cd 4 @ 0x080496a4
|
Cd 4 @ 0x080496a4
|
||||||
"f reloc.__libc_start_main 4 0x080496a8"
|
'f reloc.__libc_start_main 4 0x080496a8
|
||||||
Cd 4 @ 0x080496a8
|
Cd 4 @ 0x080496a8
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
@ -688,115 +688,115 @@ FILE=bins/elf/libmagic.so
|
|||||||
CMDS=ic*
|
CMDS=ic*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
fs classes
|
fs classes
|
||||||
"f class._JNIEnv = 0x6060"
|
'f class._JNIEnv = 0x6060
|
||||||
"f method._JNIEnv.FindClass(char_const*) = 0x6060"
|
'f method._JNIEnv.FindClass(char_const*) = 0x6060
|
||||||
"f method._JNIEnv.DeleteLocalRef(_jobject*) = 0x606a"
|
'f method._JNIEnv.DeleteLocalRef(_jobject*) = 0x606a
|
||||||
"f method._JNIEnv.NewObject(_jclass*,__jmethodID*,_...) = 0x6074"
|
'f method._JNIEnv.NewObject(_jclass*,__jmethodID*,_...) = 0x6074
|
||||||
"f method._JNIEnv.GetObjectClass(_jobject*) = 0x608e"
|
'f method._JNIEnv.GetObjectClass(_jobject*) = 0x608e
|
||||||
"f method._JNIEnv.GetMethodID(_jclass*,_char_const*,_char_const*) = 0x6098"
|
'f method._JNIEnv.GetMethodID(_jclass*,_char_const*,_char_const*) = 0x6098
|
||||||
"f method._JNIEnv.CallObjectMethod(_jobject*,__jmethodID*,_...) = 0x60a4"
|
'f method._JNIEnv.CallObjectMethod(_jobject*,__jmethodID*,_...) = 0x60a4
|
||||||
"f method._JNIEnv.CallVoidMethod(_jobject*,__jmethodID*,_...) = 0x60c0"
|
'f method._JNIEnv.CallVoidMethod(_jobject*,__jmethodID*,_...) = 0x60c0
|
||||||
"f method._JNIEnv.GetStaticMethodID(_jclass*,_char_const*,_char_const*) = 0x60dc"
|
'f method._JNIEnv.GetStaticMethodID(_jclass*,_char_const*,_char_const*) = 0x60dc
|
||||||
"f method._JNIEnv.CallStaticObjectMethod(_jclass*,__jmethodID*,_...) = 0x60ea"
|
'f method._JNIEnv.CallStaticObjectMethod(_jclass*,__jmethodID*,_...) = 0x60ea
|
||||||
"f method._JNIEnv.CallStaticIntMethod(_jclass*,__jmethodID*,_...) = 0x695e"
|
'f method._JNIEnv.CallStaticIntMethod(_jclass*,__jmethodID*,_...) = 0x695e
|
||||||
"f method._JNIEnv.CallStaticVoidMethod(_jclass*,__jmethodID*,_...) = 0x697c"
|
'f method._JNIEnv.CallStaticVoidMethod(_jclass*,__jmethodID*,_...) = 0x697c
|
||||||
'td struct _JNIEnv { char empty[0];};
|
'td struct _JNIEnv { char empty[0];};
|
||||||
"f class.SystemClassLoaderInjector = 0x699c"
|
'f class.SystemClassLoaderInjector = 0x699c
|
||||||
"f method.SystemClassLoaderInjector.inject(_JNIEnv*,__jobject*,__jstring*,__jstring*) = 0x74f8"
|
'f method.SystemClassLoaderInjector.inject(_JNIEnv*,__jobject*,__jstring*,__jstring*) = 0x74f8
|
||||||
"f method.SystemClassLoaderInjector.findBaseDexClassloader(_JNIEnv*,__jobject*) = 0x699c"
|
'f method.SystemClassLoaderInjector.findBaseDexClassloader(_JNIEnv*,__jobject*) = 0x699c
|
||||||
"f method.SystemClassLoaderInjector.getField(_JNIEnv*,__jobject*,__jobject*,__jstring*) = 0x6a2c"
|
'f method.SystemClassLoaderInjector.getField(_JNIEnv*,__jobject*,__jobject*,__jstring*) = 0x6a2c
|
||||||
"f method.SystemClassLoaderInjector.getPathList(_JNIEnv*,__jobject*) = 0x6abc"
|
'f method.SystemClassLoaderInjector.getPathList(_JNIEnv*,__jobject*) = 0x6abc
|
||||||
"f method.SystemClassLoaderInjector.getDexElements(_JNIEnv*,__jobject*) = 0x6af4"
|
'f method.SystemClassLoaderInjector.getDexElements(_JNIEnv*,__jobject*) = 0x6af4
|
||||||
"f method.SystemClassLoaderInjector.setField(_JNIEnv*,__jobject*,__jobject*,__jstring*,__jobject*) = 0x6b1c"
|
'f method.SystemClassLoaderInjector.setField(_JNIEnv*,__jobject*,__jobject*,__jstring*,__jobject*) = 0x6b1c
|
||||||
"f method.SystemClassLoaderInjector.combineArray(_JNIEnv*,__jobject*,__jobject*) = 0x6bb0"
|
'f method.SystemClassLoaderInjector.combineArray(_JNIEnv*,__jobject*,__jobject*) = 0x6bb0
|
||||||
"f method.SystemClassLoaderInjector.injectAboveEqualApiLevel14(_JNIEnv*,__jobject*,__jstring*,__jstring*) = 0x6d00"
|
'f method.SystemClassLoaderInjector.injectAboveEqualApiLevel14(_JNIEnv*,__jobject*,__jstring*,__jstring*) = 0x6d00
|
||||||
"f method.SystemClassLoaderInjector.appendArray(_JNIEnv*,__jobject*,__jobject*) = 0x6e5c"
|
'f method.SystemClassLoaderInjector.appendArray(_JNIEnv*,__jobject*,__jobject*) = 0x6e5c
|
||||||
"f method.SystemClassLoaderInjector.injectInAliyunOs(_JNIEnv*,__jobject*,__jstring*,__jstring*) = 0x6f68"
|
'f method.SystemClassLoaderInjector.injectInAliyunOs(_JNIEnv*,__jobject*,__jstring*,__jstring*) = 0x6f68
|
||||||
"f method.SystemClassLoaderInjector.injectBelowApiLevel14(_JNIEnv*,__jobject*,__jstring*,__jstring*) = 0x720c"
|
'f method.SystemClassLoaderInjector.injectBelowApiLevel14(_JNIEnv*,__jobject*,__jstring*,__jstring*) = 0x720c
|
||||||
'td struct SystemClassLoaderInjector { char empty[0];};
|
'td struct SystemClassLoaderInjector { char empty[0];};
|
||||||
"f class.std = 0x886c"
|
'f class.std = 0x886c
|
||||||
"f method.std.terminate() = 0x9470"
|
'f method.std.terminate() = 0x9470
|
||||||
"f method.std.uncaught_exception() = 0x886c"
|
'f method.std.uncaught_exception() = 0x886c
|
||||||
"f method.std.unexpected() = 0x9494"
|
'f method.std.unexpected() = 0x9494
|
||||||
"f method.std.set_terminate(void_(*)()) = 0x94ac"
|
'f method.std.set_terminate(void_(*)()) = 0x94ac
|
||||||
"f method.std.set_unexpected(void_(*)()) = 0x94c8"
|
'f method.std.set_unexpected(void_(*)()) = 0x94c8
|
||||||
'td struct std { char empty[0];};
|
'td struct std { char empty[0];};
|
||||||
"f class.std::exception = 0x8884"
|
'f class.std::exception = 0x8884
|
||||||
"f method.std::exception.~exception() = 0x8884"
|
'f method.std::exception.~exception() = 0x8884
|
||||||
"f method.std::exception.what()_const = 0x88f4"
|
'f method.std::exception.what()_const = 0x88f4
|
||||||
'td struct std::exception { char empty[0];};
|
'td struct std::exception { char empty[0];};
|
||||||
"f class.std::bad_exception = 0x889c"
|
'f class.std::bad_exception = 0x889c
|
||||||
"f method.std::bad_exception.~bad_exception() = 0x889c"
|
'f method.std::bad_exception.~bad_exception() = 0x889c
|
||||||
"f method.std::bad_exception.what()_const = 0x8904"
|
'f method.std::bad_exception.what()_const = 0x8904
|
||||||
'td struct std::bad_exception { char empty[0];};
|
'td struct std::bad_exception { char empty[0];};
|
||||||
"f class.__cxxabiv1::__forced_unwind = 0x88c4"
|
'f class.__cxxabiv1::__forced_unwind = 0x88c4
|
||||||
"f method.__cxxabiv1::__forced_unwind.~__forced_unwind() = 0x88c4"
|
'f method.__cxxabiv1::__forced_unwind.~__forced_unwind() = 0x88c4
|
||||||
'td struct __cxxabiv1::__forced_unwind { char empty[0];};
|
'td struct __cxxabiv1::__forced_unwind { char empty[0];};
|
||||||
"f class.__cxxabiv1::__foreign_exception = 0x88dc"
|
'f class.__cxxabiv1::__foreign_exception = 0x88dc
|
||||||
"f method.__cxxabiv1::__foreign_exception.~__foreign_exception() = 0x88dc"
|
'f method.__cxxabiv1::__foreign_exception.~__foreign_exception() = 0x88dc
|
||||||
'td struct __cxxabiv1::__foreign_exception { char empty[0];};
|
'td struct __cxxabiv1::__foreign_exception { char empty[0];};
|
||||||
"f class.__eh_globals_init = 0x8984"
|
'f class.__eh_globals_init = 0x8984
|
||||||
"f method.__eh_globals_init.~__eh_globals_init() = 0x8984"
|
'f method.__eh_globals_init.~__eh_globals_init() = 0x8984
|
||||||
'td struct __eh_globals_init { char empty[0];};
|
'td struct __eh_globals_init { char empty[0];};
|
||||||
"f class.__cxxabiv1 = 0x943c"
|
'f class.__cxxabiv1 = 0x943c
|
||||||
"f method.__cxxabiv1.__terminate(void_(*)()) = 0x943c"
|
'f method.__cxxabiv1.__terminate(void_(*)()) = 0x943c
|
||||||
"f method.__cxxabiv1.__unexpected(void_(*)()) = 0x9488"
|
'f method.__cxxabiv1.__unexpected(void_(*)()) = 0x9488
|
||||||
'td struct __cxxabiv1 { char empty[0];};
|
'td struct __cxxabiv1 { char empty[0];};
|
||||||
"f class.__cxxabiv1::__fundamental_type_info = 0x94e4"
|
'f class.__cxxabiv1::__fundamental_type_info = 0x94e4
|
||||||
"f method.__cxxabiv1::__fundamental_type_info.~__fundamental_type_info() = 0x94e4"
|
'f method.__cxxabiv1::__fundamental_type_info.~__fundamental_type_info() = 0x94e4
|
||||||
'td struct __cxxabiv1::__fundamental_type_info { char empty[0];};
|
'td struct __cxxabiv1::__fundamental_type_info { char empty[0];};
|
||||||
"f class.std::type_info = 0x97bc"
|
'f class.std::type_info = 0x97bc
|
||||||
"f method.std::type_info.~type_info() = 0x97bc"
|
'f method.std::type_info.~type_info() = 0x97bc
|
||||||
"f method.std::type_info.__is_pointer_p()_const = 0x97d4"
|
'f method.std::type_info.__is_pointer_p()_const = 0x97d4
|
||||||
"f method.std::type_info.__is_function_p()_const = 0x97dc"
|
'f method.std::type_info.__is_function_p()_const = 0x97dc
|
||||||
"f method.std::type_info.__do_catch(std::type_info_const*,_void**,_unsigned_int)_const = 0x9854"
|
'f method.std::type_info.__do_catch(std::type_info_const*,_void**,_unsigned_int)_const = 0x9854
|
||||||
"f method.std::type_info.__do_upcast(__cxxabiv1::__class_type_info_const*,_void**)_const = 0x97e4"
|
'f method.std::type_info.__do_upcast(__cxxabiv1::__class_type_info_const*,_void**)_const = 0x97e4
|
||||||
"f method.std::type_info.operator==(std::type_info_const&)_const = 0x9808"
|
'f method.std::type_info.operator==(std::type_info_const&)_const = 0x9808
|
||||||
'td struct std::type_info { char empty[0];};
|
'td struct std::type_info { char empty[0];};
|
||||||
"f class.__cxxabiv1::__pointer_type_info = 0x9528"
|
'f class.__cxxabiv1::__pointer_type_info = 0x9528
|
||||||
"f method.__cxxabiv1::__pointer_type_info.__is_pointer_p()_const = 0x9528"
|
'f method.__cxxabiv1::__pointer_type_info.__is_pointer_p()_const = 0x9528
|
||||||
"f method.__cxxabiv1::__pointer_type_info.~__pointer_type_info() = 0x9530"
|
'f method.__cxxabiv1::__pointer_type_info.~__pointer_type_info() = 0x9530
|
||||||
"f method.__cxxabiv1::__pointer_type_info.__pointer_catch(__cxxabiv1::__pbase_type_info_const*,_void**,_unsigned_int)_const = 0x9574"
|
'f method.__cxxabiv1::__pointer_type_info.__pointer_catch(__cxxabiv1::__pbase_type_info_const*,_void**,_unsigned_int)_const = 0x9574
|
||||||
'td struct __cxxabiv1::__pointer_type_info { char empty[0];};
|
'td struct __cxxabiv1::__pointer_type_info { char empty[0];};
|
||||||
"f class.__cxxabiv1::__pbase_type_info = 0x9dd0"
|
'f class.__cxxabiv1::__pbase_type_info = 0x9dd0
|
||||||
"f method.__cxxabiv1::__pbase_type_info.~__pbase_type_info() = 0x9df0"
|
'f method.__cxxabiv1::__pbase_type_info.~__pbase_type_info() = 0x9df0
|
||||||
"f method.__cxxabiv1::__pbase_type_info.__do_catch(std::type_info_const*,_void**,_unsigned_int)_const = 0x9e34"
|
'f method.__cxxabiv1::__pbase_type_info.__do_catch(std::type_info_const*,_void**,_unsigned_int)_const = 0x9e34
|
||||||
"f method.__cxxabiv1::__pbase_type_info.__pointer_catch(__cxxabiv1::__pbase_type_info_const*,_void**,_unsigned_int)_const = 0x9dd0"
|
'f method.__cxxabiv1::__pbase_type_info.__pointer_catch(__cxxabiv1::__pbase_type_info_const*,_void**,_unsigned_int)_const = 0x9dd0
|
||||||
'td struct __cxxabiv1::__pbase_type_info { char empty[0];};
|
'td struct __cxxabiv1::__pbase_type_info { char empty[0];};
|
||||||
"f class.__cxxabiv1::__si_class_type_info = 0x95f4"
|
'f class.__cxxabiv1::__si_class_type_info = 0x95f4
|
||||||
"f method.__cxxabiv1::__si_class_type_info.~__si_class_type_info() = 0x95f4"
|
'f method.__cxxabiv1::__si_class_type_info.~__si_class_type_info() = 0x95f4
|
||||||
"f method.__cxxabiv1::__si_class_type_info.__do_find_public_src(int,_void_const*,___cxxabiv1::__class_type_info_const*,_void_const*)_const = 0x9638"
|
'f method.__cxxabiv1::__si_class_type_info.__do_find_public_src(int,_void_const*,___cxxabiv1::__class_type_info_const*,_void_const*)_const = 0x9638
|
||||||
"f method.__cxxabiv1::__si_class_type_info.__do_dyncast(int,___cxxabiv1::__class_type_info::__sub_kind,___cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info::__dyncast_result&)_const = 0x969c"
|
'f method.__cxxabiv1::__si_class_type_info.__do_dyncast(int,___cxxabiv1::__class_type_info::__sub_kind,___cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info::__dyncast_result&)_const = 0x969c
|
||||||
"f method.__cxxabiv1::__si_class_type_info.__do_upcast(__cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info::__upcast_result&)_const = 0x977c"
|
'f method.__cxxabiv1::__si_class_type_info.__do_upcast(__cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info::__upcast_result&)_const = 0x977c
|
||||||
'td struct __cxxabiv1::__si_class_type_info { char empty[0];};
|
'td struct __cxxabiv1::__si_class_type_info { char empty[0];};
|
||||||
"f class.__cxxabiv1::__class_type_info = 0x9868"
|
'f class.__cxxabiv1::__class_type_info = 0x9868
|
||||||
"f method.__cxxabiv1::__class_type_info.~__class_type_info() = 0x98d8"
|
'f method.__cxxabiv1::__class_type_info.~__class_type_info() = 0x98d8
|
||||||
"f method.__cxxabiv1::__class_type_info.__do_upcast(__cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info::__upcast_result&)_const = 0x991c"
|
'f method.__cxxabiv1::__class_type_info.__do_upcast(__cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info::__upcast_result&)_const = 0x991c
|
||||||
"f method.__cxxabiv1::__class_type_info.__do_catch(std::type_info_const*,_void**,_unsigned_int)_const = 0x9948"
|
'f method.__cxxabiv1::__class_type_info.__do_catch(std::type_info_const*,_void**,_unsigned_int)_const = 0x9948
|
||||||
"f method.__cxxabiv1::__class_type_info.__do_upcast(__cxxabiv1::__class_type_info_const*,_void**)_const = 0x9868"
|
'f method.__cxxabiv1::__class_type_info.__do_upcast(__cxxabiv1::__class_type_info_const*,_void**)_const = 0x9868
|
||||||
"f method.__cxxabiv1::__class_type_info.__do_find_public_src(int,_void_const*,___cxxabiv1::__class_type_info_const*,_void_const*)_const = 0x98c4"
|
'f method.__cxxabiv1::__class_type_info.__do_find_public_src(int,_void_const*,___cxxabiv1::__class_type_info_const*,_void_const*)_const = 0x98c4
|
||||||
"f method.__cxxabiv1::__class_type_info.__do_dyncast(int,___cxxabiv1::__class_type_info::__sub_kind,___cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info::__dyncast_result&)_const = 0x998c"
|
'f method.__cxxabiv1::__class_type_info.__do_dyncast(int,___cxxabiv1::__class_type_info::__sub_kind,___cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info_const*,_void_const*,___cxxabiv1::__class_type_info::__dyncast_result&)_const = 0x998c
|
||||||
'td struct __cxxabiv1::__class_type_info { char empty[0];};
|
'td struct __cxxabiv1::__class_type_info { char empty[0];};
|
||||||
"f class.__gnu_cxx = 0x9ec4"
|
'f class.__gnu_cxx = 0x9ec4
|
||||||
"f method.__gnu_cxx.__verbose_terminate_handler() = 0x9ec4"
|
'f method.__gnu_cxx.__verbose_terminate_handler() = 0x9ec4
|
||||||
"f method.__gnu_cxx.__throw_concurrence_lock_error() = 0x12780"
|
'f method.__gnu_cxx.__throw_concurrence_lock_error() = 0x12780
|
||||||
"f method.__gnu_cxx.__throw_concurrence_unlock_error() = 0x127c8"
|
'f method.__gnu_cxx.__throw_concurrence_unlock_error() = 0x127c8
|
||||||
'td struct __gnu_cxx { char empty[0];};
|
'td struct __gnu_cxx { char empty[0];};
|
||||||
"f class.__gnu_cxx::__concurrence_lock_error = 0x126b0"
|
'f class.__gnu_cxx::__concurrence_lock_error = 0x126b0
|
||||||
"f method.__gnu_cxx::__concurrence_lock_error.what()_const = 0x126b0"
|
'f method.__gnu_cxx::__concurrence_lock_error.what()_const = 0x126b0
|
||||||
"f method.__gnu_cxx::__concurrence_lock_error.~__concurrence_lock_error() = 0x126f8"
|
'f method.__gnu_cxx::__concurrence_lock_error.~__concurrence_lock_error() = 0x126f8
|
||||||
'td struct __gnu_cxx::__concurrence_lock_error { char empty[0];};
|
'td struct __gnu_cxx::__concurrence_lock_error { char empty[0];};
|
||||||
"f class.__gnu_cxx::__concurrence_unlock_error = 0x126c0"
|
'f class.__gnu_cxx::__concurrence_unlock_error = 0x126c0
|
||||||
"f method.__gnu_cxx::__concurrence_unlock_error.what()_const = 0x126c0"
|
'f method.__gnu_cxx::__concurrence_unlock_error.what()_const = 0x126c0
|
||||||
"f method.__gnu_cxx::__concurrence_unlock_error.~__concurrence_unlock_error() = 0x126d0"
|
'f method.__gnu_cxx::__concurrence_unlock_error.~__concurrence_unlock_error() = 0x126d0
|
||||||
'td struct __gnu_cxx::__concurrence_unlock_error { char empty[0];};
|
'td struct __gnu_cxx::__concurrence_unlock_error { char empty[0];};
|
||||||
"f class.std::bad_cast = 0x12bc8"
|
'f class.std::bad_cast = 0x12bc8
|
||||||
"f method.std::bad_cast.~bad_cast() = 0x12bd8"
|
'f method.std::bad_cast.~bad_cast() = 0x12bd8
|
||||||
"f method.std::bad_cast.what()_const = 0x12bc8"
|
'f method.std::bad_cast.what()_const = 0x12bc8
|
||||||
'td struct std::bad_cast { char empty[0];};
|
'td struct std::bad_cast { char empty[0];};
|
||||||
"f class.std::bad_typeid = 0x12c1c"
|
'f class.std::bad_typeid = 0x12c1c
|
||||||
"f method.std::bad_typeid.~bad_typeid() = 0x12c2c"
|
'f method.std::bad_typeid.~bad_typeid() = 0x12c2c
|
||||||
"f method.std::bad_typeid.what()_const = 0x12c1c"
|
'f method.std::bad_typeid.what()_const = 0x12c1c
|
||||||
'td struct std::bad_typeid { char empty[0];};
|
'td struct std::bad_typeid { char empty[0];};
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
@ -36,42 +36,42 @@ FILE=bins/elf/before-after-main
|
|||||||
CMDS=iee*
|
CMDS=iee*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
fs+symbols
|
fs+symbols
|
||||||
"f entry.preinit0 1 0x08048486"
|
'f entry.preinit0 1 0x08048486
|
||||||
"f entry.preinit0_hpaddr 1 0x00000ed4"
|
'f entry.preinit0_hpaddr 1 0x00000ed4
|
||||||
"s entry.preinit0"
|
's entry.preinit0
|
||||||
"f entry.preinit1 1 0x0804849f"
|
'f entry.preinit1 1 0x0804849f
|
||||||
"f entry.preinit1_hpaddr 1 0x00000ed8"
|
'f entry.preinit1_hpaddr 1 0x00000ed8
|
||||||
"s entry.preinit1"
|
's entry.preinit1
|
||||||
"f entry.init0 1 0x08048480"
|
'f entry.init0 1 0x08048480
|
||||||
"f entry.init0_hpaddr 1 0x00000edc"
|
'f entry.init0_hpaddr 1 0x00000edc
|
||||||
"s entry.init0"
|
's entry.init0
|
||||||
"f entry.init1 1 0x080484b8"
|
'f entry.init1 1 0x080484b8
|
||||||
"f entry.init1_hpaddr 1 0x00000ee0"
|
'f entry.init1_hpaddr 1 0x00000ee0
|
||||||
"s entry.init1"
|
's entry.init1
|
||||||
"f entry.init2 1 0x080484d1"
|
'f entry.init2 1 0x080484d1
|
||||||
"f entry.init2_hpaddr 1 0x00000ee4"
|
'f entry.init2_hpaddr 1 0x00000ee4
|
||||||
"s entry.init2"
|
's entry.init2
|
||||||
"f entry.init3 1 0x080484ea"
|
'f entry.init3 1 0x080484ea
|
||||||
"f entry.init3_hpaddr 1 0x00000ee8"
|
'f entry.init3_hpaddr 1 0x00000ee8
|
||||||
"s entry.init3"
|
's entry.init3
|
||||||
"f entry.init4 1 0x08048503"
|
'f entry.init4 1 0x08048503
|
||||||
"f entry.init4_hpaddr 1 0x00000eec"
|
'f entry.init4_hpaddr 1 0x00000eec
|
||||||
"s entry.init4"
|
's entry.init4
|
||||||
"f entry.fini0 1 0x08048450"
|
'f entry.fini0 1 0x08048450
|
||||||
"f entry.fini0_hpaddr 1 0x00000ef0"
|
'f entry.fini0_hpaddr 1 0x00000ef0
|
||||||
"s entry.fini0"
|
's entry.fini0
|
||||||
"f entry.fini1 1 0x0804859c"
|
'f entry.fini1 1 0x0804859c
|
||||||
"f entry.fini1_hpaddr 1 0x00000ef4"
|
'f entry.fini1_hpaddr 1 0x00000ef4
|
||||||
"s entry.fini1"
|
's entry.fini1
|
||||||
"f entry.fini2 1 0x080485b5"
|
'f entry.fini2 1 0x080485b5
|
||||||
"f entry.fini2_hpaddr 1 0x00000ef8"
|
'f entry.fini2_hpaddr 1 0x00000ef8
|
||||||
"s entry.fini2"
|
's entry.fini2
|
||||||
"f entry.fini3 1 0x080485ce"
|
'f entry.fini3 1 0x080485ce
|
||||||
"f entry.fini3_hpaddr 1 0x00000efc"
|
'f entry.fini3_hpaddr 1 0x00000efc
|
||||||
"s entry.fini3"
|
's entry.fini3
|
||||||
"f entry.fini4 1 0x080485e7"
|
'f entry.fini4 1 0x080485e7
|
||||||
"f entry.fini4_hpaddr 1 0x00000f00"
|
'f entry.fini4_hpaddr 1 0x00000f00
|
||||||
"s entry.fini4"
|
's entry.fini4
|
||||||
fs-
|
fs-
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
@ -47,31 +47,31 @@ ARGS=-e bin.types=true
|
|||||||
CMDS=ic*
|
CMDS=ic*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
fs classes
|
fs classes
|
||||||
"f class.Employee = 0x100001ae0"
|
'f class.Employee = 0x100001ae0
|
||||||
"f super.Employee.NSObject = 0"
|
'f super.Employee.NSObject = 0
|
||||||
"f method.Employee.helloWorld = 0x100001ae0"
|
'f method.Employee.helloWorld = 0x100001ae0
|
||||||
"f method.Employee.sayHello = 0x100001b10"
|
'f method.Employee.sayHello = 0x100001b10
|
||||||
"f method.Employee.p0 = 0x100001b40"
|
'f method.Employee.p0 = 0x100001b40
|
||||||
"f method.Employee.p1 = 0x100001b60"
|
'f method.Employee.p1 = 0x100001b60
|
||||||
"f method.Employee.p2 = 0x100001b80"
|
'f method.Employee.p2 = 0x100001b80
|
||||||
"f method.Employee.p3 = 0x100001ba0"
|
'f method.Employee.p3 = 0x100001ba0
|
||||||
"f method.Employee.base = 0x100001bc0"
|
'f method.Employee.base = 0x100001bc0
|
||||||
"f method.Employee.username = 0x100001c10"
|
'f method.Employee.username = 0x100001c10
|
||||||
"f method.Employee.setUsername: = 0x100001c40"
|
'f method.Employee.setUsername: = 0x100001c40
|
||||||
"f method.Employee.firstName = 0x100001c80"
|
'f method.Employee.firstName = 0x100001c80
|
||||||
"f method.Employee.setFirstName: = 0x100001cb0"
|
'f method.Employee.setFirstName: = 0x100001cb0
|
||||||
"f method.Employee.shortWord = 0x100001cf0"
|
'f method.Employee.shortWord = 0x100001cf0
|
||||||
"f method.Employee.wideWord = 0x100001d10"
|
'f method.Employee.wideWord = 0x100001d10
|
||||||
"f method.Employee.class.sayHello = 0x100001be0"
|
'f method.Employee.class.sayHello = 0x100001be0
|
||||||
"f field.Employee.var.isa = 0x00000000"
|
'f field.Employee.var.isa = 0x00000000
|
||||||
"f field.Employee.var._shortWord = 0x100003328"
|
'f field.Employee.var._shortWord = 0x100003328
|
||||||
"f field.Employee.var._username = 0x100003330"
|
'f field.Employee.var._username = 0x100003330
|
||||||
"f field.Employee.var._firstName = 0x100003338"
|
'f field.Employee.var._firstName = 0x100003338
|
||||||
"f field.Employee.var._wideWord = 0x100003340"
|
'f field.Employee.var._wideWord = 0x100003340
|
||||||
"f field.Employee.property.username = 0x00000000"
|
'f field.Employee.property.username = 0x00000000
|
||||||
"f field.Employee.property.firstName = 0x00000000"
|
'f field.Employee.property.firstName = 0x00000000
|
||||||
"f field.Employee.property.shortWord = 0x00000000"
|
'f field.Employee.property.shortWord = 0x00000000
|
||||||
"f field.Employee.property.wideWord = 0x00000000"
|
'f field.Employee.property.wideWord = 0x00000000
|
||||||
'td struct Employee { struct objc_class * isa; short _shortWord; struct NSString* _username; struct NSString* _firstName; uint64_t _wideWord; void* username; void* firstName; void* shortWord; void* wideWord;};
|
'td struct Employee { struct objc_class * isa; short _shortWord; struct NSString* _username; struct NSString* _firstName; uint64_t _wideWord; void* username; void* firstName; void* shortWord; void* wideWord;};
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
@ -317,32 +317,32 @@ FILE=bins/mach0/objc-employee-ios14-arm64
|
|||||||
CMDS=ic*
|
CMDS=ic*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
fs classes
|
fs classes
|
||||||
"f class.Employee = 0x100007958"
|
'f class.Employee = 0x100007958
|
||||||
"f super.Employee.NSObject = 0"
|
'f super.Employee.NSObject = 0
|
||||||
"f method.Employee.sayHello = 0x100007984"
|
'f method.Employee.sayHello = 0x100007984
|
||||||
"f method.Employee.helloWorld = 0x1000079b0"
|
'f method.Employee.helloWorld = 0x1000079b0
|
||||||
"f method.Employee.p0 = 0x1000079dc"
|
'f method.Employee.p0 = 0x1000079dc
|
||||||
"f method.Employee.p1 = 0x1000079f8"
|
'f method.Employee.p1 = 0x1000079f8
|
||||||
"f method.Employee.p2 = 0x100007a14"
|
'f method.Employee.p2 = 0x100007a14
|
||||||
"f method.Employee.p3 = 0x100007a30"
|
'f method.Employee.p3 = 0x100007a30
|
||||||
"f method.Employee.base = 0x100007a4c"
|
'f method.Employee.base = 0x100007a4c
|
||||||
"f method.Employee.username = 0x100007a64"
|
'f method.Employee.username = 0x100007a64
|
||||||
"f method.Employee.setUsername: = 0x100007a8c"
|
'f method.Employee.setUsername: = 0x100007a8c
|
||||||
"f method.Employee.firstName = 0x100007ac4"
|
'f method.Employee.firstName = 0x100007ac4
|
||||||
"f method.Employee.setFirstName: = 0x100007aec"
|
'f method.Employee.setFirstName: = 0x100007aec
|
||||||
"f method.Employee.shortWord = 0x100007b24"
|
'f method.Employee.shortWord = 0x100007b24
|
||||||
"f method.Employee.wideWord = 0x100007b44"
|
'f method.Employee.wideWord = 0x100007b44
|
||||||
"f method.Employee..cxx_destruct = 0x100007b60"
|
'f method.Employee..cxx_destruct = 0x100007b60
|
||||||
"f method.Employee.class.sayHello = 0x100007958"
|
'f method.Employee.class.sayHello = 0x100007958
|
||||||
"f field.Employee.var.isa = 0x00000000"
|
'f field.Employee.var.isa = 0x00000000
|
||||||
"f field.Employee.var._shortWord = 0x10000c228"
|
'f field.Employee.var._shortWord = 0x10000c228
|
||||||
"f field.Employee.var._username = 0x10000c22c"
|
'f field.Employee.var._username = 0x10000c22c
|
||||||
"f field.Employee.var._firstName = 0x10000c230"
|
'f field.Employee.var._firstName = 0x10000c230
|
||||||
"f field.Employee.var._wideWord = 0x10000c234"
|
'f field.Employee.var._wideWord = 0x10000c234
|
||||||
"f field.Employee.property.username = 0x00000000"
|
'f field.Employee.property.username = 0x00000000
|
||||||
"f field.Employee.property.firstName = 0x00000000"
|
'f field.Employee.property.firstName = 0x00000000
|
||||||
"f field.Employee.property.shortWord = 0x00000000"
|
'f field.Employee.property.shortWord = 0x00000000
|
||||||
"f field.Employee.property.wideWord = 0x00000000"
|
'f field.Employee.property.wideWord = 0x00000000
|
||||||
'td struct Employee { struct objc_class * isa; short _shortWord; struct NSString* _username; struct NSString* _firstName; uint64_t _wideWord; void* username; void* firstName; void* shortWord; void* wideWord;};
|
'td struct Employee { struct objc_class * isa; short _shortWord; struct NSString* _username; struct NSString* _firstName; uint64_t _wideWord; void* username; void* firstName; void* shortWord; void* wideWord;};
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
@ -590,32 +590,32 @@ FILE=bins/mach0/objc-employee-ios14-arm64e
|
|||||||
CMDS=ic*
|
CMDS=ic*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
fs classes
|
fs classes
|
||||||
"f class.Employee = 0x1000079a8"
|
'f class.Employee = 0x1000079a8
|
||||||
"f super.Employee.NSObject = 0"
|
'f super.Employee.NSObject = 0
|
||||||
"f method.Employee.sayHello = 0x1000079d8"
|
'f method.Employee.sayHello = 0x1000079d8
|
||||||
"f method.Employee.helloWorld = 0x100007a08"
|
'f method.Employee.helloWorld = 0x100007a08
|
||||||
"f method.Employee.p0 = 0x100007a38"
|
'f method.Employee.p0 = 0x100007a38
|
||||||
"f method.Employee.p1 = 0x100007a54"
|
'f method.Employee.p1 = 0x100007a54
|
||||||
"f method.Employee.p2 = 0x100007a70"
|
'f method.Employee.p2 = 0x100007a70
|
||||||
"f method.Employee.p3 = 0x100007a8c"
|
'f method.Employee.p3 = 0x100007a8c
|
||||||
"f method.Employee.base = 0x100007aa8"
|
'f method.Employee.base = 0x100007aa8
|
||||||
"f method.Employee.username = 0x100007ac0"
|
'f method.Employee.username = 0x100007ac0
|
||||||
"f method.Employee.setUsername: = 0x100007ae8"
|
'f method.Employee.setUsername: = 0x100007ae8
|
||||||
"f method.Employee.firstName = 0x100007b24"
|
'f method.Employee.firstName = 0x100007b24
|
||||||
"f method.Employee.setFirstName: = 0x100007b4c"
|
'f method.Employee.setFirstName: = 0x100007b4c
|
||||||
"f method.Employee.shortWord = 0x100007b88"
|
'f method.Employee.shortWord = 0x100007b88
|
||||||
"f method.Employee.wideWord = 0x100007ba8"
|
'f method.Employee.wideWord = 0x100007ba8
|
||||||
"f method.Employee..cxx_destruct = 0x100007bc4"
|
'f method.Employee..cxx_destruct = 0x100007bc4
|
||||||
"f method.Employee.class.sayHello = 0x1000079a8"
|
'f method.Employee.class.sayHello = 0x1000079a8
|
||||||
"f field.Employee.var.isa = 0x00000000"
|
'f field.Employee.var.isa = 0x00000000
|
||||||
"f field.Employee.var._shortWord = 0x10000c1d8"
|
'f field.Employee.var._shortWord = 0x10000c1d8
|
||||||
"f field.Employee.var._username = 0x10000c1dc"
|
'f field.Employee.var._username = 0x10000c1dc
|
||||||
"f field.Employee.var._firstName = 0x10000c1e0"
|
'f field.Employee.var._firstName = 0x10000c1e0
|
||||||
"f field.Employee.var._wideWord = 0x10000c1e4"
|
'f field.Employee.var._wideWord = 0x10000c1e4
|
||||||
"f field.Employee.property.username = 0x00000000"
|
'f field.Employee.property.username = 0x00000000
|
||||||
"f field.Employee.property.firstName = 0x00000000"
|
'f field.Employee.property.firstName = 0x00000000
|
||||||
"f field.Employee.property.shortWord = 0x00000000"
|
'f field.Employee.property.shortWord = 0x00000000
|
||||||
"f field.Employee.property.wideWord = 0x00000000"
|
'f field.Employee.property.wideWord = 0x00000000
|
||||||
'td struct Employee { struct objc_class * isa; short _shortWord; struct NSString* _username; struct NSString* _firstName; uint64_t _wideWord; void* username; void* firstName; void* shortWord; void* wideWord;};
|
'td struct Employee { struct objc_class * isa; short _shortWord; struct NSString* _username; struct NSString* _firstName; uint64_t _wideWord; void* username; void* firstName; void* shortWord; void* wideWord;};
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
@ -119,7 +119,7 @@ NAME=DEX Hello.dex method flags (r2 commands) (ic*)
|
|||||||
FILE=bins/dex/Hello.dex
|
FILE=bins/dex/Hello.dex
|
||||||
CMDS=ic*~main
|
CMDS=ic*~main
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"f method.LHello.public.static.LHello.method.main([Ljava/lang/String;)V = 0x1c0"
|
'f method.LHello.public.static.LHello.method.main([Ljava/lang/String;)V = 0x1c0
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
|
||||||
|
@ -721,28 +721,28 @@ colu: 12
|
|||||||
addr: 0x00001149
|
addr: 0x00001149
|
||||||
EOF
|
EOF
|
||||||
EXPECT_ERR=<<EOF
|
EXPECT_ERR=<<EOF
|
||||||
DEBUG: [cbin.c:3351] (section .dynsym) Cd 8[21] @ 0x3d8
|
DEBUG: [cbin.c:3348] (section .dynsym) Cd 8[21] @ 0x3d8
|
||||||
DEBUG: [cbin.c:3351] (section .dynstr) Css 141 @ 0x480
|
DEBUG: [cbin.c:3348] (section .dynstr) Css 141 @ 0x480
|
||||||
DEBUG: [cbin.c:3351] (section .rela.dyn) Cd 8[24] @ 0x550
|
DEBUG: [cbin.c:3348] (section .rela.dyn) Cd 8[24] @ 0x550
|
||||||
DEBUG: [cbin.c:3351] (section .rela.plt) Cd 8[3] @ 0x610
|
DEBUG: [cbin.c:3348] (section .rela.plt) Cd 8[3] @ 0x610
|
||||||
DEBUG: [cbin.c:3351] (section .init_array) Cd 8[1] @ 0x3db8
|
DEBUG: [cbin.c:3348] (section .init_array) Cd 8[1] @ 0x3db8
|
||||||
DEBUG: [cbin.c:3351] (section .fini_array) Cd 8[1] @ 0x3dc0
|
DEBUG: [cbin.c:3348] (section .fini_array) Cd 8[1] @ 0x3dc0
|
||||||
DEBUG: [cbin.c:3351] (section .dynamic) Cd 8[62] @ 0x3dc8
|
DEBUG: [cbin.c:3348] (section .dynamic) Cd 8[62] @ 0x3dc8
|
||||||
DEBUG: [cbin.c:3351] (section .got) Cd 8[9] @ 0x3fb8
|
DEBUG: [cbin.c:3348] (section .got) Cd 8[9] @ 0x3fb8
|
||||||
DEBUG: [cbin.c:3351] (section .dynsym) Cd 8[21] @ 0x3d8
|
DEBUG: [cbin.c:3348] (section .dynsym) Cd 8[21] @ 0x3d8
|
||||||
DEBUG: [cbin.c:3351] (section .dynstr) Css 141 @ 0x480
|
DEBUG: [cbin.c:3348] (section .dynstr) Css 141 @ 0x480
|
||||||
DEBUG: [cbin.c:3351] (section .rela.dyn) Cd 8[24] @ 0x550
|
DEBUG: [cbin.c:3348] (section .rela.dyn) Cd 8[24] @ 0x550
|
||||||
DEBUG: [cbin.c:3351] (section .rela.plt) Cd 8[3] @ 0x610
|
DEBUG: [cbin.c:3348] (section .rela.plt) Cd 8[3] @ 0x610
|
||||||
DEBUG: [cbin.c:3351] (section .init_array) Cd 8[1] @ 0x3db8
|
DEBUG: [cbin.c:3348] (section .init_array) Cd 8[1] @ 0x3db8
|
||||||
DEBUG: [cbin.c:3351] (section .fini_array) Cd 8[1] @ 0x3dc0
|
DEBUG: [cbin.c:3348] (section .fini_array) Cd 8[1] @ 0x3dc0
|
||||||
DEBUG: [cbin.c:3351] (section .dynamic) Cd 8[62] @ 0x3dc8
|
DEBUG: [cbin.c:3348] (section .dynamic) Cd 8[62] @ 0x3dc8
|
||||||
DEBUG: [cbin.c:3351] (section .got) Cd 8[9] @ 0x3fb8
|
DEBUG: [cbin.c:3348] (section .got) Cd 8[9] @ 0x3fb8
|
||||||
WARN: [cbin.c:1902] Relocs has not been applied. Please use `-e bin.relocs.apply=true` or `-e bin.cache=true` next time
|
WARN: [cbin.c:1899] Relocs has not been applied. Please use `-e bin.relocs.apply=true` or `-e bin.cache=true` next time
|
||||||
DEBUG: [cbin.c:2596] Cannot resolve symbol address __libc_start_main
|
DEBUG: [cbin.c:2593] Cannot resolve symbol address __libc_start_main
|
||||||
DEBUG: [cbin.c:2596] Cannot resolve symbol address _ITM_deregisterTMCloneTable
|
DEBUG: [cbin.c:2593] Cannot resolve symbol address _ITM_deregisterTMCloneTable
|
||||||
DEBUG: [cbin.c:2596] Cannot resolve symbol address __gmon_start__
|
DEBUG: [cbin.c:2593] Cannot resolve symbol address __gmon_start__
|
||||||
DEBUG: [cbin.c:2596] Cannot resolve symbol address _ITM_registerTMCloneTable
|
DEBUG: [cbin.c:2593] Cannot resolve symbol address _ITM_registerTMCloneTable
|
||||||
DEBUG: [cbin.c:2596] Cannot resolve symbol address __cxa_finalize
|
DEBUG: [cbin.c:2593] Cannot resolve symbol address __cxa_finalize
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
|
||||||
|
@ -7,14 +7,14 @@ EOF
|
|||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
11
|
11
|
||||||
fs relocs
|
fs relocs
|
||||||
"f reloc.r0 4 0x08000034"
|
'f reloc.r0 4 0x08000034
|
||||||
"f reloc.r2 4 0x0800003c"
|
'f reloc.r2 4 0x0800003c
|
||||||
"f reloc.r3 4 0x08000040"
|
'f reloc.r3 4 0x08000040
|
||||||
"f reloc.r4 4 0x08000044"
|
'f reloc.r4 4 0x08000044
|
||||||
"f reloc.r0 4 0x0800004c"
|
'f reloc.r0 4 0x0800004c
|
||||||
"f reloc.r2 4 0x08000054"
|
'f reloc.r2 4 0x08000054
|
||||||
"f reloc.r3 4 0x08000058"
|
'f reloc.r3 4 0x08000058
|
||||||
"f reloc.r4 4 0x0800005c"
|
'f reloc.r4 4 0x0800005c
|
||||||
wv8 0xffffffffffffffff @ 0x8000060
|
wv8 0xffffffffffffffff @ 0x8000060
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
@ -220,35 +220,35 @@ CMDS=<<EOF
|
|||||||
is*~SceneDelegate
|
is*~SceneDelegate
|
||||||
EOF
|
EOF
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"f sym.__SceneDelegate_scene:willConnectToSession:options:_ 4 0x100006514"
|
'f sym.__SceneDelegate_scene:willConnectToSession:options:_ 4 0x100006514
|
||||||
"f sym.__SceneDelegate_sceneDidDisconnect:_ 4 0x100006518"
|
'f sym.__SceneDelegate_sceneDidDisconnect:_ 4 0x100006518
|
||||||
"f sym.__SceneDelegate_sceneDidBecomeActive:_ 4 0x10000651c"
|
'f sym.__SceneDelegate_sceneDidBecomeActive:_ 4 0x10000651c
|
||||||
"f sym.__SceneDelegate_sceneWillResignActive:_ 4 0x100006520"
|
'f sym.__SceneDelegate_sceneWillResignActive:_ 4 0x100006520
|
||||||
"f sym.__SceneDelegate_sceneWillEnterForeground:_ 4 0x100006524"
|
'f sym.__SceneDelegate_sceneWillEnterForeground:_ 4 0x100006524
|
||||||
"f sym.__SceneDelegate_sceneDidEnterBackground:_ 4 0x100006528"
|
'f sym.__SceneDelegate_sceneDidEnterBackground:_ 4 0x100006528
|
||||||
"f sym.__SceneDelegate_window_ 16 0x10000652c"
|
'f sym.__SceneDelegate_window_ 16 0x10000652c
|
||||||
"f sym.__SceneDelegate_setWindow:_ 20 0x10000653c"
|
'f sym.__SceneDelegate_setWindow:_ 20 0x10000653c
|
||||||
"f sym.__SceneDelegate_.cxx_destruct_ 20 0x100006550"
|
'f sym.__SceneDelegate_.cxx_destruct_ 20 0x100006550
|
||||||
"f sym.__OBJC_LABEL_PROTOCOL___UISceneDelegate 8 0x1000080b0"
|
'f sym.__OBJC_LABEL_PROTOCOL___UISceneDelegate 8 0x1000080b0
|
||||||
"f sym.__OBJC_LABEL_PROTOCOL___UIWindowSceneDelegate 8 0x1000080b8"
|
'f sym.__OBJC_LABEL_PROTOCOL___UIWindowSceneDelegate 8 0x1000080b8
|
||||||
"f sym.__OBJC___PROTOCOL_REFS_UISceneDelegate 24 0x100008f50"
|
'f sym.__OBJC___PROTOCOL_REFS_UISceneDelegate 24 0x100008f50
|
||||||
"f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UISceneDelegate 296 0x100008f68"
|
'f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UISceneDelegate 296 0x100008f68
|
||||||
"f sym.__OBJC___PROTOCOL_METHOD_TYPES_UISceneDelegate 96 0x100009090"
|
'f sym.__OBJC___PROTOCOL_METHOD_TYPES_UISceneDelegate 96 0x100009090
|
||||||
"f sym.__OBJC___PROTOCOL_REFS_UIWindowSceneDelegate 24 0x1000090f0"
|
'f sym.__OBJC___PROTOCOL_REFS_UIWindowSceneDelegate 24 0x1000090f0
|
||||||
"f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UIWindowSceneDelegate 128 0x100009108"
|
'f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UIWindowSceneDelegate 128 0x100009108
|
||||||
"f sym.__OBJC___PROP_LIST_UIWindowSceneDelegate 24 0x100009188"
|
'f sym.__OBJC___PROP_LIST_UIWindowSceneDelegate 24 0x100009188
|
||||||
"f sym.__OBJC___PROTOCOL_METHOD_TYPES_UIWindowSceneDelegate 40 0x1000091a0"
|
'f sym.__OBJC___PROTOCOL_METHOD_TYPES_UIWindowSceneDelegate 40 0x1000091a0
|
||||||
"f sym.__OBJC_CLASS_PROTOCOLS___SceneDelegate 24 0x1000091c8"
|
'f sym.__OBJC_CLASS_PROTOCOLS___SceneDelegate 24 0x1000091c8
|
||||||
"f sym.__OBJC_METACLASS_RO___SceneDelegate 72 0x1000091e0"
|
'f sym.__OBJC_METACLASS_RO___SceneDelegate 72 0x1000091e0
|
||||||
"f sym.__OBJC___INSTANCE_METHODS_SceneDelegate 224 0x100009228"
|
'f sym.__OBJC___INSTANCE_METHODS_SceneDelegate 224 0x100009228
|
||||||
"f sym.__OBJC___INSTANCE_VARIABLES_SceneDelegate 40 0x100009308"
|
'f sym.__OBJC___INSTANCE_VARIABLES_SceneDelegate 40 0x100009308
|
||||||
"f sym.__OBJC___PROP_LIST_SceneDelegate 88 0x100009330"
|
'f sym.__OBJC___PROP_LIST_SceneDelegate 88 0x100009330
|
||||||
"f sym.__OBJC_CLASS_RO___SceneDelegate 72 0x100009388"
|
'f sym.__OBJC_CLASS_RO___SceneDelegate 72 0x100009388
|
||||||
"f sym._OBJC_IVAR___SceneDelegate._window 4 0x100009408"
|
'f sym._OBJC_IVAR___SceneDelegate._window 4 0x100009408
|
||||||
"f sym._OBJC_METACLASS___SceneDelegate 40 0x1000094b0"
|
'f sym._OBJC_METACLASS___SceneDelegate 40 0x1000094b0
|
||||||
"f sym._OBJC_CLASS___SceneDelegate 40 0x1000094d8"
|
'f sym._OBJC_CLASS___SceneDelegate 40 0x1000094d8
|
||||||
"f sym.__OBJC_PROTOCOL___UISceneDelegate 96 0x1000095c8"
|
'f sym.__OBJC_PROTOCOL___UISceneDelegate 96 0x1000095c8
|
||||||
"f sym.__OBJC_PROTOCOL___UIWindowSceneDelegate 96 0x100009628"
|
'f sym.__OBJC_PROTOCOL___UIWindowSceneDelegate 96 0x100009628
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
|
||||||
@ -258,35 +258,35 @@ CMDS=<<EOF
|
|||||||
is*~SceneDelegate
|
is*~SceneDelegate
|
||||||
EOF
|
EOF
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"f sym.__SceneDelegate_scene:willConnectToSession:options:_ 4 0x100006514"
|
'f sym.__SceneDelegate_scene:willConnectToSession:options:_ 4 0x100006514
|
||||||
"f sym.__SceneDelegate_sceneDidDisconnect:_ 4 0x100006518"
|
'f sym.__SceneDelegate_sceneDidDisconnect:_ 4 0x100006518
|
||||||
"f sym.__SceneDelegate_sceneDidBecomeActive:_ 4 0x10000651c"
|
'f sym.__SceneDelegate_sceneDidBecomeActive:_ 4 0x10000651c
|
||||||
"f sym.__SceneDelegate_sceneWillResignActive:_ 4 0x100006520"
|
'f sym.__SceneDelegate_sceneWillResignActive:_ 4 0x100006520
|
||||||
"f sym.__SceneDelegate_sceneWillEnterForeground:_ 4 0x100006524"
|
'f sym.__SceneDelegate_sceneWillEnterForeground:_ 4 0x100006524
|
||||||
"f sym.__SceneDelegate_sceneDidEnterBackground:_ 4 0x100006528"
|
'f sym.__SceneDelegate_sceneDidEnterBackground:_ 4 0x100006528
|
||||||
"f sym.__SceneDelegate_window_ 16 0x10000652c"
|
'f sym.__SceneDelegate_window_ 16 0x10000652c
|
||||||
"f sym.__SceneDelegate_setWindow:_ 20 0x10000653c"
|
'f sym.__SceneDelegate_setWindow:_ 20 0x10000653c
|
||||||
"f sym.__SceneDelegate_.cxx_destruct_ 20 0x100006550"
|
'f sym.__SceneDelegate_.cxx_destruct_ 20 0x100006550
|
||||||
"f sym.__OBJC_LABEL_PROTOCOL___UISceneDelegate 8 0x1000080b0"
|
'f sym.__OBJC_LABEL_PROTOCOL___UISceneDelegate 8 0x1000080b0
|
||||||
"f sym.__OBJC_LABEL_PROTOCOL___UIWindowSceneDelegate 8 0x1000080b8"
|
'f sym.__OBJC_LABEL_PROTOCOL___UIWindowSceneDelegate 8 0x1000080b8
|
||||||
"f sym.__OBJC___PROTOCOL_REFS_UISceneDelegate 24 0x100008f50"
|
'f sym.__OBJC___PROTOCOL_REFS_UISceneDelegate 24 0x100008f50
|
||||||
"f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UISceneDelegate 296 0x100008f68"
|
'f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UISceneDelegate 296 0x100008f68
|
||||||
"f sym.__OBJC___PROTOCOL_METHOD_TYPES_UISceneDelegate 96 0x100009090"
|
'f sym.__OBJC___PROTOCOL_METHOD_TYPES_UISceneDelegate 96 0x100009090
|
||||||
"f sym.__OBJC___PROTOCOL_REFS_UIWindowSceneDelegate 24 0x1000090f0"
|
'f sym.__OBJC___PROTOCOL_REFS_UIWindowSceneDelegate 24 0x1000090f0
|
||||||
"f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UIWindowSceneDelegate 128 0x100009108"
|
'f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UIWindowSceneDelegate 128 0x100009108
|
||||||
"f sym.__OBJC___PROP_LIST_UIWindowSceneDelegate 24 0x100009188"
|
'f sym.__OBJC___PROP_LIST_UIWindowSceneDelegate 24 0x100009188
|
||||||
"f sym.__OBJC___PROTOCOL_METHOD_TYPES_UIWindowSceneDelegate 40 0x1000091a0"
|
'f sym.__OBJC___PROTOCOL_METHOD_TYPES_UIWindowSceneDelegate 40 0x1000091a0
|
||||||
"f sym.__OBJC_CLASS_PROTOCOLS___SceneDelegate 24 0x1000091c8"
|
'f sym.__OBJC_CLASS_PROTOCOLS___SceneDelegate 24 0x1000091c8
|
||||||
"f sym.__OBJC_METACLASS_RO___SceneDelegate 72 0x1000091e0"
|
'f sym.__OBJC_METACLASS_RO___SceneDelegate 72 0x1000091e0
|
||||||
"f sym.__OBJC___INSTANCE_METHODS_SceneDelegate 224 0x100009228"
|
'f sym.__OBJC___INSTANCE_METHODS_SceneDelegate 224 0x100009228
|
||||||
"f sym.__OBJC___INSTANCE_VARIABLES_SceneDelegate 40 0x100009308"
|
'f sym.__OBJC___INSTANCE_VARIABLES_SceneDelegate 40 0x100009308
|
||||||
"f sym.__OBJC___PROP_LIST_SceneDelegate 88 0x100009330"
|
'f sym.__OBJC___PROP_LIST_SceneDelegate 88 0x100009330
|
||||||
"f sym.__OBJC_CLASS_RO___SceneDelegate 72 0x100009388"
|
'f sym.__OBJC_CLASS_RO___SceneDelegate 72 0x100009388
|
||||||
"f sym._OBJC_IVAR___SceneDelegate._window 4 0x100009408"
|
'f sym._OBJC_IVAR___SceneDelegate._window 4 0x100009408
|
||||||
"f sym._OBJC_METACLASS___SceneDelegate 40 0x1000094b0"
|
'f sym._OBJC_METACLASS___SceneDelegate 40 0x1000094b0
|
||||||
"f sym._OBJC_CLASS___SceneDelegate 40 0x1000094d8"
|
'f sym._OBJC_CLASS___SceneDelegate 40 0x1000094d8
|
||||||
"f sym.__OBJC_PROTOCOL___UISceneDelegate 96 0x1000095c8"
|
'f sym.__OBJC_PROTOCOL___UISceneDelegate 96 0x1000095c8
|
||||||
"f sym.__OBJC_PROTOCOL___UIWindowSceneDelegate 96 0x100009628"
|
'f sym.__OBJC_PROTOCOL___UIWindowSceneDelegate 96 0x100009628
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
|
||||||
@ -296,35 +296,35 @@ CMDS=<<EOF
|
|||||||
is*~SceneDelegate
|
is*~SceneDelegate
|
||||||
EOF
|
EOF
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"f sym.__SceneDelegate_scene:willConnectToSession:options:_ 152 0x1000060b0"
|
'f sym.__SceneDelegate_scene:willConnectToSession:options:_ 152 0x1000060b0
|
||||||
"f sym.__SceneDelegate_sceneDidDisconnect:_ 80 0x100006148"
|
'f sym.__SceneDelegate_sceneDidDisconnect:_ 80 0x100006148
|
||||||
"f sym.__SceneDelegate_sceneDidBecomeActive:_ 80 0x100006198"
|
'f sym.__SceneDelegate_sceneDidBecomeActive:_ 80 0x100006198
|
||||||
"f sym.__SceneDelegate_sceneWillResignActive:_ 80 0x1000061e8"
|
'f sym.__SceneDelegate_sceneWillResignActive:_ 80 0x1000061e8
|
||||||
"f sym.__SceneDelegate_sceneWillEnterForeground:_ 80 0x100006238"
|
'f sym.__SceneDelegate_sceneWillEnterForeground:_ 80 0x100006238
|
||||||
"f sym.__SceneDelegate_sceneDidEnterBackground:_ 80 0x100006288"
|
'f sym.__SceneDelegate_sceneDidEnterBackground:_ 80 0x100006288
|
||||||
"f sym.__SceneDelegate_window_ 36 0x1000062d8"
|
'f sym.__SceneDelegate_window_ 36 0x1000062d8
|
||||||
"f sym.__SceneDelegate_setWindow:_ 64 0x1000062fc"
|
'f sym.__SceneDelegate_setWindow:_ 64 0x1000062fc
|
||||||
"f sym.__SceneDelegate_.cxx_destruct_ 60 0x10000633c"
|
'f sym.__SceneDelegate_.cxx_destruct_ 60 0x10000633c
|
||||||
"f sym.__OBJC___INSTANCE_METHODS_SceneDelegate 116 0x100006490"
|
'f sym.__OBJC___INSTANCE_METHODS_SceneDelegate 116 0x100006490
|
||||||
"f sym.__OBJC_LABEL_PROTOCOL___UISceneDelegate 8 0x100008438"
|
'f sym.__OBJC_LABEL_PROTOCOL___UISceneDelegate 8 0x100008438
|
||||||
"f sym.__OBJC_LABEL_PROTOCOL___UIWindowSceneDelegate 8 0x100008440"
|
'f sym.__OBJC_LABEL_PROTOCOL___UIWindowSceneDelegate 8 0x100008440
|
||||||
"f sym.__OBJC___PROTOCOL_REFS_UISceneDelegate 24 0x10000ce58"
|
'f sym.__OBJC___PROTOCOL_REFS_UISceneDelegate 24 0x10000ce58
|
||||||
"f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UISceneDelegate 320 0x10000ce70"
|
'f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UISceneDelegate 320 0x10000ce70
|
||||||
"f sym.__OBJC___PROTOCOL_METHOD_TYPES_UISceneDelegate 104 0x10000cfb0"
|
'f sym.__OBJC___PROTOCOL_METHOD_TYPES_UISceneDelegate 104 0x10000cfb0
|
||||||
"f sym.__OBJC___PROTOCOL_REFS_UIWindowSceneDelegate 24 0x10000d018"
|
'f sym.__OBJC___PROTOCOL_REFS_UIWindowSceneDelegate 24 0x10000d018
|
||||||
"f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UIWindowSceneDelegate 128 0x10000d030"
|
'f sym.__OBJC___PROTOCOL_INSTANCE_METHODS_OPT_UIWindowSceneDelegate 128 0x10000d030
|
||||||
"f sym.__OBJC___PROP_LIST_UIWindowSceneDelegate 24 0x10000d0b0"
|
'f sym.__OBJC___PROP_LIST_UIWindowSceneDelegate 24 0x10000d0b0
|
||||||
"f sym.__OBJC___PROTOCOL_METHOD_TYPES_UIWindowSceneDelegate 40 0x10000d0c8"
|
'f sym.__OBJC___PROTOCOL_METHOD_TYPES_UIWindowSceneDelegate 40 0x10000d0c8
|
||||||
"f sym.__OBJC_CLASS_PROTOCOLS___SceneDelegate 24 0x10000d0f0"
|
'f sym.__OBJC_CLASS_PROTOCOLS___SceneDelegate 24 0x10000d0f0
|
||||||
"f sym.__OBJC_METACLASS_RO___SceneDelegate 72 0x10000d108"
|
'f sym.__OBJC_METACLASS_RO___SceneDelegate 72 0x10000d108
|
||||||
"f sym.__OBJC___INSTANCE_VARIABLES_SceneDelegate 40 0x10000d150"
|
'f sym.__OBJC___INSTANCE_VARIABLES_SceneDelegate 40 0x10000d150
|
||||||
"f sym.__OBJC___PROP_LIST_SceneDelegate 88 0x10000d178"
|
'f sym.__OBJC___PROP_LIST_SceneDelegate 88 0x10000d178
|
||||||
"f sym.__OBJC_CLASS_RO___SceneDelegate 72 0x10000d1d0"
|
'f sym.__OBJC_CLASS_RO___SceneDelegate 72 0x10000d1d0
|
||||||
"f sym._OBJC_IVAR___SceneDelegate._window 4 0x10000d2b0"
|
'f sym._OBJC_IVAR___SceneDelegate._window 4 0x10000d2b0
|
||||||
"f sym._OBJC_METACLASS___SceneDelegate 40 0x10000d358"
|
'f sym._OBJC_METACLASS___SceneDelegate 40 0x10000d358
|
||||||
"f sym._OBJC_CLASS___SceneDelegate 40 0x10000d380"
|
'f sym._OBJC_CLASS___SceneDelegate 40 0x10000d380
|
||||||
"f sym.__OBJC_PROTOCOL___UISceneDelegate 96 0x10000d468"
|
'f sym.__OBJC_PROTOCOL___UISceneDelegate 96 0x10000d468
|
||||||
"f sym.__OBJC_PROTOCOL___UIWindowSceneDelegate 96 0x10000d4c8"
|
'f sym.__OBJC_PROTOCOL___UIWindowSceneDelegate 96 0x10000d4c8
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ NAME=objc method flags (ic*)
|
|||||||
FILE=bins/mach0/TestMethods
|
FILE=bins/mach0/TestMethods
|
||||||
CMDS=ic*~thisIsAClassMethod
|
CMDS=ic*~thisIsAClassMethod
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"f method.ViewController.class.thisIsAClassMethod = 0x1000067bc"
|
'f method.ViewController.class.thisIsAClassMethod = 0x1000067bc
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
|
||||||
|
@ -21,6 +21,6 @@ vaddr=0x00000000 paddr=0x00000200 haddr=-1 type=program
|
|||||||
1 entrypoints
|
1 entrypoints
|
||||||
xor al, al
|
xor al, al
|
||||||
fs sections
|
fs sections
|
||||||
"f section.seg_000 1 0x00000000"
|
'f section.seg_000 1 0x00000000
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
@ -19,6 +19,6 @@ FILE=bins/mz/unzip.exe
|
|||||||
CMDS=iS*
|
CMDS=iS*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
fs sections
|
fs sections
|
||||||
"f section.seg_000 1 0x00000000"
|
'f section.seg_000 1 0x00000000
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
@ -22,15 +22,15 @@ FILE=bins/pe/Lab05-01.dll
|
|||||||
CMDS=iE*
|
CMDS=iE*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
fs exports
|
fs exports
|
||||||
"f sym.xdll.dll_InstallRT 0 0x1000d847"
|
'f sym.xdll.dll_InstallRT 0 0x1000d847
|
||||||
"f sym.xdll.dll_InstallSA 0 0x1000dec1"
|
'f sym.xdll.dll_InstallSA 0 0x1000dec1
|
||||||
"f sym.xdll.dll_InstallSB 0 0x1000e892"
|
'f sym.xdll.dll_InstallSB 0 0x1000e892
|
||||||
"f sym.xdll.dll_PSLIST 0 0x10007025"
|
'f sym.xdll.dll_PSLIST 0 0x10007025
|
||||||
"f sym.xdll.dll_ServiceMain 0 0x1000cf30"
|
'f sym.xdll.dll_ServiceMain 0 0x1000cf30
|
||||||
"f sym.xdll.dll_StartEXS 0 0x10007ecb"
|
'f sym.xdll.dll_StartEXS 0 0x10007ecb
|
||||||
"f sym.xdll.dll_UninstallRT 0 0x1000f405"
|
'f sym.xdll.dll_UninstallRT 0 0x1000f405
|
||||||
"f sym.xdll.dll_UninstallSA 0 0x1000ea05"
|
'f sym.xdll.dll_UninstallSA 0 0x1000ea05
|
||||||
"f sym.xdll.dll_UninstallSB 0 0x1000f138"
|
'f sym.xdll.dll_UninstallSB 0 0x1000f138
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
|
||||||
|
@ -9,6 +9,6 @@ NAME=PE: corkami tinygui.exe - libs
|
|||||||
FILE=bins/pe/tinygui.exe
|
FILE=bins/pe/tinygui.exe
|
||||||
CMDS=il*
|
CMDS=il*
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"CCa entry0 user32.dll"
|
'CCa entry0 user32.dll
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
@ -19,8 +19,8 @@ NAME=3: io.baddr
|
|||||||
FILE=bins/elf/analysis/pie
|
FILE=bins/elf/analysis/pie
|
||||||
CMDS=!rabin2 -B 0xf00000 -re ${R2_FILE} | grep 0x
|
CMDS=!rabin2 -B 0xf00000 -re ${R2_FILE} | grep 0x
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"f entry0 1 0x00f00450"
|
'f entry0 1 0x00f00450
|
||||||
"f entry0_haddr 1 0x00000018"
|
'f entry0_haddr 1 0x00000018
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
|
||||||
@ -89,8 +89,8 @@ CMDS=<<EOF
|
|||||||
p8 10 @ 0x00f00450
|
p8 10 @ 0x00f00450
|
||||||
EOF
|
EOF
|
||||||
EXPECT=<<EOF
|
EXPECT=<<EOF
|
||||||
"f entry0 1 0x00f00450"
|
'f entry0 1 0x00f00450
|
||||||
"f entry0_haddr 1 0x00000018"
|
'f entry0_haddr 1 0x00000018
|
||||||
31ed5e89e183e4f05054
|
31ed5e89e183e4f05054
|
||||||
EOF
|
EOF
|
||||||
RUN
|
RUN
|
||||||
|
Loading…
Reference in New Issue
Block a user