An utility to download PDB files associated with a Portable Executable (PE).
- Download PDB symbols from
msdl.microsoft.com
. - Process a single or a batch of PortableExecutable (PE) files.
demo.mp4
$./pdbdownload-linux-amd64 -h
pdbdownload v1.0 - by Remi GASCOU (Podalirius)
Usage: pdbdownload [--debug] [--symbols-dir <string>] [--pe-file <string>] [--pe-dir <string>]
-d, --debug Debug mode. (default: false)
-S, --symbols-dir <string> Output dir where symbols will be downloaded. (default: "./symbols/")
Source of PE files:
-f, --pe-file <string> Source PE file to get symbols for. (default: "")
-d, --pe-dir <string> Source directory where to get PE files to get symbols for. (default: "")
To build the project, use the following Docker command in this directory:
docker run -v $(pwd):/workspace/ podalirius/build-go-project
Or, if you want to build it manually, you can use the following commands:
GOOS=linux GOARCH=amd64; mkdir -p "/workspace/bin/linux/${GOOS}/${GOARCH}/" && /usr/local/go/bin/go build -o "/workspace/bin/linux/${GOOS}/${GOARCH}/pdbdownload" -buildvcs=false
-
To download all the PDB files associated to every PE file in the specified directory:
./pdbdownload-linux-amd64 -d ./pe_files/
-
To download the PDB file associated to a single PE file:
./pdbdownload-linux-amd64 -f ./example.exe
Pull requests are welcome. Feel free to open an issue if you want to add other features.