File: test-8051-reassembly.sh

package info (click to toggle)
radare2 6.0.4%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 77,536 kB
  • sloc: ansic: 889,435; sh: 8,299; javascript: 7,675; makefile: 5,194; python: 1,929; cpp: 789; perl: 438; lisp: 122; sed: 85; asm: 57; cs: 37; xml: 32; ruby: 29; java: 21
file content (22 lines) | stat: -rwxr-xr-x 689 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/sh
BUILD_DIRECTORY=$(mktemp -d tmp.XXXXXXXXXX)
[ -z "$BUILD_DIRECTORY" ] && exit 1
export EXIT_CODE=0

printf "Reassembling 8051... "
radare2 -a 8051 -m 0x8000 -e "scr.color=0" -qf -c "pI" ./bins/8051/MP_8192E_FW_NIC.bin > $BUILD_DIRECTORY/MP_8192E_FW_NIC.asm || exit 1
rasm2 -a 8051 -s 0x8000 -f $BUILD_DIRECTORY/MP_8192E_FW_NIC.asm -B > $BUILD_DIRECTORY/recompiled-firmware.bin || exit 1

cmp ./bins/8051/MP_8192E_FW_NIC.bin $BUILD_DIRECTORY/recompiled-firmware.bin
if [ $? -eq 0 ]; then
	echo "OK"
	EXIT_CODE=0
else
	radiff2 -q -D ./bins/8051/MP_8192E_FW_NIC.bin "$BUILD_DIRECTORY/recompiled-firmware.bin"
	echo "failed"
	EXIT_CODE=1
fi

rm -rf $BUILD_DIRECTORY

exit $EXIT_CODE