Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

QuickBMS errors [programming, scripting, quickbms.exe tool... NOT games]

Featured Replies

  • Author
  • Localization

aluigi, posted Sun Sep 24, 2017 3:46 pm (26771)


I think it's not "whenever" but it's only limited to openssl algorithms, you should not get that error with 'encryption xor "test"', right?

I suspect it's some sort of lack of compatibility of EVP_CipherInit with openssl 1.1 but I don't know why that happens because if it works with 1.0 it must work with 1.1 too:
Quote:
The functions EVP_EncryptInit(), EVP_EncryptFinal(), EVP_DecryptInit(), EVP_CipherInit() and EVP_CipherFinal() are obsolete but are retained for compatibility with existing code.
Maybe it's related to how evp_ctx is initialized since I maintained the old code (that has ever worked) and made it compatible with 1.1, but I don't think.
That error is the final step of setting the encryption when key and ivec are assigned

Currently I have no solution.
Do you have the same error if you set an empty ivec like "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"?
  • Replies 671
  • Views 51
  • Created
  • Last Reply

Top Posters In This Topic

  • Author
  • Localization

einstein95, posted Sun Sep 24, 2017 6:47 pm (26784)


Yes, you are correct, `encryption "xor" test` does indeed work, however both
Code:
encryption "AES" "" "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" 0 16
encryption "AES" KEY "" 0 16

do not.
  • Author
  • Localization

aluigi, posted Fri Jan 19, 2018 9:50 pm (31705)


Note about quickbms 0.8.2a, currently the rc4 encryption doesn't work correctly and probably other encryption algorithms of OpenSSL (not aes that was correctly tested) may fail.
The problem is probably caused by the fix introduced for OpenSSL 1.1 in EVP_CipherInit, an argument that was originally NULL.
Long story short, nfsshift.bms and other 8 scripts don't work at the moment.
Expect a quickbms 0.8.2b or 0.8.3 soon.
  • Author
  • Localization

tengxiaofan, posted Sun Jan 21, 2018 7:25 am (31764)


QuickBMS generic files extractor and reimporter 0.8.1
by Luigi Auriemma
e-mail: [email protected]
web: aluigi.org
(Sep 9 2017 - 00:45:49)

quickbms.aluigi.org Homepage
zenhax.com ZenHAX Forum
@zenhax Twitter & Scripts

- GUI mode activated, remember that the tool works also from command-line
where are available various options like folder scanning, filters and so on

- select the BMS script to use
- select the input archives/files to extract, type * or "" for whole folder and subfolders
- select the output folder where extracting the files
- open input file E:\steam\steamapps\common\PUBG\TslGame\Content\Paks\TslGame-WindowsNoEditor_assets.pak
- open script F:\??????\quickbms_0.8.1\unreal_tournament_4.bms

Error: this script has been created for a newer version of QuickBMS:
expected 00080300 - 0.8.3
yours 00080100 - 0.8.1
you can download it from:

http://aluigi.org/quickbms


Last script line before the error or that produced the error:
6 quickbmsver "0.8.3"

Press ENTER or close the window to quit
  • Author
  • Localization

aluigi, posted Sun Jan 21, 2018 10:43 am (31767)


You must wait the new version of quickbms
  • Author
  • Localization

Acewell, posted Tue Jan 23, 2018 12:48 pm (31837)


