[BUG] RetroWrite does not disassemble a set of functions
- Dominant language
- Python
- Stars
- 750
- Forks
- 87
- PR merge metrics
- No merged PRs in 30d
Description
RetroWrite does not disassemble certain functions
especially when their symbol visibilities are 'STV_HIDDEN.'
Moreover, the omission causes recompilation errors.
I examined source code, and found the following code that filters out hidden functions.
https://github.com/HexHive/retrowrite/blob/120e73859c2d76b712bfd609ce91c0a8a4d003d7/librw_x64/loader.py#L202-L204
I think the above code should be removed to fix the bug.
Thank you.
Test Environment.
1. Platform: Ubuntu 18.04, x86-64
2. Compiler: gcc-7
3. Target binary: binutils-2.31.1/objcopy
Contributor guide
No contributing guide indexed for this repository
Research direction
Start in librw_x64/loader.py at the hidden-symbol filtering code linked in the issue, then reproduce the behavior with the binutils-2.31.1/objcopy target on Ubuntu 18.04 using gcc-7. Done means functions with STV_HIDDEN visibility are disassembled and the resulting output recompiles without errors.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- reverse-engineering
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 45/100