Converting .3DS to .CIA for Dummies!

edit: I can't emphasize this enough.
If there are errors, check the guide under T5 first, then learn how to report from there ><


Converting .3DS/3DZ to .CIA Pictorial

Hopefully noob friendly!​

UPDATED! V5.1.4b @ UTC+8 2.45am 24-Nov-14:

Updated calling routine:​
Most questions all in front, so that users can doze off after​
Included the most recent exinjector & rsfgen.py​
Testing 32-bit compatibility​
Note: Haven't updated tutorial, but the prompts should be fool proof.​


Table of contents.
T1 - Disclaimer​
T2 - Basics​
T3 - Requirements​
_____What you need to know, what programs to have.
T4 - The Main Tutorial​
_____Steps 0, 1 & 2.
T5 - Reference code (and how to report errors)​
_____Reference code 1 - 5, Faux errors, how to report errors
T6 - [The not so] Frequently Asked Questions (FAQ)​
_____Is it region free, does .3DZ work, help w/ errors, what not to do
T7 - User Guides and Credits!!!​
_____Valiant effort by our community.
Control+Find the header number (eg: T5 ) to jump to the section!​



T1 - Disclaimer

gbaTEMP and I shall not be responsible for your own misdoing and misdeeds.
Use at your own risk! ;P

T2 - Basics

What are .cia files?​
Basically a somewhat stripped down decrypted version of .3DS files.​
You can't just rename .3DS > .CIA, you have to carry out a set of slightly complicated steps,​
which I have tried to get it dummified.​
Make sure you follow the steps concisely.​

Now, purpose of this tutorial is to guide users to convert 3DS games (not warez, not dev apps) to .CIA files for installation.​
Does not matter whether .3DS or .3DZ, and scene roms won't need to add 'header' to go online (GW users should know what's I'm talking about)​


T3 - Requirements

First off, these are the requirements:​
  1. Using a 3DS that is FW 4.1-4.5 (also known as FW 4.X)
    I recommend that these users get a Gateway 3DS.
    .
  2. A DS flashcart that works on your 3DS, for loading DS profile exploit
    Supercard DStwo or GW blue card (r4i) works.
    Gateway loader works fine. (cannot link you the link)
    .
  3. Install 2.7 Python. You can find it will a quick Google search.
    Or just download the one for your computer from here:
    https://www.python.org/download/releases/2.7/
    .
    ..
  4. This package.
    Paste it on your desktop, in a folder named "CIA"
    http://filetrip.net/3ds-downloads/utilities/download-quenopack-3ds-to-cia-5-1-4b-f33005.html

    Please the files in the folders they were in.
    The program reads the stuff based on the location!
    I will not provide the 7.x key. To find it, simply search the guy who leaked it. ><
    .
  5. A game backup (rom)
    .
  6. Patience, and not fearful of looking at folders with multiple items!
Okay, let's get started.



T4 - The Main Tutorial

Video Version:It's based on older revisions, but still counts.
Thanks to TeamNinja for uploading, and DrWhoJan who brought it to our attention!


Step 0: Tools usage and folder placement
Okay before we begin,
a short reminder: strictly please use only the tools I provided for this tutorial:
http://filetrip.net/3ds-downloads/utilities/download-quenopack-3ds-to-cia-5-1-4b-f33005.html

The folder layout and location of the files are to be the same,
as I have optimized the calling procedure of the .bats (the programs).

Unless you have a working understanding of reading those and modifying them to your liking,
I suggest you follow as I have provided :)

As an addition, follow the images to unblock the .rar, before unzipping:
2CnQzzS.jpg

Step 1: Decrypting the Rom
1a. Getting ncchinfo.bin
Go to CIA\Step 1
Paste your rom in this folder.
Rename it to "rom.3ds"

PL7i0Of.jpg


Drag the rom.3ds onto ctrKeyGen
A file called ncchinfo.bin will be in your directory.

PP2d2Vb.jpg


Now, go to CIA\For 3DS SD Card
Copy the launcher you use over to your 3DS SD card.
I will not provide slot0x25KeyX.bin, so find it yourself.
When you the value, HXD into a blank file, and save as slot0x25KeyX.bin
S5pjz4H.jpg


Also copy and paste ncchinfo.bin into the root of the 3DS SD card.

pxb4yYC.jpg


Now insert SD card back into your 3DS

1b. Getting xorpads
Go to your 3DS.
Run System Settings > Other Settings > Profile > Nintendo DS Profile
n0AavEQ.jpg

5Rc1S0H.jpg

NwOqJMT.jpg

2IjMk6y.jpg

The program will load and run.
Allow it to run until it tells you, that you can turn off your 3DS.

yLff9EH.jpg

YlpCabp.jpg


Once done, insert your SD card back on your computer.
Copy only these xorpads to this directory:
CIA\Step 2
Not every rom provides exefs_7x.xorpad. If you do see it, you must copy it!
Only copy manual.romfs.xorpad if you want to have a user manual option on home screen.

Fo9jCzq.jpg

If you game has Download Play support, and you want it,
copy this too:
5KvoodX.jpg

Step 2: Decrypting + Compiling the .cia!
Move rom.3DS to CIA\Step 2

XipcAm6.jpg


Drag and drop or Double click on 'decrypt and make.bat'

tLI1w0u.jpg


Hit enter, and it will run.
The latest update has all the questions at the start of the process,
so one may mostly doze off and wait after doing so.
The image that says it all!
VZ2EdYp.jpg


When you see this, you are at the end of the program!
If you see install.cia, it means you were successful!

WCurpGN.jpg

"But Queno138, I want to repack another rom, must I unpack again?"
No!
This feature allows you to repack, as long as you have the items there.
It's been around since, 2.0? I just never properly documented it.
5JC08On.jpg


After this image, go up to (continue)

Installation Success!
gCXgRFI.jpg

Custom rsf guide:
OeBfnFQ.jpg


T5 - Reference Codes (and how to report errors)


Reference codes has appeared in the batch program, for ease of referencing.

Genuine Errors
Reference code 1: Required .bins not located.
4KYeogO.jpg

If the required .bins for the operation is not found,
it means that either you deleted it, or it could not be extracted, due to decryption error.

Associated with (and fix):
1. Invalid slot0x25KeyX.bin for FW 7x games (refer to guide on how to acquire it correctly)
2. Files have been moved (kindly keep them in the same place as guide dictates)
3. Decryption error. (Delete everything and try again.)
4. Mismatched tools (Ensure you are using the tools provided)


