universal script based files extractor and reimporter.
QuickBMS supports tons of games and file formats, archives, encryptions, compressions, obfuscations and other algorithms.
QuickBMS uses a minimalistic GUI if the executable is double-clicked (launched normally) or from command-line if launched from the console, by using this second mode or a link to the executable it's possible to activate many useful and advanced options.
the idea was born from the need of a simple and fast solution for handling the archives used by the majority of games without wasting time writing a stand-alone tool with tons of C code just for a basic file format.
so this tool has been created mainly for myself for creating my extractors quickly on the fly, and secondly for any other user who wants do the same without learning a real programming language.
the BMS language is basic, easy to use and exists from over 10 years, what I did was simply enhancing it for my personal requirements and making the life easier when handling complex archives and file formats.
open source and multiplatform, tested on Windows (even Win98) and GNU/Linux (x86 and PPC)
works from both command-line and GUI (Windows only, just double-click on quickbms.exe)
reimport and reimport2 modes for reinjecting the modified files back to the archives
support for tons of encryption algorithms, even some proprietary ones
support for tons of compression algorithms (over 700), even some proprietary ones
support for tons of hashing algorithms
support for other types of algorithms (like base64) and/or obfuscations (xor, rot and so on)
support for calling DLLs and raw dumped functions with almost any known calling convention
support for bits operation and switchable little/big endian
simple and dynamic language that allows to make many operations reducing the percentage of archives and formats that can't be supported easily
verbose option (-V) that displays all the needed details during reversing and testing of file formats
HTML output (-H) that automatically applies colors and names to the fields parsed during the usage of the scripts: example for zip.bms on q3infoboom.zip
possibility to use the tool as a blind scanner of compression, encryption and crc/checksum algorithms
support for network sockets, SSL and http/https
support for other alternative input/output interfaces like processes (included debugging and automatic breakpoint restoring), audio, video and Windows messages
support for the visualization and creation of various types of data like x86 assembly, IP addresses, time_t, FILETIME, ClassID and more
support for C-like structures and basic syntax for easy handling of file formats
support for any command-line decompressor/decrypter/anything_else via the EXECUTE method (Comtype and Encryption commands)
read and write operations
quickbms_4gb_files.exe is a native 32bit program with all the variables set as 64bit useful in some situations
planned future development that will cover more advanced features for reverse engineers and power users
customizable CRC engine
tons of scripts supporting hundreds of file formats and thousands of games
experimental games localization (strings editing)
creation of ISO images and ZIP archives as alternative outputs
embedded C compiler to use C functions at runtime
support for embedded Python and Lua scripts
experimental IPC interfaces: named pipes, mailslot, web and dll
support for the WCX packer plugins of Total Commander原贴地址