RZ_AX(1) General Commands Manual RZ_AX(1)

rz-axrizin base converter

rz-ax [-ebBdDeEfFhiIklLosStuvwx] [[expr] ...]

This command is part of the Rizin project.

This command allows you to convert values between positive and negative integer, float, octal, binary, ternary, and hexadecimal values.

Show ASCII table
Convert from binary to string (rz-ax -b 01000101 01110110)
Convert from string to binary (rz-ax -B hello)
Force output as integer (rz-ax -d 3 outputs 3 instead of 0x3)
Base64 decode
Swap endianness (rz-ax -e 0x33)
Base64 encode
Floating point arithmetic (rz-ax -f 6.3+2.1)
Read C strings from stdin and output in hexpairs. Useful to load shellcodes (rz-ax -F < shellcode.[c/py/js])
Show usage help message
Dump stdin to C array in stdout (rz-ax -i < bytes)
Convert LONG to/from IP ADDRESS (rz-ax -I 3530468537)
Keep the same base as the input data (rz-ax -k 33+3 -> 36)
Append newline to the decoded output
Convert binary to hexadecimal (rz-ax -L 111111111 outputs 0x1ff)
Show hexpairs from integer value (rz-ax -n 0x1234 # 34120000)
Show hex C string from integer value (rz-ax -N 0x1234 # 4200)
Convert from octal string to char (rz-ax -o 162 172 # rz)
Rz style output (rz-ax -r 0x1234)
Convert from hex string to character (rz-ax -s 43 4a 50)
Convert from character to hex string (rz-ax -S < /bin/ls > ls.hex)
Convert timestamp to string (rz-ax -t 1234567890)
Convert given value to human readable units format (rz-ax -u 389289238 # 317.0M)
Show version information
Convert signed word (rz-ax -w 16 0xffff)
Convert a string into a hash (rz-ax -x linux osx)
Show position of set bits in the binary representation (rz-ax -p 0xb3)

Force output mode (numeric base)


=f floating point
=2 binary
=3 ternary
=8 octal
=10 decimal
=16 hexadecimal

Available variable types are:


int -> hex rz-ax 10
hex -> int rz-ax 0xa
-int -> hex rz-ax -77
-hex -> int rz-ax 0xffffffb3
int -> bin rz-ax b30
int -> ternary rz-ax t42
ternary -> int rz-ax 1010dt
bin -> int rz-ax 1010d
float -> hex rz-ax 3.33f
hex -> float rz-ax Fx40551ed8
oct -> hex rz-ax 35o
hex -> oct rz-ax Ox12 (O is a letter)
bin -> hex rz-ax 1100011b
hex -> bin rz-ax Bx63
ternary -> hex rz-ax 212t
hex -> ternary z-ax Tx23
raw -> hex rz-ax -S < /binfile
hex -> raw rz-ax -s 414141

With no arguments, rz-ax read values from stdin. You can pass one or more values as arguments.


$ rz-ax 33 0x41 0101b
0x21
65
0x5

You can do 'unpack' hexpair encoded strings easily.


$ rz-ax -s 41 42 43
ABC

And it supports some math operations.


$ rz-ax
0x5*101b+5
30

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.

rizin(1), rz-hash(1), rz-find(1), rz-bin(1), rz-diff(1), rz-gg(1), rz-run(1), rz-asm(1), rz-sign(1)

pancake <pancake@nopcode.org>

byteninjaa0

December 28, 2020