diff options
Diffstat (limited to 'userspace/cuda/570.144/scripts')
| -rwxr-xr-x | userspace/cuda/570.144/scripts/ghidra_analyze.sh | 15 | ||||
| -rwxr-xr-x | userspace/cuda/570.144/scripts/ghidra_decompile_project.sh | 13 |
2 files changed, 28 insertions, 0 deletions
diff --git a/userspace/cuda/570.144/scripts/ghidra_analyze.sh b/userspace/cuda/570.144/scripts/ghidra_analyze.sh index b844300..eb8422b 100755 --- a/userspace/cuda/570.144/scripts/ghidra_analyze.sh +++ b/userspace/cuda/570.144/scripts/ghidra_analyze.sh @@ -1,6 +1,21 @@ #!/bin/bash # SPDX-License-Identifier: BSD-3-Clause # +# ########################################################################### +# # WARNING: DEPRECATED - DO NOT USE FOR NEW ANALYSIS (kept for history). # +# # # +# # Two bugs make its output unusable: # +# # 1. It passes FILE virtual addresses to Ghidra, which loads these # +# # binaries at image base 0x100000. Every address is 0x100000 too low, # +# # so the decompiled "functions" are the wrong ones. # +# # 2. `-analysisTimeoutPerFile 0` does not mean "no timeout" in this # +# # Ghidra build: it aborts auto-analysis immediately, producing an # +# # analysed-looking project with no analysis at all. # +# # # +# # Replacement: tools/ghidra_full_analysis.sh (plus # +# # tools/ghidra/ConfigureAnalysis.java). # +# ########################################################################### +# # ghidra_analyze.sh - import a library into a Ghidra project and run the full # auto-analysis once. The project is kept, so later decompilations are cheap: # diff --git a/userspace/cuda/570.144/scripts/ghidra_decompile_project.sh b/userspace/cuda/570.144/scripts/ghidra_decompile_project.sh index 66d7c90..b44b2b2 100755 --- a/userspace/cuda/570.144/scripts/ghidra_decompile_project.sh +++ b/userspace/cuda/570.144/scripts/ghidra_decompile_project.sh @@ -1,6 +1,19 @@ #!/bin/bash # SPDX-License-Identifier: BSD-3-Clause # +# ########################################################################### +# # WARNING: DEPRECATED - DO NOT USE FOR NEW ANALYSIS (kept for history). # +# # # +# # It passes a FILE virtual address straight to 570.144/ghidra/ # +# # DecompileAt.java, but Ghidra loads these binaries at image base # +# # 0x100000: the script resolves (and decompiles) the function 0x100000 # +# # bytes too low. It also depends on a project produced by the broken # +# # ghidra_analyze.sh above. # +# # # +# # Replacement: tools/ghidra_decompile_at.sh, which translates the file # +# # vaddr with tools/ghidra/DecompileAt.java (file-vaddr aware). # +# ########################################################################### +# # ghidra_decompile_project.sh - decompile a function from an already-analyzed # Ghidra project (run scripts/ghidra_analyze.sh once first). No re-import and # no analysis, so this takes seconds. |
