Skip to content

Instantly share code, notes, and snippets.

#define UNLOADED_FILE 1
#include <idc.idc>
static main(void)
{
// set 'loading idc file' mode
set_inf_attr(INF_GENFLAGS, INFFL_LOADIDC|get_inf_attr(INF_GENFLAGS));
GenInfo(); // various settings
Segments(); // segmentation
Enums(); // enumerations
Atmosphere Fatal Report (v1.0):
Result: 0x1BF802 (2002-3580)
Title ID: 010000000000000c
Process Name: bcat
Firmware: 9.0.0 (Atmosphere 0.9.4-master-c62c4846)
General Purpose Registers:
Start Address: 0000003551e00000
Stack Trace:
ReturnAddress[00]: 0000003551f79edc
@SciresM
SciresM / creport_901.idc
Created October 3, 2019 04:14
Crash Report system module IDC for 9.0.1
// This file should be used in the following way:
// - reload executable into IDA with using switch -c
// - use File, Load IDC file and load this file.
//
// NOTE: This file doesn't contain all information from the database.
//
#define UNLOADED_FILE 1
#include <idc.idc>
#define UNLOADED_FILE 1
#include <idc.idc>
static main(void)
{
// set 'loading idc file' mode
set_inf_attr(INF_GENFLAGS, INFFL_LOADIDC|get_inf_attr(INF_GENFLAGS));
GenInfo(); // various settings
Segments(); // segmentation
Enums(); // enumerations
@SciresM
SciresM / KernelLdr.idc
Created September 10, 2019 04:19
9.0.0 KernelLoader IDA database
#define UNLOADED_FILE 1
#include <idc.idc>
static main(void)
{
// set 'loading idc file' mode
set_inf_attr(INF_GENFLAGS, INFFL_LOADIDC|get_inf_attr(INF_GENFLAGS));
GenInfo(); // various settings
Segments(); // segmentation
Enums(); // enumerations
#define UNLOADED_FILE 1
#include <idc.idc>
static main(void)
{
// set 'loading idc file' mode
set_inf_attr(INF_GENFLAGS, INFFL_LOADIDC|get_inf_attr(INF_GENFLAGS));
GenInfo(); // various settings
Segments(); // segmentation
Enums(); // enumerations
var res = sc.ipcMsg(600).datau64(0x40000000, 0x40000).sendTo('fatal:u').assertOk();
var addr = [res.data[0], res.data[1]];
var sz = [res.data[2], res.data[3]];
utils.log('IRAM at: '+utils.paddr(addr)+', size: '+utils.paddr(sz));
sc.iramAddr = addr;
iramWrite4 = function(val, ofs) {
sc.ipcMsg(503).datau64(val, utils.add2(sc.iramAddr, ofs)).sendTo('fatal:u').assertOk();
}
@SciresM
SciresM / __patcher.py
Last active December 5, 2022 08:58
quick and dirty pokemon masters patcher
from struct import unpack as up, pack as pk
import arm64, os, sys
TEXT_START_OFFSET = 0x507300
TEXT_END_OFFSET = 0x32FEBF0
RWDATA_START = 0x3A9F000
ENCTABLE_START = 0x3F2C238
ENCTABLE_END = 0x3F957B8
//
// This file should be used in the following way:
// - reload executable into IDA with using switch -c
// - use File, Load IDC file and load this file.
//
// NOTE: This file doesn't contain all information from the database.
//
#define UNLOADED_FILE 1
#include <idc.idc>
//
// This file should be used in the following way:
// - reload executable into IDA with using switch -c
// - use File, Load IDC file and load this file.
//
// NOTE: This file doesn't contain all information from the database.
//
#define UNLOADED_FILE 1
#include <idc.idc>