diff --git a/README.md b/README.md index 0893264..ea95b87 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,12 @@ # vmassembler - VMProtect 2 Virtual Instruction Assembler -vmassembler is a small C++ project which uses [flex](https://en.wikipedia.org/wiki/Flex_(lexical_analyser_generator)) and [bison](https://www.gnu.org/software/bison/manual/) to parse `.vasm` files and assemble virtual instructions. The project inherits [vmprofiler](https://githacks.org/vmp2/vmprofiler) which is used to identify vm handler's, provide them with a name, immidate value size, and other meta data to aid in assembling virtual instructions. \ No newline at end of file +vmassembler is a small C++ project which uses [flex](https://en.wikipedia.org/wiki/Flex_(lexical_analyser_generator)) and [bison](https://www.gnu.org/software/bison/manual/) to parse `.vasm` files and assemble virtual instructions. The project inherits [vmprofiler](https://githacks.org/vmp2/vmprofiler) which is used to identify vm handler's, provide them with a name, immidate value size, and other meta data to aid in assembling virtual instructions. + +### Contents + +* `dependencies/` - vmprofiler is the only dependency for this project... +* `src/` - source code for the vmassembler... + * `compiler.cpp` - responsible for encoding and encrypting virtual instructions... + * `parser.cpp` - a singleton class which is used in `parser.y`... + * `parser.y` - bison rules for parsing tokens. This contains only a handful of rules... + * `lexer.l` - lex rules for the vmassembler... \ No newline at end of file