Reference code 2: rom.3ds not located.
Uxw5lzg.jpg

Decryption cannot be done without the exact file, "rom.3ds"

Associated with (and fix):
1. rom name is not rom.3ds (Kindly rename the rom to rom.3ds)
2. rom not in folder (kindly place rom.3ds in Step 2)


Reference code 3: xorpad not located.
FR5pUbq.jpg

Xorpads are required for decryption

Associated with (and fix):
1. xorpad not named as per guide (simple, eg: 01.exefs_norm.xorpad)
2. xorpad not in directory (don't forget to transfer over the xorpad from 3DS SD card)


Reference code 4: Tools folder not found
R9j5cda.jpg

Tools are required for the operation.

Associated with (and fix):
1. Tools folder has been renamed. (It needs to be named "tools")
2. Tools folder has been moved. (Move it back to the original directory)
3. Tools folder lost. (Redownload and extract the whole package)


Reference code 5: Folders located before decryption
tWxh7lf.jpg

This message only pops up when you have chosen to decrypt a rom.

Associated with:
1. Exefs, Encrypted_bin, decrypted, xorpad folder exists. (delete them before decrypting new rom)
2. Selected choice by accident. (ignore, proceed to pack rom.)

Faux errors:
Some of the text displayed tends to scare users.
If you get any one of these, please don't report, as it's not an error.
VkD4En9.jpg

DcQ4XQY.jpg

Reference code not shown/code persists:
If code persists, or error with no code:
Do us a favor and save each other some time.
Before showing errors,
ensure that:
1. you downloaded the lastest package.
2. followed the tutorial to the latter
3. did not use express
If error still occurs:
1. What Game you are using
2. Inform me if you are using CFW or GW
3. Tell me what error you get in game (or if you don't reach there)
4. screenshot \exefs, \decrypted, \xorpads, \step 2
5. show me the error page on the normal bat

this way, easier for me to identify the error.


T6 - [The not so] Frequently Asked Questions (FAQ)


What must I not do?
Don't go into sysnand and check data management. (content will be deleted)
Don't forget to back up data when necessary (to prevent losing saves)
Don't forget to read T5 of my guide regarding errors. (to not plague this thread)
Don't format 3DS for no reason (I mean, imagine one day you need to upgrade, and can't connect to NNID or something)
Don't update firmware in CFW (cause it stops working)



How to install .cia files
What, you're here without knowing!?
Basically, get Devmenu or bigbluemenu (can't tell you where)​



Will I be able to delete them afterwards?
Devmenu and BBM has options for deleting them.​
Just don't delete your updates or important warez by mistake.​
Check the ID against http://3ds.essh.co/



Does this require FW 4.5 like other exploits
.....​
You think?​
</sarcasm> YES



Does this work with trimmed roms?
YES! (link)​



Does this work with FW 7.X games?
GW = YES!
CFW = NO.
And before you ask, if there were any workarounds​
(well, besides obviously getting a GW that is so worth it now),​
I'll be happy to share.​



Does your tutorial contain "region free and firmware spoofing"?
YES!


Does the package support download play?
YES!



Does this work with .3DZ?
YES!
After all, it's just a file extension. doesn't affect conversion.​



Does your tutorial contain "user manuals"
YES!



I have an existing save on Gateway. Why is it not on the .cia game?
Imagine the .cia game being like an eshop game.​
Every game comes with a new save.​



Are saves brought forward?
NO.
Because that's not how the mechanics of conversion works.​
Gateway makes the redcard 'find and see' the saves, not the homepage apps.​



What about nand saving/card2?
NO.
But ONLY for card2, you can use savefiler or save data transfer tool.​
If you were already playing your roms as a card2, go ahead and transfer :)



Why can't I modify to card2 then transfer?
By making it card2, you broke the header,​
which the 3DS will check if the save is corrupt before transfer.​
Based on the chain of events mentioned, it is considered corrupted.​



Can user manuals be repacked together?
YES!
Take note that if using different region game,​
enable region free.​



Does this work with VC roms?
NO (link) or YES? (link)​
Try it yourself!​



Does this conversion method work with Dev apps (devmenu and SDK stuff)
NO!
However, link to show you how to get them converted: (link)​



Do I need .rsf files?
Up to you. The batch program will generate one for you,​
but if you follow the prompt, you can insert your own.​
Not all work at the moment.​



Can I load games above 4.5 on CFW?
From what I know, some games require firmware spoofing​
and the FW6/7 games is a big NO



Where can I find slot0x25KeyX.bin/7.X keys?
Can't tell you where. But I know who has it (the guy you leaked it, duh)​
get it, type it in hex using HXD, save as slot0x25KeyX.bin​
Paste it into your SD card.​



Why do I see no errors but there is no .cia?
Most likely you are using express. IF you are noob, just don't.​
Chances are it's decryption or your key 7 is wrong.​
Go to section T5, it'll teach you something.​



It says not enough memory, why? I have x GB ram.
Well, your computer probably already runs a lot of processes,​
and packing the rom can take up to 2-3x it's original size.​

Don't tell me you got 16GB ram.​
Just go o into safe mode, and launch the .bat there.​
As long as the folders are still there,​
you can choose to continue with repacking, without re-depacking.​
If it still doesn't work,​
rename _makerom.exe to makerom.exe and try again.​
I've already added a new makerom to circumnavigate that,​
but I still recommend keeping your processes low.​



Help, can't drag and drop on python
try either option:​
put this into a .bat
Code:
c:\Python27\python.exe" ctrKeyGen.py %1
then drag and drop the rom.3ds onto the .bat

Or

Code:
regedit
 
[HKEY_CLASSES_ROOT\Python.File\shellex\DropHandler]@="{60254CA5-953B-11CF-8C96-00AA00B8708C}"
 
[HKEY_CLASSES_ROOT\Python.NoConFile\shellex\DropHandler]@="{60254CA5-953B-11CF-8C96-00AA00B8708C}"
 
[HKEY_CLASSES_ROOT\Python.CompiledFile\shellex\Drop Handler]@="{60254CA5-953B-11CF-8C96-00AA00B8708C}"

What is the express.bat in your package
It's a program NOT for noobs.​
It doesn't ask questions; simply repacks if there are folders,​
decrypt and unpack if there are xorpads​
Doesn't prompt, just runs.​
It has some preset settings.​
It won't decrypt the whole romfs.bin. Creates its own rsf.​
Due to it's nature, error prompts might be skipped.​
So I repeat,​
It's a program NOT for noobs.​



Help, my errors aren't resolved!
Do us a favor and save each other some time.​
Before showing errors,​
ensure that:​
1. you downloaded the lastest package.​
2. followed the tutorial to the latter​
3. did not use express​
If error still occurs:​
1. What Game you are using​
2. Inform me if you are using CFW or GW​
3. Tell me what error you get in game (or if you don't reach there)​
4. screenshot \exefs, \decrypted, \xorpads, \step 2​
5. show me the error page on the normal bat​
this way, easier for me to identify the error.​
Wondering if you have a faux error?​
Ctrl Find "T5"​

T7 - User Guides and Credits!!!


Palantine and the CFW and CIA guide that (almost) started it all!:​
gamesquest1; the first ever decrypting guide I could understand:​
ryanrocks462, which I also cross refer to:​
Versehell's also very comprehensive guide:​
Liomajor's first most automatic guide:​
piratesephiroth's Exinjector!​
Kyogre123's savedatafiler tutorial​
relys and the NCCH/SD programs!​
ground, whom I never spoke to, but I thank your efforts in Exheader research!​
Vappy's, rsfgen.py!​
Also to neimod, 3DSguy, 3Dbrew, and many others that slipped my mind!​
And last but not least,​
everyone on gbatemp :)


I'm not reinventing the wheel, I'm merely gathering all information into one.
 

GibWaffles

Active Member
Newcomer
Joined
Nov 6, 2014
Messages
42
Trophies
0
XP
116
Country
Slovenia
This has probably been answered, but I'm to lazy to check. How do I stop Make descapp4 cia.bat from running out of memory. It works fine for most roms, but when I try to compile Bravely Default it always crashes and reports that it ran out of memory. (It's not using even half of it though).
 

