#!/bin/sh # usage: winedbg-procmap wpid # Convert winedbg's share and map information into /proc//maps compatible format # NOTE: since there's no map offsets you may need to use the brute-map.bash tool as well tmpdir="$(mktemp -d)" trap 'rm -rf "$tmpdir"' EXIT winedbg-share "$1" > "$tmpdir/share" winedbg-map "$1" > "$tmpdir/map" awk '{print substr($2, 1, length($2)-1); print $3; print $5}' < "$tmpdir/share" |\ while { read -r start read -r end read -r name }; do awk '(strtonum(0x'"$start"') <= strtonum("0x"$1) && strtonum(0x'"$end"') >= strtonum("0x"$2)) { printf "%s-%s rwxp 00000000 00:00 0 %s\n", $1, $2, "'"$name"'" }' < "$tmpdir/map" done