DXExtract

Help spread the word!Share on FacebookShare on TumblrTweet about this on TwitterShare on Google+Share on LinkedInShare on RedditFlattr the author

DXExtract is a general DX archive extractor that is generated by DXLibrary if developers choose to do so.

All DX archives follow the same format, except they may have a unique 12-byte encryption key. The purpose of this program is to allow users to maintain a keystore that the program will use to automatically try each key and attempt to decrypt the archive.

If a game is unsupported but you think it is a DX archive, users can try to figure out the key and update the keystore.

Supported Games

*These games are R18+

Preview

DXExtract Preview

Download

DXExtract

Requirements

.NET Framework 2.0 or above

Usage

The program runs in two modes: window-mode and command-line mode.

Window Mode

To start the program in window-mode, double-click on it or launch the program in command-line without any arguments. The following operations are available:

  • Open archive – drag and drop an archive over the program to try to load an archive
  • Export archive – dump the contents of the archive out
  • Save archive – saves a decrypted version of the archive

If you right-click a file in the navigator panel, you can choose to export just that file. If you right-click a folder, you can export the folder and all files within that folder.

Command-line Mode

You can unpack files directly using command-line by specifying the path to the archive as an argument:

DXExtract.exe yourArchive.dxa

This will unpack the contents in the same directory as the archive.

Note that because of this design, you can literally copy the executable onto your desktop and drop archives over it to unpack them.

Help spread the word!Share on FacebookShare on TumblrTweet about this on TwitterShare on Google+Share on LinkedInShare on RedditFlattr the author