VerseHell

Well-Known Member
Member
Joined
Jun 29, 2014
Messages
3,076
Trophies
1
Age
30
XP
1,688
Country
France
This has probably been answered, but I'm to lazy to check. How do I stop Make descapp4 cia.bat from running out of memory. It works fine for most roms, but when I try to compile Bravely Default it always crashes and reports that it ran out of memory. (It's not using even half of it though).

Check if you're using the 32bits or the 64bits version of makerom.
 

Reecey

Mario 64 (favorite game of all time)
Member
Joined
Mar 7, 2010
Messages
5,870
Trophies
2
Location
At Home :)
XP
4,488
Country
I also made a guide for 3ds to cia conversion if it helps, it automatically add the game manual if there's one and it can delete the decrypted files in the end if you want:

Download this : http://jheberg.net/captcha/3ds-cia-conversion-tools-7x-encryption-support-v3/

1.If you still don't have it install 2.7 Python (not 3.4 or any other version)

2. Put your rom in the folder, run rom_tool info.bat, enter your rom name without the .3ds extension and edit the rsf file with the right informations.

3. Drag on drop your rom on the ctrKeyGen.py file, it will gnerate a ncchinfo.bin. Put it on your sd card root.

4. In the For the 3DS SD card. Open slot0x25KeyX.bin in a HEX editor and replace the 0 with the proper key. (Use Google) Put it and the launcher.dat in you sd card.

5. Put the sd card back on your console, go to System Settings -> Other Settings -> Profile -> Nintendo DS Profile and wait for the xorpads to be generated. Put the "Main" xorpads in the main folder.


Then :

If you want to remove the region lock :

- Run unpack.bat ((with or without 7.X xorpad) if you have a exfs_7x.xorpad file or not) and enter your rom name without the .3ds extension

- Follow Gadorach's instructions here : https://gbatemp.net/threads/4-x-only-cia-cfw-complete-guide.373532/page-50#post-5149465 (works with Hex Worshop, just enter 2018 in the search bar)

- Run makerom.bat, enter the filename you want (without extension).

Else

- Just run unpack-makerom.bat ((with or without 7.X xorpad) if you have exfs_7x.xorpad file or not) , enter your rom name without the .3ds extension.


EDIT : Added 7.X encryption game support. (only on gateway for now)
EDIT2 : Added the MEX.py file, for the 7.X xorpads.
EDIT3 : Fixed the exheader xorpad not found problem in the unpack-makerom bat files.


Thanks again for your help. I'm a little stuck at this bit:

4. In the For the 3DS SD card. Open slot0x25KeyX.bin in a HEX editor and replace the 0 with the proper key. (Use Google) Put it and the launcher.dat in you sd card.

So I have for example your bin file: slot0x25KeyX.bin & *********.bin 7.x key bin file, so you say use Hexeditor which you open both .bin files with, so what do you change?, is it the whole of the first line or not, copy & paste the whole line over to your .bin file and save? 000000 to whatever the 7.x key says on that line 000000 31 6c etc.?. I'm not sure what you are supposed to do exactly at that bit because opening your key with Hexeditor has nothing in it, its just a blank file? Can you not just put the 7.x .bin file on the sd card instead of yours with the launcher file and run it on your 3DS? would that not work that way to generate the xorpads? Thanks :)
 

VerseHell

Well-Known Member
Member
Joined
Jun 29, 2014
Messages
3,076
Trophies
1
Age
30
XP
1,688
Country
France
Thanks again for your help. I'm a little stuck at this bit:

4. In the For the 3DS SD card. Open slot0x25KeyX.bin in a HEX editor and replace the 0 with the proper key. (Use Google) Put it and the launcher.dat in you sd card.

So I have for example your bin file: slot0x25KeyX.bin & *********.bin 7.x key bin file, so you say use Hexeditor which you open both .bin files with, so what do you change?, is it the whole of the first line or not, copy & paste the whole line over to your .bin file and save? 000000 to whatever the 7.x key says on that line 000000 31 6c etc.?. I'm not sure what you are supposed to do exactly at that bit because opening your key with Hexeditor has nothing in it, its just a blank file? Can you not just put the 7.x .bin file on the sd card instead of yours with the launcher file and run it on your 3DS? would that not work that way to generate the xorpads? Thanks :)


Open the slot0x25KeyX.bin in a HEX Editor (like Hex Workshop) then replace the 0 like this

Before :
1415458932-before.png


After :
1415458938-after.png
 

Reecey

Mario 64 (favorite game of all time)
Member
Joined
Mar 7, 2010
Messages
5,870
Trophies
2
Location
At Home :)
XP
4,488
Country
Open the slot0x25KeyX.bin in a HEX Editor (like Hex Workshop) then replace the 0 like this