QuickBMS 0.8.3 is breaking my Gmad script at here :(
Code:
idstring "GMAD" -1

viewtopic.php?f=9&t=7192
the memory_file is being ignored, i suppose i could change the script to skip those
4 bytes but i like having that check, it works fine in QuickBMS 0.8.1. as is though.
  • Author
  • Localization

aluigi, posted Tue Jan 23, 2018 1:43 pm (31840)


In quickbms 0.8.3 has been added a new useful feature that allows to specify the filenumber as a variable like: get VAR long VAR_FILENUM.

The problem happens with Idstring because the original syntax made by mr.mouse is:
idstring FILENUM STRING
the bad thing of that syntax is that it conflicts with the other commands where filenum is the last argument (idstring STRING FILENUM).

Till version 0.8.2a quickbms used a work-around to, let's say, "turn a blind eye" on idstring allowing both the syntaxes but from version 0.8.3 that's no longer possible so the non-original syntax (the most obvious) is no longer possible.

Long story short, this is the fix: idstring -1 "GMAD"

Maybe in the next versions of quickbms I may introduce a new work-around to allow that syntax, currently there is no plan and desire because a bad work-around may introduce a bug.
  • Author
  • Localization

Roobs, posted Sun Feb 11, 2018 7:33 pm (32391)


Hello,

I've been using the Sims2_gc.bms script to extract files from The Sims 2 for GameCube. Unfortunately it doesn't work with Audiostr.arc, which I presume to contain the game's music and audio files. I get the following error.

Code:
Error: incomplete input file 0: C:\Users\A\Desktop\New folder\The Sims 2 GameCube [G4ZE69]\root\DATA\audiostr.arc
       Can't read 175071 bytes from offset 06dc5f20.
       Anyway don't worry, it's possible that the BMS script has been written
       to exit in this way if it's reached the end of the archive so check it
       or contact its author or verify that all the files have been extracted.
       Please check the following coverage information to know if it's ok.

  coverage file 0   136%   157134942  115105568  . offset 06dc5f20

Last script line before the error or that produced the error:
  32  log NAME OFFSET1 SIZE1


Any help would be very much appreciated.
  • Author
  • Localization

aluigi, posted Fri Mar 09, 2018 5:45 pm (33005)


to everybody:
quickbms 0.8.4 is out, please let me know if there is any new bug introduced from 0.8.3.
  • Author
  • Localization

minhvipkk, posted Sun Mar 18, 2018 10:07 pm (33425)


Hello, I'm new to this site. Is there still not any way to reimport bigger size file? I'm trying to translate a game and the String file is always bigger after translation. (Sorry for my bad English)
  • Author
  • Localization

aluigi, posted Sun Mar 18, 2018 10:45 pm (33427)


Use the latest version of quickbms and then use reimport2.bat.
This new method has some limitations too, it depends by the format of the archive.
  • Author
  • Localization

minhvipkk, posted Mon Mar 19, 2018 5:05 pm (33449)


aluigi wrote:
Use the latest version of quickbms and then use reimport2.bat.
This new method has some limitations too, it depends by the format of the archive.


The archive file is data.win. The file including parts for translation is STRG.txt.
Reimport2 doesn't allow to import bigger size file. :(
  • Author
  • Localization

BCGhost, posted Sat Apr 14, 2018 7:32 am (34029)


The tool threw me an error when I tried to decompress this data chunk with zlib:

while I can decompress it without problems through HexEdit.
  • Author
  • Localization

aluigi, posted Sat Apr 14, 2018 2:57 pm (34034)


It works perfectly, remember that if you use "comtype zlib" you have also give a decompressed size value which is same/bigger than the real decompressed size, only zlib_noerror and unzip_dynamic do the job automatically:
Code:
comtype zlib_noerror # or unzip_dynamic
get SIZE asize
clog "" 0 SIZE SIZE
  • Author
  • Localization

BCGhost, posted Sat Apr 14, 2018 3:24 pm (34041)


I actually did specified an unzip size but it still gave me the error saying
"Error: the compressed zlib/deflate input is wrong or incomplete (-5)".

This is the code I'm using for the simple test:
Code:
comtype zlib
get Name basename
string Name ".dcp"
get ZSize asize
set Size long ZSize
math Size * 20
clog Name 0 ZSize Size

However zlib_noerror does work though.
  • Author
  • Localization

aluigi, posted Sat Apr 14, 2018 3:58 pm (34044)


Your script is correct but your dump is incomplete so the zlib library returns an error if the input is not perfect, in fact the zlib format has a crc at the end to check the input.
zlib_noerror simply ignores these errors and doesn't consider the decompressed size.
  • Author
  • Localization

BCGhost, posted Sat Apr 14, 2018 4:16 pm (34045)


aluigi wrote:
in fact the zlib format has a crc at the end to check the input.

I never knew that before. That will make sense. The file I'm dealing with has no fields about the compressed size or unzip size while HexEdit will crash if I decompress the whole compressed chunk directly, so I have to perform a decompression on every piece of data splitted by the zlib magic "\x78\x01" in this case. Guess I'd have to use the noerror method then.
  • Author
  • Localization

BCGhost, posted Tue Apr 17, 2018 2:08 am (34090)


I was wondering if it would perform a complete decompression either method.
  • Author
  • Localization

Nicknine, posted Tue May 29, 2018 11:32 pm (35391)


There's a bug with arrays. If you use a different name (not value, name) as accessor index from any names that were used to initialize it, it won't work properly.

To elaborate, this will work:
Code:
set ID long 0
set TEST[ID] string "pootis"
set POOTIS TEST[ID]


This will not work:
Code:
set ID long 0
set TEST[ID] string "pootis"
set IX long 0
set POOTIS TEST[IX]
  • Author
  • Localization

aluigi, posted Wed May 30, 2018 9:57 am (35400)


There are 2 bugs in those scripts:
- the variable with name pootis and the constant string "pootis" can't coexist
- that feature you are using there is not the (get/put/sort)array one, that's the experimental multi-dimensional array which works in a different way in which the multiple dimensions (VAR[X][Y][Z][W]) are possible by using a trick. long story short TEST[ID] and TEST[IX] are two completely different things
  • Author
  • Localization

GHOST DEAD, posted Tue Jul 03, 2018 5:25 am (36388)


Hello Aluigi
i have a question...
i want to start Scripting with QuickBMS, i just know (Lua), how can i start and Learn to write bms scripts?
  • Author
  • Localization

aluigi, posted Tue Jul 03, 2018 10:17 pm (36409)


The bms language is extremely simple, most of the work is reverse engineering the file formats for which you usually need a hex editor.
My suggestion is to take a look at the various scripts written for the various samples provided on the forum.
Every script shorter than 10 lines is a good candidate for learning :)
  • Author
  • Localization

undefine0909, posted Wed Jul 04, 2018 1:03 pm (36454)


what does -m3 means on make?? i dont have that it throws error

thread -lssl -lcrypto -DDISABLE_MCRYPT -DDISABLE_TOMCRYPT -ldl
cc: error: unrecognized command line option '-m3'make: *** [Makefile:43: all] Error 1

I think my question is cc you put -m3 whats that?

ah its m32 i cant built this on my 64 bit.. because you state it cause problem on 64 bit natively.. hmm
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.