mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
22537 lines
1.1 MiB
Plaintext
22537 lines
1.1 MiB
Plaintext
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_02423CBC @ 0x2423cbc
|
|
void Gambit_fn_02423CBC(CPUState* cpu) {
|
|
L_02423CBC: ; // 0x2423cbc
|
|
/* 02423CBC */ return;
|
|
}
|
|
|
|
// fn_02423CC0 @ 0x2423cc0
|
|
void Gambit_fn_02423CC0(CPUState* cpu) {
|
|
L_02423CC0: ; // 0x2423cc0
|
|
/* 02423CC0 */ return;
|
|
}
|
|
|
|
// fn_02423CC4 @ 0x2423cc4
|
|
void Gambit_fn_02423CC4(CPUState* cpu) {
|
|
L_02423CC4: ; // 0x2423cc4
|
|
/* 02423CC4 */ return;
|
|
}
|
|
|
|
// fn_02423CC8 @ 0x2423cc8
|
|
void Gambit_fn_02423CC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_020B9CF4: ; // 0x20b9cf4
|
|
/* 020B9CF4 */ cpu->r[0] = cpu->lr;
|
|
/* 020B9CF8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020B9CF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020B9CF8 */ cpu->r[1] = _t0;
|
|
/* 020B9CFC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020B9CFC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020B9D00 */ cpu->r[31] = cpu->r[3];
|
|
/* 020B9D04 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020B9D04 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020B9D08 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 020B9D08 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 020B9D0C */ cpu->r[12] = 0x00000000u;
|
|
/* 020B9D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020B9D14 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 020B9D14 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 020B9D18 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020B9D18 */ _t6 = _t5 & 0x00000001u;
|
|
/* 020B9D18 */ if (_t6) goto L_020B9D40; else goto L_020B9D1C;
|
|
L_020B9D1C: ; // 0x20b9d1c
|
|
/* 020B9D1C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 020B9D1C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 020B9D20 */ /* nop */
|
|
/* 020B9D24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020B9D28 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020B9D28 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020B9D28 */ if (_t9) goto L_020B9D2C; else goto L_020B9D40;
|
|
L_020B9D2C: ; // 0x20b9d2c
|
|
/* 020B9D2C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020B9D2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020B9D30 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020B9D30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020B9D34 */ cpu->ctr = cpu->r[0];
|
|
/* 020B9D38 */ cpu->r[3] = cpu->r[31];
|
|
/* 020B9D3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020B9D40: ; // 0x20b9d40
|
|
/* 020B9D40 */ cpu->r[3] = cpu->r[31];
|
|
/* 020B9D44 */ Gambit_fn_020B9C6C(cpu);
|
|
/* 020B9D48 */ cpu->r[3] = cpu->r[31];
|
|
/* 020B9D4C */ Gambit_fn_027FC37C(cpu);
|
|
/* 020B9D50 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020B9D50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020B9D54 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020B9D54 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020B9D58 */ cpu->lr = cpu->r[0];
|
|
/* 020B9D5C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020B9D60 */ return;
|
|
L_02423CC8: ; // 0x2423cc8
|
|
/* 02423CC8 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02423CCC */ goto L_020B9CF4;
|
|
}
|
|
|
|
// fn_02423CD0 @ 0x2423cd0
|
|
void Gambit_fn_02423CD0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02423CD0: ; // 0x2423cd0
|
|
/* 02423CD0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02423CD4 */ goto L_024249F0;
|
|
L_024249F0: ; // 0x24249f0
|
|
/* 024249F0 */ cpu->r[0] = cpu->lr;
|
|
/* 024249F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024249F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024249F4 */ cpu->r[1] = _t0;
|
|
/* 024249F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024249F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024249FC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024249FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02424A00 */ cpu->r[30] = cpu->r[3];
|
|
/* 02424A00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02424A04 */ cpu->r[31] = cpu->r[4];
|
|
/* 02424A08 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424A08 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424A0C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424A0C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02424A0C */ if (_t5) goto L_02424A7C; else goto L_02424A10;
|
|
L_02424A10: ; // 0x2424a10
|
|
/* 02424A10 */ cpu->r[0] = 0x10090000u;
|
|
/* 02424A14 */ cpu->r[12] = 0x10090000u;
|
|
/* 02424A18 */ cpu->r[0] = cpu->r[0] + 0x00007A34u;
|
|
/* 02424A1C */ cpu->r[12] = cpu->r[12] + 0x00007A54u;
|
|
/* 02424A20 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424A20 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02424A24 */ cpu->r[11] = 0x10090000u;
|
|
/* 02424A28 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02424A28 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02424A2C */ cpu->r[11] = cpu->r[11] + 0x00007A44u;
|
|
/* 02424A30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02424A34 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02424A34 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02424A38 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424A38 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02424A38 */ if (_t10) goto L_02424A6C; else goto L_02424A3C;
|
|
L_02424A3C: ; // 0x2424a3c
|
|
/* 02424A3C */ cpu->r[10] = 0x10010000u;
|
|
/* 02424A40 */ cpu->r[0] = 0x10010000u;
|
|
/* 02424A44 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 02424A48 */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 02424A4C */ cpu->r[3] = cpu->r[30];
|
|
/* 02424A50 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424A50 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02424A54 */ cpu->r[0] = 0x10010000u;
|
|
/* 02424A58 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02424A58 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02424A5C */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 02424A60 */ cpu->r[4] = 0x00000000u;
|
|
/* 02424A64 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02424A64 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02424A68 */ Gambit_fn_02068798(cpu);
|
|
L_02424A6C: ; // 0x2424a6c
|
|
/* 02424A6C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02424A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02424A70 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424A70 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424A70 */ if (_t15) goto L_02424A7C; else goto L_02424A74;
|
|
L_02424A74: ; // 0x2424a74
|
|
/* 02424A74 */ cpu->r[3] = cpu->r[30];
|
|
/* 02424A78 */ Gambit_fn_02801BB0(cpu);
|
|
L_02424A7C: ; // 0x2424a7c
|
|
/* 02424A7C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02424A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02424A80 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02424A80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424A84 */ cpu->lr = cpu->r[0];
|
|
/* 02424A88 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424A88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02424A8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02424A90 */ return;
|
|
}
|
|
|
|
// fn_02423CD8 @ 0x2423cd8
|
|
void Gambit_fn_02423CD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_02423CD8: ; // 0x2423cd8
|
|
/* 02423CD8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02423CDC */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02423CE0 @ 0x2423ce0
|
|
void Gambit_fn_02423CE0(CPUState* cpu) {
|
|
L_02423CE0: ; // 0x2423ce0
|
|
/* 02423CE0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02423CE4 */ goto L_02424A94;
|
|
L_02424A94: ; // 0x2424a94
|
|
/* 02424A94 */ return;
|
|
}
|
|
|
|
// fn_02423CE8 @ 0x2423ce8
|
|
void Gambit_fn_02423CE8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02423CE8: ; // 0x2423ce8
|
|
/* 02423CE8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02423CEC */ goto L_02424A98;
|
|
L_02424A98: ; // 0x2424a98
|
|
/* 02424A98 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02424A98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02424A9C */ return;
|
|
}
|
|
|
|
// fn_02423CF0 @ 0x2423cf0
|
|
void Gambit_fn_02423CF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_02423CF0: ; // 0x2423cf0
|
|
/* 02423CF0 */ cpu->r[0] = cpu->lr;
|
|
/* 02423CF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02423CF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02423CF4 */ cpu->r[1] = _t0;
|
|
/* 02423CF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02423CF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02423CFC */ cpu->r[31] = cpu->r[3];
|
|
/* 02423CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02423D00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02423D00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02423D04 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02423D04 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02423D04 */ if (_t4) goto L_02423D08; else goto L_02423D18;
|
|
L_02423D08: ; // 0x2423d08
|
|
/* 02423D08 */ cpu->r[3] = 0x00000240u;
|
|
/* 02423D0C */ Gambit_fn_02801A78(cpu);
|
|
/* 02423D10 */ cpu->r[31] = cpu->r[3];
|
|
/* 02423D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02423D14 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02423D14 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02423D14 */ if (_t6) goto L_02423DBC; else goto L_02423D18;
|
|
L_02423D18: ; // 0x2423d18
|
|
/* 02423D18 */ cpu->r[4] = 0x10090000u;
|
|
/* 02423D1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02423D20 */ cpu->r[5] = 0x00000003u;
|
|
/* 02423D24 */ cpu->r[4] = cpu->r[4] + 0x000077A8u;
|
|
/* 02423D28 */ Gambit_fn_020B82F0(cpu);
|
|
/* 02423D2C */ cpu->r[8] = 0x10090000u;
|
|
/* 02423D30 */ cpu->r[9] = 0x10090000u;
|
|
/* 02423D34 */ cpu->r[8] = cpu->r[8] + 0x00007A34u;
|
|
/* 02423D38 */ cpu->r[9] = cpu->r[9] + 0x00007A44u;
|
|
/* 02423D3C */ cpu->r[0] = 0x10090000u;
|
|
/* 02423D40 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02423D40 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 02423D44 */ cpu->r[11] = 0x10090000u;
|
|
/* 02423D48 */ cpu->r[0] = cpu->r[0] + 0x000078CCu;
|
|
/* 02423D4C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02423D4C */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02423D50 */ cpu->r[11] = cpu->r[11] + 0x00007A54u;
|
|
/* 02423D54 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02423D54 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02423D58 */ cpu->r[10] = 0x000000B4u;
|
|
/* 02423D5C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02423D5C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02423D60 */ cpu->r[0] = 0x00000000u;
|
|
/* 02423D64 */ cpu->r[12] = 0x00000002u;
|
|
/* 02423D68 */ _t11 = cpu->r[31] + 0x00000238u;
|
|
/* 02423D68 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02423D6C */ cpu->r[11] = cpu->r[31] + 0x00000228u;
|
|
/* 02423D70 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 02423D70 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02423D74 */ cpu->ctr = cpu->r[12];
|
|
/* 02423D78 */ _t13 = cpu->r[31] + 0x00000228u;
|
|
/* 02423D78 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
L_02423D7C: ; // 0x2423d7c
|
|
/* 02423D7C */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 02423D7C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02423D7C */ cpu->r[11] = _t14;
|
|
/* 02423D80 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02423D80 */ _t15 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02423D80 */ _t16 = _t15 >> (0x00000002u & 31u);
|
|
/* 02423D80 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02423D80 */ if (_t17) goto L_02423D7C; else goto L_02423D84;
|
|
L_02423D84: ; // 0x2423d84
|
|
/* 02423D84 */ cpu->r[10] = 0x00000002u;
|
|
/* 02423D88 */ cpu->r[9] = 0x00000000u;
|
|
/* 02423D8C */ cpu->r[12] = cpu->r[31] + 0x00000234u;
|
|
/* 02423D90 */ cpu->ctr = cpu->r[10];
|
|
/* 02423D94 */ cpu->r[0] = cpu->r[9];
|
|
L_02423D98: ; // 0x2423d98
|
|
/* 02423D98 */ _t18 = cpu->r[12] + cpu->r[9];
|
|
/* 02423D98 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 02423D9C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02423DA0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02423DA0 */ _t19 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02423DA0 */ _t20 = _t19 >> (0x00000002u & 31u);
|
|
/* 02423DA0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02423DA0 */ if (_t21) goto L_02423D98; else goto L_02423DA4;
|
|
L_02423DA4: ; // 0x2423da4
|
|
/* 02423DA4 */ cpu->r[3] = 0x0000036Cu;
|
|
/* 02423DA8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02423DAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02423DB0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02423DB0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02423DB0 */ if (_t23) goto L_02423DB8; else goto L_02423DB4;
|
|
L_02423DB4: ; // 0x2423db4
|
|
/* 02423DB4 */ Gambit_fn_02800E08(cpu);
|
|
L_02423DB8: ; // 0x2423db8
|
|
/* 02423DB8 */ _t24 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02423DB8 */ rbrew_write32(cpu->mem, _t24, cpu->r[3]);
|
|
L_02423DBC: ; // 0x2423dbc
|
|
/* 02423DBC */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02423DBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02423DC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02423DC4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02423DC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02423DC8 */ cpu->lr = cpu->r[0];
|
|
/* 02423DCC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02423DD0 */ return;
|
|
}
|
|
|
|
// fn_02423CF4 @ 0x2423cf4
|
|
void Gambit_fn_02423CF4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26;
|
|
|
|
L_02423CF4: ; // 0x2423cf4
|
|
/* 02423CF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02423CF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02423CF4 */ cpu->r[1] = _t0;
|
|
/* 02423CF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02423CF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02423CFC */ cpu->r[31] = cpu->r[3];
|
|
/* 02423CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02423D00 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02423D00 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02423D04 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02423D04 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02423D04 */ if (_t4) goto L_02423D08; else goto L_02423D18;
|
|
L_02423D08: ; // 0x2423d08
|
|
/* 02423D08 */ cpu->r[3] = 0x00000240u;
|
|
/* 02423D0C */ Gambit_fn_02801A78(cpu);
|
|
/* 02423D10 */ cpu->r[31] = cpu->r[3];
|
|
/* 02423D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02423D14 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02423D14 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02423D14 */ if (_t6) goto L_02423DBC; else goto L_02423D18;
|
|
L_02423D18: ; // 0x2423d18
|
|
/* 02423D18 */ cpu->r[4] = 0x10090000u;
|
|
/* 02423D1C */ cpu->r[3] = cpu->r[31];
|
|
/* 02423D20 */ cpu->r[5] = 0x00000003u;
|
|
/* 02423D24 */ cpu->r[4] = cpu->r[4] + 0x000077A8u;
|
|
/* 02423D28 */ Gambit_fn_020B82F0(cpu);
|
|
/* 02423D2C */ cpu->r[8] = 0x10090000u;
|
|
/* 02423D30 */ cpu->r[9] = 0x10090000u;
|
|
/* 02423D34 */ cpu->r[8] = cpu->r[8] + 0x00007A34u;
|
|
/* 02423D38 */ cpu->r[9] = cpu->r[9] + 0x00007A44u;
|
|
/* 02423D3C */ cpu->r[0] = 0x10090000u;
|
|
/* 02423D40 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02423D40 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 02423D44 */ cpu->r[11] = 0x10090000u;
|
|
/* 02423D48 */ cpu->r[0] = cpu->r[0] + 0x000078CCu;
|
|
/* 02423D4C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02423D4C */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02423D50 */ cpu->r[11] = cpu->r[11] + 0x00007A54u;
|
|
/* 02423D54 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02423D54 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02423D58 */ cpu->r[10] = 0x000000B4u;
|
|
/* 02423D5C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02423D5C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02423D60 */ cpu->r[0] = 0x00000000u;
|
|
/* 02423D64 */ cpu->r[12] = 0x00000002u;
|
|
/* 02423D68 */ _t11 = cpu->r[31] + 0x00000238u;
|
|
/* 02423D68 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02423D6C */ cpu->r[11] = cpu->r[31] + 0x00000228u;
|
|
/* 02423D70 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 02423D70 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02423D74 */ cpu->ctr = cpu->r[12];
|
|
/* 02423D78 */ _t13 = cpu->r[31] + 0x00000228u;
|
|
/* 02423D78 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
L_02423D7C: ; // 0x2423d7c
|
|
/* 02423D7C */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 02423D7C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02423D7C */ cpu->r[11] = _t14;
|
|
/* 02423D80 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02423D80 */ _t15 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02423D80 */ _t16 = _t15 >> (0x00000002u & 31u);
|
|
/* 02423D80 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02423D80 */ if (_t17) goto L_02423D7C; else goto L_02423D84;
|
|
L_02423D84: ; // 0x2423d84
|
|
/* 02423D84 */ cpu->r[10] = 0x00000002u;
|
|
/* 02423D88 */ cpu->r[9] = 0x00000000u;
|
|
/* 02423D8C */ cpu->r[12] = cpu->r[31] + 0x00000234u;
|
|
/* 02423D90 */ cpu->ctr = cpu->r[10];
|
|
/* 02423D94 */ cpu->r[0] = cpu->r[9];
|
|
L_02423D98: ; // 0x2423d98
|
|
/* 02423D98 */ _t18 = cpu->r[12] + cpu->r[9];
|
|
/* 02423D98 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]);
|
|
/* 02423D9C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02423DA0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02423DA0 */ _t19 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02423DA0 */ _t20 = _t19 >> (0x00000002u & 31u);
|
|
/* 02423DA0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02423DA0 */ if (_t21) goto L_02423D98; else goto L_02423DA4;
|
|
L_02423DA4: ; // 0x2423da4
|
|
/* 02423DA4 */ cpu->r[3] = 0x0000036Cu;
|
|
/* 02423DA8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02423DAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02423DB0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02423DB0 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02423DB0 */ if (_t23) goto L_02423DB8; else goto L_02423DB4;
|
|
L_02423DB4: ; // 0x2423db4
|
|
/* 02423DB4 */ Gambit_fn_02800E08(cpu);
|
|
L_02423DB8: ; // 0x2423db8
|
|
/* 02423DB8 */ _t24 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02423DB8 */ rbrew_write32(cpu->mem, _t24, cpu->r[3]);
|
|
L_02423DBC: ; // 0x2423dbc
|
|
/* 02423DBC */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02423DBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02423DC0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02423DC4 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02423DC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02423DC8 */ cpu->lr = cpu->r[0];
|
|
/* 02423DCC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02423DD0 */ return;
|
|
}
|
|
|
|
// fn_02423DD4 @ 0x2423dd4
|
|
void Gambit_fn_02423DD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02423DD4: ; // 0x2423dd4
|
|
/* 02423DD4 */ cpu->r[0] = cpu->lr;
|
|
/* 02423DD8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02423DD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02423DD8 */ cpu->r[1] = _t0;
|
|
/* 02423DDC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02423DDC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02423DE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02423DE4 */ cpu->r[4] = 0x00000001u;
|
|
/* 02423DE8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02423DE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02423DEC */ Gambit_fn_020B8610(cpu);
|
|
/* 02423DF0 */ cpu->r[11] = 0x000000B4u;
|
|
/* 02423DF4 */ cpu->r[12] = 0x10090000u;
|
|
/* 02423DF8 */ cpu->r[10] = 0x10090000u;
|
|
/* 02423DFC */ _t3 = cpu->r[31] + 0x00000238u;
|
|
/* 02423DFC */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02423E00 */ cpu->r[12] = cpu->r[12] + 0x00007728u;
|
|
/* 02423E04 */ cpu->r[0] = 0x10090000u;
|
|
/* 02423E08 */ _t4 = cpu->r[10] + 0x000077BCu;
|
|
/* 02423E08 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02423E0C */ cpu->r[3] = cpu->r[31];
|
|
/* 02423E10 */ cpu->r[0] = cpu->r[0] + 0x000077C0u;
|
|
/* 02423E14 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02423E14 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02423E18 */ cpu->r[4] = 0x00000000u;
|
|
/* 02423E1C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02423E20 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02423E20 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02423E24 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02423E28 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02423E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02423E2C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02423E2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02423E30 */ cpu->lr = cpu->r[0];
|
|
/* 02423E34 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02423E38 */ return;
|
|
}
|
|
|
|
// fn_02423DD8 @ 0x2423dd8
|
|
void Gambit_fn_02423DD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02423DD8: ; // 0x2423dd8
|
|
/* 02423DD8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02423DD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02423DD8 */ cpu->r[1] = _t0;
|
|
/* 02423DDC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02423DDC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02423DE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02423DE4 */ cpu->r[4] = 0x00000001u;
|
|
/* 02423DE8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02423DE8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02423DEC */ Gambit_fn_020B8610(cpu);
|
|
/* 02423DF0 */ cpu->r[11] = 0x000000B4u;
|
|
/* 02423DF4 */ cpu->r[12] = 0x10090000u;
|
|
/* 02423DF8 */ cpu->r[10] = 0x10090000u;
|
|
/* 02423DFC */ _t3 = cpu->r[31] + 0x00000238u;
|
|
/* 02423DFC */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02423E00 */ cpu->r[12] = cpu->r[12] + 0x00007728u;
|
|
/* 02423E04 */ cpu->r[0] = 0x10090000u;
|
|
/* 02423E08 */ _t4 = cpu->r[10] + 0x000077BCu;
|
|
/* 02423E08 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02423E0C */ cpu->r[3] = cpu->r[31];
|
|
/* 02423E10 */ cpu->r[0] = cpu->r[0] + 0x000077C0u;
|
|
/* 02423E14 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02423E14 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02423E18 */ cpu->r[4] = 0x00000000u;
|
|
/* 02423E1C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02423E20 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02423E20 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02423E24 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02423E28 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02423E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02423E2C */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02423E2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02423E30 */ cpu->lr = cpu->r[0];
|
|
/* 02423E34 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02423E38 */ return;
|
|
}
|
|
|
|
// fn_02423E3C @ 0x2423e3c
|
|
void Gambit_fn_02423E3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105;
|
|
|
|
L_02423E3C: ; // 0x2423e3c
|
|
/* 02423E3C */ _t0 = cpu->r[1] + 0xFFFFFEC0u;
|
|
/* 02423E3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02423E3C */ cpu->r[1] = _t0;
|
|
/* 02423E40 */ /* nop */
|
|
/* 02423E44 */ cpu->r[0] = cpu->lr;
|
|
/* 02423E48 */ _t1 = cpu->r[1] + 0x00000120u;
|
|
/* 02423E48 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02423E4C */ _t2 = cpu->r[1] + 0x00000130u;
|
|
/* 02423E4C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02423E50 */ /* nop */
|
|
/* 02423E54 */ _t3 = cpu->r[1] + 0x00000144u;
|
|
/* 02423E54 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02423E58 */ /* nop */
|
|
/* 02423E5C */ _t4 = cpu->r[1] + 0x00000128u;
|
|
/* 02423E5C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02423E60 */ _t5 = cpu->r[1] + 0x00000138u;
|
|
/* 02423E60 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02423E64 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02423E68 */ _t6 = cpu->r[12] + 0x00001344u;
|
|
/* 02423E68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02423E6C */ cpu->r[29] = cpu->r[3];
|
|
/* 02423E70 */ _t7 = cpu->r[12] + 0x00000010u;
|
|
/* 02423E70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02423E74 */ Gambit_fn_0201A440(cpu);
|
|
/* 02423E78 */ cpu->r[28] = 0x10090000u;
|
|
/* 02423E7C */ cpu->r[30] = 0x10090000u;
|
|
/* 02423E80 */ cpu->r[26] = cpu->r[3];
|
|
/* 02423E84 */ cpu->r[28] = cpu->r[28] + 0x00007728u;
|
|
/* 02423E88 */ cpu->r[30] = cpu->r[30] + 0x000077D5u;
|
|
/* 02423E8C */ cpu->r[3] = cpu->r[29];
|
|
/* 02423E90 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 02423E90 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 02423E94 */ cpu->r[4] = 0x00000000u;
|
|
/* 02423E98 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02423E9C */ _t9 = cpu->r[1] + 0x00000020u;
|
|
/* 02423E9C */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02423EA0 */ Gambit_fn_027ED798(cpu);
|
|
/* 02423EA4 */ cpu->r[31] = cpu->r[29] + 0x0000022Cu;
|
|
/* 02423EA8 */ cpu->r[25] = 0x00000000u;
|
|
/* 02423EAC */ cpu->r[27] = cpu->r[31];
|
|
/* 02423EB0 */ goto L_02423EBC;
|
|
L_02423EB4: ; // 0x2423eb4
|
|
/* 02423EB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000002u);
|
|
/* 02423EB8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02423EB8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02423EB8 */ if (_t11) goto L_02423EBC; else goto L_02423EC4;
|
|
L_02423EBC: ; // 0x2423ebc
|
|
/* 02423EBC */ cpu->r[5] = cpu->r[27];
|
|
/* 02423EC0 */ goto L_02423EC8;
|
|
L_02423EC4: ; // 0x2423ec4
|
|
/* 02423EC4 */ cpu->r[5] = cpu->r[31];
|
|
L_02423EC8: ; // 0x2423ec8
|
|
/* 02423EC8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02423EC8 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 02423ECC */ cpu->r[4] = 0x00000000u;
|
|
/* 02423ED0 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02423ED0 */ rbrew_write32(cpu->mem, _t13, cpu->r[28]);
|
|
/* 02423ED4 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 02423ED4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02423ED8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02423EDC */ Gambit_fn_027ED798(cpu);
|
|
/* 02423EE0 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 02423EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000002u);
|
|
/* 02423EE8 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02423EEC */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02423EEC */ _t16 = _t15 & 0x00000001u;
|
|
/* 02423EEC */ if (_t16) goto L_02423EB4; else goto L_02423EF0;
|
|
L_02423EF0: ; // 0x2423ef0
|
|
/* 02423EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02423EF4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02423EF4 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02423EF4 */ if (_t18) goto L_02424168; else goto L_02423EF8;
|
|
L_02423EF8: ; // 0x2423ef8
|
|
/* 02423EF8 */ _t19 = cpu->r[29] + 0x00000224u;
|
|
/* 02423EF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02423EFC */ _t20 = cpu->r[26] + 0x00000002u;
|
|
/* 02423EFC */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t20);
|
|
/* 02423F00 */ Gambit_fn_020A91C4(cpu);
|
|
/* 02423F04 */ _t21 = cpu->r[29] + 0x00000228u;
|
|
/* 02423F04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02423F08 */ _t22 = cpu->r[26] + 0x00000000u;
|
|
/* 02423F08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02423F0C */ Gambit_fn_020A9934(cpu);
|
|
/* 02423F10 */ _t23 = cpu->r[26] + 0x00000010u;
|
|
/* 02423F10 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02423F14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000064u);
|
|
/* 02423F18 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02423F18 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02423F18 */ if (_t25) goto L_02423F74; else goto L_02423F1C;
|
|
L_02423F1C: ; // 0x2423f1c
|
|
/* 02423F1C */ cpu->r[4] = 0x10090000u;
|
|
/* 02423F20 */ cpu->r[12] = 0x43300000u;
|
|
/* 02423F24 */ cpu->r[8] = cpu->r[7] + 0xFFFFFFB6u;
|
|
/* 02423F28 */ _t26 = cpu->r[4] + 0x000077C8u;
|
|
/* 02423F28 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t26);
|
|
/* 02423F2C */ cpu->r[0] = cpu->r[8] ^ 0x80000000u;
|
|
/* 02423F30 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 02423F30 */ rbrew_write32(cpu->mem, _t27, cpu->r[12]);
|
|
/* 02423F34 */ cpu->r[31] = 0x10090000u;
|
|
/* 02423F38 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02423F38 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02423F3C */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 02423F3C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t29);
|
|
/* 02423F40 */ cpu->r[31] = cpu->r[31] + 0x000077E0u;
|
|
/* 02423F44 */ cpu->f[11] = cpu->f[13] - cpu->f[0];
|
|
/* 02423F48 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02423F48 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 02423F4C */ cpu->r[3] = cpu->r[29];
|
|
/* 02423F50 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02423F54 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02423F54 */ rbrew_write32(cpu->mem, _t31, cpu->r[31]);
|
|
/* 02423F58 */ cpu->f[30] = (double)(float)cpu->f[11];
|
|
/* 02423F5C */ Gambit_fn_027EE100(cpu);
|
|
/* 02423F60 */ cpu->r[7] = 0x10090000u;
|
|
/* 02423F64 */ _t32 = cpu->r[7] + 0x000077D0u;
|
|
/* 02423F64 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 02423F68 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[12]);
|
|
/* 02423F6C */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02423F6C */ _t34 = _t33 & 0x00000001u;
|
|
/* 02423F6C */ if (_t34) goto L_02423FC8; else goto L_02423F70;
|
|
L_02423F70: ; // 0x2423f70
|
|
/* 02423F70 */ goto L_02424020;
|
|
L_02423F74: ; // 0x2423f74
|
|
/* 02423F74 */ cpu->r[8] = 0x43300000u;
|
|
/* 02423F78 */ cpu->r[11] = 0x10090000u;
|
|
/* 02423F7C */ cpu->r[0] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 02423F80 */ _t35 = cpu->r[1] + 0x00000018u;
|
|
/* 02423F80 */ rbrew_write32(cpu->mem, _t35, cpu->r[8]);
|
|
/* 02423F84 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 02423F88 */ _t36 = cpu->r[11] + 0x000077C8u;
|
|
/* 02423F88 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 02423F8C */ cpu->r[31] = 0x10090000u;
|
|
/* 02423F90 */ _t37 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02423F90 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 02423F94 */ _t38 = cpu->r[1] + 0x00000018u;
|
|
/* 02423F94 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t38);
|
|
/* 02423F98 */ cpu->r[31] = cpu->r[31] + 0x000077E0u;
|
|
/* 02423F9C */ cpu->f[11] = cpu->f[13] - cpu->f[0];
|
|
/* 02423FA0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02423FA4 */ _t39 = cpu->r[1] + 0x00000010u;
|
|
/* 02423FA4 */ rbrew_write32(cpu->mem, _t39, cpu->r[31]);
|
|
/* 02423FA8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02423FAC */ _t40 = cpu->r[1] + 0x00000014u;
|
|
/* 02423FAC */ rbrew_write32(cpu->mem, _t40, cpu->r[28]);
|
|
/* 02423FB0 */ cpu->f[30] = (double)(float)cpu->f[11];
|
|
/* 02423FB4 */ Gambit_fn_027EE100(cpu);
|
|
/* 02423FB8 */ cpu->r[7] = 0x10090000u;
|
|
/* 02423FBC */ _t41 = cpu->r[7] + 0x000077D0u;
|
|
/* 02423FBC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t41);
|
|
/* 02423FC0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[12]);
|
|
/* 02423FC4 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02423FC4 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02423FC4 */ if (_t43) goto L_02423FC8; else goto L_02424020;
|
|
L_02423FC8: ; // 0x2423fc8
|
|
/* 02423FC8 */ _t44 = cpu->r[1] + 0x00000014u;
|
|
/* 02423FC8 */ rbrew_write32(cpu->mem, _t44, cpu->r[28]);
|
|
/* 02423FCC */ cpu->f[1] = cpu->f[12];
|
|
/* 02423FD0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02423FD4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02423FD8 */ cpu->r[4] = 0x00000002u;
|
|
/* 02423FDC */ _t45 = cpu->r[1] + 0x00000010u;
|
|
/* 02423FDC */ rbrew_write32(cpu->mem, _t45, cpu->r[31]);
|
|
/* 02423FE0 */ Gambit_fn_027ED914(cpu);
|
|
/* 02423FE4 */ cpu->r[6] = 0x10090000u;
|
|
/* 02423FE8 */ _t46 = cpu->r[1] + 0x00000014u;
|
|
/* 02423FE8 */ rbrew_write32(cpu->mem, _t46, cpu->r[28]);
|
|
/* 02423FEC */ cpu->r[3] = cpu->r[29];
|
|
/* 02423FF0 */ cpu->r[6] = cpu->r[6] + 0x000077F0u;
|
|
/* 02423FF4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02423FF8 */ _t47 = cpu->r[1] + 0x00000010u;
|
|
/* 02423FF8 */ rbrew_write32(cpu->mem, _t47, cpu->r[6]);
|
|
/* 02423FFC */ Gambit_fn_026D86B0(cpu);
|
|
/* 02424000 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02424004 */ _t48 = cpu->r[11] + 0xFFFFED9Cu;
|
|
/* 02424004 */ cpu->r[7] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02424004 */ cpu->r[11] = _t48;
|
|
/* 02424008 */ cpu->r[31] = cpu->r[3];
|
|
/* 0242400C */ cpu->r[4] = 0x101D0000u;
|
|
/* 02424010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02424014 */ cpu->r[4] = cpu->r[4] + 0xFFFFEDDCu;
|
|
/* 02424018 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424018 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02424018 */ if (_t50) goto L_0242401C; else goto L_02424094;
|
|
L_0242401C: ; // 0x242401c
|
|
/* 0242401C */ goto L_02424080;
|
|
L_02424020: ; // 0x2424020
|
|
/* 02424020 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[1]);
|
|
/* 02424024 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02424024 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02424024 */ if (_t52) goto L_02424028; else goto L_0242402C;
|
|
L_02424028: ; // 0x2424028
|
|
/* 02424028 */ cpu->f[30] = cpu->f[1];
|
|
L_0242402C: ; // 0x242402c
|
|
/* 0242402C */ _t53 = cpu->r[1] + 0x00000014u;
|
|
/* 0242402C */ rbrew_write32(cpu->mem, _t53, cpu->r[28]);
|
|
/* 02424030 */ cpu->f[1] = cpu->f[30];
|
|
/* 02424034 */ cpu->r[3] = cpu->r[29];
|
|
/* 02424038 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0242403C */ cpu->r[4] = 0x00000002u;
|
|
/* 02424040 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 02424040 */ rbrew_write32(cpu->mem, _t54, cpu->r[31]);
|
|
/* 02424044 */ Gambit_fn_027ED914(cpu);
|
|
/* 02424048 */ cpu->r[6] = 0x10090000u;
|
|
/* 0242404C */ _t55 = cpu->r[1] + 0x00000014u;
|
|
/* 0242404C */ rbrew_write32(cpu->mem, _t55, cpu->r[28]);
|
|
/* 02424050 */ cpu->r[3] = cpu->r[29];
|
|
/* 02424054 */ cpu->r[6] = cpu->r[6] + 0x000077F0u;
|
|
/* 02424058 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0242405C */ _t56 = cpu->r[1] + 0x00000010u;
|
|
/* 0242405C */ rbrew_write32(cpu->mem, _t56, cpu->r[6]);
|
|
/* 02424060 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02424064 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02424068 */ _t57 = cpu->r[11] + 0xFFFFED9Cu;
|
|
/* 02424068 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02424068 */ cpu->r[11] = _t57;
|
|
/* 0242406C */ cpu->r[31] = cpu->r[3];
|
|
/* 02424070 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02424074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02424078 */ cpu->r[4] = cpu->r[4] + 0xFFFFEDDCu;
|
|
/* 0242407C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242407C */ _t59 = _t58 & 0x00000001u;
|
|
/* 0242407C */ if (_t59) goto L_02424080; else goto L_02424094;
|
|
L_02424080: ; // 0x2424080
|
|
/* 02424080 */ cpu->r[9] = 0x10090000u;
|
|
/* 02424084 */ cpu->r[8] = 0x00000001u;
|
|
/* 02424088 */ cpu->r[9] = cpu->r[9] + 0x00007798u;
|
|
/* 0242408C */ _t60 = cpu->r[11] + 0x00000000u;
|
|
/* 0242408C */ rbrew_write32(cpu->mem, _t60, cpu->r[8]);
|
|
/* 02424090 */ _t61 = cpu->r[4] + 0x00000000u;
|
|
/* 02424090 */ rbrew_write32(cpu->mem, _t61, cpu->r[9]);
|
|
L_02424094: ; // 0x2424094
|
|
/* 02424094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02424098 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424098 */ _t63 = _t62 & 0x00000001u;
|
|
/* 02424098 */ if (_t63) goto L_024240B8; else goto L_0242409C;
|
|
L_0242409C: ; // 0x242409c
|
|
/* 0242409C */ _t64 = cpu->r[31] + 0x00000000u;
|
|
/* 0242409C */ cpu->r[10] = rbrew_read32(cpu->mem, _t64);
|
|
/* 024240A0 */ _t65 = cpu->r[10] + 0x0000001Cu;
|
|
/* 024240A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 024240A4 */ cpu->ctr = cpu->r[0];
|
|
/* 024240A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024240AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024240B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024240B4 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024240B4 */ _t67 = _t66 & 0x00000001u;
|
|
/* 024240B4 */ if (_t67) goto L_024240B8; else goto L_024240BC;
|
|
L_024240B8: ; // 0x24240b8
|
|
/* 024240B8 */ cpu->r[31] = 0x00000000u;
|
|
L_024240BC: ; // 0x24240bc
|
|
/* 024240BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024240C0 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024240C0 */ _t69 = _t68 & 0x00000001u;
|
|
/* 024240C0 */ if (_t69) goto L_02424168; else goto L_024240C4;
|
|
L_024240C4: ; // 0x24240c4
|
|
/* 024240C4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024240C8 */ _t70 = cpu->r[26] + 0x00000010u;
|
|
/* 024240C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t70);
|
|
/* 024240CC */ cpu->r[3] = cpu->r[31];
|
|
/* 024240D0 */ cpu->r[6] = cpu->r[5];
|
|
/* 024240D4 */ Gambit_fn_020CF94C(cpu);
|
|
/* 024240D8 */ _t71 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024240D8 */ rbrew_write32(cpu->mem, _t71, cpu->r[28]);
|
|
/* 024240DC */ cpu->r[30] = 0x10090000u;
|
|
/* 024240E0 */ cpu->r[0] = 0x10090000u;
|
|
/* 024240E4 */ _t72 = cpu->r[1] + 0x00000034u;
|
|
/* 024240E4 */ rbrew_write32(cpu->mem, _t72, cpu->r[28]);
|
|
/* 024240E8 */ cpu->r[30] = cpu->r[30] + 0x000077D4u;
|
|
/* 024240EC */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 024240F0 */ cpu->r[0] = cpu->r[0] + 0x00007800u;
|
|
/* 024240F4 */ _t73 = cpu->r[1] + 0x00000028u;
|
|
/* 024240F4 */ rbrew_write32(cpu->mem, _t73, cpu->r[30]);
|
|
/* 024240F8 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 024240FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02424100 */ _t74 = cpu->r[1] + 0x00000030u;
|
|
/* 02424100 */ rbrew_write32(cpu->mem, _t74, cpu->r[0]);
|
|
/* 02424104 */ Gambit_fn_027EC294(cpu);
|
|
/* 02424108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242410C */ cpu->r[4] = cpu->r[3];
|
|
/* 02424110 */ _t75 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424110 */ _t76 = _t75 & 0x00000001u;
|
|
/* 02424110 */ if (_t76) goto L_02424168; else goto L_02424114;
|
|
L_02424114: ; // 0x2424114
|
|
/* 02424114 */ cpu->r[5] = 0x00000000u;
|
|
/* 02424118 */ _t77 = cpu->r[1] + 0x00000058u;
|
|
/* 02424118 */ rbrew_write32(cpu->mem, _t77, cpu->r[5]);
|
|
/* 0242411C */ _t78 = cpu->r[1] + 0x0000005Eu;
|
|
/* 0242411C */ rbrew_write16(cpu->mem, _t78, (uint16_t)cpu->r[5]);
|
|
/* 02424120 */ cpu->r[3] = cpu->r[1] + 0x00000058u;
|
|
/* 02424124 */ _t79 = cpu->r[1] + 0x0000005Cu;
|
|
/* 02424124 */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[5]);
|
|
/* 02424128 */ Gambit_fn_02800CB0(cpu);
|
|
/* 0242412C */ _t80 = cpu->r[29] + 0x0000023Cu;
|
|
/* 0242412C */ cpu->r[3] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02424130 */ cpu->r[4] = cpu->r[1] + 0x00000058u;
|
|
/* 02424134 */ Gambit_fn_02801068(cpu);
|
|
/* 02424138 */ _t81 = cpu->r[29] + 0x0000023Cu;
|
|
/* 02424138 */ cpu->r[7] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0242413C */ cpu->r[0] = 0x10090000u;
|
|
/* 02424140 */ _t82 = cpu->r[1] + 0x00000044u;
|
|
/* 02424140 */ rbrew_write32(cpu->mem, _t82, cpu->r[28]);
|
|
/* 02424144 */ cpu->r[0] = cpu->r[0] + 0x00007810u;
|
|
/* 02424148 */ cpu->r[6] = 0x00000000u;
|
|
/* 0242414C */ _t83 = cpu->r[1] + 0x00000040u;
|
|
/* 0242414C */ rbrew_write32(cpu->mem, _t83, cpu->r[0]);
|
|
/* 02424150 */ cpu->r[4] = cpu->r[1] + 0x00000038u;
|
|
/* 02424154 */ cpu->r[5] = cpu->r[1] + 0x00000040u;
|
|
/* 02424158 */ _t84 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02424158 */ rbrew_write32(cpu->mem, _t84, cpu->r[28]);
|
|
/* 0242415C */ cpu->r[3] = cpu->r[29];
|
|
/* 02424160 */ _t85 = cpu->r[1] + 0x00000038u;
|
|
/* 02424160 */ rbrew_write32(cpu->mem, _t85, cpu->r[30]);
|
|
/* 02424164 */ Gambit_fn_02800AB0(cpu);
|
|
L_02424168: ; // 0x2424168
|
|
/* 02424168 */ Gambit_fn_027E3F5C(cpu);
|
|
/* 0242416C */ cpu->r[0] = 0x10090000u;
|
|
/* 02424170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424174 */ cpu->r[3] = cpu->r[29];
|
|
/* 02424178 */ cpu->r[0] = cpu->r[0] + 0x000077D8u;
|
|
/* 0242417C */ cpu->r[4] = 0x00000001u;
|
|
/* 02424180 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424180 */ _t87 = _t86 & 0x00000001u;
|
|
/* 02424180 */ if (_t87) goto L_024241BC; else goto L_02424184;
|
|
L_02424184: ; // 0x2424184
|
|
/* 02424184 */ _t88 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02424184 */ rbrew_write32(cpu->mem, _t88, cpu->r[28]);
|
|
/* 02424188 */ cpu->r[5] = cpu->r[1] + 0x00000048u;
|
|
/* 0242418C */ _t89 = cpu->r[1] + 0x00000048u;
|
|
/* 0242418C */ rbrew_write32(cpu->mem, _t89, cpu->r[0]);
|
|
/* 02424190 */ Gambit_fn_027ED700(cpu);
|
|
/* 02424194 */ /* nop */
|
|
/* 02424198 */ _t90 = cpu->r[1] + 0x00000128u;
|
|
/* 02424198 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 0242419C */ _t91 = cpu->r[1] + 0x00000138u;
|
|
/* 0242419C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t91);
|
|
/* 024241A0 */ _t92 = cpu->r[1] + 0x00000120u;
|
|
/* 024241A0 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t92);
|
|
/* 024241A4 */ _t93 = cpu->r[1] + 0x00000130u;
|
|
/* 024241A4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t93);
|
|
/* 024241A8 */ _t94 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024241A8 */ _t95 = _t94 & 0x00000001u;
|
|
/* 024241A8 */ if (_t95) goto L_024241AC; // else: addr-0 trap, fall-through
|
|
L_024241AC: ; // 0x24241ac
|
|
/* 024241AC */ _t96 = cpu->r[1] + 0x00000144u;
|
|
/* 024241AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t96);
|
|
/* 024241B0 */ cpu->lr = cpu->r[0];
|
|
/* 024241B4 */ cpu->r[1] = cpu->r[1] + 0x00000140u;
|
|
/* 024241B8 */ return;
|
|
L_024241BC: ; // 0x24241bc
|
|
/* 024241BC */ _t97 = cpu->r[1] + 0x00000054u;
|
|
/* 024241BC */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 024241C0 */ cpu->r[5] = cpu->r[1] + 0x00000050u;
|
|
/* 024241C4 */ _t98 = cpu->r[1] + 0x00000050u;
|
|
/* 024241C4 */ rbrew_write32(cpu->mem, _t98, cpu->r[0]);
|
|
/* 024241C8 */ Gambit_fn_027ED858(cpu);
|
|
/* 024241CC */ /* nop */
|
|
/* 024241D0 */ _t99 = cpu->r[1] + 0x00000128u;
|
|
/* 024241D0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 024241D4 */ _t100 = cpu->r[1] + 0x00000138u;
|
|
/* 024241D4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t100);
|
|
/* 024241D8 */ _t101 = cpu->r[1] + 0x00000120u;
|
|
/* 024241D8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t101);
|
|
/* 024241DC */ _t102 = cpu->r[1] + 0x00000130u;
|
|
/* 024241DC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t102);
|
|
/* 024241E0 */ _t103 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024241E0 */ _t104 = _t103 & 0x00000001u;
|
|
/* 024241E0 */ if (_t104) goto L_024241E4; // else: addr-0 trap, fall-through
|
|
L_024241E4: ; // 0x24241e4
|
|
/* 024241E4 */ _t105 = cpu->r[1] + 0x00000144u;
|
|
/* 024241E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t105);
|
|
/* 024241E8 */ cpu->lr = cpu->r[0];
|
|
/* 024241EC */ cpu->r[1] = cpu->r[1] + 0x00000140u;
|
|
/* 024241F0 */ return;
|
|
}
|
|
|
|
// fn_024241F8 @ 0x24241f8
|
|
void Gambit_fn_024241F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38;
|
|
|
|
L_024241F8: ; // 0x24241f8
|
|
/* 024241F8 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 024241F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024241F8 */ cpu->r[1] = _t0;
|
|
/* 024241FC */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024241FC */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 02424200 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 02424200 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02424204 */ cpu->r[28] = 0x10090000u;
|
|
/* 02424208 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 02424208 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0242420C */ cpu->r[28] = cpu->r[28] + 0x00007728u;
|
|
/* 02424210 */ cpu->r[30] = cpu->r[3];
|
|
/* 02424214 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02424214 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02424218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0242421C */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0242421C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02424220 */ cpu->r[29] = 0x10090000u;
|
|
/* 02424224 */ cpu->r[31] = cpu->r[5];
|
|
/* 02424228 */ cpu->r[29] = cpu->r[29] + 0x00007828u;
|
|
/* 0242422C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242422C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0242422C */ if (_t7) goto L_02424258; else goto L_02424230;
|
|
L_02424230: ; // 0x2424230
|
|
/* 02424230 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424230 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 02424234 */ cpu->r[6] = 0x10090000u;
|
|
/* 02424238 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02424238 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0242423C */ _t10 = cpu->r[30] + 0x0000022Cu;
|
|
/* 0242423C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02424240 */ cpu->r[4] = 0x00000001u;
|
|
/* 02424244 */ _t11 = cpu->r[6] + 0x00007820u;
|
|
/* 02424244 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02424248 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0242424C */ Gambit_fn_027ED914(cpu);
|
|
/* 02424250 */ cpu->r[7] = 0x00000001u;
|
|
/* 02424254 */ _t12 = cpu->r[30] + 0x00000234u;
|
|
/* 02424254 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[7]);
|
|
L_02424258: ; // 0x2424258
|
|
/* 02424258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242425C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242425C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0242425C */ if (_t14) goto L_024242F4; else goto L_02424260;
|
|
L_02424260: ; // 0x2424260
|
|
/* 02424260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02424264 */ cpu->r[12] = cpu->r[30] + 0x00000230u;
|
|
/* 02424268 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424268 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02424268 */ if (_t16) goto L_0242426C; else goto L_02424298;
|
|
L_0242426C: ; // 0x242426c
|
|
/* 0242426C */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0242426C */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02424270 */ cpu->r[11] = 0x10090000u;
|
|
/* 02424274 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02424274 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 02424278 */ _t19 = cpu->r[12] + 0x00000000u;
|
|
/* 02424278 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0242427C */ cpu->r[4] = 0x00000001u;
|
|
/* 02424280 */ _t20 = cpu->r[11] + 0x000077D0u;
|
|
/* 02424280 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02424284 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02424288 */ Gambit_fn_027ED914(cpu);
|
|
/* 0242428C */ cpu->r[0] = 0x00000001u;
|
|
/* 02424290 */ _t21 = cpu->r[30] + 0x00000235u;
|
|
/* 02424290 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[0]);
|
|
/* 02424294 */ goto L_024242F4;
|
|
L_02424298: ; // 0x2424298
|
|
/* 02424298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000003u);
|
|
/* 0242429C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242429C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0242429C */ if (_t23) goto L_024242A0; else goto L_024242CC;
|
|
L_024242A0: ; // 0x24242a0
|
|
/* 024242A0 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 024242A0 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 024242A4 */ cpu->r[10] = 0x10090000u;
|
|
/* 024242A8 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024242A8 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 024242AC */ _t26 = cpu->r[12] + 0x00000000u;
|
|
/* 024242AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024242B0 */ cpu->r[4] = 0x00000001u;
|
|
/* 024242B4 */ _t27 = cpu->r[10] + 0x000077BCu;
|
|
/* 024242B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 024242B8 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 024242BC */ Gambit_fn_027ED914(cpu);
|
|
/* 024242C0 */ cpu->r[0] = 0x00000001u;
|
|
/* 024242C4 */ _t28 = cpu->r[30] + 0x00000235u;
|
|
/* 024242C4 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[0]);
|
|
/* 024242C8 */ goto L_024242F4;
|
|
L_024242CC: ; // 0x24242cc
|
|
/* 024242CC */ _t29 = cpu->r[1] + 0x00000020u;
|
|
/* 024242CC */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 024242D0 */ cpu->r[9] = 0x10090000u;
|
|
/* 024242D4 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 024242D4 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 024242D8 */ _t31 = cpu->r[12] + 0x00000000u;
|
|
/* 024242D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024242DC */ cpu->r[4] = 0x00000001u;
|
|
/* 024242E0 */ _t32 = cpu->r[9] + 0x00007824u;
|
|
/* 024242E0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 024242E4 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 024242E8 */ Gambit_fn_027ED914(cpu);
|
|
/* 024242EC */ cpu->r[0] = 0x00000001u;
|
|
/* 024242F0 */ _t33 = cpu->r[30] + 0x00000235u;
|
|
/* 024242F0 */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[0]);
|
|
L_024242F4: ; // 0x24242f4
|
|
/* 024242F4 */ _t34 = cpu->r[1] + 0x00000028u;
|
|
/* 024242F4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024242F8 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024242F8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024242FC */ _t36 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024242FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02424300 */ _t37 = cpu->r[1] + 0x00000030u;
|
|
/* 02424300 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02424304 */ cpu->lr = cpu->r[0];
|
|
/* 02424308 */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 02424308 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0242430C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02424310 */ return;
|
|
}
|
|
|
|
// fn_02424314 @ 0x2424314
|
|
void Gambit_fn_02424314(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37;
|
|
|
|
L_02424314: ; // 0x2424314
|
|
/* 02424314 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 02424314 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424314 */ cpu->r[1] = _t0;
|
|
/* 02424318 */ /* nop */
|
|
/* 0242431C */ cpu->r[0] = cpu->lr;
|
|
/* 02424320 */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02424320 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02424324 */ cpu->r[29] = 0x00000000u;
|
|
/* 02424328 */ cpu->r[10] = cpu->r[1] + 0x00000014u;
|
|
/* 0242432C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0242432C */ rbrew_write32(cpu->mem, _t2, cpu->r[10]);
|
|
/* 02424330 */ cpu->r[0] = 0x00000020u;
|
|
/* 02424334 */ cpu->r[11] = 0x10090000u;
|
|
/* 02424338 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02424338 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242433C */ cpu->r[11] = cpu->r[11] + 0x00007770u;
|
|
/* 02424340 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424340 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 02424344 */ cpu->r[21] = 0x00000002u;
|
|
/* 02424348 */ cpu->r[12] = 0x10110000u;
|
|
/* 0242434C */ cpu->r[22] = 0x101D0000u;
|
|
/* 02424350 */ cpu->r[23] = 0x101D0000u;
|
|
/* 02424354 */ cpu->r[24] = 0x00000001u;
|
|
/* 02424358 */ cpu->r[28] = cpu->r[3];
|
|
/* 0242435C */ _t5 = cpu->r[12] + 0x00007399u;
|
|
/* 0242435C */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02424360 */ cpu->r[27] = 0x101E0000u;
|
|
/* 02424364 */ cpu->r[26] = 0x10090000u;
|
|
/* 02424368 */ cpu->r[25] = cpu->r[28] + 0x0000022Cu;
|
|
/* 0242436C */ _t6 = cpu->r[1] + 0x00000033u;
|
|
/* 0242436C */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 02424370 */ cpu->r[20] = cpu->r[29];
|
|
/* 02424374 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02424374 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
L_02424378: ; // 0x2424378
|
|
/* 02424378 */ cpu->r[5] = cpu->r[29];
|
|
/* 0242437C */ cpu->r[4] = cpu->r[26] + 0x00007830u;
|
|
/* 02424380 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02424384 */ _t8 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02424384 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02424384 */ if (_t9) goto L_02424388; // else: addr-0 trap, fall-through
|
|
L_02424388: ; // 0x2424388
|
|
/* 02424388 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0242438C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 02424390 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02424390 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02424390 */ if (_t11) goto L_02424394; else goto L_024243B8;
|
|
L_02424394: ; // 0x2424394
|
|
/* 02424394 */ cpu->r[3] = cpu->r[28];
|
|
/* 02424398 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242439C */ cpu->r[30] = cpu->r[25] + cpu->r[20];
|
|
/* 024243A0 */ Gambit_fn_026D86B0(cpu);
|
|
/* 024243A4 */ _t12 = cpu->r[23] + 0xFFFFED98u;
|
|
/* 024243A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024243A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024243AC */ cpu->r[31] = cpu->r[3];
|
|
/* 024243B0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024243B0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024243B0 */ if (_t14) goto L_024243B4; else goto L_024243E8;
|
|
L_024243B4: ; // 0x24243b4
|
|
/* 024243B4 */ goto L_024243D8;
|
|
L_024243B8: ; // 0x24243b8
|
|
/* 024243B8 */ cpu->r[3] = cpu->r[28];
|
|
/* 024243BC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024243C0 */ cpu->r[30] = cpu->r[25];
|
|
/* 024243C4 */ Gambit_fn_026D86B0(cpu);
|
|
/* 024243C8 */ _t15 = cpu->r[23] + 0xFFFFED98u;
|
|
/* 024243C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024243CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024243D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024243D4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024243D4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024243D4 */ if (_t17) goto L_024243D8; else goto L_024243E8;
|
|
L_024243D8: ; // 0x24243d8
|
|
/* 024243D8 */ cpu->r[0] = 0x10090000u;
|
|
/* 024243DC */ _t18 = cpu->r[23] + 0xFFFFED98u;
|
|
/* 024243DC */ rbrew_write32(cpu->mem, _t18, cpu->r[24]);
|
|
/* 024243E0 */ cpu->r[0] = cpu->r[0] + 0x00007798u;
|
|
/* 024243E4 */ _t19 = cpu->r[22] + 0xFFFFEDE0u;
|
|
/* 024243E4 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_024243E8: ; // 0x24243e8
|
|
/* 024243E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024243EC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024243EC */ _t21 = _t20 & 0x00000001u;
|
|
/* 024243EC */ if (_t21) goto L_02424410; else goto L_024243F0;
|
|
L_024243F0: ; // 0x24243f0
|
|
/* 024243F0 */ _t22 = cpu->r[31] + 0x00000000u;
|
|
/* 024243F0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024243F4 */ _t23 = cpu->r[6] + 0x0000001Cu;
|
|
/* 024243F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024243F8 */ cpu->ctr = cpu->r[0];
|
|
/* 024243FC */ cpu->r[3] = cpu->r[31];
|
|
/* 02424400 */ cpu->r[4] = cpu->r[22] + 0xFFFFEDE0u;
|
|
/* 02424404 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242440C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242440C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0242440C */ if (_t25) goto L_02424410; else goto L_02424414;
|
|
L_02424410: ; // 0x2424410
|
|
/* 02424410 */ cpu->r[31] = 0x00000000u;
|
|
L_02424414: ; // 0x2424414
|
|
/* 02424414 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000002u);
|
|
/* 02424418 */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 02424418 */ rbrew_write32(cpu->mem, _t26, cpu->r[31]);
|
|
/* 0242441C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242441C */ _t28 = _t27 & 0x00000001u;
|
|
/* 0242441C */ if (_t28) goto L_02424420; else goto L_02424444;
|
|
L_02424420: ; // 0x2424420
|
|
/* 02424420 */ _t29 = cpu->r[25] + cpu->r[20];
|
|
/* 02424420 */ cpu->r[8] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02424424 */ _t30 = cpu->r[8] + 0x000001ACu;
|
|
/* 02424424 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02424428 */ cpu->r[4] = cpu->r[27] + 0x00007120u;
|
|
/* 0242442C */ Gambit_fn_027B70B8(cpu);
|
|
/* 02424430 */ cpu->r[21] = cpu->r[21] + 0xFFFFFFFFu;
|
|
/* 02424430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02424434 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 02424438 */ cpu->r[20] = cpu->r[20] + 0x00000004u;
|
|
/* 0242443C */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242443C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0242443C */ if (_t32) goto L_02424440; else goto L_02424378;
|
|
L_02424440: ; // 0x2424440
|
|
/* 02424440 */ goto L_02424464;
|
|
L_02424444: ; // 0x2424444
|
|
/* 02424444 */ _t33 = cpu->r[25] + 0x00000000u;
|
|
/* 02424444 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02424448 */ _t34 = cpu->r[8] + 0x000001ACu;
|
|
/* 02424448 */ cpu->r[3] = rbrew_read32(cpu->mem, _t34);
|
|
/* 0242444C */ cpu->r[4] = cpu->r[27] + 0x00007120u;
|
|
/* 02424450 */ Gambit_fn_027B70B8(cpu);
|
|
/* 02424454 */ cpu->r[21] = cpu->r[21] + 0xFFFFFFFFu;
|
|
/* 02424454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02424458 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0242445C */ cpu->r[20] = cpu->r[20] + 0x00000004u;
|
|
/* 02424460 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424460 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02424460 */ if (_t36) goto L_02424464; else goto L_02424378;
|
|
L_02424464: ; // 0x2424464
|
|
/* 02424464 */ /* nop */
|
|
/* 02424468 */ _t37 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02424468 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0242446C */ cpu->lr = cpu->r[0];
|
|
/* 02424470 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02424474 */ return;
|
|
}
|
|
|
|
// fn_02424478 @ 0x2424478
|
|
void Gambit_fn_02424478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02424478: ; // 0x2424478
|
|
/* 02424478 */ cpu->r[0] = cpu->lr;
|
|
/* 0242447C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0242447C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242447C */ cpu->r[1] = _t0;
|
|
/* 02424480 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02424480 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424484 */ cpu->r[30] = 0x10090000u;
|
|
/* 02424488 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02424488 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0242448C */ cpu->r[31] = cpu->r[3];
|
|
/* 02424490 */ cpu->r[3] = 0x00000000u;
|
|
/* 02424494 */ cpu->r[30] = cpu->r[30] + 0x00007728u;
|
|
/* 02424498 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0242449C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242449C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024244A0 */ cpu->r[0] = 0x10090000u;
|
|
/* 024244A4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024244A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024244A8 */ cpu->r[0] = cpu->r[0] + 0x00007840u;
|
|
/* 024244AC */ cpu->r[4] = cpu->r[31];
|
|
/* 024244B0 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 024244B0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024244B4 */ Gambit_fn_020A7150(cpu);
|
|
/* 024244B8 */ cpu->r[0] = 0x10090000u;
|
|
/* 024244BC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024244BC */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 024244C0 */ cpu->r[0] = cpu->r[0] + 0x0000784Cu;
|
|
/* 024244C4 */ cpu->r[4] = cpu->r[31];
|
|
/* 024244C8 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 024244C8 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 024244CC */ cpu->r[3] = 0x00000000u;
|
|
/* 024244D0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024244D4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 024244D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024244D8 */ Gambit_fn_020A7150(cpu);
|
|
/* 024244DC */ _t9 = cpu->r[31] + 0x00000228u;
|
|
/* 024244DC */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 024244E0 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024244E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024244E4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 024244E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024244E8 */ cpu->lr = cpu->r[0];
|
|
/* 024244EC */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 024244EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024244F0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024244F4 */ return;
|
|
}
|
|
|
|
// fn_0242447C @ 0x242447c
|
|
void Gambit_fn_0242447C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0242447C: ; // 0x242447c
|
|
/* 0242447C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0242447C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242447C */ cpu->r[1] = _t0;
|
|
/* 02424480 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02424480 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424484 */ cpu->r[30] = 0x10090000u;
|
|
/* 02424488 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02424488 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0242448C */ cpu->r[31] = cpu->r[3];
|
|
/* 02424490 */ cpu->r[3] = 0x00000000u;
|
|
/* 02424494 */ cpu->r[30] = cpu->r[30] + 0x00007728u;
|
|
/* 02424498 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0242449C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242449C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024244A0 */ cpu->r[0] = 0x10090000u;
|
|
/* 024244A4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024244A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024244A8 */ cpu->r[0] = cpu->r[0] + 0x00007840u;
|
|
/* 024244AC */ cpu->r[4] = cpu->r[31];
|
|
/* 024244B0 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 024244B0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024244B4 */ Gambit_fn_020A7150(cpu);
|
|
/* 024244B8 */ cpu->r[0] = 0x10090000u;
|
|
/* 024244BC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024244BC */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 024244C0 */ cpu->r[0] = cpu->r[0] + 0x0000784Cu;
|
|
/* 024244C4 */ cpu->r[4] = cpu->r[31];
|
|
/* 024244C8 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 024244C8 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 024244CC */ cpu->r[3] = 0x00000000u;
|
|
/* 024244D0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024244D4 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 024244D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024244D8 */ Gambit_fn_020A7150(cpu);
|
|
/* 024244DC */ _t9 = cpu->r[31] + 0x00000228u;
|
|
/* 024244DC */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 024244E0 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024244E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024244E4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 024244E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024244E8 */ cpu->lr = cpu->r[0];
|
|
/* 024244EC */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 024244EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024244F0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024244F4 */ return;
|
|
}
|
|
|
|
// fn_024244F8 @ 0x24244f8
|
|
void Gambit_fn_024244F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61;
|
|
|
|
L_024244F8: ; // 0x24244f8
|
|
/* 024244F8 */ _t0 = cpu->r[1] + 0xFFFFFFA0u;
|
|
/* 024244F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024244F8 */ cpu->r[1] = _t0;
|
|
/* 024244FC */ /* nop */
|
|
/* 02424500 */ cpu->r[30] = 0x10090000u;
|
|
/* 02424504 */ cpu->r[0] = cpu->lr;
|
|
/* 02424508 */ cpu->r[30] = cpu->r[30] + 0x00007898u;
|
|
/* 0242450C */ cpu->r[26] = 0x10090000u;
|
|
/* 02424510 */ cpu->r[28] = 0x10090000u;
|
|
/* 02424514 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02424514 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424518 */ cpu->r[26] = cpu->r[26] + 0x00007728u;
|
|
/* 0242451C */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 0242451C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02424520 */ cpu->r[28] = cpu->r[28] + 0x00007858u;
|
|
/* 02424524 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02424524 */ rbrew_write32(cpu->mem, _t3, cpu->r[26]);
|
|
/* 02424528 */ cpu->r[6] = cpu->r[1] + 0x00000020u;
|
|
/* 0242452C */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 0242452C */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 02424530 */ cpu->r[31] = cpu->r[3];
|
|
/* 02424534 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02424534 */ rbrew_write32(cpu->mem, _t5, cpu->r[26]);
|
|
/* 02424538 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 0242453C */ _t6 = cpu->r[1] + 0x00000030u;
|
|
/* 0242453C */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 02424540 */ cpu->r[4] = cpu->r[1] + 0x00000028u;
|
|
/* 02424544 */ _t7 = cpu->r[1] + 0x00000034u;
|
|
/* 02424544 */ rbrew_write32(cpu->mem, _t7, cpu->r[26]);
|
|
/* 02424548 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0242454C */ cpu->r[10] = 0x10090000u;
|
|
/* 02424550 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 02424550 */ rbrew_write32(cpu->mem, _t8, cpu->r[26]);
|
|
/* 02424554 */ cpu->r[10] = cpu->r[10] + 0x0000785Cu;
|
|
/* 02424558 */ _t9 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02424558 */ rbrew_write32(cpu->mem, _t9, cpu->r[26]);
|
|
/* 0242455C */ cpu->r[0] = 0x10090000u;
|
|
/* 02424560 */ _t10 = cpu->r[1] + 0x00000034u;
|
|
/* 02424560 */ rbrew_write32(cpu->mem, _t10, cpu->r[26]);
|
|
/* 02424564 */ cpu->r[0] = cpu->r[0] + 0x00007880u;
|
|
/* 02424568 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 02424568 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 0242456C */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 02424570 */ cpu->r[3] = cpu->r[31];
|
|
/* 02424574 */ _t12 = cpu->r[1] + 0x00000028u;
|
|
/* 02424574 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02424578 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 0242457C */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 02424580 */ _t13 = cpu->r[1] + 0x00000030u;
|
|
/* 02424580 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 02424584 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02424588 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 02424588 */ rbrew_write32(cpu->mem, _t14, cpu->r[26]);
|
|
/* 0242458C */ cpu->r[0] = 0x10090000u;
|
|
/* 02424590 */ cpu->r[8] = 0x10090000u;
|
|
/* 02424594 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 02424594 */ rbrew_write32(cpu->mem, _t15, cpu->r[26]);
|
|
/* 02424598 */ cpu->r[0] = cpu->r[0] + 0x000078A4u;
|
|
/* 0242459C */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0242459C */ rbrew_write32(cpu->mem, _t16, cpu->r[26]);
|
|
/* 024245A0 */ cpu->r[8] = cpu->r[8] + 0x0000786Cu;
|
|
/* 024245A4 */ cpu->r[4] = cpu->r[1] + 0x00000020u;
|
|
/* 024245A8 */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 024245A8 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 024245AC */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 024245B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024245B4 */ _t18 = cpu->r[1] + 0x00000028u;
|
|
/* 024245B4 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 024245B8 */ cpu->r[6] = cpu->r[1] + 0x00000028u;
|
|
/* 024245BC */ _t19 = cpu->r[1] + 0x00000030u;
|
|
/* 024245BC */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 024245C0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024245C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024245C8 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 024245CC */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 024245CC */ rbrew_write32(cpu->mem, _t20, cpu->r[26]);
|
|
/* 024245D0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024245D4 */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 024245D4 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 024245D8 */ Gambit_fn_027ED798(cpu);
|
|
/* 024245DC */ cpu->r[27] = cpu->r[31] + 0x0000022Cu;
|
|
/* 024245E0 */ cpu->r[31] = 0x10090000u;
|
|
/* 024245E4 */ cpu->r[23] = 0x00000000u;
|
|
/* 024245E8 */ cpu->r[29] = 0x10090000u;
|
|
/* 024245EC */ cpu->r[31] = cpu->r[31] + 0x0000788Cu;
|
|
/* 024245F0 */ cpu->r[25] = cpu->r[23];
|
|
/* 024245F4 */ cpu->r[29] = cpu->r[29] + 0x00007864u;
|
|
L_024245F8: ; // 0x24245f8
|
|
/* 024245F8 */ cpu->r[24] = cpu->r[25];
|
|
/* 024245FC */ cpu->r[9] = cpu->r[27] + cpu->r[25];
|
|
L_02424600: ; // 0x2424600
|
|
/* 02424600 */ _t22 = cpu->r[1] + 0x00000018u;
|
|
/* 02424600 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 02424604 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 02424608 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424608 */ rbrew_write32(cpu->mem, _t23, cpu->r[26]);
|
|
/* 0242460C */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 0242460C */ rbrew_write32(cpu->mem, _t24, cpu->r[26]);
|
|
/* 02424610 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02424610 */ rbrew_write32(cpu->mem, _t25, cpu->r[26]);
|
|
/* 02424614 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02424614 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]);
|
|
/* 02424618 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 02424618 */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 0242461C */ _t28 = cpu->r[9] + 0x00000000u;
|
|
/* 0242461C */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02424620 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02424624 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02424628 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0242462C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000002u);
|
|
/* 02424630 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02424630 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02424630 */ if (_t30) goto L_02424634; else goto L_0242466C;
|
|
L_02424634: ; // 0x2424634
|
|
/* 02424634 */ _t31 = cpu->r[1] + 0x00000018u;
|
|
/* 02424634 */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 02424638 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242463C */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0242463C */ rbrew_write32(cpu->mem, _t32, cpu->r[26]);
|
|
/* 02424640 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424640 */ rbrew_write32(cpu->mem, _t33, cpu->r[26]);
|
|
/* 02424644 */ _t34 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02424644 */ rbrew_write32(cpu->mem, _t34, cpu->r[26]);
|
|
/* 02424648 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 02424648 */ rbrew_write32(cpu->mem, _t35, cpu->r[31]);
|
|
/* 0242464C */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 0242464C */ rbrew_write32(cpu->mem, _t36, cpu->r[29]);
|
|
/* 02424650 */ _t37 = cpu->r[27] + cpu->r[24];
|
|
/* 02424650 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02424654 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02424658 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 0242465C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02424660 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000002u);
|
|
/* 02424664 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02424664 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02424664 */ if (_t39) goto L_024246A0; else goto L_02424668;
|
|
L_02424668: ; // 0x2424668
|
|
/* 02424668 */ goto L_024246DC;
|
|
L_0242466C: ; // 0x242466c
|
|
/* 0242466C */ _t40 = cpu->r[1] + 0x00000018u;
|
|
/* 0242466C */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
/* 02424670 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424674 */ _t41 = cpu->r[1] + 0x00000014u;
|
|
/* 02424674 */ rbrew_write32(cpu->mem, _t41, cpu->r[26]);
|
|
/* 02424678 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424678 */ rbrew_write32(cpu->mem, _t42, cpu->r[26]);
|
|
/* 0242467C */ _t43 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242467C */ rbrew_write32(cpu->mem, _t43, cpu->r[26]);
|
|
/* 02424680 */ _t44 = cpu->r[1] + 0x00000010u;
|
|
/* 02424680 */ rbrew_write32(cpu->mem, _t44, cpu->r[31]);
|
|
/* 02424684 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 02424684 */ rbrew_write32(cpu->mem, _t45, cpu->r[29]);
|
|
/* 02424688 */ _t46 = cpu->r[27] + 0x00000000u;
|
|
/* 02424688 */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0242468C */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02424690 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02424694 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02424698 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000002u);
|
|
/* 0242469C */ _t47 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242469C */ _t48 = _t47 & 0x00000001u;
|
|
/* 0242469C */ if (_t48) goto L_024246A0; else goto L_024246DC;
|
|
L_024246A0: ; // 0x24246a0
|
|
/* 024246A0 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024246A0 */ rbrew_write32(cpu->mem, _t49, cpu->r[26]);
|
|
/* 024246A4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024246A8 */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 024246A8 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 024246AC */ _t51 = cpu->r[27] + cpu->r[24];
|
|
/* 024246AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 024246B0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024246B4 */ Gambit_fn_027ED798(cpu);
|
|
/* 024246B8 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 024246BC */ cpu->r[24] = cpu->r[24] + 0x00000004u;
|
|
/* 024246C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000002u);
|
|
/* 024246C4 */ cpu->r[25] = cpu->r[25] + 0x00000004u;
|
|
/* 024246C8 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024246C8 */ _t53 = _t52 & 0x00000001u;
|
|
/* 024246C8 */ if (_t53) goto L_024246CC; else goto L_02424708;
|
|
L_024246CC: ; // 0x24246cc
|
|
/* 024246CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], 0x00000002u);
|
|
/* 024246D0 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024246D0 */ _t55 = _t54 & 0x00000001u;
|
|
/* 024246D0 */ if (_t55) goto L_024245F8; else goto L_024246D4;
|
|
L_024246D4: ; // 0x24246d4
|
|
/* 024246D4 */ cpu->r[9] = cpu->r[27];
|
|
/* 024246D8 */ goto L_02424600;
|
|
L_024246DC: ; // 0x24246dc
|
|
/* 024246DC */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024246DC */ rbrew_write32(cpu->mem, _t56, cpu->r[26]);
|
|
/* 024246E0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024246E4 */ _t57 = cpu->r[1] + 0x00000008u;
|
|
/* 024246E4 */ rbrew_write32(cpu->mem, _t57, cpu->r[28]);
|
|
/* 024246E8 */ _t58 = cpu->r[27] + 0x00000000u;
|
|
/* 024246E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024246EC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024246F0 */ Gambit_fn_027ED798(cpu);
|
|
/* 024246F4 */ cpu->r[23] = cpu->r[23] + 0x00000001u;
|
|
/* 024246F8 */ cpu->r[24] = cpu->r[24] + 0x00000004u;
|
|
/* 024246FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000002u);
|
|
/* 02424700 */ cpu->r[25] = cpu->r[25] + 0x00000004u;
|
|
/* 02424704 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02424704 */ _t60 = _t59 & 0x00000001u;
|
|
/* 02424704 */ if (_t60) goto L_024246CC; else goto L_02424708;
|
|
L_02424708: ; // 0x2424708
|
|
/* 02424708 */ /* nop */
|
|
/* 0242470C */ _t61 = cpu->r[1] + 0x00000064u;
|
|
/* 0242470C */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02424710 */ cpu->lr = cpu->r[0];
|
|
/* 02424714 */ cpu->r[1] = cpu->r[1] + 0x00000060u;
|
|
/* 02424718 */ return;
|
|
}
|
|
|
|
// fn_0242471C @ 0x242471c
|
|
void Gambit_fn_0242471C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_0242471C: ; // 0x242471c
|
|
/* 0242471C */ cpu->r[0] = cpu->lr;
|
|
/* 02424720 */ cpu->r[11] = 0x10090000u;
|
|
/* 02424724 */ cpu->r[11] = cpu->r[11] + 0x000078B4u;
|
|
/* 02424728 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02424728 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424728 */ cpu->r[1] = _t0;
|
|
/* 0242472C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242472C */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 02424730 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02424730 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424734 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02424734 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02424738 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242473C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242473C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02424740 */ cpu->r[0] = 0x10090000u;
|
|
/* 02424744 */ _t5 = cpu->r[31] + 0x00000090u;
|
|
/* 02424744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02424748 */ cpu->r[0] = cpu->r[0] + 0x00007728u;
|
|
/* 0242474C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242474C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02424750 */ _t7 = cpu->r[12] + 0x00000014u;
|
|
/* 02424750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02424754 */ cpu->ctr = cpu->r[0];
|
|
/* 02424758 */ cpu->r[3] = cpu->r[31] + 0x0000008Cu;
|
|
/* 0242475C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424760 */ _t8 = cpu->r[31] + 0x00000090u;
|
|
/* 02424760 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02424764 */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 02424764 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02424768 */ cpu->ctr = cpu->r[11];
|
|
/* 0242476C */ cpu->r[3] = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424770 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424774 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424774 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02424778 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02424778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0242477C */ cpu->ctr = cpu->r[0];
|
|
/* 02424780 */ _t12 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424780 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02424784 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02424788 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242478C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0242478C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02424790 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02424794 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424794 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424794 */ if (_t15) goto L_02424798; else goto L_024247A4;
|
|
L_02424798: ; // 0x2424798
|
|
/* 02424798 */ cpu->r[3] = 0x00000000u;
|
|
/* 0242479C */ cpu->r[3] = 0x00000002u;
|
|
/* 024247A0 */ goto L_024247E8;
|
|
L_024247A4: ; // 0x24247a4
|
|
/* 024247A4 */ cpu->r[0] = 0x00080000u;
|
|
/* 024247A8 */ _t16 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024247A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024247AC */ cpu->r[12] = 0x10110000u;
|
|
/* 024247B0 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 024247B4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024247B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024247B8 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 024247BC */ cpu->ctr = cpu->r[0];
|
|
/* 024247C0 */ _t18 = cpu->r[12] + 0x00007399u;
|
|
/* 024247C0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 024247C4 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024247C8: ; // 0x24247c8
|
|
/* 024247C8 */ _t19 = cpu->r[9] + 0x00000001u;
|
|
/* 024247C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024247C8 */ cpu->r[9] = _t19;
|
|
/* 024247CC */ _t20 = cpu->r[11] + 0x00000001u;
|
|
/* 024247CC */ cpu->r[10] = rbrew_read8(cpu->mem, _t20);
|
|
/* 024247CC */ cpu->r[11] = _t20;
|
|
/* 024247D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 024247D4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024247D4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024247D4 */ if (_t22) goto L_024247D8; else goto L_024247E4;
|
|
L_024247D8: ; // 0x24247d8
|
|
/* 024247D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 024247DC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024247DC */ _t24 = _t23 & 0x00000001u;
|
|
/* 024247DC */ if (_t24) goto L_02424798; else goto L_024247E0;
|
|
L_024247E0: ; // 0x24247e0
|
|
/* 024247E0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024247E0 */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024247E0 */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 024247E0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 024247E0 */ if (_t27) goto L_024247C8; else goto L_024247E4;
|
|
L_024247E4: ; // 0x24247e4
|
|
/* 024247E4 */ cpu->r[3] = 0x00000000u;
|
|
L_024247E8: ; // 0x24247e8
|
|
/* 024247E8 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024247E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024247EC */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 024247EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024247F0 */ cpu->lr = cpu->r[0];
|
|
/* 024247F4 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 024247F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024247F8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024247FC */ return;
|
|
}
|
|
|
|
// fn_02424728 @ 0x2424728
|
|
void Gambit_fn_02424728(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_02424728: ; // 0x2424728
|
|
/* 02424728 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02424728 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424728 */ cpu->r[1] = _t0;
|
|
/* 0242472C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242472C */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 02424730 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02424730 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424734 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02424734 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02424738 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242473C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242473C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02424740 */ cpu->r[0] = 0x10090000u;
|
|
/* 02424744 */ _t5 = cpu->r[31] + 0x00000090u;
|
|
/* 02424744 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02424748 */ cpu->r[0] = cpu->r[0] + 0x00007728u;
|
|
/* 0242474C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242474C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02424750 */ _t7 = cpu->r[12] + 0x00000014u;
|
|
/* 02424750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02424754 */ cpu->ctr = cpu->r[0];
|
|
/* 02424758 */ cpu->r[3] = cpu->r[31] + 0x0000008Cu;
|
|
/* 0242475C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424760 */ _t8 = cpu->r[31] + 0x00000090u;
|
|
/* 02424760 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02424764 */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 02424764 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02424768 */ cpu->ctr = cpu->r[11];
|
|
/* 0242476C */ cpu->r[3] = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424770 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424774 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424774 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02424778 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02424778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0242477C */ cpu->ctr = cpu->r[0];
|
|
/* 02424780 */ _t12 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424780 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02424784 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02424788 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242478C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0242478C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02424790 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02424794 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424794 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424794 */ if (_t15) goto L_02424798; else goto L_024247A4;
|
|
L_02424798: ; // 0x2424798
|
|
/* 02424798 */ cpu->r[3] = 0x00000000u;
|
|
/* 0242479C */ cpu->r[3] = 0x00000002u;
|
|
/* 024247A0 */ goto L_024247E8;
|
|
L_024247A4: ; // 0x24247a4
|
|
/* 024247A4 */ cpu->r[0] = 0x00080000u;
|
|
/* 024247A8 */ _t16 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024247A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024247AC */ cpu->r[12] = 0x10110000u;
|
|
/* 024247B0 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 024247B4 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024247B4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024247B8 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 024247BC */ cpu->ctr = cpu->r[0];
|
|
/* 024247C0 */ _t18 = cpu->r[12] + 0x00007399u;
|
|
/* 024247C0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 024247C4 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024247C8: ; // 0x24247c8
|
|
/* 024247C8 */ _t19 = cpu->r[9] + 0x00000001u;
|
|
/* 024247C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024247C8 */ cpu->r[9] = _t19;
|
|
/* 024247CC */ _t20 = cpu->r[11] + 0x00000001u;
|
|
/* 024247CC */ cpu->r[10] = rbrew_read8(cpu->mem, _t20);
|
|
/* 024247CC */ cpu->r[11] = _t20;
|
|
/* 024247D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]);
|
|
/* 024247D4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024247D4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024247D4 */ if (_t22) goto L_024247D8; else goto L_024247E4;
|
|
L_024247D8: ; // 0x24247d8
|
|
/* 024247D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 024247DC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024247DC */ _t24 = _t23 & 0x00000001u;
|
|
/* 024247DC */ if (_t24) goto L_02424798; else goto L_024247E0;
|
|
L_024247E0: ; // 0x24247e0
|
|
/* 024247E0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024247E0 */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024247E0 */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 024247E0 */ _t27 = _t26 & 0x00000001u;
|
|
/* 024247E0 */ if (_t27) goto L_024247C8; else goto L_024247E4;
|
|
L_024247E4: ; // 0x24247e4
|
|
/* 024247E4 */ cpu->r[3] = 0x00000000u;
|
|
L_024247E8: ; // 0x24247e8
|
|
/* 024247E8 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024247E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024247EC */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 024247EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024247F0 */ cpu->lr = cpu->r[0];
|
|
/* 024247F4 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 024247F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024247F8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024247FC */ return;
|
|
}
|
|
|
|
// fn_02424800 @ 0x2424800
|
|
void Gambit_fn_02424800(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40;
|
|
|
|
L_02424800: ; // 0x2424800
|
|
/* 02424800 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 02424800 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424800 */ cpu->r[1] = _t0;
|
|
/* 02424804 */ /* nop */
|
|
/* 02424808 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02424808 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 0242480C */ cpu->r[0] = cpu->lr;
|
|
/* 02424810 */ _t2 = cpu->r[1] + 0x00000038u;
|
|
/* 02424810 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02424814 */ /* nop */
|
|
/* 02424818 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 02424818 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0242481C */ /* nop */
|
|
/* 02424820 */ _t4 = cpu->r[1] + 0x00000040u;
|
|
/* 02424820 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02424824 */ _t5 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02424824 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02424828 */ cpu->r[30] = cpu->r[3];
|
|
/* 0242482C */ _t6 = cpu->r[30] + 0x00000238u;
|
|
/* 0242482C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02424830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02424834 */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02424834 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02424834 */ if (_t8) goto L_02424838; else goto L_02424928;
|
|
L_02424838: ; // 0x2424838
|
|
/* 02424838 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02424838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0242483C */ _t9 = cpu->r[30] + 0x00000238u;
|
|
/* 0242483C */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02424840 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424840 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02424840 */ if (_t11) goto L_02424844; else goto L_02424928;
|
|
L_02424844: ; // 0x2424844
|
|
/* 02424844 */ cpu->r[12] = 0x10090000u;
|
|
/* 02424848 */ cpu->r[26] = 0x00000000u;
|
|
/* 0242484C */ _t12 = cpu->r[12] + 0x000077BCu;
|
|
/* 0242484C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02424850 */ cpu->r[29] = cpu->r[30] + 0x00000234u;
|
|
/* 02424854 */ cpu->r[28] = cpu->r[26];
|
|
/* 02424858 */ goto L_02424864;
|
|
L_0242485C: ; // 0x242485c
|
|
/* 0242485C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000002u);
|
|
/* 02424860 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02424860 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02424860 */ if (_t14) goto L_02424864; else goto L_02424874;
|
|
L_02424864: ; // 0x2424864
|
|
/* 02424864 */ cpu->r[7] = cpu->r[29] + cpu->r[26];
|
|
/* 02424868 */ cpu->r[27] = cpu->r[28];
|
|
/* 0242486C */ cpu->f[30] = cpu->f[31];
|
|
/* 02424870 */ goto L_02424878;
|
|
L_02424874: ; // 0x2424874
|
|
/* 02424874 */ cpu->r[7] = cpu->r[29];
|
|
L_02424878: ; // 0x2424878
|
|
/* 02424878 */ _t15 = cpu->r[7] + 0x00000000u;
|
|
/* 02424878 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15);
|
|
/* 0242487C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424880 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424880 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02424880 */ if (_t17) goto L_02424914; else goto L_02424884;
|
|
L_02424884: ; // 0x2424884
|
|
/* 02424884 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000002u);
|
|
/* 02424888 */ cpu->r[31] = cpu->r[30] + 0x0000022Cu;
|
|
/* 0242488C */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242488C */ _t19 = _t18 & 0x00000001u;
|
|
/* 0242488C */ if (_t19) goto L_02424890; else goto L_024248C8;
|
|
L_02424890: ; // 0x2424890
|
|
/* 02424890 */ cpu->r[6] = 0x10090000u;
|
|
/* 02424894 */ cpu->r[0] = 0x10090000u;
|
|
/* 02424898 */ cpu->r[6] = cpu->r[6] + 0x00007728u;
|
|
/* 0242489C */ cpu->r[0] = cpu->r[0] + 0x000078C0u;
|
|
/* 024248A0 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024248A0 */ rbrew_write32(cpu->mem, _t20, cpu->r[6]);
|
|
/* 024248A4 */ cpu->f[1] = cpu->f[30];
|
|
/* 024248A8 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 024248A8 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 024248AC */ _t22 = cpu->r[31] + cpu->r[27];
|
|
/* 024248AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024248B0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024248B4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024248B8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024248BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000002u);
|
|
/* 024248C0 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024248C0 */ _t24 = _t23 & 0x00000001u;
|
|
/* 024248C0 */ if (_t24) goto L_024248FC; else goto L_024248C4;
|
|
L_024248C4: ; // 0x24248c4
|
|
/* 024248C4 */ goto L_02424900;
|
|
L_024248C8: ; // 0x24248c8
|
|
/* 024248C8 */ cpu->r[6] = 0x10090000u;
|
|
/* 024248CC */ cpu->r[0] = 0x10090000u;
|
|
/* 024248D0 */ cpu->r[6] = cpu->r[6] + 0x00007728u;
|
|
/* 024248D4 */ cpu->r[0] = cpu->r[0] + 0x000078C0u;
|
|
/* 024248D8 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024248D8 */ rbrew_write32(cpu->mem, _t25, cpu->r[6]);
|
|
/* 024248DC */ cpu->f[1] = cpu->f[30];
|
|
/* 024248E0 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 024248E0 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 024248E4 */ _t27 = cpu->r[31] + 0x00000000u;
|
|
/* 024248E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024248E8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024248EC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024248F0 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024248F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000002u);
|
|
/* 024248F8 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024248F8 */ _t29 = _t28 & 0x00000001u;
|
|
/* 024248F8 */ if (_t29) goto L_024248FC; else goto L_024248C4;
|
|
L_024248FC: ; // 0x24248fc
|
|
/* 024248FC */ cpu->r[31] = cpu->r[31] + cpu->r[27];
|
|
L_02424900: ; // 0x2424900
|
|
/* 02424900 */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 02424900 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02424904 */ cpu->r[4] = 0x101E0000u;
|
|
/* 02424908 */ _t31 = cpu->r[9] + 0x000001ACu;
|
|
/* 02424908 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0242490C */ cpu->r[4] = cpu->r[4] + 0x00007120u;
|
|
/* 02424910 */ Gambit_fn_027B70F0(cpu);
|
|
L_02424914: ; // 0x2424914
|
|
/* 02424914 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02424918 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 0242491C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000002u);
|
|
/* 02424920 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02424924 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02424924 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02424924 */ if (_t33) goto L_0242485C; else goto L_02424928;
|
|
L_02424928: ; // 0x2424928
|
|
/* 02424928 */ /* nop */
|
|
/* 0242492C */ _t34 = cpu->r[1] + 0x00000030u;
|
|
/* 0242492C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t34);
|
|
/* 02424930 */ _t35 = cpu->r[1] + 0x00000040u;
|
|
/* 02424930 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 02424934 */ _t36 = cpu->r[1] + 0x00000028u;
|
|
/* 02424934 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t36);
|
|
/* 02424938 */ _t37 = cpu->r[1] + 0x00000038u;
|
|
/* 02424938 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t37);
|
|
/* 0242493C */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242493C */ _t39 = _t38 & 0x00000001u;
|
|
/* 0242493C */ if (_t39) goto L_02424940; // else: addr-0 trap, fall-through
|
|
L_02424940: ; // 0x2424940
|
|
/* 02424940 */ _t40 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02424940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02424944 */ cpu->lr = cpu->r[0];
|
|
/* 02424948 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0242494C */ return;
|
|
}
|
|
|
|
// fn_02424950 @ 0x2424950
|
|
void Gambit_fn_02424950(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02424950: ; // 0x2424950
|
|
/* 02424950 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02424950 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424950 */ cpu->r[1] = _t0;
|
|
/* 02424954 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02424958 */ cpu->r[7] = 0xFFFFFFFDu;
|
|
/* 0242495C */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02424960 */ _t1 = cpu->r[8] + 0x000070F8u;
|
|
/* 02424960 */ rbrew_write32(cpu->mem, _t1, cpu->r[7]);
|
|
/* 02424960 */ cpu->r[8] = _t1;
|
|
/* 02424964 */ cpu->r[0] = 0xFFFFFFFEu;
|
|
/* 02424968 */ cpu->r[6] = 0x101E0000u;
|
|
/* 0242496C */ _t2 = cpu->r[8] + 0x00000004u;
|
|
/* 0242496C */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02424970 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02424974 */ _t3 = cpu->r[6] + 0x00007100u;
|
|
/* 02424974 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424974 */ cpu->r[6] = _t3;
|
|
/* 02424978 */ _t4 = cpu->r[8] + 0x00007108u;
|
|
/* 02424978 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02424978 */ cpu->r[8] = _t4;
|
|
/* 0242497C */ cpu->r[10] = 0x101E0000u;
|
|
/* 02424980 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02424980 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02424984 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02424988 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0242498C */ _t6 = cpu->r[6] + 0x00000004u;
|
|
/* 0242498C */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02424990 */ _t7 = cpu->r[11] + 0x00007110u;
|
|
/* 02424990 */ rbrew_write32(cpu->mem, _t7, cpu->r[7]);
|
|
/* 02424990 */ cpu->r[11] = _t7;
|
|
/* 02424994 */ cpu->r[10] = cpu->r[10] + 0x00007120u;
|
|
/* 02424998 */ _t8 = cpu->r[8] + 0x00007118u;
|
|
/* 02424998 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 02424998 */ cpu->r[8] = _t8;
|
|
/* 0242499C */ cpu->r[7] = 0x10090000u;
|
|
/* 024249A0 */ _t9 = cpu->r[8] + 0x00000004u;
|
|
/* 024249A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 024249A4 */ cpu->r[7] = cpu->r[7] + 0x00007728u;
|
|
/* 024249A8 */ cpu->r[6] = 0x00000002u;
|
|
/* 024249AC */ _t10 = cpu->r[10] + 0x00000004u;
|
|
/* 024249AC */ rbrew_write32(cpu->mem, _t10, cpu->r[7]);
|
|
/* 024249B0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024249B4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024249B4 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]);
|
|
/* 024249B8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024249B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024249BC */ cpu->r[0] = 0x00000004u;
|
|
/* 024249C0 */ cpu->r[9] = 0x10090000u;
|
|
/* 024249C4 */ _t13 = cpu->r[7] + 0x00007128u;
|
|
/* 024249C4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024249C8 */ cpu->r[9] = cpu->r[9] + 0x000078C4u;
|
|
/* 024249CC */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 024249CC */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 024249D0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024249D4 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 024249D4 */ rbrew_write32(cpu->mem, _t15, cpu->r[9]);
|
|
/* 024249D8 */ return;
|
|
}
|
|
|
|
// fn_024249DC @ 0x24249dc
|
|
void Gambit_fn_024249DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_024249DC: ; // 0x24249dc
|
|
/* 024249DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024249E0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024249E0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024249E0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024249E0 */ goto L_024249E4;
|
|
L_024249E4: ; // 0x24249e4
|
|
/* 024249E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024249E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024249E8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024249E8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024249E8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024249E8 */ goto L_024249EC;
|
|
L_024249EC: ; // 0x24249ec
|
|
/* 024249EC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_024249F0 @ 0x24249f0
|
|
void Gambit_fn_024249F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024249F0: ; // 0x24249f0
|
|
/* 024249F0 */ cpu->r[0] = cpu->lr;
|
|
/* 024249F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024249F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024249F4 */ cpu->r[1] = _t0;
|
|
/* 024249F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024249F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024249FC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024249FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02424A00 */ cpu->r[30] = cpu->r[3];
|
|
/* 02424A00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02424A04 */ cpu->r[31] = cpu->r[4];
|
|
/* 02424A08 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424A08 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424A0C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424A0C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02424A0C */ if (_t5) goto L_02424A7C; else goto L_02424A10;
|
|
L_02424A10: ; // 0x2424a10
|
|
/* 02424A10 */ cpu->r[0] = 0x10090000u;
|
|
/* 02424A14 */ cpu->r[12] = 0x10090000u;
|
|
/* 02424A18 */ cpu->r[0] = cpu->r[0] + 0x00007A34u;
|
|
/* 02424A1C */ cpu->r[12] = cpu->r[12] + 0x00007A54u;
|
|
/* 02424A20 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424A20 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02424A24 */ cpu->r[11] = 0x10090000u;
|
|
/* 02424A28 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02424A28 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02424A2C */ cpu->r[11] = cpu->r[11] + 0x00007A44u;
|
|
/* 02424A30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02424A34 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02424A34 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02424A38 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424A38 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02424A38 */ if (_t10) goto L_02424A6C; else goto L_02424A3C;
|
|
L_02424A3C: ; // 0x2424a3c
|
|
/* 02424A3C */ cpu->r[10] = 0x10010000u;
|
|
/* 02424A40 */ cpu->r[0] = 0x10010000u;
|
|
/* 02424A44 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 02424A48 */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 02424A4C */ cpu->r[3] = cpu->r[30];
|
|
/* 02424A50 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424A50 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02424A54 */ cpu->r[0] = 0x10010000u;
|
|
/* 02424A58 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02424A58 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02424A5C */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 02424A60 */ cpu->r[4] = 0x00000000u;
|
|
/* 02424A64 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02424A64 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02424A68 */ Gambit_fn_02068798(cpu);
|
|
L_02424A6C: ; // 0x2424a6c
|
|
/* 02424A6C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02424A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02424A70 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424A70 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424A70 */ if (_t15) goto L_02424A7C; else goto L_02424A74;
|
|
L_02424A74: ; // 0x2424a74
|
|
/* 02424A74 */ cpu->r[3] = cpu->r[30];
|
|
/* 02424A78 */ Gambit_fn_02801BB0(cpu);
|
|
L_02424A7C: ; // 0x2424a7c
|
|
/* 02424A7C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02424A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02424A80 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02424A80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424A84 */ cpu->lr = cpu->r[0];
|
|
/* 02424A88 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424A88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02424A8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02424A90 */ return;
|
|
}
|
|
|
|
// fn_024249F4 @ 0x24249f4
|
|
void Gambit_fn_024249F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024249F4: ; // 0x24249f4
|
|
/* 024249F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024249F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024249F4 */ cpu->r[1] = _t0;
|
|
/* 024249F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024249F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024249FC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024249FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02424A00 */ cpu->r[30] = cpu->r[3];
|
|
/* 02424A00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02424A04 */ cpu->r[31] = cpu->r[4];
|
|
/* 02424A08 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424A08 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424A0C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424A0C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02424A0C */ if (_t5) goto L_02424A7C; else goto L_02424A10;
|
|
L_02424A10: ; // 0x2424a10
|
|
/* 02424A10 */ cpu->r[0] = 0x10090000u;
|
|
/* 02424A14 */ cpu->r[12] = 0x10090000u;
|
|
/* 02424A18 */ cpu->r[0] = cpu->r[0] + 0x00007A34u;
|
|
/* 02424A1C */ cpu->r[12] = cpu->r[12] + 0x00007A54u;
|
|
/* 02424A20 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424A20 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02424A24 */ cpu->r[11] = 0x10090000u;
|
|
/* 02424A28 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02424A28 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02424A2C */ cpu->r[11] = cpu->r[11] + 0x00007A44u;
|
|
/* 02424A30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02424A34 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02424A34 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02424A38 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424A38 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02424A38 */ if (_t10) goto L_02424A6C; else goto L_02424A3C;
|
|
L_02424A3C: ; // 0x2424a3c
|
|
/* 02424A3C */ cpu->r[10] = 0x10010000u;
|
|
/* 02424A40 */ cpu->r[0] = 0x10010000u;
|
|
/* 02424A44 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 02424A48 */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 02424A4C */ cpu->r[3] = cpu->r[30];
|
|
/* 02424A50 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424A50 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02424A54 */ cpu->r[0] = 0x10010000u;
|
|
/* 02424A58 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02424A58 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02424A5C */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 02424A60 */ cpu->r[4] = 0x00000000u;
|
|
/* 02424A64 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02424A64 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02424A68 */ Gambit_fn_02068798(cpu);
|
|
L_02424A6C: ; // 0x2424a6c
|
|
/* 02424A6C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02424A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02424A70 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424A70 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424A70 */ if (_t15) goto L_02424A7C; else goto L_02424A74;
|
|
L_02424A74: ; // 0x2424a74
|
|
/* 02424A74 */ cpu->r[3] = cpu->r[30];
|
|
/* 02424A78 */ Gambit_fn_02801BB0(cpu);
|
|
L_02424A7C: ; // 0x2424a7c
|
|
/* 02424A7C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02424A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02424A80 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02424A80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424A84 */ cpu->lr = cpu->r[0];
|
|
/* 02424A88 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424A88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02424A8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02424A90 */ return;
|
|
}
|
|
|
|
// fn_02424A94 @ 0x2424a94
|
|
void Gambit_fn_02424A94(CPUState* cpu) {
|
|
L_02424A94: ; // 0x2424a94
|
|
/* 02424A94 */ return;
|
|
}
|
|
|
|
// fn_02424A98 @ 0x2424a98
|
|
void Gambit_fn_02424A98(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02424A98: ; // 0x2424a98
|
|
/* 02424A98 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02424A98 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02424A9C */ return;
|
|
}
|
|
|
|
// fn_02424AA0 @ 0x2424aa0
|
|
void Gambit_fn_02424AA0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02424AA0: ; // 0x2424aa0
|
|
/* 02424AA0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02424AA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02424AA4 */ return;
|
|
}
|
|
|
|
// fn_02424AA8 @ 0x2424aa8
|
|
void Gambit_fn_02424AA8(CPUState* cpu) {
|
|
L_02424AA8: ; // 0x2424aa8
|
|
/* 02424AA8 */ return;
|
|
}
|
|
|
|
// fn_02424AAC @ 0x2424aac
|
|
void Gambit_fn_02424AAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02424AAC: ; // 0x2424aac
|
|
/* 02424AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424AB0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424AB0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02424AB0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02424AB0 */ goto L_02424AB4;
|
|
L_02424AB4: ; // 0x2424ab4
|
|
/* 02424AB4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02424AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424AB8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424AB8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02424AB8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02424AB8 */ goto L_02424ABC;
|
|
L_02424ABC: ; // 0x2424abc
|
|
/* 02424ABC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02424AC0 @ 0x2424ac0
|
|
void Gambit_fn_02424AC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02424AC0: ; // 0x2424ac0
|
|
/* 02424AC0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02424AC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02424AC4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02424AC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02424AC8 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02424ACC */ cpu->r[11] = 0x10110000u;
|
|
/* 02424AD0 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02424AD0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02424AD4 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02424AD4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02424AD8 */ return;
|
|
}
|
|
|
|
// fn_02424ADC @ 0x2424adc
|
|
void Gambit_fn_02424ADC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02424ADC: ; // 0x2424adc
|
|
/* 02424ADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424AE0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424AE0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02424AE0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02424AE0 */ goto L_02424AE4;
|
|
L_02424AE4: ; // 0x2424ae4
|
|
/* 02424AE4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02424AE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424AE8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424AE8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02424AE8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02424AE8 */ goto L_02424AEC;
|
|
L_02424AEC: ; // 0x2424aec
|
|
/* 02424AEC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02424AF0 @ 0x2424af0
|
|
void Gambit_fn_02424AF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02424AF0: ; // 0x2424af0
|
|
/* 02424AF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424AF4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424AF4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02424AF4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02424AF4 */ goto L_02424AF8;
|
|
L_02424AF8: ; // 0x2424af8
|
|
/* 02424AF8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02424AF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424AFC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424AFC */ _t3 = _t2 & 0x00000001u;
|
|
/* 02424AFC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02424AFC */ goto L_02424B00;
|
|
L_02424B00: ; // 0x2424b00
|
|
/* 02424B00 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02424B04 @ 0x2424b04
|
|
void Gambit_fn_02424B04(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02424B04: ; // 0x2424b04
|
|
/* 02424B04 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02424B04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02424B08 */ return;
|
|
}
|
|
|
|
// fn_02424B0C @ 0x2424b0c
|
|
void Gambit_fn_02424B0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02424B0C: ; // 0x2424b0c
|
|
/* 02424B0C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02424B0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02424B10 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02424B10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02424B14 */ cpu->ctr = cpu->r[0];
|
|
/* 02424B18 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02424B1C @ 0x2424b1c
|
|
void Gambit_fn_02424B1C(CPUState* cpu) {
|
|
L_02424B1C: ; // 0x2424b1c
|
|
/* 02424B1C */ return;
|
|
}
|
|
|
|
// fn_02424B20 @ 0x2424b20
|
|
void Gambit_fn_02424B20(CPUState* cpu) {
|
|
L_02424B20: ; // 0x2424b20
|
|
/* 02424B20 */ cpu->r[3] = 0x00000000u;
|
|
/* 02424B24 */ return;
|
|
}
|
|
|
|
// fn_02424B28 @ 0x2424b28
|
|
void Gambit_fn_02424B28(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02424B28: ; // 0x2424b28
|
|
/* 02424B28 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02424B2C */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02424B2C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02424B2C */ cpu->r[9] = _t0;
|
|
/* 02424B30 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02424B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02424B38 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02424B3C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424B3C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02424B3C */ if (_t2) goto L_02424B40; else goto L_02424B54;
|
|
L_02424B40: ; // 0x2424b40
|
|
/* 02424B40 */ cpu->r[7] = 0x10090000u;
|
|
/* 02424B44 */ cpu->r[0] = 0x00000001u;
|
|
/* 02424B48 */ cpu->r[7] = cpu->r[7] + 0x00007788u;
|
|
/* 02424B4C */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02424B4C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424B50 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02424B50 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02424B54: ; // 0x2424b54
|
|
/* 02424B54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02424B58 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424B58 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02424B58 */ if (_t6) goto L_02424B5C; else goto L_02424B64;
|
|
L_02424B5C: ; // 0x2424b5c
|
|
/* 02424B5C */ cpu->r[3] = 0x00000001u;
|
|
/* 02424B60 */ return;
|
|
L_02424B64: ; // 0x2424b64
|
|
/* 02424B64 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02424B68 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02424B68 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02424B68 */ cpu->r[7] = _t7;
|
|
/* 02424B6C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02424B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02424B74 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02424B78 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424B78 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02424B78 */ if (_t9) goto L_02424B7C; else goto L_02424B90;
|
|
L_02424B7C: ; // 0x2424b7c
|
|
/* 02424B7C */ cpu->r[0] = 0x10090000u;
|
|
/* 02424B80 */ cpu->r[9] = 0x00000001u;
|
|
/* 02424B84 */ cpu->r[0] = cpu->r[0] + 0x00007718u;
|
|
/* 02424B88 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02424B88 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02424B8C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02424B8C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02424B90: ; // 0x2424b90
|
|
/* 02424B90 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02424B94 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02424B98 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02424B9C */ return;
|
|
}
|
|
|
|
// fn_02424BA0 @ 0x2424ba0
|
|
void Gambit_fn_02424BA0(CPUState* cpu) {
|
|
L_02424BA0: ; // 0x2424ba0
|
|
/* 02424BA0 */ return;
|
|
}
|
|
|
|
// fn_02424BA4 @ 0x2424ba4
|
|
void Gambit_fn_02424BA4(CPUState* cpu) {
|
|
L_02424BA4: ; // 0x2424ba4
|
|
/* 02424BA4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02424BA8 */ return;
|
|
}
|
|
|
|
// fn_02424BAC @ 0x2424bac
|
|
void Gambit_fn_02424BAC(CPUState* cpu) {
|
|
L_02424BAC: ; // 0x2424bac
|
|
/* 02424BAC */ return;
|
|
}
|
|
|
|
// fn_02424BB0 @ 0x2424bb0
|
|
void Gambit_fn_02424BB0(CPUState* cpu) {
|
|
L_02424BB0: ; // 0x2424bb0
|
|
/* 02424BB0 */ return;
|
|
}
|
|
|
|
// fn_02424BB4 @ 0x2424bb4
|
|
void Gambit_fn_02424BB4(CPUState* cpu) {
|
|
L_02424BB4: ; // 0x2424bb4
|
|
/* 02424BB4 */ return;
|
|
}
|
|
|
|
// fn_02424BB8 @ 0x2424bb8
|
|
void Gambit_fn_02424BB8(CPUState* cpu) {
|
|
L_02424BB8: ; // 0x2424bb8
|
|
/* 02424BB8 */ return;
|
|
}
|
|
|
|
// fn_02424BBC @ 0x2424bbc
|
|
void Gambit_fn_02424BBC(CPUState* cpu) {
|
|
L_02424BBC: ; // 0x2424bbc
|
|
/* 02424BBC */ return;
|
|
}
|
|
|
|
// fn_02424BC0 @ 0x2424bc0
|
|
void Gambit_fn_02424BC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C894: ; // 0x206c894
|
|
/* 0206C894 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C898 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C898 */ cpu->r[1] = _t0;
|
|
/* 0206C89C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C89C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C8A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C8A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C8A8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206C8A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C8AC */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C8B4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206C8B4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206C8B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C8B8 */ if (_t6) goto L_0206C8E0; else goto L_0206C8BC;
|
|
L_0206C8BC: ; // 0x206c8bc
|
|
/* 0206C8BC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C8BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206C8C0 */ /* nop */
|
|
/* 0206C8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206C8C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206C8C8 */ if (_t9) goto L_0206C8CC; else goto L_0206C8E0;
|
|
L_0206C8CC: ; // 0x206c8cc
|
|
/* 0206C8CC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206C8CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206C8D0 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206C8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C8D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C8D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C8E0: ; // 0x206c8e0
|
|
/* 0206C8E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8E4 */ Gambit_fn_0206C80C(cpu);
|
|
/* 0206C8E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8EC */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206C8F0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C8F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C8F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0206C8FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C900 */ return;
|
|
L_02424BC0: ; // 0x2424bc0
|
|
/* 02424BC0 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02424BC4 */ goto L_0206C894;
|
|
}
|
|
|
|
// fn_02424BC8 @ 0x2424bc8
|
|
void Gambit_fn_02424BC8(CPUState* cpu) {
|
|
L_02424BC8: ; // 0x2424bc8
|
|
/* 02424BC8 */ return;
|
|
}
|
|
|
|
// fn_02424BCC @ 0x2424bcc
|
|
void Gambit_fn_02424BCC(CPUState* cpu) {
|
|
L_02424BCC: ; // 0x2424bcc
|
|
/* 02424BCC */ return;
|
|
}
|
|
|
|
// fn_02424BD0 @ 0x2424bd0
|
|
void Gambit_fn_02424BD0(CPUState* cpu) {
|
|
L_02424BD0: ; // 0x2424bd0
|
|
/* 02424BD0 */ return;
|
|
}
|
|
|
|
// fn_02424BD4 @ 0x2424bd4
|
|
void Gambit_fn_02424BD4(CPUState* cpu) {
|
|
L_02424BD4: ; // 0x2424bd4
|
|
/* 02424BD4 */ return;
|
|
}
|
|
|
|
// fn_02424BD8 @ 0x2424bd8
|
|
void Gambit_fn_02424BD8(CPUState* cpu) {
|
|
L_02424BD8: ; // 0x2424bd8
|
|
/* 02424BD8 */ cpu->r[3] = 0x00000001u;
|
|
/* 02424BDC */ return;
|
|
}
|
|
|
|
// fn_02424BE0 @ 0x2424be0
|
|
void Gambit_fn_02424BE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62;
|
|
|
|
L_02424BE0: ; // 0x2424be0
|
|
/* 02424BE0 */ cpu->r[0] = cpu->lr;
|
|
/* 02424BE4 */ _t0 = cpu->r[1] + 0xFFFFFDF8u;
|
|
/* 02424BE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424BE4 */ cpu->r[1] = _t0;
|
|
/* 02424BE8 */ _t1 = cpu->r[1] + 0x00000200u;
|
|
/* 02424BE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424BEC */ _t2 = cpu->r[1] + 0x00000204u;
|
|
/* 02424BEC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424BF0 */ _t3 = cpu->r[1] + 0x0000020Cu;
|
|
/* 02424BF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424BF4 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02424BF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02424BF8 */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 02424BF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02424BFC */ cpu->ctr = cpu->r[10];
|
|
/* 02424C00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02424C04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424C08 */ cpu->r[4] = cpu->r[3];
|
|
/* 02424C0C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C10 */ Gambit_fn_026D6C54(cpu);
|
|
/* 02424C14 */ _t6 = cpu->r[31] + 0x00000034u;
|
|
/* 02424C14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02424C18 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C1C */ cpu->r[5] = 0x00000001u;
|
|
/* 02424C20 */ _t7 = cpu->r[1] + 0x00000084u;
|
|
/* 02424C20 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02424C24 */ _t8 = cpu->r[31] + 0x00000028u;
|
|
/* 02424C24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02424C28 */ cpu->r[30] = cpu->r[31] + 0x00000028u;
|
|
/* 02424C2C */ Gambit_fn_026D6F40(cpu);
|
|
/* 02424C30 */ cpu->r[3] = 0x00000244u;
|
|
/* 02424C34 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424C3C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424C3C */ _t10 = _t9 & 0x00000001u;
|
|
/* 02424C3C */ if (_t10) goto L_02424C44; else goto L_02424C40;
|
|
L_02424C40: ; // 0x2424c40
|
|
/* 02424C40 */ Gambit_fn_02425C3C(cpu);
|
|
L_02424C44: ; // 0x2424c44
|
|
/* 02424C44 */ _t11 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02424C44 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 02424C48 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02424C48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02424C4C */ _t13 = cpu->r[11] + 0x00000034u;
|
|
/* 02424C4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02424C50 */ cpu->ctr = cpu->r[0];
|
|
/* 02424C54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424C5C */ cpu->r[3] = 0x00000224u;
|
|
/* 02424C60 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424C68 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424C68 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424C68 */ if (_t15) goto L_02424C70; else goto L_02424C6C;
|
|
L_02424C6C: ; // 0x2424c6c
|
|
/* 02424C6C */ Gambit_fn_02427638(cpu);
|
|
L_02424C70: ; // 0x2424c70
|
|
/* 02424C70 */ _t16 = cpu->r[31] + 0x00000050u;
|
|
/* 02424C70 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 02424C74 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02424C74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424C78 */ _t18 = cpu->r[12] + 0x00000034u;
|
|
/* 02424C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02424C7C */ cpu->ctr = cpu->r[0];
|
|
/* 02424C80 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424C88 */ cpu->r[3] = 0x00000250u;
|
|
/* 02424C8C */ Gambit_fn_02801A78(cpu);
|
|
/* 02424C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424C94 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424C94 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02424C94 */ if (_t20) goto L_02424C9C; else goto L_02424C98;
|
|
L_02424C98: ; // 0x2424c98
|
|
/* 02424C98 */ Gambit_fn_0242398C(cpu);
|
|
L_02424C9C: ; // 0x2424c9c
|
|
/* 02424C9C */ _t21 = cpu->r[31] + 0x00000048u;
|
|
/* 02424C9C */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 02424CA0 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02424CA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02424CA4 */ _t23 = cpu->r[10] + 0x00000034u;
|
|
/* 02424CA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02424CA8 */ cpu->ctr = cpu->r[11];
|
|
/* 02424CAC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424CB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424CB4 */ cpu->r[3] = 0x00000224u;
|
|
/* 02424CB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424CC0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424CC0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02424CC0 */ if (_t25) goto L_02424CC8; else goto L_02424CC4;
|
|
L_02424CC4: ; // 0x2424cc4
|
|
/* 02424CC4 */ Gambit_fn_024279D4(cpu);
|
|
L_02424CC8: ; // 0x2424cc8
|
|
/* 02424CC8 */ _t26 = cpu->r[31] + 0x00000044u;
|
|
/* 02424CC8 */ rbrew_write32(cpu->mem, _t26, cpu->r[3]);
|
|
/* 02424CCC */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 02424CCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02424CD0 */ _t28 = cpu->r[12] + 0x00000034u;
|
|
/* 02424CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02424CD4 */ cpu->ctr = cpu->r[0];
|
|
/* 02424CD8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424CDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424CE0 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02424CE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424CEC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424CEC */ _t30 = _t29 & 0x00000001u;
|
|
/* 02424CEC */ if (_t30) goto L_02424CF4; else goto L_02424CF0;
|
|
L_02424CF0: ; // 0x2424cf0
|
|
/* 02424CF0 */ Gambit_fn_02427018(cpu);
|
|
L_02424CF4: ; // 0x2424cf4
|
|
/* 02424CF4 */ _t31 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02424CF4 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 02424CF8 */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 02424CF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02424CFC */ _t33 = cpu->r[10] + 0x00000034u;
|
|
/* 02424CFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02424D00 */ cpu->ctr = cpu->r[11];
|
|
/* 02424D04 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424D08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424D0C */ cpu->r[0] = 0x00000001u;
|
|
/* 02424D10 */ cpu->r[3] = 0x00000240u;
|
|
/* 02424D14 */ _t34 = cpu->r[1] + 0x00000084u;
|
|
/* 02424D14 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 02424D18 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424D1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424D20 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424D20 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02424D20 */ if (_t36) goto L_02424D28; else goto L_02424D24;
|
|
L_02424D24: ; // 0x2424d24
|
|
/* 02424D24 */ Gambit_fn_02423CF0(cpu);
|
|
L_02424D28: ; // 0x2424d28
|
|
/* 02424D28 */ _t37 = cpu->r[31] + 0x00000058u;
|
|
/* 02424D28 */ rbrew_write32(cpu->mem, _t37, cpu->r[3]);
|
|
/* 02424D2C */ _t38 = cpu->r[3] + 0x00000000u;
|
|
/* 02424D2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02424D30 */ _t39 = cpu->r[10] + 0x00000034u;
|
|
/* 02424D30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02424D34 */ cpu->ctr = cpu->r[0];
|
|
/* 02424D38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424D3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424D40 */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 02424D40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02424D44 */ _t41 = cpu->r[12] + 0x00000064u;
|
|
/* 02424D44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02424D48 */ cpu->ctr = cpu->r[11];
|
|
/* 02424D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02424D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424D54 */ cpu->r[4] = cpu->r[3];
|
|
/* 02424D58 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02424D5C */ Gambit_fn_026D6C54(cpu);
|
|
/* 02424D60 */ _t42 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424D60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02424D64 */ cpu->r[5] = 0x00000001u;
|
|
/* 02424D68 */ _t43 = cpu->r[1] + 0x0000012Cu;
|
|
/* 02424D68 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02424D6C */ _t44 = cpu->r[30] + 0x00000004u;
|
|
/* 02424D6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02424D70 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02424D74 */ Gambit_fn_026D6F40(cpu);
|
|
/* 02424D78 */ cpu->r[3] = 0x00000220u;
|
|
/* 02424D7C */ Gambit_fn_02801A78(cpu);
|
|
/* 02424D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424D84 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424D84 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02424D84 */ if (_t46) goto L_02424D8C; else goto L_02424D88;
|
|
L_02424D88: ; // 0x2424d88
|
|
/* 02424D88 */ Gambit_fn_024258F0(cpu);
|
|
L_02424D8C: ; // 0x2424d8c
|
|
/* 02424D8C */ _t47 = cpu->r[31] + 0x00000040u;
|
|
/* 02424D8C */ rbrew_write32(cpu->mem, _t47, cpu->r[3]);
|
|
/* 02424D90 */ _t48 = cpu->r[3] + 0x00000000u;
|
|
/* 02424D90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02424D94 */ _t49 = cpu->r[10] + 0x00000034u;
|
|
/* 02424D94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02424D98 */ cpu->ctr = cpu->r[0];
|
|
/* 02424D9C */ cpu->r[4] = cpu->r[1] + 0x000000B0u;
|
|
/* 02424DA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424DA4 */ _t50 = cpu->r[31] + 0x00000000u;
|
|
/* 02424DA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02424DA8 */ _t51 = cpu->r[12] + 0x00000064u;
|
|
/* 02424DA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02424DAC */ cpu->ctr = cpu->r[10];
|
|
/* 02424DB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02424DB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424DB8 */ cpu->r[4] = cpu->r[3];
|
|
/* 02424DBC */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 02424DC0 */ Gambit_fn_026D6C54(cpu);
|
|
/* 02424DC4 */ _t52 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424DC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02424DC8 */ cpu->r[5] = 0x00000001u;
|
|
/* 02424DCC */ _t53 = cpu->r[1] + 0x000001D4u;
|
|
/* 02424DCC */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 02424DD0 */ _t54 = cpu->r[30] + 0x00000008u;
|
|
/* 02424DD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02424DD4 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 02424DD8 */ Gambit_fn_026D6F40(cpu);
|
|
/* 02424DDC */ cpu->r[3] = 0x00000240u;
|
|
/* 02424DE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424DE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424DE8 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424DE8 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02424DE8 */ if (_t56) goto L_02424DF0; else goto L_02424DEC;
|
|
L_02424DEC: ; // 0x2424dec
|
|
/* 02424DEC */ Gambit_fn_02423CF0(cpu);
|
|
L_02424DF0: ; // 0x2424df0
|
|
/* 02424DF0 */ _t57 = cpu->r[31] + 0x00000054u;
|
|
/* 02424DF0 */ rbrew_write32(cpu->mem, _t57, cpu->r[3]);
|
|
/* 02424DF4 */ _t58 = cpu->r[3] + 0x00000000u;
|
|
/* 02424DF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02424DF8 */ _t59 = cpu->r[10] + 0x00000034u;
|
|
/* 02424DF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02424DFC */ cpu->ctr = cpu->r[11];
|
|
/* 02424E00 */ cpu->r[4] = cpu->r[1] + 0x00000158u;
|
|
/* 02424E04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424E08 */ _t60 = cpu->r[1] + 0x0000020Cu;
|
|
/* 02424E08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02424E0C */ _t61 = cpu->r[1] + 0x00000200u;
|
|
/* 02424E0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02424E10 */ cpu->lr = cpu->r[0];
|
|
/* 02424E14 */ _t62 = cpu->r[1] + 0x00000204u;
|
|
/* 02424E14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02424E18 */ cpu->r[1] = cpu->r[1] + 0x00000208u;
|
|
/* 02424E1C */ return;
|
|
}
|
|
|
|
// fn_02424BE4 @ 0x2424be4
|
|
void Gambit_fn_02424BE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62;
|
|
|
|
L_02424BE4: ; // 0x2424be4
|
|
/* 02424BE4 */ _t0 = cpu->r[1] + 0xFFFFFDF8u;
|
|
/* 02424BE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424BE4 */ cpu->r[1] = _t0;
|
|
/* 02424BE8 */ _t1 = cpu->r[1] + 0x00000200u;
|
|
/* 02424BE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424BEC */ _t2 = cpu->r[1] + 0x00000204u;
|
|
/* 02424BEC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424BF0 */ _t3 = cpu->r[1] + 0x0000020Cu;
|
|
/* 02424BF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424BF4 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02424BF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02424BF8 */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 02424BF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02424BFC */ cpu->ctr = cpu->r[10];
|
|
/* 02424C00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02424C04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424C08 */ cpu->r[4] = cpu->r[3];
|
|
/* 02424C0C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C10 */ Gambit_fn_026D6C54(cpu);
|
|
/* 02424C14 */ _t6 = cpu->r[31] + 0x00000034u;
|
|
/* 02424C14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02424C18 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C1C */ cpu->r[5] = 0x00000001u;
|
|
/* 02424C20 */ _t7 = cpu->r[1] + 0x00000084u;
|
|
/* 02424C20 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02424C24 */ _t8 = cpu->r[31] + 0x00000028u;
|
|
/* 02424C24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02424C28 */ cpu->r[30] = cpu->r[31] + 0x00000028u;
|
|
/* 02424C2C */ Gambit_fn_026D6F40(cpu);
|
|
/* 02424C30 */ cpu->r[3] = 0x00000244u;
|
|
/* 02424C34 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424C3C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424C3C */ _t10 = _t9 & 0x00000001u;
|
|
/* 02424C3C */ if (_t10) goto L_02424C44; else goto L_02424C40;
|
|
L_02424C40: ; // 0x2424c40
|
|
/* 02424C40 */ Gambit_fn_02425C3C(cpu);
|
|
L_02424C44: ; // 0x2424c44
|
|
/* 02424C44 */ _t11 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02424C44 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 02424C48 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02424C48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02424C4C */ _t13 = cpu->r[11] + 0x00000034u;
|
|
/* 02424C4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02424C50 */ cpu->ctr = cpu->r[0];
|
|
/* 02424C54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424C5C */ cpu->r[3] = 0x00000224u;
|
|
/* 02424C60 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424C68 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424C68 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424C68 */ if (_t15) goto L_02424C70; else goto L_02424C6C;
|
|
L_02424C6C: ; // 0x2424c6c
|
|
/* 02424C6C */ Gambit_fn_02427638(cpu);
|
|
L_02424C70: ; // 0x2424c70
|
|
/* 02424C70 */ _t16 = cpu->r[31] + 0x00000050u;
|
|
/* 02424C70 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 02424C74 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02424C74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424C78 */ _t18 = cpu->r[12] + 0x00000034u;
|
|
/* 02424C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02424C7C */ cpu->ctr = cpu->r[0];
|
|
/* 02424C80 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424C88 */ cpu->r[3] = 0x00000250u;
|
|
/* 02424C8C */ Gambit_fn_02801A78(cpu);
|
|
/* 02424C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424C94 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424C94 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02424C94 */ if (_t20) goto L_02424C9C; else goto L_02424C98;
|
|
L_02424C98: ; // 0x2424c98
|
|
/* 02424C98 */ Gambit_fn_0242398C(cpu);
|
|
L_02424C9C: ; // 0x2424c9c
|
|
/* 02424C9C */ _t21 = cpu->r[31] + 0x00000048u;
|
|
/* 02424C9C */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 02424CA0 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02424CA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02424CA4 */ _t23 = cpu->r[10] + 0x00000034u;
|
|
/* 02424CA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02424CA8 */ cpu->ctr = cpu->r[11];
|
|
/* 02424CAC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424CB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424CB4 */ cpu->r[3] = 0x00000224u;
|
|
/* 02424CB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424CC0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424CC0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02424CC0 */ if (_t25) goto L_02424CC8; else goto L_02424CC4;
|
|
L_02424CC4: ; // 0x2424cc4
|
|
/* 02424CC4 */ Gambit_fn_024279D4(cpu);
|
|
L_02424CC8: ; // 0x2424cc8
|
|
/* 02424CC8 */ _t26 = cpu->r[31] + 0x00000044u;
|
|
/* 02424CC8 */ rbrew_write32(cpu->mem, _t26, cpu->r[3]);
|
|
/* 02424CCC */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 02424CCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02424CD0 */ _t28 = cpu->r[12] + 0x00000034u;
|
|
/* 02424CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02424CD4 */ cpu->ctr = cpu->r[0];
|
|
/* 02424CD8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424CDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424CE0 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02424CE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424CEC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424CEC */ _t30 = _t29 & 0x00000001u;
|
|
/* 02424CEC */ if (_t30) goto L_02424CF4; else goto L_02424CF0;
|
|
L_02424CF0: ; // 0x2424cf0
|
|
/* 02424CF0 */ Gambit_fn_02427018(cpu);
|
|
L_02424CF4: ; // 0x2424cf4
|
|
/* 02424CF4 */ _t31 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02424CF4 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 02424CF8 */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 02424CF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02424CFC */ _t33 = cpu->r[10] + 0x00000034u;
|
|
/* 02424CFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02424D00 */ cpu->ctr = cpu->r[11];
|
|
/* 02424D04 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424D08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424D0C */ cpu->r[0] = 0x00000001u;
|
|
/* 02424D10 */ cpu->r[3] = 0x00000240u;
|
|
/* 02424D14 */ _t34 = cpu->r[1] + 0x00000084u;
|
|
/* 02424D14 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 02424D18 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424D1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424D20 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424D20 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02424D20 */ if (_t36) goto L_02424D28; else goto L_02424D24;
|
|
L_02424D24: ; // 0x2424d24
|
|
/* 02424D24 */ Gambit_fn_02423CF0(cpu);
|
|
L_02424D28: ; // 0x2424d28
|
|
/* 02424D28 */ _t37 = cpu->r[31] + 0x00000058u;
|
|
/* 02424D28 */ rbrew_write32(cpu->mem, _t37, cpu->r[3]);
|
|
/* 02424D2C */ _t38 = cpu->r[3] + 0x00000000u;
|
|
/* 02424D2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02424D30 */ _t39 = cpu->r[10] + 0x00000034u;
|
|
/* 02424D30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02424D34 */ cpu->ctr = cpu->r[0];
|
|
/* 02424D38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424D3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424D40 */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 02424D40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02424D44 */ _t41 = cpu->r[12] + 0x00000064u;
|
|
/* 02424D44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02424D48 */ cpu->ctr = cpu->r[11];
|
|
/* 02424D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02424D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424D54 */ cpu->r[4] = cpu->r[3];
|
|
/* 02424D58 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02424D5C */ Gambit_fn_026D6C54(cpu);
|
|
/* 02424D60 */ _t42 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424D60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02424D64 */ cpu->r[5] = 0x00000001u;
|
|
/* 02424D68 */ _t43 = cpu->r[1] + 0x0000012Cu;
|
|
/* 02424D68 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02424D6C */ _t44 = cpu->r[30] + 0x00000004u;
|
|
/* 02424D6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02424D70 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02424D74 */ Gambit_fn_026D6F40(cpu);
|
|
/* 02424D78 */ cpu->r[3] = 0x00000220u;
|
|
/* 02424D7C */ Gambit_fn_02801A78(cpu);
|
|
/* 02424D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424D84 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424D84 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02424D84 */ if (_t46) goto L_02424D8C; else goto L_02424D88;
|
|
L_02424D88: ; // 0x2424d88
|
|
/* 02424D88 */ Gambit_fn_024258F0(cpu);
|
|
L_02424D8C: ; // 0x2424d8c
|
|
/* 02424D8C */ _t47 = cpu->r[31] + 0x00000040u;
|
|
/* 02424D8C */ rbrew_write32(cpu->mem, _t47, cpu->r[3]);
|
|
/* 02424D90 */ _t48 = cpu->r[3] + 0x00000000u;
|
|
/* 02424D90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02424D94 */ _t49 = cpu->r[10] + 0x00000034u;
|
|
/* 02424D94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02424D98 */ cpu->ctr = cpu->r[0];
|
|
/* 02424D9C */ cpu->r[4] = cpu->r[1] + 0x000000B0u;
|
|
/* 02424DA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424DA4 */ _t50 = cpu->r[31] + 0x00000000u;
|
|
/* 02424DA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02424DA8 */ _t51 = cpu->r[12] + 0x00000064u;
|
|
/* 02424DA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02424DAC */ cpu->ctr = cpu->r[10];
|
|
/* 02424DB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02424DB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424DB8 */ cpu->r[4] = cpu->r[3];
|
|
/* 02424DBC */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 02424DC0 */ Gambit_fn_026D6C54(cpu);
|
|
/* 02424DC4 */ _t52 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424DC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02424DC8 */ cpu->r[5] = 0x00000001u;
|
|
/* 02424DCC */ _t53 = cpu->r[1] + 0x000001D4u;
|
|
/* 02424DCC */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 02424DD0 */ _t54 = cpu->r[30] + 0x00000008u;
|
|
/* 02424DD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02424DD4 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 02424DD8 */ Gambit_fn_026D6F40(cpu);
|
|
/* 02424DDC */ cpu->r[3] = 0x00000240u;
|
|
/* 02424DE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424DE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424DE8 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424DE8 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02424DE8 */ if (_t56) goto L_02424DF0; else goto L_02424DEC;
|
|
L_02424DEC: ; // 0x2424dec
|
|
/* 02424DEC */ Gambit_fn_02423CF0(cpu);
|
|
L_02424DF0: ; // 0x2424df0
|
|
/* 02424DF0 */ _t57 = cpu->r[31] + 0x00000054u;
|
|
/* 02424DF0 */ rbrew_write32(cpu->mem, _t57, cpu->r[3]);
|
|
/* 02424DF4 */ _t58 = cpu->r[3] + 0x00000000u;
|
|
/* 02424DF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02424DF8 */ _t59 = cpu->r[10] + 0x00000034u;
|
|
/* 02424DF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02424DFC */ cpu->ctr = cpu->r[11];
|
|
/* 02424E00 */ cpu->r[4] = cpu->r[1] + 0x00000158u;
|
|
/* 02424E04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424E08 */ _t60 = cpu->r[1] + 0x0000020Cu;
|
|
/* 02424E08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02424E0C */ _t61 = cpu->r[1] + 0x00000200u;
|
|
/* 02424E0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02424E10 */ cpu->lr = cpu->r[0];
|
|
/* 02424E14 */ _t62 = cpu->r[1] + 0x00000204u;
|
|
/* 02424E14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02424E18 */ cpu->r[1] = cpu->r[1] + 0x00000208u;
|
|
/* 02424E1C */ return;
|
|
}
|
|
|
|
// fn_02424E20 @ 0x2424e20
|
|
void Gambit_fn_02424E20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62;
|
|
|
|
L_02424BE0: ; // 0x2424be0
|
|
/* 02424BE0 */ cpu->r[0] = cpu->lr;
|
|
/* 02424BE4 */ _t0 = cpu->r[1] + 0xFFFFFDF8u;
|
|
/* 02424BE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424BE4 */ cpu->r[1] = _t0;
|
|
/* 02424BE8 */ _t1 = cpu->r[1] + 0x00000200u;
|
|
/* 02424BE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424BEC */ _t2 = cpu->r[1] + 0x00000204u;
|
|
/* 02424BEC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424BF0 */ _t3 = cpu->r[1] + 0x0000020Cu;
|
|
/* 02424BF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424BF4 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02424BF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02424BF8 */ _t5 = cpu->r[12] + 0x00000064u;
|
|
/* 02424BF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02424BFC */ cpu->ctr = cpu->r[10];
|
|
/* 02424C00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02424C04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424C08 */ cpu->r[4] = cpu->r[3];
|
|
/* 02424C0C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C10 */ Gambit_fn_026D6C54(cpu);
|
|
/* 02424C14 */ _t6 = cpu->r[31] + 0x00000034u;
|
|
/* 02424C14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02424C18 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C1C */ cpu->r[5] = 0x00000001u;
|
|
/* 02424C20 */ _t7 = cpu->r[1] + 0x00000084u;
|
|
/* 02424C20 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02424C24 */ _t8 = cpu->r[31] + 0x00000028u;
|
|
/* 02424C24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02424C28 */ cpu->r[30] = cpu->r[31] + 0x00000028u;
|
|
/* 02424C2C */ Gambit_fn_026D6F40(cpu);
|
|
/* 02424C30 */ cpu->r[3] = 0x00000244u;
|
|
/* 02424C34 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424C38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424C3C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424C3C */ _t10 = _t9 & 0x00000001u;
|
|
/* 02424C3C */ if (_t10) goto L_02424C44; else goto L_02424C40;
|
|
L_02424C40: ; // 0x2424c40
|
|
/* 02424C40 */ Gambit_fn_02425C3C(cpu);
|
|
L_02424C44: ; // 0x2424c44
|
|
/* 02424C44 */ _t11 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02424C44 */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 02424C48 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 02424C48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02424C4C */ _t13 = cpu->r[11] + 0x00000034u;
|
|
/* 02424C4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02424C50 */ cpu->ctr = cpu->r[0];
|
|
/* 02424C54 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424C5C */ cpu->r[3] = 0x00000224u;
|
|
/* 02424C60 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424C68 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424C68 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424C68 */ if (_t15) goto L_02424C70; else goto L_02424C6C;
|
|
L_02424C6C: ; // 0x2424c6c
|
|
/* 02424C6C */ Gambit_fn_02427638(cpu);
|
|
L_02424C70: ; // 0x2424c70
|
|
/* 02424C70 */ _t16 = cpu->r[31] + 0x00000050u;
|
|
/* 02424C70 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
/* 02424C74 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02424C74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424C78 */ _t18 = cpu->r[12] + 0x00000034u;
|
|
/* 02424C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02424C7C */ cpu->ctr = cpu->r[0];
|
|
/* 02424C80 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424C84 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424C88 */ cpu->r[3] = 0x00000250u;
|
|
/* 02424C8C */ Gambit_fn_02801A78(cpu);
|
|
/* 02424C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424C94 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424C94 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02424C94 */ if (_t20) goto L_02424C9C; else goto L_02424C98;
|
|
L_02424C98: ; // 0x2424c98
|
|
/* 02424C98 */ Gambit_fn_0242398C(cpu);
|
|
L_02424C9C: ; // 0x2424c9c
|
|
/* 02424C9C */ _t21 = cpu->r[31] + 0x00000048u;
|
|
/* 02424C9C */ rbrew_write32(cpu->mem, _t21, cpu->r[3]);
|
|
/* 02424CA0 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02424CA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02424CA4 */ _t23 = cpu->r[10] + 0x00000034u;
|
|
/* 02424CA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02424CA8 */ cpu->ctr = cpu->r[11];
|
|
/* 02424CAC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424CB0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424CB4 */ cpu->r[3] = 0x00000224u;
|
|
/* 02424CB8 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424CC0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424CC0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02424CC0 */ if (_t25) goto L_02424CC8; else goto L_02424CC4;
|
|
L_02424CC4: ; // 0x2424cc4
|
|
/* 02424CC4 */ Gambit_fn_024279D4(cpu);
|
|
L_02424CC8: ; // 0x2424cc8
|
|
/* 02424CC8 */ _t26 = cpu->r[31] + 0x00000044u;
|
|
/* 02424CC8 */ rbrew_write32(cpu->mem, _t26, cpu->r[3]);
|
|
/* 02424CCC */ _t27 = cpu->r[3] + 0x00000000u;
|
|
/* 02424CCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02424CD0 */ _t28 = cpu->r[12] + 0x00000034u;
|
|
/* 02424CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02424CD4 */ cpu->ctr = cpu->r[0];
|
|
/* 02424CD8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424CDC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424CE0 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02424CE4 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424CEC */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424CEC */ _t30 = _t29 & 0x00000001u;
|
|
/* 02424CEC */ if (_t30) goto L_02424CF4; else goto L_02424CF0;
|
|
L_02424CF0: ; // 0x2424cf0
|
|
/* 02424CF0 */ Gambit_fn_02427018(cpu);
|
|
L_02424CF4: ; // 0x2424cf4
|
|
/* 02424CF4 */ _t31 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02424CF4 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]);
|
|
/* 02424CF8 */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 02424CF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02424CFC */ _t33 = cpu->r[10] + 0x00000034u;
|
|
/* 02424CFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02424D00 */ cpu->ctr = cpu->r[11];
|
|
/* 02424D04 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424D08 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424D0C */ cpu->r[0] = 0x00000001u;
|
|
/* 02424D10 */ cpu->r[3] = 0x00000240u;
|
|
/* 02424D14 */ _t34 = cpu->r[1] + 0x00000084u;
|
|
/* 02424D14 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]);
|
|
/* 02424D18 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424D1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424D20 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424D20 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02424D20 */ if (_t36) goto L_02424D28; else goto L_02424D24;
|
|
L_02424D24: ; // 0x2424d24
|
|
/* 02424D24 */ Gambit_fn_02423CF0(cpu);
|
|
L_02424D28: ; // 0x2424d28
|
|
/* 02424D28 */ _t37 = cpu->r[31] + 0x00000058u;
|
|
/* 02424D28 */ rbrew_write32(cpu->mem, _t37, cpu->r[3]);
|
|
/* 02424D2C */ _t38 = cpu->r[3] + 0x00000000u;
|
|
/* 02424D2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02424D30 */ _t39 = cpu->r[10] + 0x00000034u;
|
|
/* 02424D30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02424D34 */ cpu->ctr = cpu->r[0];
|
|
/* 02424D38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02424D3C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424D40 */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 02424D40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02424D44 */ _t41 = cpu->r[12] + 0x00000064u;
|
|
/* 02424D44 */ cpu->r[11] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02424D48 */ cpu->ctr = cpu->r[11];
|
|
/* 02424D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02424D50 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424D54 */ cpu->r[4] = cpu->r[3];
|
|
/* 02424D58 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02424D5C */ Gambit_fn_026D6C54(cpu);
|
|
/* 02424D60 */ _t42 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424D60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02424D64 */ cpu->r[5] = 0x00000001u;
|
|
/* 02424D68 */ _t43 = cpu->r[1] + 0x0000012Cu;
|
|
/* 02424D68 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02424D6C */ _t44 = cpu->r[30] + 0x00000004u;
|
|
/* 02424D6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02424D70 */ cpu->r[3] = cpu->r[1] + 0x000000B0u;
|
|
/* 02424D74 */ Gambit_fn_026D6F40(cpu);
|
|
/* 02424D78 */ cpu->r[3] = 0x00000220u;
|
|
/* 02424D7C */ Gambit_fn_02801A78(cpu);
|
|
/* 02424D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424D84 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424D84 */ _t46 = _t45 & 0x00000001u;
|
|
/* 02424D84 */ if (_t46) goto L_02424D8C; else goto L_02424D88;
|
|
L_02424D88: ; // 0x2424d88
|
|
/* 02424D88 */ Gambit_fn_024258F0(cpu);
|
|
L_02424D8C: ; // 0x2424d8c
|
|
/* 02424D8C */ _t47 = cpu->r[31] + 0x00000040u;
|
|
/* 02424D8C */ rbrew_write32(cpu->mem, _t47, cpu->r[3]);
|
|
/* 02424D90 */ _t48 = cpu->r[3] + 0x00000000u;
|
|
/* 02424D90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02424D94 */ _t49 = cpu->r[10] + 0x00000034u;
|
|
/* 02424D94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02424D98 */ cpu->ctr = cpu->r[0];
|
|
/* 02424D9C */ cpu->r[4] = cpu->r[1] + 0x000000B0u;
|
|
/* 02424DA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424DA4 */ _t50 = cpu->r[31] + 0x00000000u;
|
|
/* 02424DA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02424DA8 */ _t51 = cpu->r[12] + 0x00000064u;
|
|
/* 02424DA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t51);
|
|
/* 02424DAC */ cpu->ctr = cpu->r[10];
|
|
/* 02424DB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02424DB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424DB8 */ cpu->r[4] = cpu->r[3];
|
|
/* 02424DBC */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 02424DC0 */ Gambit_fn_026D6C54(cpu);
|
|
/* 02424DC4 */ _t52 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02424DC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02424DC8 */ cpu->r[5] = 0x00000001u;
|
|
/* 02424DCC */ _t53 = cpu->r[1] + 0x000001D4u;
|
|
/* 02424DCC */ rbrew_write32(cpu->mem, _t53, cpu->r[12]);
|
|
/* 02424DD0 */ _t54 = cpu->r[30] + 0x00000008u;
|
|
/* 02424DD0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02424DD4 */ cpu->r[3] = cpu->r[1] + 0x00000158u;
|
|
/* 02424DD8 */ Gambit_fn_026D6F40(cpu);
|
|
/* 02424DDC */ cpu->r[3] = 0x00000240u;
|
|
/* 02424DE0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02424DE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424DE8 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424DE8 */ _t56 = _t55 & 0x00000001u;
|
|
/* 02424DE8 */ if (_t56) goto L_02424DF0; else goto L_02424DEC;
|
|
L_02424DEC: ; // 0x2424dec
|
|
/* 02424DEC */ Gambit_fn_02423CF0(cpu);
|
|
L_02424DF0: ; // 0x2424df0
|
|
/* 02424DF0 */ _t57 = cpu->r[31] + 0x00000054u;
|
|
/* 02424DF0 */ rbrew_write32(cpu->mem, _t57, cpu->r[3]);
|
|
/* 02424DF4 */ _t58 = cpu->r[3] + 0x00000000u;
|
|
/* 02424DF4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t58);
|
|
/* 02424DF8 */ _t59 = cpu->r[10] + 0x00000034u;
|
|
/* 02424DF8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02424DFC */ cpu->ctr = cpu->r[11];
|
|
/* 02424E00 */ cpu->r[4] = cpu->r[1] + 0x00000158u;
|
|
/* 02424E04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424E08 */ _t60 = cpu->r[1] + 0x0000020Cu;
|
|
/* 02424E08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02424E0C */ _t61 = cpu->r[1] + 0x00000200u;
|
|
/* 02424E0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02424E10 */ cpu->lr = cpu->r[0];
|
|
/* 02424E14 */ _t62 = cpu->r[1] + 0x00000204u;
|
|
/* 02424E14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02424E18 */ cpu->r[1] = cpu->r[1] + 0x00000208u;
|
|
/* 02424E1C */ return;
|
|
L_02424E20: ; // 0x2424e20
|
|
/* 02424E20 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424E24 */ goto L_02424BE0;
|
|
}
|
|
|
|
// fn_02424E28 @ 0x2424e28
|
|
void Gambit_fn_02424E28(CPUState* cpu) {
|
|
L_02424E28: ; // 0x2424e28
|
|
/* 02424E28 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424E2C */ goto L_02425890;
|
|
L_02425890: ; // 0x2425890
|
|
/* 02425890 */ return;
|
|
}
|
|
|
|
// fn_02424E30 @ 0x2424e30
|
|
void Gambit_fn_02424E30(CPUState* cpu) {
|
|
L_02424E30: ; // 0x2424e30
|
|
/* 02424E30 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424E34 */ goto L_02425894;
|
|
L_02425894: ; // 0x2425894
|
|
/* 02425894 */ return;
|
|
}
|
|
|
|
// fn_02424E38 @ 0x2424e38
|
|
void Gambit_fn_02424E38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02424E38: ; // 0x2424e38
|
|
/* 02424E38 */ cpu->r[0] = cpu->lr;
|
|
/* 02424E3C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02424E3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424E3C */ cpu->r[1] = _t0;
|
|
/* 02424E40 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02424E40 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424E44 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424E44 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02424E48 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424E48 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02424E4C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02424E4C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02424E50 */ cpu->r[29] = cpu->r[3];
|
|
/* 02424E54 */ _t5 = cpu->r[29] + 0x00000060u;
|
|
/* 02424E54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02424E58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424E5C */ cpu->r[31] = 0x00000000u;
|
|
/* 02424E60 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424E60 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02424E60 */ if (_t7) goto L_02424E94; else goto L_02424E64;
|
|
L_02424E64: ; // 0x2424e64
|
|
/* 02424E64 */ _t8 = cpu->r[29] + 0x0000005Cu;
|
|
/* 02424E64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02424E68 */ cpu->r[4] = 0x00000400u;
|
|
/* 02424E6C */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02424E6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02424E70 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424E74 */ _t10 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02424E74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02424E78 */ cpu->r[0] = cpu->r[3] & cpu->r[0];
|
|
/* 02424E78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424E7C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424E7C */ _t12 = _t11 & 0x00000001u;
|
|
/* 02424E7C */ if (_t12) goto L_02424E94; else goto L_02424E80;
|
|
L_02424E80: ; // 0x2424e80
|
|
/* 02424E80 */ _t13 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02424E80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02424E84 */ Gambit_fn_02425E74(cpu);
|
|
/* 02424E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424E8C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424E8C */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424E8C */ if (_t15) goto L_02424E94; else goto L_02424E90;
|
|
L_02424E90: ; // 0x2424e90
|
|
/* 02424E90 */ cpu->r[31] = 0x00000001u;
|
|
L_02424E94: ; // 0x2424e94
|
|
/* 02424E94 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424E94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02424E98 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02424E98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424E9C */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02424EA0 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02424EA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02424EA4 */ cpu->lr = cpu->r[0];
|
|
/* 02424EA8 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02424EA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02424EAC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02424EB0 */ return;
|
|
}
|
|
|
|
// fn_02424E3C @ 0x2424e3c
|
|
void Gambit_fn_02424E3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02424E3C: ; // 0x2424e3c
|
|
/* 02424E3C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02424E3C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424E3C */ cpu->r[1] = _t0;
|
|
/* 02424E40 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02424E40 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424E44 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424E44 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02424E48 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424E48 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02424E4C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02424E4C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02424E50 */ cpu->r[29] = cpu->r[3];
|
|
/* 02424E54 */ _t5 = cpu->r[29] + 0x00000060u;
|
|
/* 02424E54 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02424E58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424E5C */ cpu->r[31] = 0x00000000u;
|
|
/* 02424E60 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424E60 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02424E60 */ if (_t7) goto L_02424E94; else goto L_02424E64;
|
|
L_02424E64: ; // 0x2424e64
|
|
/* 02424E64 */ _t8 = cpu->r[29] + 0x0000005Cu;
|
|
/* 02424E64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02424E68 */ cpu->r[4] = 0x00000400u;
|
|
/* 02424E6C */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02424E6C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02424E70 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424E74 */ _t10 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02424E74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02424E78 */ cpu->r[0] = cpu->r[3] & cpu->r[0];
|
|
/* 02424E78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424E7C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424E7C */ _t12 = _t11 & 0x00000001u;
|
|
/* 02424E7C */ if (_t12) goto L_02424E94; else goto L_02424E80;
|
|
L_02424E80: ; // 0x2424e80
|
|
/* 02424E80 */ _t13 = cpu->r[29] + 0x0000003Cu;
|
|
/* 02424E80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02424E84 */ Gambit_fn_02425E74(cpu);
|
|
/* 02424E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424E8C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424E8C */ _t15 = _t14 & 0x00000001u;
|
|
/* 02424E8C */ if (_t15) goto L_02424E94; else goto L_02424E90;
|
|
L_02424E90: ; // 0x2424e90
|
|
/* 02424E90 */ cpu->r[31] = 0x00000001u;
|
|
L_02424E94: ; // 0x2424e94
|
|
/* 02424E94 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424E94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02424E98 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02424E98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424E9C */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02424EA0 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02424EA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02424EA4 */ cpu->lr = cpu->r[0];
|
|
/* 02424EA8 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02424EA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02424EAC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02424EB0 */ return;
|
|
}
|
|
|
|
// fn_02424EB4 @ 0x2424eb4
|
|
void Gambit_fn_02424EB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35;
|
|
|
|
L_02424EB4: ; // 0x2424eb4
|
|
/* 02424EB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02424EB8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02424EB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424EB8 */ cpu->r[1] = _t0;
|
|
/* 02424EBC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02424EBC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424EC0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424EC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424EC4 */ cpu->r[30] = cpu->r[3];
|
|
/* 02424EC8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424EC8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424ECC */ _t4 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02424ED0 */ Gambit_fn_02425E68(cpu);
|
|
/* 02424ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424ED8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424ED8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02424ED8 */ if (_t6) goto L_02424EDC; else goto L_02424EF4;
|
|
L_02424EDC: ; // 0x2424edc
|
|
/* 02424EDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02424EE0 */ Gambit_fn_02424E38(cpu);
|
|
/* 02424EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424EE8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424EE8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02424EE8 */ if (_t8) goto L_02424EF4; else goto L_02424EEC;
|
|
L_02424EEC: ; // 0x2424eec
|
|
/* 02424EEC */ _t9 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424EEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02424EF0 */ Gambit_fn_02425E60(cpu);
|
|
L_02424EF4: ; // 0x2424ef4
|
|
/* 02424EF4 */ _t10 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424EF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02424EF8 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02424EF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02424EFC */ _t12 = cpu->r[12] + 0x00000184u;
|
|
/* 02424EFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02424F00 */ cpu->ctr = cpu->r[0];
|
|
/* 02424F04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424F08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424F0C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F0C */ _t14 = _t13 & 0x00000001u;
|
|
/* 02424F0C */ if (_t14) goto L_02424F88; else goto L_02424F10;
|
|
L_02424F10: ; // 0x2424f10
|
|
/* 02424F10 */ _t15 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02424F10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02424F14 */ cpu->r[4] = 0x00000010u;
|
|
/* 02424F18 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02424F18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02424F1C */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424F20 */ _t17 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424F24 */ cpu->r[0] = cpu->r[3] & cpu->r[0];
|
|
/* 02424F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424F28 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F28 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02424F28 */ if (_t19) goto L_02424F38; else goto L_02424F2C;
|
|
L_02424F2C: ; // 0x2424f2c
|
|
/* 02424F2C */ _t20 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424F2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02424F30 */ cpu->r[4] = 0x00000000u;
|
|
/* 02424F34 */ Gambit_fn_02425FFC(cpu);
|
|
L_02424F38: ; // 0x2424f38
|
|
/* 02424F38 */ _t21 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02424F38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02424F3C */ cpu->r[4] = 0x00000004u;
|
|
/* 02424F40 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02424F40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02424F44 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424F48 */ _t23 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02424F4C */ cpu->r[0] = cpu->r[3] & cpu->r[0];
|
|
/* 02424F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424F50 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F50 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02424F50 */ if (_t25) goto L_02424F60; else goto L_02424F54;
|
|
L_02424F54: ; // 0x2424f54
|
|
/* 02424F54 */ _t26 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424F54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02424F58 */ cpu->r[4] = 0x00000001u;
|
|
/* 02424F5C */ Gambit_fn_02425FFC(cpu);
|
|
L_02424F60: ; // 0x2424f60
|
|
/* 02424F60 */ _t27 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02424F60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02424F64 */ cpu->r[4] = 0x00000020u;
|
|
/* 02424F68 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 02424F68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02424F6C */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424F70 */ _t29 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424F70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02424F74 */ cpu->r[12] = cpu->r[3] & cpu->r[0];
|
|
/* 02424F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02424F78 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F78 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02424F78 */ if (_t31) goto L_02424F88; else goto L_02424F7C;
|
|
L_02424F7C: ; // 0x2424f7c
|
|
/* 02424F7C */ _t32 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424F7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02424F80 */ cpu->r[4] = 0x00000002u;
|
|
/* 02424F84 */ Gambit_fn_02425FFC(cpu);
|
|
L_02424F88: ; // 0x2424f88
|
|
/* 02424F88 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 02424F88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02424F8C */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 02424F8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02424F90 */ cpu->lr = cpu->r[0];
|
|
/* 02424F94 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424F94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02424F98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02424F9C */ return;
|
|
}
|
|
|
|
// fn_02424EB8 @ 0x2424eb8
|
|
void Gambit_fn_02424EB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35;
|
|
|
|
L_02424EB8: ; // 0x2424eb8
|
|
/* 02424EB8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02424EB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424EB8 */ cpu->r[1] = _t0;
|
|
/* 02424EBC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02424EBC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424EC0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424EC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424EC4 */ cpu->r[30] = cpu->r[3];
|
|
/* 02424EC8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424EC8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424ECC */ _t4 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02424ED0 */ Gambit_fn_02425E68(cpu);
|
|
/* 02424ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424ED8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424ED8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02424ED8 */ if (_t6) goto L_02424EDC; else goto L_02424EF4;
|
|
L_02424EDC: ; // 0x2424edc
|
|
/* 02424EDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02424EE0 */ Gambit_fn_02424E38(cpu);
|
|
/* 02424EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424EE8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424EE8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02424EE8 */ if (_t8) goto L_02424EF4; else goto L_02424EEC;
|
|
L_02424EEC: ; // 0x2424eec
|
|
/* 02424EEC */ _t9 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424EEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02424EF0 */ Gambit_fn_02425E60(cpu);
|
|
L_02424EF4: ; // 0x2424ef4
|
|
/* 02424EF4 */ _t10 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424EF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02424EF8 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02424EF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02424EFC */ _t12 = cpu->r[12] + 0x00000184u;
|
|
/* 02424EFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02424F00 */ cpu->ctr = cpu->r[0];
|
|
/* 02424F04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424F08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424F0C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F0C */ _t14 = _t13 & 0x00000001u;
|
|
/* 02424F0C */ if (_t14) goto L_02424F88; else goto L_02424F10;
|
|
L_02424F10: ; // 0x2424f10
|
|
/* 02424F10 */ _t15 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02424F10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02424F14 */ cpu->r[4] = 0x00000010u;
|
|
/* 02424F18 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02424F18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02424F1C */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424F20 */ _t17 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424F24 */ cpu->r[0] = cpu->r[3] & cpu->r[0];
|
|
/* 02424F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424F28 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F28 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02424F28 */ if (_t19) goto L_02424F38; else goto L_02424F2C;
|
|
L_02424F2C: ; // 0x2424f2c
|
|
/* 02424F2C */ _t20 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424F2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02424F30 */ cpu->r[4] = 0x00000000u;
|
|
/* 02424F34 */ Gambit_fn_02425FFC(cpu);
|
|
L_02424F38: ; // 0x2424f38
|
|
/* 02424F38 */ _t21 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02424F38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02424F3C */ cpu->r[4] = 0x00000004u;
|
|
/* 02424F40 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02424F40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02424F44 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424F48 */ _t23 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02424F4C */ cpu->r[0] = cpu->r[3] & cpu->r[0];
|
|
/* 02424F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424F50 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F50 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02424F50 */ if (_t25) goto L_02424F60; else goto L_02424F54;
|
|
L_02424F54: ; // 0x2424f54
|
|
/* 02424F54 */ _t26 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424F54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02424F58 */ cpu->r[4] = 0x00000001u;
|
|
/* 02424F5C */ Gambit_fn_02425FFC(cpu);
|
|
L_02424F60: ; // 0x2424f60
|
|
/* 02424F60 */ _t27 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02424F60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02424F64 */ cpu->r[4] = 0x00000020u;
|
|
/* 02424F68 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 02424F68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02424F6C */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424F70 */ _t29 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424F70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02424F74 */ cpu->r[12] = cpu->r[3] & cpu->r[0];
|
|
/* 02424F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02424F78 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F78 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02424F78 */ if (_t31) goto L_02424F88; else goto L_02424F7C;
|
|
L_02424F7C: ; // 0x2424f7c
|
|
/* 02424F7C */ _t32 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424F7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02424F80 */ cpu->r[4] = 0x00000002u;
|
|
/* 02424F84 */ Gambit_fn_02425FFC(cpu);
|
|
L_02424F88: ; // 0x2424f88
|
|
/* 02424F88 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 02424F88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02424F8C */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 02424F8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02424F90 */ cpu->lr = cpu->r[0];
|
|
/* 02424F94 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424F94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02424F98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02424F9C */ return;
|
|
}
|
|
|
|
// fn_02424FA0 @ 0x2424fa0
|
|
void Gambit_fn_02424FA0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35;
|
|
|
|
L_02424EB4: ; // 0x2424eb4
|
|
/* 02424EB4 */ cpu->r[0] = cpu->lr;
|
|
/* 02424EB8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02424EB8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424EB8 */ cpu->r[1] = _t0;
|
|
/* 02424EBC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02424EBC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424EC0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424EC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424EC4 */ cpu->r[30] = cpu->r[3];
|
|
/* 02424EC8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424EC8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424ECC */ _t4 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424ECC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02424ED0 */ Gambit_fn_02425E68(cpu);
|
|
/* 02424ED4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424ED8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424ED8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02424ED8 */ if (_t6) goto L_02424EDC; else goto L_02424EF4;
|
|
L_02424EDC: ; // 0x2424edc
|
|
/* 02424EDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02424EE0 */ Gambit_fn_02424E38(cpu);
|
|
/* 02424EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424EE8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424EE8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02424EE8 */ if (_t8) goto L_02424EF4; else goto L_02424EEC;
|
|
L_02424EEC: ; // 0x2424eec
|
|
/* 02424EEC */ _t9 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424EEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02424EF0 */ Gambit_fn_02425E60(cpu);
|
|
L_02424EF4: ; // 0x2424ef4
|
|
/* 02424EF4 */ _t10 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424EF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02424EF8 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02424EF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02424EFC */ _t12 = cpu->r[12] + 0x00000184u;
|
|
/* 02424EFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02424F00 */ cpu->ctr = cpu->r[0];
|
|
/* 02424F04 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02424F08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02424F0C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F0C */ _t14 = _t13 & 0x00000001u;
|
|
/* 02424F0C */ if (_t14) goto L_02424F88; else goto L_02424F10;
|
|
L_02424F10: ; // 0x2424f10
|
|
/* 02424F10 */ _t15 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02424F10 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02424F14 */ cpu->r[4] = 0x00000010u;
|
|
/* 02424F18 */ _t16 = cpu->r[3] + 0x00000000u;
|
|
/* 02424F18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02424F1C */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424F20 */ _t17 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02424F24 */ cpu->r[0] = cpu->r[3] & cpu->r[0];
|
|
/* 02424F24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424F28 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F28 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02424F28 */ if (_t19) goto L_02424F38; else goto L_02424F2C;
|
|
L_02424F2C: ; // 0x2424f2c
|
|
/* 02424F2C */ _t20 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424F2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02424F30 */ cpu->r[4] = 0x00000000u;
|
|
/* 02424F34 */ Gambit_fn_02425FFC(cpu);
|
|
L_02424F38: ; // 0x2424f38
|
|
/* 02424F38 */ _t21 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02424F38 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02424F3C */ cpu->r[4] = 0x00000004u;
|
|
/* 02424F40 */ _t22 = cpu->r[3] + 0x00000000u;
|
|
/* 02424F40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02424F44 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424F48 */ _t23 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424F48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02424F4C */ cpu->r[0] = cpu->r[3] & cpu->r[0];
|
|
/* 02424F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02424F50 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F50 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02424F50 */ if (_t25) goto L_02424F60; else goto L_02424F54;
|
|
L_02424F54: ; // 0x2424f54
|
|
/* 02424F54 */ _t26 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424F54 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02424F58 */ cpu->r[4] = 0x00000001u;
|
|
/* 02424F5C */ Gambit_fn_02425FFC(cpu);
|
|
L_02424F60: ; // 0x2424f60
|
|
/* 02424F60 */ _t27 = cpu->r[30] + 0x0000005Cu;
|
|
/* 02424F60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02424F64 */ cpu->r[4] = 0x00000020u;
|
|
/* 02424F68 */ _t28 = cpu->r[3] + 0x00000000u;
|
|
/* 02424F68 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02424F6C */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02424F70 */ _t29 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02424F70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02424F74 */ cpu->r[12] = cpu->r[3] & cpu->r[0];
|
|
/* 02424F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02424F78 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424F78 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02424F78 */ if (_t31) goto L_02424F88; else goto L_02424F7C;
|
|
L_02424F7C: ; // 0x2424f7c
|
|
/* 02424F7C */ _t32 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02424F7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02424F80 */ cpu->r[4] = 0x00000002u;
|
|
/* 02424F84 */ Gambit_fn_02425FFC(cpu);
|
|
L_02424F88: ; // 0x2424f88
|
|
/* 02424F88 */ _t33 = cpu->r[1] + 0x00000014u;
|
|
/* 02424F88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02424F8C */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 02424F8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02424F90 */ cpu->lr = cpu->r[0];
|
|
/* 02424F94 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424F94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02424F98 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02424F9C */ return;
|
|
L_02424FA0: ; // 0x2424fa0
|
|
/* 02424FA0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424FA4 */ goto L_02424EB4;
|
|
}
|
|
|
|
// fn_02424FA8 @ 0x2424fa8
|
|
void Gambit_fn_02424FA8(CPUState* cpu) {
|
|
L_02424FA8: ; // 0x2424fa8
|
|
/* 02424FA8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424FAC */ goto L_02425898;
|
|
L_02425898: ; // 0x2425898
|
|
/* 02425898 */ return;
|
|
}
|
|
|
|
// fn_02424FB0 @ 0x2424fb0
|
|
void Gambit_fn_02424FB0(CPUState* cpu) {
|
|
L_02424FB0: ; // 0x2424fb0
|
|
/* 02424FB0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424FB4 */ goto L_0242589C;
|
|
L_0242589C: ; // 0x242589c
|
|
/* 0242589C */ return;
|
|
}
|
|
|
|
// fn_02424FB8 @ 0x2424fb8
|
|
void Gambit_fn_02424FB8(CPUState* cpu) {
|
|
L_02424FB8: ; // 0x2424fb8
|
|
/* 02424FB8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424FBC */ goto L_024258A0;
|
|
L_024258A0: ; // 0x24258a0
|
|
/* 024258A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 024258A4 */ return;
|
|
}
|
|
|
|
// fn_02424FC0 @ 0x2424fc0
|
|
void Gambit_fn_02424FC0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02424FC0: ; // 0x2424fc0
|
|
/* 02424FC0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424FC4 */ goto L_024258A8;
|
|
L_024258A8: ; // 0x24258a8
|
|
/* 024258A8 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 024258A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 024258AC */ return;
|
|
}
|
|
|
|
// fn_02424FC8 @ 0x2424fc8
|
|
void Gambit_fn_02424FC8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02424FC8: ; // 0x2424fc8
|
|
/* 02424FC8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424FCC */ goto L_024258B8;
|
|
L_024258B8: ; // 0x24258b8
|
|
/* 024258B8 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 024258B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 024258BC */ return;
|
|
}
|
|
|
|
// fn_02424FD0 @ 0x2424fd0
|
|
void Gambit_fn_02424FD0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02424FD0: ; // 0x2424fd0
|
|
/* 02424FD0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02424FD4 */ goto L_024258C0;
|
|
L_024258C0: ; // 0x24258c0
|
|
/* 024258C0 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 024258C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024258C4 */ return;
|
|
}
|
|
|
|
// fn_02424FD8 @ 0x2424fd8
|
|
void Gambit_fn_02424FD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50;
|
|
|
|
L_02424FD8: ; // 0x2424fd8
|
|
/* 02424FD8 */ cpu->r[0] = cpu->lr;
|
|
/* 02424FDC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02424FDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424FDC */ cpu->r[1] = _t0;
|
|
/* 02424FE0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02424FE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424FE4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424FE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424FE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02424FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02424FEC */ cpu->r[30] = cpu->r[4];
|
|
/* 02424FF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424FF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424FF4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424FF4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02424FF4 */ if (_t5) goto L_02424FF8; else goto L_02425008;
|
|
L_02424FF8: ; // 0x2424ff8
|
|
/* 02424FF8 */ cpu->r[3] = 0x00000064u;
|
|
/* 02424FFC */ Gambit_fn_02801A78(cpu);
|
|
/* 02425000 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425004 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425004 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02425004 */ if (_t7) goto L_024250FC; else goto L_02425008;
|
|
L_02425008: ; // 0x2425008
|
|
/* 02425008 */ cpu->r[4] = 0x10090000u;
|
|
/* 0242500C */ cpu->r[3] = cpu->r[31];
|
|
/* 02425010 */ cpu->r[5] = 0x00000020u;
|
|
/* 02425014 */ cpu->r[4] = cpu->r[4] + 0x00007ADCu;
|
|
/* 02425018 */ Gambit_fn_026DD9F0(cpu);
|
|
/* 0242501C */ cpu->r[8] = 0x10090000u;
|
|
/* 02425020 */ cpu->r[10] = 0x10090000u;
|
|
/* 02425024 */ cpu->r[8] = cpu->r[8] + 0x00007AF0u;
|
|
/* 02425028 */ cpu->r[10] = cpu->r[10] + 0x00007B78u;
|
|
/* 0242502C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0242502C */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02425030 */ cpu->r[9] = 0x10090000u;
|
|
/* 02425034 */ _t9 = cpu->r[31] + 0x00000010u;
|
|
/* 02425034 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02425038 */ cpu->r[9] = cpu->r[9] + 0x00007B68u;
|
|
/* 0242503C */ cpu->r[3] = cpu->r[31] + 0x00000028u;
|
|
/* 0242503C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425040 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02425040 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02425044 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425044 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02425044 */ if (_t12) goto L_02425048; else goto L_02425058;
|
|
L_02425048: ; // 0x2425048
|
|
/* 02425048 */ cpu->r[3] = 0x00000014u;
|
|
/* 0242504C */ Gambit_fn_02801A78(cpu);
|
|
/* 02425050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425054 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425054 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02425054 */ if (_t14) goto L_02425084; else goto L_02425058;
|
|
L_02425058: ; // 0x2425058
|
|
/* 02425058 */ cpu->r[0] = 0x10090000u;
|
|
/* 0242505C */ cpu->r[0] = cpu->r[0] + 0x00007ACCu;
|
|
/* 02425060 */ _t15 = cpu->r[3] + 0x00000010u;
|
|
/* 02425060 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02425064 */ _t16 = cpu->r[30] + 0x00000000u;
|
|
/* 02425064 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02425068 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02425068 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0242506C */ _t18 = cpu->r[30] + 0x00000004u;
|
|
/* 0242506C */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02425070 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 02425070 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 02425074 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02425074 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02425078 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 02425078 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 0242507C */ _t22 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0242507C */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02425080 */ _t23 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02425080 */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
L_02425084: ; // 0x2425084
|
|
/* 02425084 */ cpu->r[0] = 0x00000000u;
|
|
/* 02425088 */ cpu->r[10] = 0x00000001u;
|
|
/* 0242508C */ _t24 = cpu->r[31] + 0x00000058u;
|
|
/* 0242508C */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02425090 */ _t25 = cpu->r[31] + 0x00000060u;
|
|
/* 02425090 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[10]);
|
|
/* 02425094 */ _t26 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02425094 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02425098 */ _t27 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02425098 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0242509C */ _t28 = cpu->r[31] + 0x00000044u;
|
|
/* 0242509C */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 024250A0 */ _t29 = cpu->r[31] + 0x00000054u;
|
|
/* 024250A0 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 024250A4 */ _t30 = cpu->r[31] + 0x00000050u;
|
|
/* 024250A4 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 024250A8 */ _t31 = cpu->r[31] + 0x00000048u;
|
|
/* 024250A8 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 024250AC */ _t32 = cpu->r[31] + 0x00000040u;
|
|
/* 024250AC */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 024250B0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024250B4 */ _t33 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024250B4 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 024250B8 */ _t34 = cpu->r[12] + 0x00001D34u;
|
|
/* 024250B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024250BC */ _t35 = cpu->r[12] + 0x00000178u;
|
|
/* 024250BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024250C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024250C4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024250C4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024250C4 */ if (_t37) goto L_024250F0; else goto L_024250C8;
|
|
L_024250C8: ; // 0x24250c8
|
|
/* 024250C8 */ _t38 = cpu->r[12] + 0x00000174u;
|
|
/* 024250C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024250CC */ _t39 = cpu->r[12] + 0x00000170u;
|
|
/* 024250CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 024250D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 024250D4 */ _t40 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024250D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024250D8 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024250D8 */ _t42 = _t41 & 0x00000001u;
|
|
/* 024250D8 */ if (_t42) goto L_024250E0; else goto L_024250DC;
|
|
L_024250DC: ; // 0x24250dc
|
|
/* 024250DC */ cpu->r[9] = cpu->r[9] - cpu->r[0];
|
|
L_024250E0: ; // 0x24250e0
|
|
/* 024250E0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024250E4 */ _t43 = cpu->r[7] + cpu->r[12];
|
|
/* 024250E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024250E8 */ _t44 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024250E8 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 024250EC */ goto L_024250FC;
|
|
L_024250F0: ; // 0x24250f0
|
|
/* 024250F0 */ _t45 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024250F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024250F4 */ _t46 = cpu->r[7] + 0x00000000u;
|
|
/* 024250F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 024250F8 */ _t47 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024250F8 */ rbrew_write32(cpu->mem, _t47, cpu->r[9]);
|
|
L_024250FC: ; // 0x24250fc
|
|
/* 024250FC */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 024250FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02425100 */ cpu->r[3] = cpu->r[31];
|
|
/* 02425104 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425104 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02425108 */ cpu->lr = cpu->r[0];
|
|
/* 0242510C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0242510C */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02425110 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425114 */ return;
|
|
}
|
|
|
|
// fn_02424FDC @ 0x2424fdc
|
|
void Gambit_fn_02424FDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50;
|
|
|
|
L_02424FDC: ; // 0x2424fdc
|
|
/* 02424FDC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02424FDC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02424FDC */ cpu->r[1] = _t0;
|
|
/* 02424FE0 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02424FE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02424FE4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424FE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02424FE8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02424FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02424FEC */ cpu->r[30] = cpu->r[4];
|
|
/* 02424FF0 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02424FF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02424FF4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424FF4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02424FF4 */ if (_t5) goto L_02424FF8; else goto L_02425008;
|
|
L_02424FF8: ; // 0x2424ff8
|
|
/* 02424FF8 */ cpu->r[3] = 0x00000064u;
|
|
/* 02424FFC */ Gambit_fn_02801A78(cpu);
|
|
/* 02425000 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425000 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425004 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425004 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02425004 */ if (_t7) goto L_024250FC; else goto L_02425008;
|
|
L_02425008: ; // 0x2425008
|
|
/* 02425008 */ cpu->r[4] = 0x10090000u;
|
|
/* 0242500C */ cpu->r[3] = cpu->r[31];
|
|
/* 02425010 */ cpu->r[5] = 0x00000020u;
|
|
/* 02425014 */ cpu->r[4] = cpu->r[4] + 0x00007ADCu;
|
|
/* 02425018 */ Gambit_fn_026DD9F0(cpu);
|
|
/* 0242501C */ cpu->r[8] = 0x10090000u;
|
|
/* 02425020 */ cpu->r[10] = 0x10090000u;
|
|
/* 02425024 */ cpu->r[8] = cpu->r[8] + 0x00007AF0u;
|
|
/* 02425028 */ cpu->r[10] = cpu->r[10] + 0x00007B78u;
|
|
/* 0242502C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0242502C */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02425030 */ cpu->r[9] = 0x10090000u;
|
|
/* 02425034 */ _t9 = cpu->r[31] + 0x00000010u;
|
|
/* 02425034 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02425038 */ cpu->r[9] = cpu->r[9] + 0x00007B68u;
|
|
/* 0242503C */ cpu->r[3] = cpu->r[31] + 0x00000028u;
|
|
/* 0242503C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425040 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02425040 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02425044 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425044 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02425044 */ if (_t12) goto L_02425048; else goto L_02425058;
|
|
L_02425048: ; // 0x2425048
|
|
/* 02425048 */ cpu->r[3] = 0x00000014u;
|
|
/* 0242504C */ Gambit_fn_02801A78(cpu);
|
|
/* 02425050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425054 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425054 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02425054 */ if (_t14) goto L_02425084; else goto L_02425058;
|
|
L_02425058: ; // 0x2425058
|
|
/* 02425058 */ cpu->r[0] = 0x10090000u;
|
|
/* 0242505C */ cpu->r[0] = cpu->r[0] + 0x00007ACCu;
|
|
/* 02425060 */ _t15 = cpu->r[3] + 0x00000010u;
|
|
/* 02425060 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02425064 */ _t16 = cpu->r[30] + 0x00000000u;
|
|
/* 02425064 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02425068 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02425068 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0242506C */ _t18 = cpu->r[30] + 0x00000004u;
|
|
/* 0242506C */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02425070 */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 02425070 */ rbrew_write32(cpu->mem, _t19, cpu->r[10]);
|
|
/* 02425074 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02425074 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02425078 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 02425078 */ rbrew_write32(cpu->mem, _t21, cpu->r[11]);
|
|
/* 0242507C */ _t22 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0242507C */ cpu->r[12] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02425080 */ _t23 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02425080 */ rbrew_write32(cpu->mem, _t23, cpu->r[12]);
|
|
L_02425084: ; // 0x2425084
|
|
/* 02425084 */ cpu->r[0] = 0x00000000u;
|
|
/* 02425088 */ cpu->r[10] = 0x00000001u;
|
|
/* 0242508C */ _t24 = cpu->r[31] + 0x00000058u;
|
|
/* 0242508C */ rbrew_write32(cpu->mem, _t24, cpu->r[0]);
|
|
/* 02425090 */ _t25 = cpu->r[31] + 0x00000060u;
|
|
/* 02425090 */ rbrew_write8(cpu->mem, _t25, (uint8_t)cpu->r[10]);
|
|
/* 02425094 */ _t26 = cpu->r[31] + 0x0000004Cu;
|
|
/* 02425094 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02425098 */ _t27 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02425098 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0242509C */ _t28 = cpu->r[31] + 0x00000044u;
|
|
/* 0242509C */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 024250A0 */ _t29 = cpu->r[31] + 0x00000054u;
|
|
/* 024250A0 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 024250A4 */ _t30 = cpu->r[31] + 0x00000050u;
|
|
/* 024250A4 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 024250A8 */ _t31 = cpu->r[31] + 0x00000048u;
|
|
/* 024250A8 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 024250AC */ _t32 = cpu->r[31] + 0x00000040u;
|
|
/* 024250AC */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 024250B0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024250B4 */ _t33 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024250B4 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 024250B8 */ _t34 = cpu->r[12] + 0x00001D34u;
|
|
/* 024250B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024250BC */ _t35 = cpu->r[12] + 0x00000178u;
|
|
/* 024250BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024250C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024250C4 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024250C4 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024250C4 */ if (_t37) goto L_024250F0; else goto L_024250C8;
|
|
L_024250C8: ; // 0x24250c8
|
|
/* 024250C8 */ _t38 = cpu->r[12] + 0x00000174u;
|
|
/* 024250C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024250CC */ _t39 = cpu->r[12] + 0x00000170u;
|
|
/* 024250CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t39);
|
|
/* 024250D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 024250D4 */ _t40 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024250D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024250D8 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024250D8 */ _t42 = _t41 & 0x00000001u;
|
|
/* 024250D8 */ if (_t42) goto L_024250E0; else goto L_024250DC;
|
|
L_024250DC: ; // 0x24250dc
|
|
/* 024250DC */ cpu->r[9] = cpu->r[9] - cpu->r[0];
|
|
L_024250E0: ; // 0x24250e0
|
|
/* 024250E0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024250E4 */ _t43 = cpu->r[7] + cpu->r[12];
|
|
/* 024250E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 024250E8 */ _t44 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024250E8 */ rbrew_write32(cpu->mem, _t44, cpu->r[9]);
|
|
/* 024250EC */ goto L_024250FC;
|
|
L_024250F0: ; // 0x24250f0
|
|
/* 024250F0 */ _t45 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024250F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024250F4 */ _t46 = cpu->r[7] + 0x00000000u;
|
|
/* 024250F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46);
|
|
/* 024250F8 */ _t47 = cpu->r[31] + 0x0000005Cu;
|
|
/* 024250F8 */ rbrew_write32(cpu->mem, _t47, cpu->r[9]);
|
|
L_024250FC: ; // 0x24250fc
|
|
/* 024250FC */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 024250FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t48);
|
|
/* 02425100 */ cpu->r[3] = cpu->r[31];
|
|
/* 02425104 */ _t49 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425104 */ cpu->r[31] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02425108 */ cpu->lr = cpu->r[0];
|
|
/* 0242510C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 0242510C */ cpu->r[30] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02425110 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425114 */ return;
|
|
}
|
|
|
|
// fn_02425118 @ 0x2425118
|
|
void Gambit_fn_02425118(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02425118: ; // 0x2425118
|
|
/* 02425118 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02425118 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0242511C */ _t1 = cpu->r[11] + 0x00000118u;
|
|
/* 0242511C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425120 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02425120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02425124 */ cpu->r[11] = 0x00000000u;
|
|
/* 02425128 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425128 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02425128 */ if (_t3) goto L_02425140; else goto L_0242512C;
|
|
L_0242512C: ; // 0x242512c
|
|
/* 0242512C */ _t4 = cpu->r[3] + 0x00000040u;
|
|
/* 0242512C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425130 */ _t5 = cpu->r[12] + 0x00000118u;
|
|
/* 02425130 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425134 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02425134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02425138 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425138 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02425138 */ if (_t7) goto L_02425140; else goto L_0242513C;
|
|
L_0242513C: ; // 0x242513c
|
|
/* 0242513C */ cpu->r[11] = 0x00000001u;
|
|
L_02425140: ; // 0x2425140
|
|
/* 02425140 */ cpu->r[3] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02425144 */ return;
|
|
}
|
|
|
|
// fn_02425148 @ 0x2425148
|
|
void Gambit_fn_02425148(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_02425148: ; // 0x2425148
|
|
/* 02425148 */ cpu->r[0] = cpu->lr;
|
|
/* 0242514C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0242514C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242514C */ cpu->r[1] = _t0;
|
|
/* 02425150 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425150 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425154 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02425154 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02425158 */ cpu->r[30] = cpu->r[3];
|
|
/* 0242515C */ cpu->r[31] = cpu->r[4];
|
|
/* 02425160 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425160 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425164 */ Gambit_fn_02425118(cpu);
|
|
/* 02425168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242516C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242516C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0242516C */ if (_t5) goto L_024251D0; else goto L_02425170;
|
|
L_02425170: ; // 0x2425170
|
|
/* 02425170 */ _t6 = cpu->r[30] + 0x00000028u;
|
|
/* 02425170 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425174 */ cpu->r[5] = 0x00000001u;
|
|
/* 02425178 */ _t7 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02425178 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0242517C */ Gambit_fn_027ECB34(cpu);
|
|
/* 02425180 */ _t8 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02425180 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425184 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02425184 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425188 */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 02425188 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0242518C */ cpu->ctr = cpu->r[0];
|
|
/* 02425190 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425194 */ _t11 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02425194 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425198 */ cpu->r[4] = cpu->r[31];
|
|
/* 0242519C */ Gambit_fn_02425D10(cpu);
|
|
/* 024251A0 */ _t12 = cpu->r[30] + 0x0000002Cu;
|
|
/* 024251A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024251A4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024251A8 */ _t13 = cpu->r[30] + 0x00000040u;
|
|
/* 024251A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024251AC */ Gambit_fn_027ECB34(cpu);
|
|
/* 024251B0 */ _t14 = cpu->r[30] + 0x00000040u;
|
|
/* 024251B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024251B4 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 024251B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024251B8 */ _t16 = cpu->r[10] + 0x00000164u;
|
|
/* 024251B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024251BC */ cpu->ctr = cpu->r[0];
|
|
/* 024251C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024251C4 */ _t17 = cpu->r[30] + 0x00000040u;
|
|
/* 024251C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024251C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 024251CC */ Gambit_fn_02425980(cpu);
|
|
L_024251D0: ; // 0x24251d0
|
|
/* 024251D0 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 024251D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024251D4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 024251D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024251D8 */ cpu->lr = cpu->r[0];
|
|
/* 024251DC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024251DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024251E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024251E4 */ return;
|
|
}
|
|
|
|
// fn_0242514C @ 0x242514c
|
|
void Gambit_fn_0242514C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_0242514C: ; // 0x242514c
|
|
/* 0242514C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0242514C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242514C */ cpu->r[1] = _t0;
|
|
/* 02425150 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425150 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425154 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02425154 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02425158 */ cpu->r[30] = cpu->r[3];
|
|
/* 0242515C */ cpu->r[31] = cpu->r[4];
|
|
/* 02425160 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425160 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425164 */ Gambit_fn_02425118(cpu);
|
|
/* 02425168 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242516C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242516C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0242516C */ if (_t5) goto L_024251D0; else goto L_02425170;
|
|
L_02425170: ; // 0x2425170
|
|
/* 02425170 */ _t6 = cpu->r[30] + 0x00000028u;
|
|
/* 02425170 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425174 */ cpu->r[5] = 0x00000001u;
|
|
/* 02425178 */ _t7 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02425178 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0242517C */ Gambit_fn_027ECB34(cpu);
|
|
/* 02425180 */ _t8 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02425180 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425184 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02425184 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425188 */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 02425188 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0242518C */ cpu->ctr = cpu->r[0];
|
|
/* 02425190 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425194 */ _t11 = cpu->r[30] + 0x0000003Cu;
|
|
/* 02425194 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425198 */ cpu->r[4] = cpu->r[31];
|
|
/* 0242519C */ Gambit_fn_02425D10(cpu);
|
|
/* 024251A0 */ _t12 = cpu->r[30] + 0x0000002Cu;
|
|
/* 024251A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024251A4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024251A8 */ _t13 = cpu->r[30] + 0x00000040u;
|
|
/* 024251A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024251AC */ Gambit_fn_027ECB34(cpu);
|
|
/* 024251B0 */ _t14 = cpu->r[30] + 0x00000040u;
|
|
/* 024251B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024251B4 */ _t15 = cpu->r[3] + 0x00000000u;
|
|
/* 024251B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024251B8 */ _t16 = cpu->r[10] + 0x00000164u;
|
|
/* 024251B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024251BC */ cpu->ctr = cpu->r[0];
|
|
/* 024251C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024251C4 */ _t17 = cpu->r[30] + 0x00000040u;
|
|
/* 024251C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024251C8 */ cpu->r[4] = cpu->r[31];
|
|
/* 024251CC */ Gambit_fn_02425980(cpu);
|
|
L_024251D0: ; // 0x24251d0
|
|
/* 024251D0 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 024251D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024251D4 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 024251D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024251D8 */ cpu->lr = cpu->r[0];
|
|
/* 024251DC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024251DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024251E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024251E4 */ return;
|
|
}
|
|
|
|
// fn_024251E8 @ 0x24251e8
|
|
void Gambit_fn_024251E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_024251E8: ; // 0x24251e8
|
|
/* 024251E8 */ cpu->r[0] = cpu->lr;
|
|
/* 024251EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024251EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024251EC */ cpu->r[1] = _t0;
|
|
/* 024251F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024251F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024251F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024251F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024251F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024251FC */ Gambit_fn_02425118(cpu);
|
|
/* 02425200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425204 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425204 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02425204 */ if (_t4) goto L_02425230; else goto L_02425208;
|
|
L_02425208: ; // 0x2425208
|
|
/* 02425208 */ _t5 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02425208 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0242520C */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 0242520C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425210 */ _t7 = cpu->r[12] + 0x00000164u;
|
|
/* 02425210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425214 */ cpu->ctr = cpu->r[0];
|
|
/* 02425218 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242521C */ _t8 = cpu->r[31] + 0x00000040u;
|
|
/* 0242521C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425220 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02425220 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425224 */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 02425224 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425228 */ cpu->ctr = cpu->r[0];
|
|
/* 0242522C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02425230: ; // 0x2425230
|
|
/* 02425230 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02425230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425234 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425238 */ cpu->lr = cpu->r[0];
|
|
/* 0242523C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425240 */ return;
|
|
}
|
|
|
|
// fn_024251EC @ 0x24251ec
|
|
void Gambit_fn_024251EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_024251EC: ; // 0x24251ec
|
|
/* 024251EC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024251EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024251EC */ cpu->r[1] = _t0;
|
|
/* 024251F0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024251F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024251F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024251F8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024251F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024251FC */ Gambit_fn_02425118(cpu);
|
|
/* 02425200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425204 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425204 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02425204 */ if (_t4) goto L_02425230; else goto L_02425208;
|
|
L_02425208: ; // 0x2425208
|
|
/* 02425208 */ _t5 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02425208 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0242520C */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 0242520C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425210 */ _t7 = cpu->r[12] + 0x00000164u;
|
|
/* 02425210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425214 */ cpu->ctr = cpu->r[0];
|
|
/* 02425218 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242521C */ _t8 = cpu->r[31] + 0x00000040u;
|
|
/* 0242521C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425220 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02425220 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425224 */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 02425224 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425228 */ cpu->ctr = cpu->r[0];
|
|
/* 0242522C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02425230: ; // 0x2425230
|
|
/* 02425230 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02425230 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425234 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425234 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425238 */ cpu->lr = cpu->r[0];
|
|
/* 0242523C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425240 */ return;
|
|
}
|
|
|
|
// fn_02425244 @ 0x2425244
|
|
void Gambit_fn_02425244(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02425244: ; // 0x2425244
|
|
/* 02425244 */ cpu->r[0] = cpu->lr;
|
|
/* 02425248 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425248 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425248 */ cpu->r[1] = _t0;
|
|
/* 0242524C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242524C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02425250 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425250 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02425254 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425258 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425258 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242525C */ _t4 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0242525C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425260 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02425260 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425264 */ _t6 = cpu->r[10] + 0x00000184u;
|
|
/* 02425264 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425268 */ cpu->ctr = cpu->r[0];
|
|
/* 0242526C */ cpu->r[31] = 0x00000000u;
|
|
/* 02425270 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425278 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425278 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02425278 */ if (_t8) goto L_0242529C; else goto L_0242527C;
|
|
L_0242527C: ; // 0x242527c
|
|
/* 0242527C */ _t9 = cpu->r[30] + 0x00000040u;
|
|
/* 0242527C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425280 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02425280 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425284 */ _t11 = cpu->r[12] + 0x00000184u;
|
|
/* 02425284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425288 */ cpu->ctr = cpu->r[0];
|
|
/* 0242528C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425294 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425294 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02425294 */ if (_t13) goto L_0242529C; else goto L_02425298;
|
|
L_02425298: ; // 0x2425298
|
|
/* 02425298 */ cpu->r[31] = 0x00000001u;
|
|
L_0242529C: ; // 0x242529c
|
|
/* 0242529C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0242529C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024252A0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024252A4 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024252A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024252A8 */ cpu->lr = cpu->r[0];
|
|
/* 024252AC */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024252AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024252B0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024252B4 */ return;
|
|
}
|
|
|
|
// fn_02425248 @ 0x2425248
|
|
void Gambit_fn_02425248(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02425248: ; // 0x2425248
|
|
/* 02425248 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425248 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425248 */ cpu->r[1] = _t0;
|
|
/* 0242524C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242524C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02425250 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425250 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02425254 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425258 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425258 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242525C */ _t4 = cpu->r[30] + 0x0000003Cu;
|
|
/* 0242525C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425260 */ _t5 = cpu->r[3] + 0x00000000u;
|
|
/* 02425260 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425264 */ _t6 = cpu->r[10] + 0x00000184u;
|
|
/* 02425264 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425268 */ cpu->ctr = cpu->r[0];
|
|
/* 0242526C */ cpu->r[31] = 0x00000000u;
|
|
/* 02425270 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425278 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425278 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02425278 */ if (_t8) goto L_0242529C; else goto L_0242527C;
|
|
L_0242527C: ; // 0x242527c
|
|
/* 0242527C */ _t9 = cpu->r[30] + 0x00000040u;
|
|
/* 0242527C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425280 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02425280 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425284 */ _t11 = cpu->r[12] + 0x00000184u;
|
|
/* 02425284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425288 */ cpu->ctr = cpu->r[0];
|
|
/* 0242528C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425290 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425294 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425294 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02425294 */ if (_t13) goto L_0242529C; else goto L_02425298;
|
|
L_02425298: ; // 0x2425298
|
|
/* 02425298 */ cpu->r[31] = 0x00000001u;
|
|
L_0242529C: ; // 0x242529c
|
|
/* 0242529C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 0242529C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024252A0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 024252A4 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024252A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024252A8 */ cpu->lr = cpu->r[0];
|
|
/* 024252AC */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024252AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024252B0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024252B4 */ return;
|
|
}
|
|
|
|
// fn_024252B8 @ 0x24252b8
|
|
void Gambit_fn_024252B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024252B8: ; // 0x24252b8
|
|
/* 024252B8 */ cpu->r[0] = cpu->lr;
|
|
/* 024252BC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024252BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024252BC */ cpu->r[1] = _t0;
|
|
/* 024252C0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024252C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024252C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024252C8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024252CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024252CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024252D0 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 024252D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024252D4 */ Gambit_fn_0206C030(cpu);
|
|
/* 024252D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024252DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024252DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024252DC */ if (_t5) goto L_024252E8; else goto L_024252E0;
|
|
L_024252E0: ; // 0x24252e0
|
|
/* 024252E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024252E4 */ Gambit_fn_02425244(cpu);
|
|
L_024252E8: ; // 0x24252e8
|
|
/* 024252E8 */ _t6 = cpu->r[31] + 0x0000003Cu;
|
|
/* 024252E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024252EC */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 024252EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024252F0 */ _t8 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024252F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024252F4 */ cpu->ctr = cpu->r[0];
|
|
/* 024252F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024252FC */ _t9 = cpu->r[31] + 0x00000040u;
|
|
/* 024252FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425300 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02425300 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425304 */ _t11 = cpu->r[12] + 0x0000016Cu;
|
|
/* 02425304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425308 */ cpu->ctr = cpu->r[0];
|
|
/* 0242530C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425310 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02425310 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425314 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425314 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02425318 */ cpu->lr = cpu->r[0];
|
|
/* 0242531C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425320 */ return;
|
|
}
|
|
|
|
// fn_024252BC @ 0x24252bc
|
|
void Gambit_fn_024252BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024252BC: ; // 0x24252bc
|
|
/* 024252BC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024252BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024252BC */ cpu->r[1] = _t0;
|
|
/* 024252C0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024252C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024252C4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024252C8 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024252CC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024252CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024252D0 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 024252D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024252D4 */ Gambit_fn_0206C030(cpu);
|
|
/* 024252D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024252DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024252DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024252DC */ if (_t5) goto L_024252E8; else goto L_024252E0;
|
|
L_024252E0: ; // 0x24252e0
|
|
/* 024252E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024252E4 */ Gambit_fn_02425244(cpu);
|
|
L_024252E8: ; // 0x24252e8
|
|
/* 024252E8 */ _t6 = cpu->r[31] + 0x0000003Cu;
|
|
/* 024252E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024252EC */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 024252EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024252F0 */ _t8 = cpu->r[12] + 0x0000016Cu;
|
|
/* 024252F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024252F4 */ cpu->ctr = cpu->r[0];
|
|
/* 024252F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024252FC */ _t9 = cpu->r[31] + 0x00000040u;
|
|
/* 024252FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425300 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 02425300 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425304 */ _t11 = cpu->r[12] + 0x0000016Cu;
|
|
/* 02425304 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425308 */ cpu->ctr = cpu->r[0];
|
|
/* 0242530C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425310 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02425310 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425314 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425314 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02425318 */ cpu->lr = cpu->r[0];
|
|
/* 0242531C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425320 */ return;
|
|
}
|
|
|
|
// fn_02425324 @ 0x2425324
|
|
void Gambit_fn_02425324(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02425324: ; // 0x2425324
|
|
/* 02425324 */ cpu->r[0] = cpu->lr;
|
|
/* 02425328 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425328 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425328 */ cpu->r[1] = _t0;
|
|
/* 0242532C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242532C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425330 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425334 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02425334 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02425338 */ _t3 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02425338 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0242533C */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 0242533C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425340 */ _t5 = cpu->r[12] + 0x00000094u;
|
|
/* 02425340 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425344 */ cpu->ctr = cpu->r[0];
|
|
/* 02425348 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242534C */ _t6 = cpu->r[31] + 0x00000040u;
|
|
/* 0242534C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425350 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02425350 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425354 */ _t8 = cpu->r[12] + 0x00000094u;
|
|
/* 02425354 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425358 */ cpu->ctr = cpu->r[0];
|
|
/* 0242535C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425360 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02425360 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425364 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425364 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425368 */ cpu->lr = cpu->r[0];
|
|
/* 0242536C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425370 */ return;
|
|
}
|
|
|
|
// fn_02425328 @ 0x2425328
|
|
void Gambit_fn_02425328(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02425328: ; // 0x2425328
|
|
/* 02425328 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425328 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425328 */ cpu->r[1] = _t0;
|
|
/* 0242532C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242532C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425330 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425334 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02425334 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02425338 */ _t3 = cpu->r[31] + 0x0000003Cu;
|
|
/* 02425338 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0242533C */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 0242533C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425340 */ _t5 = cpu->r[12] + 0x00000094u;
|
|
/* 02425340 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425344 */ cpu->ctr = cpu->r[0];
|
|
/* 02425348 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242534C */ _t6 = cpu->r[31] + 0x00000040u;
|
|
/* 0242534C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425350 */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02425350 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425354 */ _t8 = cpu->r[12] + 0x00000094u;
|
|
/* 02425354 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425358 */ cpu->ctr = cpu->r[0];
|
|
/* 0242535C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425360 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02425360 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425364 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425364 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425368 */ cpu->lr = cpu->r[0];
|
|
/* 0242536C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425370 */ return;
|
|
}
|
|
|
|
// fn_024253A4 @ 0x24253a4
|
|
void Gambit_fn_024253A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02425374: ; // 0x2425374
|
|
/* 02425374 */ _t0 = cpu->r[3] + 0x00000060u;
|
|
/* 02425374 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02425378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0242537C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242537C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0242537C */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0242537C */ goto L_02425380;
|
|
L_02425380: ; // 0x2425380
|
|
/* 02425380 */ cpu->r[0] = 0x00000000u;
|
|
/* 02425384 */ _t3 = cpu->r[3] + 0x00000060u;
|
|
/* 02425384 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02425388 */ return;
|
|
L_0242538C: ; // 0x242538c
|
|
/* 0242538C */ _t4 = cpu->r[3] + 0x00000060u;
|
|
/* 0242538C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02425390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02425394 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425394 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02425394 */ _t7 = _t6 ^ 0x00000001u;
|
|
/* 02425394 */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02425394 */ goto L_02425398;
|
|
L_02425398: ; // 0x2425398
|
|
/* 02425398 */ cpu->r[0] = 0x00000001u;
|
|
/* 0242539C */ _t8 = cpu->r[3] + 0x00000060u;
|
|
/* 0242539C */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
/* 024253A0 */ return;
|
|
L_024253A4: ; // 0x24253a4
|
|
/* 024253A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 024253A8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024253A8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024253A8 */ if (_t10) goto L_024253B0; else goto L_024253AC;
|
|
L_024253AC: ; // 0x24253ac
|
|
/* 024253AC */ goto L_02425374;
|
|
L_024253B0: ; // 0x24253b0
|
|
/* 024253B0 */ goto L_0242538C;
|
|
}
|
|
|
|
// fn_024253B4 @ 0x24253b4
|
|
void Gambit_fn_024253B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95;
|
|
|
|
L_024253B4: ; // 0x24253b4
|
|
/* 024253B4 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 024253B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024253B8 */ goto L_02425E50;
|
|
L_02425E50: ; // 0x2425e50
|
|
/* 02425E50 */ _t1 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02425E50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425E54 */ goto L_0245F3F0;
|
|
L_0245F3F0: ; // 0x245f3f0
|
|
/* 0245F3F0 */ cpu->r[0] = cpu->lr;
|
|
/* 0245F3F4 */ _t2 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 0245F3F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[1]);
|
|
/* 0245F3F4 */ cpu->r[1] = _t2;
|
|
/* 0245F3F8 */ _t3 = cpu->r[1] + 0x00000048u;
|
|
/* 0245F3F8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]);
|
|
/* 0245F3FC */ /* nop */
|
|
/* 0245F400 */ _t4 = cpu->r[1] + 0x00000058u;
|
|
/* 0245F400 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[31]);
|
|
/* 0245F404 */ /* nop */
|
|
/* 0245F408 */ _t5 = cpu->r[1] + 0x00000050u;
|
|
/* 0245F408 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[30]);
|
|
/* 0245F40C */ _t6 = cpu->r[1] + 0x00000060u;
|
|
/* 0245F40C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0245F410 */ _t7 = cpu->r[1] + 0x00000040u;
|
|
/* 0245F410 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 0245F414 */ _t8 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0245F414 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245F418 */ _t9 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F418 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0245F41C */ _t10 = cpu->r[1] + 0x00000044u;
|
|
/* 0245F41C */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 0245F420 */ cpu->r[30] = cpu->r[3];
|
|
/* 0245F424 */ _t11 = cpu->r[1] + 0x00000038u;
|
|
/* 0245F424 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 0245F428 */ _t12 = cpu->r[30] + 0x00000010u;
|
|
/* 0245F428 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0245F42C */ cpu->r[0] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F42C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245F430 */ cpu->f[30] = cpu->f[1];
|
|
/* 0245F434 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F434 */ _t14 = _t13 & 0x00000001u;
|
|
/* 0245F434 */ if (_t14) goto L_0245F694; else goto L_0245F438;
|
|
L_0245F438: ; // 0x245f438
|
|
/* 0245F438 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245F43C */ cpu->r[31] = 0x100A0000u;
|
|
/* 0245F440 */ _t15 = cpu->r[8] + 0x00002968u;
|
|
/* 0245F440 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 0245F444 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F448 */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245F44C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F450 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[30], cpu->f[31]);
|
|
/* 0245F454 */ cpu->r[31] = cpu->r[31] + 0x000028B4u;
|
|
/* 0245F458 */ cpu->r[28] = cpu->r[28] + 0x00002994u;
|
|
/* 0245F45C */ cpu->r[0] = cpu->r[0] + 0x00002980u;
|
|
/* 0245F460 */ cpu->r[29] = cpu->r[29] + 0x00002970u;
|
|
/* 0245F464 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F464 */ _t17 = _t16 & 0x00000001u;
|
|
/* 0245F464 */ if (_t17) goto L_0245F598; else goto L_0245F468;
|
|
L_0245F468: ; // 0x245f468
|
|
/* 0245F468 */ _t18 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F468 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 0245F46C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 0245F470 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F470 */ _t20 = _t19 & 0x00000001u;
|
|
/* 0245F470 */ if (_t20) goto L_0245F4B4; else goto L_0245F474;
|
|
L_0245F474: ; // 0x245f474
|
|
/* 0245F474 */ _t21 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F474 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0245F478 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F47C */ cpu->r[29] = cpu->r[29] + 0x00002984u;
|
|
/* 0245F480 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F480 */ rbrew_write32(cpu->mem, _t22, cpu->r[29]);
|
|
/* 0245F484 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F488 */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F488 */ rbrew_write32(cpu->mem, _t23, cpu->r[31]);
|
|
/* 0245F48C */ Gambit_fn_027EE100(cpu);
|
|
/* 0245F490 */ cpu->f[1] = cpu->f[30] * cpu->f[1];
|
|
/* 0245F494 */ _t24 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F494 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 0245F498 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F49C */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F49C */ rbrew_write32(cpu->mem, _t25, cpu->r[31]);
|
|
/* 0245F4A0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F4A4 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F4A4 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 0245F4A8 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F4AC */ _t27 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F4AC */ rbrew_write_f32(cpu->mem, _t27, cpu->f[30]);
|
|
/* 0245F4B0 */ goto L_0245F694;
|
|
L_0245F4B4: ; // 0x245f4b4
|
|
/* 0245F4B4 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F4B4 */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 0245F4B8 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F4BC */ _t29 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F4BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0245F4C0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4C4 */ cpu->r[4] = 0x00000003u;
|
|
/* 0245F4C8 */ _t30 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4C8 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 0245F4CC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F4D0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F4D4 */ _t31 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F4D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0245F4D8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F4DC */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F4DC */ rbrew_write32(cpu->mem, _t32, cpu->r[31]);
|
|
/* 0245F4E0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4E4 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4E4 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 0245F4E8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F4EC */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F4F0 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4F0 */ rbrew_write32(cpu->mem, _t34, cpu->r[28]);
|
|
/* 0245F4F4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F4F8 */ _t35 = cpu->r[12] + 0x0000296Cu;
|
|
/* 0245F4F8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t35);
|
|
/* 0245F4FC */ cpu->r[4] = 0x00000001u;
|
|
/* 0245F500 */ _t36 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F500 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0245F504 */ _t37 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F504 */ rbrew_write32(cpu->mem, _t37, cpu->r[31]);
|
|
/* 0245F508 */ Gambit_fn_027ED380(cpu);
|
|
/* 0245F50C */ _t38 = cpu->r[30] + 0x00000026u;
|
|
/* 0245F50C */ cpu->r[6] = rbrew_read8(cpu->mem, _t38);
|
|
/* 0245F510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 0245F514 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F514 */ _t40 = _t39 & 0x00000001u;
|
|
/* 0245F514 */ if (_t40) goto L_0245F518; else goto L_0245F544;
|
|
L_0245F518: ; // 0x245f518
|
|
/* 0245F518 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0245F51C */ _t41 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F51C */ rbrew_write32(cpu->mem, _t41, cpu->r[31]);
|
|
/* 0245F520 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F524 */ cpu->r[7] = cpu->r[7] + 0x0000298Cu;
|
|
/* 0245F528 */ _t42 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F528 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0245F52C */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 0245F530 */ cpu->r[4] = 0x00000005u;
|
|
/* 0245F534 */ _t43 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F534 */ rbrew_write32(cpu->mem, _t43, cpu->r[7]);
|
|
/* 0245F538 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F53C */ cpu->r[9] = 0x00000001u;
|
|
/* 0245F540 */ _t44 = cpu->r[30] + 0x00000025u;
|
|
/* 0245F540 */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[9]);
|
|
L_0245F544: ; // 0x245f544
|
|
/* 0245F544 */ _t45 = cpu->r[30] + 0x00000008u;
|
|
/* 0245F544 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0245F548 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F54C */ _t46 = cpu->r[9] + 0x000001ACu;
|
|
/* 0245F54C */ cpu->r[3] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0245F550 */ cpu->r[4] = cpu->r[4] + 0x00007A54u;
|
|
/* 0245F554 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0245F558 */ _t47 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F558 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 0245F55C */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F560 */ cpu->r[29] = cpu->r[29] + 0x00002984u;
|
|
/* 0245F564 */ _t48 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F564 */ rbrew_write32(cpu->mem, _t48, cpu->r[29]);
|
|
/* 0245F568 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F56C */ _t49 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F56C */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 0245F570 */ Gambit_fn_027EE100(cpu);
|
|
/* 0245F574 */ cpu->f[1] = cpu->f[30] * cpu->f[1];
|
|
/* 0245F578 */ _t50 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F578 */ cpu->r[3] = rbrew_read32(cpu->mem, _t50);
|
|
/* 0245F57C */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F580 */ _t51 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F580 */ rbrew_write32(cpu->mem, _t51, cpu->r[31]);
|
|
/* 0245F584 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F588 */ _t52 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F588 */ rbrew_write32(cpu->mem, _t52, cpu->r[29]);
|
|
/* 0245F58C */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F590 */ _t53 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F590 */ rbrew_write_f32(cpu->mem, _t53, cpu->f[30]);
|
|
/* 0245F594 */ goto L_0245F694;
|
|
L_0245F598: ; // 0x245f598
|
|
/* 0245F598 */ _t54 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F598 */ rbrew_write32(cpu->mem, _t54, cpu->r[31]);
|
|
/* 0245F59C */ cpu->r[4] = 0x00000003u;
|
|
/* 0245F5A0 */ _t55 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5A0 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 0245F5A4 */ cpu->r[10] = 0x00000000u;
|
|
/* 0245F5A8 */ _t56 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F5A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0245F5AC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5B0 */ _t57 = cpu->r[30] + 0x00000024u;
|
|
/* 0245F5B0 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[10]);
|
|
/* 0245F5B4 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F5B8 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F5BC */ _t58 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F5BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t58);
|
|
/* 0245F5C0 */ _t59 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F5C0 */ rbrew_write32(cpu->mem, _t59, cpu->r[31]);
|
|
/* 0245F5C4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5C8 */ _t60 = cpu->r[1] + 0x00000018u;
|
|
/* 0245F5C8 */ rbrew_write32(cpu->mem, _t60, cpu->r[29]);
|
|
/* 0245F5CC */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F5D0 */ _t61 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F5D0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t61);
|
|
/* 0245F5D4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[0], cpu->f[31]);
|
|
/* 0245F5D8 */ _t62 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F5D8 */ _t63 = _t62 & 0x00000001u;
|
|
/* 0245F5D8 */ if (_t63) goto L_0245F620; else goto L_0245F5DC;
|
|
L_0245F5DC: ; // 0x245f5dc
|
|
/* 0245F5DC */ _t64 = cpu->r[30] + 0x00000008u;
|
|
/* 0245F5DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t64);
|
|
/* 0245F5E0 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F5E4 */ _t65 = cpu->r[7] + 0x000001ACu;
|
|
/* 0245F5E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0245F5E8 */ cpu->r[4] = cpu->r[4] + 0x00007A64u;
|
|
/* 0245F5EC */ Gambit_fn_027B70F0(cpu);
|
|
/* 0245F5F0 */ _t66 = cpu->r[30] + 0x00000008u;
|
|
/* 0245F5F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t66);
|
|
/* 0245F5F4 */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245F5F8 */ _t67 = cpu->r[7] + 0x000001ACu;
|
|
/* 0245F5F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 0245F5FC */ cpu->r[4] = cpu->r[4] + 0x000029A0u;
|
|
/* 0245F600 */ Gambit_fn_027B76F0(cpu);
|
|
/* 0245F604 */ _t68 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0245F604 */ rbrew_write32(cpu->mem, _t68, cpu->r[31]);
|
|
/* 0245F608 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F60C */ _t69 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F60C */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0245F610 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 0245F614 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245F618 */ _t70 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F618 */ rbrew_write32(cpu->mem, _t70, cpu->r[28]);
|
|
/* 0245F61C */ Gambit_fn_027ED380(cpu);
|
|
L_0245F620: ; // 0x245f620
|
|
/* 0245F620 */ _t71 = cpu->r[30] + 0x00000025u;
|
|
/* 0245F620 */ cpu->r[11] = rbrew_read8(cpu->mem, _t71);
|
|
/* 0245F624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F628 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F628 */ _t73 = _t72 & 0x00000001u;
|
|
/* 0245F628 */ if (_t73) goto L_0245F658; else goto L_0245F62C;
|
|
L_0245F62C: ; // 0x245f62c
|
|
/* 0245F62C */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F630 */ _t74 = cpu->r[1] + 0x00000034u;
|
|
/* 0245F630 */ rbrew_write32(cpu->mem, _t74, cpu->r[31]);
|
|
/* 0245F634 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F638 */ cpu->r[12] = cpu->r[12] + 0x00002978u;
|
|
/* 0245F63C */ _t75 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F63C */ cpu->r[3] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0245F640 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 0245F644 */ cpu->r[4] = 0x00000005u;
|
|
/* 0245F648 */ _t76 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F648 */ rbrew_write32(cpu->mem, _t76, cpu->r[12]);
|
|
/* 0245F64C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F650 */ cpu->r[0] = 0x00000000u;
|
|
/* 0245F654 */ _t77 = cpu->r[30] + 0x00000025u;
|
|
/* 0245F654 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[0]);
|
|
L_0245F658: ; // 0x245f658
|
|
/* 0245F658 */ _t78 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F658 */ cpu->r[3] = rbrew_read32(cpu->mem, _t78);
|
|
/* 0245F65C */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F660 */ cpu->r[29] = cpu->r[29] + 0x00002984u;
|
|
/* 0245F664 */ _t79 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F664 */ rbrew_write32(cpu->mem, _t79, cpu->r[29]);
|
|
/* 0245F668 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F66C */ _t80 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F66C */ rbrew_write32(cpu->mem, _t80, cpu->r[31]);
|
|
/* 0245F670 */ Gambit_fn_027EE100(cpu);
|
|
/* 0245F674 */ cpu->f[1] = cpu->f[30] * cpu->f[1];
|
|
/* 0245F678 */ _t81 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0245F678 */ cpu->r[3] = rbrew_read32(cpu->mem, _t81);
|
|
/* 0245F67C */ cpu->r[4] = 0x00000000u;
|
|
/* 0245F680 */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F680 */ rbrew_write32(cpu->mem, _t82, cpu->r[31]);
|
|
/* 0245F684 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F688 */ _t83 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F688 */ rbrew_write32(cpu->mem, _t83, cpu->r[29]);
|
|
/* 0245F68C */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F690 */ _t84 = cpu->r[30] + 0x00000020u;
|
|
/* 0245F690 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[30]);
|
|
L_0245F694: ; // 0x245f694
|
|
/* 0245F694 */ _t85 = cpu->r[1] + 0x00000038u;
|
|
/* 0245F694 */ cpu->r[28] = rbrew_read32(cpu->mem, _t85);
|
|
/* 0245F698 */ _t86 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F698 */ cpu->r[29] = rbrew_read32(cpu->mem, _t86);
|
|
/* 0245F69C */ _t87 = cpu->r[1] + 0x00000060u;
|
|
/* 0245F69C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t87);
|
|
/* 0245F6A0 */ _t88 = cpu->r[1] + 0x00000050u;
|
|
/* 0245F6A0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t88);
|
|
/* 0245F6A4 */ _t89 = cpu->r[1] + 0x00000058u;
|
|
/* 0245F6A4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t89);
|
|
/* 0245F6A8 */ _t90 = cpu->r[1] + 0x00000048u;
|
|
/* 0245F6A8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t90);
|
|
/* 0245F6AC */ _t91 = cpu->r[1] + 0x00000044u;
|
|
/* 0245F6AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t91);
|
|
/* 0245F6B0 */ _t92 = cpu->r[1] + 0x00000040u;
|
|
/* 0245F6B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t92);
|
|
/* 0245F6B4 */ _t93 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F6B4 */ _t94 = _t93 & 0x00000001u;
|
|
/* 0245F6B4 */ if (_t94) goto L_0245F6B8; // else: addr-0 trap, fall-through
|
|
L_0245F6B8: ; // 0x245f6b8
|
|
/* 0245F6B8 */ _t95 = cpu->r[1] + 0x0000006Cu;
|
|
/* 0245F6B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t95);
|
|
/* 0245F6BC */ cpu->lr = cpu->r[0];
|
|
/* 0245F6C0 */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 0245F6C4 */ return;
|
|
}
|
|
|
|
// fn_024253BC @ 0x24253bc
|
|
void Gambit_fn_024253BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46;
|
|
|
|
L_024253BC: ; // 0x24253bc
|
|
/* 024253BC */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 024253BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024253C0 */ goto L_02425E58;
|
|
L_02425E58: ; // 0x2425e58
|
|
/* 02425E58 */ _t1 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02425E58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425E5C */ goto L_0245F6C8;
|
|
L_0245F6C8: ; // 0x245f6c8
|
|
/* 0245F6C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0245F6CC */ _t2 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0245F6CC */ rbrew_write32(cpu->mem, _t2, cpu->r[1]);
|
|
/* 0245F6CC */ cpu->r[1] = _t2;
|
|
/* 0245F6D0 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F6D0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 0245F6D4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F6D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 0245F6D8 */ /* nop */
|
|
/* 0245F6DC */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F6DC */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0245F6E0 */ _t6 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F6E0 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]);
|
|
/* 0245F6E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F6E8 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F6E8 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 0245F6EC */ _t8 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F6EC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 0245F6F0 */ _t9 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F6F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245F6F4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[10], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F6F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0245F6F8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F6F8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0245F6F8 */ if (_t11) goto L_0245F800; else goto L_0245F6FC;
|
|
L_0245F6FC: ; // 0x245f6fc
|
|
/* 0245F6FC */ cpu->r[11] = 0x100A0000u;
|
|
/* 0245F700 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F704 */ _t12 = cpu->r[11] + 0x00002964u;
|
|
/* 0245F704 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 0245F708 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0245F70C */ cpu->r[0] = cpu->r[0] + 0x000029C0u;
|
|
/* 0245F710 */ cpu->r[29] = cpu->r[29] + 0x000028B4u;
|
|
/* 0245F714 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245F718 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F718 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 0245F71C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F720 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F720 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 0245F724 */ cpu->r[4] = cpu->r[30];
|
|
/* 0245F728 */ _t15 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F728 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245F72C */ _t16 = cpu->r[31] + 0x00000020u;
|
|
/* 0245F72C */ rbrew_write_f32(cpu->mem, _t16, cpu->f[1]);
|
|
/* 0245F730 */ Gambit_fn_027ED914(cpu);
|
|
/* 0245F734 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F738 */ _t17 = cpu->r[31] + 0x00000024u;
|
|
/* 0245F738 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[30]);
|
|
/* 0245F73C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F740 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F740 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 0245F744 */ cpu->r[0] = cpu->r[0] + 0x000029BCu;
|
|
/* 0245F748 */ _t19 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F748 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0245F74C */ cpu->r[4] = 0x00000003u;
|
|
/* 0245F750 */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F750 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 0245F754 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F758 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0245F75C */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F75C */ rbrew_write32(cpu->mem, _t21, cpu->r[29]);
|
|
/* 0245F760 */ cpu->r[8] = cpu->r[8] + 0x000029ACu;
|
|
/* 0245F764 */ _t22 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F764 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0245F768 */ cpu->r[4] = 0x00000002u;
|
|
/* 0245F76C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F770 */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F770 */ rbrew_write32(cpu->mem, _t23, cpu->r[8]);
|
|
/* 0245F774 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245F778 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0245F77C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F780 */ _t24 = cpu->r[9] + 0x00002968u;
|
|
/* 0245F780 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 0245F784 */ cpu->r[0] = cpu->r[0] + 0x000029C8u;
|
|
/* 0245F788 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F788 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 0245F78C */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F790 */ _t26 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F790 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0245F794 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F798 */ cpu->r[4] = 0x00000001u;
|
|
/* 0245F79C */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F79C */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0245F7A0 */ Gambit_fn_027ED380(cpu);
|
|
/* 0245F7A4 */ _t28 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F7A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0245F7A8 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F7AC */ _t29 = cpu->r[12] + 0x000001ACu;
|
|
/* 0245F7AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0245F7B0 */ cpu->r[4] = cpu->r[4] + 0x00007A64u;
|
|
/* 0245F7B4 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0245F7B8 */ _t30 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F7B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0245F7BC */ cpu->r[4] = 0x100A0000u;
|
|
/* 0245F7C0 */ _t31 = cpu->r[12] + 0x000001ACu;
|
|
/* 0245F7C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0245F7C4 */ cpu->r[4] = cpu->r[4] + 0x000029D4u;
|
|
/* 0245F7C8 */ Gambit_fn_027B76F0(cpu);
|
|
/* 0245F7CC */ _t32 = cpu->r[31] + 0x00000025u;
|
|
/* 0245F7CC */ cpu->r[11] = rbrew_read8(cpu->mem, _t32);
|
|
/* 0245F7D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F7D4 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F7D4 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0245F7D4 */ if (_t34) goto L_0245F800; else goto L_0245F7D8;
|
|
L_0245F7D8: ; // 0x245f7d8
|
|
/* 0245F7D8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F7DC */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F7DC */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 0245F7E0 */ cpu->f[1] = cpu->f[31];
|
|
/* 0245F7E4 */ cpu->r[0] = cpu->r[0] + 0x000029B4u;
|
|
/* 0245F7E8 */ _t36 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F7E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 0245F7EC */ cpu->r[4] = 0x00000005u;
|
|
/* 0245F7F0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245F7F4 */ _t37 = cpu->r[1] + 0x00000010u;
|
|
/* 0245F7F4 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
/* 0245F7F8 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F7FC */ _t38 = cpu->r[31] + 0x00000025u;
|
|
/* 0245F7FC */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[30]);
|
|
L_0245F800: ; // 0x245f800
|
|
/* 0245F800 */ _t39 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F800 */ cpu->r[29] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0245F804 */ _t40 = cpu->r[1] + 0x00000030u;
|
|
/* 0245F804 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t40);
|
|
/* 0245F808 */ _t41 = cpu->r[1] + 0x00000020u;
|
|
/* 0245F808 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0245F80C */ _t42 = cpu->r[1] + 0x00000028u;
|
|
/* 0245F80C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t42);
|
|
/* 0245F810 */ _t43 = cpu->r[1] + 0x00000024u;
|
|
/* 0245F810 */ cpu->r[31] = rbrew_read32(cpu->mem, _t43);
|
|
/* 0245F814 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245F814 */ _t45 = _t44 & 0x00000001u;
|
|
/* 0245F814 */ if (_t45) goto L_0245F818; // else: addr-0 trap, fall-through
|
|
L_0245F818: ; // 0x245f818
|
|
/* 0245F818 */ _t46 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0245F818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0245F81C */ cpu->lr = cpu->r[0];
|
|
/* 0245F820 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0245F824 */ return;
|
|
}
|
|
|
|
// fn_024253D4 @ 0x24253d4
|
|
void Gambit_fn_024253D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37;
|
|
|
|
L_024253C4: ; // 0x24253c4
|
|
/* 024253C4 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 024253C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024253C8 */ goto L_02425ECC;
|
|
L_024253CC: ; // 0x24253cc
|
|
/* 024253CC */ _t1 = cpu->r[3] + 0x0000003Cu;
|
|
/* 024253CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024253D0 */ goto L_02425F70;
|
|
L_024253D4: ; // 0x24253d4
|
|
/* 024253D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 024253D8 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024253D8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024253D8 */ if (_t3) goto L_024253DC; else goto L_024253E0;
|
|
L_024253DC: ; // 0x24253dc
|
|
/* 024253DC */ goto L_024253CC;
|
|
L_024253E0: ; // 0x24253e0
|
|
/* 024253E0 */ goto L_024253C4;
|
|
L_02425ECC: ; // 0x2425ecc
|
|
/* 02425ECC */ cpu->r[0] = cpu->lr;
|
|
/* 02425ED0 */ _t4 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02425ED0 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02425ED0 */ cpu->r[1] = _t4;
|
|
/* 02425ED4 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02425ED4 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02425ED8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02425ED8 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 02425EDC */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425EDC */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 02425EE0 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 02425EE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02425EE4 */ cpu->r[29] = cpu->r[3];
|
|
/* 02425EE8 */ _t9 = cpu->r[29] + 0x00000224u;
|
|
/* 02425EE8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 02425EEC */ cpu->r[31] = cpu->r[5];
|
|
/* 02425EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02425EF4 */ cpu->r[30] = cpu->r[4];
|
|
/* 02425EF8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425EF8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02425EF8 */ if (_t11) goto L_02425F0C; else goto L_02425EFC;
|
|
L_02425EFC: ; // 0x2425efc
|
|
/* 02425EFC */ _t12 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02425EFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425F00 */ _t13 = cpu->r[3] + 0x00000028u;
|
|
/* 02425F00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02425F04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 02425F08 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425F08 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02425F08 */ if (_t15) goto L_02425F48; else goto L_02425F0C;
|
|
L_02425F0C: ; // 0x2425f0c
|
|
/* 02425F0C */ cpu->r[11] = 0x10090000u;
|
|
/* 02425F10 */ cpu->r[8] = 0x10090000u;
|
|
/* 02425F14 */ cpu->r[12] = 0x10090000u;
|
|
/* 02425F18 */ cpu->r[11] = cpu->r[11] + 0x00007EBCu;
|
|
/* 02425F1C */ _t16 = cpu->r[8] + 0x00007F4Cu;
|
|
/* 02425F1C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t16);
|
|
/* 02425F20 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425F24 */ cpu->r[12] = cpu->r[12] + 0x00007F64u;
|
|
/* 02425F28 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425F28 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 02425F2C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425F30 */ cpu->r[3] = cpu->r[29];
|
|
/* 02425F34 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02425F34 */ rbrew_write32(cpu->mem, _t18, cpu->r[12]);
|
|
/* 02425F38 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02425F3C */ cpu->r[0] = 0x00000001u;
|
|
/* 02425F40 */ _t19 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02425F40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02425F44 */ _t20 = cpu->r[29] + 0x00000224u;
|
|
/* 02425F44 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[0]);
|
|
L_02425F48: ; // 0x2425f48
|
|
/* 02425F48 */ cpu->r[5] = cpu->r[31];
|
|
/* 02425F4C */ cpu->r[4] = cpu->r[30];
|
|
/* 02425F50 */ Gambit_fn_0245F8DC(cpu);
|
|
/* 02425F54 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02425F54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02425F58 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 02425F58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02425F5C */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 02425F5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02425F60 */ cpu->lr = cpu->r[0];
|
|
/* 02425F64 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425F64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02425F68 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02425F6C */ return;
|
|
L_02425F70: ; // 0x2425f70
|
|
/* 02425F70 */ cpu->r[0] = cpu->lr;
|
|
/* 02425F74 */ _t25 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02425F74 */ rbrew_write32(cpu->mem, _t25, cpu->r[1]);
|
|
/* 02425F74 */ cpu->r[1] = _t25;
|
|
/* 02425F78 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 02425F78 */ rbrew_write32(cpu->mem, _t26, cpu->r[31]);
|
|
/* 02425F7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02425F80 */ _t27 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425F80 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 02425F84 */ _t28 = cpu->r[31] + 0x00000224u;
|
|
/* 02425F84 */ cpu->r[10] = rbrew_read8(cpu->mem, _t28);
|
|
/* 02425F88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02425F8C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425F8C */ _t30 = _t29 & 0x00000001u;
|
|
/* 02425F8C */ if (_t30) goto L_02425FC8; else goto L_02425F90;
|
|
L_02425F90: ; // 0x2425f90
|
|
/* 02425F90 */ cpu->r[12] = 0x10090000u;
|
|
/* 02425F94 */ cpu->r[0] = 0x10090000u;
|
|
/* 02425F98 */ cpu->r[9] = 0x10090000u;
|
|
/* 02425F9C */ cpu->r[12] = cpu->r[12] + 0x00007EBCu;
|
|
/* 02425FA0 */ cpu->r[0] = cpu->r[0] + 0x00007F74u;
|
|
/* 02425FA4 */ _t31 = cpu->r[9] + 0x00007F4Cu;
|
|
/* 02425FA4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 02425FA8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425FAC */ cpu->r[3] = cpu->r[31];
|
|
/* 02425FB0 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425FB0 */ rbrew_write32(cpu->mem, _t32, cpu->r[12]);
|
|
/* 02425FB4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425FB8 */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 02425FB8 */ rbrew_write32(cpu->mem, _t33, cpu->r[0]);
|
|
/* 02425FBC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02425FC0 */ cpu->r[11] = 0x00000000u;
|
|
/* 02425FC4 */ _t34 = cpu->r[31] + 0x00000224u;
|
|
/* 02425FC4 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[11]);
|
|
L_02425FC8: ; // 0x2425fc8
|
|
/* 02425FC8 */ _t35 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02425FC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02425FCC */ Gambit_fn_0245FC68(cpu);
|
|
/* 02425FD0 */ _t36 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425FD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02425FD4 */ _t37 = cpu->r[1] + 0x00000014u;
|
|
/* 02425FD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02425FD8 */ cpu->lr = cpu->r[0];
|
|
/* 02425FDC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02425FE0 */ return;
|
|
}
|
|
|
|
// fn_024253E4 @ 0x24253e4
|
|
void Gambit_fn_024253E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_024253E4: ; // 0x24253e4
|
|
/* 024253E4 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 024253E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024253E8 */ goto L_02425FE4;
|
|
L_02425FE4: ; // 0x2425fe4
|
|
/* 02425FE4 */ _t1 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02425FE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425FE8 */ goto L_0245FD98;
|
|
L_0245FD98: ; // 0x245fd98
|
|
/* 0245FD98 */ _t2 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 0245FD98 */ rbrew_write32(cpu->mem, _t2, cpu->r[1]);
|
|
/* 0245FD98 */ cpu->r[1] = _t2;
|
|
/* 0245FD9C */ /* nop */
|
|
/* 0245FDA0 */ cpu->r[0] = cpu->lr;
|
|
/* 0245FDA4 */ _t3 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0245FDA4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245FDA8 */ cpu->r[29] = cpu->r[3];
|
|
/* 0245FDAC */ _t4 = cpu->r[29] + 0x00000010u;
|
|
/* 0245FDAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245FDB0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[12], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245FDB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245FDB4 */ cpu->r[31] = cpu->r[4];
|
|
/* 0245FDB8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FDB8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245FDB8 */ if (_t6) goto L_0245FEDC; else goto L_0245FDBC;
|
|
L_0245FDBC: ; // 0x245fdbc
|
|
/* 0245FDBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245FDC0 */ cpu->r[7] = cpu->r[31];
|
|
/* 0245FDC4 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FDC4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 0245FDC4 */ if (_t8) goto L_0245FDC8; else goto L_0245FDE0;
|
|
L_0245FDC8: ; // 0x245fdc8
|
|
/* 0245FDC8 */ cpu->r[7] = 0x00000000u;
|
|
/* 0245FDCC */ cpu->r[8] = cpu->r[31];
|
|
/* 0245FDD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245FDD4 */ _t9 = cpu->r[29] + 0x00000034u;
|
|
/* 0245FDD4 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 0245FDD8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FDD8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 0245FDD8 */ if (_t11) goto L_0245FDFC; else goto L_0245FDDC;
|
|
L_0245FDDC: ; // 0x245fddc
|
|
/* 0245FDDC */ goto L_0245FE40;
|
|
L_0245FDE0: ; // 0x245fde0
|
|
/* 0245FDE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000003u);
|
|
/* 0245FDE4 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245FDE4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 0245FDE4 */ if (_t13) goto L_0245FDE8; else goto L_0245FDEC;
|
|
L_0245FDE8: ; // 0x245fde8
|
|
/* 0245FDE8 */ cpu->r[7] = 0x00000003u;
|
|
L_0245FDEC: ; // 0x245fdec
|
|
/* 0245FDEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0245FDF0 */ cpu->r[8] = cpu->r[31];
|
|
/* 0245FDF4 */ _t14 = cpu->r[29] + 0x00000034u;
|
|
/* 0245FDF4 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]);
|
|
/* 0245FDF8 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FDF8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 0245FDF8 */ if (_t16) goto L_0245FDFC; else goto L_0245FE40;
|
|
L_0245FDFC: ; // 0x245fdfc
|
|
/* 0245FDFC */ cpu->r[0] = cpu->r[1] + 0x00000014u;
|
|
/* 0245FE00 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245FE04 */ cpu->r[12] = 0x10110000u;
|
|
/* 0245FE08 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FE08 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0245FE0C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FE10 */ cpu->r[10] = 0x00000020u;
|
|
/* 0245FE14 */ _t18 = cpu->r[29] + 0x00000038u;
|
|
/* 0245FE14 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]);
|
|
/* 0245FE18 */ _t19 = cpu->r[12] + 0x00007399u;
|
|
/* 0245FE18 */ cpu->r[12] = rbrew_read8(cpu->mem, _t19);
|
|
/* 0245FE1C */ cpu->r[0] = cpu->r[0] + 0x000028FCu;
|
|
/* 0245FE20 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FE20 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 0245FE24 */ cpu->r[27] = 0x00000003u;
|
|
/* 0245FE28 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FE28 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0245FE2C */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245FE30 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FE30 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[12]);
|
|
/* 0245FE34 */ cpu->r[28] = cpu->r[28] + 0x00002A3Cu;
|
|
/* 0245FE38 */ _t23 = cpu->r[1] + 0x00000033u;
|
|
/* 0245FE38 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[12]);
|
|
/* 0245FE3C */ goto L_0245FE8C;
|
|
L_0245FE40: ; // 0x245fe40
|
|
/* 0245FE40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 0245FE44 */ _t24 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245FE44 */ _t25 = _t24 & 0x00000001u;
|
|
/* 0245FE44 */ if (_t25) goto L_0245FE48; else goto L_0245FE4C;
|
|
L_0245FE48: ; // 0x245fe48
|
|
/* 0245FE48 */ cpu->r[8] = 0x00000003u;
|
|
L_0245FE4C: ; // 0x245fe4c
|
|
/* 0245FE4C */ cpu->r[10] = 0x00000020u;
|
|
/* 0245FE50 */ cpu->r[0] = cpu->r[1] + 0x00000014u;
|
|
/* 0245FE54 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FE54 */ rbrew_write32(cpu->mem, _t26, cpu->r[10]);
|
|
/* 0245FE58 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FE58 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0245FE5C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FE60 */ cpu->r[12] = 0x10110000u;
|
|
/* 0245FE64 */ _t28 = cpu->r[29] + 0x00000038u;
|
|
/* 0245FE64 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 0245FE68 */ cpu->r[0] = cpu->r[0] + 0x000028FCu;
|
|
/* 0245FE6C */ _t29 = cpu->r[12] + 0x00007399u;
|
|
/* 0245FE6C */ cpu->r[12] = rbrew_read8(cpu->mem, _t29);
|
|
/* 0245FE70 */ cpu->r[27] = 0x00000003u;
|
|
/* 0245FE74 */ _t30 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FE74 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
/* 0245FE78 */ cpu->r[28] = 0x100A0000u;
|
|
/* 0245FE7C */ _t31 = cpu->r[1] + 0x00000033u;
|
|
/* 0245FE7C */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[12]);
|
|
/* 0245FE80 */ cpu->r[28] = cpu->r[28] + 0x00002A3Cu;
|
|
/* 0245FE84 */ cpu->r[30] = 0x00000000u;
|
|
/* 0245FE88 */ _t32 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FE88 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[12]);
|
|
L_0245FE8C: ; // 0x245fe8c
|
|
/* 0245FE8C */ cpu->r[5] = cpu->r[30];
|
|
/* 0245FE90 */ cpu->r[4] = cpu->r[28];
|
|
/* 0245FE94 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FE98 */ _t33 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 0245FE98 */ _t34 = _t33 & 0x00000001u;
|
|
/* 0245FE98 */ if (_t34) goto L_0245FE9C; // else: addr-0 trap, fall-through
|
|
L_0245FE9C: ; // 0x245fe9c
|
|
/* 0245FE9C */ Gambit_fn_0282A5F4(cpu);
|
|
/* 0245FEA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[31]);
|
|
/* 0245FEA4 */ cpu->r[4] = cpu->r[30] + 0x00000001u;
|
|
/* 0245FEA8 */ _t35 = cpu->r[29] + 0x00000030u;
|
|
/* 0245FEA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 0245FEAC */ _t36 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FEAC */ _t37 = _t36 & 0x00000001u;
|
|
/* 0245FEAC */ if (_t37) goto L_0245FEB0; else goto L_0245FEC8;
|
|
L_0245FEB0: ; // 0x245feb0
|
|
/* 0245FEB0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FEB4 */ Gambit_fn_027ED798(cpu);
|
|
/* 0245FEB8 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0245FEB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245FEBC */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0245FEC0 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FEC0 */ _t39 = _t38 & 0x00000001u;
|
|
/* 0245FEC0 */ if (_t39) goto L_0245FEC4; else goto L_0245FE8C;
|
|
L_0245FEC4: ; // 0x245fec4
|
|
/* 0245FEC4 */ goto L_0245FEDC;
|
|
L_0245FEC8: ; // 0x245fec8
|
|
/* 0245FEC8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FECC */ Gambit_fn_027ED624(cpu);
|
|
/* 0245FED0 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu;
|
|
/* 0245FED0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0245FED4 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0245FED8 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FED8 */ _t41 = _t40 & 0x00000001u;
|
|
/* 0245FED8 */ if (_t41) goto L_0245FEDC; else goto L_0245FE8C;
|
|
L_0245FEDC: ; // 0x245fedc
|
|
/* 0245FEDC */ /* nop */
|
|
/* 0245FEE0 */ _t42 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0245FEE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0245FEE4 */ cpu->lr = cpu->r[0];
|
|
/* 0245FEE8 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 0245FEEC */ return;
|
|
}
|
|
|
|
// fn_024253EC @ 0x24253ec
|
|
void Gambit_fn_024253EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024253EC: ; // 0x24253ec
|
|
/* 024253EC */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 024253EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024253F0 */ goto L_02425FEC;
|
|
L_02425FEC: ; // 0x2425fec
|
|
/* 02425FEC */ _t1 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02425FEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425FF0 */ goto L_0245FEF0;
|
|
L_0245FEF0: ; // 0x245fef0
|
|
/* 0245FEF0 */ _t2 = cpu->r[3] + 0x00000010u;
|
|
/* 0245FEF0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0245FEF4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x0000001Eu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245FEF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0245FEF8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FEF8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 0245FEF8 */ if (_t4) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245FEF8 */ goto L_0245FEFC;
|
|
L_0245FEFC: ; // 0x245fefc
|
|
/* 0245FEFC */ _t5 = cpu->r[3] + 0x00000038u;
|
|
/* 0245FEFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0245FF00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0245FF04 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FF04 */ _t7 = _t6 & 0x00000001u;
|
|
/* 0245FF04 */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245FF04 */ goto L_0245FF08;
|
|
L_0245FF08: ; // 0x245ff08
|
|
/* 0245FF08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0245FF0C */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FF0C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0245FF0C */ if (_t9) goto L_0245FF10; else goto L_0245FF1C;
|
|
L_0245FF10: ; // 0x245ff10
|
|
/* 0245FF10 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245FF14 */ _t10 = cpu->r[3] + 0x00000038u;
|
|
/* 0245FF14 */ rbrew_write32(cpu->mem, _t10, cpu->r[4]);
|
|
/* 0245FF18 */ return;
|
|
L_0245FF1C: ; // 0x245ff1c
|
|
/* 0245FF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000003u);
|
|
/* 0245FF20 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245FF20 */ _t12 = _t11 & 0x00000001u;
|
|
/* 0245FF20 */ if (_t12) goto L_0245FF24; else goto L_0245FF28;
|
|
L_0245FF24: ; // 0x245ff24
|
|
/* 0245FF24 */ cpu->r[4] = 0x00000003u;
|
|
L_0245FF28: ; // 0x245ff28
|
|
/* 0245FF28 */ _t13 = cpu->r[3] + 0x00000038u;
|
|
/* 0245FF28 */ rbrew_write32(cpu->mem, _t13, cpu->r[4]);
|
|
/* 0245FF2C */ return;
|
|
}
|
|
|
|
// fn_024253F4 @ 0x24253f4
|
|
void Gambit_fn_024253F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024253F4: ; // 0x24253f4
|
|
/* 024253F4 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 024253F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024253F8 */ goto L_02425FF4;
|
|
L_02425FF4: ; // 0x2425ff4
|
|
/* 02425FF4 */ _t1 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02425FF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425FF8 */ goto L_0245FF30;
|
|
L_0245FF30: ; // 0x245ff30
|
|
/* 0245FF30 */ cpu->r[0] = cpu->lr;
|
|
/* 0245FF34 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245FF38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0245FF3C */ cpu->r[12] = cpu->r[12] + 0x000028B4u;
|
|
/* 0245FF40 */ cpu->r[4] = 0x00000000u;
|
|
/* 0245FF44 */ _t2 = cpu->r[1] + 0x00000004u;
|
|
/* 0245FF44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0245FF48 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245FF4C */ _t3 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245FF4C */ rbrew_write32(cpu->mem, _t3, cpu->r[1]);
|
|
/* 0245FF4C */ cpu->r[1] = _t3;
|
|
/* 0245FF50 */ cpu->r[0] = cpu->r[0] + 0x00002A4Cu;
|
|
/* 0245FF54 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FF54 */ _t5 = _t4 & 0x00000001u;
|
|
/* 0245FF54 */ if (_t5) goto L_0245FF7C; else goto L_0245FF58;
|
|
L_0245FF58: ; // 0x245ff58
|
|
/* 0245FF58 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0245FF58 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0245FF5C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245FF60 */ _t7 = cpu->r[3] + 0x00000030u;
|
|
/* 0245FF60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0245FF64 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245FF64 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0245FF68 */ Gambit_fn_027ED624(cpu);
|
|
/* 0245FF6C */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FF6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0245FF70 */ cpu->lr = cpu->r[0];
|
|
/* 0245FF74 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245FF78 */ return;
|
|
L_0245FF7C: ; // 0x245ff7c
|
|
/* 0245FF7C */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0245FF7C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0245FF80 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0245FF84 */ _t11 = cpu->r[3] + 0x00000030u;
|
|
/* 0245FF84 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245FF88 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0245FF88 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 0245FF8C */ Gambit_fn_027ED798(cpu);
|
|
/* 0245FF90 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245FF90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245FF94 */ cpu->lr = cpu->r[0];
|
|
/* 0245FF98 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245FF9C */ return;
|
|
}
|
|
|
|
// fn_024253FC @ 0x24253fc
|
|
void Gambit_fn_024253FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55;
|
|
|
|
L_024253FC: ; // 0x24253fc
|
|
/* 024253FC */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 024253FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425400 */ goto L_02426004;
|
|
L_02426004: ; // 0x2426004
|
|
/* 02426004 */ _t1 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02426004 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02426008 */ goto L_02460258;
|
|
L_02460258: ; // 0x2460258
|
|
/* 02460258 */ _t2 = cpu->r[1] + 0xFFFFFF60u;
|
|
/* 02460258 */ rbrew_write32(cpu->mem, _t2, cpu->r[1]);
|
|
/* 02460258 */ cpu->r[1] = _t2;
|
|
/* 0246025C */ /* nop */
|
|
/* 02460260 */ _t3 = cpu->r[1] + 0x00000090u;
|
|
/* 02460260 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02460264 */ cpu->r[0] = cpu->lr;
|
|
/* 02460268 */ _t4 = cpu->r[1] + 0x000000A4u;
|
|
/* 02460268 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0246026C */ /* nop */
|
|
/* 02460270 */ cpu->r[25] = cpu->r[3];
|
|
/* 02460274 */ _t5 = cpu->r[1] + 0x00000098u;
|
|
/* 02460274 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02460278 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0246027C */ _t6 = cpu->r[25] + 0x00000050u;
|
|
/* 0246027C */ cpu->r[27] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02460280 */ Gambit_fn_02173CCC(cpu);
|
|
/* 02460284 */ _t7 = cpu->r[25] + 0x00000050u;
|
|
/* 02460284 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02460288 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 0246028C */ Gambit_fn_02174330(cpu);
|
|
/* 02460290 */ cpu->r[31] = 0x100A0000u;
|
|
/* 02460294 */ cpu->r[6] = cpu->r[3];
|
|
/* 02460294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02460298 */ cpu->r[11] = 0x10110000u;
|
|
/* 0246029C */ cpu->r[31] = cpu->r[31] + 0x000028FCu;
|
|
/* 024602A0 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024602A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024602A0 */ if (_t9) goto L_02460310; else goto L_024602A4;
|
|
L_024602A4: ; // 0x24602a4
|
|
/* 024602A4 */ _t10 = cpu->r[11] + 0x00007399u;
|
|
/* 024602A4 */ cpu->r[29] = rbrew_read8(cpu->mem, _t10);
|
|
/* 024602A8 */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 024602AC */ cpu->r[12] = cpu->r[1] + 0x00000050u;
|
|
/* 024602B0 */ _t11 = cpu->r[1] + 0x00000050u;
|
|
/* 024602B0 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[29]);
|
|
/* 024602B4 */ cpu->r[5] = cpu->r[27];
|
|
/* 024602B8 */ _t12 = cpu->r[1] + 0x0000006Fu;
|
|
/* 024602B8 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[29]);
|
|
/* 024602BC */ cpu->r[4] = 0x100A0000u;
|
|
/* 024602C0 */ _t13 = cpu->r[1] + 0x00000044u;
|
|
/* 024602C0 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 024602C4 */ cpu->r[0] = 0x00000020u;
|
|
/* 024602C8 */ _t14 = cpu->r[1] + 0x00000048u;
|
|
/* 024602C8 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]);
|
|
/* 024602CC */ cpu->r[4] = cpu->r[4] + 0x00002A74u;
|
|
/* 024602D0 */ _t15 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024602D0 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024602D4 */ _t16 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024602D4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024602D4 */ if (_t17) goto L_024602D8; // else: addr-0 trap, fall-through
|
|
L_024602D8: ; // 0x24602d8
|
|
/* 024602D8 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024602DC */ cpu->r[12] = 0x101C0000u;
|
|
/* 024602E0 */ _t18 = cpu->r[12] + 0x00001344u;
|
|
/* 024602E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024602E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024602E8 */ _t19 = cpu->r[12] + 0x0000001Cu;
|
|
/* 024602E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024602EC */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 024602F0 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 024602F4 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 024602F4 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]);
|
|
/* 024602F8 */ Gambit_fn_02022278(cpu);
|
|
/* 024602FC */ _t21 = cpu->r[3] + 0x00000004u;
|
|
/* 024602FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02460300 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460304 */ cpu->r[4] = 0x00000002u;
|
|
/* 02460308 */ Gambit_fn_02173D6C(cpu);
|
|
/* 0246030C */ goto L_02460404;
|
|
L_02460310: ; // 0x2460310
|
|
/* 02460310 */ _t22 = cpu->r[11] + 0x00007399u;
|
|
/* 02460310 */ cpu->r[29] = rbrew_read8(cpu->mem, _t22);
|
|
/* 02460314 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02460318 */ cpu->r[9] = cpu->r[1] + 0x00000014u;
|
|
/* 0246031C */ _t23 = cpu->r[11] + 0x00002968u;
|
|
/* 0246031C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02460320 */ cpu->r[26] = 0x00000000u;
|
|
/* 02460324 */ _t24 = cpu->r[1] + 0x00000033u;
|
|
/* 02460324 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[29]);
|
|
/* 02460328 */ cpu->r[28] = 0x00000003u;
|
|
/* 0246032C */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246032C */ rbrew_write32(cpu->mem, _t25, cpu->r[31]);
|
|
/* 02460330 */ cpu->r[0] = 0x00000020u;
|
|
/* 02460334 */ _t26 = cpu->r[1] + 0x00000014u;
|
|
/* 02460334 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[29]);
|
|
/* 02460338 */ _t27 = cpu->r[1] + 0x00000010u;
|
|
/* 02460338 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0246033C */ cpu->r[30] = 0x100A0000u;
|
|
/* 02460340 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02460340 */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
L_02460344: ; // 0x2460344
|
|
/* 02460344 */ _t29 = cpu->r[25] + 0x00000050u;
|
|
/* 02460344 */ cpu->r[5] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02460348 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 0246034C */ cpu->r[4] = cpu->r[30] + 0x00002A64u;
|
|
/* 02460350 */ _t30 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02460350 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02460350 */ if (_t31) goto L_02460354; // else: addr-0 trap, fall-through
|
|
L_02460354: ; // 0x2460354
|
|
/* 02460354 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02460358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 0246035C */ _t32 = cpu->r[25] + 0x00000048u;
|
|
/* 0246035C */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02460360 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460360 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02460360 */ if (_t34) goto L_02460364; else goto L_02460384;
|
|
L_02460364: ; // 0x2460364
|
|
/* 02460364 */ cpu->f[1] = cpu->f[31];
|
|
/* 02460368 */ cpu->r[4] = cpu->r[27];
|
|
/* 0246036C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02460370 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02460374 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 02460374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02460378 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 0246037C */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246037C */ _t36 = _t35 & 0x00000001u;
|
|
/* 0246037C */ if (_t36) goto L_02460380; else goto L_02460344;
|
|
L_02460380: ; // 0x2460380
|
|
/* 02460380 */ goto L_0246039C;
|
|
L_02460384: ; // 0x2460384
|
|
/* 02460384 */ _t37 = cpu->r[25] + 0x00000050u;
|
|
/* 02460384 */ cpu->r[4] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02460388 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0246038C */ Gambit_fn_027ED798(cpu);
|
|
/* 02460390 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 02460390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02460394 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02460398 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460398 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02460398 */ if (_t39) goto L_0246039C; else goto L_02460344;
|
|
L_0246039C: ; // 0x246039c
|
|
/* 0246039C */ _t40 = cpu->r[1] + 0x0000006Fu;
|
|
/* 0246039C */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[29]);
|
|
/* 024603A0 */ cpu->r[12] = cpu->r[1] + 0x00000050u;
|
|
/* 024603A4 */ cpu->r[0] = 0x00000020u;
|
|
/* 024603A8 */ _t41 = cpu->r[1] + 0x00000050u;
|
|
/* 024603A8 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[29]);
|
|
/* 024603AC */ cpu->r[3] = cpu->r[1] + 0x00000044u;
|
|
/* 024603B0 */ cpu->r[4] = 0x100A0000u;
|
|
/* 024603B4 */ _t42 = cpu->r[1] + 0x00000044u;
|
|
/* 024603B4 */ rbrew_write32(cpu->mem, _t42, cpu->r[12]);
|
|
/* 024603B8 */ cpu->r[6] = 0x00000000u;
|
|
/* 024603BC */ cpu->r[4] = cpu->r[4] + 0x00002A74u;
|
|
/* 024603C0 */ _t43 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024603C0 */ rbrew_write32(cpu->mem, _t43, cpu->r[0]);
|
|
/* 024603C4 */ cpu->r[5] = cpu->r[6];
|
|
/* 024603C8 */ _t44 = cpu->r[1] + 0x00000048u;
|
|
/* 024603C8 */ rbrew_write32(cpu->mem, _t44, cpu->r[31]);
|
|
/* 024603CC */ _t45 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024603CC */ _t46 = _t45 & 0x00000001u;
|
|
/* 024603CC */ if (_t46) goto L_024603D0; // else: addr-0 trap, fall-through
|
|
L_024603D0: ; // 0x24603d0
|
|
/* 024603D0 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024603D4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024603D8 */ _t47 = cpu->r[12] + 0x00001344u;
|
|
/* 024603D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 024603DC */ cpu->r[0] = 0x00000001u;
|
|
/* 024603E0 */ _t48 = cpu->r[12] + 0x0000001Cu;
|
|
/* 024603E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024603E4 */ cpu->r[4] = cpu->r[1] + 0x00000034u;
|
|
/* 024603E8 */ cpu->r[5] = cpu->r[1] + 0x00000044u;
|
|
/* 024603EC */ _t49 = cpu->r[1] + 0x00000034u;
|
|
/* 024603EC */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 024603F0 */ Gambit_fn_02022278(cpu);
|
|
/* 024603F4 */ _t50 = cpu->r[3] + 0x00000004u;
|
|
/* 024603F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t50);
|
|
/* 024603F8 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 024603FC */ cpu->r[4] = 0x00000002u;
|
|
/* 02460400 */ Gambit_fn_02173D6C(cpu);
|
|
L_02460404: ; // 0x2460404
|
|
/* 02460404 */ cpu->r[3] = cpu->r[31];
|
|
/* 02460408 */ /* nop */
|
|
/* 0246040C */ _t51 = cpu->r[1] + 0x00000098u;
|
|
/* 0246040C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t51);
|
|
/* 02460410 */ _t52 = cpu->r[1] + 0x00000090u;
|
|
/* 02460410 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t52);
|
|
/* 02460414 */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02460414 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02460414 */ if (_t54) goto L_02460418; // else: addr-0 trap, fall-through
|
|
L_02460418: ; // 0x2460418
|
|
/* 02460418 */ _t55 = cpu->r[1] + 0x000000A4u;
|
|
/* 02460418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55);
|
|
/* 0246041C */ cpu->lr = cpu->r[0];
|
|
/* 02460420 */ cpu->r[1] = cpu->r[1] + 0x000000A0u;
|
|
/* 02460424 */ return;
|
|
}
|
|
|
|
// fn_02425404 @ 0x2425404
|
|
void Gambit_fn_02425404(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81;
|
|
|
|
L_020D61EC: ; // 0x20d61ec
|
|
/* 020D61EC */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 020D61EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020D61EC */ cpu->r[1] = _t0;
|
|
/* 020D61F0 */ /* nop */
|
|
/* 020D61F4 */ cpu->r[0] = cpu->lr;
|
|
/* 020D61F8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020D61F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 020D61FC */ cpu->r[29] = cpu->r[3];
|
|
/* 020D6200 */ _t2 = cpu->r[29] + 0x0000023Cu;
|
|
/* 020D6200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 020D6204 */ cpu->r[30] = cpu->r[4];
|
|
/* 020D6208 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]);
|
|
/* 020D620C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D620C */ _t4 = _t3 & 0x00000001u;
|
|
/* 020D620C */ if (_t4) goto L_020D639C; else goto L_020D6210;
|
|
L_020D6210: ; // 0x20d6210
|
|
/* 020D6210 */ cpu->r[5] = 0x10020000u;
|
|
/* 020D6214 */ _t5 = cpu->r[29] + 0x00000218u;
|
|
/* 020D6214 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020D6218 */ cpu->r[26] = 0x00000000u;
|
|
/* 020D621C */ _t6 = cpu->r[5] + 0xFFFF8D1Cu;
|
|
/* 020D621C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 020D6220 */ cpu->r[25] = cpu->r[26];
|
|
/* 020D6224 */ cpu->r[24] = 0x00000001u;
|
|
/* 020D6228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 020D622C */ _t7 = cpu->r[29] + 0x00000244u;
|
|
/* 020D622C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]);
|
|
/* 020D6230 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6230 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020D6230 */ if (_t9) goto L_020D6234; else goto L_020D632C;
|
|
L_020D6234: ; // 0x20d6234
|
|
/* 020D6234 */ cpu->r[28] = 0x00000000u;
|
|
L_020D6238: ; // 0x20d6238
|
|
/* 020D6238 */ cpu->r[3] = cpu->r[30];
|
|
/* 020D623C */ cpu->r[4] = cpu->r[25];
|
|
/* 020D6240 */ Gambit_fn_027F0D58(cpu);
|
|
/* 020D6244 */ cpu->r[27] = cpu->r[3];
|
|
/* 020D6248 */ _t10 = cpu->r[29] + 0x0000023Cu;
|
|
/* 020D6248 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020D624C */ cpu->r[4] = cpu->r[25];
|
|
/* 020D6250 */ Gambit_fn_027F0D58(cpu);
|
|
/* 020D6254 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[3]);
|
|
/* 020D6258 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D6258 */ _t12 = _t11 & 0x00000001u;
|
|
/* 020D6258 */ if (_t12) goto L_020D6314; else goto L_020D625C;
|
|
L_020D625C: ; // 0x20d625c
|
|
/* 020D625C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 020D6260 */ cpu->r[31] = cpu->r[29] + 0x0000021Cu;
|
|
/* 020D6264 */ cpu->r[26] = cpu->r[25];
|
|
/* 020D6268 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020D6268 */ _t14 = _t13 & 0x00000001u;
|
|
/* 020D6268 */ if (_t14) goto L_020D6278; else goto L_020D626C;
|
|
L_020D626C: ; // 0x20d626c
|
|
/* 020D626C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D6270 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6270 */ _t16 = _t15 & 0x00000001u;
|
|
/* 020D6270 */ if (_t16) goto L_020D62D8; else goto L_020D6274;
|
|
L_020D6274: ; // 0x20d6274
|
|
/* 020D6274 */ goto L_020D62EC;
|
|
L_020D6278: ; // 0x20d6278
|
|
/* 020D6278 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D627C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D627C */ _t18 = _t17 & 0x00000001u;
|
|
/* 020D627C */ if (_t18) goto L_020D6280; else goto L_020D6294;
|
|
L_020D6280: ; // 0x20d6280
|
|
/* 020D6280 */ _t19 = cpu->r[31] + cpu->r[28];
|
|
/* 020D6280 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020D6284 */ _t20 = cpu->r[12] + 0x000001E9u;
|
|
/* 020D6284 */ cpu->r[0] = rbrew_read8(cpu->mem, _t20);
|
|
/* 020D6288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020D628C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D628C */ _t22 = _t21 & 0x00000001u;
|
|
/* 020D628C */ if (_t22) goto L_020D62D0; else goto L_020D6290;
|
|
L_020D6290: ; // 0x20d6290
|
|
/* 020D6290 */ goto L_020D62A4;
|
|
L_020D6294: ; // 0x20d6294
|
|
/* 020D6294 */ _t23 = cpu->r[31] + 0x00000000u;
|
|
/* 020D6294 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 020D6298 */ _t24 = cpu->r[12] + 0x000001E9u;
|
|
/* 020D6298 */ cpu->r[0] = rbrew_read8(cpu->mem, _t24);
|
|
/* 020D629C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020D62A0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D62A0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 020D62A0 */ if (_t26) goto L_020D62D0; else goto L_020D62A4;
|
|
L_020D62A4: ; // 0x20d62a4
|
|
/* 020D62A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[30]);
|
|
/* 020D62A8 */ /* nop */
|
|
/* 020D62AC */ cpu->r[4] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 020D62B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D62B4 */ cpu->r[4] = cpu->r[4] ^ 0x00000001u;
|
|
/* 020D62B8 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D62B8 */ _t28 = _t27 & 0x00000001u;
|
|
/* 020D62B8 */ if (_t28) goto L_020D62BC; else goto L_020D62C8;
|
|
L_020D62BC: ; // 0x20d62bc
|
|
/* 020D62BC */ _t29 = cpu->r[31] + cpu->r[28];
|
|
/* 020D62BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 020D62C0 */ Gambit_fn_020D781C(cpu);
|
|
/* 020D62C4 */ goto L_020D62D0;
|
|
L_020D62C8: ; // 0x20d62c8
|
|
/* 020D62C8 */ _t30 = cpu->r[31] + 0x00000000u;
|
|
/* 020D62C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 020D62CC */ Gambit_fn_020D781C(cpu);
|
|
L_020D62D0: ; // 0x20d62d0
|
|
/* 020D62D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D62D4 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D62D4 */ _t32 = _t31 & 0x00000001u;
|
|
/* 020D62D4 */ if (_t32) goto L_020D62D8; else goto L_020D62EC;
|
|
L_020D62D8: ; // 0x20d62d8
|
|
/* 020D62D8 */ _t33 = cpu->r[31] + cpu->r[28];
|
|
/* 020D62D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33);
|
|
/* 020D62DC */ Gambit_fn_020D76C0(cpu);
|
|
/* 020D62E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020D62E4 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D62E4 */ _t35 = _t34 & 0x00000001u;
|
|
/* 020D62E4 */ if (_t35) goto L_020D6314; else goto L_020D62E8;
|
|
L_020D62E8: ; // 0x20d62e8
|
|
/* 020D62E8 */ goto L_020D62FC;
|
|
L_020D62EC: ; // 0x20d62ec
|
|
/* 020D62EC */ _t36 = cpu->r[31] + 0x00000000u;
|
|
/* 020D62EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 020D62F0 */ Gambit_fn_020D76C0(cpu);
|
|
/* 020D62F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020D62F8 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D62F8 */ _t38 = _t37 & 0x00000001u;
|
|
/* 020D62F8 */ if (_t38) goto L_020D6314; else goto L_020D62FC;
|
|
L_020D62FC: ; // 0x20d62fc
|
|
/* 020D62FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], 0x00000008u);
|
|
/* 020D6300 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6300 */ _t40 = _t39 & 0x00000001u;
|
|
/* 020D6300 */ if (_t40) goto L_020D6304; else goto L_020D6308;
|
|
L_020D6304: ; // 0x20d6304
|
|
/* 020D6304 */ cpu->r[31] = cpu->r[31] + cpu->r[28];
|
|
L_020D6308: ; // 0x20d6308
|
|
/* 020D6308 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 020D6308 */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 020D630C */ cpu->r[4] = cpu->r[27];
|
|
/* 020D6310 */ Gambit_fn_020D788C(cpu);
|
|
L_020D6314: ; // 0x20d6314
|
|
/* 020D6314 */ _t42 = cpu->r[29] + 0x00000218u;
|
|
/* 020D6314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42);
|
|
/* 020D6318 */ cpu->r[25] = cpu->r[25] + 0x00000001u;
|
|
/* 020D631C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 020D6320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]);
|
|
/* 020D6324 */ cpu->r[24] = (uint32_t)((int32_t)cpu->r[24] * (int32_t)0x0000000Au);
|
|
/* 020D6328 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6328 */ _t44 = _t43 & 0x00000001u;
|
|
/* 020D6328 */ if (_t44) goto L_020D6238; else goto L_020D632C;
|
|
L_020D632C: ; // 0x20d632c
|
|
/* 020D632C */ cpu->r[27] = 0x00000000u;
|
|
/* 020D6330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 020D6334 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6334 */ _t46 = _t45 & 0x00000001u;
|
|
/* 020D6334 */ if (_t46) goto L_020D6338; else goto L_020D639C;
|
|
L_020D6338: ; // 0x20d6338
|
|
/* 020D6338 */ cpu->r[28] = 0x00000000u;
|
|
L_020D633C: ; // 0x20d633c
|
|
/* 020D633C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[26]);
|
|
/* 020D6340 */ _t47 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020D6340 */ _t48 = _t47 & 0x00000001u;
|
|
/* 020D6340 */ if (_t48) goto L_020D638C; else goto L_020D6344;
|
|
L_020D6344: ; // 0x20d6344
|
|
/* 020D6344 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000008u);
|
|
/* 020D6348 */ cpu->r[31] = cpu->r[29] + 0x0000021Cu;
|
|
/* 020D634C */ _t49 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D634C */ _t50 = _t49 & 0x00000001u;
|
|
/* 020D634C */ if (_t50) goto L_020D6350; else goto L_020D6364;
|
|
L_020D6350: ; // 0x20d6350
|
|
/* 020D6350 */ _t51 = cpu->r[31] + cpu->r[28];
|
|
/* 020D6350 */ cpu->r[9] = rbrew_read32(cpu->mem, _t51);
|
|
/* 020D6354 */ _t52 = cpu->r[9] + 0x000001E8u;
|
|
/* 020D6354 */ cpu->r[12] = rbrew_read8(cpu->mem, _t52);
|
|
/* 020D6358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020D635C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D635C */ _t54 = _t53 & 0x00000001u;
|
|
/* 020D635C */ if (_t54) goto L_020D638C; else goto L_020D6360;
|
|
L_020D6360: ; // 0x20d6360
|
|
/* 020D6360 */ goto L_020D6374;
|
|
L_020D6364: ; // 0x20d6364
|
|
/* 020D6364 */ _t55 = cpu->r[31] + 0x00000000u;
|
|
/* 020D6364 */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 020D6368 */ _t56 = cpu->r[9] + 0x000001E8u;
|
|
/* 020D6368 */ cpu->r[12] = rbrew_read8(cpu->mem, _t56);
|
|
/* 020D636C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 020D6370 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D6370 */ _t58 = _t57 & 0x00000001u;
|
|
/* 020D6370 */ if (_t58) goto L_020D638C; else goto L_020D6374;
|
|
L_020D6374: ; // 0x20d6374
|
|
/* 020D6374 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000008u);
|
|
/* 020D6378 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6378 */ _t60 = _t59 & 0x00000001u;
|
|
/* 020D6378 */ if (_t60) goto L_020D637C; else goto L_020D6380;
|
|
L_020D637C: ; // 0x20d637c
|
|
/* 020D637C */ cpu->r[31] = cpu->r[31] + cpu->r[28];
|
|
L_020D6380: ; // 0x20d6380
|
|
/* 020D6380 */ _t61 = cpu->r[31] + 0x00000000u;
|
|
/* 020D6380 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61);
|
|
/* 020D6384 */ Gambit_fn_020D7764(cpu);
|
|
/* 020D6388 */ _t62 = cpu->r[29] + 0x00000218u;
|
|
/* 020D6388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t62);
|
|
L_020D638C: ; // 0x20d638c
|
|
/* 020D638C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 020D6390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[0]);
|
|
/* 020D6394 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 020D6398 */ _t63 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D6398 */ _t64 = _t63 & 0x00000001u;
|
|
/* 020D6398 */ if (_t64) goto L_020D633C; else goto L_020D639C;
|
|
L_020D639C: ; // 0x20d639c
|
|
/* 020D639C */ _t65 = cpu->r[29] + 0x0000023Cu;
|
|
/* 020D639C */ rbrew_write32(cpu->mem, _t65, cpu->r[30]);
|
|
/* 020D63A0 */ /* nop */
|
|
/* 020D63A4 */ _t66 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020D63A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 020D63A8 */ cpu->lr = cpu->r[0];
|
|
/* 020D63AC */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 020D63B0 */ return;
|
|
L_02425404: ; // 0x2425404
|
|
/* 02425404 */ _t67 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02425404 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02425408 */ goto L_0242600C;
|
|
L_0242600C: ; // 0x242600c
|
|
/* 0242600C */ _t68 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0242600C */ cpu->r[3] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02426010 */ goto L_0245FFB4;
|
|
L_0245FFB4: ; // 0x245ffb4
|
|
/* 0245FFB4 */ cpu->r[12] = cpu->r[3];
|
|
/* 0245FFB8 */ _t69 = cpu->r[12] + 0x00000010u;
|
|
/* 0245FFB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t69);
|
|
/* 0245FFBC */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x0000001Cu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245FFBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 0245FFC0 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FFC0 */ _t71 = _t70 & 0x00000001u;
|
|
/* 0245FFC0 */ if (_t71) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245FFC0 */ goto L_0245FFC4;
|
|
L_0245FFC4: ; // 0x245ffc4
|
|
/* 0245FFC4 */ _t72 = cpu->r[12] + 0x00000044u;
|
|
/* 0245FFC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0245FFC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]);
|
|
/* 0245FFCC */ _t73 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245FFCC */ _t74 = _t73 & 0x00000001u;
|
|
/* 0245FFCC */ if (_t74) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0245FFCC */ goto L_0245FFD0;
|
|
L_0245FFD0: ; // 0x245ffd0
|
|
/* 0245FFD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0245FFD4 */ _t75 = cpu->r[12] + 0x00000040u;
|
|
/* 0245FFD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0245FFD8 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0245FFD8 */ _t77 = _t76 & 0x00000001u;
|
|
/* 0245FFD8 */ if (_t77) goto L_0245FFDC; else goto L_0245FFE8;
|
|
L_0245FFDC: ; // 0x245ffdc
|
|
/* 0245FFDC */ cpu->r[4] = 0x00000000u;
|
|
/* 0245FFE0 */ _t78 = cpu->r[12] + 0x00000044u;
|
|
/* 0245FFE0 */ rbrew_write32(cpu->mem, _t78, cpu->r[4]);
|
|
/* 0245FFE4 */ goto L_020D61EC;
|
|
L_0245FFE8: ; // 0x245ffe8
|
|
/* 0245FFE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x0000270Fu);
|
|
/* 0245FFEC */ _t79 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0245FFEC */ _t80 = _t79 & 0x00000001u;
|
|
/* 0245FFEC */ if (_t80) goto L_0245FFF0; else goto L_0245FFF4;
|
|
L_0245FFF0: ; // 0x245fff0
|
|
/* 0245FFF0 */ cpu->r[4] = 0x0000270Fu;
|
|
L_0245FFF4: ; // 0x245fff4
|
|
/* 0245FFF4 */ _t81 = cpu->r[12] + 0x00000044u;
|
|
/* 0245FFF4 */ rbrew_write32(cpu->mem, _t81, cpu->r[4]);
|
|
/* 0245FFF8 */ goto L_020D61EC;
|
|
}
|
|
|
|
// fn_0242540C @ 0x242540c
|
|
void Gambit_fn_0242540C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59;
|
|
|
|
L_0242540C: ; // 0x242540c
|
|
/* 0242540C */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 0242540C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425410 */ goto L_02426154;
|
|
L_02426154: ; // 0x2426154
|
|
/* 02426154 */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02426154 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02426154 */ cpu->r[1] = _t1;
|
|
/* 02426158 */ /* nop */
|
|
/* 0242615C */ cpu->r[0] = cpu->lr;
|
|
/* 02426160 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02426160 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02426164 */ _t3 = cpu->r[3] + 0x00000234u;
|
|
/* 02426164 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02426168 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242616C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02426170 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426170 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02426170 */ if (_t5) goto L_024262B4; else goto L_02426174;
|
|
L_02426174: ; // 0x2426174
|
|
/* 02426174 */ cpu->r[27] = 0x00000000u;
|
|
/* 02426178 */ _t6 = cpu->r[3] + 0x00000234u;
|
|
/* 02426178 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 0242617C */ cpu->r[29] = cpu->r[27];
|
|
/* 02426180 */ cpu->r[30] = cpu->r[3] + 0x00000228u;
|
|
/* 02426184 */ cpu->r[28] = 0x00000003u;
|
|
L_02426188: ; // 0x2426188
|
|
/* 02426188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[27]);
|
|
/* 0242618C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0242618C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0242618C */ if (_t8) goto L_02426190; else goto L_0242625C;
|
|
L_02426190: ; // 0x2426190
|
|
/* 02426190 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02426194 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02426194 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02426194 */ if (_t10) goto L_02426198; else goto L_024261AC;
|
|
L_02426198: ; // 0x2426198
|
|
/* 02426198 */ _t11 = cpu->r[30] + cpu->r[29];
|
|
/* 02426198 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0242619C */ Gambit_fn_020D0A1C(cpu);
|
|
/* 024261A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024261A4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024261A4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024261A4 */ if (_t13) goto L_024261BC; else goto L_024261A8;
|
|
L_024261A8: ; // 0x24261a8
|
|
/* 024261A8 */ goto L_024262A4;
|
|
L_024261AC: ; // 0x24261ac
|
|
/* 024261AC */ _t14 = cpu->r[30] + 0x00000000u;
|
|
/* 024261AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024261B0 */ Gambit_fn_020D0A1C(cpu);
|
|
/* 024261B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024261B8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024261B8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024261B8 */ if (_t16) goto L_024261BC; else goto L_024262A4;
|
|
L_024261BC: ; // 0x24261bc
|
|
/* 024261BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 024261C0 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024261C0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 024261C0 */ if (_t18) goto L_024261C4; else goto L_024261D8;
|
|
L_024261C4: ; // 0x24261c4
|
|
/* 024261C4 */ _t19 = cpu->r[30] + cpu->r[29];
|
|
/* 024261C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024261C8 */ _t20 = cpu->r[7] + 0x00000118u;
|
|
/* 024261C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024261CC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024261CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024261D0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024261D0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024261D0 */ if (_t22) goto L_024261E8; else goto L_024261D4;
|
|
L_024261D4: ; // 0x24261d4
|
|
/* 024261D4 */ goto L_0242621C;
|
|
L_024261D8: ; // 0x24261d8
|
|
/* 024261D8 */ _t23 = cpu->r[30] + 0x00000000u;
|
|
/* 024261D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024261DC */ _t24 = cpu->r[7] + 0x00000118u;
|
|
/* 024261DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024261E0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024261E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024261E4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024261E4 */ _t26 = _t25 & 0x00000001u;
|
|
/* 024261E4 */ if (_t26) goto L_024261E8; else goto L_0242621C;
|
|
L_024261E8: ; // 0x24261e8
|
|
/* 024261E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 024261EC */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024261EC */ _t28 = _t27 & 0x00000001u;
|
|
/* 024261EC */ if (_t28) goto L_024261F0; else goto L_02426208;
|
|
L_024261F0: ; // 0x24261f0
|
|
/* 024261F0 */ _t29 = cpu->r[30] + cpu->r[29];
|
|
/* 024261F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024261F4 */ _t30 = cpu->r[3] + 0x00000000u;
|
|
/* 024261F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024261F8 */ _t31 = cpu->r[7] + 0x00000094u;
|
|
/* 024261F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024261FC */ cpu->ctr = cpu->r[0];
|
|
/* 02426200 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426204 */ goto L_0242621C;
|
|
L_02426208: ; // 0x2426208
|
|
/* 02426208 */ _t32 = cpu->r[30] + 0x00000000u;
|
|
/* 02426208 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0242620C */ _t33 = cpu->r[3] + 0x00000000u;
|
|
/* 0242620C */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02426210 */ _t34 = cpu->r[7] + 0x00000094u;
|
|
/* 02426210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02426214 */ cpu->ctr = cpu->r[0];
|
|
/* 02426218 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0242621C: ; // 0x242621c
|
|
/* 0242621C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02426220 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02426220 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02426220 */ if (_t36) goto L_02426224; else goto L_02426240;
|
|
L_02426224: ; // 0x2426224
|
|
/* 02426224 */ _t37 = cpu->r[30] + cpu->r[29];
|
|
/* 02426224 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02426228 */ Gambit_fn_020D0998(cpu);
|
|
/* 0242622C */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 0242622C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02426230 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02426234 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02426238 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426238 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02426238 */ if (_t39) goto L_0242623C; else goto L_02426188;
|
|
L_0242623C: ; // 0x242623c
|
|
/* 0242623C */ goto L_024262B4;
|
|
L_02426240: ; // 0x2426240
|
|
/* 02426240 */ _t40 = cpu->r[30] + 0x00000000u;
|
|
/* 02426240 */ cpu->r[3] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02426244 */ Gambit_fn_020D0998(cpu);
|
|
/* 02426248 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 02426248 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0242624C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02426250 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02426254 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426254 */ _t42 = _t41 & 0x00000001u;
|
|
/* 02426254 */ if (_t42) goto L_02426258; else goto L_02426188;
|
|
L_02426258: ; // 0x2426258
|
|
/* 02426258 */ goto L_024262B4;
|
|
L_0242625C: ; // 0x242625c
|
|
/* 0242625C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02426260 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02426260 */ _t44 = _t43 & 0x00000001u;
|
|
/* 02426260 */ if (_t44) goto L_02426264; else goto L_02426278;
|
|
L_02426264: ; // 0x2426264
|
|
/* 02426264 */ _t45 = cpu->r[30] + cpu->r[29];
|
|
/* 02426264 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45);
|
|
/* 02426268 */ _t46 = cpu->r[9] + 0x00000118u;
|
|
/* 02426268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 0242626C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0242626C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02426270 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426270 */ _t48 = _t47 & 0x00000001u;
|
|
/* 02426270 */ if (_t48) goto L_02426288; else goto L_02426274;
|
|
L_02426274: ; // 0x2426274
|
|
/* 02426274 */ goto L_024262A4;
|
|
L_02426278: ; // 0x2426278
|
|
/* 02426278 */ _t49 = cpu->r[30] + 0x00000000u;
|
|
/* 02426278 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49);
|
|
/* 0242627C */ _t50 = cpu->r[9] + 0x00000118u;
|
|
/* 0242627C */ cpu->r[0] = rbrew_read32(cpu->mem, _t50);
|
|
/* 02426280 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02426280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02426284 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426284 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02426284 */ if (_t52) goto L_02426288; else goto L_024262A4;
|
|
L_02426288: ; // 0x2426288
|
|
/* 02426288 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 0242628C */ _t53 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242628C */ _t54 = _t53 & 0x00000001u;
|
|
/* 0242628C */ if (_t54) goto L_02426290; else goto L_0242629C;
|
|
L_02426290: ; // 0x2426290
|
|
/* 02426290 */ _t55 = cpu->r[30] + cpu->r[29];
|
|
/* 02426290 */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02426294 */ Gambit_fn_020D0A7C(cpu);
|
|
/* 02426298 */ goto L_024262A4;
|
|
L_0242629C: ; // 0x242629c
|
|
/* 0242629C */ _t56 = cpu->r[30] + 0x00000000u;
|
|
/* 0242629C */ cpu->r[3] = rbrew_read32(cpu->mem, _t56);
|
|
/* 024262A0 */ Gambit_fn_020D0A7C(cpu);
|
|
L_024262A4: ; // 0x24262a4
|
|
/* 024262A4 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 024262A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024262A8 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 024262AC */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 024262B0 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024262B0 */ _t58 = _t57 & 0x00000001u;
|
|
/* 024262B0 */ if (_t58) goto L_024262B4; else goto L_02426188;
|
|
L_024262B4: ; // 0x24262b4
|
|
/* 024262B4 */ /* nop */
|
|
/* 024262B8 */ _t59 = cpu->r[1] + 0x00000024u;
|
|
/* 024262B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59);
|
|
/* 024262BC */ cpu->lr = cpu->r[0];
|
|
/* 024262C0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024262C4 */ return;
|
|
}
|
|
|
|
// fn_02425424 @ 0x2425424
|
|
void Gambit_fn_02425424(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02425424: ; // 0x2425424
|
|
/* 02425424 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02425424 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425428 */ goto L_024262C8;
|
|
L_024262C8: ; // 0x24262c8
|
|
/* 024262C8 */ _t1 = cpu->r[3] + 0x00000240u;
|
|
/* 024262C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024262CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000001u);
|
|
/* 024262D0 */ _t2 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024262D0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024262D0 */ _t4 = _t3 ^ 0x00000001u;
|
|
/* 024262D0 */ if (_t4) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024262D0 */ goto L_024262D4;
|
|
L_024262D4: ; // 0x24262d4
|
|
/* 024262D4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024262D8 */ _t5 = cpu->r[3] + 0x00000240u;
|
|
/* 024262D8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024262DC */ return;
|
|
}
|
|
|
|
// fn_0242542C @ 0x242542c
|
|
void Gambit_fn_0242542C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0242542C: ; // 0x242542c
|
|
/* 0242542C */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 0242542C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425430 */ goto L_024262E0;
|
|
L_024262E0: ; // 0x24262e0
|
|
/* 024262E0 */ cpu->r[0] = cpu->lr;
|
|
/* 024262E4 */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024262E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024262E4 */ cpu->r[1] = _t1;
|
|
/* 024262E8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 024262E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 024262EC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024262EC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 024262F0 */ cpu->r[28] = 0x10090000u;
|
|
/* 024262F4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024262F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024262F8 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 024262F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 024262FC */ cpu->r[4] = 0x00000000u;
|
|
/* 02426300 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 02426300 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02426304 */ cpu->r[29] = cpu->r[3];
|
|
/* 02426308 */ cpu->r[28] = cpu->r[28] + 0x00007EBCu;
|
|
/* 0242630C */ _t7 = cpu->r[29] + 0x00000238u;
|
|
/* 0242630C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02426310 */ cpu->r[31] = 0x10090000u;
|
|
/* 02426314 */ _t8 = cpu->r[29] + 0x00000240u;
|
|
/* 02426314 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 02426318 */ cpu->r[31] = cpu->r[31] + 0x00007FA8u;
|
|
/* 0242631C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242631C */ rbrew_write32(cpu->mem, _t9, cpu->r[28]);
|
|
/* 02426320 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426324 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02426324 */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 02426328 */ Gambit_fn_027ED624(cpu);
|
|
/* 0242632C */ cpu->r[4] = 0x00000000u;
|
|
/* 02426330 */ _t11 = cpu->r[29] + 0x0000023Cu;
|
|
/* 02426330 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02426334 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426334 */ rbrew_write32(cpu->mem, _t12, cpu->r[28]);
|
|
/* 02426338 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0242633C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0242633C */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 02426340 */ Gambit_fn_027ED624(cpu);
|
|
/* 02426344 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02426344 */ cpu->r[28] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02426348 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02426348 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0242634C */ _t16 = cpu->r[1] + 0x00000024u;
|
|
/* 0242634C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02426350 */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 02426350 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02426354 */ cpu->lr = cpu->r[0];
|
|
/* 02426358 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426358 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0242635C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02426360 */ return;
|
|
}
|
|
|
|
// fn_02425434 @ 0x2425434
|
|
void Gambit_fn_02425434(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35;
|
|
|
|
L_02425434: ; // 0x2425434
|
|
/* 02425434 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02425434 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425438 */ goto L_02426364;
|
|
L_02426364: ; // 0x2426364
|
|
/* 02426364 */ _t1 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02426364 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02426364 */ cpu->r[1] = _t1;
|
|
/* 02426368 */ cpu->r[12] = 0x10090000u;
|
|
/* 0242636C */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0242636C */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02426370 */ /* nop */
|
|
/* 02426374 */ _t3 = cpu->r[12] + 0x00007FACu;
|
|
/* 02426374 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t3);
|
|
/* 02426378 */ cpu->r[0] = cpu->lr;
|
|
/* 0242637C */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 0242637C */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02426380 */ cpu->r[12] = 0x10090000u;
|
|
/* 02426384 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426384 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02426388 */ cpu->f[31] = cpu->f[1] * cpu->f[12];
|
|
/* 0242638C */ _t6 = cpu->r[12] + 0x00007F50u;
|
|
/* 0242638C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02426390 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 02426390 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]);
|
|
/* 02426394 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[0]);
|
|
/* 02426398 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02426398 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 0242639C */ cpu->r[31] = cpu->r[3];
|
|
/* 024263A0 */ _t9 = cpu->r[1] + 0x00000034u;
|
|
/* 024263A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024263A4 */ _t10 = cpu->r[31] + 0x00000220u;
|
|
/* 024263A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024263A8 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024263A8 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024263A8 */ if (_t12) goto L_024263AC; else goto L_024263FC;
|
|
L_024263AC: ; // 0x24263ac
|
|
/* 024263AC */ cpu->f[31] = cpu->f[0];
|
|
/* 024263B0 */ cpu->f[1] = cpu->f[31];
|
|
/* 024263B4 */ Gambit_fn_020D18C4(cpu);
|
|
/* 024263B8 */ _t13 = cpu->r[31] + 0x00000220u;
|
|
/* 024263B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024263BC */ cpu->r[29] = 0x10090000u;
|
|
/* 024263C0 */ cpu->r[30] = 0x10090000u;
|
|
/* 024263C4 */ cpu->r[29] = cpu->r[29] + 0x00007FB0u;
|
|
/* 024263C8 */ cpu->r[30] = cpu->r[30] + 0x00007EBCu;
|
|
/* 024263CC */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024263CC */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 024263D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024263D4 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024263D4 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 024263D8 */ Gambit_fn_027EE100(cpu);
|
|
/* 024263DC */ cpu->f[1] = cpu->f[31] * cpu->f[1];
|
|
/* 024263E0 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024263E0 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 024263E4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024263E8 */ _t17 = cpu->r[31] + 0x00000220u;
|
|
/* 024263E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024263EC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024263F0 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 024263F0 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 024263F4 */ Gambit_fn_027ED914(cpu);
|
|
/* 024263F8 */ goto L_02426458;
|
|
L_024263FC: ; // 0x24263fc
|
|
/* 024263FC */ cpu->r[11] = 0x10090000u;
|
|
/* 02426400 */ _t19 = cpu->r[11] + 0x00007F4Cu;
|
|
/* 02426400 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02426404 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[13]);
|
|
/* 02426408 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02426408 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02426408 */ if (_t21) goto L_0242640C; else goto L_02426410;
|
|
L_0242640C: ; // 0x242640c
|
|
/* 0242640C */ cpu->f[31] = cpu->f[13];
|
|
L_02426410: ; // 0x2426410
|
|
/* 02426410 */ cpu->f[1] = cpu->f[31];
|
|
/* 02426414 */ Gambit_fn_020D18C4(cpu);
|
|
/* 02426418 */ _t22 = cpu->r[31] + 0x00000220u;
|
|
/* 02426418 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0242641C */ cpu->r[29] = 0x10090000u;
|
|
/* 02426420 */ cpu->r[30] = 0x10090000u;
|
|
/* 02426424 */ cpu->r[29] = cpu->r[29] + 0x00007FB0u;
|
|
/* 02426428 */ cpu->r[30] = cpu->r[30] + 0x00007EBCu;
|
|
/* 0242642C */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 0242642C */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 02426430 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426434 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426434 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 02426438 */ Gambit_fn_027EE100(cpu);
|
|
/* 0242643C */ cpu->f[1] = cpu->f[31] * cpu->f[1];
|
|
/* 02426440 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426440 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 02426444 */ cpu->r[4] = 0x00000001u;
|
|
/* 02426448 */ _t26 = cpu->r[31] + 0x00000220u;
|
|
/* 02426448 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0242644C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426450 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02426450 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]);
|
|
/* 02426454 */ Gambit_fn_027ED914(cpu);
|
|
L_02426458: ; // 0x2426458
|
|
/* 02426458 */ _t28 = cpu->r[1] + 0x00000014u;
|
|
/* 02426458 */ cpu->r[29] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0242645C */ _t29 = cpu->r[1] + 0x00000028u;
|
|
/* 0242645C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t29);
|
|
/* 02426460 */ _t30 = cpu->r[1] + 0x00000018u;
|
|
/* 02426460 */ cpu->r[30] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02426464 */ _t31 = cpu->r[1] + 0x00000020u;
|
|
/* 02426464 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t31);
|
|
/* 02426468 */ _t32 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426468 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32);
|
|
/* 0242646C */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242646C */ _t34 = _t33 & 0x00000001u;
|
|
/* 0242646C */ if (_t34) goto L_02426470; // else: addr-0 trap, fall-through
|
|
L_02426470: ; // 0x2426470
|
|
/* 02426470 */ _t35 = cpu->r[1] + 0x00000034u;
|
|
/* 02426470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02426474 */ cpu->lr = cpu->r[0];
|
|
/* 02426478 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0242647C */ return;
|
|
}
|
|
|
|
// fn_0242543C @ 0x242543c
|
|
void Gambit_fn_0242543C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_020D18C4: ; // 0x20d18c4
|
|
/* 020D18C4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 020D18C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020D18C4 */ cpu->r[1] = _t0;
|
|
/* 020D18C8 */ cpu->r[0] = cpu->lr;
|
|
/* 020D18CC */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 020D18CC */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 020D18D0 */ /* nop */
|
|
/* 020D18D4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 020D18D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020D18D8 */ cpu->r[10] = 0x10010000u;
|
|
/* 020D18DC */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 020D18DC */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 020D18E0 */ cpu->f[31] = cpu->f[1];
|
|
/* 020D18E4 */ _t4 = cpu->r[10] + 0x00007BD0u;
|
|
/* 020D18E4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 020D18E8 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020D18E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 020D18EC */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 020D18EC */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 020D18F0 */ cpu->r[30] = 0x10010000u;
|
|
/* 020D18F4 */ _t7 = cpu->r[1] + 0x00000034u;
|
|
/* 020D18F4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 020D18F8 */ _t8 = cpu->r[3] + 0x00000214u;
|
|
/* 020D18F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020D18FC */ cpu->r[29] = 0x10010000u;
|
|
/* 020D1900 */ cpu->r[30] = cpu->r[30] + 0x00007AF0u;
|
|
/* 020D1904 */ cpu->r[29] = cpu->r[29] + 0x00007BD4u;
|
|
/* 020D1908 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 020D1908 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 020D190C */ cpu->r[4] = cpu->r[11] + 0x00000001u;
|
|
/* 020D1910 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 020D1914 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020D1914 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 020D1918 */ cpu->r[31] = cpu->r[3];
|
|
/* 020D191C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 020D1920 */ cpu->f[1] = cpu->f[31];
|
|
/* 020D1924 */ _t11 = cpu->r[31] + 0x00000214u;
|
|
/* 020D1924 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020D1928 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D192C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020D192C */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 020D1930 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 020D1934 */ cpu->r[4] = cpu->r[12] + 0x00000001u;
|
|
/* 020D1938 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 020D1938 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 020D193C */ Gambit_fn_027EDB60(cpu);
|
|
/* 020D1940 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 020D1940 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 020D1944 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 020D1944 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15);
|
|
/* 020D1948 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 020D1948 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020D194C */ _t17 = cpu->r[1] + 0x00000020u;
|
|
/* 020D194C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17);
|
|
/* 020D1950 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020D1950 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 020D1954 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D1954 */ _t20 = _t19 & 0x00000001u;
|
|
/* 020D1954 */ if (_t20) goto L_020D1958; // else: addr-0 trap, fall-through
|
|
L_020D1958: ; // 0x20d1958
|
|
/* 020D1958 */ _t21 = cpu->r[1] + 0x00000034u;
|
|
/* 020D1958 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 020D195C */ cpu->lr = cpu->r[0];
|
|
/* 020D1960 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 020D1964 */ return;
|
|
L_0242543C: ; // 0x242543c
|
|
/* 0242543C */ _t22 = cpu->r[3] + 0x0000003Cu;
|
|
/* 0242543C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02425440 */ goto L_02426480;
|
|
L_02426480: ; // 0x2426480
|
|
/* 02426480 */ cpu->r[12] = 0x10090000u;
|
|
/* 02426484 */ _t23 = cpu->r[12] + 0x00007FACu;
|
|
/* 02426484 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t23);
|
|
/* 02426488 */ cpu->r[12] = 0x10090000u;
|
|
/* 0242648C */ cpu->f[1] = cpu->f[1] * cpu->f[0];
|
|
/* 02426490 */ _t24 = cpu->r[12] + 0x00007F50u;
|
|
/* 02426490 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02426494 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]);
|
|
/* 02426498 */ _t25 = cpu->r[3] + 0x00000220u;
|
|
/* 02426498 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0242649C */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242649C */ _t27 = _t26 & 0x00000001u;
|
|
/* 0242649C */ if (_t27) goto L_024264A0; else goto L_024264A8;
|
|
L_024264A0: ; // 0x24264a0
|
|
/* 024264A0 */ cpu->f[1] = cpu->f[0];
|
|
/* 024264A4 */ goto L_020D18C4;
|
|
L_024264A8: ; // 0x24264a8
|
|
/* 024264A8 */ cpu->r[12] = 0x10090000u;
|
|
/* 024264AC */ _t28 = cpu->r[12] + 0x00007F4Cu;
|
|
/* 024264AC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 024264B0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[13]);
|
|
/* 024264B4 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024264B4 */ _t30 = _t29 & 0x00000001u;
|
|
/* 024264B4 */ if (_t30) goto L_024264B8; else goto L_024264BC;
|
|
L_024264B8: ; // 0x24264b8
|
|
/* 024264B8 */ cpu->f[1] = cpu->f[13];
|
|
L_024264BC: ; // 0x24264bc
|
|
/* 024264BC */ goto L_020D18C4;
|
|
}
|
|
|
|
// fn_02425444 @ 0x2425444
|
|
void Gambit_fn_02425444(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_020D1968: ; // 0x20d1968
|
|
/* 020D1968 */ cpu->r[0] = cpu->lr;
|
|
/* 020D196C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 020D196C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020D196C */ cpu->r[1] = _t0;
|
|
/* 020D1970 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 020D1970 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020D1974 */ cpu->r[31] = cpu->r[3];
|
|
/* 020D1978 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020D197C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020D197C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020D1980 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 020D1980 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 020D1984 */ Gambit_fn_0206C030(cpu);
|
|
/* 020D1988 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D198C */ Gambit_fn_0206A274(cpu);
|
|
/* 020D1990 */ cpu->r[12] = 0x10010000u;
|
|
/* 020D1994 */ cpu->r[0] = 0x10010000u;
|
|
/* 020D1998 */ _t4 = cpu->r[31] + 0x00000214u;
|
|
/* 020D1998 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 020D199C */ cpu->r[12] = cpu->r[12] + 0x00007BDCu;
|
|
/* 020D19A0 */ cpu->r[0] = cpu->r[0] + 0x00007AF0u;
|
|
/* 020D19A4 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 020D19A4 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 020D19A8 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020D19A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 020D19AC */ cpu->r[0] = 0x00000000u;
|
|
/* 020D19B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D19B4 */ _t7 = cpu->r[31] + 0x00000219u;
|
|
/* 020D19B4 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[0]);
|
|
/* 020D19B8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 020D19BC */ _t8 = cpu->r[31] + 0x00000218u;
|
|
/* 020D19BC */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
/* 020D19C0 */ Gambit_fn_027ED858(cpu);
|
|
/* 020D19C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020D19C8 */ cpu->r[4] = 0x00000002u;
|
|
/* 020D19CC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D19CC */ _t10 = _t9 & 0x00000001u;
|
|
/* 020D19CC */ if (_t10) goto L_020D19D4; else goto L_020D19D0;
|
|
L_020D19D0: ; // 0x20d19d0
|
|
/* 020D19D0 */ cpu->r[4] = 0x00000001u;
|
|
L_020D19D4: ; // 0x20d19d4
|
|
/* 020D19D4 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 020D19D8 */ Gambit_fn_0206AEA4(cpu);
|
|
/* 020D19DC */ _t11 = cpu->r[31] + 0x000001ACu;
|
|
/* 020D19DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020D19E0 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 020D19E4 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020D19E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020D19E8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 020D19E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020D19EC */ cpu->lr = cpu->r[0];
|
|
/* 020D19F0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 020D19F4 */ return;
|
|
L_02425444: ; // 0x2425444
|
|
/* 02425444 */ _t14 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02425444 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02425448 */ goto L_024264C0;
|
|
L_024264C0: ; // 0x24264c0
|
|
/* 024264C0 */ _t15 = cpu->r[3] + 0x00000220u;
|
|
/* 024264C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024264C4 */ goto L_020D1968;
|
|
}
|
|
|
|
// fn_0242544C @ 0x242544c
|
|
void Gambit_fn_0242544C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_020D1A10: ; // 0x20d1a10
|
|
/* 020D1A10 */ cpu->r[0] = cpu->lr;
|
|
/* 020D1A14 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 020D1A14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020D1A14 */ cpu->r[1] = _t0;
|
|
/* 020D1A18 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 020D1A18 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020D1A1C */ cpu->r[30] = 0x10010000u;
|
|
/* 020D1A20 */ cpu->r[12] = 0x10010000u;
|
|
/* 020D1A24 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 020D1A24 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 020D1A28 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 020D1A2C */ cpu->r[30] = cpu->r[30] + 0x00007AF0u;
|
|
/* 020D1A30 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020D1A30 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 020D1A34 */ cpu->r[12] = cpu->r[12] + 0x00007BE0u;
|
|
/* 020D1A38 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020D1A38 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 020D1A3C */ cpu->r[0] = 0x00000000u;
|
|
/* 020D1A40 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020D1A40 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 020D1A44 */ cpu->r[29] = cpu->r[0];
|
|
/* 020D1A48 */ cpu->r[31] = cpu->r[3];
|
|
/* 020D1A4C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 020D1A4C */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 020D1A50 */ Gambit_fn_027EDE90(cpu);
|
|
/* 020D1A54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020D1A58 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D1A58 */ _t8 = _t7 & 0x00000001u;
|
|
/* 020D1A58 */ if (_t8) goto L_020D1A5C; else goto L_020D1A88;
|
|
L_020D1A5C: ; // 0x20d1a5c
|
|
/* 020D1A5C */ cpu->r[10] = 0x10010000u;
|
|
/* 020D1A60 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D1A64 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 020D1A64 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 020D1A68 */ cpu->r[10] = cpu->r[10] + 0x00007BE4u;
|
|
/* 020D1A6C */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 020D1A70 */ cpu->r[0] = 0x00000001u;
|
|
/* 020D1A74 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 020D1A74 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 020D1A78 */ Gambit_fn_027EDE90(cpu);
|
|
/* 020D1A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 020D1A80 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D1A80 */ _t12 = _t11 & 0x00000001u;
|
|
/* 020D1A80 */ if (_t12) goto L_020D1A84; else goto L_020D1A88;
|
|
L_020D1A84: ; // 0x20d1a84
|
|
/* 020D1A84 */ cpu->r[29] = 0x00000001u;
|
|
L_020D1A88: ; // 0x20d1a88
|
|
/* 020D1A88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 020D1A8C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D1A8C */ _t14 = _t13 & 0x00000001u;
|
|
/* 020D1A8C */ if (_t14) goto L_020D1AA4; else goto L_020D1A90;
|
|
L_020D1A90: ; // 0x20d1a90
|
|
/* 020D1A90 */ _t15 = cpu->r[31] + 0x00000000u;
|
|
/* 020D1A90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 020D1A94 */ _t16 = cpu->r[11] + 0x00000094u;
|
|
/* 020D1A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020D1A98 */ cpu->ctr = cpu->r[0];
|
|
/* 020D1A9C */ cpu->r[3] = cpu->r[31];
|
|
/* 020D1AA0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020D1AA4: ; // 0x20d1aa4
|
|
/* 020D1AA4 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020D1AA8 */ _t17 = cpu->r[3] + 0x00003400u;
|
|
/* 020D1AA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 020D1AAC */ Gambit_fn_0206C030(cpu);
|
|
/* 020D1AB0 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 020D1AB4 */ cpu->r[4] = 0x00000003u;
|
|
/* 020D1AB8 */ Gambit_fn_0206AEA4(cpu);
|
|
/* 020D1ABC */ _t18 = cpu->r[31] + 0x000001ACu;
|
|
/* 020D1ABC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 020D1AC0 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 020D1AC4 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020D1AC4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 020D1AC8 */ _t20 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020D1AC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 020D1ACC */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 020D1ACC */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 020D1AD0 */ cpu->lr = cpu->r[0];
|
|
/* 020D1AD4 */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 020D1AD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t22);
|
|
/* 020D1AD8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 020D1ADC */ return;
|
|
L_0242544C: ; // 0x242544c
|
|
/* 0242544C */ _t23 = cpu->r[3] + 0x0000003Cu;
|
|
/* 0242544C */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02425450 */ goto L_024264C8;
|
|
L_024264C8: ; // 0x24264c8
|
|
/* 024264C8 */ _t24 = cpu->r[3] + 0x00000220u;
|
|
/* 024264C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024264CC */ goto L_020D1A10;
|
|
}
|
|
|
|
// fn_02425454 @ 0x2425454
|
|
void Gambit_fn_02425454(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02425454: ; // 0x2425454
|
|
/* 02425454 */ _t0 = cpu->r[3] + 0x0000003Cu;
|
|
/* 02425454 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425458 */ goto L_024264D0;
|
|
L_024264D0: ; // 0x24264d0
|
|
/* 024264D0 */ _t1 = cpu->r[3] + 0x00000220u;
|
|
/* 024264D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024264D4 */ _t2 = cpu->r[12] + 0x00000118u;
|
|
/* 024264D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024264D8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024264DC */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024264E0 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 024264E4 */ return;
|
|
}
|
|
|
|
// fn_0242545C @ 0x242545c
|
|
void Gambit_fn_0242545C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_020D19F8: ; // 0x20d19f8
|
|
/* 020D19F8 */ _t0 = cpu->r[3] + 0x000001E8u;
|
|
/* 020D19F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 020D19FC */ /* nop */
|
|
/* 020D1A00 */ cpu->r[0] = cpu->r[0] ^ 0x00000002u;
|
|
/* 020D1A04 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 020D1A08 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 020D1A0C */ return;
|
|
L_0242545C: ; // 0x242545c
|
|
/* 0242545C */ _t1 = cpu->r[3] + 0x0000003Cu;
|
|
/* 0242545C */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425460 */ goto L_024264E8;
|
|
L_024264E8: ; // 0x24264e8
|
|
/* 024264E8 */ _t2 = cpu->r[3] + 0x00000220u;
|
|
/* 024264E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024264EC */ goto L_020D19F8;
|
|
}
|
|
|
|
// fn_02425464 @ 0x2425464
|
|
void Gambit_fn_02425464(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02425464: ; // 0x2425464
|
|
/* 02425464 */ _t0 = cpu->r[3] + 0x00000044u;
|
|
/* 02425464 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425468 */ _t1 = cpu->r[12] + 0x00000118u;
|
|
/* 02425468 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0242546C */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02425470 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02425474 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 02425478 */ return;
|
|
}
|
|
|
|
// fn_0242547C @ 0x242547c
|
|
void Gambit_fn_0242547C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0242547C: ; // 0x242547c
|
|
/* 0242547C */ cpu->r[0] = cpu->lr;
|
|
/* 02425480 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425480 */ cpu->r[1] = _t0;
|
|
/* 02425484 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02425484 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02425488 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425488 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0242548C */ cpu->r[31] = cpu->r[3];
|
|
/* 02425490 */ cpu->r[30] = cpu->r[4];
|
|
/* 02425494 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425494 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425498 */ Gambit_fn_02425464(cpu);
|
|
/* 0242549C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024254A0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024254A0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024254A0 */ if (_t5) goto L_024254D4; else goto L_024254A4;
|
|
L_024254A4: ; // 0x24254a4
|
|
/* 024254A4 */ _t6 = cpu->r[31] + 0x00000028u;
|
|
/* 024254A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024254A8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024254AC */ _t7 = cpu->r[31] + 0x00000044u;
|
|
/* 024254AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024254B0 */ Gambit_fn_027ECB34(cpu);
|
|
/* 024254B4 */ _t8 = cpu->r[31] + 0x00000044u;
|
|
/* 024254B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024254B8 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 024254B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024254BC */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 024254BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024254C0 */ cpu->ctr = cpu->r[0];
|
|
/* 024254C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024254C8 */ _t11 = cpu->r[31] + 0x00000044u;
|
|
/* 024254C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024254CC */ cpu->r[4] = cpu->r[30];
|
|
/* 024254D0 */ Gambit_fn_02427A68(cpu);
|
|
L_024254D4: ; // 0x24254d4
|
|
/* 024254D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 024254D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024254D8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024254D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024254DC */ cpu->lr = cpu->r[0];
|
|
/* 024254E0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024254E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024254E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024254E8 */ return;
|
|
}
|
|
|
|
// fn_02425480 @ 0x2425480
|
|
void Gambit_fn_02425480(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02425480: ; // 0x2425480
|
|
/* 02425480 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425480 */ cpu->r[1] = _t0;
|
|
/* 02425484 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02425484 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02425488 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425488 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0242548C */ cpu->r[31] = cpu->r[3];
|
|
/* 02425490 */ cpu->r[30] = cpu->r[4];
|
|
/* 02425494 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425494 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425498 */ Gambit_fn_02425464(cpu);
|
|
/* 0242549C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024254A0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024254A0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024254A0 */ if (_t5) goto L_024254D4; else goto L_024254A4;
|
|
L_024254A4: ; // 0x24254a4
|
|
/* 024254A4 */ _t6 = cpu->r[31] + 0x00000028u;
|
|
/* 024254A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024254A8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024254AC */ _t7 = cpu->r[31] + 0x00000044u;
|
|
/* 024254AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024254B0 */ Gambit_fn_027ECB34(cpu);
|
|
/* 024254B4 */ _t8 = cpu->r[31] + 0x00000044u;
|
|
/* 024254B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024254B8 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 024254B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024254BC */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 024254BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024254C0 */ cpu->ctr = cpu->r[0];
|
|
/* 024254C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024254C8 */ _t11 = cpu->r[31] + 0x00000044u;
|
|
/* 024254C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024254CC */ cpu->r[4] = cpu->r[30];
|
|
/* 024254D0 */ Gambit_fn_02427A68(cpu);
|
|
L_024254D4: ; // 0x24254d4
|
|
/* 024254D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 024254D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024254D8 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024254D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024254DC */ cpu->lr = cpu->r[0];
|
|
/* 024254E0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024254E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024254E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024254E8 */ return;
|
|
}
|
|
|
|
// fn_024254EC @ 0x24254ec
|
|
void Gambit_fn_024254EC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024254EC: ; // 0x24254ec
|
|
/* 024254EC */ cpu->r[0] = cpu->lr;
|
|
/* 024254F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024254F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024254F0 */ cpu->r[1] = _t0;
|
|
/* 024254F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024254F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024254F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024254FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024254FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02425500 */ _t3 = cpu->r[31] + 0x00000044u;
|
|
/* 02425500 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02425504 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02425504 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425508 */ _t5 = cpu->r[12] + 0x00000184u;
|
|
/* 02425508 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0242550C */ cpu->ctr = cpu->r[11];
|
|
/* 02425510 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425514 */ _t6 = cpu->r[31] + 0x00000044u;
|
|
/* 02425514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242551C */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 0242551C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425520 */ cpu->r[3] = cpu->r[12];
|
|
/* 02425524 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425524 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02425524 */ if (_t9) goto L_02425548; else goto L_02425528;
|
|
L_02425528: ; // 0x2425528
|
|
/* 02425528 */ _t10 = cpu->r[11] + 0x0000016Cu;
|
|
/* 02425528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0242552C */ cpu->ctr = cpu->r[0];
|
|
/* 02425530 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425534 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02425534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425538 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425538 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242553C */ cpu->lr = cpu->r[0];
|
|
/* 02425540 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425544 */ return;
|
|
L_02425548: ; // 0x2425548
|
|
/* 02425548 */ _t13 = cpu->r[11] + 0x00000174u;
|
|
/* 02425548 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0242554C */ cpu->ctr = cpu->r[0];
|
|
/* 02425550 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425554 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02425554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02425558 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425558 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0242555C */ cpu->lr = cpu->r[0];
|
|
/* 02425560 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425564 */ return;
|
|
}
|
|
|
|
// fn_024254F0 @ 0x24254f0
|
|
void Gambit_fn_024254F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024254F0: ; // 0x24254f0
|
|
/* 024254F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024254F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024254F0 */ cpu->r[1] = _t0;
|
|
/* 024254F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024254F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024254F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024254FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024254FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02425500 */ _t3 = cpu->r[31] + 0x00000044u;
|
|
/* 02425500 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02425504 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02425504 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425508 */ _t5 = cpu->r[12] + 0x00000184u;
|
|
/* 02425508 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0242550C */ cpu->ctr = cpu->r[11];
|
|
/* 02425510 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425514 */ _t6 = cpu->r[31] + 0x00000044u;
|
|
/* 02425514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242551C */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 0242551C */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425520 */ cpu->r[3] = cpu->r[12];
|
|
/* 02425524 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425524 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02425524 */ if (_t9) goto L_02425548; else goto L_02425528;
|
|
L_02425528: ; // 0x2425528
|
|
/* 02425528 */ _t10 = cpu->r[11] + 0x0000016Cu;
|
|
/* 02425528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0242552C */ cpu->ctr = cpu->r[0];
|
|
/* 02425530 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425534 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02425534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425538 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425538 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242553C */ cpu->lr = cpu->r[0];
|
|
/* 02425540 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425544 */ return;
|
|
L_02425548: ; // 0x2425548
|
|
/* 02425548 */ _t13 = cpu->r[11] + 0x00000174u;
|
|
/* 02425548 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0242554C */ cpu->ctr = cpu->r[0];
|
|
/* 02425550 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425554 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02425554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02425558 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425558 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0242555C */ cpu->lr = cpu->r[0];
|
|
/* 02425560 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425564 */ return;
|
|
}
|
|
|
|
// fn_02425568 @ 0x2425568
|
|
void Gambit_fn_02425568(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02425568: ; // 0x2425568
|
|
/* 02425568 */ _t0 = cpu->r[3] + 0x00000048u;
|
|
/* 02425568 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0242556C */ _t1 = cpu->r[12] + 0x00000118u;
|
|
/* 0242556C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425570 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02425574 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02425578 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 0242557C */ return;
|
|
}
|
|
|
|
// fn_02425580 @ 0x2425580
|
|
void Gambit_fn_02425580(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02425580: ; // 0x2425580
|
|
/* 02425580 */ cpu->r[0] = cpu->lr;
|
|
/* 02425584 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425584 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425584 */ cpu->r[1] = _t0;
|
|
/* 02425588 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425588 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0242558C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0242558C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02425590 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425594 */ cpu->r[31] = cpu->r[4];
|
|
/* 02425598 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425598 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242559C */ Gambit_fn_02425568(cpu);
|
|
/* 024255A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024255A4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024255A4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024255A4 */ if (_t5) goto L_02425604; else goto L_024255A8;
|
|
L_024255A8: ; // 0x24255a8
|
|
/* 024255A8 */ _t6 = cpu->r[30] + 0x00000028u;
|
|
/* 024255A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024255AC */ cpu->r[5] = 0x00000001u;
|
|
/* 024255B0 */ _t7 = cpu->r[30] + 0x00000048u;
|
|
/* 024255B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024255B4 */ Gambit_fn_027ECB34(cpu);
|
|
/* 024255B8 */ _t8 = cpu->r[30] + 0x00000048u;
|
|
/* 024255B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024255BC */ cpu->r[4] = 0x00000007u;
|
|
/* 024255C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024255C4 */ _t9 = cpu->r[12] + 0x000001ACu;
|
|
/* 024255C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024255C8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024255C8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024255C8 */ if (_t11) goto L_024255CC; else goto L_024255F4;
|
|
L_024255CC: ; // 0x24255cc
|
|
/* 024255CC */ cpu->r[5] = 0x00000000u;
|
|
/* 024255D0 */ Gambit_fn_027B8224(cpu);
|
|
/* 024255D4 */ _t12 = cpu->r[30] + 0x00000048u;
|
|
/* 024255D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024255D8 */ Gambit_fn_020B9314(cpu);
|
|
/* 024255DC */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024255DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024255E0 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024255E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024255E4 */ cpu->lr = cpu->r[0];
|
|
/* 024255E8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024255E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024255EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024255F0 */ return;
|
|
L_024255F4: ; // 0x24255f4
|
|
/* 024255F4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024255F8 */ Gambit_fn_027B8224(cpu);
|
|
/* 024255FC */ _t16 = cpu->r[30] + 0x00000048u;
|
|
/* 024255FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02425600 */ Gambit_fn_02423A4C(cpu);
|
|
L_02425604: ; // 0x2425604
|
|
/* 02425604 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02425604 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02425608 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02425608 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0242560C */ cpu->lr = cpu->r[0];
|
|
/* 02425610 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425610 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02425614 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425618 */ return;
|
|
}
|
|
|
|
// fn_02425584 @ 0x2425584
|
|
void Gambit_fn_02425584(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02425584: ; // 0x2425584
|
|
/* 02425584 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425584 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425584 */ cpu->r[1] = _t0;
|
|
/* 02425588 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425588 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0242558C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0242558C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02425590 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425594 */ cpu->r[31] = cpu->r[4];
|
|
/* 02425598 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425598 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242559C */ Gambit_fn_02425568(cpu);
|
|
/* 024255A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024255A4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024255A4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024255A4 */ if (_t5) goto L_02425604; else goto L_024255A8;
|
|
L_024255A8: ; // 0x24255a8
|
|
/* 024255A8 */ _t6 = cpu->r[30] + 0x00000028u;
|
|
/* 024255A8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024255AC */ cpu->r[5] = 0x00000001u;
|
|
/* 024255B0 */ _t7 = cpu->r[30] + 0x00000048u;
|
|
/* 024255B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024255B4 */ Gambit_fn_027ECB34(cpu);
|
|
/* 024255B8 */ _t8 = cpu->r[30] + 0x00000048u;
|
|
/* 024255B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024255BC */ cpu->r[4] = 0x00000007u;
|
|
/* 024255C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024255C4 */ _t9 = cpu->r[12] + 0x000001ACu;
|
|
/* 024255C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024255C8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024255C8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024255C8 */ if (_t11) goto L_024255CC; else goto L_024255F4;
|
|
L_024255CC: ; // 0x24255cc
|
|
/* 024255CC */ cpu->r[5] = 0x00000000u;
|
|
/* 024255D0 */ Gambit_fn_027B8224(cpu);
|
|
/* 024255D4 */ _t12 = cpu->r[30] + 0x00000048u;
|
|
/* 024255D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024255D8 */ Gambit_fn_020B9314(cpu);
|
|
/* 024255DC */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024255DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024255E0 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 024255E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024255E4 */ cpu->lr = cpu->r[0];
|
|
/* 024255E8 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024255E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024255EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024255F0 */ return;
|
|
L_024255F4: ; // 0x24255f4
|
|
/* 024255F4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024255F8 */ Gambit_fn_027B8224(cpu);
|
|
/* 024255FC */ _t16 = cpu->r[30] + 0x00000048u;
|
|
/* 024255FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02425600 */ Gambit_fn_02423A4C(cpu);
|
|
L_02425604: ; // 0x2425604
|
|
/* 02425604 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02425604 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02425608 */ _t18 = cpu->r[1] + 0x00000008u;
|
|
/* 02425608 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0242560C */ cpu->lr = cpu->r[0];
|
|
/* 02425610 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425610 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02425614 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425618 */ return;
|
|
}
|
|
|
|
// fn_0242561C @ 0x242561c
|
|
void Gambit_fn_0242561C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0242561C: ; // 0x242561c
|
|
/* 0242561C */ _t0 = cpu->r[3] + 0x00000048u;
|
|
/* 0242561C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425620 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02425620 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425624 */ _t2 = cpu->r[12] + 0x00000094u;
|
|
/* 02425624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02425628 */ cpu->ctr = cpu->r[0];
|
|
/* 0242562C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02425630 @ 0x2425630
|
|
void Gambit_fn_02425630(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02425630: ; // 0x2425630
|
|
/* 02425630 */ _t0 = cpu->r[3] + 0x0000004Cu;
|
|
/* 02425630 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425634 */ _t1 = cpu->r[12] + 0x00000118u;
|
|
/* 02425634 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425638 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0242563C */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02425640 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 02425644 */ return;
|
|
}
|
|
|
|
// fn_02425648 @ 0x2425648
|
|
void Gambit_fn_02425648(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02425648: ; // 0x2425648
|
|
/* 02425648 */ cpu->r[0] = cpu->lr;
|
|
/* 0242564C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0242564C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02425650 */ cpu->r[11] = cpu->r[3];
|
|
/* 02425654 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02425654 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02425654 */ cpu->r[1] = _t1;
|
|
/* 02425658 */ Gambit_fn_02425630(cpu);
|
|
/* 0242565C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425660 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425660 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02425660 */ if (_t3) goto L_0242566C; else goto L_02425664;
|
|
L_02425664: ; // 0x2425664
|
|
/* 02425664 */ _t4 = cpu->r[11] + 0x0000004Cu;
|
|
/* 02425664 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425668 */ Gambit_fn_024270B4(cpu);
|
|
L_0242566C: ; // 0x242566c
|
|
/* 0242566C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242566C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425670 */ cpu->lr = cpu->r[0];
|
|
/* 02425674 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02425678 */ return;
|
|
}
|
|
|
|
// fn_02425654 @ 0x2425654
|
|
void Gambit_fn_02425654(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02425654: ; // 0x2425654
|
|
/* 02425654 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02425654 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425654 */ cpu->r[1] = _t0;
|
|
/* 02425658 */ Gambit_fn_02425630(cpu);
|
|
/* 0242565C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425660 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425660 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02425660 */ if (_t2) goto L_0242566C; else goto L_02425664;
|
|
L_02425664: ; // 0x2425664
|
|
/* 02425664 */ _t3 = cpu->r[11] + 0x0000004Cu;
|
|
/* 02425664 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02425668 */ Gambit_fn_024270B4(cpu);
|
|
L_0242566C: ; // 0x242566c
|
|
/* 0242566C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242566C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425670 */ cpu->lr = cpu->r[0];
|
|
/* 02425674 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02425678 */ return;
|
|
}
|
|
|
|
// fn_0242567C @ 0x242567c
|
|
void Gambit_fn_0242567C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0242567C: ; // 0x242567c
|
|
/* 0242567C */ cpu->r[0] = cpu->lr;
|
|
/* 02425680 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02425680 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02425684 */ cpu->r[11] = cpu->r[3];
|
|
/* 02425688 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02425688 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02425688 */ cpu->r[1] = _t1;
|
|
/* 0242568C */ Gambit_fn_02425630(cpu);
|
|
/* 02425690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425694 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425694 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02425694 */ if (_t3) goto L_02425698; else goto L_024256A0;
|
|
L_02425698: ; // 0x2425698
|
|
/* 02425698 */ _t4 = cpu->r[11] + 0x0000004Cu;
|
|
/* 02425698 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0242569C */ Gambit_fn_0242711C(cpu);
|
|
L_024256A0: ; // 0x24256a0
|
|
/* 024256A0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024256A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024256A4 */ cpu->lr = cpu->r[0];
|
|
/* 024256A8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024256AC */ return;
|
|
}
|
|
|
|
// fn_02425688 @ 0x2425688
|
|
void Gambit_fn_02425688(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02425688: ; // 0x2425688
|
|
/* 02425688 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02425688 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425688 */ cpu->r[1] = _t0;
|
|
/* 0242568C */ Gambit_fn_02425630(cpu);
|
|
/* 02425690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425694 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425694 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02425694 */ if (_t2) goto L_02425698; else goto L_024256A0;
|
|
L_02425698: ; // 0x2425698
|
|
/* 02425698 */ _t3 = cpu->r[11] + 0x0000004Cu;
|
|
/* 02425698 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0242569C */ Gambit_fn_0242711C(cpu);
|
|
L_024256A0: ; // 0x24256a0
|
|
/* 024256A0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024256A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024256A4 */ cpu->lr = cpu->r[0];
|
|
/* 024256A8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024256AC */ return;
|
|
}
|
|
|
|
// fn_024256B0 @ 0x24256b0
|
|
void Gambit_fn_024256B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024256B0: ; // 0x24256b0
|
|
/* 024256B0 */ _t0 = cpu->r[3] + 0x0000004Cu;
|
|
/* 024256B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024256B4 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024256B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024256B8 */ _t2 = cpu->r[12] + 0x00000094u;
|
|
/* 024256B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024256BC */ cpu->ctr = cpu->r[0];
|
|
/* 024256C0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024256C4 @ 0x24256c4
|
|
void Gambit_fn_024256C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024256C4: ; // 0x24256c4
|
|
/* 024256C4 */ _t0 = cpu->r[3] + 0x00000050u;
|
|
/* 024256C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024256C8 */ _t1 = cpu->r[12] + 0x00000118u;
|
|
/* 024256C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024256CC */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024256D0 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024256D4 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 024256D8 */ return;
|
|
}
|
|
|
|
// fn_024256DC @ 0x24256dc
|
|
void Gambit_fn_024256DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_024256DC: ; // 0x24256dc
|
|
/* 024256DC */ cpu->r[0] = cpu->lr;
|
|
/* 024256E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024256E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024256E0 */ cpu->r[1] = _t0;
|
|
/* 024256E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024256E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024256E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024256EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024256EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024256F0 */ Gambit_fn_024256C4(cpu);
|
|
/* 024256F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024256F8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024256F8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024256F8 */ if (_t4) goto L_024256FC; else goto L_02425710;
|
|
L_024256FC: ; // 0x24256fc
|
|
/* 024256FC */ _t5 = cpu->r[31] + 0x00000050u;
|
|
/* 024256FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425700 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02425700 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425704 */ _t7 = cpu->r[12] + 0x00000094u;
|
|
/* 02425704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425708 */ cpu->ctr = cpu->r[0];
|
|
/* 0242570C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02425710: ; // 0x2425710
|
|
/* 02425710 */ _t8 = cpu->r[31] + 0x00000050u;
|
|
/* 02425710 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425714 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02425714 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425718 */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 02425718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0242571C */ cpu->ctr = cpu->r[0];
|
|
/* 02425720 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425724 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02425724 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425728 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425728 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242572C */ cpu->lr = cpu->r[0];
|
|
/* 02425730 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425734 */ return;
|
|
}
|
|
|
|
// fn_024256E0 @ 0x24256e0
|
|
void Gambit_fn_024256E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_024256E0: ; // 0x24256e0
|
|
/* 024256E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024256E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024256E0 */ cpu->r[1] = _t0;
|
|
/* 024256E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024256E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024256E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024256EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024256EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024256F0 */ Gambit_fn_024256C4(cpu);
|
|
/* 024256F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024256F8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024256F8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024256F8 */ if (_t4) goto L_024256FC; else goto L_02425710;
|
|
L_024256FC: ; // 0x24256fc
|
|
/* 024256FC */ _t5 = cpu->r[31] + 0x00000050u;
|
|
/* 024256FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425700 */ _t6 = cpu->r[3] + 0x00000000u;
|
|
/* 02425700 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425704 */ _t7 = cpu->r[12] + 0x00000094u;
|
|
/* 02425704 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425708 */ cpu->ctr = cpu->r[0];
|
|
/* 0242570C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02425710: ; // 0x2425710
|
|
/* 02425710 */ _t8 = cpu->r[31] + 0x00000050u;
|
|
/* 02425710 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425714 */ _t9 = cpu->r[3] + 0x00000000u;
|
|
/* 02425714 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425718 */ _t10 = cpu->r[12] + 0x00000164u;
|
|
/* 02425718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0242571C */ cpu->ctr = cpu->r[0];
|
|
/* 02425720 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02425724 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02425724 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425728 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425728 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242572C */ cpu->lr = cpu->r[0];
|
|
/* 02425730 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425734 */ return;
|
|
}
|
|
|
|
// fn_02425738 @ 0x2425738
|
|
void Gambit_fn_02425738(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02425738: ; // 0x2425738
|
|
/* 02425738 */ _t0 = cpu->r[3] + 0x00000050u;
|
|
/* 02425738 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0242573C */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 0242573C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425740 */ _t2 = cpu->r[12] + 0x00000094u;
|
|
/* 02425740 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02425744 */ cpu->ctr = cpu->r[0];
|
|
/* 02425748 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_0242574C @ 0x242574c
|
|
void Gambit_fn_0242574C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44;
|
|
|
|
L_020D4900: ; // 0x20d4900
|
|
/* 020D4900 */ cpu->r[0] = cpu->lr;
|
|
/* 020D4904 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 020D4904 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020D4904 */ cpu->r[1] = _t0;
|
|
/* 020D4908 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 020D4908 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 020D490C */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020D490C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 020D4910 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 020D4910 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 020D4914 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 020D4914 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 020D4918 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 020D4918 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 020D491C */ _t6 = cpu->r[3] + 0x0000022Cu;
|
|
/* 020D491C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 020D4920 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[4] / (int32_t)cpu->r[0]);
|
|
/* 020D4924 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[5] / (int32_t)cpu->r[0]);
|
|
/* 020D4928 */ _t7 = cpu->r[3] + 0x00000214u;
|
|
/* 020D4928 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 020D492C */ _t8 = cpu->r[3] + 0x00000218u;
|
|
/* 020D492C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 020D4930 */ _t9 = cpu->r[3] + 0x0000021Cu;
|
|
/* 020D4930 */ rbrew_write32(cpu->mem, _t9, cpu->r[4]);
|
|
/* 020D4934 */ _t10 = cpu->r[3] + 0x00000220u;
|
|
/* 020D4934 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 020D4938 */ _t11 = cpu->r[3] + 0x00000224u;
|
|
/* 020D4938 */ rbrew_write32(cpu->mem, _t11, cpu->r[5]);
|
|
/* 020D493C */ cpu->r[31] = cpu->r[3];
|
|
/* 020D4940 */ _t12 = cpu->r[3] + 0x00000228u;
|
|
/* 020D4940 */ rbrew_write32(cpu->mem, _t12, cpu->r[6]);
|
|
/* 020D4944 */ Gambit_fn_020D48A4(cpu);
|
|
/* 020D4948 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D494C */ Gambit_fn_020D486C(cpu);
|
|
/* 020D4950 */ cpu->r[29] = 0x10020000u;
|
|
/* 020D4954 */ cpu->r[30] = 0x10020000u;
|
|
/* 020D4958 */ cpu->r[28] = cpu->r[3];
|
|
/* 020D4958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 020D495C */ cpu->r[29] = cpu->r[29] + 0xFFFF8648u;
|
|
/* 020D4960 */ cpu->r[30] = cpu->r[30] + 0xFFFF86C8u;
|
|
/* 020D4964 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D4968 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D4968 */ _t14 = _t13 & 0x00000001u;
|
|
/* 020D4968 */ if (_t14) goto L_020D49B4; else goto L_020D496C;
|
|
L_020D496C: ; // 0x20d496c
|
|
/* 020D496C */ _t15 = cpu->r[31] + 0x000001DCu;
|
|
/* 020D496C */ cpu->r[9] = rbrew_read32(cpu->mem, _t15);
|
|
/* 020D4970 */ cpu->r[7] = 0x10020000u;
|
|
/* 020D4974 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020D4974 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 020D4978 */ cpu->r[7] = cpu->r[7] + 0xFFFF86D4u;
|
|
/* 020D497C */ cpu->r[4] = cpu->r[9] + 0x00000002u;
|
|
/* 020D4980 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 020D4984 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 020D4984 */ rbrew_write32(cpu->mem, _t17, cpu->r[7]);
|
|
/* 020D4988 */ Gambit_fn_027ED700(cpu);
|
|
/* 020D498C */ _t18 = cpu->r[31] + 0x000001DCu;
|
|
/* 020D498C */ cpu->r[10] = rbrew_read32(cpu->mem, _t18);
|
|
/* 020D4990 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D4994 */ _t19 = cpu->r[31] + 0x00000230u;
|
|
/* 020D4994 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 020D4998 */ cpu->r[4] = cpu->r[10] + 0x00000001u;
|
|
/* 020D499C */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020D499C */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 020D49A0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 020D49A4 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 020D49A4 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 020D49A8 */ Gambit_fn_027ED2B0(cpu);
|
|
/* 020D49AC */ _t22 = cpu->r[31] + 0x00000236u;
|
|
/* 020D49AC */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[28]);
|
|
/* 020D49B0 */ goto L_020D4A30;
|
|
L_020D49B4: ; // 0x20d49b4
|
|
/* 020D49B4 */ _t23 = cpu->r[31] + 0x000001DCu;
|
|
/* 020D49B4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23);
|
|
/* 020D49B8 */ cpu->r[11] = 0x10020000u;
|
|
/* 020D49BC */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 020D49BC */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 020D49C0 */ cpu->r[11] = cpu->r[11] + 0xFFFF86BCu;
|
|
/* 020D49C4 */ cpu->r[4] = cpu->r[12] + 0x00000002u;
|
|
/* 020D49C8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 020D49CC */ _t25 = cpu->r[1] + 0x00000010u;
|
|
/* 020D49CC */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 020D49D0 */ Gambit_fn_027ED700(cpu);
|
|
/* 020D49D4 */ _t26 = cpu->r[31] + 0x00000234u;
|
|
/* 020D49D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t26);
|
|
/* 020D49D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020D49DC */ cpu->r[3] = cpu->r[31];
|
|
/* 020D49E0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D49E0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 020D49E0 */ if (_t28) goto L_020D4A14; else goto L_020D49E4;
|
|
L_020D49E4: ; // 0x20d49e4
|
|
/* 020D49E4 */ _t29 = cpu->r[31] + 0x000001DCu;
|
|
/* 020D49E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29);
|
|
/* 020D49E8 */ cpu->r[0] = 0x10020000u;
|
|
/* 020D49EC */ cpu->r[8] = 0x10020000u;
|
|
/* 020D49F0 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020D49F0 */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 020D49F4 */ cpu->r[0] = cpu->r[0] + 0xFFFF86E0u;
|
|
/* 020D49F8 */ _t31 = cpu->r[8] + 0xFFFF86B8u;
|
|
/* 020D49F8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t31);
|
|
/* 020D49FC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 020D4A00 */ cpu->r[4] = cpu->r[9] + 0x00000001u;
|
|
/* 020D4A04 */ _t32 = cpu->r[1] + 0x00000018u;
|
|
/* 020D4A04 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]);
|
|
/* 020D4A08 */ Gambit_fn_027ED2B0(cpu);
|
|
/* 020D4A0C */ _t33 = cpu->r[31] + 0x00000236u;
|
|
/* 020D4A0C */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[28]);
|
|
/* 020D4A10 */ goto L_020D4A30;
|
|
L_020D4A14: ; // 0x20d4a14
|
|
/* 020D4A14 */ _t34 = cpu->r[31] + 0x000001DCu;
|
|
/* 020D4A14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t34);
|
|
/* 020D4A18 */ _t35 = cpu->r[1] + 0x00000024u;
|
|
/* 020D4A18 */ rbrew_write32(cpu->mem, _t35, cpu->r[29]);
|
|
/* 020D4A1C */ cpu->r[4] = cpu->r[10] + 0x00000001u;
|
|
/* 020D4A20 */ _t36 = cpu->r[1] + 0x00000020u;
|
|
/* 020D4A20 */ rbrew_write32(cpu->mem, _t36, cpu->r[30]);
|
|
/* 020D4A24 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 020D4A28 */ Gambit_fn_027ED858(cpu);
|
|
/* 020D4A2C */ _t37 = cpu->r[31] + 0x00000236u;
|
|
/* 020D4A2C */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[28]);
|
|
L_020D4A30: ; // 0x20d4a30
|
|
/* 020D4A30 */ _t38 = cpu->r[1] + 0x00000028u;
|
|
/* 020D4A30 */ cpu->r[28] = rbrew_read32(cpu->mem, _t38);
|
|
/* 020D4A34 */ _t39 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020D4A34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t39);
|
|
/* 020D4A38 */ _t40 = cpu->r[1] + 0x0000003Cu;
|
|
/* 020D4A38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 020D4A3C */ _t41 = cpu->r[1] + 0x00000030u;
|
|
/* 020D4A3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 020D4A40 */ cpu->lr = cpu->r[0];
|
|
/* 020D4A44 */ _t42 = cpu->r[1] + 0x00000034u;
|
|
/* 020D4A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 020D4A48 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 020D4A4C */ return;
|
|
L_0242574C: ; // 0x242574c
|
|
/* 0242574C */ _t43 = cpu->r[3] + 0x00000050u;
|
|
/* 0242574C */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02425750 */ goto L_024276D0;
|
|
L_024276D0: ; // 0x24276d0
|
|
/* 024276D0 */ _t44 = cpu->r[3] + 0x0000021Cu;
|
|
/* 024276D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44);
|
|
/* 024276D4 */ goto L_020D4900;
|
|
}
|
|
|
|
// fn_02425754 @ 0x2425754
|
|
void Gambit_fn_02425754(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71;
|
|
|
|
L_020D4A94: ; // 0x20d4a94
|
|
/* 020D4A94 */ cpu->r[0] = cpu->lr;
|
|
/* 020D4A98 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 020D4A98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020D4A98 */ cpu->r[1] = _t0;
|
|
/* 020D4A9C */ _t1 = cpu->r[1] + 0x00000040u;
|
|
/* 020D4A9C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 020D4AA0 */ _t2 = cpu->r[1] + 0x00000034u;
|
|
/* 020D4AA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 020D4AA4 */ /* nop */
|
|
/* 020D4AA8 */ _t3 = cpu->r[1] + 0x0000003Cu;
|
|
/* 020D4AA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 020D4AAC */ _t4 = cpu->r[1] + 0x00000048u;
|
|
/* 020D4AAC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 020D4AB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 020D4AB4 */ _t5 = cpu->r[1] + 0x00000038u;
|
|
/* 020D4AB4 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 020D4AB8 */ _t6 = cpu->r[1] + 0x00000054u;
|
|
/* 020D4AB8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 020D4ABC */ _t7 = cpu->r[31] + 0x00000235u;
|
|
/* 020D4ABC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 020D4AC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020D4AC4 */ _t8 = cpu->r[31] + 0x0000021Cu;
|
|
/* 020D4AC4 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]);
|
|
/* 020D4AC8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D4AC8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 020D4AC8 */ if (_t10) goto L_020D4B20; else goto L_020D4ACC;
|
|
L_020D4ACC: ; // 0x20d4acc
|
|
/* 020D4ACC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 020D4AD0 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020D4AD0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 020D4AD0 */ if (_t12) goto L_020D4AD4; else goto L_020D4B2C;
|
|
L_020D4AD4: ; // 0x20d4ad4
|
|
/* 020D4AD4 */ _t13 = cpu->r[31] + 0x0000022Cu;
|
|
/* 020D4AD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020D4AD8 */ cpu->r[6] = cpu->r[4] + cpu->r[10];
|
|
/* 020D4ADC */ cpu->r[7] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 020D4AE0 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[7] / (int32_t)cpu->r[10]);
|
|
/* 020D4AE4 */ _t14 = cpu->r[31] + 0x00000218u;
|
|
/* 020D4AE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 020D4AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]);
|
|
/* 020D4AEC */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 020D4AEC */ _t16 = _t15 & 0x00000001u;
|
|
/* 020D4AEC */ if (_t16) goto L_020D4AF0; else goto L_020D4B30;
|
|
L_020D4AF0: ; // 0x20d4af0
|
|
/* 020D4AF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D4AF4 */ cpu->r[9] = cpu->r[0];
|
|
/* 020D4AF8 */ Gambit_fn_020D486C(cpu);
|
|
/* 020D4AFC */ cpu->r[30] = 0x10020000u;
|
|
/* 020D4B00 */ _t17 = cpu->r[31] + 0x00000220u;
|
|
/* 020D4B00 */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 020D4B04 */ cpu->r[29] = cpu->r[3];
|
|
/* 020D4B08 */ cpu->r[30] = cpu->r[30] + 0xFFFF8648u;
|
|
/* 020D4B0C */ cpu->r[10] = 0x10020000u;
|
|
/* 020D4B10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[9]);
|
|
/* 020D4B14 */ _t18 = cpu->r[10] + 0xFFFF86B8u;
|
|
/* 020D4B14 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 020D4B18 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D4B18 */ _t20 = _t19 & 0x00000001u;
|
|
/* 020D4B18 */ if (_t20) goto L_020D4BBC; else goto L_020D4B1C;
|
|
L_020D4B1C: ; // 0x20d4b1c
|
|
/* 020D4B1C */ goto L_020D4B58;
|
|
L_020D4B20: ; // 0x20d4b20
|
|
/* 020D4B20 */ _t21 = cpu->r[31] + 0x0000022Cu;
|
|
/* 020D4B20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21);
|
|
/* 020D4B24 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[4] / (int32_t)cpu->r[8]);
|
|
/* 020D4B24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 020D4B28 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D4B28 */ _t23 = _t22 & 0x00000001u;
|
|
/* 020D4B28 */ if (_t23) goto L_020D4B2C; else goto L_020D4B30;
|
|
L_020D4B2C: ; // 0x20d4b2c
|
|
/* 020D4B2C */ cpu->r[9] = 0x00000000u;
|
|
L_020D4B30: ; // 0x20d4b30
|
|
/* 020D4B30 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D4B34 */ Gambit_fn_020D486C(cpu);
|
|
/* 020D4B38 */ cpu->r[30] = 0x10020000u;
|
|
/* 020D4B3C */ _t24 = cpu->r[31] + 0x00000220u;
|
|
/* 020D4B3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t24);
|
|
/* 020D4B40 */ cpu->r[29] = cpu->r[3];
|
|
/* 020D4B44 */ cpu->r[30] = cpu->r[30] + 0xFFFF8648u;
|
|
/* 020D4B48 */ cpu->r[10] = 0x10020000u;
|
|
/* 020D4B4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[9]);
|
|
/* 020D4B50 */ _t25 = cpu->r[10] + 0xFFFF86B8u;
|
|
/* 020D4B50 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25);
|
|
/* 020D4B54 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D4B54 */ _t27 = _t26 & 0x00000001u;
|
|
/* 020D4B54 */ if (_t27) goto L_020D4BBC; else goto L_020D4B58;
|
|
L_020D4B58: ; // 0x20d4b58
|
|
/* 020D4B58 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D4B5C */ _t28 = cpu->r[31] + 0x00000220u;
|
|
/* 020D4B5C */ rbrew_write32(cpu->mem, _t28, cpu->r[9]);
|
|
/* 020D4B60 */ Gambit_fn_020D48A4(cpu);
|
|
/* 020D4B64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 020D4B68 */ _t29 = cpu->r[31] + 0x000001DCu;
|
|
/* 020D4B68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 020D4B6C */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D4B6C */ _t31 = _t30 & 0x00000001u;
|
|
/* 020D4B6C */ if (_t31) goto L_020D4B98; else goto L_020D4B70;
|
|
L_020D4B70: ; // 0x20d4b70
|
|
/* 020D4B70 */ cpu->r[9] = 0x10020000u;
|
|
/* 020D4B74 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020D4B74 */ rbrew_write32(cpu->mem, _t32, cpu->r[30]);
|
|
/* 020D4B78 */ cpu->f[1] = cpu->f[31];
|
|
/* 020D4B7C */ cpu->r[9] = cpu->r[9] + 0xFFFF8704u;
|
|
/* 020D4B80 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 020D4B84 */ cpu->r[4] = cpu->r[12] + 0x00000002u;
|
|
/* 020D4B88 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D4B8C */ _t33 = cpu->r[1] + 0x00000008u;
|
|
/* 020D4B8C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]);
|
|
/* 020D4B90 */ Gambit_fn_027ED2B0(cpu);
|
|
/* 020D4B94 */ goto L_020D4BBC;
|
|
L_020D4B98: ; // 0x20d4b98
|
|
/* 020D4B98 */ cpu->r[0] = 0x10020000u;
|
|
/* 020D4B9C */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 020D4B9C */ rbrew_write32(cpu->mem, _t34, cpu->r[30]);
|
|
/* 020D4BA0 */ cpu->f[1] = cpu->f[31];
|
|
/* 020D4BA4 */ cpu->r[0] = cpu->r[0] + 0xFFFF86ECu;
|
|
/* 020D4BA8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 020D4BAC */ cpu->r[4] = cpu->r[12] + 0x00000002u;
|
|
/* 020D4BB0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D4BB4 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 020D4BB4 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 020D4BB8 */ Gambit_fn_027ED2B0(cpu);
|
|
L_020D4BBC: ; // 0x20d4bbc
|
|
/* 020D4BBC */ _t36 = cpu->r[31] + 0x00000236u;
|
|
/* 020D4BBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t36);
|
|
/* 020D4BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 020D4BC4 */ cpu->r[0] = 0x10020000u;
|
|
/* 020D4BC8 */ cpu->r[0] = cpu->r[0] + 0xFFFF86F8u;
|
|
/* 020D4BCC */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D4BCC */ _t38 = _t37 & 0x00000001u;
|
|
/* 020D4BCC */ if (_t38) goto L_020D4BD0; else goto L_020D4C00;
|
|
L_020D4BD0: ; // 0x20d4bd0
|
|
/* 020D4BD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 020D4BD4 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D4BD4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 020D4BD4 */ if (_t40) goto L_020D4C5C; else goto L_020D4BD8;
|
|
L_020D4BD8: ; // 0x20d4bd8
|
|
/* 020D4BD8 */ _t41 = cpu->r[31] + 0x000001DCu;
|
|
/* 020D4BD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41);
|
|
/* 020D4BDC */ cpu->r[3] = cpu->r[31];
|
|
/* 020D4BE0 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020D4BE0 */ rbrew_write32(cpu->mem, _t42, cpu->r[30]);
|
|
/* 020D4BE4 */ _t43 = cpu->r[31] + 0x00000230u;
|
|
/* 020D4BE4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t43);
|
|
/* 020D4BE8 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 020D4BEC */ cpu->r[4] = cpu->r[12] + 0x00000001u;
|
|
/* 020D4BF0 */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 020D4BF0 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]);
|
|
/* 020D4BF4 */ Gambit_fn_027ED2B0(cpu);
|
|
/* 020D4BF8 */ _t45 = cpu->r[31] + 0x00000236u;
|
|
/* 020D4BF8 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[29]);
|
|
/* 020D4BFC */ goto L_020D4C60;
|
|
L_020D4C00: ; // 0x20d4c00
|
|
/* 020D4C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 020D4C04 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D4C04 */ _t47 = _t46 & 0x00000001u;
|
|
/* 020D4C04 */ if (_t47) goto L_020D4C08; else goto L_020D4C5C;
|
|
L_020D4C08: ; // 0x20d4c08
|
|
/* 020D4C08 */ _t48 = cpu->r[31] + 0x00000234u;
|
|
/* 020D4C08 */ cpu->r[6] = rbrew_read8(cpu->mem, _t48);
|
|
/* 020D4C0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 020D4C10 */ cpu->r[3] = cpu->r[31];
|
|
/* 020D4C14 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020D4C14 */ _t50 = _t49 & 0x00000001u;
|
|
/* 020D4C14 */ if (_t50) goto L_020D4C44; else goto L_020D4C18;
|
|
L_020D4C18: ; // 0x20d4c18
|
|
/* 020D4C18 */ cpu->r[7] = 0x10020000u;
|
|
/* 020D4C1C */ _t51 = cpu->r[31] + 0x000001DCu;
|
|
/* 020D4C1C */ cpu->r[8] = rbrew_read32(cpu->mem, _t51);
|
|
/* 020D4C20 */ cpu->f[1] = cpu->f[31];
|
|
/* 020D4C24 */ cpu->r[7] = cpu->r[7] + 0xFFFF8710u;
|
|
/* 020D4C28 */ _t52 = cpu->r[1] + 0x00000024u;
|
|
/* 020D4C28 */ rbrew_write32(cpu->mem, _t52, cpu->r[30]);
|
|
/* 020D4C2C */ cpu->r[4] = cpu->r[8] + 0x00000001u;
|
|
/* 020D4C30 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 020D4C34 */ _t53 = cpu->r[1] + 0x00000020u;
|
|
/* 020D4C34 */ rbrew_write32(cpu->mem, _t53, cpu->r[7]);
|
|
/* 020D4C38 */ Gambit_fn_027ED2B0(cpu);
|
|
/* 020D4C3C */ _t54 = cpu->r[31] + 0x00000236u;
|
|
/* 020D4C3C */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[29]);
|
|
/* 020D4C40 */ goto L_020D4C60;
|
|
L_020D4C44: ; // 0x20d4c44
|
|
/* 020D4C44 */ _t55 = cpu->r[31] + 0x000001DCu;
|
|
/* 020D4C44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t55);
|
|
/* 020D4C48 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 020D4C4C */ _t56 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020D4C4C */ rbrew_write32(cpu->mem, _t56, cpu->r[30]);
|
|
/* 020D4C50 */ cpu->r[4] = cpu->r[9] + 0x00000001u;
|
|
/* 020D4C54 */ _t57 = cpu->r[1] + 0x00000028u;
|
|
/* 020D4C54 */ rbrew_write32(cpu->mem, _t57, cpu->r[0]);
|
|
/* 020D4C58 */ Gambit_fn_027ED858(cpu);
|
|
L_020D4C5C: ; // 0x20d4c5c
|
|
/* 020D4C5C */ _t58 = cpu->r[31] + 0x00000236u;
|
|
/* 020D4C5C */ rbrew_write8(cpu->mem, _t58, (uint8_t)cpu->r[29]);
|
|
L_020D4C60: ; // 0x20d4c60
|
|
/* 020D4C60 */ _t59 = cpu->r[1] + 0x00000034u;
|
|
/* 020D4C60 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59);
|
|
/* 020D4C64 */ _t60 = cpu->r[1] + 0x00000048u;
|
|
/* 020D4C64 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 020D4C68 */ _t61 = cpu->r[1] + 0x00000038u;
|
|
/* 020D4C68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61);
|
|
/* 020D4C6C */ _t62 = cpu->r[1] + 0x00000040u;
|
|
/* 020D4C6C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 020D4C70 */ _t63 = cpu->r[1] + 0x0000003Cu;
|
|
/* 020D4C70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63);
|
|
/* 020D4C74 */ _t64 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020D4C74 */ _t65 = _t64 & 0x00000001u;
|
|
/* 020D4C74 */ if (_t65) goto L_020D4C78; // else: addr-0 trap, fall-through
|
|
L_020D4C78: ; // 0x20d4c78
|
|
/* 020D4C78 */ _t66 = cpu->r[1] + 0x00000054u;
|
|
/* 020D4C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66);
|
|
/* 020D4C7C */ cpu->lr = cpu->r[0];
|
|
/* 020D4C80 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 020D4C84 */ return;
|
|
L_02425754: ; // 0x2425754
|
|
/* 02425754 */ _t67 = cpu->r[3] + 0x00000050u;
|
|
/* 02425754 */ cpu->r[3] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02425758 */ goto L_024276D8;
|
|
L_024276D8: ; // 0x24276d8
|
|
/* 024276D8 */ _t68 = cpu->r[3] + 0x00000220u;
|
|
/* 024276D8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t68);
|
|
/* 024276DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024276E0 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024276E0 */ _t70 = _t69 & 0x00000001u;
|
|
/* 024276E0 */ if (_t70) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024276E0 */ goto L_024276E4;
|
|
L_024276E4: ; // 0x24276e4
|
|
/* 024276E4 */ _t71 = cpu->r[3] + 0x0000021Cu;
|
|
/* 024276E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t71);
|
|
/* 024276E8 */ goto L_020D4A94;
|
|
}
|
|
|
|
// fn_0242575C @ 0x242575c
|
|
void Gambit_fn_0242575C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0242575C: ; // 0x242575c
|
|
/* 0242575C */ _t0 = cpu->r[3] + 0x00000050u;
|
|
/* 0242575C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425760 */ goto L_024276EC;
|
|
L_024276EC: ; // 0x24276ec
|
|
/* 024276EC */ cpu->r[0] = cpu->lr;
|
|
/* 024276F0 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024276F0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024276F0 */ cpu->r[1] = _t1;
|
|
/* 024276F4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024276F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024276F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024276FC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024276FC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427700 */ _t4 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02427700 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02427704 */ _t5 = cpu->r[31] + 0x00000220u;
|
|
/* 02427704 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[4]);
|
|
/* 02427708 */ Gambit_fn_020D4C88(cpu);
|
|
/* 0242770C */ _t6 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0242770C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02427710 */ cpu->r[4] = 0x00000002u;
|
|
/* 02427714 */ Gambit_fn_027EDC84(cpu);
|
|
/* 02427718 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02427718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0242771C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242771C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02427720 */ cpu->lr = cpu->r[0];
|
|
/* 02427724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02427728 */ return;
|
|
}
|
|
|
|
// fn_02425764 @ 0x2425764
|
|
void Gambit_fn_02425764(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02425764: ; // 0x2425764
|
|
/* 02425764 */ cpu->r[0] = cpu->lr;
|
|
/* 02425768 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425768 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425768 */ cpu->r[1] = _t0;
|
|
/* 0242576C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242576C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02425770 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425770 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02425774 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425778 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425778 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242577C */ _t4 = cpu->r[30] + 0x00000058u;
|
|
/* 0242577C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425780 */ cpu->r[31] = cpu->r[4];
|
|
/* 02425784 */ _t5 = cpu->r[30] + 0x00000028u;
|
|
/* 02425784 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425788 */ cpu->r[5] = 0x00000001u;
|
|
/* 0242578C */ Gambit_fn_027ECB34(cpu);
|
|
/* 02425790 */ _t6 = cpu->r[30] + 0x00000058u;
|
|
/* 02425790 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425794 */ cpu->r[4] = cpu->r[31];
|
|
/* 02425798 */ Gambit_fn_02423E3C(cpu);
|
|
/* 0242579C */ _t7 = cpu->r[30] + 0x00000058u;
|
|
/* 0242579C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024257A0 */ Gambit_fn_02423DD4(cpu);
|
|
/* 024257A4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024257A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024257A8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 024257A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024257AC */ cpu->lr = cpu->r[0];
|
|
/* 024257B0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024257B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024257B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024257B8 */ return;
|
|
}
|
|
|
|
// fn_02425768 @ 0x2425768
|
|
void Gambit_fn_02425768(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02425768: ; // 0x2425768
|
|
/* 02425768 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425768 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425768 */ cpu->r[1] = _t0;
|
|
/* 0242576C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242576C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02425770 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425770 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02425774 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425778 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425778 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242577C */ _t4 = cpu->r[30] + 0x00000058u;
|
|
/* 0242577C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425780 */ cpu->r[31] = cpu->r[4];
|
|
/* 02425784 */ _t5 = cpu->r[30] + 0x00000028u;
|
|
/* 02425784 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425788 */ cpu->r[5] = 0x00000001u;
|
|
/* 0242578C */ Gambit_fn_027ECB34(cpu);
|
|
/* 02425790 */ _t6 = cpu->r[30] + 0x00000058u;
|
|
/* 02425790 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425794 */ cpu->r[4] = cpu->r[31];
|
|
/* 02425798 */ Gambit_fn_02423E3C(cpu);
|
|
/* 0242579C */ _t7 = cpu->r[30] + 0x00000058u;
|
|
/* 0242579C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024257A0 */ Gambit_fn_02423DD4(cpu);
|
|
/* 024257A4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024257A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024257A8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 024257A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024257AC */ cpu->lr = cpu->r[0];
|
|
/* 024257B0 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024257B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024257B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024257B8 */ return;
|
|
}
|
|
|
|
// fn_024257BC @ 0x24257bc
|
|
void Gambit_fn_024257BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024257BC: ; // 0x24257bc
|
|
/* 024257BC */ _t0 = cpu->r[3] + 0x00000058u;
|
|
/* 024257BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024257C0 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 024257C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024257C4 */ _t2 = cpu->r[12] + 0x00000094u;
|
|
/* 024257C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024257C8 */ cpu->ctr = cpu->r[0];
|
|
/* 024257CC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024257D0 @ 0x24257d0
|
|
void Gambit_fn_024257D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024257D0: ; // 0x24257d0
|
|
/* 024257D0 */ cpu->r[0] = cpu->lr;
|
|
/* 024257D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024257D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024257D4 */ cpu->r[1] = _t0;
|
|
/* 024257D8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024257D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024257DC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024257DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024257E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024257E4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024257E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024257E8 */ _t4 = cpu->r[30] + 0x00000058u;
|
|
/* 024257E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024257EC */ cpu->r[31] = cpu->r[4];
|
|
/* 024257F0 */ _t5 = cpu->r[30] + 0x00000030u;
|
|
/* 024257F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024257F4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024257F8 */ Gambit_fn_027ECB34(cpu);
|
|
/* 024257FC */ _t6 = cpu->r[30] + 0x00000054u;
|
|
/* 024257FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425800 */ cpu->r[4] = cpu->r[31];
|
|
/* 02425804 */ Gambit_fn_02423E3C(cpu);
|
|
/* 02425808 */ _t7 = cpu->r[30] + 0x00000054u;
|
|
/* 02425808 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0242580C */ Gambit_fn_02423DD4(cpu);
|
|
/* 02425810 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02425810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425814 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02425814 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425818 */ cpu->lr = cpu->r[0];
|
|
/* 0242581C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242581C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425820 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425824 */ return;
|
|
}
|
|
|
|
// fn_024257D4 @ 0x24257d4
|
|
void Gambit_fn_024257D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024257D4: ; // 0x24257d4
|
|
/* 024257D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024257D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024257D4 */ cpu->r[1] = _t0;
|
|
/* 024257D8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024257D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024257DC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024257DC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024257E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024257E4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024257E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024257E8 */ _t4 = cpu->r[30] + 0x00000058u;
|
|
/* 024257E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024257EC */ cpu->r[31] = cpu->r[4];
|
|
/* 024257F0 */ _t5 = cpu->r[30] + 0x00000030u;
|
|
/* 024257F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024257F4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024257F8 */ Gambit_fn_027ECB34(cpu);
|
|
/* 024257FC */ _t6 = cpu->r[30] + 0x00000054u;
|
|
/* 024257FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425800 */ cpu->r[4] = cpu->r[31];
|
|
/* 02425804 */ Gambit_fn_02423E3C(cpu);
|
|
/* 02425808 */ _t7 = cpu->r[30] + 0x00000054u;
|
|
/* 02425808 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0242580C */ Gambit_fn_02423DD4(cpu);
|
|
/* 02425810 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02425810 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425814 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02425814 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425818 */ cpu->lr = cpu->r[0];
|
|
/* 0242581C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242581C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425820 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425824 */ return;
|
|
}
|
|
|
|
// fn_02425828 @ 0x2425828
|
|
void Gambit_fn_02425828(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39;
|
|
|
|
L_024241F4: ; // 0x24241f4
|
|
/* 024241F4 */ cpu->r[0] = cpu->lr;
|
|
/* 024241F8 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 024241F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024241F8 */ cpu->r[1] = _t0;
|
|
/* 024241FC */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 024241FC */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 02424200 */ _t2 = cpu->r[1] + 0x00000030u;
|
|
/* 02424200 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02424204 */ cpu->r[28] = 0x10090000u;
|
|
/* 02424208 */ _t3 = cpu->r[1] + 0x00000034u;
|
|
/* 02424208 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 0242420C */ cpu->r[28] = cpu->r[28] + 0x00007728u;
|
|
/* 02424210 */ cpu->r[30] = cpu->r[3];
|
|
/* 02424214 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02424214 */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02424218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 0242421C */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0242421C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02424220 */ cpu->r[29] = 0x10090000u;
|
|
/* 02424224 */ cpu->r[31] = cpu->r[5];
|
|
/* 02424228 */ cpu->r[29] = cpu->r[29] + 0x00007828u;
|
|
/* 0242422C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242422C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0242422C */ if (_t7) goto L_02424258; else goto L_02424230;
|
|
L_02424230: ; // 0x2424230
|
|
/* 02424230 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02424230 */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 02424234 */ cpu->r[6] = 0x10090000u;
|
|
/* 02424238 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02424238 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 0242423C */ _t10 = cpu->r[30] + 0x0000022Cu;
|
|
/* 0242423C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02424240 */ cpu->r[4] = 0x00000001u;
|
|
/* 02424244 */ _t11 = cpu->r[6] + 0x00007820u;
|
|
/* 02424244 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t11);
|
|
/* 02424248 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0242424C */ Gambit_fn_027ED914(cpu);
|
|
/* 02424250 */ cpu->r[7] = 0x00000001u;
|
|
/* 02424254 */ _t12 = cpu->r[30] + 0x00000234u;
|
|
/* 02424254 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[7]);
|
|
L_02424258: ; // 0x2424258
|
|
/* 02424258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242425C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242425C */ _t14 = _t13 & 0x00000001u;
|
|
/* 0242425C */ if (_t14) goto L_024242F4; else goto L_02424260;
|
|
L_02424260: ; // 0x2424260
|
|
/* 02424260 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02424264 */ cpu->r[12] = cpu->r[30] + 0x00000230u;
|
|
/* 02424268 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02424268 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02424268 */ if (_t16) goto L_0242426C; else goto L_02424298;
|
|
L_0242426C: ; // 0x242426c
|
|
/* 0242426C */ _t17 = cpu->r[1] + 0x00000010u;
|
|
/* 0242426C */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02424270 */ cpu->r[11] = 0x10090000u;
|
|
/* 02424274 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02424274 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]);
|
|
/* 02424278 */ _t19 = cpu->r[12] + 0x00000000u;
|
|
/* 02424278 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0242427C */ cpu->r[4] = 0x00000001u;
|
|
/* 02424280 */ _t20 = cpu->r[11] + 0x000077D0u;
|
|
/* 02424280 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02424284 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02424288 */ Gambit_fn_027ED914(cpu);
|
|
/* 0242428C */ cpu->r[0] = 0x00000001u;
|
|
/* 02424290 */ _t21 = cpu->r[30] + 0x00000235u;
|
|
/* 02424290 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[0]);
|
|
/* 02424294 */ goto L_024242F4;
|
|
L_02424298: ; // 0x2424298
|
|
/* 02424298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000003u);
|
|
/* 0242429C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242429C */ _t23 = _t22 & 0x00000001u;
|
|
/* 0242429C */ if (_t23) goto L_024242A0; else goto L_024242CC;
|
|
L_024242A0: ; // 0x24242a0
|
|
/* 024242A0 */ _t24 = cpu->r[1] + 0x00000018u;
|
|
/* 024242A0 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 024242A4 */ cpu->r[10] = 0x10090000u;
|
|
/* 024242A8 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024242A8 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 024242AC */ _t26 = cpu->r[12] + 0x00000000u;
|
|
/* 024242AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024242B0 */ cpu->r[4] = 0x00000001u;
|
|
/* 024242B4 */ _t27 = cpu->r[10] + 0x000077BCu;
|
|
/* 024242B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 024242B8 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 024242BC */ Gambit_fn_027ED914(cpu);
|
|
/* 024242C0 */ cpu->r[0] = 0x00000001u;
|
|
/* 024242C4 */ _t28 = cpu->r[30] + 0x00000235u;
|
|
/* 024242C4 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[0]);
|
|
/* 024242C8 */ goto L_024242F4;
|
|
L_024242CC: ; // 0x24242cc
|
|
/* 024242CC */ _t29 = cpu->r[1] + 0x00000020u;
|
|
/* 024242CC */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 024242D0 */ cpu->r[9] = 0x10090000u;
|
|
/* 024242D4 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 024242D4 */ rbrew_write32(cpu->mem, _t30, cpu->r[28]);
|
|
/* 024242D8 */ _t31 = cpu->r[12] + 0x00000000u;
|
|
/* 024242D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024242DC */ cpu->r[4] = 0x00000001u;
|
|
/* 024242E0 */ _t32 = cpu->r[9] + 0x00007824u;
|
|
/* 024242E0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t32);
|
|
/* 024242E4 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 024242E8 */ Gambit_fn_027ED914(cpu);
|
|
/* 024242EC */ cpu->r[0] = 0x00000001u;
|
|
/* 024242F0 */ _t33 = cpu->r[30] + 0x00000235u;
|
|
/* 024242F0 */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[0]);
|
|
L_024242F4: ; // 0x24242f4
|
|
/* 024242F4 */ _t34 = cpu->r[1] + 0x00000028u;
|
|
/* 024242F4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024242F8 */ _t35 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024242F8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024242FC */ _t36 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024242FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02424300 */ _t37 = cpu->r[1] + 0x00000030u;
|
|
/* 02424300 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02424304 */ cpu->lr = cpu->r[0];
|
|
/* 02424308 */ _t38 = cpu->r[1] + 0x00000034u;
|
|
/* 02424308 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38);
|
|
/* 0242430C */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02424310 */ return;
|
|
L_02425828: ; // 0x2425828
|
|
/* 02425828 */ _t39 = cpu->r[3] + 0x00000054u;
|
|
/* 02425828 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 0242582C */ goto L_024241F4;
|
|
}
|
|
|
|
// fn_02425830 @ 0x2425830
|
|
void Gambit_fn_02425830(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02425830: ; // 0x2425830
|
|
/* 02425830 */ cpu->r[0] = cpu->lr;
|
|
/* 02425834 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02425834 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02425838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242583C */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0242583C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0242583C */ cpu->r[1] = _t1;
|
|
/* 02425840 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425840 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02425840 */ if (_t3) goto L_02425844; else goto L_02425854;
|
|
L_02425844: ; // 0x2425844
|
|
/* 02425844 */ cpu->r[3] = 0x00000014u;
|
|
/* 02425848 */ Gambit_fn_02801A78(cpu);
|
|
/* 0242584C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425850 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425850 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02425850 */ if (_t5) goto L_02425880; else goto L_02425854;
|
|
L_02425854: ; // 0x2425854
|
|
/* 02425854 */ cpu->r[9] = 0x10090000u;
|
|
/* 02425858 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0242585C */ cpu->r[10] = 0x00000003u;
|
|
/* 02425860 */ cpu->r[9] = cpu->r[9] + 0x00007ACCu;
|
|
/* 02425864 */ cpu->r[12] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 02425868 */ cpu->ctr = cpu->r[10];
|
|
/* 0242586C */ _t6 = cpu->r[3] + 0x00000010u;
|
|
/* 0242586C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
L_02425870: ; // 0x2425870
|
|
/* 02425870 */ _t7 = cpu->r[12] + 0x00000004u;
|
|
/* 02425870 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02425870 */ cpu->r[12] = _t7;
|
|
/* 02425874 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02425874 */ _t8 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02425874 */ _t9 = _t8 >> (0x00000002u & 31u);
|
|
/* 02425874 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02425874 */ if (_t10) goto L_02425870; else goto L_02425878;
|
|
L_02425878: ; // 0x2425878
|
|
/* 02425878 */ cpu->r[0] = 0x00000000u;
|
|
/* 0242587C */ _t11 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0242587C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02425880: ; // 0x2425880
|
|
/* 02425880 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425884 */ cpu->lr = cpu->r[0];
|
|
/* 02425888 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0242588C */ return;
|
|
}
|
|
|
|
// fn_0242583C @ 0x242583c
|
|
void Gambit_fn_0242583C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0242583C: ; // 0x242583c
|
|
/* 0242583C */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 0242583C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242583C */ cpu->r[1] = _t0;
|
|
/* 02425840 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425840 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02425840 */ if (_t2) goto L_02425844; else goto L_02425854;
|
|
L_02425844: ; // 0x2425844
|
|
/* 02425844 */ cpu->r[3] = 0x00000014u;
|
|
/* 02425848 */ Gambit_fn_02801A78(cpu);
|
|
/* 0242584C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425850 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425850 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02425850 */ if (_t4) goto L_02425880; else goto L_02425854;
|
|
L_02425854: ; // 0x2425854
|
|
/* 02425854 */ cpu->r[9] = 0x10090000u;
|
|
/* 02425858 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 0242585C */ cpu->r[10] = 0x00000003u;
|
|
/* 02425860 */ cpu->r[9] = cpu->r[9] + 0x00007ACCu;
|
|
/* 02425864 */ cpu->r[12] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 02425868 */ cpu->ctr = cpu->r[10];
|
|
/* 0242586C */ _t5 = cpu->r[3] + 0x00000010u;
|
|
/* 0242586C */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
L_02425870: ; // 0x2425870
|
|
/* 02425870 */ _t6 = cpu->r[12] + 0x00000004u;
|
|
/* 02425870 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02425870 */ cpu->r[12] = _t6;
|
|
/* 02425874 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02425874 */ _t7 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02425874 */ _t8 = _t7 >> (0x00000002u & 31u);
|
|
/* 02425874 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02425874 */ if (_t9) goto L_02425870; else goto L_02425878;
|
|
L_02425878: ; // 0x2425878
|
|
/* 02425878 */ cpu->r[0] = 0x00000000u;
|
|
/* 0242587C */ _t10 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0242587C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
L_02425880: ; // 0x2425880
|
|
/* 02425880 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425884 */ cpu->lr = cpu->r[0];
|
|
/* 02425888 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 0242588C */ return;
|
|
}
|
|
|
|
// fn_02425890 @ 0x2425890
|
|
void Gambit_fn_02425890(CPUState* cpu) {
|
|
L_02425890: ; // 0x2425890
|
|
/* 02425890 */ return;
|
|
}
|
|
|
|
// fn_02425894 @ 0x2425894
|
|
void Gambit_fn_02425894(CPUState* cpu) {
|
|
L_02425894: ; // 0x2425894
|
|
/* 02425894 */ return;
|
|
}
|
|
|
|
// fn_02425898 @ 0x2425898
|
|
void Gambit_fn_02425898(CPUState* cpu) {
|
|
L_02425898: ; // 0x2425898
|
|
/* 02425898 */ return;
|
|
}
|
|
|
|
// fn_0242589C @ 0x242589c
|
|
void Gambit_fn_0242589C(CPUState* cpu) {
|
|
L_0242589C: ; // 0x242589c
|
|
/* 0242589C */ return;
|
|
}
|
|
|
|
// fn_024258A0 @ 0x24258a0
|
|
void Gambit_fn_024258A0(CPUState* cpu) {
|
|
L_024258A0: ; // 0x24258a0
|
|
/* 024258A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 024258A4 */ return;
|
|
}
|
|
|
|
// fn_024258A8 @ 0x24258a8
|
|
void Gambit_fn_024258A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024258A8: ; // 0x24258a8
|
|
/* 024258A8 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 024258A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 024258AC */ return;
|
|
}
|
|
|
|
// fn_024258B0 @ 0x24258b0
|
|
void Gambit_fn_024258B0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024258B0: ; // 0x24258b0
|
|
/* 024258B0 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 024258B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024258B4 */ return;
|
|
}
|
|
|
|
// fn_024258B8 @ 0x24258b8
|
|
void Gambit_fn_024258B8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024258B8: ; // 0x24258b8
|
|
/* 024258B8 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 024258B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 024258BC */ return;
|
|
}
|
|
|
|
// fn_024258C0 @ 0x24258c0
|
|
void Gambit_fn_024258C0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024258C0: ; // 0x24258c0
|
|
/* 024258C0 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 024258C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024258C4 */ return;
|
|
}
|
|
|
|
// fn_024258C8 @ 0x24258c8
|
|
void Gambit_fn_024258C8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024258C8: ; // 0x24258c8
|
|
/* 024258C8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024258C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024258CC */ return;
|
|
}
|
|
|
|
// fn_024258D0 @ 0x24258d0
|
|
void Gambit_fn_024258D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024258D0: ; // 0x24258d0
|
|
/* 024258D0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024258D4 */ goto L_02425A5C;
|
|
L_02425A5C: ; // 0x2425a5c
|
|
/* 02425A5C */ cpu->r[0] = cpu->lr;
|
|
/* 02425A60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425A60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425A60 */ cpu->r[1] = _t0;
|
|
/* 02425A64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425A64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425A68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02425A68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02425A6C */ cpu->r[30] = cpu->r[3];
|
|
/* 02425A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02425A70 */ cpu->r[31] = cpu->r[4];
|
|
/* 02425A74 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425A74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425A78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425A78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02425A78 */ if (_t5) goto L_02425AE8; else goto L_02425A7C;
|
|
L_02425A7C: ; // 0x2425a7c
|
|
/* 02425A7C */ cpu->r[0] = 0x10090000u;
|
|
/* 02425A80 */ cpu->r[12] = 0x10090000u;
|
|
/* 02425A84 */ cpu->r[0] = cpu->r[0] + 0x00007E14u;
|
|
/* 02425A88 */ cpu->r[12] = cpu->r[12] + 0x00007E34u;
|
|
/* 02425A8C */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02425A8C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02425A90 */ cpu->r[11] = 0x10090000u;
|
|
/* 02425A94 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02425A94 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02425A98 */ cpu->r[11] = cpu->r[11] + 0x00007E24u;
|
|
/* 02425A9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02425AA0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02425AA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02425AA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425AA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02425AA4 */ if (_t10) goto L_02425AD8; else goto L_02425AA8;
|
|
L_02425AA8: ; // 0x2425aa8
|
|
/* 02425AA8 */ cpu->r[10] = 0x10010000u;
|
|
/* 02425AAC */ cpu->r[0] = 0x10010000u;
|
|
/* 02425AB0 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02425AB4 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02425AB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425ABC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02425ABC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02425AC0 */ cpu->r[0] = 0x10010000u;
|
|
/* 02425AC4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02425AC4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02425AC8 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02425ACC */ cpu->r[4] = 0x00000000u;
|
|
/* 02425AD0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02425AD0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02425AD4 */ Gambit_fn_02068798(cpu);
|
|
L_02425AD8: ; // 0x2425ad8
|
|
/* 02425AD8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02425AD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02425ADC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425ADC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02425ADC */ if (_t15) goto L_02425AE8; else goto L_02425AE0;
|
|
L_02425AE0: ; // 0x2425ae0
|
|
/* 02425AE0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425AE4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02425AE8: ; // 0x2425ae8
|
|
/* 02425AE8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02425AE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02425AEC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02425AEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02425AF0 */ cpu->lr = cpu->r[0];
|
|
/* 02425AF4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425AF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02425AF8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425AFC */ return;
|
|
}
|
|
|
|
// fn_024258D8 @ 0x24258d8
|
|
void Gambit_fn_024258D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_024258D8: ; // 0x24258d8
|
|
/* 024258D8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024258DC */ goto L_02068818;
|
|
}
|
|
|
|
// fn_024258E0 @ 0x24258e0
|
|
void Gambit_fn_024258E0(CPUState* cpu) {
|
|
L_024258E0: ; // 0x24258e0
|
|
/* 024258E0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024258E4 */ goto L_02425B00;
|
|
L_02425B00: ; // 0x2425b00
|
|
/* 02425B00 */ return;
|
|
}
|
|
|
|
// fn_024258E8 @ 0x24258e8
|
|
void Gambit_fn_024258E8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024258E8: ; // 0x24258e8
|
|
/* 024258E8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024258EC */ goto L_02425B04;
|
|
L_02425B04: ; // 0x2425b04
|
|
/* 02425B04 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02425B04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425B08 */ return;
|
|
}
|
|
|
|
// fn_024258F0 @ 0x24258f0
|
|
void Gambit_fn_024258F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024258F0: ; // 0x24258f0
|
|
/* 024258F0 */ cpu->r[0] = cpu->lr;
|
|
/* 024258F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024258F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024258F4 */ cpu->r[1] = _t0;
|
|
/* 024258F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024258F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024258FC */ cpu->r[31] = cpu->r[3];
|
|
/* 024258FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425900 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02425900 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02425904 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425904 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02425904 */ if (_t4) goto L_02425908; else goto L_02425918;
|
|
L_02425908: ; // 0x2425908
|
|
/* 02425908 */ cpu->r[3] = 0x00000220u;
|
|
/* 0242590C */ Gambit_fn_02801A78(cpu);
|
|
/* 02425910 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425914 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425914 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02425914 */ if (_t6) goto L_02425968; else goto L_02425918;
|
|
L_02425918: ; // 0x2425918
|
|
/* 02425918 */ cpu->r[4] = 0x10090000u;
|
|
/* 0242591C */ cpu->r[5] = 0x00000000u;
|
|
/* 02425920 */ cpu->r[3] = cpu->r[31];
|
|
/* 02425924 */ cpu->r[4] = cpu->r[4] + 0x00007C18u;
|
|
/* 02425928 */ cpu->r[6] = cpu->r[5];
|
|
/* 0242592C */ Gambit_fn_020B6F60(cpu);
|
|
/* 02425930 */ cpu->r[12] = 0x10090000u;
|
|
/* 02425934 */ cpu->r[11] = 0x10090000u;
|
|
/* 02425938 */ cpu->r[12] = cpu->r[12] + 0x00007E14u;
|
|
/* 0242593C */ cpu->r[0] = 0x10090000u;
|
|
/* 02425940 */ cpu->r[11] = cpu->r[11] + 0x00007C34u;
|
|
/* 02425944 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02425944 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02425948 */ cpu->r[12] = 0x10090000u;
|
|
/* 0242594C */ cpu->r[0] = cpu->r[0] + 0x00007E24u;
|
|
/* 02425950 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02425950 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02425954 */ cpu->r[12] = cpu->r[12] + 0x00007E34u;
|
|
/* 02425958 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02425958 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0242595C */ cpu->r[10] = 0x00000000u;
|
|
/* 02425960 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02425960 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02425964 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02425964 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
L_02425968: ; // 0x2425968
|
|
/* 02425968 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02425968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242596C */ cpu->r[3] = cpu->r[31];
|
|
/* 02425970 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425970 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02425974 */ cpu->lr = cpu->r[0];
|
|
/* 02425978 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0242597C */ return;
|
|
}
|
|
|
|
// fn_024258F4 @ 0x24258f4
|
|
void Gambit_fn_024258F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024258F4: ; // 0x24258f4
|
|
/* 024258F4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024258F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024258F4 */ cpu->r[1] = _t0;
|
|
/* 024258F8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024258F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024258FC */ cpu->r[31] = cpu->r[3];
|
|
/* 024258FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425900 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02425900 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02425904 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425904 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02425904 */ if (_t4) goto L_02425908; else goto L_02425918;
|
|
L_02425908: ; // 0x2425908
|
|
/* 02425908 */ cpu->r[3] = 0x00000220u;
|
|
/* 0242590C */ Gambit_fn_02801A78(cpu);
|
|
/* 02425910 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425914 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425914 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02425914 */ if (_t6) goto L_02425968; else goto L_02425918;
|
|
L_02425918: ; // 0x2425918
|
|
/* 02425918 */ cpu->r[4] = 0x10090000u;
|
|
/* 0242591C */ cpu->r[5] = 0x00000000u;
|
|
/* 02425920 */ cpu->r[3] = cpu->r[31];
|
|
/* 02425924 */ cpu->r[4] = cpu->r[4] + 0x00007C18u;
|
|
/* 02425928 */ cpu->r[6] = cpu->r[5];
|
|
/* 0242592C */ Gambit_fn_020B6F60(cpu);
|
|
/* 02425930 */ cpu->r[12] = 0x10090000u;
|
|
/* 02425934 */ cpu->r[11] = 0x10090000u;
|
|
/* 02425938 */ cpu->r[12] = cpu->r[12] + 0x00007E14u;
|
|
/* 0242593C */ cpu->r[0] = 0x10090000u;
|
|
/* 02425940 */ cpu->r[11] = cpu->r[11] + 0x00007C34u;
|
|
/* 02425944 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02425944 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02425948 */ cpu->r[12] = 0x10090000u;
|
|
/* 0242594C */ cpu->r[0] = cpu->r[0] + 0x00007E24u;
|
|
/* 02425950 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02425950 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02425954 */ cpu->r[12] = cpu->r[12] + 0x00007E34u;
|
|
/* 02425958 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02425958 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0242595C */ cpu->r[10] = 0x00000000u;
|
|
/* 02425960 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02425960 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02425964 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02425964 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
L_02425968: ; // 0x2425968
|
|
/* 02425968 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02425968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242596C */ cpu->r[3] = cpu->r[31];
|
|
/* 02425970 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425970 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02425974 */ cpu->lr = cpu->r[0];
|
|
/* 02425978 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0242597C */ return;
|
|
}
|
|
|
|
// fn_02425980 @ 0x2425980
|
|
void Gambit_fn_02425980(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_020A999C: ; // 0x20a999c
|
|
/* 020A999C */ cpu->r[0] = cpu->lr;
|
|
/* 020A99A0 */ _t0 = cpu->r[1] + 0xFFFFFD28u;
|
|
/* 020A99A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020A99A0 */ cpu->r[1] = _t0;
|
|
/* 020A99A4 */ _t1 = cpu->r[1] + 0x000002D0u;
|
|
/* 020A99A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 020A99A8 */ _t2 = cpu->r[1] + 0x000002D4u;
|
|
/* 020A99A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 020A99AC */ cpu->r[31] = cpu->r[3];
|
|
/* 020A99B0 */ cpu->r[30] = cpu->r[4];
|
|
/* 020A99B4 */ _t3 = cpu->r[1] + 0x000002DCu;
|
|
/* 020A99B4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 020A99B8 */ Gambit_fn_020A8588(cpu);
|
|
/* 020A99BC */ cpu->r[4] = cpu->r[3];
|
|
/* 020A99C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020A99C4 */ Gambit_fn_020A4390(cpu);
|
|
/* 020A99C8 */ cpu->r[4] = cpu->r[30];
|
|
/* 020A99CC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020A99D0 */ Gambit_fn_020A4AE8(cpu);
|
|
/* 020A99D4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 020A99D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020A99DC */ Gambit_fn_020A8300(cpu);
|
|
/* 020A99E0 */ cpu->r[4] = cpu->r[1] + 0x00000214u;
|
|
/* 020A99E4 */ cpu->r[3] = cpu->r[31];
|
|
/* 020A99E8 */ Gambit_fn_020A85C4(cpu);
|
|
/* 020A99EC */ _t4 = cpu->r[1] + 0x000002DCu;
|
|
/* 020A99EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 020A99F0 */ _t5 = cpu->r[1] + 0x000002D4u;
|
|
/* 020A99F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020A99F4 */ cpu->lr = cpu->r[0];
|
|
/* 020A99F8 */ _t6 = cpu->r[1] + 0x000002D0u;
|
|
/* 020A99F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t6);
|
|
/* 020A99FC */ cpu->r[1] = cpu->r[1] + 0x000002D8u;
|
|
/* 020A9A00 */ return;
|
|
L_02425980: ; // 0x2425980
|
|
/* 02425980 */ _t7 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02425980 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425984 */ goto L_020A999C;
|
|
}
|
|
|
|
// fn_02425988 @ 0x2425988
|
|
void Gambit_fn_02425988(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02425988: ; // 0x2425988
|
|
/* 02425988 */ cpu->r[0] = cpu->lr;
|
|
/* 0242598C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0242598C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242598C */ cpu->r[1] = _t0;
|
|
/* 02425990 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02425990 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425994 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425998 */ cpu->r[12] = 0x10090000u;
|
|
/* 0242599C */ cpu->r[4] = cpu->r[31];
|
|
/* 024259A0 */ cpu->r[12] = cpu->r[12] + 0x00007C28u;
|
|
/* 024259A4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024259A8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024259A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024259AC */ cpu->r[0] = 0x10090000u;
|
|
/* 024259B0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024259B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024259B4 */ cpu->r[0] = cpu->r[0] + 0x00007BF0u;
|
|
/* 024259B8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024259BC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024259BC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024259C0 */ Gambit_fn_020A7150(cpu);
|
|
/* 024259C4 */ _t5 = cpu->r[31] + 0x0000021Cu;
|
|
/* 024259C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 024259C8 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024259C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024259CC */ cpu->lr = cpu->r[0];
|
|
/* 024259D0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024259D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024259D4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024259D8 */ return;
|
|
}
|
|
|
|
// fn_0242598C @ 0x242598c
|
|
void Gambit_fn_0242598C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0242598C: ; // 0x242598c
|
|
/* 0242598C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0242598C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242598C */ cpu->r[1] = _t0;
|
|
/* 02425990 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02425990 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425994 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425998 */ cpu->r[12] = 0x10090000u;
|
|
/* 0242599C */ cpu->r[4] = cpu->r[31];
|
|
/* 024259A0 */ cpu->r[12] = cpu->r[12] + 0x00007C28u;
|
|
/* 024259A4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024259A8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024259A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024259AC */ cpu->r[0] = 0x10090000u;
|
|
/* 024259B0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024259B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024259B4 */ cpu->r[0] = cpu->r[0] + 0x00007BF0u;
|
|
/* 024259B8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024259BC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024259BC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024259C0 */ Gambit_fn_020A7150(cpu);
|
|
/* 024259C4 */ _t5 = cpu->r[31] + 0x0000021Cu;
|
|
/* 024259C4 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 024259C8 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024259C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024259CC */ cpu->lr = cpu->r[0];
|
|
/* 024259D0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024259D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024259D4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024259D8 */ return;
|
|
}
|
|
|
|
// fn_024259DC @ 0x24259dc
|
|
void Gambit_fn_024259DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024259DC: ; // 0x24259dc
|
|
/* 024259DC */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 024259E0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024259E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024259E0 */ cpu->r[1] = _t0;
|
|
/* 024259E4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024259E8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024259EC */ _t1 = cpu->r[10] + 0x0000712Cu;
|
|
/* 024259EC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024259EC */ cpu->r[10] = _t1;
|
|
/* 024259F0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024259F4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024259F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024259F8 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024259FC */ cpu->r[8] = 0x101E0000u;
|
|
/* 02425A00 */ _t3 = cpu->r[7] + 0x0000713Cu;
|
|
/* 02425A00 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02425A00 */ cpu->r[7] = _t3;
|
|
/* 02425A04 */ _t4 = cpu->r[8] + 0x00007134u;
|
|
/* 02425A04 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02425A04 */ cpu->r[8] = _t4;
|
|
/* 02425A08 */ cpu->r[0] = 0x00000002u;
|
|
/* 02425A0C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02425A0C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02425A10 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02425A14 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02425A14 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02425A18 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02425A1C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02425A1C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02425A20 */ _t8 = cpu->r[8] + 0x0000714Cu;
|
|
/* 02425A20 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02425A20 */ cpu->r[8] = _t8;
|
|
/* 02425A24 */ _t9 = cpu->r[12] + 0x00007144u;
|
|
/* 02425A24 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02425A24 */ cpu->r[12] = _t9;
|
|
/* 02425A28 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02425A28 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02425A2C */ cpu->r[0] = 0x00000004u;
|
|
/* 02425A30 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02425A30 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02425A34 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02425A38 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02425A38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425A3C */ _t13 = cpu->r[11] + 0x00007154u;
|
|
/* 02425A3C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02425A40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02425A44 */ return;
|
|
}
|
|
|
|
// fn_024259E0 @ 0x24259e0
|
|
void Gambit_fn_024259E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024259E0: ; // 0x24259e0
|
|
/* 024259E0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024259E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024259E0 */ cpu->r[1] = _t0;
|
|
/* 024259E4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024259E8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024259EC */ _t1 = cpu->r[10] + 0x0000712Cu;
|
|
/* 024259EC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024259EC */ cpu->r[10] = _t1;
|
|
/* 024259F0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024259F4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024259F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024259F8 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024259FC */ cpu->r[8] = 0x101E0000u;
|
|
/* 02425A00 */ _t3 = cpu->r[7] + 0x0000713Cu;
|
|
/* 02425A00 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02425A00 */ cpu->r[7] = _t3;
|
|
/* 02425A04 */ _t4 = cpu->r[8] + 0x00007134u;
|
|
/* 02425A04 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02425A04 */ cpu->r[8] = _t4;
|
|
/* 02425A08 */ cpu->r[0] = 0x00000002u;
|
|
/* 02425A0C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02425A0C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02425A10 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02425A14 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02425A14 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02425A18 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02425A1C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02425A1C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02425A20 */ _t8 = cpu->r[8] + 0x0000714Cu;
|
|
/* 02425A20 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02425A20 */ cpu->r[8] = _t8;
|
|
/* 02425A24 */ _t9 = cpu->r[12] + 0x00007144u;
|
|
/* 02425A24 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02425A24 */ cpu->r[12] = _t9;
|
|
/* 02425A28 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02425A28 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02425A2C */ cpu->r[0] = 0x00000004u;
|
|
/* 02425A30 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02425A30 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02425A34 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02425A38 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02425A38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425A3C */ _t13 = cpu->r[11] + 0x00007154u;
|
|
/* 02425A3C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02425A40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02425A44 */ return;
|
|
}
|
|
|
|
// fn_02425A48 @ 0x2425a48
|
|
void Gambit_fn_02425A48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02425A48: ; // 0x2425a48
|
|
/* 02425A48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425A4C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425A4C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02425A4C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02425A4C */ goto L_02425A50;
|
|
L_02425A50: ; // 0x2425a50
|
|
/* 02425A50 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02425A50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02425A54 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425A54 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02425A54 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02425A54 */ goto L_02425A58;
|
|
L_02425A58: ; // 0x2425a58
|
|
/* 02425A58 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02425A5C @ 0x2425a5c
|
|
void Gambit_fn_02425A5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02425A5C: ; // 0x2425a5c
|
|
/* 02425A5C */ cpu->r[0] = cpu->lr;
|
|
/* 02425A60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425A60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425A60 */ cpu->r[1] = _t0;
|
|
/* 02425A64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425A64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425A68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02425A68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02425A6C */ cpu->r[30] = cpu->r[3];
|
|
/* 02425A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02425A70 */ cpu->r[31] = cpu->r[4];
|
|
/* 02425A74 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425A74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425A78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425A78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02425A78 */ if (_t5) goto L_02425AE8; else goto L_02425A7C;
|
|
L_02425A7C: ; // 0x2425a7c
|
|
/* 02425A7C */ cpu->r[0] = 0x10090000u;
|
|
/* 02425A80 */ cpu->r[12] = 0x10090000u;
|
|
/* 02425A84 */ cpu->r[0] = cpu->r[0] + 0x00007E14u;
|
|
/* 02425A88 */ cpu->r[12] = cpu->r[12] + 0x00007E34u;
|
|
/* 02425A8C */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02425A8C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02425A90 */ cpu->r[11] = 0x10090000u;
|
|
/* 02425A94 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02425A94 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02425A98 */ cpu->r[11] = cpu->r[11] + 0x00007E24u;
|
|
/* 02425A9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02425AA0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02425AA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02425AA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425AA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02425AA4 */ if (_t10) goto L_02425AD8; else goto L_02425AA8;
|
|
L_02425AA8: ; // 0x2425aa8
|
|
/* 02425AA8 */ cpu->r[10] = 0x10010000u;
|
|
/* 02425AAC */ cpu->r[0] = 0x10010000u;
|
|
/* 02425AB0 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02425AB4 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02425AB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425ABC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02425ABC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02425AC0 */ cpu->r[0] = 0x10010000u;
|
|
/* 02425AC4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02425AC4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02425AC8 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02425ACC */ cpu->r[4] = 0x00000000u;
|
|
/* 02425AD0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02425AD0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02425AD4 */ Gambit_fn_02068798(cpu);
|
|
L_02425AD8: ; // 0x2425ad8
|
|
/* 02425AD8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02425AD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02425ADC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425ADC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02425ADC */ if (_t15) goto L_02425AE8; else goto L_02425AE0;
|
|
L_02425AE0: ; // 0x2425ae0
|
|
/* 02425AE0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425AE4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02425AE8: ; // 0x2425ae8
|
|
/* 02425AE8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02425AE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02425AEC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02425AEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02425AF0 */ cpu->lr = cpu->r[0];
|
|
/* 02425AF4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425AF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02425AF8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425AFC */ return;
|
|
}
|
|
|
|
// fn_02425A60 @ 0x2425a60
|
|
void Gambit_fn_02425A60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02425A60: ; // 0x2425a60
|
|
/* 02425A60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425A60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425A60 */ cpu->r[1] = _t0;
|
|
/* 02425A64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425A64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425A68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02425A68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02425A6C */ cpu->r[30] = cpu->r[3];
|
|
/* 02425A6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02425A70 */ cpu->r[31] = cpu->r[4];
|
|
/* 02425A74 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425A74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425A78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425A78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02425A78 */ if (_t5) goto L_02425AE8; else goto L_02425A7C;
|
|
L_02425A7C: ; // 0x2425a7c
|
|
/* 02425A7C */ cpu->r[0] = 0x10090000u;
|
|
/* 02425A80 */ cpu->r[12] = 0x10090000u;
|
|
/* 02425A84 */ cpu->r[0] = cpu->r[0] + 0x00007E14u;
|
|
/* 02425A88 */ cpu->r[12] = cpu->r[12] + 0x00007E34u;
|
|
/* 02425A8C */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02425A8C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02425A90 */ cpu->r[11] = 0x10090000u;
|
|
/* 02425A94 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02425A94 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02425A98 */ cpu->r[11] = cpu->r[11] + 0x00007E24u;
|
|
/* 02425A9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02425AA0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02425AA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02425AA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425AA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02425AA4 */ if (_t10) goto L_02425AD8; else goto L_02425AA8;
|
|
L_02425AA8: ; // 0x2425aa8
|
|
/* 02425AA8 */ cpu->r[10] = 0x10010000u;
|
|
/* 02425AAC */ cpu->r[0] = 0x10010000u;
|
|
/* 02425AB0 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02425AB4 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02425AB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425ABC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02425ABC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02425AC0 */ cpu->r[0] = 0x10010000u;
|
|
/* 02425AC4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02425AC4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02425AC8 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02425ACC */ cpu->r[4] = 0x00000000u;
|
|
/* 02425AD0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02425AD0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02425AD4 */ Gambit_fn_02068798(cpu);
|
|
L_02425AD8: ; // 0x2425ad8
|
|
/* 02425AD8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02425AD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02425ADC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425ADC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02425ADC */ if (_t15) goto L_02425AE8; else goto L_02425AE0;
|
|
L_02425AE0: ; // 0x2425ae0
|
|
/* 02425AE0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425AE4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02425AE8: ; // 0x2425ae8
|
|
/* 02425AE8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02425AE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02425AEC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02425AEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02425AF0 */ cpu->lr = cpu->r[0];
|
|
/* 02425AF4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425AF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02425AF8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425AFC */ return;
|
|
}
|
|
|
|
// fn_02425B00 @ 0x2425b00
|
|
void Gambit_fn_02425B00(CPUState* cpu) {
|
|
L_02425B00: ; // 0x2425b00
|
|
/* 02425B00 */ return;
|
|
}
|
|
|
|
// fn_02425B04 @ 0x2425b04
|
|
void Gambit_fn_02425B04(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02425B04: ; // 0x2425b04
|
|
/* 02425B04 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02425B04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425B08 */ return;
|
|
}
|
|
|
|
// fn_02425B0C @ 0x2425b0c
|
|
void Gambit_fn_02425B0C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02425B0C: ; // 0x2425b0c
|
|
/* 02425B0C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02425B0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425B10 */ return;
|
|
}
|
|
|
|
// fn_02425B14 @ 0x2425b14
|
|
void Gambit_fn_02425B14(CPUState* cpu) {
|
|
L_02425B14: ; // 0x2425b14
|
|
/* 02425B14 */ return;
|
|
}
|
|
|
|
// fn_02425B18 @ 0x2425b18
|
|
void Gambit_fn_02425B18(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02425B18: ; // 0x2425b18
|
|
/* 02425B18 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02425B18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425B1C */ return;
|
|
}
|
|
|
|
// fn_02425B20 @ 0x2425b20
|
|
void Gambit_fn_02425B20(CPUState* cpu) {
|
|
L_02425B20: ; // 0x2425b20
|
|
/* 02425B20 */ return;
|
|
}
|
|
|
|
// fn_02425B24 @ 0x2425b24
|
|
void Gambit_fn_02425B24(CPUState* cpu) {
|
|
L_02425B24: ; // 0x2425b24
|
|
/* 02425B24 */ return;
|
|
}
|
|
|
|
// fn_02425B28 @ 0x2425b28
|
|
void Gambit_fn_02425B28(CPUState* cpu) {
|
|
L_02425B28: ; // 0x2425b28
|
|
/* 02425B28 */ return;
|
|
}
|
|
|
|
// fn_02425B2C @ 0x2425b2c
|
|
void Gambit_fn_02425B2C(CPUState* cpu) {
|
|
L_02425B2C: ; // 0x2425b2c
|
|
/* 02425B2C */ return;
|
|
}
|
|
|
|
// fn_02425B30 @ 0x2425b30
|
|
void Gambit_fn_02425B30(CPUState* cpu) {
|
|
L_02425B30: ; // 0x2425b30
|
|
/* 02425B30 */ return;
|
|
}
|
|
|
|
// fn_02425B34 @ 0x2425b34
|
|
void Gambit_fn_02425B34(CPUState* cpu) {
|
|
L_02425B34: ; // 0x2425b34
|
|
/* 02425B34 */ cpu->r[3] = 0x00000001u;
|
|
/* 02425B38 */ return;
|
|
}
|
|
|
|
// fn_02425B3C @ 0x2425b3c
|
|
void Gambit_fn_02425B3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02425B3C: ; // 0x2425b3c
|
|
/* 02425B3C */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02425B3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425B40 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02425B40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02425B44 */ cpu->ctr = cpu->r[0];
|
|
/* 02425B48 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02425B4C @ 0x2425b4c
|
|
void Gambit_fn_02425B4C(CPUState* cpu) {
|
|
L_02425B4C: ; // 0x2425b4c
|
|
/* 02425B4C */ return;
|
|
}
|
|
|
|
// fn_02425B50 @ 0x2425b50
|
|
void Gambit_fn_02425B50(CPUState* cpu) {
|
|
L_02425B50: ; // 0x2425b50
|
|
/* 02425B50 */ cpu->r[3] = 0x00000000u;
|
|
/* 02425B54 */ return;
|
|
}
|
|
|
|
// fn_02425B58 @ 0x2425b58
|
|
void Gambit_fn_02425B58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02425B58: ; // 0x2425b58
|
|
/* 02425B58 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02425B5C */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02425B5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425B5C */ cpu->r[9] = _t0;
|
|
/* 02425B60 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02425B64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02425B68 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02425B6C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425B6C */ _t2 = _t1 & 0x00000001u;
|
|
/* 02425B6C */ if (_t2) goto L_02425B70; else goto L_02425B84;
|
|
L_02425B70: ; // 0x2425b70
|
|
/* 02425B70 */ cpu->r[7] = 0x10090000u;
|
|
/* 02425B74 */ cpu->r[0] = 0x00000001u;
|
|
/* 02425B78 */ cpu->r[7] = cpu->r[7] + 0x00007C08u;
|
|
/* 02425B7C */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02425B7C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425B80 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02425B80 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02425B84: ; // 0x2425b84
|
|
/* 02425B84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02425B88 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425B88 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02425B88 */ if (_t6) goto L_02425B8C; else goto L_02425B94;
|
|
L_02425B8C: ; // 0x2425b8c
|
|
/* 02425B8C */ cpu->r[3] = 0x00000001u;
|
|
/* 02425B90 */ return;
|
|
L_02425B94: ; // 0x2425b94
|
|
/* 02425B94 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02425B98 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02425B98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02425B98 */ cpu->r[7] = _t7;
|
|
/* 02425B9C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02425BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02425BA4 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02425BA8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425BA8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02425BA8 */ if (_t9) goto L_02425BAC; else goto L_02425BC0;
|
|
L_02425BAC: ; // 0x2425bac
|
|
/* 02425BAC */ cpu->r[0] = 0x10090000u;
|
|
/* 02425BB0 */ cpu->r[9] = 0x00000001u;
|
|
/* 02425BB4 */ cpu->r[0] = cpu->r[0] + 0x00007BE0u;
|
|
/* 02425BB8 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02425BB8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02425BBC */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02425BBC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02425BC0: ; // 0x2425bc0
|
|
/* 02425BC0 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02425BC4 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02425BC8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02425BCC */ return;
|
|
}
|
|
|
|
// fn_02425BD0 @ 0x2425bd0
|
|
void Gambit_fn_02425BD0(CPUState* cpu) {
|
|
L_02425BD0: ; // 0x2425bd0
|
|
/* 02425BD0 */ return;
|
|
}
|
|
|
|
// fn_02425BD4 @ 0x2425bd4
|
|
void Gambit_fn_02425BD4(CPUState* cpu) {
|
|
L_02425BD4: ; // 0x2425bd4
|
|
/* 02425BD4 */ return;
|
|
}
|
|
|
|
// fn_02425BD8 @ 0x2425bd8
|
|
void Gambit_fn_02425BD8(CPUState* cpu) {
|
|
L_02425BD8: ; // 0x2425bd8
|
|
/* 02425BD8 */ return;
|
|
}
|
|
|
|
// fn_02425BDC @ 0x2425bdc
|
|
void Gambit_fn_02425BDC(CPUState* cpu) {
|
|
L_02425BDC: ; // 0x2425bdc
|
|
/* 02425BDC */ cpu->r[3] = 0x00000000u;
|
|
/* 02425BE0 */ return;
|
|
}
|
|
|
|
// fn_02425BE4 @ 0x2425be4
|
|
void Gambit_fn_02425BE4(CPUState* cpu) {
|
|
L_02425BE4: ; // 0x2425be4
|
|
/* 02425BE4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02425BE8 */ return;
|
|
}
|
|
|
|
// fn_02425BEC @ 0x2425bec
|
|
void Gambit_fn_02425BEC(CPUState* cpu) {
|
|
L_02425BEC: ; // 0x2425bec
|
|
/* 02425BEC */ return;
|
|
}
|
|
|
|
// fn_02425BF0 @ 0x2425bf0
|
|
void Gambit_fn_02425BF0(CPUState* cpu) {
|
|
L_02425BF0: ; // 0x2425bf0
|
|
/* 02425BF0 */ return;
|
|
}
|
|
|
|
// fn_02425BF4 @ 0x2425bf4
|
|
void Gambit_fn_02425BF4(CPUState* cpu) {
|
|
L_02425BF4: ; // 0x2425bf4
|
|
/* 02425BF4 */ return;
|
|
}
|
|
|
|
// fn_02425BF8 @ 0x2425bf8
|
|
void Gambit_fn_02425BF8(CPUState* cpu) {
|
|
L_02425BF8: ; // 0x2425bf8
|
|
/* 02425BF8 */ return;
|
|
}
|
|
|
|
// fn_02425BFC @ 0x2425bfc
|
|
void Gambit_fn_02425BFC(CPUState* cpu) {
|
|
L_02425BFC: ; // 0x2425bfc
|
|
/* 02425BFC */ return;
|
|
}
|
|
|
|
// fn_02425C00 @ 0x2425c00
|
|
void Gambit_fn_02425C00(CPUState* cpu) {
|
|
L_02425C00: ; // 0x2425c00
|
|
/* 02425C00 */ return;
|
|
}
|
|
|
|
// fn_02425C04 @ 0x2425c04
|
|
void Gambit_fn_02425C04(CPUState* cpu) {
|
|
L_02425C04: ; // 0x2425c04
|
|
/* 02425C04 */ return;
|
|
}
|
|
|
|
// fn_02425C08 @ 0x2425c08
|
|
void Gambit_fn_02425C08(CPUState* cpu) {
|
|
L_02425C08: ; // 0x2425c08
|
|
/* 02425C08 */ return;
|
|
}
|
|
|
|
// fn_02425C0C @ 0x2425c0c
|
|
void Gambit_fn_02425C0C(CPUState* cpu) {
|
|
L_02425C0C: ; // 0x2425c0c
|
|
/* 02425C0C */ return;
|
|
}
|
|
|
|
// fn_02425C10 @ 0x2425c10
|
|
void Gambit_fn_02425C10(CPUState* cpu) {
|
|
L_02425C10: ; // 0x2425c10
|
|
/* 02425C10 */ return;
|
|
}
|
|
|
|
// fn_02425C14 @ 0x2425c14
|
|
void Gambit_fn_02425C14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0200896C: ; // 0x200896c
|
|
/* 0200896C */ cpu->r[0] = cpu->lr;
|
|
/* 02008970 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02008970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02008970 */ cpu->r[1] = _t0;
|
|
/* 02008974 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02008974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02008978 */ cpu->r[31] = cpu->r[3];
|
|
/* 0200897C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0200897C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02008980 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02008980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02008984 */ cpu->r[12] = 0x00000000u;
|
|
/* 02008988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0200898C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0200898C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02008990 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02008990 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02008990 */ if (_t6) goto L_020089B8; else goto L_02008994;
|
|
L_02008994: ; // 0x2008994
|
|
/* 02008994 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02008994 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02008998 */ /* nop */
|
|
/* 0200899C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020089A0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020089A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020089A0 */ if (_t9) goto L_020089A4; else goto L_020089B8;
|
|
L_020089A4: ; // 0x20089a4
|
|
/* 020089A4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020089A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020089A8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020089A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020089AC */ cpu->ctr = cpu->r[0];
|
|
/* 020089B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020089B8: ; // 0x20089b8
|
|
/* 020089B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089BC */ Gambit_fn_020088E4(cpu);
|
|
/* 020089C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089C4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020089C8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020089C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020089CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020089CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020089D0 */ cpu->lr = cpu->r[0];
|
|
/* 020089D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020089D8 */ return;
|
|
L_02425C14: ; // 0x2425c14
|
|
/* 02425C14 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02425C18 */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_02425C1C @ 0x2425c1c
|
|
void Gambit_fn_02425C1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02425C1C: ; // 0x2425c1c
|
|
/* 02425C1C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02425C20 */ goto L_02426DF8;
|
|
L_02426DF8: ; // 0x2426df8
|
|
/* 02426DF8 */ cpu->r[0] = cpu->lr;
|
|
/* 02426DFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02426DFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426DFC */ cpu->r[1] = _t0;
|
|
/* 02426E00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426E00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02426E04 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02426E04 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02426E08 */ cpu->r[30] = cpu->r[3];
|
|
/* 02426E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02426E0C */ cpu->r[31] = cpu->r[4];
|
|
/* 02426E10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02426E10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02426E14 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426E14 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02426E14 */ if (_t5) goto L_02426E84; else goto L_02426E18;
|
|
L_02426E18: ; // 0x2426e18
|
|
/* 02426E18 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02426E1C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02426E20 */ cpu->r[0] = cpu->r[0] + 0xFFFF82E4u;
|
|
/* 02426E24 */ cpu->r[12] = cpu->r[12] + 0xFFFF8304u;
|
|
/* 02426E28 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02426E28 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02426E2C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02426E30 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02426E30 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02426E34 */ cpu->r[11] = cpu->r[11] + 0xFFFF82F4u;
|
|
/* 02426E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02426E3C */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02426E3C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02426E40 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426E40 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02426E40 */ if (_t10) goto L_02426E74; else goto L_02426E44;
|
|
L_02426E44: ; // 0x2426e44
|
|
/* 02426E44 */ cpu->r[10] = 0x10010000u;
|
|
/* 02426E48 */ cpu->r[0] = 0x10010000u;
|
|
/* 02426E4C */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02426E50 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02426E54 */ cpu->r[3] = cpu->r[30];
|
|
/* 02426E58 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02426E58 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02426E5C */ cpu->r[0] = 0x10010000u;
|
|
/* 02426E60 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02426E60 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02426E64 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02426E68 */ cpu->r[4] = 0x00000000u;
|
|
/* 02426E6C */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02426E6C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02426E70 */ Gambit_fn_02068798(cpu);
|
|
L_02426E74: ; // 0x2426e74
|
|
/* 02426E74 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02426E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02426E78 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426E78 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02426E78 */ if (_t15) goto L_02426E84; else goto L_02426E7C;
|
|
L_02426E7C: ; // 0x2426e7c
|
|
/* 02426E7C */ cpu->r[3] = cpu->r[30];
|
|
/* 02426E80 */ Gambit_fn_02801BB0(cpu);
|
|
L_02426E84: ; // 0x2426e84
|
|
/* 02426E84 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02426E84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02426E88 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02426E88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02426E8C */ cpu->lr = cpu->r[0];
|
|
/* 02426E90 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426E90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02426E94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02426E98 */ return;
|
|
}
|
|
|
|
// fn_02425C24 @ 0x2425c24
|
|
void Gambit_fn_02425C24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_02425C24: ; // 0x2425c24
|
|
/* 02425C24 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02425C28 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02425C2C @ 0x2425c2c
|
|
void Gambit_fn_02425C2C(CPUState* cpu) {
|
|
L_02425C2C: ; // 0x2425c2c
|
|
/* 02425C2C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02425C30 */ goto L_02426E9C;
|
|
L_02426E9C: ; // 0x2426e9c
|
|
/* 02426E9C */ return;
|
|
}
|
|
|
|
// fn_02425C34 @ 0x2425c34
|
|
void Gambit_fn_02425C34(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02425C34: ; // 0x2425c34
|
|
/* 02425C34 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02425C38 */ goto L_02426EA0;
|
|
L_02426EA0: ; // 0x2426ea0
|
|
/* 02426EA0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02426EA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02426EA4 */ return;
|
|
}
|
|
|
|
// fn_02425C3C @ 0x2425c3c
|
|
void Gambit_fn_02425C3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_02425C3C: ; // 0x2425c3c
|
|
/* 02425C3C */ cpu->r[0] = cpu->lr;
|
|
/* 02425C40 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425C40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425C40 */ cpu->r[1] = _t0;
|
|
/* 02425C44 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425C44 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425C48 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425C4C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02425C4C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02425C50 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425C50 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02425C50 */ if (_t4) goto L_02425C54; else goto L_02425C64;
|
|
L_02425C54: ; // 0x2425c54
|
|
/* 02425C54 */ cpu->r[3] = 0x00000244u;
|
|
/* 02425C58 */ Gambit_fn_02801A78(cpu);
|
|
/* 02425C5C */ cpu->r[31] = cpu->r[3];
|
|
/* 02425C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425C60 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425C60 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02425C60 */ if (_t6) goto L_02425CF8; else goto L_02425C64;
|
|
L_02425C64: ; // 0x2425c64
|
|
/* 02425C64 */ cpu->r[4] = 0x10090000u;
|
|
/* 02425C68 */ cpu->r[3] = cpu->r[31];
|
|
/* 02425C6C */ cpu->r[5] = 0x00000004u;
|
|
/* 02425C70 */ cpu->r[4] = cpu->r[4] + 0x00007F3Cu;
|
|
/* 02425C74 */ cpu->r[6] = 0x00000000u;
|
|
/* 02425C78 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02425C7C */ cpu->r[9] = 0x100A0000u;
|
|
/* 02425C80 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02425C84 */ cpu->r[9] = cpu->r[9] + 0xFFFF82E4u;
|
|
/* 02425C88 */ cpu->r[0] = cpu->r[0] + 0xFFFF8104u;
|
|
/* 02425C8C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02425C90 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02425C90 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 02425C94 */ cpu->r[11] = cpu->r[11] + 0xFFFF8304u;
|
|
/* 02425C98 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02425C98 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02425C9C */ cpu->r[0] = 0x00000000u;
|
|
/* 02425CA0 */ _t9 = cpu->r[31] + 0x000001C8u;
|
|
/* 02425CA0 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02425CA4 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02425CA8 */ _t10 = cpu->r[31] + 0x00000220u;
|
|
/* 02425CA8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02425CAC */ cpu->r[10] = cpu->r[10] + 0xFFFF82F4u;
|
|
/* 02425CB0 */ _t11 = cpu->r[31] + 0x00000225u;
|
|
/* 02425CB0 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 02425CB4 */ _t12 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02425CB4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02425CB8 */ _t13 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02425CB8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02425CBC */ _t14 = cpu->r[31] + 0x00000238u;
|
|
/* 02425CBC */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02425CC0 */ _t15 = cpu->r[31] + 0x00000240u;
|
|
/* 02425CC0 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02425CC4 */ cpu->r[10] = cpu->r[31] + 0x00000224u;
|
|
/* 02425CC8 */ _t16 = cpu->r[31] + 0x00000234u;
|
|
/* 02425CC8 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02425CCC */ cpu->r[12] = 0x00000003u;
|
|
/* 02425CD0 */ _t17 = cpu->r[31] + 0x00000224u;
|
|
/* 02425CD0 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
/* 02425CD4 */ cpu->ctr = cpu->r[12];
|
|
/* 02425CD8 */ _t18 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02425CD8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_02425CDC: ; // 0x2425cdc
|
|
/* 02425CDC */ _t19 = cpu->r[10] + 0x00000004u;
|
|
/* 02425CDC */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 02425CDC */ cpu->r[10] = _t19;
|
|
/* 02425CE0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02425CE0 */ _t20 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02425CE0 */ _t21 = _t20 >> (0x00000002u & 31u);
|
|
/* 02425CE0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02425CE0 */ if (_t22) goto L_02425CDC; else goto L_02425CE4;
|
|
L_02425CE4: ; // 0x2425ce4
|
|
/* 02425CE4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02425CE8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02425CEC */ cpu->r[5] = 0x00000001u;
|
|
/* 02425CF0 */ Gambit_fn_0245F0A8(cpu);
|
|
/* 02425CF4 */ _t23 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02425CF4 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
L_02425CF8: ; // 0x2425cf8
|
|
/* 02425CF8 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02425CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02425CFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02425D00 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425D00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02425D04 */ cpu->lr = cpu->r[0];
|
|
/* 02425D08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425D0C */ return;
|
|
}
|
|
|
|
// fn_02425C40 @ 0x2425c40
|
|
void Gambit_fn_02425C40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_02425C40: ; // 0x2425c40
|
|
/* 02425C40 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425C40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425C40 */ cpu->r[1] = _t0;
|
|
/* 02425C44 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425C44 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425C48 */ cpu->r[31] = cpu->r[3];
|
|
/* 02425C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425C4C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02425C4C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02425C50 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425C50 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02425C50 */ if (_t4) goto L_02425C54; else goto L_02425C64;
|
|
L_02425C54: ; // 0x2425c54
|
|
/* 02425C54 */ cpu->r[3] = 0x00000244u;
|
|
/* 02425C58 */ Gambit_fn_02801A78(cpu);
|
|
/* 02425C5C */ cpu->r[31] = cpu->r[3];
|
|
/* 02425C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02425C60 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425C60 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02425C60 */ if (_t6) goto L_02425CF8; else goto L_02425C64;
|
|
L_02425C64: ; // 0x2425c64
|
|
/* 02425C64 */ cpu->r[4] = 0x10090000u;
|
|
/* 02425C68 */ cpu->r[3] = cpu->r[31];
|
|
/* 02425C6C */ cpu->r[5] = 0x00000004u;
|
|
/* 02425C70 */ cpu->r[4] = cpu->r[4] + 0x00007F3Cu;
|
|
/* 02425C74 */ cpu->r[6] = 0x00000000u;
|
|
/* 02425C78 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02425C7C */ cpu->r[9] = 0x100A0000u;
|
|
/* 02425C80 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02425C84 */ cpu->r[9] = cpu->r[9] + 0xFFFF82E4u;
|
|
/* 02425C88 */ cpu->r[0] = cpu->r[0] + 0xFFFF8104u;
|
|
/* 02425C8C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02425C90 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02425C90 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]);
|
|
/* 02425C94 */ cpu->r[11] = cpu->r[11] + 0xFFFF8304u;
|
|
/* 02425C98 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02425C98 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02425C9C */ cpu->r[0] = 0x00000000u;
|
|
/* 02425CA0 */ _t9 = cpu->r[31] + 0x000001C8u;
|
|
/* 02425CA0 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02425CA4 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02425CA8 */ _t10 = cpu->r[31] + 0x00000220u;
|
|
/* 02425CA8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02425CAC */ cpu->r[10] = cpu->r[10] + 0xFFFF82F4u;
|
|
/* 02425CB0 */ _t11 = cpu->r[31] + 0x00000225u;
|
|
/* 02425CB0 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 02425CB4 */ _t12 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02425CB4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02425CB8 */ _t13 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02425CB8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02425CBC */ _t14 = cpu->r[31] + 0x00000238u;
|
|
/* 02425CBC */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02425CC0 */ _t15 = cpu->r[31] + 0x00000240u;
|
|
/* 02425CC0 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02425CC4 */ cpu->r[10] = cpu->r[31] + 0x00000224u;
|
|
/* 02425CC8 */ _t16 = cpu->r[31] + 0x00000234u;
|
|
/* 02425CC8 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02425CCC */ cpu->r[12] = 0x00000003u;
|
|
/* 02425CD0 */ _t17 = cpu->r[31] + 0x00000224u;
|
|
/* 02425CD0 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
/* 02425CD4 */ cpu->ctr = cpu->r[12];
|
|
/* 02425CD8 */ _t18 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02425CD8 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
L_02425CDC: ; // 0x2425cdc
|
|
/* 02425CDC */ _t19 = cpu->r[10] + 0x00000004u;
|
|
/* 02425CDC */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 02425CDC */ cpu->r[10] = _t19;
|
|
/* 02425CE0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02425CE0 */ _t20 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02425CE0 */ _t21 = _t20 >> (0x00000002u & 31u);
|
|
/* 02425CE0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02425CE0 */ if (_t22) goto L_02425CDC; else goto L_02425CE4;
|
|
L_02425CE4: ; // 0x2425ce4
|
|
/* 02425CE4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02425CE8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02425CEC */ cpu->r[5] = 0x00000001u;
|
|
/* 02425CF0 */ Gambit_fn_0245F0A8(cpu);
|
|
/* 02425CF4 */ _t23 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02425CF4 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]);
|
|
L_02425CF8: ; // 0x2425cf8
|
|
/* 02425CF8 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02425CF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02425CFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02425D00 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425D00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02425D04 */ cpu->lr = cpu->r[0];
|
|
/* 02425D08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425D0C */ return;
|
|
}
|
|
|
|
// fn_02425D10 @ 0x2425d10
|
|
void Gambit_fn_02425D10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_02425D10: ; // 0x2425d10
|
|
/* 02425D10 */ cpu->r[0] = cpu->lr;
|
|
/* 02425D14 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02425D14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425D14 */ cpu->r[1] = _t0;
|
|
/* 02425D18 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02425D18 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02425D1C */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02425D1C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02425D20 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02425D20 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02425D24 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02425D28 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02425D28 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02425D2C */ _t5 = cpu->r[12] + 0x00001344u;
|
|
/* 02425D2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425D30 */ _t6 = cpu->r[12] + 0x00000010u;
|
|
/* 02425D30 */ cpu->r[29] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425D34 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425D38 */ cpu->r[3] = cpu->r[29];
|
|
/* 02425D3C */ Gambit_fn_0201A440(cpu);
|
|
/* 02425D40 */ cpu->r[31] = 0x10090000u;
|
|
/* 02425D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425D48 */ cpu->r[31] = cpu->r[31] + 0x00007EBCu;
|
|
/* 02425D4C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425D4C */ _t8 = _t7 & 0x00000001u;
|
|
/* 02425D4C */ if (_t8) goto L_02425D50; else goto L_02425D94;
|
|
L_02425D50: ; // 0x2425d50
|
|
/* 02425D50 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425D50 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02425D54 */ cpu->r[29] = 0x10090000u;
|
|
/* 02425D58 */ cpu->r[29] = cpu->r[29] + 0x00007F54u;
|
|
/* 02425D5C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425D60 */ _t10 = cpu->r[30] + 0x00000238u;
|
|
/* 02425D60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425D64 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425D68 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02425D68 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02425D6C */ Gambit_fn_027ED798(cpu);
|
|
/* 02425D70 */ _t12 = cpu->r[30] + 0x0000023Cu;
|
|
/* 02425D70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425D74 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425D78 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425D78 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 02425D7C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425D80 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02425D80 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02425D84 */ Gambit_fn_027ED798(cpu);
|
|
/* 02425D88 */ cpu->r[0] = 0x00000258u;
|
|
/* 02425D8C */ _t15 = cpu->r[30] + 0x00000240u;
|
|
/* 02425D8C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02425D90 */ goto L_02425E34;
|
|
L_02425D94: ; // 0x2425d94
|
|
/* 02425D94 */ cpu->r[4] = cpu->r[3];
|
|
/* 02425D98 */ cpu->r[3] = cpu->r[29];
|
|
/* 02425D9C */ Gambit_fn_0201A710(cpu);
|
|
/* 02425DA0 */ cpu->r[10] = 0x10090000u;
|
|
/* 02425DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425DA8 */ cpu->r[10] = cpu->r[10] + 0x00007F58u;
|
|
/* 02425DAC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425DAC */ _t17 = _t16 & 0x00000001u;
|
|
/* 02425DAC */ if (_t17) goto L_02425DD4; else goto L_02425DB0;
|
|
L_02425DB0: ; // 0x2425db0
|
|
/* 02425DB0 */ cpu->r[9] = 0x10090000u;
|
|
/* 02425DB4 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02425DB4 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 02425DB8 */ cpu->r[4] = 0x00000002u;
|
|
/* 02425DBC */ _t19 = cpu->r[9] + 0x00007F4Cu;
|
|
/* 02425DBC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02425DC0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02425DC4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425DC8 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 02425DC8 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 02425DCC */ Gambit_fn_027ED914(cpu);
|
|
/* 02425DD0 */ goto L_02425DF4;
|
|
L_02425DD4: ; // 0x2425dd4
|
|
/* 02425DD4 */ cpu->r[8] = 0x10090000u;
|
|
/* 02425DD8 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425DD8 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 02425DDC */ cpu->r[4] = 0x00000002u;
|
|
/* 02425DE0 */ _t22 = cpu->r[8] + 0x00007F50u;
|
|
/* 02425DE0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02425DE4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02425DE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425DEC */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 02425DEC */ rbrew_write32(cpu->mem, _t23, cpu->r[10]);
|
|
/* 02425DF0 */ Gambit_fn_027ED914(cpu);
|
|
L_02425DF4: ; // 0x2425df4
|
|
/* 02425DF4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425DF4 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 02425DF8 */ cpu->r[29] = 0x10090000u;
|
|
/* 02425DFC */ cpu->r[29] = cpu->r[29] + 0x00007F54u;
|
|
/* 02425E00 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425E04 */ _t25 = cpu->r[30] + 0x00000238u;
|
|
/* 02425E04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02425E08 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425E0C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02425E0C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02425E10 */ Gambit_fn_027ED798(cpu);
|
|
/* 02425E14 */ _t27 = cpu->r[30] + 0x0000023Cu;
|
|
/* 02425E14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02425E18 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425E1C */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425E1C */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 02425E20 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425E24 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 02425E24 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 02425E28 */ Gambit_fn_027ED798(cpu);
|
|
/* 02425E2C */ cpu->r[0] = 0x00000258u;
|
|
/* 02425E30 */ _t30 = cpu->r[30] + 0x00000240u;
|
|
/* 02425E30 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_02425E34: ; // 0x2425e34
|
|
/* 02425E34 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 02425E34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02425E38 */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 02425E38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02425E3C */ _t33 = cpu->r[1] + 0x00000028u;
|
|
/* 02425E3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02425E40 */ cpu->lr = cpu->r[0];
|
|
/* 02425E44 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02425E44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02425E48 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02425E4C */ return;
|
|
}
|
|
|
|
// fn_02425D14 @ 0x2425d14
|
|
void Gambit_fn_02425D14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_02425D14: ; // 0x2425d14
|
|
/* 02425D14 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02425D14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425D14 */ cpu->r[1] = _t0;
|
|
/* 02425D18 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02425D18 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]);
|
|
/* 02425D1C */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02425D1C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02425D20 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02425D20 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02425D24 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02425D28 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02425D28 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02425D2C */ _t5 = cpu->r[12] + 0x00001344u;
|
|
/* 02425D2C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02425D30 */ _t6 = cpu->r[12] + 0x00000010u;
|
|
/* 02425D30 */ cpu->r[29] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02425D34 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425D38 */ cpu->r[3] = cpu->r[29];
|
|
/* 02425D3C */ Gambit_fn_0201A440(cpu);
|
|
/* 02425D40 */ cpu->r[31] = 0x10090000u;
|
|
/* 02425D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425D48 */ cpu->r[31] = cpu->r[31] + 0x00007EBCu;
|
|
/* 02425D4C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425D4C */ _t8 = _t7 & 0x00000001u;
|
|
/* 02425D4C */ if (_t8) goto L_02425D50; else goto L_02425D94;
|
|
L_02425D50: ; // 0x2425d50
|
|
/* 02425D50 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425D50 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02425D54 */ cpu->r[29] = 0x10090000u;
|
|
/* 02425D58 */ cpu->r[29] = cpu->r[29] + 0x00007F54u;
|
|
/* 02425D5C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425D60 */ _t10 = cpu->r[30] + 0x00000238u;
|
|
/* 02425D60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425D64 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425D68 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02425D68 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02425D6C */ Gambit_fn_027ED798(cpu);
|
|
/* 02425D70 */ _t12 = cpu->r[30] + 0x0000023Cu;
|
|
/* 02425D70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425D74 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425D78 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425D78 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 02425D7C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425D80 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02425D80 */ rbrew_write32(cpu->mem, _t14, cpu->r[29]);
|
|
/* 02425D84 */ Gambit_fn_027ED798(cpu);
|
|
/* 02425D88 */ cpu->r[0] = 0x00000258u;
|
|
/* 02425D8C */ _t15 = cpu->r[30] + 0x00000240u;
|
|
/* 02425D8C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02425D90 */ goto L_02425E34;
|
|
L_02425D94: ; // 0x2425d94
|
|
/* 02425D94 */ cpu->r[4] = cpu->r[3];
|
|
/* 02425D98 */ cpu->r[3] = cpu->r[29];
|
|
/* 02425D9C */ Gambit_fn_0201A710(cpu);
|
|
/* 02425DA0 */ cpu->r[10] = 0x10090000u;
|
|
/* 02425DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425DA8 */ cpu->r[10] = cpu->r[10] + 0x00007F58u;
|
|
/* 02425DAC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425DAC */ _t17 = _t16 & 0x00000001u;
|
|
/* 02425DAC */ if (_t17) goto L_02425DD4; else goto L_02425DB0;
|
|
L_02425DB0: ; // 0x2425db0
|
|
/* 02425DB0 */ cpu->r[9] = 0x10090000u;
|
|
/* 02425DB4 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02425DB4 */ rbrew_write32(cpu->mem, _t18, cpu->r[31]);
|
|
/* 02425DB8 */ cpu->r[4] = 0x00000002u;
|
|
/* 02425DBC */ _t19 = cpu->r[9] + 0x00007F4Cu;
|
|
/* 02425DBC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t19);
|
|
/* 02425DC0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02425DC4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425DC8 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 02425DC8 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]);
|
|
/* 02425DCC */ Gambit_fn_027ED914(cpu);
|
|
/* 02425DD0 */ goto L_02425DF4;
|
|
L_02425DD4: ; // 0x2425dd4
|
|
/* 02425DD4 */ cpu->r[8] = 0x10090000u;
|
|
/* 02425DD8 */ _t21 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425DD8 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]);
|
|
/* 02425DDC */ cpu->r[4] = 0x00000002u;
|
|
/* 02425DE0 */ _t22 = cpu->r[8] + 0x00007F50u;
|
|
/* 02425DE0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02425DE4 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02425DE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02425DEC */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 02425DEC */ rbrew_write32(cpu->mem, _t23, cpu->r[10]);
|
|
/* 02425DF0 */ Gambit_fn_027ED914(cpu);
|
|
L_02425DF4: ; // 0x2425df4
|
|
/* 02425DF4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425DF4 */ rbrew_write32(cpu->mem, _t24, cpu->r[31]);
|
|
/* 02425DF8 */ cpu->r[29] = 0x10090000u;
|
|
/* 02425DFC */ cpu->r[29] = cpu->r[29] + 0x00007F54u;
|
|
/* 02425E00 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425E04 */ _t25 = cpu->r[30] + 0x00000238u;
|
|
/* 02425E04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02425E08 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425E0C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02425E0C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02425E10 */ Gambit_fn_027ED798(cpu);
|
|
/* 02425E14 */ _t27 = cpu->r[30] + 0x0000023Cu;
|
|
/* 02425E14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02425E18 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425E1C */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425E1C */ rbrew_write32(cpu->mem, _t28, cpu->r[31]);
|
|
/* 02425E20 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425E24 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 02425E24 */ rbrew_write32(cpu->mem, _t29, cpu->r[29]);
|
|
/* 02425E28 */ Gambit_fn_027ED798(cpu);
|
|
/* 02425E2C */ cpu->r[0] = 0x00000258u;
|
|
/* 02425E30 */ _t30 = cpu->r[30] + 0x00000240u;
|
|
/* 02425E30 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]);
|
|
L_02425E34: ; // 0x2425e34
|
|
/* 02425E34 */ _t31 = cpu->r[1] + 0x00000024u;
|
|
/* 02425E34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02425E38 */ _t32 = cpu->r[1] + 0x00000034u;
|
|
/* 02425E38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02425E3C */ _t33 = cpu->r[1] + 0x00000028u;
|
|
/* 02425E3C */ cpu->r[30] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02425E40 */ cpu->lr = cpu->r[0];
|
|
/* 02425E44 */ _t34 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02425E44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02425E48 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02425E4C */ return;
|
|
}
|
|
|
|
// fn_02425E60 @ 0x2425e60
|
|
void Gambit_fn_02425E60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02425E60: ; // 0x2425e60
|
|
/* 02425E60 */ _t0 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02425E60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425E64 */ goto L_0245F828;
|
|
L_0245F828: ; // 0x245f828
|
|
/* 0245F828 */ cpu->r[0] = cpu->lr;
|
|
/* 0245F82C */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0245F82C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0245F82C */ cpu->r[1] = _t1;
|
|
/* 0245F830 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F830 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0245F834 */ cpu->r[31] = cpu->r[3];
|
|
/* 0245F838 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F838 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0245F83C */ _t4 = cpu->r[31] + 0x00000010u;
|
|
/* 0245F83C */ cpu->r[9] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0245F840 */ cpu->r[11] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0245F840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0245F844 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0245F844 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0245F844 */ if (_t6) goto L_0245F894; else goto L_0245F848;
|
|
L_0245F848: ; // 0x245f848
|
|
/* 0245F848 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0245F84C */ cpu->r[0] = 0x100A0000u;
|
|
/* 0245F850 */ _t7 = cpu->r[12] + 0x00002968u;
|
|
/* 0245F850 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 0245F854 */ cpu->r[0] = cpu->r[0] + 0x000028B4u;
|
|
/* 0245F858 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 0245F858 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0245F85C */ cpu->r[10] = 0x100A0000u;
|
|
/* 0245F860 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0245F860 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 0245F864 */ cpu->r[10] = cpu->r[10] + 0x000029E0u;
|
|
/* 0245F868 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0245F86C */ cpu->r[4] = 0x00000004u;
|
|
/* 0245F870 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0245F870 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]);
|
|
/* 0245F874 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0245F878 */ cpu->r[0] = 0x00000001u;
|
|
/* 0245F87C */ _t11 = cpu->r[31] + 0x00000008u;
|
|
/* 0245F87C */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0245F880 */ _t12 = cpu->r[31] + 0x00000024u;
|
|
/* 0245F880 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 0245F884 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0245F888 */ _t13 = cpu->r[8] + 0x000001ACu;
|
|
/* 0245F888 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0245F88C */ cpu->r[4] = cpu->r[4] + 0x00007A5Cu;
|
|
/* 0245F890 */ Gambit_fn_027B70F0(cpu);
|
|
L_0245F894: ; // 0x245f894
|
|
/* 0245F894 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0245F894 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0245F898 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0245F898 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0245F89C */ cpu->lr = cpu->r[0];
|
|
/* 0245F8A0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0245F8A4 */ return;
|
|
}
|
|
|
|
// fn_02425E68 @ 0x2425e68
|
|
void Gambit_fn_02425E68(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02425E68: ; // 0x2425e68
|
|
/* 02425E68 */ _t0 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02425E68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02425E6C */ _t1 = cpu->r[12] + 0x00000024u;
|
|
/* 02425E6C */ cpu->r[3] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02425E70 */ return;
|
|
}
|
|
|
|
// fn_02425E74 @ 0x2425e74
|
|
void Gambit_fn_02425E74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02425E74: ; // 0x2425e74
|
|
/* 02425E74 */ cpu->r[0] = cpu->lr;
|
|
/* 02425E78 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425E78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425E78 */ cpu->r[1] = _t0;
|
|
/* 02425E7C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02425E7C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02425E80 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425E80 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02425E84 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425E88 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425E88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425E8C */ _t4 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02425E8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425E90 */ cpu->r[31] = 0x00000000u;
|
|
/* 02425E94 */ Gambit_fn_0245F8A8(cpu);
|
|
/* 02425E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425E9C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425E9C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02425E9C */ if (_t6) goto L_02425EB0; else goto L_02425EA0;
|
|
L_02425EA0: ; // 0x2425ea0
|
|
/* 02425EA0 */ _t7 = cpu->r[30] + 0x00000224u;
|
|
/* 02425EA0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02425EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02425EA8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425EA8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02425EA8 */ if (_t9) goto L_02425EB0; else goto L_02425EAC;
|
|
L_02425EAC: ; // 0x2425eac
|
|
/* 02425EAC */ cpu->r[31] = 0x00000001u;
|
|
L_02425EB0: ; // 0x2425eb0
|
|
/* 02425EB0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02425EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425EB4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02425EB8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425EB8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425EBC */ cpu->lr = cpu->r[0];
|
|
/* 02425EC0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02425EC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425EC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425EC8 */ return;
|
|
}
|
|
|
|
// fn_02425E78 @ 0x2425e78
|
|
void Gambit_fn_02425E78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02425E78: ; // 0x2425e78
|
|
/* 02425E78 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02425E78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425E78 */ cpu->r[1] = _t0;
|
|
/* 02425E7C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02425E7C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02425E80 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425E80 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02425E84 */ cpu->r[30] = cpu->r[3];
|
|
/* 02425E88 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02425E88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02425E8C */ _t4 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02425E8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02425E90 */ cpu->r[31] = 0x00000000u;
|
|
/* 02425E94 */ Gambit_fn_0245F8A8(cpu);
|
|
/* 02425E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02425E9C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425E9C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02425E9C */ if (_t6) goto L_02425EB0; else goto L_02425EA0;
|
|
L_02425EA0: ; // 0x2425ea0
|
|
/* 02425EA0 */ _t7 = cpu->r[30] + 0x00000224u;
|
|
/* 02425EA0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02425EA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02425EA8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425EA8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02425EA8 */ if (_t9) goto L_02425EB0; else goto L_02425EAC;
|
|
L_02425EAC: ; // 0x2425eac
|
|
/* 02425EAC */ cpu->r[31] = 0x00000001u;
|
|
L_02425EB0: ; // 0x2425eb0
|
|
/* 02425EB0 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02425EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425EB4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02425EB8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425EB8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425EBC */ cpu->lr = cpu->r[0];
|
|
/* 02425EC0 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02425EC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425EC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02425EC8 */ return;
|
|
}
|
|
|
|
// fn_02425ED0 @ 0x2425ed0
|
|
void Gambit_fn_02425ED0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_02425ED0: ; // 0x2425ed0
|
|
/* 02425ED0 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02425ED0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425ED0 */ cpu->r[1] = _t0;
|
|
/* 02425ED4 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02425ED4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02425ED8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02425ED8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02425EDC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425EDC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02425EE0 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 02425EE0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02425EE4 */ cpu->r[29] = cpu->r[3];
|
|
/* 02425EE8 */ _t5 = cpu->r[29] + 0x00000224u;
|
|
/* 02425EE8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02425EEC */ cpu->r[31] = cpu->r[5];
|
|
/* 02425EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02425EF4 */ cpu->r[30] = cpu->r[4];
|
|
/* 02425EF8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425EF8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02425EF8 */ if (_t7) goto L_02425F0C; else goto L_02425EFC;
|
|
L_02425EFC: ; // 0x2425efc
|
|
/* 02425EFC */ _t8 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02425EFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02425F00 */ _t9 = cpu->r[3] + 0x00000028u;
|
|
/* 02425F00 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02425F04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]);
|
|
/* 02425F08 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425F08 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02425F08 */ if (_t11) goto L_02425F48; else goto L_02425F0C;
|
|
L_02425F0C: ; // 0x2425f0c
|
|
/* 02425F0C */ cpu->r[11] = 0x10090000u;
|
|
/* 02425F10 */ cpu->r[8] = 0x10090000u;
|
|
/* 02425F14 */ cpu->r[12] = 0x10090000u;
|
|
/* 02425F18 */ cpu->r[11] = cpu->r[11] + 0x00007EBCu;
|
|
/* 02425F1C */ _t12 = cpu->r[8] + 0x00007F4Cu;
|
|
/* 02425F1C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 02425F20 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425F24 */ cpu->r[12] = cpu->r[12] + 0x00007F64u;
|
|
/* 02425F28 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425F28 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 02425F2C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425F30 */ cpu->r[3] = cpu->r[29];
|
|
/* 02425F34 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02425F34 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 02425F38 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02425F3C */ cpu->r[0] = 0x00000001u;
|
|
/* 02425F40 */ _t15 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02425F40 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02425F44 */ _t16 = cpu->r[29] + 0x00000224u;
|
|
/* 02425F44 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[0]);
|
|
L_02425F48: ; // 0x2425f48
|
|
/* 02425F48 */ cpu->r[5] = cpu->r[31];
|
|
/* 02425F4C */ cpu->r[4] = cpu->r[30];
|
|
/* 02425F50 */ Gambit_fn_0245F8DC(cpu);
|
|
/* 02425F54 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02425F54 */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02425F58 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 02425F58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02425F5C */ _t19 = cpu->r[1] + 0x00000018u;
|
|
/* 02425F5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02425F60 */ cpu->lr = cpu->r[0];
|
|
/* 02425F64 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425F64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02425F68 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02425F6C */ return;
|
|
}
|
|
|
|
// fn_02425F74 @ 0x2425f74
|
|
void Gambit_fn_02425F74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02425F74: ; // 0x2425f74
|
|
/* 02425F74 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02425F74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02425F74 */ cpu->r[1] = _t0;
|
|
/* 02425F78 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02425F78 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02425F7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02425F80 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425F80 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02425F84 */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 02425F84 */ cpu->r[10] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02425F88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02425F8C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02425F8C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02425F8C */ if (_t5) goto L_02425FC8; else goto L_02425F90;
|
|
L_02425F90: ; // 0x2425f90
|
|
/* 02425F90 */ cpu->r[12] = 0x10090000u;
|
|
/* 02425F94 */ cpu->r[0] = 0x10090000u;
|
|
/* 02425F98 */ cpu->r[9] = 0x10090000u;
|
|
/* 02425F9C */ cpu->r[12] = cpu->r[12] + 0x00007EBCu;
|
|
/* 02425FA0 */ cpu->r[0] = cpu->r[0] + 0x00007F74u;
|
|
/* 02425FA4 */ _t6 = cpu->r[9] + 0x00007F4Cu;
|
|
/* 02425FA4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02425FA8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02425FAC */ cpu->r[3] = cpu->r[31];
|
|
/* 02425FB0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02425FB0 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02425FB4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02425FB8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02425FB8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02425FBC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02425FC0 */ cpu->r[11] = 0x00000000u;
|
|
/* 02425FC4 */ _t9 = cpu->r[31] + 0x00000224u;
|
|
/* 02425FC4 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[11]);
|
|
L_02425FC8: ; // 0x2425fc8
|
|
/* 02425FC8 */ _t10 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02425FC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02425FCC */ Gambit_fn_0245FC68(cpu);
|
|
/* 02425FD0 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02425FD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02425FD4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02425FD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02425FD8 */ cpu->lr = cpu->r[0];
|
|
/* 02425FDC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02425FE0 */ return;
|
|
}
|
|
|
|
// fn_02425FFC @ 0x2425ffc
|
|
void Gambit_fn_02425FFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45;
|
|
|
|
L_02425FFC: ; // 0x2425ffc
|
|
/* 02425FFC */ _t0 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02425FFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02426000 */ goto L_024600F4;
|
|
L_024600F4: ; // 0x24600f4
|
|
/* 024600F4 */ cpu->r[0] = cpu->lr;
|
|
/* 024600F8 */ _t1 = cpu->r[1] + 0xFFFFFB60u;
|
|
/* 024600F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024600F8 */ cpu->r[1] = _t1;
|
|
/* 024600FC */ _t2 = cpu->r[1] + 0x00000494u;
|
|
/* 024600FC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02460100 */ _t3 = cpu->r[1] + 0x00000498u;
|
|
/* 02460100 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02460104 */ _t4 = cpu->r[1] + 0x0000049Cu;
|
|
/* 02460104 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02460108 */ cpu->r[30] = cpu->r[3];
|
|
/* 0246010C */ _t5 = cpu->r[1] + 0x000004A4u;
|
|
/* 0246010C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02460110 */ _t6 = cpu->r[30] + 0x00000010u;
|
|
/* 02460110 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02460114 */ cpu->r[11] = rbrew_rlwinm(cpu->r[10], 0x0000001Bu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02460114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02460118 */ cpu->r[31] = cpu->r[4];
|
|
/* 0246011C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0246011C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0246011C */ if (_t8) goto L_0246015C; else goto L_02460120;
|
|
L_02460120: ; // 0x2460120
|
|
/* 02460120 */ Gambit_fn_027E3F5C(cpu);
|
|
/* 02460124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02460128 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460128 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02460128 */ if (_t10) goto L_0246012C; else goto L_0246015C;
|
|
L_0246012C: ; // 0x246012c
|
|
/* 0246012C */ _t11 = cpu->r[30] + 0x0000004Cu;
|
|
/* 0246012C */ cpu->r[0] = rbrew_read8(cpu->mem, _t11);
|
|
/* 02460130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02460134 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460134 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02460134 */ if (_t13) goto L_0246015C; else goto L_02460138;
|
|
L_02460138: ; // 0x2460138
|
|
/* 02460138 */ _t14 = cpu->r[30] + 0x00000050u;
|
|
/* 02460138 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0246013C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[5]);
|
|
/* 02460140 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460140 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02460140 */ if (_t16) goto L_0246015C; else goto L_02460144;
|
|
L_02460144: ; // 0x2460144
|
|
/* 02460144 */ cpu->r[8] = 0x00000001u;
|
|
/* 02460148 */ /* nop */
|
|
/* 0246014C */ _t17 = cpu->r[30] + 0x0000004Du;
|
|
/* 0246014C */ cpu->r[10] = rbrew_read8(cpu->mem, _t17);
|
|
/* 02460150 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02460154 */ cpu->r[0] = cpu->r[10] & cpu->r[0];
|
|
/* 02460154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02460158 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02460158 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02460158 */ if (_t19) goto L_0246015C; else goto L_0246017C;
|
|
L_0246015C: ; // 0x246015c
|
|
/* 0246015C */ _t20 = cpu->r[1] + 0x00000494u;
|
|
/* 0246015C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02460160 */ _t21 = cpu->r[1] + 0x000004A4u;
|
|
/* 02460160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02460164 */ _t22 = cpu->r[1] + 0x00000498u;
|
|
/* 02460164 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02460168 */ cpu->lr = cpu->r[0];
|
|
/* 0246016C */ _t23 = cpu->r[1] + 0x0000049Cu;
|
|
/* 0246016C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02460170 */ cpu->r[1] = cpu->r[1] + 0x000004A0u;
|
|
/* 02460174 */ cpu->r[3] = 0x00000000u;
|
|
/* 02460178 */ return;
|
|
L_0246017C: ; // 0x246017c
|
|
/* 0246017C */ cpu->r[12] = 0x10110000u;
|
|
/* 02460180 */ cpu->r[11] = cpu->r[1] + 0x00000014u;
|
|
/* 02460184 */ _t24 = cpu->r[12] + 0x00007399u;
|
|
/* 02460184 */ cpu->r[12] = rbrew_read8(cpu->mem, _t24);
|
|
/* 02460188 */ cpu->r[0] = 0x00000020u;
|
|
/* 0246018C */ _t25 = cpu->r[1] + 0x00000008u;
|
|
/* 0246018C */ rbrew_write32(cpu->mem, _t25, cpu->r[11]);
|
|
/* 02460190 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02460194 */ _t26 = cpu->r[1] + 0x00000010u;
|
|
/* 02460194 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02460198 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0246019C */ cpu->r[8] = cpu->r[8] + 0x000028FCu;
|
|
/* 024601A0 */ _t27 = cpu->r[1] + 0x00000033u;
|
|
/* 024601A0 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[12]);
|
|
/* 024601A4 */ cpu->r[4] = cpu->r[29] + 0x00002A54u;
|
|
/* 024601A8 */ _t28 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024601A8 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]);
|
|
/* 024601AC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024601B0 */ _t29 = cpu->r[1] + 0x00000014u;
|
|
/* 024601B0 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[12]);
|
|
/* 024601B4 */ _t30 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024601B4 */ _t31 = _t30 & 0x00000001u;
|
|
/* 024601B4 */ if (_t31) goto L_024601B8; // else: addr-0 trap, fall-through
|
|
L_024601B8: ; // 0x24601b8
|
|
/* 024601B8 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024601BC */ _t32 = cpu->r[30] + 0x00000048u;
|
|
/* 024601BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024601C0 */ _t33 = cpu->r[30] + 0x00000050u;
|
|
/* 024601C0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t33);
|
|
/* 024601C4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024601C8 */ Gambit_fn_027ED798(cpu);
|
|
/* 024601CC */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 024601D0 */ cpu->r[4] = cpu->r[29] + 0x00002A54u;
|
|
/* 024601D4 */ cpu->r[5] = cpu->r[31];
|
|
/* 024601D8 */ _t34 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024601D8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024601D8 */ if (_t35) goto L_024601DC; // else: addr-0 trap, fall-through
|
|
L_024601DC: ; // 0x24601dc
|
|
/* 024601DC */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024601E0 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024601E4 */ _t36 = cpu->r[30] + 0x00000048u;
|
|
/* 024601E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024601E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024601EC */ _t37 = cpu->r[9] + 0x00002968u;
|
|
/* 024601EC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t37);
|
|
/* 024601F0 */ cpu->r[4] = cpu->r[31];
|
|
/* 024601F4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024601F8 */ _t38 = cpu->r[30] + 0x00000048u;
|
|
/* 024601F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024601FC */ cpu->r[4] = 0x101E0000u;
|
|
/* 02460200 */ _t39 = cpu->r[12] + 0x000001ACu;
|
|
/* 02460200 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02460204 */ cpu->r[4] = cpu->r[4] + 0x00007A6Cu;
|
|
/* 02460208 */ Gambit_fn_027B70F0(cpu);
|
|
/* 0246020C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460210 */ _t40 = cpu->r[30] + 0x00000050u;
|
|
/* 02460210 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 02460214 */ Gambit_fn_021749B0(cpu);
|
|
/* 02460218 */ _t41 = cpu->r[30] + 0x00000050u;
|
|
/* 02460218 */ cpu->r[4] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0246021C */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460220 */ Gambit_fn_02174DD4(cpu);
|
|
/* 02460224 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460228 */ Gambit_fn_02174A38(cpu);
|
|
/* 0246022C */ cpu->r[4] = 0x00000002u;
|
|
/* 02460230 */ cpu->r[3] = cpu->r[1] + 0x00000038u;
|
|
/* 02460234 */ Gambit_fn_02174A24(cpu);
|
|
/* 02460238 */ _t42 = cpu->r[1] + 0x00000494u;
|
|
/* 02460238 */ cpu->r[29] = rbrew_read32(cpu->mem, _t42);
|
|
/* 0246023C */ _t43 = cpu->r[1] + 0x000004A4u;
|
|
/* 0246023C */ cpu->r[0] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02460240 */ _t44 = cpu->r[1] + 0x00000498u;
|
|
/* 02460240 */ cpu->r[30] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02460244 */ cpu->lr = cpu->r[0];
|
|
/* 02460248 */ _t45 = cpu->r[1] + 0x0000049Cu;
|
|
/* 02460248 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0246024C */ cpu->r[1] = cpu->r[1] + 0x000004A0u;
|
|
/* 02460250 */ cpu->r[3] = 0x00000001u;
|
|
/* 02460254 */ return;
|
|
}
|
|
|
|
// fn_02426018 @ 0x2426018
|
|
void Gambit_fn_02426018(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02426018: ; // 0x2426018
|
|
/* 02426018 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02426018 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426018 */ cpu->r[1] = _t0;
|
|
/* 0242601C */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 0242601C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02426020 */ cpu->r[12] = 0x10090000u;
|
|
/* 02426024 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426024 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02426028 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242602C */ cpu->r[4] = 0x00000001u;
|
|
/* 02426030 */ cpu->r[12] = cpu->r[12] + 0x00007EBCu;
|
|
/* 02426034 */ cpu->r[30] = cpu->r[3];
|
|
/* 02426038 */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 02426038 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242603C */ cpu->r[0] = 0x10090000u;
|
|
/* 02426040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02426044 */ cpu->r[0] = cpu->r[0] + 0x00007F84u;
|
|
/* 02426048 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426048 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02426048 */ if (_t5) goto L_02426064; else goto L_0242604C;
|
|
L_0242604C: ; // 0x242604c
|
|
/* 0242604C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242604C */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02426050 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426054 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02426054 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02426058 */ Gambit_fn_027ED624(cpu);
|
|
/* 0242605C */ _t8 = cpu->r[30] + 0x00000225u;
|
|
/* 0242605C */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[31]);
|
|
/* 02426060 */ goto L_02426078;
|
|
L_02426064: ; // 0x2426064
|
|
/* 02426064 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02426064 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02426068 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0242606C */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 0242606C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02426070 */ Gambit_fn_027ED798(cpu);
|
|
/* 02426074 */ _t11 = cpu->r[30] + 0x00000225u;
|
|
/* 02426074 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[31]);
|
|
L_02426078: ; // 0x2426078
|
|
/* 02426078 */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 02426078 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242607C */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 0242607C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02426080 */ cpu->lr = cpu->r[0];
|
|
/* 02426084 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426084 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02426088 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 0242608C */ return;
|
|
}
|
|
|
|
// fn_02426094 @ 0x2426094
|
|
void Gambit_fn_02426094(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25;
|
|
|
|
L_02426094: ; // 0x2426094
|
|
/* 02426094 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02426094 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426094 */ cpu->r[1] = _t0;
|
|
/* 02426098 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02426098 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0242609C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242609C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024260A0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024260A4 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 024260A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 024260A8 */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 024260A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024260AC */ _t5 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024260AC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024260B0 */ _t6 = cpu->r[30] + 0x00000225u;
|
|
/* 024260B0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6);
|
|
/* 024260B4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024260B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 024260BC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024260BC */ _t8 = _t7 & 0x00000001u;
|
|
/* 024260BC */ if (_t8) goto L_02426134; else goto L_024260C0;
|
|
L_024260C0: ; // 0x24260c0
|
|
/* 024260C0 */ cpu->r[28] = 0x10090000u;
|
|
/* 024260C4 */ cpu->r[29] = 0x10090000u;
|
|
/* 024260C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024260CC */ cpu->r[28] = cpu->r[28] + 0x00007EBCu;
|
|
/* 024260D0 */ cpu->r[29] = cpu->r[29] + 0x00007F98u;
|
|
/* 024260D4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024260D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024260DC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024260DC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024260DC */ if (_t10) goto L_02426100; else goto L_024260E0;
|
|
L_024260E0: ; // 0x24260e0
|
|
/* 024260E0 */ cpu->r[12] = 0x10090000u;
|
|
/* 024260E4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 024260E4 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 024260E8 */ _t12 = cpu->r[12] + 0x00007F4Cu;
|
|
/* 024260E8 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t12);
|
|
/* 024260EC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024260F0 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024260F0 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 024260F4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024260F8 */ _t14 = cpu->r[30] + 0x00000225u;
|
|
/* 024260F8 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[31]);
|
|
/* 024260FC */ goto L_02426134;
|
|
L_02426100: ; // 0x2426100
|
|
/* 02426100 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426100 */ rbrew_write32(cpu->mem, _t15, cpu->r[28]);
|
|
/* 02426104 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426108 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02426108 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 0242610C */ Gambit_fn_027ED624(cpu);
|
|
/* 02426110 */ cpu->r[11] = 0x10090000u;
|
|
/* 02426114 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426114 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 02426118 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0242611C */ _t18 = cpu->r[11] + 0x00007F94u;
|
|
/* 0242611C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02426120 */ cpu->r[3] = cpu->r[30];
|
|
/* 02426124 */ cpu->r[4] = 0x00000001u;
|
|
/* 02426128 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02426128 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0242612C */ Gambit_fn_027ED380(cpu);
|
|
/* 02426130 */ _t20 = cpu->r[30] + 0x00000225u;
|
|
/* 02426130 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[31]);
|
|
L_02426134: ; // 0x2426134
|
|
/* 02426134 */ _t21 = cpu->r[1] + 0x00000018u;
|
|
/* 02426134 */ cpu->r[28] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02426138 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426138 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0242613C */ _t23 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0242613C */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02426140 */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 02426140 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02426144 */ cpu->lr = cpu->r[0];
|
|
/* 02426148 */ _t25 = cpu->r[1] + 0x00000024u;
|
|
/* 02426148 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0242614C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02426150 */ return;
|
|
}
|
|
|
|
// fn_02426154 @ 0x2426154
|
|
void Gambit_fn_02426154(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58;
|
|
|
|
L_02426154: ; // 0x2426154
|
|
/* 02426154 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02426154 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426154 */ cpu->r[1] = _t0;
|
|
/* 02426158 */ /* nop */
|
|
/* 0242615C */ cpu->r[0] = cpu->lr;
|
|
/* 02426160 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02426160 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02426164 */ _t2 = cpu->r[3] + 0x00000234u;
|
|
/* 02426164 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02426168 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242616C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02426170 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426170 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02426170 */ if (_t4) goto L_024262B4; else goto L_02426174;
|
|
L_02426174: ; // 0x2426174
|
|
/* 02426174 */ cpu->r[27] = 0x00000000u;
|
|
/* 02426178 */ _t5 = cpu->r[3] + 0x00000234u;
|
|
/* 02426178 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 0242617C */ cpu->r[29] = cpu->r[27];
|
|
/* 02426180 */ cpu->r[30] = cpu->r[3] + 0x00000228u;
|
|
/* 02426184 */ cpu->r[28] = 0x00000003u;
|
|
L_02426188: ; // 0x2426188
|
|
/* 02426188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[27]);
|
|
/* 0242618C */ _t6 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0242618C */ _t7 = _t6 & 0x00000001u;
|
|
/* 0242618C */ if (_t7) goto L_02426190; else goto L_0242625C;
|
|
L_02426190: ; // 0x2426190
|
|
/* 02426190 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02426194 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02426194 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02426194 */ if (_t9) goto L_02426198; else goto L_024261AC;
|
|
L_02426198: ; // 0x2426198
|
|
/* 02426198 */ _t10 = cpu->r[30] + cpu->r[29];
|
|
/* 02426198 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0242619C */ Gambit_fn_020D0A1C(cpu);
|
|
/* 024261A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024261A4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024261A4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024261A4 */ if (_t12) goto L_024261BC; else goto L_024261A8;
|
|
L_024261A8: ; // 0x24261a8
|
|
/* 024261A8 */ goto L_024262A4;
|
|
L_024261AC: ; // 0x24261ac
|
|
/* 024261AC */ _t13 = cpu->r[30] + 0x00000000u;
|
|
/* 024261AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024261B0 */ Gambit_fn_020D0A1C(cpu);
|
|
/* 024261B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024261B8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024261B8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024261B8 */ if (_t15) goto L_024261BC; else goto L_024262A4;
|
|
L_024261BC: ; // 0x24261bc
|
|
/* 024261BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 024261C0 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024261C0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024261C0 */ if (_t17) goto L_024261C4; else goto L_024261D8;
|
|
L_024261C4: ; // 0x24261c4
|
|
/* 024261C4 */ _t18 = cpu->r[30] + cpu->r[29];
|
|
/* 024261C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024261C8 */ _t19 = cpu->r[7] + 0x00000118u;
|
|
/* 024261C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024261CC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024261CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024261D0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024261D0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 024261D0 */ if (_t21) goto L_024261E8; else goto L_024261D4;
|
|
L_024261D4: ; // 0x24261d4
|
|
/* 024261D4 */ goto L_0242621C;
|
|
L_024261D8: ; // 0x24261d8
|
|
/* 024261D8 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 024261D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024261DC */ _t23 = cpu->r[7] + 0x00000118u;
|
|
/* 024261DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024261E0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024261E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024261E4 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024261E4 */ _t25 = _t24 & 0x00000001u;
|
|
/* 024261E4 */ if (_t25) goto L_024261E8; else goto L_0242621C;
|
|
L_024261E8: ; // 0x24261e8
|
|
/* 024261E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 024261EC */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024261EC */ _t27 = _t26 & 0x00000001u;
|
|
/* 024261EC */ if (_t27) goto L_024261F0; else goto L_02426208;
|
|
L_024261F0: ; // 0x24261f0
|
|
/* 024261F0 */ _t28 = cpu->r[30] + cpu->r[29];
|
|
/* 024261F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024261F4 */ _t29 = cpu->r[3] + 0x00000000u;
|
|
/* 024261F4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024261F8 */ _t30 = cpu->r[7] + 0x00000094u;
|
|
/* 024261F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024261FC */ cpu->ctr = cpu->r[0];
|
|
/* 02426200 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426204 */ goto L_0242621C;
|
|
L_02426208: ; // 0x2426208
|
|
/* 02426208 */ _t31 = cpu->r[30] + 0x00000000u;
|
|
/* 02426208 */ cpu->r[3] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0242620C */ _t32 = cpu->r[3] + 0x00000000u;
|
|
/* 0242620C */ cpu->r[7] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02426210 */ _t33 = cpu->r[7] + 0x00000094u;
|
|
/* 02426210 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02426214 */ cpu->ctr = cpu->r[0];
|
|
/* 02426218 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0242621C: ; // 0x242621c
|
|
/* 0242621C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02426220 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02426220 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02426220 */ if (_t35) goto L_02426224; else goto L_02426240;
|
|
L_02426224: ; // 0x2426224
|
|
/* 02426224 */ _t36 = cpu->r[30] + cpu->r[29];
|
|
/* 02426224 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02426228 */ Gambit_fn_020D0998(cpu);
|
|
/* 0242622C */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 0242622C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02426230 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02426234 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02426238 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426238 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02426238 */ if (_t38) goto L_0242623C; else goto L_02426188;
|
|
L_0242623C: ; // 0x242623c
|
|
/* 0242623C */ goto L_024262B4;
|
|
L_02426240: ; // 0x2426240
|
|
/* 02426240 */ _t39 = cpu->r[30] + 0x00000000u;
|
|
/* 02426240 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02426244 */ Gambit_fn_020D0998(cpu);
|
|
/* 02426248 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 02426248 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 0242624C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02426250 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02426254 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426254 */ _t41 = _t40 & 0x00000001u;
|
|
/* 02426254 */ if (_t41) goto L_02426258; else goto L_02426188;
|
|
L_02426258: ; // 0x2426258
|
|
/* 02426258 */ goto L_024262B4;
|
|
L_0242625C: ; // 0x242625c
|
|
/* 0242625C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02426260 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02426260 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02426260 */ if (_t43) goto L_02426264; else goto L_02426278;
|
|
L_02426264: ; // 0x2426264
|
|
/* 02426264 */ _t44 = cpu->r[30] + cpu->r[29];
|
|
/* 02426264 */ cpu->r[9] = rbrew_read32(cpu->mem, _t44);
|
|
/* 02426268 */ _t45 = cpu->r[9] + 0x00000118u;
|
|
/* 02426268 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 0242626C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0242626C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02426270 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426270 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02426270 */ if (_t47) goto L_02426288; else goto L_02426274;
|
|
L_02426274: ; // 0x2426274
|
|
/* 02426274 */ goto L_024262A4;
|
|
L_02426278: ; // 0x2426278
|
|
/* 02426278 */ _t48 = cpu->r[30] + 0x00000000u;
|
|
/* 02426278 */ cpu->r[9] = rbrew_read32(cpu->mem, _t48);
|
|
/* 0242627C */ _t49 = cpu->r[9] + 0x00000118u;
|
|
/* 0242627C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49);
|
|
/* 02426280 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02426280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02426284 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426284 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02426284 */ if (_t51) goto L_02426288; else goto L_024262A4;
|
|
L_02426288: ; // 0x2426288
|
|
/* 02426288 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 0242628C */ _t52 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242628C */ _t53 = _t52 & 0x00000001u;
|
|
/* 0242628C */ if (_t53) goto L_02426290; else goto L_0242629C;
|
|
L_02426290: ; // 0x2426290
|
|
/* 02426290 */ _t54 = cpu->r[30] + cpu->r[29];
|
|
/* 02426290 */ cpu->r[3] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02426294 */ Gambit_fn_020D0A7C(cpu);
|
|
/* 02426298 */ goto L_024262A4;
|
|
L_0242629C: ; // 0x242629c
|
|
/* 0242629C */ _t55 = cpu->r[30] + 0x00000000u;
|
|
/* 0242629C */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 024262A0 */ Gambit_fn_020D0A7C(cpu);
|
|
L_024262A4: ; // 0x24262a4
|
|
/* 024262A4 */ cpu->r[28] = cpu->r[28] + 0xFFFFFFFFu;
|
|
/* 024262A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024262A8 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 024262AC */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 024262B0 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024262B0 */ _t57 = _t56 & 0x00000001u;
|
|
/* 024262B0 */ if (_t57) goto L_024262B4; else goto L_02426188;
|
|
L_024262B4: ; // 0x24262b4
|
|
/* 024262B4 */ /* nop */
|
|
/* 024262B8 */ _t58 = cpu->r[1] + 0x00000024u;
|
|
/* 024262B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58);
|
|
/* 024262BC */ cpu->lr = cpu->r[0];
|
|
/* 024262C0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024262C4 */ return;
|
|
}
|
|
|
|
// fn_024262E4 @ 0x24262e4
|
|
void Gambit_fn_024262E4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_024262E4: ; // 0x24262e4
|
|
/* 024262E4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024262E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024262E4 */ cpu->r[1] = _t0;
|
|
/* 024262E8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024262E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]);
|
|
/* 024262EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024262EC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024262F0 */ cpu->r[28] = 0x10090000u;
|
|
/* 024262F4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024262F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024262F8 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 024262F8 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 024262FC */ cpu->r[4] = 0x00000000u;
|
|
/* 02426300 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02426300 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02426304 */ cpu->r[29] = cpu->r[3];
|
|
/* 02426308 */ cpu->r[28] = cpu->r[28] + 0x00007EBCu;
|
|
/* 0242630C */ _t6 = cpu->r[29] + 0x00000238u;
|
|
/* 0242630C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02426310 */ cpu->r[31] = 0x10090000u;
|
|
/* 02426314 */ _t7 = cpu->r[29] + 0x00000240u;
|
|
/* 02426314 */ rbrew_write32(cpu->mem, _t7, cpu->r[4]);
|
|
/* 02426318 */ cpu->r[31] = cpu->r[31] + 0x00007FA8u;
|
|
/* 0242631C */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242631C */ rbrew_write32(cpu->mem, _t8, cpu->r[28]);
|
|
/* 02426320 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426324 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02426324 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02426328 */ Gambit_fn_027ED624(cpu);
|
|
/* 0242632C */ cpu->r[4] = 0x00000000u;
|
|
/* 02426330 */ _t10 = cpu->r[29] + 0x0000023Cu;
|
|
/* 02426330 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02426334 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426334 */ rbrew_write32(cpu->mem, _t11, cpu->r[28]);
|
|
/* 02426338 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0242633C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0242633C */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 02426340 */ Gambit_fn_027ED624(cpu);
|
|
/* 02426344 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02426344 */ cpu->r[28] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02426348 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02426348 */ cpu->r[29] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0242634C */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 0242634C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02426350 */ _t16 = cpu->r[1] + 0x00000018u;
|
|
/* 02426350 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02426354 */ cpu->lr = cpu->r[0];
|
|
/* 02426358 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426358 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0242635C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02426360 */ return;
|
|
}
|
|
|
|
// fn_02426364 @ 0x2426364
|
|
void Gambit_fn_02426364(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34;
|
|
|
|
L_02426364: ; // 0x2426364
|
|
/* 02426364 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02426364 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426364 */ cpu->r[1] = _t0;
|
|
/* 02426368 */ cpu->r[12] = 0x10090000u;
|
|
/* 0242636C */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 0242636C */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02426370 */ /* nop */
|
|
/* 02426374 */ _t2 = cpu->r[12] + 0x00007FACu;
|
|
/* 02426374 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02426378 */ cpu->r[0] = cpu->lr;
|
|
/* 0242637C */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 0242637C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]);
|
|
/* 02426380 */ cpu->r[12] = 0x10090000u;
|
|
/* 02426384 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426384 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 02426388 */ cpu->f[31] = cpu->f[1] * cpu->f[12];
|
|
/* 0242638C */ _t5 = cpu->r[12] + 0x00007F50u;
|
|
/* 0242638C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5);
|
|
/* 02426390 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 02426390 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02426394 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[0]);
|
|
/* 02426398 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02426398 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0242639C */ cpu->r[31] = cpu->r[3];
|
|
/* 024263A0 */ _t8 = cpu->r[1] + 0x00000034u;
|
|
/* 024263A0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024263A4 */ _t9 = cpu->r[31] + 0x00000220u;
|
|
/* 024263A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024263A8 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024263A8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024263A8 */ if (_t11) goto L_024263AC; else goto L_024263FC;
|
|
L_024263AC: ; // 0x24263ac
|
|
/* 024263AC */ cpu->f[31] = cpu->f[0];
|
|
/* 024263B0 */ cpu->f[1] = cpu->f[31];
|
|
/* 024263B4 */ Gambit_fn_020D18C4(cpu);
|
|
/* 024263B8 */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 024263B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024263BC */ cpu->r[29] = 0x10090000u;
|
|
/* 024263C0 */ cpu->r[30] = 0x10090000u;
|
|
/* 024263C4 */ cpu->r[29] = cpu->r[29] + 0x00007FB0u;
|
|
/* 024263C8 */ cpu->r[30] = cpu->r[30] + 0x00007EBCu;
|
|
/* 024263CC */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024263CC */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 024263D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024263D4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024263D4 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]);
|
|
/* 024263D8 */ Gambit_fn_027EE100(cpu);
|
|
/* 024263DC */ cpu->f[1] = cpu->f[31] * cpu->f[1];
|
|
/* 024263E0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024263E0 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 024263E4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024263E8 */ _t16 = cpu->r[31] + 0x00000220u;
|
|
/* 024263E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024263EC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024263F0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024263F0 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 024263F4 */ Gambit_fn_027ED914(cpu);
|
|
/* 024263F8 */ goto L_02426458;
|
|
L_024263FC: ; // 0x24263fc
|
|
/* 024263FC */ cpu->r[11] = 0x10090000u;
|
|
/* 02426400 */ _t18 = cpu->r[11] + 0x00007F4Cu;
|
|
/* 02426400 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02426404 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[13]);
|
|
/* 02426408 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02426408 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02426408 */ if (_t20) goto L_0242640C; else goto L_02426410;
|
|
L_0242640C: ; // 0x242640c
|
|
/* 0242640C */ cpu->f[31] = cpu->f[13];
|
|
L_02426410: ; // 0x2426410
|
|
/* 02426410 */ cpu->f[1] = cpu->f[31];
|
|
/* 02426414 */ Gambit_fn_020D18C4(cpu);
|
|
/* 02426418 */ _t21 = cpu->r[31] + 0x00000220u;
|
|
/* 02426418 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0242641C */ cpu->r[29] = 0x10090000u;
|
|
/* 02426420 */ cpu->r[30] = 0x10090000u;
|
|
/* 02426424 */ cpu->r[29] = cpu->r[29] + 0x00007FB0u;
|
|
/* 02426428 */ cpu->r[30] = cpu->r[30] + 0x00007EBCu;
|
|
/* 0242642C */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 0242642C */ rbrew_write32(cpu->mem, _t22, cpu->r[29]);
|
|
/* 02426430 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426434 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426434 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]);
|
|
/* 02426438 */ Gambit_fn_027EE100(cpu);
|
|
/* 0242643C */ cpu->f[1] = cpu->f[31] * cpu->f[1];
|
|
/* 02426440 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426440 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]);
|
|
/* 02426444 */ cpu->r[4] = 0x00000001u;
|
|
/* 02426448 */ _t25 = cpu->r[31] + 0x00000220u;
|
|
/* 02426448 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0242644C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426450 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02426450 */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02426454 */ Gambit_fn_027ED914(cpu);
|
|
L_02426458: ; // 0x2426458
|
|
/* 02426458 */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02426458 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 0242645C */ _t28 = cpu->r[1] + 0x00000028u;
|
|
/* 0242645C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t28);
|
|
/* 02426460 */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 02426460 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02426464 */ _t30 = cpu->r[1] + 0x00000020u;
|
|
/* 02426464 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t30);
|
|
/* 02426468 */ _t31 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426468 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0242646C */ _t32 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242646C */ _t33 = _t32 & 0x00000001u;
|
|
/* 0242646C */ if (_t33) goto L_02426470; // else: addr-0 trap, fall-through
|
|
L_02426470: ; // 0x2426470
|
|
/* 02426470 */ _t34 = cpu->r[1] + 0x00000034u;
|
|
/* 02426470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02426474 */ cpu->lr = cpu->r[0];
|
|
/* 02426478 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0242647C */ return;
|
|
}
|
|
|
|
// fn_024264F0 @ 0x24264f0
|
|
void Gambit_fn_024264F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024264F0: ; // 0x24264f0
|
|
/* 024264F0 */ cpu->r[0] = cpu->lr;
|
|
/* 024264F4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024264F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024264F4 */ cpu->r[1] = _t0;
|
|
/* 024264F8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024264F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024264FC */ cpu->r[12] = 0x10090000u;
|
|
/* 02426500 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02426500 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02426504 */ cpu->r[12] = cpu->r[12] + 0x00007FC0u;
|
|
/* 02426508 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0242650C */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 0242650C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02426510 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02426510 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02426514 */ cpu->r[29] = 0x10090000u;
|
|
/* 02426518 */ cpu->r[0] = 0x10090000u;
|
|
/* 0242651C */ cpu->r[29] = cpu->r[29] + 0x00007EBCu;
|
|
/* 02426520 */ cpu->r[0] = cpu->r[0] + 0x00007FC4u;
|
|
/* 02426524 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426524 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02426528 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0242652C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0242652C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02426530 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426530 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02426534 */ cpu->r[30] = 0x10090000u;
|
|
/* 02426538 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02426538 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 0242653C */ cpu->r[30] = cpu->r[30] + 0x00007FB8u;
|
|
/* 02426540 */ cpu->r[31] = cpu->r[3];
|
|
/* 02426544 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02426544 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02426548 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0242654C */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 0242654C */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02426550 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426554 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02426554 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 02426558 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242655C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242655C */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02426560 */ Gambit_fn_020B7778(cpu);
|
|
/* 02426564 */ cpu->r[4] = cpu->r[3];
|
|
/* 02426568 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242656C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426570 */ Gambit_fn_027ED798(cpu);
|
|
/* 02426574 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 02426574 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02426578 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 02426578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0242657C */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 0242657C */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02426580 */ cpu->lr = cpu->r[0];
|
|
/* 02426584 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02426584 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02426588 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0242658C */ return;
|
|
}
|
|
|
|
// fn_024264F4 @ 0x24264f4
|
|
void Gambit_fn_024264F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_024264F4: ; // 0x24264f4
|
|
/* 024264F4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 024264F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024264F4 */ cpu->r[1] = _t0;
|
|
/* 024264F8 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024264F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024264FC */ cpu->r[12] = 0x10090000u;
|
|
/* 02426500 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02426500 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02426504 */ cpu->r[12] = cpu->r[12] + 0x00007FC0u;
|
|
/* 02426508 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0242650C */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 0242650C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02426510 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02426510 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02426514 */ cpu->r[29] = 0x10090000u;
|
|
/* 02426518 */ cpu->r[0] = 0x10090000u;
|
|
/* 0242651C */ cpu->r[29] = cpu->r[29] + 0x00007EBCu;
|
|
/* 02426520 */ cpu->r[0] = cpu->r[0] + 0x00007FC4u;
|
|
/* 02426524 */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426524 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 02426528 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0242652C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0242652C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02426530 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426530 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02426534 */ cpu->r[30] = 0x10090000u;
|
|
/* 02426538 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 02426538 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 0242653C */ cpu->r[30] = cpu->r[30] + 0x00007FB8u;
|
|
/* 02426540 */ cpu->r[31] = cpu->r[3];
|
|
/* 02426544 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 02426544 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02426548 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0242654C */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 0242654C */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02426550 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426554 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02426554 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 02426558 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242655C */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242655C */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02426560 */ Gambit_fn_020B7778(cpu);
|
|
/* 02426564 */ cpu->r[4] = cpu->r[3];
|
|
/* 02426568 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242656C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426570 */ Gambit_fn_027ED798(cpu);
|
|
/* 02426574 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 02426574 */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02426578 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 02426578 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0242657C */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 0242657C */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02426580 */ cpu->lr = cpu->r[0];
|
|
/* 02426584 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02426584 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02426588 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 0242658C */ return;
|
|
}
|
|
|
|
// fn_02426590 @ 0x2426590
|
|
void Gambit_fn_02426590(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02426590: ; // 0x2426590
|
|
/* 02426590 */ cpu->r[0] = cpu->lr;
|
|
/* 02426594 */ cpu->r[10] = 0x10090000u;
|
|
/* 02426598 */ cpu->r[12] = 0x10090000u;
|
|
/* 0242659C */ cpu->r[11] = 0x10090000u;
|
|
/* 024265A0 */ cpu->r[10] = cpu->r[10] + 0x00007FDCu;
|
|
/* 024265A4 */ cpu->r[12] = cpu->r[12] + 0x00007FD0u;
|
|
/* 024265A8 */ cpu->r[11] = cpu->r[11] + 0x00007EBCu;
|
|
/* 024265AC */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024265AC */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024265B0 */ cpu->r[0] = 0x10090000u;
|
|
/* 024265B4 */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024265B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024265B4 */ cpu->r[1] = _t1;
|
|
/* 024265B8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024265B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024265BC */ cpu->r[0] = cpu->r[0] + 0x00007FD8u;
|
|
/* 024265C0 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 024265C0 */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 024265C4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024265C8 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024265C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 024265CC */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 024265D0 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 024265D0 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024265D4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024265D8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024265D8 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 024265DC */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024265DC */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024265E0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024265E4 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 024265E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024265E8 */ cpu->lr = cpu->r[0];
|
|
/* 024265EC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024265F0 */ return;
|
|
}
|
|
|
|
// fn_024265B4 @ 0x24265b4
|
|
void Gambit_fn_024265B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024265B4: ; // 0x24265b4
|
|
/* 024265B4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024265B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024265B4 */ cpu->r[1] = _t0;
|
|
/* 024265B8 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024265B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 024265BC */ cpu->r[0] = cpu->r[0] + 0x00007FD8u;
|
|
/* 024265C0 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 024265C0 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]);
|
|
/* 024265C4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024265C8 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024265C8 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024265CC */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 024265D0 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 024265D0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024265D4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024265D8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024265D8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024265DC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024265DC */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 024265E0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024265E4 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 024265E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024265E8 */ cpu->lr = cpu->r[0];
|
|
/* 024265EC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024265F0 */ return;
|
|
}
|
|
|
|
// fn_024265F4 @ 0x24265f4
|
|
void Gambit_fn_024265F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72;
|
|
|
|
L_024265F4: ; // 0x24265f4
|
|
/* 024265F4 */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 024265F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024265F4 */ cpu->r[1] = _t0;
|
|
/* 024265F8 */ /* nop */
|
|
/* 024265FC */ cpu->r[0] = cpu->lr;
|
|
/* 02426600 */ _t1 = cpu->r[1] + 0x00000084u;
|
|
/* 02426600 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02426604 */ cpu->r[27] = cpu->r[3];
|
|
/* 02426608 */ _t2 = cpu->r[27] + 0x0000021Cu;
|
|
/* 02426608 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0242660C */ Gambit_fn_024609EC(cpu);
|
|
/* 02426610 */ cpu->r[26] = 0x10090000u;
|
|
/* 02426614 */ cpu->r[3] = cpu->r[27];
|
|
/* 02426618 */ cpu->r[26] = cpu->r[26] + 0x00007EBCu;
|
|
/* 0242661C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02426620 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426620 */ rbrew_write32(cpu->mem, _t3, cpu->r[26]);
|
|
/* 02426624 */ cpu->r[0] = cpu->r[0] + 0xFFFF8000u;
|
|
/* 02426628 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242662C */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0242662C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02426630 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02426634 */ cpu->r[24] = 0x101D0000u;
|
|
/* 02426638 */ _t5 = cpu->r[24] + 0xFFFFDBA0u;
|
|
/* 02426638 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02426638 */ cpu->r[24] = _t5;
|
|
/* 0242663C */ cpu->r[30] = cpu->r[3];
|
|
/* 02426640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02426644 */ cpu->r[31] = 0x101D0000u;
|
|
/* 02426648 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426648 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02426648 */ if (_t7) goto L_0242664C; else goto L_02426660;
|
|
L_0242664C: ; // 0x242664c
|
|
/* 0242664C */ cpu->r[0] = 0x10090000u;
|
|
/* 02426650 */ cpu->r[12] = 0x00000001u;
|
|
/* 02426654 */ cpu->r[0] = cpu->r[0] + 0x00007F1Cu;
|
|
/* 02426658 */ _t8 = cpu->r[24] + 0x00000000u;
|
|
/* 02426658 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 0242665C */ _t9 = cpu->r[31] + 0xFFFFED90u;
|
|
/* 0242665C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
L_02426660: ; // 0x2426660
|
|
/* 02426660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02426664 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426664 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02426664 */ if (_t11) goto L_02426688; else goto L_02426668;
|
|
L_02426668: ; // 0x2426668
|
|
/* 02426668 */ _t12 = cpu->r[30] + 0x00000000u;
|
|
/* 02426668 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242666C */ _t13 = cpu->r[5] + 0x0000001Cu;
|
|
/* 0242666C */ cpu->r[6] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02426670 */ cpu->ctr = cpu->r[6];
|
|
/* 02426674 */ cpu->r[3] = cpu->r[30];
|
|
/* 02426678 */ cpu->r[4] = cpu->r[31] + 0xFFFFED90u;
|
|
/* 0242667C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02426684 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426684 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02426684 */ if (_t15) goto L_02426688; else goto L_0242668C;
|
|
L_02426688: ; // 0x2426688
|
|
/* 02426688 */ cpu->r[30] = 0x00000000u;
|
|
L_0242668C: ; // 0x242668c
|
|
/* 0242668C */ _t16 = cpu->r[27] + 0x00000220u;
|
|
/* 0242668C */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 02426690 */ cpu->r[29] = 0x10110000u;
|
|
/* 02426694 */ cpu->r[19] = 0x00000003u;
|
|
/* 02426698 */ cpu->r[20] = 0x00000000u;
|
|
/* 0242669C */ _t17 = cpu->r[29] + 0x00007399u;
|
|
/* 0242669C */ cpu->r[29] = rbrew_read8(cpu->mem, _t17);
|
|
/* 024266A0 */ cpu->r[23] = 0x10090000u;
|
|
/* 024266A4 */ cpu->r[30] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024266A8 */ cpu->r[16] = cpu->r[20];
|
|
/* 024266AC */ cpu->r[17] = 0x00000001u;
|
|
/* 024266B0 */ cpu->r[18] = 0x00000020u;
|
|
/* 024266B4 */ cpu->r[23] = cpu->r[23] + 0x00007F04u;
|
|
/* 024266B8 */ cpu->r[22] = 0x100A0000u;
|
|
/* 024266BC */ cpu->r[21] = cpu->r[27] + 0x00000228u;
|
|
L_024266C0: ; // 0x24266c0
|
|
/* 024266C0 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 024266C0 */ rbrew_write32(cpu->mem, _t18, cpu->r[23]);
|
|
/* 024266C4 */ cpu->r[5] = cpu->r[20];
|
|
/* 024266C8 */ _t19 = cpu->r[30] + 0x0000001Fu;
|
|
/* 024266C8 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[29]);
|
|
/* 024266CC */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 024266D0 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 024266D0 */ rbrew_write32(cpu->mem, _t20, cpu->r[18]);
|
|
/* 024266D4 */ cpu->r[4] = cpu->r[22] + 0xFFFF8010u;
|
|
/* 024266D8 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 024266D8 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 024266DC */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 024266DC */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[29]);
|
|
/* 024266E0 */ _t23 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 024266E0 */ _t24 = _t23 & 0x00000001u;
|
|
/* 024266E0 */ if (_t24) goto L_024266E4; // else: addr-0 trap, fall-through
|
|
L_024266E4: ; // 0x24266e4
|
|
/* 024266E4 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 024266E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], 0x00000003u);
|
|
/* 024266EC */ _t25 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024266EC */ _t26 = _t25 & 0x00000001u;
|
|
/* 024266EC */ if (_t26) goto L_024266F0; else goto L_02426714;
|
|
L_024266F0: ; // 0x24266f0
|
|
/* 024266F0 */ cpu->r[3] = cpu->r[27];
|
|
/* 024266F4 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 024266F8 */ cpu->r[25] = cpu->r[21] + cpu->r[16];
|
|
/* 024266FC */ Gambit_fn_026D86B0(cpu);
|
|
/* 02426700 */ _t27 = cpu->r[24] + 0x00000000u;
|
|
/* 02426700 */ cpu->r[7] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02426704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02426708 */ cpu->r[28] = cpu->r[3];
|
|
/* 0242670C */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242670C */ _t29 = _t28 & 0x00000001u;
|
|
/* 0242670C */ if (_t29) goto L_02426710; else goto L_02426744;
|
|
L_02426710: ; // 0x2426710
|
|
/* 02426710 */ goto L_02426734;
|
|
L_02426714: ; // 0x2426714
|
|
/* 02426714 */ cpu->r[3] = cpu->r[27];
|
|
/* 02426718 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 0242671C */ cpu->r[25] = cpu->r[21];
|
|
/* 02426720 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02426724 */ _t30 = cpu->r[24] + 0x00000000u;
|
|
/* 02426724 */ cpu->r[7] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02426728 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0242672C */ cpu->r[28] = cpu->r[3];
|
|
/* 02426730 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426730 */ _t32 = _t31 & 0x00000001u;
|
|
/* 02426730 */ if (_t32) goto L_02426734; else goto L_02426744;
|
|
L_02426734: ; // 0x2426734
|
|
/* 02426734 */ cpu->r[8] = 0x10090000u;
|
|
/* 02426738 */ _t33 = cpu->r[24] + 0x00000000u;
|
|
/* 02426738 */ rbrew_write32(cpu->mem, _t33, cpu->r[17]);
|
|
/* 0242673C */ cpu->r[8] = cpu->r[8] + 0x00007F1Cu;
|
|
/* 02426740 */ _t34 = cpu->r[31] + 0xFFFFED90u;
|
|
/* 02426740 */ rbrew_write32(cpu->mem, _t34, cpu->r[8]);
|
|
L_02426744: ; // 0x2426744
|
|
/* 02426744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02426748 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426748 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02426748 */ if (_t36) goto L_0242676C; else goto L_0242674C;
|
|
L_0242674C: ; // 0x242674c
|
|
/* 0242674C */ _t37 = cpu->r[28] + 0x00000000u;
|
|
/* 0242674C */ cpu->r[9] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02426750 */ _t38 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02426750 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02426754 */ cpu->ctr = cpu->r[10];
|
|
/* 02426758 */ cpu->r[3] = cpu->r[28];
|
|
/* 0242675C */ cpu->r[4] = cpu->r[31] + 0xFFFFED90u;
|
|
/* 02426760 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426764 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02426768 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426768 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02426768 */ if (_t40) goto L_0242676C; else goto L_02426770;
|
|
L_0242676C: ; // 0x242676c
|
|
/* 0242676C */ cpu->r[28] = 0x00000000u;
|
|
L_02426770: ; // 0x2426770
|
|
/* 02426770 */ _t41 = cpu->r[25] + 0x00000000u;
|
|
/* 02426770 */ rbrew_write32(cpu->mem, _t41, cpu->r[28]);
|
|
/* 02426774 */ cpu->r[19] = cpu->r[19] + 0xFFFFFFFFu;
|
|
/* 02426774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u);
|
|
/* 02426778 */ cpu->r[20] = cpu->r[20] + 0x00000001u;
|
|
/* 0242677C */ cpu->r[16] = cpu->r[16] + 0x00000004u;
|
|
/* 02426780 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426780 */ _t43 = _t42 & 0x00000001u;
|
|
/* 02426780 */ if (_t43) goto L_02426784; else goto L_024266C0;
|
|
L_02426784: ; // 0x2426784
|
|
/* 02426784 */ cpu->r[0] = 0x10090000u;
|
|
/* 02426788 */ _t44 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426788 */ rbrew_write32(cpu->mem, _t44, cpu->r[26]);
|
|
/* 0242678C */ cpu->r[3] = cpu->r[27];
|
|
/* 02426790 */ cpu->r[0] = cpu->r[0] + 0x00007FE8u;
|
|
/* 02426794 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426798 */ _t45 = cpu->r[1] + 0x00000008u;
|
|
/* 02426798 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]);
|
|
/* 0242679C */ Gambit_fn_026D86B0(cpu);
|
|
/* 024267A0 */ cpu->r[29] = 0x101D0000u;
|
|
/* 024267A4 */ _t46 = cpu->r[29] + 0xFFFFED98u;
|
|
/* 024267A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46);
|
|
/* 024267A4 */ cpu->r[29] = _t46;
|
|
/* 024267A8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024267AC */ cpu->r[28] = 0x101D0000u;
|
|
/* 024267B0 */ cpu->r[30] = 0x10090000u;
|
|
/* 024267B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024267B8 */ cpu->r[30] = cpu->r[30] + 0x00007F2Cu;
|
|
/* 024267BC */ _t47 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024267BC */ _t48 = _t47 & 0x00000001u;
|
|
/* 024267BC */ if (_t48) goto L_024267C0; else goto L_024267CC;
|
|
L_024267C0: ; // 0x24267c0
|
|
/* 024267C0 */ _t49 = cpu->r[28] + 0xFFFFEDE0u;
|
|
/* 024267C0 */ rbrew_write32(cpu->mem, _t49, cpu->r[30]);
|
|
/* 024267C4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024267C8 */ _t50 = cpu->r[29] + 0x00000000u;
|
|
/* 024267C8 */ rbrew_write32(cpu->mem, _t50, cpu->r[5]);
|
|
L_024267CC: ; // 0x24267cc
|
|
/* 024267CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024267D0 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024267D0 */ _t52 = _t51 & 0x00000001u;
|
|
/* 024267D0 */ if (_t52) goto L_024267F4; else goto L_024267D4;
|
|
L_024267D4: ; // 0x24267d4
|
|
/* 024267D4 */ _t53 = cpu->r[31] + 0x00000000u;
|
|
/* 024267D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53);
|
|
/* 024267D8 */ _t54 = cpu->r[6] + 0x0000001Cu;
|
|
/* 024267D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 024267DC */ cpu->ctr = cpu->r[0];
|
|
/* 024267E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024267E4 */ cpu->r[4] = cpu->r[28] + 0xFFFFEDE0u;
|
|
/* 024267E8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024267EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024267F0 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024267F0 */ _t56 = _t55 & 0x00000001u;
|
|
/* 024267F0 */ if (_t56) goto L_024267F4; else goto L_024267F8;
|
|
L_024267F4: ; // 0x24267f4
|
|
/* 024267F4 */ cpu->r[31] = 0x00000000u;
|
|
L_024267F8: ; // 0x24267f8
|
|
/* 024267F8 */ _t57 = cpu->r[27] + 0x00000238u;
|
|
/* 024267F8 */ rbrew_write32(cpu->mem, _t57, cpu->r[31]);
|
|
/* 024267FC */ cpu->r[0] = 0x10090000u;
|
|
/* 02426800 */ _t58 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426800 */ rbrew_write32(cpu->mem, _t58, cpu->r[26]);
|
|
/* 02426804 */ cpu->r[0] = cpu->r[0] + 0x00007FF4u;
|
|
/* 02426808 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242680C */ cpu->r[3] = cpu->r[27];
|
|
/* 02426810 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 02426810 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]);
|
|
/* 02426814 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02426818 */ _t60 = cpu->r[29] + 0x00000000u;
|
|
/* 02426818 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0242681C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02426820 */ cpu->r[31] = cpu->r[3];
|
|
/* 02426824 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426824 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02426824 */ if (_t62) goto L_02426828; else goto L_02426834;
|
|
L_02426828: ; // 0x2426828
|
|
/* 02426828 */ _t63 = cpu->r[28] + 0xFFFFEDE0u;
|
|
/* 02426828 */ rbrew_write32(cpu->mem, _t63, cpu->r[30]);
|
|
/* 0242682C */ cpu->r[10] = 0x00000001u;
|
|
/* 02426830 */ _t64 = cpu->r[29] + 0x00000000u;
|
|
/* 02426830 */ rbrew_write32(cpu->mem, _t64, cpu->r[10]);
|
|
L_02426834: ; // 0x2426834
|
|
/* 02426834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02426838 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426838 */ _t66 = _t65 & 0x00000001u;
|
|
/* 02426838 */ if (_t66) goto L_0242685C; else goto L_0242683C;
|
|
L_0242683C: ; // 0x242683c
|
|
/* 0242683C */ _t67 = cpu->r[31] + 0x00000000u;
|
|
/* 0242683C */ cpu->r[11] = rbrew_read32(cpu->mem, _t67);
|
|
/* 02426840 */ _t68 = cpu->r[11] + 0x0000001Cu;
|
|
/* 02426840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t68);
|
|
/* 02426844 */ cpu->ctr = cpu->r[12];
|
|
/* 02426848 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242684C */ cpu->r[4] = cpu->r[28] + 0xFFFFEDE0u;
|
|
/* 02426850 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02426858 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426858 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02426858 */ if (_t70) goto L_0242685C; else goto L_02426860;
|
|
L_0242685C: ; // 0x242685c
|
|
/* 0242685C */ cpu->r[31] = 0x00000000u;
|
|
L_02426860: ; // 0x2426860
|
|
/* 02426860 */ _t71 = cpu->r[27] + 0x0000023Cu;
|
|
/* 02426860 */ rbrew_write32(cpu->mem, _t71, cpu->r[31]);
|
|
/* 02426864 */ /* nop */
|
|
/* 02426868 */ _t72 = cpu->r[1] + 0x00000084u;
|
|
/* 02426868 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72);
|
|
/* 0242686C */ cpu->lr = cpu->r[0];
|
|
/* 02426870 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 02426874 */ return;
|
|
}
|
|
|
|
// fn_02426878 @ 0x2426878
|
|
void Gambit_fn_02426878(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82;
|
|
|
|
L_02426878: ; // 0x2426878
|
|
/* 02426878 */ cpu->r[0] = cpu->lr;
|
|
/* 0242687C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0242687C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242687C */ cpu->r[1] = _t0;
|
|
/* 02426880 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02426880 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02426884 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02426884 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02426888 */ cpu->r[31] = 0x100A0000u;
|
|
/* 0242688C */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0242688C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02426890 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 02426890 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02426894 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02426898 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02426898 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0242689C */ cpu->r[29] = 0x10090000u;
|
|
/* 024268A0 */ cpu->r[31] = cpu->r[31] + 0xFFFF8030u;
|
|
/* 024268A4 */ cpu->r[29] = cpu->r[29] + 0x00007EBCu;
|
|
/* 024268A8 */ cpu->r[12] = cpu->r[12] + 0xFFFF8094u;
|
|
/* 024268AC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024268AC */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 024268B0 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 024268B0 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024268B4 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 024268B8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024268B8 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 024268BC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 024268C0 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 024268C0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 024268C4 */ cpu->r[28] = cpu->r[3];
|
|
/* 024268C8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 024268C8 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 024268CC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 024268D0 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024268D0 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 024268D4 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024268D8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024268DC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 024268DC */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 024268E0 */ cpu->r[0] = cpu->r[0] + 0xFFFF8070u;
|
|
/* 024268E4 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024268E4 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 024268E8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024268EC */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 024268EC */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 024268F0 */ cpu->r[3] = cpu->r[28];
|
|
/* 024268F4 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 024268F4 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024268F8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024268F8 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 024268FC */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426900 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426904 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426904 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02426908 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0242690C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02426910 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426910 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02426914 */ cpu->r[7] = cpu->r[7] + 0xFFFF8040u;
|
|
/* 02426918 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02426918 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0242691C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02426920 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426920 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 02426924 */ cpu->r[11] = cpu->r[11] + 0xFFFF8080u;
|
|
/* 02426928 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02426928 */ rbrew_write32(cpu->mem, _t21, cpu->r[7]);
|
|
/* 0242692C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426930 */ cpu->r[3] = cpu->r[28];
|
|
/* 02426934 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02426934 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 02426938 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242693C */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426940 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 02426940 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 02426944 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426948 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0242694C */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242694C */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 02426950 */ cpu->r[9] = cpu->r[9] + 0xFFFF80A4u;
|
|
/* 02426954 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02426954 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02426958 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0242695C */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242695C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02426960 */ cpu->r[0] = cpu->r[0] + 0xFFFF8050u;
|
|
/* 02426964 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02426964 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 02426968 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0242696C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426970 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02426970 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02426974 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426978 */ cpu->r[3] = cpu->r[28];
|
|
/* 0242697C */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0242697C */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 02426980 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426984 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426984 */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02426988 */ cpu->r[31] = 0x100A0000u;
|
|
/* 0242698C */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 0242698C */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 02426990 */ cpu->r[31] = cpu->r[31] + 0xFFFF8060u;
|
|
/* 02426994 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426998 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02426998 */ rbrew_write32(cpu->mem, _t32, cpu->r[31]);
|
|
/* 0242699C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 024269A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024269A4 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024269A4 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 024269A8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024269AC */ cpu->r[0] = cpu->r[0] + 0xFFFF80B0u;
|
|
/* 024269B0 */ _t34 = cpu->r[1] + 0x00000018u;
|
|
/* 024269B0 */ rbrew_write32(cpu->mem, _t34, cpu->r[31]);
|
|
/* 024269B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 024269B8 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 024269B8 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 024269BC */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024269C0 */ Gambit_fn_027E3F5C(cpu);
|
|
/* 024269C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024269C8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024269C8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024269C8 */ if (_t37) goto L_024269E4; else goto L_024269CC;
|
|
L_024269CC: ; // 0x24269cc
|
|
/* 024269CC */ _t38 = cpu->r[1] + 0x00000024u;
|
|
/* 024269CC */ rbrew_write32(cpu->mem, _t38, cpu->r[29]);
|
|
/* 024269D0 */ cpu->r[3] = cpu->r[28];
|
|
/* 024269D4 */ cpu->r[4] = 0x00000003u;
|
|
/* 024269D8 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 024269DC */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 024269DC */ rbrew_write32(cpu->mem, _t39, cpu->r[31]);
|
|
/* 024269E0 */ Gambit_fn_027ED624(cpu);
|
|
L_024269E4: ; // 0x24269e4
|
|
/* 024269E4 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024269E4 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
/* 024269E8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 024269EC */ _t41 = cpu->r[28] + 0x00000220u;
|
|
/* 024269EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024269F0 */ cpu->r[30] = cpu->r[30] + 0xFFFF802Cu;
|
|
/* 024269F4 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024269F4 */ rbrew_write32(cpu->mem, _t42, cpu->r[29]);
|
|
/* 024269F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024269FC */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 024269FC */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
/* 02426A00 */ cpu->r[31] = 0x100A0000u;
|
|
/* 02426A04 */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 02426A04 */ rbrew_write32(cpu->mem, _t44, cpu->r[30]);
|
|
/* 02426A08 */ cpu->r[31] = cpu->r[31] + 0xFFFF80C8u;
|
|
/* 02426A0C */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 02426A0C */ rbrew_write32(cpu->mem, _t45, cpu->r[29]);
|
|
/* 02426A10 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426A14 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426A18 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 02426A18 */ rbrew_write32(cpu->mem, _t46, cpu->r[31]);
|
|
/* 02426A1C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426A20 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02426A24 */ _t47 = cpu->r[28] + 0x00000220u;
|
|
/* 02426A24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02426A28 */ cpu->r[0] = cpu->r[0] + 0xFFFF8024u;
|
|
/* 02426A2C */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 02426A2C */ rbrew_write32(cpu->mem, _t48, cpu->r[29]);
|
|
/* 02426A30 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426A34 */ _t49 = cpu->r[1] + 0x00000018u;
|
|
/* 02426A34 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02426A38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426A3C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 02426A3C */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02426A40 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02426A44 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426A44 */ rbrew_write32(cpu->mem, _t51, cpu->r[29]);
|
|
/* 02426A48 */ cpu->r[8] = cpu->r[8] + 0xFFFF80D4u;
|
|
/* 02426A4C */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426A4C */ rbrew_write32(cpu->mem, _t52, cpu->r[29]);
|
|
/* 02426A50 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426A54 */ _t53 = cpu->r[1] + 0x00000010u;
|
|
/* 02426A54 */ rbrew_write32(cpu->mem, _t53, cpu->r[8]);
|
|
/* 02426A58 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426A5C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426A60 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426A60 */ rbrew_write32(cpu->mem, _t54, cpu->r[29]);
|
|
/* 02426A64 */ _t55 = cpu->r[28] + 0x00000220u;
|
|
/* 02426A64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02426A68 */ cpu->r[4] = 0x00000000u;
|
|
/* 02426A6C */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 02426A6C */ rbrew_write32(cpu->mem, _t56, cpu->r[30]);
|
|
/* 02426A70 */ Gambit_fn_027ED798(cpu);
|
|
/* 02426A74 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02426A78 */ _t57 = cpu->r[28] + 0x00000238u;
|
|
/* 02426A78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02426A7C */ cpu->r[30] = cpu->r[30] + 0xFFFF8020u;
|
|
/* 02426A80 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 02426A80 */ rbrew_write32(cpu->mem, _t58, cpu->r[29]);
|
|
/* 02426A84 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426A88 */ _t59 = cpu->r[1] + 0x00000018u;
|
|
/* 02426A88 */ rbrew_write32(cpu->mem, _t59, cpu->r[30]);
|
|
/* 02426A8C */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426A90 */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 02426A90 */ rbrew_write32(cpu->mem, _t60, cpu->r[30]);
|
|
/* 02426A94 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426A98 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426A98 */ rbrew_write32(cpu->mem, _t61, cpu->r[29]);
|
|
/* 02426A9C */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426A9C */ rbrew_write32(cpu->mem, _t62, cpu->r[29]);
|
|
/* 02426AA0 */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 02426AA0 */ rbrew_write32(cpu->mem, _t63, cpu->r[31]);
|
|
/* 02426AA4 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426AA8 */ _t64 = cpu->r[1] + 0x00000008u;
|
|
/* 02426AA8 */ rbrew_write32(cpu->mem, _t64, cpu->r[30]);
|
|
/* 02426AAC */ cpu->r[4] = 0x00000000u;
|
|
/* 02426AB0 */ _t65 = cpu->r[28] + 0x00000238u;
|
|
/* 02426AB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02426AB4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426AB8 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426AB8 */ rbrew_write32(cpu->mem, _t66, cpu->r[29]);
|
|
/* 02426ABC */ Gambit_fn_027ED624(cpu);
|
|
/* 02426AC0 */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426AC0 */ rbrew_write32(cpu->mem, _t67, cpu->r[29]);
|
|
/* 02426AC4 */ _t68 = cpu->r[1] + 0x00000010u;
|
|
/* 02426AC4 */ rbrew_write32(cpu->mem, _t68, cpu->r[31]);
|
|
/* 02426AC8 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426ACC */ _t69 = cpu->r[28] + 0x0000023Cu;
|
|
/* 02426ACC */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02426AD0 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 02426AD0 */ rbrew_write32(cpu->mem, _t70, cpu->r[30]);
|
|
/* 02426AD4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426AD8 */ _t71 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426AD8 */ rbrew_write32(cpu->mem, _t71, cpu->r[29]);
|
|
/* 02426ADC */ _t72 = cpu->r[1] + 0x00000018u;
|
|
/* 02426ADC */ rbrew_write32(cpu->mem, _t72, cpu->r[30]);
|
|
/* 02426AE0 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426AE4 */ _t73 = cpu->r[1] + 0x00000014u;
|
|
/* 02426AE4 */ rbrew_write32(cpu->mem, _t73, cpu->r[29]);
|
|
/* 02426AE8 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426AEC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426AF0 */ _t74 = cpu->r[28] + 0x0000023Cu;
|
|
/* 02426AF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02426AF4 */ _t75 = cpu->r[1] + 0x00000008u;
|
|
/* 02426AF4 */ rbrew_write32(cpu->mem, _t75, cpu->r[30]);
|
|
/* 02426AF8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02426AFC */ _t76 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426AFC */ rbrew_write32(cpu->mem, _t76, cpu->r[29]);
|
|
/* 02426B00 */ Gambit_fn_027ED624(cpu);
|
|
/* 02426B04 */ _t77 = cpu->r[28] + 0x0000021Cu;
|
|
/* 02426B04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02426B08 */ Gambit_fn_02460DC4(cpu);
|
|
/* 02426B0C */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 02426B0C */ cpu->r[28] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02426B10 */ _t79 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02426B10 */ cpu->r[29] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02426B14 */ _t80 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02426B14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02426B18 */ _t81 = cpu->r[1] + 0x00000030u;
|
|
/* 02426B18 */ cpu->r[30] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02426B1C */ cpu->lr = cpu->r[0];
|
|
/* 02426B20 */ _t82 = cpu->r[1] + 0x00000034u;
|
|
/* 02426B20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02426B24 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02426B28 */ return;
|
|
}
|
|
|
|
// fn_0242687C @ 0x242687c
|
|
void Gambit_fn_0242687C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82;
|
|
|
|
L_0242687C: ; // 0x242687c
|
|
/* 0242687C */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 0242687C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242687C */ cpu->r[1] = _t0;
|
|
/* 02426880 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02426880 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02426884 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02426884 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02426888 */ cpu->r[31] = 0x100A0000u;
|
|
/* 0242688C */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0242688C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02426890 */ _t4 = cpu->r[1] + 0x00000030u;
|
|
/* 02426890 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02426894 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02426898 */ _t5 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02426898 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0242689C */ cpu->r[29] = 0x10090000u;
|
|
/* 024268A0 */ cpu->r[31] = cpu->r[31] + 0xFFFF8030u;
|
|
/* 024268A4 */ cpu->r[29] = cpu->r[29] + 0x00007EBCu;
|
|
/* 024268A8 */ cpu->r[12] = cpu->r[12] + 0xFFFF8094u;
|
|
/* 024268AC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024268AC */ rbrew_write32(cpu->mem, _t6, cpu->r[31]);
|
|
/* 024268B0 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 024268B0 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024268B4 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 024268B8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024268B8 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 024268BC */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 024268C0 */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 024268C0 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 024268C4 */ cpu->r[28] = cpu->r[3];
|
|
/* 024268C8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 024268C8 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 024268CC */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 024268D0 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024268D0 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 024268D4 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024268D8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024268DC */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 024268DC */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 024268E0 */ cpu->r[0] = cpu->r[0] + 0xFFFF8070u;
|
|
/* 024268E4 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024268E4 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]);
|
|
/* 024268E8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024268EC */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 024268EC */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 024268F0 */ cpu->r[3] = cpu->r[28];
|
|
/* 024268F4 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 024268F4 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024268F8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024268F8 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 024268FC */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426900 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426904 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426904 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02426908 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0242690C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02426910 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426910 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02426914 */ cpu->r[7] = cpu->r[7] + 0xFFFF8040u;
|
|
/* 02426918 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02426918 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 0242691C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02426920 */ _t20 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426920 */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 02426924 */ cpu->r[11] = cpu->r[11] + 0xFFFF8080u;
|
|
/* 02426928 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02426928 */ rbrew_write32(cpu->mem, _t21, cpu->r[7]);
|
|
/* 0242692C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426930 */ cpu->r[3] = cpu->r[28];
|
|
/* 02426934 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02426934 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
/* 02426938 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242693C */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426940 */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 02426940 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]);
|
|
/* 02426944 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426948 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0242694C */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242694C */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 02426950 */ cpu->r[9] = cpu->r[9] + 0xFFFF80A4u;
|
|
/* 02426954 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02426954 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02426958 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0242695C */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242695C */ rbrew_write32(cpu->mem, _t26, cpu->r[29]);
|
|
/* 02426960 */ cpu->r[0] = cpu->r[0] + 0xFFFF8050u;
|
|
/* 02426964 */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02426964 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 02426968 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0242696C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426970 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02426970 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02426974 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426978 */ cpu->r[3] = cpu->r[28];
|
|
/* 0242697C */ _t29 = cpu->r[1] + 0x00000018u;
|
|
/* 0242697C */ rbrew_write32(cpu->mem, _t29, cpu->r[9]);
|
|
/* 02426980 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426984 */ _t30 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426984 */ rbrew_write32(cpu->mem, _t30, cpu->r[29]);
|
|
/* 02426988 */ cpu->r[31] = 0x100A0000u;
|
|
/* 0242698C */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 0242698C */ rbrew_write32(cpu->mem, _t31, cpu->r[29]);
|
|
/* 02426990 */ cpu->r[31] = cpu->r[31] + 0xFFFF8060u;
|
|
/* 02426994 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426998 */ _t32 = cpu->r[1] + 0x00000008u;
|
|
/* 02426998 */ rbrew_write32(cpu->mem, _t32, cpu->r[31]);
|
|
/* 0242699C */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 024269A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024269A4 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024269A4 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]);
|
|
/* 024269A8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024269AC */ cpu->r[0] = cpu->r[0] + 0xFFFF80B0u;
|
|
/* 024269B0 */ _t34 = cpu->r[1] + 0x00000018u;
|
|
/* 024269B0 */ rbrew_write32(cpu->mem, _t34, cpu->r[31]);
|
|
/* 024269B4 */ cpu->r[3] = cpu->r[28];
|
|
/* 024269B8 */ _t35 = cpu->r[1] + 0x00000010u;
|
|
/* 024269B8 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]);
|
|
/* 024269BC */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024269C0 */ Gambit_fn_027E3F5C(cpu);
|
|
/* 024269C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024269C8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024269C8 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024269C8 */ if (_t37) goto L_024269E4; else goto L_024269CC;
|
|
L_024269CC: ; // 0x24269cc
|
|
/* 024269CC */ _t38 = cpu->r[1] + 0x00000024u;
|
|
/* 024269CC */ rbrew_write32(cpu->mem, _t38, cpu->r[29]);
|
|
/* 024269D0 */ cpu->r[3] = cpu->r[28];
|
|
/* 024269D4 */ cpu->r[4] = 0x00000003u;
|
|
/* 024269D8 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 024269DC */ _t39 = cpu->r[1] + 0x00000020u;
|
|
/* 024269DC */ rbrew_write32(cpu->mem, _t39, cpu->r[31]);
|
|
/* 024269E0 */ Gambit_fn_027ED624(cpu);
|
|
L_024269E4: ; // 0x24269e4
|
|
/* 024269E4 */ _t40 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024269E4 */ rbrew_write32(cpu->mem, _t40, cpu->r[29]);
|
|
/* 024269E8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 024269EC */ _t41 = cpu->r[28] + 0x00000220u;
|
|
/* 024269EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024269F0 */ cpu->r[30] = cpu->r[30] + 0xFFFF802Cu;
|
|
/* 024269F4 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024269F4 */ rbrew_write32(cpu->mem, _t42, cpu->r[29]);
|
|
/* 024269F8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024269FC */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 024269FC */ rbrew_write32(cpu->mem, _t43, cpu->r[30]);
|
|
/* 02426A00 */ cpu->r[31] = 0x100A0000u;
|
|
/* 02426A04 */ _t44 = cpu->r[1] + 0x00000018u;
|
|
/* 02426A04 */ rbrew_write32(cpu->mem, _t44, cpu->r[30]);
|
|
/* 02426A08 */ cpu->r[31] = cpu->r[31] + 0xFFFF80C8u;
|
|
/* 02426A0C */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 02426A0C */ rbrew_write32(cpu->mem, _t45, cpu->r[29]);
|
|
/* 02426A10 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426A14 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426A18 */ _t46 = cpu->r[1] + 0x00000010u;
|
|
/* 02426A18 */ rbrew_write32(cpu->mem, _t46, cpu->r[31]);
|
|
/* 02426A1C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426A20 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02426A24 */ _t47 = cpu->r[28] + 0x00000220u;
|
|
/* 02426A24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02426A28 */ cpu->r[0] = cpu->r[0] + 0xFFFF8024u;
|
|
/* 02426A2C */ _t48 = cpu->r[1] + 0x00000014u;
|
|
/* 02426A2C */ rbrew_write32(cpu->mem, _t48, cpu->r[29]);
|
|
/* 02426A30 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426A34 */ _t49 = cpu->r[1] + 0x00000018u;
|
|
/* 02426A34 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]);
|
|
/* 02426A38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426A3C */ _t50 = cpu->r[1] + 0x00000008u;
|
|
/* 02426A3C */ rbrew_write32(cpu->mem, _t50, cpu->r[0]);
|
|
/* 02426A40 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02426A44 */ _t51 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426A44 */ rbrew_write32(cpu->mem, _t51, cpu->r[29]);
|
|
/* 02426A48 */ cpu->r[8] = cpu->r[8] + 0xFFFF80D4u;
|
|
/* 02426A4C */ _t52 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426A4C */ rbrew_write32(cpu->mem, _t52, cpu->r[29]);
|
|
/* 02426A50 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426A54 */ _t53 = cpu->r[1] + 0x00000010u;
|
|
/* 02426A54 */ rbrew_write32(cpu->mem, _t53, cpu->r[8]);
|
|
/* 02426A58 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426A5C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426A60 */ _t54 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426A60 */ rbrew_write32(cpu->mem, _t54, cpu->r[29]);
|
|
/* 02426A64 */ _t55 = cpu->r[28] + 0x00000220u;
|
|
/* 02426A64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02426A68 */ cpu->r[4] = 0x00000000u;
|
|
/* 02426A6C */ _t56 = cpu->r[1] + 0x00000008u;
|
|
/* 02426A6C */ rbrew_write32(cpu->mem, _t56, cpu->r[30]);
|
|
/* 02426A70 */ Gambit_fn_027ED798(cpu);
|
|
/* 02426A74 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02426A78 */ _t57 = cpu->r[28] + 0x00000238u;
|
|
/* 02426A78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02426A7C */ cpu->r[30] = cpu->r[30] + 0xFFFF8020u;
|
|
/* 02426A80 */ _t58 = cpu->r[1] + 0x00000014u;
|
|
/* 02426A80 */ rbrew_write32(cpu->mem, _t58, cpu->r[29]);
|
|
/* 02426A84 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426A88 */ _t59 = cpu->r[1] + 0x00000018u;
|
|
/* 02426A88 */ rbrew_write32(cpu->mem, _t59, cpu->r[30]);
|
|
/* 02426A8C */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426A90 */ _t60 = cpu->r[1] + 0x00000008u;
|
|
/* 02426A90 */ rbrew_write32(cpu->mem, _t60, cpu->r[30]);
|
|
/* 02426A94 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426A98 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426A98 */ rbrew_write32(cpu->mem, _t61, cpu->r[29]);
|
|
/* 02426A9C */ _t62 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426A9C */ rbrew_write32(cpu->mem, _t62, cpu->r[29]);
|
|
/* 02426AA0 */ _t63 = cpu->r[1] + 0x00000010u;
|
|
/* 02426AA0 */ rbrew_write32(cpu->mem, _t63, cpu->r[31]);
|
|
/* 02426AA4 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426AA8 */ _t64 = cpu->r[1] + 0x00000008u;
|
|
/* 02426AA8 */ rbrew_write32(cpu->mem, _t64, cpu->r[30]);
|
|
/* 02426AAC */ cpu->r[4] = 0x00000000u;
|
|
/* 02426AB0 */ _t65 = cpu->r[28] + 0x00000238u;
|
|
/* 02426AB0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02426AB4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426AB8 */ _t66 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426AB8 */ rbrew_write32(cpu->mem, _t66, cpu->r[29]);
|
|
/* 02426ABC */ Gambit_fn_027ED624(cpu);
|
|
/* 02426AC0 */ _t67 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426AC0 */ rbrew_write32(cpu->mem, _t67, cpu->r[29]);
|
|
/* 02426AC4 */ _t68 = cpu->r[1] + 0x00000010u;
|
|
/* 02426AC4 */ rbrew_write32(cpu->mem, _t68, cpu->r[31]);
|
|
/* 02426AC8 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02426ACC */ _t69 = cpu->r[28] + 0x0000023Cu;
|
|
/* 02426ACC */ cpu->r[3] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02426AD0 */ _t70 = cpu->r[1] + 0x00000008u;
|
|
/* 02426AD0 */ rbrew_write32(cpu->mem, _t70, cpu->r[30]);
|
|
/* 02426AD4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02426AD8 */ _t71 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426AD8 */ rbrew_write32(cpu->mem, _t71, cpu->r[29]);
|
|
/* 02426ADC */ _t72 = cpu->r[1] + 0x00000018u;
|
|
/* 02426ADC */ rbrew_write32(cpu->mem, _t72, cpu->r[30]);
|
|
/* 02426AE0 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02426AE4 */ _t73 = cpu->r[1] + 0x00000014u;
|
|
/* 02426AE4 */ rbrew_write32(cpu->mem, _t73, cpu->r[29]);
|
|
/* 02426AE8 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02426AEC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426AF0 */ _t74 = cpu->r[28] + 0x0000023Cu;
|
|
/* 02426AF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02426AF4 */ _t75 = cpu->r[1] + 0x00000008u;
|
|
/* 02426AF4 */ rbrew_write32(cpu->mem, _t75, cpu->r[30]);
|
|
/* 02426AF8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02426AFC */ _t76 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426AFC */ rbrew_write32(cpu->mem, _t76, cpu->r[29]);
|
|
/* 02426B00 */ Gambit_fn_027ED624(cpu);
|
|
/* 02426B04 */ _t77 = cpu->r[28] + 0x0000021Cu;
|
|
/* 02426B04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02426B08 */ Gambit_fn_02460DC4(cpu);
|
|
/* 02426B0C */ _t78 = cpu->r[1] + 0x00000028u;
|
|
/* 02426B0C */ cpu->r[28] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02426B10 */ _t79 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02426B10 */ cpu->r[29] = rbrew_read32(cpu->mem, _t79);
|
|
/* 02426B14 */ _t80 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02426B14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t80);
|
|
/* 02426B18 */ _t81 = cpu->r[1] + 0x00000030u;
|
|
/* 02426B18 */ cpu->r[30] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02426B1C */ cpu->lr = cpu->r[0];
|
|
/* 02426B20 */ _t82 = cpu->r[1] + 0x00000034u;
|
|
/* 02426B20 */ cpu->r[31] = rbrew_read32(cpu->mem, _t82);
|
|
/* 02426B24 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 02426B28 */ return;
|
|
}
|
|
|
|
// fn_02426B2C @ 0x2426b2c
|
|
void Gambit_fn_02426B2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02426B2C: ; // 0x2426b2c
|
|
/* 02426B2C */ _t0 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02426B2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02426B30 */ goto L_02461634;
|
|
L_02461634: ; // 0x2461634
|
|
/* 02461634 */ cpu->r[0] = cpu->lr;
|
|
/* 02461638 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02461638 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02461638 */ cpu->r[1] = _t1;
|
|
/* 0246163C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0246163C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02461640 */ cpu->r[31] = cpu->r[3];
|
|
/* 02461644 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02461644 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02461648 */ _t4 = cpu->r[31] + 0x00000010u;
|
|
/* 02461648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0246164C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0246164C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02461650 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02461650 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02461650 */ if (_t6) goto L_0246167C; else goto L_02461654;
|
|
L_02461654: ; // 0x2461654
|
|
/* 02461654 */ _t7 = cpu->r[31] + 0x00000008u;
|
|
/* 02461654 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02461658 */ cpu->r[4] = 0x101E0000u;
|
|
/* 0246165C */ _t8 = cpu->r[12] + 0x000001ACu;
|
|
/* 0246165C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02461660 */ cpu->r[4] = cpu->r[4] + 0x00007A5Cu;
|
|
/* 02461664 */ Gambit_fn_027B70B8(cpu);
|
|
/* 02461668 */ _t9 = cpu->r[31] + 0x00000008u;
|
|
/* 02461668 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0246166C */ cpu->r[4] = 0x101E0000u;
|
|
/* 02461670 */ _t10 = cpu->r[12] + 0x000001ACu;
|
|
/* 02461670 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02461674 */ cpu->r[4] = cpu->r[4] + 0x00007A64u;
|
|
/* 02461678 */ Gambit_fn_027B70B8(cpu);
|
|
L_0246167C: ; // 0x246167c
|
|
/* 0246167C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0246167C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02461680 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02461680 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02461684 */ cpu->lr = cpu->r[0];
|
|
/* 02461688 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0246168C */ return;
|
|
}
|
|
|
|
// fn_02426B34 @ 0x2426b34
|
|
void Gambit_fn_02426B34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02426B34: ; // 0x2426b34
|
|
/* 02426B34 */ cpu->r[0] = cpu->lr;
|
|
/* 02426B38 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02426B38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426B38 */ cpu->r[1] = _t0;
|
|
/* 02426B3C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426B3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02426B40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02426B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02426B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02426B48 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02426B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02426B4C */ Gambit_fn_02460968(cpu);
|
|
/* 02426B50 */ _t4 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02426B50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02426B54 */ Gambit_fn_0245FD08(cpu);
|
|
/* 02426B58 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02426B58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02426B5C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426B5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02426B60 */ cpu->lr = cpu->r[0];
|
|
/* 02426B64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02426B68 */ return;
|
|
}
|
|
|
|
// fn_02426B38 @ 0x2426b38
|
|
void Gambit_fn_02426B38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02426B38: ; // 0x2426b38
|
|
/* 02426B38 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02426B38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426B38 */ cpu->r[1] = _t0;
|
|
/* 02426B3C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426B3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02426B40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02426B44 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02426B44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02426B48 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02426B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02426B4C */ Gambit_fn_02460968(cpu);
|
|
/* 02426B50 */ _t4 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02426B50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02426B54 */ Gambit_fn_0245FD08(cpu);
|
|
/* 02426B58 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02426B58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02426B5C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426B5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02426B60 */ cpu->lr = cpu->r[0];
|
|
/* 02426B64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02426B68 */ return;
|
|
}
|
|
|
|
// fn_02426B6C @ 0x2426b6c
|
|
void Gambit_fn_02426B6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_02426B6C: ; // 0x2426b6c
|
|
/* 02426B6C */ cpu->r[0] = cpu->lr;
|
|
/* 02426B70 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02426B70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426B70 */ cpu->r[1] = _t0;
|
|
/* 02426B74 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02426B74 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02426B78 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02426B78 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02426B7C */ /* nop */
|
|
/* 02426B80 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426B80 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02426B84 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 02426B84 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02426B88 */ cpu->r[31] = cpu->r[3];
|
|
/* 02426B8C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02426B8C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02426B90 */ _t6 = cpu->r[1] + 0x00000034u;
|
|
/* 02426B90 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02426B94 */ _t7 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02426B94 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02426B98 */ Gambit_fn_02460668(cpu);
|
|
/* 02426B9C */ _t8 = cpu->r[31] + 0x00000240u;
|
|
/* 02426B9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02426BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02426BA4 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02426BA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02426BA4 */ if (_t10) goto L_02426BA8; else goto L_02426C04;
|
|
L_02426BA8: ; // 0x2426ba8
|
|
/* 02426BA8 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02426BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02426BAC */ _t11 = cpu->r[31] + 0x00000240u;
|
|
/* 02426BAC */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02426BB0 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02426BB0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02426BB0 */ if (_t13) goto L_02426C04; else goto L_02426BB4;
|
|
L_02426BB4: ; // 0x2426bb4
|
|
/* 02426BB4 */ cpu->r[11] = 0x10090000u;
|
|
/* 02426BB8 */ cpu->r[30] = 0x10090000u;
|
|
/* 02426BBC */ _t14 = cpu->r[11] + 0x00007F4Cu;
|
|
/* 02426BBC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02426BC0 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02426BC4 */ cpu->r[30] = cpu->r[30] + 0x00007EBCu;
|
|
/* 02426BC8 */ cpu->r[29] = cpu->r[29] + 0xFFFF80E0u;
|
|
/* 02426BCC */ cpu->f[1] = cpu->f[31];
|
|
/* 02426BD0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02426BD0 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 02426BD4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426BD8 */ _t16 = cpu->r[31] + 0x00000238u;
|
|
/* 02426BD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02426BDC */ cpu->r[4] = 0x00000000u;
|
|
/* 02426BE0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426BE0 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 02426BE4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02426BE8 */ cpu->f[1] = cpu->f[31];
|
|
/* 02426BEC */ _t18 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02426BEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02426BF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02426BF4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426BF4 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 02426BF8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426BFC */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02426BFC */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 02426C00 */ Gambit_fn_027ED1E4(cpu);
|
|
L_02426C04: ; // 0x2426c04
|
|
/* 02426C04 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02426C04 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02426C08 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 02426C08 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02426C0C */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 02426C0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02426C10 */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 02426C10 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 02426C14 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426C14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02426C18 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02426C18 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02426C18 */ if (_t27) goto L_02426C1C; // else: addr-0 trap, fall-through
|
|
L_02426C1C: ; // 0x2426c1c
|
|
/* 02426C1C */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 02426C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02426C20 */ cpu->lr = cpu->r[0];
|
|
/* 02426C24 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02426C28 */ return;
|
|
}
|
|
|
|
// fn_02426B70 @ 0x2426b70
|
|
void Gambit_fn_02426B70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28;
|
|
|
|
L_02426B70: ; // 0x2426b70
|
|
/* 02426B70 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02426B70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426B70 */ cpu->r[1] = _t0;
|
|
/* 02426B74 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02426B74 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]);
|
|
/* 02426B78 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02426B78 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02426B7C */ /* nop */
|
|
/* 02426B80 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426B80 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02426B84 */ _t4 = cpu->r[1] + 0x00000028u;
|
|
/* 02426B84 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02426B88 */ cpu->r[31] = cpu->r[3];
|
|
/* 02426B8C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02426B8C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02426B90 */ _t6 = cpu->r[1] + 0x00000034u;
|
|
/* 02426B90 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02426B94 */ _t7 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02426B94 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02426B98 */ Gambit_fn_02460668(cpu);
|
|
/* 02426B9C */ _t8 = cpu->r[31] + 0x00000240u;
|
|
/* 02426B9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02426BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02426BA4 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02426BA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02426BA4 */ if (_t10) goto L_02426BA8; else goto L_02426C04;
|
|
L_02426BA8: ; // 0x2426ba8
|
|
/* 02426BA8 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02426BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02426BAC */ _t11 = cpu->r[31] + 0x00000240u;
|
|
/* 02426BAC */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02426BB0 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02426BB0 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02426BB0 */ if (_t13) goto L_02426C04; else goto L_02426BB4;
|
|
L_02426BB4: ; // 0x2426bb4
|
|
/* 02426BB4 */ cpu->r[11] = 0x10090000u;
|
|
/* 02426BB8 */ cpu->r[30] = 0x10090000u;
|
|
/* 02426BBC */ _t14 = cpu->r[11] + 0x00007F4Cu;
|
|
/* 02426BBC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 02426BC0 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02426BC4 */ cpu->r[30] = cpu->r[30] + 0x00007EBCu;
|
|
/* 02426BC8 */ cpu->r[29] = cpu->r[29] + 0xFFFF80E0u;
|
|
/* 02426BCC */ cpu->f[1] = cpu->f[31];
|
|
/* 02426BD0 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02426BD0 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 02426BD4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426BD8 */ _t16 = cpu->r[31] + 0x00000238u;
|
|
/* 02426BD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02426BDC */ cpu->r[4] = 0x00000000u;
|
|
/* 02426BE0 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426BE0 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]);
|
|
/* 02426BE4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02426BE8 */ cpu->f[1] = cpu->f[31];
|
|
/* 02426BEC */ _t18 = cpu->r[31] + 0x0000023Cu;
|
|
/* 02426BEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02426BF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02426BF4 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426BF4 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]);
|
|
/* 02426BF8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02426BFC */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 02426BFC */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 02426C00 */ Gambit_fn_027ED1E4(cpu);
|
|
L_02426C04: ; // 0x2426c04
|
|
/* 02426C04 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02426C04 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02426C08 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 02426C08 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t22);
|
|
/* 02426C0C */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 02426C0C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02426C10 */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 02426C10 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 02426C14 */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02426C14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02426C18 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02426C18 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02426C18 */ if (_t27) goto L_02426C1C; // else: addr-0 trap, fall-through
|
|
L_02426C1C: ; // 0x2426c1c
|
|
/* 02426C1C */ _t28 = cpu->r[1] + 0x00000034u;
|
|
/* 02426C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02426C20 */ cpu->lr = cpu->r[0];
|
|
/* 02426C24 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02426C28 */ return;
|
|
}
|
|
|
|
// fn_02426C2C @ 0x2426c2c
|
|
void Gambit_fn_02426C2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54;
|
|
|
|
L_02426C2C: ; // 0x2426c2c
|
|
/* 02426C2C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02426C2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426C2C */ cpu->r[1] = _t0;
|
|
/* 02426C30 */ cpu->r[0] = cpu->lr;
|
|
/* 02426C34 */ /* nop */
|
|
/* 02426C38 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02426C3C */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02426C3C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02426C40 */ cpu->r[29] = cpu->r[4];
|
|
/* 02426C44 */ cpu->r[7] = cpu->r[7] + 0xFFFF80F4u;
|
|
/* 02426C48 */ cpu->r[27] = 0x10090000u;
|
|
/* 02426C4C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02426C4C */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 02426C50 */ cpu->r[27] = cpu->r[27] + 0x00007EBCu;
|
|
/* 02426C54 */ cpu->r[30] = 0x02420000u;
|
|
/* 02426C58 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02426C58 */ rbrew_write32(cpu->mem, _t3, cpu->r[27]);
|
|
/* 02426C5C */ cpu->r[30] = cpu->r[30] + 0x00006EB0u;
|
|
/* 02426C60 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426C60 */ rbrew_write32(cpu->mem, _t4, cpu->r[27]);
|
|
/* 02426C64 */ cpu->ctr = cpu->r[30];
|
|
/* 02426C68 */ cpu->r[28] = cpu->r[3];
|
|
/* 02426C6C */ _t5 = cpu->r[29] + 0x0000008Cu;
|
|
/* 02426C6C */ cpu->r[6] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02426C70 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02426C70 */ rbrew_write32(cpu->mem, _t6, cpu->r[6]);
|
|
/* 02426C74 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02426C78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426C7C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426C7C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02426C80 */ _t8 = cpu->r[8] + 0x00000014u;
|
|
/* 02426C80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02426C84 */ cpu->ctr = cpu->r[9];
|
|
/* 02426C88 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02426C8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426C90 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02426C90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02426C94 */ _t10 = cpu->r[10] + 0x00000014u;
|
|
/* 02426C94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02426C98 */ cpu->ctr = cpu->r[11];
|
|
/* 02426C9C */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02426C9C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02426CA0 */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02426CA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426CA8 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02426CA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02426CAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 02426CB0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426CB0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02426CB0 */ if (_t14) goto L_02426CF8; else goto L_02426CB4;
|
|
L_02426CB4: ; // 0x2426cb4
|
|
/* 02426CB4 */ cpu->r[0] = 0x00080000u;
|
|
/* 02426CB8 */ cpu->r[31] = 0x10110000u;
|
|
/* 02426CBC */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 02426CBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02426CC0 */ cpu->r[0] = cpu->r[0] | 0x00000001u;
|
|
/* 02426CC4 */ _t16 = cpu->r[31] + 0x00007399u;
|
|
/* 02426CC4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t16);
|
|
/* 02426CC8 */ cpu->ctr = cpu->r[0];
|
|
/* 02426CCC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02426CCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02426CD0 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_02426CD4: ; // 0x2426cd4
|
|
/* 02426CD4 */ _t18 = cpu->r[10] + 0x00000000u;
|
|
/* 02426CD4 */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 02426CD8 */ _t19 = cpu->r[11] + 0x00000001u;
|
|
/* 02426CD8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 02426CD8 */ cpu->r[11] = _t19;
|
|
/* 02426CDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]);
|
|
/* 02426CE0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426CE0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02426CE0 */ if (_t21) goto L_02426CE4; else goto L_02426D10;
|
|
L_02426CE4: ; // 0x2426ce4
|
|
/* 02426CE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 02426CE8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426CE8 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02426CE8 */ if (_t23) goto L_02426CF8; else goto L_02426CEC;
|
|
L_02426CEC: ; // 0x2426cec
|
|
/* 02426CEC */ cpu->r[10] = cpu->r[10] + 0x00000001u;
|
|
/* 02426CF0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02426CF0 */ _t24 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02426CF0 */ _t25 = _t24 >> (0x00000002u & 31u);
|
|
/* 02426CF0 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02426CF0 */ if (_t26) goto L_02426CD4; else goto L_02426CF4;
|
|
L_02426CF4: ; // 0x2426cf4
|
|
/* 02426CF4 */ goto L_02426D10;
|
|
L_02426CF8: ; // 0x2426cf8
|
|
/* 02426CF8 */ /* nop */
|
|
/* 02426CFC */ _t27 = cpu->r[1] + 0x00000034u;
|
|
/* 02426CFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02426D00 */ cpu->lr = cpu->r[0];
|
|
/* 02426D04 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02426D08 */ cpu->r[3] = 0x00000001u;
|
|
/* 02426D0C */ return;
|
|
L_02426D10: ; // 0x2426d10
|
|
/* 02426D10 */ _t28 = cpu->r[29] + 0x0000008Cu;
|
|
/* 02426D10 */ cpu->r[6] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02426D14 */ cpu->ctr = cpu->r[30];
|
|
/* 02426D18 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02426D1C */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 02426D1C */ rbrew_write32(cpu->mem, _t29, cpu->r[6]);
|
|
/* 02426D20 */ cpu->r[7] = cpu->r[7] + 0xFFFF80E4u;
|
|
/* 02426D24 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02426D24 */ rbrew_write32(cpu->mem, _t30, cpu->r[27]);
|
|
/* 02426D28 */ _t31 = cpu->r[1] + 0x00000010u;
|
|
/* 02426D28 */ rbrew_write32(cpu->mem, _t31, cpu->r[7]);
|
|
/* 02426D2C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02426D30 */ _t32 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426D30 */ rbrew_write32(cpu->mem, _t32, cpu->r[27]);
|
|
/* 02426D34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426D38 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426D38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02426D3C */ _t34 = cpu->r[8] + 0x00000014u;
|
|
/* 02426D3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t34);
|
|
/* 02426D40 */ cpu->ctr = cpu->r[9];
|
|
/* 02426D44 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02426D48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426D4C */ _t35 = cpu->r[1] + 0x00000014u;
|
|
/* 02426D4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02426D50 */ _t36 = cpu->r[10] + 0x00000014u;
|
|
/* 02426D50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02426D54 */ cpu->ctr = cpu->r[12];
|
|
/* 02426D58 */ _t37 = cpu->r[1] + 0x00000008u;
|
|
/* 02426D58 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02426D5C */ cpu->r[3] = cpu->r[1] + 0x00000010u;
|
|
/* 02426D60 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02426D64 */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 02426D64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02426D68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 02426D6C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426D6C */ _t40 = _t39 & 0x00000001u;
|
|
/* 02426D6C */ if (_t40) goto L_02426D70; else goto L_02426D88;
|
|
L_02426D70: ; // 0x2426d70
|
|
/* 02426D70 */ /* nop */
|
|
/* 02426D74 */ _t41 = cpu->r[1] + 0x00000034u;
|
|
/* 02426D74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02426D78 */ cpu->lr = cpu->r[0];
|
|
/* 02426D7C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02426D80 */ cpu->r[3] = 0x00000002u;
|
|
/* 02426D84 */ return;
|
|
L_02426D88: ; // 0x2426d88
|
|
/* 02426D88 */ cpu->r[5] = 0x00080000u;
|
|
/* 02426D8C */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 02426D8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02426D90 */ cpu->r[5] = cpu->r[5] + 0x00000001u;
|
|
/* 02426D94 */ _t43 = cpu->r[1] + 0x00000008u;
|
|
/* 02426D94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02426D98 */ cpu->ctr = cpu->r[5];
|
|
/* 02426D9C */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02426DA0: ; // 0x2426da0
|
|
/* 02426DA0 */ _t44 = cpu->r[8] + 0x00000000u;
|
|
/* 02426DA0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t44);
|
|
/* 02426DA4 */ _t45 = cpu->r[9] + 0x00000001u;
|
|
/* 02426DA4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t45);
|
|
/* 02426DA4 */ cpu->r[9] = _t45;
|
|
/* 02426DA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 02426DAC */ _t46 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426DAC */ _t47 = _t46 & 0x00000001u;
|
|
/* 02426DAC */ if (_t47) goto L_02426DB0; else goto L_02426DC0;
|
|
L_02426DB0: ; // 0x2426db0
|
|
/* 02426DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02426DB4 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426DB4 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02426DB4 */ if (_t49) goto L_02426D70; else goto L_02426DB8;
|
|
L_02426DB8: ; // 0x2426db8
|
|
/* 02426DB8 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02426DBC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02426DBC */ _t50 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02426DBC */ _t51 = _t50 >> (0x00000002u & 31u);
|
|
/* 02426DBC */ _t52 = _t51 & 0x00000001u;
|
|
/* 02426DBC */ if (_t52) goto L_02426DA0; else goto L_02426DC0;
|
|
L_02426DC0: ; // 0x2426dc0
|
|
/* 02426DC0 */ cpu->r[3] = 0x00000002u;
|
|
/* 02426DC4 */ _t53 = cpu->r[28] + 0x0000021Cu;
|
|
/* 02426DC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02426DC8 */ cpu->r[4] = cpu->r[29];
|
|
/* 02426DCC */ Gambit_fn_024613FC(cpu);
|
|
/* 02426DD0 */ /* nop */
|
|
/* 02426DD4 */ _t54 = cpu->r[1] + 0x00000034u;
|
|
/* 02426DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02426DD8 */ cpu->lr = cpu->r[0];
|
|
/* 02426DDC */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02426DE0 */ return;
|
|
}
|
|
|
|
// fn_02426DE4 @ 0x2426de4
|
|
void Gambit_fn_02426DE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02426DE4: ; // 0x2426de4
|
|
/* 02426DE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02426DE8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426DE8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02426DE8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02426DE8 */ goto L_02426DEC;
|
|
L_02426DEC: ; // 0x2426dec
|
|
/* 02426DEC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02426DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02426DF0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426DF0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02426DF0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02426DF0 */ goto L_02426DF4;
|
|
L_02426DF4: ; // 0x2426df4
|
|
/* 02426DF4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02426DF8 @ 0x2426df8
|
|
void Gambit_fn_02426DF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02426DF8: ; // 0x2426df8
|
|
/* 02426DF8 */ cpu->r[0] = cpu->lr;
|
|
/* 02426DFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02426DFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426DFC */ cpu->r[1] = _t0;
|
|
/* 02426E00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426E00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02426E04 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02426E04 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02426E08 */ cpu->r[30] = cpu->r[3];
|
|
/* 02426E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02426E0C */ cpu->r[31] = cpu->r[4];
|
|
/* 02426E10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02426E10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02426E14 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426E14 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02426E14 */ if (_t5) goto L_02426E84; else goto L_02426E18;
|
|
L_02426E18: ; // 0x2426e18
|
|
/* 02426E18 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02426E1C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02426E20 */ cpu->r[0] = cpu->r[0] + 0xFFFF82E4u;
|
|
/* 02426E24 */ cpu->r[12] = cpu->r[12] + 0xFFFF8304u;
|
|
/* 02426E28 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02426E28 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02426E2C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02426E30 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02426E30 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02426E34 */ cpu->r[11] = cpu->r[11] + 0xFFFF82F4u;
|
|
/* 02426E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02426E3C */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02426E3C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02426E40 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426E40 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02426E40 */ if (_t10) goto L_02426E74; else goto L_02426E44;
|
|
L_02426E44: ; // 0x2426e44
|
|
/* 02426E44 */ cpu->r[10] = 0x10010000u;
|
|
/* 02426E48 */ cpu->r[0] = 0x10010000u;
|
|
/* 02426E4C */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02426E50 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02426E54 */ cpu->r[3] = cpu->r[30];
|
|
/* 02426E58 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02426E58 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02426E5C */ cpu->r[0] = 0x10010000u;
|
|
/* 02426E60 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02426E60 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02426E64 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02426E68 */ cpu->r[4] = 0x00000000u;
|
|
/* 02426E6C */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02426E6C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02426E70 */ Gambit_fn_02068798(cpu);
|
|
L_02426E74: ; // 0x2426e74
|
|
/* 02426E74 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02426E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02426E78 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426E78 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02426E78 */ if (_t15) goto L_02426E84; else goto L_02426E7C;
|
|
L_02426E7C: ; // 0x2426e7c
|
|
/* 02426E7C */ cpu->r[3] = cpu->r[30];
|
|
/* 02426E80 */ Gambit_fn_02801BB0(cpu);
|
|
L_02426E84: ; // 0x2426e84
|
|
/* 02426E84 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02426E84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02426E88 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02426E88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02426E8C */ cpu->lr = cpu->r[0];
|
|
/* 02426E90 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426E90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02426E94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02426E98 */ return;
|
|
}
|
|
|
|
// fn_02426DFC @ 0x2426dfc
|
|
void Gambit_fn_02426DFC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02426DFC: ; // 0x2426dfc
|
|
/* 02426DFC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02426DFC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02426DFC */ cpu->r[1] = _t0;
|
|
/* 02426E00 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426E00 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02426E04 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02426E04 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02426E08 */ cpu->r[30] = cpu->r[3];
|
|
/* 02426E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02426E0C */ cpu->r[31] = cpu->r[4];
|
|
/* 02426E10 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02426E10 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02426E14 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426E14 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02426E14 */ if (_t5) goto L_02426E84; else goto L_02426E18;
|
|
L_02426E18: ; // 0x2426e18
|
|
/* 02426E18 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02426E1C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02426E20 */ cpu->r[0] = cpu->r[0] + 0xFFFF82E4u;
|
|
/* 02426E24 */ cpu->r[12] = cpu->r[12] + 0xFFFF8304u;
|
|
/* 02426E28 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02426E28 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02426E2C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02426E30 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02426E30 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02426E34 */ cpu->r[11] = cpu->r[11] + 0xFFFF82F4u;
|
|
/* 02426E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02426E3C */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02426E3C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02426E40 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426E40 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02426E40 */ if (_t10) goto L_02426E74; else goto L_02426E44;
|
|
L_02426E44: ; // 0x2426e44
|
|
/* 02426E44 */ cpu->r[10] = 0x10010000u;
|
|
/* 02426E48 */ cpu->r[0] = 0x10010000u;
|
|
/* 02426E4C */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02426E50 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02426E54 */ cpu->r[3] = cpu->r[30];
|
|
/* 02426E58 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02426E58 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02426E5C */ cpu->r[0] = 0x10010000u;
|
|
/* 02426E60 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02426E60 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02426E64 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02426E68 */ cpu->r[4] = 0x00000000u;
|
|
/* 02426E6C */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02426E6C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02426E70 */ Gambit_fn_02068798(cpu);
|
|
L_02426E74: ; // 0x2426e74
|
|
/* 02426E74 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02426E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02426E78 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426E78 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02426E78 */ if (_t15) goto L_02426E84; else goto L_02426E7C;
|
|
L_02426E7C: ; // 0x2426e7c
|
|
/* 02426E7C */ cpu->r[3] = cpu->r[30];
|
|
/* 02426E80 */ Gambit_fn_02801BB0(cpu);
|
|
L_02426E84: ; // 0x2426e84
|
|
/* 02426E84 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02426E84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02426E88 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02426E88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02426E8C */ cpu->lr = cpu->r[0];
|
|
/* 02426E90 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02426E90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02426E94 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02426E98 */ return;
|
|
}
|
|
|
|
// fn_02426E9C @ 0x2426e9c
|
|
void Gambit_fn_02426E9C(CPUState* cpu) {
|
|
L_02426E9C: ; // 0x2426e9c
|
|
/* 02426E9C */ return;
|
|
}
|
|
|
|
// fn_02426EA0 @ 0x2426ea0
|
|
void Gambit_fn_02426EA0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02426EA0: ; // 0x2426ea0
|
|
/* 02426EA0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02426EA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02426EA4 */ return;
|
|
}
|
|
|
|
// fn_02426EA8 @ 0x2426ea8
|
|
void Gambit_fn_02426EA8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02426EA8: ; // 0x2426ea8
|
|
/* 02426EA8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02426EA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02426EAC */ return;
|
|
}
|
|
|
|
// fn_02426EB0 @ 0x2426eb0
|
|
void Gambit_fn_02426EB0(CPUState* cpu) {
|
|
L_02426EB0: ; // 0x2426eb0
|
|
/* 02426EB0 */ return;
|
|
}
|
|
|
|
// fn_02426EB4 @ 0x2426eb4
|
|
void Gambit_fn_02426EB4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02426EB4: ; // 0x2426eb4
|
|
/* 02426EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02426EB8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426EB8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02426EB8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02426EB8 */ goto L_02426EBC;
|
|
L_02426EBC: ; // 0x2426ebc
|
|
/* 02426EBC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02426EBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02426EC0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426EC0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02426EC0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02426EC0 */ goto L_02426EC4;
|
|
L_02426EC4: ; // 0x2426ec4
|
|
/* 02426EC4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02426EC8 @ 0x2426ec8
|
|
void Gambit_fn_02426EC8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02426EC8: ; // 0x2426ec8
|
|
/* 02426EC8 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02426EC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02426ECC */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02426ECC */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02426ED0 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02426ED4 */ cpu->r[11] = 0x10110000u;
|
|
/* 02426ED8 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02426ED8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02426EDC */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02426EDC */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02426EE0 */ return;
|
|
}
|
|
|
|
// fn_02426EE4 @ 0x2426ee4
|
|
void Gambit_fn_02426EE4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02426EE4: ; // 0x2426ee4
|
|
/* 02426EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02426EE8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426EE8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02426EE8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02426EE8 */ goto L_02426EEC;
|
|
L_02426EEC: ; // 0x2426eec
|
|
/* 02426EEC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02426EEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02426EF0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426EF0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02426EF0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02426EF0 */ goto L_02426EF4;
|
|
L_02426EF4: ; // 0x2426ef4
|
|
/* 02426EF4 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02426EF8 @ 0x2426ef8
|
|
void Gambit_fn_02426EF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02426EF8: ; // 0x2426ef8
|
|
/* 02426EF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02426EFC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426EFC */ _t1 = _t0 & 0x00000001u;
|
|
/* 02426EFC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02426EFC */ goto L_02426F00;
|
|
L_02426F00: ; // 0x2426f00
|
|
/* 02426F00 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02426F00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02426F04 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426F04 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02426F04 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02426F04 */ goto L_02426F08;
|
|
L_02426F08: ; // 0x2426f08
|
|
/* 02426F08 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02426F0C @ 0x2426f0c
|
|
void Gambit_fn_02426F0C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02426F0C: ; // 0x2426f0c
|
|
/* 02426F0C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02426F0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02426F10 */ return;
|
|
}
|
|
|
|
// fn_02426F14 @ 0x2426f14
|
|
void Gambit_fn_02426F14(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02426F14: ; // 0x2426f14
|
|
/* 02426F14 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02426F14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02426F18 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02426F18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02426F1C */ cpu->ctr = cpu->r[0];
|
|
/* 02426F20 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02426F24 @ 0x2426f24
|
|
void Gambit_fn_02426F24(CPUState* cpu) {
|
|
L_02426F24: ; // 0x2426f24
|
|
/* 02426F24 */ return;
|
|
}
|
|
|
|
// fn_02426F28 @ 0x2426f28
|
|
void Gambit_fn_02426F28(CPUState* cpu) {
|
|
L_02426F28: ; // 0x2426f28
|
|
/* 02426F28 */ cpu->r[3] = 0x00000000u;
|
|
/* 02426F2C */ return;
|
|
}
|
|
|
|
// fn_02426F30 @ 0x2426f30
|
|
void Gambit_fn_02426F30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02426F30: ; // 0x2426f30
|
|
/* 02426F30 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02426F34 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02426F34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02426F34 */ cpu->r[9] = _t0;
|
|
/* 02426F38 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02426F3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02426F40 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02426F44 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426F44 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02426F44 */ if (_t2) goto L_02426F48; else goto L_02426F5C;
|
|
L_02426F48: ; // 0x2426f48
|
|
/* 02426F48 */ cpu->r[7] = 0x10090000u;
|
|
/* 02426F4C */ cpu->r[0] = 0x00000001u;
|
|
/* 02426F50 */ cpu->r[7] = cpu->r[7] + 0x00007F1Cu;
|
|
/* 02426F54 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02426F54 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02426F58 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02426F58 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02426F5C: ; // 0x2426f5c
|
|
/* 02426F5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02426F60 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426F60 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02426F60 */ if (_t6) goto L_02426F64; else goto L_02426F6C;
|
|
L_02426F64: ; // 0x2426f64
|
|
/* 02426F64 */ cpu->r[3] = 0x00000001u;
|
|
/* 02426F68 */ return;
|
|
L_02426F6C: ; // 0x2426f6c
|
|
/* 02426F6C */ cpu->r[7] = 0x101D0000u;
|
|
/* 02426F70 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02426F70 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02426F70 */ cpu->r[7] = _t7;
|
|
/* 02426F74 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02426F78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02426F7C */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02426F80 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02426F80 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02426F80 */ if (_t9) goto L_02426F84; else goto L_02426F98;
|
|
L_02426F84: ; // 0x2426f84
|
|
/* 02426F84 */ cpu->r[0] = 0x10090000u;
|
|
/* 02426F88 */ cpu->r[9] = 0x00000001u;
|
|
/* 02426F8C */ cpu->r[0] = cpu->r[0] + 0x00007EACu;
|
|
/* 02426F90 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02426F90 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02426F94 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02426F94 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02426F98: ; // 0x2426f98
|
|
/* 02426F98 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02426F9C */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02426FA0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02426FA4 */ return;
|
|
}
|
|
|
|
// fn_02426FA8 @ 0x2426fa8
|
|
void Gambit_fn_02426FA8(CPUState* cpu) {
|
|
L_02426FA8: ; // 0x2426fa8
|
|
/* 02426FA8 */ return;
|
|
}
|
|
|
|
// fn_02426FAC @ 0x2426fac
|
|
void Gambit_fn_02426FAC(CPUState* cpu) {
|
|
L_02426FAC: ; // 0x2426fac
|
|
/* 02426FAC */ return;
|
|
}
|
|
|
|
// fn_02426FB0 @ 0x2426fb0
|
|
void Gambit_fn_02426FB0(CPUState* cpu) {
|
|
L_02426FB0: ; // 0x2426fb0
|
|
/* 02426FB0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02426FB4 */ return;
|
|
}
|
|
|
|
// fn_02426FB8 @ 0x2426fb8
|
|
void Gambit_fn_02426FB8(CPUState* cpu) {
|
|
L_02426FB8: ; // 0x2426fb8
|
|
/* 02426FB8 */ return;
|
|
}
|
|
|
|
// fn_02426FBC @ 0x2426fbc
|
|
void Gambit_fn_02426FBC(CPUState* cpu) {
|
|
L_02426FBC: ; // 0x2426fbc
|
|
/* 02426FBC */ return;
|
|
}
|
|
|
|
// fn_02426FC0 @ 0x2426fc0
|
|
void Gambit_fn_02426FC0(CPUState* cpu) {
|
|
L_02426FC0: ; // 0x2426fc0
|
|
/* 02426FC0 */ return;
|
|
}
|
|
|
|
// fn_02426FC4 @ 0x2426fc4
|
|
void Gambit_fn_02426FC4(CPUState* cpu) {
|
|
L_02426FC4: ; // 0x2426fc4
|
|
/* 02426FC4 */ return;
|
|
}
|
|
|
|
// fn_02426FC8 @ 0x2426fc8
|
|
void Gambit_fn_02426FC8(CPUState* cpu) {
|
|
L_02426FC8: ; // 0x2426fc8
|
|
/* 02426FC8 */ return;
|
|
}
|
|
|
|
// fn_02426FCC @ 0x2426fcc
|
|
void Gambit_fn_02426FCC(CPUState* cpu) {
|
|
L_02426FCC: ; // 0x2426fcc
|
|
/* 02426FCC */ return;
|
|
}
|
|
|
|
// fn_02426FD0 @ 0x2426fd0
|
|
void Gambit_fn_02426FD0(CPUState* cpu) {
|
|
L_02426FD0: ; // 0x2426fd0
|
|
/* 02426FD0 */ return;
|
|
}
|
|
|
|
// fn_02426FD4 @ 0x2426fd4
|
|
void Gambit_fn_02426FD4(CPUState* cpu) {
|
|
L_02426FD4: ; // 0x2426fd4
|
|
/* 02426FD4 */ return;
|
|
}
|
|
|
|
// fn_02426FD8 @ 0x2426fd8
|
|
void Gambit_fn_02426FD8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0200896C: ; // 0x200896c
|
|
/* 0200896C */ cpu->r[0] = cpu->lr;
|
|
/* 02008970 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02008970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02008970 */ cpu->r[1] = _t0;
|
|
/* 02008974 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02008974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02008978 */ cpu->r[31] = cpu->r[3];
|
|
/* 0200897C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0200897C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02008980 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02008980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02008984 */ cpu->r[12] = 0x00000000u;
|
|
/* 02008988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0200898C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0200898C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02008990 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02008990 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02008990 */ if (_t6) goto L_020089B8; else goto L_02008994;
|
|
L_02008994: ; // 0x2008994
|
|
/* 02008994 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02008994 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02008998 */ /* nop */
|
|
/* 0200899C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020089A0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020089A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020089A0 */ if (_t9) goto L_020089A4; else goto L_020089B8;
|
|
L_020089A4: ; // 0x20089a4
|
|
/* 020089A4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020089A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020089A8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020089A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020089AC */ cpu->ctr = cpu->r[0];
|
|
/* 020089B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020089B8: ; // 0x20089b8
|
|
/* 020089B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089BC */ Gambit_fn_020088E4(cpu);
|
|
/* 020089C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089C4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020089C8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020089C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020089CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020089CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020089D0 */ cpu->lr = cpu->r[0];
|
|
/* 020089D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020089D8 */ return;
|
|
L_02426FD8: ; // 0x2426fd8
|
|
/* 02426FD8 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02426FDC */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_02426FE0 @ 0x2426fe0
|
|
void Gambit_fn_02426FE0(CPUState* cpu) {
|
|
L_02426FE0: ; // 0x2426fe0
|
|
/* 02426FE0 */ return;
|
|
}
|
|
|
|
// fn_02426FE4 @ 0x2426fe4
|
|
void Gambit_fn_02426FE4(CPUState* cpu) {
|
|
L_02426FE4: ; // 0x2426fe4
|
|
/* 02426FE4 */ return;
|
|
}
|
|
|
|
// fn_02426FE8 @ 0x2426fe8
|
|
void Gambit_fn_02426FE8(CPUState* cpu) {
|
|
L_02426FE8: ; // 0x2426fe8
|
|
/* 02426FE8 */ return;
|
|
}
|
|
|
|
// fn_02426FEC @ 0x2426fec
|
|
void Gambit_fn_02426FEC(CPUState* cpu) {
|
|
L_02426FEC: ; // 0x2426fec
|
|
/* 02426FEC */ return;
|
|
}
|
|
|
|
// fn_02426FF0 @ 0x2426ff0
|
|
void Gambit_fn_02426FF0(CPUState* cpu) {
|
|
L_02426FF0: ; // 0x2426ff0
|
|
/* 02426FF0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02426FF4 */ return;
|
|
}
|
|
|
|
// fn_02426FF8 @ 0x2426ff8
|
|
void Gambit_fn_02426FF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02426FF8: ; // 0x2426ff8
|
|
/* 02426FF8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02426FFC */ goto L_0242747C;
|
|
L_0242747C: ; // 0x242747c
|
|
/* 0242747C */ cpu->r[0] = cpu->lr;
|
|
/* 02427480 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02427480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427480 */ cpu->r[1] = _t0;
|
|
/* 02427484 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427484 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427488 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02427488 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0242748C */ cpu->r[30] = cpu->r[3];
|
|
/* 0242748C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427490 */ cpu->r[31] = cpu->r[4];
|
|
/* 02427494 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02427494 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427498 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427498 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427498 */ if (_t5) goto L_02427508; else goto L_0242749C;
|
|
L_0242749C: ; // 0x242749c
|
|
/* 0242749C */ cpu->r[0] = 0x100A0000u;
|
|
/* 024274A0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024274A4 */ cpu->r[0] = cpu->r[0] + 0xFFFF857Cu;
|
|
/* 024274A8 */ cpu->r[12] = cpu->r[12] + 0xFFFF859Cu;
|
|
/* 024274AC */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024274AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024274B0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024274B4 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 024274B4 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024274B8 */ cpu->r[11] = cpu->r[11] + 0xFFFF858Cu;
|
|
/* 024274BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024274C0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024274C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024274C4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024274C4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024274C4 */ if (_t10) goto L_024274F8; else goto L_024274C8;
|
|
L_024274C8: ; // 0x24274c8
|
|
/* 024274C8 */ cpu->r[10] = 0x10010000u;
|
|
/* 024274CC */ cpu->r[0] = 0x10010000u;
|
|
/* 024274D0 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 024274D4 */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 024274D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024274DC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024274DC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024274E0 */ cpu->r[0] = 0x10010000u;
|
|
/* 024274E4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024274E4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024274E8 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 024274EC */ cpu->r[4] = 0x00000000u;
|
|
/* 024274F0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024274F0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024274F4 */ Gambit_fn_02068798(cpu);
|
|
L_024274F8: ; // 0x24274f8
|
|
/* 024274F8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024274F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024274FC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024274FC */ _t15 = _t14 & 0x00000001u;
|
|
/* 024274FC */ if (_t15) goto L_02427508; else goto L_02427500;
|
|
L_02427500: ; // 0x2427500
|
|
/* 02427500 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427504 */ Gambit_fn_02801BB0(cpu);
|
|
L_02427508: ; // 0x2427508
|
|
/* 02427508 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02427508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0242750C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0242750C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02427510 */ cpu->lr = cpu->r[0];
|
|
/* 02427514 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427514 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427518 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0242751C */ return;
|
|
}
|
|
|
|
// fn_02427000 @ 0x2427000
|
|
void Gambit_fn_02427000(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_02427000: ; // 0x2427000
|
|
/* 02427000 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02427004 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02427008 @ 0x2427008
|
|
void Gambit_fn_02427008(CPUState* cpu) {
|
|
L_02427008: ; // 0x2427008
|
|
/* 02427008 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0242700C */ goto L_02427520;
|
|
L_02427520: ; // 0x2427520
|
|
/* 02427520 */ return;
|
|
}
|
|
|
|
// fn_02427010 @ 0x2427010
|
|
void Gambit_fn_02427010(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02427010: ; // 0x2427010
|
|
/* 02427010 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02427014 */ goto L_02427524;
|
|
L_02427524: ; // 0x2427524
|
|
/* 02427524 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02427524 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02427528 */ return;
|
|
}
|
|
|
|
// fn_02427018 @ 0x2427018
|
|
void Gambit_fn_02427018(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02427018: ; // 0x2427018
|
|
/* 02427018 */ cpu->r[0] = cpu->lr;
|
|
/* 0242701C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0242701C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242701C */ cpu->r[1] = _t0;
|
|
/* 02427020 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427020 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427024 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427028 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427028 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0242702C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242702C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0242702C */ if (_t4) goto L_02427030; else goto L_02427040;
|
|
L_02427030: ; // 0x2427030
|
|
/* 02427030 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02427034 */ Gambit_fn_02801A78(cpu);
|
|
/* 02427038 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242703C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242703C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0242703C */ if (_t6) goto L_0242709C; else goto L_02427040;
|
|
L_02427040: ; // 0x2427040
|
|
/* 02427040 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02427044 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427048 */ cpu->r[5] = 0x00000000u;
|
|
/* 0242704C */ cpu->r[4] = cpu->r[4] + 0xFFFF83C4u;
|
|
/* 02427050 */ Gambit_fn_020B82F0(cpu);
|
|
/* 02427054 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427058 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0242705C */ cpu->r[12] = cpu->r[12] + 0xFFFF8414u;
|
|
/* 02427060 */ cpu->r[11] = cpu->r[11] + 0xFFFF858Cu;
|
|
/* 02427064 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02427064 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427068 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0242706C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427070 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02427070 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02427074 */ cpu->r[12] = cpu->r[12] + 0xFFFF859Cu;
|
|
/* 02427078 */ cpu->r[0] = cpu->r[0] + 0xFFFF857Cu;
|
|
/* 0242707C */ _t9 = cpu->r[31] + 0x000001C8u;
|
|
/* 0242707C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02427080 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02427080 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02427084 */ cpu->r[0] = 0x00000000u;
|
|
/* 02427088 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242708C */ _t11 = cpu->r[31] + 0x00000228u;
|
|
/* 0242708C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427090 */ cpu->r[4] = 0x00000001u;
|
|
/* 02427094 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 02427094 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 02427098 */ Gambit_fn_02068B6C(cpu);
|
|
L_0242709C: ; // 0x242709c
|
|
/* 0242709C */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0242709C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024270A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024270A4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024270A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024270A8 */ cpu->lr = cpu->r[0];
|
|
/* 024270AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024270B0 */ return;
|
|
}
|
|
|
|
// fn_0242701C @ 0x242701c
|
|
void Gambit_fn_0242701C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0242701C: ; // 0x242701c
|
|
/* 0242701C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0242701C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242701C */ cpu->r[1] = _t0;
|
|
/* 02427020 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427020 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427024 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427028 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427028 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0242702C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242702C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0242702C */ if (_t4) goto L_02427030; else goto L_02427040;
|
|
L_02427030: ; // 0x2427030
|
|
/* 02427030 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02427034 */ Gambit_fn_02801A78(cpu);
|
|
/* 02427038 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242703C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242703C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0242703C */ if (_t6) goto L_0242709C; else goto L_02427040;
|
|
L_02427040: ; // 0x2427040
|
|
/* 02427040 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02427044 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427048 */ cpu->r[5] = 0x00000000u;
|
|
/* 0242704C */ cpu->r[4] = cpu->r[4] + 0xFFFF83C4u;
|
|
/* 02427050 */ Gambit_fn_020B82F0(cpu);
|
|
/* 02427054 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427058 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0242705C */ cpu->r[12] = cpu->r[12] + 0xFFFF8414u;
|
|
/* 02427060 */ cpu->r[11] = cpu->r[11] + 0xFFFF858Cu;
|
|
/* 02427064 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02427064 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427068 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0242706C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427070 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02427070 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02427074 */ cpu->r[12] = cpu->r[12] + 0xFFFF859Cu;
|
|
/* 02427078 */ cpu->r[0] = cpu->r[0] + 0xFFFF857Cu;
|
|
/* 0242707C */ _t9 = cpu->r[31] + 0x000001C8u;
|
|
/* 0242707C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02427080 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02427080 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02427084 */ cpu->r[0] = 0x00000000u;
|
|
/* 02427088 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242708C */ _t11 = cpu->r[31] + 0x00000228u;
|
|
/* 0242708C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427090 */ cpu->r[4] = 0x00000001u;
|
|
/* 02427094 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 02427094 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[0]);
|
|
/* 02427098 */ Gambit_fn_02068B6C(cpu);
|
|
L_0242709C: ; // 0x242709c
|
|
/* 0242709C */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0242709C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024270A0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024270A4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024270A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024270A8 */ cpu->lr = cpu->r[0];
|
|
/* 024270AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024270B0 */ return;
|
|
}
|
|
|
|
// fn_024270B4 @ 0x24270b4
|
|
void Gambit_fn_024270B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_024270B4: ; // 0x24270b4
|
|
/* 024270B4 */ cpu->r[0] = cpu->lr;
|
|
/* 024270B8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024270B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024270B8 */ cpu->r[1] = _t0;
|
|
/* 024270BC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024270BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024270C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024270C4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024270C8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024270C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024270CC */ Gambit_fn_020B8610(cpu);
|
|
/* 024270D0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024270D4 */ _t3 = cpu->r[31] + 0x00000228u;
|
|
/* 024270D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024270D8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024270DC */ cpu->r[10] = 0x100A0000u;
|
|
/* 024270E0 */ _t4 = cpu->r[12] + 0xFFFF83D0u;
|
|
/* 024270E0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 024270E4 */ cpu->r[10] = cpu->r[10] + 0xFFFF838Cu;
|
|
/* 024270E8 */ _t5 = cpu->r[31] + 0x00000224u;
|
|
/* 024270E8 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 024270EC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024270F0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024270F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 024270F4 */ cpu->r[0] = cpu->r[0] + 0xFFFF83D4u;
|
|
/* 024270F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024270FC */ cpu->r[4] = 0x00000000u;
|
|
/* 02427100 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02427100 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02427104 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02427108 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0242710C */ cpu->lr = cpu->r[0];
|
|
/* 02427110 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02427110 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02427114 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427118 */ return;
|
|
}
|
|
|
|
// fn_024270B8 @ 0x24270b8
|
|
void Gambit_fn_024270B8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_024270B8: ; // 0x24270b8
|
|
/* 024270B8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024270B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024270B8 */ cpu->r[1] = _t0;
|
|
/* 024270BC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 024270BC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024270C0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024270C4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024270C8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024270C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024270CC */ Gambit_fn_020B8610(cpu);
|
|
/* 024270D0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024270D4 */ _t3 = cpu->r[31] + 0x00000228u;
|
|
/* 024270D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024270D8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024270DC */ cpu->r[10] = 0x100A0000u;
|
|
/* 024270E0 */ _t4 = cpu->r[12] + 0xFFFF83D0u;
|
|
/* 024270E0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 024270E4 */ cpu->r[10] = cpu->r[10] + 0xFFFF838Cu;
|
|
/* 024270E8 */ _t5 = cpu->r[31] + 0x00000224u;
|
|
/* 024270E8 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[0]);
|
|
/* 024270EC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024270F0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024270F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 024270F4 */ cpu->r[0] = cpu->r[0] + 0xFFFF83D4u;
|
|
/* 024270F8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024270FC */ cpu->r[4] = 0x00000000u;
|
|
/* 02427100 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02427100 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02427104 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02427108 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427108 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0242710C */ cpu->lr = cpu->r[0];
|
|
/* 02427110 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02427110 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02427114 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427118 */ return;
|
|
}
|
|
|
|
// fn_0242711C @ 0x242711c
|
|
void Gambit_fn_0242711C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0242711C: ; // 0x242711c
|
|
/* 0242711C */ cpu->r[0] = cpu->lr;
|
|
/* 02427120 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427124 */ cpu->r[11] = cpu->r[11] + 0xFFFF838Cu;
|
|
/* 02427128 */ cpu->r[10] = cpu->r[3];
|
|
/* 0242712C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427130 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02427130 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02427134 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427138 */ _t1 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427138 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02427138 */ cpu->r[1] = _t1;
|
|
/* 0242713C */ _t2 = cpu->r[12] + 0xFFFF83D0u;
|
|
/* 0242713C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02427140 */ cpu->r[0] = cpu->r[0] + 0xFFFF83D8u;
|
|
/* 02427144 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427144 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02427148 */ _t4 = cpu->r[10] + 0x00000228u;
|
|
/* 02427148 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0242714C */ cpu->r[4] = 0x00000000u;
|
|
/* 02427150 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02427150 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02427154 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427158 */ _t6 = cpu->r[10] + 0x00000224u;
|
|
/* 02427158 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[4]);
|
|
/* 0242715C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02427160 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02427164 */ cpu->lr = cpu->r[0];
|
|
/* 02427168 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0242716C */ return;
|
|
}
|
|
|
|
// fn_02427138 @ 0x2427138
|
|
void Gambit_fn_02427138(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02427138: ; // 0x2427138
|
|
/* 02427138 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427138 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427138 */ cpu->r[1] = _t0;
|
|
/* 0242713C */ _t1 = cpu->r[12] + 0xFFFF83D0u;
|
|
/* 0242713C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02427140 */ cpu->r[0] = cpu->r[0] + 0xFFFF83D8u;
|
|
/* 02427144 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427144 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02427148 */ _t3 = cpu->r[10] + 0x00000228u;
|
|
/* 02427148 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0242714C */ cpu->r[4] = 0x00000000u;
|
|
/* 02427150 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02427150 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02427154 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427158 */ _t5 = cpu->r[10] + 0x00000224u;
|
|
/* 02427158 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[4]);
|
|
/* 0242715C */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02427160 */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427160 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02427164 */ cpu->lr = cpu->r[0];
|
|
/* 02427168 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0242716C */ return;
|
|
}
|
|
|
|
// fn_02427170 @ 0x2427170
|
|
void Gambit_fn_02427170(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02427170: ; // 0x2427170
|
|
/* 02427170 */ cpu->r[0] = cpu->lr;
|
|
/* 02427174 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427178 */ cpu->r[10] = 0x100A0000u;
|
|
/* 0242717C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0242717C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242717C */ cpu->r[1] = _t0;
|
|
/* 02427180 */ cpu->r[10] = cpu->r[10] + 0xFFFF83E0u;
|
|
/* 02427184 */ _t1 = cpu->r[12] + 0xFFFF83DCu;
|
|
/* 02427184 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02427188 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427188 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0242718C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0242718C */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 02427190 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427194 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427198 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427198 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0242719C */ cpu->r[0] = 0x100A0000u;
|
|
/* 024271A0 */ _t5 = cpu->r[31] + 0x00000228u;
|
|
/* 024271A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024271A4 */ cpu->r[0] = cpu->r[0] + 0xFFFF838Cu;
|
|
/* 024271A8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024271AC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024271AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024271B0 */ Gambit_fn_027ED914(cpu);
|
|
/* 024271B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024271B8 */ Gambit_fn_020B86A0(cpu);
|
|
/* 024271BC */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024271BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024271C0 */ cpu->lr = cpu->r[0];
|
|
/* 024271C4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024271C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024271C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024271CC */ return;
|
|
}
|
|
|
|
// fn_0242717C @ 0x242717c
|
|
void Gambit_fn_0242717C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_0242717C: ; // 0x242717c
|
|
/* 0242717C */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 0242717C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242717C */ cpu->r[1] = _t0;
|
|
/* 02427180 */ cpu->r[10] = cpu->r[10] + 0xFFFF83E0u;
|
|
/* 02427184 */ _t1 = cpu->r[12] + 0xFFFF83DCu;
|
|
/* 02427184 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02427188 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427188 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0242718C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 0242718C */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 02427190 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427194 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427198 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427198 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0242719C */ cpu->r[0] = 0x100A0000u;
|
|
/* 024271A0 */ _t5 = cpu->r[31] + 0x00000228u;
|
|
/* 024271A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024271A4 */ cpu->r[0] = cpu->r[0] + 0xFFFF838Cu;
|
|
/* 024271A8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024271AC */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024271AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024271B0 */ Gambit_fn_027ED914(cpu);
|
|
/* 024271B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024271B8 */ Gambit_fn_020B86A0(cpu);
|
|
/* 024271BC */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024271BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024271C0 */ cpu->lr = cpu->r[0];
|
|
/* 024271C4 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024271C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024271C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024271CC */ return;
|
|
}
|
|
|
|
// fn_024271D0 @ 0x24271d0
|
|
void Gambit_fn_024271D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_024271D0: ; // 0x24271d0
|
|
/* 024271D0 */ cpu->r[0] = cpu->lr;
|
|
/* 024271D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024271D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024271D4 */ cpu->r[1] = _t0;
|
|
/* 024271D8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024271D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024271DC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024271E0 */ cpu->r[12] = cpu->r[12] + 0xFFFF838Cu;
|
|
/* 024271E4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024271E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024271E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024271EC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024271EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024271F0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024271F4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024271F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 024271F8 */ cpu->r[0] = cpu->r[0] + 0xFFFF83E4u;
|
|
/* 024271FC */ cpu->r[30] = cpu->r[3];
|
|
/* 02427200 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02427200 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02427204 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02427208 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0242720C */ _t6 = cpu->r[11] + 0xFFFFED98u;
|
|
/* 0242720C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0242720C */ cpu->r[11] = _t6;
|
|
/* 02427210 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02427214 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0242721C */ cpu->r[4] = cpu->r[4] + 0xFFFFEDE0u;
|
|
/* 02427220 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427220 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02427220 */ if (_t8) goto L_02427224; else goto L_02427238;
|
|
L_02427224: ; // 0x2427224
|
|
/* 02427224 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02427228 */ cpu->r[7] = 0x00000001u;
|
|
/* 0242722C */ cpu->r[8] = cpu->r[8] + 0xFFFF83B4u;
|
|
/* 02427230 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 02427230 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02427234 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 02427234 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
L_02427238: ; // 0x2427238
|
|
/* 02427238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242723C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242723C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0242723C */ if (_t12) goto L_0242725C; else goto L_02427240;
|
|
L_02427240: ; // 0x2427240
|
|
/* 02427240 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 02427240 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02427244 */ _t14 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02427244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02427248 */ cpu->ctr = cpu->r[0];
|
|
/* 0242724C */ cpu->r[3] = cpu->r[31];
|
|
/* 02427250 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02427254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02427258 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427258 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02427258 */ if (_t16) goto L_0242725C; else goto L_02427260;
|
|
L_0242725C: ; // 0x242725c
|
|
/* 0242725C */ cpu->r[31] = 0x00000000u;
|
|
L_02427260: ; // 0x2427260
|
|
/* 02427260 */ _t17 = cpu->r[30] + 0x00000228u;
|
|
/* 02427260 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 02427264 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427264 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427268 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02427268 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0242726C */ cpu->lr = cpu->r[0];
|
|
/* 02427270 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02427270 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02427274 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427278 */ return;
|
|
}
|
|
|
|
// fn_024271D4 @ 0x24271d4
|
|
void Gambit_fn_024271D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_024271D4: ; // 0x24271d4
|
|
/* 024271D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024271D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024271D4 */ cpu->r[1] = _t0;
|
|
/* 024271D8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024271D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024271DC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024271E0 */ cpu->r[12] = cpu->r[12] + 0xFFFF838Cu;
|
|
/* 024271E4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024271E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024271E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024271EC */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024271EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024271F0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024271F4 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024271F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 024271F8 */ cpu->r[0] = cpu->r[0] + 0xFFFF83E4u;
|
|
/* 024271FC */ cpu->r[30] = cpu->r[3];
|
|
/* 02427200 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02427200 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02427204 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02427208 */ cpu->r[11] = 0x101D0000u;
|
|
/* 0242720C */ _t6 = cpu->r[11] + 0xFFFFED98u;
|
|
/* 0242720C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0242720C */ cpu->r[11] = _t6;
|
|
/* 02427210 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02427214 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0242721C */ cpu->r[4] = cpu->r[4] + 0xFFFFEDE0u;
|
|
/* 02427220 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427220 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02427220 */ if (_t8) goto L_02427224; else goto L_02427238;
|
|
L_02427224: ; // 0x2427224
|
|
/* 02427224 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02427228 */ cpu->r[7] = 0x00000001u;
|
|
/* 0242722C */ cpu->r[8] = cpu->r[8] + 0xFFFF83B4u;
|
|
/* 02427230 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 02427230 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02427234 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 02427234 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
L_02427238: ; // 0x2427238
|
|
/* 02427238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242723C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242723C */ _t12 = _t11 & 0x00000001u;
|
|
/* 0242723C */ if (_t12) goto L_0242725C; else goto L_02427240;
|
|
L_02427240: ; // 0x2427240
|
|
/* 02427240 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 02427240 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02427244 */ _t14 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02427244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02427248 */ cpu->ctr = cpu->r[0];
|
|
/* 0242724C */ cpu->r[3] = cpu->r[31];
|
|
/* 02427250 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02427254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02427258 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427258 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02427258 */ if (_t16) goto L_0242725C; else goto L_02427260;
|
|
L_0242725C: ; // 0x242725c
|
|
/* 0242725C */ cpu->r[31] = 0x00000000u;
|
|
L_02427260: ; // 0x2427260
|
|
/* 02427260 */ _t17 = cpu->r[30] + 0x00000228u;
|
|
/* 02427260 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 02427264 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427264 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427268 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02427268 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0242726C */ cpu->lr = cpu->r[0];
|
|
/* 02427270 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02427270 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02427274 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427278 */ return;
|
|
}
|
|
|
|
// fn_0242727C @ 0x242727c
|
|
void Gambit_fn_0242727C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22;
|
|
|
|
L_0242727C: ; // 0x242727c
|
|
/* 0242727C */ cpu->r[0] = cpu->lr;
|
|
/* 02427280 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02427280 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427280 */ cpu->r[1] = _t0;
|
|
/* 02427284 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427284 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427288 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02427288 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0242728C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0242728C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02427290 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02427294 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02427294 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02427298 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0242729C */ cpu->r[30] = cpu->r[30] + 0xFFFF83F8u;
|
|
/* 024272A0 */ cpu->r[29] = cpu->r[29] + 0xFFFF838Cu;
|
|
/* 024272A4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024272A8 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 024272A8 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 024272AC */ cpu->r[31] = cpu->r[3];
|
|
/* 024272B0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024272B0 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 024272B4 */ cpu->r[12] = cpu->r[12] + 0xFFFF83F4u;
|
|
/* 024272B8 */ _t7 = cpu->r[31] + 0x00000228u;
|
|
/* 024272B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024272BC */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 024272BC */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 024272C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024272C4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024272C4 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 024272C8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024272CC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 024272CC */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 024272D0 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 024272D4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024272D4 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 024272D8 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024272DC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024272E0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 024272E0 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 024272E4 */ cpu->r[0] = cpu->r[0] + 0xFFFF83F0u;
|
|
/* 024272E8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024272E8 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 024272EC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024272F0 */ _t14 = cpu->r[31] + 0x00000228u;
|
|
/* 024272F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024272F4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 024272F8 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 024272F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024272FC */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02427300 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02427300 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 02427304 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427304 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02427308 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02427308 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0242730C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02427310 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 02427310 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02427314 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 02427314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02427318 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427318 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0242731C */ cpu->lr = cpu->r[0];
|
|
/* 02427320 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 02427320 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02427324 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02427328 */ return;
|
|
}
|
|
|
|
// fn_02427280 @ 0x2427280
|
|
void Gambit_fn_02427280(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22;
|
|
|
|
L_02427280: ; // 0x2427280
|
|
/* 02427280 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02427280 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427280 */ cpu->r[1] = _t0;
|
|
/* 02427284 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427284 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427288 */ _t2 = cpu->r[1] + 0x00000028u;
|
|
/* 02427288 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0242728C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0242728C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02427290 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02427294 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02427294 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02427298 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0242729C */ cpu->r[30] = cpu->r[30] + 0xFFFF83F8u;
|
|
/* 024272A0 */ cpu->r[29] = cpu->r[29] + 0xFFFF838Cu;
|
|
/* 024272A4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024272A8 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 024272A8 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 024272AC */ cpu->r[31] = cpu->r[3];
|
|
/* 024272B0 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024272B0 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 024272B4 */ cpu->r[12] = cpu->r[12] + 0xFFFF83F4u;
|
|
/* 024272B8 */ _t7 = cpu->r[31] + 0x00000228u;
|
|
/* 024272B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024272BC */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 024272BC */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 024272C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024272C4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024272C4 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 024272C8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024272CC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 024272CC */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 024272D0 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 024272D4 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024272D4 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 024272D8 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024272DC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024272E0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 024272E0 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 024272E4 */ cpu->r[0] = cpu->r[0] + 0xFFFF83F0u;
|
|
/* 024272E8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024272E8 */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 024272EC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024272F0 */ _t14 = cpu->r[31] + 0x00000228u;
|
|
/* 024272F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024272F4 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 024272F8 */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 024272F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024272FC */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02427300 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02427300 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 02427304 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427304 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02427308 */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02427308 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0242730C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02427310 */ _t19 = cpu->r[1] + 0x00000024u;
|
|
/* 02427310 */ cpu->r[29] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02427314 */ _t20 = cpu->r[1] + 0x00000034u;
|
|
/* 02427314 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02427318 */ _t21 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427318 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0242731C */ cpu->lr = cpu->r[0];
|
|
/* 02427320 */ _t22 = cpu->r[1] + 0x00000028u;
|
|
/* 02427320 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02427324 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02427328 */ return;
|
|
}
|
|
|
|
// fn_0242732C @ 0x242732c
|
|
void Gambit_fn_0242732C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_0242732C: ; // 0x242732c
|
|
/* 0242732C */ cpu->r[0] = cpu->lr;
|
|
/* 02427330 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427334 */ cpu->r[12] = cpu->r[12] + 0xFFFF8404u;
|
|
/* 02427338 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427338 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427338 */ cpu->r[1] = _t0;
|
|
/* 0242733C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242733C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02427340 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427340 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02427344 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02427344 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02427348 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242734C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242734C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02427350 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427354 */ _t5 = cpu->r[31] + 0x00000090u;
|
|
/* 02427354 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02427358 */ cpu->r[0] = cpu->r[0] + 0xFFFF838Cu;
|
|
/* 0242735C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242735C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427360 */ _t7 = cpu->r[8] + 0x00000014u;
|
|
/* 02427360 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02427364 */ cpu->ctr = cpu->r[9];
|
|
/* 02427368 */ cpu->r[3] = cpu->r[31] + 0x0000008Cu;
|
|
/* 0242736C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02427370 */ _t8 = cpu->r[31] + 0x00000090u;
|
|
/* 02427370 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02427374 */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 02427374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02427378 */ cpu->ctr = cpu->r[0];
|
|
/* 0242737C */ cpu->r[3] = cpu->r[31] + 0x0000008Cu;
|
|
/* 02427380 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02427384 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427384 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02427388 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02427388 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0242738C */ cpu->ctr = cpu->r[9];
|
|
/* 02427390 */ _t12 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02427390 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02427394 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02427398 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242739C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0242739C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024273A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 024273A4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024273A4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024273A4 */ if (_t15) goto L_024273A8; else goto L_024273B0;
|
|
L_024273A8: ; // 0x24273a8
|
|
/* 024273A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024273AC */ goto L_024273F4;
|
|
L_024273B0: ; // 0x24273b0
|
|
/* 024273B0 */ cpu->r[8] = 0x00080000u;
|
|
/* 024273B4 */ _t16 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024273B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024273B8 */ cpu->r[12] = 0x10110000u;
|
|
/* 024273BC */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024273C0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024273C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024273C4 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 024273C8 */ cpu->ctr = cpu->r[8];
|
|
/* 024273CC */ _t18 = cpu->r[12] + 0x00007399u;
|
|
/* 024273CC */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 024273D0 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024273D4: ; // 0x24273d4
|
|
/* 024273D4 */ _t19 = cpu->r[9] + 0x00000001u;
|
|
/* 024273D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024273D4 */ cpu->r[9] = _t19;
|
|
/* 024273D8 */ _t20 = cpu->r[11] + 0x00000001u;
|
|
/* 024273D8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t20);
|
|
/* 024273D8 */ cpu->r[11] = _t20;
|
|
/* 024273DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 024273E0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024273E0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024273E0 */ if (_t22) goto L_024273E4; else goto L_024273F0;
|
|
L_024273E4: ; // 0x24273e4
|
|
/* 024273E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 024273E8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024273E8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 024273E8 */ if (_t24) goto L_024273A8; else goto L_024273EC;
|
|
L_024273EC: ; // 0x24273ec
|
|
/* 024273EC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024273EC */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024273EC */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 024273EC */ _t27 = _t26 & 0x00000001u;
|
|
/* 024273EC */ if (_t27) goto L_024273D4; else goto L_024273F0;
|
|
L_024273F0: ; // 0x24273f0
|
|
/* 024273F0 */ cpu->r[3] = 0x00000000u;
|
|
L_024273F4: ; // 0x24273f4
|
|
/* 024273F4 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024273F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024273F8 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 024273F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024273FC */ cpu->lr = cpu->r[0];
|
|
/* 02427400 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02427400 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02427404 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427408 */ return;
|
|
}
|
|
|
|
// fn_02427338 @ 0x2427338
|
|
void Gambit_fn_02427338(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30;
|
|
|
|
L_02427338: ; // 0x2427338
|
|
/* 02427338 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427338 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427338 */ cpu->r[1] = _t0;
|
|
/* 0242733C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242733C */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02427340 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427340 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02427344 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02427344 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02427348 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242734C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242734C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02427350 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427354 */ _t5 = cpu->r[31] + 0x00000090u;
|
|
/* 02427354 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02427358 */ cpu->r[0] = cpu->r[0] + 0xFFFF838Cu;
|
|
/* 0242735C */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242735C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427360 */ _t7 = cpu->r[8] + 0x00000014u;
|
|
/* 02427360 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02427364 */ cpu->ctr = cpu->r[9];
|
|
/* 02427368 */ cpu->r[3] = cpu->r[31] + 0x0000008Cu;
|
|
/* 0242736C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02427370 */ _t8 = cpu->r[31] + 0x00000090u;
|
|
/* 02427370 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02427374 */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 02427374 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02427378 */ cpu->ctr = cpu->r[0];
|
|
/* 0242737C */ cpu->r[3] = cpu->r[31] + 0x0000008Cu;
|
|
/* 02427380 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02427384 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427384 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02427388 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02427388 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0242738C */ cpu->ctr = cpu->r[9];
|
|
/* 02427390 */ _t12 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02427390 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02427394 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02427398 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242739C */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 0242739C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024273A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]);
|
|
/* 024273A4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024273A4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024273A4 */ if (_t15) goto L_024273A8; else goto L_024273B0;
|
|
L_024273A8: ; // 0x24273a8
|
|
/* 024273A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024273AC */ goto L_024273F4;
|
|
L_024273B0: ; // 0x24273b0
|
|
/* 024273B0 */ cpu->r[8] = 0x00080000u;
|
|
/* 024273B4 */ _t16 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024273B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024273B8 */ cpu->r[12] = 0x10110000u;
|
|
/* 024273BC */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 024273C0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024273C0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024273C4 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 024273C8 */ cpu->ctr = cpu->r[8];
|
|
/* 024273CC */ _t18 = cpu->r[12] + 0x00007399u;
|
|
/* 024273CC */ cpu->r[12] = rbrew_read8(cpu->mem, _t18);
|
|
/* 024273D0 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
L_024273D4: ; // 0x24273d4
|
|
/* 024273D4 */ _t19 = cpu->r[9] + 0x00000001u;
|
|
/* 024273D4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024273D4 */ cpu->r[9] = _t19;
|
|
/* 024273D8 */ _t20 = cpu->r[11] + 0x00000001u;
|
|
/* 024273D8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t20);
|
|
/* 024273D8 */ cpu->r[11] = _t20;
|
|
/* 024273DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 024273E0 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024273E0 */ _t22 = _t21 & 0x00000001u;
|
|
/* 024273E0 */ if (_t22) goto L_024273E4; else goto L_024273F0;
|
|
L_024273E4: ; // 0x24273e4
|
|
/* 024273E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]);
|
|
/* 024273E8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024273E8 */ _t24 = _t23 & 0x00000001u;
|
|
/* 024273E8 */ if (_t24) goto L_024273A8; else goto L_024273EC;
|
|
L_024273EC: ; // 0x24273ec
|
|
/* 024273EC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024273EC */ _t25 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024273EC */ _t26 = _t25 >> (0x00000002u & 31u);
|
|
/* 024273EC */ _t27 = _t26 & 0x00000001u;
|
|
/* 024273EC */ if (_t27) goto L_024273D4; else goto L_024273F0;
|
|
L_024273F0: ; // 0x24273f0
|
|
/* 024273F0 */ cpu->r[3] = 0x00000000u;
|
|
L_024273F4: ; // 0x24273f4
|
|
/* 024273F4 */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024273F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024273F8 */ _t29 = cpu->r[1] + 0x00000010u;
|
|
/* 024273F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024273FC */ cpu->lr = cpu->r[0];
|
|
/* 02427400 */ _t30 = cpu->r[1] + 0x00000014u;
|
|
/* 02427400 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02427404 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427408 */ return;
|
|
}
|
|
|
|
// fn_0242740C @ 0x242740c
|
|
void Gambit_fn_0242740C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_0242740C: ; // 0x242740c
|
|
/* 0242740C */ cpu->r[0] = cpu->lr;
|
|
/* 02427410 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02427410 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427410 */ cpu->r[1] = _t0;
|
|
/* 02427414 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427414 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427418 */ cpu->r[31] = cpu->r[3];
|
|
/* 0242741C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0242741C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02427420 */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 02427420 */ cpu->r[11] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02427424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427428 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427428 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427428 */ if (_t5) goto L_0242742C; else goto L_02427454;
|
|
L_0242742C: ; // 0x242742c
|
|
/* 0242742C */ _t6 = cpu->r[31] + 0x00000228u;
|
|
/* 0242742C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02427430 */ cpu->r[4] = 0x00000000u;
|
|
/* 02427434 */ Gambit_fn_027EDF00(cpu);
|
|
/* 02427438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242743C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242743C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0242743C */ if (_t8) goto L_02427454; else goto L_02427440;
|
|
L_02427440: ; // 0x2427440
|
|
/* 02427440 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02427440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02427444 */ _t10 = cpu->r[12] + 0x00000094u;
|
|
/* 02427444 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02427448 */ cpu->ctr = cpu->r[0];
|
|
/* 0242744C */ cpu->r[3] = cpu->r[31];
|
|
/* 02427450 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02427454: ; // 0x2427454
|
|
/* 02427454 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02427454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02427458 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427458 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242745C */ cpu->lr = cpu->r[0];
|
|
/* 02427460 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02427464 */ return;
|
|
}
|
|
|
|
// fn_02427410 @ 0x2427410
|
|
void Gambit_fn_02427410(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02427410: ; // 0x2427410
|
|
/* 02427410 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02427410 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427410 */ cpu->r[1] = _t0;
|
|
/* 02427414 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427414 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427418 */ cpu->r[31] = cpu->r[3];
|
|
/* 0242741C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0242741C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02427420 */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 02427420 */ cpu->r[11] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02427424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427428 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427428 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427428 */ if (_t5) goto L_0242742C; else goto L_02427454;
|
|
L_0242742C: ; // 0x242742c
|
|
/* 0242742C */ _t6 = cpu->r[31] + 0x00000228u;
|
|
/* 0242742C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02427430 */ cpu->r[4] = 0x00000000u;
|
|
/* 02427434 */ Gambit_fn_027EDF00(cpu);
|
|
/* 02427438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242743C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242743C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0242743C */ if (_t8) goto L_02427454; else goto L_02427440;
|
|
L_02427440: ; // 0x2427440
|
|
/* 02427440 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 02427440 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02427444 */ _t10 = cpu->r[12] + 0x00000094u;
|
|
/* 02427444 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02427448 */ cpu->ctr = cpu->r[0];
|
|
/* 0242744C */ cpu->r[3] = cpu->r[31];
|
|
/* 02427450 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02427454: ; // 0x2427454
|
|
/* 02427454 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02427454 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02427458 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427458 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0242745C */ cpu->lr = cpu->r[0];
|
|
/* 02427460 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02427464 */ return;
|
|
}
|
|
|
|
// fn_02427468 @ 0x2427468
|
|
void Gambit_fn_02427468(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02427468: ; // 0x2427468
|
|
/* 02427468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242746C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242746C */ _t1 = _t0 & 0x00000001u;
|
|
/* 0242746C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0242746C */ goto L_02427470;
|
|
L_02427470: ; // 0x2427470
|
|
/* 02427470 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02427470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02427474 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427474 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02427474 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02427474 */ goto L_02427478;
|
|
L_02427478: ; // 0x2427478
|
|
/* 02427478 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_0242747C @ 0x242747c
|
|
void Gambit_fn_0242747C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0242747C: ; // 0x242747c
|
|
/* 0242747C */ cpu->r[0] = cpu->lr;
|
|
/* 02427480 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02427480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427480 */ cpu->r[1] = _t0;
|
|
/* 02427484 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427484 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427488 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02427488 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0242748C */ cpu->r[30] = cpu->r[3];
|
|
/* 0242748C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427490 */ cpu->r[31] = cpu->r[4];
|
|
/* 02427494 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02427494 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427498 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427498 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427498 */ if (_t5) goto L_02427508; else goto L_0242749C;
|
|
L_0242749C: ; // 0x242749c
|
|
/* 0242749C */ cpu->r[0] = 0x100A0000u;
|
|
/* 024274A0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024274A4 */ cpu->r[0] = cpu->r[0] + 0xFFFF857Cu;
|
|
/* 024274A8 */ cpu->r[12] = cpu->r[12] + 0xFFFF859Cu;
|
|
/* 024274AC */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024274AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024274B0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024274B4 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 024274B4 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024274B8 */ cpu->r[11] = cpu->r[11] + 0xFFFF858Cu;
|
|
/* 024274BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024274C0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024274C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024274C4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024274C4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024274C4 */ if (_t10) goto L_024274F8; else goto L_024274C8;
|
|
L_024274C8: ; // 0x24274c8
|
|
/* 024274C8 */ cpu->r[10] = 0x10010000u;
|
|
/* 024274CC */ cpu->r[0] = 0x10010000u;
|
|
/* 024274D0 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 024274D4 */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 024274D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024274DC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024274DC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024274E0 */ cpu->r[0] = 0x10010000u;
|
|
/* 024274E4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024274E4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024274E8 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 024274EC */ cpu->r[4] = 0x00000000u;
|
|
/* 024274F0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024274F0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024274F4 */ Gambit_fn_02068798(cpu);
|
|
L_024274F8: ; // 0x24274f8
|
|
/* 024274F8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024274F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024274FC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024274FC */ _t15 = _t14 & 0x00000001u;
|
|
/* 024274FC */ if (_t15) goto L_02427508; else goto L_02427500;
|
|
L_02427500: ; // 0x2427500
|
|
/* 02427500 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427504 */ Gambit_fn_02801BB0(cpu);
|
|
L_02427508: ; // 0x2427508
|
|
/* 02427508 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02427508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0242750C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0242750C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02427510 */ cpu->lr = cpu->r[0];
|
|
/* 02427514 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427514 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427518 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0242751C */ return;
|
|
}
|
|
|
|
// fn_02427480 @ 0x2427480
|
|
void Gambit_fn_02427480(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02427480: ; // 0x2427480
|
|
/* 02427480 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02427480 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427480 */ cpu->r[1] = _t0;
|
|
/* 02427484 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427484 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427488 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02427488 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0242748C */ cpu->r[30] = cpu->r[3];
|
|
/* 0242748C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427490 */ cpu->r[31] = cpu->r[4];
|
|
/* 02427494 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02427494 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427498 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427498 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427498 */ if (_t5) goto L_02427508; else goto L_0242749C;
|
|
L_0242749C: ; // 0x242749c
|
|
/* 0242749C */ cpu->r[0] = 0x100A0000u;
|
|
/* 024274A0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024274A4 */ cpu->r[0] = cpu->r[0] + 0xFFFF857Cu;
|
|
/* 024274A8 */ cpu->r[12] = cpu->r[12] + 0xFFFF859Cu;
|
|
/* 024274AC */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024274AC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024274B0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024274B4 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 024274B4 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024274B8 */ cpu->r[11] = cpu->r[11] + 0xFFFF858Cu;
|
|
/* 024274BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024274C0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024274C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024274C4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024274C4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024274C4 */ if (_t10) goto L_024274F8; else goto L_024274C8;
|
|
L_024274C8: ; // 0x24274c8
|
|
/* 024274C8 */ cpu->r[10] = 0x10010000u;
|
|
/* 024274CC */ cpu->r[0] = 0x10010000u;
|
|
/* 024274D0 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 024274D4 */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 024274D8 */ cpu->r[3] = cpu->r[30];
|
|
/* 024274DC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024274DC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024274E0 */ cpu->r[0] = 0x10010000u;
|
|
/* 024274E4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024274E4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024274E8 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 024274EC */ cpu->r[4] = 0x00000000u;
|
|
/* 024274F0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024274F0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024274F4 */ Gambit_fn_02068798(cpu);
|
|
L_024274F8: ; // 0x24274f8
|
|
/* 024274F8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024274F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024274FC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024274FC */ _t15 = _t14 & 0x00000001u;
|
|
/* 024274FC */ if (_t15) goto L_02427508; else goto L_02427500;
|
|
L_02427500: ; // 0x2427500
|
|
/* 02427500 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427504 */ Gambit_fn_02801BB0(cpu);
|
|
L_02427508: ; // 0x2427508
|
|
/* 02427508 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02427508 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0242750C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0242750C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02427510 */ cpu->lr = cpu->r[0];
|
|
/* 02427514 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427514 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427518 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0242751C */ return;
|
|
}
|
|
|
|
// fn_02427520 @ 0x2427520
|
|
void Gambit_fn_02427520(CPUState* cpu) {
|
|
L_02427520: ; // 0x2427520
|
|
/* 02427520 */ return;
|
|
}
|
|
|
|
// fn_02427524 @ 0x2427524
|
|
void Gambit_fn_02427524(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02427524: ; // 0x2427524
|
|
/* 02427524 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02427524 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02427528 */ return;
|
|
}
|
|
|
|
// fn_0242752C @ 0x242752c
|
|
void Gambit_fn_0242752C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0242752C: ; // 0x242752c
|
|
/* 0242752C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0242752C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02427530 */ return;
|
|
}
|
|
|
|
// fn_02427534 @ 0x2427534
|
|
void Gambit_fn_02427534(CPUState* cpu) {
|
|
L_02427534: ; // 0x2427534
|
|
/* 02427534 */ return;
|
|
}
|
|
|
|
// fn_02427538 @ 0x2427538
|
|
void Gambit_fn_02427538(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02427538: ; // 0x2427538
|
|
/* 02427538 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02427538 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0242753C */ return;
|
|
}
|
|
|
|
// fn_02427540 @ 0x2427540
|
|
void Gambit_fn_02427540(CPUState* cpu) {
|
|
L_02427540: ; // 0x2427540
|
|
/* 02427540 */ return;
|
|
}
|
|
|
|
// fn_02427544 @ 0x2427544
|
|
void Gambit_fn_02427544(CPUState* cpu) {
|
|
L_02427544: ; // 0x2427544
|
|
/* 02427544 */ return;
|
|
}
|
|
|
|
// fn_02427548 @ 0x2427548
|
|
void Gambit_fn_02427548(CPUState* cpu) {
|
|
L_02427548: ; // 0x2427548
|
|
/* 02427548 */ return;
|
|
}
|
|
|
|
// fn_0242754C @ 0x242754c
|
|
void Gambit_fn_0242754C(CPUState* cpu) {
|
|
L_0242754C: ; // 0x242754c
|
|
/* 0242754C */ return;
|
|
}
|
|
|
|
// fn_02427550 @ 0x2427550
|
|
void Gambit_fn_02427550(CPUState* cpu) {
|
|
L_02427550: ; // 0x2427550
|
|
/* 02427550 */ cpu->r[3] = 0x00000001u;
|
|
/* 02427554 */ return;
|
|
}
|
|
|
|
// fn_02427558 @ 0x2427558
|
|
void Gambit_fn_02427558(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02427558: ; // 0x2427558
|
|
/* 02427558 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02427558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0242755C */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0242755C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02427560 */ cpu->ctr = cpu->r[0];
|
|
/* 02427564 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02427568 @ 0x2427568
|
|
void Gambit_fn_02427568(CPUState* cpu) {
|
|
L_02427568: ; // 0x2427568
|
|
/* 02427568 */ return;
|
|
}
|
|
|
|
// fn_0242756C @ 0x242756c
|
|
void Gambit_fn_0242756C(CPUState* cpu) {
|
|
L_0242756C: ; // 0x242756c
|
|
/* 0242756C */ cpu->r[3] = 0x00000000u;
|
|
/* 02427570 */ return;
|
|
}
|
|
|
|
// fn_02427574 @ 0x2427574
|
|
void Gambit_fn_02427574(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02427574: ; // 0x2427574
|
|
/* 02427574 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02427578 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02427578 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02427578 */ cpu->r[9] = _t0;
|
|
/* 0242757C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02427580 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427584 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02427588 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427588 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02427588 */ if (_t2) goto L_0242758C; else goto L_024275A0;
|
|
L_0242758C: ; // 0x242758c
|
|
/* 0242758C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02427590 */ cpu->r[0] = 0x00000001u;
|
|
/* 02427594 */ cpu->r[7] = cpu->r[7] + 0xFFFF83A4u;
|
|
/* 02427598 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02427598 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242759C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0242759C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_024275A0: ; // 0x24275a0
|
|
/* 024275A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 024275A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024275A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024275A4 */ if (_t6) goto L_024275A8; else goto L_024275B0;
|
|
L_024275A8: ; // 0x24275a8
|
|
/* 024275A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024275AC */ return;
|
|
L_024275B0: ; // 0x24275b0
|
|
/* 024275B0 */ cpu->r[7] = 0x101D0000u;
|
|
/* 024275B4 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 024275B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024275B4 */ cpu->r[7] = _t7;
|
|
/* 024275B8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024275BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024275C0 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 024275C4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024275C4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024275C4 */ if (_t9) goto L_024275C8; else goto L_024275DC;
|
|
L_024275C8: ; // 0x24275c8
|
|
/* 024275C8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024275CC */ cpu->r[9] = 0x00000001u;
|
|
/* 024275D0 */ cpu->r[0] = cpu->r[0] + 0xFFFF837Cu;
|
|
/* 024275D4 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 024275D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024275D8 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 024275D8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024275DC: ; // 0x24275dc
|
|
/* 024275DC */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024275E0 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 024275E4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 024275E8 */ return;
|
|
}
|
|
|
|
// fn_024275EC @ 0x24275ec
|
|
void Gambit_fn_024275EC(CPUState* cpu) {
|
|
L_024275EC: ; // 0x24275ec
|
|
/* 024275EC */ return;
|
|
}
|
|
|
|
// fn_024275F0 @ 0x24275f0
|
|
void Gambit_fn_024275F0(CPUState* cpu) {
|
|
L_024275F0: ; // 0x24275f0
|
|
/* 024275F0 */ return;
|
|
}
|
|
|
|
// fn_024275F4 @ 0x24275f4
|
|
void Gambit_fn_024275F4(CPUState* cpu) {
|
|
L_024275F4: ; // 0x24275f4
|
|
/* 024275F4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024275F8 */ return;
|
|
}
|
|
|
|
// fn_024275FC @ 0x24275fc
|
|
void Gambit_fn_024275FC(CPUState* cpu) {
|
|
L_024275FC: ; // 0x24275fc
|
|
/* 024275FC */ return;
|
|
}
|
|
|
|
// fn_02427600 @ 0x2427600
|
|
void Gambit_fn_02427600(CPUState* cpu) {
|
|
L_02427600: ; // 0x2427600
|
|
/* 02427600 */ return;
|
|
}
|
|
|
|
// fn_02427604 @ 0x2427604
|
|
void Gambit_fn_02427604(CPUState* cpu) {
|
|
L_02427604: ; // 0x2427604
|
|
/* 02427604 */ return;
|
|
}
|
|
|
|
// fn_02427608 @ 0x2427608
|
|
void Gambit_fn_02427608(CPUState* cpu) {
|
|
L_02427608: ; // 0x2427608
|
|
/* 02427608 */ return;
|
|
}
|
|
|
|
// fn_0242760C @ 0x242760c
|
|
void Gambit_fn_0242760C(CPUState* cpu) {
|
|
L_0242760C: ; // 0x242760c
|
|
/* 0242760C */ return;
|
|
}
|
|
|
|
// fn_02427610 @ 0x2427610
|
|
void Gambit_fn_02427610(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0206C894: ; // 0x206c894
|
|
/* 0206C894 */ cpu->r[0] = cpu->lr;
|
|
/* 0206C898 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0206C898 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0206C898 */ cpu->r[1] = _t0;
|
|
/* 0206C89C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C89C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0206C8A0 */ cpu->r[31] = cpu->r[3];
|
|
/* 0206C8A4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0206C8A8 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0206C8A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0206C8AC */ cpu->r[12] = 0x00000000u;
|
|
/* 0206C8B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0206C8B4 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0206C8B4 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0206C8B8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8B8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 0206C8B8 */ if (_t6) goto L_0206C8E0; else goto L_0206C8BC;
|
|
L_0206C8BC: ; // 0x206c8bc
|
|
/* 0206C8BC */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0206C8BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0206C8C0 */ /* nop */
|
|
/* 0206C8C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0206C8C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0206C8C8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 0206C8C8 */ if (_t9) goto L_0206C8CC; else goto L_0206C8E0;
|
|
L_0206C8CC: ; // 0x206c8cc
|
|
/* 0206C8CC */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0206C8CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0206C8D0 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0206C8D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0206C8D4 */ cpu->ctr = cpu->r[0];
|
|
/* 0206C8D8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8DC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0206C8E0: ; // 0x206c8e0
|
|
/* 0206C8E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8E4 */ Gambit_fn_0206C80C(cpu);
|
|
/* 0206C8E8 */ cpu->r[3] = cpu->r[31];
|
|
/* 0206C8EC */ Gambit_fn_027FC37C(cpu);
|
|
/* 0206C8F0 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0206C8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0206C8F4 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0206C8F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0206C8F8 */ cpu->lr = cpu->r[0];
|
|
/* 0206C8FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0206C900 */ return;
|
|
L_02427610: ; // 0x2427610
|
|
/* 02427610 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02427614 */ goto L_0206C894;
|
|
}
|
|
|
|
// fn_02427618 @ 0x2427618
|
|
void Gambit_fn_02427618(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02427618: ; // 0x2427618
|
|
/* 02427618 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0242761C */ goto L_024277F4;
|
|
L_024277F4: ; // 0x24277f4
|
|
/* 024277F4 */ cpu->r[0] = cpu->lr;
|
|
/* 024277F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024277F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024277F8 */ cpu->r[1] = _t0;
|
|
/* 024277FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024277FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427800 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02427800 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02427804 */ cpu->r[30] = cpu->r[3];
|
|
/* 02427804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427808 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242780C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0242780C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427810 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427810 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427810 */ if (_t5) goto L_02427880; else goto L_02427814;
|
|
L_02427814: ; // 0x2427814
|
|
/* 02427814 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427818 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0242781C */ cpu->r[0] = cpu->r[0] + 0xFFFF884Cu;
|
|
/* 02427820 */ cpu->r[12] = cpu->r[12] + 0xFFFF886Cu;
|
|
/* 02427824 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427824 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427828 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0242782C */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0242782C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427830 */ cpu->r[11] = cpu->r[11] + 0xFFFF885Cu;
|
|
/* 02427834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427838 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02427838 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0242783C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242783C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0242783C */ if (_t10) goto L_02427870; else goto L_02427840;
|
|
L_02427840: ; // 0x2427840
|
|
/* 02427840 */ cpu->r[10] = 0x10010000u;
|
|
/* 02427844 */ cpu->r[0] = 0x10010000u;
|
|
/* 02427848 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 0242784C */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02427850 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427854 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427854 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427858 */ cpu->r[0] = 0x10010000u;
|
|
/* 0242785C */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0242785C */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02427860 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02427864 */ cpu->r[4] = 0x00000000u;
|
|
/* 02427868 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02427868 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0242786C */ Gambit_fn_02068798(cpu);
|
|
L_02427870: ; // 0x2427870
|
|
/* 02427870 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02427870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427874 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427874 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02427874 */ if (_t15) goto L_02427880; else goto L_02427878;
|
|
L_02427878: ; // 0x2427878
|
|
/* 02427878 */ cpu->r[3] = cpu->r[30];
|
|
/* 0242787C */ Gambit_fn_02801BB0(cpu);
|
|
L_02427880: ; // 0x2427880
|
|
/* 02427880 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02427880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02427884 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02427884 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02427888 */ cpu->lr = cpu->r[0];
|
|
/* 0242788C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242788C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427890 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02427894 */ return;
|
|
}
|
|
|
|
// fn_02427620 @ 0x2427620
|
|
void Gambit_fn_02427620(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_02427620: ; // 0x2427620
|
|
/* 02427620 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02427624 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02427628 @ 0x2427628
|
|
void Gambit_fn_02427628(CPUState* cpu) {
|
|
L_02427628: ; // 0x2427628
|
|
/* 02427628 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0242762C */ goto L_02427898;
|
|
L_02427898: ; // 0x2427898
|
|
/* 02427898 */ return;
|
|
}
|
|
|
|
// fn_02427630 @ 0x2427630
|
|
void Gambit_fn_02427630(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02427630: ; // 0x2427630
|
|
/* 02427630 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02427634 */ goto L_0242789C;
|
|
L_0242789C: ; // 0x242789c
|
|
/* 0242789C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0242789C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024278A0 */ return;
|
|
}
|
|
|
|
// fn_02427638 @ 0x2427638
|
|
void Gambit_fn_02427638(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02427638: ; // 0x2427638
|
|
/* 02427638 */ cpu->r[0] = cpu->lr;
|
|
/* 0242763C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0242763C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242763C */ cpu->r[1] = _t0;
|
|
/* 02427640 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427640 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427644 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427648 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427648 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0242764C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242764C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0242764C */ if (_t4) goto L_02427650; else goto L_02427660;
|
|
L_02427650: ; // 0x2427650
|
|
/* 02427650 */ cpu->r[3] = 0x00000224u;
|
|
/* 02427654 */ Gambit_fn_02801A78(cpu);
|
|
/* 02427658 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242765C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242765C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0242765C */ if (_t6) goto L_024276B8; else goto L_02427660;
|
|
L_02427660: ; // 0x2427660
|
|
/* 02427660 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02427664 */ cpu->r[5] = 0x00000000u;
|
|
/* 02427668 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242766C */ cpu->r[4] = cpu->r[4] + 0xFFFF864Cu;
|
|
/* 02427670 */ cpu->r[6] = cpu->r[5];
|
|
/* 02427674 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02427678 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0242767C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427680 */ cpu->r[12] = cpu->r[12] + 0xFFFF884Cu;
|
|
/* 02427684 */ cpu->r[11] = cpu->r[11] + 0xFFFF866Cu;
|
|
/* 02427688 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0242768C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0242768C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427690 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427694 */ cpu->r[0] = cpu->r[0] + 0xFFFF885Cu;
|
|
/* 02427698 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02427698 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0242769C */ cpu->r[12] = cpu->r[12] + 0xFFFF886Cu;
|
|
/* 024276A0 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024276A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024276A4 */ cpu->r[0] = 0x00000000u;
|
|
/* 024276A8 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 024276A8 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 024276AC */ cpu->r[10] = 0x00000001u;
|
|
/* 024276B0 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 024276B0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024276B4 */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 024276B4 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[10]);
|
|
L_024276B8: ; // 0x24276b8
|
|
/* 024276B8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024276B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024276BC */ cpu->r[3] = cpu->r[31];
|
|
/* 024276C0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024276C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024276C4 */ cpu->lr = cpu->r[0];
|
|
/* 024276C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024276CC */ return;
|
|
}
|
|
|
|
// fn_0242763C @ 0x242763c
|
|
void Gambit_fn_0242763C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0242763C: ; // 0x242763c
|
|
/* 0242763C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0242763C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242763C */ cpu->r[1] = _t0;
|
|
/* 02427640 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427640 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427644 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427648 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427648 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0242764C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242764C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0242764C */ if (_t4) goto L_02427650; else goto L_02427660;
|
|
L_02427650: ; // 0x2427650
|
|
/* 02427650 */ cpu->r[3] = 0x00000224u;
|
|
/* 02427654 */ Gambit_fn_02801A78(cpu);
|
|
/* 02427658 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242765C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242765C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0242765C */ if (_t6) goto L_024276B8; else goto L_02427660;
|
|
L_02427660: ; // 0x2427660
|
|
/* 02427660 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02427664 */ cpu->r[5] = 0x00000000u;
|
|
/* 02427668 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242766C */ cpu->r[4] = cpu->r[4] + 0xFFFF864Cu;
|
|
/* 02427670 */ cpu->r[6] = cpu->r[5];
|
|
/* 02427674 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02427678 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0242767C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427680 */ cpu->r[12] = cpu->r[12] + 0xFFFF884Cu;
|
|
/* 02427684 */ cpu->r[11] = cpu->r[11] + 0xFFFF866Cu;
|
|
/* 02427688 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0242768C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0242768C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427690 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427694 */ cpu->r[0] = cpu->r[0] + 0xFFFF885Cu;
|
|
/* 02427698 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02427698 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0242769C */ cpu->r[12] = cpu->r[12] + 0xFFFF886Cu;
|
|
/* 024276A0 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024276A0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 024276A4 */ cpu->r[0] = 0x00000000u;
|
|
/* 024276A8 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 024276A8 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 024276AC */ cpu->r[10] = 0x00000001u;
|
|
/* 024276B0 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 024276B0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024276B4 */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 024276B4 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[10]);
|
|
L_024276B8: ; // 0x24276b8
|
|
/* 024276B8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024276B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024276BC */ cpu->r[3] = cpu->r[31];
|
|
/* 024276C0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024276C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024276C4 */ cpu->lr = cpu->r[0];
|
|
/* 024276C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024276CC */ return;
|
|
}
|
|
|
|
// fn_024276F0 @ 0x24276f0
|
|
void Gambit_fn_024276F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024276F0: ; // 0x24276f0
|
|
/* 024276F0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024276F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024276F0 */ cpu->r[1] = _t0;
|
|
/* 024276F4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024276F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024276F8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024276FC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024276FC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02427700 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02427700 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02427704 */ _t4 = cpu->r[31] + 0x00000220u;
|
|
/* 02427704 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[4]);
|
|
/* 02427708 */ Gambit_fn_020D4C88(cpu);
|
|
/* 0242770C */ _t5 = cpu->r[31] + 0x0000021Cu;
|
|
/* 0242770C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02427710 */ cpu->r[4] = 0x00000002u;
|
|
/* 02427714 */ Gambit_fn_027EDC84(cpu);
|
|
/* 02427718 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02427718 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0242771C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242771C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02427720 */ cpu->lr = cpu->r[0];
|
|
/* 02427724 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02427728 */ return;
|
|
}
|
|
|
|
// fn_0242772C @ 0x242772c
|
|
void Gambit_fn_0242772C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_0242772C: ; // 0x242772c
|
|
/* 0242772C */ cpu->r[0] = cpu->lr;
|
|
/* 02427730 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427730 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427730 */ cpu->r[1] = _t0;
|
|
/* 02427734 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02427734 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427738 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0242773C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02427740 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02427740 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02427744 */ cpu->r[8] = cpu->r[8] + 0xFFFF8660u;
|
|
/* 02427748 */ cpu->r[30] = cpu->r[3];
|
|
/* 0242774C */ cpu->r[7] = cpu->r[7] + 0xFFFF8624u;
|
|
/* 02427750 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02427750 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02427754 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427754 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
/* 02427758 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242775C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242775C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02427760 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02427764 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02427768 */ _t6 = cpu->r[12] + 0xFFFFDBA0u;
|
|
/* 02427768 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02427768 */ cpu->r[12] = _t6;
|
|
/* 0242776C */ cpu->r[31] = cpu->r[3];
|
|
/* 02427770 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02427774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02427778 */ cpu->r[4] = cpu->r[4] + 0xFFFFED90u;
|
|
/* 0242777C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242777C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0242777C */ if (_t8) goto L_02427780; else goto L_02427794;
|
|
L_02427780: ; // 0x2427780
|
|
/* 02427780 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427784 */ cpu->r[10] = 0x00000001u;
|
|
/* 02427788 */ cpu->r[11] = cpu->r[11] + 0xFFFF863Cu;
|
|
/* 0242778C */ _t9 = cpu->r[12] + 0x00000000u;
|
|
/* 0242778C */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02427790 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 02427790 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
L_02427794: ; // 0x2427794
|
|
/* 02427794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427798 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427798 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02427798 */ if (_t12) goto L_024277B8; else goto L_0242779C;
|
|
L_0242779C: ; // 0x242779c
|
|
/* 0242779C */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0242779C */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024277A0 */ _t14 = cpu->r[12] + 0x0000001Cu;
|
|
/* 024277A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024277A4 */ cpu->ctr = cpu->r[0];
|
|
/* 024277A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024277AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024277B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024277B4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024277B4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024277B4 */ if (_t16) goto L_024277B8; else goto L_024277BC;
|
|
L_024277B8: ; // 0x24277b8
|
|
/* 024277B8 */ cpu->r[31] = 0x00000000u;
|
|
L_024277BC: ; // 0x24277bc
|
|
/* 024277BC */ _t17 = cpu->r[30] + 0x0000021Cu;
|
|
/* 024277BC */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 024277C0 */ cpu->r[0] = 0x00000001u;
|
|
/* 024277C4 */ _t18 = cpu->r[31] + 0x00000210u;
|
|
/* 024277C4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024277C8 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024277C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024277CC */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 024277CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024277D0 */ cpu->lr = cpu->r[0];
|
|
/* 024277D4 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 024277D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024277D8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024277DC */ return;
|
|
}
|
|
|
|
// fn_02427730 @ 0x2427730
|
|
void Gambit_fn_02427730(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_02427730: ; // 0x2427730
|
|
/* 02427730 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427730 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427730 */ cpu->r[1] = _t0;
|
|
/* 02427734 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02427734 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427738 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0242773C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02427740 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02427740 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02427744 */ cpu->r[8] = cpu->r[8] + 0xFFFF8660u;
|
|
/* 02427748 */ cpu->r[30] = cpu->r[3];
|
|
/* 0242774C */ cpu->r[7] = cpu->r[7] + 0xFFFF8624u;
|
|
/* 02427750 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02427750 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 02427754 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427754 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
/* 02427758 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242775C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242775C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02427760 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02427764 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02427768 */ _t6 = cpu->r[12] + 0xFFFFDBA0u;
|
|
/* 02427768 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02427768 */ cpu->r[12] = _t6;
|
|
/* 0242776C */ cpu->r[31] = cpu->r[3];
|
|
/* 02427770 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02427774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02427778 */ cpu->r[4] = cpu->r[4] + 0xFFFFED90u;
|
|
/* 0242777C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242777C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0242777C */ if (_t8) goto L_02427780; else goto L_02427794;
|
|
L_02427780: ; // 0x2427780
|
|
/* 02427780 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427784 */ cpu->r[10] = 0x00000001u;
|
|
/* 02427788 */ cpu->r[11] = cpu->r[11] + 0xFFFF863Cu;
|
|
/* 0242778C */ _t9 = cpu->r[12] + 0x00000000u;
|
|
/* 0242778C */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02427790 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 02427790 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
L_02427794: ; // 0x2427794
|
|
/* 02427794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427798 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427798 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02427798 */ if (_t12) goto L_024277B8; else goto L_0242779C;
|
|
L_0242779C: ; // 0x242779c
|
|
/* 0242779C */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 0242779C */ cpu->r[12] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024277A0 */ _t14 = cpu->r[12] + 0x0000001Cu;
|
|
/* 024277A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024277A4 */ cpu->ctr = cpu->r[0];
|
|
/* 024277A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024277AC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024277B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024277B4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024277B4 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024277B4 */ if (_t16) goto L_024277B8; else goto L_024277BC;
|
|
L_024277B8: ; // 0x24277b8
|
|
/* 024277B8 */ cpu->r[31] = 0x00000000u;
|
|
L_024277BC: ; // 0x24277bc
|
|
/* 024277BC */ _t17 = cpu->r[30] + 0x0000021Cu;
|
|
/* 024277BC */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 024277C0 */ cpu->r[0] = 0x00000001u;
|
|
/* 024277C4 */ _t18 = cpu->r[31] + 0x00000210u;
|
|
/* 024277C4 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024277C8 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024277C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024277CC */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 024277CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024277D0 */ cpu->lr = cpu->r[0];
|
|
/* 024277D4 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 024277D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024277D8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024277DC */ return;
|
|
}
|
|
|
|
// fn_024277E0 @ 0x24277e0
|
|
void Gambit_fn_024277E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_024277E0: ; // 0x24277e0
|
|
/* 024277E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024277E4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024277E4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024277E4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024277E4 */ goto L_024277E8;
|
|
L_024277E8: ; // 0x24277e8
|
|
/* 024277E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024277E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024277EC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024277EC */ _t3 = _t2 & 0x00000001u;
|
|
/* 024277EC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024277EC */ goto L_024277F0;
|
|
L_024277F0: ; // 0x24277f0
|
|
/* 024277F0 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_024277F4 @ 0x24277f4
|
|
void Gambit_fn_024277F4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024277F4: ; // 0x24277f4
|
|
/* 024277F4 */ cpu->r[0] = cpu->lr;
|
|
/* 024277F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024277F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024277F8 */ cpu->r[1] = _t0;
|
|
/* 024277FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024277FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427800 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02427800 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02427804 */ cpu->r[30] = cpu->r[3];
|
|
/* 02427804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427808 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242780C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0242780C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427810 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427810 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427810 */ if (_t5) goto L_02427880; else goto L_02427814;
|
|
L_02427814: ; // 0x2427814
|
|
/* 02427814 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427818 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0242781C */ cpu->r[0] = cpu->r[0] + 0xFFFF884Cu;
|
|
/* 02427820 */ cpu->r[12] = cpu->r[12] + 0xFFFF886Cu;
|
|
/* 02427824 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427824 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427828 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0242782C */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0242782C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427830 */ cpu->r[11] = cpu->r[11] + 0xFFFF885Cu;
|
|
/* 02427834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427838 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02427838 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0242783C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242783C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0242783C */ if (_t10) goto L_02427870; else goto L_02427840;
|
|
L_02427840: ; // 0x2427840
|
|
/* 02427840 */ cpu->r[10] = 0x10010000u;
|
|
/* 02427844 */ cpu->r[0] = 0x10010000u;
|
|
/* 02427848 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 0242784C */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02427850 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427854 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427854 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427858 */ cpu->r[0] = 0x10010000u;
|
|
/* 0242785C */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0242785C */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02427860 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02427864 */ cpu->r[4] = 0x00000000u;
|
|
/* 02427868 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02427868 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0242786C */ Gambit_fn_02068798(cpu);
|
|
L_02427870: ; // 0x2427870
|
|
/* 02427870 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02427870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427874 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427874 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02427874 */ if (_t15) goto L_02427880; else goto L_02427878;
|
|
L_02427878: ; // 0x2427878
|
|
/* 02427878 */ cpu->r[3] = cpu->r[30];
|
|
/* 0242787C */ Gambit_fn_02801BB0(cpu);
|
|
L_02427880: ; // 0x2427880
|
|
/* 02427880 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02427880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02427884 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02427884 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02427888 */ cpu->lr = cpu->r[0];
|
|
/* 0242788C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242788C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427890 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02427894 */ return;
|
|
}
|
|
|
|
// fn_024277F8 @ 0x24277f8
|
|
void Gambit_fn_024277F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024277F8: ; // 0x24277f8
|
|
/* 024277F8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024277F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024277F8 */ cpu->r[1] = _t0;
|
|
/* 024277FC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024277FC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427800 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02427800 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02427804 */ cpu->r[30] = cpu->r[3];
|
|
/* 02427804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427808 */ cpu->r[31] = cpu->r[4];
|
|
/* 0242780C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0242780C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427810 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427810 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427810 */ if (_t5) goto L_02427880; else goto L_02427814;
|
|
L_02427814: ; // 0x2427814
|
|
/* 02427814 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427818 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0242781C */ cpu->r[0] = cpu->r[0] + 0xFFFF884Cu;
|
|
/* 02427820 */ cpu->r[12] = cpu->r[12] + 0xFFFF886Cu;
|
|
/* 02427824 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427824 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427828 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0242782C */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 0242782C */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427830 */ cpu->r[11] = cpu->r[11] + 0xFFFF885Cu;
|
|
/* 02427834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427838 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02427838 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 0242783C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242783C */ _t10 = _t9 & 0x00000001u;
|
|
/* 0242783C */ if (_t10) goto L_02427870; else goto L_02427840;
|
|
L_02427840: ; // 0x2427840
|
|
/* 02427840 */ cpu->r[10] = 0x10010000u;
|
|
/* 02427844 */ cpu->r[0] = 0x10010000u;
|
|
/* 02427848 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 0242784C */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02427850 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427854 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427854 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427858 */ cpu->r[0] = 0x10010000u;
|
|
/* 0242785C */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 0242785C */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02427860 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02427864 */ cpu->r[4] = 0x00000000u;
|
|
/* 02427868 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02427868 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0242786C */ Gambit_fn_02068798(cpu);
|
|
L_02427870: ; // 0x2427870
|
|
/* 02427870 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02427870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427874 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427874 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02427874 */ if (_t15) goto L_02427880; else goto L_02427878;
|
|
L_02427878: ; // 0x2427878
|
|
/* 02427878 */ cpu->r[3] = cpu->r[30];
|
|
/* 0242787C */ Gambit_fn_02801BB0(cpu);
|
|
L_02427880: ; // 0x2427880
|
|
/* 02427880 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02427880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02427884 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02427884 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02427888 */ cpu->lr = cpu->r[0];
|
|
/* 0242788C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242788C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427890 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02427894 */ return;
|
|
}
|
|
|
|
// fn_02427898 @ 0x2427898
|
|
void Gambit_fn_02427898(CPUState* cpu) {
|
|
L_02427898: ; // 0x2427898
|
|
/* 02427898 */ return;
|
|
}
|
|
|
|
// fn_0242789C @ 0x242789c
|
|
void Gambit_fn_0242789C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0242789C: ; // 0x242789c
|
|
/* 0242789C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0242789C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024278A0 */ return;
|
|
}
|
|
|
|
// fn_024278A4 @ 0x24278a4
|
|
void Gambit_fn_024278A4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024278A4: ; // 0x24278a4
|
|
/* 024278A4 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024278A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024278A8 */ return;
|
|
}
|
|
|
|
// fn_024278AC @ 0x24278ac
|
|
void Gambit_fn_024278AC(CPUState* cpu) {
|
|
L_024278AC: ; // 0x24278ac
|
|
/* 024278AC */ return;
|
|
}
|
|
|
|
// fn_024278B0 @ 0x24278b0
|
|
void Gambit_fn_024278B0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024278B0: ; // 0x24278b0
|
|
/* 024278B0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024278B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024278B4 */ return;
|
|
}
|
|
|
|
// fn_024278B8 @ 0x24278b8
|
|
void Gambit_fn_024278B8(CPUState* cpu) {
|
|
L_024278B8: ; // 0x24278b8
|
|
/* 024278B8 */ return;
|
|
}
|
|
|
|
// fn_024278BC @ 0x24278bc
|
|
void Gambit_fn_024278BC(CPUState* cpu) {
|
|
L_024278BC: ; // 0x24278bc
|
|
/* 024278BC */ return;
|
|
}
|
|
|
|
// fn_024278C0 @ 0x24278c0
|
|
void Gambit_fn_024278C0(CPUState* cpu) {
|
|
L_024278C0: ; // 0x24278c0
|
|
/* 024278C0 */ return;
|
|
}
|
|
|
|
// fn_024278C4 @ 0x24278c4
|
|
void Gambit_fn_024278C4(CPUState* cpu) {
|
|
L_024278C4: ; // 0x24278c4
|
|
/* 024278C4 */ return;
|
|
}
|
|
|
|
// fn_024278C8 @ 0x24278c8
|
|
void Gambit_fn_024278C8(CPUState* cpu) {
|
|
L_024278C8: ; // 0x24278c8
|
|
/* 024278C8 */ return;
|
|
}
|
|
|
|
// fn_024278CC @ 0x24278cc
|
|
void Gambit_fn_024278CC(CPUState* cpu) {
|
|
L_024278CC: ; // 0x24278cc
|
|
/* 024278CC */ cpu->r[3] = 0x00000001u;
|
|
/* 024278D0 */ return;
|
|
}
|
|
|
|
// fn_024278D4 @ 0x24278d4
|
|
void Gambit_fn_024278D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024278D4: ; // 0x24278d4
|
|
/* 024278D4 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 024278D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024278D8 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024278D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024278DC */ cpu->ctr = cpu->r[0];
|
|
/* 024278E0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024278E4 @ 0x24278e4
|
|
void Gambit_fn_024278E4(CPUState* cpu) {
|
|
L_024278E4: ; // 0x24278e4
|
|
/* 024278E4 */ return;
|
|
}
|
|
|
|
// fn_024278E8 @ 0x24278e8
|
|
void Gambit_fn_024278E8(CPUState* cpu) {
|
|
L_024278E8: ; // 0x24278e8
|
|
/* 024278E8 */ cpu->r[3] = 0x00000000u;
|
|
/* 024278EC */ return;
|
|
}
|
|
|
|
// fn_024278F0 @ 0x24278f0
|
|
void Gambit_fn_024278F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024278F0: ; // 0x24278f0
|
|
/* 024278F0 */ cpu->r[9] = 0x101D0000u;
|
|
/* 024278F4 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 024278F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024278F4 */ cpu->r[9] = _t0;
|
|
/* 024278F8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024278FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427900 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02427904 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427904 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02427904 */ if (_t2) goto L_02427908; else goto L_0242791C;
|
|
L_02427908: ; // 0x2427908
|
|
/* 02427908 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0242790C */ cpu->r[0] = 0x00000001u;
|
|
/* 02427910 */ cpu->r[7] = cpu->r[7] + 0xFFFF863Cu;
|
|
/* 02427914 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02427914 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427918 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02427918 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0242791C: ; // 0x242791c
|
|
/* 0242791C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02427920 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427920 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02427920 */ if (_t6) goto L_02427924; else goto L_0242792C;
|
|
L_02427924: ; // 0x2427924
|
|
/* 02427924 */ cpu->r[3] = 0x00000001u;
|
|
/* 02427928 */ return;
|
|
L_0242792C: ; // 0x242792c
|
|
/* 0242792C */ cpu->r[7] = 0x101D0000u;
|
|
/* 02427930 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02427930 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02427930 */ cpu->r[7] = _t7;
|
|
/* 02427934 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02427938 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0242793C */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02427940 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427940 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02427940 */ if (_t9) goto L_02427944; else goto L_02427958;
|
|
L_02427944: ; // 0x2427944
|
|
/* 02427944 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427948 */ cpu->r[9] = 0x00000001u;
|
|
/* 0242794C */ cpu->r[0] = cpu->r[0] + 0xFFFF8614u;
|
|
/* 02427950 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02427950 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02427954 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02427954 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02427958: ; // 0x2427958
|
|
/* 02427958 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 0242795C */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02427960 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02427964 */ return;
|
|
}
|
|
|
|
// fn_02427968 @ 0x2427968
|
|
void Gambit_fn_02427968(CPUState* cpu) {
|
|
L_02427968: ; // 0x2427968
|
|
/* 02427968 */ return;
|
|
}
|
|
|
|
// fn_0242796C @ 0x242796c
|
|
void Gambit_fn_0242796C(CPUState* cpu) {
|
|
L_0242796C: ; // 0x242796c
|
|
/* 0242796C */ return;
|
|
}
|
|
|
|
// fn_02427970 @ 0x2427970
|
|
void Gambit_fn_02427970(CPUState* cpu) {
|
|
L_02427970: ; // 0x2427970
|
|
/* 02427970 */ return;
|
|
}
|
|
|
|
// fn_02427974 @ 0x2427974
|
|
void Gambit_fn_02427974(CPUState* cpu) {
|
|
L_02427974: ; // 0x2427974
|
|
/* 02427974 */ cpu->r[3] = 0x00000000u;
|
|
/* 02427978 */ return;
|
|
}
|
|
|
|
// fn_0242797C @ 0x242797c
|
|
void Gambit_fn_0242797C(CPUState* cpu) {
|
|
L_0242797C: ; // 0x242797c
|
|
/* 0242797C */ cpu->r[3] = 0x00000000u;
|
|
/* 02427980 */ return;
|
|
}
|
|
|
|
// fn_02427984 @ 0x2427984
|
|
void Gambit_fn_02427984(CPUState* cpu) {
|
|
L_02427984: ; // 0x2427984
|
|
/* 02427984 */ return;
|
|
}
|
|
|
|
// fn_02427988 @ 0x2427988
|
|
void Gambit_fn_02427988(CPUState* cpu) {
|
|
L_02427988: ; // 0x2427988
|
|
/* 02427988 */ return;
|
|
}
|
|
|
|
// fn_0242798C @ 0x242798c
|
|
void Gambit_fn_0242798C(CPUState* cpu) {
|
|
L_0242798C: ; // 0x242798c
|
|
/* 0242798C */ return;
|
|
}
|
|
|
|
// fn_02427990 @ 0x2427990
|
|
void Gambit_fn_02427990(CPUState* cpu) {
|
|
L_02427990: ; // 0x2427990
|
|
/* 02427990 */ return;
|
|
}
|
|
|
|
// fn_02427994 @ 0x2427994
|
|
void Gambit_fn_02427994(CPUState* cpu) {
|
|
L_02427994: ; // 0x2427994
|
|
/* 02427994 */ return;
|
|
}
|
|
|
|
// fn_02427998 @ 0x2427998
|
|
void Gambit_fn_02427998(CPUState* cpu) {
|
|
L_02427998: ; // 0x2427998
|
|
/* 02427998 */ return;
|
|
}
|
|
|
|
// fn_0242799C @ 0x242799c
|
|
void Gambit_fn_0242799C(CPUState* cpu) {
|
|
L_0242799C: ; // 0x242799c
|
|
/* 0242799C */ return;
|
|
}
|
|
|
|
// fn_024279A0 @ 0x24279a0
|
|
void Gambit_fn_024279A0(CPUState* cpu) {
|
|
L_024279A0: ; // 0x24279a0
|
|
/* 024279A0 */ return;
|
|
}
|
|
|
|
// fn_024279A4 @ 0x24279a4
|
|
void Gambit_fn_024279A4(CPUState* cpu) {
|
|
L_024279A4: ; // 0x24279a4
|
|
/* 024279A4 */ return;
|
|
}
|
|
|
|
// fn_024279A8 @ 0x24279a8
|
|
void Gambit_fn_024279A8(CPUState* cpu) {
|
|
L_024279A8: ; // 0x24279a8
|
|
/* 024279A8 */ return;
|
|
}
|
|
|
|
// fn_024279AC @ 0x24279ac
|
|
void Gambit_fn_024279AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0200896C: ; // 0x200896c
|
|
/* 0200896C */ cpu->r[0] = cpu->lr;
|
|
/* 02008970 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02008970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02008970 */ cpu->r[1] = _t0;
|
|
/* 02008974 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02008974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02008978 */ cpu->r[31] = cpu->r[3];
|
|
/* 0200897C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0200897C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02008980 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02008980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02008984 */ cpu->r[12] = 0x00000000u;
|
|
/* 02008988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0200898C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0200898C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02008990 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02008990 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02008990 */ if (_t6) goto L_020089B8; else goto L_02008994;
|
|
L_02008994: ; // 0x2008994
|
|
/* 02008994 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02008994 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02008998 */ /* nop */
|
|
/* 0200899C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020089A0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020089A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020089A0 */ if (_t9) goto L_020089A4; else goto L_020089B8;
|
|
L_020089A4: ; // 0x20089a4
|
|
/* 020089A4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020089A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020089A8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020089A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020089AC */ cpu->ctr = cpu->r[0];
|
|
/* 020089B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020089B8: ; // 0x20089b8
|
|
/* 020089B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089BC */ Gambit_fn_020088E4(cpu);
|
|
/* 020089C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089C4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020089C8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020089C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020089CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020089CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020089D0 */ cpu->lr = cpu->r[0];
|
|
/* 020089D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020089D8 */ return;
|
|
L_024279AC: ; // 0x24279ac
|
|
/* 024279AC */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 024279B0 */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_024279B4 @ 0x24279b4
|
|
void Gambit_fn_024279B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024279B4: ; // 0x24279b4
|
|
/* 024279B4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024279B8 */ goto L_02427F6C;
|
|
L_02427F6C: ; // 0x2427f6c
|
|
/* 02427F6C */ cpu->r[0] = cpu->lr;
|
|
/* 02427F70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02427F70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427F70 */ cpu->r[1] = _t0;
|
|
/* 02427F74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427F74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427F78 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02427F78 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02427F7C */ cpu->r[30] = cpu->r[3];
|
|
/* 02427F7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427F80 */ cpu->r[31] = cpu->r[4];
|
|
/* 02427F84 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02427F84 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427F88 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427F88 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427F88 */ if (_t5) goto L_02427FF8; else goto L_02427F8C;
|
|
L_02427F8C: ; // 0x2427f8c
|
|
/* 02427F8C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427F90 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427F94 */ cpu->r[0] = cpu->r[0] + 0xFFFF8BE8u;
|
|
/* 02427F98 */ cpu->r[12] = cpu->r[12] + 0xFFFF8C08u;
|
|
/* 02427F9C */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427F9C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427FA0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427FA4 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02427FA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427FA8 */ cpu->r[11] = cpu->r[11] + 0xFFFF8BF8u;
|
|
/* 02427FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427FB0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02427FB0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02427FB4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427FB4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02427FB4 */ if (_t10) goto L_02427FE8; else goto L_02427FB8;
|
|
L_02427FB8: ; // 0x2427fb8
|
|
/* 02427FB8 */ cpu->r[10] = 0x10010000u;
|
|
/* 02427FBC */ cpu->r[0] = 0x10010000u;
|
|
/* 02427FC0 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02427FC4 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02427FC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427FCC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427FCC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427FD0 */ cpu->r[0] = 0x10010000u;
|
|
/* 02427FD4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02427FD4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02427FD8 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02427FDC */ cpu->r[4] = 0x00000000u;
|
|
/* 02427FE0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02427FE0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02427FE4 */ Gambit_fn_02068798(cpu);
|
|
L_02427FE8: ; // 0x2427fe8
|
|
/* 02427FE8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02427FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427FEC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427FEC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02427FEC */ if (_t15) goto L_02427FF8; else goto L_02427FF0;
|
|
L_02427FF0: ; // 0x2427ff0
|
|
/* 02427FF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427FF4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02427FF8: ; // 0x2427ff8
|
|
/* 02427FF8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02427FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02427FFC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02427FFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02428000 */ cpu->lr = cpu->r[0];
|
|
/* 02428004 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428004 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02428008 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0242800C */ return;
|
|
}
|
|
|
|
// fn_024279BC @ 0x24279bc
|
|
void Gambit_fn_024279BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_024279BC: ; // 0x24279bc
|
|
/* 024279BC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024279C0 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_024279C4 @ 0x24279c4
|
|
void Gambit_fn_024279C4(CPUState* cpu) {
|
|
L_024279C4: ; // 0x24279c4
|
|
/* 024279C4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024279C8 */ goto L_02428010;
|
|
L_02428010: ; // 0x2428010
|
|
/* 02428010 */ return;
|
|
}
|
|
|
|
// fn_024279CC @ 0x24279cc
|
|
void Gambit_fn_024279CC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024279CC: ; // 0x24279cc
|
|
/* 024279CC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024279D0 */ goto L_02428014;
|
|
L_02428014: ; // 0x2428014
|
|
/* 02428014 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02428014 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428018 */ return;
|
|
}
|
|
|
|
// fn_024279D4 @ 0x24279d4
|
|
void Gambit_fn_024279D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_024279D4: ; // 0x24279d4
|
|
/* 024279D4 */ cpu->r[0] = cpu->lr;
|
|
/* 024279D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024279D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024279D8 */ cpu->r[1] = _t0;
|
|
/* 024279DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024279DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024279E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024279E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024279E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024279E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024279E8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024279E8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024279E8 */ if (_t4) goto L_024279EC; else goto L_024279FC;
|
|
L_024279EC: ; // 0x24279ec
|
|
/* 024279EC */ cpu->r[3] = 0x00000224u;
|
|
/* 024279F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 024279F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024279F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024279F8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024279F8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024279F8 */ if (_t6) goto L_02427A50; else goto L_024279FC;
|
|
L_024279FC: ; // 0x24279fc
|
|
/* 024279FC */ cpu->r[4] = 0x100A0000u;
|
|
/* 02427A00 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427A04 */ cpu->r[5] = 0x00000002u;
|
|
/* 02427A08 */ cpu->r[4] = cpu->r[4] + 0xFFFF8948u;
|
|
/* 02427A0C */ cpu->r[6] = 0x00000000u;
|
|
/* 02427A10 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02427A14 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427A18 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427A1C */ cpu->r[12] = cpu->r[12] + 0xFFFF8BE8u;
|
|
/* 02427A20 */ cpu->r[11] = cpu->r[11] + 0xFFFF8A08u;
|
|
/* 02427A24 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427A28 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02427A28 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427A2C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427A30 */ cpu->r[0] = cpu->r[0] + 0xFFFF8BF8u;
|
|
/* 02427A34 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02427A34 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02427A38 */ cpu->r[12] = cpu->r[12] + 0xFFFF8C08u;
|
|
/* 02427A3C */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02427A3C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02427A40 */ cpu->r[0] = 0x00000000u;
|
|
/* 02427A44 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02427A44 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02427A48 */ _t11 = cpu->r[31] + 0x00000220u;
|
|
/* 02427A48 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427A4C */ _t12 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02427A4C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_02427A50: ; // 0x2427a50
|
|
/* 02427A50 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02427A50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02427A54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427A58 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427A58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02427A5C */ cpu->lr = cpu->r[0];
|
|
/* 02427A60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02427A64 */ return;
|
|
}
|
|
|
|
// fn_024279D8 @ 0x24279d8
|
|
void Gambit_fn_024279D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_024279D8: ; // 0x24279d8
|
|
/* 024279D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024279D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024279D8 */ cpu->r[1] = _t0;
|
|
/* 024279DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024279DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024279E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024279E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024279E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024279E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024279E8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024279E8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024279E8 */ if (_t4) goto L_024279EC; else goto L_024279FC;
|
|
L_024279EC: ; // 0x24279ec
|
|
/* 024279EC */ cpu->r[3] = 0x00000224u;
|
|
/* 024279F0 */ Gambit_fn_02801A78(cpu);
|
|
/* 024279F4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024279F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024279F8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024279F8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024279F8 */ if (_t6) goto L_02427A50; else goto L_024279FC;
|
|
L_024279FC: ; // 0x24279fc
|
|
/* 024279FC */ cpu->r[4] = 0x100A0000u;
|
|
/* 02427A00 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427A04 */ cpu->r[5] = 0x00000002u;
|
|
/* 02427A08 */ cpu->r[4] = cpu->r[4] + 0xFFFF8948u;
|
|
/* 02427A0C */ cpu->r[6] = 0x00000000u;
|
|
/* 02427A10 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02427A14 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427A18 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427A1C */ cpu->r[12] = cpu->r[12] + 0xFFFF8BE8u;
|
|
/* 02427A20 */ cpu->r[11] = cpu->r[11] + 0xFFFF8A08u;
|
|
/* 02427A24 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427A28 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02427A28 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427A2C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427A30 */ cpu->r[0] = cpu->r[0] + 0xFFFF8BF8u;
|
|
/* 02427A34 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02427A34 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02427A38 */ cpu->r[12] = cpu->r[12] + 0xFFFF8C08u;
|
|
/* 02427A3C */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02427A3C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02427A40 */ cpu->r[0] = 0x00000000u;
|
|
/* 02427A44 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02427A44 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02427A48 */ _t11 = cpu->r[31] + 0x00000220u;
|
|
/* 02427A48 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427A4C */ _t12 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02427A4C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_02427A50: ; // 0x2427a50
|
|
/* 02427A50 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02427A50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02427A54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427A58 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427A58 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02427A5C */ cpu->lr = cpu->r[0];
|
|
/* 02427A60 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02427A64 */ return;
|
|
}
|
|
|
|
// fn_02427A68 @ 0x2427a68
|
|
void Gambit_fn_02427A68(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102;
|
|
|
|
L_02427A68: ; // 0x2427a68
|
|
/* 02427A68 */ cpu->r[0] = cpu->lr;
|
|
/* 02427A6C */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 02427A6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427A6C */ cpu->r[1] = _t0;
|
|
/* 02427A70 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 02427A70 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02427A74 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 02427A74 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02427A78 */ /* nop */
|
|
/* 02427A7C */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 02427A7C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02427A80 */ /* nop */
|
|
/* 02427A84 */ _t4 = cpu->r[1] + 0x00000068u;
|
|
/* 02427A84 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02427A88 */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 02427A88 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02427A8C */ _t6 = cpu->r[1] + 0x00000040u;
|
|
/* 02427A8C */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 02427A90 */ _t7 = cpu->r[1] + 0x00000044u;
|
|
/* 02427A90 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02427A94 */ _t8 = cpu->r[1] + 0x00000048u;
|
|
/* 02427A94 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02427A98 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02427A9C */ _t9 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02427A9C */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02427AA0 */ _t10 = cpu->r[12] + 0x00001344u;
|
|
/* 02427AA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02427AA4 */ cpu->r[29] = cpu->r[3];
|
|
/* 02427AA8 */ _t11 = cpu->r[12] + 0x00000010u;
|
|
/* 02427AA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02427AAC */ Gambit_fn_0201A440(cpu);
|
|
/* 02427AB0 */ cpu->r[28] = cpu->r[3];
|
|
/* 02427AB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02427AB4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427AB4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02427AB4 */ if (_t13) goto L_02427D5C; else goto L_02427AB8;
|
|
L_02427AB8: ; // 0x2427ab8
|
|
/* 02427AB8 */ _t14 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02427AB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02427ABC */ _t15 = cpu->r[28] + 0x00000002u;
|
|
/* 02427ABC */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02427AC0 */ Gambit_fn_020A91C4(cpu);
|
|
/* 02427AC4 */ _t16 = cpu->r[29] + 0x00000220u;
|
|
/* 02427AC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02427AC8 */ _t17 = cpu->r[28] + 0x00000000u;
|
|
/* 02427AC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02427ACC */ Gambit_fn_020A9934(cpu);
|
|
/* 02427AD0 */ _t18 = cpu->r[28] + 0x00000010u;
|
|
/* 02427AD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000064u);
|
|
/* 02427AD8 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427AD8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02427AD8 */ if (_t20) goto L_02427B3C; else goto L_02427ADC;
|
|
L_02427ADC: ; // 0x2427adc
|
|
/* 02427ADC */ cpu->r[6] = 0x100A0000u;
|
|
/* 02427AE0 */ cpu->r[9] = 0x43300000u;
|
|
/* 02427AE4 */ cpu->r[7] = cpu->r[8] + 0xFFFFFFB6u;
|
|
/* 02427AE8 */ _t21 = cpu->r[6] + 0xFFFF8960u;
|
|
/* 02427AE8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t21);
|
|
/* 02427AEC */ cpu->r[0] = cpu->r[7] ^ 0x80000000u;
|
|
/* 02427AF0 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02427AF0 */ rbrew_write32(cpu->mem, _t22, cpu->r[9]);
|
|
/* 02427AF4 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02427AF8 */ cpu->r[31] = 0x100A0000u;
|
|
/* 02427AFC */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02427AFC */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02427B00 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 02427B00 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 02427B04 */ cpu->r[30] = cpu->r[30] + 0xFFFF88F8u;
|
|
/* 02427B08 */ cpu->r[31] = cpu->r[31] + 0xFFFF8994u;
|
|
/* 02427B0C */ cpu->f[0] = cpu->f[12] - cpu->f[0];
|
|
/* 02427B10 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427B10 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 02427B14 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02427B18 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427B1C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02427B1C */ rbrew_write32(cpu->mem, _t26, cpu->r[31]);
|
|
/* 02427B20 */ cpu->f[31] = (double)(float)cpu->f[0];
|
|
/* 02427B24 */ Gambit_fn_027EE100(cpu);
|
|
/* 02427B28 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02427B2C */ _t27 = cpu->r[10] + 0xFFFF8968u;
|
|
/* 02427B2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02427B30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[13]);
|
|
/* 02427B34 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427B34 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02427B34 */ if (_t29) goto L_02427B98; else goto L_02427B38;
|
|
L_02427B38: ; // 0x2427b38
|
|
/* 02427B38 */ goto L_02427BF0;
|
|
L_02427B3C: ; // 0x2427b3c
|
|
/* 02427B3C */ cpu->r[0] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02427B40 */ cpu->r[6] = 0x43300000u;
|
|
/* 02427B44 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 02427B48 */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 02427B48 */ rbrew_write32(cpu->mem, _t30, cpu->r[6]);
|
|
/* 02427B4C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427B50 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02427B50 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02427B54 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02427B54 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 02427B58 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02427B5C */ cpu->r[31] = 0x100A0000u;
|
|
/* 02427B60 */ _t33 = cpu->r[12] + 0xFFFF8960u;
|
|
/* 02427B60 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 02427B64 */ cpu->r[31] = cpu->r[31] + 0xFFFF8994u;
|
|
/* 02427B68 */ cpu->r[30] = cpu->r[30] + 0xFFFF88F8u;
|
|
/* 02427B6C */ cpu->f[0] = cpu->f[12] - cpu->f[0];
|
|
/* 02427B70 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 02427B70 */ rbrew_write32(cpu->mem, _t34, cpu->r[31]);
|
|
/* 02427B74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02427B78 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427B7C */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427B7C */ rbrew_write32(cpu->mem, _t35, cpu->r[30]);
|
|
/* 02427B80 */ cpu->f[31] = (double)(float)cpu->f[0];
|
|
/* 02427B84 */ Gambit_fn_027EE100(cpu);
|
|
/* 02427B88 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02427B8C */ _t36 = cpu->r[10] + 0xFFFF8968u;
|
|
/* 02427B8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02427B90 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[13]);
|
|
/* 02427B94 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427B94 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02427B94 */ if (_t38) goto L_02427B98; else goto L_02427BF0;
|
|
L_02427B98: ; // 0x2427b98
|
|
/* 02427B98 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427B98 */ rbrew_write32(cpu->mem, _t39, cpu->r[30]);
|
|
/* 02427B9C */ cpu->f[1] = cpu->f[13];
|
|
/* 02427BA0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427BA4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427BA8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02427BAC */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 02427BAC */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 02427BB0 */ Gambit_fn_027ED914(cpu);
|
|
/* 02427BB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427BB8 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427BB8 */ rbrew_write32(cpu->mem, _t41, cpu->r[30]);
|
|
/* 02427BBC */ cpu->r[3] = cpu->r[29];
|
|
/* 02427BC0 */ cpu->r[0] = cpu->r[0] + 0xFFFF89A4u;
|
|
/* 02427BC4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02427BC8 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 02427BC8 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02427BCC */ Gambit_fn_026D86B0(cpu);
|
|
/* 02427BD0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02427BD4 */ _t43 = cpu->r[10] + 0xFFFFED9Cu;
|
|
/* 02427BD4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02427BD4 */ cpu->r[10] = _t43;
|
|
/* 02427BD8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427BDC */ cpu->r[4] = 0x101D0000u;
|
|
/* 02427BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02427BE4 */ cpu->r[4] = cpu->r[4] + 0xFFFFEDDCu;
|
|
/* 02427BE8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427BE8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02427BE8 */ if (_t45) goto L_02427BEC; else goto L_02427C64;
|
|
L_02427BEC: ; // 0x2427bec
|
|
/* 02427BEC */ goto L_02427C50;
|
|
L_02427BF0: ; // 0x2427bf0
|
|
/* 02427BF0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[1]);
|
|
/* 02427BF4 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02427BF4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02427BF4 */ if (_t47) goto L_02427BF8; else goto L_02427BFC;
|
|
L_02427BF8: ; // 0x2427bf8
|
|
/* 02427BF8 */ cpu->f[31] = cpu->f[1];
|
|
L_02427BFC: ; // 0x2427bfc
|
|
/* 02427BFC */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427BFC */ rbrew_write32(cpu->mem, _t48, cpu->r[30]);
|
|
/* 02427C00 */ cpu->f[1] = cpu->f[31];
|
|
/* 02427C04 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427C08 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427C0C */ cpu->r[4] = 0x00000000u;
|
|
/* 02427C10 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 02427C10 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 02427C14 */ Gambit_fn_027ED914(cpu);
|
|
/* 02427C18 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427C1C */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427C1C */ rbrew_write32(cpu->mem, _t50, cpu->r[30]);
|
|
/* 02427C20 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427C24 */ cpu->r[0] = cpu->r[0] + 0xFFFF89A4u;
|
|
/* 02427C28 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02427C2C */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 02427C2C */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02427C30 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02427C34 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02427C38 */ _t52 = cpu->r[10] + 0xFFFFED9Cu;
|
|
/* 02427C38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02427C38 */ cpu->r[10] = _t52;
|
|
/* 02427C3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02427C40 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02427C44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02427C48 */ cpu->r[4] = cpu->r[4] + 0xFFFFEDDCu;
|
|
/* 02427C4C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427C4C */ _t54 = _t53 & 0x00000001u;
|
|
/* 02427C4C */ if (_t54) goto L_02427C50; else goto L_02427C64;
|
|
L_02427C50: ; // 0x2427c50
|
|
/* 02427C50 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02427C54 */ cpu->r[7] = 0x00000001u;
|
|
/* 02427C58 */ cpu->r[8] = cpu->r[8] + 0xFFFF8938u;
|
|
/* 02427C5C */ _t55 = cpu->r[10] + 0x00000000u;
|
|
/* 02427C5C */ rbrew_write32(cpu->mem, _t55, cpu->r[7]);
|
|
/* 02427C60 */ _t56 = cpu->r[4] + 0x00000000u;
|
|
/* 02427C60 */ rbrew_write32(cpu->mem, _t56, cpu->r[8]);
|
|
L_02427C64: ; // 0x2427c64
|
|
/* 02427C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427C68 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427C68 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02427C68 */ if (_t58) goto L_02427C88; else goto L_02427C6C;
|
|
L_02427C6C: ; // 0x2427c6c
|
|
/* 02427C6C */ _t59 = cpu->r[31] + 0x00000000u;
|
|
/* 02427C6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02427C70 */ _t60 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02427C70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02427C74 */ cpu->ctr = cpu->r[0];
|
|
/* 02427C78 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427C7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02427C80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02427C84 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427C84 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02427C84 */ if (_t62) goto L_02427C88; else goto L_02427C8C;
|
|
L_02427C88: ; // 0x2427c88
|
|
/* 02427C88 */ cpu->r[31] = 0x00000000u;
|
|
L_02427C8C: ; // 0x2427c8c
|
|
/* 02427C8C */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02427C90 */ Gambit_fn_02173CCC(cpu);
|
|
/* 02427C94 */ _t63 = cpu->r[28] + 0x00000010u;
|
|
/* 02427C94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02427C98 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02427C9C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02427CA0 */ Gambit_fn_02173E28(cpu);
|
|
/* 02427CA4 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02427CA8 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 02427CA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02427CAC */ cpu->r[9] = cpu->r[9] + 0xFFFF896Cu;
|
|
/* 02427CB0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427CB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 02427CB8 */ cpu->r[4] = 0x00000001u;
|
|
/* 02427CBC */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427CBC */ _t66 = _t65 & 0x00000001u;
|
|
/* 02427CBC */ if (_t66) goto L_02427CC0; else goto L_02427CF0;
|
|
L_02427CC0: ; // 0x2427cc0
|
|
/* 02427CC0 */ _t67 = cpu->r[1] + 0x00000020u;
|
|
/* 02427CC0 */ rbrew_write32(cpu->mem, _t67, cpu->r[30]);
|
|
/* 02427CC4 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427CC8 */ _t68 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427CC8 */ rbrew_write32(cpu->mem, _t68, cpu->r[9]);
|
|
/* 02427CCC */ Gambit_fn_027ED624(cpu);
|
|
/* 02427CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427CD4 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427CD4 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02427CD4 */ if (_t70) goto L_02427D1C; else goto L_02427CD8;
|
|
L_02427CD8: ; // 0x2427cd8
|
|
/* 02427CD8 */ _t71 = cpu->r[28] + 0x00000010u;
|
|
/* 02427CD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02427CDC */ cpu->r[5] = 0x00000000u;
|
|
/* 02427CE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427CE4 */ cpu->r[6] = 0x00000001u;
|
|
/* 02427CE8 */ Gambit_fn_020CF94C(cpu);
|
|
/* 02427CEC */ goto L_02427D1C;
|
|
L_02427CF0: ; // 0x2427cf0
|
|
/* 02427CF0 */ _t72 = cpu->r[1] + 0x00000028u;
|
|
/* 02427CF0 */ rbrew_write32(cpu->mem, _t72, cpu->r[30]);
|
|
/* 02427CF4 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 02427CF8 */ _t73 = cpu->r[1] + 0x00000024u;
|
|
/* 02427CF8 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]);
|
|
/* 02427CFC */ Gambit_fn_027ED798(cpu);
|
|
/* 02427D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427D04 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427D04 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02427D04 */ if (_t75) goto L_02427D1C; else goto L_02427D08;
|
|
L_02427D08: ; // 0x2427d08
|
|
/* 02427D08 */ cpu->r[6] = 0x00000000u;
|
|
/* 02427D0C */ _t76 = cpu->r[28] + 0x00000010u;
|
|
/* 02427D0C */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02427D10 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427D14 */ cpu->r[5] = cpu->r[6];
|
|
/* 02427D18 */ Gambit_fn_020CF94C(cpu);
|
|
L_02427D1C: ; // 0x2427d1c
|
|
/* 02427D1C */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02427D20 */ cpu->r[4] = 0x00000002u;
|
|
/* 02427D24 */ Gambit_fn_02173D6C(cpu);
|
|
/* 02427D28 */ _t77 = cpu->r[1] + 0x00000040u;
|
|
/* 02427D28 */ cpu->r[28] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02427D2C */ _t78 = cpu->r[1] + 0x00000044u;
|
|
/* 02427D2C */ cpu->r[29] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02427D30 */ _t79 = cpu->r[1] + 0x00000068u;
|
|
/* 02427D30 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02427D34 */ _t80 = cpu->r[1] + 0x00000058u;
|
|
/* 02427D34 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02427D38 */ _t81 = cpu->r[1] + 0x00000060u;
|
|
/* 02427D38 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t81);
|
|
/* 02427D3C */ _t82 = cpu->r[1] + 0x00000050u;
|
|
/* 02427D3C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t82);
|
|
/* 02427D40 */ _t83 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02427D40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02427D44 */ _t84 = cpu->r[1] + 0x00000048u;
|
|
/* 02427D44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02427D48 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427D48 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02427D48 */ if (_t86) goto L_02427D4C; // else: addr-0 trap, fall-through
|
|
L_02427D4C: ; // 0x2427d4c
|
|
/* 02427D4C */ _t87 = cpu->r[1] + 0x00000074u;
|
|
/* 02427D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02427D50 */ cpu->lr = cpu->r[0];
|
|
/* 02427D54 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 02427D58 */ return;
|
|
L_02427D5C: ; // 0x2427d5c
|
|
/* 02427D5C */ cpu->r[10] = 0x100A0000u;
|
|
/* 02427D60 */ _t88 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02427D60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02427D64 */ cpu->r[10] = cpu->r[10] + 0xFFFF8910u;
|
|
/* 02427D68 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427D6C */ _t89 = cpu->r[1] + 0x00000030u;
|
|
/* 02427D6C */ rbrew_write32(cpu->mem, _t89, cpu->r[10]);
|
|
/* 02427D70 */ cpu->r[0] = cpu->r[0] + 0xFFFF8974u;
|
|
/* 02427D74 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427D78 */ _t90 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427D78 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 02427D7C */ Gambit_fn_020A8300(cpu);
|
|
/* 02427D80 */ _t91 = cpu->r[29] + 0x00000220u;
|
|
/* 02427D80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02427D84 */ cpu->r[4] = 0x00000001u;
|
|
/* 02427D88 */ Gambit_fn_020A9934(cpu);
|
|
/* 02427D8C */ _t92 = cpu->r[1] + 0x00000040u;
|
|
/* 02427D8C */ cpu->r[28] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02427D90 */ _t93 = cpu->r[1] + 0x00000044u;
|
|
/* 02427D90 */ cpu->r[29] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02427D94 */ _t94 = cpu->r[1] + 0x00000058u;
|
|
/* 02427D94 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 02427D98 */ _t95 = cpu->r[1] + 0x00000068u;
|
|
/* 02427D98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02427D9C */ _t96 = cpu->r[1] + 0x00000050u;
|
|
/* 02427D9C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t96);
|
|
/* 02427DA0 */ _t97 = cpu->r[1] + 0x00000060u;
|
|
/* 02427DA0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t97);
|
|
/* 02427DA4 */ _t98 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02427DA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02427DA8 */ _t99 = cpu->r[1] + 0x00000048u;
|
|
/* 02427DA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02427DAC */ _t100 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427DAC */ _t101 = _t100 & 0x00000001u;
|
|
/* 02427DAC */ if (_t101) goto L_02427DB0; // else: addr-0 trap, fall-through
|
|
L_02427DB0: ; // 0x2427db0
|
|
/* 02427DB0 */ _t102 = cpu->r[1] + 0x00000074u;
|
|
/* 02427DB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02427DB4 */ cpu->lr = cpu->r[0];
|
|
/* 02427DB8 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 02427DBC */ return;
|
|
}
|
|
|
|
// fn_02427A6C @ 0x2427a6c
|
|
void Gambit_fn_02427A6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102;
|
|
|
|
L_02427A6C: ; // 0x2427a6c
|
|
/* 02427A6C */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 02427A6C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427A6C */ cpu->r[1] = _t0;
|
|
/* 02427A70 */ _t1 = cpu->r[1] + 0x00000050u;
|
|
/* 02427A70 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02427A74 */ _t2 = cpu->r[1] + 0x00000060u;
|
|
/* 02427A74 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]);
|
|
/* 02427A78 */ /* nop */
|
|
/* 02427A7C */ _t3 = cpu->r[1] + 0x00000058u;
|
|
/* 02427A7C */ rbrew_write_f32(cpu->mem, _t3, cpu->f[30]);
|
|
/* 02427A80 */ /* nop */
|
|
/* 02427A84 */ _t4 = cpu->r[1] + 0x00000068u;
|
|
/* 02427A84 */ rbrew_write_f32(cpu->mem, _t4, cpu->f[31]);
|
|
/* 02427A88 */ _t5 = cpu->r[1] + 0x00000074u;
|
|
/* 02427A88 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02427A8C */ _t6 = cpu->r[1] + 0x00000040u;
|
|
/* 02427A8C */ rbrew_write32(cpu->mem, _t6, cpu->r[28]);
|
|
/* 02427A90 */ _t7 = cpu->r[1] + 0x00000044u;
|
|
/* 02427A90 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02427A94 */ _t8 = cpu->r[1] + 0x00000048u;
|
|
/* 02427A94 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02427A98 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02427A9C */ _t9 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02427A9C */ rbrew_write32(cpu->mem, _t9, cpu->r[31]);
|
|
/* 02427AA0 */ _t10 = cpu->r[12] + 0x00001344u;
|
|
/* 02427AA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02427AA4 */ cpu->r[29] = cpu->r[3];
|
|
/* 02427AA8 */ _t11 = cpu->r[12] + 0x00000010u;
|
|
/* 02427AA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02427AAC */ Gambit_fn_0201A440(cpu);
|
|
/* 02427AB0 */ cpu->r[28] = cpu->r[3];
|
|
/* 02427AB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02427AB4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427AB4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02427AB4 */ if (_t13) goto L_02427D5C; else goto L_02427AB8;
|
|
L_02427AB8: ; // 0x2427ab8
|
|
/* 02427AB8 */ _t14 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02427AB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02427ABC */ _t15 = cpu->r[28] + 0x00000002u;
|
|
/* 02427ABC */ cpu->r[4] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02427AC0 */ Gambit_fn_020A91C4(cpu);
|
|
/* 02427AC4 */ _t16 = cpu->r[29] + 0x00000220u;
|
|
/* 02427AC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02427AC8 */ _t17 = cpu->r[28] + 0x00000000u;
|
|
/* 02427AC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02427ACC */ Gambit_fn_020A9934(cpu);
|
|
/* 02427AD0 */ _t18 = cpu->r[28] + 0x00000010u;
|
|
/* 02427AD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000064u);
|
|
/* 02427AD8 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427AD8 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02427AD8 */ if (_t20) goto L_02427B3C; else goto L_02427ADC;
|
|
L_02427ADC: ; // 0x2427adc
|
|
/* 02427ADC */ cpu->r[6] = 0x100A0000u;
|
|
/* 02427AE0 */ cpu->r[9] = 0x43300000u;
|
|
/* 02427AE4 */ cpu->r[7] = cpu->r[8] + 0xFFFFFFB6u;
|
|
/* 02427AE8 */ _t21 = cpu->r[6] + 0xFFFF8960u;
|
|
/* 02427AE8 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t21);
|
|
/* 02427AEC */ cpu->r[0] = cpu->r[7] ^ 0x80000000u;
|
|
/* 02427AF0 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02427AF0 */ rbrew_write32(cpu->mem, _t22, cpu->r[9]);
|
|
/* 02427AF4 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02427AF8 */ cpu->r[31] = 0x100A0000u;
|
|
/* 02427AFC */ _t23 = cpu->r[1] + 0x00000014u;
|
|
/* 02427AFC */ rbrew_write32(cpu->mem, _t23, cpu->r[0]);
|
|
/* 02427B00 */ _t24 = cpu->r[1] + 0x00000010u;
|
|
/* 02427B00 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t24);
|
|
/* 02427B04 */ cpu->r[30] = cpu->r[30] + 0xFFFF88F8u;
|
|
/* 02427B08 */ cpu->r[31] = cpu->r[31] + 0xFFFF8994u;
|
|
/* 02427B0C */ cpu->f[0] = cpu->f[12] - cpu->f[0];
|
|
/* 02427B10 */ _t25 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427B10 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 02427B14 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02427B18 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427B1C */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 02427B1C */ rbrew_write32(cpu->mem, _t26, cpu->r[31]);
|
|
/* 02427B20 */ cpu->f[31] = (double)(float)cpu->f[0];
|
|
/* 02427B24 */ Gambit_fn_027EE100(cpu);
|
|
/* 02427B28 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02427B2C */ _t27 = cpu->r[10] + 0xFFFF8968u;
|
|
/* 02427B2C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t27);
|
|
/* 02427B30 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[13]);
|
|
/* 02427B34 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427B34 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02427B34 */ if (_t29) goto L_02427B98; else goto L_02427B38;
|
|
L_02427B38: ; // 0x2427b38
|
|
/* 02427B38 */ goto L_02427BF0;
|
|
L_02427B3C: ; // 0x2427b3c
|
|
/* 02427B3C */ cpu->r[0] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02427B40 */ cpu->r[6] = 0x43300000u;
|
|
/* 02427B44 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u;
|
|
/* 02427B48 */ _t30 = cpu->r[1] + 0x00000010u;
|
|
/* 02427B48 */ rbrew_write32(cpu->mem, _t30, cpu->r[6]);
|
|
/* 02427B4C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427B50 */ _t31 = cpu->r[1] + 0x00000014u;
|
|
/* 02427B50 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]);
|
|
/* 02427B54 */ _t32 = cpu->r[1] + 0x00000010u;
|
|
/* 02427B54 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t32);
|
|
/* 02427B58 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02427B5C */ cpu->r[31] = 0x100A0000u;
|
|
/* 02427B60 */ _t33 = cpu->r[12] + 0xFFFF8960u;
|
|
/* 02427B60 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t33);
|
|
/* 02427B64 */ cpu->r[31] = cpu->r[31] + 0xFFFF8994u;
|
|
/* 02427B68 */ cpu->r[30] = cpu->r[30] + 0xFFFF88F8u;
|
|
/* 02427B6C */ cpu->f[0] = cpu->f[12] - cpu->f[0];
|
|
/* 02427B70 */ _t34 = cpu->r[1] + 0x00000008u;
|
|
/* 02427B70 */ rbrew_write32(cpu->mem, _t34, cpu->r[31]);
|
|
/* 02427B74 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02427B78 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427B7C */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427B7C */ rbrew_write32(cpu->mem, _t35, cpu->r[30]);
|
|
/* 02427B80 */ cpu->f[31] = (double)(float)cpu->f[0];
|
|
/* 02427B84 */ Gambit_fn_027EE100(cpu);
|
|
/* 02427B88 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02427B8C */ _t36 = cpu->r[10] + 0xFFFF8968u;
|
|
/* 02427B8C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t36);
|
|
/* 02427B90 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[13]);
|
|
/* 02427B94 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427B94 */ _t38 = _t37 & 0x00000001u;
|
|
/* 02427B94 */ if (_t38) goto L_02427B98; else goto L_02427BF0;
|
|
L_02427B98: ; // 0x2427b98
|
|
/* 02427B98 */ _t39 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427B98 */ rbrew_write32(cpu->mem, _t39, cpu->r[30]);
|
|
/* 02427B9C */ cpu->f[1] = cpu->f[13];
|
|
/* 02427BA0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427BA4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427BA8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02427BAC */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 02427BAC */ rbrew_write32(cpu->mem, _t40, cpu->r[31]);
|
|
/* 02427BB0 */ Gambit_fn_027ED914(cpu);
|
|
/* 02427BB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427BB8 */ _t41 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427BB8 */ rbrew_write32(cpu->mem, _t41, cpu->r[30]);
|
|
/* 02427BBC */ cpu->r[3] = cpu->r[29];
|
|
/* 02427BC0 */ cpu->r[0] = cpu->r[0] + 0xFFFF89A4u;
|
|
/* 02427BC4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02427BC8 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 02427BC8 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02427BCC */ Gambit_fn_026D86B0(cpu);
|
|
/* 02427BD0 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02427BD4 */ _t43 = cpu->r[10] + 0xFFFFED9Cu;
|
|
/* 02427BD4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02427BD4 */ cpu->r[10] = _t43;
|
|
/* 02427BD8 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427BDC */ cpu->r[4] = 0x101D0000u;
|
|
/* 02427BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02427BE4 */ cpu->r[4] = cpu->r[4] + 0xFFFFEDDCu;
|
|
/* 02427BE8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427BE8 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02427BE8 */ if (_t45) goto L_02427BEC; else goto L_02427C64;
|
|
L_02427BEC: ; // 0x2427bec
|
|
/* 02427BEC */ goto L_02427C50;
|
|
L_02427BF0: ; // 0x2427bf0
|
|
/* 02427BF0 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[31], cpu->f[1]);
|
|
/* 02427BF4 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02427BF4 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02427BF4 */ if (_t47) goto L_02427BF8; else goto L_02427BFC;
|
|
L_02427BF8: ; // 0x2427bf8
|
|
/* 02427BF8 */ cpu->f[31] = cpu->f[1];
|
|
L_02427BFC: ; // 0x2427bfc
|
|
/* 02427BFC */ _t48 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427BFC */ rbrew_write32(cpu->mem, _t48, cpu->r[30]);
|
|
/* 02427C00 */ cpu->f[1] = cpu->f[31];
|
|
/* 02427C04 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427C08 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427C0C */ cpu->r[4] = 0x00000000u;
|
|
/* 02427C10 */ _t49 = cpu->r[1] + 0x00000008u;
|
|
/* 02427C10 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 02427C14 */ Gambit_fn_027ED914(cpu);
|
|
/* 02427C18 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427C1C */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427C1C */ rbrew_write32(cpu->mem, _t50, cpu->r[30]);
|
|
/* 02427C20 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427C24 */ cpu->r[0] = cpu->r[0] + 0xFFFF89A4u;
|
|
/* 02427C28 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02427C2C */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 02427C2C */ rbrew_write32(cpu->mem, _t51, cpu->r[0]);
|
|
/* 02427C30 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02427C34 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02427C38 */ _t52 = cpu->r[10] + 0xFFFFED9Cu;
|
|
/* 02427C38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02427C38 */ cpu->r[10] = _t52;
|
|
/* 02427C3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02427C40 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02427C44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02427C48 */ cpu->r[4] = cpu->r[4] + 0xFFFFEDDCu;
|
|
/* 02427C4C */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427C4C */ _t54 = _t53 & 0x00000001u;
|
|
/* 02427C4C */ if (_t54) goto L_02427C50; else goto L_02427C64;
|
|
L_02427C50: ; // 0x2427c50
|
|
/* 02427C50 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02427C54 */ cpu->r[7] = 0x00000001u;
|
|
/* 02427C58 */ cpu->r[8] = cpu->r[8] + 0xFFFF8938u;
|
|
/* 02427C5C */ _t55 = cpu->r[10] + 0x00000000u;
|
|
/* 02427C5C */ rbrew_write32(cpu->mem, _t55, cpu->r[7]);
|
|
/* 02427C60 */ _t56 = cpu->r[4] + 0x00000000u;
|
|
/* 02427C60 */ rbrew_write32(cpu->mem, _t56, cpu->r[8]);
|
|
L_02427C64: ; // 0x2427c64
|
|
/* 02427C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427C68 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427C68 */ _t58 = _t57 & 0x00000001u;
|
|
/* 02427C68 */ if (_t58) goto L_02427C88; else goto L_02427C6C;
|
|
L_02427C6C: ; // 0x2427c6c
|
|
/* 02427C6C */ _t59 = cpu->r[31] + 0x00000000u;
|
|
/* 02427C6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t59);
|
|
/* 02427C70 */ _t60 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02427C70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02427C74 */ cpu->ctr = cpu->r[0];
|
|
/* 02427C78 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427C7C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02427C80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02427C84 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427C84 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02427C84 */ if (_t62) goto L_02427C88; else goto L_02427C8C;
|
|
L_02427C88: ; // 0x2427c88
|
|
/* 02427C88 */ cpu->r[31] = 0x00000000u;
|
|
L_02427C8C: ; // 0x2427c8c
|
|
/* 02427C8C */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02427C90 */ Gambit_fn_02173CCC(cpu);
|
|
/* 02427C94 */ _t63 = cpu->r[28] + 0x00000010u;
|
|
/* 02427C94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02427C98 */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02427C9C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02427CA0 */ Gambit_fn_02173E28(cpu);
|
|
/* 02427CA4 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02427CA8 */ _t64 = cpu->r[1] + 0x00000018u;
|
|
/* 02427CA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02427CAC */ cpu->r[9] = cpu->r[9] + 0xFFFF896Cu;
|
|
/* 02427CB0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02427CB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u);
|
|
/* 02427CB8 */ cpu->r[4] = 0x00000001u;
|
|
/* 02427CBC */ _t65 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427CBC */ _t66 = _t65 & 0x00000001u;
|
|
/* 02427CBC */ if (_t66) goto L_02427CC0; else goto L_02427CF0;
|
|
L_02427CC0: ; // 0x2427cc0
|
|
/* 02427CC0 */ _t67 = cpu->r[1] + 0x00000020u;
|
|
/* 02427CC0 */ rbrew_write32(cpu->mem, _t67, cpu->r[30]);
|
|
/* 02427CC4 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427CC8 */ _t68 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427CC8 */ rbrew_write32(cpu->mem, _t68, cpu->r[9]);
|
|
/* 02427CCC */ Gambit_fn_027ED624(cpu);
|
|
/* 02427CD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427CD4 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427CD4 */ _t70 = _t69 & 0x00000001u;
|
|
/* 02427CD4 */ if (_t70) goto L_02427D1C; else goto L_02427CD8;
|
|
L_02427CD8: ; // 0x2427cd8
|
|
/* 02427CD8 */ _t71 = cpu->r[28] + 0x00000010u;
|
|
/* 02427CD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02427CDC */ cpu->r[5] = 0x00000000u;
|
|
/* 02427CE0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427CE4 */ cpu->r[6] = 0x00000001u;
|
|
/* 02427CE8 */ Gambit_fn_020CF94C(cpu);
|
|
/* 02427CEC */ goto L_02427D1C;
|
|
L_02427CF0: ; // 0x2427cf0
|
|
/* 02427CF0 */ _t72 = cpu->r[1] + 0x00000028u;
|
|
/* 02427CF0 */ rbrew_write32(cpu->mem, _t72, cpu->r[30]);
|
|
/* 02427CF4 */ cpu->r[5] = cpu->r[1] + 0x00000024u;
|
|
/* 02427CF8 */ _t73 = cpu->r[1] + 0x00000024u;
|
|
/* 02427CF8 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]);
|
|
/* 02427CFC */ Gambit_fn_027ED798(cpu);
|
|
/* 02427D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02427D04 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427D04 */ _t75 = _t74 & 0x00000001u;
|
|
/* 02427D04 */ if (_t75) goto L_02427D1C; else goto L_02427D08;
|
|
L_02427D08: ; // 0x2427d08
|
|
/* 02427D08 */ cpu->r[6] = 0x00000000u;
|
|
/* 02427D0C */ _t76 = cpu->r[28] + 0x00000010u;
|
|
/* 02427D0C */ cpu->r[4] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02427D10 */ cpu->r[3] = cpu->r[31];
|
|
/* 02427D14 */ cpu->r[5] = cpu->r[6];
|
|
/* 02427D18 */ Gambit_fn_020CF94C(cpu);
|
|
L_02427D1C: ; // 0x2427d1c
|
|
/* 02427D1C */ cpu->r[3] = cpu->r[1] + 0x00000034u;
|
|
/* 02427D20 */ cpu->r[4] = 0x00000002u;
|
|
/* 02427D24 */ Gambit_fn_02173D6C(cpu);
|
|
/* 02427D28 */ _t77 = cpu->r[1] + 0x00000040u;
|
|
/* 02427D28 */ cpu->r[28] = rbrew_read32(cpu->mem, _t77);
|
|
/* 02427D2C */ _t78 = cpu->r[1] + 0x00000044u;
|
|
/* 02427D2C */ cpu->r[29] = rbrew_read32(cpu->mem, _t78);
|
|
/* 02427D30 */ _t79 = cpu->r[1] + 0x00000068u;
|
|
/* 02427D30 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t79);
|
|
/* 02427D34 */ _t80 = cpu->r[1] + 0x00000058u;
|
|
/* 02427D34 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t80);
|
|
/* 02427D38 */ _t81 = cpu->r[1] + 0x00000060u;
|
|
/* 02427D38 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t81);
|
|
/* 02427D3C */ _t82 = cpu->r[1] + 0x00000050u;
|
|
/* 02427D3C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t82);
|
|
/* 02427D40 */ _t83 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02427D40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t83);
|
|
/* 02427D44 */ _t84 = cpu->r[1] + 0x00000048u;
|
|
/* 02427D44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t84);
|
|
/* 02427D48 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427D48 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02427D48 */ if (_t86) goto L_02427D4C; // else: addr-0 trap, fall-through
|
|
L_02427D4C: ; // 0x2427d4c
|
|
/* 02427D4C */ _t87 = cpu->r[1] + 0x00000074u;
|
|
/* 02427D4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t87);
|
|
/* 02427D50 */ cpu->lr = cpu->r[0];
|
|
/* 02427D54 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 02427D58 */ return;
|
|
L_02427D5C: ; // 0x2427d5c
|
|
/* 02427D5C */ cpu->r[10] = 0x100A0000u;
|
|
/* 02427D60 */ _t88 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02427D60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t88);
|
|
/* 02427D64 */ cpu->r[10] = cpu->r[10] + 0xFFFF8910u;
|
|
/* 02427D68 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427D6C */ _t89 = cpu->r[1] + 0x00000030u;
|
|
/* 02427D6C */ rbrew_write32(cpu->mem, _t89, cpu->r[10]);
|
|
/* 02427D70 */ cpu->r[0] = cpu->r[0] + 0xFFFF8974u;
|
|
/* 02427D74 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427D78 */ _t90 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427D78 */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 02427D7C */ Gambit_fn_020A8300(cpu);
|
|
/* 02427D80 */ _t91 = cpu->r[29] + 0x00000220u;
|
|
/* 02427D80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t91);
|
|
/* 02427D84 */ cpu->r[4] = 0x00000001u;
|
|
/* 02427D88 */ Gambit_fn_020A9934(cpu);
|
|
/* 02427D8C */ _t92 = cpu->r[1] + 0x00000040u;
|
|
/* 02427D8C */ cpu->r[28] = rbrew_read32(cpu->mem, _t92);
|
|
/* 02427D90 */ _t93 = cpu->r[1] + 0x00000044u;
|
|
/* 02427D90 */ cpu->r[29] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02427D94 */ _t94 = cpu->r[1] + 0x00000058u;
|
|
/* 02427D94 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t94);
|
|
/* 02427D98 */ _t95 = cpu->r[1] + 0x00000068u;
|
|
/* 02427D98 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t95);
|
|
/* 02427D9C */ _t96 = cpu->r[1] + 0x00000050u;
|
|
/* 02427D9C */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t96);
|
|
/* 02427DA0 */ _t97 = cpu->r[1] + 0x00000060u;
|
|
/* 02427DA0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t97);
|
|
/* 02427DA4 */ _t98 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02427DA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02427DA8 */ _t99 = cpu->r[1] + 0x00000048u;
|
|
/* 02427DA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t99);
|
|
/* 02427DAC */ _t100 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02427DAC */ _t101 = _t100 & 0x00000001u;
|
|
/* 02427DAC */ if (_t101) goto L_02427DB0; // else: addr-0 trap, fall-through
|
|
L_02427DB0: ; // 0x2427db0
|
|
/* 02427DB0 */ _t102 = cpu->r[1] + 0x00000074u;
|
|
/* 02427DB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102);
|
|
/* 02427DB4 */ cpu->lr = cpu->r[0];
|
|
/* 02427DB8 */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 02427DBC */ return;
|
|
}
|
|
|
|
// fn_02427DC0 @ 0x2427dc0
|
|
void Gambit_fn_02427DC0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02427DC0: ; // 0x2427dc0
|
|
/* 02427DC0 */ cpu->r[0] = cpu->lr;
|
|
/* 02427DC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427DC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427DC4 */ cpu->r[1] = _t0;
|
|
/* 02427DC8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02427DC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02427DCC */ cpu->r[30] = 0x100A0000u;
|
|
/* 02427DD0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427DD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02427DD4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427DD8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02427DDC */ cpu->r[30] = cpu->r[30] + 0xFFFF88F8u;
|
|
/* 02427DE0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427DE4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427DE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427DE8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427DEC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427DEC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02427DF0 */ cpu->r[0] = cpu->r[0] + 0xFFFF89C4u;
|
|
/* 02427DF4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02427DF8 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02427DF8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02427DFC */ Gambit_fn_020A7150(cpu);
|
|
/* 02427E00 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427E04 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427E04 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02427E08 */ cpu->r[0] = cpu->r[0] + 0xFFFF89B4u;
|
|
/* 02427E0C */ cpu->r[4] = cpu->r[31];
|
|
/* 02427E10 */ _t7 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02427E10 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02427E14 */ cpu->r[3] = 0x00000000u;
|
|
/* 02427E18 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427E1C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02427E1C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02427E20 */ Gambit_fn_020A7150(cpu);
|
|
/* 02427E24 */ _t9 = cpu->r[31] + 0x00000220u;
|
|
/* 02427E24 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02427E28 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02427E2C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02427E2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02427E30 */ cpu->lr = cpu->r[0];
|
|
/* 02427E34 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02427E34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02427E38 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427E3C */ return;
|
|
}
|
|
|
|
// fn_02427DC4 @ 0x2427dc4
|
|
void Gambit_fn_02427DC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02427DC4: ; // 0x2427dc4
|
|
/* 02427DC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427DC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427DC4 */ cpu->r[1] = _t0;
|
|
/* 02427DC8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02427DC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02427DCC */ cpu->r[30] = 0x100A0000u;
|
|
/* 02427DD0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02427DD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02427DD4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02427DD8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02427DDC */ cpu->r[30] = cpu->r[30] + 0xFFFF88F8u;
|
|
/* 02427DE0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427DE4 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427DE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427DE8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427DEC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427DEC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02427DF0 */ cpu->r[0] = cpu->r[0] + 0xFFFF89C4u;
|
|
/* 02427DF4 */ cpu->r[4] = cpu->r[31];
|
|
/* 02427DF8 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02427DF8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02427DFC */ Gambit_fn_020A7150(cpu);
|
|
/* 02427E00 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427E04 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427E04 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02427E08 */ cpu->r[0] = cpu->r[0] + 0xFFFF89B4u;
|
|
/* 02427E0C */ cpu->r[4] = cpu->r[31];
|
|
/* 02427E10 */ _t7 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02427E10 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02427E14 */ cpu->r[3] = 0x00000000u;
|
|
/* 02427E18 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02427E1C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02427E1C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02427E20 */ Gambit_fn_020A7150(cpu);
|
|
/* 02427E24 */ _t9 = cpu->r[31] + 0x00000220u;
|
|
/* 02427E24 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02427E28 */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427E28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02427E2C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02427E2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02427E30 */ cpu->lr = cpu->r[0];
|
|
/* 02427E34 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02427E34 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02427E38 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427E3C */ return;
|
|
}
|
|
|
|
// fn_02427E40 @ 0x2427e40
|
|
void Gambit_fn_02427E40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02427E40: ; // 0x2427e40
|
|
/* 02427E40 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02427E40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427E40 */ cpu->r[1] = _t0;
|
|
/* 02427E44 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02427E44 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02427E48 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02427E4C */ cpu->r[0] = cpu->lr;
|
|
/* 02427E50 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02427E50 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02427E54 */ cpu->r[30] = cpu->r[30] + 0xFFFF88F8u;
|
|
/* 02427E58 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427E5C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427E5C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02427E60 */ cpu->r[12] = cpu->r[12] + 0xFFFF89ECu;
|
|
/* 02427E64 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02427E64 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02427E68 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02427E68 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02427E6C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02427E6C */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02427E70 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02427E74 */ _t7 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427E74 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02427E78 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427E7C */ cpu->r[31] = cpu->r[3];
|
|
/* 02427E80 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427E80 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02427E84 */ cpu->r[0] = cpu->r[0] + 0xFFFF89D8u;
|
|
/* 02427E88 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02427E8C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02427E90 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02427E90 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02427E94 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02427E98 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427E9C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427E9C */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02427EA0 */ cpu->r[0] = cpu->r[0] + 0xFFFF89D0u;
|
|
/* 02427EA4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02427EA4 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 02427EA8 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02427EAC */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02427EAC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02427EB0 */ cpu->r[10] = cpu->r[10] + 0xFFFF89FCu;
|
|
/* 02427EB4 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02427EB4 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 02427EB8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02427EBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02427EC0 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02427EC0 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 02427EC4 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02427EC8 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02427ECC */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02427ECC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02427ED0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02427ED4 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02427ED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02427ED8 */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 02427ED8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02427EDC */ cpu->lr = cpu->r[0];
|
|
/* 02427EE0 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 02427EE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02427EE4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02427EE8 */ return;
|
|
}
|
|
|
|
// fn_02427EEC @ 0x2427eec
|
|
void Gambit_fn_02427EEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02427EEC: ; // 0x2427eec
|
|
/* 02427EEC */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02427EF0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427EF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427EF0 */ cpu->r[1] = _t0;
|
|
/* 02427EF4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02427EF8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02427EFC */ _t1 = cpu->r[10] + 0x00007158u;
|
|
/* 02427EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02427EFC */ cpu->r[10] = _t1;
|
|
/* 02427F00 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02427F04 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02427F04 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02427F08 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02427F0C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02427F10 */ _t3 = cpu->r[7] + 0x00007168u;
|
|
/* 02427F10 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02427F10 */ cpu->r[7] = _t3;
|
|
/* 02427F14 */ _t4 = cpu->r[8] + 0x00007160u;
|
|
/* 02427F14 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02427F14 */ cpu->r[8] = _t4;
|
|
/* 02427F18 */ cpu->r[0] = 0x00000002u;
|
|
/* 02427F1C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02427F1C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02427F20 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02427F24 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02427F24 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427F28 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02427F2C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02427F2C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02427F30 */ _t8 = cpu->r[8] + 0x00007178u;
|
|
/* 02427F30 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02427F30 */ cpu->r[8] = _t8;
|
|
/* 02427F34 */ _t9 = cpu->r[12] + 0x00007170u;
|
|
/* 02427F34 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02427F34 */ cpu->r[12] = _t9;
|
|
/* 02427F38 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02427F38 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02427F3C */ cpu->r[0] = 0x00000004u;
|
|
/* 02427F40 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02427F40 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02427F44 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02427F48 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02427F48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02427F4C */ _t13 = cpu->r[11] + 0x00007180u;
|
|
/* 02427F4C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02427F50 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427F54 */ return;
|
|
}
|
|
|
|
// fn_02427EF0 @ 0x2427ef0
|
|
void Gambit_fn_02427EF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02427EF0: ; // 0x2427ef0
|
|
/* 02427EF0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02427EF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427EF0 */ cpu->r[1] = _t0;
|
|
/* 02427EF4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02427EF8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02427EFC */ _t1 = cpu->r[10] + 0x00007158u;
|
|
/* 02427EFC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02427EFC */ cpu->r[10] = _t1;
|
|
/* 02427F00 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02427F04 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02427F04 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02427F08 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02427F0C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02427F10 */ _t3 = cpu->r[7] + 0x00007168u;
|
|
/* 02427F10 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02427F10 */ cpu->r[7] = _t3;
|
|
/* 02427F14 */ _t4 = cpu->r[8] + 0x00007160u;
|
|
/* 02427F14 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02427F14 */ cpu->r[8] = _t4;
|
|
/* 02427F18 */ cpu->r[0] = 0x00000002u;
|
|
/* 02427F1C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02427F1C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02427F20 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02427F24 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02427F24 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427F28 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02427F2C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02427F2C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02427F30 */ _t8 = cpu->r[8] + 0x00007178u;
|
|
/* 02427F30 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02427F30 */ cpu->r[8] = _t8;
|
|
/* 02427F34 */ _t9 = cpu->r[12] + 0x00007170u;
|
|
/* 02427F34 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02427F34 */ cpu->r[12] = _t9;
|
|
/* 02427F38 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02427F38 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02427F3C */ cpu->r[0] = 0x00000004u;
|
|
/* 02427F40 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02427F40 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02427F44 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02427F48 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02427F48 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02427F4C */ _t13 = cpu->r[11] + 0x00007180u;
|
|
/* 02427F4C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02427F50 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02427F54 */ return;
|
|
}
|
|
|
|
// fn_02427F58 @ 0x2427f58
|
|
void Gambit_fn_02427F58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02427F58: ; // 0x2427f58
|
|
/* 02427F58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02427F5C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427F5C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02427F5C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02427F5C */ goto L_02427F60;
|
|
L_02427F60: ; // 0x2427f60
|
|
/* 02427F60 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02427F60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02427F64 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427F64 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02427F64 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02427F64 */ goto L_02427F68;
|
|
L_02427F68: ; // 0x2427f68
|
|
/* 02427F68 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02427F6C @ 0x2427f6c
|
|
void Gambit_fn_02427F6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02427F6C: ; // 0x2427f6c
|
|
/* 02427F6C */ cpu->r[0] = cpu->lr;
|
|
/* 02427F70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02427F70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427F70 */ cpu->r[1] = _t0;
|
|
/* 02427F74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427F74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427F78 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02427F78 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02427F7C */ cpu->r[30] = cpu->r[3];
|
|
/* 02427F7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427F80 */ cpu->r[31] = cpu->r[4];
|
|
/* 02427F84 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02427F84 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427F88 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427F88 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427F88 */ if (_t5) goto L_02427FF8; else goto L_02427F8C;
|
|
L_02427F8C: ; // 0x2427f8c
|
|
/* 02427F8C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427F90 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427F94 */ cpu->r[0] = cpu->r[0] + 0xFFFF8BE8u;
|
|
/* 02427F98 */ cpu->r[12] = cpu->r[12] + 0xFFFF8C08u;
|
|
/* 02427F9C */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427F9C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427FA0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427FA4 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02427FA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427FA8 */ cpu->r[11] = cpu->r[11] + 0xFFFF8BF8u;
|
|
/* 02427FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427FB0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02427FB0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02427FB4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427FB4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02427FB4 */ if (_t10) goto L_02427FE8; else goto L_02427FB8;
|
|
L_02427FB8: ; // 0x2427fb8
|
|
/* 02427FB8 */ cpu->r[10] = 0x10010000u;
|
|
/* 02427FBC */ cpu->r[0] = 0x10010000u;
|
|
/* 02427FC0 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02427FC4 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02427FC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427FCC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427FCC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427FD0 */ cpu->r[0] = 0x10010000u;
|
|
/* 02427FD4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02427FD4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02427FD8 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02427FDC */ cpu->r[4] = 0x00000000u;
|
|
/* 02427FE0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02427FE0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02427FE4 */ Gambit_fn_02068798(cpu);
|
|
L_02427FE8: ; // 0x2427fe8
|
|
/* 02427FE8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02427FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427FEC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427FEC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02427FEC */ if (_t15) goto L_02427FF8; else goto L_02427FF0;
|
|
L_02427FF0: ; // 0x2427ff0
|
|
/* 02427FF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427FF4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02427FF8: ; // 0x2427ff8
|
|
/* 02427FF8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02427FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02427FFC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02427FFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02428000 */ cpu->lr = cpu->r[0];
|
|
/* 02428004 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428004 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02428008 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0242800C */ return;
|
|
}
|
|
|
|
// fn_02427F70 @ 0x2427f70
|
|
void Gambit_fn_02427F70(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02427F70: ; // 0x2427f70
|
|
/* 02427F70 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02427F70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02427F70 */ cpu->r[1] = _t0;
|
|
/* 02427F74 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02427F74 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02427F78 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02427F78 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02427F7C */ cpu->r[30] = cpu->r[3];
|
|
/* 02427F7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427F80 */ cpu->r[31] = cpu->r[4];
|
|
/* 02427F84 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02427F84 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02427F88 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427F88 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02427F88 */ if (_t5) goto L_02427FF8; else goto L_02427F8C;
|
|
L_02427F8C: ; // 0x2427f8c
|
|
/* 02427F8C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02427F90 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02427F94 */ cpu->r[0] = cpu->r[0] + 0xFFFF8BE8u;
|
|
/* 02427F98 */ cpu->r[12] = cpu->r[12] + 0xFFFF8C08u;
|
|
/* 02427F9C */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427F9C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02427FA0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02427FA4 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02427FA4 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02427FA8 */ cpu->r[11] = cpu->r[11] + 0xFFFF8BF8u;
|
|
/* 02427FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02427FB0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02427FB0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02427FB4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427FB4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02427FB4 */ if (_t10) goto L_02427FE8; else goto L_02427FB8;
|
|
L_02427FB8: ; // 0x2427fb8
|
|
/* 02427FB8 */ cpu->r[10] = 0x10010000u;
|
|
/* 02427FBC */ cpu->r[0] = 0x10010000u;
|
|
/* 02427FC0 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02427FC4 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02427FC8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427FCC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02427FCC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02427FD0 */ cpu->r[0] = 0x10010000u;
|
|
/* 02427FD4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02427FD4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02427FD8 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02427FDC */ cpu->r[4] = 0x00000000u;
|
|
/* 02427FE0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02427FE0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02427FE4 */ Gambit_fn_02068798(cpu);
|
|
L_02427FE8: ; // 0x2427fe8
|
|
/* 02427FE8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02427FE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02427FEC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02427FEC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02427FEC */ if (_t15) goto L_02427FF8; else goto L_02427FF0;
|
|
L_02427FF0: ; // 0x2427ff0
|
|
/* 02427FF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02427FF4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02427FF8: ; // 0x2427ff8
|
|
/* 02427FF8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02427FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02427FFC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02427FFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02428000 */ cpu->lr = cpu->r[0];
|
|
/* 02428004 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428004 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02428008 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0242800C */ return;
|
|
}
|
|
|
|
// fn_02428010 @ 0x2428010
|
|
void Gambit_fn_02428010(CPUState* cpu) {
|
|
L_02428010: ; // 0x2428010
|
|
/* 02428010 */ return;
|
|
}
|
|
|
|
// fn_02428014 @ 0x2428014
|
|
void Gambit_fn_02428014(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02428014: ; // 0x2428014
|
|
/* 02428014 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02428014 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428018 */ return;
|
|
}
|
|
|
|
// fn_0242801C @ 0x242801c
|
|
void Gambit_fn_0242801C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0242801C: ; // 0x242801c
|
|
/* 0242801C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0242801C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428020 */ return;
|
|
}
|
|
|
|
// fn_02428024 @ 0x2428024
|
|
void Gambit_fn_02428024(CPUState* cpu) {
|
|
L_02428024: ; // 0x2428024
|
|
/* 02428024 */ return;
|
|
}
|
|
|
|
// fn_02428028 @ 0x2428028
|
|
void Gambit_fn_02428028(CPUState* cpu) {
|
|
L_02428028: ; // 0x2428028
|
|
/* 02428028 */ return;
|
|
}
|
|
|
|
// fn_0242802C @ 0x242802c
|
|
void Gambit_fn_0242802C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0242802C: ; // 0x242802c
|
|
/* 0242802C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 0242802C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428030 */ return;
|
|
}
|
|
|
|
// fn_02428034 @ 0x2428034
|
|
void Gambit_fn_02428034(CPUState* cpu) {
|
|
L_02428034: ; // 0x2428034
|
|
/* 02428034 */ return;
|
|
}
|
|
|
|
// fn_02428038 @ 0x2428038
|
|
void Gambit_fn_02428038(CPUState* cpu) {
|
|
L_02428038: ; // 0x2428038
|
|
/* 02428038 */ return;
|
|
}
|
|
|
|
// fn_0242803C @ 0x242803c
|
|
void Gambit_fn_0242803C(CPUState* cpu) {
|
|
L_0242803C: ; // 0x242803c
|
|
/* 0242803C */ return;
|
|
}
|
|
|
|
// fn_02428040 @ 0x2428040
|
|
void Gambit_fn_02428040(CPUState* cpu) {
|
|
L_02428040: ; // 0x2428040
|
|
/* 02428040 */ return;
|
|
}
|
|
|
|
// fn_02428044 @ 0x2428044
|
|
void Gambit_fn_02428044(CPUState* cpu) {
|
|
L_02428044: ; // 0x2428044
|
|
/* 02428044 */ return;
|
|
}
|
|
|
|
// fn_02428048 @ 0x2428048
|
|
void Gambit_fn_02428048(CPUState* cpu) {
|
|
L_02428048: ; // 0x2428048
|
|
/* 02428048 */ cpu->r[3] = 0x00000001u;
|
|
/* 0242804C */ return;
|
|
}
|
|
|
|
// fn_02428050 @ 0x2428050
|
|
void Gambit_fn_02428050(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02428050: ; // 0x2428050
|
|
/* 02428050 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02428050 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428054 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02428054 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02428058 */ cpu->ctr = cpu->r[0];
|
|
/* 0242805C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02428060 @ 0x2428060
|
|
void Gambit_fn_02428060(CPUState* cpu) {
|
|
L_02428060: ; // 0x2428060
|
|
/* 02428060 */ return;
|
|
}
|
|
|
|
// fn_02428064 @ 0x2428064
|
|
void Gambit_fn_02428064(CPUState* cpu) {
|
|
L_02428064: ; // 0x2428064
|
|
/* 02428064 */ cpu->r[3] = 0x00000000u;
|
|
/* 02428068 */ return;
|
|
}
|
|
|
|
// fn_0242806C @ 0x242806c
|
|
void Gambit_fn_0242806C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0242806C: ; // 0x242806c
|
|
/* 0242806C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02428070 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02428070 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428070 */ cpu->r[9] = _t0;
|
|
/* 02428074 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02428078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0242807C */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02428080 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428080 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02428080 */ if (_t2) goto L_02428084; else goto L_02428098;
|
|
L_02428084: ; // 0x2428084
|
|
/* 02428084 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02428088 */ cpu->r[0] = 0x00000001u;
|
|
/* 0242808C */ cpu->r[7] = cpu->r[7] + 0xFFFF8928u;
|
|
/* 02428090 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02428090 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02428094 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02428094 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02428098: ; // 0x2428098
|
|
/* 02428098 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0242809C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242809C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0242809C */ if (_t6) goto L_024280A0; else goto L_024280A8;
|
|
L_024280A0: ; // 0x24280a0
|
|
/* 024280A0 */ cpu->r[3] = 0x00000001u;
|
|
/* 024280A4 */ return;
|
|
L_024280A8: ; // 0x24280a8
|
|
/* 024280A8 */ cpu->r[7] = 0x101D0000u;
|
|
/* 024280AC */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 024280AC */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024280AC */ cpu->r[7] = _t7;
|
|
/* 024280B0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024280B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024280B8 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 024280BC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024280BC */ _t9 = _t8 & 0x00000001u;
|
|
/* 024280BC */ if (_t9) goto L_024280C0; else goto L_024280D4;
|
|
L_024280C0: ; // 0x24280c0
|
|
/* 024280C0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024280C4 */ cpu->r[9] = 0x00000001u;
|
|
/* 024280C8 */ cpu->r[0] = cpu->r[0] + 0xFFFF88E8u;
|
|
/* 024280CC */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 024280CC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024280D0 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 024280D0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024280D4: ; // 0x24280d4
|
|
/* 024280D4 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024280D8 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 024280DC */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 024280E0 */ return;
|
|
}
|
|
|
|
// fn_024280E4 @ 0x24280e4
|
|
void Gambit_fn_024280E4(CPUState* cpu) {
|
|
L_024280E4: ; // 0x24280e4
|
|
/* 024280E4 */ return;
|
|
}
|
|
|
|
// fn_024280E8 @ 0x24280e8
|
|
void Gambit_fn_024280E8(CPUState* cpu) {
|
|
L_024280E8: ; // 0x24280e8
|
|
/* 024280E8 */ return;
|
|
}
|
|
|
|
// fn_024280EC @ 0x24280ec
|
|
void Gambit_fn_024280EC(CPUState* cpu) {
|
|
L_024280EC: ; // 0x24280ec
|
|
/* 024280EC */ cpu->r[3] = 0x00000000u;
|
|
/* 024280F0 */ return;
|
|
}
|
|
|
|
// fn_024280F4 @ 0x24280f4
|
|
void Gambit_fn_024280F4(CPUState* cpu) {
|
|
L_024280F4: ; // 0x24280f4
|
|
/* 024280F4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024280F8 */ return;
|
|
}
|
|
|
|
// fn_024280FC @ 0x24280fc
|
|
void Gambit_fn_024280FC(CPUState* cpu) {
|
|
L_024280FC: ; // 0x24280fc
|
|
/* 024280FC */ return;
|
|
}
|
|
|
|
// fn_02428100 @ 0x2428100
|
|
void Gambit_fn_02428100(CPUState* cpu) {
|
|
L_02428100: ; // 0x2428100
|
|
/* 02428100 */ return;
|
|
}
|
|
|
|
// fn_02428104 @ 0x2428104
|
|
void Gambit_fn_02428104(CPUState* cpu) {
|
|
L_02428104: ; // 0x2428104
|
|
/* 02428104 */ return;
|
|
}
|
|
|
|
// fn_02428108 @ 0x2428108
|
|
void Gambit_fn_02428108(CPUState* cpu) {
|
|
L_02428108: ; // 0x2428108
|
|
/* 02428108 */ return;
|
|
}
|
|
|
|
// fn_0242810C @ 0x242810c
|
|
void Gambit_fn_0242810C(CPUState* cpu) {
|
|
L_0242810C: ; // 0x242810c
|
|
/* 0242810C */ return;
|
|
}
|
|
|
|
// fn_02428110 @ 0x2428110
|
|
void Gambit_fn_02428110(CPUState* cpu) {
|
|
L_02428110: ; // 0x2428110
|
|
/* 02428110 */ return;
|
|
}
|
|
|
|
// fn_02428114 @ 0x2428114
|
|
void Gambit_fn_02428114(CPUState* cpu) {
|
|
L_02428114: ; // 0x2428114
|
|
/* 02428114 */ return;
|
|
}
|
|
|
|
// fn_02428118 @ 0x2428118
|
|
void Gambit_fn_02428118(CPUState* cpu) {
|
|
L_02428118: ; // 0x2428118
|
|
/* 02428118 */ return;
|
|
}
|
|
|
|
// fn_0242811C @ 0x242811c
|
|
void Gambit_fn_0242811C(CPUState* cpu) {
|
|
L_0242811C: ; // 0x242811c
|
|
/* 0242811C */ return;
|
|
}
|
|
|
|
// fn_02428120 @ 0x2428120
|
|
void Gambit_fn_02428120(CPUState* cpu) {
|
|
L_02428120: ; // 0x2428120
|
|
/* 02428120 */ return;
|
|
}
|
|
|
|
// fn_02428124 @ 0x2428124
|
|
void Gambit_fn_02428124(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0200896C: ; // 0x200896c
|
|
/* 0200896C */ cpu->r[0] = cpu->lr;
|
|
/* 02008970 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02008970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02008970 */ cpu->r[1] = _t0;
|
|
/* 02008974 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02008974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02008978 */ cpu->r[31] = cpu->r[3];
|
|
/* 0200897C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0200897C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02008980 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02008980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02008984 */ cpu->r[12] = 0x00000000u;
|
|
/* 02008988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0200898C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0200898C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02008990 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02008990 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02008990 */ if (_t6) goto L_020089B8; else goto L_02008994;
|
|
L_02008994: ; // 0x2008994
|
|
/* 02008994 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02008994 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02008998 */ /* nop */
|
|
/* 0200899C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020089A0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020089A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020089A0 */ if (_t9) goto L_020089A4; else goto L_020089B8;
|
|
L_020089A4: ; // 0x20089a4
|
|
/* 020089A4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020089A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020089A8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020089A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020089AC */ cpu->ctr = cpu->r[0];
|
|
/* 020089B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020089B8: ; // 0x20089b8
|
|
/* 020089B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089BC */ Gambit_fn_020088E4(cpu);
|
|
/* 020089C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089C4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020089C8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020089C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020089CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020089CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020089D0 */ cpu->lr = cpu->r[0];
|
|
/* 020089D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020089D8 */ return;
|
|
L_02428124: ; // 0x2428124
|
|
/* 02428124 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02428128 */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_0242812C @ 0x242812c
|
|
void Gambit_fn_0242812C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57;
|
|
|
|
L_0242812C: ; // 0x242812c
|
|
/* 0242812C */ _t0 = cpu->r[1] + 0xFFFFFF38u;
|
|
/* 0242812C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242812C */ cpu->r[1] = _t0;
|
|
/* 02428130 */ /* nop */
|
|
/* 02428134 */ cpu->r[0] = cpu->lr;
|
|
/* 02428138 */ _t1 = cpu->r[1] + 0x000000CCu;
|
|
/* 02428138 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0242813C */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0242813C */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02428140 */ _t3 = cpu->r[8] + 0x00000064u;
|
|
/* 02428140 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02428144 */ cpu->ctr = cpu->r[9];
|
|
/* 02428148 */ cpu->r[31] = cpu->r[3];
|
|
/* 0242814C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02428150 */ cpu->r[4] = cpu->r[3];
|
|
/* 02428154 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02428158 */ Gambit_fn_026D6C54(cpu);
|
|
/* 0242815C */ _t4 = cpu->r[31] + 0x00000028u;
|
|
/* 0242815C */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02428160 */ cpu->r[5] = 0x00000001u;
|
|
/* 02428164 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02428168 */ Gambit_fn_026D6F40(cpu);
|
|
/* 0242816C */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 02428170 */ cpu->r[26] = 0x00000000u;
|
|
/* 02428174 */ cpu->r[30] = cpu->r[31] + 0x00000038u;
|
|
/* 02428178 */ _t5 = cpu->r[1] + 0x00000084u;
|
|
/* 02428178 */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 0242817C */ cpu->r[29] = cpu->r[26];
|
|
L_02428180: ; // 0x2428180
|
|
/* 02428180 */ cpu->r[28] = cpu->r[29];
|
|
/* 02428184 */ cpu->r[27] = cpu->r[30] + cpu->r[29];
|
|
L_02428188: ; // 0x2428188
|
|
/* 02428188 */ cpu->r[3] = 0x00000228u;
|
|
/* 0242818C */ Gambit_fn_02801A78(cpu);
|
|
/* 02428190 */ cpu->r[11] = cpu->r[3];
|
|
/* 02428190 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02428194 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428194 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02428194 */ if (_t7) goto L_024281A4; else goto L_02428198;
|
|
L_02428198: ; // 0x2428198
|
|
/* 02428198 */ cpu->r[3] = cpu->r[11];
|
|
/* 0242819C */ Gambit_fn_0242936C(cpu);
|
|
/* 024281A0 */ cpu->r[11] = cpu->r[3];
|
|
L_024281A4: ; // 0x24281a4
|
|
/* 024281A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000008u);
|
|
/* 024281A8 */ _t8 = cpu->r[27] + 0x00000000u;
|
|
/* 024281A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024281AC */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024281AC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024281AC */ if (_t10) goto L_024281B0; else goto L_024281EC;
|
|
L_024281B0: ; // 0x24281b0
|
|
/* 024281B0 */ _t11 = cpu->r[30] + cpu->r[28];
|
|
/* 024281B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024281B4 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 024281B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024281B8 */ _t13 = cpu->r[10] + 0x00000034u;
|
|
/* 024281B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024281BC */ cpu->ctr = cpu->r[0];
|
|
/* 024281C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024281C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024281C8 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 024281CC */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 024281D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000008u);
|
|
/* 024281D4 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 024281D8 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024281D8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024281D8 */ if (_t15) goto L_024281DC; else goto L_02428218;
|
|
L_024281DC: ; // 0x24281dc
|
|
/* 024281DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000008u);
|
|
/* 024281E0 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024281E0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024281E0 */ if (_t17) goto L_02428180; else goto L_024281E4;
|
|
L_024281E4: ; // 0x24281e4
|
|
/* 024281E4 */ cpu->r[27] = cpu->r[30];
|
|
/* 024281E8 */ goto L_02428188;
|
|
L_024281EC: ; // 0x24281ec
|
|
/* 024281EC */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 024281EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024281F0 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 024281F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024281F4 */ _t20 = cpu->r[10] + 0x00000034u;
|
|
/* 024281F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024281F8 */ cpu->ctr = cpu->r[0];
|
|
/* 024281FC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02428200 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02428204 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02428208 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0242820C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000008u);
|
|
/* 02428210 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02428214 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428214 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02428214 */ if (_t22) goto L_024281DC; else goto L_02428218;
|
|
L_02428218: ; // 0x2428218
|
|
/* 02428218 */ cpu->r[27] = 0x00000000u;
|
|
/* 0242821C */ cpu->r[30] = cpu->r[31] + 0x00000058u;
|
|
/* 02428220 */ cpu->r[28] = cpu->r[27];
|
|
L_02428224: ; // 0x2428224
|
|
/* 02428224 */ cpu->r[26] = cpu->r[28];
|
|
/* 02428228 */ cpu->r[29] = cpu->r[30] + cpu->r[28];
|
|
L_0242822C: ; // 0x242822c
|
|
/* 0242822C */ cpu->r[3] = 0x00000224u;
|
|
/* 02428230 */ Gambit_fn_02801A78(cpu);
|
|
/* 02428234 */ cpu->r[12] = cpu->r[3];
|
|
/* 02428234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02428238 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428238 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02428238 */ if (_t24) goto L_02428248; else goto L_0242823C;
|
|
L_0242823C: ; // 0x242823c
|
|
/* 0242823C */ cpu->r[3] = cpu->r[12];
|
|
/* 02428240 */ Gambit_fn_024298A0(cpu);
|
|
/* 02428244 */ cpu->r[12] = cpu->r[3];
|
|
L_02428248: ; // 0x2428248
|
|
/* 02428248 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000002u);
|
|
/* 0242824C */ _t25 = cpu->r[29] + 0x00000000u;
|
|
/* 0242824C */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 02428250 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428250 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02428250 */ if (_t27) goto L_02428254; else goto L_02428290;
|
|
L_02428254: ; // 0x2428254
|
|
/* 02428254 */ _t28 = cpu->r[30] + cpu->r[26];
|
|
/* 02428254 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02428258 */ _t29 = cpu->r[3] + 0x00000000u;
|
|
/* 02428258 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0242825C */ _t30 = cpu->r[12] + 0x00000034u;
|
|
/* 0242825C */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02428260 */ cpu->ctr = cpu->r[0];
|
|
/* 02428264 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02428268 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242826C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02428270 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 02428274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000002u);
|
|
/* 02428278 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0242827C */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242827C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0242827C */ if (_t32) goto L_02428280; else goto L_024282BC;
|
|
L_02428280: ; // 0x2428280
|
|
/* 02428280 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000002u);
|
|
/* 02428284 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428284 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02428284 */ if (_t34) goto L_02428224; else goto L_02428288;
|
|
L_02428288: ; // 0x2428288
|
|
/* 02428288 */ cpu->r[29] = cpu->r[30];
|
|
/* 0242828C */ goto L_0242822C;
|
|
L_02428290: ; // 0x2428290
|
|
/* 02428290 */ _t35 = cpu->r[30] + 0x00000000u;
|
|
/* 02428290 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02428294 */ _t36 = cpu->r[3] + 0x00000000u;
|
|
/* 02428294 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02428298 */ _t37 = cpu->r[12] + 0x00000034u;
|
|
/* 02428298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0242829C */ cpu->ctr = cpu->r[0];
|
|
/* 024282A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024282A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024282A8 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 024282AC */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 024282B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000002u);
|
|
/* 024282B4 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 024282B8 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024282B8 */ _t39 = _t38 & 0x00000001u;
|
|
/* 024282B8 */ if (_t39) goto L_02428280; else goto L_024282BC;
|
|
L_024282BC: ; // 0x24282bc
|
|
/* 024282BC */ cpu->r[30] = 0x00000000u;
|
|
/* 024282C0 */ cpu->r[29] = cpu->r[31] + 0x00000060u;
|
|
/* 024282C4 */ cpu->r[28] = cpu->r[30];
|
|
L_024282C8: ; // 0x24282c8
|
|
/* 024282C8 */ cpu->r[27] = cpu->r[28];
|
|
/* 024282CC */ cpu->r[31] = cpu->r[29] + cpu->r[28];
|
|
L_024282D0: ; // 0x24282d0
|
|
/* 024282D0 */ cpu->r[3] = 0x00000234u;
|
|
/* 024282D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024282D8 */ cpu->r[0] = cpu->r[3];
|
|
/* 024282D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024282DC */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024282DC */ _t41 = _t40 & 0x00000001u;
|
|
/* 024282DC */ if (_t41) goto L_024282EC; else goto L_024282E0;
|
|
L_024282E0: ; // 0x24282e0
|
|
/* 024282E0 */ cpu->r[3] = cpu->r[0];
|
|
/* 024282E4 */ Gambit_fn_02428B18(cpu);
|
|
/* 024282E8 */ cpu->r[0] = cpu->r[3];
|
|
L_024282EC: ; // 0x24282ec
|
|
/* 024282EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000002u);
|
|
/* 024282F0 */ _t42 = cpu->r[31] + 0x00000000u;
|
|
/* 024282F0 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 024282F4 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024282F4 */ _t44 = _t43 & 0x00000001u;
|
|
/* 024282F4 */ if (_t44) goto L_024282F8; else goto L_02428334;
|
|
L_024282F8: ; // 0x24282f8
|
|
/* 024282F8 */ _t45 = cpu->r[29] + cpu->r[27];
|
|
/* 024282F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024282FC */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 024282FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02428300 */ _t47 = cpu->r[5] + 0x00000034u;
|
|
/* 02428300 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02428304 */ cpu->ctr = cpu->r[0];
|
|
/* 02428308 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242830C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02428310 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02428314 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02428318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0242831C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02428320 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428320 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02428320 */ if (_t49) goto L_02428324; else goto L_02428360;
|
|
L_02428324: ; // 0x2428324
|
|
/* 02428324 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000002u);
|
|
/* 02428328 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428328 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02428328 */ if (_t51) goto L_024282C8; else goto L_0242832C;
|
|
L_0242832C: ; // 0x242832c
|
|
/* 0242832C */ cpu->r[31] = cpu->r[29];
|
|
/* 02428330 */ goto L_024282D0;
|
|
L_02428334: ; // 0x2428334
|
|
/* 02428334 */ _t52 = cpu->r[29] + 0x00000000u;
|
|
/* 02428334 */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02428338 */ _t53 = cpu->r[3] + 0x00000000u;
|
|
/* 02428338 */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0242833C */ _t54 = cpu->r[5] + 0x00000034u;
|
|
/* 0242833C */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02428340 */ cpu->ctr = cpu->r[0];
|
|
/* 02428344 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02428348 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242834C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02428350 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02428354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02428358 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0242835C */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242835C */ _t56 = _t55 & 0x00000001u;
|
|
/* 0242835C */ if (_t56) goto L_02428324; else goto L_02428360;
|
|
L_02428360: ; // 0x2428360
|
|
/* 02428360 */ /* nop */
|
|
/* 02428364 */ _t57 = cpu->r[1] + 0x000000CCu;
|
|
/* 02428364 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02428368 */ cpu->lr = cpu->r[0];
|
|
/* 0242836C */ cpu->r[1] = cpu->r[1] + 0x000000C8u;
|
|
/* 02428370 */ return;
|
|
}
|
|
|
|
// fn_02428374 @ 0x2428374
|
|
void Gambit_fn_02428374(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57;
|
|
|
|
L_0242812C: ; // 0x242812c
|
|
/* 0242812C */ _t0 = cpu->r[1] + 0xFFFFFF38u;
|
|
/* 0242812C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242812C */ cpu->r[1] = _t0;
|
|
/* 02428130 */ /* nop */
|
|
/* 02428134 */ cpu->r[0] = cpu->lr;
|
|
/* 02428138 */ _t1 = cpu->r[1] + 0x000000CCu;
|
|
/* 02428138 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0242813C */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0242813C */ cpu->r[8] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02428140 */ _t3 = cpu->r[8] + 0x00000064u;
|
|
/* 02428140 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02428144 */ cpu->ctr = cpu->r[9];
|
|
/* 02428148 */ cpu->r[31] = cpu->r[3];
|
|
/* 0242814C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02428150 */ cpu->r[4] = cpu->r[3];
|
|
/* 02428154 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02428158 */ Gambit_fn_026D6C54(cpu);
|
|
/* 0242815C */ _t4 = cpu->r[31] + 0x00000028u;
|
|
/* 0242815C */ cpu->r[4] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02428160 */ cpu->r[5] = 0x00000001u;
|
|
/* 02428164 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02428168 */ Gambit_fn_026D6F40(cpu);
|
|
/* 0242816C */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 02428170 */ cpu->r[26] = 0x00000000u;
|
|
/* 02428174 */ cpu->r[30] = cpu->r[31] + 0x00000038u;
|
|
/* 02428178 */ _t5 = cpu->r[1] + 0x00000084u;
|
|
/* 02428178 */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
/* 0242817C */ cpu->r[29] = cpu->r[26];
|
|
L_02428180: ; // 0x2428180
|
|
/* 02428180 */ cpu->r[28] = cpu->r[29];
|
|
/* 02428184 */ cpu->r[27] = cpu->r[30] + cpu->r[29];
|
|
L_02428188: ; // 0x2428188
|
|
/* 02428188 */ cpu->r[3] = 0x00000228u;
|
|
/* 0242818C */ Gambit_fn_02801A78(cpu);
|
|
/* 02428190 */ cpu->r[11] = cpu->r[3];
|
|
/* 02428190 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02428194 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428194 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02428194 */ if (_t7) goto L_024281A4; else goto L_02428198;
|
|
L_02428198: ; // 0x2428198
|
|
/* 02428198 */ cpu->r[3] = cpu->r[11];
|
|
/* 0242819C */ Gambit_fn_0242936C(cpu);
|
|
/* 024281A0 */ cpu->r[11] = cpu->r[3];
|
|
L_024281A4: ; // 0x24281a4
|
|
/* 024281A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000008u);
|
|
/* 024281A8 */ _t8 = cpu->r[27] + 0x00000000u;
|
|
/* 024281A8 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024281AC */ _t9 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024281AC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024281AC */ if (_t10) goto L_024281B0; else goto L_024281EC;
|
|
L_024281B0: ; // 0x24281b0
|
|
/* 024281B0 */ _t11 = cpu->r[30] + cpu->r[28];
|
|
/* 024281B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024281B4 */ _t12 = cpu->r[3] + 0x00000000u;
|
|
/* 024281B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024281B8 */ _t13 = cpu->r[10] + 0x00000034u;
|
|
/* 024281B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024281BC */ cpu->ctr = cpu->r[0];
|
|
/* 024281C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024281C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024281C8 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 024281CC */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 024281D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000008u);
|
|
/* 024281D4 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 024281D8 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024281D8 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024281D8 */ if (_t15) goto L_024281DC; else goto L_02428218;
|
|
L_024281DC: ; // 0x24281dc
|
|
/* 024281DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000008u);
|
|
/* 024281E0 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024281E0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024281E0 */ if (_t17) goto L_02428180; else goto L_024281E4;
|
|
L_024281E4: ; // 0x24281e4
|
|
/* 024281E4 */ cpu->r[27] = cpu->r[30];
|
|
/* 024281E8 */ goto L_02428188;
|
|
L_024281EC: ; // 0x24281ec
|
|
/* 024281EC */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 024281EC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024281F0 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 024281F0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024281F4 */ _t20 = cpu->r[10] + 0x00000034u;
|
|
/* 024281F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024281F8 */ cpu->ctr = cpu->r[0];
|
|
/* 024281FC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02428200 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02428204 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02428208 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0242820C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000008u);
|
|
/* 02428210 */ cpu->r[29] = cpu->r[29] + 0x00000004u;
|
|
/* 02428214 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428214 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02428214 */ if (_t22) goto L_024281DC; else goto L_02428218;
|
|
L_02428218: ; // 0x2428218
|
|
/* 02428218 */ cpu->r[27] = 0x00000000u;
|
|
/* 0242821C */ cpu->r[30] = cpu->r[31] + 0x00000058u;
|
|
/* 02428220 */ cpu->r[28] = cpu->r[27];
|
|
L_02428224: ; // 0x2428224
|
|
/* 02428224 */ cpu->r[26] = cpu->r[28];
|
|
/* 02428228 */ cpu->r[29] = cpu->r[30] + cpu->r[28];
|
|
L_0242822C: ; // 0x242822c
|
|
/* 0242822C */ cpu->r[3] = 0x00000224u;
|
|
/* 02428230 */ Gambit_fn_02801A78(cpu);
|
|
/* 02428234 */ cpu->r[12] = cpu->r[3];
|
|
/* 02428234 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02428238 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428238 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02428238 */ if (_t24) goto L_02428248; else goto L_0242823C;
|
|
L_0242823C: ; // 0x242823c
|
|
/* 0242823C */ cpu->r[3] = cpu->r[12];
|
|
/* 02428240 */ Gambit_fn_024298A0(cpu);
|
|
/* 02428244 */ cpu->r[12] = cpu->r[3];
|
|
L_02428248: ; // 0x2428248
|
|
/* 02428248 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000002u);
|
|
/* 0242824C */ _t25 = cpu->r[29] + 0x00000000u;
|
|
/* 0242824C */ rbrew_write32(cpu->mem, _t25, cpu->r[12]);
|
|
/* 02428250 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428250 */ _t27 = _t26 & 0x00000001u;
|
|
/* 02428250 */ if (_t27) goto L_02428254; else goto L_02428290;
|
|
L_02428254: ; // 0x2428254
|
|
/* 02428254 */ _t28 = cpu->r[30] + cpu->r[26];
|
|
/* 02428254 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02428258 */ _t29 = cpu->r[3] + 0x00000000u;
|
|
/* 02428258 */ cpu->r[12] = rbrew_read32(cpu->mem, _t29);
|
|
/* 0242825C */ _t30 = cpu->r[12] + 0x00000034u;
|
|
/* 0242825C */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02428260 */ cpu->ctr = cpu->r[0];
|
|
/* 02428264 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02428268 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242826C */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02428270 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 02428274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000002u);
|
|
/* 02428278 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0242827C */ _t31 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242827C */ _t32 = _t31 & 0x00000001u;
|
|
/* 0242827C */ if (_t32) goto L_02428280; else goto L_024282BC;
|
|
L_02428280: ; // 0x2428280
|
|
/* 02428280 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000002u);
|
|
/* 02428284 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428284 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02428284 */ if (_t34) goto L_02428224; else goto L_02428288;
|
|
L_02428288: ; // 0x2428288
|
|
/* 02428288 */ cpu->r[29] = cpu->r[30];
|
|
/* 0242828C */ goto L_0242822C;
|
|
L_02428290: ; // 0x2428290
|
|
/* 02428290 */ _t35 = cpu->r[30] + 0x00000000u;
|
|
/* 02428290 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35);
|
|
/* 02428294 */ _t36 = cpu->r[3] + 0x00000000u;
|
|
/* 02428294 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02428298 */ _t37 = cpu->r[12] + 0x00000034u;
|
|
/* 02428298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37);
|
|
/* 0242829C */ cpu->ctr = cpu->r[0];
|
|
/* 024282A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024282A4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024282A8 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 024282AC */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 024282B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000002u);
|
|
/* 024282B4 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 024282B8 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024282B8 */ _t39 = _t38 & 0x00000001u;
|
|
/* 024282B8 */ if (_t39) goto L_02428280; else goto L_024282BC;
|
|
L_024282BC: ; // 0x24282bc
|
|
/* 024282BC */ cpu->r[30] = 0x00000000u;
|
|
/* 024282C0 */ cpu->r[29] = cpu->r[31] + 0x00000060u;
|
|
/* 024282C4 */ cpu->r[28] = cpu->r[30];
|
|
L_024282C8: ; // 0x24282c8
|
|
/* 024282C8 */ cpu->r[27] = cpu->r[28];
|
|
/* 024282CC */ cpu->r[31] = cpu->r[29] + cpu->r[28];
|
|
L_024282D0: ; // 0x24282d0
|
|
/* 024282D0 */ cpu->r[3] = 0x00000234u;
|
|
/* 024282D4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024282D8 */ cpu->r[0] = cpu->r[3];
|
|
/* 024282D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024282DC */ _t40 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024282DC */ _t41 = _t40 & 0x00000001u;
|
|
/* 024282DC */ if (_t41) goto L_024282EC; else goto L_024282E0;
|
|
L_024282E0: ; // 0x24282e0
|
|
/* 024282E0 */ cpu->r[3] = cpu->r[0];
|
|
/* 024282E4 */ Gambit_fn_02428B18(cpu);
|
|
/* 024282E8 */ cpu->r[0] = cpu->r[3];
|
|
L_024282EC: ; // 0x24282ec
|
|
/* 024282EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000002u);
|
|
/* 024282F0 */ _t42 = cpu->r[31] + 0x00000000u;
|
|
/* 024282F0 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 024282F4 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024282F4 */ _t44 = _t43 & 0x00000001u;
|
|
/* 024282F4 */ if (_t44) goto L_024282F8; else goto L_02428334;
|
|
L_024282F8: ; // 0x24282f8
|
|
/* 024282F8 */ _t45 = cpu->r[29] + cpu->r[27];
|
|
/* 024282F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024282FC */ _t46 = cpu->r[3] + 0x00000000u;
|
|
/* 024282FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02428300 */ _t47 = cpu->r[5] + 0x00000034u;
|
|
/* 02428300 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02428304 */ cpu->ctr = cpu->r[0];
|
|
/* 02428308 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242830C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02428310 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02428314 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02428318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 0242831C */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 02428320 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428320 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02428320 */ if (_t49) goto L_02428324; else goto L_02428360;
|
|
L_02428324: ; // 0x2428324
|
|
/* 02428324 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], 0x00000002u);
|
|
/* 02428328 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428328 */ _t51 = _t50 & 0x00000001u;
|
|
/* 02428328 */ if (_t51) goto L_024282C8; else goto L_0242832C;
|
|
L_0242832C: ; // 0x242832c
|
|
/* 0242832C */ cpu->r[31] = cpu->r[29];
|
|
/* 02428330 */ goto L_024282D0;
|
|
L_02428334: ; // 0x2428334
|
|
/* 02428334 */ _t52 = cpu->r[29] + 0x00000000u;
|
|
/* 02428334 */ cpu->r[3] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02428338 */ _t53 = cpu->r[3] + 0x00000000u;
|
|
/* 02428338 */ cpu->r[5] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0242833C */ _t54 = cpu->r[5] + 0x00000034u;
|
|
/* 0242833C */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02428340 */ cpu->ctr = cpu->r[0];
|
|
/* 02428344 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02428348 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0242834C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02428350 */ cpu->r[27] = cpu->r[27] + 0x00000004u;
|
|
/* 02428354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000002u);
|
|
/* 02428358 */ cpu->r[28] = cpu->r[28] + 0x00000004u;
|
|
/* 0242835C */ _t55 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0242835C */ _t56 = _t55 & 0x00000001u;
|
|
/* 0242835C */ if (_t56) goto L_02428324; else goto L_02428360;
|
|
L_02428360: ; // 0x2428360
|
|
/* 02428360 */ /* nop */
|
|
/* 02428364 */ _t57 = cpu->r[1] + 0x000000CCu;
|
|
/* 02428364 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 02428368 */ cpu->lr = cpu->r[0];
|
|
/* 0242836C */ cpu->r[1] = cpu->r[1] + 0x000000C8u;
|
|
/* 02428370 */ return;
|
|
L_02428374: ; // 0x2428374
|
|
/* 02428374 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02428378 */ goto L_0242812C;
|
|
}
|
|
|
|
// fn_0242837C @ 0x242837c
|
|
void Gambit_fn_0242837C(CPUState* cpu) {
|
|
L_0242837C: ; // 0x242837c
|
|
/* 0242837C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02428380 */ goto L_02428AB0;
|
|
L_02428AB0: ; // 0x2428ab0
|
|
/* 02428AB0 */ return;
|
|
}
|
|
|
|
// fn_02428384 @ 0x2428384
|
|
void Gambit_fn_02428384(CPUState* cpu) {
|
|
L_02428384: ; // 0x2428384
|
|
/* 02428384 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02428388 */ goto L_02428AB4;
|
|
L_02428AB4: ; // 0x2428ab4
|
|
/* 02428AB4 */ return;
|
|
}
|
|
|
|
// fn_0242838C @ 0x242838c
|
|
void Gambit_fn_0242838C(CPUState* cpu) {
|
|
L_0242838C: ; // 0x242838c
|
|
/* 0242838C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02428390 */ goto L_02428AB8;
|
|
L_02428AB8: ; // 0x2428ab8
|
|
/* 02428AB8 */ return;
|
|
}
|
|
|
|
// fn_02428394 @ 0x2428394
|
|
void Gambit_fn_02428394(CPUState* cpu) {
|
|
L_02428394: ; // 0x2428394
|
|
/* 02428394 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02428398 */ goto L_02428ABC;
|
|
L_02428ABC: ; // 0x2428abc
|
|
/* 02428ABC */ return;
|
|
}
|
|
|
|
// fn_0242839C @ 0x242839c
|
|
void Gambit_fn_0242839C(CPUState* cpu) {
|
|
L_0242839C: ; // 0x242839c
|
|
/* 0242839C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024283A0 */ goto L_02428AC0;
|
|
L_02428AC0: ; // 0x2428ac0
|
|
/* 02428AC0 */ return;
|
|
}
|
|
|
|
// fn_024283A4 @ 0x24283a4
|
|
void Gambit_fn_024283A4(CPUState* cpu) {
|
|
L_024283A4: ; // 0x24283a4
|
|
/* 024283A4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024283A8 */ goto L_02428AC4;
|
|
L_02428AC4: ; // 0x2428ac4
|
|
/* 02428AC4 */ cpu->r[3] = 0x00000001u;
|
|
/* 02428AC8 */ return;
|
|
}
|
|
|
|
// fn_024283AC @ 0x24283ac
|
|
void Gambit_fn_024283AC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024283AC: ; // 0x24283ac
|
|
/* 024283AC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024283B0 */ goto L_02428ACC;
|
|
L_02428ACC: ; // 0x2428acc
|
|
/* 02428ACC */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 02428ACC */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 02428AD0 */ return;
|
|
}
|
|
|
|
// fn_024283B4 @ 0x24283b4
|
|
void Gambit_fn_024283B4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024283B4: ; // 0x24283b4
|
|
/* 024283B4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024283B8 */ goto L_02428ADC;
|
|
L_02428ADC: ; // 0x2428adc
|
|
/* 02428ADC */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 02428ADC */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 02428AE0 */ return;
|
|
}
|
|
|
|
// fn_024283BC @ 0x24283bc
|
|
void Gambit_fn_024283BC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024283BC: ; // 0x24283bc
|
|
/* 024283BC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024283C0 */ goto L_02428AE4;
|
|
L_02428AE4: ; // 0x2428ae4
|
|
/* 02428AE4 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 02428AE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428AE8 */ return;
|
|
}
|
|
|
|
// fn_024283C4 @ 0x24283c4
|
|
void Gambit_fn_024283C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_024283C4: ; // 0x24283c4
|
|
/* 024283C4 */ cpu->r[0] = cpu->lr;
|
|
/* 024283C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024283C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024283C8 */ cpu->r[1] = _t0;
|
|
/* 024283CC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024283CC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024283D0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024283D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024283D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024283D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024283D8 */ cpu->r[30] = cpu->r[4];
|
|
/* 024283DC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024283DC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024283E0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024283E0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024283E0 */ if (_t5) goto L_024283E4; else goto L_024283F4;
|
|
L_024283E4: ; // 0x24283e4
|
|
/* 024283E4 */ cpu->r[3] = 0x00000068u;
|
|
/* 024283E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024283EC */ cpu->r[31] = cpu->r[3];
|
|
/* 024283EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024283F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024283F0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024283F0 */ if (_t7) goto L_024284B0; else goto L_024283F4;
|
|
L_024283F4: ; // 0x24283f4
|
|
/* 024283F4 */ cpu->r[4] = 0x100A0000u;
|
|
/* 024283F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024283FC */ cpu->r[5] = 0x00000020u;
|
|
/* 02428400 */ cpu->r[4] = cpu->r[4] + 0xFFFF8CA8u;
|
|
/* 02428404 */ Gambit_fn_026DD9F0(cpu);
|
|
/* 02428408 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0242840C */ cpu->r[9] = 0x100A0000u;
|
|
/* 02428410 */ cpu->r[7] = cpu->r[7] + 0xFFFF8CCCu;
|
|
/* 02428414 */ cpu->r[9] = cpu->r[9] + 0xFFFF8D54u;
|
|
/* 02428418 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02428418 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 0242841C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02428420 */ _t9 = cpu->r[31] + 0x00000010u;
|
|
/* 02428420 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 02428424 */ cpu->r[8] = cpu->r[8] + 0xFFFF8D44u;
|
|
/* 02428428 */ cpu->r[3] = cpu->r[31] + 0x00000028u;
|
|
/* 02428428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242842C */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0242842C */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02428430 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428430 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02428430 */ if (_t12) goto L_02428434; else goto L_02428444;
|
|
L_02428434: ; // 0x2428434
|
|
/* 02428434 */ cpu->r[3] = 0x00000010u;
|
|
/* 02428438 */ Gambit_fn_02801A78(cpu);
|
|
/* 0242843C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428440 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428440 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02428440 */ if (_t14) goto L_02428468; else goto L_02428444;
|
|
L_02428444: ; // 0x2428444
|
|
/* 02428444 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02428448 */ cpu->r[10] = cpu->r[10] + 0xFFFF8C98u;
|
|
/* 0242844C */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0242844C */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 02428450 */ _t16 = cpu->r[30] + 0x00000000u;
|
|
/* 02428450 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02428454 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02428454 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 02428458 */ _t18 = cpu->r[30] + 0x00000004u;
|
|
/* 02428458 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0242845C */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 0242845C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 02428460 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02428460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02428464 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 02428464 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
L_02428468: ; // 0x2428468
|
|
/* 02428468 */ cpu->r[7] = 0x00000008u;
|
|
/* 0242846C */ cpu->r[12] = cpu->r[31] + 0x00000034u;
|
|
/* 02428470 */ cpu->ctr = cpu->r[7];
|
|
/* 02428474 */ cpu->r[0] = 0x00000000u;
|
|
L_02428478: ; // 0x2428478
|
|
/* 02428478 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 02428478 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02428478 */ cpu->r[12] = _t22;
|
|
/* 0242847C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0242847C */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0242847C */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0242847C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0242847C */ if (_t25) goto L_02428478; else goto L_02428480;
|
|
L_02428480: ; // 0x2428480
|
|
/* 02428480 */ cpu->r[6] = 0x00000002u;
|
|
/* 02428484 */ cpu->r[10] = cpu->r[31] + 0x00000054u;
|
|
/* 02428488 */ cpu->ctr = cpu->r[6];
|
|
/* 0242848C */ cpu->r[11] = 0x00000000u;
|
|
L_02428490: ; // 0x2428490
|
|
/* 02428490 */ _t26 = cpu->r[10] + 0x00000004u;
|
|
/* 02428490 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 02428490 */ cpu->r[10] = _t26;
|
|
/* 02428494 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02428494 */ _t27 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02428494 */ _t28 = _t27 >> (0x00000002u & 31u);
|
|
/* 02428494 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02428494 */ if (_t29) goto L_02428490; else goto L_02428498;
|
|
L_02428498: ; // 0x2428498
|
|
/* 02428498 */ cpu->r[5] = 0x00000002u;
|
|
/* 0242849C */ cpu->r[8] = cpu->r[31] + 0x0000005Cu;
|
|
/* 024284A0 */ cpu->ctr = cpu->r[5];
|
|
/* 024284A4 */ cpu->r[9] = 0x00000000u;
|
|
L_024284A8: ; // 0x24284a8
|
|
/* 024284A8 */ _t30 = cpu->r[8] + 0x00000004u;
|
|
/* 024284A8 */ rbrew_write32(cpu->mem, _t30, cpu->r[9]);
|
|
/* 024284A8 */ cpu->r[8] = _t30;
|
|
/* 024284AC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024284AC */ _t31 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024284AC */ _t32 = _t31 >> (0x00000002u & 31u);
|
|
/* 024284AC */ _t33 = _t32 & 0x00000001u;
|
|
/* 024284AC */ if (_t33) goto L_024284A8; else goto L_024284B0;
|
|
L_024284B0: ; // 0x24284b0
|
|
/* 024284B0 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 024284B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024284B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024284B8 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024284B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024284BC */ cpu->lr = cpu->r[0];
|
|
/* 024284C0 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 024284C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024284C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024284C8 */ return;
|
|
}
|
|
|
|
// fn_024283C8 @ 0x24283c8
|
|
void Gambit_fn_024283C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36;
|
|
|
|
L_024283C8: ; // 0x24283c8
|
|
/* 024283C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024283C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024283C8 */ cpu->r[1] = _t0;
|
|
/* 024283CC */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 024283CC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 024283D0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024283D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 024283D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024283D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024283D8 */ cpu->r[30] = cpu->r[4];
|
|
/* 024283DC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024283DC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024283E0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024283E0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024283E0 */ if (_t5) goto L_024283E4; else goto L_024283F4;
|
|
L_024283E4: ; // 0x24283e4
|
|
/* 024283E4 */ cpu->r[3] = 0x00000068u;
|
|
/* 024283E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024283EC */ cpu->r[31] = cpu->r[3];
|
|
/* 024283EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024283F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024283F0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024283F0 */ if (_t7) goto L_024284B0; else goto L_024283F4;
|
|
L_024283F4: ; // 0x24283f4
|
|
/* 024283F4 */ cpu->r[4] = 0x100A0000u;
|
|
/* 024283F8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024283FC */ cpu->r[5] = 0x00000020u;
|
|
/* 02428400 */ cpu->r[4] = cpu->r[4] + 0xFFFF8CA8u;
|
|
/* 02428404 */ Gambit_fn_026DD9F0(cpu);
|
|
/* 02428408 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0242840C */ cpu->r[9] = 0x100A0000u;
|
|
/* 02428410 */ cpu->r[7] = cpu->r[7] + 0xFFFF8CCCu;
|
|
/* 02428414 */ cpu->r[9] = cpu->r[9] + 0xFFFF8D54u;
|
|
/* 02428418 */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02428418 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]);
|
|
/* 0242841C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02428420 */ _t9 = cpu->r[31] + 0x00000010u;
|
|
/* 02428420 */ rbrew_write32(cpu->mem, _t9, cpu->r[9]);
|
|
/* 02428424 */ cpu->r[8] = cpu->r[8] + 0xFFFF8D44u;
|
|
/* 02428428 */ cpu->r[3] = cpu->r[31] + 0x00000028u;
|
|
/* 02428428 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0242842C */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0242842C */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02428430 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428430 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02428430 */ if (_t12) goto L_02428434; else goto L_02428444;
|
|
L_02428434: ; // 0x2428434
|
|
/* 02428434 */ cpu->r[3] = 0x00000010u;
|
|
/* 02428438 */ Gambit_fn_02801A78(cpu);
|
|
/* 0242843C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428440 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428440 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02428440 */ if (_t14) goto L_02428468; else goto L_02428444;
|
|
L_02428444: ; // 0x2428444
|
|
/* 02428444 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02428448 */ cpu->r[10] = cpu->r[10] + 0xFFFF8C98u;
|
|
/* 0242844C */ _t15 = cpu->r[3] + 0x0000000Cu;
|
|
/* 0242844C */ rbrew_write32(cpu->mem, _t15, cpu->r[10]);
|
|
/* 02428450 */ _t16 = cpu->r[30] + 0x00000000u;
|
|
/* 02428450 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02428454 */ _t17 = cpu->r[3] + 0x00000000u;
|
|
/* 02428454 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]);
|
|
/* 02428458 */ _t18 = cpu->r[30] + 0x00000004u;
|
|
/* 02428458 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0242845C */ _t19 = cpu->r[3] + 0x00000004u;
|
|
/* 0242845C */ rbrew_write32(cpu->mem, _t19, cpu->r[12]);
|
|
/* 02428460 */ _t20 = cpu->r[30] + 0x00000008u;
|
|
/* 02428460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02428464 */ _t21 = cpu->r[3] + 0x00000008u;
|
|
/* 02428464 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
L_02428468: ; // 0x2428468
|
|
/* 02428468 */ cpu->r[7] = 0x00000008u;
|
|
/* 0242846C */ cpu->r[12] = cpu->r[31] + 0x00000034u;
|
|
/* 02428470 */ cpu->ctr = cpu->r[7];
|
|
/* 02428474 */ cpu->r[0] = 0x00000000u;
|
|
L_02428478: ; // 0x2428478
|
|
/* 02428478 */ _t22 = cpu->r[12] + 0x00000004u;
|
|
/* 02428478 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]);
|
|
/* 02428478 */ cpu->r[12] = _t22;
|
|
/* 0242847C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0242847C */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0242847C */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 0242847C */ _t25 = _t24 & 0x00000001u;
|
|
/* 0242847C */ if (_t25) goto L_02428478; else goto L_02428480;
|
|
L_02428480: ; // 0x2428480
|
|
/* 02428480 */ cpu->r[6] = 0x00000002u;
|
|
/* 02428484 */ cpu->r[10] = cpu->r[31] + 0x00000054u;
|
|
/* 02428488 */ cpu->ctr = cpu->r[6];
|
|
/* 0242848C */ cpu->r[11] = 0x00000000u;
|
|
L_02428490: ; // 0x2428490
|
|
/* 02428490 */ _t26 = cpu->r[10] + 0x00000004u;
|
|
/* 02428490 */ rbrew_write32(cpu->mem, _t26, cpu->r[11]);
|
|
/* 02428490 */ cpu->r[10] = _t26;
|
|
/* 02428494 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02428494 */ _t27 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02428494 */ _t28 = _t27 >> (0x00000002u & 31u);
|
|
/* 02428494 */ _t29 = _t28 & 0x00000001u;
|
|
/* 02428494 */ if (_t29) goto L_02428490; else goto L_02428498;
|
|
L_02428498: ; // 0x2428498
|
|
/* 02428498 */ cpu->r[5] = 0x00000002u;
|
|
/* 0242849C */ cpu->r[8] = cpu->r[31] + 0x0000005Cu;
|
|
/* 024284A0 */ cpu->ctr = cpu->r[5];
|
|
/* 024284A4 */ cpu->r[9] = 0x00000000u;
|
|
L_024284A8: ; // 0x24284a8
|
|
/* 024284A8 */ _t30 = cpu->r[8] + 0x00000004u;
|
|
/* 024284A8 */ rbrew_write32(cpu->mem, _t30, cpu->r[9]);
|
|
/* 024284A8 */ cpu->r[8] = _t30;
|
|
/* 024284AC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 024284AC */ _t31 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 024284AC */ _t32 = _t31 >> (0x00000002u & 31u);
|
|
/* 024284AC */ _t33 = _t32 & 0x00000001u;
|
|
/* 024284AC */ if (_t33) goto L_024284A8; else goto L_024284B0;
|
|
L_024284B0: ; // 0x24284b0
|
|
/* 024284B0 */ _t34 = cpu->r[1] + 0x00000014u;
|
|
/* 024284B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 024284B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024284B8 */ _t35 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024284B8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t35);
|
|
/* 024284BC */ cpu->lr = cpu->r[0];
|
|
/* 024284C0 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 024284C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36);
|
|
/* 024284C4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024284C8 */ return;
|
|
}
|
|
|
|
// fn_024284CC @ 0x24284cc
|
|
void Gambit_fn_024284CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_024284CC: ; // 0x24284cc
|
|
/* 024284CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000008u);
|
|
/* 024284D0 */ cpu->r[12] = cpu->r[3] + 0x00000038u;
|
|
/* 024284D4 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024284D4 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024284D4 */ if (_t1) goto L_024284D8; else goto L_024284E0;
|
|
L_024284D8: ; // 0x24284d8
|
|
/* 024284D8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024284DC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_024284E0: ; // 0x24284e0
|
|
/* 024284E0 */ _t2 = cpu->r[12] + 0x00000000u;
|
|
/* 024284E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024284E4 */ _t3 = cpu->r[12] + 0x00000118u;
|
|
/* 024284E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024284E8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024284EC */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024284F0 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
/* 024284F4 */ return;
|
|
}
|
|
|
|
// fn_024284F8 @ 0x24284f8
|
|
void Gambit_fn_024284F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_024284F8: ; // 0x24284f8
|
|
/* 024284F8 */ cpu->r[0] = cpu->lr;
|
|
/* 024284FC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024284FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024284FC */ cpu->r[1] = _t0;
|
|
/* 02428500 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428500 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02428504 */ cpu->r[31] = cpu->r[4];
|
|
/* 02428508 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02428508 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0242850C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0242850C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02428510 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02428514 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 02428514 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02428518 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242851C */ cpu->r[8] = cpu->r[8] + 0xFFFF8CBCu;
|
|
/* 02428520 */ cpu->r[28] = cpu->r[5];
|
|
/* 02428524 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02428524 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02428528 */ cpu->r[29] = cpu->r[3];
|
|
/* 0242852C */ cpu->r[3] = 0x101D0000u;
|
|
/* 02428530 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02428534 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02428534 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 02428538 */ cpu->r[0] = cpu->r[0] + 0xFFFF8C80u;
|
|
/* 0242853C */ _t7 = cpu->r[3] + 0xFFFF9884u;
|
|
/* 0242853C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02428540 */ cpu->r[5] = 0x00000001u;
|
|
/* 02428544 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428544 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02428548 */ Gambit_fn_028095AC(cpu);
|
|
/* 0242854C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428550 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428550 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02428550 */ if (_t10) goto L_02428560; else goto L_02428554;
|
|
L_02428554: ; // 0x2428554
|
|
/* 02428554 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02428554 */ cpu->r[7] = rbrew_read8(cpu->mem, _t11);
|
|
/* 02428558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0242855C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242855C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0242855C */ if (_t13) goto L_02428560; else goto L_0242860C;
|
|
L_02428560: ; // 0x2428560
|
|
/* 02428560 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02428564 */ _t14 = cpu->r[3] + 0x00003400u;
|
|
/* 02428564 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02428568 */ Gambit_fn_0206C030(cpu);
|
|
/* 0242856C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 02428570 */ cpu->r[30] = cpu->r[29] + 0x00000038u;
|
|
/* 02428574 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428574 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02428574 */ if (_t16) goto L_02428578; else goto L_02428598;
|
|
L_02428578: ; // 0x2428578
|
|
/* 02428578 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0242857C */ _t17 = cpu->r[29] + 0x00000028u;
|
|
/* 0242857C */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02428580 */ _t18 = cpu->r[30] + cpu->r[9];
|
|
/* 02428580 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02428584 */ cpu->r[5] = 0x00000001u;
|
|
/* 02428588 */ Gambit_fn_027ECB34(cpu);
|
|
/* 0242858C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 02428590 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428590 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02428590 */ if (_t20) goto L_024285B0; else goto L_02428594;
|
|
L_02428594: ; // 0x2428594
|
|
/* 02428594 */ goto L_024285D4;
|
|
L_02428598: ; // 0x2428598
|
|
/* 02428598 */ _t21 = cpu->r[29] + 0x00000028u;
|
|
/* 02428598 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0242859C */ cpu->r[5] = 0x00000001u;
|
|
/* 024285A0 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 024285A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024285A4 */ Gambit_fn_027ECB34(cpu);
|
|
/* 024285A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 024285AC */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024285AC */ _t24 = _t23 & 0x00000001u;
|
|
/* 024285AC */ if (_t24) goto L_024285B0; else goto L_024285D4;
|
|
L_024285B0: ; // 0x24285b0
|
|
/* 024285B0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024285B4 */ _t25 = cpu->r[30] + cpu->r[10];
|
|
/* 024285B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024285B8 */ _t26 = cpu->r[3] + 0x00000000u;
|
|
/* 024285B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024285BC */ _t27 = cpu->r[11] + 0x00000164u;
|
|
/* 024285BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024285C0 */ cpu->ctr = cpu->r[0];
|
|
/* 024285C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024285C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024285CC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024285CC */ _t29 = _t28 & 0x00000001u;
|
|
/* 024285CC */ if (_t29) goto L_0242860C; else goto L_024285D0;
|
|
L_024285D0: ; // 0x24285d0
|
|
/* 024285D0 */ goto L_024285F0;
|
|
L_024285D4: ; // 0x24285d4
|
|
/* 024285D4 */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 024285D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024285D8 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 024285D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024285DC */ _t32 = cpu->r[11] + 0x00000164u;
|
|
/* 024285DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024285E0 */ cpu->ctr = cpu->r[0];
|
|
/* 024285E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024285E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024285EC */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024285EC */ _t34 = _t33 & 0x00000001u;
|
|
/* 024285EC */ if (_t34) goto L_0242860C; else goto L_024285F0;
|
|
L_024285F0: ; // 0x24285f0
|
|
/* 024285F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 024285F4 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024285F4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 024285F4 */ if (_t36) goto L_024285F8; else goto L_02428600;
|
|
L_024285F8: ; // 0x24285f8
|
|
/* 024285F8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024285FC */ cpu->r[30] = cpu->r[30] + cpu->r[11];
|
|
L_02428600: ; // 0x2428600
|
|
/* 02428600 */ _t37 = cpu->r[30] + 0x00000000u;
|
|
/* 02428600 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02428604 */ cpu->r[4] = cpu->r[28];
|
|
/* 02428608 */ Gambit_fn_02429404(cpu);
|
|
L_0242860C: ; // 0x242860c
|
|
/* 0242860C */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 0242860C */ cpu->r[28] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02428610 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02428610 */ cpu->r[29] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02428614 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 02428614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02428618 */ _t41 = cpu->r[1] + 0x00000018u;
|
|
/* 02428618 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0242861C */ cpu->lr = cpu->r[0];
|
|
/* 02428620 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428620 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02428624 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02428628 */ return;
|
|
}
|
|
|
|
// fn_024284FC @ 0x24284fc
|
|
void Gambit_fn_024284FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42;
|
|
|
|
L_024284FC: ; // 0x24284fc
|
|
/* 024284FC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024284FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024284FC */ cpu->r[1] = _t0;
|
|
/* 02428500 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428500 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02428504 */ cpu->r[31] = cpu->r[4];
|
|
/* 02428508 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02428508 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0242850C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0242850C */ rbrew_write32(cpu->mem, _t3, cpu->r[28]);
|
|
/* 02428510 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02428514 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 02428514 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02428518 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0242851C */ cpu->r[8] = cpu->r[8] + 0xFFFF8CBCu;
|
|
/* 02428520 */ cpu->r[28] = cpu->r[5];
|
|
/* 02428524 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02428524 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02428528 */ cpu->r[29] = cpu->r[3];
|
|
/* 0242852C */ cpu->r[3] = 0x101D0000u;
|
|
/* 02428530 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02428534 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02428534 */ rbrew_write32(cpu->mem, _t6, cpu->r[8]);
|
|
/* 02428538 */ cpu->r[0] = cpu->r[0] + 0xFFFF8C80u;
|
|
/* 0242853C */ _t7 = cpu->r[3] + 0xFFFF9884u;
|
|
/* 0242853C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02428540 */ cpu->r[5] = 0x00000001u;
|
|
/* 02428544 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428544 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02428548 */ Gambit_fn_028095AC(cpu);
|
|
/* 0242854C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428550 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428550 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02428550 */ if (_t10) goto L_02428560; else goto L_02428554;
|
|
L_02428554: ; // 0x2428554
|
|
/* 02428554 */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02428554 */ cpu->r[7] = rbrew_read8(cpu->mem, _t11);
|
|
/* 02428558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0242855C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242855C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0242855C */ if (_t13) goto L_02428560; else goto L_0242860C;
|
|
L_02428560: ; // 0x2428560
|
|
/* 02428560 */ cpu->r[3] = 0x101C0000u;
|
|
/* 02428564 */ _t14 = cpu->r[3] + 0x00003400u;
|
|
/* 02428564 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02428568 */ Gambit_fn_0206C030(cpu);
|
|
/* 0242856C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 02428570 */ cpu->r[30] = cpu->r[29] + 0x00000038u;
|
|
/* 02428574 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428574 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02428574 */ if (_t16) goto L_02428578; else goto L_02428598;
|
|
L_02428578: ; // 0x2428578
|
|
/* 02428578 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0242857C */ _t17 = cpu->r[29] + 0x00000028u;
|
|
/* 0242857C */ cpu->r[4] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02428580 */ _t18 = cpu->r[30] + cpu->r[9];
|
|
/* 02428580 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02428584 */ cpu->r[5] = 0x00000001u;
|
|
/* 02428588 */ Gambit_fn_027ECB34(cpu);
|
|
/* 0242858C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 02428590 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428590 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02428590 */ if (_t20) goto L_024285B0; else goto L_02428594;
|
|
L_02428594: ; // 0x2428594
|
|
/* 02428594 */ goto L_024285D4;
|
|
L_02428598: ; // 0x2428598
|
|
/* 02428598 */ _t21 = cpu->r[29] + 0x00000028u;
|
|
/* 02428598 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21);
|
|
/* 0242859C */ cpu->r[5] = 0x00000001u;
|
|
/* 024285A0 */ _t22 = cpu->r[30] + 0x00000000u;
|
|
/* 024285A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024285A4 */ Gambit_fn_027ECB34(cpu);
|
|
/* 024285A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 024285AC */ _t23 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024285AC */ _t24 = _t23 & 0x00000001u;
|
|
/* 024285AC */ if (_t24) goto L_024285B0; else goto L_024285D4;
|
|
L_024285B0: ; // 0x24285b0
|
|
/* 024285B0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024285B4 */ _t25 = cpu->r[30] + cpu->r[10];
|
|
/* 024285B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024285B8 */ _t26 = cpu->r[3] + 0x00000000u;
|
|
/* 024285B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024285BC */ _t27 = cpu->r[11] + 0x00000164u;
|
|
/* 024285BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024285C0 */ cpu->ctr = cpu->r[0];
|
|
/* 024285C4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024285C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024285CC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024285CC */ _t29 = _t28 & 0x00000001u;
|
|
/* 024285CC */ if (_t29) goto L_0242860C; else goto L_024285D0;
|
|
L_024285D0: ; // 0x24285d0
|
|
/* 024285D0 */ goto L_024285F0;
|
|
L_024285D4: ; // 0x24285d4
|
|
/* 024285D4 */ _t30 = cpu->r[30] + 0x00000000u;
|
|
/* 024285D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024285D8 */ _t31 = cpu->r[3] + 0x00000000u;
|
|
/* 024285D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024285DC */ _t32 = cpu->r[11] + 0x00000164u;
|
|
/* 024285DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32);
|
|
/* 024285E0 */ cpu->ctr = cpu->r[0];
|
|
/* 024285E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024285E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024285EC */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024285EC */ _t34 = _t33 & 0x00000001u;
|
|
/* 024285EC */ if (_t34) goto L_0242860C; else goto L_024285F0;
|
|
L_024285F0: ; // 0x24285f0
|
|
/* 024285F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 024285F4 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024285F4 */ _t36 = _t35 & 0x00000001u;
|
|
/* 024285F4 */ if (_t36) goto L_024285F8; else goto L_02428600;
|
|
L_024285F8: ; // 0x24285f8
|
|
/* 024285F8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024285FC */ cpu->r[30] = cpu->r[30] + cpu->r[11];
|
|
L_02428600: ; // 0x2428600
|
|
/* 02428600 */ _t37 = cpu->r[30] + 0x00000000u;
|
|
/* 02428600 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02428604 */ cpu->r[4] = cpu->r[28];
|
|
/* 02428608 */ Gambit_fn_02429404(cpu);
|
|
L_0242860C: ; // 0x242860c
|
|
/* 0242860C */ _t38 = cpu->r[1] + 0x00000010u;
|
|
/* 0242860C */ cpu->r[28] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02428610 */ _t39 = cpu->r[1] + 0x00000014u;
|
|
/* 02428610 */ cpu->r[29] = rbrew_read32(cpu->mem, _t39);
|
|
/* 02428614 */ _t40 = cpu->r[1] + 0x00000024u;
|
|
/* 02428614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02428618 */ _t41 = cpu->r[1] + 0x00000018u;
|
|
/* 02428618 */ cpu->r[30] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0242861C */ cpu->lr = cpu->r[0];
|
|
/* 02428620 */ _t42 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428620 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02428624 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02428628 */ return;
|
|
}
|
|
|
|
// fn_0242862C @ 0x242862c
|
|
void Gambit_fn_0242862C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0242862C: ; // 0x242862c
|
|
/* 0242862C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000008u);
|
|
/* 02428630 */ cpu->r[12] = cpu->r[3] + 0x00000038u;
|
|
/* 02428634 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428634 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02428634 */ if (_t1) goto L_02428638; else goto L_02428640;
|
|
L_02428638: ; // 0x2428638
|
|
/* 02428638 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0242863C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02428640: ; // 0x2428640
|
|
/* 02428640 */ _t2 = cpu->r[12] + 0x00000000u;
|
|
/* 02428640 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02428644 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 02428644 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02428648 */ _t4 = cpu->r[12] + 0x00000184u;
|
|
/* 02428648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0242864C */ cpu->ctr = cpu->r[0];
|
|
/* 02428650 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02428654 @ 0x2428654
|
|
void Gambit_fn_02428654(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02428654: ; // 0x2428654
|
|
/* 02428654 */ cpu->r[0] = cpu->lr;
|
|
/* 02428658 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02428658 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428658 */ cpu->r[1] = _t0;
|
|
/* 0242865C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242865C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02428660 */ cpu->r[30] = cpu->r[3];
|
|
/* 02428664 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428664 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02428668 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0242866C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0242866C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02428670 */ _t4 = cpu->r[3] + 0x00003400u;
|
|
/* 02428670 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02428674 */ cpu->r[31] = cpu->r[4];
|
|
/* 02428678 */ Gambit_fn_0206C030(cpu);
|
|
/* 0242867C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428680 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428680 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02428680 */ if (_t6) goto L_02428690; else goto L_02428684;
|
|
L_02428684: ; // 0x2428684
|
|
/* 02428684 */ cpu->r[3] = cpu->r[30];
|
|
/* 02428688 */ cpu->r[4] = cpu->r[31];
|
|
/* 0242868C */ Gambit_fn_0242862C(cpu);
|
|
L_02428690: ; // 0x2428690
|
|
/* 02428690 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 02428694 */ cpu->r[12] = cpu->r[30] + 0x00000038u;
|
|
/* 02428698 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428698 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02428698 */ if (_t8) goto L_0242869C; else goto L_024286A4;
|
|
L_0242869C: ; // 0x242869c
|
|
/* 0242869C */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024286A0 */ cpu->r[12] = cpu->r[12] + cpu->r[9];
|
|
L_024286A4: ; // 0x24286a4
|
|
/* 024286A4 */ _t9 = cpu->r[12] + 0x00000000u;
|
|
/* 024286A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024286A8 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 024286A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024286AC */ _t11 = cpu->r[10] + 0x0000016Cu;
|
|
/* 024286AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024286B0 */ cpu->ctr = cpu->r[0];
|
|
/* 024286B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024286B8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 024286B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024286BC */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024286BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024286C0 */ cpu->lr = cpu->r[0];
|
|
/* 024286C4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024286C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024286C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024286CC */ return;
|
|
}
|
|
|
|
// fn_02428658 @ 0x2428658
|
|
void Gambit_fn_02428658(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02428658: ; // 0x2428658
|
|
/* 02428658 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02428658 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428658 */ cpu->r[1] = _t0;
|
|
/* 0242865C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0242865C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02428660 */ cpu->r[30] = cpu->r[3];
|
|
/* 02428664 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428664 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02428668 */ cpu->r[3] = 0x101C0000u;
|
|
/* 0242866C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 0242866C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02428670 */ _t4 = cpu->r[3] + 0x00003400u;
|
|
/* 02428670 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02428674 */ cpu->r[31] = cpu->r[4];
|
|
/* 02428678 */ Gambit_fn_0206C030(cpu);
|
|
/* 0242867C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428680 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428680 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02428680 */ if (_t6) goto L_02428690; else goto L_02428684;
|
|
L_02428684: ; // 0x2428684
|
|
/* 02428684 */ cpu->r[3] = cpu->r[30];
|
|
/* 02428688 */ cpu->r[4] = cpu->r[31];
|
|
/* 0242868C */ Gambit_fn_0242862C(cpu);
|
|
L_02428690: ; // 0x2428690
|
|
/* 02428690 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000008u);
|
|
/* 02428694 */ cpu->r[12] = cpu->r[30] + 0x00000038u;
|
|
/* 02428698 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428698 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02428698 */ if (_t8) goto L_0242869C; else goto L_024286A4;
|
|
L_0242869C: ; // 0x242869c
|
|
/* 0242869C */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024286A0 */ cpu->r[12] = cpu->r[12] + cpu->r[9];
|
|
L_024286A4: ; // 0x24286a4
|
|
/* 024286A4 */ _t9 = cpu->r[12] + 0x00000000u;
|
|
/* 024286A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024286A8 */ _t10 = cpu->r[3] + 0x00000000u;
|
|
/* 024286A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024286AC */ _t11 = cpu->r[10] + 0x0000016Cu;
|
|
/* 024286AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024286B0 */ cpu->ctr = cpu->r[0];
|
|
/* 024286B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024286B8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 024286B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024286BC */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 024286BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024286C0 */ cpu->lr = cpu->r[0];
|
|
/* 024286C4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024286C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024286C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024286CC */ return;
|
|
}
|
|
|
|
// fn_024286D0 @ 0x24286d0
|
|
void Gambit_fn_024286D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_020B76CC: ; // 0x20b76cc
|
|
/* 020B76CC */ goto L_027ECC10;
|
|
L_024286D0: ; // 0x24286d0
|
|
/* 024286D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000008u);
|
|
/* 024286D4 */ cpu->r[12] = cpu->r[3] + 0x00000038u;
|
|
/* 024286D8 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024286D8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024286D8 */ if (_t1) goto L_024286DC; else goto L_024286E4;
|
|
L_024286DC: ; // 0x24286dc
|
|
/* 024286DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024286E0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_024286E4: ; // 0x24286e4
|
|
/* 024286E4 */ _t2 = cpu->r[12] + 0x00000000u;
|
|
/* 024286E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024286E8 */ cpu->r[4] = cpu->r[5];
|
|
/* 024286EC */ goto L_020B76CC;
|
|
L_027ECC10: ; // 0x27ecc10
|
|
/* 027ECC10 */ cpu->r[0] = cpu->lr;
|
|
/* 027ECC14 */ _t3 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027ECC14 */ rbrew_write32(cpu->mem, _t3, cpu->r[1]);
|
|
/* 027ECC14 */ cpu->r[1] = _t3;
|
|
/* 027ECC18 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 027ECC18 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027ECC1C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027ECC1C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 027ECC20 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 027ECC20 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027ECC24 */ _t7 = cpu->r[3] + 0x00000030u;
|
|
/* 027ECC24 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027ECC28 */ _t8 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027ECC28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027ECC2C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027ECC30 */ cpu->r[30] = cpu->r[4];
|
|
/* 027ECC34 */ cpu->r[4] = cpu->r[31];
|
|
/* 027ECC38 */ Gambit_fn_027EE8B8(cpu);
|
|
/* 027ECC3C */ _t9 = cpu->r[30] + 0x00000000u;
|
|
/* 027ECC3C */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027ECC40 */ _t10 = cpu->r[30] + 0x00000004u;
|
|
/* 027ECC40 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027ECC44 */ cpu->r[3] = cpu->r[31];
|
|
/* 027ECC48 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 027ECC48 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[13]);
|
|
/* 027ECC4C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027ECC50 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027ECC50 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 027ECC54 */ Gambit_fn_027EEBC0(cpu);
|
|
/* 027ECC58 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 027ECC58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027ECC5C */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 027ECC5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027ECC60 */ cpu->lr = cpu->r[0];
|
|
/* 027ECC64 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027ECC64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027ECC68 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027ECC6C */ return;
|
|
}
|
|
|
|
// fn_024286F0 @ 0x24286f0
|
|
void Gambit_fn_024286F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_020B76D0: ; // 0x20b76d0
|
|
/* 020B76D0 */ goto L_027ECC80;
|
|
L_024286F0: ; // 0x24286f0
|
|
/* 024286F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000008u);
|
|
/* 024286F4 */ cpu->r[12] = cpu->r[3] + 0x00000038u;
|
|
/* 024286F8 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024286F8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024286F8 */ if (_t1) goto L_024286FC; else goto L_02428704;
|
|
L_024286FC: ; // 0x24286fc
|
|
/* 024286FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02428700 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02428704: ; // 0x2428704
|
|
/* 02428704 */ _t2 = cpu->r[12] + 0x00000000u;
|
|
/* 02428704 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02428708 */ cpu->r[4] = cpu->r[5];
|
|
/* 0242870C */ goto L_020B76D0;
|
|
L_027ECC80: ; // 0x27ecc80
|
|
/* 027ECC80 */ cpu->r[0] = cpu->lr;
|
|
/* 027ECC84 */ _t3 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 027ECC84 */ rbrew_write32(cpu->mem, _t3, cpu->r[1]);
|
|
/* 027ECC84 */ cpu->r[1] = _t3;
|
|
/* 027ECC88 */ _t4 = cpu->r[1] + 0x00000018u;
|
|
/* 027ECC88 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 027ECC8C */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027ECC8C */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 027ECC90 */ _t6 = cpu->r[1] + 0x00000024u;
|
|
/* 027ECC90 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 027ECC94 */ _t7 = cpu->r[3] + 0x00000030u;
|
|
/* 027ECC94 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 027ECC98 */ _t8 = cpu->r[12] + 0x0000001Cu;
|
|
/* 027ECC98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 027ECC9C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 027ECCA0 */ cpu->r[30] = cpu->r[4];
|
|
/* 027ECCA4 */ cpu->r[4] = cpu->r[31];
|
|
/* 027ECCA8 */ Gambit_fn_027EE8F4(cpu);
|
|
/* 027ECCAC */ _t9 = cpu->r[30] + 0x00000000u;
|
|
/* 027ECCAC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t9);
|
|
/* 027ECCB0 */ _t10 = cpu->r[30] + 0x00000004u;
|
|
/* 027ECCB0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t10);
|
|
/* 027ECCB4 */ cpu->r[3] = cpu->r[31];
|
|
/* 027ECCB8 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 027ECCB8 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[13]);
|
|
/* 027ECCBC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 027ECCC0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 027ECCC0 */ rbrew_write_f32(cpu->mem, _t12, cpu->f[0]);
|
|
/* 027ECCC4 */ Gambit_fn_027EED68(cpu);
|
|
/* 027ECCC8 */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 027ECCC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 027ECCCC */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 027ECCCC */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 027ECCD0 */ cpu->lr = cpu->r[0];
|
|
/* 027ECCD4 */ _t15 = cpu->r[1] + 0x0000001Cu;
|
|
/* 027ECCD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 027ECCD8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 027ECCDC */ return;
|
|
}
|
|
|
|
// fn_02428710 @ 0x2428710
|
|
void Gambit_fn_02428710(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02428710: ; // 0x2428710
|
|
/* 02428710 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000002u);
|
|
/* 02428714 */ cpu->r[12] = cpu->r[3] + 0x00000058u;
|
|
/* 02428718 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428718 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02428718 */ if (_t1) goto L_0242871C; else goto L_02428724;
|
|
L_0242871C: ; // 0x242871c
|
|
/* 0242871C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02428720 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02428724: ; // 0x2428724
|
|
/* 02428724 */ _t2 = cpu->r[12] + 0x00000000u;
|
|
/* 02428724 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02428728 */ return;
|
|
}
|
|
|
|
// fn_0242872C @ 0x242872c
|
|
void Gambit_fn_0242872C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_0242872C: ; // 0x242872c
|
|
/* 0242872C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000002u);
|
|
/* 02428730 */ cpu->r[12] = cpu->r[3] + 0x00000060u;
|
|
/* 02428734 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428734 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02428734 */ if (_t1) goto L_02428738; else goto L_02428740;
|
|
L_02428738: ; // 0x2428738
|
|
/* 02428738 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0242873C */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02428740: ; // 0x2428740
|
|
/* 02428740 */ _t2 = cpu->r[12] + 0x00000000u;
|
|
/* 02428740 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02428744 */ return;
|
|
}
|
|
|
|
// fn_02428748 @ 0x2428748
|
|
void Gambit_fn_02428748(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02428748: ; // 0x2428748
|
|
/* 02428748 */ cpu->r[0] = cpu->lr;
|
|
/* 0242874C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0242874C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02428750 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02428750 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02428750 */ cpu->r[1] = _t1;
|
|
/* 02428754 */ Gambit_fn_0242872C(cpu);
|
|
/* 02428758 */ cpu->r[12] = cpu->r[3];
|
|
/* 02428758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0242875C */ cpu->r[3] = 0x00000001u;
|
|
/* 02428760 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428760 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02428760 */ if (_t3) goto L_02428774; else goto L_02428764;
|
|
L_02428764: ; // 0x2428764
|
|
/* 02428764 */ _t4 = cpu->r[12] + 0x00000118u;
|
|
/* 02428764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02428768 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0242876C */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02428770 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
L_02428774: ; // 0x2428774
|
|
/* 02428774 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02428778 */ cpu->lr = cpu->r[0];
|
|
/* 0242877C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02428780 */ return;
|
|
}
|
|
|
|
// fn_02428750 @ 0x2428750
|
|
void Gambit_fn_02428750(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02428750: ; // 0x2428750
|
|
/* 02428750 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02428750 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428750 */ cpu->r[1] = _t0;
|
|
/* 02428754 */ Gambit_fn_0242872C(cpu);
|
|
/* 02428758 */ cpu->r[12] = cpu->r[3];
|
|
/* 02428758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 0242875C */ cpu->r[3] = 0x00000001u;
|
|
/* 02428760 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428760 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02428760 */ if (_t2) goto L_02428774; else goto L_02428764;
|
|
L_02428764: ; // 0x2428764
|
|
/* 02428764 */ _t3 = cpu->r[12] + 0x00000118u;
|
|
/* 02428764 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02428768 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 0242876C */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02428770 */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
L_02428774: ; // 0x2428774
|
|
/* 02428774 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02428778 */ cpu->lr = cpu->r[0];
|
|
/* 0242877C */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02428780 */ return;
|
|
}
|
|
|
|
// fn_02428784 @ 0x2428784
|
|
void Gambit_fn_02428784(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_02428784: ; // 0x2428784
|
|
/* 02428784 */ cpu->r[0] = cpu->lr;
|
|
/* 02428788 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02428788 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428788 */ cpu->r[1] = _t0;
|
|
/* 0242878C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0242878C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02428790 */ cpu->r[31] = cpu->r[4];
|
|
/* 02428794 */ cpu->r[4] = cpu->r[5];
|
|
/* 02428798 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428798 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0242879C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0242879C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 024287A0 */ cpu->r[8] = cpu->r[3];
|
|
/* 024287A4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024287A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024287A8 */ Gambit_fn_02428748(cpu);
|
|
/* 024287AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024287B0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024287B0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024287B0 */ if (_t6) goto L_02428834; else goto L_024287B4;
|
|
L_024287B4: ; // 0x24287b4
|
|
/* 024287B4 */ cpu->r[3] = cpu->r[8];
|
|
/* 024287B8 */ Gambit_fn_02428710(cpu);
|
|
/* 024287BC */ cpu->r[29] = cpu->r[3];
|
|
/* 024287BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024287C0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024287C0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024287C0 */ if (_t8) goto L_02428834; else goto L_024287C4;
|
|
L_024287C4: ; // 0x24287c4
|
|
/* 024287C4 */ cpu->r[11] = 0x101C0000u;
|
|
/* 024287C8 */ _t9 = cpu->r[11] + 0x00006000u;
|
|
/* 024287C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024287CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024287D0 */ _t10 = cpu->r[8] + 0x00000028u;
|
|
/* 024287D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024287D4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024287D4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024287D4 */ if (_t12) goto L_02428810; else goto L_024287D8;
|
|
L_024287D8: ; // 0x24287d8
|
|
/* 024287D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000002u);
|
|
/* 024287DC */ cpu->r[10] = cpu->r[11] + 0x00000298u;
|
|
/* 024287E0 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024287E0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024287E0 */ if (_t14) goto L_024287E4; else goto L_024287EC;
|
|
L_024287E4: ; // 0x24287e4
|
|
/* 024287E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024287E8 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_024287EC: ; // 0x24287ec
|
|
/* 024287EC */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 024287EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024287F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024287F4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024287F4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024287F4 */ if (_t17) goto L_02428810; else goto L_024287F8;
|
|
L_024287F8: ; // 0x24287f8
|
|
/* 024287F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000002u);
|
|
/* 024287FC */ cpu->r[12] = cpu->r[11] + 0x00000298u;
|
|
/* 02428800 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428800 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02428800 */ if (_t19) goto L_02428804; else goto L_0242880C;
|
|
L_02428804: ; // 0x2428804
|
|
/* 02428804 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02428808 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0242880C: ; // 0x242880c
|
|
/* 0242880C */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 0242880C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
L_02428810: ; // 0x2428810
|
|
/* 02428810 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428814 */ Gambit_fn_027ECBB4(cpu);
|
|
/* 02428818 */ cpu->r[5] = 0x00000001u;
|
|
/* 0242881C */ cpu->r[4] = cpu->r[30];
|
|
/* 02428820 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428824 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02428828 */ cpu->r[3] = cpu->r[29];
|
|
/* 0242882C */ cpu->r[4] = cpu->r[31];
|
|
/* 02428830 */ Gambit_fn_02429934(cpu);
|
|
L_02428834: ; // 0x2428834
|
|
/* 02428834 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428834 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02428838 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0242883C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 0242883C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02428840 */ cpu->lr = cpu->r[0];
|
|
/* 02428844 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02428844 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02428848 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0242884C */ return;
|
|
}
|
|
|
|
// fn_02428788 @ 0x2428788
|
|
void Gambit_fn_02428788(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24;
|
|
|
|
L_02428788: ; // 0x2428788
|
|
/* 02428788 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02428788 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428788 */ cpu->r[1] = _t0;
|
|
/* 0242878C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0242878C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02428790 */ cpu->r[31] = cpu->r[4];
|
|
/* 02428794 */ cpu->r[4] = cpu->r[5];
|
|
/* 02428798 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428798 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0242879C */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 0242879C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 024287A0 */ cpu->r[8] = cpu->r[3];
|
|
/* 024287A4 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024287A4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024287A8 */ Gambit_fn_02428748(cpu);
|
|
/* 024287AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024287B0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024287B0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024287B0 */ if (_t6) goto L_02428834; else goto L_024287B4;
|
|
L_024287B4: ; // 0x24287b4
|
|
/* 024287B4 */ cpu->r[3] = cpu->r[8];
|
|
/* 024287B8 */ Gambit_fn_02428710(cpu);
|
|
/* 024287BC */ cpu->r[29] = cpu->r[3];
|
|
/* 024287BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024287C0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024287C0 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024287C0 */ if (_t8) goto L_02428834; else goto L_024287C4;
|
|
L_024287C4: ; // 0x24287c4
|
|
/* 024287C4 */ cpu->r[11] = 0x101C0000u;
|
|
/* 024287C8 */ _t9 = cpu->r[11] + 0x00006000u;
|
|
/* 024287C8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024287CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024287D0 */ _t10 = cpu->r[8] + 0x00000028u;
|
|
/* 024287D0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024287D4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024287D4 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024287D4 */ if (_t12) goto L_02428810; else goto L_024287D8;
|
|
L_024287D8: ; // 0x24287d8
|
|
/* 024287D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000002u);
|
|
/* 024287DC */ cpu->r[10] = cpu->r[11] + 0x00000298u;
|
|
/* 024287E0 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024287E0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024287E0 */ if (_t14) goto L_024287E4; else goto L_024287EC;
|
|
L_024287E4: ; // 0x24287e4
|
|
/* 024287E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024287E8 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_024287EC: ; // 0x24287ec
|
|
/* 024287EC */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 024287EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024287F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024287F4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024287F4 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024287F4 */ if (_t17) goto L_02428810; else goto L_024287F8;
|
|
L_024287F8: ; // 0x24287f8
|
|
/* 024287F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000002u);
|
|
/* 024287FC */ cpu->r[12] = cpu->r[11] + 0x00000298u;
|
|
/* 02428800 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428800 */ _t19 = _t18 & 0x00000001u;
|
|
/* 02428800 */ if (_t19) goto L_02428804; else goto L_0242880C;
|
|
L_02428804: ; // 0x2428804
|
|
/* 02428804 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02428808 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0242880C: ; // 0x242880c
|
|
/* 0242880C */ _t20 = cpu->r[12] + 0x00000000u;
|
|
/* 0242880C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
L_02428810: ; // 0x2428810
|
|
/* 02428810 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428814 */ Gambit_fn_027ECBB4(cpu);
|
|
/* 02428818 */ cpu->r[5] = 0x00000001u;
|
|
/* 0242881C */ cpu->r[4] = cpu->r[30];
|
|
/* 02428820 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428824 */ Gambit_fn_027ECB34(cpu);
|
|
/* 02428828 */ cpu->r[3] = cpu->r[29];
|
|
/* 0242882C */ cpu->r[4] = cpu->r[31];
|
|
/* 02428830 */ Gambit_fn_02429934(cpu);
|
|
L_02428834: ; // 0x2428834
|
|
/* 02428834 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428834 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02428838 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0242883C */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 0242883C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02428840 */ cpu->lr = cpu->r[0];
|
|
/* 02428844 */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02428844 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02428848 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 0242884C */ return;
|
|
}
|
|
|
|
// fn_02428850 @ 0x2428850
|
|
void Gambit_fn_02428850(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02428850: ; // 0x2428850
|
|
/* 02428850 */ cpu->r[0] = cpu->lr;
|
|
/* 02428854 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02428854 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02428858 */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02428858 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02428858 */ cpu->r[1] = _t1;
|
|
/* 0242885C */ Gambit_fn_02428710(cpu);
|
|
/* 02428860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428864 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428864 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02428864 */ if (_t3) goto L_02428878; else goto L_02428868;
|
|
L_02428868: ; // 0x2428868
|
|
/* 02428868 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02428868 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0242886C */ _t5 = cpu->r[12] + 0x00000094u;
|
|
/* 0242886C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02428870 */ cpu->ctr = cpu->r[0];
|
|
/* 02428874 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02428878: ; // 0x2428878
|
|
/* 02428878 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0242887C */ cpu->lr = cpu->r[0];
|
|
/* 02428880 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02428884 */ return;
|
|
}
|
|
|
|
// fn_02428858 @ 0x2428858
|
|
void Gambit_fn_02428858(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02428858: ; // 0x2428858
|
|
/* 02428858 */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 02428858 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428858 */ cpu->r[1] = _t0;
|
|
/* 0242885C */ Gambit_fn_02428710(cpu);
|
|
/* 02428860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428864 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428864 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02428864 */ if (_t2) goto L_02428878; else goto L_02428868;
|
|
L_02428868: ; // 0x2428868
|
|
/* 02428868 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 02428868 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0242886C */ _t4 = cpu->r[12] + 0x00000094u;
|
|
/* 0242886C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02428870 */ cpu->ctr = cpu->r[0];
|
|
/* 02428874 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02428878: ; // 0x2428878
|
|
/* 02428878 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 0242887C */ cpu->lr = cpu->r[0];
|
|
/* 02428880 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02428884 */ return;
|
|
}
|
|
|
|
// fn_02428888 @ 0x2428888
|
|
void Gambit_fn_02428888(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02428888: ; // 0x2428888
|
|
/* 02428888 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000002u);
|
|
/* 0242888C */ cpu->r[12] = cpu->r[3] + 0x00000058u;
|
|
/* 02428890 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428890 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02428890 */ if (_t1) goto L_02428894; else goto L_0242889C;
|
|
L_02428894: ; // 0x2428894
|
|
/* 02428894 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02428898 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_0242889C: ; // 0x242889c
|
|
/* 0242889C */ _t2 = cpu->r[12] + 0x00000000u;
|
|
/* 0242889C */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024288A0 */ return;
|
|
}
|
|
|
|
// fn_024288A4 @ 0x24288a4
|
|
void Gambit_fn_024288A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_024288A4: ; // 0x24288a4
|
|
/* 024288A4 */ cpu->r[0] = cpu->lr;
|
|
/* 024288A8 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024288A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024288AC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024288AC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024288AC */ cpu->r[1] = _t1;
|
|
/* 024288B0 */ Gambit_fn_02428888(cpu);
|
|
/* 024288B4 */ cpu->r[12] = cpu->r[3];
|
|
/* 024288B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024288B8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024288BC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024288BC */ _t3 = _t2 & 0x00000001u;
|
|
/* 024288BC */ if (_t3) goto L_024288D0; else goto L_024288C0;
|
|
L_024288C0: ; // 0x24288c0
|
|
/* 024288C0 */ _t4 = cpu->r[12] + 0x00000118u;
|
|
/* 024288C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024288C4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024288C8 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024288CC */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
L_024288D0: ; // 0x24288d0
|
|
/* 024288D0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024288D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024288D4 */ cpu->lr = cpu->r[0];
|
|
/* 024288D8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024288DC */ return;
|
|
}
|
|
|
|
// fn_024288AC @ 0x24288ac
|
|
void Gambit_fn_024288AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_024288AC: ; // 0x24288ac
|
|
/* 024288AC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024288AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024288AC */ cpu->r[1] = _t0;
|
|
/* 024288B0 */ Gambit_fn_02428888(cpu);
|
|
/* 024288B4 */ cpu->r[12] = cpu->r[3];
|
|
/* 024288B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024288B8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024288BC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024288BC */ _t2 = _t1 & 0x00000001u;
|
|
/* 024288BC */ if (_t2) goto L_024288D0; else goto L_024288C0;
|
|
L_024288C0: ; // 0x24288c0
|
|
/* 024288C0 */ _t3 = cpu->r[12] + 0x00000118u;
|
|
/* 024288C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024288C4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024288C8 */ cpu->r[0] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 024288CC */ cpu->r[3] = cpu->r[12] - cpu->r[0];
|
|
L_024288D0: ; // 0x24288d0
|
|
/* 024288D0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024288D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024288D4 */ cpu->lr = cpu->r[0];
|
|
/* 024288D8 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 024288DC */ return;
|
|
}
|
|
|
|
// fn_024288E0 @ 0x24288e0
|
|
void Gambit_fn_024288E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_024288E0: ; // 0x24288e0
|
|
/* 024288E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x00000002u);
|
|
/* 024288E4 */ cpu->r[12] = cpu->r[3] + 0x00000060u;
|
|
/* 024288E8 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024288E8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024288E8 */ if (_t1) goto L_024288EC; else goto L_024288F4;
|
|
L_024288EC: ; // 0x24288ec
|
|
/* 024288EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 024288F0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_024288F4: ; // 0x24288f4
|
|
/* 024288F4 */ _t2 = cpu->r[12] + 0x00000000u;
|
|
/* 024288F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024288F8 */ return;
|
|
}
|
|
|
|
// fn_024288FC @ 0x24288fc
|
|
void Gambit_fn_024288FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024288FC: ; // 0x24288fc
|
|
/* 024288FC */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024288FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024288FC */ cpu->r[1] = _t0;
|
|
/* 02428900 */ cpu->r[0] = cpu->lr;
|
|
/* 02428904 */ /* nop */
|
|
/* 02428908 */ cpu->r[31] = cpu->r[5];
|
|
/* 0242890C */ cpu->r[30] = cpu->r[4];
|
|
/* 02428910 */ cpu->r[4] = cpu->r[31];
|
|
/* 02428914 */ cpu->r[28] = cpu->r[3];
|
|
/* 02428918 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02428918 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 0242891C */ Gambit_fn_024288E0(cpu);
|
|
/* 02428920 */ cpu->r[27] = cpu->r[3];
|
|
/* 02428920 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02428924 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428924 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02428924 */ if (_t3) goto L_024289BC; else goto L_02428928;
|
|
L_02428928: ; // 0x2428928
|
|
/* 02428928 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0242892C */ _t4 = cpu->r[12] + 0x00006000u;
|
|
/* 0242892C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02428930 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02428934 */ _t5 = cpu->r[28] + 0x00000028u;
|
|
/* 02428934 */ cpu->r[29] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02428938 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428938 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02428938 */ if (_t7) goto L_02428974; else goto L_0242893C;
|
|
L_0242893C: ; // 0x242893c
|
|
/* 0242893C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000002u);
|
|
/* 02428940 */ cpu->r[10] = cpu->r[12] + 0x00000298u;
|
|
/* 02428944 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428944 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02428944 */ if (_t9) goto L_02428948; else goto L_02428950;
|
|
L_02428948: ; // 0x2428948
|
|
/* 02428948 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0242894C */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_02428950: ; // 0x2428950
|
|
/* 02428950 */ _t10 = cpu->r[10] + 0x00000000u;
|
|
/* 02428950 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02428954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02428958 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428958 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02428958 */ if (_t12) goto L_02428974; else goto L_0242895C;
|
|
L_0242895C: ; // 0x242895c
|
|
/* 0242895C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000002u);
|
|
/* 02428960 */ cpu->r[11] = cpu->r[12] + 0x00000298u;
|
|
/* 02428964 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428964 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02428964 */ if (_t14) goto L_02428968; else goto L_02428970;
|
|
L_02428968: ; // 0x2428968
|
|
/* 02428968 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 0242896C */ cpu->r[11] = cpu->r[11] + cpu->r[0];
|
|
L_02428970: ; // 0x2428970
|
|
/* 02428970 */ _t15 = cpu->r[11] + 0x00000000u;
|
|
/* 02428970 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15);
|
|
L_02428974: ; // 0x2428974
|
|
/* 02428974 */ cpu->r[3] = cpu->r[27];
|
|
/* 02428978 */ Gambit_fn_027ECBB4(cpu);
|
|
/* 0242897C */ cpu->r[5] = 0x00000001u;
|
|
/* 02428980 */ cpu->r[4] = cpu->r[29];
|
|
/* 02428984 */ cpu->r[3] = cpu->r[27];
|
|
/* 02428988 */ Gambit_fn_027ECB34(cpu);
|
|
/* 0242898C */ cpu->r[5] = cpu->r[31];
|
|
/* 02428990 */ cpu->r[4] = cpu->r[30];
|
|
/* 02428994 */ cpu->r[3] = cpu->r[27];
|
|
/* 02428998 */ Gambit_fn_02428BCC(cpu);
|
|
/* 0242899C */ cpu->r[3] = cpu->r[28];
|
|
/* 024289A0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024289A4 */ Gambit_fn_024288A4(cpu);
|
|
/* 024289A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024289AC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024289AC */ _t17 = _t16 & 0x00000001u;
|
|
/* 024289AC */ if (_t17) goto L_024289B0; else goto L_024289BC;
|
|
L_024289B0: ; // 0x24289b0
|
|
/* 024289B0 */ cpu->r[3] = cpu->r[28];
|
|
/* 024289B4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024289B8 */ Gambit_fn_02428850(cpu);
|
|
L_024289BC: ; // 0x24289bc
|
|
/* 024289BC */ /* nop */
|
|
/* 024289C0 */ _t18 = cpu->r[1] + 0x00000024u;
|
|
/* 024289C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024289C4 */ cpu->lr = cpu->r[0];
|
|
/* 024289C8 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024289CC */ return;
|
|
}
|
|
|
|
// fn_024289D0 @ 0x24289d0
|
|
void Gambit_fn_024289D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_024289D0: ; // 0x24289d0
|
|
/* 024289D0 */ cpu->r[0] = cpu->lr;
|
|
/* 024289D4 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 024289D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024289D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024289DC */ _t1 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024289DC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024289DC */ cpu->r[1] = _t1;
|
|
/* 024289E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024289E0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024289E0 */ if (_t3) goto L_024289E4; else goto L_024289F4;
|
|
L_024289E4: ; // 0x24289e4
|
|
/* 024289E4 */ cpu->r[3] = 0x00000010u;
|
|
/* 024289E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024289EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024289F0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024289F0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024289F0 */ if (_t5) goto L_02428A20; else goto L_024289F4;
|
|
L_024289F4: ; // 0x24289f4
|
|
/* 024289F4 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024289F8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 024289FC */ cpu->r[10] = 0x00000002u;
|
|
/* 02428A00 */ cpu->r[9] = cpu->r[9] + 0xFFFF8C98u;
|
|
/* 02428A04 */ cpu->r[12] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 02428A08 */ cpu->ctr = cpu->r[10];
|
|
/* 02428A0C */ _t6 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02428A0C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]);
|
|
L_02428A10: ; // 0x2428a10
|
|
/* 02428A10 */ _t7 = cpu->r[12] + 0x00000004u;
|
|
/* 02428A10 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02428A10 */ cpu->r[12] = _t7;
|
|
/* 02428A14 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02428A14 */ _t8 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02428A14 */ _t9 = _t8 >> (0x00000002u & 31u);
|
|
/* 02428A14 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02428A14 */ if (_t10) goto L_02428A10; else goto L_02428A18;
|
|
L_02428A18: ; // 0x2428a18
|
|
/* 02428A18 */ cpu->r[0] = 0x00000000u;
|
|
/* 02428A1C */ _t11 = cpu->r[3] + 0x00000008u;
|
|
/* 02428A1C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02428A20: ; // 0x2428a20
|
|
/* 02428A20 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428A20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02428A24 */ cpu->lr = cpu->r[0];
|
|
/* 02428A28 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02428A2C */ return;
|
|
}
|
|
|
|
// fn_024289DC @ 0x24289dc
|
|
void Gambit_fn_024289DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024289DC: ; // 0x24289dc
|
|
/* 024289DC */ _t0 = cpu->r[1] + 0xFFFFFFF8u;
|
|
/* 024289DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024289DC */ cpu->r[1] = _t0;
|
|
/* 024289E0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024289E0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024289E0 */ if (_t2) goto L_024289E4; else goto L_024289F4;
|
|
L_024289E4: ; // 0x24289e4
|
|
/* 024289E4 */ cpu->r[3] = 0x00000010u;
|
|
/* 024289E8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024289EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024289F0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024289F0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024289F0 */ if (_t4) goto L_02428A20; else goto L_024289F4;
|
|
L_024289F4: ; // 0x24289f4
|
|
/* 024289F4 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024289F8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 024289FC */ cpu->r[10] = 0x00000002u;
|
|
/* 02428A00 */ cpu->r[9] = cpu->r[9] + 0xFFFF8C98u;
|
|
/* 02428A04 */ cpu->r[12] = cpu->r[3] + 0xFFFFFFFCu;
|
|
/* 02428A08 */ cpu->ctr = cpu->r[10];
|
|
/* 02428A0C */ _t5 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02428A0C */ rbrew_write32(cpu->mem, _t5, cpu->r[9]);
|
|
L_02428A10: ; // 0x2428a10
|
|
/* 02428A10 */ _t6 = cpu->r[12] + 0x00000004u;
|
|
/* 02428A10 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02428A10 */ cpu->r[12] = _t6;
|
|
/* 02428A14 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02428A14 */ _t7 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02428A14 */ _t8 = _t7 >> (0x00000002u & 31u);
|
|
/* 02428A14 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02428A14 */ if (_t9) goto L_02428A10; else goto L_02428A18;
|
|
L_02428A18: ; // 0x2428a18
|
|
/* 02428A18 */ cpu->r[0] = 0x00000000u;
|
|
/* 02428A1C */ _t10 = cpu->r[3] + 0x00000008u;
|
|
/* 02428A1C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
L_02428A20: ; // 0x2428a20
|
|
/* 02428A20 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428A20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02428A24 */ cpu->lr = cpu->r[0];
|
|
/* 02428A28 */ cpu->r[1] = cpu->r[1] + 0x00000008u;
|
|
/* 02428A2C */ return;
|
|
}
|
|
|
|
// fn_02428A30 @ 0x2428a30
|
|
void Gambit_fn_02428A30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02428A30: ; // 0x2428a30
|
|
/* 02428A30 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02428A34 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02428A34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428A34 */ cpu->r[1] = _t0;
|
|
/* 02428A38 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02428A3C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02428A40 */ _t1 = cpu->r[10] + 0x00007184u;
|
|
/* 02428A40 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02428A40 */ cpu->r[10] = _t1;
|
|
/* 02428A44 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02428A48 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02428A48 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02428A4C */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02428A50 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02428A54 */ _t3 = cpu->r[7] + 0x00007194u;
|
|
/* 02428A54 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02428A54 */ cpu->r[7] = _t3;
|
|
/* 02428A58 */ _t4 = cpu->r[8] + 0x0000718Cu;
|
|
/* 02428A58 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02428A58 */ cpu->r[8] = _t4;
|
|
/* 02428A5C */ cpu->r[0] = 0x00000002u;
|
|
/* 02428A60 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02428A60 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02428A64 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02428A68 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02428A68 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02428A6C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02428A70 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02428A70 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02428A74 */ _t8 = cpu->r[8] + 0x000071A4u;
|
|
/* 02428A74 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02428A74 */ cpu->r[8] = _t8;
|
|
/* 02428A78 */ _t9 = cpu->r[12] + 0x0000719Cu;
|
|
/* 02428A78 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02428A78 */ cpu->r[12] = _t9;
|
|
/* 02428A7C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02428A7C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02428A80 */ cpu->r[0] = 0x00000004u;
|
|
/* 02428A84 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02428A84 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02428A88 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02428A8C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02428A8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02428A90 */ _t13 = cpu->r[11] + 0x000071ACu;
|
|
/* 02428A90 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02428A94 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02428A98 */ return;
|
|
}
|
|
|
|
// fn_02428A34 @ 0x2428a34
|
|
void Gambit_fn_02428A34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02428A34: ; // 0x2428a34
|
|
/* 02428A34 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02428A34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428A34 */ cpu->r[1] = _t0;
|
|
/* 02428A38 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02428A3C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02428A40 */ _t1 = cpu->r[10] + 0x00007184u;
|
|
/* 02428A40 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02428A40 */ cpu->r[10] = _t1;
|
|
/* 02428A44 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02428A48 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02428A48 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02428A4C */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02428A50 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02428A54 */ _t3 = cpu->r[7] + 0x00007194u;
|
|
/* 02428A54 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02428A54 */ cpu->r[7] = _t3;
|
|
/* 02428A58 */ _t4 = cpu->r[8] + 0x0000718Cu;
|
|
/* 02428A58 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02428A58 */ cpu->r[8] = _t4;
|
|
/* 02428A5C */ cpu->r[0] = 0x00000002u;
|
|
/* 02428A60 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02428A60 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02428A64 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02428A68 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02428A68 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02428A6C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02428A70 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02428A70 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02428A74 */ _t8 = cpu->r[8] + 0x000071A4u;
|
|
/* 02428A74 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02428A74 */ cpu->r[8] = _t8;
|
|
/* 02428A78 */ _t9 = cpu->r[12] + 0x0000719Cu;
|
|
/* 02428A78 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02428A78 */ cpu->r[12] = _t9;
|
|
/* 02428A7C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02428A7C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02428A80 */ cpu->r[0] = 0x00000004u;
|
|
/* 02428A84 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02428A84 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02428A88 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02428A8C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02428A8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02428A90 */ _t13 = cpu->r[11] + 0x000071ACu;
|
|
/* 02428A90 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02428A94 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02428A98 */ return;
|
|
}
|
|
|
|
// fn_02428A9C @ 0x2428a9c
|
|
void Gambit_fn_02428A9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02428A9C: ; // 0x2428a9c
|
|
/* 02428A9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428AA0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428AA0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02428AA0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02428AA0 */ goto L_02428AA4;
|
|
L_02428AA4: ; // 0x2428aa4
|
|
/* 02428AA4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02428AA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02428AA8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428AA8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02428AA8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02428AA8 */ goto L_02428AAC;
|
|
L_02428AAC: ; // 0x2428aac
|
|
/* 02428AAC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02428AB0 @ 0x2428ab0
|
|
void Gambit_fn_02428AB0(CPUState* cpu) {
|
|
L_02428AB0: ; // 0x2428ab0
|
|
/* 02428AB0 */ return;
|
|
}
|
|
|
|
// fn_02428AB4 @ 0x2428ab4
|
|
void Gambit_fn_02428AB4(CPUState* cpu) {
|
|
L_02428AB4: ; // 0x2428ab4
|
|
/* 02428AB4 */ return;
|
|
}
|
|
|
|
// fn_02428AB8 @ 0x2428ab8
|
|
void Gambit_fn_02428AB8(CPUState* cpu) {
|
|
L_02428AB8: ; // 0x2428ab8
|
|
/* 02428AB8 */ return;
|
|
}
|
|
|
|
// fn_02428ABC @ 0x2428abc
|
|
void Gambit_fn_02428ABC(CPUState* cpu) {
|
|
L_02428ABC: ; // 0x2428abc
|
|
/* 02428ABC */ return;
|
|
}
|
|
|
|
// fn_02428AC0 @ 0x2428ac0
|
|
void Gambit_fn_02428AC0(CPUState* cpu) {
|
|
L_02428AC0: ; // 0x2428ac0
|
|
/* 02428AC0 */ return;
|
|
}
|
|
|
|
// fn_02428AC4 @ 0x2428ac4
|
|
void Gambit_fn_02428AC4(CPUState* cpu) {
|
|
L_02428AC4: ; // 0x2428ac4
|
|
/* 02428AC4 */ cpu->r[3] = 0x00000001u;
|
|
/* 02428AC8 */ return;
|
|
}
|
|
|
|
// fn_02428ACC @ 0x2428acc
|
|
void Gambit_fn_02428ACC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02428ACC: ; // 0x2428acc
|
|
/* 02428ACC */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 02428ACC */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 02428AD0 */ return;
|
|
}
|
|
|
|
// fn_02428AD4 @ 0x2428ad4
|
|
void Gambit_fn_02428AD4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02428AD4: ; // 0x2428ad4
|
|
/* 02428AD4 */ _t0 = cpu->r[3] + 0x00000014u;
|
|
/* 02428AD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428AD8 */ return;
|
|
}
|
|
|
|
// fn_02428ADC @ 0x2428adc
|
|
void Gambit_fn_02428ADC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02428ADC: ; // 0x2428adc
|
|
/* 02428ADC */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 02428ADC */ rbrew_write32(cpu->mem, _t0, cpu->r[4]);
|
|
/* 02428AE0 */ return;
|
|
}
|
|
|
|
// fn_02428AE4 @ 0x2428ae4
|
|
void Gambit_fn_02428AE4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02428AE4: ; // 0x2428ae4
|
|
/* 02428AE4 */ _t0 = cpu->r[3] + 0x00000024u;
|
|
/* 02428AE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428AE8 */ return;
|
|
}
|
|
|
|
// fn_02428AEC @ 0x2428aec
|
|
void Gambit_fn_02428AEC(CPUState* cpu) {
|
|
L_02428AEC: ; // 0x2428aec
|
|
/* 02428AEC */ return;
|
|
}
|
|
|
|
// fn_02428AF0 @ 0x2428af0
|
|
void Gambit_fn_02428AF0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02428AF0: ; // 0x2428af0
|
|
/* 02428AF0 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02428AF0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02428AF4 */ return;
|
|
}
|
|
|
|
// fn_02428AF8 @ 0x2428af8
|
|
void Gambit_fn_02428AF8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02428AF8: ; // 0x2428af8
|
|
/* 02428AF8 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02428AFC */ goto L_02429194;
|
|
L_02429194: ; // 0x2429194
|
|
/* 02429194 */ cpu->r[0] = cpu->lr;
|
|
/* 02429198 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02429198 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429198 */ cpu->r[1] = _t0;
|
|
/* 0242919C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242919C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024291A0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024291A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024291A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024291A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024291A8 */ cpu->r[31] = cpu->r[4];
|
|
/* 024291AC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024291AC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024291B0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024291B0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024291B0 */ if (_t5) goto L_02429220; else goto L_024291B4;
|
|
L_024291B4: ; // 0x24291b4
|
|
/* 024291B4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024291B8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024291BC */ cpu->r[0] = cpu->r[0] + 0xFFFF9068u;
|
|
/* 024291C0 */ cpu->r[12] = cpu->r[12] + 0xFFFF9088u;
|
|
/* 024291C4 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024291C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024291C8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024291CC */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 024291CC */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024291D0 */ cpu->r[11] = cpu->r[11] + 0xFFFF9078u;
|
|
/* 024291D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024291D8 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024291D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024291DC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024291DC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024291DC */ if (_t10) goto L_02429210; else goto L_024291E0;
|
|
L_024291E0: ; // 0x24291e0
|
|
/* 024291E0 */ cpu->r[10] = 0x10010000u;
|
|
/* 024291E4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024291E8 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 024291EC */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 024291F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024291F4 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024291F4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024291F8 */ cpu->r[0] = 0x10010000u;
|
|
/* 024291FC */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024291FC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02429200 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02429204 */ cpu->r[4] = 0x00000000u;
|
|
/* 02429208 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02429208 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0242920C */ Gambit_fn_02068798(cpu);
|
|
L_02429210: ; // 0x2429210
|
|
/* 02429210 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02429210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02429214 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429214 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02429214 */ if (_t15) goto L_02429220; else goto L_02429218;
|
|
L_02429218: ; // 0x2429218
|
|
/* 02429218 */ cpu->r[3] = cpu->r[30];
|
|
/* 0242921C */ Gambit_fn_02801BB0(cpu);
|
|
L_02429220: ; // 0x2429220
|
|
/* 02429220 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02429220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02429224 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02429224 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02429228 */ cpu->lr = cpu->r[0];
|
|
/* 0242922C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242922C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02429230 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02429234 */ return;
|
|
}
|
|
|
|
// fn_02428B00 @ 0x2428b00
|
|
void Gambit_fn_02428B00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_02428B00: ; // 0x2428b00
|
|
/* 02428B00 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02428B04 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02428B08 @ 0x2428b08
|
|
void Gambit_fn_02428B08(CPUState* cpu) {
|
|
L_02428B08: ; // 0x2428b08
|
|
/* 02428B08 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02428B0C */ goto L_02429238;
|
|
L_02429238: ; // 0x2429238
|
|
/* 02429238 */ return;
|
|
}
|
|
|
|
// fn_02428B10 @ 0x2428b10
|
|
void Gambit_fn_02428B10(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02428B10: ; // 0x2428b10
|
|
/* 02428B10 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02428B14 */ goto L_0242923C;
|
|
L_0242923C: ; // 0x242923c
|
|
/* 0242923C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0242923C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02429240 */ return;
|
|
}
|
|
|
|
// fn_02428B18 @ 0x2428b18
|
|
void Gambit_fn_02428B18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_02428B18: ; // 0x2428b18
|
|
/* 02428B18 */ cpu->r[0] = cpu->lr;
|
|
/* 02428B1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02428B1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428B1C */ cpu->r[1] = _t0;
|
|
/* 02428B20 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428B20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02428B24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02428B24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02428B28 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02428B28 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02428B2C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428B2C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02428B2C */ if (_t4) goto L_02428B30; else goto L_02428B40;
|
|
L_02428B30: ; // 0x2428b30
|
|
/* 02428B30 */ cpu->r[3] = 0x00000234u;
|
|
/* 02428B34 */ Gambit_fn_02801A78(cpu);
|
|
/* 02428B38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02428B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02428B3C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428B3C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02428B3C */ if (_t6) goto L_02428BB4; else goto L_02428B40;
|
|
L_02428B40: ; // 0x2428b40
|
|
/* 02428B40 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02428B44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02428B48 */ cpu->r[5] = 0x00000005u;
|
|
/* 02428B4C */ cpu->r[4] = cpu->r[4] + 0xFFFF8DF8u;
|
|
/* 02428B50 */ cpu->r[6] = 0x00000000u;
|
|
/* 02428B54 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02428B58 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02428B5C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02428B60 */ _t7 = cpu->r[12] + 0xFFFF8DF4u;
|
|
/* 02428B60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02428B64 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02428B68 */ cpu->r[8] = cpu->r[8] + 0xFFFF9068u;
|
|
/* 02428B6C */ cpu->r[0] = 0x00000000u;
|
|
/* 02428B70 */ cpu->r[12] = cpu->r[12] + 0xFFFF8E88u;
|
|
/* 02428B74 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02428B74 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02428B78 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02428B7C */ _t9 = cpu->r[31] + 0x00000220u;
|
|
/* 02428B7C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02428B80 */ cpu->r[10] = cpu->r[10] + 0xFFFF9088u;
|
|
/* 02428B84 */ _t10 = cpu->r[31] + 0x00000224u;
|
|
/* 02428B84 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02428B88 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02428B8C */ _t11 = cpu->r[31] + 0x000001C8u;
|
|
/* 02428B8C */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02428B90 */ cpu->r[9] = cpu->r[9] + 0xFFFF9078u;
|
|
/* 02428B94 */ cpu->r[11] = 0x00000003u;
|
|
/* 02428B98 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 02428B98 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02428B9C */ cpu->r[10] = cpu->r[31] + 0x00000224u;
|
|
/* 02428BA0 */ _t13 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02428BA0 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02428BA4 */ cpu->ctr = cpu->r[11];
|
|
/* 02428BA8 */ _t14 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02428BA8 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
L_02428BAC: ; // 0x2428bac
|
|
/* 02428BAC */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 02428BAC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02428BAC */ cpu->r[10] = _t15;
|
|
/* 02428BB0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02428BB0 */ _t16 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02428BB0 */ _t17 = _t16 >> (0x00000002u & 31u);
|
|
/* 02428BB0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02428BB0 */ if (_t18) goto L_02428BAC; else goto L_02428BB4;
|
|
L_02428BB4: ; // 0x2428bb4
|
|
/* 02428BB4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02428BB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02428BB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02428BBC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428BBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02428BC0 */ cpu->lr = cpu->r[0];
|
|
/* 02428BC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02428BC8 */ return;
|
|
}
|
|
|
|
// fn_02428B1C @ 0x2428b1c
|
|
void Gambit_fn_02428B1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_02428B1C: ; // 0x2428b1c
|
|
/* 02428B1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02428B1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428B1C */ cpu->r[1] = _t0;
|
|
/* 02428B20 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428B20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02428B24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02428B24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02428B28 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02428B28 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02428B2C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428B2C */ _t4 = _t3 & 0x00000001u;
|
|
/* 02428B2C */ if (_t4) goto L_02428B30; else goto L_02428B40;
|
|
L_02428B30: ; // 0x2428b30
|
|
/* 02428B30 */ cpu->r[3] = 0x00000234u;
|
|
/* 02428B34 */ Gambit_fn_02801A78(cpu);
|
|
/* 02428B38 */ cpu->r[31] = cpu->r[3];
|
|
/* 02428B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02428B3C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428B3C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02428B3C */ if (_t6) goto L_02428BB4; else goto L_02428B40;
|
|
L_02428B40: ; // 0x2428b40
|
|
/* 02428B40 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02428B44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02428B48 */ cpu->r[5] = 0x00000005u;
|
|
/* 02428B4C */ cpu->r[4] = cpu->r[4] + 0xFFFF8DF8u;
|
|
/* 02428B50 */ cpu->r[6] = 0x00000000u;
|
|
/* 02428B54 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02428B58 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02428B5C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02428B60 */ _t7 = cpu->r[12] + 0xFFFF8DF4u;
|
|
/* 02428B60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02428B64 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02428B68 */ cpu->r[8] = cpu->r[8] + 0xFFFF9068u;
|
|
/* 02428B6C */ cpu->r[0] = 0x00000000u;
|
|
/* 02428B70 */ cpu->r[12] = cpu->r[12] + 0xFFFF8E88u;
|
|
/* 02428B74 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02428B74 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 02428B78 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02428B7C */ _t9 = cpu->r[31] + 0x00000220u;
|
|
/* 02428B7C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02428B80 */ cpu->r[10] = cpu->r[10] + 0xFFFF9088u;
|
|
/* 02428B84 */ _t10 = cpu->r[31] + 0x00000224u;
|
|
/* 02428B84 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]);
|
|
/* 02428B88 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02428B8C */ _t11 = cpu->r[31] + 0x000001C8u;
|
|
/* 02428B8C */ rbrew_write32(cpu->mem, _t11, cpu->r[10]);
|
|
/* 02428B90 */ cpu->r[9] = cpu->r[9] + 0xFFFF9078u;
|
|
/* 02428B94 */ cpu->r[11] = 0x00000003u;
|
|
/* 02428B98 */ _t12 = cpu->r[31] + 0x00000000u;
|
|
/* 02428B98 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02428B9C */ cpu->r[10] = cpu->r[31] + 0x00000224u;
|
|
/* 02428BA0 */ _t13 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02428BA0 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 02428BA4 */ cpu->ctr = cpu->r[11];
|
|
/* 02428BA8 */ _t14 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02428BA8 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
L_02428BAC: ; // 0x2428bac
|
|
/* 02428BAC */ _t15 = cpu->r[10] + 0x00000004u;
|
|
/* 02428BAC */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02428BAC */ cpu->r[10] = _t15;
|
|
/* 02428BB0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02428BB0 */ _t16 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02428BB0 */ _t17 = _t16 >> (0x00000002u & 31u);
|
|
/* 02428BB0 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02428BB0 */ if (_t18) goto L_02428BAC; else goto L_02428BB4;
|
|
L_02428BB4: ; // 0x2428bb4
|
|
/* 02428BB4 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02428BB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02428BB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02428BBC */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428BBC */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02428BC0 */ cpu->lr = cpu->r[0];
|
|
/* 02428BC4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02428BC8 */ return;
|
|
}
|
|
|
|
// fn_02428BCC @ 0x2428bcc
|
|
void Gambit_fn_02428BCC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106;
|
|
|
|
L_02428BCC: ; // 0x2428bcc
|
|
/* 02428BCC */ _t0 = cpu->r[1] + 0xFFFFFF80u;
|
|
/* 02428BCC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428BCC */ cpu->r[1] = _t0;
|
|
/* 02428BD0 */ /* nop */
|
|
/* 02428BD4 */ cpu->r[0] = cpu->lr;
|
|
/* 02428BD8 */ _t1 = cpu->r[1] + 0x00000060u;
|
|
/* 02428BD8 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[30]);
|
|
/* 02428BDC */ _t2 = cpu->r[1] + 0x00000050u;
|
|
/* 02428BDC */ rbrew_write_f64(cpu->mem, _t2, cpu->f[29]);
|
|
/* 02428BE0 */ /* nop */
|
|
/* 02428BE4 */ _t3 = cpu->r[1] + 0x00000084u;
|
|
/* 02428BE4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02428BE8 */ /* nop */
|
|
/* 02428BEC */ _t4 = cpu->r[1] + 0x00000068u;
|
|
/* 02428BEC */ rbrew_write_f32(cpu->mem, _t4, cpu->f[30]);
|
|
/* 02428BF0 */ _t5 = cpu->r[1] + 0x00000070u;
|
|
/* 02428BF0 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]);
|
|
/* 02428BF4 */ _t6 = cpu->r[1] + 0x00000058u;
|
|
/* 02428BF4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]);
|
|
/* 02428BF8 */ /* nop */
|
|
/* 02428BFC */ _t7 = cpu->r[1] + 0x00000078u;
|
|
/* 02428BFC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[31]);
|
|
/* 02428C00 */ _t8 = cpu->r[3] + 0x00000000u;
|
|
/* 02428C00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02428C04 */ cpu->r[30] = cpu->r[4];
|
|
/* 02428C08 */ _t9 = cpu->r[12] + 0x00000184u;
|
|
/* 02428C08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02428C0C */ cpu->ctr = cpu->r[4];
|
|
/* 02428C10 */ cpu->r[29] = cpu->r[3];
|
|
/* 02428C14 */ cpu->r[31] = cpu->r[5];
|
|
/* 02428C18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02428C1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428C20 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428C20 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02428C20 */ if (_t11) goto L_02428C30; else goto L_02428C24;
|
|
L_02428C24: ; // 0x2428c24
|
|
/* 02428C24 */ _t12 = cpu->r[29] + 0x00000220u;
|
|
/* 02428C24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02428C28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02428C2C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428C2C */ _t14 = _t13 & 0x00000001u;
|
|
/* 02428C2C */ if (_t14) goto L_02428C30; else goto L_02428C38;
|
|
L_02428C30: ; // 0x2428c30
|
|
/* 02428C30 */ cpu->r[7] = 0x00000028u;
|
|
/* 02428C34 */ _t15 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02428C34 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]);
|
|
L_02428C38: ; // 0x2428c38
|
|
/* 02428C38 */ cpu->r[0] = 0x00000002u;
|
|
/* 02428C3C */ cpu->r[9] = 0x100A0000u;
|
|
/* 02428C40 */ cpu->r[28] = 0x100A0000u;
|
|
/* 02428C44 */ _t16 = cpu->r[29] + 0x00000220u;
|
|
/* 02428C44 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 02428C48 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02428C4C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02428C50 */ _t17 = cpu->r[9] + 0xFFFF8E08u;
|
|
/* 02428C50 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t17);
|
|
/* 02428C54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02428C58 */ cpu->r[28] = cpu->r[28] + 0xFFFF8DCCu;
|
|
/* 02428C5C */ _t18 = cpu->r[7] + 0xFFFF8DF4u;
|
|
/* 02428C5C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t18);
|
|
/* 02428C60 */ cpu->r[4] = cpu->r[4] + 0xFFFF8E18u;
|
|
/* 02428C64 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428C64 */ _t20 = _t19 & 0x00000001u;
|
|
/* 02428C64 */ if (_t20) goto L_02428C68; else goto L_02428C98;
|
|
L_02428C68: ; // 0x2428c68
|
|
/* 02428C68 */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 02428C68 */ rbrew_write32(cpu->mem, _t21, cpu->r[4]);
|
|
/* 02428C6C */ cpu->f[1] = cpu->f[31];
|
|
/* 02428C70 */ cpu->r[4] = 0x00000001u;
|
|
/* 02428C74 */ cpu->r[5] = cpu->r[1] + 0x00000020u;
|
|
/* 02428C78 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428C7C */ _t22 = cpu->r[1] + 0x00000024u;
|
|
/* 02428C7C */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 02428C80 */ Gambit_fn_027ED914(cpu);
|
|
/* 02428C84 */ cpu->r[10] = 0x101C0000u;
|
|
/* 02428C88 */ _t23 = cpu->r[10] + 0x00006000u;
|
|
/* 02428C88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02428C8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02428C90 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428C90 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02428C90 */ if (_t25) goto L_02428D48; else goto L_02428C94;
|
|
L_02428C94: ; // 0x2428c94
|
|
/* 02428C94 */ goto L_02428CC4;
|
|
L_02428C98: ; // 0x2428c98
|
|
/* 02428C98 */ _t26 = cpu->r[1] + 0x00000028u;
|
|
/* 02428C98 */ rbrew_write32(cpu->mem, _t26, cpu->r[4]);
|
|
/* 02428C9C */ cpu->f[1] = cpu->f[30];
|
|
/* 02428CA0 */ cpu->r[4] = 0x00000001u;
|
|
/* 02428CA4 */ cpu->r[5] = cpu->r[1] + 0x00000028u;
|
|
/* 02428CA8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428CAC */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02428CAC */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 02428CB0 */ Gambit_fn_027ED914(cpu);
|
|
/* 02428CB4 */ cpu->r[10] = 0x101C0000u;
|
|
/* 02428CB8 */ _t28 = cpu->r[10] + 0x00006000u;
|
|
/* 02428CB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02428CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02428CC0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428CC0 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02428CC0 */ if (_t30) goto L_02428D48; else goto L_02428CC4;
|
|
L_02428CC4: ; // 0x2428cc4
|
|
/* 02428CC4 */ _t31 = cpu->r[10] + 0x00000268u;
|
|
/* 02428CC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02428CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02428CCC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428CCC */ _t33 = _t32 & 0x00000001u;
|
|
/* 02428CCC */ if (_t33) goto L_02428D48; else goto L_02428CD0;
|
|
L_02428CD0: ; // 0x2428cd0
|
|
/* 02428CD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000002u);
|
|
/* 02428CD4 */ cpu->r[12] = cpu->r[11] + 0x000002B0u;
|
|
/* 02428CD8 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428CD8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02428CD8 */ if (_t35) goto L_02428CDC; else goto L_02428CE4;
|
|
L_02428CDC: ; // 0x2428cdc
|
|
/* 02428CDC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02428CE0 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02428CE4: ; // 0x2428ce4
|
|
/* 02428CE4 */ _t36 = cpu->r[12] + 0x00000000u;
|
|
/* 02428CE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t36);
|
|
/* 02428CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02428CEC */ _t37 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428CEC */ _t38 = _t37 & 0x00000001u;
|
|
/* 02428CEC */ if (_t38) goto L_02428D48; else goto L_02428CF0;
|
|
L_02428CF0: ; // 0x2428cf0
|
|
/* 02428CF0 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428CF4 */ Gambit_fn_027E3E54(cpu);
|
|
/* 02428CF8 */ cpu->r[26] = cpu->r[29] + 0x00000228u;
|
|
/* 02428CFC */ cpu->r[31] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428D00 */ cpu->r[27] = 0x00000000u;
|
|
/* 02428D04 */ cpu->r[30] = cpu->r[26];
|
|
/* 02428D08 */ goto L_02428D14;
|
|
L_02428D0C: ; // 0x2428d0c
|
|
/* 02428D0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], 0x00000003u);
|
|
/* 02428D10 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428D10 */ _t40 = _t39 & 0x00000001u;
|
|
/* 02428D10 */ if (_t40) goto L_02428D14; else goto L_02428D1C;
|
|
L_02428D14: ; // 0x2428d14
|
|
/* 02428D14 */ cpu->r[5] = cpu->r[30];
|
|
/* 02428D18 */ goto L_02428D20;
|
|
L_02428D1C: ; // 0x2428d1c
|
|
/* 02428D1C */ cpu->r[5] = cpu->r[26];
|
|
L_02428D20: ; // 0x2428d20
|
|
/* 02428D20 */ _t41 = cpu->r[31] + 0x00000000u;
|
|
/* 02428D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02428D24 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02428D28 */ _t42 = cpu->r[1] + 0x00000008u;
|
|
/* 02428D28 */ rbrew_write32(cpu->mem, _t42, cpu->r[0]);
|
|
/* 02428D2C */ _t43 = cpu->r[5] + 0x00000000u;
|
|
/* 02428D2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02428D30 */ cpu->r[5] = 0x00000000u;
|
|
/* 02428D34 */ Gambit_fn_020E2B5C(cpu);
|
|
/* 02428D38 */ cpu->r[27] = cpu->r[27] + 0x00000001u;
|
|
/* 02428D3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000003u);
|
|
/* 02428D40 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 02428D44 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428D44 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02428D44 */ if (_t45) goto L_02428D0C; else goto L_02428D48;
|
|
L_02428D48: ; // 0x2428d48
|
|
/* 02428D48 */ _t46 = cpu->r[29] + 0x00000000u;
|
|
/* 02428D48 */ cpu->r[11] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02428D4C */ _t47 = cpu->r[11] + 0x00000184u;
|
|
/* 02428D4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t47);
|
|
/* 02428D50 */ cpu->ctr = cpu->r[12];
|
|
/* 02428D54 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428D58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02428D5C */ cpu->r[31] = 0x100A0000u;
|
|
/* 02428D60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428D64 */ cpu->r[31] = cpu->r[31] + 0xFFFF8E10u;
|
|
/* 02428D68 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428D68 */ _t49 = _t48 & 0x00000001u;
|
|
/* 02428D68 */ if (_t49) goto L_02428DD8; else goto L_02428D6C;
|
|
L_02428D6C: ; // 0x2428d6c
|
|
/* 02428D6C */ _t50 = cpu->r[29] + 0x00000224u;
|
|
/* 02428D6C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t50);
|
|
/* 02428D70 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[31]);
|
|
/* 02428D74 */ _t51 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02428D74 */ _t52 = _t51 & 0x00000001u;
|
|
/* 02428D74 */ if (_t52) goto L_02428DD8; else goto L_02428D78;
|
|
L_02428D78: ; // 0x2428d78
|
|
/* 02428D78 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428D7C */ cpu->r[4] = 0x00000000u;
|
|
/* 02428D80 */ Gambit_fn_027EDF00(cpu);
|
|
/* 02428D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428D88 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428D88 */ _t54 = _t53 & 0x00000001u;
|
|
/* 02428D88 */ if (_t54) goto L_02428EE0; else goto L_02428D8C;
|
|
L_02428D8C: ; // 0x2428d8c
|
|
/* 02428D8C */ cpu->f[1] = cpu->f[30];
|
|
/* 02428D90 */ _t55 = cpu->r[1] + 0x00000034u;
|
|
/* 02428D90 */ rbrew_write32(cpu->mem, _t55, cpu->r[28]);
|
|
/* 02428D94 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428D98 */ cpu->r[4] = 0x00000000u;
|
|
/* 02428D9C */ _t56 = cpu->r[1] + 0x00000030u;
|
|
/* 02428D9C */ rbrew_write32(cpu->mem, _t56, cpu->r[31]);
|
|
/* 02428DA0 */ cpu->r[5] = cpu->r[1] + 0x00000030u;
|
|
/* 02428DA4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02428DA8 */ /* nop */
|
|
/* 02428DAC */ _t57 = cpu->r[1] + 0x00000058u;
|
|
/* 02428DAC */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t57);
|
|
/* 02428DB0 */ _t58 = cpu->r[1] + 0x00000068u;
|
|
/* 02428DB0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02428DB4 */ _t59 = cpu->r[1] + 0x00000050u;
|
|
/* 02428DB4 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t59);
|
|
/* 02428DB8 */ _t60 = cpu->r[1] + 0x00000078u;
|
|
/* 02428DB8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t60);
|
|
/* 02428DBC */ _t61 = cpu->r[1] + 0x00000060u;
|
|
/* 02428DBC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t61);
|
|
/* 02428DC0 */ _t62 = cpu->r[1] + 0x00000070u;
|
|
/* 02428DC0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t62);
|
|
/* 02428DC4 */ _t63 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428DC4 */ _t64 = _t63 & 0x00000001u;
|
|
/* 02428DC4 */ if (_t64) goto L_02428DC8; // else: addr-0 trap, fall-through
|
|
L_02428DC8: ; // 0x2428dc8
|
|
/* 02428DC8 */ _t65 = cpu->r[1] + 0x00000084u;
|
|
/* 02428DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65);
|
|
/* 02428DCC */ cpu->lr = cpu->r[0];
|
|
/* 02428DD0 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 02428DD4 */ return;
|
|
L_02428DD8: ; // 0x2428dd8
|
|
/* 02428DD8 */ _t66 = cpu->r[29] + 0x00000118u;
|
|
/* 02428DD8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t66);
|
|
/* 02428DDC */ cpu->r[6] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 02428DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02428DE0 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428DE4 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428DE4 */ _t68 = _t67 & 0x00000001u;
|
|
/* 02428DE4 */ if (_t68) goto L_02428E34; else goto L_02428DE8;
|
|
L_02428DE8: ; // 0x2428de8
|
|
/* 02428DE8 */ _t69 = cpu->r[29] + 0x00000000u;
|
|
/* 02428DE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t69);
|
|
/* 02428DEC */ _t70 = cpu->r[10] + 0x00000164u;
|
|
/* 02428DEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02428DF0 */ cpu->ctr = cpu->r[0];
|
|
/* 02428DF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02428DF8 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02428DFC */ _t71 = cpu->r[10] + 0xFFFF8E0Cu;
|
|
/* 02428DFC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t71);
|
|
/* 02428E00 */ _t72 = cpu->r[29] + 0x00000224u;
|
|
/* 02428E00 */ rbrew_write_f32(cpu->mem, _t72, cpu->f[0]);
|
|
/* 02428E04 */ /* nop */
|
|
/* 02428E08 */ _t73 = cpu->r[1] + 0x00000058u;
|
|
/* 02428E08 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t73);
|
|
/* 02428E0C */ _t74 = cpu->r[1] + 0x00000068u;
|
|
/* 02428E0C */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t74);
|
|
/* 02428E10 */ _t75 = cpu->r[1] + 0x00000050u;
|
|
/* 02428E10 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t75);
|
|
/* 02428E14 */ _t76 = cpu->r[1] + 0x00000078u;
|
|
/* 02428E14 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t76);
|
|
/* 02428E18 */ _t77 = cpu->r[1] + 0x00000060u;
|
|
/* 02428E18 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t77);
|
|
/* 02428E1C */ _t78 = cpu->r[1] + 0x00000070u;
|
|
/* 02428E1C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t78);
|
|
/* 02428E20 */ _t79 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428E20 */ _t80 = _t79 & 0x00000001u;
|
|
/* 02428E20 */ if (_t80) goto L_02428E24; // else: addr-0 trap, fall-through
|
|
L_02428E24: ; // 0x2428e24
|
|
/* 02428E24 */ _t81 = cpu->r[1] + 0x00000084u;
|
|
/* 02428E24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81);
|
|
/* 02428E28 */ cpu->lr = cpu->r[0];
|
|
/* 02428E2C */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 02428E30 */ return;
|
|
L_02428E34: ; // 0x2428e34
|
|
/* 02428E34 */ Gambit_fn_020B76B4(cpu);
|
|
/* 02428E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02428E3C */ _t82 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02428E3C */ _t83 = _t82 & 0x00000001u;
|
|
/* 02428E3C */ if (_t83) goto L_02428EE0; else goto L_02428E40;
|
|
L_02428E40: ; // 0x2428e40
|
|
/* 02428E40 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02428E44 */ _t84 = cpu->r[1] + 0x00000010u;
|
|
/* 02428E44 */ rbrew_write32(cpu->mem, _t84, cpu->r[28]);
|
|
/* 02428E48 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428E4C */ cpu->r[30] = cpu->r[30] + 0xFFFF8E20u;
|
|
/* 02428E50 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428E54 */ _t85 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428E54 */ rbrew_write32(cpu->mem, _t85, cpu->r[30]);
|
|
/* 02428E58 */ Gambit_fn_027EE14C(cpu);
|
|
/* 02428E5C */ cpu->f[29] = cpu->f[1];
|
|
/* 02428E60 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428E64 */ Gambit_fn_020B79F8(cpu);
|
|
/* 02428E68 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428E6C */ _t86 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428E6C */ rbrew_write32(cpu->mem, _t86, cpu->r[30]);
|
|
/* 02428E70 */ cpu->f[1] = cpu->f[29];
|
|
/* 02428E74 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428E78 */ _t87 = cpu->r[1] + 0x00000010u;
|
|
/* 02428E78 */ rbrew_write32(cpu->mem, _t87, cpu->r[28]);
|
|
/* 02428E7C */ cpu->r[4] = 0x00000004u;
|
|
/* 02428E80 */ Gambit_fn_027ED914(cpu);
|
|
/* 02428E84 */ cpu->f[1] = cpu->f[30];
|
|
/* 02428E88 */ _t88 = cpu->r[1] + 0x00000010u;
|
|
/* 02428E88 */ rbrew_write32(cpu->mem, _t88, cpu->r[28]);
|
|
/* 02428E8C */ cpu->r[4] = 0x00000004u;
|
|
/* 02428E90 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428E94 */ _t89 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428E94 */ rbrew_write32(cpu->mem, _t89, cpu->r[30]);
|
|
/* 02428E98 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428E9C */ Gambit_fn_027ED380(cpu);
|
|
/* 02428EA0 */ _t90 = cpu->r[29] + 0x00000224u;
|
|
/* 02428EA0 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t90);
|
|
/* 02428EA4 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[13], cpu->f[31]);
|
|
/* 02428EA8 */ _t91 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02428EA8 */ _t92 = _t91 & 0x00000001u;
|
|
/* 02428EA8 */ if (_t92) goto L_02428EE0; else goto L_02428EAC;
|
|
L_02428EAC: ; // 0x2428eac
|
|
/* 02428EAC */ cpu->f[1] = cpu->f[30];
|
|
/* 02428EB0 */ _t93 = cpu->r[1] + 0x00000018u;
|
|
/* 02428EB0 */ rbrew_write32(cpu->mem, _t93, cpu->r[28]);
|
|
/* 02428EB4 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428EB8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02428EBC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02428EC0 */ _t94 = cpu->r[1] + 0x00000014u;
|
|
/* 02428EC0 */ rbrew_write32(cpu->mem, _t94, cpu->r[31]);
|
|
/* 02428EC4 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02428EC8 */ cpu->r[3] = cpu->r[29];
|
|
/* 02428ECC */ _t95 = cpu->r[1] + 0x00000018u;
|
|
/* 02428ECC */ rbrew_write32(cpu->mem, _t95, cpu->r[28]);
|
|
/* 02428ED0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 02428ED4 */ _t96 = cpu->r[1] + 0x00000014u;
|
|
/* 02428ED4 */ rbrew_write32(cpu->mem, _t96, cpu->r[31]);
|
|
/* 02428ED8 */ Gambit_fn_027EE100(cpu);
|
|
/* 02428EDC */ _t97 = cpu->r[29] + 0x00000224u;
|
|
/* 02428EDC */ rbrew_write_f32(cpu->mem, _t97, cpu->f[1]);
|
|
L_02428EE0: ; // 0x2428ee0
|
|
/* 02428EE0 */ /* nop */
|
|
/* 02428EE4 */ _t98 = cpu->r[1] + 0x00000058u;
|
|
/* 02428EE4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t98);
|
|
/* 02428EE8 */ _t99 = cpu->r[1] + 0x00000068u;
|
|
/* 02428EE8 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t99);
|
|
/* 02428EEC */ _t100 = cpu->r[1] + 0x00000050u;
|
|
/* 02428EEC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t100);
|
|
/* 02428EF0 */ _t101 = cpu->r[1] + 0x00000078u;
|
|
/* 02428EF0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t101);
|
|
/* 02428EF4 */ _t102 = cpu->r[1] + 0x00000060u;
|
|
/* 02428EF4 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t102);
|
|
/* 02428EF8 */ _t103 = cpu->r[1] + 0x00000070u;
|
|
/* 02428EF8 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t103);
|
|
/* 02428EFC */ _t104 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02428EFC */ _t105 = _t104 & 0x00000001u;
|
|
/* 02428EFC */ if (_t105) goto L_02428F00; // else: addr-0 trap, fall-through
|
|
L_02428F00: ; // 0x2428f00
|
|
/* 02428F00 */ _t106 = cpu->r[1] + 0x00000084u;
|
|
/* 02428F00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 02428F04 */ cpu->lr = cpu->r[0];
|
|
/* 02428F08 */ cpu->r[1] = cpu->r[1] + 0x00000080u;
|
|
/* 02428F0C */ return;
|
|
}
|
|
|
|
// fn_02428F10 @ 0x2428f10
|
|
void Gambit_fn_02428F10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20;
|
|
|
|
L_02428F10: ; // 0x2428f10
|
|
/* 02428F10 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02428F14 */ _t0 = cpu->r[3] + 0x00000224u;
|
|
/* 02428F14 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t0);
|
|
/* 02428F18 */ _t1 = cpu->r[12] + 0xFFFF8DF4u;
|
|
/* 02428F18 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t1);
|
|
/* 02428F1C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]);
|
|
/* 02428F20 */ _t2 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02428F20 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02428F20 */ if (_t3) goto L_02428F24; else goto L_02428F34;
|
|
L_02428F24: ; // 0x2428f24
|
|
/* 02428F24 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02428F28 */ _t4 = cpu->r[11] + 0xFFFF8E08u;
|
|
/* 02428F28 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4);
|
|
/* 02428F2C */ cpu->f[12] = cpu->f[12] - cpu->f[0];
|
|
/* 02428F30 */ _t5 = cpu->r[3] + 0x00000224u;
|
|
/* 02428F30 */ rbrew_write_f32(cpu->mem, _t5, cpu->f[12]);
|
|
L_02428F34: ; // 0x2428f34
|
|
/* 02428F34 */ _t6 = cpu->r[3] + 0x00000220u;
|
|
/* 02428F34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02428F38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02428F3C */ _t7 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02428F3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02428F40 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02428F40 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02428F40 */ if (_t9) goto L_02428F44; else goto L_02428F4C;
|
|
L_02428F44: ; // 0x2428f44
|
|
/* 02428F44 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 02428F48 */ _t10 = cpu->r[3] + 0x00000220u;
|
|
/* 02428F48 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
L_02428F4C: ; // 0x2428f4c
|
|
/* 02428F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02428F50 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02428F50 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02428F50 */ if (_t12) goto L_02428F54; else goto L_02428F60;
|
|
L_02428F54: ; // 0x2428f54
|
|
/* 02428F54 */ _t13 = cpu->r[3] + 0x00000220u;
|
|
/* 02428F54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02428F58 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02428F5C */ _t14 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02428F5C */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
L_02428F60: ; // 0x2428f60
|
|
/* 02428F60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02428F64 */ _t15 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02428F64 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02428F64 */ if (_t16) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02428F64 */ goto L_02428F68;
|
|
L_02428F68: ; // 0x2428f68
|
|
/* 02428F68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02428F6C */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02428F6C */ _t18 = _t17 & 0x00000001u;
|
|
/* 02428F6C */ if (_t18) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02428F6C */ goto L_02428F70;
|
|
L_02428F70: ; // 0x2428f70
|
|
/* 02428F70 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 02428F70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02428F74 */ _t20 = cpu->r[11] + 0x0000016Cu;
|
|
/* 02428F74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02428F78 */ cpu->ctr = cpu->r[0];
|
|
/* 02428F7C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02428F80 @ 0x2428f80
|
|
void Gambit_fn_02428F80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02428F80: ; // 0x2428f80
|
|
/* 02428F80 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02428F80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02428F80 */ cpu->r[1] = _t0;
|
|
/* 02428F84 */ _t1 = cpu->r[1] + 0x00000020u;
|
|
/* 02428F84 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02428F88 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02428F8C */ cpu->r[0] = cpu->lr;
|
|
/* 02428F90 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02428F90 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02428F94 */ cpu->r[30] = cpu->r[30] + 0xFFFF8DCCu;
|
|
/* 02428F98 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02428F9C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428F9C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02428FA0 */ cpu->r[12] = cpu->r[12] + 0xFFFF8E28u;
|
|
/* 02428FA4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02428FA4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02428FA8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02428FA8 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 02428FAC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02428FAC */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02428FB0 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02428FB4 */ _t7 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02428FB4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02428FB8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02428FBC */ cpu->r[31] = cpu->r[3];
|
|
/* 02428FC0 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428FC0 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02428FC4 */ cpu->r[0] = cpu->r[0] + 0xFFFF8E44u;
|
|
/* 02428FC8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02428FCC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02428FD0 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02428FD0 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02428FD4 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02428FD8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02428FDC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02428FDC */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02428FE0 */ cpu->r[0] = cpu->r[0] + 0xFFFF8E30u;
|
|
/* 02428FE4 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02428FE4 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 02428FE8 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02428FEC */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02428FEC */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02428FF0 */ cpu->r[10] = cpu->r[10] + 0xFFFF8E38u;
|
|
/* 02428FF4 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02428FF4 */ rbrew_write32(cpu->mem, _t13, cpu->r[30]);
|
|
/* 02428FF8 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02428FFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02429000 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02429000 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]);
|
|
/* 02429004 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02429008 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0242900C */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 0242900C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 02429010 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02429014 */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02429014 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02429018 */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 02429018 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0242901C */ cpu->lr = cpu->r[0];
|
|
/* 02429020 */ _t18 = cpu->r[1] + 0x00000020u;
|
|
/* 02429020 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02429024 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 02429028 */ return;
|
|
}
|
|
|
|
// fn_0242902C @ 0x242902c
|
|
void Gambit_fn_0242902C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_0242902C: ; // 0x242902c
|
|
/* 0242902C */ cpu->r[0] = cpu->lr;
|
|
/* 02429030 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02429030 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429030 */ cpu->r[1] = _t0;
|
|
/* 02429034 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02429034 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02429038 */ /* nop */
|
|
/* 0242903C */ cpu->r[29] = 0x101E0000u;
|
|
/* 02429040 */ cpu->r[22] = 0x00000000u;
|
|
/* 02429044 */ cpu->r[31] = cpu->r[3];
|
|
/* 02429048 */ cpu->r[29] = cpu->r[29] + 0x000071DCu;
|
|
/* 0242904C */ cpu->r[24] = cpu->r[22];
|
|
/* 02429050 */ cpu->r[30] = cpu->r[31] + 0x00000228u;
|
|
/* 02429054 */ cpu->r[28] = 0x100A0000u;
|
|
/* 02429058 */ cpu->r[27] = 0x100A0000u;
|
|
/* 0242905C */ cpu->r[26] = cpu->r[30];
|
|
/* 02429060 */ cpu->r[28] = cpu->r[28] + 0xFFFF8DCCu;
|
|
/* 02429064 */ cpu->r[27] = cpu->r[27] + 0xFFFF8E50u;
|
|
/* 02429068 */ goto L_02429074;
|
|
L_0242906C: ; // 0x242906c
|
|
/* 0242906C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], 0x00000003u);
|
|
/* 02429070 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02429070 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02429070 */ if (_t3) goto L_02429074; else goto L_02429080;
|
|
L_02429074: ; // 0x2429074
|
|
/* 02429074 */ cpu->r[25] = cpu->r[26];
|
|
/* 02429078 */ cpu->r[23] = cpu->r[24];
|
|
/* 0242907C */ goto L_02429084;
|
|
L_02429080: ; // 0x2429080
|
|
/* 02429080 */ cpu->r[25] = cpu->r[30];
|
|
L_02429084: ; // 0x2429084
|
|
/* 02429084 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02429084 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 02429088 */ cpu->r[4] = cpu->r[31];
|
|
/* 0242908C */ cpu->r[6] = cpu->r[29] + cpu->r[23];
|
|
/* 02429090 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02429094 */ cpu->r[3] = 0x00000000u;
|
|
/* 02429098 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02429098 */ rbrew_write32(cpu->mem, _t5, cpu->r[27]);
|
|
/* 0242909C */ Gambit_fn_020E2548(cpu);
|
|
/* 024290A0 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 024290A4 */ _t6 = cpu->r[25] + 0x00000000u;
|
|
/* 024290A4 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 024290A8 */ cpu->r[24] = cpu->r[24] + 0x00000008u;
|
|
/* 024290AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000003u);
|
|
/* 024290B0 */ cpu->r[23] = cpu->r[23] + 0x00000008u;
|
|
/* 024290B4 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 024290B8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024290B8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024290B8 */ if (_t8) goto L_0242906C; else goto L_024290BC;
|
|
L_024290BC: ; // 0x24290bc
|
|
/* 024290BC */ /* nop */
|
|
/* 024290C0 */ _t9 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024290C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024290C4 */ cpu->lr = cpu->r[0];
|
|
/* 024290C8 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 024290CC */ return;
|
|
}
|
|
|
|
// fn_02429030 @ 0x2429030
|
|
void Gambit_fn_02429030(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02429030: ; // 0x2429030
|
|
/* 02429030 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02429030 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429030 */ cpu->r[1] = _t0;
|
|
/* 02429034 */ _t1 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02429034 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02429038 */ /* nop */
|
|
/* 0242903C */ cpu->r[29] = 0x101E0000u;
|
|
/* 02429040 */ cpu->r[22] = 0x00000000u;
|
|
/* 02429044 */ cpu->r[31] = cpu->r[3];
|
|
/* 02429048 */ cpu->r[29] = cpu->r[29] + 0x000071DCu;
|
|
/* 0242904C */ cpu->r[24] = cpu->r[22];
|
|
/* 02429050 */ cpu->r[30] = cpu->r[31] + 0x00000228u;
|
|
/* 02429054 */ cpu->r[28] = 0x100A0000u;
|
|
/* 02429058 */ cpu->r[27] = 0x100A0000u;
|
|
/* 0242905C */ cpu->r[26] = cpu->r[30];
|
|
/* 02429060 */ cpu->r[28] = cpu->r[28] + 0xFFFF8DCCu;
|
|
/* 02429064 */ cpu->r[27] = cpu->r[27] + 0xFFFF8E50u;
|
|
/* 02429068 */ goto L_02429074;
|
|
L_0242906C: ; // 0x242906c
|
|
/* 0242906C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], 0x00000003u);
|
|
/* 02429070 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02429070 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02429070 */ if (_t3) goto L_02429074; else goto L_02429080;
|
|
L_02429074: ; // 0x2429074
|
|
/* 02429074 */ cpu->r[25] = cpu->r[26];
|
|
/* 02429078 */ cpu->r[23] = cpu->r[24];
|
|
/* 0242907C */ goto L_02429084;
|
|
L_02429080: ; // 0x2429080
|
|
/* 02429080 */ cpu->r[25] = cpu->r[30];
|
|
L_02429084: ; // 0x2429084
|
|
/* 02429084 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02429084 */ rbrew_write32(cpu->mem, _t4, cpu->r[28]);
|
|
/* 02429088 */ cpu->r[4] = cpu->r[31];
|
|
/* 0242908C */ cpu->r[6] = cpu->r[29] + cpu->r[23];
|
|
/* 02429090 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02429094 */ cpu->r[3] = 0x00000000u;
|
|
/* 02429098 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02429098 */ rbrew_write32(cpu->mem, _t5, cpu->r[27]);
|
|
/* 0242909C */ Gambit_fn_020E2548(cpu);
|
|
/* 024290A0 */ cpu->r[22] = cpu->r[22] + 0x00000001u;
|
|
/* 024290A4 */ _t6 = cpu->r[25] + 0x00000000u;
|
|
/* 024290A4 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 024290A8 */ cpu->r[24] = cpu->r[24] + 0x00000008u;
|
|
/* 024290AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000003u);
|
|
/* 024290B0 */ cpu->r[23] = cpu->r[23] + 0x00000008u;
|
|
/* 024290B4 */ cpu->r[26] = cpu->r[26] + 0x00000004u;
|
|
/* 024290B8 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024290B8 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024290B8 */ if (_t8) goto L_0242906C; else goto L_024290BC;
|
|
L_024290BC: ; // 0x24290bc
|
|
/* 024290BC */ /* nop */
|
|
/* 024290C0 */ _t9 = cpu->r[1] + 0x0000003Cu;
|
|
/* 024290C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024290C4 */ cpu->lr = cpu->r[0];
|
|
/* 024290C8 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 024290CC */ return;
|
|
}
|
|
|
|
// fn_024290D0 @ 0x24290d0
|
|
void Gambit_fn_024290D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_024290D0: ; // 0x24290d0
|
|
/* 024290D0 */ cpu->r[9] = 0xFFFFFFFDu;
|
|
/* 024290D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024290D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024290D4 */ cpu->r[1] = _t0;
|
|
/* 024290D8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024290DC */ cpu->r[12] = 0x101E0000u;
|
|
/* 024290E0 */ cpu->r[7] = 0xFFFFFFFEu;
|
|
/* 024290E4 */ _t1 = cpu->r[10] + 0x000071C8u;
|
|
/* 024290E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 024290E4 */ cpu->r[10] = _t1;
|
|
/* 024290E8 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 024290EC */ _t2 = cpu->r[12] + 0x000071B8u;
|
|
/* 024290EC */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 024290EC */ cpu->r[12] = _t2;
|
|
/* 024290F0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024290F4 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 024290F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 024290F8 */ cpu->r[4] = 0x101E0000u;
|
|
/* 024290FC */ cpu->r[0] = 0x00000002u;
|
|
/* 02429100 */ _t4 = cpu->r[7] + 0x000071C0u;
|
|
/* 02429100 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 02429100 */ cpu->r[7] = _t4;
|
|
/* 02429104 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02429108 */ cpu->r[6] = 0x101E0000u;
|
|
/* 0242910C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 0242910C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02429110 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02429110 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02429114 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02429114 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 02429118 */ cpu->r[5] = 0x100A0000u;
|
|
/* 0242911C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02429120 */ _t8 = cpu->r[6] + 0x000071B0u;
|
|
/* 02429120 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02429120 */ cpu->r[6] = _t8;
|
|
/* 02429124 */ cpu->r[5] = cpu->r[5] + 0xFFFF8DCCu;
|
|
/* 02429128 */ cpu->r[4] = cpu->r[4] + 0x000071DCu;
|
|
/* 0242912C */ _t9 = cpu->r[6] + 0x00000004u;
|
|
/* 0242912C */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 02429130 */ cpu->r[7] = cpu->r[7] + 0xFFFF8E54u;
|
|
/* 02429134 */ _t10 = cpu->r[4] + 0x00000004u;
|
|
/* 02429134 */ rbrew_write32(cpu->mem, _t10, cpu->r[5]);
|
|
/* 02429138 */ cpu->r[11] = cpu->r[11] + 0x000071D0u;
|
|
/* 0242913C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02429140 */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 02429140 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 02429144 */ cpu->r[0] = cpu->r[0] + 0xFFFF8E64u;
|
|
/* 02429148 */ _t12 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02429148 */ rbrew_write32(cpu->mem, _t12, cpu->r[5]);
|
|
/* 0242914C */ cpu->r[7] = 0x101E0000u;
|
|
/* 02429150 */ _t13 = cpu->r[4] + 0x00000008u;
|
|
/* 02429150 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02429154 */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 02429154 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 02429158 */ _t15 = cpu->r[4] + 0x00000014u;
|
|
/* 02429158 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 0242915C */ cpu->r[0] = 0x00000004u;
|
|
/* 02429160 */ _t16 = cpu->r[11] + 0x00000000u;
|
|
/* 02429160 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 02429164 */ cpu->r[6] = 0x100A0000u;
|
|
/* 02429168 */ _t17 = cpu->r[7] + 0x000071D8u;
|
|
/* 02429168 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0242916C */ cpu->r[6] = cpu->r[6] + 0xFFFF8E74u;
|
|
/* 02429170 */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 02429170 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 02429174 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02429178 */ _t19 = cpu->r[4] + 0x00000010u;
|
|
/* 02429178 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 0242917C */ return;
|
|
}
|
|
|
|
// fn_024290D4 @ 0x24290d4
|
|
void Gambit_fn_024290D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_024290D4: ; // 0x24290d4
|
|
/* 024290D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024290D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024290D4 */ cpu->r[1] = _t0;
|
|
/* 024290D8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024290DC */ cpu->r[12] = 0x101E0000u;
|
|
/* 024290E0 */ cpu->r[7] = 0xFFFFFFFEu;
|
|
/* 024290E4 */ _t1 = cpu->r[10] + 0x000071C8u;
|
|
/* 024290E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[9]);
|
|
/* 024290E4 */ cpu->r[10] = _t1;
|
|
/* 024290E8 */ cpu->r[8] = 0xFFFFFFFFu;
|
|
/* 024290EC */ _t2 = cpu->r[12] + 0x000071B8u;
|
|
/* 024290EC */ rbrew_write32(cpu->mem, _t2, cpu->r[7]);
|
|
/* 024290EC */ cpu->r[12] = _t2;
|
|
/* 024290F0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024290F4 */ _t3 = cpu->r[12] + 0x00000004u;
|
|
/* 024290F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]);
|
|
/* 024290F8 */ cpu->r[4] = 0x101E0000u;
|
|
/* 024290FC */ cpu->r[0] = 0x00000002u;
|
|
/* 02429100 */ _t4 = cpu->r[7] + 0x000071C0u;
|
|
/* 02429100 */ rbrew_write32(cpu->mem, _t4, cpu->r[8]);
|
|
/* 02429100 */ cpu->r[7] = _t4;
|
|
/* 02429104 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02429108 */ cpu->r[6] = 0x101E0000u;
|
|
/* 0242910C */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 0242910C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02429110 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02429110 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02429114 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02429114 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 02429118 */ cpu->r[5] = 0x100A0000u;
|
|
/* 0242911C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02429120 */ _t8 = cpu->r[6] + 0x000071B0u;
|
|
/* 02429120 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02429120 */ cpu->r[6] = _t8;
|
|
/* 02429124 */ cpu->r[5] = cpu->r[5] + 0xFFFF8DCCu;
|
|
/* 02429128 */ cpu->r[4] = cpu->r[4] + 0x000071DCu;
|
|
/* 0242912C */ _t9 = cpu->r[6] + 0x00000004u;
|
|
/* 0242912C */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 02429130 */ cpu->r[7] = cpu->r[7] + 0xFFFF8E54u;
|
|
/* 02429134 */ _t10 = cpu->r[4] + 0x00000004u;
|
|
/* 02429134 */ rbrew_write32(cpu->mem, _t10, cpu->r[5]);
|
|
/* 02429138 */ cpu->r[11] = cpu->r[11] + 0x000071D0u;
|
|
/* 0242913C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02429140 */ _t11 = cpu->r[4] + 0x00000000u;
|
|
/* 02429140 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]);
|
|
/* 02429144 */ cpu->r[0] = cpu->r[0] + 0xFFFF8E64u;
|
|
/* 02429148 */ _t12 = cpu->r[4] + 0x0000000Cu;
|
|
/* 02429148 */ rbrew_write32(cpu->mem, _t12, cpu->r[5]);
|
|
/* 0242914C */ cpu->r[7] = 0x101E0000u;
|
|
/* 02429150 */ _t13 = cpu->r[4] + 0x00000008u;
|
|
/* 02429150 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02429154 */ _t14 = cpu->r[11] + 0x00000004u;
|
|
/* 02429154 */ rbrew_write32(cpu->mem, _t14, cpu->r[8]);
|
|
/* 02429158 */ _t15 = cpu->r[4] + 0x00000014u;
|
|
/* 02429158 */ rbrew_write32(cpu->mem, _t15, cpu->r[5]);
|
|
/* 0242915C */ cpu->r[0] = 0x00000004u;
|
|
/* 02429160 */ _t16 = cpu->r[11] + 0x00000000u;
|
|
/* 02429160 */ rbrew_write32(cpu->mem, _t16, cpu->r[9]);
|
|
/* 02429164 */ cpu->r[6] = 0x100A0000u;
|
|
/* 02429168 */ _t17 = cpu->r[7] + 0x000071D8u;
|
|
/* 02429168 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]);
|
|
/* 0242916C */ cpu->r[6] = cpu->r[6] + 0xFFFF8E74u;
|
|
/* 02429170 */ _t18 = cpu->r[10] + 0x00000004u;
|
|
/* 02429170 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]);
|
|
/* 02429174 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02429178 */ _t19 = cpu->r[4] + 0x00000010u;
|
|
/* 02429178 */ rbrew_write32(cpu->mem, _t19, cpu->r[6]);
|
|
/* 0242917C */ return;
|
|
}
|
|
|
|
// fn_02429180 @ 0x2429180
|
|
void Gambit_fn_02429180(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_02429180: ; // 0x2429180
|
|
/* 02429180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02429184 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429184 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02429184 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02429184 */ goto L_02429188;
|
|
L_02429188: ; // 0x2429188
|
|
/* 02429188 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02429188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0242918C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0242918C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0242918C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0242918C */ goto L_02429190;
|
|
L_02429190: ; // 0x2429190
|
|
/* 02429190 */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_02429194 @ 0x2429194
|
|
void Gambit_fn_02429194(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02429194: ; // 0x2429194
|
|
/* 02429194 */ cpu->r[0] = cpu->lr;
|
|
/* 02429198 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02429198 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429198 */ cpu->r[1] = _t0;
|
|
/* 0242919C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242919C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024291A0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024291A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024291A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024291A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024291A8 */ cpu->r[31] = cpu->r[4];
|
|
/* 024291AC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024291AC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024291B0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024291B0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024291B0 */ if (_t5) goto L_02429220; else goto L_024291B4;
|
|
L_024291B4: ; // 0x24291b4
|
|
/* 024291B4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024291B8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024291BC */ cpu->r[0] = cpu->r[0] + 0xFFFF9068u;
|
|
/* 024291C0 */ cpu->r[12] = cpu->r[12] + 0xFFFF9088u;
|
|
/* 024291C4 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024291C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024291C8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024291CC */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 024291CC */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024291D0 */ cpu->r[11] = cpu->r[11] + 0xFFFF9078u;
|
|
/* 024291D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024291D8 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024291D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024291DC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024291DC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024291DC */ if (_t10) goto L_02429210; else goto L_024291E0;
|
|
L_024291E0: ; // 0x24291e0
|
|
/* 024291E0 */ cpu->r[10] = 0x10010000u;
|
|
/* 024291E4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024291E8 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 024291EC */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 024291F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024291F4 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024291F4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024291F8 */ cpu->r[0] = 0x10010000u;
|
|
/* 024291FC */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024291FC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02429200 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02429204 */ cpu->r[4] = 0x00000000u;
|
|
/* 02429208 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02429208 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0242920C */ Gambit_fn_02068798(cpu);
|
|
L_02429210: ; // 0x2429210
|
|
/* 02429210 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02429210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02429214 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429214 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02429214 */ if (_t15) goto L_02429220; else goto L_02429218;
|
|
L_02429218: ; // 0x2429218
|
|
/* 02429218 */ cpu->r[3] = cpu->r[30];
|
|
/* 0242921C */ Gambit_fn_02801BB0(cpu);
|
|
L_02429220: ; // 0x2429220
|
|
/* 02429220 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02429220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02429224 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02429224 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02429228 */ cpu->lr = cpu->r[0];
|
|
/* 0242922C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242922C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02429230 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02429234 */ return;
|
|
}
|
|
|
|
// fn_02429198 @ 0x2429198
|
|
void Gambit_fn_02429198(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02429198: ; // 0x2429198
|
|
/* 02429198 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02429198 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429198 */ cpu->r[1] = _t0;
|
|
/* 0242919C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242919C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024291A0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024291A0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024291A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024291A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024291A8 */ cpu->r[31] = cpu->r[4];
|
|
/* 024291AC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024291AC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024291B0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024291B0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024291B0 */ if (_t5) goto L_02429220; else goto L_024291B4;
|
|
L_024291B4: ; // 0x24291b4
|
|
/* 024291B4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024291B8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024291BC */ cpu->r[0] = cpu->r[0] + 0xFFFF9068u;
|
|
/* 024291C0 */ cpu->r[12] = cpu->r[12] + 0xFFFF9088u;
|
|
/* 024291C4 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024291C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024291C8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024291CC */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 024291CC */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024291D0 */ cpu->r[11] = cpu->r[11] + 0xFFFF9078u;
|
|
/* 024291D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024291D8 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024291D8 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 024291DC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024291DC */ _t10 = _t9 & 0x00000001u;
|
|
/* 024291DC */ if (_t10) goto L_02429210; else goto L_024291E0;
|
|
L_024291E0: ; // 0x24291e0
|
|
/* 024291E0 */ cpu->r[10] = 0x10010000u;
|
|
/* 024291E4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024291E8 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 024291EC */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 024291F0 */ cpu->r[3] = cpu->r[30];
|
|
/* 024291F4 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024291F4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024291F8 */ cpu->r[0] = 0x10010000u;
|
|
/* 024291FC */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024291FC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02429200 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02429204 */ cpu->r[4] = 0x00000000u;
|
|
/* 02429208 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02429208 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 0242920C */ Gambit_fn_02068798(cpu);
|
|
L_02429210: ; // 0x2429210
|
|
/* 02429210 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02429210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02429214 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429214 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02429214 */ if (_t15) goto L_02429220; else goto L_02429218;
|
|
L_02429218: ; // 0x2429218
|
|
/* 02429218 */ cpu->r[3] = cpu->r[30];
|
|
/* 0242921C */ Gambit_fn_02801BB0(cpu);
|
|
L_02429220: ; // 0x2429220
|
|
/* 02429220 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02429220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02429224 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02429224 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02429228 */ cpu->lr = cpu->r[0];
|
|
/* 0242922C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242922C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02429230 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02429234 */ return;
|
|
}
|
|
|
|
// fn_02429238 @ 0x2429238
|
|
void Gambit_fn_02429238(CPUState* cpu) {
|
|
L_02429238: ; // 0x2429238
|
|
/* 02429238 */ return;
|
|
}
|
|
|
|
// fn_0242923C @ 0x242923c
|
|
void Gambit_fn_0242923C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0242923C: ; // 0x242923c
|
|
/* 0242923C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0242923C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02429240 */ return;
|
|
}
|
|
|
|
// fn_02429244 @ 0x2429244
|
|
void Gambit_fn_02429244(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02429244: ; // 0x2429244
|
|
/* 02429244 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02429244 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02429248 */ return;
|
|
}
|
|
|
|
// fn_0242924C @ 0x242924c
|
|
void Gambit_fn_0242924C(CPUState* cpu) {
|
|
L_0242924C: ; // 0x242924c
|
|
/* 0242924C */ return;
|
|
}
|
|
|
|
// fn_02429250 @ 0x2429250
|
|
void Gambit_fn_02429250(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02429250: ; // 0x2429250
|
|
/* 02429250 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02429250 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02429254 */ return;
|
|
}
|
|
|
|
// fn_02429258 @ 0x2429258
|
|
void Gambit_fn_02429258(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02429258: ; // 0x2429258
|
|
/* 02429258 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02429258 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0242925C */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 0242925C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02429260 */ cpu->ctr = cpu->r[0];
|
|
/* 02429264 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02429268 @ 0x2429268
|
|
void Gambit_fn_02429268(CPUState* cpu) {
|
|
L_02429268: ; // 0x2429268
|
|
/* 02429268 */ return;
|
|
}
|
|
|
|
// fn_0242926C @ 0x242926c
|
|
void Gambit_fn_0242926C(CPUState* cpu) {
|
|
L_0242926C: ; // 0x242926c
|
|
/* 0242926C */ cpu->r[3] = 0x00000000u;
|
|
/* 02429270 */ return;
|
|
}
|
|
|
|
// fn_02429274 @ 0x2429274
|
|
void Gambit_fn_02429274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02429274: ; // 0x2429274
|
|
/* 02429274 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02429278 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02429278 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02429278 */ cpu->r[9] = _t0;
|
|
/* 0242927C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02429280 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02429284 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02429288 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429288 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02429288 */ if (_t2) goto L_0242928C; else goto L_024292A0;
|
|
L_0242928C: ; // 0x242928c
|
|
/* 0242928C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02429290 */ cpu->r[0] = 0x00000001u;
|
|
/* 02429294 */ cpu->r[7] = cpu->r[7] + 0xFFFF8DE4u;
|
|
/* 02429298 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02429298 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0242929C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 0242929C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_024292A0: ; // 0x24292a0
|
|
/* 024292A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 024292A4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024292A4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024292A4 */ if (_t6) goto L_024292A8; else goto L_024292B0;
|
|
L_024292A8: ; // 0x24292a8
|
|
/* 024292A8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024292AC */ return;
|
|
L_024292B0: ; // 0x24292b0
|
|
/* 024292B0 */ cpu->r[7] = 0x101D0000u;
|
|
/* 024292B4 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 024292B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024292B4 */ cpu->r[7] = _t7;
|
|
/* 024292B8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024292BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024292C0 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 024292C4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024292C4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024292C4 */ if (_t9) goto L_024292C8; else goto L_024292DC;
|
|
L_024292C8: ; // 0x24292c8
|
|
/* 024292C8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024292CC */ cpu->r[9] = 0x00000001u;
|
|
/* 024292D0 */ cpu->r[0] = cpu->r[0] + 0xFFFF8DBCu;
|
|
/* 024292D4 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 024292D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024292D8 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 024292D8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024292DC: ; // 0x24292dc
|
|
/* 024292DC */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024292E0 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 024292E4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 024292E8 */ return;
|
|
}
|
|
|
|
// fn_024292EC @ 0x24292ec
|
|
void Gambit_fn_024292EC(CPUState* cpu) {
|
|
L_024292EC: ; // 0x24292ec
|
|
/* 024292EC */ return;
|
|
}
|
|
|
|
// fn_024292F0 @ 0x24292f0
|
|
void Gambit_fn_024292F0(CPUState* cpu) {
|
|
L_024292F0: ; // 0x24292f0
|
|
/* 024292F0 */ return;
|
|
}
|
|
|
|
// fn_024292F4 @ 0x24292f4
|
|
void Gambit_fn_024292F4(CPUState* cpu) {
|
|
L_024292F4: ; // 0x24292f4
|
|
/* 024292F4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024292F8 */ return;
|
|
}
|
|
|
|
// fn_024292FC @ 0x24292fc
|
|
void Gambit_fn_024292FC(CPUState* cpu) {
|
|
L_024292FC: ; // 0x24292fc
|
|
/* 024292FC */ cpu->r[3] = 0x00000000u;
|
|
/* 02429300 */ return;
|
|
}
|
|
|
|
// fn_02429304 @ 0x2429304
|
|
void Gambit_fn_02429304(CPUState* cpu) {
|
|
L_02429304: ; // 0x2429304
|
|
/* 02429304 */ return;
|
|
}
|
|
|
|
// fn_02429308 @ 0x2429308
|
|
void Gambit_fn_02429308(CPUState* cpu) {
|
|
L_02429308: ; // 0x2429308
|
|
/* 02429308 */ return;
|
|
}
|
|
|
|
// fn_0242930C @ 0x242930c
|
|
void Gambit_fn_0242930C(CPUState* cpu) {
|
|
L_0242930C: ; // 0x242930c
|
|
/* 0242930C */ return;
|
|
}
|
|
|
|
// fn_02429310 @ 0x2429310
|
|
void Gambit_fn_02429310(CPUState* cpu) {
|
|
L_02429310: ; // 0x2429310
|
|
/* 02429310 */ return;
|
|
}
|
|
|
|
// fn_02429314 @ 0x2429314
|
|
void Gambit_fn_02429314(CPUState* cpu) {
|
|
L_02429314: ; // 0x2429314
|
|
/* 02429314 */ return;
|
|
}
|
|
|
|
// fn_02429318 @ 0x2429318
|
|
void Gambit_fn_02429318(CPUState* cpu) {
|
|
L_02429318: ; // 0x2429318
|
|
/* 02429318 */ return;
|
|
}
|
|
|
|
// fn_0242931C @ 0x242931c
|
|
void Gambit_fn_0242931C(CPUState* cpu) {
|
|
L_0242931C: ; // 0x242931c
|
|
/* 0242931C */ return;
|
|
}
|
|
|
|
// fn_02429320 @ 0x2429320
|
|
void Gambit_fn_02429320(CPUState* cpu) {
|
|
L_02429320: ; // 0x2429320
|
|
/* 02429320 */ return;
|
|
}
|
|
|
|
// fn_02429324 @ 0x2429324
|
|
void Gambit_fn_02429324(CPUState* cpu) {
|
|
L_02429324: ; // 0x2429324
|
|
/* 02429324 */ return;
|
|
}
|
|
|
|
// fn_02429328 @ 0x2429328
|
|
void Gambit_fn_02429328(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0200896C: ; // 0x200896c
|
|
/* 0200896C */ cpu->r[0] = cpu->lr;
|
|
/* 02008970 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02008970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02008970 */ cpu->r[1] = _t0;
|
|
/* 02008974 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02008974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02008978 */ cpu->r[31] = cpu->r[3];
|
|
/* 0200897C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0200897C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02008980 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02008980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02008984 */ cpu->r[12] = 0x00000000u;
|
|
/* 02008988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0200898C */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0200898C */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02008990 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02008990 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02008990 */ if (_t6) goto L_020089B8; else goto L_02008994;
|
|
L_02008994: ; // 0x2008994
|
|
/* 02008994 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02008994 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02008998 */ /* nop */
|
|
/* 0200899C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 020089A0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020089A0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020089A0 */ if (_t9) goto L_020089A4; else goto L_020089B8;
|
|
L_020089A4: ; // 0x20089a4
|
|
/* 020089A4 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 020089A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020089A8 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 020089A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020089AC */ cpu->ctr = cpu->r[0];
|
|
/* 020089B0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089B4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_020089B8: ; // 0x20089b8
|
|
/* 020089B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089BC */ Gambit_fn_020088E4(cpu);
|
|
/* 020089C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 020089C4 */ Gambit_fn_027FC37C(cpu);
|
|
/* 020089C8 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 020089C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020089CC */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020089CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020089D0 */ cpu->lr = cpu->r[0];
|
|
/* 020089D4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020089D8 */ return;
|
|
L_02429328: ; // 0x2429328
|
|
/* 02429328 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 0242932C */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_02429330 @ 0x2429330
|
|
void Gambit_fn_02429330(CPUState* cpu) {
|
|
L_02429330: ; // 0x2429330
|
|
/* 02429330 */ return;
|
|
}
|
|
|
|
// fn_02429334 @ 0x2429334
|
|
void Gambit_fn_02429334(CPUState* cpu) {
|
|
L_02429334: ; // 0x2429334
|
|
/* 02429334 */ return;
|
|
}
|
|
|
|
// fn_02429338 @ 0x2429338
|
|
void Gambit_fn_02429338(CPUState* cpu) {
|
|
L_02429338: ; // 0x2429338
|
|
/* 02429338 */ return;
|
|
}
|
|
|
|
// fn_0242933C @ 0x242933c
|
|
void Gambit_fn_0242933C(CPUState* cpu) {
|
|
L_0242933C: ; // 0x242933c
|
|
/* 0242933C */ return;
|
|
}
|
|
|
|
// fn_02429340 @ 0x2429340
|
|
void Gambit_fn_02429340(CPUState* cpu) {
|
|
L_02429340: ; // 0x2429340
|
|
/* 02429340 */ return;
|
|
}
|
|
|
|
// fn_02429344 @ 0x2429344
|
|
void Gambit_fn_02429344(CPUState* cpu) {
|
|
L_02429344: ; // 0x2429344
|
|
/* 02429344 */ cpu->r[3] = 0x00000001u;
|
|
/* 02429348 */ return;
|
|
}
|
|
|
|
// fn_0242934C @ 0x242934c
|
|
void Gambit_fn_0242934C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_0242934C: ; // 0x242934c
|
|
/* 0242934C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02429350 */ goto L_024296C0;
|
|
L_024296C0: ; // 0x24296c0
|
|
/* 024296C0 */ cpu->r[0] = cpu->lr;
|
|
/* 024296C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024296C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024296C4 */ cpu->r[1] = _t0;
|
|
/* 024296C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024296C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024296CC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024296CC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024296D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024296D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024296D4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024296D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024296D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024296DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024296DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024296DC */ if (_t5) goto L_0242974C; else goto L_024296E0;
|
|
L_024296E0: ; // 0x24296e0
|
|
/* 024296E0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024296E4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024296E8 */ cpu->r[0] = cpu->r[0] + 0xFFFF9378u;
|
|
/* 024296EC */ cpu->r[12] = cpu->r[12] + 0xFFFF9398u;
|
|
/* 024296F0 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024296F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024296F4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024296F8 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 024296F8 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024296FC */ cpu->r[11] = cpu->r[11] + 0xFFFF9388u;
|
|
/* 02429700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02429704 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02429704 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02429708 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429708 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02429708 */ if (_t10) goto L_0242973C; else goto L_0242970C;
|
|
L_0242970C: ; // 0x242970c
|
|
/* 0242970C */ cpu->r[10] = 0x10010000u;
|
|
/* 02429710 */ cpu->r[0] = 0x10010000u;
|
|
/* 02429714 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02429718 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 0242971C */ cpu->r[3] = cpu->r[30];
|
|
/* 02429720 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02429720 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02429724 */ cpu->r[0] = 0x10010000u;
|
|
/* 02429728 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02429728 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0242972C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02429730 */ cpu->r[4] = 0x00000000u;
|
|
/* 02429734 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02429734 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02429738 */ Gambit_fn_02068798(cpu);
|
|
L_0242973C: ; // 0x242973c
|
|
/* 0242973C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0242973C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02429740 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429740 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02429740 */ if (_t15) goto L_0242974C; else goto L_02429744;
|
|
L_02429744: ; // 0x2429744
|
|
/* 02429744 */ cpu->r[3] = cpu->r[30];
|
|
/* 02429748 */ Gambit_fn_02801BB0(cpu);
|
|
L_0242974C: ; // 0x242974c
|
|
/* 0242974C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0242974C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02429750 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02429750 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02429754 */ cpu->lr = cpu->r[0];
|
|
/* 02429758 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02429758 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0242975C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02429760 */ return;
|
|
}
|
|
|
|
// fn_02429354 @ 0x2429354
|
|
void Gambit_fn_02429354(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02068818: ; // 0x2068818
|
|
/* 02068818 */ cpu->r[12] = 0x101C0000u;
|
|
/* 0206881C */ _t0 = cpu->r[12] + 0x00001D34u;
|
|
/* 0206881C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02068820 */ _t1 = cpu->r[12] + 0x0000018Cu;
|
|
/* 02068820 */ cpu->r[12] = rbrew_read8(cpu->mem, _t1);
|
|
/* 02068824 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02068828 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02068828 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02068828 */ if (_t3) goto L_0206883C; else goto L_0206882C;
|
|
L_0206882C: ; // 0x206882c
|
|
/* 0206882C */ cpu->r[0] = cpu->r[5] ^ 0x00000001u;
|
|
/* 02068830 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 02068834 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068838 */ return;
|
|
L_0206883C: ; // 0x206883c
|
|
/* 0206883C */ cpu->r[0] = rbrew_clz32(cpu->r[5]);
|
|
/* 02068840 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02068844 */ return;
|
|
L_02429354: ; // 0x2429354
|
|
/* 02429354 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02429358 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_0242935C @ 0x242935c
|
|
void Gambit_fn_0242935C(CPUState* cpu) {
|
|
L_0242935C: ; // 0x242935c
|
|
/* 0242935C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02429360 */ goto L_02429764;
|
|
L_02429764: ; // 0x2429764
|
|
/* 02429764 */ return;
|
|
}
|
|
|
|
// fn_02429364 @ 0x2429364
|
|
void Gambit_fn_02429364(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02429364: ; // 0x2429364
|
|
/* 02429364 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02429368 */ goto L_02429768;
|
|
L_02429768: ; // 0x2429768
|
|
/* 02429768 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02429768 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0242976C */ return;
|
|
}
|
|
|
|
// fn_0242936C @ 0x242936c
|
|
void Gambit_fn_0242936C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_0242936C: ; // 0x242936c
|
|
/* 0242936C */ cpu->r[0] = cpu->lr;
|
|
/* 02429370 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02429370 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429370 */ cpu->r[1] = _t0;
|
|
/* 02429374 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02429374 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02429378 */ cpu->r[31] = cpu->r[3];
|
|
/* 02429378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242937C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0242937C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02429380 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429380 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02429380 */ if (_t4) goto L_02429384; else goto L_02429394;
|
|
L_02429384: ; // 0x2429384
|
|
/* 02429384 */ cpu->r[3] = 0x00000228u;
|
|
/* 02429388 */ Gambit_fn_02801A78(cpu);
|
|
/* 0242938C */ cpu->r[31] = cpu->r[3];
|
|
/* 0242938C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02429390 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429390 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02429390 */ if (_t6) goto L_024293EC; else goto L_02429394;
|
|
L_02429394: ; // 0x2429394
|
|
/* 02429394 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02429398 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242939C */ cpu->r[5] = 0x00000001u;
|
|
/* 024293A0 */ cpu->r[4] = cpu->r[4] + 0xFFFF9138u;
|
|
/* 024293A4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024293A8 */ Gambit_fn_020B6F60(cpu);
|
|
/* 024293AC */ cpu->r[11] = 0x100A0000u;
|
|
/* 024293B0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024293B4 */ cpu->r[11] = cpu->r[11] + 0xFFFF9198u;
|
|
/* 024293B8 */ cpu->r[0] = cpu->r[0] + 0xFFFF9388u;
|
|
/* 024293BC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024293C0 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 024293C0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 024293C4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024293C8 */ cpu->r[12] = cpu->r[12] + 0xFFFF9378u;
|
|
/* 024293CC */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024293CC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024293D0 */ cpu->r[11] = cpu->r[11] + 0xFFFF9398u;
|
|
/* 024293D4 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 024293D4 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 024293D8 */ cpu->r[12] = 0x00000000u;
|
|
/* 024293DC */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 024293DC */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 024293E0 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 024293E0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 024293E4 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 024293E4 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 024293E8 */ _t13 = cpu->r[31] + 0x00000220u;
|
|
/* 024293E8 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
L_024293EC: ; // 0x24293ec
|
|
/* 024293EC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024293EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024293F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024293F4 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024293F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024293F8 */ cpu->lr = cpu->r[0];
|
|
/* 024293FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02429400 */ return;
|
|
}
|
|
|
|
// fn_02429370 @ 0x2429370
|
|
void Gambit_fn_02429370(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02429370: ; // 0x2429370
|
|
/* 02429370 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02429370 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429370 */ cpu->r[1] = _t0;
|
|
/* 02429374 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02429374 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02429378 */ cpu->r[31] = cpu->r[3];
|
|
/* 02429378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0242937C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0242937C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02429380 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429380 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02429380 */ if (_t4) goto L_02429384; else goto L_02429394;
|
|
L_02429384: ; // 0x2429384
|
|
/* 02429384 */ cpu->r[3] = 0x00000228u;
|
|
/* 02429388 */ Gambit_fn_02801A78(cpu);
|
|
/* 0242938C */ cpu->r[31] = cpu->r[3];
|
|
/* 0242938C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02429390 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429390 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02429390 */ if (_t6) goto L_024293EC; else goto L_02429394;
|
|
L_02429394: ; // 0x2429394
|
|
/* 02429394 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02429398 */ cpu->r[3] = cpu->r[31];
|
|
/* 0242939C */ cpu->r[5] = 0x00000001u;
|
|
/* 024293A0 */ cpu->r[4] = cpu->r[4] + 0xFFFF9138u;
|
|
/* 024293A4 */ cpu->r[6] = 0x00000000u;
|
|
/* 024293A8 */ Gambit_fn_020B6F60(cpu);
|
|
/* 024293AC */ cpu->r[11] = 0x100A0000u;
|
|
/* 024293B0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024293B4 */ cpu->r[11] = cpu->r[11] + 0xFFFF9198u;
|
|
/* 024293B8 */ cpu->r[0] = cpu->r[0] + 0xFFFF9388u;
|
|
/* 024293BC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024293C0 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 024293C0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 024293C4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024293C8 */ cpu->r[12] = cpu->r[12] + 0xFFFF9378u;
|
|
/* 024293CC */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024293CC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024293D0 */ cpu->r[11] = cpu->r[11] + 0xFFFF9398u;
|
|
/* 024293D4 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 024293D4 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 024293D8 */ cpu->r[12] = 0x00000000u;
|
|
/* 024293DC */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 024293DC */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 024293E0 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 024293E0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 024293E4 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 024293E4 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 024293E8 */ _t13 = cpu->r[31] + 0x00000220u;
|
|
/* 024293E8 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
L_024293EC: ; // 0x24293ec
|
|
/* 024293EC */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 024293EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024293F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024293F4 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024293F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024293F8 */ cpu->lr = cpu->r[0];
|
|
/* 024293FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02429400 */ return;
|
|
}
|
|
|
|
// fn_02429404 @ 0x2429404
|
|
void Gambit_fn_02429404(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02429404: ; // 0x2429404
|
|
/* 02429404 */ cpu->r[0] = cpu->lr;
|
|
/* 02429408 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02429408 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429408 */ cpu->r[1] = _t0;
|
|
/* 0242940C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0242940C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02429410 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02429410 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02429414 */ cpu->r[31] = cpu->r[4];
|
|
/* 02429414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02429418 */ cpu->r[30] = cpu->r[3];
|
|
/* 0242941C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242941C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02429420 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429420 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02429420 */ if (_t5) goto L_02429460; else goto L_02429424;
|
|
L_02429424: ; // 0x2429424
|
|
/* 02429424 */ _t6 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02429424 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02429428 */ cpu->r[4] = cpu->r[31];
|
|
/* 0242942C */ Gambit_fn_020A84C8(cpu);
|
|
/* 02429430 */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 02429430 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02429434 */ _t8 = cpu->r[30] + 0x00000220u;
|
|
/* 02429434 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02429438 */ cpu->r[5] = 0x00000000u;
|
|
/* 0242943C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0242943C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02429440 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02429444 */ Gambit_fn_020E39F8(cpu);
|
|
/* 02429448 */ _t10 = cpu->r[31] + 0x00000030u;
|
|
/* 02429448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0242944C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02429450 */ _t11 = cpu->r[30] + 0x00000224u;
|
|
/* 02429450 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02429454 */ cpu->r[5] = 0x00000000u;
|
|
/* 02429458 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02429458 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0242945C */ Gambit_fn_020E2B5C(cpu);
|
|
L_02429460: ; // 0x2429460
|
|
/* 02429460 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02429460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02429464 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02429464 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02429468 */ cpu->lr = cpu->r[0];
|
|
/* 0242946C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0242946C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02429470 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02429474 */ return;
|
|
}
|
|
|
|
// fn_02429408 @ 0x2429408
|
|
void Gambit_fn_02429408(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_02429408: ; // 0x2429408
|
|
/* 02429408 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02429408 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429408 */ cpu->r[1] = _t0;
|
|
/* 0242940C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0242940C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02429410 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02429410 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02429414 */ cpu->r[31] = cpu->r[4];
|
|
/* 02429414 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02429418 */ cpu->r[30] = cpu->r[3];
|
|
/* 0242941C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0242941C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02429420 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429420 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02429420 */ if (_t5) goto L_02429460; else goto L_02429424;
|
|
L_02429424: ; // 0x2429424
|
|
/* 02429424 */ _t6 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02429424 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02429428 */ cpu->r[4] = cpu->r[31];
|
|
/* 0242942C */ Gambit_fn_020A84C8(cpu);
|
|
/* 02429430 */ _t7 = cpu->r[31] + 0x00000030u;
|
|
/* 02429430 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02429434 */ _t8 = cpu->r[30] + 0x00000220u;
|
|
/* 02429434 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02429438 */ cpu->r[5] = 0x00000000u;
|
|
/* 0242943C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 0242943C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02429440 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02429444 */ Gambit_fn_020E39F8(cpu);
|
|
/* 02429448 */ _t10 = cpu->r[31] + 0x00000030u;
|
|
/* 02429448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0242944C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02429450 */ _t11 = cpu->r[30] + 0x00000224u;
|
|
/* 02429450 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02429454 */ cpu->r[5] = 0x00000000u;
|
|
/* 02429458 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02429458 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0242945C */ Gambit_fn_020E2B5C(cpu);
|
|
L_02429460: ; // 0x2429460
|
|
/* 02429460 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02429460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02429464 */ _t14 = cpu->r[1] + 0x00000010u;
|
|
/* 02429464 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02429468 */ cpu->lr = cpu->r[0];
|
|
/* 0242946C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0242946C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02429470 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02429474 */ return;
|
|
}
|
|
|
|
// fn_02429478 @ 0x2429478
|
|
void Gambit_fn_02429478(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02429478: ; // 0x2429478
|
|
/* 02429478 */ cpu->r[0] = cpu->lr;
|
|
/* 0242947C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0242947C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242947C */ cpu->r[1] = _t0;
|
|
/* 02429480 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02429480 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02429484 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02429488 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02429488 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0242948C */ cpu->r[12] = cpu->r[12] + 0xFFFF9150u;
|
|
/* 02429490 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02429494 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 02429494 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02429498 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02429498 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0242949C */ cpu->r[29] = 0x100A0000u;
|
|
/* 024294A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024294A4 */ cpu->r[29] = cpu->r[29] + 0xFFFF9110u;
|
|
/* 024294A8 */ cpu->r[0] = cpu->r[0] + 0xFFFF9154u;
|
|
/* 024294AC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024294AC */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 024294B0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 024294B4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024294B4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024294B8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024294B8 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 024294BC */ cpu->r[30] = 0x100A0000u;
|
|
/* 024294C0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024294C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 024294C4 */ cpu->r[30] = cpu->r[30] + 0xFFFF9148u;
|
|
/* 024294C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024294CC */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 024294CC */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 024294D0 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 024294D4 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 024294D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 024294D8 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024294DC */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024294DC */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 024294E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024294E4 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024294E4 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 024294E8 */ Gambit_fn_020B7778(cpu);
|
|
/* 024294EC */ cpu->r[4] = cpu->r[3];
|
|
/* 024294F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024294F4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024294F8 */ Gambit_fn_027ED798(cpu);
|
|
/* 024294FC */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 024294FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02429500 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 02429500 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02429504 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 02429504 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02429508 */ cpu->lr = cpu->r[0];
|
|
/* 0242950C */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0242950C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02429510 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02429514 */ return;
|
|
}
|
|
|
|
// fn_0242947C @ 0x242947c
|
|
void Gambit_fn_0242947C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_0242947C: ; // 0x242947c
|
|
/* 0242947C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 0242947C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242947C */ cpu->r[1] = _t0;
|
|
/* 02429480 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02429480 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02429484 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02429488 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02429488 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 0242948C */ cpu->r[12] = cpu->r[12] + 0xFFFF9150u;
|
|
/* 02429490 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 02429494 */ _t3 = cpu->r[1] + 0x00000028u;
|
|
/* 02429494 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02429498 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02429498 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0242949C */ cpu->r[29] = 0x100A0000u;
|
|
/* 024294A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024294A4 */ cpu->r[29] = cpu->r[29] + 0xFFFF9110u;
|
|
/* 024294A8 */ cpu->r[0] = cpu->r[0] + 0xFFFF9154u;
|
|
/* 024294AC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024294AC */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 024294B0 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 024294B4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024294B4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024294B8 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024294B8 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 024294BC */ cpu->r[30] = 0x100A0000u;
|
|
/* 024294C0 */ _t8 = cpu->r[1] + 0x00000014u;
|
|
/* 024294C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 024294C4 */ cpu->r[30] = cpu->r[30] + 0xFFFF9148u;
|
|
/* 024294C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024294CC */ _t9 = cpu->r[1] + 0x00000010u;
|
|
/* 024294CC */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 024294D0 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 024294D4 */ _t10 = cpu->r[1] + 0x00000018u;
|
|
/* 024294D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 024294D8 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024294DC */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 024294DC */ rbrew_write32(cpu->mem, _t11, cpu->r[30]);
|
|
/* 024294E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024294E4 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024294E4 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 024294E8 */ Gambit_fn_020B7778(cpu);
|
|
/* 024294EC */ cpu->r[4] = cpu->r[3];
|
|
/* 024294F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024294F4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024294F8 */ Gambit_fn_027ED798(cpu);
|
|
/* 024294FC */ _t13 = cpu->r[1] + 0x00000024u;
|
|
/* 024294FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02429500 */ _t14 = cpu->r[1] + 0x00000034u;
|
|
/* 02429500 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02429504 */ _t15 = cpu->r[1] + 0x00000028u;
|
|
/* 02429504 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02429508 */ cpu->lr = cpu->r[0];
|
|
/* 0242950C */ _t16 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0242950C */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02429510 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02429514 */ return;
|
|
}
|
|
|
|
// fn_02429518 @ 0x2429518
|
|
void Gambit_fn_02429518(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02429518: ; // 0x2429518
|
|
/* 02429518 */ cpu->r[0] = cpu->lr;
|
|
/* 0242951C */ cpu->r[10] = 0x100A0000u;
|
|
/* 02429520 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02429524 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02429528 */ cpu->r[10] = cpu->r[10] + 0xFFFF916Cu;
|
|
/* 0242952C */ cpu->r[12] = cpu->r[12] + 0xFFFF9160u;
|
|
/* 02429530 */ cpu->r[11] = cpu->r[11] + 0xFFFF9110u;
|
|
/* 02429534 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02429534 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02429538 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0242953C */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0242953C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 0242953C */ cpu->r[1] = _t1;
|
|
/* 02429540 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02429540 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02429544 */ cpu->r[0] = cpu->r[0] + 0xFFFF9168u;
|
|
/* 02429548 */ _t3 = cpu->r[1] + 0x00000018u;
|
|
/* 02429548 */ rbrew_write32(cpu->mem, _t3, cpu->r[10]);
|
|
/* 0242954C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02429550 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02429550 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 02429554 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02429558 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 02429558 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0242955C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02429560 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02429560 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02429564 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02429564 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02429568 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0242956C */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 0242956C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02429570 */ cpu->lr = cpu->r[0];
|
|
/* 02429574 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02429578 */ return;
|
|
}
|
|
|
|
// fn_0242953C @ 0x242953c
|
|
void Gambit_fn_0242953C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0242953C: ; // 0x242953c
|
|
/* 0242953C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0242953C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0242953C */ cpu->r[1] = _t0;
|
|
/* 02429540 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02429540 */ rbrew_write32(cpu->mem, _t1, cpu->r[11]);
|
|
/* 02429544 */ cpu->r[0] = cpu->r[0] + 0xFFFF9168u;
|
|
/* 02429548 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02429548 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]);
|
|
/* 0242954C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02429550 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02429550 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02429554 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02429558 */ _t4 = cpu->r[1] + 0x00000010u;
|
|
/* 02429558 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0242955C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02429560 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02429560 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02429564 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02429564 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02429568 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0242956C */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 0242956C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02429570 */ cpu->lr = cpu->r[0];
|
|
/* 02429574 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02429578 */ return;
|
|
}
|
|
|
|
// fn_0242957C @ 0x242957c
|
|
void Gambit_fn_0242957C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_0242957C: ; // 0x242957c
|
|
/* 0242957C */ cpu->r[0] = cpu->lr;
|
|
/* 02429580 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02429580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429580 */ cpu->r[1] = _t0;
|
|
/* 02429584 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02429584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02429588 */ cpu->r[31] = 0x100A0000u;
|
|
/* 0242958C */ cpu->r[31] = cpu->r[31] + 0xFFFF9110u;
|
|
/* 02429590 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 02429590 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02429594 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02429594 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02429598 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0242959C */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0242959C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024295A0 */ cpu->r[29] = 0x100A0000u;
|
|
/* 024295A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024295A8 */ cpu->r[29] = cpu->r[29] + 0xFFFF917Cu;
|
|
/* 024295AC */ cpu->r[3] = 0x00000000u;
|
|
/* 024295B0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024295B0 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 024295B4 */ cpu->r[4] = cpu->r[30];
|
|
/* 024295B8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024295B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 024295BC */ Gambit_fn_020A7150(cpu);
|
|
/* 024295C0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024295C0 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 024295C4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 024295C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 024295C8 */ cpu->r[29] = 0x100A0000u;
|
|
/* 024295CC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024295D0 */ cpu->r[29] = cpu->r[29] + 0xFFFF9178u;
|
|
/* 024295D4 */ cpu->r[4] = cpu->r[30];
|
|
/* 024295D8 */ _t9 = cpu->r[30] + 0x0000021Cu;
|
|
/* 024295D8 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 024295DC */ cpu->r[3] = 0x00000000u;
|
|
/* 024295E0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024295E0 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 024295E4 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 024295E8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024295E8 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 024295EC */ Gambit_fn_020E382C(cpu);
|
|
/* 024295F0 */ cpu->r[4] = cpu->r[30];
|
|
/* 024295F4 */ _t12 = cpu->r[30] + 0x00000220u;
|
|
/* 024295F4 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 024295F8 */ cpu->r[3] = 0x00000000u;
|
|
/* 024295FC */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024295FC */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02429600 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02429604 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02429604 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]);
|
|
/* 02429608 */ cpu->r[0] = cpu->r[0] + 0xFFFF918Cu;
|
|
/* 0242960C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242960C */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 02429610 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02429614 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02429618 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02429618 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0242961C */ Gambit_fn_020E2548(cpu);
|
|
/* 02429620 */ _t17 = cpu->r[30] + 0x00000224u;
|
|
/* 02429620 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02429624 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02429624 */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02429628 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02429628 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0242962C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 0242962C */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02429630 */ cpu->lr = cpu->r[0];
|
|
/* 02429634 */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 02429634 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02429638 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0242963C */ return;
|
|
}
|
|
|
|
// fn_02429580 @ 0x2429580
|
|
void Gambit_fn_02429580(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21;
|
|
|
|
L_02429580: ; // 0x2429580
|
|
/* 02429580 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02429580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429580 */ cpu->r[1] = _t0;
|
|
/* 02429584 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 02429584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02429588 */ cpu->r[31] = 0x100A0000u;
|
|
/* 0242958C */ cpu->r[31] = cpu->r[31] + 0xFFFF9110u;
|
|
/* 02429590 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 02429590 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02429594 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02429594 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 02429598 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0242959C */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0242959C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024295A0 */ cpu->r[29] = 0x100A0000u;
|
|
/* 024295A4 */ cpu->r[30] = cpu->r[3];
|
|
/* 024295A8 */ cpu->r[29] = cpu->r[29] + 0xFFFF917Cu;
|
|
/* 024295AC */ cpu->r[3] = 0x00000000u;
|
|
/* 024295B0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024295B0 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 024295B4 */ cpu->r[4] = cpu->r[30];
|
|
/* 024295B8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024295B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]);
|
|
/* 024295BC */ Gambit_fn_020A7150(cpu);
|
|
/* 024295C0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024295C0 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 024295C4 */ _t8 = cpu->r[1] + 0x00000010u;
|
|
/* 024295C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]);
|
|
/* 024295C8 */ cpu->r[29] = 0x100A0000u;
|
|
/* 024295CC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024295D0 */ cpu->r[29] = cpu->r[29] + 0xFFFF9178u;
|
|
/* 024295D4 */ cpu->r[4] = cpu->r[30];
|
|
/* 024295D8 */ _t9 = cpu->r[30] + 0x0000021Cu;
|
|
/* 024295D8 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 024295DC */ cpu->r[3] = 0x00000000u;
|
|
/* 024295E0 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 024295E0 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 024295E4 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 024295E8 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024295E8 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 024295EC */ Gambit_fn_020E382C(cpu);
|
|
/* 024295F0 */ cpu->r[4] = cpu->r[30];
|
|
/* 024295F4 */ _t12 = cpu->r[30] + 0x00000220u;
|
|
/* 024295F4 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 024295F8 */ cpu->r[3] = 0x00000000u;
|
|
/* 024295FC */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 024295FC */ rbrew_write32(cpu->mem, _t13, cpu->r[29]);
|
|
/* 02429600 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02429604 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02429604 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]);
|
|
/* 02429608 */ cpu->r[0] = cpu->r[0] + 0xFFFF918Cu;
|
|
/* 0242960C */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0242960C */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 02429610 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02429614 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02429618 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 02429618 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]);
|
|
/* 0242961C */ Gambit_fn_020E2548(cpu);
|
|
/* 02429620 */ _t17 = cpu->r[30] + 0x00000224u;
|
|
/* 02429620 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02429624 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02429624 */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02429628 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02429628 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0242962C */ _t20 = cpu->r[1] + 0x00000024u;
|
|
/* 0242962C */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02429630 */ cpu->lr = cpu->r[0];
|
|
/* 02429634 */ _t21 = cpu->r[1] + 0x00000020u;
|
|
/* 02429634 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02429638 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 0242963C */ return;
|
|
}
|
|
|
|
// fn_02429640 @ 0x2429640
|
|
void Gambit_fn_02429640(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02429640: ; // 0x2429640
|
|
/* 02429640 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02429644 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02429644 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429644 */ cpu->r[1] = _t0;
|
|
/* 02429648 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0242964C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02429650 */ _t1 = cpu->r[10] + 0x000071F4u;
|
|
/* 02429650 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02429650 */ cpu->r[10] = _t1;
|
|
/* 02429654 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02429658 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02429658 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0242965C */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02429660 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02429664 */ _t3 = cpu->r[7] + 0x00007204u;
|
|
/* 02429664 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02429664 */ cpu->r[7] = _t3;
|
|
/* 02429668 */ _t4 = cpu->r[8] + 0x000071FCu;
|
|
/* 02429668 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02429668 */ cpu->r[8] = _t4;
|
|
/* 0242966C */ cpu->r[0] = 0x00000002u;
|
|
/* 02429670 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02429670 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02429674 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02429678 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02429678 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0242967C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02429680 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02429680 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02429684 */ _t8 = cpu->r[8] + 0x00007214u;
|
|
/* 02429684 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02429684 */ cpu->r[8] = _t8;
|
|
/* 02429688 */ _t9 = cpu->r[12] + 0x0000720Cu;
|
|
/* 02429688 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02429688 */ cpu->r[12] = _t9;
|
|
/* 0242968C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0242968C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02429690 */ cpu->r[0] = 0x00000004u;
|
|
/* 02429694 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02429694 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02429698 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0242969C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0242969C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024296A0 */ _t13 = cpu->r[11] + 0x0000721Cu;
|
|
/* 024296A0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024296A4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024296A8 */ return;
|
|
}
|
|
|
|
// fn_02429644 @ 0x2429644
|
|
void Gambit_fn_02429644(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02429644: ; // 0x2429644
|
|
/* 02429644 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02429644 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02429644 */ cpu->r[1] = _t0;
|
|
/* 02429648 */ cpu->r[10] = 0x101E0000u;
|
|
/* 0242964C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02429650 */ _t1 = cpu->r[10] + 0x000071F4u;
|
|
/* 02429650 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02429650 */ cpu->r[10] = _t1;
|
|
/* 02429654 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02429658 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02429658 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 0242965C */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02429660 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02429664 */ _t3 = cpu->r[7] + 0x00007204u;
|
|
/* 02429664 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02429664 */ cpu->r[7] = _t3;
|
|
/* 02429668 */ _t4 = cpu->r[8] + 0x000071FCu;
|
|
/* 02429668 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02429668 */ cpu->r[8] = _t4;
|
|
/* 0242966C */ cpu->r[0] = 0x00000002u;
|
|
/* 02429670 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02429670 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02429674 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02429678 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02429678 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0242967C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02429680 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02429680 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02429684 */ _t8 = cpu->r[8] + 0x00007214u;
|
|
/* 02429684 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02429684 */ cpu->r[8] = _t8;
|
|
/* 02429688 */ _t9 = cpu->r[12] + 0x0000720Cu;
|
|
/* 02429688 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02429688 */ cpu->r[12] = _t9;
|
|
/* 0242968C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0242968C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02429690 */ cpu->r[0] = 0x00000004u;
|
|
/* 02429694 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02429694 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02429698 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0242969C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0242969C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024296A0 */ _t13 = cpu->r[11] + 0x0000721Cu;
|
|
/* 024296A0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024296A4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024296A8 */ return;
|
|
}
|
|
|
|
// fn_024296AC @ 0x24296ac
|
|
void Gambit_fn_024296AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19;
|
|
|
|
L_024296AC: ; // 0x24296ac
|
|
/* 024296AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024296B0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024296B0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024296B0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024296B0 */ goto L_024296B4;
|
|
L_024296B4: ; // 0x24296b4
|
|
/* 024296B4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024296B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024296B8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024296B8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024296B8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024296B8 */ goto L_024296BC;
|
|
L_024296BC: ; // 0x24296bc
|
|
/* 024296BC */ goto L_02801BB0;
|
|
L_02801B30: ; // 0x2801b30
|
|
/* 02801B30 */ cpu->r[0] = cpu->lr;
|
|
/* 02801B34 */ _t4 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02801B34 */ rbrew_write32(cpu->mem, _t4, cpu->r[1]);
|
|
/* 02801B34 */ cpu->r[1] = _t4;
|
|
/* 02801B38 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B38 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02801B3C */ cpu->r[31] = cpu->r[3];
|
|
/* 02801B40 */ cpu->r[3] = 0x101D0000u;
|
|
/* 02801B44 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B44 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02801B48 */ _t7 = cpu->r[3] + 0xFFFF98F0u;
|
|
/* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B50 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B50 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02801B50 */ if (_t9) goto L_02801B54; else goto L_02801B70;
|
|
L_02801B54: ; // 0x2801b54
|
|
/* 02801B54 */ cpu->r[3] = cpu->r[31];
|
|
/* 02801B58 */ Gambit_fn_02801B20(cpu);
|
|
/* 02801B5C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02801B60 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02801B64 */ cpu->lr = cpu->r[0];
|
|
/* 02801B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801B6C */ return;
|
|
L_02801B70: ; // 0x2801b70
|
|
/* 02801B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02801B74 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B74 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02801B74 */ if (_t13) goto L_02801B9C; else goto L_02801B78;
|
|
L_02801B78: ; // 0x2801b78
|
|
/* 02801B78 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B7C */ Gambit_fn_02826B90(cpu);
|
|
/* 02801B80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02801B84 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02801B84 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02801B84 */ if (_t15) goto L_02801B9C; else goto L_02801B88;
|
|
L_02801B88: ; // 0x2801b88
|
|
/* 02801B88 */ _t16 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02801B8C */ _t17 = cpu->r[12] + 0x0000003Cu;
|
|
/* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02801B90 */ cpu->ctr = cpu->r[0];
|
|
/* 02801B94 */ cpu->r[4] = cpu->r[31];
|
|
/* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02801B9C: ; // 0x2801b9c
|
|
/* 02801B9C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02801BA0 */ _t19 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02801BA4 */ cpu->lr = cpu->r[0];
|
|
/* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02801BAC */ return;
|
|
L_02801BB0: ; // 0x2801bb0
|
|
/* 02801BB0 */ goto L_02801B30;
|
|
}
|
|
|
|
// fn_024296C0 @ 0x24296c0
|
|
void Gambit_fn_024296C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024296C0: ; // 0x24296c0
|
|
/* 024296C0 */ cpu->r[0] = cpu->lr;
|
|
/* 024296C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024296C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024296C4 */ cpu->r[1] = _t0;
|
|
/* 024296C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024296C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024296CC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024296CC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024296D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024296D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024296D4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024296D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024296D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024296DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024296DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024296DC */ if (_t5) goto L_0242974C; else goto L_024296E0;
|
|
L_024296E0: ; // 0x24296e0
|
|
/* 024296E0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024296E4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024296E8 */ cpu->r[0] = cpu->r[0] + 0xFFFF9378u;
|
|
/* 024296EC */ cpu->r[12] = cpu->r[12] + 0xFFFF9398u;
|
|
/* 024296F0 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024296F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024296F4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024296F8 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 024296F8 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024296FC */ cpu->r[11] = cpu->r[11] + 0xFFFF9388u;
|
|
/* 02429700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02429704 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02429704 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02429708 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429708 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02429708 */ if (_t10) goto L_0242973C; else goto L_0242970C;
|
|
L_0242970C: ; // 0x242970c
|
|
/* 0242970C */ cpu->r[10] = 0x10010000u;
|
|
/* 02429710 */ cpu->r[0] = 0x10010000u;
|
|
/* 02429714 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02429718 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 0242971C */ cpu->r[3] = cpu->r[30];
|
|
/* 02429720 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02429720 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02429724 */ cpu->r[0] = 0x10010000u;
|
|
/* 02429728 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02429728 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0242972C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02429730 */ cpu->r[4] = 0x00000000u;
|
|
/* 02429734 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02429734 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02429738 */ Gambit_fn_02068798(cpu);
|
|
L_0242973C: ; // 0x242973c
|
|
/* 0242973C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0242973C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02429740 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429740 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02429740 */ if (_t15) goto L_0242974C; else goto L_02429744;
|
|
L_02429744: ; // 0x2429744
|
|
/* 02429744 */ cpu->r[3] = cpu->r[30];
|
|
/* 02429748 */ Gambit_fn_02801BB0(cpu);
|
|
L_0242974C: ; // 0x242974c
|
|
/* 0242974C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0242974C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02429750 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02429750 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02429754 */ cpu->lr = cpu->r[0];
|
|
/* 02429758 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02429758 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0242975C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02429760 */ return;
|
|
}
|
|
|
|
// fn_024296C4 @ 0x24296c4
|
|
void Gambit_fn_024296C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024296C4: ; // 0x24296c4
|
|
/* 024296C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024296C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024296C4 */ cpu->r[1] = _t0;
|
|
/* 024296C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024296C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024296CC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024296CC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024296D0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024296D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024296D4 */ cpu->r[31] = cpu->r[4];
|
|
/* 024296D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024296D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024296DC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024296DC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024296DC */ if (_t5) goto L_0242974C; else goto L_024296E0;
|
|
L_024296E0: ; // 0x24296e0
|
|
/* 024296E0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024296E4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024296E8 */ cpu->r[0] = cpu->r[0] + 0xFFFF9378u;
|
|
/* 024296EC */ cpu->r[12] = cpu->r[12] + 0xFFFF9398u;
|
|
/* 024296F0 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024296F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024296F4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024296F8 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 024296F8 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 024296FC */ cpu->r[11] = cpu->r[11] + 0xFFFF9388u;
|
|
/* 02429700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02429704 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02429704 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02429708 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429708 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02429708 */ if (_t10) goto L_0242973C; else goto L_0242970C;
|
|
L_0242970C: ; // 0x242970c
|
|
/* 0242970C */ cpu->r[10] = 0x10010000u;
|
|
/* 02429710 */ cpu->r[0] = 0x10010000u;
|
|
/* 02429714 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02429718 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 0242971C */ cpu->r[3] = cpu->r[30];
|
|
/* 02429720 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02429720 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02429724 */ cpu->r[0] = 0x10010000u;
|
|
/* 02429728 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02429728 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0242972C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02429730 */ cpu->r[4] = 0x00000000u;
|
|
/* 02429734 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02429734 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02429738 */ Gambit_fn_02068798(cpu);
|
|
L_0242973C: ; // 0x242973c
|
|
/* 0242973C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0242973C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02429740 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02429740 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02429740 */ if (_t15) goto L_0242974C; else goto L_02429744;
|
|
L_02429744: ; // 0x2429744
|
|
/* 02429744 */ cpu->r[3] = cpu->r[30];
|
|
/* 02429748 */ Gambit_fn_02801BB0(cpu);
|
|
L_0242974C: ; // 0x242974c
|
|
/* 0242974C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0242974C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02429750 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02429750 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02429754 */ cpu->lr = cpu->r[0];
|
|
/* 02429758 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02429758 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0242975C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02429760 */ return;
|
|
}
|
|
|