With the developments of modern programming languages such as Java and Python, one can spend an entire software engineering career never having to read or write assembly. But this is not to say that knowledge of assembly is useless nowadays; when it comes to computer security, a working knowledge of assembly is fundamental to understanding reverse engineering and memory corruption vulnerabilities such as buffer overflows. In this workshop, we will present a framework for reasoning about assembly languages and go through exercises writing and reverse engineering programs for the venerable Intel x86 platform. Join us for an opportunity learn more about how computers work and meet the cybersecurity club's own capture-the-flag team. If possible, please bring a laptop of your own.