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.

$50 - Decrypt Ragnarok Eternal Love client data [Unity Mobile]

Featured Replies

  • Author
  • Localization

drx, posted Tue Nov 13, 2018 3:13 pm (40332)


My previous post: https://zenhax.com/viewtopic.php?f=9&t=8865

Hello,
I'm looking for someone to unpack and decrypt Ragnarok Eternal Love game data for my small project.

As for now, I have been able to decompile some of the game resources using AssetStudio.
However, TextAsset such as NPC(for instance - npc HP, ID, type and so on), item, quest, skill and few other databases are encrypted.
I strongly believe that those data are in resources/script2 folder.

Image

Anyway, please PM me if you're interested. I'll pay you via Paypal once its done.

Thanks!

Game: Ragnarok Online: Eternal Love
Platform: Android
Official site: https://www.ragnaroketernallove.com
--
script2 folder (untouched): https://www.mediafire.com/file/twdpvwm9 ... s.rar/file
script2 TextAsset (decompiled using AssetStudio): http://www.mediafire.com/file/luy6l899h ... t.rar/file

Game client APK: https://www.ragnaroketernallove.com/apkdl or https://rescdn.imtxwy.com/apk/ro-sea/RO ... 798060.apk
  • Author
  • Localization

atom0s, posted Sat Nov 17, 2018 7:52 pm (40453)


From the look of it, the files are encrypted with DES. The libslua.so file has the key and functions in it to encode buffers using the same setup and key.

Code:
void __cdecl desECode(void *a1, size_t a2, void *a3)
{
  int v3; // esi
  size_t n; // edi
  char *v5; // esi
  size_t v6; // ebp
  _BYTE *src; // ST04_4
  unsigned int *dest; // ST00_4

  InitDes();
  v3 = dword_42024;
  memcpy(a3, "czjzgqde", dword_42024);
  *(_DWORD *)((char *)a3 v3) = a2;
  n = desECodeLenth(a2);
  v5 = (char *)malloc(n);
  memset(v5, 1, n);
  v6 = 0;
  memcpy(v5, a1, a2);
  deskey(byte_42018, 0);
  if ( n )
  {
    do
    {
      src = (char *)a3 v6 dword_42020;
      dest = (unsigned int *)&v5[v6];
      v6 = 8;
      des(dest, src);
    }
    while ( n > v6 );
  }
  free(v5);
}


I don't have the time to reverse and test the rest of the process to decrypt the data but it looks like everything you'd need is there.
  • Author
  • Localization

drx, posted Tue Nov 20, 2018 9:25 pm (40558)


Thanks for your time. This is what I found in libslua.so. But I honestly don't know what to do with it. My reverse engineering skill is little to none.

Code:
void __fastcall desECode(const void *a1, size_t a2, char *a3)
{
  char *v3; // r7
  const void *v4; // r9
  size_t n; // ST04_4
  int v6; // r5
  unsigned int v7; // r4
  unsigned int v8; // r6
  char *v9; // r5
  int v10; // r0
  int v11; // r1

  v3 = a3;
  v4 = a1;
  n = a2;
  InitDes();
  v6 = dword_260AC;
  memcpy(v3, "czjzgqde", dword_260AC);
  v7 = 0;
  *(_DWORD *)&v3[v6] = n;
  v8 = desECodeLenth(n);
  v9 = (char *)malloc(v8);
  memset(v9, 1, v8);
  memcpy(v9, v4, n);
  deskey((int)byte_26020, 0);
  if ( v8 )
  {
    do
    {
      v10 = (int)&v9[v7];
      v11 = dword_260B0 v7;
      v7 = 8;
      des(v10, &v3[v11]);
    }
    while ( v8 > v7 );
  }
  free(v9);
}
  • Author
  • Localization

ChaosPower, posted Fri Dec 14, 2018 3:55 am (41376)


I started venturing with this one. I am using edb. Would like to know what tool did you guys use to generate those code block?
Can't run the libslua.so. Sorry for noob question.

EDIT:

Just found out how. Will attempt to search for this too.
  • Author
  • Localization

atom0s, posted Mon Dec 17, 2018 8:49 am (41463)


IDA, code is genned using the HexRays plugin.
  • Author
  • Localization

ChaosPower, posted Tue Dec 18, 2018 2:43 am (41480)


Thanks bro.
  • Author
  • Localization

ChaosPower, posted Thu Mar 07, 2019 7:31 am (45567)


Hi I failed decrypting the texts files maybe someone can send me PM I too is willing to pay for this.
  • Author
  • Localization

atom0s, posted Thu Mar 07, 2019 9:47 am (45571)


If there are certain files you want decrypted, hit me up in PM with them and an offer.
  • Author
  • Localization

jaeker1, posted Tue Jan 17, 2023 12:31 pm (75050)


i ready to pay for this tool
  • Author
  • Localization

jaeker1, posted Wed Jan 18, 2023 1:12 pm (75067)


atom0s wrote:
If there are certain files you want decrypted, hit me up in PM with them and an offer.


reply my PM please
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.