The following collection of tutorials covers all the essential features of the Maat framework. It is tailored for first-time users, fairly detailed, and can be followed with virtually no prior experience in reverse-engineering or symbolic execution.

  1. Getting started : Learn how to load and run an executable, to read and write registers in the emulated CPU, and to interact with the emulated process's memory

  2. Event hooks: Place hooks on various events and define custom callbacks to instrument the code executed in the engine

  3. Dynamic symbolic execution: Use abstract variables, perform symbolic execution on concrete inputs, and use symbolic constraints to solve a basic reverse engineering challenge

  4. Path exploration: Use snapshots and state serialization to systematically explore execution paths in a program. Apply path exploration to solve a crackme challenge