34 Responses

  1. Anarcho says:

    It worked for Repurearia, arigatou!

  2. Vxlle says:

    Hey! Could someone help me decrypting the game Numina from starlit? Please!

  3. Anonymous says:

    Hey if you need more .wolfs for decryption testing here is one from トレジャーハンタークレア~精液を集める冒険家~. It uses the new Wolf RPG encryption so DXExtract doesn’t work on it 🙁 https://mega.nz/#!ooFCGRjK!FI5aaFre8XA6tX_9Jd-tn0jXWjN-6f86bPBidnm0YAY

  4. Anonymous says:

    92F6E4686FCE9032CA1E00A3 Moekuri-Moékuri-1.1.8.9

  5. loveroftehwomens says:

    hello it just says parsing forever game is Moekuri I want to make a mod for this game for others to enjoy. ty for your time as this was the only way I could find to accomplish this task.
    i’ve tried every key inside of keys.ini

    8E57E31998CD9253831E60AF ウワサの宿娘
    F0356B1CFB9BED1D0370E32D Wolf RPG Editor
    8607E9B9CE9ECEB9994E41BC Gensokyo Shiki
    9DF6E8099CC39999914DF0A3 Touhou Labyrinth ~ Special Disk
    55AA2055550655AA55D57C66 楽園魔城リピュアリア
    FFFFFFFFFFFFFFFFFFFFFFFF [Xi] ハイプリアドベンチャー
    9637EF2996D59E52AB0C91A8 Rosenkreuzstilette Freudenstachel
    9DF6E5C88BCE90129B0BF0A3 [Xi] Viocide ~Vore Side Action RPG~
    AD14C4698CEBB077923E32A5 Touhou Labyrinth 2
    760F1A237D5C730C94124E3C Prelude
    B39DA084D737531FF1081880 セックスアイドル48!
    8C57E9C98ACE8A919B0AE0AF [るしまる堂] エロイーター
    CE43C8DC096DA5FECE43BDDC 虚夢の乙女

    • Dogoo says:

      Try adding this to keys.ini – 92F6E4689EC19032CB1E00A – Moekuri

      • Dogoo says:

        Edit: wrong hex code, my mistake, I forgot what I had on the clipboard. Here is the working one for my game – 92F6E4689EC19032CB1E00A3

        • loveroftehwomens says:

          Thank you for the response I really appreciate it. Unfortunately it still just says parsing… at the bottom. I’ve tried to open bmp.dxa, cha.dxa, etc.dxa, basically ANY of the .dxa files. Also when I run it as a command line it doesn’t give me any input just flashes and nothing happens. I’m on Windows 10. My file creation date for these files is from December 17th so I don’t know if that would make a difference for the key. I’m also using japanese locale and running as administrator and it doesn’t matter how large or small the file is it just says Parsing… for a very long time and nothing appears to ever populate in the window.

          • Dogoo says:

            I had it working in the international version V1.00 of the game, I guess you have a newer version of the game and the dev’s are changing the key every time a new update is released, so if you find the key now, you may have to do it all over again when the next update to the game arrives.

            There is a way to find the key if you can read hex, use HxD or Mad Edit and know how to use ollydbg regardless of version.

            Open \Moekuri\Data\etc.dxa directly in a hex editor and try 12 byte long strings starting from offset 00000000 to see if they are the decryption key. (May not be etc.dxa but I’d guess its your best bet for a start clue, the ollydbg method is best for finding the correct file that should hold the correct decryption string.)

            or if have to open the game to dump the key then:

            Attach the running process to ollydbg then go to View -> Handles, then find a open file like \Moekuri\Data\Dat.dxa or \Moekuri\Data\etc.dxa and right click to view the Hex code, if it shows viewable hex code, dump the file to your desktop as a .bin file.

            After dumping the file or files, open it in a program like Mad Edit or HxD and try adding the 12 byte string hex code to keys.ini saving it and repeating until you find the correct string. Remember always start from Offset 00000000.

            I’ve uploaded 2 images of a decrypted version of the International version V1.00 of Moekuri – https://imgur.com/a/gVXq0

            Hopefully I’ve given enough info to help you find the key, it will take a while but you will find it, I won’t be of more help as I didn’t like the game so I won’t be updating it.

            Good luck with your mod and I hope find the key.

        • Tnyx says:

          excuse me, the code is working but how to compress the archive back from extracted file?

  6. Dogoo says:

    Just decrypted Touhoumon Ynk (Shard Of Dreams) and tested opening all the arc files in \dat and it worked.

    The decryption key is – 9B16FE3A98C2A0730B0BB590

  7. Crasharthur says:

    Very interesting, i tried in Mad Father and worked. However the new Mad Father on Steam doesn’t seen to work.
    Any tips that i can do to extract the pictures from there? I want so much the pictures

    • Crasharthur says:

      Answering myself. I know now, the new version of Wolf RPG Editor uses a different decryption. Anyone know the key?

      • Hime says:

        Now I remember. Their archives used to be v3. Now it’s v4. Send a sample (mega or mediafire preferred)

          • Hime says:

            This is a bit interesting. The original algorithm uses a 12-byte key for decryption.

            If we assume the key is broken down into 3 groups of 4 bytes, it looks something like this: AAAA BBBB CCCC

            Now, If I were to apply that to the file and XOR each byte, the header comes out properly, and some files here and there look fine.

            However, if I re-arrange the key to this CCCC AAAA BBBB, suddenly, some other files here and there look fine, and the file entry table appears as well.

            At the very top (after partial decryption), it says it is DX format 6. My tool was written based on format 3, so it is apparent that some things have changed.

            Will need to figure out how the new format works.

          • Hime says:

            Looking a bit closer, we aren’t simply re-arranging them like

            AAAA BBBB CCCC CCCC AAAA BBBB

            Sometimes it’s doing things like this

            CCAA AABB BBCC

            Wondering how it determines when to “shift” the bytes around.

            It may be necessary to treat it as 6 pairs of 2 bytes.

            AA BB CC DD EE FF

            And then from there, shift each one over based on some pattern.

          • Hime says:

            Instead of 32-bit integers, it uses 64-bit integers now. I guess to provide support for archives larger than 2 GB. The overall format has not changed; it’s just the way the data is encrypted that’s a bit weird.

            http://imgur.com/a/UgZ4R

            File table has been parsed. Just need to properly decrypt the data.

          • Crasharthur says:

            Sounds complicate. Are you going to update the Tool anytime soon?

    • Hime says:

      This tool extracts archives that are encrypted using some algorithm that I don’t know.
      I have seen other extractors where the authors have reverse engineered the encryption algorithm, and will attempt to decrypt the archive automatically.

      My tool requires users to supply the decryption key (stored in keys.ini).
      The new Mad Father game may be using a different decryption key, or it may be using a different encryption algorithm, or a completely different archive format.

      If you can provide a sample of the archive you are having trouble with I could take a look. No guarantees though.

      • Anon says:

        9596F8098BDF8A922B1540BE Rosenkreuzstilette

        Also, B39DA084D737531FF1081880 should be renamed to “Wolf RPG Editor v2.10”

        DXv6 archives are created by Wolf RPG Editor v2.20 beta which is available here:
        silsec.sakura.ne.jp/WolfRPGEditor/BBS/BBS_patio.cgi?mode=view2&f=103&no=19

        Transition to uint64 values allows reconstruction of the key from the header (there are enough null bytes) and the last 12 bytes of the file (which are all 0 except one 0x40 byte).
        All files are encrypted with the same key rotated bytewise per file, and the method of rotation can be found from the exe linked above.

        Please update the tool to support DXv6 archives.

        • Anon says:

          C705CA7D8DE3DEF1D90C85F4 Wolf RPG Editor v2.20 beta
          This is the base key used to decrypt the header (first 48 bytes of DXv6 archive). All files and the table of content at the end of the archive are encrypted using variations of this base key, 12 in total (including the key itself), 1 per file and TOC. I forgot to add it to the previous message.

  8. Anon says:

    keys.ini
    95F6EBA9B9EDBDB70B1980A3 Dungeon Town / ダンジョンタウン ~遺跡の森と夢魔の薬~

  9. Aki says:

    hopefully you can expand the program performance to others like RPG, since i mostly play the RPG games, and i want to extract the picture from them

  10. G.W. says:

    download links are down, you should upload them to a better file host site like mega upload or media fire.

  11. Anonymous says:

    Same – Error (429)
    Now I’m sad.

  12. Anonymous says:

    Error (429)
    This account’s links are generating too much traffic and have been temporarily disabled!

  13. mikel says:

    what happen to the download link

Leave a Reply

Your email address will not be published.

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax