|
|
View previous topic :: View next topic |
Author |
Message |
duende
Joined: 27 Oct 2006 Posts: 15
|
Posted: Sat Dec 29, 2007 3:06 am Post subject: Rock Band PS2 decrypted main.hdr |
|
|
Seeing as this is probably considered a copyrighted file I won't distribute it here, but let's just say that if you know what an old GH2 main.hdr file roughly looks like, then the decrypted Rock Band main.hdr is easy to locate in a PS2 RAM dump.
Unless someone takes a serious stab at finding the decryption/encryption keys, the above in combination with a patch to the game's executable that makes it skip the decryption, and thus accept an unencrypted main.hdr, is probably the easiest way to create custom versions and/or do a DVD5 relink. |
|
Back to top |
|
|
GameZelda
Joined: 30 Mar 2007 Posts: 1705
|
Posted: Sat Dec 29, 2007 10:25 pm Post subject: |
|
|
Thanks for this. I've located the file name table in the memory, and I've dumped it. I never worked with memory dumps, so I'm not sure how it works.
I have for sure section1 (the file name table) but the DWORD before it is 58000, that if a little bigger than the real size. The part after it doesn't seem anything logic like section2 or section3 too >_> _________________
(Ok, I failed to do it in 24 hours... ).
GH:WT-PS2 Customization Progress
[ 100%] Make it work (w/songs loading) in a DVD5 (thanks psychospacefish!)
[ 100%] Modify audio (Finally done 25/11/2008)
[ 100%] Modify charts (Done 26/11/2008! Customs finally ) |
|
Back to top |
|
|
GameZelda
Joined: 30 Mar 2007 Posts: 1705
|
Posted: Sun Dec 30, 2007 12:55 am Post subject: |
|
|
Well, I found one section3 (file table) entry, and I'm trying to see how it works
The method was just to find manually a VgS!, then load it in PCSX2 and find the offset of the file in memory. _________________
(Ok, I failed to do it in 24 hours... ).
GH:WT-PS2 Customization Progress
[ 100%] Make it work (w/songs loading) in a DVD5 (thanks psychospacefish!)
[ 100%] Modify audio (Finally done 25/11/2008)
[ 100%] Modify charts (Done 26/11/2008! Customs finally ) |
|
Back to top |
|
|
cool--ethan
Joined: 25 Mar 2007 Posts: 244
|
Posted: Sun Dec 30, 2007 1:19 am Post subject: |
|
|
so do or don't you have the Decryption key?
because i was working on decrypting the .hdr for the 360 version and i was using a method of using a password to find the Key, but just blindly thinking of passwords and checking if they worked or not.
so far after 5 or so passwords i got nothing. _________________
My Customs
Goals:
[] FC Jordan not once but twice!!!
[x] come up with a realistic goal
[x] Beat Guitar Hero III before the official release on Sunday october 28th |
|
Back to top |
|
|
duende
Joined: 27 Oct 2006 Posts: 15
|
Posted: Sun Dec 30, 2007 1:25 am Post subject: |
|
|
I don't have the dumped file to hand now, but the data following the string table seemed like they could be offset/size pairs.
The format of the .hdr file has probably changed a bit since GH2, seeing as now 5 ARKs have to be indexed instead of 1, so I wouldn't put too much faith in that 58000 'size' value.
Where in memory did you find the offset for that VGS file? If it's far apart from the string table then it probably means that the decrypted main.hdr was already processed and loaded into separate buffers. |
|
Back to top |
|
|
GameZelda
Joined: 30 Mar 2007 Posts: 1705
|
Posted: Sun Dec 30, 2007 1:42 am Post subject: |
|
|
duende wrote: | I don't have the dumped file to hand now, but the data following the string table seemed like they could be offset/size pairs.
The format of the .hdr file has probably changed a bit since GH2, seeing as now 5 ARKs have to be indexed instead of 1, so I wouldn't put too much faith in that 58000 'size' value.
Where in memory did you find the offset for that VGS file? If it's far apart from the string table then it probably means that the decrypted main.hdr was already processed and loaded into separate buffers. |
It's not too much far. I did just find "199573844" (offset of the first vgs) and found a block with a structure similar to this:
Offset-0?-Filename ID?-Dir ID?-Size-0? (all 32-bit integers, little endian)
I'm totally sure about the filename and the directory IDs, but they probably are. Also, I'm not sure if the last 0 is from the same entry of from the next...
Any idea to find section2? (the one to match the IDs of section 3 with the strings of section 1)
And also, I did find an interesting thing.
I did find the string at the end of the encrypted HDR in google, and found this:
http://forumplanet.gamespy.com/battlefield_2_armored_fury/b49102/5428815/r5428824/
Not anything too much interesting, but it's strange that thing..
EDIT: 58000 *could* be right.
If you go from the same dword (the one with 58000) to 58000 chars more, you reach the next dword. Maybe it works a little differently than GH2 (where that dword was the size of the file name table without padding before of after it.
After that, there's probably section2. The pointers seem totally messed up, probably because they added the memory direction to it. I will see if I can repair it.
(Or maybe it isn't even section2... ) _________________
(Ok, I failed to do it in 24 hours... ).
GH:WT-PS2 Customization Progress
[ 100%] Make it work (w/songs loading) in a DVD5 (thanks psychospacefish!)
[ 100%] Modify audio (Finally done 25/11/2008)
[ 100%] Modify charts (Done 26/11/2008! Customs finally ) |
|
Back to top |
|
|
GameZelda
Joined: 30 Mar 2007 Posts: 1705
|
Posted: Sun Dec 30, 2007 9:51 am Post subject: |
|
|
Well, I've finally associated section2 with section1, so I can now get the folder and the filename of any entry in the offset table
The blocks seem to be like this (Starting at the dword before the file names):
Offset: Contents
0 - DWORD: Size of the file name memory block (including itself)
4 - (size1 - 4): File name table
size1: Size of the string pointers table (in bytes, and seems to have 1 byte more than the real size.
(size1 + 4) - (size1 + size2): String pointers table
After that, there's one dword (probably num. of files) and the offset table starts
Getting section2 real pointers
The best way is to find the minimal value in the table (excluding the pointers to 0).
The minimal value will be by logic the pointer to the first string. So the real pointer will be (value - minimal value) after the start of the first string.
/me realizes that no one understands he
I will try to get section3 now to extract the contents. Anyway, this isn't too useful since we will not still be able to modify the HDR/ARK anyway, and the vgs's seem to be encrypted too _________________
(Ok, I failed to do it in 24 hours... ).
GH:WT-PS2 Customization Progress
[ 100%] Make it work (w/songs loading) in a DVD5 (thanks psychospacefish!)
[ 100%] Modify audio (Finally done 25/11/2008)
[ 100%] Modify charts (Done 26/11/2008! Customs finally ) |
|
Back to top |
|
|
GameZelda
Joined: 30 Mar 2007 Posts: 1705
|
Posted: Sun Dec 30, 2007 10:41 am Post subject: |
|
|
Well, good news
I've successfully made a tool, and now, I have a TXT file with all offsets, sizes, and filenames.
Some offsets are > than the size of the ARK, and sometimes the dword after the offset is 1.
I think that this could mean the layer (0 first layer, 1 2nd layer) and the offset could be "if offset > size 1st ark { offset -= size 1st ark }" then the offset is referred to the 2nd ark in the layer. But I haven't tested it yet.
EDIT: Nope, offset and size are 8 byte
The DTA/DTB files are duplicated. The DTB files seem encrypted, but the DTA files are unencrypted and decompiled, so you can look at them with any text editor!
In long_cheats.dta there's ONLY the unlock all cheat... _________________
(Ok, I failed to do it in 24 hours... ).
GH:WT-PS2 Customization Progress
[ 100%] Make it work (w/songs loading) in a DVD5 (thanks psychospacefish!)
[ 100%] Modify audio (Finally done 25/11/2008)
[ 100%] Modify charts (Done 26/11/2008! Customs finally ) |
|
Back to top |
|
|
duende
Joined: 27 Oct 2006 Posts: 15
|
Posted: Sun Dec 30, 2007 1:05 pm Post subject: |
|
|
I'm not sure what dump you're looking at exactly (i.e. when it was dumped during runtime), but mine has the same size as the encrypted main.hdr, and includes the string table (section 1) and offsets to the files (section 3).
I forgot what the HDR layout looks like, but I'm quite sure this dump is complete and can be used to index the ARKs if parsed correctly - which you seem to have figured out at least partially already.
Of course, as you pointed out, in itself this is of little use other than just extracting the contents of the ARKs, but armed with this knowledge it's easier to locate the decryption code and key. |
|
Back to top |
|
|
GameZelda
Joined: 30 Mar 2007 Posts: 1705
|
Posted: Sun Dec 30, 2007 1:18 pm Post subject: |
|
|
duende wrote: | I'm not sure what dump you're looking at exactly (i.e. when it was dumped during runtime), but mine has the same size as the encrypted main.hdr, and includes the string table (section 1) and offsets to the files (section 3).
I forgot what the HDR layout looks like, but I'm quite sure this dump is complete and can be used to index the ARKs if parsed correctly - which you seem to have figured out at least partially already.
Of course, as you pointed out, in itself this is of little use other than just extracting the contents of the ARKs, but armed with this knowledge it's easier to locate the decryption code and key. |
Now I have no problems to see the ARK. I made a tool that, given the 3 sections, makes a file containing the filename, offset and size.
The problem now are the vgs files. They look encrypted too, and I don't think that is possible to dump them from memory before Rock Band 523 comes out.
The .img.ps2 files are exactly the same as GH2
MIDIs are almost the same just with extra sections.
PSS files seem standard PSS...
DTB files seem encrypted (and the encryption is different than PS2) but they left for some reasong the DTA files, that could help with it.
milo_ps2 files seem similar, but they don't load on Milo Explorer, I'm sure that will just be a small variation like the new X360 milos (maybe even the same).
wav_ps2 files doesn't seem seem the same as in the GH2 WAV's inside milos but they just look like a small header and XA ADPCM samples, I will look at they now too.
Anyway, VGS should be the thing to look at, now. _________________
(Ok, I failed to do it in 24 hours... ).
GH:WT-PS2 Customization Progress
[ 100%] Make it work (w/songs loading) in a DVD5 (thanks psychospacefish!)
[ 100%] Modify audio (Finally done 25/11/2008)
[ 100%] Modify charts (Done 26/11/2008! Customs finally ) |
|
Back to top |
|
|
duende
Joined: 27 Oct 2006 Posts: 15
|
Posted: Sun Dec 30, 2007 2:10 pm Post subject: |
|
|
The VGS files don't look encrypted to me (wouldn't really make sense either), but obviously they are different to GH2 ones, as more tracks have to be interleaved. |
|
Back to top |
|
|
GameZelda
Joined: 30 Mar 2007 Posts: 1705
|
Posted: Sun Dec 30, 2007 2:42 pm Post subject: |
|
|
duende wrote: | The VGS files don't look encrypted to me (wouldn't really make sense either), but obviously they are different to GH2 ones, as more tracks have to be interleaved. |
It looks encrypted to me. Unless it's not XA ADPCM or PCM, it's encrypted, and most PS2 games use XA ADPCM.
If you look at any XA ADPCM file (for example, a GH2 VGS, or a VAG that you can make with MFAudio), you will see something that it's much different than the RB VGS
EDIT: I've finished a tool to extract the MILOs. It's like the 360 version, but in little endian. But I've also found a new thing, that there could be "sub-milos" inside one MILO, and that messes up the MILO structure. I've solved this, but there are still some things left to do. _________________
(Ok, I failed to do it in 24 hours... ).
GH:WT-PS2 Customization Progress
[ 100%] Make it work (w/songs loading) in a DVD5 (thanks psychospacefish!)
[ 100%] Modify audio (Finally done 25/11/2008)
[ 100%] Modify charts (Done 26/11/2008! Customs finally ) |
|
Back to top |
|
|
stupidcarrots
Joined: 29 Mar 2007 Posts: 102
|
Posted: Wed Feb 13, 2008 1:13 pm Post subject: |
|
|
you guys look like you are getting pretty far with this, but did you think of taking your ps2, putting rockband in, and record all dataflow during a song? it would be a ton, but you would easily get the info you need to crack these things open. just a thought... |
|
Back to top |
|
|
Kells
Joined: 23 Aug 2006 Posts: 10
|
Posted: Sat Mar 22, 2008 8:53 am Post subject: |
|
|
the ps2 version of rockband uses the same encryption algorythm that the xbox version of gh2 and rockband use .. which incidentally has been broken... source has even been released ;) ... |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Copyright © 2006-2024 ScoreHero, LLC
|
Powered by phpBB
|