avast / avast/retdec

Use RetDec for lifting code on Windows OS

Open
#949 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
8.6k
Forks
1k
PR merge metrics
No merged PRs in 30d

Description

I wanted to know if it was possible to use some part of RetDec as machine code lifter. I understand that the main goal of this project is different, but it definitely does that. Unfortunately, the projects originally intended for this purpose are not suitable for building on Windows

Below I'll try to describe want I want to do.
```
// I use these names to make my intentions clearer

unsigned char* code_to_modify = { ... }; // some piece of x64 machine code to change/optimize
auto llvm_lifted = retdec::lift( code_to_modify );

// For example, let's apply the optimization
retdec::optimization_pass( llvm_lifted );

// And now we able to compile this code back to x64
unsigned char* compiled_code = retdec::compile( llvm_lifted );
```

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue names RetDec and Windows but does not identify any files, tests, or entry points. Start by reviewing RetDec's documented capabilities and Windows build support, then determine whether machine-code lifting, optimization, and recompilation can be exposed as the requested workflow. Done means a clear supported path or a documented explanation of the limitation.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers, operating-systems, reverse-engineering
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.