Duplicate HighIL statement when lifting `fsbase + 0x28`
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Tranquilla
- Stack tecnologico
- cpp
- Ambito
- reverse-engineering
Direzione di ricerca
Reproduce the case at 0x402f3c using the assembly and HighIL shown in the issue, then trace the lifting path for the fsbase + 0x28 operand. Done means the standalone duplicate expression is absent and the conditional retains the expected HighIL form.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Version and Platform (required):
- Binary Ninja Version: 5.4.10466-dev Personal (42e25af5)
- Edition: Non-Commercial
- OS: Fedora Linux
- OS Version: 44
- CPU Architecture: M2
Bug Description:
The following assembly:
00402f38 488b55f8 mov rdx, qword [rbp-0x8 {var_10}]
00402f3c 64482b142528000000 sub rdx, qword [fs:0x28]
00402f45 7405 je 0x402f4c
is lifted to HighIL:
00402f3c *(fsbase + 0x28)
00402f3c
00402f45 if (rax != *(fsbase + 0x28))
instead of being correctly lifted to HighIL
00402f45 if (rax != *(fsbase + 0x28))
Steps To Reproduce:
Please provide all steps required to reproduce the behavior:
- Open the binary
- Go to
0x402f3c - Notice the incorrect lifting
Expected Behavior:
I expect the following assembly:
00402f38 488b55f8 mov rdx, qword [rbp-0x8 {var_10}]
00402f3c 64482b142528000000 sub rdx, qword [fs:0x28]
00402f45 7405 je 0x402f4c
to be correctly lifted to HighIL:
00402f45 if (rax != *(fsbase + 0x28))
Screenshots/Video Recording:
Binary:
Reference phrase: celestial system cycles delicately
- Lingua principale
- C++
- Stelle
- 1.3k
- Fork
- 298
- Merge medio
- 4g 13h
- PR unite (30g)
- 20
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Vector35/binaryninja-api
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
Vector35/binaryninja-api#8540 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
Vector35/binaryninja-api#8446 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
Vector35/binaryninja-api#8444 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Vector35/binaryninja-api#8441 · 3 commenti ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
Vector35/binaryninja-api#8404 ·
Tutte le issue di Vector35/binaryninja-api
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
google/libultrahdr#485 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
godotengine/godot#123776 ·
-
bug
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 60/100
-
good first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
-
good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
ros2/common_interfaces#344 ·