Before :
1415458932-before.png


After :
1415458938-after.png

So you just copy & paste the first line over or do you have to manually change the 0's, then save and exit? Is that all you need in the file 1 line to work?
 

VerseHell

Well-Known Member
Member
Joined
Jun 29, 2014
Messages
3,076
Trophies
1
Age
30
XP
1,688
Country
France

Habbert

Well-Known Member
Member
Joined
Nov 29, 2013
Messages
147
Trophies
0
Age
32
XP
185
Country
Canada
FAQ:

Can installed .cia's be used to play online?
Can installed .cia's be used to play local multi-player?
What about region locking?
 

placebooooo

Well-Known Member
Member
Joined
Aug 9, 2013
Messages
817
Trophies
0
Age
29
Location
Philadelphia
XP
1,151
Country
United States
Y
That time has arrived!

Converting .3DS/3DZ to .CIA Pictorial

Hopefully noob friendly!


Disclaimer

gbaTEMP and I shall not be responsible for your own misdoing and misdeeds.
Use at your own risk! ;P

Basics

What are .cia files?
Basically a somewhat stripped down decrypted version of .3DS files.
You can't just rename .3DS > .CIA, you have to carry out a set of slightly complicated steps,
which I have tried to get it dummified.
Make sure you follow the steps concisely.

Now, purpose of this tutorial is to guide users to convert 3DS games (not warez, not dev apps) to .CIA files for installation.
I recommend that your games already have the header for online use.
So far all my converts could access online, but maybe it's because they are all custom dumps.
(Well, except for Pokemon X, but I was using my Pokemon Y header)



Requirements

First off, these are the requirements:
  1. Using a 3DS that is FW 4.1-4.5 (also known as FW 4.X)
    I recommend that these users get a Gateway 3DS.
    .
  2. Install 2.7 Python. You can find it will a quick Google search.
    Or just download the one for your computer from here:
    https://www.python.org/download/releases/2.7/
    .
    ..
  3. This package contains everything.
    Paste it on your desktop, in a folder named "CIA"
    https://www.dropbox.com/s/x97c75and8dtkeo/CIA without 7.x key.rar?dl=0

    Please the files in the folders they were in.
    The program reads the stuff based on the location!
    edit: I removed 7.x key. To find it, simply search the guy who leaked it. ><
    .
  4. A game backup (rom)
    [Today, I'll be using Super Mario 3DLand]
    .
  5. Patience, and not fearful of looking at folders with multiple items!
Okay, let's get started.​



The Main Tutorial
Step 0: Tools usage and folder placement
Okay before we begin,
a short reminder to use the tools I provided.

The folder layout and location of the files are to be the same,
as I have optimized the calling procedure of the .bats (the programs).

Unless you have working understanding of reading those and modifying to your liking,
I suggest you follow as I have provided :)

Step 1: Decrypting the Rom
1a. Getting ncchinfo.bin
CIA\Decrypt 3DS
Paste your rom in this folder.
Rename it to "rom.3ds"

QKp1yB9.jpg


Drag the rom.3ds onto ctrKeyGen
A file called ncchinfo.bin will be in your directory.

dKWFemb.jpg


Now, go to CIA\For 3DS SD Card
Extract contents from "extract me first please".
EDIT: the content is key 7 file. I removed it, so please find it yourself :/slot0x25KeyX.bin is the name required.

yUpeXni.jpg


Take the content, ncchinfo.bin and the launcher you use,
and paste into the root of the 3DS.

4rr50mH.jpg


Now insert SD card back into your 3DS

1b. Getting xorpads
Go to your 3DS.
Run System Settings > Other Settings > Profile > Nintendo DS Profile
n0AavEQ.jpg

5Rc1S0H.jpg

NwOqJMT.jpg

2IjMk6y.jpg

The program will load and run.
Allow it to run until it tells you, that you can turn off your 3DS.

yLff9EH.jpg

YlpCabp.jpg


Once done, insert your SD card back on your computer.
Copy only these xorpads to this directory:
CIA\Workdir

pg8hLN6.jpg

1c. Decryption time
Move rom.3DS to CIA\Workdir

69H1ALP.jpg


At this point, you need the highlighted items in here.

DFeRtbi.jpg


Double click on 'unpackv3.bat'

yYoYPsi.jpg


File name is "rom.3ds", and hit Enter

Allow it to run, and wait for "Press any key to continue".
Then hit enter again.
MmDR0DV.jpg


If successful, you will see the highlighted folders,
and no .xorpad to be seen.
Wq2Na7N.jpg

Step 2: Preparing for compiling
2a. Modifying the CIA.RSF file
Open CIA.RSF with notepad
and open ROM.3DS on 3DSExplorer.
Use image as reference

90AhaNX.jpg


If you wanna check your save size:
4Ugk1bv.jpg

Once done, save and close notepad.
and close 3DSExplorer.

Example of completed RSF file:
Code:
BasicInfo:
  Title                  : "Super Mario 3DLAND" # Change this
  CompanyCode            : "01" # Change this
  ProductCode            : "CTR-P-AREE" # Change this
  ContentType            : Application
  Logo                    : Nintendo
 
TitleInfo:
  UniqueId                : 0x0540 # Change this
  Category                : Application
 
Option:
  UseOnSD                : true
  EnableCompress          : true
  FreeProductCode        : true
  EnableCrypt            : true
  MediaFootPadding        : true
 
AccessControlInfo:
  UseExtSaveData : true
  ExtSaveDataId: 0x0540 # Change this
  SystemSaveDataId1: 0x00000000
  SystemSaveDataId2: 0x00000000
  OtherUserSaveDataId1: 0x00000
  OtherUserSaveDataId2: 0x00000
  OtherUserSaveDataId3: 0x00000
  UseOtherVariationSaveData : false
 
SystemControlInfo:
  SaveDataSize: 128KB # Change this
  RemasterVersion: 0
  StackSize: 0x00040000
  JumpId: 0x0004000000054000L # plaintext exheader (<full UniqueID>L)
2b. Ensuring required files are in place
p0xKYrm.jpg

