avast / avast/retdec

UTF16 seems to be wrong when translating .exe to .ll

Open
#944 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 tried to translate mknod.exe compiled by sygwin to mknod.ll.

At 0x0040EF64 of mknod.exe in idapro is
![image](https://user-images.githubusercontent.com/32814917/114392480-6c259200-9bcb-11eb-81a2-c5b084371b4f.png)

But the generated mknod.exe.ll is
![image](https://user-images.githubusercontent.com/32814917/114392800-dcccae80-9bcb-11eb-82a3-3e12200c7aed.png)

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the translation of the attached mknod.exe and compare the generated mknod.exe.ll with the IDA view at 0x0040EF64. Trace RetDec's UTF-16 handling during executable-to-LLVM translation; done means identifying and correcting the discrepancy and verifying the generated LLVM output against the reference.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers, reverse-engineering
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.