Name Last Update
doc Loading commit data...
profiles Loading commit data...
src Loading commit data...
CMakeLists.txt Loading commit data...
LGPL2.1 Loading commit data...
LGPL3.0 Loading commit data...
LICENSE Loading commit data...
README Loading commit data...
README.md Loading commit data...

MAQAO (Modular Assembly Quality Analyzer and Optimizer)

Outline

Pre requisites
Installation
Documentation
Running MAQAO tools

Pre-requisites

The following packages and softwares have to be installed before launching the installation:

If you choose the original lua package (and not luajit) then you will also need:

  • libreadline-dev
  • libncurses-dev

Installation

MAQAO is a cmake based project.
Go into the MAQAO folder
If no "build" directory is present, create it
>$ mkdir build
Go into the build folder:
>$ cd build
Then run the following commands:
>$ cmake ..
>$ make

Documentation

The documentation generation is optional and need several softwares:

To build the documentation, go in the build directory and type:
>$ make doc
Generated files are available trough a web browser. The LUA API documentation is called
DeveloperGuide.html and the C API documentation is called CoreDeveloperGuide.html. Both
are located in MAQAO/doc

Running MAQAO modules

A MAQAO module can be launched with the following command:
>$ maqao <module> [args]
For instance to list the functions in the binary /path_to/my_binary:
>$ maqao analyze --list-functions /path_to/my_binary

The -h option provides help for a given module.

To execute user-defined MAQAO/Lua scripts, use:
>$ maqao <lua-script> [args]
Note that MAQAO scripts are Lua scripts that can use the MAQAO Lua API extensions (see documentation for more information)

For general help on MAQAO:
>$ maqao -h