avast / avast/retdec

x86-64 global data incorrect ref addr

Open
#531 1 comment 0 reactions 1 assignee Claimed by @PeterMatula View on GitHub
bug high-priority P-run T-arch-x86-64
Dominant language
C++
Stars
8.6k
Forks
1k
PR merge metrics
No merged PRs in 30d

Description

Hi, I'm using v3.3 playing with the x86-64 files and noticed global data is incorrectly referenced

For example in my code RetDec references **0x21375b**
```
// Address range: 0x0 - 0x42
int32_t entry_point(void) {
int32_t v1 = *(int32_t *)0x21375b;
int32_t result = v1; // ebx
if (v1 == 0) {
// 0x38
return 0;
}
...
```

Ghidra references correct address **0x00213768**;
```
undefined8 * UndefinedFunction_00000000(undefined8 uParm1)

{
int iVar1;
undefined8 *puVar2;
puVar2 = _DAT_00213768;
```

my Cmd line
```
c:\Python37x64\python.exe \tools\retdec-v3.3-win-64b\bin\retdec-decompiler.py func_0x0.bin --mode raw --arch x86-64 --endian little --raw-section-vma 0x00 --select-ranges 0x00000000-0x00000042 --raw-entry-point 0x00000000 -o func_0x0.c --clean
```

Function base64

```
me@DESKTOP:/mnt/c/Users/me/retdec_files$ echo VVNIg+wISIsdWzchAEiF23QmSIn96xJmDx+EAAAAAABIi1sYSIXbdA9IizNIie/obMT//4XAdehIg8QISInYW13D | base64 -d | hexdump -C
00000000 55 53 48 83 ec 08 48 8b 1d 5b 37 21 00 48 85 db |USH...H..[7!.H..|
00000010 74 26 48 89 fd eb 12 66 0f 1f 84 00 00 00 00 00 |t&H....f........|
00000020 48 8b 5b 18 48 85 db 74 0f 48 8b 33 48 89 ef e8 |H.[.H..t.H.3H...|
00000030 6c c4 ff ff 85 c0 75 e8 48 83 c4 08 48 89 d8 5b |l.....u.H...H..[|
00000040 5d c3 |].|
00000042
```

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.