avast / avast/retdec-idaplugin

Decompilation of object or rebased files

Open
#15 0 comments 0 reactions 1 assignee Claimed by @PeterMatula View on GitHub
enhancement
Dominant language
C++
Stars
799
Forks
132
PR merge metrics
No merged PRs in 30d

Description

Decompilation via RetDec idaplugin gets into troubles if IDA has the file mapped on a different address than RetDec. In such a case, all metadata that come from IDA in config database are wrong when applied on image loaded by RetDec's image loader library.

This happens for object files. E.g. [hello.zip](https://github.com/avast-tl/retdec-idaplugin/files/1674373/hello.zip), where IDA has `main()` on address `0x8000000` and RetDec has it on `0x34`.

The same thing happens if user makes a rebase in IDA. E.g. here [mytest.zip](https://github.com/avast-tl/retdec-idaplugin/files/1674394/mytest.zip), `main()` is at `0x8900180`, but in IDA, we can do _Edit→Segments→Rebase program_ to `0x1000000` and run decompilation.

Solution: Probably get segments mappings from IDA and apply them in RetDec. This might be tricky, since RetDec libraries are probably not ready for it.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.