Hacking GW multirom demo

gamesquest1

Nabnut
Former Staff
Joined
Sep 23, 2013
Messages
15,153
Trophies
2
XP
12,247
I am doubtful about the chance being higher considering the data they check is stored in ram (they aren't checking the whole file afaik, they are checking various parts of the payloads they run). I am not sure if the date attributes for the actual files get refreshed in memory, or how often that happens. They'd have to constantly read the attributes from the SD card if they forcefully kept refreshing it, that would hinder performances by quite a bit.
They could be reading the dates of save files as they are loaded from the SD to the cart
 

gamesquest1

Nabnut
Former Staff
Joined
Sep 23, 2013
Messages
15,153
Trophies
2
XP
12,247
Actually thinking about it, didn't some people get bricked just using the region free mod, so there would be no save files :s
Maybe it is just based on system time then....although they might of just been hit by the data integrity check
 

w0dash

noob
Member
Joined
May 29, 2012
Messages
151
Trophies
0
XP
526
Country
Gambia, The
Is the launcher.dat not our own or patched? -> Are you unlucky? -> Has the first file that starts with a "L" a timestamp after 4th of februar? -> Brick.
 

Cyberdrive

Well-Known Member
Member
Joined
Aug 6, 2013
Messages
141
Trophies
0
XP
181
Country
Serbia, Republic of
Could you give me a sequence how it works? Step by step?
From top to bottom, I'd assume.
crcOK() and random():
Gateway put a code in their launcher.dat which roughly works like this:

Code:
if(<low 4bits u32 output from random-number-generator are zero> && <checksum over arm9 code is invalid>)
brick();

The random-number-generator uses the console date for initialization. That's why all the bricks occured after a certain date. The second part checks whether the launcher.dat file itself is legit. Any modification makes the checksum fail and therefore bricks the console.

brick():
Possible that the trigger for the Bricking code has been in the Gateway launcher as to why Official bricks are occurring

and relates to any file on the SD card being dated 4th Feb 2014 or later
so if someone either has a file with that date on there SD card or Puts Forward there Internal clock (for play coin cheating) thus when the 3DS next saves to the SD it creates a file with the date 4th Feb or Later then a Brick could occur

possible Kill Code found

Code:
0x10410,0x10) MMC_SET_BLOCKLEN
 
0x50c1b,0) //PROGRAM_CSD
 
0x50c2a,0x0) setpass
 
0x10410,0x200) MMC_SET_BLOCKLEN
 
  • Like
Reactions: Nightwish

profi200

Banned!
Banned
Joined
Sep 3, 2011
Messages
330
Trophies
0
XP
282
Country
Gambia, The
Could you give me a sequence how it works? Step by step?

Code:
checkGW()
{
          if(crcOK)return;                // Check if the CRC is ok. If the CRC is ok, return and don't execute the other checks
          if(random)return;               // Generate a random number and check, if the number matches the requirement's. If they don't match, return and don't execute the other checks
          if(no_filebefore0x4444)return;  // Check the date of the first file beginning with "L". If the date is before the 04. Feb., return and don't execode the brick routine
          brick()                         // If all checks before don't return, the brick code is executed
}
 

mathieulh

Well-Known Member
Member
Joined
Feb 28, 2008
Messages
378
Trophies
0
Website
keybase.io
XP
897
Country
France
Code:
checkGW()
{
          if(crcOK)return;                // Check if the CRC is ok. If the CRC is ok, return and don't execute the other checks
          if(random)return;              // Generate a random number and check, if the number matches the requirement's. If they don't match, return and don't execute the other checks
          if(no_filebefore0x4444)return;  // Check the date of the first file beginning with "L". If the date is before the 04. Feb., return and don't execode the brick routine
          brick()                        // If all checks before don't return, the brick code is executed
}


Err... 0x4444 isn't February 4, I don't know where you saw that.
0x4444 is an hexadecimal encoded date which translates to Thu, 01 Jan 1970 04:51:16 GMT in the Gregorian calendar.
I am guessing this is a check to make sure they don't brick someone's 3DS if the RTC was reset (the internal battery gone wrong/depleted) or the like.
 

Gabbo04

Active Member
Newcomer
Joined
Jan 20, 2014
Messages
42
Trophies
0
Age
34
XP
65
Country
Italy
They can simply change the date on the final 2.0 (ex: 05 May) so that means nothing, maybe they're waiting for the deadline just to see how many users are gonna brick their console.

I'm not expecting that release before the second week of February. (if the date in the code really means 04 Feb).
 

profi200

Banned!
Banned
Joined
Sep 3, 2011
Messages
330
Trophies
0
XP
282
Country
Gambia, The
Err... 0x4444 isn't February 4, I don't know where you saw that.
0x4444 is an hexadecimal encoded date which translates to Thu, 01 Jan 1970 04:51:16 GMT in the Gregorian calendar.

The date encoding is the same as on the old Nintendo DS. To be honest, i have not looked, what date this exactly is. That's from ichfly.
 

tyons

Well-Known Member
Member
Joined
Jul 11, 2012
Messages
657
Trophies
1
XP
282
Country
Italy
waitwaitwait. does all this mean that if I create a file named something like "L-" with a timestamp prior to february 4 in the SD card, my 3ds with gateway's official launcher will never brick? that would be cool, ahaha

edit: even "Launchar.dat" would work >_>
does the code use alphabetical order?
 

profi200

Banned!
Banned
Joined
Sep 3, 2011
Messages
330
Trophies
0
XP
282
Country
Gambia, The
The date encoding is unclear. It seems. So it can be both the old DS encoding or the new encoding. I will look, which one the filesystem services use.
 

tyons

Well-Known Member
Member
Joined
Jul 11, 2012
Messages
657
Trophies
1
XP
282
Country
Italy
The date encoding is unclear. It seems. So it can be both the old DS encoding or the new encoding. I will look, which one the filesystem services use.

were you, by chance, replying to me? >_>
what do you think about what i wrote? is it theorically possible?
 
D

Deleted User

Guest
The date encoding is unclear. It seems. So it can be both the old DS encoding or the new encoding. I will look, which one the filesystem services use.

The date encoding is the same as on the old Nintendo DS. To be honest, i have not looked, what date this exactly is. That's from ichfly.


You come here stating the date as 4th February as fact but you seem pretty confused yourself. You may as well be pulling it out of thin air. It looks to me you're just parroting what ichfly says without understanding what it means. Makes me wonder what else you say is truth or fiction...
 
  • Like
Reactions: Jojse

profi200

Banned!
Banned
Joined
Sep 3, 2011
Messages
330
Trophies
0
XP
282
Country
Gambia, The
It looks to me you're just parroting what ichfly says without understanding what it means. Makes me wonder what else you say is truth or fiction...

I just said, what he said to me.

Then don't believe it. That makes Gateway even more happy to make more money.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    T @ Texasauras: SOLILOQUY