% Created 2019-06-15 Sat 11:04
% Intended LaTeX compiler: pdflatex
\documentclass[presentation]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{grffile}
\usepackage{longtable}
\usepackage{wrapfig}
\usepackage{rotating}
\usepackage[normalem]{ulem}
\usepackage{amsmath}
\usepackage{textcomp}
\usepackage{amssymb}
\usepackage{capt-of}
\usepackage{hyperref}
\usepackage{tabu}
\usepackage{minted}
\usepackage[english]{babel}
\hypersetup{pdfauthor="Vasilij Schneidermann", pdftitle="Actually using radare2", colorlinks, linkcolor=, urlcolor=blue}
\setminted{fontsize=\footnotesize,escapeinside=||}
\usetheme{Rochester}
\usecolortheme[RGB={87,83,170}]{structure}
\author{Vasilij Schneidermann}
\date{June 2019}
\title{Actually using radare2}
\hypersetup{
 pdfauthor={Vasilij Schneidermann},
 pdftitle={Actually using radare2},
 pdfkeywords={},
 pdfsubject={},
 pdfcreator={Emacs 26.2 (Org mode 9.1.9)}, 
 pdflang={English}}
\begin{document}

\maketitle
\begin{frame}{Outline}
\tableofcontents
\end{frame}

\AtBeginSection{\frame{\sectionpage}}

\section{Actually using radare2}
\label{sec:orgf407704}

\begin{frame}[label={sec:orgfa62179}]{About}
\begin{itemize}
\item Vasilij Schneidermann, 26
\item Software developer, bevuta IT GmbH
\item mail@vasilij.de
\item \url{https://github.com/wasamasa}
\item radare2 contributor
\item I use it for all things binary
\end{itemize}
\end{frame}

\begin{frame}[label={sec:orge9ad4d7}]{What's radare2?}
\begin{itemize}
\item Initially: Forensics toolkit (raw data recovery)
\item Hex/memory editor
\item RE toolkit (assembler/disassembler/analysis)
\item Binary exploitation toolkit (ROP/shellcode)
\item Debugger
\item Anything thanks to scripting
\end{itemize}
\end{frame}

\begin{frame}[label={sec:org7cfbff0}]{Why would I want to use it?}
\begin{itemize}
\item It feels like Vim and Emacs combined
\item Textual UI
\item Portable, self-contained
\item Flexible, scriptable
\item Easy to contribute to
\end{itemize}
\end{frame}

\begin{frame}[label={sec:orgf910c5b}]{Why would I want to not use it?}
\begin{itemize}
\item It feels like Vim and Emacs combined
\item Buggy, high churn
\item Docs could be better
\item Not up to par to commercial tools (decompilation particularly)
\end{itemize}
\end{frame}

\begin{frame}[fragile,label={sec:orgda99b00}]{How do I start using it?}
 \begin{itemize}
\item Launch \texttt{r2 crackme}
\item Do some analysis (\texttt{aaa})
\item Enter visual mode (\texttt{v})
\item Change to disassembly view (\texttt{p})
\item Go to main function (\texttt{g main})
\item Jump between sections (\texttt{n/N})
\item Read decompiled code (\texttt{:pdc}, requires \texttt{r2pm -i r2dec})
\item View call graph (\texttt{V})
\end{itemize}
\end{frame}

\begin{frame}[fragile,label={sec:orgdb5e493}]{How do I figure out things?}
 \begin{itemize}
\item Append \texttt{?} to a command to get help
\item Press \texttt{?} in visual (panel) mode
\item \url{https://radare.gitbooks.io/radare2book/content/}
\item \texttt{\#radare} channel on Freenode
\item Bridges to Telegram group
\end{itemize}
\end{frame}

\begin{frame}[fragile,label={sec:org4268ed9}]{Commands worth remembering}
 \begin{itemize}
\item \texttt{p} (print)
\item \texttt{w} (write)
\item \texttt{s} (seek)
\item \texttt{?} (help)
\item Look up the rest
\end{itemize}
\end{frame}

\begin{frame}[label={sec:org3423b82}]{Still stuck?}
\begin{center}
\includegraphics[width=.9\linewidth]{./img/source-luke.jpg}
\end{center}
\end{frame}

\begin{frame}[label={sec:org10bba30}]{Demo time}
\begin{itemize}
\item Steganography
\item CHIP-8 analysis
\item Crackme 1 \& 2
\end{itemize}
\end{frame}
\end{document}