Step 3: Compiling the .cia!
At this point, I must say I don't know what's the difference between descapp1 and descapp4, but I always use 4 (I'm on GW with Emunand).

Just double click the one you want!

HiPubVt.jpg


Now wait till you see below, then hit enter!

ngSrOUg.jpg


If you see install.cia, it means you were successful!
LxKEABG.jpg

Common mistakes that leads to errors
Right before Step 3, lack of these items inside Exefs folders,
due to depacking error, which is due to lack of right xorpad or rom.3ds
TAxXqQu.jpg


More to come.. when reported..

As 'proof, my example while creating this pictorial, works:
SEDCZik.jpg

aaIMHew.jpg

SEovotw.jpg



Reports on games that have failed (so far)

Here to report on games that have failed.
With given time, I'll verify the reports and add them to the "Personally" list
Any tests by other users showing them to work, and I'll remove it from the list.

Personally:
Pokemon Art Academy (US) [hangs on 3DS loading screen]
Mario Golf World Tour (US) [loads game, then crashed with "An error has occured"]
Mario Kart 1.1 (EUR) [loads game, then crashed with "An error has occured"]

From users:
Monster hunter 4G (J)
Azure Striker Gunvolt (US)
Fantasy Life (EU) [loads game, then crashed with "An error has occured"]
Shin Megami Tensei (?)
Fire Emblem Awakening (?)


.RSF library

Need advice on .RSF?
Not sure if yours is working?
Look no further!
I've collated an archive of .RSF from users, that are working!

VerseHell's
Mario Kart 7 (EUR):
Code:
BasicInfo:
  Title                  : "MK7" #edit
  CompanyCode            : "01" #edit
  ProductCode            : "CTR-P-AMKP" #a remplacer
  ContentType            : Application
  Logo                    : Licensed # Nintendo / Licensed / Distributed / iQue / iQueForSystem
 
RomFs:
  # Specifies the root path of the file system to include in the ROM.
  #HostRoot                : "decrypted/romfs"
 
 
TitleInfo:
  UniqueId                : 0x00307 #edit
  Category                : Application
 
CardInfo:
  MediaSize              : 1GB # 128MB / 256MB / 512MB / 1GB / 2GB / 4GB #edit
  MediaType              : Card1 # Card1 / Card2
  CardDevice              : NorFlash # NorFlash(Pick this if you use savedata) / None #Choose None if it's a card2 game
 
Option:
  UseOnSD                : true # true if App is to be installed to SD
  FreeProductCode        : true # Removes limitations on ProductCode
  MediaFootPadding        : true # If true CCI files are created with padding
  EnableCrypt            : true # Enables encryption for NCCH and CIA
  EnableCompress          : true # Compresses exefs code
 
ExeFs: # these are the program segments from the ELF, check your elf for the appropriate segment names
  ReadOnly:
  - .rodata
  - RO
  ReadWrite:
  - .data
  - RO
  Text:
  - .init
  - .text
  - STUP_ENTRY
 
PlainRegion: # only used with SDK ELFs
- .module_id
 
AccessControlInfo:
  #UseExtSaveData : true
  #ExtSaveDataId: 0x00307 #same as UniqueId
  #SystemSaveDataId1: 0x00000000 # plaintext exheader
  #SystemSaveDataId2: 0x00000000 # plaintext exheader
  #OtherUserSaveDataId1: 0x00000 # plaintext exheader
  #OtherUserSaveDataId2: 0x00000 # plaintext exheader
  #OtherUserSaveDataId3: 0x00000 # plaintext exheader
  #UseOtherVariationSaveData : false
 
 
SystemControlInfo:
  SaveDataSize: 1MB
  RemasterVersion: 0
  StackSize: 0x40000
  JumpId: 0x0004000000030700L #edit, plaintext (0x000400000XXXXX00L, Replace the X with the unique ID)
 
# DO NOT EDIT BELOW HERE OR PROGRAMS WILL NOT LAUNCH (most likely)
 
AccessControlInfo:
  FileSystemAccess:
  - Debug
  - DirectSdmc
  - DirectSdmcWrite
 
  IdealProcessor                : 0
  AffinityMask                  : 1
 
  Priority                      : 16
 
  MaxCpu                        : 0x9E # Default
 
  CoreVersion                  : 2
  DescVersion                  : 2
 
  ReleaseKernelMajor            : "02"
  ReleaseKernelMinor            : "33"
  MemoryType                    : Application
  HandleTableSize: 512
  IORegisterMapping:
  - 1ff50000-1ff57fff
  - 1ff70000-1ff77fff
  MemoryMapping:
  - 1f000000-1f5fffff:r
  SystemCallAccess:
    ArbitrateAddress: 34
    Break: 60
    CancelTimer: 28
    ClearEvent: 25
    ClearTimer: 29
    CloseHandle: 35
    ConnectToPort: 45
    ControlMemory: 1
    CreateAddressArbiter: 33
    CreateEvent: 23
    CreateMemoryBlock: 30
    CreateMutex: 19
    CreateSemaphore: 21
    CreateThread: 8
    CreateTimer: 26
    DuplicateHandle: 39
    ExitProcess: 3
    ExitThread: 9
    GetCurrentProcessorNumber: 17
    GetHandleInfo: 41
    GetProcessId: 53
    GetProcessIdOfThread: 54
    GetProcessIdealProcessor: 6
    GetProcessInfo: 43
    GetResourceLimit: 56
    GetResourceLimitCurrentValues: 58
    GetResourceLimitLimitValues: 57
    GetSystemInfo: 42
    GetSystemTick: 40
    GetThreadContext: 59
    GetThreadId: 55
    GetThreadIdealProcessor: 15
    GetThreadInfo: 44
    GetThreadPriority: 11
    MapMemoryBlock: 31
    OutputDebugString: 61
    QueryMemory: 2
    ReleaseMutex: 20
    ReleaseSemaphore: 22
    SendSyncRequest1: 46
    SendSyncRequest2: 47
    SendSyncRequest3: 48
    SendSyncRequest4: 49
    SendSyncRequest: 50
    SetThreadPriority: 12
    SetTimer: 27
    SignalEvent: 24
    SleepThread: 10
    UnmapMemoryBlock: 32
    WaitSynchronization1: 36
    WaitSynchronizationN: 37
  InterruptNumbers:
  ServiceAccessControl:
  - APT:U
  - $hioFIO
  - $hostio0
  - $hostio1
  - ac:u
  - boss:U
  - cam:u
  - cecd:u
  - cfg:u
  - dlp:FKCL
  - dlp:SRVR
  - dsp::DSP
  - frd:u
  - fs:USER
  - gsp::Gpu
  - hid:USER
  - http:C
  - mic:u
  - ndm:u
  - news:u
  - nwm::UDS
  - ptm:u
  - pxi:dev
  - soc:U
  - ssl:C
  - y2r:u
  - ldr:ro
  - ir:USER
 
 
SystemControlInfo:
  Dependency:
    ac: 0x0004013000002402L
    am: 0x0004013000001502L
    boss: 0x0004013000003402L
    camera: 0x0004013000001602L
    cecd: 0x0004013000002602L
    cfg: 0x0004013000001702L
    codec: 0x0004013000001802L
    csnd: 0x0004013000002702L
    dlp: 0x0004013000002802L
    dsp: 0x0004013000001a02L
    friends: 0x0004013000003202L
    gpio: 0x0004013000001b02L
    gsp: 0x0004013000001c02L
    hid: 0x0004013000001d02L
    http: 0x0004013000002902L
    i2c: 0x0004013000001e02L
    ir: 0x0004013000003302L
    mcu: 0x0004013000001f02L
    mic: 0x0004013000002002L
    ndm: 0x0004013000002b02L
    news: 0x0004013000003502L
    nim: 0x0004013000002c02L
    nwm: 0x0004013000002d02L
    pdn: 0x0004013000002102L
    ps: 0x0004013000003102L
    ptm: 0x0004013000002202L
    ro: 0x0004013000003702L
    socket: 0x0004013000002e02L
    spi: 0x0004013000002302L
    ssl: 0x0004013000002f02L
CommonHeaderKey:
  D: |
    jL2yO86eUQnYbXIrzgFVMm7FVze0LglZ2f5g+c42hWoEdnb5BOotaMQPBfqt
    aUyAEmzQPaoi/4l4V+hTJRXQfthVRqIEx27B84l8LA6Tl5Fy9PaQaQ+4yRfP
    g6ylH2l0EikrIVjy2uMlFgl0QJCrG+QGKHftxhaGCifdAwFNmiZuyJ/TmktZ
    0RCb66lYcr2h/p2G7SnpKUliS9h9KnpmG+UEgVYQUK+4SCfByUa9PxYGpT0E
    nw1UcRz0gsBmdOqcgzwnAd9vVqgb42hVn6uQZyAl+j1RKiMWywZarazIR/k5
    Lmr4+groimSEa+3ajyoIho9WaWTDmFU3mkhA2tUDIQ==
  Exponent: |
    AQAB
  Modulus: |
    zwCcsyCgMkdlieCgQMVXA6X2jmb1ICjup0Q+jk/AydPkOgsx7I/MjUymFEkU
    vgXBtCKtzh3NKXtFFuW51tJ60GPOabLKuG0Qm5li+UXALrWhzWuvd5vv2FZI
    dTQCbrq/MFS/M02xNtwqzWiBjE/LwqIdbrDAAvX4HGy0ydaQJ1DKYeQeph5D
    lAGBw2nQ4izXhhuLaU3w8VQkIJHdhxIKI5gJY/20AGkG0vHD553Mh5kBINrWp
    CRYmmJS8DCYbAiQtKbkeUfzHViGTZuj6PwaY8Mv39PGO47a++pt45IUyCEs4/
    LjMS72cyfo8tU4twRGp76SFGYejYj3wGC1f/POQw==
  Signature: |
    BOPR0jL0BOV5Zx502BuPbOvi/hvOq5ID8Dz1MQfOjkey6FKP/6cb4f9YXpm6c
    ZCHAZLo0GduKdMepiKPUq1rsbbAxkRdQdjOOusEWoxNA58x3E4373tCAhlqM2
    DvuQERrIIQ/XnYLV9C3uw4efZwhFqog1jvVyoEHpuvs8xnYtGbsKQ8FrgLwXv
    pOZYy9cSgq+jqLy2D9IxiowPcbq2cRlbW9d2xlUfpq0AohyuXQhpxn7d9RUor
    9veoARRAdxRJK12EpcSoEM1LhTRYdJnSRCY3x3p6YIV3c+l1sWvaQwKt0sZ/U
    8TTDx2gb9g7r/+U9icneu/zlqUpSkexCS009Q==
  Descriptor: |
    AP///wAABAACAAAAAAAFGJ4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAiIAAAAAAAABBUFQ6VQAAACRo
    aW9GSU8AJGhvc3RpbzAkaG9zdGlvMWFjOnUAAAAAYm9zczpVAABjYW06dQAA
    AGNlY2Q6dQAAY2ZnOnUAAABkbHA6RktDTGRscDpTUlZSZHNwOjpEU1BmcmQ6
    dQAAAGZzOlVTRVIAZ3NwOjpHcHVoaWQ6VVNFUmh0dHA6QwAAbWljOnUAAABu
    ZG06dQAAAG5ld3M6dQAAbndtOjpVRFNwdG06dQAAAHB4aTpkZXYAc29jOlUA
    AABzc2w6QwAAAHkycjp1AAAAbGRyOnJvAABpcjpVU0VSAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAABOn/rw/7//8ec/APIA8JH/APaR/1D/gf9Y/4H/cP+B/3j/gf8B
    AQD/AAIA/iECAPz/////////////////////////////////////////////
    ////////////////////////////////////////AAAAAAAAAAAAAAAAAAAA
    AAADAAAAAAAAAAAAAAAAAAI=
Nuzzgok's
Zelda A Link Between Worlds:
Code:
BasicInfo:
  Title                  : "Legend of Zelda: A Link Between Worlds" # Change this
  CompanyCode            : "00" # Change this
  ProductCode            : "CTR-P-BZLP" # Change this
  ContentType            : Application
  Logo                    : Nintendo
 
TitleInfo:
  UniqueId                : 0x0EC4 # Change this
  Category                : Application
 
Option:
  UseOnSD                : true
  EnableCompress          : true
  FreeProductCode        : true
  EnableCrypt            : true
  MediaFootPadding        : true
 
AccessControlInfo:
  UseExtSaveData : true
  ExtSaveDataId: 0x0EC4 # Change this
  SystemSaveDataId1: 0x00000000
  SystemSaveDataId2: 0x00000000
  OtherUserSaveDataId1: 0x00000
  OtherUserSaveDataId2: 0x00000
  OtherUserSaveDataId3: 0x00000
  UseOtherVariationSaveData : false
 
SystemControlInfo:
  SaveDataSize: 512KB # Change this
  RemasterVersion: 0
  StackSize: 0x00040000
  JumpId: 0x0004000000030800L # plaintext exheader (0x00040000000EC400L)
Yoshi9288's
Dead or Alive Dimensions (EUR)
Code:
BasicInfo:
  Title                  : "Dead or Alive Dimensions" # Change this
  CompanyCode            : "C8" # Change this
  ProductCode            : "CTR-P-ADDP" # Change this
  ContentType            : Application
  Logo                    : Nintendo
 
TitleInfo:
  UniqueId                : 0x0308 # Change this
  Category                : Application
 
Option:
  UseOnSD                : true
  EnableCompress          : true
  FreeProductCode        : true
  EnableCrypt            : true
  MediaFootPadding        : true
 
AccessControlInfo:
  UseExtSaveData : true
  ExtSaveDataId: 0x038A # Change this
  SystemSaveDataId1: 0x00000000
  SystemSaveDataId2: 0x00000000
  OtherUserSaveDataId1: 0x00000
  OtherUserSaveDataId2: 0x00000
  OtherUserSaveDataId3: 0x00000
  UseOtherVariationSaveData : false
 
SystemControlInfo:
  SaveDataSize: 512KB # Change this
  RemasterVersion: 0
  StackSize: 0x00040000
  JumpId: 0x0004000000038A00L # plaintext exheader (<full UniqueID>L)
Yoshi9288's
Yoshi's New Island (EUR)
Code:
BasicInfo:
  Title                  : "Yoshis New Island" # Change this
  CompanyCode            : "00" # Change this
  ProductCode            : "CTR-P-ATAP" # Change this
  ContentType            : Application
  Logo                    : Nintendo
 
TitleInfo:
  UniqueId                : 0x111C # Change this
  Category                : Application
 
Option:
  UseOnSD                : true
  EnableCompress          : true
  FreeProductCode        : true
  EnableCrypt            : true
  MediaFootPadding        : true
 
AccessControlInfo:
  UseExtSaveData : true
  ExtSaveDataId: 0x111C # Change this
  SystemSaveDataId1: 0x00000000
  SystemSaveDataId2: 0x00000000
  OtherUserSaveDataId1: 0x00000
  OtherUserSaveDataId2: 0x00000
  OtherUserSaveDataId3: 0x00000
  UseOtherVariationSaveData : false
 
SystemControlInfo:
  SaveDataSize: 512KB # Change this
  RemasterVersion: 0
  StackSize: 0x00040000
  JumpId: 0x0004000000111C00L # plaintext exheader (<full UniqueID>L)
Queno138's
Super Smash Brothers 4 (US)
Code:
BasicInfo:
  Title                  : "ctrapp" # Change this
  CompanyCode            : "01" # Change this
  ProductCode            : "CTR-P-AXCE" # Change this
  ContentType            : Application
  Logo                    : Nintendo
 
TitleInfo:
  UniqueId                : 0x0edf # Change this
  Category                : Application
 
Option:
  UseOnSD                : true
  EnableCompress          : true
  FreeProductCode        : true
  EnableCrypt            : true
  MediaFootPadding        : true
 
AccessControlInfo:
  UseExtSaveData : true
  ExtSaveDataId: 0x0edf # Change this
  SystemSaveDataId1: 0x00000000
  SystemSaveDataId2: 0x00000000
  OtherUserSaveDataId1: 0x00000
  OtherUserSaveDataId2: 0x00000
  OtherUserSaveDataId3: 0x00000
  UseOtherVariationSaveData : false
 
SystemControlInfo:
  SaveDataSize: 512KB # Change this
  RemasterVersion: 0
  StackSize: 0x00040000
  JumpId: 0x00040000000edf00L # plaintext exheader (<full UniqueID>L)
Queno138's
How To Train Your Dragon 2 (US)
Code:
BasicInfo:
  Title                  : "Dragons" # Change this
  CompanyCode            : "01" # Change this
  ProductCode            : "CTR-P-BTDE" # Change this
  ContentType            : Application
  Logo                    : Nintendo
 
TitleInfo:
  UniqueId                : 0x1166 # Change this
  Category                : Application
 
Option:
  UseOnSD                : true
  EnableCompress          : true
  FreeProductCode        : true
  EnableCrypt            : true
  MediaFootPadding        : true
 
AccessControlInfo:
  UseExtSaveData : true
  ExtSaveDataId: 0x1166 # Change this
  SystemSaveDataId1: 0x00000000
  SystemSaveDataId2: 0x00000000
  OtherUserSaveDataId1: 0x00000
  OtherUserSaveDataId2: 0x00000
  OtherUserSaveDataId3: 0x00000
  UseOtherVariationSaveData : false
 
SystemControlInfo:
  SaveDataSize: 128KB # Change this
  RemasterVersion: 0
  StackSize: 0x00040000
  JumpId: 0x0004000000116600L # plaintext exheader (<full UniqueID>L)
Queno138's
Mario Golf World Tour 3D (US)
Code:
BasicInfo:
  Title                  : "MGOLF3DS" # Change this
  CompanyCode            : "01" # Change this
  ProductCode            : "CTR-P-AJ3E" # Change this
  ContentType            : Application
  Logo                    : Nintendo
 
TitleInfo:
  UniqueId                : 0x0dcd # Change this
  Category                : Application
 
Option:
  UseOnSD                : true
  EnableCompress          : true
  FreeProductCode        : true
  EnableCrypt            : true
  MediaFootPadding        : true
 
AccessControlInfo:
  UseExtSaveData : true
  ExtSaveDataId: 0x0dcd # Change this
  SystemSaveDataId1: 0x00000000
  SystemSaveDataId2: 0x00000000
  OtherUserSaveDataId1: 0x00000
  OtherUserSaveDataId2: 0x00000
  OtherUserSaveDataId3: 0x00000
  UseOtherVariationSaveData : false
 
SystemControlInfo:
  SaveDataSize: 512KB # Change this
  RemasterVersion: 0
  StackSize: 0x00040000
  JumpId: 0x00040000000dcd00L # plaintext exheader (<full UniqueID>L)


Need another guide?


For .3DS > .cia (games only)
Try this one by Versehell, he updates it all the time!
Simply go here:
http://gbatemp.net/goto/post?id=5149679#post-5149679
Another set of tools provided too!

Or if lazy to read from there:

For converting dev apps, such as savefiler:
http://gbatemp.net/threads/how-to-put-savedatafiler-on-homescreen.373756/


[Not so] Frequently Asked Questions

Does this work with trimmed roms?
YES! (link)

Does this work with VC roms?
NO (link)
or YES? (link)

Does this work with Dev apps (devmenu and SDK stuff)
NO!
However, link to show you how to get them converted: (link)

Does this work with FW 7.X games?
Tested so far:
Pokemon Art Academy - Failed [Banner and gift box appeared. Hanged on 3DS loading]
Super Smash Bros 4 - Passed (video link)
I'm confused. Perhaps is SDK related?
update: Not SDK related. maybe related saving items in SD card?

update again:
apparently, I might be missing a step that will allow fw 7.x to work.
mex.py allows exefs xorpads to merge.
will update that later!

Can I load games above 4.5 on CFW?
From what I know, NO

Where can I find slot0x25KeyX.bin/7.X keys?
Can't tell you where. But I know who has it (the guy you leaked it, duh)
get it, type it in hex using HXD, save as slot0x25KeyX.bin
Paste it into your SD card.



Credits

Quick shout out to everyone on gbaTEMP who contributed with their programs and tutorials.
I'm not reinventing the wheel; just collating and hoping that others will be able to use these :)


You are by no means reinventing the wheel. This was the only guide that I was able to follow! I did however have a question or two:
1.) does this mean we can install any 3ds game directly on our homemenu (no need for gateway and even the 3ds games which were not available as downloadable through the eshop)
2.) If its not too much to ask, would it be possible for you to update the guide with the rsf thingy that was just released if it makes this process a lot easier? (not sure what it does but thoughtI would just point it out).
 

