Duplicate HighIL statement when lifting `fsbase + 0x28`
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- cpp
- Área
- reverse-engineering
Línea de trabajo
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.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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
- Lenguaje dominante
- C++
- Estrellas
- 1.3k
- Forks
- 298
- Merge medio
- 4 d 13 h
- PR fusionados (30 d)
- 20
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de Vector35/binaryninja-api
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 88/100
Vector35/binaryninja-api#8540 ·
-
normalize time logs from WARP Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
Vector35/binaryninja-api#8446 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
Vector35/binaryninja-api#8444 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Vector35/binaryninja-api#8441 · 3 comentarios ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Vector35/binaryninja-api#8404 ·
Todos los issues de Vector35/binaryninja-api
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
flutter-webrtc/flutter-webrtc#2206 ·
-
litertlm-android AAR ships no consumer ProGuard rules → "mid == null" SIGABRT in minified apps Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
google-ai-edge/LiteRT-LM#3739 ·
-
Component: GLib
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
brave/brave-browser#59300 ·
-
Mute ydb/tests/functional/dstool/test_canonical_requests.py.Test.test_group_take_snapshot in main Abiertoai_reviewed
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
ydb-platform/ydb#53974 · 3 comentarios ·