--- /dev/null
+\section{Design Overview}
+\subsection{Serialization}
+\begin{frame}{Serialization}
+ \begin{itemize}
+ \item Storing \emph{Facts} (and later \emph{Patches}) for the Binary
+ \item ZIP archive with base state and linear sequence of
+ transactions
+ \begin{itemize}
+ \item Each transaction with enough information to reverse-apply it
+ \item Transactions can not only be written to disk but also
+ e.\,g. sent over the network to remote viewers
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\subsection{QSignals}
+\begin{frame}{QSignals}
+ \begin{itemize}
+ \item Only option really for the GUI part
+ \item Properly handles passing messages between
+ (Q)Threads. Disassembler already runs asyncron to the GUI and the
+ interpreter
+ \end{itemize}
+\end{frame}
+
+\subsection{Scripting}
+\begin{frame}{Scripting}
+ \begin{itemize}
+ \item Keep complex logic out of the core as far as possible
+ \begin{itemize}
+ \item finding probably functions in the text section
+ \item Detecting structure of \texttt{libgcc\_s} \texttt{\_start}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "../vortrag"
+%%% End:
--- /dev/null
+\section{Current State}
+\subsection{Disassembler Core}
+\begin{frame}{Disassembler Core}
+ \begin{itemize}
+ \item Recursive Disassembler
+ \item MachO / PE / ELF handling
+ \item Whatever ISA LLVM supports, frida supports (x86, arm, POWER,
+ mips, \dots{})
+ \item Use Symbols when available, still find \texttt{\_start} if not
+ \item Assembly dialect suckless\texttrademark{} configurable
+ \end{itemize}
+\end{frame}
+
+\subsection{GUI}
+\begin{frame}{GUI}
+ \begin{itemize}
+ \item Classical Control-Flow Diagram
+ \item Hyperlinked references
+ \item Automagic Layout
+ \item Grouping for functions
+ \end{itemize}
+\end{frame}
+
+\subsection{Scripting}
+\begin{frame}{Scripting}
+ \begin{itemize}
+ \item Plugin Interface, Plug your own!
+ \item GUILE bindings with access to the core datastructures
+ \begin{itemize}
+ \item Full geiser support (Connect your editor to frida when
+ writing scripts)!
+ \item Missing: wrapper for nicer interface
+ \end{itemize}
+ \item iPython currently explored
+ \begin{itemize}
+ \item Qt IPython Widget
+ \item Alternative socket connection
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "../vortrag"
+%%% End:
--- /dev/null
+\section{Vision}
+\begin{frame}{Vision}
+ \begin{itemize}
+ \item LLDB
+ \item clang-based indexing of \texttt{/usr/include}
+ \item Calculation of Path-Conditions
+ \item XMPP PubSub based Multiplayer mode
+ \end{itemize}
+\end{frame}
+
+%%% Local Variables:
+%%% mode: latex
+%%% TeX-master: "../vortrag"
+%%% End:
\tableofcontents{}
\end{frame}
-\section{Current State}
-\subsection{Disassembler Core}
-\begin{frame}{Disassembler Core}
- \begin{itemize}
- \item Recursive Disassembler
- \item MachO / PE / ELF handling
- \item Whatever ISA LLVM supports, frida supports (x86, arm, POWER,
- mips, \dots{})
- \item Use Symbols when available, still find \texttt{\_start} if not
- \item Assembly dialect suckless\texttrademark{} configurable
- \end{itemize}
-\end{frame}
-
-\subsection{GUI}
-\begin{frame}{GUI}
- \begin{itemize}
- \item Classical Control-Flow Diagram
- \item Hyperlinked references
- \item Automagic Layout
- \item Grouping for functions
- \end{itemize}
-\end{frame}
-
-\subsection{Scripting}
-\begin{frame}{Scripting}
- \begin{itemize}
- \item Plugin Interface, Plug your own!
- \item GUILE bindings with access to the core datastructures
- \begin{itemize}
- \item Full geiser support (Connect your editor to frida when
- writing scripts)!
- \item Missing: wrapper for nicer interface
- \end{itemize}
- \item iPython currently explored
- \begin{itemize}
- \item Qt IPython Widget
- \item Alternative socket connection
- \end{itemize}
- \end{itemize}
-\end{frame}
-
-\section{Design Overview}
-\subsection{Serialization}
-\begin{frame}{Serialization}
- \begin{itemize}
- \item Storing \emph{Facts} (and later \emph{Patches}) for the Binary
- \item ZIP archive with base state and linear sequence of
- transactions
- \begin{itemize}
- \item Each transaction with enough information to reverse-apply it
- \item Transactions can not only be written to disk but also
- e.\,g. sent over the network to remote viewers
- \end{itemize}
- \end{itemize}
-\end{frame}
-
-\subsection{QSignals}
-\begin{frame}{QSignals}
- \begin{itemize}
- \item Only option really for the GUI part
- \item Properly handles passing messages between
- (Q)Threads. Disassembler already runs asyncron to the GUI and the
- interpreter
- \end{itemize}
-\end{frame}
-
-\subsection{Scripting}
-\begin{frame}{Scripting}
- \begin{itemize}
- \item Keep complex logic out of the core as far as possible
- \begin{itemize}
- \item finding probably functions in the text section
- \item Detecting structure of \texttt{libgcc\_s} \texttt{\_start}
- \end{itemize}
- \end{itemize}
-\end{frame}
-
-\section{Vision}
-\begin{frame}{Vision}
- \begin{itemize}
- \item LLDB
- \item clang-based indexing of \texttt{/usr/include}
- \item Calculation of Path-Conditions
- \item XMPP PubSub based Multiplayer mode
- \end{itemize}
-\end{frame}
+\input{chapters/design}
+\input{chapters/implementation}
+\input{chapters/vision}
\begin{frame}{Name Wanted}
\begin{block}{}