The decryption is based on luaj-2.0.3 but is dependent on the subtleties that are used by NNG which oscillates between lua 5.1 and 5.2 with some variations.
the execution of a "luac" taking place from binary operations by means of a stack of instructions and registers in the manner of assembly language, that of a "luad" from a language evolved designed in the manner of the Basic language in which the interpretation of each instruction is carried out by the call to dedicated subroutines,
these two programming modes operate with different logics that it is not always easy to relate to each other (especially when certain standardized lua rules are not respected) and in the executable program it must certainly exist two interpreters operating in parallel making it possible to execute independently of both "luac" and "luad",
and therefore unless you can completely disassemble the executable to extract all the interpretation procedures from it, the transcryption can include some minimal syntax errors, but it is also necessary to take into account the fact that an initial scrypt can be faulty and lead to believe bad decryption, so only tests carried out with portions of code in sometimes far-fetched situations make it possible to highlight the behavior of the program and sometimes how to get around operating bugs.
Bookmarks