# Reverse Engineering Semester Plan
### Topics
- Java
- Python
- Assembly
- GDB
- GDB Scripting
- C reversing
- C++ reversing
- Z3
- Angr
### Java
Learn the basics of the Java from google and incase you know, start solving challenges.
### Python
Solve Challenges regarding python byte compiled and python disassembly
### Assembly
Resources
- https://0xinfection.github.io/reversing/(Read only the x86 part for now)
- https://courses.cs.washington.edu/courses/cse351/17au/lectures/09/CSE351-L09-asm-II_17au.pdf
- Solve pwn college asm module
### GDB
start reading about how to use gdb.
- Solve gdb module from pwn college
- https://github.com/bi0s-BLR/reversing-docs/tree/master/Assembly/Beginner/Reversing (Solve the 5 challenges and try to spent atleat an hour before looking into the hints)
### GDB Scripting
- Will have a small session regarding scripting.
- https://drive.google.com/drive/folders/1P20W6O02Rv-Ocxf8IEKkb8vEZTjLOAym?usp=sharing
### C Reversing
- Learn what an elf file is
- Learn how an elf file gets loaded in memory.
- Solve previous ctf challenges(google it).
### C++ Reversing
- Solve Challenges from previous CTFs
### Z3
- Session regarding Z3 basics will be taken
- https://ericpony.github.io/z3py-tutorial/guide-examples.htm(Read this)
- https://ericpony.github.io/z3py-tutorial/advanced-examples.htm
- Challenges will be provided
## Keep Looking here for challenges
- coming soon