Skip to content

Lua Assembly/Bytecode Tools. Has functions for virtually all aspects of LASM, including reading/writing, verifying, stripping debug info, LASM decompilation, and LASM parsing.

License

Notifications You must be signed in to change notification settings

bainchild/LuaAssemblyTools

 
 

Repository files navigation

Lua Bytecode/Assembly Tools (LAT) is a Lua bytecode library written in Lua 5.1 (but should be 5.2 compatible)
To use LuaAssemblyTools in your project, just require "LAT".

Inspired by: LuaDbg, LASM Compiler Suite, MODS, ChunkBake, and ChunkSpy.

Eventually, i hope to have full support for all available Lua versions.
This is not going to happen in the near future though.

Language Implementations

Version Implemented
2.4-5.0 No
5.1 Yes
5.2 Yes
5.3 No

(If not specified, its for Lua 5.1 and 5.2 operations)

Completed Operation Description
Yes Read Reads bytecode
Yes Write Writes bytecode
Yes Edit Inject, remove, and change bytecode
Yes LASM Decompiler Decompiles chunks to LASM
Yes LASM Parser Parses LASM and generates LuaFile's
No Decompiler Decompiles bytecode to Lua
No Version converter (2.4-5.2) Convert chunks to different versions
Partial1 Platform converter Converts platforms (SizeT, IntegerSize, BigEndian, etc..,)
Yes Verifier Verifies bytecode is valid
Yes Strip/Remove debugging info Removes debugging info
Yes Add/Edit debugging info Adds and/or edits debugging info

Footnotes

  1. Might not work correctly. My tests failed, but it can still round-trip x86 standard chunks.

About

Lua Assembly/Bytecode Tools. Has functions for virtually all aspects of LASM, including reading/writing, verifying, stripping debug info, LASM decompilation, and LASM parsing.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Lua 99.8%
  • Batchfile 0.2%