MIT IEEE URTC 2024. GSET 2024. Repository for the "MBASED: Practical Simplifications of Mixed Boolean-Arithmetic Obfuscation". A Binary Ninja decompiler plugin taking ideas from compiler construction to simplify obfuscated boolean expressions.
Once we have completed our simplification of the boolean expressions, our goal is to rewrite the simplified program back into the output of the decompiler. This is a bit tricky and requires examining the Binary Ninja API a bit further. One idea is to nop out all of the simplified instructions before a conditional branch. This potentially may require some direct patching.
Closing this since we are a bit cut for time. Making this an extra idea since it appears that rewriting the decompiled output may require some patching.
Once we have completed our simplification of the boolean expressions, our goal is to rewrite the simplified program back into the output of the decompiler. This is a bit tricky and requires examining the Binary Ninja API a bit further. One idea is to
nop
out all of the simplified instructions before a conditional branch. This potentially may require some direct patching.Action Items
To be added later.
Resources
More to be added later.