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.
Zero Tolerance for Disrespect

[Help] Dynasty Legends 2 - Encrypted Lua files, need decryption help

Featured Replies

Hi everyone,

I'm trying to access the Lua scripts of Dynasty Legends 2 for development/research purposes.

I extracted the game files from the APK but the Lua files appear to be encrypted/obfuscated. I can't read or decompile them.

- Game: Dynasty Legends 2 (mobile/PC)
- Engine: Unity Engine
- What I tried: unluac, standard Lua decompilers, basic XXTEA tools

Has anyone dealt with this game's Lua encryption? Or can anyone suggest a general approach to hook and dump decrypted Lua from memory (Frida, etc.)?

Any help or pointers would be appreciated.

Data(Lua's).rar

  • Localization

The lua files are encrypted with a modified version of XXTEA. I downloaded Dynasty Legends 2 through Steam and based the research on that build of the game. The key is stored as four masked values, and the game uses a different number of rounds than standard XXTEA. I also confirmed that the same key works on the lua files you provided.

Python script and article will follow soon.

DL2.png

Edited by Falkrian

  • Author

image.png


Great job! Do you have the option to share keys? The keys I have are very old and don't match.

  • Localization
// Snip

I have no idea how the rest of your source code looks like, but give this a try.

Edited by Falkrian

  • Author

unfortunately, this key didn't work..

if you have used our solution method or QuickBMS, will you share it with me

  • Localization

Please give the attached Python script a try and let me know how it goes.


# Decrypt all lua files
python .\dynasty_legends_2_lua_decrypt.py "D:\Steam\steamapps\common\Dynasty Legends 2" "path\to\folder\for\decryption"

# Single File
python .\dynasty_legends_2_lua_decrypt.py .\Boss_LvBu.lua .\Boss_LvBu.decrypted.lua

Here is the article for those interested.

dynasty_legends_2_lua_decrypt.py

Edited by Falkrian

Create an account or sign in to comment

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.