Skip to content

Instantly share code, notes, and snippets.

@TuxSH
Last active June 15, 2016 10:45
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save TuxSH/a2ff24d82bdb00ce2c6a35d9cd3f53bc to your computer and use it in GitHub Desktop.
Save TuxSH/a2ff24d82bdb00ce2c6a35d9cd3f53bc to your computer and use it in GitHub Desktop.
Version check before install
/* ... code ... */
for ( i = 0; i < v4; ++i )
{
sub_2F5F4(&v40, &v34, 8);
v7 = sub_2E72C(v41, v42);
v8 = (*(int (**)(void))(*(_DWORD *)v7 + 4))();
if ( v8 < 0 )
{
v9 = v8;
LABEL_18:
v11 = (int *)&v40;
LABEL_30:
sub_3013A(v11);
return v9;
}
v10 = 0;
v39 = v35;
v38 = v34;
while ( 1 )
{
if ( !(*(_BYTE *)(10 * v10 + 0x808E248) | (*(_BYTE *)(10 * v10 + 0x808E249) << 8) | (*(_BYTE *)(10 * v10 + 0x808E24A) << 16) | (*(_BYTE *)(10 * v10 + 0x808E24B) << 24) | *(_BYTE *)(10 * v10 + 0x808E24C) | (*(_BYTE *)(10 * v10 + 0x808E24D) << 8) | (*(_BYTE *)(10 * v10 + 0x808E24E) << 16) | (*(_BYTE *)(10 * v10 + 0x808E24F) << 24)) )
goto LABEL_19;
if ( !sub_39A40(10 * v10 + 0x808E248, &v38, 8) )
break;
++v10;
}
minVer = *(_WORD *)(10 * v10 + 0x808E250);
if ( (unsigned int)newVer >> 10 < minVer )
{
v9 = 0xD8E08027;
goto LABEL_18;
}
LABEL_19:
;
}
/* ... code ... */
; titleID minVersionRequired>>10
RAM:0808E248 TitleEntry < 0x4001000020000, 0xA>
RAM:0808E248 TitleEntry < 0x4001000021000, 9>
RAM:0808E248 TitleEntry < 0x4001000022000, 9>
RAM:0808E248 TitleEntry < 0x4001000026000, 3>
RAM:0808E248 TitleEntry < 0x4001000027000, 6>
RAM:0808E248 TitleEntry < 0x4001000028000, 3>
RAM:0808E248 TitleEntry < 0x4003000008202, 0x1B>
RAM:0808E248 TitleEntry < 0x4003000008802, 9>
RAM:0808E248 TitleEntry < 0x4003000008A02, 7>
RAM:0808E248 TitleEntry < 0x4003000008F02, 0x19>
RAM:0808E248 TitleEntry < 0x4003000009402, 9>
RAM:0808E248 TitleEntry < 0x4003000009802, 0x18>
RAM:0808E248 TitleEntry < 0x4003000009D02, 9>
RAM:0808E248 TitleEntry < 0x400300000A102, 3>
RAM:0808E248 TitleEntry < 0x400300000A602, 9>
RAM:0808E248 TitleEntry < 0x400300000A902, 0xC>
RAM:0808E248 TitleEntry < 0x400300000AE02, 9>
RAM:0808E248 TitleEntry < 0x400300000B102, 6>
RAM:0808E248 TitleEntry < 0x400300000B602, 9>
RAM:0808E248 TitleEntry < 0x4003020008802, 7>
RAM:0808E248 TitleEntry < 0x4003020009402, 7>
RAM:0808E248 TitleEntry < 0x4003020009D02, 7>
RAM:0808E248 TitleEntry < 0x400302000AE02, 7>
RAM:0808E248 TitleEntry < 0x4013000001502, 9>
RAM:0808E248 TitleEntry < 0x4013000001602, 0xB>
RAM:0808E248 TitleEntry < 0x4013000001702, 0xE>
RAM:0808E248 TitleEntry < 0x4013000001802, 7>
RAM:0808E248 TitleEntry < 0x4013000001A02, 6>
RAM:0808E248 TitleEntry < 0x4013000001B02, 3>
RAM:0808E248 TitleEntry < 0x4013000001C02, 0xC>
RAM:0808E248 TitleEntry < 0x4013000001D02, 0xA>
RAM:0808E248 TitleEntry < 0x4013000001E02, 5>
RAM:0808E248 TitleEntry < 0x4013000001F02, 8>
RAM:0808E248 TitleEntry < 0x4013000002002, 2>
RAM:0808E248 TitleEntry < 0x4013000002102, 2>
RAM:0808E248 TitleEntry < 0x4013000002202, 0xB>
RAM:0808E248 TitleEntry < 0x4013000002302, 3>
RAM:0808E248 TitleEntry < 0x4013000002402, 9>
RAM:0808E248 TitleEntry < 0x4013000002602, 0xA>
RAM:0808E248 TitleEntry < 0x4013000002702, 5>
RAM:0808E248 TitleEntry < 0x4013000002802, 8>
RAM:0808E248 TitleEntry < 0x4013000002902, 0xD>
RAM:0808E248 TitleEntry < 0x4013000002A02, 2>
RAM:0808E248 TitleEntry < 0x4013000002B02, 7>
RAM:0808E248 TitleEntry < 0x4013000002C02, 0xD>
RAM:0808E248 TitleEntry < 0x4013000002D02, 0xA>
RAM:0808E248 TitleEntry < 0x4013000002E02, 8>
RAM:0808E248 TitleEntry < 0x4013000002F02, 8>
RAM:0808E248 TitleEntry < 0x4013000003102, 5>
RAM:0808E248 TitleEntry < 0x4013000003202, 0xB>
RAM:0808E248 TitleEntry < 0x4013000003302, 0xD>
RAM:0808E248 TitleEntry < 0x4013000003402, 0xD>
RAM:0808E248 TitleEntry < 0x4013000003502, 7>
RAM:0808E248 TitleEntry < 0x4013000003702, 6>
RAM:0808E248 TitleEntry < 0x4013000003802, 8>
RAM:0808E248 TitleEntry < 0x4013000004002, 8>
RAM:0808E248 TitleEntry < 0x4013000008002, 0x13>
RAM:0808E248 TitleEntry < 0x4013020001602, 0xB>
RAM:0808E248 TitleEntry < 0x4013020001C02, 0xC>
RAM:0808E248 TitleEntry < 0x4013020001E02, 5>
RAM:0808E248 TitleEntry < 0x4013020001F02, 8>
RAM:0808E248 TitleEntry < 0x4013020002202, 0xB>
RAM:0808E248 TitleEntry < 0x4013020002302, 4>
RAM:0808E248 TitleEntry < 0x4013020004002, 7>
RAM:0808E248 TitleEntry < 0x4013020004102, 1>
RAM:0808E248 TitleEntry < 0x4013020004202, 2>
RAM:0808E248 TitleEntry < 0x4013800000002, 0x17>
RAM:0808E248 TitleEntry < 0x4013820000002, 0x17>
@mariogamer2
Copy link

How do you,dev, get all this code from the 3ds hitself?!?! XD

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment