ResExtractor - Quickly update your xml resources

Posts 1–15 of 16 · Page 1 of 2
ResExtractor - Quickly update your xml resources
This was a quick project i made today, it started as an attempt to find out if i could decompile swf files with C#. I managed to find a library called SwfDotNet and it got my hopes up, but after looking through the library source (and seeing it hasnt been updated in years) i found out it wasnt designed for swf's over version 9 (rotmg is version 15). I wasnt able to find any other libraries online that could do what i wanted, so i decided to just cut my losses and make a resource extractor using SwfDotNet library.

This program has a few differences from the previously released PZUpdater by pixelzerg. PZUpdater relies 100% on RABCDasm and runs the client through both rabcdasm's "abcextractor" and "rabcdasm". I was able to add some quick modifications to the SwfDotNet library that allowed me to extract the Objects.xml and Tiles.xml in less then 5 seconds without relying on rabcdasm. But to extract the packets.xml i do have to reply on just the rabcdasm.exe program (since SwfDotNet is outdated). The results are, as far as i can tell, slightly faster when extracting all resources, and much much much faster when only extracting the objects and tiles resources.



To use the program:
1st - Either drag and drop the client swf onto ResExtractor OR open ResExtractor and type in the full path to the client swf
2nd - The program will ask if you want to extract all the resources or just the objects and tiles. Press "1" or "2", then hit Enter.
3rd - wait for the program to finish. It will close automatically when it is done and you should see the xml resources in the same directory as ResExtractor.


Note: you do not need to have rabcdasm on your computer to use this program. If you choose option 1 to extract all resources, the program will check if the rabcdasm program exists in the same directory and if it doesnt it will create it from a resource in its memory.


Scans:
https://virusscan.jotti.org/en-US/fi...job/nadn6p0uhf
https://www.virustotal.com/en/file/a...is/1484327254/


If there are any errors let me know and ill see what i can do to fix it, but im not planning to spend any more time on this project unless absolutely necessary. If you want to play with the source at all then you can download the source.zip and see how it was made. I didnt include the source of the SwfDotNet library that i edited (just the dll) because the project folder was 40mb+ for some reason.

source.zip Scans:
https://virusscan.jotti.org/en-US/fi...job/v6r7w7dyef
https://www.virustotal.com/en/file/1...is/1483763056/

Ive created an updated version of this due to an issue i found. It looks like the GroundTypes (tiles.xml) are now spread out across multiple files just like the objects.xml. Back when i created this, there was only 1 GroundTypes file in the client, so it would just grab the first one it found and call tiles.xml good. But ive been noticing that the last few clients ive extracted from that there were missing tile types in the tiles.xml.

The new version extracts the GroundTypes (tiles.xml) just like it does for the objects.xml. I tested it out and found my tiles.xml file was ~1000 line larger.


So run this the same way as always, nothing new about anything else. The only change is it now grabs all of the GroundTypes it finds.


Scans:
https://www.virustotal.com/en/file/f...is/1492633022/
https://virusscan.jotti.org/en-US/fi...job/nns4s5pjuk


@059 @Ahl can you add this to the first post and remove the older downloads so only this attachment can be downloaded? Thanks!
20170419_ResExtractor_mpgh.net.zip598 KB · 196 downloads Clean
source_mpgh.net.zip3.4 MB · 103 downloads 2/56 malicious
Looks good

Approved
With the new client released i was quick to try out this program again. But upon running the client through the code it encountered an error.... For some reason, one of the object xml's is:
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>

<Objects>


</Objects>
Because of my half-assed way of creating the full Objects.xml file, this xml above threw everything off. Its also because i wasnt doing any checks to make sure everything was valid. Oh well. Either way, it was just a quick 1-2 line fix i threw in the code so it wouldnt crash if it encountered shit like this again.

Scans:
https://virusscan.jotti.org/en-US/fi...job/nadn6p0uhf
https://www.virustotal.com/en/file/a...is/1484327254/
Approved and replaced moved attachment to first post
how to install?

- - - Updated - - -

I think I got problem. http: //pasteboard . co /y2aTsGHNe .png[/IMG]
Quote Originally Posted by nobnana View Post
how to install?

- - - Updated - - -

I think I got problem. http: //pasteboard . co /y2aTsGHNe .png[/IMG]
How are you running it? What operating system are you on? Depending on where you extracted the file to, you might have to run it as administrator. But if you just extract it to somewhere like "Downloads" it should be able to run without admin rights. All i can tell from the image you provided is that rabcdasm failed to run because the .abc file wasnt found. I used this on the most recent client build and it didnt have any issues for me, so any additional info would be helpful in figuring out why it didnt work for you.
and this is how you update hacked clients now??
Quote Originally Posted by zacothino View Post
@[MPGH]Ahlwong : @Ahl please check the new nilly's reborn
why are you posting this on this thread? wtf.


Quote Originally Posted by nomadd View Post
and this is how you update hacked clients now??
no.
Now make it automatically download the swf
What does updating the xml resources do? when and why should I do it?
Quote Originally Posted by bobbyota4 View Post
What does updating the xml resources do? when and why should I do it?
It can be used for updating KRelay
Approved and replaced attachment
This needs to be stickied
Might have a use for this in the future.
Posts 1–15 of 16 · Page 1 of 2

Post a Reply

Similar Threads

Talk with us