Current students


Section: Computer Science and Engineering

Major Research topic:
PID, a Pattern Independent Decompiler

The final goal of the project is to develop a complete decompiler tool (i.e. a
tool that attempts to create an high level source file starting from a binary),
that will be useful for the reverse engineering of programs for which the source
code is not available. In particular, we will focus on improving the current
state of the art (IDA Pro[1], BAP[2], Phoenix[3]), taking advantage of pattern-
independent control flow restructuring[4] instead of relying on a pattern-
matching approach.
The first part of the work will be dedicated to the study and improvement of
the existing techniques and their integration in the tool, while the second and
more important part will be dedicated to the development of novel techniques
aimed to the reconstruction of the memory layout of variables in binary
All our research is based on techniques of static binary analysis, and its
purpose is to to able to provide a tool useful for all kinds of reverse
engineering tasks.

[1] Ilfak Guilfanov. “Decompilers and beyond”. In: Black Hat USA (2008).
[2] David Brumley et al. “BAP: A binary analysis platform”. In: International
Conference on Computer Aided Verification. 2011, pp. 463–469.
[3] Edward J. Schwartz et al. “Native x86 decompilation using semantics-
preserving structural analysis and iterative control-flow structuring”. In:
Proceedings of the USENIX Security Symposium. Vol. 16. 2013.
[4] Khaled Yakdan et al. “No More Gotos: Decompilation Using Pattern-Independent
Control-Flow Structuring and Semantic-Preserving Transformations.” NDSS. 2015.