v0.5.0
0.5.0 (2021-10-22)
Note
We have made significant changes in our middle-end (CFG recovery, and function
identification, etc.) engines for this version, and we are still improving it.
The current version is stable enough, but we are actively changing the
implementation while doing some internal research, which is hoding us back for
open-sourcing it. Hence, we decided to partly publicize our tool (everything but
the middle-end engine). We always welcome PRs for our front-end modules 😄
We may bump few more versions before making everything public, but we will
eventually open-source everything. So please stay tuned!
Added
- Handle ELF exception frames
- Introduce new CFG recovery engine
- Introduce
BinaryPointer
type which allows accessing non-addressable region of binary. - Add few more instruction support for x86-64 and ARMv7
- Add a RearEnd.Launcher, which is a .NET CLI tool. You can now install B2R2 by typing
dotnet tool install -g B2R2.RearEnd.Launcher
. - Add support for AVR architecture
Changed
- MiddleEnd has been largely rewritten
- Module and function names largely changed.
- Hash-consing is now controlled with build macro
HASHCONS
- MiddleEnd.ConcEval works with base address changes
- Local IR optimizer has been rewritten
- Optimized data-flow engine