Gemini Beta 0.1

Gemini’s current release
This is the first release of Gemini’s changes. Since this is the first set of release notes, the initial set-up will be explained and the latest tweaks will be described.
Gemini is built in a modular way. Each module can be used to generate code in another language. Currently, the only implemented module exports C-code for the Windows platform. Since Windows is the most used platform, this is the first focus.

In the project, there are two packages: gemini and moduleC.

This package contains, which is the main function to launch the program and detect which package should be called. contains functions and fields that can be used by any module. Writing a file to a directory is an example of this.

Module C
This module contains multiple files and can be seen as a project on its own, as is every module. The file is called first, which displays the general information to the user and executes basic sanity checks based on the user input.
After this, the file is called, which generates the code. To keep the structure in the file, the functions to evade anti-virus suites are placed in for sandbox evasion and for virtualization evasion.
The * files are enums and are created to improve the communication between the classes.

The lay-out of this module will be the general lay-out for every module in the future, assuming that all three evasion vectors are utilised in the module.