#!/usr/bin/env bash
# One-shot bulk export of an already-analyzed program to ./output/.
# Writes <prog>.info.txt, .functions.txt, .strings.txt, .segments.txt,
# .data.txt, .decompiled.c  (one Ghidra run, then grep/read instantly).
#
# Usage: ./re-export <program>
set -euo pipefail
cd "$(dirname "$0")"
if [ "$#" -lt 1 ]; then echo "usage: $0 <program>" >&2; exit 2; fi
PROG="$1"
exec docker compose run --rm -T \
    --entrypoint /opt/ghidra/support/analyzeHeadless \
    tools \
    /data/work ChipBenchProject \
    -process "$PROG" -noanalysis -readOnly \
    -scriptPath /opt/ghidra-scripts \
    -postScript ExportAll.java
