Linux cli command rax2
3 minute read
This command is part of the radare project.
Rax2 is a powerful calculator within the Radare2 suite, primarily used for numerical system conversions, encoding and decoding C strings, hexpairs, and base64, essential for binary analysis and reverse engineering tasks.
The most common numerical bases include binary (base 2) for direct machine code interaction, hexadecimal (base 16) for memory addresses and compact data representation, and decimal (base 10) for human-readable calculations and interpretations.
Show ASCII table
Force output mode (numeric base)
f floating point 2 binary 3 ternary 8 octal 10 decimal 16 hexadecimal
Show hexadecimal C string from integer value
Dump stdin to C array in stdout (xxd replacement)
Print the result in decimal (base 10)
Decode the input data using base64
Swap endianness
Encode the input data using base64
Interpret the input number as a 32bit dword and display it using IEEE 754 standard for floating point arithmetic
Read C strings from stdin and output in hexpairs. Useful to load shellcodes
Show usage help message
Keep the same base as the input data
Show randomart key asciiart for values or hexpairs
Convert a string into a hash
Convert LONG to/from IP ADDRESS
Show the output in json format, the same as the r2 `?j 0x804` command.
Append newline to the decoded output for human friendlyness
Convert from octal string to char (rax2 -o 162 62)
Be quiet. Show less information or drop the superfluous details in the output. For example: rax2 -qC
Show the same output as the r2’s `? 0x804` command. When combined with -S (-rS) it will print r2 commands to write the actual binary into radare2
Convert from hex pairs string to character (rax2 -s 43 4a 50)
Convert from character to hex string (rax2 -S C J P)
Convert epoch timestamp to human readable date format
Convert given value to human readable units format
Show program version
Display the result as 16bit signed integer value
Show hexpairs from integer value
Convert a bit stream (an arbitrary sequence of 0 and 1 of any length) to hexadecimal. The result can be larger than 64bits
Convert from character string to binary (rax2 -z hello)
Convert from binary string to string (rax2 -l 01000101)
Available variable types are:
int -> hex rax2 10 hex -> int rax2 0xa -int -> hex rax2 -77 -hex -> int rax2 0xffffffb3 int -> bin rax2 b30 bin -> int rax2 1010d float -> hex rax2 3.33f hex -> float rax2 Fx40551ed8 oct -> hex rax2 35o hex -> oct rax2 Ox12 (O is a letter) bin -> hex rax2 1100011b hex -> bin rax2 Bx63
With no arguments, rax2 reads values from stdin. You can pass one or more values as arguments.
$ rax2 33 0x41 0101b 0x21 65 0x5
You can do ‘unpack’ hexpair encoded strings easily.
$ rax2 -s 41 42 43 ABC
It supports some math operations:
$ rax2 1+1 “0x5*101b+5” 2 30
Encode and decode binary file using base64:
$ rax2 -E < /bin/ls > ls.b64 $ rax2 -D < ls.b64 > ls
$ cmp /bin/ls ls && echo $? 0
Use -z/-Z to convert between binary and string:
$ rax2 -z hello 001100000111100000110001001100010011001000110011 $ rax2 -Z 0110100001100101011011000110110001101111 hello
It is a very useful tool for scripting, so you can read floating point values, or get the integer offset of a jump or a stack delta when analyzing programs.
Written by pancake <[email protected]>.
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
█║▌│║█║▌★ KALI ★ PARROT ★ DEBIAN 🔴 PENTESTING ★ HACKING ★ █║▌│║█║▌
██╗ ██╗ ██████╗ ██████╗ ██╗ ██╗███████╗██████╗
████████╗██╔══██╗██╔═══██╗╚██╗██╔╝██╔════╝██╔══██╗
╚██╔═██╔╝██║ ██║██║ ██║ ╚███╔╝ █████╗ ██║ ██║
████████╗██║ ██║██║ ██║ ██╔██╗ ██╔══╝ ██║ ██║
╚██╔═██╔╝██████╔╝╚██████╔╝██╔╝ ██╗███████╗██████╔╝
╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚══════╝╚═════╝
█║▌│║█║▌ WITH COMMANDLINE-KUNGFU POWER █║▌│║█║▌
░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.