VerseHell

Well-Known Member
Member
Joined
Jun 29, 2014
Messages
3,076
Trophies
1
Age
30
XP
1,688
Country
France
I also made a guide for 3ds to cia conversion if it helps, it automatically add the game manual if there's one and it can delete the decrypted files in the end if you want:

Download this : http://jheberg.net/captcha/3ds-cia-conversion-tools-7x-encryption-support-v-5/

1.If you still don't have it install 2.7 Python (not 3.4 or any other version)

2. Put your rom in the folder, run rom_tool info.bat, enter your rom name without the .3ds extension and edit the rsf file with the right informations.

3. Drag on drop your rom on the ctrKeyGen.py file, it will gnerate a ncchinfo.bin. Put it on your sd card root.

4. In the For the 3DS SD card. Open slot0x25KeyX.bin in a HEX editor and replace the 0 with the proper key. (Use Google) Put it and the launcher.dat in you sd card.

5. Put the sd card back on your console, go to System Settings -> Other Settings -> Profile -> Nintendo DS Profile and wait for the xorpads to be generated. Put the "Main" xorpads in the main folder.


Then :

If you want to remove the region lock :

- Run unpack.bat ((with or without 7.X xorpad) if you have a exfs_7x.xorpad file or not) and enter your rom name without the .3ds extension

