The Women in Compilers and Tools Virtual Meetup Series will be hosted again July 29th, 6:00 PM PDT.
In this meetup we’ll be hearing from Senior Director of Research & Development at Oracle Labs Australia, Cristina Cifuentes with From Student of Compilation to Mother of Decompilation.
Having worked on a machine code interpreter for the Modula-2 language for my Compilers project in 1990 and later integrating it into a mixed GPM Modula-2 compiler/interpreter for the 8086 during the summer of[masked] meant that I was familiar with assembly language and had a notion of transforming an intermediate representation into executable assembly code. Enjoying compilers and hearing about the latest viruses that were becoming popular in DOS binaries raised my interest in looking into binaries/executable programs to determine how to reverse compile them back into a high-level language representation, to be able to aid with an automated tool in understanding what the virus code was doing. And hence I enrolled in a PhD in April 1991.
27 years ago, in July 1994, I submitted my PhD thesis on “Reverse Compilation Techniques”. Little did I know that such a fun project, looking into 80286 DOS binaries and reading assembly, drawing graphs of groups of assembly instructions, understanding how parameters were passed in assembly language, determining what optimising compilers would do to optimised parameters and code, following variables through a function and the whole program to understand data flows and how variables were stored on the stack or memory; would result in techniques that would be picked up in the 2000s with the growing interest in application security.
In this informal talk I give a retrospective on the decompilation PhD work, the growing interest on this technology throughout the past two decades, examples of commercial uses of decompilation, and a new project that makes use of decompilation as it relates to malware.
To find additional details and to RSVP, please visit: