logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

radare2 — Advanced command-line hexadecimal editor, disassembler and debugger

Authors

       pancake <pancake@nopcode.org>

                                                  May 20, 2022                                        RADARE2(1)

Debugger

       In r2 the debugger commands are implemented under the 'd' command. Type 'd?' for help

Description

       radare2 is a command-line hexadecimal editor.

       "r2" is the alias program name for radare2.

       This manpage is not updated yet. Feel free to contribute.

       The options are:

       --          Open radare2 on an empty file

       -           Equivalent of 'r2 malloc://512'

       -0          Print \x00 after initialization and after every command executed

       -1          Redirect stderr to stdout

       -2          Close stderr before starting RCore

       -aarch     force asm.arch (x86, ppc, arm, mips, bf, java, ...)

       -A          run 'aaa' command before prompt or patch to analyze all referenced code. Use -AA to run aaaa

       -bbits     force asm.bits (16, 32, 64)

       -Bbaddr    Specify the base address to be used when loading a new binary. See 'e?bin.baddr'

       -ccmd      Execute the given command before giving prompt

       -d          Start in debugger mode

       -Ddbg.backend
                   Enable debug mode. Set cfg.debug=true

       -ek=v      Set configuration eval variable key=value. For example -e scr.color=false. When -e is  passed
                   after -j, it will set the script source to run instead of setting eval vars.

       -f          Blocksize = file size

       -j          Run  QJS  script if an argument is passed or enter the qjs shell if no file is specified. You
                   can evaluate expressions when passing the -e flag after the -j.

       -ifile     Run script file. After the file is loaded

       -Ifile     Run script file. Before the file is loaded

       -kkernel   Select kernel (asm.os) for syscall resolution

       -lplugfile
                   Load given plugin file

       -L          List loaded IO plugins.

       -LL         List loaded core plugins.

       -maddr     map file at given address

       -M          Disable demangling

       -n          Do not perform any analysis (r_bin). Just load the raw file

       -nn         Only load the rbin structures (elf, mach0, ...)

       -N          Do not load user settings/projects from  ~/.radare2rc,  ~/.config/radare2/radare2rc  and  the
                   scripts inside .../radare2rc.d/ directory.

       -NN         Same as -N but also disables the automatic loading of plugins on startup time

       -q          Quiet mode (no prompt) and quit after running the commands specified with -i or -c

       -qq         Quit before showing the prompt. Right after all the -e -c and -i arguments are evaluated.

       -Q          Same  as  q,  but  exiting without freeing RCore, this produces leaks at exit time, but saves
                   some precious ms to run the testsuite in fast mode.

       -pprj      Set project file

       -Pfile     Apply rapatch file and quit (see doc/rapatch.md for more details)

       -rrarun2   Specify dbg.profile rarun2 profile to use when spawning a program for debugging

       -Rrarun2-directive
                   Specify custom rarun2 directives without having to create a rarun2 profile

       -saddr     Start seeking at this address

       -S          Enable sandboxed mode (same as -e cfg.sandbox=true)

       -t          Get binary information and analyze binary in a background thread

       -T          Avoid computing the file hashes

       -u          Set bin.filter=false to load rbin info without filtering names

       -v          Show version information and exit (Use -qv to get just the version number)

       -V          Show radare2 library versions (prints JSON format if -j is used)

       -w          Open in write mode

       -h          Show help message

       -H          Show files and environment help

       -x          Open the file map without executable permissions

       -X          Same as -e bin.usextr=false, do not use extract plugins, useful for dyldcache

Environment

        R2_ARGS           run radare2 with defined arguments in environment and ignore cli ones
        R2_IGNVER         load plugins ignoring the specified version. (be careful)
        R2_DEBUG          if defined, show error messages and crash signal
        R2_DEBUG_ASSERT=1 set a breakpoint when hitting an assert
        R2_MAGICPATH      /Users/pancake/.local/share/radare2/share/radare2/4.5.0-git/magic
        R2_NOPLUGINS      do not load r2 shared plugins
        R2_RCFILE         ~/.radare2rc (user preferences, batch script)
        R2_RDATAHOME      /usr/localFILE path to the current working file.

Name

       radare2 — Advanced command-line hexadecimal editor, disassembler and debugger

See Also

r2r(1), rahash2(1), rafind2(1), rabin2(1), radiff2(1), rasm2(1), rax2(1), ravc2(1), ragg2(1), rarun2(1),

Shell

       Type '?' for help

Synopsis

radare2  [-aarch]  [-bbits] [-Bbaddr] [-ccmd] [-ek=v] [-ifile] [-Iprefile] [-kkernel] [-maddr]
               [-pproject] [-Ppatch] [-rrarun2] [-Rrr2rule] [-saddr] [-012AdDjwntLquvVxX] -|--|=|file

Visual

       To enter visual mode use the 'V' command. Then press '?' for help

See Also