unified binary diffing utility
radiff2 implements many binary diffing algorithms for data and code.
- Analyze binary after loading it with RCore (see -C) and use -AA to run
aaaa instead of aaa.
- Specify architecture (x86, arm, ..)
- Select register size bits for given arch
- Count number of differences.
- Specify eval config vars for all RCore instances created.
- Code diffing using graphdiff algorithm. Output columns are:
file-a-address, percentatge of most similar function in B file |
file-b-address. (Use with -A to analyze the binaries to find more
- Use delta diffing (slower).
- Show disasm instead of hexpairs (honors -a arch and -b bits)
sym | off1,off2
- Graph diff output of given symbol, or between two functions, at given
offsets: one for each binary.
- Show usage help message.
- Compare the list of imports
- Suppress address names (show only addresses) when code diffing.
- Do code diffing with all bytes instead of just the fixed opcode bytes
- Use physical addressing (io.va=0)
- Quiet mode: disable colors and reduce output
- Output in radare commands as a binary patch.
- Show two column hexdump diffing.
- Calculate text distance from two files.
- Same as before but using the Levenstein algorithm (faster but sometimes
[name, namelen, dist, size, ...]
- Specify which column of the code diffing algo use for diffing
- Choose matching threshold for binary code diffing
- Unified diff output
- Unified diff output using system´s diff program
- Show version information.
- Be verbose sometimes
- Perform diff on extracted strings