#!/bin/sh
FILE=$1

if [ -z "${FILE}" ]; then
	echo "Usage: rsc2 srcline [file]"
	exit 1
fi

START=$(rabin2 -rS ${FILE}| grep text|grep ^S| cut -d ' ' -f 3)
SIZE=$(rabin2 -rS ${FILE} | grep text|grep ^S| cut -d ' ' -f 4)
START=$(rax2 ${START})
SIZE=$(rax2 ${SIZE})
END=$((${START}+${SIZE}))

echo "Section text is: `rax2 ${START}` - `rax2 ${END}` (size=${SIZE})"

SEQ=$(jot ${SIZE} ${START} ${END})

OLINE=""
for a in ${SEQ} ; do 
	ADDR=$(rax2 $a)
	LINE=`addr2line -e ${FILE} $ADDR`
	if [ "${LINE}" = "??:0" ]; then
		continue
	fi
	if [ ! "${OLINE}" = "${LINE}" ]; then
		echo "Cl ${LINE} ${ADDR}"
		OLINE=${LINE}
	fi
done