- Follow Gadorach's instructions here : https://gbatemp.net/threads/4-x-only-cia-cfw-complete-guide.373532/page-50#post-5149465 (works with Hex Worshop, just enter 2018 in the search bar)

- Run makerom.bat, enter the filename you want (without extension).

Else

- Just run unpack-makerom.bat ((with or without 7.X xorpad) if you have exfs_7x.xorpad file or not) , enter your rom name without the .3ds extension.


EDIT : Added 7.X encryption game support. (only on gateway for now)
EDIT2 : Added the MEX.py file, for the 7.X xorpads.
EDIT3 : Fixed the exheader xorpad not found problem in the unpack-makerom bat files.

Added piratesephiroth ExInjector tool :
https://gbatemp.net/threads/release-exinjector-inject-original-exheaders-into-repacked-roms.373839/
Tested with Nintendogs and works fine. :)
 

VerseHell

Well-Known Member
Member
Joined
Jun 29, 2014
Messages
3,076
Trophies
1
Age
30
XP
1,688
Country
France
After i pressed ok, makerom.exe hanged and the process wasnt finished :/

Yes i just noticed that, it worked fine with Nintendogs (512 MB) but crashed with Fantasy Life (1GB).what's your rom size ? Maybe the makerom -cciatocia command doesn't support 1GB+ rom...
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • K3Nv2 @ K3Nv2:
    why
  • Xdqwerty @ Xdqwerty:
    @K3Nv2, it's not funny
  • K3Nv2 @ K3Nv2:
    ok
  • BigOnYa @ BigOnYa:
    Wut?
  • K3Nv2 @ K3Nv2:
    That's not funny
    +2
  • Psionic Roshambo @ Psionic Roshambo:
    So two cannibals where eating a clown and one says to the other. Hey does this taste funny to you?
    +2
  • K3Nv2 @ K3Nv2:
    What do you call a slow car? Retired
    +1
  • Psionic Roshambo @ Psionic Roshambo:
    Did you hear about the police car that someone stole the wheels off of? The police are working tirelessly to find the thieves.
    +2
  • K3Nv2 @ K3Nv2:
    A firefighter got arrested for assault his main claim was what I was told he was on fire
    +2
  • BigOnYa @ BigOnYa:
    What do you call a hooker with a runny nose? Full
    +2
  • Psionic Roshambo @ Psionic Roshambo:
    What do you tell a woman with two black eyes? Nothing you already told her twice!
  • K3Nv2 @ K3Nv2:
    Diddy also works
  • K3Nv2 @ K3Nv2:
    A scientist heard the word batman so he put a naked lady in a cage with a bat
  • Psionic Roshambo @ Psionic Roshambo:
    Chuck Norris won a staring contest, with the sun.
  • K3Nv2 @ K3Nv2:
    A vampires favorite thing to do is moon you
  • BigOnYa @ BigOnYa:
    What's the difference between an airplane, and Ken's mom? Not everyone has been in an airplane.
  • K3Nv2 @ K3Nv2:
    What's the difference between @BigOnYa and his wife? Nothing both want to bone me
    +3
  • RedColoredStars @ RedColoredStars:
    How much wood could a wood chuck chuck if a wood chuck could chuck norris
    +1
  • BakerMan @ BakerMan:
    how do i know? you're a guy, and he wants to bone every guy on this site (maybe, idk)
    +1
  • K3Nv2 @ K3Nv2:
    He wants to bone anything with a dick
    +1
  • Xdqwerty @ Xdqwerty:
    Good night
    +1
  • BigOnYa @ BigOnYa:
    Nighty night, big day tomorrow. Congrats.
    K3Nv2 @ K3Nv2: https://www.instagram.com/reel/C7iLZ35NrQt/?igsh=MWd2Z3U0dmNlMmNxcw==