mirror of
https://github.com/ApfelTeeSaft/RebrewU.git
synced 2026-08-26 19:33:27 +00:00
18331 lines
898 KiB
C++
18331 lines
898 KiB
C++
// Generated by RebrewU -- do not edit
|
|
#include <rebrewu_runtime.h>
|
|
#include <stdint.h>
|
|
#include <math.h>
|
|
|
|
#include "Gambit.h"
|
|
|
|
// fn_02443D84 @ 0x2443d84
|
|
void Gambit_fn_02443D84(CPUState* cpu) {
|
|
L_02443D84: ; // 0x2443d84
|
|
/* 02443D84 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02443D88 */ goto L_024441A4;
|
|
L_024441A4: ; // 0x24441a4
|
|
/* 024441A4 */ return;
|
|
}
|
|
|
|
// fn_02443D8C @ 0x2443d8c
|
|
void Gambit_fn_02443D8C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02443D8C: ; // 0x2443d8c
|
|
/* 02443D8C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02443D90 */ goto L_024441A8;
|
|
L_024441A8: ; // 0x24441a8
|
|
/* 024441A8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024441A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024441AC */ return;
|
|
}
|
|
|
|
// fn_02443D94 @ 0x2443d94
|
|
void Gambit_fn_02443D94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02443D94: ; // 0x2443d94
|
|
/* 02443D94 */ cpu->r[0] = cpu->lr;
|
|
/* 02443D98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02443D98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02443D98 */ cpu->r[1] = _t0;
|
|
/* 02443D9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02443D9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02443DA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02443DA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02443DA4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02443DA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02443DA8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02443DA8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02443DA8 */ if (_t4) goto L_02443DAC; else goto L_02443DBC;
|
|
L_02443DAC: ; // 0x2443dac
|
|
/* 02443DAC */ cpu->r[3] = 0x00000230u;
|
|
/* 02443DB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02443DB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02443DB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02443DB8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02443DB8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02443DB8 */ if (_t6) goto L_02443E1C; else goto L_02443DBC;
|
|
L_02443DBC: ; // 0x2443dbc
|
|
/* 02443DBC */ cpu->r[4] = 0x100A0000u;
|
|
/* 02443DC0 */ cpu->r[5] = 0x00000000u;
|
|
/* 02443DC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02443DC8 */ cpu->r[4] = cpu->r[4] + 0xFFFFC8A8u;
|
|
/* 02443DCC */ cpu->r[6] = cpu->r[5];
|
|
/* 02443DD0 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02443DD4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02443DD8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02443DDC */ cpu->r[11] = cpu->r[11] + 0xFFFFC8FCu;
|
|
/* 02443DE0 */ cpu->r[0] = cpu->r[0] + 0xFFFFCAECu;
|
|
/* 02443DE4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02443DE8 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02443DE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02443DEC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02443DF0 */ cpu->r[12] = cpu->r[12] + 0xFFFFCADCu;
|
|
/* 02443DF4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02443DF4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02443DF8 */ cpu->r[11] = cpu->r[11] + 0xFFFFCAFCu;
|
|
/* 02443DFC */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02443DFC */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02443E00 */ cpu->r[12] = 0x00000000u;
|
|
/* 02443E04 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02443E04 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02443E08 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02443E08 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02443E0C */ _t12 = cpu->r[31] + 0x00000228u;
|
|
/* 02443E0C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02443E10 */ _t13 = cpu->r[31] + 0x00000224u;
|
|
/* 02443E10 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 02443E14 */ _t14 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02443E14 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 02443E18 */ _t15 = cpu->r[31] + 0x00000220u;
|
|
/* 02443E18 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
L_02443E1C: ; // 0x2443e1c
|
|
/* 02443E1C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02443E1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02443E20 */ cpu->r[3] = cpu->r[31];
|
|
/* 02443E24 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02443E24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02443E28 */ cpu->lr = cpu->r[0];
|
|
/* 02443E2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02443E30 */ return;
|
|
}
|
|
|
|
// fn_02443D98 @ 0x2443d98
|
|
void Gambit_fn_02443D98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02443D98: ; // 0x2443d98
|
|
/* 02443D98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02443D98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02443D98 */ cpu->r[1] = _t0;
|
|
/* 02443D9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02443D9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02443DA0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02443DA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02443DA4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02443DA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02443DA8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02443DA8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02443DA8 */ if (_t4) goto L_02443DAC; else goto L_02443DBC;
|
|
L_02443DAC: ; // 0x2443dac
|
|
/* 02443DAC */ cpu->r[3] = 0x00000230u;
|
|
/* 02443DB0 */ Gambit_fn_02801A78(cpu);
|
|
/* 02443DB4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02443DB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02443DB8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02443DB8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02443DB8 */ if (_t6) goto L_02443E1C; else goto L_02443DBC;
|
|
L_02443DBC: ; // 0x2443dbc
|
|
/* 02443DBC */ cpu->r[4] = 0x100A0000u;
|
|
/* 02443DC0 */ cpu->r[5] = 0x00000000u;
|
|
/* 02443DC4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02443DC8 */ cpu->r[4] = cpu->r[4] + 0xFFFFC8A8u;
|
|
/* 02443DCC */ cpu->r[6] = cpu->r[5];
|
|
/* 02443DD0 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02443DD4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02443DD8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02443DDC */ cpu->r[11] = cpu->r[11] + 0xFFFFC8FCu;
|
|
/* 02443DE0 */ cpu->r[0] = cpu->r[0] + 0xFFFFCAECu;
|
|
/* 02443DE4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02443DE8 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02443DE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02443DEC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02443DF0 */ cpu->r[12] = cpu->r[12] + 0xFFFFCADCu;
|
|
/* 02443DF4 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02443DF4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02443DF8 */ cpu->r[11] = cpu->r[11] + 0xFFFFCAFCu;
|
|
/* 02443DFC */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02443DFC */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02443E00 */ cpu->r[12] = 0x00000000u;
|
|
/* 02443E04 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02443E04 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02443E08 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02443E08 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02443E0C */ _t12 = cpu->r[31] + 0x00000228u;
|
|
/* 02443E0C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02443E10 */ _t13 = cpu->r[31] + 0x00000224u;
|
|
/* 02443E10 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]);
|
|
/* 02443E14 */ _t14 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02443E14 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 02443E18 */ _t15 = cpu->r[31] + 0x00000220u;
|
|
/* 02443E18 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
L_02443E1C: ; // 0x2443e1c
|
|
/* 02443E1C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02443E1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02443E20 */ cpu->r[3] = cpu->r[31];
|
|
/* 02443E24 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02443E24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02443E28 */ cpu->lr = cpu->r[0];
|
|
/* 02443E2C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02443E30 */ return;
|
|
}
|
|
|
|
// fn_02443E38 @ 0x2443e38
|
|
void Gambit_fn_02443E38(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02443E38: ; // 0x2443e38
|
|
/* 02443E38 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02443E38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02443E38 */ cpu->r[1] = _t0;
|
|
/* 02443E3C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02443E3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02443E40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02443E44 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02443E44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02443E48 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02443E48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02443E4C */ Gambit_fn_020D2EDC(cpu);
|
|
/* 02443E50 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02443E54 */ Gambit_fn_02175308(cpu);
|
|
/* 02443E58 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02443E5C */ Gambit_fn_02175DE0(cpu);
|
|
/* 02443E60 */ _t4 = cpu->r[31] + 0x00000224u;
|
|
/* 02443E60 */ rbrew_write32(cpu->mem, _t4, cpu->r[3]);
|
|
/* 02443E64 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02443E68 */ Gambit_fn_02175F38(cpu);
|
|
/* 02443E6C */ _t5 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02443E6C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02443E70 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02443E74 */ cpu->r[4] = 0x00000002u;
|
|
/* 02443E78 */ Gambit_fn_021753A0(cpu);
|
|
/* 02443E7C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02443E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02443E80 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02443E80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02443E84 */ cpu->lr = cpu->r[0];
|
|
/* 02443E88 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02443E8C */ return;
|
|
}
|
|
|
|
// fn_02443E94 @ 0x2443e94
|
|
void Gambit_fn_02443E94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02443E94: ; // 0x2443e94
|
|
/* 02443E94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02443E94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02443E94 */ cpu->r[1] = _t0;
|
|
/* 02443E98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02443E98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02443E9C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02443EA0 */ _t2 = cpu->r[12] + 0xFFFFC8B8u;
|
|
/* 02443EA0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02443EA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02443EA8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02443EA8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02443EAC */ _t4 = cpu->r[31] + 0x00000220u;
|
|
/* 02443EAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02443EB0 */ _t5 = cpu->r[31] + 0x00000224u;
|
|
/* 02443EB0 */ rbrew_write32(cpu->mem, _t5, cpu->r[4]);
|
|
/* 02443EB4 */ Gambit_fn_020D657C(cpu);
|
|
/* 02443EB8 */ _t6 = cpu->r[31] + 0x00000220u;
|
|
/* 02443EB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02443EBC */ Gambit_fn_020D64C8(cpu);
|
|
/* 02443EC0 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02443EC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02443EC4 */ cpu->lr = cpu->r[0];
|
|
/* 02443EC8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02443EC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02443ECC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02443ED0 */ return;
|
|
}
|
|
|
|
// fn_02443ED8 @ 0x2443ed8
|
|
void Gambit_fn_02443ED8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02443ED8: ; // 0x2443ed8
|
|
/* 02443ED8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02443ED8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02443ED8 */ cpu->r[1] = _t0;
|
|
/* 02443EDC */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02443EDC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02443EE0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02443EE4 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02443EE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02443EE8 */ _t3 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02443EE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02443EEC */ cpu->r[12] = cpu->r[0] - cpu->r[4];
|
|
/* 02443EF0 */ /* nop */
|
|
/* 02443EF4 */ cpu->r[12] = cpu->r[12] ^ cpu->r[0];
|
|
/* 02443EF8 */ cpu->r[0] = cpu->r[12] - cpu->r[0];
|
|
/* 02443EF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02443EFC */ _t4 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02443EFC */ rbrew_write32(cpu->mem, _t4, cpu->r[4]);
|
|
/* 02443F00 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02443F00 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02443F00 */ if (_t6) goto L_02443F04; else goto L_02443F34;
|
|
L_02443F04: ; // 0x2443f04
|
|
/* 02443F04 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000000Au);
|
|
/* 02443F08 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02443F0C */ _t7 = cpu->r[11] + 0xFFFFC8C0u;
|
|
/* 02443F0C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t7);
|
|
/* 02443F10 */ cpu->r[11] = 0x43300000u;
|
|
/* 02443F14 */ cpu->r[12] = cpu->r[10] ^ 0x80000000u;
|
|
/* 02443F18 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02443F18 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02443F1C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02443F1C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02443F20 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02443F20 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t10);
|
|
/* 02443F24 */ cpu->f[0] = cpu->f[13] - cpu->f[0];
|
|
/* 02443F28 */ cpu->f[1] = (double)(float)cpu->f[0];
|
|
/* 02443F2C */ _t11 = cpu->r[31] + 0x00000228u;
|
|
/* 02443F2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02443F30 */ Gambit_fn_020D657C(cpu);
|
|
L_02443F34: ; // 0x2443f34
|
|
/* 02443F34 */ _t12 = cpu->r[31] + 0x00000228u;
|
|
/* 02443F34 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02443F38 */ Gambit_fn_020D64C8(cpu);
|
|
/* 02443F3C */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02443F3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02443F40 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02443F40 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02443F44 */ cpu->lr = cpu->r[0];
|
|
/* 02443F48 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02443F4C */ return;
|
|
}
|
|
|
|
// fn_02443F60 @ 0x2443f60
|
|
void Gambit_fn_02443F60(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_02443F60: ; // 0x2443f60
|
|
/* 02443F60 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 02443F60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02443F60 */ cpu->r[1] = _t0;
|
|
/* 02443F64 */ /* nop */
|
|
/* 02443F68 */ cpu->r[26] = 0x100A0000u;
|
|
/* 02443F6C */ cpu->r[0] = cpu->lr;
|
|
/* 02443F70 */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02443F70 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02443F74 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02443F78 */ cpu->r[26] = cpu->r[26] + 0xFFFFC870u;
|
|
/* 02443F7C */ cpu->r[0] = cpu->r[0] + 0xFFFFC8C8u;
|
|
/* 02443F80 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02443F80 */ rbrew_write32(cpu->mem, _t2, cpu->r[26]);
|
|
/* 02443F84 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02443F88 */ cpu->r[30] = cpu->r[3];
|
|
/* 02443F8C */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02443F8C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02443F90 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02443F94 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02443F98 */ _t4 = cpu->r[12] + 0xFFFFEDA8u;
|
|
/* 02443F98 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02443F9C */ cpu->r[31] = cpu->r[3];
|
|
/* 02443FA0 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02443FA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02443FA8 */ cpu->r[4] = cpu->r[4] + 0xFFFFEDF4u;
|
|
/* 02443FAC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02443FAC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02443FAC */ if (_t6) goto L_02443FB0; else goto L_02443FC8;
|
|
L_02443FB0: ; // 0x2443fb0
|
|
/* 02443FB0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02443FB4 */ cpu->r[12] = 0x00000001u;
|
|
/* 02443FB8 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02443FBC */ cpu->r[0] = cpu->r[0] + 0xFFFFC898u;
|
|
/* 02443FC0 */ _t7 = cpu->r[10] + 0xFFFFEDA8u;
|
|
/* 02443FC0 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02443FC4 */ _t8 = cpu->r[4] + 0x00000000u;
|
|
/* 02443FC4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02443FC8: ; // 0x2443fc8
|
|
/* 02443FC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02443FCC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02443FCC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02443FCC */ if (_t10) goto L_02443FEC; else goto L_02443FD0;
|
|
L_02443FD0: ; // 0x2443fd0
|
|
/* 02443FD0 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 02443FD0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02443FD4 */ _t12 = cpu->r[6] + 0x0000001Cu;
|
|
/* 02443FD4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02443FD8 */ cpu->ctr = cpu->r[7];
|
|
/* 02443FDC */ cpu->r[3] = cpu->r[31];
|
|
/* 02443FE0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02443FE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02443FE8 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02443FE8 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02443FE8 */ if (_t14) goto L_02443FEC; else goto L_02443FF0;
|
|
L_02443FEC: ; // 0x2443fec
|
|
/* 02443FEC */ cpu->r[31] = 0x00000000u;
|
|
L_02443FF0: ; // 0x2443ff0
|
|
/* 02443FF0 */ _t15 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02443FF0 */ rbrew_write32(cpu->mem, _t15, cpu->r[31]);
|
|
/* 02443FF4 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02443FF8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02443FF8 */ rbrew_write32(cpu->mem, _t16, cpu->r[26]);
|
|
/* 02443FFC */ cpu->r[8] = cpu->r[8] + 0xFFFFC8DCu;
|
|
/* 02444000 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02444004 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444008 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02444008 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 0244400C */ Gambit_fn_026D86B0(cpu);
|
|
/* 02444010 */ cpu->r[28] = 0x101D0000u;
|
|
/* 02444014 */ _t18 = cpu->r[28] + 0xFFFFDBA0u;
|
|
/* 02444014 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02444014 */ cpu->r[28] = _t18;
|
|
/* 02444018 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0244401C */ cpu->r[27] = 0x101D0000u;
|
|
/* 02444020 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444024 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02444028 */ cpu->r[29] = cpu->r[29] + 0xFFFFC888u;
|
|
/* 0244402C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244402C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0244402C */ if (_t20) goto L_02444030; else goto L_0244403C;
|
|
L_02444030: ; // 0x2444030
|
|
/* 02444030 */ _t21 = cpu->r[27] + 0xFFFFED90u;
|
|
/* 02444030 */ rbrew_write32(cpu->mem, _t21, cpu->r[29]);
|
|
/* 02444034 */ cpu->r[11] = 0x00000001u;
|
|
/* 02444038 */ _t22 = cpu->r[28] + 0x00000000u;
|
|
/* 02444038 */ rbrew_write32(cpu->mem, _t22, cpu->r[11]);
|
|
L_0244403C: ; // 0x244403c
|
|
/* 0244403C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02444040 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444040 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02444040 */ if (_t24) goto L_02444064; else goto L_02444044;
|
|
L_02444044: ; // 0x2444044
|
|
/* 02444044 */ _t25 = cpu->r[31] + 0x00000000u;
|
|
/* 02444044 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02444048 */ _t26 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02444048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0244404C */ cpu->ctr = cpu->r[0];
|
|
/* 02444050 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444054 */ cpu->r[4] = cpu->r[27] + 0xFFFFED90u;
|
|
/* 02444058 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0244405C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444060 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444060 */ _t28 = _t27 & 0x00000001u;
|
|
/* 02444060 */ if (_t28) goto L_02444064; else goto L_02444068;
|
|
L_02444064: ; // 0x2444064
|
|
/* 02444064 */ cpu->r[31] = 0x00000000u;
|
|
L_02444068: ; // 0x2444068
|
|
/* 02444068 */ cpu->r[6] = 0x100A0000u;
|
|
/* 0244406C */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244406C */ rbrew_write32(cpu->mem, _t29, cpu->r[26]);
|
|
/* 02444070 */ cpu->r[6] = cpu->r[6] + 0xFFFFC8ECu;
|
|
/* 02444074 */ _t30 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02444074 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02444078 */ _t31 = cpu->r[1] + 0x00000008u;
|
|
/* 02444078 */ rbrew_write32(cpu->mem, _t31, cpu->r[6]);
|
|
/* 0244407C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02444080 */ _t32 = cpu->r[30] + 0x00000220u;
|
|
/* 02444080 */ rbrew_write32(cpu->mem, _t32, cpu->r[31]);
|
|
/* 02444084 */ Gambit_fn_026D86B0(cpu);
|
|
/* 02444088 */ _t33 = cpu->r[28] + 0x00000000u;
|
|
/* 02444088 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0244408C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02444090 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444094 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444094 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02444094 */ if (_t35) goto L_02444098; else goto L_024440A4;
|
|
L_02444098: ; // 0x2444098
|
|
/* 02444098 */ _t36 = cpu->r[27] + 0xFFFFED90u;
|
|
/* 02444098 */ rbrew_write32(cpu->mem, _t36, cpu->r[29]);
|
|
/* 0244409C */ cpu->r[0] = 0x00000001u;
|
|
/* 024440A0 */ _t37 = cpu->r[28] + 0x00000000u;
|
|
/* 024440A0 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]);
|
|
L_024440A4: ; // 0x24440a4
|
|
/* 024440A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024440A8 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024440A8 */ _t39 = _t38 & 0x00000001u;
|
|
/* 024440A8 */ if (_t39) goto L_024440CC; else goto L_024440AC;
|
|
L_024440AC: ; // 0x24440ac
|
|
/* 024440AC */ _t40 = cpu->r[31] + 0x00000000u;
|
|
/* 024440AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t40);
|
|
/* 024440B0 */ _t41 = cpu->r[9] + 0x0000001Cu;
|
|
/* 024440B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024440B4 */ cpu->ctr = cpu->r[0];
|
|
/* 024440B8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024440BC */ cpu->r[4] = cpu->r[27] + 0xFFFFED90u;
|
|
/* 024440C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024440C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024440C8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024440C8 */ _t43 = _t42 & 0x00000001u;
|
|
/* 024440C8 */ if (_t43) goto L_024440CC; else goto L_024440D0;
|
|
L_024440CC: ; // 0x24440cc
|
|
/* 024440CC */ cpu->r[31] = 0x00000000u;
|
|
L_024440D0: ; // 0x24440d0
|
|
/* 024440D0 */ _t44 = cpu->r[30] + 0x00000228u;
|
|
/* 024440D0 */ rbrew_write32(cpu->mem, _t44, cpu->r[31]);
|
|
/* 024440D4 */ /* nop */
|
|
/* 024440D8 */ _t45 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024440D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024440DC */ cpu->lr = cpu->r[0];
|
|
/* 024440E0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024440E4 */ return;
|
|
}
|
|
|
|
// fn_024440E8 @ 0x24440e8
|
|
void Gambit_fn_024440E8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02443E34: ; // 0x2443e34
|
|
/* 02443E34 */ cpu->r[0] = cpu->lr;
|
|
/* 02443E38 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02443E38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02443E38 */ cpu->r[1] = _t0;
|
|
/* 02443E3C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02443E3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02443E40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02443E44 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02443E44 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02443E48 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02443E48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02443E4C */ Gambit_fn_020D2EDC(cpu);
|
|
/* 02443E50 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02443E54 */ Gambit_fn_02175308(cpu);
|
|
/* 02443E58 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02443E5C */ Gambit_fn_02175DE0(cpu);
|
|
/* 02443E60 */ _t4 = cpu->r[31] + 0x00000224u;
|
|
/* 02443E60 */ rbrew_write32(cpu->mem, _t4, cpu->r[3]);
|
|
/* 02443E64 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02443E68 */ Gambit_fn_02175F38(cpu);
|
|
/* 02443E6C */ _t5 = cpu->r[31] + 0x0000022Cu;
|
|
/* 02443E6C */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02443E70 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02443E74 */ cpu->r[4] = 0x00000002u;
|
|
/* 02443E78 */ Gambit_fn_021753A0(cpu);
|
|
/* 02443E7C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02443E7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02443E80 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02443E80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02443E84 */ cpu->lr = cpu->r[0];
|
|
/* 02443E88 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02443E8C */ return;
|
|
L_024440E8: ; // 0x24440e8
|
|
/* 024440E8 */ goto L_02443E34;
|
|
}
|
|
|
|
// fn_024440EC @ 0x24440ec
|
|
void Gambit_fn_024440EC(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_024440EC: ; // 0x24440ec
|
|
/* 024440EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024440F0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024440F0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024440F0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024440F0 */ goto L_024440F4;
|
|
L_024440F4: ; // 0x24440f4
|
|
/* 024440F4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024440F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024440F8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024440F8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024440F8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024440F8 */ goto L_024440FC;
|
|
L_024440FC: ; // 0x24440fc
|
|
/* 024440FC */ 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_02444100 @ 0x2444100
|
|
void Gambit_fn_02444100(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02444100: ; // 0x2444100
|
|
/* 02444100 */ cpu->r[0] = cpu->lr;
|
|
/* 02444104 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02444104 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444104 */ cpu->r[1] = _t0;
|
|
/* 02444108 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444108 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244410C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0244410C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02444110 */ cpu->r[30] = cpu->r[3];
|
|
/* 02444110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444114 */ cpu->r[31] = cpu->r[4];
|
|
/* 02444118 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02444118 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244411C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244411C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244411C */ if (_t5) goto L_0244418C; else goto L_02444120;
|
|
L_02444120: ; // 0x2444120
|
|
/* 02444120 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444124 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444128 */ cpu->r[0] = cpu->r[0] + 0xFFFFCADCu;
|
|
/* 0244412C */ cpu->r[12] = cpu->r[12] + 0xFFFFCAFCu;
|
|
/* 02444130 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444130 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444134 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444138 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444138 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0244413C */ cpu->r[11] = cpu->r[11] + 0xFFFFCAECu;
|
|
/* 02444140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444144 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444144 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444148 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444148 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444148 */ if (_t10) goto L_0244417C; else goto L_0244414C;
|
|
L_0244414C: ; // 0x244414c
|
|
/* 0244414C */ cpu->r[10] = 0x10010000u;
|
|
/* 02444150 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444154 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02444158 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 0244415C */ cpu->r[3] = cpu->r[30];
|
|
/* 02444160 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444160 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02444164 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444168 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444168 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0244416C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02444170 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444174 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444174 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444178 */ Gambit_fn_02068798(cpu);
|
|
L_0244417C: ; // 0x244417c
|
|
/* 0244417C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0244417C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02444180 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444180 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02444180 */ if (_t15) goto L_0244418C; else goto L_02444184;
|
|
L_02444184: ; // 0x2444184
|
|
/* 02444184 */ cpu->r[3] = cpu->r[30];
|
|
/* 02444188 */ Gambit_fn_02801BB0(cpu);
|
|
L_0244418C: ; // 0x244418c
|
|
/* 0244418C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0244418C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02444190 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02444190 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02444194 */ cpu->lr = cpu->r[0];
|
|
/* 02444198 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444198 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0244419C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024441A0 */ return;
|
|
}
|
|
|
|
// fn_02444104 @ 0x2444104
|
|
void Gambit_fn_02444104(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02444104: ; // 0x2444104
|
|
/* 02444104 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02444104 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444104 */ cpu->r[1] = _t0;
|
|
/* 02444108 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444108 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244410C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0244410C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02444110 */ cpu->r[30] = cpu->r[3];
|
|
/* 02444110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444114 */ cpu->r[31] = cpu->r[4];
|
|
/* 02444118 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02444118 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244411C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244411C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244411C */ if (_t5) goto L_0244418C; else goto L_02444120;
|
|
L_02444120: ; // 0x2444120
|
|
/* 02444120 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444124 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444128 */ cpu->r[0] = cpu->r[0] + 0xFFFFCADCu;
|
|
/* 0244412C */ cpu->r[12] = cpu->r[12] + 0xFFFFCAFCu;
|
|
/* 02444130 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444130 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444134 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444138 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444138 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0244413C */ cpu->r[11] = cpu->r[11] + 0xFFFFCAECu;
|
|
/* 02444140 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444144 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444144 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444148 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444148 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444148 */ if (_t10) goto L_0244417C; else goto L_0244414C;
|
|
L_0244414C: ; // 0x244414c
|
|
/* 0244414C */ cpu->r[10] = 0x10010000u;
|
|
/* 02444150 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444154 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02444158 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 0244415C */ cpu->r[3] = cpu->r[30];
|
|
/* 02444160 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444160 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02444164 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444168 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444168 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0244416C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02444170 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444174 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444174 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444178 */ Gambit_fn_02068798(cpu);
|
|
L_0244417C: ; // 0x244417c
|
|
/* 0244417C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0244417C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02444180 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444180 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02444180 */ if (_t15) goto L_0244418C; else goto L_02444184;
|
|
L_02444184: ; // 0x2444184
|
|
/* 02444184 */ cpu->r[3] = cpu->r[30];
|
|
/* 02444188 */ Gambit_fn_02801BB0(cpu);
|
|
L_0244418C: ; // 0x244418c
|
|
/* 0244418C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0244418C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02444190 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02444190 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02444194 */ cpu->lr = cpu->r[0];
|
|
/* 02444198 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444198 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 0244419C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024441A0 */ return;
|
|
}
|
|
|
|
// fn_024441A4 @ 0x24441a4
|
|
void Gambit_fn_024441A4(CPUState* cpu) {
|
|
L_024441A4: ; // 0x24441a4
|
|
/* 024441A4 */ return;
|
|
}
|
|
|
|
// fn_024441A8 @ 0x24441a8
|
|
void Gambit_fn_024441A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024441A8: ; // 0x24441a8
|
|
/* 024441A8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024441A8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024441AC */ return;
|
|
}
|
|
|
|
// fn_024441B0 @ 0x24441b0
|
|
void Gambit_fn_024441B0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024441B0: ; // 0x24441b0
|
|
/* 024441B0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024441B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024441B4 */ return;
|
|
}
|
|
|
|
// fn_024441B8 @ 0x24441b8
|
|
void Gambit_fn_024441B8(CPUState* cpu) {
|
|
L_024441B8: ; // 0x24441b8
|
|
/* 024441B8 */ return;
|
|
}
|
|
|
|
// fn_024441BC @ 0x24441bc
|
|
void Gambit_fn_024441BC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024441BC: ; // 0x24441bc
|
|
/* 024441BC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024441BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024441C0 */ return;
|
|
}
|
|
|
|
// fn_024441C4 @ 0x24441c4
|
|
void Gambit_fn_024441C4(CPUState* cpu) {
|
|
L_024441C4: ; // 0x24441c4
|
|
/* 024441C4 */ return;
|
|
}
|
|
|
|
// fn_024441C8 @ 0x24441c8
|
|
void Gambit_fn_024441C8(CPUState* cpu) {
|
|
L_024441C8: ; // 0x24441c8
|
|
/* 024441C8 */ return;
|
|
}
|
|
|
|
// fn_024441CC @ 0x24441cc
|
|
void Gambit_fn_024441CC(CPUState* cpu) {
|
|
L_024441CC: ; // 0x24441cc
|
|
/* 024441CC */ return;
|
|
}
|
|
|
|
// fn_024441D0 @ 0x24441d0
|
|
void Gambit_fn_024441D0(CPUState* cpu) {
|
|
L_024441D0: ; // 0x24441d0
|
|
/* 024441D0 */ return;
|
|
}
|
|
|
|
// fn_024441D4 @ 0x24441d4
|
|
void Gambit_fn_024441D4(CPUState* cpu) {
|
|
L_024441D4: ; // 0x24441d4
|
|
/* 024441D4 */ cpu->r[3] = 0x00000001u;
|
|
/* 024441D8 */ return;
|
|
}
|
|
|
|
// fn_024441DC @ 0x24441dc
|
|
void Gambit_fn_024441DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024441DC: ; // 0x24441dc
|
|
/* 024441DC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 024441DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024441E0 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024441E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024441E4 */ cpu->ctr = cpu->r[0];
|
|
/* 024441E8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024441EC @ 0x24441ec
|
|
void Gambit_fn_024441EC(CPUState* cpu) {
|
|
L_024441EC: ; // 0x24441ec
|
|
/* 024441EC */ return;
|
|
}
|
|
|
|
// fn_024441F0 @ 0x24441f0
|
|
void Gambit_fn_024441F0(CPUState* cpu) {
|
|
L_024441F0: ; // 0x24441f0
|
|
/* 024441F0 */ cpu->r[3] = 0x00000000u;
|
|
/* 024441F4 */ return;
|
|
}
|
|
|
|
// fn_024441F8 @ 0x24441f8
|
|
void Gambit_fn_024441F8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024441F8: ; // 0x24441f8
|
|
/* 024441F8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 024441FC */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 024441FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024441FC */ cpu->r[9] = _t0;
|
|
/* 02444200 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02444204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02444208 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 0244420C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244420C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0244420C */ if (_t2) goto L_02444210; else goto L_02444224;
|
|
L_02444210: ; // 0x2444210
|
|
/* 02444210 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02444214 */ cpu->r[0] = 0x00000001u;
|
|
/* 02444218 */ cpu->r[7] = cpu->r[7] + 0xFFFFC888u;
|
|
/* 0244421C */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 0244421C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02444220 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02444220 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02444224: ; // 0x2444224
|
|
/* 02444224 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02444228 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444228 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02444228 */ if (_t6) goto L_0244422C; else goto L_02444234;
|
|
L_0244422C: ; // 0x244422c
|
|
/* 0244422C */ cpu->r[3] = 0x00000001u;
|
|
/* 02444230 */ return;
|
|
L_02444234: ; // 0x2444234
|
|
/* 02444234 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02444238 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02444238 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02444238 */ cpu->r[7] = _t7;
|
|
/* 0244423C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02444240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02444244 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02444248 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444248 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02444248 */ if (_t9) goto L_0244424C; else goto L_02444260;
|
|
L_0244424C: ; // 0x244424c
|
|
/* 0244424C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444250 */ cpu->r[9] = 0x00000001u;
|
|
/* 02444254 */ cpu->r[0] = cpu->r[0] + 0xFFFFC860u;
|
|
/* 02444258 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02444258 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0244425C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0244425C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02444260: ; // 0x2444260
|
|
/* 02444260 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02444264 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02444268 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0244426C */ return;
|
|
}
|
|
|
|
// fn_02444270 @ 0x2444270
|
|
void Gambit_fn_02444270(CPUState* cpu) {
|
|
L_02444270: ; // 0x2444270
|
|
/* 02444270 */ return;
|
|
}
|
|
|
|
// fn_02444274 @ 0x2444274
|
|
void Gambit_fn_02444274(CPUState* cpu) {
|
|
L_02444274: ; // 0x2444274
|
|
/* 02444274 */ return;
|
|
}
|
|
|
|
// fn_02444278 @ 0x2444278
|
|
void Gambit_fn_02444278(CPUState* cpu) {
|
|
L_02444278: ; // 0x2444278
|
|
/* 02444278 */ return;
|
|
}
|
|
|
|
// fn_0244427C @ 0x244427c
|
|
void Gambit_fn_0244427C(CPUState* cpu) {
|
|
L_0244427C: ; // 0x244427c
|
|
/* 0244427C */ cpu->r[3] = 0x00000000u;
|
|
/* 02444280 */ return;
|
|
}
|
|
|
|
// fn_02444284 @ 0x2444284
|
|
void Gambit_fn_02444284(CPUState* cpu) {
|
|
L_02444284: ; // 0x2444284
|
|
/* 02444284 */ cpu->r[3] = 0x00000000u;
|
|
/* 02444288 */ return;
|
|
}
|
|
|
|
// fn_0244428C @ 0x244428c
|
|
void Gambit_fn_0244428C(CPUState* cpu) {
|
|
L_0244428C: ; // 0x244428c
|
|
/* 0244428C */ return;
|
|
}
|
|
|
|
// fn_02444290 @ 0x2444290
|
|
void Gambit_fn_02444290(CPUState* cpu) {
|
|
L_02444290: ; // 0x2444290
|
|
/* 02444290 */ return;
|
|
}
|
|
|
|
// fn_02444294 @ 0x2444294
|
|
void Gambit_fn_02444294(CPUState* cpu) {
|
|
L_02444294: ; // 0x2444294
|
|
/* 02444294 */ return;
|
|
}
|
|
|
|
// fn_02444298 @ 0x2444298
|
|
void Gambit_fn_02444298(CPUState* cpu) {
|
|
L_02444298: ; // 0x2444298
|
|
/* 02444298 */ return;
|
|
}
|
|
|
|
// fn_0244429C @ 0x244429c
|
|
void Gambit_fn_0244429C(CPUState* cpu) {
|
|
L_0244429C: ; // 0x244429c
|
|
/* 0244429C */ return;
|
|
}
|
|
|
|
// fn_024442A0 @ 0x24442a0
|
|
void Gambit_fn_024442A0(CPUState* cpu) {
|
|
L_024442A0: ; // 0x24442a0
|
|
/* 024442A0 */ return;
|
|
}
|
|
|
|
// fn_024442A4 @ 0x24442a4
|
|
void Gambit_fn_024442A4(CPUState* cpu) {
|
|
L_024442A4: ; // 0x24442a4
|
|
/* 024442A4 */ return;
|
|
}
|
|
|
|
// fn_024442A8 @ 0x24442a8
|
|
void Gambit_fn_024442A8(CPUState* cpu) {
|
|
L_024442A8: ; // 0x24442a8
|
|
/* 024442A8 */ return;
|
|
}
|
|
|
|
// fn_024442AC @ 0x24442ac
|
|
void Gambit_fn_024442AC(CPUState* cpu) {
|
|
L_024442AC: ; // 0x24442ac
|
|
/* 024442AC */ return;
|
|
}
|
|
|
|
// fn_024442B0 @ 0x24442b0
|
|
void Gambit_fn_024442B0(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_024442B0: ; // 0x24442b0
|
|
/* 024442B0 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 024442B4 */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_024442B8 @ 0x24442b8
|
|
void Gambit_fn_024442B8(CPUState* cpu) {
|
|
L_024442B8: ; // 0x24442b8
|
|
/* 024442B8 */ return;
|
|
}
|
|
|
|
// fn_024442BC @ 0x24442bc
|
|
void Gambit_fn_024442BC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024442BC: ; // 0x24442bc
|
|
/* 024442BC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024442C0 */ goto L_024445CC;
|
|
L_024445CC: ; // 0x24445cc
|
|
/* 024445CC */ cpu->r[0] = cpu->lr;
|
|
/* 024445D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024445D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024445D0 */ cpu->r[1] = _t0;
|
|
/* 024445D4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024445D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024445D8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024445D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024445DC */ cpu->r[30] = cpu->r[3];
|
|
/* 024445DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024445E0 */ cpu->r[31] = cpu->r[4];
|
|
/* 024445E4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024445E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024445E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024445E8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024445E8 */ if (_t5) goto L_02444658; else goto L_024445EC;
|
|
L_024445EC: ; // 0x24445ec
|
|
/* 024445EC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024445F0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024445F4 */ cpu->r[0] = cpu->r[0] + 0xFFFFCDDCu;
|
|
/* 024445F8 */ cpu->r[12] = cpu->r[12] + 0xFFFFCDFCu;
|
|
/* 024445FC */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024445FC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444600 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444604 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444604 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02444608 */ cpu->r[11] = cpu->r[11] + 0xFFFFCDECu;
|
|
/* 0244460C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444610 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444610 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444614 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444614 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444614 */ if (_t10) goto L_02444648; else goto L_02444618;
|
|
L_02444618: ; // 0x2444618
|
|
/* 02444618 */ cpu->r[10] = 0x10010000u;
|
|
/* 0244461C */ cpu->r[0] = 0x10010000u;
|
|
/* 02444620 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02444624 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02444628 */ cpu->r[3] = cpu->r[30];
|
|
/* 0244462C */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0244462C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02444630 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444634 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444634 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02444638 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 0244463C */ cpu->r[4] = 0x00000000u;
|
|
/* 02444640 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444640 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444644 */ Gambit_fn_02068798(cpu);
|
|
L_02444648: ; // 0x2444648
|
|
/* 02444648 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0244464C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244464C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0244464C */ if (_t15) goto L_02444658; else goto L_02444650;
|
|
L_02444650: ; // 0x2444650
|
|
/* 02444650 */ cpu->r[3] = cpu->r[30];
|
|
/* 02444654 */ Gambit_fn_02801BB0(cpu);
|
|
L_02444658: ; // 0x2444658
|
|
/* 02444658 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0244465C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0244465C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02444660 */ cpu->lr = cpu->r[0];
|
|
/* 02444664 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444664 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02444668 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0244466C */ return;
|
|
}
|
|
|
|
// fn_024442C4 @ 0x24442c4
|
|
void Gambit_fn_024442C4(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_024442C4: ; // 0x24442c4
|
|
/* 024442C4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024442C8 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_024442CC @ 0x24442cc
|
|
void Gambit_fn_024442CC(CPUState* cpu) {
|
|
L_024442CC: ; // 0x24442cc
|
|
/* 024442CC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024442D0 */ goto L_02444670;
|
|
L_02444670: ; // 0x2444670
|
|
/* 02444670 */ return;
|
|
}
|
|
|
|
// fn_024442D4 @ 0x24442d4
|
|
void Gambit_fn_024442D4(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024442D4: ; // 0x24442d4
|
|
/* 024442D4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024442D8 */ goto L_02444674;
|
|
L_02444674: ; // 0x2444674
|
|
/* 02444674 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02444674 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444678 */ return;
|
|
}
|
|
|
|
// fn_024442DC @ 0x24442dc
|
|
void Gambit_fn_024442DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_024442DC: ; // 0x24442dc
|
|
/* 024442DC */ cpu->r[0] = cpu->lr;
|
|
/* 024442E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024442E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024442E0 */ cpu->r[1] = _t0;
|
|
/* 024442E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024442E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024442E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024442E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024442EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024442EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024442F0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024442F0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024442F0 */ if (_t4) goto L_024442F4; else goto L_02444304;
|
|
L_024442F4: ; // 0x24442f4
|
|
/* 024442F4 */ cpu->r[3] = 0x00000224u;
|
|
/* 024442F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024442FC */ cpu->r[31] = cpu->r[3];
|
|
/* 024442FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02444300 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444300 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02444300 */ if (_t6) goto L_02444358; else goto L_02444304;
|
|
L_02444304: ; // 0x2444304
|
|
/* 02444304 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02444308 */ cpu->r[3] = cpu->r[31];
|
|
/* 0244430C */ cpu->r[5] = 0x00000001u;
|
|
/* 02444310 */ cpu->r[4] = cpu->r[4] + 0xFFFFCBACu;
|
|
/* 02444314 */ cpu->r[6] = 0x00000000u;
|
|
/* 02444318 */ Gambit_fn_020B6F60(cpu);
|
|
/* 0244431C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444320 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444324 */ cpu->r[12] = cpu->r[12] + 0xFFFFCDDCu;
|
|
/* 02444328 */ cpu->r[11] = cpu->r[11] + 0xFFFFCBFCu;
|
|
/* 0244432C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444330 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02444330 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02444334 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444338 */ cpu->r[0] = cpu->r[0] + 0xFFFFCDECu;
|
|
/* 0244433C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0244433C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444340 */ cpu->r[12] = cpu->r[12] + 0xFFFFCDFCu;
|
|
/* 02444344 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02444344 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02444348 */ cpu->r[0] = 0x00000000u;
|
|
/* 0244434C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 0244434C */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02444350 */ _t11 = cpu->r[31] + 0x00000220u;
|
|
/* 02444350 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 02444354 */ _t12 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02444354 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_02444358: ; // 0x2444358
|
|
/* 02444358 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02444358 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0244435C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444360 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444360 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02444364 */ cpu->lr = cpu->r[0];
|
|
/* 02444368 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0244436C */ return;
|
|
}
|
|
|
|
// fn_024442E0 @ 0x24442e0
|
|
void Gambit_fn_024442E0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_024442E0: ; // 0x24442e0
|
|
/* 024442E0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024442E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024442E0 */ cpu->r[1] = _t0;
|
|
/* 024442E4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024442E4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024442E8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024442E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024442EC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024442EC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024442F0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024442F0 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024442F0 */ if (_t4) goto L_024442F4; else goto L_02444304;
|
|
L_024442F4: ; // 0x24442f4
|
|
/* 024442F4 */ cpu->r[3] = 0x00000224u;
|
|
/* 024442F8 */ Gambit_fn_02801A78(cpu);
|
|
/* 024442FC */ cpu->r[31] = cpu->r[3];
|
|
/* 024442FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02444300 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444300 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02444300 */ if (_t6) goto L_02444358; else goto L_02444304;
|
|
L_02444304: ; // 0x2444304
|
|
/* 02444304 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02444308 */ cpu->r[3] = cpu->r[31];
|
|
/* 0244430C */ cpu->r[5] = 0x00000001u;
|
|
/* 02444310 */ cpu->r[4] = cpu->r[4] + 0xFFFFCBACu;
|
|
/* 02444314 */ cpu->r[6] = 0x00000000u;
|
|
/* 02444318 */ Gambit_fn_020B6F60(cpu);
|
|
/* 0244431C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444320 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444324 */ cpu->r[12] = cpu->r[12] + 0xFFFFCDDCu;
|
|
/* 02444328 */ cpu->r[11] = cpu->r[11] + 0xFFFFCBFCu;
|
|
/* 0244432C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444330 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02444330 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02444334 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444338 */ cpu->r[0] = cpu->r[0] + 0xFFFFCDECu;
|
|
/* 0244433C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 0244433C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444340 */ cpu->r[12] = cpu->r[12] + 0xFFFFCDFCu;
|
|
/* 02444344 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02444344 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02444348 */ cpu->r[0] = 0x00000000u;
|
|
/* 0244434C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 0244434C */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02444350 */ _t11 = cpu->r[31] + 0x00000220u;
|
|
/* 02444350 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
/* 02444354 */ _t12 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02444354 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
L_02444358: ; // 0x2444358
|
|
/* 02444358 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02444358 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0244435C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444360 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444360 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02444364 */ cpu->lr = cpu->r[0];
|
|
/* 02444368 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0244436C */ return;
|
|
}
|
|
|
|
// fn_02444374 @ 0x2444374
|
|
void Gambit_fn_02444374(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;
|
|
|
|
L_02444374: ; // 0x2444374
|
|
/* 02444374 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02444374 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444374 */ cpu->r[1] = _t0;
|
|
/* 02444378 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02444378 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 0244437C */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 0244437C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 02444380 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02444380 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02444384 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444388 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0244438C */ _t4 = cpu->r[1] + 0x00000024u;
|
|
/* 0244438C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]);
|
|
/* 02444390 */ cpu->r[28] = cpu->r[4];
|
|
/* 02444394 */ cpu->r[11] = 0x00000002u;
|
|
/* 02444398 */ _t5 = cpu->r[1] + 0x00000034u;
|
|
/* 02444398 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 0244439C */ _t6 = cpu->r[31] + 0x00000118u;
|
|
/* 0244439C */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024443A0 */ cpu->r[29] = 0x100A0000u;
|
|
/* 024443A4 */ cpu->r[30] = cpu->r[30] + 0xFFFFCBC8u;
|
|
/* 024443A8 */ cpu->r[29] = cpu->r[29] + 0xFFFFCB84u;
|
|
/* 024443AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024443AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024443B0 */ _t7 = cpu->r[31] + 0x0000021Cu;
|
|
/* 024443B0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 024443B4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024443B4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024443B4 */ if (_t9) goto L_024443E8; else goto L_024443B8;
|
|
L_024443B8: ; // 0x24443b8
|
|
/* 024443B8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024443B8 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 024443BC */ cpu->r[4] = 0x00000000u;
|
|
/* 024443C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024443C4 */ _t11 = cpu->r[31] + 0x00000220u;
|
|
/* 024443C4 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[4]);
|
|
/* 024443C8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024443CC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 024443CC */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 024443D0 */ Gambit_fn_027ED798(cpu);
|
|
/* 024443D4 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 024443D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024443D8 */ _t14 = cpu->r[10] + 0x00000164u;
|
|
/* 024443D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024443DC */ cpu->ctr = cpu->r[11];
|
|
/* 024443E0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024443E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_024443E8: ; // 0x24443e8
|
|
/* 024443E8 */ _t15 = cpu->r[31] + 0x00000220u;
|
|
/* 024443E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15);
|
|
/* 024443EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024443F0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024443F0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 024443F0 */ if (_t17) goto L_024443F4; else goto L_02444420;
|
|
L_024443F4: ; // 0x24443f4
|
|
/* 024443F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 024443F8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024443F8 */ _t19 = _t18 & 0x00000001u;
|
|
/* 024443F8 */ if (_t19) goto L_02444450; else goto L_024443FC;
|
|
L_024443FC: ; // 0x24443fc
|
|
/* 024443FC */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 024443FC */ rbrew_write32(cpu->mem, _t20, cpu->r[29]);
|
|
/* 02444400 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444404 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02444408 */ _t21 = cpu->r[12] + 0xFFFFCBC4u;
|
|
/* 02444408 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t21);
|
|
/* 0244440C */ cpu->r[4] = 0x00000000u;
|
|
/* 02444410 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444414 */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02444414 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]);
|
|
/* 02444418 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 0244441C */ goto L_02444450;
|
|
L_02444420: ; // 0x2444420
|
|
/* 02444420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02444424 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444424 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02444424 */ if (_t24) goto L_02444428; else goto L_02444450;
|
|
L_02444428: ; // 0x2444428
|
|
/* 02444428 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0244442C */ _t25 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244442C */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02444430 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444434 */ cpu->r[0] = cpu->r[0] + 0xFFFFCBD0u;
|
|
/* 02444438 */ cpu->r[5] = cpu->r[1] + 0x00000018u;
|
|
/* 0244443C */ _t26 = cpu->r[12] + 0xFFFFCBC4u;
|
|
/* 0244443C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t26);
|
|
/* 02444440 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444444 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444448 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 02444448 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]);
|
|
/* 0244444C */ Gambit_fn_027ED1E4(cpu);
|
|
L_02444450: ; // 0x2444450
|
|
/* 02444450 */ _t28 = cpu->r[31] + 0x00000220u;
|
|
/* 02444450 */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[28]);
|
|
/* 02444454 */ _t29 = cpu->r[1] + 0x00000020u;
|
|
/* 02444454 */ cpu->r[28] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02444458 */ _t30 = cpu->r[1] + 0x00000024u;
|
|
/* 02444458 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30);
|
|
/* 0244445C */ _t31 = cpu->r[1] + 0x00000034u;
|
|
/* 0244445C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02444460 */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 02444460 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02444464 */ cpu->lr = cpu->r[0];
|
|
/* 02444468 */ _t33 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02444468 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33);
|
|
/* 0244446C */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02444470 */ return;
|
|
}
|
|
|
|
// fn_02444474 @ 0x2444474
|
|
void Gambit_fn_02444474(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_02444474: ; // 0x2444474
|
|
/* 02444474 */ cpu->r[0] = cpu->lr;
|
|
/* 02444478 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02444478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444478 */ cpu->r[1] = _t0;
|
|
/* 0244447C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0244447C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02444480 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444484 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444484 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02444488 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02444488 */ cpu->r[6] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0244448C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02444490 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02444490 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02444490 */ if (_t5) goto L_02444494; else goto L_024444F8;
|
|
L_02444494: ; // 0x2444494
|
|
/* 02444494 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02444494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02444498 */ _t6 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02444498 */ rbrew_write32(cpu->mem, _t6, cpu->r[6]);
|
|
/* 0244449C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0244449C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0244449C */ if (_t8) goto L_024444F8; else goto L_024444A0;
|
|
L_024444A0: ; // 0x24444a0
|
|
/* 024444A0 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 024444A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024444A4 */ _t10 = cpu->r[8] + 0x0000016Cu;
|
|
/* 024444A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024444A8 */ cpu->ctr = cpu->r[9];
|
|
/* 024444AC */ cpu->r[3] = cpu->r[31];
|
|
/* 024444B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024444B4 */ _t11 = cpu->r[31] + 0x00000220u;
|
|
/* 024444B4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t11);
|
|
/* 024444B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024444BC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024444BC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024444BC */ if (_t13) goto L_024444F8; else goto L_024444C0;
|
|
L_024444C0: ; // 0x24444c0
|
|
/* 024444C0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024444C4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024444C8 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024444CC */ cpu->r[11] = cpu->r[11] + 0xFFFFCB84u;
|
|
/* 024444D0 */ cpu->r[12] = cpu->r[12] + 0xFFFFCBD8u;
|
|
/* 024444D4 */ _t14 = cpu->r[7] + 0xFFFFCBC4u;
|
|
/* 024444D4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024444D8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024444DC */ cpu->r[3] = cpu->r[31];
|
|
/* 024444E0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024444E0 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 024444E4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024444E8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024444E8 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 024444EC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024444F0 */ cpu->r[0] = 0x00000000u;
|
|
/* 024444F4 */ _t17 = cpu->r[31] + 0x00000220u;
|
|
/* 024444F4 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
L_024444F8: ; // 0x24444f8
|
|
/* 024444F8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024444F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024444FC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024444FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02444500 */ cpu->lr = cpu->r[0];
|
|
/* 02444504 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02444508 */ return;
|
|
}
|
|
|
|
// fn_02444478 @ 0x2444478
|
|
void Gambit_fn_02444478(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_02444478: ; // 0x2444478
|
|
/* 02444478 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02444478 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444478 */ cpu->r[1] = _t0;
|
|
/* 0244447C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0244447C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02444480 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444484 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444484 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02444488 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02444488 */ cpu->r[6] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0244448C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02444490 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02444490 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02444490 */ if (_t5) goto L_02444494; else goto L_024444F8;
|
|
L_02444494: ; // 0x2444494
|
|
/* 02444494 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu;
|
|
/* 02444494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 02444498 */ _t6 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02444498 */ rbrew_write32(cpu->mem, _t6, cpu->r[6]);
|
|
/* 0244449C */ _t7 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0244449C */ _t8 = _t7 & 0x00000001u;
|
|
/* 0244449C */ if (_t8) goto L_024444F8; else goto L_024444A0;
|
|
L_024444A0: ; // 0x24444a0
|
|
/* 024444A0 */ _t9 = cpu->r[31] + 0x00000000u;
|
|
/* 024444A0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024444A4 */ _t10 = cpu->r[8] + 0x0000016Cu;
|
|
/* 024444A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024444A8 */ cpu->ctr = cpu->r[9];
|
|
/* 024444AC */ cpu->r[3] = cpu->r[31];
|
|
/* 024444B0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024444B4 */ _t11 = cpu->r[31] + 0x00000220u;
|
|
/* 024444B4 */ cpu->r[10] = rbrew_read8(cpu->mem, _t11);
|
|
/* 024444B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024444BC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024444BC */ _t13 = _t12 & 0x00000001u;
|
|
/* 024444BC */ if (_t13) goto L_024444F8; else goto L_024444C0;
|
|
L_024444C0: ; // 0x24444c0
|
|
/* 024444C0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024444C4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024444C8 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024444CC */ cpu->r[11] = cpu->r[11] + 0xFFFFCB84u;
|
|
/* 024444D0 */ cpu->r[12] = cpu->r[12] + 0xFFFFCBD8u;
|
|
/* 024444D4 */ _t14 = cpu->r[7] + 0xFFFFCBC4u;
|
|
/* 024444D4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t14);
|
|
/* 024444D8 */ cpu->r[4] = 0x00000000u;
|
|
/* 024444DC */ cpu->r[3] = cpu->r[31];
|
|
/* 024444E0 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024444E0 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 024444E4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024444E8 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 024444E8 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]);
|
|
/* 024444EC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024444F0 */ cpu->r[0] = 0x00000000u;
|
|
/* 024444F4 */ _t17 = cpu->r[31] + 0x00000220u;
|
|
/* 024444F4 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
L_024444F8: ; // 0x24444f8
|
|
/* 024444F8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024444F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024444FC */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 024444FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02444500 */ cpu->lr = cpu->r[0];
|
|
/* 02444504 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02444508 */ return;
|
|
}
|
|
|
|
// fn_0244450C @ 0x244450c
|
|
void Gambit_fn_0244450C(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_0244450C: ; // 0x244450c
|
|
/* 0244450C */ cpu->r[0] = cpu->lr;
|
|
/* 02444510 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02444510 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444510 */ cpu->r[1] = _t0;
|
|
/* 02444514 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02444514 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02444518 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0244451C */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0244451C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02444520 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02444520 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02444524 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444528 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02444528 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0244452C */ cpu->r[29] = 0x100A0000u;
|
|
/* 02444530 */ cpu->r[30] = cpu->r[30] + 0xFFFFCBF0u;
|
|
/* 02444534 */ cpu->r[29] = cpu->r[29] + 0xFFFFCB84u;
|
|
/* 02444538 */ cpu->r[12] = cpu->r[12] + 0xFFFFCBE0u;
|
|
/* 0244453C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0244453C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02444540 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02444540 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02444544 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02444548 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444548 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0244454C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0244454C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02444550 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444554 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444554 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02444558 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0244455C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02444560 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02444560 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02444564 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02444568 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0244456C */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244456C */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02444570 */ cpu->r[0] = cpu->r[0] + 0xFFFFCBE8u;
|
|
/* 02444574 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444574 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02444578 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0244457C */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0244457C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444580 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444584 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 02444584 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02444588 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02444588 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 0244458C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02444590 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02444594 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444594 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02444598 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0244459C */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 0244459C */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024445A0 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 024445A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024445A4 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024445A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024445A8 */ cpu->lr = cpu->r[0];
|
|
/* 024445AC */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 024445AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024445B0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 024445B4 */ return;
|
|
}
|
|
|
|
// fn_02444510 @ 0x2444510
|
|
void Gambit_fn_02444510(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_02444510: ; // 0x2444510
|
|
/* 02444510 */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02444510 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444510 */ cpu->r[1] = _t0;
|
|
/* 02444514 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02444514 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02444518 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0244451C */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 0244451C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02444520 */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02444520 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02444524 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444528 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02444528 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 0244452C */ cpu->r[29] = 0x100A0000u;
|
|
/* 02444530 */ cpu->r[30] = cpu->r[30] + 0xFFFFCBF0u;
|
|
/* 02444534 */ cpu->r[29] = cpu->r[29] + 0xFFFFCB84u;
|
|
/* 02444538 */ cpu->r[12] = cpu->r[12] + 0xFFFFCBE0u;
|
|
/* 0244453C */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 0244453C */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02444540 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02444540 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02444544 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02444548 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444548 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 0244454C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 0244454C */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02444550 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444554 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444554 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02444558 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0244455C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02444560 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02444560 */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02444564 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02444568 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0244456C */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244456C */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02444570 */ cpu->r[0] = cpu->r[0] + 0xFFFFCBE8u;
|
|
/* 02444574 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444574 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02444578 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0244457C */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 0244457C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444580 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444584 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 02444584 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02444588 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02444588 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]);
|
|
/* 0244458C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02444590 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02444594 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444594 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02444598 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 0244459C */ _t17 = cpu->r[1] + 0x00000024u;
|
|
/* 0244459C */ cpu->r[29] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024445A0 */ _t18 = cpu->r[1] + 0x00000034u;
|
|
/* 024445A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024445A4 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024445A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024445A8 */ cpu->lr = cpu->r[0];
|
|
/* 024445AC */ _t20 = cpu->r[1] + 0x00000028u;
|
|
/* 024445AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024445B0 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 024445B4 */ return;
|
|
}
|
|
|
|
// fn_024445B8 @ 0x24445b8
|
|
void Gambit_fn_024445B8(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_024445B8: ; // 0x24445b8
|
|
/* 024445B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024445BC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024445BC */ _t1 = _t0 & 0x00000001u;
|
|
/* 024445BC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024445BC */ goto L_024445C0;
|
|
L_024445C0: ; // 0x24445c0
|
|
/* 024445C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024445C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024445C4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024445C4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024445C4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024445C4 */ goto L_024445C8;
|
|
L_024445C8: ; // 0x24445c8
|
|
/* 024445C8 */ 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_024445CC @ 0x24445cc
|
|
void Gambit_fn_024445CC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024445CC: ; // 0x24445cc
|
|
/* 024445CC */ cpu->r[0] = cpu->lr;
|
|
/* 024445D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024445D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024445D0 */ cpu->r[1] = _t0;
|
|
/* 024445D4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024445D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024445D8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024445D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024445DC */ cpu->r[30] = cpu->r[3];
|
|
/* 024445DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024445E0 */ cpu->r[31] = cpu->r[4];
|
|
/* 024445E4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024445E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024445E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024445E8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024445E8 */ if (_t5) goto L_02444658; else goto L_024445EC;
|
|
L_024445EC: ; // 0x24445ec
|
|
/* 024445EC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024445F0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024445F4 */ cpu->r[0] = cpu->r[0] + 0xFFFFCDDCu;
|
|
/* 024445F8 */ cpu->r[12] = cpu->r[12] + 0xFFFFCDFCu;
|
|
/* 024445FC */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024445FC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444600 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444604 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444604 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02444608 */ cpu->r[11] = cpu->r[11] + 0xFFFFCDECu;
|
|
/* 0244460C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444610 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444610 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444614 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444614 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444614 */ if (_t10) goto L_02444648; else goto L_02444618;
|
|
L_02444618: ; // 0x2444618
|
|
/* 02444618 */ cpu->r[10] = 0x10010000u;
|
|
/* 0244461C */ cpu->r[0] = 0x10010000u;
|
|
/* 02444620 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02444624 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02444628 */ cpu->r[3] = cpu->r[30];
|
|
/* 0244462C */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0244462C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02444630 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444634 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444634 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02444638 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 0244463C */ cpu->r[4] = 0x00000000u;
|
|
/* 02444640 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444640 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444644 */ Gambit_fn_02068798(cpu);
|
|
L_02444648: ; // 0x2444648
|
|
/* 02444648 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0244464C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244464C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0244464C */ if (_t15) goto L_02444658; else goto L_02444650;
|
|
L_02444650: ; // 0x2444650
|
|
/* 02444650 */ cpu->r[3] = cpu->r[30];
|
|
/* 02444654 */ Gambit_fn_02801BB0(cpu);
|
|
L_02444658: ; // 0x2444658
|
|
/* 02444658 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0244465C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0244465C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02444660 */ cpu->lr = cpu->r[0];
|
|
/* 02444664 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444664 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02444668 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0244466C */ return;
|
|
}
|
|
|
|
// fn_024445D0 @ 0x24445d0
|
|
void Gambit_fn_024445D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024445D0: ; // 0x24445d0
|
|
/* 024445D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024445D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024445D0 */ cpu->r[1] = _t0;
|
|
/* 024445D4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024445D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024445D8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024445D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024445DC */ cpu->r[30] = cpu->r[3];
|
|
/* 024445DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 024445E0 */ cpu->r[31] = cpu->r[4];
|
|
/* 024445E4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024445E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024445E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024445E8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024445E8 */ if (_t5) goto L_02444658; else goto L_024445EC;
|
|
L_024445EC: ; // 0x24445ec
|
|
/* 024445EC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024445F0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024445F4 */ cpu->r[0] = cpu->r[0] + 0xFFFFCDDCu;
|
|
/* 024445F8 */ cpu->r[12] = cpu->r[12] + 0xFFFFCDFCu;
|
|
/* 024445FC */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024445FC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444600 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444604 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444604 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02444608 */ cpu->r[11] = cpu->r[11] + 0xFFFFCDECu;
|
|
/* 0244460C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444610 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444610 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444614 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444614 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444614 */ if (_t10) goto L_02444648; else goto L_02444618;
|
|
L_02444618: ; // 0x2444618
|
|
/* 02444618 */ cpu->r[10] = 0x10010000u;
|
|
/* 0244461C */ cpu->r[0] = 0x10010000u;
|
|
/* 02444620 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02444624 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02444628 */ cpu->r[3] = cpu->r[30];
|
|
/* 0244462C */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0244462C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02444630 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444634 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444634 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02444638 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 0244463C */ cpu->r[4] = 0x00000000u;
|
|
/* 02444640 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444640 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444644 */ Gambit_fn_02068798(cpu);
|
|
L_02444648: ; // 0x2444648
|
|
/* 02444648 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444648 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0244464C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244464C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0244464C */ if (_t15) goto L_02444658; else goto L_02444650;
|
|
L_02444650: ; // 0x2444650
|
|
/* 02444650 */ cpu->r[3] = cpu->r[30];
|
|
/* 02444654 */ Gambit_fn_02801BB0(cpu);
|
|
L_02444658: ; // 0x2444658
|
|
/* 02444658 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 0244465C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 0244465C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02444660 */ cpu->lr = cpu->r[0];
|
|
/* 02444664 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444664 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02444668 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0244466C */ return;
|
|
}
|
|
|
|
// fn_02444670 @ 0x2444670
|
|
void Gambit_fn_02444670(CPUState* cpu) {
|
|
L_02444670: ; // 0x2444670
|
|
/* 02444670 */ return;
|
|
}
|
|
|
|
// fn_02444674 @ 0x2444674
|
|
void Gambit_fn_02444674(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02444674: ; // 0x2444674
|
|
/* 02444674 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02444674 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444678 */ return;
|
|
}
|
|
|
|
// fn_0244467C @ 0x244467c
|
|
void Gambit_fn_0244467C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_0244467C: ; // 0x244467c
|
|
/* 0244467C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 0244467C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444680 */ return;
|
|
}
|
|
|
|
// fn_02444684 @ 0x2444684
|
|
void Gambit_fn_02444684(CPUState* cpu) {
|
|
L_02444684: ; // 0x2444684
|
|
/* 02444684 */ return;
|
|
}
|
|
|
|
// fn_02444688 @ 0x2444688
|
|
void Gambit_fn_02444688(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02444688: ; // 0x2444688
|
|
/* 02444688 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02444688 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0244468C */ return;
|
|
}
|
|
|
|
// fn_02444690 @ 0x2444690
|
|
void Gambit_fn_02444690(CPUState* cpu) {
|
|
L_02444690: ; // 0x2444690
|
|
/* 02444690 */ return;
|
|
}
|
|
|
|
// fn_02444694 @ 0x2444694
|
|
void Gambit_fn_02444694(CPUState* cpu) {
|
|
L_02444694: ; // 0x2444694
|
|
/* 02444694 */ return;
|
|
}
|
|
|
|
// fn_02444698 @ 0x2444698
|
|
void Gambit_fn_02444698(CPUState* cpu) {
|
|
L_02444698: ; // 0x2444698
|
|
/* 02444698 */ return;
|
|
}
|
|
|
|
// fn_0244469C @ 0x244469c
|
|
void Gambit_fn_0244469C(CPUState* cpu) {
|
|
L_0244469C: ; // 0x244469c
|
|
/* 0244469C */ return;
|
|
}
|
|
|
|
// fn_024446A0 @ 0x24446a0
|
|
void Gambit_fn_024446A0(CPUState* cpu) {
|
|
L_024446A0: ; // 0x24446a0
|
|
/* 024446A0 */ return;
|
|
}
|
|
|
|
// fn_024446A4 @ 0x24446a4
|
|
void Gambit_fn_024446A4(CPUState* cpu) {
|
|
L_024446A4: ; // 0x24446a4
|
|
/* 024446A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 024446A8 */ return;
|
|
}
|
|
|
|
// fn_024446AC @ 0x24446ac
|
|
void Gambit_fn_024446AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024446AC: ; // 0x24446ac
|
|
/* 024446AC */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 024446AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024446B0 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024446B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024446B4 */ cpu->ctr = cpu->r[0];
|
|
/* 024446B8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024446BC @ 0x24446bc
|
|
void Gambit_fn_024446BC(CPUState* cpu) {
|
|
L_024446BC: ; // 0x24446bc
|
|
/* 024446BC */ return;
|
|
}
|
|
|
|
// fn_024446C0 @ 0x24446c0
|
|
void Gambit_fn_024446C0(CPUState* cpu) {
|
|
L_024446C0: ; // 0x24446c0
|
|
/* 024446C0 */ cpu->r[3] = 0x00000000u;
|
|
/* 024446C4 */ return;
|
|
}
|
|
|
|
// fn_024446C8 @ 0x24446c8
|
|
void Gambit_fn_024446C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024446C8: ; // 0x24446c8
|
|
/* 024446C8 */ cpu->r[9] = 0x101D0000u;
|
|
/* 024446CC */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 024446CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024446CC */ cpu->r[9] = _t0;
|
|
/* 024446D0 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024446D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024446D8 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 024446DC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024446DC */ _t2 = _t1 & 0x00000001u;
|
|
/* 024446DC */ if (_t2) goto L_024446E0; else goto L_024446F4;
|
|
L_024446E0: ; // 0x24446e0
|
|
/* 024446E0 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024446E4 */ cpu->r[0] = 0x00000001u;
|
|
/* 024446E8 */ cpu->r[7] = cpu->r[7] + 0xFFFFCB9Cu;
|
|
/* 024446EC */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 024446EC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024446F0 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 024446F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_024446F4: ; // 0x24446f4
|
|
/* 024446F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 024446F8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024446F8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024446F8 */ if (_t6) goto L_024446FC; else goto L_02444704;
|
|
L_024446FC: ; // 0x24446fc
|
|
/* 024446FC */ cpu->r[3] = 0x00000001u;
|
|
/* 02444700 */ return;
|
|
L_02444704: ; // 0x2444704
|
|
/* 02444704 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02444708 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02444708 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02444708 */ cpu->r[7] = _t7;
|
|
/* 0244470C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02444710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02444714 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02444718 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444718 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02444718 */ if (_t9) goto L_0244471C; else goto L_02444730;
|
|
L_0244471C: ; // 0x244471c
|
|
/* 0244471C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444720 */ cpu->r[9] = 0x00000001u;
|
|
/* 02444724 */ cpu->r[0] = cpu->r[0] + 0xFFFFCB74u;
|
|
/* 02444728 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02444728 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 0244472C */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 0244472C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02444730: ; // 0x2444730
|
|
/* 02444730 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02444734 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02444738 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 0244473C */ return;
|
|
}
|
|
|
|
// fn_02444740 @ 0x2444740
|
|
void Gambit_fn_02444740(CPUState* cpu) {
|
|
L_02444740: ; // 0x2444740
|
|
/* 02444740 */ return;
|
|
}
|
|
|
|
// fn_02444744 @ 0x2444744
|
|
void Gambit_fn_02444744(CPUState* cpu) {
|
|
L_02444744: ; // 0x2444744
|
|
/* 02444744 */ return;
|
|
}
|
|
|
|
// fn_02444748 @ 0x2444748
|
|
void Gambit_fn_02444748(CPUState* cpu) {
|
|
L_02444748: ; // 0x2444748
|
|
/* 02444748 */ return;
|
|
}
|
|
|
|
// fn_0244474C @ 0x244474c
|
|
void Gambit_fn_0244474C(CPUState* cpu) {
|
|
L_0244474C: ; // 0x244474c
|
|
/* 0244474C */ cpu->r[3] = 0x00000000u;
|
|
/* 02444750 */ return;
|
|
}
|
|
|
|
// fn_02444754 @ 0x2444754
|
|
void Gambit_fn_02444754(CPUState* cpu) {
|
|
L_02444754: ; // 0x2444754
|
|
/* 02444754 */ cpu->r[3] = 0x00000000u;
|
|
/* 02444758 */ return;
|
|
}
|
|
|
|
// fn_0244475C @ 0x244475c
|
|
void Gambit_fn_0244475C(CPUState* cpu) {
|
|
L_0244475C: ; // 0x244475c
|
|
/* 0244475C */ return;
|
|
}
|
|
|
|
// fn_02444760 @ 0x2444760
|
|
void Gambit_fn_02444760(CPUState* cpu) {
|
|
L_02444760: ; // 0x2444760
|
|
/* 02444760 */ return;
|
|
}
|
|
|
|
// fn_02444764 @ 0x2444764
|
|
void Gambit_fn_02444764(CPUState* cpu) {
|
|
L_02444764: ; // 0x2444764
|
|
/* 02444764 */ return;
|
|
}
|
|
|
|
// fn_02444768 @ 0x2444768
|
|
void Gambit_fn_02444768(CPUState* cpu) {
|
|
L_02444768: ; // 0x2444768
|
|
/* 02444768 */ return;
|
|
}
|
|
|
|
// fn_0244476C @ 0x244476c
|
|
void Gambit_fn_0244476C(CPUState* cpu) {
|
|
L_0244476C: ; // 0x244476c
|
|
/* 0244476C */ return;
|
|
}
|
|
|
|
// fn_02444770 @ 0x2444770
|
|
void Gambit_fn_02444770(CPUState* cpu) {
|
|
L_02444770: ; // 0x2444770
|
|
/* 02444770 */ return;
|
|
}
|
|
|
|
// fn_02444774 @ 0x2444774
|
|
void Gambit_fn_02444774(CPUState* cpu) {
|
|
L_02444774: ; // 0x2444774
|
|
/* 02444774 */ return;
|
|
}
|
|
|
|
// fn_02444778 @ 0x2444778
|
|
void Gambit_fn_02444778(CPUState* cpu) {
|
|
L_02444778: ; // 0x2444778
|
|
/* 02444778 */ return;
|
|
}
|
|
|
|
// fn_0244477C @ 0x244477c
|
|
void Gambit_fn_0244477C(CPUState* cpu) {
|
|
L_0244477C: ; // 0x244477c
|
|
/* 0244477C */ return;
|
|
}
|
|
|
|
// fn_02444780 @ 0x2444780
|
|
void Gambit_fn_02444780(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_02444780: ; // 0x2444780
|
|
/* 02444780 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02444784 */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_02444788 @ 0x2444788
|
|
void Gambit_fn_02444788(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02444788: ; // 0x2444788
|
|
/* 02444788 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0244478C */ goto L_02444D10;
|
|
L_02444D10: ; // 0x2444d10
|
|
/* 02444D10 */ cpu->r[0] = cpu->lr;
|
|
/* 02444D14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02444D14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444D14 */ cpu->r[1] = _t0;
|
|
/* 02444D18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444D18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02444D1C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02444D1C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02444D20 */ cpu->r[30] = cpu->r[3];
|
|
/* 02444D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444D24 */ cpu->r[31] = cpu->r[4];
|
|
/* 02444D28 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02444D28 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02444D2C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D2C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02444D2C */ if (_t5) goto L_02444D9C; else goto L_02444D30;
|
|
L_02444D30: ; // 0x2444d30
|
|
/* 02444D30 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444D34 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444D38 */ cpu->r[0] = cpu->r[0] + 0xFFFFD134u;
|
|
/* 02444D3C */ cpu->r[12] = cpu->r[12] + 0xFFFFD154u;
|
|
/* 02444D40 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444D40 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444D44 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444D48 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444D48 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02444D4C */ cpu->r[11] = cpu->r[11] + 0xFFFFD144u;
|
|
/* 02444D50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444D54 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444D54 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444D58 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D58 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444D58 */ if (_t10) goto L_02444D8C; else goto L_02444D5C;
|
|
L_02444D5C: ; // 0x2444d5c
|
|
/* 02444D5C */ cpu->r[10] = 0x10010000u;
|
|
/* 02444D60 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444D64 */ cpu->r[10] = cpu->r[10] + 0x00004564u;
|
|
/* 02444D68 */ cpu->r[0] = cpu->r[0] + 0x00004554u;
|
|
/* 02444D6C */ cpu->r[3] = cpu->r[30];
|
|
/* 02444D70 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444D70 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02444D74 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444D78 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444D78 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02444D7C */ cpu->r[0] = cpu->r[0] + 0x00004574u;
|
|
/* 02444D80 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444D84 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444D84 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444D88 */ Gambit_fn_02068798(cpu);
|
|
L_02444D8C: ; // 0x2444d8c
|
|
/* 02444D8C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444D8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02444D90 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D90 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02444D90 */ if (_t15) goto L_02444D9C; else goto L_02444D94;
|
|
L_02444D94: ; // 0x2444d94
|
|
/* 02444D94 */ cpu->r[3] = cpu->r[30];
|
|
/* 02444D98 */ Gambit_fn_02801BB0(cpu);
|
|
L_02444D9C: ; // 0x2444d9c
|
|
/* 02444D9C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444D9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02444DA0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02444DA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02444DA4 */ cpu->lr = cpu->r[0];
|
|
/* 02444DA8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444DA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02444DAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02444DB0 */ return;
|
|
}
|
|
|
|
// fn_02444790 @ 0x2444790
|
|
void Gambit_fn_02444790(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_02444790: ; // 0x2444790
|
|
/* 02444790 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02444794 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02444798 @ 0x2444798
|
|
void Gambit_fn_02444798(CPUState* cpu) {
|
|
L_02444798: ; // 0x2444798
|
|
/* 02444798 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0244479C */ goto L_02444DB4;
|
|
L_02444DB4: ; // 0x2444db4
|
|
/* 02444DB4 */ return;
|
|
}
|
|
|
|
// fn_024447A0 @ 0x24447a0
|
|
void Gambit_fn_024447A0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024447A0: ; // 0x24447a0
|
|
/* 024447A0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024447A4 */ goto L_02444DB8;
|
|
L_02444DB8: ; // 0x2444db8
|
|
/* 02444DB8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02444DB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444DBC */ return;
|
|
}
|
|
|
|
// fn_024447A8 @ 0x24447a8
|
|
void Gambit_fn_024447A8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_024447A8: ; // 0x24447a8
|
|
/* 024447A8 */ cpu->r[0] = cpu->lr;
|
|
/* 024447AC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024447AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024447AC */ cpu->r[1] = _t0;
|
|
/* 024447B0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024447B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024447B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024447B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024447B8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024447B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024447BC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024447BC */ _t4 = _t3 & 0x00000001u;
|
|
/* 024447BC */ if (_t4) goto L_024447C0; else goto L_024447D0;
|
|
L_024447C0: ; // 0x24447c0
|
|
/* 024447C0 */ cpu->r[3] = 0x00000224u;
|
|
/* 024447C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024447C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024447C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024447CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024447CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 024447CC */ if (_t6) goto L_02444830; else goto L_024447D0;
|
|
L_024447D0: ; // 0x24447d0
|
|
/* 024447D0 */ cpu->r[4] = 0x100A0000u;
|
|
/* 024447D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024447D8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024447DC */ cpu->r[4] = cpu->r[4] + 0xFFFFCF14u;
|
|
/* 024447E0 */ Gambit_fn_020B5C38(cpu);
|
|
/* 024447E4 */ cpu->r[8] = 0x100A0000u;
|
|
/* 024447E8 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024447EC */ cpu->r[8] = cpu->r[8] + 0xFFFFCF64u;
|
|
/* 024447F0 */ cpu->r[9] = cpu->r[9] + 0xFFFFD134u;
|
|
/* 024447F4 */ cpu->r[10] = 0x100A0000u;
|
|
/* 024447F8 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 024447F8 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 024447FC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444800 */ cpu->r[10] = cpu->r[10] + 0xFFFFD144u;
|
|
/* 02444804 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02444804 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02444808 */ cpu->r[12] = 0x00000002u;
|
|
/* 0244480C */ cpu->r[0] = 0x00000000u;
|
|
/* 02444810 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02444810 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02444814 */ cpu->r[10] = cpu->r[31] + 0x00000214u;
|
|
/* 02444818 */ cpu->r[11] = cpu->r[11] + 0xFFFFD154u;
|
|
/* 0244481C */ _t10 = cpu->r[31] + 0x00000220u;
|
|
/* 0244481C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02444820 */ cpu->ctr = cpu->r[12];
|
|
/* 02444824 */ _t11 = cpu->r[31] + 0x000001C8u;
|
|
/* 02444824 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_02444828: ; // 0x2444828
|
|
/* 02444828 */ _t12 = cpu->r[10] + 0x00000004u;
|
|
/* 02444828 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02444828 */ cpu->r[10] = _t12;
|
|
/* 0244482C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0244482C */ _t13 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0244482C */ _t14 = _t13 >> (0x00000002u & 31u);
|
|
/* 0244482C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0244482C */ if (_t15) goto L_02444828; else goto L_02444830;
|
|
L_02444830: ; // 0x2444830
|
|
/* 02444830 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444830 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02444834 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444838 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444838 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0244483C */ cpu->lr = cpu->r[0];
|
|
/* 02444840 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02444844 */ return;
|
|
}
|
|
|
|
// fn_024447AC @ 0x24447ac
|
|
void Gambit_fn_024447AC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_024447AC: ; // 0x24447ac
|
|
/* 024447AC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024447AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024447AC */ cpu->r[1] = _t0;
|
|
/* 024447B0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024447B0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024447B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024447B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024447B8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024447B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024447BC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024447BC */ _t4 = _t3 & 0x00000001u;
|
|
/* 024447BC */ if (_t4) goto L_024447C0; else goto L_024447D0;
|
|
L_024447C0: ; // 0x24447c0
|
|
/* 024447C0 */ cpu->r[3] = 0x00000224u;
|
|
/* 024447C4 */ Gambit_fn_02801A78(cpu);
|
|
/* 024447C8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024447C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024447CC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024447CC */ _t6 = _t5 & 0x00000001u;
|
|
/* 024447CC */ if (_t6) goto L_02444830; else goto L_024447D0;
|
|
L_024447D0: ; // 0x24447d0
|
|
/* 024447D0 */ cpu->r[4] = 0x100A0000u;
|
|
/* 024447D4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024447D8 */ cpu->r[5] = 0x00000001u;
|
|
/* 024447DC */ cpu->r[4] = cpu->r[4] + 0xFFFFCF14u;
|
|
/* 024447E0 */ Gambit_fn_020B5C38(cpu);
|
|
/* 024447E4 */ cpu->r[8] = 0x100A0000u;
|
|
/* 024447E8 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024447EC */ cpu->r[8] = cpu->r[8] + 0xFFFFCF64u;
|
|
/* 024447F0 */ cpu->r[9] = cpu->r[9] + 0xFFFFD134u;
|
|
/* 024447F4 */ cpu->r[10] = 0x100A0000u;
|
|
/* 024447F8 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 024447F8 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]);
|
|
/* 024447FC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444800 */ cpu->r[10] = cpu->r[10] + 0xFFFFD144u;
|
|
/* 02444804 */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02444804 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]);
|
|
/* 02444808 */ cpu->r[12] = 0x00000002u;
|
|
/* 0244480C */ cpu->r[0] = 0x00000000u;
|
|
/* 02444810 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02444810 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02444814 */ cpu->r[10] = cpu->r[31] + 0x00000214u;
|
|
/* 02444818 */ cpu->r[11] = cpu->r[11] + 0xFFFFD154u;
|
|
/* 0244481C */ _t10 = cpu->r[31] + 0x00000220u;
|
|
/* 0244481C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02444820 */ cpu->ctr = cpu->r[12];
|
|
/* 02444824 */ _t11 = cpu->r[31] + 0x000001C8u;
|
|
/* 02444824 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
L_02444828: ; // 0x2444828
|
|
/* 02444828 */ _t12 = cpu->r[10] + 0x00000004u;
|
|
/* 02444828 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02444828 */ cpu->r[10] = _t12;
|
|
/* 0244482C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0244482C */ _t13 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0244482C */ _t14 = _t13 >> (0x00000002u & 31u);
|
|
/* 0244482C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0244482C */ if (_t15) goto L_02444828; else goto L_02444830;
|
|
L_02444830: ; // 0x2444830
|
|
/* 02444830 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444830 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02444834 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444838 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444838 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0244483C */ cpu->lr = cpu->r[0];
|
|
/* 02444840 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02444844 */ return;
|
|
}
|
|
|
|
// fn_02444880 @ 0x2444880
|
|
void Gambit_fn_02444880(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_02444880: ; // 0x2444880
|
|
/* 02444880 */ cpu->r[0] = cpu->lr;
|
|
/* 02444884 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02444884 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444884 */ cpu->r[1] = _t0;
|
|
/* 02444888 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02444888 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244488C */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0244488C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02444890 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444894 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 02444894 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02444898 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244489C */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0244489C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024448A0 */ Gambit_fn_021734AC(cpu);
|
|
/* 024448A4 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024448A8 */ Gambit_fn_02173798(cpu);
|
|
/* 024448AC */ cpu->r[30] = 0x100A0000u;
|
|
/* 024448B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024448B4 */ cpu->r[29] = 0x100A0000u;
|
|
/* 024448B8 */ cpu->r[30] = cpu->r[30] + 0xFFFFCF30u;
|
|
/* 024448BC */ cpu->r[29] = cpu->r[29] + 0xFFFFCE84u;
|
|
/* 024448C0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024448C0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024448C0 */ if (_t6) goto L_02444948; else goto L_024448C4;
|
|
L_024448C4: ; // 0x24448c4
|
|
/* 024448C4 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024448C8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024448CC */ Gambit_fn_021735AC(cpu);
|
|
/* 024448D0 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024448D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024448D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024448D8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024448D8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024448D8 */ if (_t9) goto L_024448E4; else goto L_024448DC;
|
|
L_024448DC: ; // 0x24448dc
|
|
/* 024448DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 024448E0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024448E0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024448E0 */ if (_t11) goto L_024448E4; else goto L_02444948;
|
|
L_024448E4: ; // 0x24448e4
|
|
/* 024448E4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024448E8 */ _t12 = cpu->r[12] + 0x0000457Cu;
|
|
/* 024448E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024448EC */ _t13 = cpu->r[12] + 0x0000001Eu;
|
|
/* 024448EC */ cpu->r[10] = rbrew_read8(cpu->mem, _t13);
|
|
/* 024448F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024448F4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024448F4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024448F4 */ if (_t15) goto L_02444948; else goto L_024448F8;
|
|
L_024448F8: ; // 0x24448f8
|
|
/* 024448F8 */ _t16 = cpu->r[12] + 0x0000001Cu;
|
|
/* 024448F8 */ cpu->r[3] = rbrew_read16(cpu->mem, _t16);
|
|
/* 024448FC */ Gambit_fn_0282A11C(cpu);
|
|
/* 02444900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 02444904 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444904 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02444904 */ if (_t18) goto L_02444908; else goto L_02444948;
|
|
L_02444908: ; // 0x2444908
|
|
/* 02444908 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0244490C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0244490C */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02444910 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444914 */ _t20 = cpu->r[9] + 0xFFFFCF28u;
|
|
/* 02444914 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02444918 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244491C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444920 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444920 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 02444924 */ Gambit_fn_027ED914(cpu);
|
|
/* 02444928 */ _t22 = cpu->r[31] + 0x00000218u;
|
|
/* 02444928 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0244492C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444930 */ cpu->r[5] = 0x00000000u;
|
|
/* 02444934 */ Gambit_fn_020EBF30(cpu);
|
|
/* 02444938 */ cpu->r[4] = 0x00000002u;
|
|
/* 0244493C */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444940 */ Gambit_fn_0217354C(cpu);
|
|
/* 02444944 */ goto L_02444984;
|
|
L_02444948: ; // 0x2444948
|
|
/* 02444948 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0244494C */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 0244494C */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 02444950 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444954 */ _t24 = cpu->r[8] + 0xFFFFCF2Cu;
|
|
/* 02444954 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02444958 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0244495C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444960 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02444960 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 02444964 */ Gambit_fn_027ED914(cpu);
|
|
/* 02444968 */ _t26 = cpu->r[31] + 0x00000218u;
|
|
/* 02444968 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0244496C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444970 */ cpu->r[5] = 0x00000000u;
|
|
/* 02444974 */ Gambit_fn_020EBF30(cpu);
|
|
/* 02444978 */ cpu->r[4] = 0x00000002u;
|
|
/* 0244497C */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444980 */ Gambit_fn_0217354C(cpu);
|
|
L_02444984: ; // 0x2444984
|
|
/* 02444984 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02444984 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02444988 */ _t28 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02444988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0244498C */ _t29 = cpu->r[1] + 0x00000030u;
|
|
/* 0244498C */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02444990 */ cpu->lr = cpu->r[0];
|
|
/* 02444994 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02444994 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02444998 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0244499C */ return;
|
|
}
|
|
|
|
// fn_02444884 @ 0x2444884
|
|
void Gambit_fn_02444884(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_02444884: ; // 0x2444884
|
|
/* 02444884 */ _t0 = cpu->r[1] + 0xFFFFFFC8u;
|
|
/* 02444884 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444884 */ cpu->r[1] = _t0;
|
|
/* 02444888 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02444888 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244488C */ _t2 = cpu->r[1] + 0x0000002Cu;
|
|
/* 0244488C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02444890 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444894 */ _t3 = cpu->r[1] + 0x00000030u;
|
|
/* 02444894 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02444898 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244489C */ _t4 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0244489C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024448A0 */ Gambit_fn_021734AC(cpu);
|
|
/* 024448A4 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024448A8 */ Gambit_fn_02173798(cpu);
|
|
/* 024448AC */ cpu->r[30] = 0x100A0000u;
|
|
/* 024448B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024448B4 */ cpu->r[29] = 0x100A0000u;
|
|
/* 024448B8 */ cpu->r[30] = cpu->r[30] + 0xFFFFCF30u;
|
|
/* 024448BC */ cpu->r[29] = cpu->r[29] + 0xFFFFCE84u;
|
|
/* 024448C0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024448C0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024448C0 */ if (_t6) goto L_02444948; else goto L_024448C4;
|
|
L_024448C4: ; // 0x24448c4
|
|
/* 024448C4 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024448C8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024448CC */ Gambit_fn_021735AC(cpu);
|
|
/* 024448D0 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024448D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024448D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024448D8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024448D8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024448D8 */ if (_t9) goto L_024448E4; else goto L_024448DC;
|
|
L_024448DC: ; // 0x24448dc
|
|
/* 024448DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 024448E0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024448E0 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024448E0 */ if (_t11) goto L_024448E4; else goto L_02444948;
|
|
L_024448E4: ; // 0x24448e4
|
|
/* 024448E4 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024448E8 */ _t12 = cpu->r[12] + 0x0000457Cu;
|
|
/* 024448E8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024448EC */ _t13 = cpu->r[12] + 0x0000001Eu;
|
|
/* 024448EC */ cpu->r[10] = rbrew_read8(cpu->mem, _t13);
|
|
/* 024448F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024448F4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024448F4 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024448F4 */ if (_t15) goto L_02444948; else goto L_024448F8;
|
|
L_024448F8: ; // 0x24448f8
|
|
/* 024448F8 */ _t16 = cpu->r[12] + 0x0000001Cu;
|
|
/* 024448F8 */ cpu->r[3] = rbrew_read16(cpu->mem, _t16);
|
|
/* 024448FC */ Gambit_fn_0282A11C(cpu);
|
|
/* 02444900 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 02444904 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444904 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02444904 */ if (_t18) goto L_02444908; else goto L_02444948;
|
|
L_02444908: ; // 0x2444908
|
|
/* 02444908 */ cpu->r[9] = 0x100A0000u;
|
|
/* 0244490C */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 0244490C */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02444910 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444914 */ _t20 = cpu->r[9] + 0xFFFFCF28u;
|
|
/* 02444914 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t20);
|
|
/* 02444918 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244491C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444920 */ _t21 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444920 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]);
|
|
/* 02444924 */ Gambit_fn_027ED914(cpu);
|
|
/* 02444928 */ _t22 = cpu->r[31] + 0x00000218u;
|
|
/* 02444928 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22);
|
|
/* 0244492C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444930 */ cpu->r[5] = 0x00000000u;
|
|
/* 02444934 */ Gambit_fn_020EBF30(cpu);
|
|
/* 02444938 */ cpu->r[4] = 0x00000002u;
|
|
/* 0244493C */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444940 */ Gambit_fn_0217354C(cpu);
|
|
/* 02444944 */ goto L_02444984;
|
|
L_02444948: ; // 0x2444948
|
|
/* 02444948 */ cpu->r[8] = 0x100A0000u;
|
|
/* 0244494C */ _t23 = cpu->r[1] + 0x00000018u;
|
|
/* 0244494C */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 02444950 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444954 */ _t24 = cpu->r[8] + 0xFFFFCF2Cu;
|
|
/* 02444954 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t24);
|
|
/* 02444958 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 0244495C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444960 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02444960 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]);
|
|
/* 02444964 */ Gambit_fn_027ED914(cpu);
|
|
/* 02444968 */ _t26 = cpu->r[31] + 0x00000218u;
|
|
/* 02444968 */ cpu->r[4] = rbrew_read32(cpu->mem, _t26);
|
|
/* 0244496C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444970 */ cpu->r[5] = 0x00000000u;
|
|
/* 02444974 */ Gambit_fn_020EBF30(cpu);
|
|
/* 02444978 */ cpu->r[4] = 0x00000002u;
|
|
/* 0244497C */ cpu->r[3] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444980 */ Gambit_fn_0217354C(cpu);
|
|
L_02444984: ; // 0x2444984
|
|
/* 02444984 */ _t27 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02444984 */ cpu->r[29] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02444988 */ _t28 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02444988 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0244498C */ _t29 = cpu->r[1] + 0x00000030u;
|
|
/* 0244498C */ cpu->r[30] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02444990 */ cpu->lr = cpu->r[0];
|
|
/* 02444994 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02444994 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02444998 */ cpu->r[1] = cpu->r[1] + 0x00000038u;
|
|
/* 0244499C */ return;
|
|
}
|
|
|
|
// fn_024449A0 @ 0x24449a0
|
|
void Gambit_fn_024449A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024449A0: ; // 0x24449a0
|
|
/* 024449A0 */ cpu->r[0] = cpu->lr;
|
|
/* 024449A4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024449A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024449A4 */ cpu->r[1] = _t0;
|
|
/* 024449A8 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024449A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024449AC */ cpu->r[31] = cpu->r[3];
|
|
/* 024449B0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024449B4 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 024449B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024449B8 */ Gambit_fn_021734AC(cpu);
|
|
/* 024449BC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024449C0 */ Gambit_fn_02173798(cpu);
|
|
/* 024449C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024449C8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024449C8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024449C8 */ if (_t4) goto L_024449EC; else goto L_024449CC;
|
|
L_024449CC: ; // 0x24449cc
|
|
/* 024449CC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024449D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024449D4 */ Gambit_fn_021735AC(cpu);
|
|
/* 024449D8 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 024449D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024449DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024449E0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024449E0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024449E0 */ if (_t7) goto L_024449F8; else goto L_024449E4;
|
|
L_024449E4: ; // 0x24449e4
|
|
/* 024449E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 024449E8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024449E8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024449E8 */ if (_t9) goto L_024449F8; else goto L_024449EC;
|
|
L_024449EC: ; // 0x24449ec
|
|
/* 024449EC */ _t10 = cpu->r[31] + 0x0000021Cu;
|
|
/* 024449EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024449F0 */ cpu->r[0] = 0x00000000u;
|
|
/* 024449F4 */ _t11 = cpu->r[12] + 0x00000100u;
|
|
/* 024449F4 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
L_024449F8: ; // 0x24449f8
|
|
/* 024449F8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024449FC */ cpu->r[4] = 0x00000002u;
|
|
/* 02444A00 */ Gambit_fn_0217354C(cpu);
|
|
/* 02444A04 */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 02444A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02444A08 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02444A0C */ cpu->lr = cpu->r[0];
|
|
/* 02444A10 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02444A14 */ return;
|
|
}
|
|
|
|
// fn_024449A4 @ 0x24449a4
|
|
void Gambit_fn_024449A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024449A4: ; // 0x24449a4
|
|
/* 024449A4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024449A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024449A4 */ cpu->r[1] = _t0;
|
|
/* 024449A8 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024449A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024449AC */ cpu->r[31] = cpu->r[3];
|
|
/* 024449B0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024449B4 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 024449B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024449B8 */ Gambit_fn_021734AC(cpu);
|
|
/* 024449BC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024449C0 */ Gambit_fn_02173798(cpu);
|
|
/* 024449C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024449C8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024449C8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024449C8 */ if (_t4) goto L_024449EC; else goto L_024449CC;
|
|
L_024449CC: ; // 0x24449cc
|
|
/* 024449CC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024449D0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024449D4 */ Gambit_fn_021735AC(cpu);
|
|
/* 024449D8 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 024449D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024449DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024449E0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024449E0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024449E0 */ if (_t7) goto L_024449F8; else goto L_024449E4;
|
|
L_024449E4: ; // 0x24449e4
|
|
/* 024449E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 024449E8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024449E8 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024449E8 */ if (_t9) goto L_024449F8; else goto L_024449EC;
|
|
L_024449EC: ; // 0x24449ec
|
|
/* 024449EC */ _t10 = cpu->r[31] + 0x0000021Cu;
|
|
/* 024449EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024449F0 */ cpu->r[0] = 0x00000000u;
|
|
/* 024449F4 */ _t11 = cpu->r[12] + 0x00000100u;
|
|
/* 024449F4 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]);
|
|
L_024449F8: ; // 0x24449f8
|
|
/* 024449F8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024449FC */ cpu->r[4] = 0x00000002u;
|
|
/* 02444A00 */ Gambit_fn_0217354C(cpu);
|
|
/* 02444A04 */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 02444A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02444A08 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02444A0C */ cpu->lr = cpu->r[0];
|
|
/* 02444A10 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02444A14 */ return;
|
|
}
|
|
|
|
// fn_02444A18 @ 0x2444a18
|
|
void Gambit_fn_02444A18(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;
|
|
|
|
L_02444A18: ; // 0x2444a18
|
|
/* 02444A18 */ cpu->r[0] = cpu->lr;
|
|
/* 02444A1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02444A1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444A1C */ cpu->r[1] = _t0;
|
|
/* 02444A20 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444A20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02444A24 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02444A24 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02444A28 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444A2C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02444A2C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02444A30 */ _t4 = cpu->r[31] + 0x00000220u;
|
|
/* 02444A30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02444A34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444A38 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444A38 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02444A38 */ if (_t6) goto L_02444A6C; else goto L_02444A3C;
|
|
L_02444A3C: ; // 0x2444a3c
|
|
/* 02444A3C */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02444A3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02444A40 */ _t8 = cpu->r[10] + 0x0000008Cu;
|
|
/* 02444A40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02444A44 */ cpu->ctr = cpu->r[12];
|
|
/* 02444A48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444A50 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444A50 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444A50 */ if (_t10) goto L_02444A6C; else goto L_02444A54;
|
|
L_02444A54: ; // 0x2444a54
|
|
/* 02444A54 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 02444A54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02444A58 */ _t12 = cpu->r[11] + 0x0000011Cu;
|
|
/* 02444A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02444A5C */ cpu->ctr = cpu->r[0];
|
|
/* 02444A60 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444A64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444A68 */ Gambit_fn_020DACF0(cpu);
|
|
L_02444A6C: ; // 0x2444a6c
|
|
/* 02444A6C */ _t13 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02444A6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02444A70 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 02444A70 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02444A74 */ _t15 = cpu->r[5] + 0x00000084u;
|
|
/* 02444A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02444A78 */ cpu->ctr = cpu->r[0];
|
|
/* 02444A7C */ cpu->r[30] = cpu->r[31] + 0x00000218u;
|
|
/* 02444A80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444A84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444A88 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444A88 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02444A88 */ if (_t17) goto L_02444A8C; else goto L_02444AA8;
|
|
L_02444A8C: ; // 0x2444a8c
|
|
/* 02444A8C */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 02444A8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02444A90 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 02444A90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02444A94 */ _t20 = cpu->r[7] + 0x00000084u;
|
|
/* 02444A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02444A98 */ cpu->ctr = cpu->r[0];
|
|
/* 02444A9C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444AA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444AA4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444AA4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02444AA4 */ if (_t22) goto L_02444ABC; else goto L_02444AA8;
|
|
L_02444AA8: ; // 0x2444aa8
|
|
/* 02444AA8 */ _t23 = cpu->r[31] + 0x00000220u;
|
|
/* 02444AA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02444AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444AB0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444AB0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02444AB0 */ if (_t25) goto L_02444ABC; else goto L_02444AB4;
|
|
L_02444AB4: ; // 0x2444ab4
|
|
/* 02444AB4 */ cpu->r[9] = 0x00000000u;
|
|
/* 02444AB8 */ _t26 = cpu->r[3] + 0x00000100u;
|
|
/* 02444AB8 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[9]);
|
|
L_02444ABC: ; // 0x2444abc
|
|
/* 02444ABC */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02444ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02444AC0 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02444AC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02444AC4 */ cpu->lr = cpu->r[0];
|
|
/* 02444AC8 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444AC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02444ACC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02444AD0 */ return;
|
|
}
|
|
|
|
// fn_02444A1C @ 0x2444a1c
|
|
void Gambit_fn_02444A1C(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;
|
|
|
|
L_02444A1C: ; // 0x2444a1c
|
|
/* 02444A1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02444A1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444A1C */ cpu->r[1] = _t0;
|
|
/* 02444A20 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444A20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02444A24 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02444A24 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02444A28 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444A2C */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02444A2C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02444A30 */ _t4 = cpu->r[31] + 0x00000220u;
|
|
/* 02444A30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02444A34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444A38 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444A38 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02444A38 */ if (_t6) goto L_02444A6C; else goto L_02444A3C;
|
|
L_02444A3C: ; // 0x2444a3c
|
|
/* 02444A3C */ _t7 = cpu->r[3] + 0x00000000u;
|
|
/* 02444A3C */ cpu->r[10] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02444A40 */ _t8 = cpu->r[10] + 0x0000008Cu;
|
|
/* 02444A40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02444A44 */ cpu->ctr = cpu->r[12];
|
|
/* 02444A48 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444A50 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444A50 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444A50 */ if (_t10) goto L_02444A6C; else goto L_02444A54;
|
|
L_02444A54: ; // 0x2444a54
|
|
/* 02444A54 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 02444A54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02444A58 */ _t12 = cpu->r[11] + 0x0000011Cu;
|
|
/* 02444A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02444A5C */ cpu->ctr = cpu->r[0];
|
|
/* 02444A60 */ cpu->r[3] = cpu->r[31];
|
|
/* 02444A64 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444A68 */ Gambit_fn_020DACF0(cpu);
|
|
L_02444A6C: ; // 0x2444a6c
|
|
/* 02444A6C */ _t13 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02444A6C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02444A70 */ _t14 = cpu->r[3] + 0x00000000u;
|
|
/* 02444A70 */ cpu->r[5] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02444A74 */ _t15 = cpu->r[5] + 0x00000084u;
|
|
/* 02444A74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02444A78 */ cpu->ctr = cpu->r[0];
|
|
/* 02444A7C */ cpu->r[30] = cpu->r[31] + 0x00000218u;
|
|
/* 02444A80 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444A84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444A88 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444A88 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02444A88 */ if (_t17) goto L_02444A8C; else goto L_02444AA8;
|
|
L_02444A8C: ; // 0x2444a8c
|
|
/* 02444A8C */ _t18 = cpu->r[30] + 0x00000000u;
|
|
/* 02444A8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02444A90 */ _t19 = cpu->r[3] + 0x00000000u;
|
|
/* 02444A90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02444A94 */ _t20 = cpu->r[7] + 0x00000084u;
|
|
/* 02444A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02444A98 */ cpu->ctr = cpu->r[0];
|
|
/* 02444A9C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444AA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444AA4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444AA4 */ _t22 = _t21 & 0x00000001u;
|
|
/* 02444AA4 */ if (_t22) goto L_02444ABC; else goto L_02444AA8;
|
|
L_02444AA8: ; // 0x2444aa8
|
|
/* 02444AA8 */ _t23 = cpu->r[31] + 0x00000220u;
|
|
/* 02444AA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02444AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444AB0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444AB0 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02444AB0 */ if (_t25) goto L_02444ABC; else goto L_02444AB4;
|
|
L_02444AB4: ; // 0x2444ab4
|
|
/* 02444AB4 */ cpu->r[9] = 0x00000000u;
|
|
/* 02444AB8 */ _t26 = cpu->r[3] + 0x00000100u;
|
|
/* 02444AB8 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[9]);
|
|
L_02444ABC: ; // 0x2444abc
|
|
/* 02444ABC */ _t27 = cpu->r[1] + 0x00000014u;
|
|
/* 02444ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02444AC0 */ _t28 = cpu->r[1] + 0x00000008u;
|
|
/* 02444AC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t28);
|
|
/* 02444AC4 */ cpu->lr = cpu->r[0];
|
|
/* 02444AC8 */ _t29 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444AC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02444ACC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02444AD0 */ return;
|
|
}
|
|
|
|
// fn_02444AD4 @ 0x2444ad4
|
|
void Gambit_fn_02444AD4(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;
|
|
|
|
L_02444AD4: ; // 0x2444ad4
|
|
/* 02444AD4 */ _t0 = cpu->r[1] + 0xFFFFFF98u;
|
|
/* 02444AD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444AD4 */ cpu->r[1] = _t0;
|
|
/* 02444AD8 */ /* nop */
|
|
/* 02444ADC */ cpu->r[0] = cpu->lr;
|
|
/* 02444AE0 */ _t1 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02444AE0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02444AE4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444AE8 */ cpu->r[0] = cpu->r[0] + 0xFFFFCECCu;
|
|
/* 02444AEC */ cpu->r[29] = cpu->r[3];
|
|
/* 02444AF0 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444AF0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02444AF4 */ cpu->r[9] = 0x00000020u;
|
|
/* 02444AF8 */ _t3 = cpu->r[1] + 0x00000010u;
|
|
/* 02444AF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02444AFC */ cpu->r[10] = cpu->r[1] + 0x00000014u;
|
|
/* 02444B00 */ cpu->r[26] = 0x00000000u;
|
|
/* 02444B04 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02444B04 */ rbrew_write32(cpu->mem, _t4, cpu->r[10]);
|
|
/* 02444B08 */ cpu->r[21] = 0x00000002u;
|
|
/* 02444B0C */ cpu->r[22] = 0x101D0000u;
|
|
/* 02444B10 */ cpu->r[12] = 0x10110000u;
|
|
/* 02444B14 */ cpu->r[20] = cpu->r[26];
|
|
/* 02444B18 */ cpu->r[23] = 0x101D0000u;
|
|
/* 02444B1C */ _t5 = cpu->r[12] + 0x00007399u;
|
|
/* 02444B1C */ cpu->r[12] = rbrew_read8(cpu->mem, _t5);
|
|
/* 02444B20 */ cpu->r[25] = 0x00000001u;
|
|
/* 02444B24 */ cpu->r[28] = 0x100A0000u;
|
|
/* 02444B28 */ cpu->r[24] = cpu->r[20];
|
|
/* 02444B2C */ _t6 = cpu->r[1] + 0x00000033u;
|
|
/* 02444B2C */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[12]);
|
|
/* 02444B30 */ cpu->r[27] = cpu->r[29] + 0x00000218u;
|
|
/* 02444B34 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02444B34 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]);
|
|
L_02444B38: ; // 0x2444b38
|
|
/* 02444B38 */ cpu->r[5] = cpu->r[26];
|
|
/* 02444B3C */ cpu->r[4] = cpu->r[28] + 0xFFFFCF3Cu;
|
|
/* 02444B40 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02444B44 */ _t8 = cpu->cr[1] >> (0x00000001u & 31u);
|
|
/* 02444B44 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02444B44 */ if (_t9) goto L_02444B48; // else: addr-0 trap, fall-through
|
|
L_02444B48: ; // 0x2444b48
|
|
/* 02444B48 */ Gambit_fn_0282A5F4(cpu);
|
|
/* 02444B4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000002u);
|
|
/* 02444B50 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02444B50 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02444B50 */ if (_t11) goto L_02444B54; else goto L_02444B78;
|
|
L_02444B54: ; // 0x2444b54
|
|
/* 02444B54 */ cpu->r[3] = cpu->r[29];
|
|
/* 02444B58 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02444B5C */ cpu->r[30] = cpu->r[27] + cpu->r[20];
|
|
/* 02444B60 */ Gambit_fn_026D86C0(cpu);
|
|
/* 02444B64 */ _t12 = cpu->r[23] + 0xFFFFEDBCu;
|
|
/* 02444B64 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02444B68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02444B6C */ cpu->r[31] = cpu->r[3];
|
|
/* 02444B70 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444B70 */ _t14 = _t13 & 0x00000001u;
|
|
/* 02444B70 */ if (_t14) goto L_02444B74; else goto L_02444BA8;
|
|
L_02444B74: ; // 0x2444b74
|
|
/* 02444B74 */ goto L_02444B98;
|
|
L_02444B78: ; // 0x2444b78
|
|
/* 02444B78 */ cpu->r[3] = cpu->r[29];
|
|
/* 02444B7C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02444B80 */ cpu->r[30] = cpu->r[27];
|
|
/* 02444B84 */ Gambit_fn_026D86C0(cpu);
|
|
/* 02444B88 */ _t15 = cpu->r[23] + 0xFFFFEDBCu;
|
|
/* 02444B88 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02444B8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02444B90 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444B94 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444B94 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02444B94 */ if (_t17) goto L_02444B98; else goto L_02444BA8;
|
|
L_02444B98: ; // 0x2444b98
|
|
/* 02444B98 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444B9C */ _t18 = cpu->r[23] + 0xFFFFEDBCu;
|
|
/* 02444B9C */ rbrew_write32(cpu->mem, _t18, cpu->r[25]);
|
|
/* 02444BA0 */ cpu->r[0] = cpu->r[0] + 0xFFFFCEF4u;
|
|
/* 02444BA4 */ _t19 = cpu->r[22] + 0xFFFFEE20u;
|
|
/* 02444BA4 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
L_02444BA8: ; // 0x2444ba8
|
|
/* 02444BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02444BAC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444BAC */ _t21 = _t20 & 0x00000001u;
|
|
/* 02444BAC */ if (_t21) goto L_02444BD0; else goto L_02444BB0;
|
|
L_02444BB0: ; // 0x2444bb0
|
|
/* 02444BB0 */ _t22 = cpu->r[31] + 0x00000000u;
|
|
/* 02444BB0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02444BB4 */ _t23 = cpu->r[8] + 0x0000001Cu;
|
|
/* 02444BB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02444BB8 */ cpu->ctr = cpu->r[9];
|
|
/* 02444BBC */ cpu->r[3] = cpu->r[31];
|
|
/* 02444BC0 */ cpu->r[4] = cpu->r[22] + 0xFFFFEE20u;
|
|
/* 02444BC4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444BCC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444BCC */ _t25 = _t24 & 0x00000001u;
|
|
/* 02444BCC */ if (_t25) goto L_02444BD0; else goto L_02444BD4;
|
|
L_02444BD0: ; // 0x2444bd0
|
|
/* 02444BD0 */ cpu->r[31] = 0x00000000u;
|
|
L_02444BD4: ; // 0x2444bd4
|
|
/* 02444BD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], 0x00000002u);
|
|
/* 02444BD8 */ _t26 = cpu->r[30] + 0x00000000u;
|
|
/* 02444BD8 */ rbrew_write32(cpu->mem, _t26, cpu->r[31]);
|
|
/* 02444BDC */ _t27 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02444BDC */ _t28 = _t27 & 0x00000001u;
|
|
/* 02444BDC */ if (_t28) goto L_02444BE0; else goto L_02444BF4;
|
|
L_02444BE0: ; // 0x2444be0
|
|
/* 02444BE0 */ _t29 = cpu->r[27] + cpu->r[20];
|
|
/* 02444BE0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02444BE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02444BE8 */ _t30 = cpu->r[7] + 0x000001B7u;
|
|
/* 02444BE8 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[24]);
|
|
/* 02444BEC */ _t31 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02444BEC */ _t32 = _t31 & 0x00000001u;
|
|
/* 02444BEC */ if (_t32) goto L_02444BF0; else goto L_02444C10;
|
|
L_02444BF0: ; // 0x2444bf0
|
|
/* 02444BF0 */ goto L_02444C04;
|
|
L_02444BF4: ; // 0x2444bf4
|
|
/* 02444BF4 */ _t33 = cpu->r[27] + 0x00000000u;
|
|
/* 02444BF4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33);
|
|
/* 02444BF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02444BFC */ _t34 = cpu->r[7] + 0x000001B7u;
|
|
/* 02444BFC */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[24]);
|
|
/* 02444C00 */ _t35 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02444C00 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02444C00 */ if (_t36) goto L_02444C04; else goto L_02444C10;
|
|
L_02444C04: ; // 0x2444c04
|
|
/* 02444C04 */ _t37 = cpu->r[27] + 0x00000000u;
|
|
/* 02444C04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02444C08 */ _t38 = cpu->r[27] + 0x00000004u;
|
|
/* 02444C08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t38);
|
|
/* 02444C0C */ Gambit_fn_027EADB0(cpu);
|
|
L_02444C10: ; // 0x2444c10
|
|
/* 02444C10 */ cpu->r[21] = cpu->r[21] + 0xFFFFFFFFu;
|
|
/* 02444C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u);
|
|
/* 02444C14 */ cpu->r[26] = cpu->r[26] + 0x00000001u;
|
|
/* 02444C18 */ cpu->r[20] = cpu->r[20] + 0x00000004u;
|
|
/* 02444C1C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444C1C */ _t40 = _t39 & 0x00000001u;
|
|
/* 02444C1C */ if (_t40) goto L_02444C20; else goto L_02444B38;
|
|
L_02444C20: ; // 0x2444c20
|
|
/* 02444C20 */ /* nop */
|
|
/* 02444C24 */ _t41 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02444C24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02444C28 */ cpu->lr = cpu->r[0];
|
|
/* 02444C2C */ cpu->r[1] = cpu->r[1] + 0x00000068u;
|
|
/* 02444C30 */ return;
|
|
}
|
|
|
|
// fn_02444C34 @ 0x2444c34
|
|
void Gambit_fn_02444C34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02444C34: ; // 0x2444c34
|
|
/* 02444C34 */ cpu->r[0] = cpu->lr;
|
|
/* 02444C38 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444C3C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444C40 */ cpu->r[11] = cpu->r[11] + 0xFFFFCE84u;
|
|
/* 02444C44 */ cpu->r[12] = cpu->r[12] + 0xFFFFCF48u;
|
|
/* 02444C48 */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 02444C48 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 02444C4C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444C50 */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02444C50 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02444C50 */ cpu->r[1] = _t1;
|
|
/* 02444C54 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02444C54 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 02444C58 */ cpu->r[0] = cpu->r[0] + 0xFFFFCF54u;
|
|
/* 02444C5C */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444C5C */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02444C60 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02444C64 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02444C64 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02444C68 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02444C6C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444C6C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02444C70 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02444C74 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02444C74 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 02444C78 */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 02444C78 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02444C7C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02444C80 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 02444C80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02444C84 */ cpu->lr = cpu->r[0];
|
|
/* 02444C88 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02444C8C */ return;
|
|
}
|
|
|
|
// fn_02444C50 @ 0x2444c50
|
|
void Gambit_fn_02444C50(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02444C50: ; // 0x2444c50
|
|
/* 02444C50 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02444C50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444C50 */ cpu->r[1] = _t0;
|
|
/* 02444C54 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02444C54 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 02444C58 */ cpu->r[0] = cpu->r[0] + 0xFFFFCF54u;
|
|
/* 02444C5C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02444C5C */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02444C60 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02444C64 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02444C64 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02444C68 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02444C6C */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444C6C */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 02444C70 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02444C74 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02444C74 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02444C78 */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 02444C78 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444C7C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02444C80 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 02444C80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02444C84 */ cpu->lr = cpu->r[0];
|
|
/* 02444C88 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02444C8C */ return;
|
|
}
|
|
|
|
// fn_02444C90 @ 0x2444c90
|
|
void Gambit_fn_02444C90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02444C90: ; // 0x2444c90
|
|
/* 02444C90 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02444C94 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02444C94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444C94 */ cpu->r[1] = _t0;
|
|
/* 02444C98 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02444C9C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02444CA0 */ _t1 = cpu->r[10] + 0x000075E0u;
|
|
/* 02444CA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02444CA0 */ cpu->r[10] = _t1;
|
|
/* 02444CA4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02444CA8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02444CA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02444CAC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02444CB0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02444CB4 */ _t3 = cpu->r[7] + 0x000075F0u;
|
|
/* 02444CB4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02444CB4 */ cpu->r[7] = _t3;
|
|
/* 02444CB8 */ _t4 = cpu->r[8] + 0x000075E8u;
|
|
/* 02444CB8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02444CB8 */ cpu->r[8] = _t4;
|
|
/* 02444CBC */ cpu->r[0] = 0x00000002u;
|
|
/* 02444CC0 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02444CC0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02444CC4 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02444CC8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02444CC8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444CCC */ cpu->r[12] = 0x101E0000u;
|
|
/* 02444CD0 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02444CD0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02444CD4 */ _t8 = cpu->r[8] + 0x00007600u;
|
|
/* 02444CD4 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02444CD4 */ cpu->r[8] = _t8;
|
|
/* 02444CD8 */ _t9 = cpu->r[12] + 0x000075F8u;
|
|
/* 02444CD8 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02444CD8 */ cpu->r[12] = _t9;
|
|
/* 02444CDC */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02444CDC */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02444CE0 */ cpu->r[0] = 0x00000004u;
|
|
/* 02444CE4 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02444CE4 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02444CE8 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02444CEC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02444CEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02444CF0 */ _t13 = cpu->r[11] + 0x00007608u;
|
|
/* 02444CF0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444CF4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02444CF8 */ return;
|
|
}
|
|
|
|
// fn_02444C94 @ 0x2444c94
|
|
void Gambit_fn_02444C94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02444C94: ; // 0x2444c94
|
|
/* 02444C94 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02444C94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444C94 */ cpu->r[1] = _t0;
|
|
/* 02444C98 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02444C9C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02444CA0 */ _t1 = cpu->r[10] + 0x000075E0u;
|
|
/* 02444CA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02444CA0 */ cpu->r[10] = _t1;
|
|
/* 02444CA4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02444CA8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02444CA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02444CAC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02444CB0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02444CB4 */ _t3 = cpu->r[7] + 0x000075F0u;
|
|
/* 02444CB4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02444CB4 */ cpu->r[7] = _t3;
|
|
/* 02444CB8 */ _t4 = cpu->r[8] + 0x000075E8u;
|
|
/* 02444CB8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02444CB8 */ cpu->r[8] = _t4;
|
|
/* 02444CBC */ cpu->r[0] = 0x00000002u;
|
|
/* 02444CC0 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02444CC0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02444CC4 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02444CC8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02444CC8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444CCC */ cpu->r[12] = 0x101E0000u;
|
|
/* 02444CD0 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02444CD0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02444CD4 */ _t8 = cpu->r[8] + 0x00007600u;
|
|
/* 02444CD4 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02444CD4 */ cpu->r[8] = _t8;
|
|
/* 02444CD8 */ _t9 = cpu->r[12] + 0x000075F8u;
|
|
/* 02444CD8 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02444CD8 */ cpu->r[12] = _t9;
|
|
/* 02444CDC */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02444CDC */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02444CE0 */ cpu->r[0] = 0x00000004u;
|
|
/* 02444CE4 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02444CE4 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02444CE8 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02444CEC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02444CEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02444CF0 */ _t13 = cpu->r[11] + 0x00007608u;
|
|
/* 02444CF0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444CF4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02444CF8 */ return;
|
|
}
|
|
|
|
// fn_02444CFC @ 0x2444cfc
|
|
void Gambit_fn_02444CFC(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_02444CFC: ; // 0x2444cfc
|
|
/* 02444CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444D00 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D00 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02444D00 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02444D00 */ goto L_02444D04;
|
|
L_02444D04: ; // 0x2444d04
|
|
/* 02444D04 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444D04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02444D08 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D08 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02444D08 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02444D08 */ goto L_02444D0C;
|
|
L_02444D0C: ; // 0x2444d0c
|
|
/* 02444D0C */ 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_02444D10 @ 0x2444d10
|
|
void Gambit_fn_02444D10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02444D10: ; // 0x2444d10
|
|
/* 02444D10 */ cpu->r[0] = cpu->lr;
|
|
/* 02444D14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02444D14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444D14 */ cpu->r[1] = _t0;
|
|
/* 02444D18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444D18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02444D1C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02444D1C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02444D20 */ cpu->r[30] = cpu->r[3];
|
|
/* 02444D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444D24 */ cpu->r[31] = cpu->r[4];
|
|
/* 02444D28 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02444D28 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02444D2C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D2C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02444D2C */ if (_t5) goto L_02444D9C; else goto L_02444D30;
|
|
L_02444D30: ; // 0x2444d30
|
|
/* 02444D30 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444D34 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444D38 */ cpu->r[0] = cpu->r[0] + 0xFFFFD134u;
|
|
/* 02444D3C */ cpu->r[12] = cpu->r[12] + 0xFFFFD154u;
|
|
/* 02444D40 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444D40 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444D44 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444D48 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444D48 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02444D4C */ cpu->r[11] = cpu->r[11] + 0xFFFFD144u;
|
|
/* 02444D50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444D54 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444D54 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444D58 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D58 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444D58 */ if (_t10) goto L_02444D8C; else goto L_02444D5C;
|
|
L_02444D5C: ; // 0x2444d5c
|
|
/* 02444D5C */ cpu->r[10] = 0x10010000u;
|
|
/* 02444D60 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444D64 */ cpu->r[10] = cpu->r[10] + 0x00004564u;
|
|
/* 02444D68 */ cpu->r[0] = cpu->r[0] + 0x00004554u;
|
|
/* 02444D6C */ cpu->r[3] = cpu->r[30];
|
|
/* 02444D70 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444D70 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02444D74 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444D78 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444D78 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02444D7C */ cpu->r[0] = cpu->r[0] + 0x00004574u;
|
|
/* 02444D80 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444D84 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444D84 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444D88 */ Gambit_fn_02068798(cpu);
|
|
L_02444D8C: ; // 0x2444d8c
|
|
/* 02444D8C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444D8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02444D90 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D90 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02444D90 */ if (_t15) goto L_02444D9C; else goto L_02444D94;
|
|
L_02444D94: ; // 0x2444d94
|
|
/* 02444D94 */ cpu->r[3] = cpu->r[30];
|
|
/* 02444D98 */ Gambit_fn_02801BB0(cpu);
|
|
L_02444D9C: ; // 0x2444d9c
|
|
/* 02444D9C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444D9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02444DA0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02444DA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02444DA4 */ cpu->lr = cpu->r[0];
|
|
/* 02444DA8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444DA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02444DAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02444DB0 */ return;
|
|
}
|
|
|
|
// fn_02444D14 @ 0x2444d14
|
|
void Gambit_fn_02444D14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02444D14: ; // 0x2444d14
|
|
/* 02444D14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02444D14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444D14 */ cpu->r[1] = _t0;
|
|
/* 02444D18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444D18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02444D1C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02444D1C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02444D20 */ cpu->r[30] = cpu->r[3];
|
|
/* 02444D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444D24 */ cpu->r[31] = cpu->r[4];
|
|
/* 02444D28 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02444D28 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02444D2C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D2C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02444D2C */ if (_t5) goto L_02444D9C; else goto L_02444D30;
|
|
L_02444D30: ; // 0x2444d30
|
|
/* 02444D30 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444D34 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444D38 */ cpu->r[0] = cpu->r[0] + 0xFFFFD134u;
|
|
/* 02444D3C */ cpu->r[12] = cpu->r[12] + 0xFFFFD154u;
|
|
/* 02444D40 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444D40 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02444D44 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02444D48 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444D48 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02444D4C */ cpu->r[11] = cpu->r[11] + 0xFFFFD144u;
|
|
/* 02444D50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02444D54 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444D54 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02444D58 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D58 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444D58 */ if (_t10) goto L_02444D8C; else goto L_02444D5C;
|
|
L_02444D5C: ; // 0x2444d5c
|
|
/* 02444D5C */ cpu->r[10] = 0x10010000u;
|
|
/* 02444D60 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444D64 */ cpu->r[10] = cpu->r[10] + 0x00004564u;
|
|
/* 02444D68 */ cpu->r[0] = cpu->r[0] + 0x00004554u;
|
|
/* 02444D6C */ cpu->r[3] = cpu->r[30];
|
|
/* 02444D70 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02444D70 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02444D74 */ cpu->r[0] = 0x10010000u;
|
|
/* 02444D78 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02444D78 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02444D7C */ cpu->r[0] = cpu->r[0] + 0x00004574u;
|
|
/* 02444D80 */ cpu->r[4] = 0x00000000u;
|
|
/* 02444D84 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02444D84 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444D88 */ Gambit_fn_02068798(cpu);
|
|
L_02444D8C: ; // 0x2444d8c
|
|
/* 02444D8C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444D8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02444D90 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444D90 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02444D90 */ if (_t15) goto L_02444D9C; else goto L_02444D94;
|
|
L_02444D94: ; // 0x2444d94
|
|
/* 02444D94 */ cpu->r[3] = cpu->r[30];
|
|
/* 02444D98 */ Gambit_fn_02801BB0(cpu);
|
|
L_02444D9C: ; // 0x2444d9c
|
|
/* 02444D9C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02444D9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02444DA0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02444DA0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02444DA4 */ cpu->lr = cpu->r[0];
|
|
/* 02444DA8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444DA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02444DAC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02444DB0 */ return;
|
|
}
|
|
|
|
// fn_02444DB4 @ 0x2444db4
|
|
void Gambit_fn_02444DB4(CPUState* cpu) {
|
|
L_02444DB4: ; // 0x2444db4
|
|
/* 02444DB4 */ return;
|
|
}
|
|
|
|
// fn_02444DB8 @ 0x2444db8
|
|
void Gambit_fn_02444DB8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02444DB8: ; // 0x2444db8
|
|
/* 02444DB8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02444DB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444DBC */ return;
|
|
}
|
|
|
|
// fn_02444DC0 @ 0x2444dc0
|
|
void Gambit_fn_02444DC0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02444DC0: ; // 0x2444dc0
|
|
/* 02444DC0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02444DC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444DC4 */ return;
|
|
}
|
|
|
|
// fn_02444DC8 @ 0x2444dc8
|
|
void Gambit_fn_02444DC8(CPUState* cpu) {
|
|
L_02444DC8: ; // 0x2444dc8
|
|
/* 02444DC8 */ return;
|
|
}
|
|
|
|
// fn_02444DCC @ 0x2444dcc
|
|
void Gambit_fn_02444DCC(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_02444DCC: ; // 0x2444dcc
|
|
/* 02444DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444DD0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444DD0 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02444DD0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02444DD0 */ goto L_02444DD4;
|
|
L_02444DD4: ; // 0x2444dd4
|
|
/* 02444DD4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444DD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02444DD8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444DD8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02444DD8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02444DD8 */ goto L_02444DDC;
|
|
L_02444DDC: ; // 0x2444ddc
|
|
/* 02444DDC */ 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_02444DE0 @ 0x2444de0
|
|
void Gambit_fn_02444DE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02444DE0: ; // 0x2444de0
|
|
/* 02444DE0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02444DE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444DE4 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02444DE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02444DE8 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02444DEC */ cpu->r[11] = 0x10110000u;
|
|
/* 02444DF0 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02444DF0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02444DF4 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02444DF4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02444DF8 */ return;
|
|
}
|
|
|
|
// fn_02444DFC @ 0x2444dfc
|
|
void Gambit_fn_02444DFC(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_02444DFC: ; // 0x2444dfc
|
|
/* 02444DFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444E00 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444E00 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02444E00 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02444E00 */ goto L_02444E04;
|
|
L_02444E04: ; // 0x2444e04
|
|
/* 02444E04 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02444E08 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444E08 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02444E08 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02444E08 */ goto L_02444E0C;
|
|
L_02444E0C: ; // 0x2444e0c
|
|
/* 02444E0C */ 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_02444E10 @ 0x2444e10
|
|
void Gambit_fn_02444E10(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_02444E10: ; // 0x2444e10
|
|
/* 02444E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02444E14 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444E14 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02444E14 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02444E14 */ goto L_02444E18;
|
|
L_02444E18: ; // 0x2444e18
|
|
/* 02444E18 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02444E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02444E1C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444E1C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02444E1C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02444E1C */ goto L_02444E20;
|
|
L_02444E20: ; // 0x2444e20
|
|
/* 02444E20 */ 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_02444E24 @ 0x2444e24
|
|
void Gambit_fn_02444E24(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02444E24: ; // 0x2444e24
|
|
/* 02444E24 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02444E24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444E28 */ return;
|
|
}
|
|
|
|
// fn_02444E2C @ 0x2444e2c
|
|
void Gambit_fn_02444E2C(CPUState* cpu) {
|
|
L_02444E2C: ; // 0x2444e2c
|
|
/* 02444E2C */ return;
|
|
}
|
|
|
|
// fn_02444E30 @ 0x2444e30
|
|
void Gambit_fn_02444E30(CPUState* cpu) {
|
|
L_02444E30: ; // 0x2444e30
|
|
/* 02444E30 */ return;
|
|
}
|
|
|
|
// fn_02444E34 @ 0x2444e34
|
|
void Gambit_fn_02444E34(CPUState* cpu) {
|
|
L_02444E34: ; // 0x2444e34
|
|
/* 02444E34 */ return;
|
|
}
|
|
|
|
// fn_02444E38 @ 0x2444e38
|
|
void Gambit_fn_02444E38(CPUState* cpu) {
|
|
L_02444E38: ; // 0x2444e38
|
|
/* 02444E38 */ return;
|
|
}
|
|
|
|
// fn_02444E3C @ 0x2444e3c
|
|
void Gambit_fn_02444E3C(CPUState* cpu) {
|
|
L_02444E3C: ; // 0x2444e3c
|
|
/* 02444E3C */ return;
|
|
}
|
|
|
|
// fn_02444E40 @ 0x2444e40
|
|
void Gambit_fn_02444E40(CPUState* cpu) {
|
|
L_02444E40: ; // 0x2444e40
|
|
/* 02444E40 */ cpu->r[3] = 0x00000001u;
|
|
/* 02444E44 */ return;
|
|
}
|
|
|
|
// fn_02444E48 @ 0x2444e48
|
|
void Gambit_fn_02444E48(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02444E48: ; // 0x2444e48
|
|
/* 02444E48 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02444E48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444E4C */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02444E4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02444E50 */ cpu->ctr = cpu->r[0];
|
|
/* 02444E54 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02444E58 @ 0x2444e58
|
|
void Gambit_fn_02444E58(CPUState* cpu) {
|
|
L_02444E58: ; // 0x2444e58
|
|
/* 02444E58 */ return;
|
|
}
|
|
|
|
// fn_02444E5C @ 0x2444e5c
|
|
void Gambit_fn_02444E5C(CPUState* cpu) {
|
|
L_02444E5C: ; // 0x2444e5c
|
|
/* 02444E5C */ cpu->r[3] = 0x00000000u;
|
|
/* 02444E60 */ return;
|
|
}
|
|
|
|
// fn_02444E64 @ 0x2444e64
|
|
void Gambit_fn_02444E64(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02444E64: ; // 0x2444e64
|
|
/* 02444E64 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02444E68 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02444E68 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02444E68 */ cpu->r[9] = _t0;
|
|
/* 02444E6C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02444E70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02444E74 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02444E78 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444E78 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02444E78 */ if (_t2) goto L_02444E7C; else goto L_02444E90;
|
|
L_02444E7C: ; // 0x2444e7c
|
|
/* 02444E7C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02444E80 */ cpu->r[0] = 0x00000001u;
|
|
/* 02444E84 */ cpu->r[7] = cpu->r[7] + 0xFFFFCF04u;
|
|
/* 02444E88 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02444E88 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02444E8C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02444E8C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02444E90: ; // 0x2444e90
|
|
/* 02444E90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02444E94 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444E94 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02444E94 */ if (_t6) goto L_02444E98; else goto L_02444EA0;
|
|
L_02444E98: ; // 0x2444e98
|
|
/* 02444E98 */ cpu->r[3] = 0x00000001u;
|
|
/* 02444E9C */ return;
|
|
L_02444EA0: ; // 0x2444ea0
|
|
/* 02444EA0 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02444EA4 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02444EA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02444EA4 */ cpu->r[7] = _t7;
|
|
/* 02444EA8 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02444EAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02444EB0 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02444EB4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444EB4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02444EB4 */ if (_t9) goto L_02444EB8; else goto L_02444ECC;
|
|
L_02444EB8: ; // 0x2444eb8
|
|
/* 02444EB8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444EBC */ cpu->r[9] = 0x00000001u;
|
|
/* 02444EC0 */ cpu->r[0] = cpu->r[0] + 0xFFFFCE74u;
|
|
/* 02444EC4 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02444EC4 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02444EC8 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02444EC8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02444ECC: ; // 0x2444ecc
|
|
/* 02444ECC */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02444ED0 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02444ED4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02444ED8 */ return;
|
|
}
|
|
|
|
// fn_02444EDC @ 0x2444edc
|
|
void Gambit_fn_02444EDC(CPUState* cpu) {
|
|
L_02444EDC: ; // 0x2444edc
|
|
/* 02444EDC */ return;
|
|
}
|
|
|
|
// fn_02444EE0 @ 0x2444ee0
|
|
void Gambit_fn_02444EE0(CPUState* cpu) {
|
|
L_02444EE0: ; // 0x2444ee0
|
|
/* 02444EE0 */ return;
|
|
}
|
|
|
|
// fn_02444EE4 @ 0x2444ee4
|
|
void Gambit_fn_02444EE4(CPUState* cpu) {
|
|
L_02444EE4: ; // 0x2444ee4
|
|
/* 02444EE4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02444EE8 */ return;
|
|
}
|
|
|
|
// fn_02444EEC @ 0x2444eec
|
|
void Gambit_fn_02444EEC(CPUState* cpu) {
|
|
L_02444EEC: ; // 0x2444eec
|
|
/* 02444EEC */ cpu->r[3] = 0x00000000u;
|
|
/* 02444EF0 */ return;
|
|
}
|
|
|
|
// fn_02444EF4 @ 0x2444ef4
|
|
void Gambit_fn_02444EF4(CPUState* cpu) {
|
|
L_02444EF4: ; // 0x2444ef4
|
|
/* 02444EF4 */ return;
|
|
}
|
|
|
|
// fn_02444EF8 @ 0x2444ef8
|
|
void Gambit_fn_02444EF8(CPUState* cpu) {
|
|
L_02444EF8: ; // 0x2444ef8
|
|
/* 02444EF8 */ return;
|
|
}
|
|
|
|
// fn_02444EFC @ 0x2444efc
|
|
void Gambit_fn_02444EFC(CPUState* cpu) {
|
|
L_02444EFC: ; // 0x2444efc
|
|
/* 02444EFC */ return;
|
|
}
|
|
|
|
// fn_02444F00 @ 0x2444f00
|
|
void Gambit_fn_02444F00(CPUState* cpu) {
|
|
L_02444F00: ; // 0x2444f00
|
|
/* 02444F00 */ return;
|
|
}
|
|
|
|
// fn_02444F04 @ 0x2444f04
|
|
void Gambit_fn_02444F04(CPUState* cpu) {
|
|
L_02444F04: ; // 0x2444f04
|
|
/* 02444F04 */ return;
|
|
}
|
|
|
|
// fn_02444F08 @ 0x2444f08
|
|
void Gambit_fn_02444F08(CPUState* cpu) {
|
|
L_02444F08: ; // 0x2444f08
|
|
/* 02444F08 */ return;
|
|
}
|
|
|
|
// fn_02444F0C @ 0x2444f0c
|
|
void Gambit_fn_02444F0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0208A0C8: ; // 0x208a0c8
|
|
/* 0208A0C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0208A0CC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0208A0CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0208A0CC */ cpu->r[1] = _t0;
|
|
/* 0208A0D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0208A0D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0208A0D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0208A0D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0208A0D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0208A0DC */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0208A0DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0208A0E0 */ cpu->r[12] = 0x00000000u;
|
|
/* 0208A0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0208A0E8 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0208A0E8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0208A0EC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0208A0EC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0208A0EC */ if (_t6) goto L_0208A114; else goto L_0208A0F0;
|
|
L_0208A0F0: ; // 0x208a0f0
|
|
/* 0208A0F0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0208A0F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0208A0F4 */ /* nop */
|
|
/* 0208A0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0208A0FC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0208A0FC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0208A0FC */ if (_t9) goto L_0208A100; else goto L_0208A114;
|
|
L_0208A100: ; // 0x208a100
|
|
/* 0208A100 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0208A100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0208A104 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0208A104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0208A108 */ cpu->ctr = cpu->r[0];
|
|
/* 0208A10C */ cpu->r[3] = cpu->r[31];
|
|
/* 0208A110 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0208A114: ; // 0x208a114
|
|
/* 0208A114 */ cpu->r[3] = cpu->r[31];
|
|
/* 0208A118 */ Gambit_fn_0208A040(cpu);
|
|
/* 0208A11C */ cpu->r[3] = cpu->r[31];
|
|
/* 0208A120 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0208A124 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0208A124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0208A128 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0208A128 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0208A12C */ cpu->lr = cpu->r[0];
|
|
/* 0208A130 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0208A134 */ return;
|
|
L_02444F0C: ; // 0x2444f0c
|
|
/* 02444F0C */ cpu->r[3] = cpu->r[3] + 0x000001E0u;
|
|
/* 02444F10 */ goto L_0208A0C8;
|
|
}
|
|
|
|
// fn_02444F14 @ 0x2444f14
|
|
void Gambit_fn_02444F14(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, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238, _t239, _t240, _t241, _t242, _t243, _t244, _t245, _t246, _t247, _t248, _t249, _t250, _t251, _t252, _t253;
|
|
|
|
L_02444F14: ; // 0x2444f14
|
|
/* 02444F14 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 02444F14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02444F14 */ cpu->r[1] = _t0;
|
|
/* 02444F18 */ cpu->r[0] = cpu->lr;
|
|
/* 02444F1C */ /* nop */
|
|
/* 02444F20 */ cpu->r[28] = cpu->r[3];
|
|
/* 02444F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02444F24 */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 02444F24 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02444F28 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444F28 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02444F28 */ if (_t3) goto L_02444F2C; else goto L_02444F3C;
|
|
L_02444F2C: ; // 0x2444f2c
|
|
/* 02444F2C */ cpu->r[3] = 0x00000094u;
|
|
/* 02444F30 */ Gambit_fn_02801A78(cpu);
|
|
/* 02444F34 */ cpu->r[28] = cpu->r[3];
|
|
/* 02444F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u);
|
|
/* 02444F38 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444F38 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02444F38 */ if (_t5) goto L_02445704; else goto L_02444F3C;
|
|
L_02444F3C: ; // 0x2444f3c
|
|
/* 02444F3C */ cpu->r[3] = cpu->r[28];
|
|
/* 02444F40 */ Gambit_fn_02000020(cpu);
|
|
/* 02444F44 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02444F48 */ cpu->r[31] = cpu->r[28] + 0x00000050u;
|
|
/* 02444F48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02444F4C */ cpu->r[12] = cpu->r[12] + 0xFFFFD310u;
|
|
/* 02444F50 */ cpu->r[27] = 0x00000000u;
|
|
/* 02444F54 */ _t6 = cpu->r[28] + 0x00000004u;
|
|
/* 02444F54 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02444F58 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444F58 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02444F58 */ if (_t8) goto L_02444F5C; else goto L_02444F6C;
|
|
L_02444F5C: ; // 0x2444f5c
|
|
/* 02444F5C */ cpu->r[3] = 0x00000038u;
|
|
/* 02444F60 */ Gambit_fn_02801A78(cpu);
|
|
/* 02444F64 */ cpu->r[31] = cpu->r[3];
|
|
/* 02444F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02444F68 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02444F68 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02444F68 */ if (_t10) goto L_02444F9C; else goto L_02444F6C;
|
|
L_02444F6C: ; // 0x2444f6c
|
|
/* 02444F6C */ cpu->r[3] = cpu->r[31];
|
|
/* 02444F70 */ Gambit_fn_027FC29C(cpu);
|
|
/* 02444F74 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02444F78 */ _t11 = cpu->r[31] + 0x00000030u;
|
|
/* 02444F78 */ rbrew_write32(cpu->mem, _t11, cpu->r[27]);
|
|
/* 02444F7C */ cpu->r[0] = cpu->r[0] + 0xFFFFD4F0u;
|
|
/* 02444F80 */ _t12 = cpu->r[31] + 0x00000034u;
|
|
/* 02444F80 */ rbrew_write32(cpu->mem, _t12, cpu->r[27]);
|
|
/* 02444F84 */ _t13 = cpu->r[31] + 0x00000004u;
|
|
/* 02444F84 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02444F88 */ _t14 = cpu->r[31] + 0x00000024u;
|
|
/* 02444F88 */ rbrew_write32(cpu->mem, _t14, cpu->r[27]);
|
|
/* 02444F8C */ _t15 = cpu->r[31] + 0x00000028u;
|
|
/* 02444F8C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
/* 02444F90 */ _t16 = cpu->r[31] + 0x0000002Cu;
|
|
/* 02444F90 */ rbrew_write32(cpu->mem, _t16, cpu->r[27]);
|
|
/* 02444F94 */ _t17 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02444F94 */ rbrew_write32(cpu->mem, _t17, cpu->r[27]);
|
|
/* 02444F98 */ _t18 = cpu->r[31] + 0x00000020u;
|
|
/* 02444F98 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]);
|
|
L_02444F9C: ; // 0x2444f9c
|
|
/* 02444F9C */ _t19 = cpu->r[28] + 0x00000088u;
|
|
/* 02444F9C */ rbrew_write32(cpu->mem, _t19, cpu->r[27]);
|
|
/* 02444FA0 */ cpu->r[0] = 0x00000007u;
|
|
/* 02444FA4 */ cpu->r[4] = cpu->r[28];
|
|
/* 02444FA8 */ _t20 = cpu->r[28] + 0x00000090u;
|
|
/* 02444FA8 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[27]);
|
|
/* 02444FAC */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 02444FB0 */ cpu->r[6] = 0x00000000u;
|
|
/* 02444FB4 */ _t21 = cpu->r[28] + 0x0000008Cu;
|
|
/* 02444FB4 */ rbrew_write32(cpu->mem, _t21, cpu->r[27]);
|
|
/* 02444FB8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02444FBC */ _t22 = cpu->r[1] + 0x00000008u;
|
|
/* 02444FBC */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]);
|
|
/* 02444FC0 */ Gambit_fn_02445FEC(cpu);
|
|
/* 02444FC4 */ cpu->r[25] = 0x100A0000u;
|
|
/* 02444FC8 */ cpu->r[26] = 0x02440000u;
|
|
/* 02444FCC */ cpu->r[25] = cpu->r[25] + 0xFFFFD1DCu;
|
|
/* 02444FD0 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02444FD4 */ cpu->r[26] = cpu->r[26] + 0x00005CFCu;
|
|
/* 02444FD8 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 02444FD8 */ rbrew_write32(cpu->mem, _t23, cpu->r[25]);
|
|
/* 02444FDC */ cpu->r[4] = cpu->r[4] + 0xFFFFD28Cu;
|
|
/* 02444FE0 */ cpu->ctr = cpu->r[26];
|
|
/* 02444FE4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444FE4 */ rbrew_write32(cpu->mem, _t24, cpu->r[4]);
|
|
/* 02444FE8 */ _t25 = cpu->r[28] + 0x00000068u;
|
|
/* 02444FE8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t25);
|
|
/* 02444FEC */ _t26 = cpu->r[24] + 0x00000000u;
|
|
/* 02444FEC */ cpu->r[29] = rbrew_read32(cpu->mem, _t26);
|
|
/* 02444FF0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444FF4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02444FF8 */ cpu->r[31] = 0x10110000u;
|
|
/* 02444FFC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02444FFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02445000 */ _t28 = cpu->r[31] + 0x00007399u;
|
|
/* 02445000 */ cpu->r[31] = rbrew_read8(cpu->mem, _t28);
|
|
/* 02445004 */ _t29 = cpu->r[9] + 0x00000000u;
|
|
/* 02445004 */ cpu->r[5] = rbrew_read8(cpu->mem, _t29);
|
|
/* 02445008 */ cpu->r[30] = 0x00000000u;
|
|
/* 0244500C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02445010 */ cpu->r[11] = 0x00080000u;
|
|
/* 02445014 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445014 */ _t31 = _t30 & 0x00000001u;
|
|
/* 02445014 */ if (_t31) goto L_0244503C; else goto L_02445018;
|
|
L_02445018: ; // 0x2445018
|
|
/* 02445018 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0244501C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]);
|
|
/* 02445020 */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02445024 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02445024 */ _t33 = _t32 & 0x00000001u;
|
|
/* 02445024 */ if (_t33) goto L_02445038; else goto L_02445028;
|
|
L_02445028: ; // 0x2445028
|
|
/* 02445028 */ _t34 = cpu->r[9] + 0x00000000u;
|
|
/* 02445028 */ cpu->r[0] = rbrew_read8(cpu->mem, _t34);
|
|
/* 0244502C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02445030 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445030 */ _t36 = _t35 & 0x00000001u;
|
|
/* 02445030 */ if (_t36) goto L_02445034; else goto L_02445018;
|
|
L_02445034: ; // 0x2445034
|
|
/* 02445034 */ goto L_0244503C;
|
|
L_02445038: ; // 0x2445038
|
|
/* 02445038 */ cpu->r[30] = 0x00000000u;
|
|
L_0244503C: ; // 0x244503c
|
|
/* 0244503C */ _t37 = cpu->r[24] + 0x00000008u;
|
|
/* 0244503C */ cpu->r[7] = rbrew_read32(cpu->mem, _t37);
|
|
/* 02445040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 02445044 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02445044 */ _t39 = _t38 & 0x00000001u;
|
|
/* 02445044 */ if (_t39) goto L_0244504C; else goto L_02445048;
|
|
L_02445048: ; // 0x2445048
|
|
/* 02445048 */ cpu->r[30] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_0244504C: ; // 0x244504c
|
|
/* 0244504C */ _t40 = cpu->r[1] + 0x00000010u;
|
|
/* 0244504C */ cpu->r[7] = rbrew_read32(cpu->mem, _t40);
|
|
/* 02445050 */ _t41 = cpu->r[7] + 0x00000014u;
|
|
/* 02445050 */ cpu->r[8] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02445054 */ cpu->ctr = cpu->r[8];
|
|
/* 02445058 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244505C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445060 */ _t42 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445060 */ cpu->r[4] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02445064 */ cpu->r[3] = cpu->r[29];
|
|
/* 02445068 */ cpu->r[5] = cpu->r[30];
|
|
/* 0244506C */ cpu->r[6] = 0x00000000u;
|
|
/* 02445070 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02445074 */ _t43 = cpu->r[29] + cpu->r[30];
|
|
/* 02445074 */ rbrew_write8(cpu->mem, _t43, (uint8_t)cpu->r[31]);
|
|
/* 02445078 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 0244507C */ _t44 = cpu->r[1] + 0x00000028u;
|
|
/* 0244507C */ rbrew_write32(cpu->mem, _t44, cpu->r[27]);
|
|
/* 02445080 */ cpu->r[11] = 0x02440000u;
|
|
/* 02445084 */ _t45 = cpu->r[1] + 0x00000014u;
|
|
/* 02445084 */ rbrew_write16(cpu->mem, _t45, (uint16_t)cpu->r[27]);
|
|
/* 02445088 */ cpu->r[11] = cpu->r[11] + 0x00005FDCu;
|
|
/* 0244508C */ _t46 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244508C */ rbrew_write16(cpu->mem, _t46, (uint16_t)cpu->r[27]);
|
|
/* 02445090 */ cpu->r[9] = 0x02440000u;
|
|
/* 02445094 */ _t47 = cpu->r[1] + 0x00000020u;
|
|
/* 02445094 */ rbrew_write32(cpu->mem, _t47, cpu->r[11]);
|
|
/* 02445098 */ cpu->r[12] = 0x00000000u;
|
|
/* 0244509C */ _t48 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0244509C */ rbrew_write16(cpu->mem, _t48, (uint16_t)cpu->r[5]);
|
|
/* 024450A0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024450A4 */ _t49 = cpu->r[1] + 0x00000024u;
|
|
/* 024450A4 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[27]);
|
|
/* 024450A8 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 024450AC */ _t50 = cpu->r[1] + 0x00000026u;
|
|
/* 024450AC */ rbrew_write16(cpu->mem, _t50, (uint16_t)cpu->r[27]);
|
|
/* 024450B0 */ cpu->r[9] = cpu->r[9] + 0x00005FD8u;
|
|
/* 024450B4 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 024450B8 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 024450B8 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[12]);
|
|
/* 024450BC */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024450C0 */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 024450C4 */ _t52 = cpu->r[1] + 0x00000018u;
|
|
/* 024450C4 */ rbrew_write32(cpu->mem, _t52, cpu->r[9]);
|
|
/* 024450C8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024450CC */ _t53 = cpu->r[1] + 0x00000016u;
|
|
/* 024450CC */ rbrew_write16(cpu->mem, _t53, (uint16_t)cpu->r[0]);
|
|
/* 024450D0 */ Gambit_fn_0244629C(cpu);
|
|
/* 024450D4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024450D8 */ _t54 = cpu->r[1] + 0x00000010u;
|
|
/* 024450D8 */ rbrew_write32(cpu->mem, _t54, cpu->r[25]);
|
|
/* 024450DC */ cpu->r[0] = cpu->r[0] + 0xFFFFD2B4u;
|
|
/* 024450E0 */ _t55 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024450E0 */ rbrew_write32(cpu->mem, _t55, cpu->r[0]);
|
|
/* 024450E4 */ _t56 = cpu->r[28] + 0x00000064u;
|
|
/* 024450E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t56);
|
|
/* 024450E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000001u);
|
|
/* 024450EC */ _t57 = cpu->r[28] + 0x00000068u;
|
|
/* 024450EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t57);
|
|
/* 024450F0 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024450F0 */ _t59 = _t58 & 0x00000001u;
|
|
/* 024450F0 */ if (_t59) goto L_024450F4; else goto L_024450F8;
|
|
L_024450F4: ; // 0x24450f4
|
|
/* 024450F4 */ cpu->r[29] = cpu->r[29] + 0x00000024u;
|
|
L_024450F8: ; // 0x24450f8
|
|
/* 024450F8 */ cpu->ctr = cpu->r[26];
|
|
/* 024450FC */ _t60 = cpu->r[29] + 0x00000000u;
|
|
/* 024450FC */ cpu->r[24] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02445100 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445104 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445108 */ _t61 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445108 */ cpu->r[4] = rbrew_read32(cpu->mem, _t61);
|
|
/* 0244510C */ _t62 = cpu->r[4] + 0x00000000u;
|
|
/* 0244510C */ cpu->r[0] = rbrew_read8(cpu->mem, _t62);
|
|
/* 02445110 */ cpu->r[30] = 0x00000000u;
|
|
/* 02445114 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02445118 */ cpu->r[7] = 0x00080000u;
|
|
/* 0244511C */ _t63 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244511C */ _t64 = _t63 & 0x00000001u;
|
|
/* 0244511C */ if (_t64) goto L_02445144; else goto L_02445120;
|
|
L_02445120: ; // 0x2445120
|
|
/* 02445120 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02445124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 02445128 */ cpu->r[4] = cpu->r[4] + 0x00000001u;
|
|
/* 0244512C */ _t65 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0244512C */ _t66 = _t65 & 0x00000001u;
|
|
/* 0244512C */ if (_t66) goto L_02445140; else goto L_02445130;
|
|
L_02445130: ; // 0x2445130
|
|
/* 02445130 */ _t67 = cpu->r[4] + 0x00000000u;
|
|
/* 02445130 */ cpu->r[5] = rbrew_read8(cpu->mem, _t67);
|
|
/* 02445134 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02445138 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445138 */ _t69 = _t68 & 0x00000001u;
|
|
/* 02445138 */ if (_t69) goto L_0244513C; else goto L_02445120;
|
|
L_0244513C: ; // 0x244513c
|
|
/* 0244513C */ goto L_02445144;
|
|
L_02445140: ; // 0x2445140
|
|
/* 02445140 */ cpu->r[30] = 0x00000000u;
|
|
L_02445144: ; // 0x2445144
|
|
/* 02445144 */ _t70 = cpu->r[29] + 0x00000008u;
|
|
/* 02445144 */ cpu->r[9] = rbrew_read32(cpu->mem, _t70);
|
|
/* 02445148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0244514C */ _t71 = cpu->r[1] + 0x00000010u;
|
|
/* 0244514C */ cpu->r[7] = rbrew_read32(cpu->mem, _t71);
|
|
/* 02445150 */ _t72 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02445150 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02445150 */ if (_t73) goto L_02445158; else goto L_02445154;
|
|
L_02445154: ; // 0x2445154
|
|
/* 02445154 */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFFu;
|
|
L_02445158: ; // 0x2445158
|
|
/* 02445158 */ _t74 = cpu->r[7] + 0x00000014u;
|
|
/* 02445158 */ cpu->r[9] = rbrew_read32(cpu->mem, _t74);
|
|
/* 0244515C */ cpu->ctr = cpu->r[9];
|
|
/* 02445160 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445164 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445168 */ _t75 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445168 */ cpu->r[4] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0244516C */ cpu->r[3] = cpu->r[24];
|
|
/* 02445170 */ cpu->r[5] = cpu->r[30];
|
|
/* 02445174 */ cpu->r[6] = 0x00000000u;
|
|
/* 02445178 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0244517C */ _t76 = cpu->r[24] + cpu->r[30];
|
|
/* 0244517C */ rbrew_write8(cpu->mem, _t76, (uint8_t)cpu->r[31]);
|
|
/* 02445180 */ cpu->r[0] = 0x00000001u;
|
|
/* 02445184 */ _t77 = cpu->r[1] + 0x00000028u;
|
|
/* 02445184 */ rbrew_write32(cpu->mem, _t77, cpu->r[27]);
|
|
/* 02445188 */ cpu->r[12] = 0x02440000u;
|
|
/* 0244518C */ _t78 = cpu->r[1] + 0x00000008u;
|
|
/* 0244518C */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[0]);
|
|
/* 02445190 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02445194 */ _t79 = cpu->r[1] + 0x00000014u;
|
|
/* 02445194 */ rbrew_write16(cpu->mem, _t79, (uint16_t)cpu->r[27]);
|
|
/* 02445198 */ _t80 = cpu->r[1] + 0x00000016u;
|
|
/* 02445198 */ rbrew_write16(cpu->mem, _t80, (uint16_t)cpu->r[6]);
|
|
/* 0244519C */ cpu->r[12] = cpu->r[12] + 0x00005844u;
|
|
/* 024451A0 */ _t81 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024451A0 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[27]);
|
|
/* 024451A4 */ cpu->r[10] = 0x02440000u;
|
|
/* 024451A8 */ _t82 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024451A8 */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[6]);
|
|
/* 024451AC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024451B0 */ _t83 = cpu->r[1] + 0x00000026u;
|
|
/* 024451B0 */ rbrew_write16(cpu->mem, _t83, (uint16_t)cpu->r[27]);
|
|
/* 024451B4 */ cpu->r[10] = cpu->r[10] + 0x000058F8u;
|
|
/* 024451B8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024451BC */ _t84 = cpu->r[1] + 0x00000020u;
|
|
/* 024451BC */ rbrew_write32(cpu->mem, _t84, cpu->r[12]);
|
|
/* 024451C0 */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 024451C4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024451C8 */ _t85 = cpu->r[1] + 0x00000018u;
|
|
/* 024451C8 */ rbrew_write32(cpu->mem, _t85, cpu->r[10]);
|
|
/* 024451CC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024451D0 */ _t86 = cpu->r[1] + 0x00000024u;
|
|
/* 024451D0 */ rbrew_write16(cpu->mem, _t86, (uint16_t)cpu->r[27]);
|
|
/* 024451D4 */ Gambit_fn_0244629C(cpu);
|
|
/* 024451D8 */ cpu->r[5] = 0x100A0000u;
|
|
/* 024451DC */ _t87 = cpu->r[1] + 0x00000010u;
|
|
/* 024451DC */ rbrew_write32(cpu->mem, _t87, cpu->r[25]);
|
|
/* 024451E0 */ cpu->r[5] = cpu->r[5] + 0xFFFFD2CCu;
|
|
/* 024451E4 */ _t88 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024451E4 */ rbrew_write32(cpu->mem, _t88, cpu->r[5]);
|
|
/* 024451E8 */ _t89 = cpu->r[28] + 0x00000064u;
|
|
/* 024451E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t89);
|
|
/* 024451EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000002u);
|
|
/* 024451F0 */ _t90 = cpu->r[28] + 0x00000068u;
|
|
/* 024451F0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t90);
|
|
/* 024451F4 */ _t91 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024451F4 */ _t92 = _t91 & 0x00000001u;
|
|
/* 024451F4 */ if (_t92) goto L_024451F8; else goto L_024451FC;
|
|
L_024451F8: ; // 0x24451f8
|
|
/* 024451F8 */ cpu->r[29] = cpu->r[29] + 0x00000048u;
|
|
L_024451FC: ; // 0x24451fc
|
|
/* 024451FC */ cpu->ctr = cpu->r[26];
|
|
/* 02445200 */ _t93 = cpu->r[29] + 0x00000000u;
|
|
/* 02445200 */ cpu->r[24] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02445204 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445208 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0244520C */ _t94 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244520C */ cpu->r[9] = rbrew_read32(cpu->mem, _t94);
|
|
/* 02445210 */ _t95 = cpu->r[9] + 0x00000000u;
|
|
/* 02445210 */ cpu->r[11] = rbrew_read8(cpu->mem, _t95);
|
|
/* 02445214 */ cpu->r[30] = 0x00000000u;
|
|
/* 02445218 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 0244521C */ cpu->r[10] = 0x00080000u;
|
|
/* 02445220 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445220 */ _t97 = _t96 & 0x00000001u;
|
|
/* 02445220 */ if (_t97) goto L_02445248; else goto L_02445224;
|
|
L_02445224: ; // 0x2445224
|
|
/* 02445224 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02445228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 0244522C */ cpu->r[9] = cpu->r[9] + 0x00000001u;
|
|
/* 02445230 */ _t98 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02445230 */ _t99 = _t98 & 0x00000001u;
|
|
/* 02445230 */ if (_t99) goto L_02445244; else goto L_02445234;
|
|
L_02445234: ; // 0x2445234
|
|
/* 02445234 */ _t100 = cpu->r[9] + 0x00000000u;
|
|
/* 02445234 */ cpu->r[0] = rbrew_read8(cpu->mem, _t100);
|
|
/* 02445238 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0244523C */ _t101 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244523C */ _t102 = _t101 & 0x00000001u;
|
|
/* 0244523C */ if (_t102) goto L_02445240; else goto L_02445224;
|
|
L_02445240: ; // 0x2445240
|
|
/* 02445240 */ goto L_02445248;
|
|
L_02445244: ; // 0x2445244
|
|
/* 02445244 */ cpu->r[30] = 0x00000000u;
|
|
L_02445248: ; // 0x2445248
|
|
/* 02445248 */ _t103 = cpu->r[29] + 0x00000008u;
|
|
/* 02445248 */ cpu->r[10] = rbrew_read32(cpu->mem, _t103);
|
|
/* 0244524C */ _t104 = cpu->r[1] + 0x00000010u;
|
|
/* 0244524C */ cpu->r[6] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02445250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02445254 */ _t105 = cpu->r[6] + 0x00000014u;
|
|
/* 02445254 */ cpu->r[8] = rbrew_read32(cpu->mem, _t105);
|
|
/* 02445258 */ _t106 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02445258 */ _t107 = _t106 & 0x00000001u;
|
|
/* 02445258 */ if (_t107) goto L_02445260; else goto L_0244525C;
|
|
L_0244525C: ; // 0x244525c
|
|
/* 0244525C */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02445260: ; // 0x2445260
|
|
/* 02445260 */ cpu->ctr = cpu->r[8];
|
|
/* 02445264 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445268 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0244526C */ _t108 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244526C */ cpu->r[4] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02445270 */ cpu->r[6] = 0x00000000u;
|
|
/* 02445274 */ cpu->r[5] = cpu->r[30];
|
|
/* 02445278 */ cpu->r[3] = cpu->r[24];
|
|
/* 0244527C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02445280 */ _t109 = cpu->r[24] + cpu->r[30];
|
|
/* 02445280 */ rbrew_write8(cpu->mem, _t109, (uint8_t)cpu->r[31]);
|
|
/* 02445284 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 02445288 */ _t110 = cpu->r[1] + 0x00000014u;
|
|
/* 02445288 */ rbrew_write16(cpu->mem, _t110, (uint16_t)cpu->r[27]);
|
|
/* 0244528C */ cpu->r[6] = 0x00000002u;
|
|
/* 02445290 */ _t111 = cpu->r[1] + 0x00000028u;
|
|
/* 02445290 */ rbrew_write32(cpu->mem, _t111, cpu->r[27]);
|
|
/* 02445294 */ cpu->r[0] = 0x02440000u;
|
|
/* 02445298 */ _t112 = cpu->r[1] + 0x00000024u;
|
|
/* 02445298 */ rbrew_write16(cpu->mem, _t112, (uint16_t)cpu->r[27]);
|
|
/* 0244529C */ cpu->r[0] = cpu->r[0] + 0x0000593Cu;
|
|
/* 024452A0 */ _t113 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024452A0 */ rbrew_write16(cpu->mem, _t113, (uint16_t)cpu->r[27]);
|
|
/* 024452A4 */ _t114 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024452A4 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[9]);
|
|
/* 024452A8 */ cpu->r[10] = 0x02440000u;
|
|
/* 024452AC */ _t115 = cpu->r[1] + 0x00000008u;
|
|
/* 024452AC */ rbrew_write8(cpu->mem, _t115, (uint8_t)cpu->r[6]);
|
|
/* 024452B0 */ cpu->r[10] = cpu->r[10] + 0x00005FE0u;
|
|
/* 024452B4 */ _t116 = cpu->r[1] + 0x00000018u;
|
|
/* 024452B4 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]);
|
|
/* 024452B8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024452BC */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 024452C0 */ _t117 = cpu->r[1] + 0x00000020u;
|
|
/* 024452C0 */ rbrew_write32(cpu->mem, _t117, cpu->r[10]);
|
|
/* 024452C4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024452C8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024452CC */ _t118 = cpu->r[1] + 0x00000026u;
|
|
/* 024452CC */ rbrew_write16(cpu->mem, _t118, (uint16_t)cpu->r[27]);
|
|
/* 024452D0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024452D4 */ _t119 = cpu->r[1] + 0x00000016u;
|
|
/* 024452D4 */ rbrew_write16(cpu->mem, _t119, (uint16_t)cpu->r[9]);
|
|
/* 024452D8 */ Gambit_fn_0244629C(cpu);
|
|
/* 024452DC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024452E0 */ _t120 = cpu->r[1] + 0x00000010u;
|
|
/* 024452E0 */ rbrew_write32(cpu->mem, _t120, cpu->r[25]);
|
|
/* 024452E4 */ cpu->r[0] = cpu->r[0] + 0xFFFFD274u;
|
|
/* 024452E8 */ _t121 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024452E8 */ rbrew_write32(cpu->mem, _t121, cpu->r[0]);
|
|
/* 024452EC */ _t122 = cpu->r[28] + 0x00000064u;
|
|
/* 024452EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t122);
|
|
/* 024452F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000003u);
|
|
/* 024452F4 */ _t123 = cpu->r[28] + 0x00000068u;
|
|
/* 024452F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t123);
|
|
/* 024452F8 */ _t124 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024452F8 */ _t125 = _t124 & 0x00000001u;
|
|
/* 024452F8 */ if (_t125) goto L_024452FC; else goto L_02445300;
|
|
L_024452FC: ; // 0x24452fc
|
|
/* 024452FC */ cpu->r[30] = cpu->r[30] + 0x0000006Cu;
|
|
L_02445300: ; // 0x2445300
|
|
/* 02445300 */ cpu->ctr = cpu->r[26];
|
|
/* 02445304 */ _t126 = cpu->r[30] + 0x00000000u;
|
|
/* 02445304 */ cpu->r[24] = rbrew_read32(cpu->mem, _t126);
|
|
/* 02445308 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244530C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445310 */ _t127 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445310 */ cpu->r[12] = rbrew_read32(cpu->mem, _t127);
|
|
/* 02445314 */ _t128 = cpu->r[12] + 0x00000000u;
|
|
/* 02445314 */ cpu->r[11] = rbrew_read8(cpu->mem, _t128);
|
|
/* 02445318 */ cpu->r[4] = 0x00080000u;
|
|
/* 0244531C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 02445320 */ cpu->r[29] = 0x00000000u;
|
|
/* 02445324 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445324 */ _t130 = _t129 & 0x00000001u;
|
|
/* 02445324 */ if (_t130) goto L_0244534C; else goto L_02445328;
|
|
L_02445328: ; // 0x2445328
|
|
/* 02445328 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 0244532C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[4]);
|
|
/* 02445330 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02445334 */ _t131 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02445334 */ _t132 = _t131 & 0x00000001u;
|
|
/* 02445334 */ if (_t132) goto L_02445348; else goto L_02445338;
|
|
L_02445338: ; // 0x2445338
|
|
/* 02445338 */ _t133 = cpu->r[12] + 0x00000000u;
|
|
/* 02445338 */ cpu->r[0] = rbrew_read8(cpu->mem, _t133);
|
|
/* 0244533C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02445340 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445340 */ _t135 = _t134 & 0x00000001u;
|
|
/* 02445340 */ if (_t135) goto L_02445344; else goto L_02445328;
|
|
L_02445344: ; // 0x2445344
|
|
/* 02445344 */ goto L_0244534C;
|
|
L_02445348: ; // 0x2445348
|
|
/* 02445348 */ cpu->r[29] = 0x00000000u;
|
|
L_0244534C: ; // 0x244534c
|
|
/* 0244534C */ _t136 = cpu->r[30] + 0x00000008u;
|
|
/* 0244534C */ cpu->r[12] = rbrew_read32(cpu->mem, _t136);
|
|
/* 02445350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]);
|
|
/* 02445354 */ _t137 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02445354 */ _t138 = _t137 & 0x00000001u;
|
|
/* 02445354 */ if (_t138) goto L_0244535C; else goto L_02445358;
|
|
L_02445358: ; // 0x2445358
|
|
/* 02445358 */ cpu->r[29] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_0244535C: ; // 0x244535c
|
|
/* 0244535C */ _t139 = cpu->r[1] + 0x00000010u;
|
|
/* 0244535C */ cpu->r[5] = rbrew_read32(cpu->mem, _t139);
|
|
/* 02445360 */ _t140 = cpu->r[5] + 0x00000014u;
|
|
/* 02445360 */ cpu->r[7] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02445364 */ cpu->ctr = cpu->r[7];
|
|
/* 02445368 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244536C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445370 */ _t141 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445370 */ cpu->r[4] = rbrew_read32(cpu->mem, _t141);
|
|
/* 02445374 */ cpu->r[6] = 0x00000000u;
|
|
/* 02445378 */ cpu->r[5] = cpu->r[29];
|
|
/* 0244537C */ cpu->r[3] = cpu->r[24];
|
|
/* 02445380 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02445384 */ _t142 = cpu->r[24] + cpu->r[29];
|
|
/* 02445384 */ rbrew_write8(cpu->mem, _t142, (uint8_t)cpu->r[31]);
|
|
/* 02445388 */ cpu->r[0] = 0x00000003u;
|
|
/* 0244538C */ _t143 = cpu->r[1] + 0x00000014u;
|
|
/* 0244538C */ rbrew_write16(cpu->mem, _t143, (uint16_t)cpu->r[27]);
|
|
/* 02445390 */ cpu->r[11] = 0x02440000u;
|
|
/* 02445394 */ _t144 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02445394 */ rbrew_write16(cpu->mem, _t144, (uint16_t)cpu->r[27]);
|
|
/* 02445398 */ cpu->r[11] = cpu->r[11] + 0x00005A04u;
|
|
/* 0244539C */ _t145 = cpu->r[1] + 0x00000024u;
|
|
/* 0244539C */ rbrew_write16(cpu->mem, _t145, (uint16_t)cpu->r[27]);
|
|
/* 024453A0 */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 024453A4 */ _t146 = cpu->r[1] + 0x00000028u;
|
|
/* 024453A4 */ rbrew_write32(cpu->mem, _t146, cpu->r[27]);
|
|
/* 024453A8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024453AC */ _t147 = cpu->r[1] + 0x00000008u;
|
|
/* 024453AC */ rbrew_write8(cpu->mem, _t147, (uint8_t)cpu->r[0]);
|
|
/* 024453B0 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 024453B4 */ _t148 = cpu->r[1] + 0x00000018u;
|
|
/* 024453B4 */ rbrew_write32(cpu->mem, _t148, cpu->r[11]);
|
|
/* 024453B8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024453BC */ _t149 = cpu->r[1] + 0x00000016u;
|
|
/* 024453BC */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[0]);
|
|
/* 024453C0 */ cpu->r[9] = 0x02440000u;
|
|
/* 024453C4 */ _t150 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024453C4 */ rbrew_write16(cpu->mem, _t150, (uint16_t)cpu->r[0]);
|
|
/* 024453C8 */ cpu->r[9] = cpu->r[9] + 0x000059ACu;
|
|
/* 024453CC */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024453D0 */ _t151 = cpu->r[1] + 0x00000026u;
|
|
/* 024453D0 */ rbrew_write16(cpu->mem, _t151, (uint16_t)cpu->r[27]);
|
|
/* 024453D4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024453D8 */ _t152 = cpu->r[1] + 0x00000020u;
|
|
/* 024453D8 */ rbrew_write32(cpu->mem, _t152, cpu->r[9]);
|
|
/* 024453DC */ Gambit_fn_0244629C(cpu);
|
|
/* 024453E0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024453E4 */ _t153 = cpu->r[1] + 0x00000010u;
|
|
/* 024453E4 */ rbrew_write32(cpu->mem, _t153, cpu->r[25]);
|
|
/* 024453E8 */ cpu->r[12] = cpu->r[12] + 0xFFFFD2E4u;
|
|
/* 024453EC */ _t154 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024453EC */ rbrew_write32(cpu->mem, _t154, cpu->r[12]);
|
|
/* 024453F0 */ _t155 = cpu->r[28] + 0x00000064u;
|
|
/* 024453F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155);
|
|
/* 024453F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u);
|
|
/* 024453F8 */ _t156 = cpu->r[28] + 0x00000068u;
|
|
/* 024453F8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t156);
|
|
/* 024453FC */ _t157 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024453FC */ _t158 = _t157 & 0x00000001u;
|
|
/* 024453FC */ if (_t158) goto L_02445400; else goto L_02445404;
|
|
L_02445400: ; // 0x2445400
|
|
/* 02445400 */ cpu->r[29] = cpu->r[29] + 0x00000090u;
|
|
L_02445404: ; // 0x2445404
|
|
/* 02445404 */ cpu->ctr = cpu->r[26];
|
|
/* 02445408 */ _t159 = cpu->r[29] + 0x00000000u;
|
|
/* 02445408 */ cpu->r[24] = rbrew_read32(cpu->mem, _t159);
|
|
/* 0244540C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445410 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445414 */ _t160 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445414 */ cpu->r[11] = rbrew_read32(cpu->mem, _t160);
|
|
/* 02445418 */ _t161 = cpu->r[11] + 0x00000000u;
|
|
/* 02445418 */ cpu->r[0] = rbrew_read8(cpu->mem, _t161);
|
|
/* 0244541C */ cpu->r[30] = 0x00000000u;
|
|
/* 02445420 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02445424 */ cpu->r[7] = 0x00080000u;
|
|
/* 02445428 */ _t162 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445428 */ _t163 = _t162 & 0x00000001u;
|
|
/* 02445428 */ if (_t163) goto L_02445450; else goto L_0244542C;
|
|
L_0244542C: ; // 0x244542c
|
|
/* 0244542C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02445430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 02445434 */ cpu->r[11] = cpu->r[11] + 0x00000001u;
|
|
/* 02445438 */ _t164 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02445438 */ _t165 = _t164 & 0x00000001u;
|
|
/* 02445438 */ if (_t165) goto L_0244544C; else goto L_0244543C;
|
|
L_0244543C: ; // 0x244543c
|
|
/* 0244543C */ _t166 = cpu->r[11] + 0x00000000u;
|
|
/* 0244543C */ cpu->r[5] = rbrew_read8(cpu->mem, _t166);
|
|
/* 02445440 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02445444 */ _t167 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445444 */ _t168 = _t167 & 0x00000001u;
|
|
/* 02445444 */ if (_t168) goto L_02445448; else goto L_0244542C;
|
|
L_02445448: ; // 0x2445448
|
|
/* 02445448 */ goto L_02445450;
|
|
L_0244544C: ; // 0x244544c
|
|
/* 0244544C */ cpu->r[30] = 0x00000000u;
|
|
L_02445450: ; // 0x2445450
|
|
/* 02445450 */ _t169 = cpu->r[29] + 0x00000008u;
|
|
/* 02445450 */ cpu->r[4] = rbrew_read32(cpu->mem, _t169);
|
|
/* 02445454 */ _t170 = cpu->r[1] + 0x00000010u;
|
|
/* 02445454 */ cpu->r[6] = rbrew_read32(cpu->mem, _t170);
|
|
/* 02445458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[4]);
|
|
/* 0244545C */ _t171 = cpu->r[6] + 0x00000014u;
|
|
/* 0244545C */ cpu->r[7] = rbrew_read32(cpu->mem, _t171);
|
|
/* 02445460 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02445460 */ _t173 = _t172 & 0x00000001u;
|
|
/* 02445460 */ if (_t173) goto L_02445468; else goto L_02445464;
|
|
L_02445464: ; // 0x2445464
|
|
/* 02445464 */ cpu->r[30] = cpu->r[4] + 0xFFFFFFFFu;
|
|
L_02445468: ; // 0x2445468
|
|
/* 02445468 */ cpu->ctr = cpu->r[7];
|
|
/* 0244546C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445470 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445474 */ _t174 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445474 */ cpu->r[4] = rbrew_read32(cpu->mem, _t174);
|
|
/* 02445478 */ cpu->r[6] = 0x00000000u;
|
|
/* 0244547C */ cpu->r[5] = cpu->r[30];
|
|
/* 02445480 */ cpu->r[3] = cpu->r[24];
|
|
/* 02445484 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02445488 */ _t175 = cpu->r[24] + cpu->r[30];
|
|
/* 02445488 */ rbrew_write8(cpu->mem, _t175, (uint8_t)cpu->r[31]);
|
|
/* 0244548C */ cpu->r[9] = 0x00000004u;
|
|
/* 02445490 */ _t176 = cpu->r[1] + 0x00000028u;
|
|
/* 02445490 */ rbrew_write32(cpu->mem, _t176, cpu->r[27]);
|
|
/* 02445494 */ cpu->r[8] = 0x02440000u;
|
|
/* 02445498 */ _t177 = cpu->r[1] + 0x00000008u;
|
|
/* 02445498 */ rbrew_write8(cpu->mem, _t177, (uint8_t)cpu->r[9]);
|
|
/* 0244549C */ cpu->r[11] = 0x02440000u;
|
|
/* 024454A0 */ _t178 = cpu->r[1] + 0x00000024u;
|
|
/* 024454A0 */ rbrew_write16(cpu->mem, _t178, (uint16_t)cpu->r[27]);
|
|
/* 024454A4 */ cpu->r[11] = cpu->r[11] + 0x00005B44u;
|
|
/* 024454A8 */ _t179 = cpu->r[1] + 0x00000026u;
|
|
/* 024454A8 */ rbrew_write16(cpu->mem, _t179, (uint16_t)cpu->r[27]);
|
|
/* 024454AC */ _t180 = cpu->r[1] + 0x00000018u;
|
|
/* 024454AC */ rbrew_write32(cpu->mem, _t180, cpu->r[11]);
|
|
/* 024454B0 */ cpu->r[8] = cpu->r[8] + 0x00005AC0u;
|
|
/* 024454B4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024454B8 */ _t181 = cpu->r[1] + 0x00000020u;
|
|
/* 024454B8 */ rbrew_write32(cpu->mem, _t181, cpu->r[8]);
|
|
/* 024454BC */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 024454C0 */ _t182 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024454C0 */ rbrew_write16(cpu->mem, _t182, (uint16_t)cpu->r[27]);
|
|
/* 024454C4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024454C8 */ _t183 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024454C8 */ rbrew_write16(cpu->mem, _t183, (uint16_t)cpu->r[4]);
|
|
/* 024454CC */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 024454D0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024454D4 */ _t184 = cpu->r[1] + 0x00000016u;
|
|
/* 024454D4 */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[4]);
|
|
/* 024454D8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024454DC */ _t185 = cpu->r[1] + 0x00000014u;
|
|
/* 024454DC */ rbrew_write16(cpu->mem, _t185, (uint16_t)cpu->r[27]);
|
|
/* 024454E0 */ Gambit_fn_0244629C(cpu);
|
|
/* 024454E4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024454E8 */ _t186 = cpu->r[1] + 0x00000010u;
|
|
/* 024454E8 */ rbrew_write32(cpu->mem, _t186, cpu->r[25]);
|
|
/* 024454EC */ cpu->r[12] = cpu->r[12] + 0xFFFFD2FCu;
|
|
/* 024454F0 */ _t187 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024454F0 */ rbrew_write32(cpu->mem, _t187, cpu->r[12]);
|
|
/* 024454F4 */ _t188 = cpu->r[28] + 0x00000064u;
|
|
/* 024454F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t188);
|
|
/* 024454F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000005u);
|
|
/* 024454FC */ _t189 = cpu->r[28] + 0x00000068u;
|
|
/* 024454FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t189);
|
|
/* 02445500 */ _t190 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02445500 */ _t191 = _t190 & 0x00000001u;
|
|
/* 02445500 */ if (_t191) goto L_02445504; else goto L_02445508;
|
|
L_02445504: ; // 0x2445504
|
|
/* 02445504 */ cpu->r[29] = cpu->r[29] + 0x000000B4u;
|
|
L_02445508: ; // 0x2445508
|
|
/* 02445508 */ cpu->ctr = cpu->r[26];
|
|
/* 0244550C */ _t192 = cpu->r[29] + 0x00000000u;
|
|
/* 0244550C */ cpu->r[24] = rbrew_read32(cpu->mem, _t192);
|
|
/* 02445510 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445514 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445518 */ _t193 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445518 */ cpu->r[6] = rbrew_read32(cpu->mem, _t193);
|
|
/* 0244551C */ _t194 = cpu->r[6] + 0x00000000u;
|
|
/* 0244551C */ cpu->r[4] = rbrew_read8(cpu->mem, _t194);
|
|
/* 02445520 */ cpu->r[30] = 0x00000000u;
|
|
/* 02445524 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 02445528 */ cpu->r[8] = 0x00080000u;
|
|
/* 0244552C */ _t195 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244552C */ _t196 = _t195 & 0x00000001u;
|
|
/* 0244552C */ if (_t196) goto L_02445554; else goto L_02445530;
|
|
L_02445530: ; // 0x2445530
|
|
/* 02445530 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02445534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02445538 */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 0244553C */ _t197 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0244553C */ _t198 = _t197 & 0x00000001u;
|
|
/* 0244553C */ if (_t198) goto L_02445550; else goto L_02445540;
|
|
L_02445540: ; // 0x2445540
|
|
/* 02445540 */ _t199 = cpu->r[6] + 0x00000000u;
|
|
/* 02445540 */ cpu->r[5] = rbrew_read8(cpu->mem, _t199);
|
|
/* 02445544 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 02445548 */ _t200 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445548 */ _t201 = _t200 & 0x00000001u;
|
|
/* 02445548 */ if (_t201) goto L_0244554C; else goto L_02445530;
|
|
L_0244554C: ; // 0x244554c
|
|
/* 0244554C */ goto L_02445554;
|
|
L_02445550: ; // 0x2445550
|
|
/* 02445550 */ cpu->r[30] = 0x00000000u;
|
|
L_02445554: ; // 0x2445554
|
|
/* 02445554 */ _t202 = cpu->r[29] + 0x00000008u;
|
|
/* 02445554 */ cpu->r[6] = rbrew_read32(cpu->mem, _t202);
|
|
/* 02445558 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 0244555C */ _t203 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0244555C */ _t204 = _t203 & 0x00000001u;
|
|
/* 0244555C */ if (_t204) goto L_02445564; else goto L_02445560;
|
|
L_02445560: ; // 0x2445560
|
|
/* 02445560 */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_02445564: ; // 0x2445564
|
|
/* 02445564 */ _t205 = cpu->r[1] + 0x00000010u;
|
|
/* 02445564 */ cpu->r[6] = rbrew_read32(cpu->mem, _t205);
|
|
/* 02445568 */ _t206 = cpu->r[6] + 0x00000014u;
|
|
/* 02445568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t206);
|
|
/* 0244556C */ cpu->ctr = cpu->r[0];
|
|
/* 02445570 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445574 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445578 */ _t207 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445578 */ cpu->r[4] = rbrew_read32(cpu->mem, _t207);
|
|
/* 0244557C */ cpu->r[3] = cpu->r[24];
|
|
/* 02445580 */ cpu->r[5] = cpu->r[30];
|
|
/* 02445584 */ cpu->r[6] = 0x00000000u;
|
|
/* 02445588 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0244558C */ _t208 = cpu->r[24] + cpu->r[30];
|
|
/* 0244558C */ rbrew_write8(cpu->mem, _t208, (uint8_t)cpu->r[31]);
|
|
/* 02445590 */ cpu->r[12] = 0x00000005u;
|
|
/* 02445594 */ _t209 = cpu->r[1] + 0x00000028u;
|
|
/* 02445594 */ rbrew_write32(cpu->mem, _t209, cpu->r[27]);
|
|
/* 02445598 */ cpu->r[10] = 0x02440000u;
|
|
/* 0244559C */ _t210 = cpu->r[1] + 0x00000024u;
|
|
/* 0244559C */ rbrew_write16(cpu->mem, _t210, (uint16_t)cpu->r[27]);
|
|
/* 024455A0 */ cpu->r[10] = cpu->r[10] + 0x00005FE8u;
|
|
/* 024455A4 */ _t211 = cpu->r[1] + 0x00000026u;
|
|
/* 024455A4 */ rbrew_write16(cpu->mem, _t211, (uint16_t)cpu->r[27]);
|
|
/* 024455A8 */ cpu->r[4] = 0xFFFFFFFFu;
|
|
/* 024455AC */ _t212 = cpu->r[1] + 0x00000018u;
|
|
/* 024455AC */ rbrew_write32(cpu->mem, _t212, cpu->r[10]);
|
|
/* 024455B0 */ cpu->r[8] = 0x02440000u;
|
|
/* 024455B4 */ _t213 = cpu->r[1] + 0x00000016u;
|
|
/* 024455B4 */ rbrew_write16(cpu->mem, _t213, (uint16_t)cpu->r[4]);
|
|
/* 024455B8 */ cpu->r[8] = cpu->r[8] + 0x00005FE4u;
|
|
/* 024455BC */ _t214 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024455BC */ rbrew_write16(cpu->mem, _t214, (uint16_t)cpu->r[4]);
|
|
/* 024455C0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024455C4 */ _t215 = cpu->r[1] + 0x00000008u;
|
|
/* 024455C4 */ rbrew_write8(cpu->mem, _t215, (uint8_t)cpu->r[12]);
|
|
/* 024455C8 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024455CC */ _t216 = cpu->r[1] + 0x00000020u;
|
|
/* 024455CC */ rbrew_write32(cpu->mem, _t216, cpu->r[8]);
|
|
/* 024455D0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024455D4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024455D8 */ _t217 = cpu->r[1] + 0x00000014u;
|
|
/* 024455D8 */ rbrew_write16(cpu->mem, _t217, (uint16_t)cpu->r[27]);
|
|
/* 024455DC */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 024455E0 */ _t218 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024455E0 */ rbrew_write16(cpu->mem, _t218, (uint16_t)cpu->r[27]);
|
|
/* 024455E4 */ Gambit_fn_0244629C(cpu);
|
|
/* 024455E8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024455EC */ _t219 = cpu->r[1] + 0x00000010u;
|
|
/* 024455EC */ rbrew_write32(cpu->mem, _t219, cpu->r[25]);
|
|
/* 024455F0 */ cpu->r[12] = cpu->r[12] + 0xFFFFD29Cu;
|
|
/* 024455F4 */ _t220 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024455F4 */ rbrew_write32(cpu->mem, _t220, cpu->r[12]);
|
|
/* 024455F8 */ _t221 = cpu->r[28] + 0x00000064u;
|
|
/* 024455F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t221);
|
|
/* 024455FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000006u);
|
|
/* 02445600 */ _t222 = cpu->r[28] + 0x00000068u;
|
|
/* 02445600 */ cpu->r[29] = rbrew_read32(cpu->mem, _t222);
|
|
/* 02445604 */ _t223 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02445604 */ _t224 = _t223 & 0x00000001u;
|
|
/* 02445604 */ if (_t224) goto L_02445608; else goto L_0244560C;
|
|
L_02445608: ; // 0x2445608
|
|
/* 02445608 */ cpu->r[29] = cpu->r[29] + 0x000000D8u;
|
|
L_0244560C: ; // 0x244560c
|
|
/* 0244560C */ cpu->ctr = cpu->r[26];
|
|
/* 02445610 */ _t225 = cpu->r[29] + 0x00000000u;
|
|
/* 02445610 */ cpu->r[25] = rbrew_read32(cpu->mem, _t225);
|
|
/* 02445614 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445618 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0244561C */ _t226 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244561C */ cpu->r[6] = rbrew_read32(cpu->mem, _t226);
|
|
/* 02445620 */ _t227 = cpu->r[6] + 0x00000000u;
|
|
/* 02445620 */ cpu->r[4] = rbrew_read8(cpu->mem, _t227);
|
|
/* 02445624 */ cpu->r[30] = 0x00000000u;
|
|
/* 02445628 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]);
|
|
/* 0244562C */ cpu->r[7] = 0x00080000u;
|
|
/* 02445630 */ _t228 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445630 */ _t229 = _t228 & 0x00000001u;
|
|
/* 02445630 */ if (_t229) goto L_02445658; else goto L_02445634;
|
|
L_02445634: ; // 0x2445634
|
|
/* 02445634 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02445638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]);
|
|
/* 0244563C */ cpu->r[6] = cpu->r[6] + 0x00000001u;
|
|
/* 02445640 */ _t230 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02445640 */ _t231 = _t230 & 0x00000001u;
|
|
/* 02445640 */ if (_t231) goto L_02445654; else goto L_02445644;
|
|
L_02445644: ; // 0x2445644
|
|
/* 02445644 */ _t232 = cpu->r[6] + 0x00000000u;
|
|
/* 02445644 */ cpu->r[5] = rbrew_read8(cpu->mem, _t232);
|
|
/* 02445648 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]);
|
|
/* 0244564C */ _t233 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244564C */ _t234 = _t233 & 0x00000001u;
|
|
/* 0244564C */ if (_t234) goto L_02445650; else goto L_02445634;
|
|
L_02445650: ; // 0x2445650
|
|
/* 02445650 */ goto L_02445658;
|
|
L_02445654: ; // 0x2445654
|
|
/* 02445654 */ cpu->r[30] = 0x00000000u;
|
|
L_02445658: ; // 0x2445658
|
|
/* 02445658 */ _t235 = cpu->r[29] + 0x00000008u;
|
|
/* 02445658 */ cpu->r[8] = rbrew_read32(cpu->mem, _t235);
|
|
/* 0244565C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 02445660 */ _t236 = cpu->r[1] + 0x00000010u;
|
|
/* 02445660 */ cpu->r[7] = rbrew_read32(cpu->mem, _t236);
|
|
/* 02445664 */ _t237 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02445664 */ _t238 = _t237 & 0x00000001u;
|
|
/* 02445664 */ if (_t238) goto L_0244566C; else goto L_02445668;
|
|
L_02445668: ; // 0x2445668
|
|
/* 02445668 */ cpu->r[30] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_0244566C: ; // 0x244566c
|
|
/* 0244566C */ _t239 = cpu->r[7] + 0x00000014u;
|
|
/* 0244566C */ cpu->r[8] = rbrew_read32(cpu->mem, _t239);
|
|
/* 02445670 */ cpu->ctr = cpu->r[8];
|
|
/* 02445674 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445678 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0244567C */ _t240 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244567C */ cpu->r[4] = rbrew_read32(cpu->mem, _t240);
|
|
/* 02445680 */ cpu->r[3] = cpu->r[25];
|
|
/* 02445684 */ cpu->r[5] = cpu->r[30];
|
|
/* 02445688 */ cpu->r[6] = 0x00000000u;
|
|
/* 0244568C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02445690 */ _t241 = cpu->r[25] + cpu->r[30];
|
|
/* 02445690 */ rbrew_write8(cpu->mem, _t241, (uint8_t)cpu->r[31]);
|
|
/* 02445694 */ cpu->r[12] = 0x00000006u;
|
|
/* 02445698 */ _t242 = cpu->r[1] + 0x00000028u;
|
|
/* 02445698 */ rbrew_write32(cpu->mem, _t242, cpu->r[27]);
|
|
/* 0244569C */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 024456A0 */ _t243 = cpu->r[1] + 0x00000008u;
|
|
/* 024456A0 */ rbrew_write8(cpu->mem, _t243, (uint8_t)cpu->r[12]);
|
|
/* 024456A4 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 024456A8 */ _t244 = cpu->r[1] + 0x00000024u;
|
|
/* 024456A8 */ rbrew_write16(cpu->mem, _t244, (uint16_t)cpu->r[27]);
|
|
/* 024456AC */ _t245 = cpu->r[1] + 0x00000016u;
|
|
/* 024456AC */ rbrew_write16(cpu->mem, _t245, (uint16_t)cpu->r[12]);
|
|
/* 024456B0 */ cpu->r[9] = 0x02440000u;
|
|
/* 024456B4 */ _t246 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024456B4 */ rbrew_write16(cpu->mem, _t246, (uint16_t)cpu->r[27]);
|
|
/* 024456B8 */ cpu->r[9] = cpu->r[9] + 0x00005B98u;
|
|
/* 024456BC */ _t247 = cpu->r[1] + 0x00000026u;
|
|
/* 024456BC */ rbrew_write16(cpu->mem, _t247, (uint16_t)cpu->r[27]);
|
|
/* 024456C0 */ cpu->r[0] = 0x02440000u;
|
|
/* 024456C4 */ _t248 = cpu->r[1] + 0x00000014u;
|
|
/* 024456C4 */ rbrew_write16(cpu->mem, _t248, (uint16_t)cpu->r[27]);
|
|
/* 024456C8 */ cpu->r[0] = cpu->r[0] + 0x00005BF0u;
|
|
/* 024456CC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024456D0 */ _t249 = cpu->r[1] + 0x00000020u;
|
|
/* 024456D0 */ rbrew_write32(cpu->mem, _t249, cpu->r[9]);
|
|
/* 024456D4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024456D8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024456DC */ _t250 = cpu->r[1] + 0x00000018u;
|
|
/* 024456DC */ rbrew_write32(cpu->mem, _t250, cpu->r[0]);
|
|
/* 024456E0 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024456E4 */ _t251 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024456E4 */ rbrew_write16(cpu->mem, _t251, (uint16_t)cpu->r[12]);
|
|
/* 024456E8 */ Gambit_fn_0244629C(cpu);
|
|
/* 024456EC */ _t252 = cpu->r[28] + 0x0000005Eu;
|
|
/* 024456EC */ cpu->r[4] = rbrew_read8(cpu->mem, _t252);
|
|
/* 024456F0 */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 024456F4 */ /* nop */
|
|
/* 024456F8 */ Gambit_fn_027FC35C(cpu);
|
|
/* 024456FC */ cpu->r[3] = cpu->r[28] + 0x00000050u;
|
|
/* 02445700 */ Gambit_fn_02446324(cpu);
|
|
L_02445704: ; // 0x2445704
|
|
/* 02445704 */ cpu->r[3] = cpu->r[28];
|
|
/* 02445708 */ /* nop */
|
|
/* 0244570C */ _t253 = cpu->r[1] + 0x00000054u;
|
|
/* 0244570C */ cpu->r[0] = rbrew_read32(cpu->mem, _t253);
|
|
/* 02445710 */ cpu->lr = cpu->r[0];
|
|
/* 02445714 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 02445718 */ return;
|
|
}
|
|
|
|
// fn_0244571C @ 0x244571c
|
|
void Gambit_fn_0244571C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0244571C: ; // 0x244571c
|
|
/* 0244571C */ _t0 = cpu->r[3] + 0x00000088u;
|
|
/* 0244571C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02445724 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445724 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02445724 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445724 */ goto L_02445728;
|
|
L_02445728: ; // 0x2445728
|
|
/* 02445728 */ cpu->r[3] = cpu->r[3] + 0x00000050u;
|
|
/* 0244572C */ cpu->r[4] = 0x00000001u;
|
|
/* 02445730 */ goto L_02446434;
|
|
L_02446434: ; // 0x2446434
|
|
/* 02446434 */ cpu->r[0] = cpu->lr;
|
|
/* 02446438 */ _t3 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446438 */ rbrew_write32(cpu->mem, _t3, cpu->r[1]);
|
|
/* 02446438 */ cpu->r[1] = _t3;
|
|
/* 0244643C */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 0244643C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02446440 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446440 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]);
|
|
/* 02446444 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446448 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02446448 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0244644C */ _t7 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0244644C */ cpu->r[12] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02446450 */ /* nop */
|
|
/* 02446454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02446458 */ cpu->r[31] = cpu->r[4];
|
|
/* 0244645C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244645C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0244645C */ if (_t9) goto L_02446460; else goto L_02446474;
|
|
L_02446460: ; // 0x2446460
|
|
/* 02446460 */ _t10 = cpu->r[30] + 0x00000004u;
|
|
/* 02446460 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02446464 */ _t11 = cpu->r[11] + 0x00000014u;
|
|
/* 02446464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02446468 */ cpu->ctr = cpu->r[0];
|
|
/* 0244646C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446470 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02446474: ; // 0x2446474
|
|
/* 02446474 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446478 */ cpu->r[4] = cpu->r[31];
|
|
/* 0244647C */ Gambit_fn_024463AC(cpu);
|
|
/* 02446480 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446484 */ /* nop */
|
|
/* 02446488 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0244648C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446490 */ Gambit_fn_02446324(cpu);
|
|
/* 02446494 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02446494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02446498 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02446498 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0244649C */ cpu->lr = cpu->r[0];
|
|
/* 024464A0 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024464A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024464A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024464A8 */ return;
|
|
}
|
|
|
|
// fn_02445734 @ 0x2445734
|
|
void Gambit_fn_02445734(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_02445734: ; // 0x2445734
|
|
/* 02445734 */ _t0 = cpu->r[3] + 0x00000088u;
|
|
/* 02445734 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0244573C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244573C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0244573C */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0244573C */ goto L_02445740;
|
|
L_02445740: ; // 0x2445740
|
|
/* 02445740 */ _t3 = cpu->r[3] + 0x0000005Cu;
|
|
/* 02445740 */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02445744 */ /* nop */
|
|
/* 02445748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000002u);
|
|
/* 0244574C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244574C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244574C */ if (_t5) goto L_02445750; else goto L_0244575C;
|
|
L_02445750: ; // 0x2445750
|
|
/* 02445750 */ cpu->r[3] = cpu->r[3] + 0x00000050u;
|
|
/* 02445754 */ cpu->r[4] = 0x00000003u;
|
|
/* 02445758 */ goto L_02446434;
|
|
L_0244575C: ; // 0x244575c
|
|
/* 0244575C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000005u);
|
|
/* 02445760 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445760 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02445760 */ _t8 = _t7 ^ 0x00000001u;
|
|
/* 02445760 */ if (_t8) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445760 */ goto L_02445764;
|
|
L_02445764: ; // 0x2445764
|
|
/* 02445764 */ cpu->r[3] = cpu->r[3] + 0x00000050u;
|
|
/* 02445768 */ cpu->r[4] = 0x00000006u;
|
|
/* 0244576C */ goto L_02446434;
|
|
L_02446434: ; // 0x2446434
|
|
/* 02446434 */ cpu->r[0] = cpu->lr;
|
|
/* 02446438 */ _t9 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446438 */ rbrew_write32(cpu->mem, _t9, cpu->r[1]);
|
|
/* 02446438 */ cpu->r[1] = _t9;
|
|
/* 0244643C */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 0244643C */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02446440 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446440 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 02446444 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446448 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02446448 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 0244644C */ _t13 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0244644C */ cpu->r[12] = rbrew_read8(cpu->mem, _t13);
|
|
/* 02446450 */ /* nop */
|
|
/* 02446454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02446458 */ cpu->r[31] = cpu->r[4];
|
|
/* 0244645C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244645C */ _t15 = _t14 & 0x00000001u;
|
|
/* 0244645C */ if (_t15) goto L_02446460; else goto L_02446474;
|
|
L_02446460: ; // 0x2446460
|
|
/* 02446460 */ _t16 = cpu->r[30] + 0x00000004u;
|
|
/* 02446460 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446464 */ _t17 = cpu->r[11] + 0x00000014u;
|
|
/* 02446464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446468 */ cpu->ctr = cpu->r[0];
|
|
/* 0244646C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446470 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02446474: ; // 0x2446474
|
|
/* 02446474 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446478 */ cpu->r[4] = cpu->r[31];
|
|
/* 0244647C */ Gambit_fn_024463AC(cpu);
|
|
/* 02446480 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446484 */ /* nop */
|
|
/* 02446488 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0244648C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446490 */ Gambit_fn_02446324(cpu);
|
|
/* 02446494 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02446494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446498 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02446498 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0244649C */ cpu->lr = cpu->r[0];
|
|
/* 024464A0 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024464A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024464A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024464A8 */ return;
|
|
}
|
|
|
|
// fn_02445770 @ 0x2445770
|
|
void Gambit_fn_02445770(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02445770: ; // 0x2445770
|
|
/* 02445770 */ _t0 = cpu->r[3] + 0x0000005Cu;
|
|
/* 02445770 */ cpu->r[12] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02445774 */ /* nop */
|
|
/* 02445778 */ cpu->r[0] = 0x00000000u;
|
|
/* 0244577C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244577C */ _t2 = _t1 & 0x00000001u;
|
|
/* 0244577C */ if (_t2) goto L_02445780; else goto L_02445790;
|
|
L_02445780: ; // 0x2445780
|
|
/* 02445780 */ _t3 = cpu->r[3] + 0x00000090u;
|
|
/* 02445780 */ cpu->r[12] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02445784 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02445788 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445788 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02445788 */ if (_t5) goto L_0244578C; else goto L_02445790;
|
|
L_0244578C: ; // 0x244578c
|
|
/* 0244578C */ cpu->r[0] = 0x00000001u;
|
|
L_02445790: ; // 0x2445790
|
|
/* 02445790 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02445794 */ return;
|
|
}
|
|
|
|
// fn_02445798 @ 0x2445798
|
|
void Gambit_fn_02445798(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0243A174: ; // 0x243a174
|
|
/* 0243A174 */ _t0 = cpu->r[3] + 0x00000068u;
|
|
/* 0243A174 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0243A178 */ goto L_02444848;
|
|
L_02444848: ; // 0x2444848
|
|
/* 02444848 */ _t1 = cpu->r[3] + 0x00000218u;
|
|
/* 02444848 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0244484C */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 0244484C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02444850 */ _t3 = cpu->r[12] + 0x000000DCu;
|
|
/* 02444850 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02444854 */ cpu->ctr = cpu->r[0];
|
|
/* 02444858 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_02445798: ; // 0x2445798
|
|
/* 02445798 */ _t4 = cpu->r[3] + 0x00000088u;
|
|
/* 02445798 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0244579C */ goto L_0243A174;
|
|
}
|
|
|
|
// fn_024457A0 @ 0x24457a0
|
|
void Gambit_fn_024457A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_0243A17C: ; // 0x243a17c
|
|
/* 0243A17C */ _t0 = cpu->r[3] + 0x00000068u;
|
|
/* 0243A17C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0243A180 */ goto L_0244485C;
|
|
L_0244485C: ; // 0x244485c
|
|
/* 0244485C */ _t1 = cpu->r[3] + 0x0000021Cu;
|
|
/* 0244485C */ cpu->r[3] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02444860 */ _t2 = cpu->r[3] + 0x00000000u;
|
|
/* 02444860 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 02444864 */ _t3 = cpu->r[12] + 0x000000DCu;
|
|
/* 02444864 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02444868 */ cpu->ctr = cpu->r[0];
|
|
/* 0244486C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
L_024457A0: ; // 0x24457a0
|
|
/* 024457A0 */ _t4 = cpu->r[3] + 0x00000088u;
|
|
/* 024457A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024457A4 */ goto L_0243A17C;
|
|
}
|
|
|
|
// fn_024457A8 @ 0x24457a8
|
|
void Gambit_fn_024457A8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024457A8: ; // 0x24457a8
|
|
/* 024457A8 */ _t0 = cpu->r[3] + 0x0000005Cu;
|
|
/* 024457A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024457AC */ /* nop */
|
|
/* 024457B0 */ cpu->r[0] = cpu->r[0] ^ 0x00000005u;
|
|
/* 024457B4 */ cpu->r[0] = rbrew_clz32(cpu->r[0]);
|
|
/* 024457B8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 024457BC */ return;
|
|
}
|
|
|
|
// fn_024457C0 @ 0x24457c0
|
|
void Gambit_fn_024457C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024457C0: ; // 0x24457c0
|
|
/* 024457C0 */ cpu->r[0] = cpu->lr;
|
|
/* 024457C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024457C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024457C4 */ cpu->r[1] = _t0;
|
|
/* 024457C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024457C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024457CC */ cpu->r[31] = cpu->r[3];
|
|
/* 024457D0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024457D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024457D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024457D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024457D8 */ Gambit_fn_027FA974(cpu);
|
|
/* 024457DC */ _t4 = cpu->r[3] + 0x00000250u;
|
|
/* 024457DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024457E0 */ _t5 = cpu->r[11] + 0x000000ACu;
|
|
/* 024457E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024457E4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024457E8 */ _t6 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024457E8 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 024457EC */ Gambit_fn_0209B12C(cpu);
|
|
/* 024457F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024457F4 */ _t7 = cpu->r[12] + 0x00007BA0u;
|
|
/* 024457F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024457F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024457FC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024457FC */ _t9 = _t8 & 0x00000001u;
|
|
/* 024457FC */ if (_t9) goto L_0244581C; else goto L_02445800;
|
|
L_02445800: ; // 0x2445800
|
|
/* 02445800 */ _t10 = cpu->r[12] + 0x000002F4u;
|
|
/* 02445800 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02445804 */ _t11 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02445804 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02445808 */ _t12 = cpu->r[31] + 0x00000088u;
|
|
/* 02445808 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0244580C */ Gambit_fn_0209B0E8(cpu);
|
|
/* 02445810 */ cpu->r[4] = cpu->r[3];
|
|
/* 02445814 */ cpu->r[3] = cpu->r[30];
|
|
/* 02445818 */ Gambit_fn_0243A184(cpu);
|
|
L_0244581C: ; // 0x244581c
|
|
/* 0244581C */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0244581C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02445820 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02445820 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02445824 */ cpu->lr = cpu->r[0];
|
|
/* 02445828 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445828 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0244582C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445830 */ return;
|
|
}
|
|
|
|
// fn_024457C4 @ 0x24457c4
|
|
void Gambit_fn_024457C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15;
|
|
|
|
L_024457C4: ; // 0x24457c4
|
|
/* 024457C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024457C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024457C4 */ cpu->r[1] = _t0;
|
|
/* 024457C8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024457C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024457CC */ cpu->r[31] = cpu->r[3];
|
|
/* 024457D0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 024457D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024457D4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024457D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 024457D8 */ Gambit_fn_027FA974(cpu);
|
|
/* 024457DC */ _t4 = cpu->r[3] + 0x00000250u;
|
|
/* 024457DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024457E0 */ _t5 = cpu->r[11] + 0x000000ACu;
|
|
/* 024457E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024457E4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024457E8 */ _t6 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024457E8 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]);
|
|
/* 024457EC */ Gambit_fn_0209B12C(cpu);
|
|
/* 024457F0 */ cpu->r[12] = 0x101C0000u;
|
|
/* 024457F4 */ _t7 = cpu->r[12] + 0x00007BA0u;
|
|
/* 024457F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024457F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 024457FC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024457FC */ _t9 = _t8 & 0x00000001u;
|
|
/* 024457FC */ if (_t9) goto L_0244581C; else goto L_02445800;
|
|
L_02445800: ; // 0x2445800
|
|
/* 02445800 */ _t10 = cpu->r[12] + 0x000002F4u;
|
|
/* 02445800 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02445804 */ _t11 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02445804 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02445808 */ _t12 = cpu->r[31] + 0x00000088u;
|
|
/* 02445808 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 0244580C */ Gambit_fn_0209B0E8(cpu);
|
|
/* 02445810 */ cpu->r[4] = cpu->r[3];
|
|
/* 02445814 */ cpu->r[3] = cpu->r[30];
|
|
/* 02445818 */ Gambit_fn_0243A184(cpu);
|
|
L_0244581C: ; // 0x244581c
|
|
/* 0244581C */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 0244581C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02445820 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02445820 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02445824 */ cpu->lr = cpu->r[0];
|
|
/* 02445828 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445828 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 0244582C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445830 */ return;
|
|
}
|
|
|
|
// fn_02445834 @ 0x2445834
|
|
void Gambit_fn_02445834(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02445834: ; // 0x2445834
|
|
/* 02445834 */ cpu->r[0] = 0x00000000u;
|
|
/* 02445838 */ _t0 = cpu->r[3] + 0x00000090u;
|
|
/* 02445838 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]);
|
|
/* 0244583C */ cpu->r[3] = cpu->r[3] + 0x00000050u;
|
|
/* 02445840 */ goto L_02446534;
|
|
L_02446534: ; // 0x2446534
|
|
/* 02446534 */ cpu->r[0] = cpu->lr;
|
|
/* 02446538 */ _t1 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446538 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 02446538 */ cpu->r[1] = _t1;
|
|
/* 0244653C */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244653C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02446540 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446544 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02446544 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02446548 */ _t4 = cpu->r[31] + 0x00000010u;
|
|
/* 02446548 */ cpu->r[0] = rbrew_read8(cpu->mem, _t4);
|
|
/* 0244654C */ cpu->r[12] = 0x00000000u;
|
|
/* 02446550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02446554 */ _t5 = cpu->r[31] + 0x00000011u;
|
|
/* 02446554 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[12]);
|
|
/* 02446558 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446558 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02446558 */ if (_t7) goto L_02446580; else goto L_0244655C;
|
|
L_0244655C: ; // 0x244655c
|
|
/* 0244655C */ _t8 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0244655C */ cpu->r[0] = rbrew_read8(cpu->mem, _t8);
|
|
/* 02446560 */ /* nop */
|
|
/* 02446564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02446568 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446568 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02446568 */ if (_t10) goto L_0244656C; else goto L_02446580;
|
|
L_0244656C: ; // 0x244656c
|
|
/* 0244656C */ _t11 = cpu->r[31] + 0x00000004u;
|
|
/* 0244656C */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02446570 */ _t12 = cpu->r[12] + 0x00000014u;
|
|
/* 02446570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02446574 */ cpu->ctr = cpu->r[0];
|
|
/* 02446578 */ cpu->r[3] = cpu->r[31];
|
|
/* 0244657C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02446580: ; // 0x2446580
|
|
/* 02446580 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446584 */ Gambit_fn_024464AC(cpu);
|
|
/* 02446588 */ cpu->r[3] = cpu->r[31];
|
|
/* 0244658C */ Gambit_fn_027FC37C(cpu);
|
|
/* 02446590 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02446590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02446594 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446594 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02446598 */ cpu->lr = cpu->r[0];
|
|
/* 0244659C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024465A0 */ return;
|
|
}
|
|
|
|
// fn_02445848 @ 0x2445848
|
|
void Gambit_fn_02445848(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_02445848: ; // 0x2445848
|
|
/* 02445848 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445848 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445848 */ cpu->r[1] = _t0;
|
|
/* 0244584C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244584C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445850 */ cpu->r[31] = cpu->r[3];
|
|
/* 02445854 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02445854 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02445858 */ _t3 = cpu->r[31] + 0x00000088u;
|
|
/* 02445858 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 0244585C */ Gambit_fn_0243929C(cpu);
|
|
/* 02445860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445864 */ _t4 = cpu->r[31] + 0x00000088u;
|
|
/* 02445864 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02445868 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445868 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02445868 */ if (_t6) goto L_02445884; else goto L_0244586C;
|
|
L_0244586C: ; // 0x244586c
|
|
/* 0244586C */ Gambit_fn_024392B0(cpu);
|
|
/* 02445870 */ _t7 = cpu->r[31] + 0x00000088u;
|
|
/* 02445870 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02445874 */ Gambit_fn_0243A080(cpu);
|
|
/* 02445878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0244587C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244587C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0244587C */ if (_t9) goto L_024458A0; else goto L_02445880;
|
|
L_02445880: ; // 0x2445880
|
|
/* 02445880 */ goto L_02445898;
|
|
L_02445884: ; // 0x2445884
|
|
/* 02445884 */ Gambit_fn_02439308(cpu);
|
|
/* 02445888 */ _t10 = cpu->r[31] + 0x00000088u;
|
|
/* 02445888 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0244588C */ Gambit_fn_0243A080(cpu);
|
|
/* 02445890 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445894 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445894 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02445894 */ if (_t12) goto L_024458A0; else goto L_02445898;
|
|
L_02445898: ; // 0x2445898
|
|
/* 02445898 */ _t13 = cpu->r[31] + 0x00000088u;
|
|
/* 02445898 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0244589C */ Gambit_fn_0243A098(cpu);
|
|
L_024458A0: ; // 0x24458a0
|
|
/* 024458A0 */ _t14 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024458A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024458A4 */ Gambit_fn_0209AF5C(cpu);
|
|
/* 024458A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024458AC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024458AC */ _t16 = _t15 & 0x00000001u;
|
|
/* 024458AC */ if (_t16) goto L_024458BC; else goto L_024458B0;
|
|
L_024458B0: ; // 0x24458b0
|
|
/* 024458B0 */ _t17 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024458B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024458B4 */ cpu->r[4] = 0x00000012u;
|
|
/* 024458B8 */ Gambit_fn_0209AF74(cpu);
|
|
L_024458BC: ; // 0x24458bc
|
|
/* 024458BC */ cpu->r[11] = 0x101C0000u;
|
|
/* 024458C0 */ _t18 = cpu->r[11] + 0x00007BA0u;
|
|
/* 024458C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024458C4 */ _t19 = cpu->r[12] + 0x00000250u;
|
|
/* 024458C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19);
|
|
/* 024458C8 */ _t20 = cpu->r[10] + 0x00000250u;
|
|
/* 024458C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024458CC */ _t21 = cpu->r[12] + 0x000000B0u;
|
|
/* 024458CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024458D0 */ cpu->r[0] = 0x00000001u;
|
|
/* 024458D4 */ _t22 = cpu->r[10] + 0x00000070u;
|
|
/* 024458D4 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]);
|
|
/* 024458D8 */ _t23 = cpu->r[11] + 0x00007BA0u;
|
|
/* 024458D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024458DC */ _t24 = cpu->r[11] + 0x0000030Cu;
|
|
/* 024458DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024458E0 */ Gambit_fn_02091FFC(cpu);
|
|
/* 024458E4 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 024458E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 024458E8 */ _t26 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024458E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024458EC */ cpu->lr = cpu->r[0];
|
|
/* 024458F0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024458F4 */ return;
|
|
}
|
|
|
|
// fn_024458FC @ 0x24458fc
|
|
void Gambit_fn_024458FC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024458FC: ; // 0x24458fc
|
|
/* 024458FC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024458FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024458FC */ cpu->r[1] = _t0;
|
|
/* 02445900 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445900 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445904 */ cpu->r[31] = cpu->r[3];
|
|
/* 02445908 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02445908 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0244590C */ _t3 = cpu->r[31] + 0x00000088u;
|
|
/* 0244590C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02445910 */ Gambit_fn_0243A0F4(cpu);
|
|
/* 02445914 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445918 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445918 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02445918 */ if (_t5) goto L_02445928; else goto L_0244591C;
|
|
L_0244591C: ; // 0x244591c
|
|
/* 0244591C */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02445920 */ cpu->r[4] = 0x00000002u;
|
|
/* 02445924 */ Gambit_fn_02446434(cpu);
|
|
L_02445928: ; // 0x2445928
|
|
/* 02445928 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 02445928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 0244592C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244592C */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02445930 */ cpu->lr = cpu->r[0];
|
|
/* 02445934 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445938 */ return;
|
|
}
|
|
|
|
// fn_02445940 @ 0x2445940
|
|
void Gambit_fn_02445940(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02445940: ; // 0x2445940
|
|
/* 02445940 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445940 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445940 */ cpu->r[1] = _t0;
|
|
/* 02445944 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445944 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445948 */ cpu->r[31] = cpu->r[3];
|
|
/* 0244594C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0244594C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02445950 */ _t3 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02445950 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02445954 */ Gambit_fn_0209B0FC(cpu);
|
|
/* 02445958 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0244595C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244595C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244595C */ if (_t5) goto L_0244596C; else goto L_02445960;
|
|
L_02445960: ; // 0x2445960
|
|
/* 02445960 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02445964 */ cpu->r[4] = 0x00000003u;
|
|
/* 02445968 */ Gambit_fn_02446434(cpu);
|
|
L_0244596C: ; // 0x244596c
|
|
/* 0244596C */ cpu->r[3] = cpu->r[31];
|
|
/* 02445970 */ Gambit_fn_02445798(cpu);
|
|
/* 02445974 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445978 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445978 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02445978 */ if (_t7) goto L_0244597C; else goto L_0244598C;
|
|
L_0244597C: ; // 0x244597c
|
|
/* 0244597C */ cpu->r[3] = cpu->r[31];
|
|
/* 02445980 */ Gambit_fn_024457A0(cpu);
|
|
/* 02445984 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445988 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445988 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02445988 */ if (_t9) goto L_02445998; else goto L_0244598C;
|
|
L_0244598C: ; // 0x244598c
|
|
/* 0244598C */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02445990 */ cpu->r[4] = 0x00000003u;
|
|
/* 02445994 */ Gambit_fn_02446434(cpu);
|
|
L_02445998: ; // 0x2445998
|
|
/* 02445998 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02445998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0244599C */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244599C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024459A0 */ cpu->lr = cpu->r[0];
|
|
/* 024459A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024459A8 */ return;
|
|
}
|
|
|
|
// fn_024459B0 @ 0x24459b0
|
|
void Gambit_fn_024459B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_024459B0: ; // 0x24459b0
|
|
/* 024459B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024459B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024459B0 */ cpu->r[1] = _t0;
|
|
/* 024459B4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024459B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024459B8 */ cpu->r[31] = cpu->r[3];
|
|
/* 024459BC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024459BC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024459C0 */ _t3 = cpu->r[31] + 0x00000088u;
|
|
/* 024459C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024459C4 */ Gambit_fn_0243A0F4(cpu);
|
|
/* 024459C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024459CC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024459CC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024459CC */ if (_t5) goto L_024459D8; else goto L_024459D0;
|
|
L_024459D0: ; // 0x24459d0
|
|
/* 024459D0 */ _t6 = cpu->r[31] + 0x00000088u;
|
|
/* 024459D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024459D4 */ Gambit_fn_0243A108(cpu);
|
|
L_024459D8: ; // 0x24459d8
|
|
/* 024459D8 */ _t7 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024459D8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024459DC */ Gambit_fn_0209B068(cpu);
|
|
/* 024459E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024459E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024459E4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024459E4 */ if (_t9) goto L_024459F0; else goto L_024459E8;
|
|
L_024459E8: ; // 0x24459e8
|
|
/* 024459E8 */ _t10 = cpu->r[31] + 0x0000008Cu;
|
|
/* 024459E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024459EC */ Gambit_fn_0209B07C(cpu);
|
|
L_024459F0: ; // 0x24459f0
|
|
/* 024459F0 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 024459F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024459F4 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024459F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024459F8 */ cpu->lr = cpu->r[0];
|
|
/* 024459FC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445A00 */ return;
|
|
}
|
|
|
|
// fn_02445A08 @ 0x2445a08
|
|
void Gambit_fn_02445A08(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_02445A08: ; // 0x2445a08
|
|
/* 02445A08 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445A08 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445A08 */ cpu->r[1] = _t0;
|
|
/* 02445A0C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02445A0C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02445A10 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445A10 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02445A14 */ cpu->r[30] = cpu->r[3];
|
|
/* 02445A18 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02445A18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02445A1C */ _t4 = cpu->r[30] + 0x00000088u;
|
|
/* 02445A1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02445A20 */ Gambit_fn_0243A080(cpu);
|
|
/* 02445A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445A28 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445A28 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02445A28 */ if (_t6) goto L_02445AA8; else goto L_02445A2C;
|
|
L_02445A2C: ; // 0x2445a2c
|
|
/* 02445A2C */ _t7 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02445A2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02445A30 */ Gambit_fn_0209AF5C(cpu);
|
|
/* 02445A34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445A38 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445A38 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02445A38 */ if (_t9) goto L_02445AA8; else goto L_02445A3C;
|
|
L_02445A3C: ; // 0x2445a3c
|
|
/* 02445A3C */ cpu->r[3] = cpu->r[30];
|
|
/* 02445A40 */ Gambit_fn_02445798(cpu);
|
|
/* 02445A44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445A48 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445A48 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02445A48 */ if (_t11) goto L_02445A4C; else goto L_02445A5C;
|
|
L_02445A4C: ; // 0x2445a4c
|
|
/* 02445A4C */ cpu->r[3] = cpu->r[30];
|
|
/* 02445A50 */ Gambit_fn_024457A0(cpu);
|
|
/* 02445A54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445A58 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445A58 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02445A58 */ if (_t13) goto L_02445A6C; else goto L_02445A5C;
|
|
L_02445A5C: ; // 0x2445a5c
|
|
/* 02445A5C */ cpu->r[3] = cpu->r[30] + 0x00000050u;
|
|
/* 02445A60 */ cpu->r[4] = 0x00000004u;
|
|
/* 02445A64 */ Gambit_fn_02446434(cpu);
|
|
/* 02445A68 */ goto L_02445AA8;
|
|
L_02445A6C: ; // 0x2445a6c
|
|
/* 02445A6C */ cpu->r[12] = 0x101C0000u;
|
|
/* 02445A70 */ _t14 = cpu->r[12] + 0x00007BA0u;
|
|
/* 02445A70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02445A74 */ _t15 = cpu->r[11] + 0x00000250u;
|
|
/* 02445A74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02445A78 */ _t16 = cpu->r[11] + 0x00000250u;
|
|
/* 02445A78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02445A7C */ _t17 = cpu->r[11] + 0x000000B0u;
|
|
/* 02445A7C */ cpu->r[11] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02445A80 */ cpu->r[31] = 0x00000000u;
|
|
/* 02445A84 */ _t18 = cpu->r[11] + 0x00000070u;
|
|
/* 02445A84 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[31]);
|
|
/* 02445A88 */ _t19 = cpu->r[12] + 0x00007BA0u;
|
|
/* 02445A88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02445A8C */ _t20 = cpu->r[12] + 0x0000030Cu;
|
|
/* 02445A8C */ cpu->r[3] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02445A90 */ Gambit_fn_02092018(cpu);
|
|
/* 02445A94 */ cpu->r[0] = 0x00000001u;
|
|
/* 02445A98 */ cpu->r[3] = cpu->r[30] + 0x00000050u;
|
|
/* 02445A9C */ cpu->r[4] = cpu->r[31];
|
|
/* 02445AA0 */ _t21 = cpu->r[30] + 0x00000090u;
|
|
/* 02445AA0 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[0]);
|
|
/* 02445AA4 */ Gambit_fn_02446434(cpu);
|
|
L_02445AA8: ; // 0x2445aa8
|
|
/* 02445AA8 */ _t22 = cpu->r[1] + 0x00000014u;
|
|
/* 02445AA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02445AAC */ _t23 = cpu->r[1] + 0x00000008u;
|
|
/* 02445AAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02445AB0 */ cpu->lr = cpu->r[0];
|
|
/* 02445AB4 */ _t24 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445AB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02445AB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445ABC */ return;
|
|
}
|
|
|
|
// fn_02445AC4 @ 0x2445ac4
|
|
void Gambit_fn_02445AC4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02445AC4: ; // 0x2445ac4
|
|
/* 02445AC4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445AC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445AC4 */ cpu->r[1] = _t0;
|
|
/* 02445AC8 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02445AC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02445ACC */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445ACC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02445AD0 */ cpu->r[30] = cpu->r[3];
|
|
/* 02445AD4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02445AD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02445AD8 */ _t4 = cpu->r[30] + 0x00000088u;
|
|
/* 02445AD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02445ADC */ Gambit_fn_0243A18C(cpu);
|
|
/* 02445AE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445AE4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445AE4 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02445AE4 */ if (_t6) goto L_02445B0C; else goto L_02445AE8;
|
|
L_02445AE8: ; // 0x2445ae8
|
|
/* 02445AE8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02445AEC */ cpu->r[31] = 0x00000000u;
|
|
/* 02445AF0 */ Gambit_fn_024457A0(cpu);
|
|
/* 02445AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445AF8 */ _t7 = cpu->r[30] + 0x00000088u;
|
|
/* 02445AF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02445AFC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445AFC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02445AFC */ if (_t9) goto L_02445B04; else goto L_02445B00;
|
|
L_02445B00: ; // 0x2445b00
|
|
/* 02445B00 */ cpu->r[31] = 0x00000001u;
|
|
L_02445B04: ; // 0x2445b04
|
|
/* 02445B04 */ cpu->r[4] = cpu->r[31];
|
|
/* 02445B08 */ Gambit_fn_0243A1A4(cpu);
|
|
L_02445B0C: ; // 0x2445b0c
|
|
/* 02445B0C */ _t10 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02445B0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02445B10 */ Gambit_fn_0209A7D0(cpu);
|
|
/* 02445B14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445B18 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445B18 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02445B18 */ if (_t12) goto L_02445B2C; else goto L_02445B1C;
|
|
L_02445B1C: ; // 0x2445b1c
|
|
/* 02445B1C */ _t13 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02445B1C */ cpu->r[3] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02445B20 */ cpu->r[4] = 0x00000006u;
|
|
/* 02445B24 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 02445B28 */ Gambit_fn_0209A7E8(cpu);
|
|
L_02445B2C: ; // 0x2445b2c
|
|
/* 02445B2C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02445B2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02445B30 */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 02445B30 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02445B34 */ cpu->lr = cpu->r[0];
|
|
/* 02445B38 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445B38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02445B3C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445B40 */ return;
|
|
}
|
|
|
|
// fn_02445B48 @ 0x2445b48
|
|
void Gambit_fn_02445B48(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02445B48: ; // 0x2445b48
|
|
/* 02445B48 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445B48 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445B48 */ cpu->r[1] = _t0;
|
|
/* 02445B4C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445B4C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445B50 */ cpu->r[31] = cpu->r[3];
|
|
/* 02445B54 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02445B54 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02445B58 */ _t3 = cpu->r[31] + 0x00000088u;
|
|
/* 02445B58 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02445B5C */ Gambit_fn_0243A218(cpu);
|
|
/* 02445B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445B64 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445B64 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02445B64 */ if (_t5) goto L_02445B84; else goto L_02445B68;
|
|
L_02445B68: ; // 0x2445b68
|
|
/* 02445B68 */ _t6 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02445B68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02445B6C */ Gambit_fn_0209A888(cpu);
|
|
/* 02445B70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445B74 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445B74 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02445B74 */ if (_t8) goto L_02445B84; else goto L_02445B78;
|
|
L_02445B78: ; // 0x2445b78
|
|
/* 02445B78 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02445B7C */ cpu->r[4] = 0x00000005u;
|
|
/* 02445B80 */ Gambit_fn_02446434(cpu);
|
|
L_02445B84: ; // 0x2445b84
|
|
/* 02445B84 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02445B84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02445B88 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445B88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02445B8C */ cpu->lr = cpu->r[0];
|
|
/* 02445B90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445B94 */ return;
|
|
}
|
|
|
|
// fn_02445B9C @ 0x2445b9c
|
|
void Gambit_fn_02445B9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02445B9C: ; // 0x2445b9c
|
|
/* 02445B9C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445B9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445B9C */ cpu->r[1] = _t0;
|
|
/* 02445BA0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445BA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445BA4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02445BA8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02445BA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02445BAC */ _t3 = cpu->r[31] + 0x00000088u;
|
|
/* 02445BAC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02445BB0 */ Gambit_fn_0243A218(cpu);
|
|
/* 02445BB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445BB8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445BB8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02445BB8 */ if (_t5) goto L_02445BC4; else goto L_02445BBC;
|
|
L_02445BBC: ; // 0x2445bbc
|
|
/* 02445BBC */ _t6 = cpu->r[31] + 0x00000088u;
|
|
/* 02445BBC */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02445BC0 */ Gambit_fn_0243A22C(cpu);
|
|
L_02445BC4: ; // 0x2445bc4
|
|
/* 02445BC4 */ _t7 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02445BC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02445BC8 */ Gambit_fn_0209A888(cpu);
|
|
/* 02445BCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445BD0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445BD0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02445BD0 */ if (_t9) goto L_02445BDC; else goto L_02445BD4;
|
|
L_02445BD4: ; // 0x2445bd4
|
|
/* 02445BD4 */ _t10 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02445BD4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02445BD8 */ Gambit_fn_0209A89C(cpu);
|
|
L_02445BDC: ; // 0x2445bdc
|
|
/* 02445BDC */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02445BDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02445BE0 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445BE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02445BE4 */ cpu->lr = cpu->r[0];
|
|
/* 02445BE8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445BEC */ return;
|
|
}
|
|
|
|
// fn_02445BF4 @ 0x2445bf4
|
|
void Gambit_fn_02445BF4(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_02445BF4: ; // 0x2445bf4
|
|
/* 02445BF4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445BF4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445BF4 */ cpu->r[1] = _t0;
|
|
/* 02445BF8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445BF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445BFC */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02445BFC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02445C00 */ cpu->r[31] = cpu->r[3];
|
|
/* 02445C04 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02445C04 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02445C08 */ _t4 = cpu->r[31] + 0x00000088u;
|
|
/* 02445C08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02445C0C */ Gambit_fn_0243A18C(cpu);
|
|
/* 02445C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445C14 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445C14 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02445C14 */ if (_t6) goto L_02445C64; else goto L_02445C18;
|
|
L_02445C18: ; // 0x2445c18
|
|
/* 02445C18 */ _t7 = cpu->r[31] + 0x0000008Cu;
|
|
/* 02445C18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02445C1C */ Gambit_fn_0209A7D0(cpu);
|
|
/* 02445C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445C24 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445C24 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02445C24 */ if (_t9) goto L_02445C64; else goto L_02445C28;
|
|
L_02445C28: ; // 0x2445c28
|
|
/* 02445C28 */ cpu->r[12] = 0x101C0000u;
|
|
/* 02445C2C */ _t10 = cpu->r[12] + 0x00007BA0u;
|
|
/* 02445C2C */ cpu->r[9] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02445C30 */ _t11 = cpu->r[9] + 0x00000250u;
|
|
/* 02445C30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02445C34 */ _t12 = cpu->r[9] + 0x00000250u;
|
|
/* 02445C34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02445C38 */ _t13 = cpu->r[10] + 0x000000B0u;
|
|
/* 02445C38 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02445C3C */ cpu->r[30] = 0x00000000u;
|
|
/* 02445C40 */ _t14 = cpu->r[11] + 0x00000070u;
|
|
/* 02445C40 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[30]);
|
|
/* 02445C44 */ _t15 = cpu->r[12] + 0x00007BA0u;
|
|
/* 02445C44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02445C48 */ _t16 = cpu->r[10] + 0x0000030Cu;
|
|
/* 02445C48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02445C4C */ Gambit_fn_02092018(cpu);
|
|
/* 02445C50 */ cpu->r[0] = 0x00000001u;
|
|
/* 02445C54 */ cpu->r[3] = cpu->r[31] + 0x00000050u;
|
|
/* 02445C58 */ cpu->r[4] = cpu->r[30];
|
|
/* 02445C5C */ _t17 = cpu->r[31] + 0x00000090u;
|
|
/* 02445C5C */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[0]);
|
|
/* 02445C60 */ Gambit_fn_02446434(cpu);
|
|
L_02445C64: ; // 0x2445c64
|
|
/* 02445C64 */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02445C64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02445C68 */ _t19 = cpu->r[1] + 0x00000008u;
|
|
/* 02445C68 */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02445C6C */ cpu->lr = cpu->r[0];
|
|
/* 02445C70 */ _t20 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445C70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02445C74 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445C78 */ return;
|
|
}
|
|
|
|
// fn_02445C7C @ 0x2445c7c
|
|
void Gambit_fn_02445C7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02445C7C: ; // 0x2445c7c
|
|
/* 02445C7C */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02445C80 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02445C80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445C80 */ cpu->r[1] = _t0;
|
|
/* 02445C84 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02445C88 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02445C8C */ _t1 = cpu->r[10] + 0x0000760Cu;
|
|
/* 02445C8C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02445C8C */ cpu->r[10] = _t1;
|
|
/* 02445C90 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02445C94 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02445C94 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02445C98 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02445C9C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02445CA0 */ _t3 = cpu->r[7] + 0x0000761Cu;
|
|
/* 02445CA0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02445CA0 */ cpu->r[7] = _t3;
|
|
/* 02445CA4 */ _t4 = cpu->r[8] + 0x00007614u;
|
|
/* 02445CA4 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02445CA4 */ cpu->r[8] = _t4;
|
|
/* 02445CA8 */ cpu->r[0] = 0x00000002u;
|
|
/* 02445CAC */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02445CAC */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02445CB0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02445CB4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02445CB4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02445CB8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02445CBC */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02445CBC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02445CC0 */ _t8 = cpu->r[8] + 0x0000762Cu;
|
|
/* 02445CC0 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02445CC0 */ cpu->r[8] = _t8;
|
|
/* 02445CC4 */ _t9 = cpu->r[12] + 0x00007624u;
|
|
/* 02445CC4 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02445CC4 */ cpu->r[12] = _t9;
|
|
/* 02445CC8 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02445CC8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02445CCC */ cpu->r[0] = 0x00000004u;
|
|
/* 02445CD0 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02445CD0 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02445CD4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02445CD8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02445CD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02445CDC */ _t13 = cpu->r[11] + 0x00007634u;
|
|
/* 02445CDC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02445CE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02445CE4 */ return;
|
|
}
|
|
|
|
// fn_02445C80 @ 0x2445c80
|
|
void Gambit_fn_02445C80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02445C80: ; // 0x2445c80
|
|
/* 02445C80 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02445C80 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445C80 */ cpu->r[1] = _t0;
|
|
/* 02445C84 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02445C88 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02445C8C */ _t1 = cpu->r[10] + 0x0000760Cu;
|
|
/* 02445C8C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02445C8C */ cpu->r[10] = _t1;
|
|
/* 02445C90 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02445C94 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02445C94 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02445C98 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02445C9C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02445CA0 */ _t3 = cpu->r[7] + 0x0000761Cu;
|
|
/* 02445CA0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02445CA0 */ cpu->r[7] = _t3;
|
|
/* 02445CA4 */ _t4 = cpu->r[8] + 0x00007614u;
|
|
/* 02445CA4 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02445CA4 */ cpu->r[8] = _t4;
|
|
/* 02445CA8 */ cpu->r[0] = 0x00000002u;
|
|
/* 02445CAC */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02445CAC */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02445CB0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02445CB4 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02445CB4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02445CB8 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02445CBC */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02445CBC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02445CC0 */ _t8 = cpu->r[8] + 0x0000762Cu;
|
|
/* 02445CC0 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02445CC0 */ cpu->r[8] = _t8;
|
|
/* 02445CC4 */ _t9 = cpu->r[12] + 0x00007624u;
|
|
/* 02445CC4 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02445CC4 */ cpu->r[12] = _t9;
|
|
/* 02445CC8 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02445CC8 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02445CCC */ cpu->r[0] = 0x00000004u;
|
|
/* 02445CD0 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02445CD0 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02445CD4 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02445CD8 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02445CD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02445CDC */ _t13 = cpu->r[11] + 0x00007634u;
|
|
/* 02445CDC */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02445CE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02445CE4 */ return;
|
|
}
|
|
|
|
// fn_02445CE8 @ 0x2445ce8
|
|
void Gambit_fn_02445CE8(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_02445CE8: ; // 0x2445ce8
|
|
/* 02445CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445CEC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445CEC */ _t1 = _t0 & 0x00000001u;
|
|
/* 02445CEC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445CEC */ goto L_02445CF0;
|
|
L_02445CF0: ; // 0x2445cf0
|
|
/* 02445CF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02445CF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02445CF4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445CF4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02445CF4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445CF4 */ goto L_02445CF8;
|
|
L_02445CF8: ; // 0x2445cf8
|
|
/* 02445CF8 */ 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_02445CFC @ 0x2445cfc
|
|
void Gambit_fn_02445CFC(CPUState* cpu) {
|
|
L_02445CFC: ; // 0x2445cfc
|
|
/* 02445CFC */ return;
|
|
}
|
|
|
|
// fn_02445D00 @ 0x2445d00
|
|
void Gambit_fn_02445D00(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_02445D00: ; // 0x2445d00
|
|
/* 02445D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445D04 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445D04 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02445D04 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445D04 */ goto L_02445D08;
|
|
L_02445D08: ; // 0x2445d08
|
|
/* 02445D08 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02445D08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02445D0C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445D0C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02445D0C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445D0C */ goto L_02445D10;
|
|
L_02445D10: ; // 0x2445d10
|
|
/* 02445D10 */ 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_02445D14 @ 0x2445d14
|
|
void Gambit_fn_02445D14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02445D14: ; // 0x2445d14
|
|
/* 02445D14 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02445D14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445D18 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02445D18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02445D1C */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 02445D20 */ cpu->r[11] = 0x10110000u;
|
|
/* 02445D24 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02445D24 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02445D28 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02445D28 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02445D2C */ return;
|
|
}
|
|
|
|
// fn_02445D30 @ 0x2445d30
|
|
void Gambit_fn_02445D30(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_02445D30: ; // 0x2445d30
|
|
/* 02445D30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445D34 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445D34 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02445D34 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445D34 */ goto L_02445D38;
|
|
L_02445D38: ; // 0x2445d38
|
|
/* 02445D38 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02445D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02445D3C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445D3C */ _t3 = _t2 & 0x00000001u;
|
|
/* 02445D3C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445D3C */ goto L_02445D40;
|
|
L_02445D40: ; // 0x2445d40
|
|
/* 02445D40 */ 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_02445D44 @ 0x2445d44
|
|
void Gambit_fn_02445D44(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_02445D44: ; // 0x2445d44
|
|
/* 02445D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02445D48 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445D48 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02445D48 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445D48 */ goto L_02445D4C;
|
|
L_02445D4C: ; // 0x2445d4c
|
|
/* 02445D4C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02445D4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02445D50 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445D50 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02445D50 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445D50 */ goto L_02445D54;
|
|
L_02445D54: ; // 0x2445d54
|
|
/* 02445D54 */ 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_02445D58 @ 0x2445d58
|
|
void Gambit_fn_02445D58(CPUState* cpu) {
|
|
L_02445D58: ; // 0x2445d58
|
|
/* 02445D58 */ return;
|
|
}
|
|
|
|
// fn_02445D5C @ 0x2445d5c
|
|
void Gambit_fn_02445D5C(CPUState* cpu) {
|
|
L_02445D5C: ; // 0x2445d5c
|
|
/* 02445D5C */ return;
|
|
}
|
|
|
|
// fn_02445D60 @ 0x2445d60
|
|
void Gambit_fn_02445D60(CPUState* cpu) {
|
|
L_02445D60: ; // 0x2445d60
|
|
/* 02445D60 */ return;
|
|
}
|
|
|
|
// fn_02445D64 @ 0x2445d64
|
|
void Gambit_fn_02445D64(CPUState* cpu) {
|
|
L_02445D64: ; // 0x2445d64
|
|
/* 02445D64 */ return;
|
|
}
|
|
|
|
// fn_02445D68 @ 0x2445d68
|
|
void Gambit_fn_02445D68(CPUState* cpu) {
|
|
L_02445D68: ; // 0x2445d68
|
|
/* 02445D68 */ return;
|
|
}
|
|
|
|
// fn_02445D6C @ 0x2445d6c
|
|
void Gambit_fn_02445D6C(CPUState* cpu) {
|
|
L_02445D6C: ; // 0x2445d6c
|
|
/* 02445D6C */ return;
|
|
}
|
|
|
|
// fn_02445D70 @ 0x2445d70
|
|
void Gambit_fn_02445D70(CPUState* cpu) {
|
|
L_02445D70: ; // 0x2445d70
|
|
/* 02445D70 */ return;
|
|
}
|
|
|
|
// fn_02445D74 @ 0x2445d74
|
|
void Gambit_fn_02445D74(CPUState* cpu) {
|
|
L_02445D74: ; // 0x2445d74
|
|
/* 02445D74 */ return;
|
|
}
|
|
|
|
// fn_02445D78 @ 0x2445d78
|
|
void Gambit_fn_02445D78(CPUState* cpu) {
|
|
L_02445D78: ; // 0x2445d78
|
|
/* 02445D78 */ return;
|
|
}
|
|
|
|
// fn_02445D7C @ 0x2445d7c
|
|
void Gambit_fn_02445D7C(CPUState* cpu) {
|
|
L_02445D7C: ; // 0x2445d7c
|
|
/* 02445D7C */ return;
|
|
}
|
|
|
|
// fn_02445D80 @ 0x2445d80
|
|
void Gambit_fn_02445D80(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02445D80: ; // 0x2445d80
|
|
/* 02445D80 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02445D80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02445D88 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445D88 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02445D88 */ if (_t2) goto L_02445D94; else goto L_02445D8C;
|
|
L_02445D8C: ; // 0x2445d8c
|
|
/* 02445D8C */ cpu->r[3] = cpu->r[12] + 0x00000034u;
|
|
/* 02445D90 */ return;
|
|
L_02445D94: ; // 0x2445d94
|
|
/* 02445D94 */ cpu->r[3] = 0x00000000u;
|
|
/* 02445D98 */ return;
|
|
}
|
|
|
|
// fn_02445D9C @ 0x2445d9c
|
|
void Gambit_fn_02445D9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2;
|
|
|
|
L_02445D9C: ; // 0x2445d9c
|
|
/* 02445D9C */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02445D9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445DA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02445DA4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445DA4 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02445DA4 */ if (_t2) goto L_02445DB0; else goto L_02445DA8;
|
|
L_02445DA8: ; // 0x2445da8
|
|
/* 02445DA8 */ cpu->r[3] = cpu->r[12] + 0x00000064u;
|
|
/* 02445DAC */ return;
|
|
L_02445DB0: ; // 0x2445db0
|
|
/* 02445DB0 */ cpu->r[3] = 0x00000000u;
|
|
/* 02445DB4 */ return;
|
|
}
|
|
|
|
// fn_02445DB8 @ 0x2445db8
|
|
void Gambit_fn_02445DB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02445DB8: ; // 0x2445db8
|
|
/* 02445DB8 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02445DB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445DBC */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02445DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02445DC0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445DC0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02445DC0 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02445DC0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445DC0 */ goto L_02445DC4;
|
|
L_02445DC4: ; // 0x2445dc4
|
|
/* 02445DC4 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02445DC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02445DC8 */ _t5 = cpu->r[12] + 0x0000004Cu;
|
|
/* 02445DC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02445DCC */ cpu->ctr = cpu->r[0];
|
|
/* 02445DD0 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02445DD4 @ 0x2445dd4
|
|
void Gambit_fn_02445DD4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02445DD4: ; // 0x2445dd4
|
|
/* 02445DD4 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02445DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445DD8 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Du, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02445DD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02445DDC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445DDC */ _t2 = _t1 & 0x00000001u;
|
|
/* 02445DDC */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02445DDC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445DDC */ goto L_02445DE0;
|
|
L_02445DE0: ; // 0x2445de0
|
|
/* 02445DE0 */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02445DE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02445DE4 */ _t5 = cpu->r[12] + 0x0000005Cu;
|
|
/* 02445DE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02445DE8 */ cpu->ctr = cpu->r[0];
|
|
/* 02445DEC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02445DF0 @ 0x2445df0
|
|
void Gambit_fn_02445DF0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02445DF0: ; // 0x2445df0
|
|
/* 02445DF0 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02445DF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445DF4 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x0000001Au, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02445DF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02445DF8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445DF8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02445DF8 */ _t3 = _t2 ^ 0x00000001u;
|
|
/* 02445DF8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02445DF8 */ goto L_02445DFC;
|
|
L_02445DFC: ; // 0x2445dfc
|
|
/* 02445DFC */ _t4 = cpu->r[3] + 0x00000004u;
|
|
/* 02445DFC */ cpu->r[11] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02445E00 */ _t5 = cpu->r[11] + 0x00000074u;
|
|
/* 02445E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02445E04 */ cpu->ctr = cpu->r[0];
|
|
/* 02445E08 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02445E0C @ 0x2445e0c
|
|
void Gambit_fn_02445E0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02445E0C: ; // 0x2445e0c
|
|
/* 02445E0C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02445E0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445E10 */ _t1 = cpu->r[12] + 0x0000002Cu;
|
|
/* 02445E10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02445E14 */ cpu->ctr = cpu->r[0];
|
|
/* 02445E18 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02445E1C @ 0x2445e1c
|
|
void Gambit_fn_02445E1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02445E1C: ; // 0x2445e1c
|
|
/* 02445E1C */ cpu->r[0] = cpu->lr;
|
|
/* 02445E20 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445E20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445E20 */ cpu->r[1] = _t0;
|
|
/* 02445E24 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445E24 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445E28 */ cpu->r[31] = cpu->r[3];
|
|
/* 02445E2C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02445E2C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02445E30 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02445E30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02445E34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02445E38 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445E38 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02445E38 */ if (_t5) goto L_02445E3C; else goto L_02445E58;
|
|
L_02445E3C: ; // 0x2445e3c
|
|
/* 02445E3C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02445E3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02445E40 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02445E40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02445E44 */ cpu->ctr = cpu->r[0];
|
|
/* 02445E48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02445E4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445E50 */ cpu->r[0] = 0x00000002u;
|
|
/* 02445E54 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02445E54 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02445E58: ; // 0x2445e58
|
|
/* 02445E58 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02445E58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02445E5C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445E5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02445E60 */ cpu->lr = cpu->r[0];
|
|
/* 02445E64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445E68 */ return;
|
|
}
|
|
|
|
// fn_02445E20 @ 0x2445e20
|
|
void Gambit_fn_02445E20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02445E20: ; // 0x2445e20
|
|
/* 02445E20 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445E20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445E20 */ cpu->r[1] = _t0;
|
|
/* 02445E24 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445E24 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445E28 */ cpu->r[31] = cpu->r[3];
|
|
/* 02445E2C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02445E2C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02445E30 */ _t3 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02445E30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02445E34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000003u);
|
|
/* 02445E38 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445E38 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02445E38 */ if (_t5) goto L_02445E3C; else goto L_02445E58;
|
|
L_02445E3C: ; // 0x2445e3c
|
|
/* 02445E3C */ _t6 = cpu->r[31] + 0x00000004u;
|
|
/* 02445E3C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02445E40 */ _t7 = cpu->r[12] + 0x0000010Cu;
|
|
/* 02445E40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02445E44 */ cpu->ctr = cpu->r[0];
|
|
/* 02445E48 */ cpu->r[3] = cpu->r[31];
|
|
/* 02445E4C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02445E50 */ cpu->r[0] = 0x00000002u;
|
|
/* 02445E54 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02445E54 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
L_02445E58: ; // 0x2445e58
|
|
/* 02445E58 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02445E58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02445E5C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445E5C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02445E60 */ cpu->lr = cpu->r[0];
|
|
/* 02445E64 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445E68 */ return;
|
|
}
|
|
|
|
// fn_02445E6C @ 0x2445e6c
|
|
void Gambit_fn_02445E6C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02445E6C: ; // 0x2445e6c
|
|
/* 02445E6C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02445E6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445E70 */ _t1 = cpu->r[12] + 0x0000008Cu;
|
|
/* 02445E70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02445E74 */ cpu->ctr = cpu->r[0];
|
|
/* 02445E78 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02445E7C @ 0x2445e7c
|
|
void Gambit_fn_02445E7C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02445E7C: ; // 0x2445e7c
|
|
/* 02445E7C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02445E7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445E80 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02445E80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02445E84 */ cpu->ctr = cpu->r[0];
|
|
/* 02445E88 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02445E8C @ 0x2445e8c
|
|
void Gambit_fn_02445E8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02445E8C: ; // 0x2445e8c
|
|
/* 02445E8C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02445E8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445E90 */ _t1 = cpu->r[12] + 0x00000124u;
|
|
/* 02445E90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02445E94 */ cpu->ctr = cpu->r[0];
|
|
/* 02445E98 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02445E9C @ 0x2445e9c
|
|
void Gambit_fn_02445E9C(CPUState* cpu) {
|
|
L_02445E9C: ; // 0x2445e9c
|
|
/* 02445E9C */ cpu->r[3] = 0x00000001u;
|
|
/* 02445EA0 */ return;
|
|
}
|
|
|
|
// fn_02445EA4 @ 0x2445ea4
|
|
void Gambit_fn_02445EA4(CPUState* cpu) {
|
|
L_02445EA4: ; // 0x2445ea4
|
|
/* 02445EA4 */ return;
|
|
}
|
|
|
|
// fn_02445EA8 @ 0x2445ea8
|
|
void Gambit_fn_02445EA8(CPUState* cpu) {
|
|
L_02445EA8: ; // 0x2445ea8
|
|
/* 02445EA8 */ return;
|
|
}
|
|
|
|
// fn_02445EAC @ 0x2445eac
|
|
void Gambit_fn_02445EAC(CPUState* cpu) {
|
|
L_02445EAC: ; // 0x2445eac
|
|
/* 02445EAC */ return;
|
|
}
|
|
|
|
// fn_02445EB0 @ 0x2445eb0
|
|
void Gambit_fn_02445EB0(CPUState* cpu) {
|
|
L_02445EB0: ; // 0x2445eb0
|
|
/* 02445EB0 */ return;
|
|
}
|
|
|
|
// fn_02445EB4 @ 0x2445eb4
|
|
void Gambit_fn_02445EB4(CPUState* cpu) {
|
|
L_02445EB4: ; // 0x2445eb4
|
|
/* 02445EB4 */ return;
|
|
}
|
|
|
|
// fn_02445EB8 @ 0x2445eb8
|
|
void Gambit_fn_02445EB8(CPUState* cpu) {
|
|
L_02445EB8: ; // 0x2445eb8
|
|
/* 02445EB8 */ return;
|
|
}
|
|
|
|
// fn_02445EBC @ 0x2445ebc
|
|
void Gambit_fn_02445EBC(CPUState* cpu) {
|
|
L_02445EBC: ; // 0x2445ebc
|
|
/* 02445EBC */ return;
|
|
}
|
|
|
|
// fn_02445EC0 @ 0x2445ec0
|
|
void Gambit_fn_02445EC0(CPUState* cpu) {
|
|
L_02445EC0: ; // 0x2445ec0
|
|
/* 02445EC0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02445EC4 */ return;
|
|
}
|
|
|
|
// fn_02445EC8 @ 0x2445ec8
|
|
void Gambit_fn_02445EC8(CPUState* cpu) {
|
|
L_02445EC8: ; // 0x2445ec8
|
|
/* 02445EC8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02445ECC */ return;
|
|
}
|
|
|
|
// fn_02445ED0 @ 0x2445ed0
|
|
void Gambit_fn_02445ED0(CPUState* cpu) {
|
|
L_02445ED0: ; // 0x2445ed0
|
|
/* 02445ED0 */ cpu->r[3] = 0x100A0000u;
|
|
/* 02445ED4 */ cpu->r[3] = cpu->r[3] + 0xFFFFD25Cu;
|
|
/* 02445ED8 */ return;
|
|
}
|
|
|
|
// fn_02445EDC @ 0x2445edc
|
|
void Gambit_fn_02445EDC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02445EDC: ; // 0x2445edc
|
|
/* 02445EDC */ cpu->r[12] = 0x101D0000u;
|
|
/* 02445EE0 */ _t0 = cpu->r[12] + 0x00000670u;
|
|
/* 02445EE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02445EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02445EE8 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02445EEC */ cpu->r[12] = cpu->r[12] + 0x00000674u;
|
|
/* 02445EF0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445EF0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02445EF0 */ if (_t2) goto L_02445EF4; else goto L_02445F0C;
|
|
L_02445EF4: ; // 0x2445ef4
|
|
/* 02445EF4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02445EF8 */ cpu->r[9] = 0x00000001u;
|
|
/* 02445EFC */ cpu->r[8] = 0x101D0000u;
|
|
/* 02445F00 */ cpu->r[0] = cpu->r[0] + 0xFFFFD24Cu;
|
|
/* 02445F04 */ _t3 = cpu->r[8] + 0x00000670u;
|
|
/* 02445F04 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]);
|
|
/* 02445F08 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02445F08 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
L_02445F0C: ; // 0x2445f0c
|
|
/* 02445F0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02445F10 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445F10 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02445F10 */ if (_t6) goto L_02445F14; else goto L_02445F1C;
|
|
L_02445F14: ; // 0x2445f14
|
|
/* 02445F14 */ cpu->r[3] = 0x00000001u;
|
|
/* 02445F18 */ return;
|
|
L_02445F1C: ; // 0x2445f1c
|
|
/* 02445F1C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02445F20 */ _t7 = cpu->r[11] + 0xFFFFD4E8u;
|
|
/* 02445F20 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02445F20 */ cpu->r[11] = _t7;
|
|
/* 02445F24 */ cpu->r[10] = 0x101D0000u;
|
|
/* 02445F28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02445F2C */ cpu->r[10] = cpu->r[10] + 0xFFFFD4ECu;
|
|
/* 02445F30 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445F30 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02445F30 */ if (_t9) goto L_02445F34; else goto L_02445F48;
|
|
L_02445F34: ; // 0x2445f34
|
|
/* 02445F34 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02445F38 */ cpu->r[9] = 0x00000001u;
|
|
/* 02445F3C */ cpu->r[12] = cpu->r[12] + 0xFFFFD23Cu;
|
|
/* 02445F40 */ _t10 = cpu->r[11] + 0x00000000u;
|
|
/* 02445F40 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02445F44 */ _t11 = cpu->r[10] + 0x00000000u;
|
|
/* 02445F44 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
L_02445F48: ; // 0x2445f48
|
|
/* 02445F48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]);
|
|
/* 02445F4C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445F4C */ _t13 = _t12 & 0x00000001u;
|
|
/* 02445F4C */ if (_t13) goto L_02445F50; else goto L_02445F58;
|
|
L_02445F50: ; // 0x2445f50
|
|
/* 02445F50 */ cpu->r[0] = 0x00000001u;
|
|
/* 02445F54 */ goto L_02445F90;
|
|
L_02445F58: ; // 0x2445f58
|
|
/* 02445F58 */ cpu->r[8] = 0x101D0000u;
|
|
/* 02445F5C */ _t14 = cpu->r[8] + 0xFFFFD4E0u;
|
|
/* 02445F5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02445F5C */ cpu->r[8] = _t14;
|
|
/* 02445F60 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02445F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02445F68 */ cpu->r[11] = cpu->r[11] + 0xFFFFD4E4u;
|
|
/* 02445F6C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02445F6C */ _t16 = _t15 & 0x00000001u;
|
|
/* 02445F6C */ if (_t16) goto L_02445F70; else goto L_02445F84;
|
|
L_02445F70: ; // 0x2445f70
|
|
/* 02445F70 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02445F74 */ cpu->r[9] = 0x00000001u;
|
|
/* 02445F78 */ cpu->r[10] = cpu->r[10] + 0xFFFFD1CCu;
|
|
/* 02445F7C */ _t17 = cpu->r[8] + 0x00000000u;
|
|
/* 02445F7C */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 02445F80 */ _t18 = cpu->r[11] + 0x00000000u;
|
|
/* 02445F80 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]);
|
|
L_02445F84: ; // 0x2445f84
|
|
/* 02445F84 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02445F88 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 02445F8C */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
L_02445F90: ; // 0x2445f90
|
|
/* 02445F90 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 02445F94 */ return;
|
|
}
|
|
|
|
// fn_02445F98 @ 0x2445f98
|
|
void Gambit_fn_02445F98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02445F98: ; // 0x2445f98
|
|
/* 02445F98 */ cpu->r[0] = cpu->lr;
|
|
/* 02445F9C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445F9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445F9C */ cpu->r[1] = _t0;
|
|
/* 02445FA0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445FA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445FA4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02445FA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02445FA8 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02445FA8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02445FAC */ cpu->r[31] = cpu->r[3];
|
|
/* 02445FB0 */ /* nop */
|
|
/* 02445FB4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02445FB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02445FBC */ Gambit_fn_02446324(cpu);
|
|
/* 02445FC0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02445FC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02445FC4 */ cpu->lr = cpu->r[0];
|
|
/* 02445FC8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445FC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02445FCC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445FD0 */ return;
|
|
}
|
|
|
|
// fn_02445F9C @ 0x2445f9c
|
|
void Gambit_fn_02445F9C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02445F9C: ; // 0x2445f9c
|
|
/* 02445F9C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02445F9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445F9C */ cpu->r[1] = _t0;
|
|
/* 02445FA0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445FA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02445FA4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02445FA4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02445FA8 */ _t3 = cpu->r[3] + 0x0000000Eu;
|
|
/* 02445FA8 */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02445FAC */ cpu->r[31] = cpu->r[3];
|
|
/* 02445FB0 */ /* nop */
|
|
/* 02445FB4 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02445FB8 */ cpu->r[3] = cpu->r[31];
|
|
/* 02445FBC */ Gambit_fn_02446324(cpu);
|
|
/* 02445FC0 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02445FC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02445FC4 */ cpu->lr = cpu->r[0];
|
|
/* 02445FC8 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02445FC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02445FCC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02445FD0 */ return;
|
|
}
|
|
|
|
// fn_02445FD4 @ 0x2445fd4
|
|
void Gambit_fn_02445FD4(CPUState* cpu) {
|
|
L_02445FD4: ; // 0x2445fd4
|
|
/* 02445FD4 */ return;
|
|
}
|
|
|
|
// fn_02445FEC @ 0x2445fec
|
|
void Gambit_fn_02445FEC(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;
|
|
|
|
L_02445FEC: ; // 0x2445fec
|
|
/* 02445FEC */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02445FEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02445FEC */ cpu->r[1] = _t0;
|
|
/* 02445FF0 */ /* nop */
|
|
/* 02445FF4 */ cpu->r[0] = cpu->lr;
|
|
/* 02445FF8 */ _t1 = cpu->r[1] + 0x00000034u;
|
|
/* 02445FF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 02445FFC */ cpu->r[29] = cpu->r[6];
|
|
/* 02446000 */ cpu->r[28] = cpu->r[3];
|
|
/* 02446004 */ cpu->r[30] = cpu->r[5];
|
|
/* 02446008 */ _t2 = cpu->r[30] + 0x00000000u;
|
|
/* 02446008 */ cpu->r[27] = rbrew_read8(cpu->mem, _t2);
|
|
/* 0244600C */ cpu->r[31] = 0x101D0000u;
|
|
/* 02446010 */ _t3 = cpu->r[28] + 0x0000001Cu;
|
|
/* 02446010 */ rbrew_write32(cpu->mem, _t3, cpu->r[4]);
|
|
/* 02446014 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02446018 */ _t4 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02446018 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[27]);
|
|
/* 0244601C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244601C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244601C */ if (_t6) goto L_02446060; else goto L_02446020;
|
|
L_02446020: ; // 0x2446020
|
|
/* 02446020 */ _t7 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02446020 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02446024 */ Gambit_fn_02826F20(cpu);
|
|
/* 02446028 */ _t8 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02446028 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0244602C */ _t9 = cpu->r[9] + 0x00000034u;
|
|
/* 0244602C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02446030 */ cpu->ctr = cpu->r[0];
|
|
/* 02446034 */ cpu->r[5] = 0x00000004u;
|
|
/* 02446038 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0244603C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02446040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02446044 */ cpu->r[0] = cpu->r[27];
|
|
/* 02446048 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02446048 */ _t11 = _t10 & 0x00000001u;
|
|
/* 02446048 */ if (_t11) goto L_02446050; else goto L_0244604C;
|
|
L_0244604C: ; // 0x244604c
|
|
/* 0244604C */ cpu->r[0] = 0x00000001u;
|
|
L_02446050: ; // 0x2446050
|
|
/* 02446050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02446054 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446054 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02446054 */ if (_t13) goto L_02446060; else goto L_02446058;
|
|
L_02446058: ; // 0x2446058
|
|
/* 02446058 */ _t14 = cpu->r[28] + 0x00000024u;
|
|
/* 02446058 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 0244605C */ _t15 = cpu->r[28] + 0x00000020u;
|
|
/* 0244605C */ rbrew_write32(cpu->mem, _t15, cpu->r[27]);
|
|
L_02446060: ; // 0x2446060
|
|
/* 02446060 */ _t16 = cpu->r[28] + 0x00000020u;
|
|
/* 02446060 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446064 */ cpu->r[0] = 0x00000000u;
|
|
/* 02446068 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0244606C */ cpu->r[12] = cpu->r[0];
|
|
/* 02446070 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02446070 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02446070 */ if (_t18) goto L_02446074; else goto L_02446098;
|
|
L_02446074: ; // 0x2446074
|
|
/* 02446074 */ cpu->ctr = cpu->r[7];
|
|
/* 02446078 */ cpu->r[10] = 0x00000000u;
|
|
L_0244607C: ; // 0x244607c
|
|
/* 0244607C */ _t19 = cpu->r[28] + 0x00000024u;
|
|
/* 0244607C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02446080 */ _t20 = cpu->r[11] + cpu->r[10];
|
|
/* 02446080 */ rbrew_write16(cpu->mem, _t20, (uint16_t)cpu->r[0]);
|
|
/* 02446084 */ cpu->r[8] = cpu->r[11] + cpu->r[10];
|
|
/* 02446088 */ _t21 = cpu->r[8] + 0x00000004u;
|
|
/* 02446088 */ rbrew_write32(cpu->mem, _t21, cpu->r[12]);
|
|
/* 0244608C */ cpu->r[10] = cpu->r[10] + 0x00000008u;
|
|
/* 02446090 */ _t22 = cpu->r[8] + 0x00000002u;
|
|
/* 02446090 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[0]);
|
|
/* 02446094 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02446094 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02446094 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 02446094 */ _t25 = _t24 & 0x00000001u;
|
|
/* 02446094 */ if (_t25) goto L_0244607C; else goto L_02446098;
|
|
L_02446098: ; // 0x2446098
|
|
/* 02446098 */ _t26 = cpu->r[28] + 0x0000000Fu;
|
|
/* 02446098 */ cpu->r[27] = rbrew_read8(cpu->mem, _t26);
|
|
/* 0244609C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024460A0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024460A0 */ _t28 = _t27 & 0x00000001u;
|
|
/* 024460A0 */ if (_t28) goto L_024460E4; else goto L_024460A4;
|
|
L_024460A4: ; // 0x24460a4
|
|
/* 024460A4 */ _t29 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024460A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024460A8 */ Gambit_fn_02826F20(cpu);
|
|
/* 024460AC */ _t30 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024460AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t30);
|
|
/* 024460B0 */ _t31 = cpu->r[12] + 0x00000034u;
|
|
/* 024460B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31);
|
|
/* 024460B4 */ cpu->ctr = cpu->r[0];
|
|
/* 024460B8 */ cpu->r[5] = 0x00000004u;
|
|
/* 024460BC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024460C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024460C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024460C8 */ cpu->r[11] = cpu->r[27];
|
|
/* 024460CC */ _t32 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024460CC */ _t33 = _t32 & 0x00000001u;
|
|
/* 024460CC */ if (_t33) goto L_024460D4; else goto L_024460D0;
|
|
L_024460D0: ; // 0x24460d0
|
|
/* 024460D0 */ cpu->r[11] = 0x00000001u;
|
|
L_024460D4: ; // 0x24460d4
|
|
/* 024460D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024460D8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024460D8 */ _t35 = _t34 & 0x00000001u;
|
|
/* 024460D8 */ if (_t35) goto L_024460E4; else goto L_024460DC;
|
|
L_024460DC: ; // 0x24460dc
|
|
/* 024460DC */ _t36 = cpu->r[28] + 0x0000002Cu;
|
|
/* 024460DC */ rbrew_write32(cpu->mem, _t36, cpu->r[3]);
|
|
/* 024460E0 */ _t37 = cpu->r[28] + 0x00000028u;
|
|
/* 024460E0 */ rbrew_write32(cpu->mem, _t37, cpu->r[27]);
|
|
L_024460E4: ; // 0x24460e4
|
|
/* 024460E4 */ _t38 = cpu->r[28] + 0x00000028u;
|
|
/* 024460E4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024460E8 */ cpu->r[0] = 0x00000000u;
|
|
/* 024460EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u);
|
|
/* 024460F0 */ cpu->r[12] = cpu->r[0];
|
|
/* 024460F4 */ _t39 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024460F4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024460F4 */ if (_t40) goto L_024460F8; else goto L_0244611C;
|
|
L_024460F8: ; // 0x24460f8
|
|
/* 024460F8 */ cpu->ctr = cpu->r[6];
|
|
/* 024460FC */ cpu->r[9] = 0x00000000u;
|
|
L_02446100: ; // 0x2446100
|
|
/* 02446100 */ _t41 = cpu->r[28] + 0x0000002Cu;
|
|
/* 02446100 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 02446104 */ _t42 = cpu->r[5] + cpu->r[9];
|
|
/* 02446104 */ rbrew_write16(cpu->mem, _t42, (uint16_t)cpu->r[0]);
|
|
/* 02446108 */ cpu->r[7] = cpu->r[5] + cpu->r[9];
|
|
/* 0244610C */ _t43 = cpu->r[7] + 0x00000004u;
|
|
/* 0244610C */ rbrew_write32(cpu->mem, _t43, cpu->r[12]);
|
|
/* 02446110 */ cpu->r[9] = cpu->r[9] + 0x00000008u;
|
|
/* 02446114 */ _t44 = cpu->r[7] + 0x00000002u;
|
|
/* 02446114 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[0]);
|
|
/* 02446118 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 02446118 */ _t45 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 02446118 */ _t46 = _t45 >> (0x00000002u & 31u);
|
|
/* 02446118 */ _t47 = _t46 & 0x00000001u;
|
|
/* 02446118 */ if (_t47) goto L_02446100; else goto L_0244611C;
|
|
L_0244611C: ; // 0x244611c
|
|
/* 0244611C */ _t48 = cpu->r[28] + 0x0000000Fu;
|
|
/* 0244611C */ cpu->r[27] = rbrew_read8(cpu->mem, _t48);
|
|
/* 02446120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 02446124 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446124 */ _t50 = _t49 & 0x00000001u;
|
|
/* 02446124 */ if (_t50) goto L_02446168; else goto L_02446128;
|
|
L_02446128: ; // 0x2446128
|
|
/* 02446128 */ _t51 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 02446128 */ cpu->r[3] = rbrew_read32(cpu->mem, _t51);
|
|
/* 0244612C */ Gambit_fn_02826F20(cpu);
|
|
/* 02446130 */ _t52 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02446130 */ cpu->r[6] = rbrew_read32(cpu->mem, _t52);
|
|
/* 02446134 */ _t53 = cpu->r[6] + 0x00000034u;
|
|
/* 02446134 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53);
|
|
/* 02446138 */ cpu->ctr = cpu->r[0];
|
|
/* 0244613C */ cpu->r[5] = 0x00000004u;
|
|
/* 02446140 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02446144 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02446148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0244614C */ cpu->r[10] = cpu->r[27];
|
|
/* 02446150 */ _t54 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02446150 */ _t55 = _t54 & 0x00000001u;
|
|
/* 02446150 */ if (_t55) goto L_02446158; else goto L_02446154;
|
|
L_02446154: ; // 0x2446154
|
|
/* 02446154 */ cpu->r[10] = 0x00000001u;
|
|
L_02446158: ; // 0x2446158
|
|
/* 02446158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 0244615C */ _t56 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244615C */ _t57 = _t56 & 0x00000001u;
|
|
/* 0244615C */ if (_t57) goto L_02446168; else goto L_02446160;
|
|
L_02446160: ; // 0x2446160
|
|
/* 02446160 */ _t58 = cpu->r[28] + 0x00000034u;
|
|
/* 02446160 */ rbrew_write32(cpu->mem, _t58, cpu->r[3]);
|
|
/* 02446164 */ _t59 = cpu->r[28] + 0x00000030u;
|
|
/* 02446164 */ rbrew_write32(cpu->mem, _t59, cpu->r[27]);
|
|
L_02446168: ; // 0x2446168
|
|
/* 02446168 */ _t60 = cpu->r[28] + 0x00000030u;
|
|
/* 02446168 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60);
|
|
/* 0244616C */ cpu->r[0] = 0x00000000u;
|
|
/* 02446170 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02446174 */ cpu->r[5] = cpu->r[0];
|
|
/* 02446178 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02446178 */ _t62 = _t61 & 0x00000001u;
|
|
/* 02446178 */ if (_t62) goto L_0244617C; else goto L_024461A0;
|
|
L_0244617C: ; // 0x244617c
|
|
/* 0244617C */ cpu->ctr = cpu->r[12];
|
|
/* 02446180 */ cpu->r[8] = 0x00000000u;
|
|
L_02446184: ; // 0x2446184
|
|
/* 02446184 */ _t63 = cpu->r[28] + 0x00000034u;
|
|
/* 02446184 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02446188 */ _t64 = cpu->r[9] + cpu->r[8];
|
|
/* 02446188 */ rbrew_write16(cpu->mem, _t64, (uint16_t)cpu->r[0]);
|
|
/* 0244618C */ cpu->r[6] = cpu->r[9] + cpu->r[8];
|
|
/* 02446190 */ _t65 = cpu->r[6] + 0x00000004u;
|
|
/* 02446190 */ rbrew_write32(cpu->mem, _t65, cpu->r[5]);
|
|
/* 02446194 */ cpu->r[8] = cpu->r[8] + 0x00000008u;
|
|
/* 02446198 */ _t66 = cpu->r[6] + 0x00000002u;
|
|
/* 02446198 */ rbrew_write16(cpu->mem, _t66, (uint16_t)cpu->r[0]);
|
|
/* 0244619C */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 0244619C */ _t67 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 0244619C */ _t68 = _t67 >> (0x00000002u & 31u);
|
|
/* 0244619C */ _t69 = _t68 & 0x00000001u;
|
|
/* 0244619C */ if (_t69) goto L_02446184; else goto L_024461A0;
|
|
L_024461A0: ; // 0x24461a0
|
|
/* 024461A0 */ _t70 = cpu->r[30] + 0x00000000u;
|
|
/* 024461A0 */ cpu->r[25] = rbrew_read8(cpu->mem, _t70);
|
|
/* 024461A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 024461A8 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024461A8 */ _t72 = _t71 & 0x00000001u;
|
|
/* 024461A8 */ if (_t72) goto L_02446284; else goto L_024461AC;
|
|
L_024461AC: ; // 0x24461ac
|
|
/* 024461AC */ _t73 = cpu->r[31] + 0xFFFF98F0u;
|
|
/* 024461AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t73);
|
|
/* 024461B0 */ Gambit_fn_02826F20(cpu);
|
|
/* 024461B4 */ _t74 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024461B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74);
|
|
/* 024461B8 */ _t75 = cpu->r[10] + 0x00000034u;
|
|
/* 024461B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75);
|
|
/* 024461BC */ cpu->ctr = cpu->r[12];
|
|
/* 024461C0 */ cpu->r[5] = 0x00000004u;
|
|
/* 024461C4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[25] * (int32_t)0x00000024u);
|
|
/* 024461C8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024461CC */ cpu->r[24] = cpu->r[3];
|
|
/* 024461D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u);
|
|
/* 024461D4 */ cpu->r[30] = cpu->r[25];
|
|
/* 024461D8 */ cpu->r[7] = 0x00000000u;
|
|
/* 024461DC */ _t76 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024461DC */ _t77 = _t76 & 0x00000001u;
|
|
/* 024461DC */ if (_t77) goto L_024461E4; else goto L_024461E0;
|
|
L_024461E0: ; // 0x24461e0
|
|
/* 024461E0 */ cpu->r[30] = 0x00000001u;
|
|
L_024461E4: ; // 0x24461e4
|
|
/* 024461E4 */ cpu->r[31] = 0x10110000u;
|
|
/* 024461E8 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u);
|
|
/* 024461EC */ _t78 = cpu->r[31] + 0x00007399u;
|
|
/* 024461EC */ cpu->r[31] = rbrew_read8(cpu->mem, _t78);
|
|
/* 024461F0 */ cpu->r[23] = 0x00000018u;
|
|
L_024461F4: ; // 0x24461f4
|
|
/* 024461F4 */ cpu->r[27] = cpu->r[24] + cpu->r[22];
|
|
/* 024461F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 024461F8 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024461F8 */ _t80 = _t79 & 0x00000001u;
|
|
/* 024461F8 */ if (_t80) goto L_02446268; else goto L_024461FC;
|
|
L_024461FC: ; // 0x24461fc
|
|
/* 024461FC */ cpu->r[26] = cpu->r[27];
|
|
/* 024461FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02446200 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446200 */ _t82 = _t81 & 0x00000001u;
|
|
/* 02446200 */ if (_t82) goto L_02446204; else goto L_02446214;
|
|
L_02446204: ; // 0x2446204
|
|
/* 02446204 */ cpu->r[3] = 0x00000024u;
|
|
/* 02446208 */ Gambit_fn_02801A78(cpu);
|
|
/* 0244620C */ cpu->r[26] = cpu->r[3];
|
|
/* 0244620C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u);
|
|
/* 02446210 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446210 */ _t84 = _t83 & 0x00000001u;
|
|
/* 02446210 */ if (_t84) goto L_0244625C; else goto L_02446214;
|
|
L_02446214: ; // 0x2446214
|
|
/* 02446214 */ cpu->r[11] = cpu->r[26];
|
|
/* 02446214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446218 */ _t85 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446218 */ _t86 = _t85 & 0x00000001u;
|
|
/* 02446218 */ if (_t86) goto L_0244621C; else goto L_0244622C;
|
|
L_0244621C: ; // 0x244621c
|
|
/* 0244621C */ cpu->r[3] = 0x0000000Cu;
|
|
/* 02446220 */ Gambit_fn_02801A78(cpu);
|
|
/* 02446224 */ cpu->r[11] = cpu->r[3];
|
|
/* 02446224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446228 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446228 */ _t88 = _t87 & 0x00000001u;
|
|
/* 02446228 */ if (_t88) goto L_02446248; else goto L_0244622C;
|
|
L_0244622C: ; // 0x244622c
|
|
/* 0244622C */ cpu->r[5] = 0x100A0000u;
|
|
/* 02446230 */ _t89 = cpu->r[11] + 0x00000008u;
|
|
/* 02446230 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]);
|
|
/* 02446234 */ cpu->r[0] = cpu->r[26] + 0x0000000Cu;
|
|
/* 02446238 */ cpu->r[5] = cpu->r[5] + 0xFFFFD1F4u;
|
|
/* 0244623C */ _t90 = cpu->r[11] + 0x00000000u;
|
|
/* 0244623C */ rbrew_write32(cpu->mem, _t90, cpu->r[0]);
|
|
/* 02446240 */ _t91 = cpu->r[11] + 0x00000004u;
|
|
/* 02446240 */ rbrew_write32(cpu->mem, _t91, cpu->r[5]);
|
|
/* 02446244 */ _t92 = cpu->r[26] + 0x00000023u;
|
|
/* 02446244 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]);
|
|
L_02446248: ; // 0x2446248
|
|
/* 02446248 */ cpu->r[6] = 0x100A0000u;
|
|
/* 0244624C */ _t93 = cpu->r[26] + 0x00000000u;
|
|
/* 0244624C */ cpu->r[7] = rbrew_read32(cpu->mem, _t93);
|
|
/* 02446250 */ cpu->r[6] = cpu->r[6] + 0xFFFFD20Cu;
|
|
/* 02446254 */ _t94 = cpu->r[26] + 0x00000004u;
|
|
/* 02446254 */ rbrew_write32(cpu->mem, _t94, cpu->r[6]);
|
|
/* 02446258 */ _t95 = cpu->r[7] + 0x00000000u;
|
|
/* 02446258 */ rbrew_write8(cpu->mem, _t95, (uint8_t)cpu->r[31]);
|
|
L_0244625C: ; // 0x244625c
|
|
/* 0244625C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446260 */ cpu->r[0] = cpu->r[0] + 0xFFFFD224u;
|
|
/* 02446264 */ _t96 = cpu->r[27] + 0x00000004u;
|
|
/* 02446264 */ rbrew_write32(cpu->mem, _t96, cpu->r[0]);
|
|
L_02446268: ; // 0x2446268
|
|
/* 02446268 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu;
|
|
/* 02446268 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 0244626C */ cpu->r[22] = cpu->r[22] + 0x00000024u;
|
|
/* 02446270 */ _t97 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446270 */ _t98 = _t97 & 0x00000001u;
|
|
/* 02446270 */ if (_t98) goto L_02446274; else goto L_024461F4;
|
|
L_02446274: ; // 0x2446274
|
|
/* 02446274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u);
|
|
/* 02446278 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446278 */ _t100 = _t99 & 0x00000001u;
|
|
/* 02446278 */ if (_t100) goto L_02446284; else goto L_0244627C;
|
|
L_0244627C: ; // 0x244627c
|
|
/* 0244627C */ _t101 = cpu->r[28] + 0x00000018u;
|
|
/* 0244627C */ rbrew_write32(cpu->mem, _t101, cpu->r[24]);
|
|
/* 02446280 */ _t102 = cpu->r[28] + 0x00000014u;
|
|
/* 02446280 */ rbrew_write32(cpu->mem, _t102, cpu->r[25]);
|
|
L_02446284: ; // 0x2446284
|
|
/* 02446284 */ _t103 = cpu->r[28] + 0x0000000Eu;
|
|
/* 02446284 */ rbrew_write8(cpu->mem, _t103, (uint8_t)cpu->r[29]);
|
|
/* 02446288 */ /* nop */
|
|
/* 0244628C */ _t104 = cpu->r[1] + 0x00000034u;
|
|
/* 0244628C */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 02446290 */ cpu->lr = cpu->r[0];
|
|
/* 02446294 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02446298 */ return;
|
|
}
|
|
|
|
// fn_0244629C @ 0x244629c
|
|
void Gambit_fn_0244629C(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_0244629C: ; // 0x244629c
|
|
/* 0244629C */ _t0 = cpu->r[7] + 0x00000000u;
|
|
/* 0244629C */ cpu->r[8] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024462A0 */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 024462A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024462A4 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 024462A4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024462A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[12]);
|
|
/* 024462AC */ _t3 = cpu->r[4] + 0x00000000u;
|
|
/* 024462AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024462B0 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024462B0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 024462B0 */ if (_t5) goto L_024462B4; else goto L_024462BC;
|
|
L_024462B4: ; // 0x24462b4
|
|
/* 024462B4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024462B8 */ cpu->r[11] = cpu->r[11] + cpu->r[10];
|
|
L_024462BC: ; // 0x24462bc
|
|
/* 024462BC */ _t6 = cpu->r[11] + 0x00000000u;
|
|
/* 024462BC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024462C0 */ _t7 = cpu->r[4] + 0x00000004u;
|
|
/* 024462C0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024462C4 */ _t8 = cpu->r[11] + 0x00000004u;
|
|
/* 024462C4 */ rbrew_write32(cpu->mem, _t8, cpu->r[8]);
|
|
/* 024462C8 */ _t9 = cpu->r[7] + 0x00000000u;
|
|
/* 024462C8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t9);
|
|
/* 024462CC */ _t10 = cpu->r[3] + 0x00000028u;
|
|
/* 024462CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024462D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]);
|
|
/* 024462D4 */ _t11 = cpu->r[3] + 0x0000002Cu;
|
|
/* 024462D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024462D8 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024462D8 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024462D8 */ if (_t13) goto L_024462DC; else goto L_024462E4;
|
|
L_024462DC: ; // 0x24462dc
|
|
/* 024462DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024462E0 */ cpu->r[10] = cpu->r[10] + cpu->r[0];
|
|
L_024462E4: ; // 0x24462e4
|
|
/* 024462E4 */ _t14 = cpu->r[5] + 0x00000000u;
|
|
/* 024462E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024462E8 */ _t15 = cpu->r[10] + 0x00000000u;
|
|
/* 024462E8 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]);
|
|
/* 024462EC */ _t16 = cpu->r[5] + 0x00000004u;
|
|
/* 024462EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024462F0 */ _t17 = cpu->r[10] + 0x00000004u;
|
|
/* 024462F0 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]);
|
|
/* 024462F4 */ _t18 = cpu->r[3] + 0x00000030u;
|
|
/* 024462F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024462F8 */ _t19 = cpu->r[7] + 0x00000000u;
|
|
/* 024462F8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t19);
|
|
/* 024462FC */ _t20 = cpu->r[3] + 0x00000034u;
|
|
/* 024462FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02446300 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[9]);
|
|
/* 02446304 */ _t21 = cpu->r[6] + 0x00000000u;
|
|
/* 02446304 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02446308 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02446308 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02446308 */ if (_t23) goto L_0244630C; else goto L_02446314;
|
|
L_0244630C: ; // 0x244630c
|
|
/* 0244630C */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02446310 */ cpu->r[12] = cpu->r[12] + cpu->r[11];
|
|
L_02446314: ; // 0x2446314
|
|
/* 02446314 */ _t24 = cpu->r[12] + 0x00000000u;
|
|
/* 02446314 */ rbrew_write32(cpu->mem, _t24, cpu->r[7]);
|
|
/* 02446318 */ _t25 = cpu->r[6] + 0x00000004u;
|
|
/* 02446318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25);
|
|
/* 0244631C */ _t26 = cpu->r[12] + 0x00000004u;
|
|
/* 0244631C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02446320 */ return;
|
|
}
|
|
|
|
// fn_02446324 @ 0x2446324
|
|
void Gambit_fn_02446324(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_02446324: ; // 0x2446324
|
|
/* 02446324 */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 02446324 */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 02446328 */ /* nop */
|
|
/* 0244632C */ _t1 = cpu->r[3] + 0x00000020u;
|
|
/* 0244632C */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02446330 */ cpu->r[8] = cpu->r[0];
|
|
/* 02446334 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 02446338 */ _t2 = cpu->r[3] + 0x00000024u;
|
|
/* 02446338 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 0244633C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0244633C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0244633C */ if (_t4) goto L_02446340; else goto L_02446358;
|
|
L_02446340: ; // 0x2446340
|
|
/* 02446340 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02446344 */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 02446348 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 02446348 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 0244634C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02446350 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446350 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02446350 */ if (_t7) goto L_02446354; else goto L_02446364;
|
|
L_02446354: ; // 0x2446354
|
|
/* 02446354 */ return;
|
|
L_02446358: ; // 0x2446358
|
|
/* 02446358 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 02446358 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 0244635C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 02446360 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446360 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02446360 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02446360 */ goto L_02446364;
|
|
L_02446364: ; // 0x2446364
|
|
/* 02446364 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 02446368 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 02446368 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0244636C */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0244636C */ _t13 = _t12 & 0x00000001u;
|
|
/* 0244636C */ if (_t13) goto L_02446370; else goto L_02446378;
|
|
L_02446370: ; // 0x2446370
|
|
/* 02446370 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02446374 */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02446378: ; // 0x2446378
|
|
/* 02446378 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02446378 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 0244637C */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 0244637C */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02446380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02446384 */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 02446384 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446388 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 0244638C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0244638C */ _t18 = _t17 & 0x00000001u;
|
|
/* 0244638C */ if (_t18) goto L_024463A4; else goto L_02446390;
|
|
L_02446390: ; // 0x2446390
|
|
/* 02446390 */ /* nop */
|
|
/* 02446394 */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 02446394 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02446398 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 0244639C */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 024463A0 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 024463A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_024463A4: ; // 0x24463a4
|
|
/* 024463A4 */ cpu->ctr = cpu->r[11];
|
|
/* 024463A8 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024463AC @ 0x24463ac
|
|
void Gambit_fn_024463AC(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_024463AC: ; // 0x24463ac
|
|
/* 024463AC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024463AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024463B0 */ /* nop */
|
|
/* 024463B4 */ _t1 = cpu->r[3] + 0x00000030u;
|
|
/* 024463B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024463B8 */ cpu->r[7] = cpu->r[0];
|
|
/* 024463BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[8]);
|
|
/* 024463C0 */ _t2 = cpu->r[3] + 0x00000034u;
|
|
/* 024463C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024463C4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024463C4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024463C4 */ if (_t4) goto L_024463C8; else goto L_024463E0;
|
|
L_024463C8: ; // 0x24463c8
|
|
/* 024463C8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024463CC */ cpu->r[9] = cpu->r[12] + cpu->r[10];
|
|
/* 024463D0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 024463D0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 024463D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024463D8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024463D8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024463D8 */ if (_t7) goto L_024463DC; else goto L_024463EC;
|
|
L_024463DC: ; // 0x24463dc
|
|
/* 024463DC */ return;
|
|
L_024463E0: ; // 0x24463e0
|
|
/* 024463E0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 024463E0 */ cpu->r[11] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 024463E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024463E8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024463E8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024463E8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024463E8 */ goto L_024463EC;
|
|
L_024463EC: ; // 0x24463ec
|
|
/* 024463EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[8]);
|
|
/* 024463F0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 024463F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024463F4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024463F4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024463F4 */ if (_t13) goto L_024463F8; else goto L_02446400;
|
|
L_024463F8: ; // 0x24463f8
|
|
/* 024463F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024463FC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02446400: ; // 0x2446400
|
|
/* 02446400 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02446400 */ cpu->r[7] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02446404 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02446404 */ cpu->r[9] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02446408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 0244640C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0244640C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446410 */ cpu->r[3] = cpu->r[8] + cpu->r[9];
|
|
/* 02446414 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02446414 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02446414 */ if (_t18) goto L_0244642C; else goto L_02446418;
|
|
L_02446418: ; // 0x2446418
|
|
/* 02446418 */ /* nop */
|
|
/* 0244641C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0244641C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02446420 */ cpu->r[0] = rbrew_rlwinm(cpu->r[7], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02446424 */ cpu->r[12] = cpu->r[11] + cpu->r[0];
|
|
/* 02446428 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02446428 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0244642C: ; // 0x244642c
|
|
/* 0244642C */ cpu->ctr = cpu->r[11];
|
|
/* 02446430 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02446434 @ 0x2446434
|
|
void Gambit_fn_02446434(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02446434: ; // 0x2446434
|
|
/* 02446434 */ cpu->r[0] = cpu->lr;
|
|
/* 02446438 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446438 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446438 */ cpu->r[1] = _t0;
|
|
/* 0244643C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0244643C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02446440 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446440 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02446444 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446448 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02446448 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244644C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0244644C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02446450 */ /* nop */
|
|
/* 02446454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02446458 */ cpu->r[31] = cpu->r[4];
|
|
/* 0244645C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244645C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244645C */ if (_t6) goto L_02446460; else goto L_02446474;
|
|
L_02446460: ; // 0x2446460
|
|
/* 02446460 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02446460 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02446464 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02446464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02446468 */ cpu->ctr = cpu->r[0];
|
|
/* 0244646C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446470 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02446474: ; // 0x2446474
|
|
/* 02446474 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446478 */ cpu->r[4] = cpu->r[31];
|
|
/* 0244647C */ Gambit_fn_024463AC(cpu);
|
|
/* 02446480 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446484 */ /* nop */
|
|
/* 02446488 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0244648C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446490 */ Gambit_fn_02446324(cpu);
|
|
/* 02446494 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02446494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02446498 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02446498 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0244649C */ cpu->lr = cpu->r[0];
|
|
/* 024464A0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024464A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024464A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024464A8 */ return;
|
|
}
|
|
|
|
// fn_02446438 @ 0x2446438
|
|
void Gambit_fn_02446438(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02446438: ; // 0x2446438
|
|
/* 02446438 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446438 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446438 */ cpu->r[1] = _t0;
|
|
/* 0244643C */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 0244643C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02446440 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446440 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02446444 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446448 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02446448 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244644C */ _t4 = cpu->r[30] + 0x0000000Cu;
|
|
/* 0244644C */ cpu->r[12] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02446450 */ /* nop */
|
|
/* 02446454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0xFFFFFFFFu);
|
|
/* 02446458 */ cpu->r[31] = cpu->r[4];
|
|
/* 0244645C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244645C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244645C */ if (_t6) goto L_02446460; else goto L_02446474;
|
|
L_02446460: ; // 0x2446460
|
|
/* 02446460 */ _t7 = cpu->r[30] + 0x00000004u;
|
|
/* 02446460 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02446464 */ _t8 = cpu->r[11] + 0x00000014u;
|
|
/* 02446464 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02446468 */ cpu->ctr = cpu->r[0];
|
|
/* 0244646C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446470 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02446474: ; // 0x2446474
|
|
/* 02446474 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446478 */ cpu->r[4] = cpu->r[31];
|
|
/* 0244647C */ Gambit_fn_024463AC(cpu);
|
|
/* 02446480 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446484 */ /* nop */
|
|
/* 02446488 */ Gambit_fn_027FC35C(cpu);
|
|
/* 0244648C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446490 */ Gambit_fn_02446324(cpu);
|
|
/* 02446494 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02446494 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02446498 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02446498 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0244649C */ cpu->lr = cpu->r[0];
|
|
/* 024464A0 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024464A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024464A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024464A8 */ return;
|
|
}
|
|
|
|
// fn_024464AC @ 0x24464ac
|
|
void Gambit_fn_024464AC(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_024464AC: ; // 0x24464ac
|
|
/* 024464AC */ _t0 = cpu->r[3] + 0x0000000Cu;
|
|
/* 024464AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t0);
|
|
/* 024464B0 */ /* nop */
|
|
/* 024464B4 */ _t1 = cpu->r[3] + 0x00000028u;
|
|
/* 024464B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024464B8 */ cpu->r[8] = cpu->r[0];
|
|
/* 024464BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[7]);
|
|
/* 024464C0 */ _t2 = cpu->r[3] + 0x0000002Cu;
|
|
/* 024464C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2);
|
|
/* 024464C4 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024464C4 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024464C4 */ if (_t4) goto L_024464C8; else goto L_024464E0;
|
|
L_024464C8: ; // 0x24464c8
|
|
/* 024464C8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[8], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024464CC */ cpu->r[9] = cpu->r[12] + cpu->r[9];
|
|
/* 024464D0 */ _t5 = cpu->r[9] + 0x00000002u;
|
|
/* 024464D0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t5);
|
|
/* 024464D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024464D8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024464D8 */ _t7 = _t6 & 0x00000001u;
|
|
/* 024464D8 */ if (_t7) goto L_024464DC; else goto L_024464EC;
|
|
L_024464DC: ; // 0x24464dc
|
|
/* 024464DC */ return;
|
|
L_024464E0: ; // 0x24464e0
|
|
/* 024464E0 */ _t8 = cpu->r[12] + 0x00000002u;
|
|
/* 024464E0 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t8);
|
|
/* 024464E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u);
|
|
/* 024464E8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024464E8 */ _t10 = _t9 & 0x00000001u;
|
|
/* 024464E8 */ if (_t10) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024464E8 */ goto L_024464EC;
|
|
L_024464EC: ; // 0x24464ec
|
|
/* 024464EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]);
|
|
/* 024464F0 */ _t11 = cpu->r[3] + 0x0000001Cu;
|
|
/* 024464F0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024464F4 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024464F4 */ _t13 = _t12 & 0x00000001u;
|
|
/* 024464F4 */ if (_t13) goto L_024464F8; else goto L_02446500;
|
|
L_024464F8: ; // 0x24464f8
|
|
/* 024464F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 024464FC */ cpu->r[12] = cpu->r[12] + cpu->r[0];
|
|
L_02446500: ; // 0x2446500
|
|
/* 02446500 */ _t14 = cpu->r[12] + 0x00000002u;
|
|
/* 02446500 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t14);
|
|
/* 02446504 */ _t15 = cpu->r[12] + 0x00000000u;
|
|
/* 02446504 */ cpu->r[8] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t15);
|
|
/* 02446508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0244650C */ _t16 = cpu->r[12] + 0x00000004u;
|
|
/* 0244650C */ cpu->r[11] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446510 */ cpu->r[3] = cpu->r[7] + cpu->r[8];
|
|
/* 02446514 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02446514 */ _t18 = _t17 & 0x00000001u;
|
|
/* 02446514 */ if (_t18) goto L_0244652C; else goto L_02446518;
|
|
L_02446518: ; // 0x2446518
|
|
/* 02446518 */ /* nop */
|
|
/* 0244651C */ _t19 = cpu->r[3] + cpu->r[11];
|
|
/* 0244651C */ cpu->r[11] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02446520 */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000003u, 0x00000000u, 0x0000001Cu);
|
|
/* 02446524 */ cpu->r[12] = cpu->r[11] + cpu->r[10];
|
|
/* 02446528 */ _t20 = cpu->r[12] + 0x00000004u;
|
|
/* 02446528 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20);
|
|
L_0244652C: ; // 0x244652c
|
|
/* 0244652C */ cpu->ctr = cpu->r[11];
|
|
/* 02446530 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02446534 @ 0x2446534
|
|
void Gambit_fn_02446534(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02446534: ; // 0x2446534
|
|
/* 02446534 */ cpu->r[0] = cpu->lr;
|
|
/* 02446538 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446538 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446538 */ cpu->r[1] = _t0;
|
|
/* 0244653C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244653C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446540 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446544 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02446544 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446548 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02446548 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0244654C */ cpu->r[12] = 0x00000000u;
|
|
/* 02446550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02446554 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02446554 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02446558 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446558 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02446558 */ if (_t6) goto L_02446580; else goto L_0244655C;
|
|
L_0244655C: ; // 0x244655c
|
|
/* 0244655C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0244655C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02446560 */ /* nop */
|
|
/* 02446564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02446568 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446568 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02446568 */ if (_t9) goto L_0244656C; else goto L_02446580;
|
|
L_0244656C: ; // 0x244656c
|
|
/* 0244656C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0244656C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02446570 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02446570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02446574 */ cpu->ctr = cpu->r[0];
|
|
/* 02446578 */ cpu->r[3] = cpu->r[31];
|
|
/* 0244657C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02446580: ; // 0x2446580
|
|
/* 02446580 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446584 */ Gambit_fn_024464AC(cpu);
|
|
/* 02446588 */ cpu->r[3] = cpu->r[31];
|
|
/* 0244658C */ Gambit_fn_027FC37C(cpu);
|
|
/* 02446590 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02446590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02446594 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446594 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02446598 */ cpu->lr = cpu->r[0];
|
|
/* 0244659C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024465A0 */ return;
|
|
}
|
|
|
|
// fn_02446538 @ 0x2446538
|
|
void Gambit_fn_02446538(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02446538: ; // 0x2446538
|
|
/* 02446538 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446538 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446538 */ cpu->r[1] = _t0;
|
|
/* 0244653C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244653C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446540 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446544 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02446544 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446548 */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 02446548 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0244654C */ cpu->r[12] = 0x00000000u;
|
|
/* 02446550 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02446554 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 02446554 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 02446558 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446558 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02446558 */ if (_t6) goto L_02446580; else goto L_0244655C;
|
|
L_0244655C: ; // 0x244655c
|
|
/* 0244655C */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0244655C */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 02446560 */ /* nop */
|
|
/* 02446564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 02446568 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446568 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02446568 */ if (_t9) goto L_0244656C; else goto L_02446580;
|
|
L_0244656C: ; // 0x244656c
|
|
/* 0244656C */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0244656C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02446570 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 02446570 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02446574 */ cpu->ctr = cpu->r[0];
|
|
/* 02446578 */ cpu->r[3] = cpu->r[31];
|
|
/* 0244657C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02446580: ; // 0x2446580
|
|
/* 02446580 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446584 */ Gambit_fn_024464AC(cpu);
|
|
/* 02446588 */ cpu->r[3] = cpu->r[31];
|
|
/* 0244658C */ Gambit_fn_027FC37C(cpu);
|
|
/* 02446590 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02446590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02446594 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446594 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02446598 */ cpu->lr = cpu->r[0];
|
|
/* 0244659C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024465A0 */ return;
|
|
}
|
|
|
|
// fn_024465A4 @ 0x24465a4
|
|
void Gambit_fn_024465A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024465A4: ; // 0x24465a4
|
|
/* 024465A4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024465A8 */ goto L_02446A30;
|
|
L_02446A30: ; // 0x2446a30
|
|
/* 02446A30 */ cpu->r[0] = cpu->lr;
|
|
/* 02446A34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446A34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446A34 */ cpu->r[1] = _t0;
|
|
/* 02446A38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446A38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446A3C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02446A3C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02446A40 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446A44 */ cpu->r[31] = cpu->r[4];
|
|
/* 02446A48 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02446A48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02446A4C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446A4C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02446A4C */ if (_t5) goto L_02446ABC; else goto L_02446A50;
|
|
L_02446A50: ; // 0x2446a50
|
|
/* 02446A50 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446A54 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446A58 */ cpu->r[0] = cpu->r[0] + 0xFFFFD7A4u;
|
|
/* 02446A5C */ cpu->r[12] = cpu->r[12] + 0xFFFFD7C4u;
|
|
/* 02446A60 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446A60 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02446A64 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446A68 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446A68 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02446A6C */ cpu->r[11] = cpu->r[11] + 0xFFFFD7B4u;
|
|
/* 02446A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446A74 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446A74 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02446A78 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446A78 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02446A78 */ if (_t10) goto L_02446AAC; else goto L_02446A7C;
|
|
L_02446A7C: ; // 0x2446a7c
|
|
/* 02446A7C */ cpu->r[10] = 0x10010000u;
|
|
/* 02446A80 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446A84 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02446A88 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02446A8C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446A90 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446A90 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02446A94 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446A98 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446A98 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02446A9C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02446AA0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02446AA4 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446AA4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02446AA8 */ Gambit_fn_02068798(cpu);
|
|
L_02446AAC: ; // 0x2446aac
|
|
/* 02446AAC */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02446AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446AB0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446AB0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02446AB0 */ if (_t15) goto L_02446ABC; else goto L_02446AB4;
|
|
L_02446AB4: ; // 0x2446ab4
|
|
/* 02446AB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446AB8 */ Gambit_fn_02801BB0(cpu);
|
|
L_02446ABC: ; // 0x2446abc
|
|
/* 02446ABC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02446ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446AC0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02446AC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446AC4 */ cpu->lr = cpu->r[0];
|
|
/* 02446AC8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446AC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446ACC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446AD0 */ return;
|
|
}
|
|
|
|
// fn_024465AC @ 0x24465ac
|
|
void Gambit_fn_024465AC(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_024465AC: ; // 0x24465ac
|
|
/* 024465AC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024465B0 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_024465B4 @ 0x24465b4
|
|
void Gambit_fn_024465B4(CPUState* cpu) {
|
|
L_024465B4: ; // 0x24465b4
|
|
/* 024465B4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024465B8 */ goto L_02446AD4;
|
|
L_02446AD4: ; // 0x2446ad4
|
|
/* 02446AD4 */ return;
|
|
}
|
|
|
|
// fn_024465BC @ 0x24465bc
|
|
void Gambit_fn_024465BC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024465BC: ; // 0x24465bc
|
|
/* 024465BC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024465C0 */ goto L_02446AD8;
|
|
L_02446AD8: ; // 0x2446ad8
|
|
/* 02446AD8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02446AD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446ADC */ return;
|
|
}
|
|
|
|
// fn_024465C4 @ 0x24465c4
|
|
void Gambit_fn_024465C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024465C4: ; // 0x24465c4
|
|
/* 024465C4 */ cpu->r[0] = cpu->lr;
|
|
/* 024465C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024465C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024465C8 */ cpu->r[1] = _t0;
|
|
/* 024465CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024465CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024465D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024465D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024465D4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024465D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024465D8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024465D8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024465D8 */ if (_t4) goto L_024465DC; else goto L_024465EC;
|
|
L_024465DC: ; // 0x24465dc
|
|
/* 024465DC */ cpu->r[3] = 0x0000022Cu;
|
|
/* 024465E0 */ Gambit_fn_02801A78(cpu);
|
|
/* 024465E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024465E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024465E8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024465E8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024465E8 */ if (_t6) goto L_0244665C; else goto L_024465EC;
|
|
L_024465EC: ; // 0x24465ec
|
|
/* 024465EC */ cpu->r[4] = 0x100A0000u;
|
|
/* 024465F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024465F4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024465F8 */ cpu->r[4] = cpu->r[4] + 0xFFFFD558u;
|
|
/* 024465FC */ cpu->r[6] = 0x00000000u;
|
|
/* 02446600 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02446604 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446608 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0244660C */ cpu->r[0] = cpu->r[0] + 0xFFFFD5C4u;
|
|
/* 02446610 */ cpu->r[12] = cpu->r[12] + 0xFFFFD7B4u;
|
|
/* 02446614 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446618 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02446618 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0244661C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446620 */ cpu->r[11] = cpu->r[11] + 0xFFFFD7A4u;
|
|
/* 02446624 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02446624 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02446628 */ cpu->r[0] = cpu->r[0] + 0xFFFFD7C4u;
|
|
/* 0244662C */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0244662C */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02446630 */ cpu->r[11] = 0x00000000u;
|
|
/* 02446634 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02446634 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02446638 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446638 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0244663C */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 0244663C */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 02446640 */ cpu->r[3] = 0x0000036Cu;
|
|
/* 02446644 */ _t13 = cpu->r[31] + 0x00000224u;
|
|
/* 02446644 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 02446648 */ Gambit_fn_02801A78(cpu);
|
|
/* 0244664C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02446650 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446650 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02446650 */ if (_t15) goto L_02446658; else goto L_02446654;
|
|
L_02446654: ; // 0x2446654
|
|
/* 02446654 */ Gambit_fn_02800E08(cpu);
|
|
L_02446658: ; // 0x2446658
|
|
/* 02446658 */ _t16 = cpu->r[31] + 0x00000228u;
|
|
/* 02446658 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
L_0244665C: ; // 0x244665c
|
|
/* 0244665C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0244665C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446660 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446664 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446664 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446668 */ cpu->lr = cpu->r[0];
|
|
/* 0244666C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446670 */ return;
|
|
}
|
|
|
|
// fn_024465C8 @ 0x24465c8
|
|
void Gambit_fn_024465C8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_024465C8: ; // 0x24465c8
|
|
/* 024465C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024465C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024465C8 */ cpu->r[1] = _t0;
|
|
/* 024465CC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024465CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024465D0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024465D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024465D4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024465D4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024465D8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024465D8 */ _t4 = _t3 & 0x00000001u;
|
|
/* 024465D8 */ if (_t4) goto L_024465DC; else goto L_024465EC;
|
|
L_024465DC: ; // 0x24465dc
|
|
/* 024465DC */ cpu->r[3] = 0x0000022Cu;
|
|
/* 024465E0 */ Gambit_fn_02801A78(cpu);
|
|
/* 024465E4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024465E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024465E8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024465E8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024465E8 */ if (_t6) goto L_0244665C; else goto L_024465EC;
|
|
L_024465EC: ; // 0x24465ec
|
|
/* 024465EC */ cpu->r[4] = 0x100A0000u;
|
|
/* 024465F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024465F4 */ cpu->r[5] = 0x00000001u;
|
|
/* 024465F8 */ cpu->r[4] = cpu->r[4] + 0xFFFFD558u;
|
|
/* 024465FC */ cpu->r[6] = 0x00000000u;
|
|
/* 02446600 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02446604 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446608 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0244660C */ cpu->r[0] = cpu->r[0] + 0xFFFFD5C4u;
|
|
/* 02446610 */ cpu->r[12] = cpu->r[12] + 0xFFFFD7B4u;
|
|
/* 02446614 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446618 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02446618 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0244661C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446620 */ cpu->r[11] = cpu->r[11] + 0xFFFFD7A4u;
|
|
/* 02446624 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02446624 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02446628 */ cpu->r[0] = cpu->r[0] + 0xFFFFD7C4u;
|
|
/* 0244662C */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0244662C */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 02446630 */ cpu->r[11] = 0x00000000u;
|
|
/* 02446634 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02446634 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02446638 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446638 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 0244663C */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 0244663C */ rbrew_write32(cpu->mem, _t12, cpu->r[11]);
|
|
/* 02446640 */ cpu->r[3] = 0x0000036Cu;
|
|
/* 02446644 */ _t13 = cpu->r[31] + 0x00000224u;
|
|
/* 02446644 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]);
|
|
/* 02446648 */ Gambit_fn_02801A78(cpu);
|
|
/* 0244664C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02446650 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446650 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02446650 */ if (_t15) goto L_02446658; else goto L_02446654;
|
|
L_02446654: ; // 0x2446654
|
|
/* 02446654 */ Gambit_fn_02800E08(cpu);
|
|
L_02446658: ; // 0x2446658
|
|
/* 02446658 */ _t16 = cpu->r[31] + 0x00000228u;
|
|
/* 02446658 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]);
|
|
L_0244665C: ; // 0x244665c
|
|
/* 0244665C */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 0244665C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446660 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446664 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446664 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446668 */ cpu->lr = cpu->r[0];
|
|
/* 0244666C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446670 */ return;
|
|
}
|
|
|
|
// fn_02446674 @ 0x2446674
|
|
void Gambit_fn_02446674(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;
|
|
|
|
L_02446674: ; // 0x2446674
|
|
/* 02446674 */ cpu->r[0] = cpu->lr;
|
|
/* 02446678 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 02446678 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446678 */ cpu->r[1] = _t0;
|
|
/* 0244667C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02446680 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02446680 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446684 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446688 */ cpu->r[31] = 0x100A0000u;
|
|
/* 0244668C */ cpu->r[4] = 0x00000000u;
|
|
/* 02446690 */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02446690 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02446694 */ cpu->r[31] = cpu->r[31] + 0xFFFFD530u;
|
|
/* 02446698 */ cpu->r[11] = cpu->r[11] + 0xFFFFD574u;
|
|
/* 0244669C */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0244669C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 024466A0 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024466A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024466A4 */ cpu->r[29] = cpu->r[3];
|
|
/* 024466A8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024466A8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024466A8 */ if (_t6) goto L_02446854; else goto L_024466AC;
|
|
L_024466AC: ; // 0x24466ac
|
|
/* 024466AC */ cpu->r[7] = 0x100A0000u;
|
|
/* 024466B0 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 024466B0 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 024466B4 */ _t8 = cpu->r[7] + 0xFFFFD56Cu;
|
|
/* 024466B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024466B8 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024466BC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024466BC */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 024466C0 */ Gambit_fn_027ED914(cpu);
|
|
/* 024466C4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024466C8 */ Gambit_fn_021734AC(cpu);
|
|
/* 024466CC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024466D0 */ Gambit_fn_02173798(cpu);
|
|
/* 024466D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024466D8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024466D8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024466D8 */ if (_t11) goto L_02446750; else goto L_024466DC;
|
|
L_024466DC: ; // 0x24466dc
|
|
/* 024466DC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024466E0 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 024466E4 */ Gambit_fn_021735AC(cpu);
|
|
/* 024466E8 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 024466E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024466EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024466F0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024466F0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024466F0 */ if (_t14) goto L_024466FC; else goto L_024466F4;
|
|
L_024466F4: ; // 0x24466f4
|
|
/* 024466F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 024466F8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024466F8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024466F8 */ if (_t16) goto L_024466FC; else goto L_02446750;
|
|
L_024466FC: ; // 0x24466fc
|
|
/* 024466FC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446700 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02446704 */ Gambit_fn_021735AC(cpu);
|
|
/* 02446708 */ _t17 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02446708 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0244670C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02446710 */ cpu->r[5] = 0x00000000u;
|
|
/* 02446714 */ Gambit_fn_020A9AE4(cpu);
|
|
/* 02446718 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244671C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02446720 */ Gambit_fn_021735AC(cpu);
|
|
/* 02446724 */ _t18 = cpu->r[29] + 0x00000224u;
|
|
/* 02446724 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446728 */ cpu->r[5] = 0x00000001u;
|
|
/* 0244672C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02446730 */ Gambit_fn_020E2B5C(cpu);
|
|
/* 02446734 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446738 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0244673C */ Gambit_fn_021735AC(cpu);
|
|
/* 02446740 */ _t19 = cpu->r[29] + 0x00000220u;
|
|
/* 02446740 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02446744 */ cpu->r[5] = 0x00000001u;
|
|
/* 02446748 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0244674C */ Gambit_fn_020E39F8(cpu);
|
|
L_02446750: ; // 0x2446750
|
|
/* 02446750 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02446754 */ _t20 = cpu->r[30] + 0x0000457Cu;
|
|
/* 02446754 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02446754 */ cpu->r[30] = _t20;
|
|
/* 02446758 */ _t21 = cpu->r[7] + 0x0000001Eu;
|
|
/* 02446758 */ cpu->r[8] = rbrew_read8(cpu->mem, _t21);
|
|
/* 0244675C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02446760 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446760 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02446760 */ if (_t23) goto L_0244682C; else goto L_02446764;
|
|
L_02446764: ; // 0x2446764
|
|
/* 02446764 */ _t24 = cpu->r[7] + 0x0000001Cu;
|
|
/* 02446764 */ cpu->r[3] = rbrew_read16(cpu->mem, _t24);
|
|
/* 02446768 */ Gambit_fn_0282A11C(cpu);
|
|
/* 0244676C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 02446770 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446770 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02446770 */ if (_t26) goto L_02446774; else goto L_0244682C;
|
|
L_02446774: ; // 0x2446774
|
|
/* 02446774 */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 02446774 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02446778 */ _t28 = cpu->r[9] + 0x000004ACu;
|
|
/* 02446778 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0244677C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 02446780 */ cpu->r[12] = 0x00000000u;
|
|
/* 02446784 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02446784 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02446784 */ if (_t30) goto L_02446788; else goto L_02446790;
|
|
L_02446788: ; // 0x2446788
|
|
/* 02446788 */ _t31 = cpu->r[9] + 0x000004B4u;
|
|
/* 02446788 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0244678C */ _t32 = cpu->r[12] + 0x00000004u;
|
|
/* 0244678C */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
L_02446790: ; // 0x2446790
|
|
/* 02446790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02446794 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446794 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02446794 */ if (_t34) goto L_0244682C; else goto L_02446798;
|
|
L_02446798: ; // 0x2446798
|
|
/* 02446798 */ _t35 = cpu->r[12] + 0x00000052u;
|
|
/* 02446798 */ cpu->r[0] = rbrew_read16(cpu->mem, _t35);
|
|
/* 0244679C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024467A0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024467A0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024467A0 */ if (_t37) goto L_0244682C; else goto L_024467A4;
|
|
L_024467A4: ; // 0x24467a4
|
|
/* 024467A4 */ _t38 = cpu->r[12] + 0x00000024u;
|
|
/* 024467A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024467A8 */ cpu->r[10] = 0x00000000u;
|
|
/* 024467AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024467B0 */ cpu->r[8] = cpu->r[12] + 0x00000024u;
|
|
/* 024467B4 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024467B4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024467B4 */ if (_t40) goto L_024467BC; else goto L_024467B8;
|
|
L_024467B8: ; // 0x24467b8
|
|
/* 024467B8 */ cpu->r[10] = cpu->r[8] + cpu->r[9];
|
|
L_024467BC: ; // 0x24467bc
|
|
/* 024467BC */ _t41 = cpu->r[10] + 0x00000024u;
|
|
/* 024467BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024467C0 */ cpu->r[12] = cpu->r[10] + 0x00000024u;
|
|
/* 024467C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024467C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024467CC */ _t42 = cpu->r[29] + 0x00000228u;
|
|
/* 024467CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024467D0 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024467D0 */ _t44 = _t43 & 0x00000001u;
|
|
/* 024467D0 */ if (_t44) goto L_024467D8; else goto L_024467D4;
|
|
L_024467D4: ; // 0x24467d4
|
|
/* 024467D4 */ cpu->r[4] = cpu->r[12] + cpu->r[0];
|
|
L_024467D8: ; // 0x24467d8
|
|
/* 024467D8 */ Gambit_fn_02800ECC(cpu);
|
|
/* 024467DC */ _t45 = cpu->r[29] + 0x00000228u;
|
|
/* 024467DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024467E0 */ cpu->r[0] = 0x00010000u;
|
|
/* 024467E4 */ cpu->r[12] = 0x00000001u;
|
|
/* 024467E8 */ cpu->r[0] = cpu->r[0] | 0x00000205u;
|
|
/* 024467EC */ _t46 = cpu->r[8] + 0x00000364u;
|
|
/* 024467EC */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[12]);
|
|
/* 024467F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 024467F4 */ _t47 = cpu->r[8] + 0x00000368u;
|
|
/* 024467F4 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 024467F8 */ _t48 = cpu->r[29] + 0x00000228u;
|
|
/* 024467F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024467FC */ cpu->r[9] = 0x100A0000u;
|
|
/* 02446800 */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 02446800 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 02446804 */ cpu->r[9] = cpu->r[9] + 0xFFFFD578u;
|
|
/* 02446808 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0244680C */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 0244680C */ rbrew_write32(cpu->mem, _t50, cpu->r[31]);
|
|
/* 02446810 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446814 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02446818 */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 02446818 */ rbrew_write32(cpu->mem, _t51, cpu->r[9]);
|
|
/* 0244681C */ cpu->r[0] = cpu->r[0] + 0xFFFFD57Cu;
|
|
/* 02446820 */ cpu->r[3] = cpu->r[29];
|
|
/* 02446824 */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02446824 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 02446828 */ Gambit_fn_02800AB0(cpu);
|
|
L_0244682C: ; // 0x244682c
|
|
/* 0244682C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446830 */ cpu->r[4] = 0x00000002u;
|
|
/* 02446834 */ Gambit_fn_0217354C(cpu);
|
|
/* 02446838 */ _t53 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02446838 */ cpu->r[29] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0244683C */ _t54 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0244683C */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02446840 */ _t55 = cpu->r[1] + 0x00000040u;
|
|
/* 02446840 */ cpu->r[30] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02446844 */ cpu->lr = cpu->r[0];
|
|
/* 02446848 */ _t56 = cpu->r[1] + 0x00000044u;
|
|
/* 02446848 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0244684C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02446850 */ return;
|
|
L_02446854: ; // 0x2446854
|
|
/* 02446854 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02446858 */ _t57 = cpu->r[1] + 0x00000038u;
|
|
/* 02446858 */ rbrew_write32(cpu->mem, _t57, cpu->r[31]);
|
|
/* 0244685C */ _t58 = cpu->r[10] + 0xFFFFD570u;
|
|
/* 0244685C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02446860 */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 02446864 */ _t59 = cpu->r[1] + 0x00000034u;
|
|
/* 02446864 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 02446868 */ Gambit_fn_027ED914(cpu);
|
|
/* 0244686C */ _t60 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0244686C */ cpu->r[29] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02446870 */ _t61 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02446870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02446874 */ _t62 = cpu->r[1] + 0x00000044u;
|
|
/* 02446874 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02446878 */ cpu->lr = cpu->r[0];
|
|
/* 0244687C */ _t63 = cpu->r[1] + 0x00000040u;
|
|
/* 0244687C */ cpu->r[30] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02446880 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02446884 */ return;
|
|
}
|
|
|
|
// fn_02446678 @ 0x2446678
|
|
void Gambit_fn_02446678(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;
|
|
|
|
L_02446678: ; // 0x2446678
|
|
/* 02446678 */ _t0 = cpu->r[1] + 0xFFFFFFB8u;
|
|
/* 02446678 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446678 */ cpu->r[1] = _t0;
|
|
/* 0244667C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u);
|
|
/* 02446680 */ _t1 = cpu->r[1] + 0x00000044u;
|
|
/* 02446680 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446684 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446688 */ cpu->r[31] = 0x100A0000u;
|
|
/* 0244668C */ cpu->r[4] = 0x00000000u;
|
|
/* 02446690 */ _t2 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02446690 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02446694 */ cpu->r[31] = cpu->r[31] + 0xFFFFD530u;
|
|
/* 02446698 */ cpu->r[11] = cpu->r[11] + 0xFFFFD574u;
|
|
/* 0244669C */ _t3 = cpu->r[1] + 0x00000040u;
|
|
/* 0244669C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 024466A0 */ _t4 = cpu->r[1] + 0x0000004Cu;
|
|
/* 024466A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024466A4 */ cpu->r[29] = cpu->r[3];
|
|
/* 024466A8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024466A8 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024466A8 */ if (_t6) goto L_02446854; else goto L_024466AC;
|
|
L_024466AC: ; // 0x24466ac
|
|
/* 024466AC */ cpu->r[7] = 0x100A0000u;
|
|
/* 024466B0 */ _t7 = cpu->r[1] + 0x00000020u;
|
|
/* 024466B0 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]);
|
|
/* 024466B4 */ _t8 = cpu->r[7] + 0xFFFFD56Cu;
|
|
/* 024466B4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 024466B8 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024466BC */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024466BC */ rbrew_write32(cpu->mem, _t9, cpu->r[11]);
|
|
/* 024466C0 */ Gambit_fn_027ED914(cpu);
|
|
/* 024466C4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024466C8 */ Gambit_fn_021734AC(cpu);
|
|
/* 024466CC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024466D0 */ Gambit_fn_02173798(cpu);
|
|
/* 024466D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024466D8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024466D8 */ _t11 = _t10 & 0x00000001u;
|
|
/* 024466D8 */ if (_t11) goto L_02446750; else goto L_024466DC;
|
|
L_024466DC: ; // 0x24466dc
|
|
/* 024466DC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024466E0 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 024466E4 */ Gambit_fn_021735AC(cpu);
|
|
/* 024466E8 */ _t12 = cpu->r[1] + 0x00000018u;
|
|
/* 024466E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024466EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024466F0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024466F0 */ _t14 = _t13 & 0x00000001u;
|
|
/* 024466F0 */ if (_t14) goto L_024466FC; else goto L_024466F4;
|
|
L_024466F4: ; // 0x24466f4
|
|
/* 024466F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u);
|
|
/* 024466F8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024466F8 */ _t16 = _t15 & 0x00000001u;
|
|
/* 024466F8 */ if (_t16) goto L_024466FC; else goto L_02446750;
|
|
L_024466FC: ; // 0x24466fc
|
|
/* 024466FC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446700 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02446704 */ Gambit_fn_021735AC(cpu);
|
|
/* 02446708 */ _t17 = cpu->r[29] + 0x0000021Cu;
|
|
/* 02446708 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17);
|
|
/* 0244670C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02446710 */ cpu->r[5] = 0x00000000u;
|
|
/* 02446714 */ Gambit_fn_020A9AE4(cpu);
|
|
/* 02446718 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244671C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02446720 */ Gambit_fn_021735AC(cpu);
|
|
/* 02446724 */ _t18 = cpu->r[29] + 0x00000224u;
|
|
/* 02446724 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446728 */ cpu->r[5] = 0x00000001u;
|
|
/* 0244672C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02446730 */ Gambit_fn_020E2B5C(cpu);
|
|
/* 02446734 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446738 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0244673C */ Gambit_fn_021735AC(cpu);
|
|
/* 02446740 */ _t19 = cpu->r[29] + 0x00000220u;
|
|
/* 02446740 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02446744 */ cpu->r[5] = 0x00000001u;
|
|
/* 02446748 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 0244674C */ Gambit_fn_020E39F8(cpu);
|
|
L_02446750: ; // 0x2446750
|
|
/* 02446750 */ cpu->r[30] = 0x101C0000u;
|
|
/* 02446754 */ _t20 = cpu->r[30] + 0x0000457Cu;
|
|
/* 02446754 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02446754 */ cpu->r[30] = _t20;
|
|
/* 02446758 */ _t21 = cpu->r[7] + 0x0000001Eu;
|
|
/* 02446758 */ cpu->r[8] = rbrew_read8(cpu->mem, _t21);
|
|
/* 0244675C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02446760 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446760 */ _t23 = _t22 & 0x00000001u;
|
|
/* 02446760 */ if (_t23) goto L_0244682C; else goto L_02446764;
|
|
L_02446764: ; // 0x2446764
|
|
/* 02446764 */ _t24 = cpu->r[7] + 0x0000001Cu;
|
|
/* 02446764 */ cpu->r[3] = rbrew_read16(cpu->mem, _t24);
|
|
/* 02446768 */ Gambit_fn_0282A11C(cpu);
|
|
/* 0244676C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 02446770 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446770 */ _t26 = _t25 & 0x00000001u;
|
|
/* 02446770 */ if (_t26) goto L_02446774; else goto L_0244682C;
|
|
L_02446774: ; // 0x2446774
|
|
/* 02446774 */ _t27 = cpu->r[30] + 0x00000000u;
|
|
/* 02446774 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27);
|
|
/* 02446778 */ _t28 = cpu->r[9] + 0x000004ACu;
|
|
/* 02446778 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28);
|
|
/* 0244677C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u);
|
|
/* 02446780 */ cpu->r[12] = 0x00000000u;
|
|
/* 02446784 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02446784 */ _t30 = _t29 & 0x00000001u;
|
|
/* 02446784 */ if (_t30) goto L_02446788; else goto L_02446790;
|
|
L_02446788: ; // 0x2446788
|
|
/* 02446788 */ _t31 = cpu->r[9] + 0x000004B4u;
|
|
/* 02446788 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0244678C */ _t32 = cpu->r[12] + 0x00000004u;
|
|
/* 0244678C */ cpu->r[12] = rbrew_read32(cpu->mem, _t32);
|
|
L_02446790: ; // 0x2446790
|
|
/* 02446790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u);
|
|
/* 02446794 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446794 */ _t34 = _t33 & 0x00000001u;
|
|
/* 02446794 */ if (_t34) goto L_0244682C; else goto L_02446798;
|
|
L_02446798: ; // 0x2446798
|
|
/* 02446798 */ _t35 = cpu->r[12] + 0x00000052u;
|
|
/* 02446798 */ cpu->r[0] = rbrew_read16(cpu->mem, _t35);
|
|
/* 0244679C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024467A0 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024467A0 */ _t37 = _t36 & 0x00000001u;
|
|
/* 024467A0 */ if (_t37) goto L_0244682C; else goto L_024467A4;
|
|
L_024467A4: ; // 0x24467a4
|
|
/* 024467A4 */ _t38 = cpu->r[12] + 0x00000024u;
|
|
/* 024467A4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38);
|
|
/* 024467A8 */ cpu->r[10] = 0x00000000u;
|
|
/* 024467AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024467B0 */ cpu->r[8] = cpu->r[12] + 0x00000024u;
|
|
/* 024467B4 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024467B4 */ _t40 = _t39 & 0x00000001u;
|
|
/* 024467B4 */ if (_t40) goto L_024467BC; else goto L_024467B8;
|
|
L_024467B8: ; // 0x24467b8
|
|
/* 024467B8 */ cpu->r[10] = cpu->r[8] + cpu->r[9];
|
|
L_024467BC: ; // 0x24467bc
|
|
/* 024467BC */ _t41 = cpu->r[10] + 0x00000024u;
|
|
/* 024467BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41);
|
|
/* 024467C0 */ cpu->r[12] = cpu->r[10] + 0x00000024u;
|
|
/* 024467C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024467C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024467CC */ _t42 = cpu->r[29] + 0x00000228u;
|
|
/* 024467CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t42);
|
|
/* 024467D0 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024467D0 */ _t44 = _t43 & 0x00000001u;
|
|
/* 024467D0 */ if (_t44) goto L_024467D8; else goto L_024467D4;
|
|
L_024467D4: ; // 0x24467d4
|
|
/* 024467D4 */ cpu->r[4] = cpu->r[12] + cpu->r[0];
|
|
L_024467D8: ; // 0x24467d8
|
|
/* 024467D8 */ Gambit_fn_02800ECC(cpu);
|
|
/* 024467DC */ _t45 = cpu->r[29] + 0x00000228u;
|
|
/* 024467DC */ cpu->r[8] = rbrew_read32(cpu->mem, _t45);
|
|
/* 024467E0 */ cpu->r[0] = 0x00010000u;
|
|
/* 024467E4 */ cpu->r[12] = 0x00000001u;
|
|
/* 024467E8 */ cpu->r[0] = cpu->r[0] | 0x00000205u;
|
|
/* 024467EC */ _t46 = cpu->r[8] + 0x00000364u;
|
|
/* 024467EC */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[12]);
|
|
/* 024467F0 */ cpu->r[6] = 0x00000000u;
|
|
/* 024467F4 */ _t47 = cpu->r[8] + 0x00000368u;
|
|
/* 024467F4 */ rbrew_write32(cpu->mem, _t47, cpu->r[0]);
|
|
/* 024467F8 */ _t48 = cpu->r[29] + 0x00000228u;
|
|
/* 024467F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t48);
|
|
/* 024467FC */ cpu->r[9] = 0x100A0000u;
|
|
/* 02446800 */ _t49 = cpu->r[1] + 0x00000030u;
|
|
/* 02446800 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]);
|
|
/* 02446804 */ cpu->r[9] = cpu->r[9] + 0xFFFFD578u;
|
|
/* 02446808 */ cpu->r[4] = cpu->r[1] + 0x00000024u;
|
|
/* 0244680C */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 0244680C */ rbrew_write32(cpu->mem, _t50, cpu->r[31]);
|
|
/* 02446810 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446814 */ cpu->r[5] = cpu->r[1] + 0x0000002Cu;
|
|
/* 02446818 */ _t51 = cpu->r[1] + 0x00000024u;
|
|
/* 02446818 */ rbrew_write32(cpu->mem, _t51, cpu->r[9]);
|
|
/* 0244681C */ cpu->r[0] = cpu->r[0] + 0xFFFFD57Cu;
|
|
/* 02446820 */ cpu->r[3] = cpu->r[29];
|
|
/* 02446824 */ _t52 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02446824 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 02446828 */ Gambit_fn_02800AB0(cpu);
|
|
L_0244682C: ; // 0x244682c
|
|
/* 0244682C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446830 */ cpu->r[4] = 0x00000002u;
|
|
/* 02446834 */ Gambit_fn_0217354C(cpu);
|
|
/* 02446838 */ _t53 = cpu->r[1] + 0x0000003Cu;
|
|
/* 02446838 */ cpu->r[29] = rbrew_read32(cpu->mem, _t53);
|
|
/* 0244683C */ _t54 = cpu->r[1] + 0x0000004Cu;
|
|
/* 0244683C */ cpu->r[0] = rbrew_read32(cpu->mem, _t54);
|
|
/* 02446840 */ _t55 = cpu->r[1] + 0x00000040u;
|
|
/* 02446840 */ cpu->r[30] = rbrew_read32(cpu->mem, _t55);
|
|
/* 02446844 */ cpu->lr = cpu->r[0];
|
|
/* 02446848 */ _t56 = cpu->r[1] + 0x00000044u;
|
|
/* 02446848 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56);
|
|
/* 0244684C */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02446850 */ return;
|
|
L_02446854: ; // 0x2446854
|
|
/* 02446854 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02446858 */ _t57 = cpu->r[1] + 0x00000038u;
|
|
/* 02446858 */ rbrew_write32(cpu->mem, _t57, cpu->r[31]);
|
|
/* 0244685C */ _t58 = cpu->r[10] + 0xFFFFD570u;
|
|
/* 0244685C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t58);
|
|
/* 02446860 */ cpu->r[5] = cpu->r[1] + 0x00000034u;
|
|
/* 02446864 */ _t59 = cpu->r[1] + 0x00000034u;
|
|
/* 02446864 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 02446868 */ Gambit_fn_027ED914(cpu);
|
|
/* 0244686C */ _t60 = cpu->r[1] + 0x0000003Cu;
|
|
/* 0244686C */ cpu->r[29] = rbrew_read32(cpu->mem, _t60);
|
|
/* 02446870 */ _t61 = cpu->r[1] + 0x0000004Cu;
|
|
/* 02446870 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61);
|
|
/* 02446874 */ _t62 = cpu->r[1] + 0x00000044u;
|
|
/* 02446874 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62);
|
|
/* 02446878 */ cpu->lr = cpu->r[0];
|
|
/* 0244687C */ _t63 = cpu->r[1] + 0x00000040u;
|
|
/* 0244687C */ cpu->r[30] = rbrew_read32(cpu->mem, _t63);
|
|
/* 02446880 */ cpu->r[1] = cpu->r[1] + 0x00000048u;
|
|
/* 02446884 */ return;
|
|
}
|
|
|
|
// fn_02446888 @ 0x2446888
|
|
void Gambit_fn_02446888(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_02446888: ; // 0x2446888
|
|
/* 02446888 */ cpu->r[0] = cpu->lr;
|
|
/* 0244688C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446890 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446894 */ cpu->r[11] = cpu->r[11] + 0xFFFFD530u;
|
|
/* 02446898 */ cpu->r[12] = cpu->r[12] + 0xFFFFD588u;
|
|
/* 0244689C */ _t0 = cpu->r[1] + 0x00000004u;
|
|
/* 0244689C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]);
|
|
/* 024468A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024468A4 */ _t1 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024468A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]);
|
|
/* 024468A4 */ cpu->r[1] = _t1;
|
|
/* 024468A8 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 024468A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[12]);
|
|
/* 024468AC */ cpu->r[0] = cpu->r[0] + 0xFFFFD58Cu;
|
|
/* 024468B0 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024468B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024468B4 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 024468B8 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 024468B8 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 024468BC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024468C0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024468C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024468C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024468C8 */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024468C8 */ rbrew_write32(cpu->mem, _t6, cpu->r[11]);
|
|
/* 024468CC */ _t7 = cpu->r[1] + 0x00000018u;
|
|
/* 024468CC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 024468D0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024468D4 */ _t8 = cpu->r[1] + 0x00000024u;
|
|
/* 024468D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024468D8 */ cpu->lr = cpu->r[0];
|
|
/* 024468DC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024468E0 */ return;
|
|
}
|
|
|
|
// fn_024468A4 @ 0x24468a4
|
|
void Gambit_fn_024468A4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_024468A4: ; // 0x24468a4
|
|
/* 024468A4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024468A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024468A4 */ cpu->r[1] = _t0;
|
|
/* 024468A8 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 024468A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[12]);
|
|
/* 024468AC */ cpu->r[0] = cpu->r[0] + 0xFFFFD58Cu;
|
|
/* 024468B0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024468B0 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024468B4 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 024468B8 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024468B8 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024468BC */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024468C0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024468C0 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 024468C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024468C8 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 024468C8 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024468CC */ _t6 = cpu->r[1] + 0x00000018u;
|
|
/* 024468CC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024468D0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024468D4 */ _t7 = cpu->r[1] + 0x00000024u;
|
|
/* 024468D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024468D8 */ cpu->lr = cpu->r[0];
|
|
/* 024468DC */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024468E0 */ return;
|
|
}
|
|
|
|
// fn_024468E4 @ 0x24468e4
|
|
void Gambit_fn_024468E4(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_024468E4: ; // 0x24468e4
|
|
/* 024468E4 */ cpu->r[0] = cpu->lr;
|
|
/* 024468E8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024468E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024468E8 */ cpu->r[1] = _t0;
|
|
/* 024468EC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024468EC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024468F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024468F4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024468F8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024468F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024468FC */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 024468FC */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02446900 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02446904 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02446904 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02446908 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0244690C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446910 */ cpu->r[29] = cpu->r[29] + 0xFFFFD530u;
|
|
/* 02446914 */ cpu->r[0] = cpu->r[0] + 0xFFFFD5ACu;
|
|
/* 02446918 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446918 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0244691C */ cpu->r[4] = cpu->r[31];
|
|
/* 02446920 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02446920 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02446924 */ Gambit_fn_020A7150(cpu);
|
|
/* 02446928 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0244692C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244692C */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02446930 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446934 */ cpu->r[30] = cpu->r[30] + 0xFFFFD598u;
|
|
/* 02446938 */ _t8 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446938 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0244693C */ cpu->r[12] = cpu->r[12] + 0xFFFFD59Cu;
|
|
/* 02446940 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02446940 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02446944 */ cpu->r[4] = cpu->r[31];
|
|
/* 02446948 */ cpu->r[3] = 0x00000000u;
|
|
/* 0244694C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0244694C */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02446950 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02446954 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02446958 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02446958 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0244695C */ Gambit_fn_020E382C(cpu);
|
|
/* 02446960 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446964 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446964 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02446968 */ cpu->r[0] = cpu->r[0] + 0xFFFFD5B8u;
|
|
/* 0244696C */ _t13 = cpu->r[31] + 0x00000220u;
|
|
/* 0244696C */ rbrew_write32(cpu->mem, _t13, cpu->r[3]);
|
|
/* 02446970 */ cpu->r[3] = 0x00000000u;
|
|
/* 02446974 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02446974 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02446978 */ cpu->r[4] = cpu->r[31];
|
|
/* 0244697C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0244697C */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 02446980 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02446984 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02446988 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02446988 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 0244698C */ Gambit_fn_020E2548(cpu);
|
|
/* 02446990 */ _t17 = cpu->r[31] + 0x00000224u;
|
|
/* 02446990 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02446994 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02446994 */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446998 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02446998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0244699C */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 0244699C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024469A0 */ cpu->lr = cpu->r[0];
|
|
/* 024469A4 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 024469A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024469A8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024469AC */ return;
|
|
}
|
|
|
|
// fn_024468E8 @ 0x24468e8
|
|
void Gambit_fn_024468E8(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_024468E8: ; // 0x24468e8
|
|
/* 024468E8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024468E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024468E8 */ cpu->r[1] = _t0;
|
|
/* 024468EC */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024468EC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024468F0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024468F4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024468F8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024468F8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 024468FC */ _t3 = cpu->r[1] + 0x00000020u;
|
|
/* 024468FC */ rbrew_write32(cpu->mem, _t3, cpu->r[30]);
|
|
/* 02446900 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02446904 */ _t4 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02446904 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02446908 */ cpu->r[29] = 0x100A0000u;
|
|
/* 0244690C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446910 */ cpu->r[29] = cpu->r[29] + 0xFFFFD530u;
|
|
/* 02446914 */ cpu->r[0] = cpu->r[0] + 0xFFFFD5ACu;
|
|
/* 02446918 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446918 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]);
|
|
/* 0244691C */ cpu->r[4] = cpu->r[31];
|
|
/* 02446920 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02446920 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02446924 */ Gambit_fn_020A7150(cpu);
|
|
/* 02446928 */ cpu->r[30] = 0x100A0000u;
|
|
/* 0244692C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244692C */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02446930 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446934 */ cpu->r[30] = cpu->r[30] + 0xFFFFD598u;
|
|
/* 02446938 */ _t8 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446938 */ rbrew_write32(cpu->mem, _t8, cpu->r[3]);
|
|
/* 0244693C */ cpu->r[12] = cpu->r[12] + 0xFFFFD59Cu;
|
|
/* 02446940 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02446940 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02446944 */ cpu->r[4] = cpu->r[31];
|
|
/* 02446948 */ cpu->r[3] = 0x00000000u;
|
|
/* 0244694C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0244694C */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02446950 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02446954 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02446958 */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02446958 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 0244695C */ Gambit_fn_020E382C(cpu);
|
|
/* 02446960 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446964 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446964 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02446968 */ cpu->r[0] = cpu->r[0] + 0xFFFFD5B8u;
|
|
/* 0244696C */ _t13 = cpu->r[31] + 0x00000220u;
|
|
/* 0244696C */ rbrew_write32(cpu->mem, _t13, cpu->r[3]);
|
|
/* 02446970 */ cpu->r[3] = 0x00000000u;
|
|
/* 02446974 */ _t14 = cpu->r[1] + 0x00000008u;
|
|
/* 02446974 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02446978 */ cpu->r[4] = cpu->r[31];
|
|
/* 0244697C */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 0244697C */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 02446980 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02446984 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02446988 */ _t16 = cpu->r[1] + 0x00000010u;
|
|
/* 02446988 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]);
|
|
/* 0244698C */ Gambit_fn_020E2548(cpu);
|
|
/* 02446990 */ _t17 = cpu->r[31] + 0x00000224u;
|
|
/* 02446990 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02446994 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02446994 */ cpu->r[29] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446998 */ _t19 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02446998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 0244699C */ _t20 = cpu->r[1] + 0x00000020u;
|
|
/* 0244699C */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 024469A0 */ cpu->lr = cpu->r[0];
|
|
/* 024469A4 */ _t21 = cpu->r[1] + 0x00000024u;
|
|
/* 024469A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 024469A8 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024469AC */ return;
|
|
}
|
|
|
|
// fn_024469B0 @ 0x24469b0
|
|
void Gambit_fn_024469B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024469B0: ; // 0x24469b0
|
|
/* 024469B0 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 024469B4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024469B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024469B4 */ cpu->r[1] = _t0;
|
|
/* 024469B8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024469BC */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024469C0 */ _t1 = cpu->r[10] + 0x00007638u;
|
|
/* 024469C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024469C0 */ cpu->r[10] = _t1;
|
|
/* 024469C4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024469C8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024469C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024469CC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024469D0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 024469D4 */ _t3 = cpu->r[7] + 0x00007648u;
|
|
/* 024469D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024469D4 */ cpu->r[7] = _t3;
|
|
/* 024469D8 */ _t4 = cpu->r[8] + 0x00007640u;
|
|
/* 024469D8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 024469D8 */ cpu->r[8] = _t4;
|
|
/* 024469DC */ cpu->r[0] = 0x00000002u;
|
|
/* 024469E0 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 024469E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024469E4 */ cpu->r[8] = 0x101E0000u;
|
|
/* 024469E8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024469E8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024469EC */ cpu->r[12] = 0x101E0000u;
|
|
/* 024469F0 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 024469F0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 024469F4 */ _t8 = cpu->r[8] + 0x00007658u;
|
|
/* 024469F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 024469F4 */ cpu->r[8] = _t8;
|
|
/* 024469F8 */ _t9 = cpu->r[12] + 0x00007650u;
|
|
/* 024469F8 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 024469F8 */ cpu->r[12] = _t9;
|
|
/* 024469FC */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 024469FC */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02446A00 */ cpu->r[0] = 0x00000004u;
|
|
/* 02446A04 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02446A04 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02446A08 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02446A0C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02446A0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02446A10 */ _t13 = cpu->r[11] + 0x00007660u;
|
|
/* 02446A10 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02446A14 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02446A18 */ return;
|
|
}
|
|
|
|
// fn_024469B4 @ 0x24469b4
|
|
void Gambit_fn_024469B4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024469B4: ; // 0x24469b4
|
|
/* 024469B4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024469B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024469B4 */ cpu->r[1] = _t0;
|
|
/* 024469B8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024469BC */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024469C0 */ _t1 = cpu->r[10] + 0x00007638u;
|
|
/* 024469C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024469C0 */ cpu->r[10] = _t1;
|
|
/* 024469C4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024469C8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024469C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024469CC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024469D0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 024469D4 */ _t3 = cpu->r[7] + 0x00007648u;
|
|
/* 024469D4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024469D4 */ cpu->r[7] = _t3;
|
|
/* 024469D8 */ _t4 = cpu->r[8] + 0x00007640u;
|
|
/* 024469D8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 024469D8 */ cpu->r[8] = _t4;
|
|
/* 024469DC */ cpu->r[0] = 0x00000002u;
|
|
/* 024469E0 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 024469E0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 024469E4 */ cpu->r[8] = 0x101E0000u;
|
|
/* 024469E8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024469E8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 024469EC */ cpu->r[12] = 0x101E0000u;
|
|
/* 024469F0 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 024469F0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 024469F4 */ _t8 = cpu->r[8] + 0x00007658u;
|
|
/* 024469F4 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 024469F4 */ cpu->r[8] = _t8;
|
|
/* 024469F8 */ _t9 = cpu->r[12] + 0x00007650u;
|
|
/* 024469F8 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 024469F8 */ cpu->r[12] = _t9;
|
|
/* 024469FC */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 024469FC */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02446A00 */ cpu->r[0] = 0x00000004u;
|
|
/* 02446A04 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02446A04 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02446A08 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02446A0C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02446A0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02446A10 */ _t13 = cpu->r[11] + 0x00007660u;
|
|
/* 02446A10 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02446A14 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02446A18 */ return;
|
|
}
|
|
|
|
// fn_02446A1C @ 0x2446a1c
|
|
void Gambit_fn_02446A1C(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_02446A1C: ; // 0x2446a1c
|
|
/* 02446A1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02446A20 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446A20 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02446A20 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02446A20 */ goto L_02446A24;
|
|
L_02446A24: ; // 0x2446a24
|
|
/* 02446A24 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02446A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02446A28 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446A28 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02446A28 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02446A28 */ goto L_02446A2C;
|
|
L_02446A2C: ; // 0x2446a2c
|
|
/* 02446A2C */ 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_02446A30 @ 0x2446a30
|
|
void Gambit_fn_02446A30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02446A30: ; // 0x2446a30
|
|
/* 02446A30 */ cpu->r[0] = cpu->lr;
|
|
/* 02446A34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446A34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446A34 */ cpu->r[1] = _t0;
|
|
/* 02446A38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446A38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446A3C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02446A3C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02446A40 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446A44 */ cpu->r[31] = cpu->r[4];
|
|
/* 02446A48 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02446A48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02446A4C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446A4C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02446A4C */ if (_t5) goto L_02446ABC; else goto L_02446A50;
|
|
L_02446A50: ; // 0x2446a50
|
|
/* 02446A50 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446A54 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446A58 */ cpu->r[0] = cpu->r[0] + 0xFFFFD7A4u;
|
|
/* 02446A5C */ cpu->r[12] = cpu->r[12] + 0xFFFFD7C4u;
|
|
/* 02446A60 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446A60 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02446A64 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446A68 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446A68 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02446A6C */ cpu->r[11] = cpu->r[11] + 0xFFFFD7B4u;
|
|
/* 02446A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446A74 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446A74 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02446A78 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446A78 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02446A78 */ if (_t10) goto L_02446AAC; else goto L_02446A7C;
|
|
L_02446A7C: ; // 0x2446a7c
|
|
/* 02446A7C */ cpu->r[10] = 0x10010000u;
|
|
/* 02446A80 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446A84 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02446A88 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02446A8C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446A90 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446A90 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02446A94 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446A98 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446A98 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02446A9C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02446AA0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02446AA4 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446AA4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02446AA8 */ Gambit_fn_02068798(cpu);
|
|
L_02446AAC: ; // 0x2446aac
|
|
/* 02446AAC */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02446AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446AB0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446AB0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02446AB0 */ if (_t15) goto L_02446ABC; else goto L_02446AB4;
|
|
L_02446AB4: ; // 0x2446ab4
|
|
/* 02446AB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446AB8 */ Gambit_fn_02801BB0(cpu);
|
|
L_02446ABC: ; // 0x2446abc
|
|
/* 02446ABC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02446ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446AC0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02446AC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446AC4 */ cpu->lr = cpu->r[0];
|
|
/* 02446AC8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446AC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446ACC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446AD0 */ return;
|
|
}
|
|
|
|
// fn_02446A34 @ 0x2446a34
|
|
void Gambit_fn_02446A34(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02446A34: ; // 0x2446a34
|
|
/* 02446A34 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446A34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446A34 */ cpu->r[1] = _t0;
|
|
/* 02446A38 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446A38 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446A3C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02446A3C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02446A40 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446A40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446A44 */ cpu->r[31] = cpu->r[4];
|
|
/* 02446A48 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02446A48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02446A4C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446A4C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02446A4C */ if (_t5) goto L_02446ABC; else goto L_02446A50;
|
|
L_02446A50: ; // 0x2446a50
|
|
/* 02446A50 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446A54 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446A58 */ cpu->r[0] = cpu->r[0] + 0xFFFFD7A4u;
|
|
/* 02446A5C */ cpu->r[12] = cpu->r[12] + 0xFFFFD7C4u;
|
|
/* 02446A60 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446A60 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02446A64 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446A68 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446A68 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02446A6C */ cpu->r[11] = cpu->r[11] + 0xFFFFD7B4u;
|
|
/* 02446A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446A74 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446A74 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02446A78 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446A78 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02446A78 */ if (_t10) goto L_02446AAC; else goto L_02446A7C;
|
|
L_02446A7C: ; // 0x2446a7c
|
|
/* 02446A7C */ cpu->r[10] = 0x10010000u;
|
|
/* 02446A80 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446A84 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02446A88 */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02446A8C */ cpu->r[3] = cpu->r[30];
|
|
/* 02446A90 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446A90 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02446A94 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446A98 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446A98 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02446A9C */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02446AA0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02446AA4 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446AA4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02446AA8 */ Gambit_fn_02068798(cpu);
|
|
L_02446AAC: ; // 0x2446aac
|
|
/* 02446AAC */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02446AAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446AB0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446AB0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02446AB0 */ if (_t15) goto L_02446ABC; else goto L_02446AB4;
|
|
L_02446AB4: ; // 0x2446ab4
|
|
/* 02446AB4 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446AB8 */ Gambit_fn_02801BB0(cpu);
|
|
L_02446ABC: ; // 0x2446abc
|
|
/* 02446ABC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02446ABC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446AC0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02446AC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446AC4 */ cpu->lr = cpu->r[0];
|
|
/* 02446AC8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446AC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446ACC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446AD0 */ return;
|
|
}
|
|
|
|
// fn_02446AD4 @ 0x2446ad4
|
|
void Gambit_fn_02446AD4(CPUState* cpu) {
|
|
L_02446AD4: ; // 0x2446ad4
|
|
/* 02446AD4 */ return;
|
|
}
|
|
|
|
// fn_02446AD8 @ 0x2446ad8
|
|
void Gambit_fn_02446AD8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02446AD8: ; // 0x2446ad8
|
|
/* 02446AD8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02446AD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446ADC */ return;
|
|
}
|
|
|
|
// fn_02446AE0 @ 0x2446ae0
|
|
void Gambit_fn_02446AE0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02446AE0: ; // 0x2446ae0
|
|
/* 02446AE0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02446AE0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446AE4 */ return;
|
|
}
|
|
|
|
// fn_02446AE8 @ 0x2446ae8
|
|
void Gambit_fn_02446AE8(CPUState* cpu) {
|
|
L_02446AE8: ; // 0x2446ae8
|
|
/* 02446AE8 */ return;
|
|
}
|
|
|
|
// fn_02446AEC @ 0x2446aec
|
|
void Gambit_fn_02446AEC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02446AEC: ; // 0x2446aec
|
|
/* 02446AEC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02446AEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446AF0 */ return;
|
|
}
|
|
|
|
// fn_02446AF4 @ 0x2446af4
|
|
void Gambit_fn_02446AF4(CPUState* cpu) {
|
|
L_02446AF4: ; // 0x2446af4
|
|
/* 02446AF4 */ return;
|
|
}
|
|
|
|
// fn_02446AF8 @ 0x2446af8
|
|
void Gambit_fn_02446AF8(CPUState* cpu) {
|
|
L_02446AF8: ; // 0x2446af8
|
|
/* 02446AF8 */ return;
|
|
}
|
|
|
|
// fn_02446AFC @ 0x2446afc
|
|
void Gambit_fn_02446AFC(CPUState* cpu) {
|
|
L_02446AFC: ; // 0x2446afc
|
|
/* 02446AFC */ return;
|
|
}
|
|
|
|
// fn_02446B00 @ 0x2446b00
|
|
void Gambit_fn_02446B00(CPUState* cpu) {
|
|
L_02446B00: ; // 0x2446b00
|
|
/* 02446B00 */ return;
|
|
}
|
|
|
|
// fn_02446B04 @ 0x2446b04
|
|
void Gambit_fn_02446B04(CPUState* cpu) {
|
|
L_02446B04: ; // 0x2446b04
|
|
/* 02446B04 */ return;
|
|
}
|
|
|
|
// fn_02446B08 @ 0x2446b08
|
|
void Gambit_fn_02446B08(CPUState* cpu) {
|
|
L_02446B08: ; // 0x2446b08
|
|
/* 02446B08 */ cpu->r[3] = 0x00000001u;
|
|
/* 02446B0C */ return;
|
|
}
|
|
|
|
// fn_02446B10 @ 0x2446b10
|
|
void Gambit_fn_02446B10(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02446B10: ; // 0x2446b10
|
|
/* 02446B10 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02446B10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446B14 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02446B14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02446B18 */ cpu->ctr = cpu->r[0];
|
|
/* 02446B1C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02446B20 @ 0x2446b20
|
|
void Gambit_fn_02446B20(CPUState* cpu) {
|
|
L_02446B20: ; // 0x2446b20
|
|
/* 02446B20 */ return;
|
|
}
|
|
|
|
// fn_02446B24 @ 0x2446b24
|
|
void Gambit_fn_02446B24(CPUState* cpu) {
|
|
L_02446B24: ; // 0x2446b24
|
|
/* 02446B24 */ cpu->r[3] = 0x00000000u;
|
|
/* 02446B28 */ return;
|
|
}
|
|
|
|
// fn_02446B2C @ 0x2446b2c
|
|
void Gambit_fn_02446B2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02446B2C: ; // 0x2446b2c
|
|
/* 02446B2C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02446B30 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02446B30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446B30 */ cpu->r[9] = _t0;
|
|
/* 02446B34 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02446B38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446B3C */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02446B40 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446B40 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02446B40 */ if (_t2) goto L_02446B44; else goto L_02446B58;
|
|
L_02446B44: ; // 0x2446b44
|
|
/* 02446B44 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02446B48 */ cpu->r[0] = 0x00000001u;
|
|
/* 02446B4C */ cpu->r[7] = cpu->r[7] + 0xFFFFD548u;
|
|
/* 02446B50 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02446B50 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02446B54 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02446B54 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02446B58: ; // 0x2446b58
|
|
/* 02446B58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02446B5C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446B5C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02446B5C */ if (_t6) goto L_02446B60; else goto L_02446B68;
|
|
L_02446B60: ; // 0x2446b60
|
|
/* 02446B60 */ cpu->r[3] = 0x00000001u;
|
|
/* 02446B64 */ return;
|
|
L_02446B68: ; // 0x2446b68
|
|
/* 02446B68 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02446B6C */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02446B6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02446B6C */ cpu->r[7] = _t7;
|
|
/* 02446B70 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02446B74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02446B78 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02446B7C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446B7C */ _t9 = _t8 & 0x00000001u;
|
|
/* 02446B7C */ if (_t9) goto L_02446B80; else goto L_02446B94;
|
|
L_02446B80: ; // 0x2446b80
|
|
/* 02446B80 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446B84 */ cpu->r[9] = 0x00000001u;
|
|
/* 02446B88 */ cpu->r[0] = cpu->r[0] + 0xFFFFD520u;
|
|
/* 02446B8C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02446B8C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02446B90 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02446B90 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02446B94: ; // 0x2446b94
|
|
/* 02446B94 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02446B98 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02446B9C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02446BA0 */ return;
|
|
}
|
|
|
|
// fn_02446BA4 @ 0x2446ba4
|
|
void Gambit_fn_02446BA4(CPUState* cpu) {
|
|
L_02446BA4: ; // 0x2446ba4
|
|
/* 02446BA4 */ return;
|
|
}
|
|
|
|
// fn_02446BA8 @ 0x2446ba8
|
|
void Gambit_fn_02446BA8(CPUState* cpu) {
|
|
L_02446BA8: ; // 0x2446ba8
|
|
/* 02446BA8 */ return;
|
|
}
|
|
|
|
// fn_02446BAC @ 0x2446bac
|
|
void Gambit_fn_02446BAC(CPUState* cpu) {
|
|
L_02446BAC: ; // 0x2446bac
|
|
/* 02446BAC */ cpu->r[3] = 0x00000000u;
|
|
/* 02446BB0 */ return;
|
|
}
|
|
|
|
// fn_02446BB4 @ 0x2446bb4
|
|
void Gambit_fn_02446BB4(CPUState* cpu) {
|
|
L_02446BB4: ; // 0x2446bb4
|
|
/* 02446BB4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02446BB8 */ return;
|
|
}
|
|
|
|
// fn_02446BBC @ 0x2446bbc
|
|
void Gambit_fn_02446BBC(CPUState* cpu) {
|
|
L_02446BBC: ; // 0x2446bbc
|
|
/* 02446BBC */ return;
|
|
}
|
|
|
|
// fn_02446BC0 @ 0x2446bc0
|
|
void Gambit_fn_02446BC0(CPUState* cpu) {
|
|
L_02446BC0: ; // 0x2446bc0
|
|
/* 02446BC0 */ return;
|
|
}
|
|
|
|
// fn_02446BC4 @ 0x2446bc4
|
|
void Gambit_fn_02446BC4(CPUState* cpu) {
|
|
L_02446BC4: ; // 0x2446bc4
|
|
/* 02446BC4 */ return;
|
|
}
|
|
|
|
// fn_02446BC8 @ 0x2446bc8
|
|
void Gambit_fn_02446BC8(CPUState* cpu) {
|
|
L_02446BC8: ; // 0x2446bc8
|
|
/* 02446BC8 */ return;
|
|
}
|
|
|
|
// fn_02446BCC @ 0x2446bcc
|
|
void Gambit_fn_02446BCC(CPUState* cpu) {
|
|
L_02446BCC: ; // 0x2446bcc
|
|
/* 02446BCC */ return;
|
|
}
|
|
|
|
// fn_02446BD0 @ 0x2446bd0
|
|
void Gambit_fn_02446BD0(CPUState* cpu) {
|
|
L_02446BD0: ; // 0x2446bd0
|
|
/* 02446BD0 */ return;
|
|
}
|
|
|
|
// fn_02446BD4 @ 0x2446bd4
|
|
void Gambit_fn_02446BD4(CPUState* cpu) {
|
|
L_02446BD4: ; // 0x2446bd4
|
|
/* 02446BD4 */ return;
|
|
}
|
|
|
|
// fn_02446BD8 @ 0x2446bd8
|
|
void Gambit_fn_02446BD8(CPUState* cpu) {
|
|
L_02446BD8: ; // 0x2446bd8
|
|
/* 02446BD8 */ return;
|
|
}
|
|
|
|
// fn_02446BDC @ 0x2446bdc
|
|
void Gambit_fn_02446BDC(CPUState* cpu) {
|
|
L_02446BDC: ; // 0x2446bdc
|
|
/* 02446BDC */ return;
|
|
}
|
|
|
|
// fn_02446BE0 @ 0x2446be0
|
|
void Gambit_fn_02446BE0(CPUState* cpu) {
|
|
L_02446BE0: ; // 0x2446be0
|
|
/* 02446BE0 */ return;
|
|
}
|
|
|
|
// fn_02446BE4 @ 0x2446be4
|
|
void Gambit_fn_02446BE4(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_02446BE4: ; // 0x2446be4
|
|
/* 02446BE4 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02446BE8 */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_02446BEC @ 0x2446bec
|
|
void Gambit_fn_02446BEC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02446BEC: ; // 0x2446bec
|
|
/* 02446BEC */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02446BF0 */ goto L_02446C94;
|
|
L_02446C94: ; // 0x2446c94
|
|
/* 02446C94 */ cpu->r[0] = cpu->lr;
|
|
/* 02446C98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446C98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446C98 */ cpu->r[1] = _t0;
|
|
/* 02446C9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446C9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446CA0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02446CA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02446CA4 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446CA8 */ cpu->r[31] = cpu->r[4];
|
|
/* 02446CAC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02446CAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02446CB0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446CB0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02446CB0 */ if (_t5) goto L_02446D20; else goto L_02446CB4;
|
|
L_02446CB4: ; // 0x2446cb4
|
|
/* 02446CB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446CB8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446CBC */ cpu->r[0] = cpu->r[0] + 0xFFFFD85Cu;
|
|
/* 02446CC0 */ cpu->r[12] = cpu->r[12] + 0xFFFFDA5Cu;
|
|
/* 02446CC4 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446CC4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02446CC8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446CCC */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446CCC */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02446CD0 */ cpu->r[11] = cpu->r[11] + 0xFFFFD86Cu;
|
|
/* 02446CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446CD8 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446CD8 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02446CDC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446CDC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02446CDC */ if (_t10) goto L_02446D10; else goto L_02446CE0;
|
|
L_02446CE0: ; // 0x2446ce0
|
|
/* 02446CE0 */ cpu->r[10] = 0x10010000u;
|
|
/* 02446CE4 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446CE8 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02446CEC */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02446CF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446CF4 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446CF4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02446CF8 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446CFC */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446CFC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02446D00 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02446D04 */ cpu->r[4] = 0x00000000u;
|
|
/* 02446D08 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446D08 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02446D0C */ Gambit_fn_02068798(cpu);
|
|
L_02446D10: ; // 0x2446d10
|
|
/* 02446D10 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02446D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446D14 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446D14 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02446D14 */ if (_t15) goto L_02446D20; else goto L_02446D18;
|
|
L_02446D18: ; // 0x2446d18
|
|
/* 02446D18 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446D1C */ Gambit_fn_02801BB0(cpu);
|
|
L_02446D20: ; // 0x2446d20
|
|
/* 02446D20 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02446D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446D24 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02446D24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446D28 */ cpu->lr = cpu->r[0];
|
|
/* 02446D2C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446D2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446D30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446D34 */ return;
|
|
}
|
|
|
|
// fn_02446BF4 @ 0x2446bf4
|
|
void Gambit_fn_02446BF4(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_02446BF4: ; // 0x2446bf4
|
|
/* 02446BF4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02446BF8 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02446BFC @ 0x2446bfc
|
|
void Gambit_fn_02446BFC(CPUState* cpu) {
|
|
L_02446BFC: ; // 0x2446bfc
|
|
/* 02446BFC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02446C00 */ goto L_02446D38;
|
|
L_02446D38: ; // 0x2446d38
|
|
/* 02446D38 */ return;
|
|
}
|
|
|
|
// fn_02446C04 @ 0x2446c04
|
|
void Gambit_fn_02446C04(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02446C04: ; // 0x2446c04
|
|
/* 02446C04 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02446C08 */ goto L_02446D3C;
|
|
L_02446D3C: ; // 0x2446d3c
|
|
/* 02446D3C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02446D3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446D40 */ return;
|
|
}
|
|
|
|
// fn_02446C0C @ 0x2446c0c
|
|
void Gambit_fn_02446C0C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02446C0C: ; // 0x2446c0c
|
|
/* 02446C0C */ cpu->r[0] = cpu->lr;
|
|
/* 02446C10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446C10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446C10 */ cpu->r[1] = _t0;
|
|
/* 02446C14 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446C14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446C18 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446C18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02446C1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02446C1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446C20 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446C20 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02446C20 */ if (_t4) goto L_02446C24; else goto L_02446C34;
|
|
L_02446C24: ; // 0x2446c24
|
|
/* 02446C24 */ cpu->r[3] = 0x0000021Cu;
|
|
/* 02446C28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02446C2C */ cpu->r[31] = cpu->r[3];
|
|
/* 02446C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02446C30 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446C30 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02446C30 */ if (_t6) goto L_02446C7C; else goto L_02446C34;
|
|
L_02446C34: ; // 0x2446c34
|
|
/* 02446C34 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02446C38 */ cpu->r[5] = 0x00000000u;
|
|
/* 02446C3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02446C40 */ cpu->r[4] = cpu->r[4] + 0xFFFFDAD4u;
|
|
/* 02446C44 */ cpu->r[6] = cpu->r[5];
|
|
/* 02446C48 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02446C4C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446C50 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446C54 */ cpu->r[12] = cpu->r[12] + 0xFFFFD85Cu;
|
|
/* 02446C58 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446C5C */ cpu->r[11] = cpu->r[11] + 0xFFFFD87Cu;
|
|
/* 02446C60 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02446C60 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02446C64 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446C68 */ cpu->r[0] = cpu->r[0] + 0xFFFFD86Cu;
|
|
/* 02446C6C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02446C6C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02446C70 */ cpu->r[12] = cpu->r[12] + 0xFFFFDA5Cu;
|
|
/* 02446C74 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02446C74 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02446C78 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02446C78 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
L_02446C7C: ; // 0x2446c7c
|
|
/* 02446C7C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02446C7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02446C80 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446C84 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446C84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02446C88 */ cpu->lr = cpu->r[0];
|
|
/* 02446C8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446C90 */ return;
|
|
}
|
|
|
|
// fn_02446C10 @ 0x2446c10
|
|
void Gambit_fn_02446C10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02446C10: ; // 0x2446c10
|
|
/* 02446C10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446C10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446C10 */ cpu->r[1] = _t0;
|
|
/* 02446C14 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446C14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446C18 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446C18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02446C1C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02446C1C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446C20 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446C20 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02446C20 */ if (_t4) goto L_02446C24; else goto L_02446C34;
|
|
L_02446C24: ; // 0x2446c24
|
|
/* 02446C24 */ cpu->r[3] = 0x0000021Cu;
|
|
/* 02446C28 */ Gambit_fn_02801A78(cpu);
|
|
/* 02446C2C */ cpu->r[31] = cpu->r[3];
|
|
/* 02446C2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02446C30 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446C30 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02446C30 */ if (_t6) goto L_02446C7C; else goto L_02446C34;
|
|
L_02446C34: ; // 0x2446c34
|
|
/* 02446C34 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02446C38 */ cpu->r[5] = 0x00000000u;
|
|
/* 02446C3C */ cpu->r[3] = cpu->r[31];
|
|
/* 02446C40 */ cpu->r[4] = cpu->r[4] + 0xFFFFDAD4u;
|
|
/* 02446C44 */ cpu->r[6] = cpu->r[5];
|
|
/* 02446C48 */ Gambit_fn_020B6F60(cpu);
|
|
/* 02446C4C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446C50 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446C54 */ cpu->r[12] = cpu->r[12] + 0xFFFFD85Cu;
|
|
/* 02446C58 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446C5C */ cpu->r[11] = cpu->r[11] + 0xFFFFD87Cu;
|
|
/* 02446C60 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02446C60 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02446C64 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446C68 */ cpu->r[0] = cpu->r[0] + 0xFFFFD86Cu;
|
|
/* 02446C6C */ _t8 = cpu->r[31] + 0x00000000u;
|
|
/* 02446C6C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02446C70 */ cpu->r[12] = cpu->r[12] + 0xFFFFDA5Cu;
|
|
/* 02446C74 */ _t9 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02446C74 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02446C78 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02446C78 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
L_02446C7C: ; // 0x2446c7c
|
|
/* 02446C7C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02446C7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02446C80 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446C84 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446C84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02446C88 */ cpu->lr = cpu->r[0];
|
|
/* 02446C8C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446C90 */ return;
|
|
}
|
|
|
|
// fn_02446C94 @ 0x2446c94
|
|
void Gambit_fn_02446C94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02446C94: ; // 0x2446c94
|
|
/* 02446C94 */ cpu->r[0] = cpu->lr;
|
|
/* 02446C98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446C98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446C98 */ cpu->r[1] = _t0;
|
|
/* 02446C9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446C9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446CA0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02446CA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02446CA4 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446CA8 */ cpu->r[31] = cpu->r[4];
|
|
/* 02446CAC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02446CAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02446CB0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446CB0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02446CB0 */ if (_t5) goto L_02446D20; else goto L_02446CB4;
|
|
L_02446CB4: ; // 0x2446cb4
|
|
/* 02446CB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446CB8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446CBC */ cpu->r[0] = cpu->r[0] + 0xFFFFD85Cu;
|
|
/* 02446CC0 */ cpu->r[12] = cpu->r[12] + 0xFFFFDA5Cu;
|
|
/* 02446CC4 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446CC4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02446CC8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446CCC */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446CCC */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02446CD0 */ cpu->r[11] = cpu->r[11] + 0xFFFFD86Cu;
|
|
/* 02446CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446CD8 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446CD8 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02446CDC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446CDC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02446CDC */ if (_t10) goto L_02446D10; else goto L_02446CE0;
|
|
L_02446CE0: ; // 0x2446ce0
|
|
/* 02446CE0 */ cpu->r[10] = 0x10010000u;
|
|
/* 02446CE4 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446CE8 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02446CEC */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02446CF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446CF4 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446CF4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02446CF8 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446CFC */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446CFC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02446D00 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02446D04 */ cpu->r[4] = 0x00000000u;
|
|
/* 02446D08 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446D08 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02446D0C */ Gambit_fn_02068798(cpu);
|
|
L_02446D10: ; // 0x2446d10
|
|
/* 02446D10 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02446D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446D14 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446D14 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02446D14 */ if (_t15) goto L_02446D20; else goto L_02446D18;
|
|
L_02446D18: ; // 0x2446d18
|
|
/* 02446D18 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446D1C */ Gambit_fn_02801BB0(cpu);
|
|
L_02446D20: ; // 0x2446d20
|
|
/* 02446D20 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02446D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446D24 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02446D24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446D28 */ cpu->lr = cpu->r[0];
|
|
/* 02446D2C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446D2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446D30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446D34 */ return;
|
|
}
|
|
|
|
// fn_02446C98 @ 0x2446c98
|
|
void Gambit_fn_02446C98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02446C98: ; // 0x2446c98
|
|
/* 02446C98 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446C98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446C98 */ cpu->r[1] = _t0;
|
|
/* 02446C9C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446C9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446CA0 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02446CA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02446CA4 */ cpu->r[30] = cpu->r[3];
|
|
/* 02446CA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446CA8 */ cpu->r[31] = cpu->r[4];
|
|
/* 02446CAC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02446CAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02446CB0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446CB0 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02446CB0 */ if (_t5) goto L_02446D20; else goto L_02446CB4;
|
|
L_02446CB4: ; // 0x2446cb4
|
|
/* 02446CB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446CB8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446CBC */ cpu->r[0] = cpu->r[0] + 0xFFFFD85Cu;
|
|
/* 02446CC0 */ cpu->r[12] = cpu->r[12] + 0xFFFFDA5Cu;
|
|
/* 02446CC4 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446CC4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02446CC8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446CCC */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446CCC */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02446CD0 */ cpu->r[11] = cpu->r[11] + 0xFFFFD86Cu;
|
|
/* 02446CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02446CD8 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446CD8 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02446CDC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446CDC */ _t10 = _t9 & 0x00000001u;
|
|
/* 02446CDC */ if (_t10) goto L_02446D10; else goto L_02446CE0;
|
|
L_02446CE0: ; // 0x2446ce0
|
|
/* 02446CE0 */ cpu->r[10] = 0x10010000u;
|
|
/* 02446CE4 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446CE8 */ cpu->r[10] = cpu->r[10] + 0x000048FCu;
|
|
/* 02446CEC */ cpu->r[0] = cpu->r[0] + 0x000048ECu;
|
|
/* 02446CF0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446CF4 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02446CF4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02446CF8 */ cpu->r[0] = 0x10010000u;
|
|
/* 02446CFC */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02446CFC */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02446D00 */ cpu->r[0] = cpu->r[0] + 0x0000490Cu;
|
|
/* 02446D04 */ cpu->r[4] = 0x00000000u;
|
|
/* 02446D08 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02446D08 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02446D0C */ Gambit_fn_02068798(cpu);
|
|
L_02446D10: ; // 0x2446d10
|
|
/* 02446D10 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02446D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446D14 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446D14 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02446D14 */ if (_t15) goto L_02446D20; else goto L_02446D18;
|
|
L_02446D18: ; // 0x2446d18
|
|
/* 02446D18 */ cpu->r[3] = cpu->r[30];
|
|
/* 02446D1C */ Gambit_fn_02801BB0(cpu);
|
|
L_02446D20: ; // 0x2446d20
|
|
/* 02446D20 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02446D20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446D24 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02446D24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446D28 */ cpu->lr = cpu->r[0];
|
|
/* 02446D2C */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446D2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02446D30 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446D34 */ return;
|
|
}
|
|
|
|
// fn_02446D38 @ 0x2446d38
|
|
void Gambit_fn_02446D38(CPUState* cpu) {
|
|
L_02446D38: ; // 0x2446d38
|
|
/* 02446D38 */ return;
|
|
}
|
|
|
|
// fn_02446D3C @ 0x2446d3c
|
|
void Gambit_fn_02446D3C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02446D3C: ; // 0x2446d3c
|
|
/* 02446D3C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02446D3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446D40 */ return;
|
|
}
|
|
|
|
// fn_02446D44 @ 0x2446d44
|
|
void Gambit_fn_02446D44(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02446D44: ; // 0x2446d44
|
|
/* 02446D44 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02446D44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446D48 */ return;
|
|
}
|
|
|
|
// fn_02446D4C @ 0x2446d4c
|
|
void Gambit_fn_02446D4C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02446D4C: ; // 0x2446d4c
|
|
/* 02446D4C */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02446D4C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446D50 */ return;
|
|
}
|
|
|
|
// fn_02446D54 @ 0x2446d54
|
|
void Gambit_fn_02446D54(CPUState* cpu) {
|
|
L_02446D54: ; // 0x2446d54
|
|
/* 02446D54 */ return;
|
|
}
|
|
|
|
// fn_02446D58 @ 0x2446d58
|
|
void Gambit_fn_02446D58(CPUState* cpu) {
|
|
L_02446D58: ; // 0x2446d58
|
|
/* 02446D58 */ return;
|
|
}
|
|
|
|
// fn_02446D5C @ 0x2446d5c
|
|
void Gambit_fn_02446D5C(CPUState* cpu) {
|
|
L_02446D5C: ; // 0x2446d5c
|
|
/* 02446D5C */ return;
|
|
}
|
|
|
|
// fn_02446D60 @ 0x2446d60
|
|
void Gambit_fn_02446D60(CPUState* cpu) {
|
|
L_02446D60: ; // 0x2446d60
|
|
/* 02446D60 */ return;
|
|
}
|
|
|
|
// fn_02446D64 @ 0x2446d64
|
|
void Gambit_fn_02446D64(CPUState* cpu) {
|
|
L_02446D64: ; // 0x2446d64
|
|
/* 02446D64 */ return;
|
|
}
|
|
|
|
// fn_02446D68 @ 0x2446d68
|
|
void Gambit_fn_02446D68(CPUState* cpu) {
|
|
L_02446D68: ; // 0x2446d68
|
|
/* 02446D68 */ cpu->r[3] = 0x00000001u;
|
|
/* 02446D6C */ return;
|
|
}
|
|
|
|
// fn_02446D70 @ 0x2446d70
|
|
void Gambit_fn_02446D70(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02446D70: ; // 0x2446d70
|
|
/* 02446D70 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02446D70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446D74 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02446D74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02446D78 */ cpu->ctr = cpu->r[0];
|
|
/* 02446D7C */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02446D80 @ 0x2446d80
|
|
void Gambit_fn_02446D80(CPUState* cpu) {
|
|
L_02446D80: ; // 0x2446d80
|
|
/* 02446D80 */ return;
|
|
}
|
|
|
|
// fn_02446D84 @ 0x2446d84
|
|
void Gambit_fn_02446D84(CPUState* cpu) {
|
|
L_02446D84: ; // 0x2446d84
|
|
/* 02446D84 */ cpu->r[3] = 0x00000000u;
|
|
/* 02446D88 */ return;
|
|
}
|
|
|
|
// fn_02446D8C @ 0x2446d8c
|
|
void Gambit_fn_02446D8C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02446D8C: ; // 0x2446d8c
|
|
/* 02446D8C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02446D90 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02446D90 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02446D90 */ cpu->r[9] = _t0;
|
|
/* 02446D94 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02446D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02446D9C */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02446DA0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446DA0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02446DA0 */ if (_t2) goto L_02446DA4; else goto L_02446DB8;
|
|
L_02446DA4: ; // 0x2446da4
|
|
/* 02446DA4 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02446DA8 */ cpu->r[0] = 0x00000001u;
|
|
/* 02446DAC */ cpu->r[7] = cpu->r[7] + 0xFFFFD84Cu;
|
|
/* 02446DB0 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02446DB0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02446DB4 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02446DB4 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02446DB8: ; // 0x2446db8
|
|
/* 02446DB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02446DBC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446DBC */ _t6 = _t5 & 0x00000001u;
|
|
/* 02446DBC */ if (_t6) goto L_02446DC0; else goto L_02446DC8;
|
|
L_02446DC0: ; // 0x2446dc0
|
|
/* 02446DC0 */ cpu->r[3] = 0x00000001u;
|
|
/* 02446DC4 */ return;
|
|
L_02446DC8: ; // 0x2446dc8
|
|
/* 02446DC8 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02446DCC */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02446DCC */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02446DCC */ cpu->r[7] = _t7;
|
|
/* 02446DD0 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02446DD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02446DD8 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02446DDC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446DDC */ _t9 = _t8 & 0x00000001u;
|
|
/* 02446DDC */ if (_t9) goto L_02446DE0; else goto L_02446DF4;
|
|
L_02446DE0: ; // 0x2446de0
|
|
/* 02446DE0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446DE4 */ cpu->r[9] = 0x00000001u;
|
|
/* 02446DE8 */ cpu->r[0] = cpu->r[0] + 0xFFFFD83Cu;
|
|
/* 02446DEC */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02446DEC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02446DF0 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02446DF0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02446DF4: ; // 0x2446df4
|
|
/* 02446DF4 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02446DF8 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02446DFC */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02446E00 */ return;
|
|
}
|
|
|
|
// fn_02446E04 @ 0x2446e04
|
|
void Gambit_fn_02446E04(CPUState* cpu) {
|
|
L_02446E04: ; // 0x2446e04
|
|
/* 02446E04 */ return;
|
|
}
|
|
|
|
// fn_02446E08 @ 0x2446e08
|
|
void Gambit_fn_02446E08(CPUState* cpu) {
|
|
L_02446E08: ; // 0x2446e08
|
|
/* 02446E08 */ return;
|
|
}
|
|
|
|
// fn_02446E0C @ 0x2446e0c
|
|
void Gambit_fn_02446E0C(CPUState* cpu) {
|
|
L_02446E0C: ; // 0x2446e0c
|
|
/* 02446E0C */ return;
|
|
}
|
|
|
|
// fn_02446E10 @ 0x2446e10
|
|
void Gambit_fn_02446E10(CPUState* cpu) {
|
|
L_02446E10: ; // 0x2446e10
|
|
/* 02446E10 */ return;
|
|
}
|
|
|
|
// fn_02446E14 @ 0x2446e14
|
|
void Gambit_fn_02446E14(CPUState* cpu) {
|
|
L_02446E14: ; // 0x2446e14
|
|
/* 02446E14 */ cpu->r[3] = 0x00000000u;
|
|
/* 02446E18 */ return;
|
|
}
|
|
|
|
// fn_02446E1C @ 0x2446e1c
|
|
void Gambit_fn_02446E1C(CPUState* cpu) {
|
|
L_02446E1C: ; // 0x2446e1c
|
|
/* 02446E1C */ cpu->r[3] = 0x00000000u;
|
|
/* 02446E20 */ return;
|
|
}
|
|
|
|
// fn_02446E24 @ 0x2446e24
|
|
void Gambit_fn_02446E24(CPUState* cpu) {
|
|
L_02446E24: ; // 0x2446e24
|
|
/* 02446E24 */ return;
|
|
}
|
|
|
|
// fn_02446E28 @ 0x2446e28
|
|
void Gambit_fn_02446E28(CPUState* cpu) {
|
|
L_02446E28: ; // 0x2446e28
|
|
/* 02446E28 */ return;
|
|
}
|
|
|
|
// fn_02446E2C @ 0x2446e2c
|
|
void Gambit_fn_02446E2C(CPUState* cpu) {
|
|
L_02446E2C: ; // 0x2446e2c
|
|
/* 02446E2C */ return;
|
|
}
|
|
|
|
// fn_02446E30 @ 0x2446e30
|
|
void Gambit_fn_02446E30(CPUState* cpu) {
|
|
L_02446E30: ; // 0x2446e30
|
|
/* 02446E30 */ return;
|
|
}
|
|
|
|
// fn_02446E34 @ 0x2446e34
|
|
void Gambit_fn_02446E34(CPUState* cpu) {
|
|
L_02446E34: ; // 0x2446e34
|
|
/* 02446E34 */ return;
|
|
}
|
|
|
|
// fn_02446E38 @ 0x2446e38
|
|
void Gambit_fn_02446E38(CPUState* cpu) {
|
|
L_02446E38: ; // 0x2446e38
|
|
/* 02446E38 */ return;
|
|
}
|
|
|
|
// fn_02446E3C @ 0x2446e3c
|
|
void Gambit_fn_02446E3C(CPUState* cpu) {
|
|
L_02446E3C: ; // 0x2446e3c
|
|
/* 02446E3C */ return;
|
|
}
|
|
|
|
// fn_02446E40 @ 0x2446e40
|
|
void Gambit_fn_02446E40(CPUState* cpu) {
|
|
L_02446E40: ; // 0x2446e40
|
|
/* 02446E40 */ return;
|
|
}
|
|
|
|
// fn_02446E44 @ 0x2446e44
|
|
void Gambit_fn_02446E44(CPUState* cpu) {
|
|
L_02446E44: ; // 0x2446e44
|
|
/* 02446E44 */ return;
|
|
}
|
|
|
|
// fn_02446E48 @ 0x2446e48
|
|
void Gambit_fn_02446E48(CPUState* cpu) {
|
|
L_02446E48: ; // 0x2446e48
|
|
/* 02446E48 */ return;
|
|
}
|
|
|
|
// fn_02446E4C @ 0x2446e4c
|
|
void Gambit_fn_02446E4C(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_02446E4C: ; // 0x2446e4c
|
|
/* 02446E4C */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02446E50 */ goto L_0200896C;
|
|
}
|
|
|
|
// fn_02446E54 @ 0x2446e54
|
|
void Gambit_fn_02446E54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02446E54: ; // 0x2446e54
|
|
/* 02446E54 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02446E58 */ goto L_02447550;
|
|
L_02447550: ; // 0x2447550
|
|
/* 02447550 */ cpu->r[0] = cpu->lr;
|
|
/* 02447554 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447554 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447554 */ cpu->r[1] = _t0;
|
|
/* 02447558 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447558 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244755C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0244755C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02447560 */ cpu->r[30] = cpu->r[3];
|
|
/* 02447560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447564 */ cpu->r[31] = cpu->r[4];
|
|
/* 02447568 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02447568 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244756C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244756C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244756C */ if (_t5) goto L_024475DC; else goto L_02447570;
|
|
L_02447570: ; // 0x2447570
|
|
/* 02447570 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447574 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447578 */ cpu->r[0] = cpu->r[0] + 0xFFFFDE48u;
|
|
/* 0244757C */ cpu->r[12] = cpu->r[12] + 0xFFFFDE68u;
|
|
/* 02447580 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02447580 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447584 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447588 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02447588 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0244758C */ cpu->r[11] = cpu->r[11] + 0xFFFFDE58u;
|
|
/* 02447590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447594 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02447594 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447598 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447598 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02447598 */ if (_t10) goto L_024475CC; else goto L_0244759C;
|
|
L_0244759C: ; // 0x244759c
|
|
/* 0244759C */ cpu->r[10] = 0x10010000u;
|
|
/* 024475A0 */ cpu->r[0] = 0x10010000u;
|
|
/* 024475A4 */ cpu->r[10] = cpu->r[10] + 0x00004564u;
|
|
/* 024475A8 */ cpu->r[0] = cpu->r[0] + 0x00004554u;
|
|
/* 024475AC */ cpu->r[3] = cpu->r[30];
|
|
/* 024475B0 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024475B0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024475B4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024475B8 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024475B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024475BC */ cpu->r[0] = cpu->r[0] + 0x00004574u;
|
|
/* 024475C0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024475C4 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024475C4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024475C8 */ Gambit_fn_02068798(cpu);
|
|
L_024475CC: ; // 0x24475cc
|
|
/* 024475CC */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024475CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024475D0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024475D0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024475D0 */ if (_t15) goto L_024475DC; else goto L_024475D4;
|
|
L_024475D4: ; // 0x24475d4
|
|
/* 024475D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024475D8 */ Gambit_fn_02801BB0(cpu);
|
|
L_024475DC: ; // 0x24475dc
|
|
/* 024475DC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024475DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024475E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024475E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024475E4 */ cpu->lr = cpu->r[0];
|
|
/* 024475E8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024475E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024475EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024475F0 */ return;
|
|
}
|
|
|
|
// fn_02446E5C @ 0x2446e5c
|
|
void Gambit_fn_02446E5C(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_02446E5C: ; // 0x2446e5c
|
|
/* 02446E5C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02446E60 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02446E64 @ 0x2446e64
|
|
void Gambit_fn_02446E64(CPUState* cpu) {
|
|
L_02446E64: ; // 0x2446e64
|
|
/* 02446E64 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02446E68 */ goto L_024475F4;
|
|
L_024475F4: ; // 0x24475f4
|
|
/* 024475F4 */ return;
|
|
}
|
|
|
|
// fn_02446E6C @ 0x2446e6c
|
|
void Gambit_fn_02446E6C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02446E6C: ; // 0x2446e6c
|
|
/* 02446E6C */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02446E70 */ goto L_024475F8;
|
|
L_024475F8: ; // 0x24475f8
|
|
/* 024475F8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024475F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024475FC */ return;
|
|
}
|
|
|
|
// fn_02446E74 @ 0x2446e74
|
|
void Gambit_fn_02446E74(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02446E74: ; // 0x2446e74
|
|
/* 02446E74 */ cpu->r[0] = cpu->lr;
|
|
/* 02446E78 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446E78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446E78 */ cpu->r[1] = _t0;
|
|
/* 02446E7C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446E7C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446E80 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02446E84 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02446E84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446E88 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446E88 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02446E88 */ if (_t4) goto L_02446E8C; else goto L_02446E9C;
|
|
L_02446E8C: ; // 0x2446e8c
|
|
/* 02446E8C */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02446E90 */ Gambit_fn_02801A78(cpu);
|
|
/* 02446E94 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02446E98 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446E98 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02446E98 */ if (_t6) goto L_02446EF8; else goto L_02446E9C;
|
|
L_02446E9C: ; // 0x2446e9c
|
|
/* 02446E9C */ cpu->r[4] = 0x100A0000u;
|
|
/* 02446EA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446EA4 */ cpu->r[5] = 0x00000003u;
|
|
/* 02446EA8 */ cpu->r[4] = cpu->r[4] + 0xFFFFDB9Cu;
|
|
/* 02446EAC */ Gambit_fn_020B5C38(cpu);
|
|
/* 02446EB0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446EB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446EB8 */ cpu->r[11] = cpu->r[11] + 0xFFFFDC78u;
|
|
/* 02446EBC */ cpu->r[0] = cpu->r[0] + 0xFFFFDE58u;
|
|
/* 02446EC0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446EC4 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02446EC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02446EC8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446ECC */ cpu->r[12] = cpu->r[12] + 0xFFFFDE48u;
|
|
/* 02446ED0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02446ED0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02446ED4 */ cpu->r[11] = cpu->r[11] + 0xFFFFDE68u;
|
|
/* 02446ED8 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02446ED8 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02446EDC */ cpu->r[12] = 0x00000000u;
|
|
/* 02446EE0 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02446EE0 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02446EE4 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446EE4 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02446EE8 */ _t12 = cpu->r[31] + 0x00000218u;
|
|
/* 02446EE8 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02446EEC */ _t13 = cpu->r[31] + 0x00000228u;
|
|
/* 02446EEC */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[12]);
|
|
/* 02446EF0 */ _t14 = cpu->r[31] + 0x00000224u;
|
|
/* 02446EF0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 02446EF4 */ _t15 = cpu->r[31] + 0x00000220u;
|
|
/* 02446EF4 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
L_02446EF8: ; // 0x2446ef8
|
|
/* 02446EF8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02446EF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446EFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02446F00 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446F00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446F04 */ cpu->lr = cpu->r[0];
|
|
/* 02446F08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446F0C */ return;
|
|
}
|
|
|
|
// fn_02446E78 @ 0x2446e78
|
|
void Gambit_fn_02446E78(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02446E78: ; // 0x2446e78
|
|
/* 02446E78 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446E78 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446E78 */ cpu->r[1] = _t0;
|
|
/* 02446E7C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446E7C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446E80 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02446E84 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02446E84 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446E88 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446E88 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02446E88 */ if (_t4) goto L_02446E8C; else goto L_02446E9C;
|
|
L_02446E8C: ; // 0x2446e8c
|
|
/* 02446E8C */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02446E90 */ Gambit_fn_02801A78(cpu);
|
|
/* 02446E94 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02446E98 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446E98 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02446E98 */ if (_t6) goto L_02446EF8; else goto L_02446E9C;
|
|
L_02446E9C: ; // 0x2446e9c
|
|
/* 02446E9C */ cpu->r[4] = 0x100A0000u;
|
|
/* 02446EA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446EA4 */ cpu->r[5] = 0x00000003u;
|
|
/* 02446EA8 */ cpu->r[4] = cpu->r[4] + 0xFFFFDB9Cu;
|
|
/* 02446EAC */ Gambit_fn_020B5C38(cpu);
|
|
/* 02446EB0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446EB4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446EB8 */ cpu->r[11] = cpu->r[11] + 0xFFFFDC78u;
|
|
/* 02446EBC */ cpu->r[0] = cpu->r[0] + 0xFFFFDE58u;
|
|
/* 02446EC0 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446EC4 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02446EC4 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02446EC8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446ECC */ cpu->r[12] = cpu->r[12] + 0xFFFFDE48u;
|
|
/* 02446ED0 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02446ED0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02446ED4 */ cpu->r[11] = cpu->r[11] + 0xFFFFDE68u;
|
|
/* 02446ED8 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02446ED8 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 02446EDC */ cpu->r[12] = 0x00000000u;
|
|
/* 02446EE0 */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02446EE0 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02446EE4 */ _t11 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446EE4 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02446EE8 */ _t12 = cpu->r[31] + 0x00000218u;
|
|
/* 02446EE8 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]);
|
|
/* 02446EEC */ _t13 = cpu->r[31] + 0x00000228u;
|
|
/* 02446EEC */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[12]);
|
|
/* 02446EF0 */ _t14 = cpu->r[31] + 0x00000224u;
|
|
/* 02446EF0 */ rbrew_write32(cpu->mem, _t14, cpu->r[12]);
|
|
/* 02446EF4 */ _t15 = cpu->r[31] + 0x00000220u;
|
|
/* 02446EF4 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]);
|
|
L_02446EF8: ; // 0x2446ef8
|
|
/* 02446EF8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02446EF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02446EFC */ cpu->r[3] = cpu->r[31];
|
|
/* 02446F00 */ _t17 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446F00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02446F04 */ cpu->lr = cpu->r[0];
|
|
/* 02446F08 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446F0C */ return;
|
|
}
|
|
|
|
// fn_02446F10 @ 0x2446f10
|
|
void Gambit_fn_02446F10(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02446F10: ; // 0x2446f10
|
|
/* 02446F10 */ cpu->r[0] = cpu->lr;
|
|
/* 02446F14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446F14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446F14 */ cpu->r[1] = _t0;
|
|
/* 02446F18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446F18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446F1C */ cpu->r[31] = cpu->r[3];
|
|
/* 02446F20 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02446F20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446F24 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446F24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02446F28 */ Gambit_fn_020E892C(cpu);
|
|
/* 02446F2C */ _t4 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446F2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02446F30 */ Gambit_fn_020E8B70(cpu);
|
|
/* 02446F34 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02446F34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02446F38 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446F38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02446F3C */ cpu->lr = cpu->r[0];
|
|
/* 02446F40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446F44 */ return;
|
|
}
|
|
|
|
// fn_02446F14 @ 0x2446f14
|
|
void Gambit_fn_02446F14(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_02446F14: ; // 0x2446f14
|
|
/* 02446F14 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02446F14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446F14 */ cpu->r[1] = _t0;
|
|
/* 02446F18 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446F18 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446F1C */ cpu->r[31] = cpu->r[3];
|
|
/* 02446F20 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02446F20 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446F24 */ _t3 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446F24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02446F28 */ Gambit_fn_020E892C(cpu);
|
|
/* 02446F2C */ _t4 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02446F2C */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02446F30 */ Gambit_fn_020E8B70(cpu);
|
|
/* 02446F34 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02446F34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02446F38 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446F38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02446F3C */ cpu->lr = cpu->r[0];
|
|
/* 02446F40 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02446F44 */ return;
|
|
}
|
|
|
|
// fn_02446F54 @ 0x2446f54
|
|
void Gambit_fn_02446F54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02446F54: ; // 0x2446f54
|
|
/* 02446F54 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02446F54 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446F54 */ cpu->r[1] = _t0;
|
|
/* 02446F58 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02446F58 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446F5C */ cpu->r[31] = cpu->r[3];
|
|
/* 02446F60 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02446F60 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446F64 */ _t3 = cpu->r[31] + 0x00000218u;
|
|
/* 02446F64 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02446F68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02446F6C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446F6C */ _t5 = _t4 & 0x00000001u;
|
|
/* 02446F6C */ if (_t5) goto L_02446F74; else goto L_02446F70;
|
|
L_02446F70: ; // 0x2446f70
|
|
/* 02446F70 */ Gambit_fn_020A8300(cpu);
|
|
L_02446F74: ; // 0x2446f74
|
|
/* 02446F74 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446F78 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446F7C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02446F80 */ cpu->r[0] = cpu->r[0] + 0xFFFFDAF4u;
|
|
/* 02446F84 */ _t6 = cpu->r[12] + 0xFFFFDBB4u;
|
|
/* 02446F84 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02446F88 */ cpu->r[4] = 0x00000000u;
|
|
/* 02446F8C */ cpu->r[11] = cpu->r[11] + 0xFFFFDBB8u;
|
|
/* 02446F90 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02446F90 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02446F94 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02446F98 */ cpu->r[3] = cpu->r[31];
|
|
/* 02446F9C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02446F9C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02446FA0 */ Gambit_fn_027ED914(cpu);
|
|
/* 02446FA4 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02446FA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02446FA8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02446FA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02446FAC */ cpu->lr = cpu->r[0];
|
|
/* 02446FB0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02446FB4 */ return;
|
|
}
|
|
|
|
// fn_02446FBC @ 0x2446fbc
|
|
void Gambit_fn_02446FBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02446FBC: ; // 0x2446fbc
|
|
/* 02446FBC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02446FBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02446FBC */ cpu->r[1] = _t0;
|
|
/* 02446FC0 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02446FC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02446FC4 */ cpu->r[31] = cpu->r[3];
|
|
/* 02446FC8 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02446FC8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02446FCC */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 02446FCC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02446FD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02446FD4 */ cpu->r[5] = cpu->r[4];
|
|
/* 02446FD8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446FD8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02446FD8 */ if (_t5) goto L_02446FF0; else goto L_02446FDC;
|
|
L_02446FDC: ; // 0x2446fdc
|
|
/* 02446FDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u);
|
|
/* 02446FE0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02446FE0 */ _t7 = _t6 & 0x00000001u;
|
|
/* 02446FE0 */ if (_t7) goto L_02446FF0; else goto L_02446FE4;
|
|
L_02446FE4: ; // 0x2446fe4
|
|
/* 02446FE4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02446FE8 */ cpu->r[6] = cpu->r[4];
|
|
/* 02446FEC */ Gambit_fn_028009C0(cpu);
|
|
L_02446FF0: ; // 0x2446ff0
|
|
/* 02446FF0 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02446FF4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02446FF8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02446FFC */ cpu->r[10] = cpu->r[10] + 0xFFFFDAF4u;
|
|
/* 02447000 */ _t8 = cpu->r[12] + 0xFFFFDBC0u;
|
|
/* 02447000 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t8);
|
|
/* 02447004 */ cpu->r[4] = 0x00000000u;
|
|
/* 02447008 */ cpu->r[0] = cpu->r[0] + 0xFFFFDBC4u;
|
|
/* 0244700C */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244700C */ rbrew_write32(cpu->mem, _t9, cpu->r[10]);
|
|
/* 02447010 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447014 */ cpu->r[3] = cpu->r[31];
|
|
/* 02447018 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02447018 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 0244701C */ Gambit_fn_027ED914(cpu);
|
|
/* 02447020 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02447024 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 02447024 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447028 */ cpu->lr = cpu->r[0];
|
|
/* 0244702C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447030 */ return;
|
|
}
|
|
|
|
// fn_02447050 @ 0x2447050
|
|
void Gambit_fn_02447050(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02447050: ; // 0x2447050
|
|
/* 02447050 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447050 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447050 */ cpu->r[1] = _t0;
|
|
/* 02447054 */ _t1 = cpu->r[1] + 0x00000008u;
|
|
/* 02447054 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]);
|
|
/* 02447058 */ cpu->r[0] = cpu->r[0] + 0xFFFFDAF4u;
|
|
/* 0244705C */ _t2 = cpu->r[12] + 0xFFFFDBCCu;
|
|
/* 0244705C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t2);
|
|
/* 02447060 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447064 */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447064 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447068 */ Gambit_fn_027ED914(cpu);
|
|
/* 0244706C */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244706C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02447070 */ cpu->lr = cpu->r[0];
|
|
/* 02447074 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447078 */ return;
|
|
}
|
|
|
|
// fn_02447080 @ 0x2447080
|
|
void Gambit_fn_02447080(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02447080: ; // 0x2447080
|
|
/* 02447080 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447080 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447080 */ cpu->r[1] = _t0;
|
|
/* 02447084 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02447084 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447088 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02447088 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 0244708C */ cpu->r[31] = cpu->r[3];
|
|
/* 02447090 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447090 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447094 */ _t4 = cpu->r[31] + 0x00000228u;
|
|
/* 02447094 */ cpu->r[9] = rbrew_read8(cpu->mem, _t4);
|
|
/* 02447098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 0244709C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244709C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244709C */ if (_t6) goto L_024470A0; else goto L_024470F0;
|
|
L_024470A0: ; // 0x24470a0
|
|
/* 024470A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024470A4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024470A8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 024470AC */ cpu->r[0] = cpu->r[0] + 0xFFFFDAF4u;
|
|
/* 024470B0 */ _t7 = cpu->r[12] + 0xFFFFDBC0u;
|
|
/* 024470B0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 024470B4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024470B8 */ cpu->r[30] = cpu->r[30] + 0xFFFFDBD8u;
|
|
/* 024470BC */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024470BC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 024470C0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024470C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024470C8 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 024470C8 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 024470CC */ Gambit_fn_027ED1E4(cpu);
|
|
/* 024470D0 */ _t10 = cpu->r[31] + 0x000001ACu;
|
|
/* 024470D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 024470D4 */ _t11 = cpu->r[3] + 0x000000E0u;
|
|
/* 024470D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11);
|
|
/* 024470D8 */ _t12 = cpu->r[10] + 0x00000034u;
|
|
/* 024470D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 024470DC */ cpu->ctr = cpu->r[11];
|
|
/* 024470E0 */ cpu->r[4] = cpu->r[30];
|
|
/* 024470E4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024470E8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024470EC */ _t13 = cpu->r[31] + 0x00000228u;
|
|
/* 024470EC */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[0]);
|
|
L_024470F0: ; // 0x24470f0
|
|
/* 024470F0 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024470F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024470F4 */ _t15 = cpu->r[1] + 0x00000010u;
|
|
/* 024470F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15);
|
|
/* 024470F8 */ cpu->lr = cpu->r[0];
|
|
/* 024470FC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024470FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02447100 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447104 */ return;
|
|
}
|
|
|
|
// fn_0244710C @ 0x244710c
|
|
void Gambit_fn_0244710C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0244710C: ; // 0x244710c
|
|
/* 0244710C */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 0244710C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0244710C */ cpu->r[1] = _t0;
|
|
/* 02447110 */ _t1 = cpu->r[1] + 0x00000018u;
|
|
/* 02447110 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02447114 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447118 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447118 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 0244711C */ cpu->r[31] = cpu->r[4];
|
|
/* 02447120 */ cpu->r[4] = 0x00000001u;
|
|
/* 02447124 */ cpu->r[12] = cpu->r[12] + 0xFFFFDAF4u;
|
|
/* 02447128 */ cpu->r[30] = cpu->r[3];
|
|
/* 0244712C */ _t3 = cpu->r[1] + 0x00000024u;
|
|
/* 0244712C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447130 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02447138 */ cpu->r[0] = cpu->r[0] + 0xFFFFDBE0u;
|
|
/* 0244713C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244713C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244713C */ if (_t5) goto L_02447158; else goto L_02447140;
|
|
L_02447140: ; // 0x2447140
|
|
/* 02447140 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447140 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02447144 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447148 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02447148 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 0244714C */ Gambit_fn_027ED624(cpu);
|
|
/* 02447150 */ _t8 = cpu->r[30] + 0x00000228u;
|
|
/* 02447150 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[31]);
|
|
/* 02447154 */ goto L_0244716C;
|
|
L_02447158: ; // 0x2447158
|
|
/* 02447158 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02447158 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 0244715C */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02447160 */ _t10 = cpu->r[1] + 0x00000010u;
|
|
/* 02447160 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02447164 */ Gambit_fn_027ED798(cpu);
|
|
/* 02447168 */ _t11 = cpu->r[30] + 0x00000228u;
|
|
/* 02447168 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[31]);
|
|
L_0244716C: ; // 0x244716c
|
|
/* 0244716C */ _t12 = cpu->r[1] + 0x00000024u;
|
|
/* 0244716C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447170 */ _t13 = cpu->r[1] + 0x00000018u;
|
|
/* 02447170 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02447174 */ cpu->lr = cpu->r[0];
|
|
/* 02447178 */ _t14 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447178 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0244717C */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02447180 */ return;
|
|
}
|
|
|
|
// fn_024471A0 @ 0x24471a0
|
|
void Gambit_fn_024471A0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8;
|
|
|
|
L_024471A0: ; // 0x24471a0
|
|
/* 024471A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024471A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024471A0 */ cpu->r[1] = _t0;
|
|
/* 024471A4 */ cpu->r[0] = cpu->r[0] + 0xFFFFDBE8u;
|
|
/* 024471A8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024471A8 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024471A8 */ if (_t2) goto L_024471CC; else goto L_024471AC;
|
|
L_024471AC: ; // 0x24471ac
|
|
/* 024471AC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024471AC */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024471B0 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024471B4 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 024471B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024471B8 */ Gambit_fn_027ED798(cpu);
|
|
/* 024471BC */ _t5 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024471BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024471C0 */ cpu->lr = cpu->r[0];
|
|
/* 024471C4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024471C8 */ return;
|
|
L_024471CC: ; // 0x24471cc
|
|
/* 024471CC */ _t6 = cpu->r[1] + 0x00000014u;
|
|
/* 024471CC */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 024471D0 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 024471D4 */ _t7 = cpu->r[1] + 0x00000010u;
|
|
/* 024471D4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 024471D8 */ Gambit_fn_027ED624(cpu);
|
|
/* 024471DC */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024471DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 024471E0 */ cpu->lr = cpu->r[0];
|
|
/* 024471E4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024471E8 */ return;
|
|
}
|
|
|
|
// fn_02447214 @ 0x2447214
|
|
void Gambit_fn_02447214(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02447214: ; // 0x2447214
|
|
/* 02447214 */ cpu->r[0] = cpu->lr;
|
|
/* 02447218 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447218 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447218 */ cpu->r[1] = _t0;
|
|
/* 0244721C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0244721C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447220 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447224 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02447228 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447228 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0244722C */ Gambit_fn_02177484(cpu);
|
|
/* 02447230 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02447234 */ Gambit_fn_02177DCC(cpu);
|
|
/* 02447238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 0244723C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0244723C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0244723C */ if (_t4) goto L_02447254; else goto L_02447240;
|
|
L_02447240: ; // 0x2447240
|
|
/* 02447240 */ Gambit_fn_027F6838(cpu);
|
|
/* 02447244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447248 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447248 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02447248 */ if (_t6) goto L_02447254; else goto L_0244724C;
|
|
L_0244724C: ; // 0x244724c
|
|
/* 0244724C */ _t7 = cpu->r[31] + 0x00000220u;
|
|
/* 0244724C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02447250 */ Gambit_fn_020C38E0(cpu);
|
|
L_02447254: ; // 0x2447254
|
|
/* 02447254 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02447258 */ cpu->r[4] = 0x00000002u;
|
|
/* 0244725C */ Gambit_fn_02177524(cpu);
|
|
/* 02447260 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447260 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02447264 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02447264 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02447268 */ cpu->lr = cpu->r[0];
|
|
/* 0244726C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447270 */ return;
|
|
}
|
|
|
|
// fn_02447218 @ 0x2447218
|
|
void Gambit_fn_02447218(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02447218: ; // 0x2447218
|
|
/* 02447218 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447218 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447218 */ cpu->r[1] = _t0;
|
|
/* 0244721C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 0244721C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447220 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447224 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02447228 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447228 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0244722C */ Gambit_fn_02177484(cpu);
|
|
/* 02447230 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02447234 */ Gambit_fn_02177DCC(cpu);
|
|
/* 02447238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000003u);
|
|
/* 0244723C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0244723C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0244723C */ if (_t4) goto L_02447254; else goto L_02447240;
|
|
L_02447240: ; // 0x2447240
|
|
/* 02447240 */ Gambit_fn_027F6838(cpu);
|
|
/* 02447244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447248 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447248 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02447248 */ if (_t6) goto L_02447254; else goto L_0244724C;
|
|
L_0244724C: ; // 0x244724c
|
|
/* 0244724C */ _t7 = cpu->r[31] + 0x00000220u;
|
|
/* 0244724C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02447250 */ Gambit_fn_020C38E0(cpu);
|
|
L_02447254: ; // 0x2447254
|
|
/* 02447254 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02447258 */ cpu->r[4] = 0x00000002u;
|
|
/* 0244725C */ Gambit_fn_02177524(cpu);
|
|
/* 02447260 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447260 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02447264 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02447264 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02447268 */ cpu->lr = cpu->r[0];
|
|
/* 0244726C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447270 */ return;
|
|
}
|
|
|
|
// fn_02447274 @ 0x2447274
|
|
void Gambit_fn_02447274(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_020E8C54: ; // 0x20e8c54
|
|
/* 020E8C54 */ cpu->r[0] = cpu->lr;
|
|
/* 020E8C58 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 020E8C58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020E8C58 */ cpu->r[1] = _t0;
|
|
/* 020E8C5C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 020E8C5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020E8C60 */ cpu->r[31] = cpu->r[3] + 0x00000028u;
|
|
/* 020E8C64 */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 020E8C64 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 020E8C68 */ cpu->r[30] = cpu->r[31];
|
|
/* 020E8C6C */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8C6C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]);
|
|
/* 020E8C70 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020E8C70 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 020E8C74 */ cpu->r[29] = 0x00000000u;
|
|
/* 020E8C78 */ goto L_020E8C84;
|
|
L_020E8C7C: ; // 0x20e8c7c
|
|
/* 020E8C7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000003u);
|
|
/* 020E8C80 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020E8C80 */ _t6 = _t5 & 0x00000001u;
|
|
/* 020E8C80 */ if (_t6) goto L_020E8C84; else goto L_020E8C8C;
|
|
L_020E8C84: ; // 0x20e8c84
|
|
/* 020E8C84 */ cpu->r[12] = cpu->r[30];
|
|
/* 020E8C88 */ goto L_020E8C90;
|
|
L_020E8C8C: ; // 0x20e8c8c
|
|
/* 020E8C8C */ cpu->r[12] = cpu->r[31];
|
|
L_020E8C90: ; // 0x20e8c90
|
|
/* 020E8C90 */ _t7 = cpu->r[12] + 0x00000000u;
|
|
/* 020E8C90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 020E8C94 */ Gambit_fn_020E7F28(cpu);
|
|
/* 020E8C98 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 020E8C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000003u);
|
|
/* 020E8CA0 */ cpu->r[30] = cpu->r[30] + 0x00000004u;
|
|
/* 020E8CA4 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 020E8CA4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 020E8CA4 */ if (_t9) goto L_020E8C7C; else goto L_020E8CA8;
|
|
L_020E8CA8: ; // 0x20e8ca8
|
|
/* 020E8CA8 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8CA8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020E8CAC */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 020E8CAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020E8CB0 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 020E8CB0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 020E8CB4 */ cpu->lr = cpu->r[0];
|
|
/* 020E8CB8 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 020E8CB8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 020E8CBC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 020E8CC0 */ return;
|
|
L_02447274: ; // 0x2447274
|
|
/* 02447274 */ _t14 = cpu->r[3] + 0x0000021Cu;
|
|
/* 02447274 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02447278 */ goto L_020E8C54;
|
|
}
|
|
|
|
// fn_0244727C @ 0x244727c
|
|
void Gambit_fn_0244727C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_0244727C: ; // 0x244727c
|
|
/* 0244727C */ cpu->r[0] = cpu->lr;
|
|
/* 02447280 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447280 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447280 */ cpu->r[1] = _t0;
|
|
/* 02447284 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02447284 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447288 */ cpu->r[31] = cpu->r[3];
|
|
/* 0244728C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447290 */ cpu->r[4] = cpu->r[31];
|
|
/* 02447294 */ cpu->r[12] = cpu->r[12] + 0xFFFFDBF4u;
|
|
/* 02447298 */ cpu->r[3] = 0x00000000u;
|
|
/* 0244729C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244729C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024472A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024472A4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024472A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024472A8 */ cpu->r[0] = cpu->r[0] + 0xFFFFDAF4u;
|
|
/* 024472AC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024472B0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024472B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024472B4 */ Gambit_fn_020A7150(cpu);
|
|
/* 024472B8 */ _t5 = cpu->r[31] + 0x00000218u;
|
|
/* 024472B8 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 024472BC */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024472BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024472C0 */ cpu->lr = cpu->r[0];
|
|
/* 024472C4 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024472C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024472C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024472CC */ return;
|
|
}
|
|
|
|
// fn_02447280 @ 0x2447280
|
|
void Gambit_fn_02447280(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02447280: ; // 0x2447280
|
|
/* 02447280 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447280 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447280 */ cpu->r[1] = _t0;
|
|
/* 02447284 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02447284 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447288 */ cpu->r[31] = cpu->r[3];
|
|
/* 0244728C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447290 */ cpu->r[4] = cpu->r[31];
|
|
/* 02447294 */ cpu->r[12] = cpu->r[12] + 0xFFFFDBF4u;
|
|
/* 02447298 */ cpu->r[3] = 0x00000000u;
|
|
/* 0244729C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244729C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024472A0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024472A4 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 024472A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 024472A8 */ cpu->r[0] = cpu->r[0] + 0xFFFFDAF4u;
|
|
/* 024472AC */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024472B0 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024472B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 024472B4 */ Gambit_fn_020A7150(cpu);
|
|
/* 024472B8 */ _t5 = cpu->r[31] + 0x00000218u;
|
|
/* 024472B8 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 024472BC */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024472BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024472C0 */ cpu->lr = cpu->r[0];
|
|
/* 024472C4 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 024472C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024472C8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024472CC */ return;
|
|
}
|
|
|
|
// fn_024472D0 @ 0x24472d0
|
|
void Gambit_fn_024472D0(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_024472D0: ; // 0x24472d0
|
|
/* 024472D0 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 024472D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024472D0 */ cpu->r[1] = _t0;
|
|
/* 024472D4 */ _t1 = cpu->r[1] + 0x00000024u;
|
|
/* 024472D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024472D8 */ cpu->r[31] = 0x100A0000u;
|
|
/* 024472DC */ cpu->r[0] = cpu->lr;
|
|
/* 024472E0 */ _t2 = cpu->r[1] + 0x00000020u;
|
|
/* 024472E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024472E4 */ cpu->r[31] = cpu->r[31] + 0xFFFFDAF4u;
|
|
/* 024472E8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 024472EC */ _t3 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024472EC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024472F0 */ cpu->r[12] = cpu->r[12] + 0xFFFFDC00u;
|
|
/* 024472F4 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024472F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024472F8 */ _t5 = cpu->r[1] + 0x00000010u;
|
|
/* 024472F8 */ rbrew_write32(cpu->mem, _t5, cpu->r[12]);
|
|
/* 024472FC */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 024472FC */ rbrew_write32(cpu->mem, _t6, cpu->r[12]);
|
|
/* 02447300 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02447304 */ _t7 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02447304 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02447308 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0244730C */ cpu->r[30] = cpu->r[3];
|
|
/* 02447310 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447310 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 02447314 */ cpu->r[0] = cpu->r[0] + 0xFFFFDC1Cu;
|
|
/* 02447318 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 0244731C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02447320 */ _t9 = cpu->r[1] + 0x00000018u;
|
|
/* 02447320 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02447324 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02447328 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 0244732C */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244732C */ rbrew_write32(cpu->mem, _t10, cpu->r[31]);
|
|
/* 02447330 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02447334 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02447334 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]);
|
|
/* 02447338 */ cpu->r[9] = cpu->r[9] + 0xFFFFDC08u;
|
|
/* 0244733C */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447340 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447340 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 02447344 */ cpu->r[11] = cpu->r[11] + 0xFFFFDC28u;
|
|
/* 02447348 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02447348 */ rbrew_write32(cpu->mem, _t13, cpu->r[9]);
|
|
/* 0244734C */ cpu->r[3] = cpu->r[30];
|
|
/* 02447350 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02447354 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 02447354 */ rbrew_write32(cpu->mem, _t14, cpu->r[9]);
|
|
/* 02447358 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0244735C */ _t15 = cpu->r[1] + 0x00000008u;
|
|
/* 0244735C */ rbrew_write32(cpu->mem, _t15, cpu->r[11]);
|
|
/* 02447360 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02447364 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447368 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447368 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]);
|
|
/* 0244736C */ cpu->r[0] = cpu->r[0] + 0xFFFFDC10u;
|
|
/* 02447370 */ _t17 = cpu->r[1] + 0x00000014u;
|
|
/* 02447370 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 02447374 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447378 */ _t18 = cpu->r[1] + 0x00000018u;
|
|
/* 02447378 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 0244737C */ cpu->r[12] = cpu->r[12] + 0xFFFFDC34u;
|
|
/* 02447380 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447380 */ rbrew_write32(cpu->mem, _t19, cpu->r[31]);
|
|
/* 02447384 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02447388 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 0244738C */ _t20 = cpu->r[1] + 0x00000008u;
|
|
/* 0244738C */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 02447390 */ cpu->r[3] = cpu->r[30];
|
|
/* 02447394 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02447398 */ _t21 = cpu->r[1] + 0x00000010u;
|
|
/* 02447398 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 0244739C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 024473A0 */ _t22 = cpu->r[1] + 0x0000002Cu;
|
|
/* 024473A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 024473A4 */ _t23 = cpu->r[1] + 0x00000024u;
|
|
/* 024473A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 024473A8 */ cpu->lr = cpu->r[0];
|
|
/* 024473AC */ _t24 = cpu->r[1] + 0x00000020u;
|
|
/* 024473AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 024473B0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 024473B4 */ return;
|
|
}
|
|
|
|
// fn_024473B8 @ 0x24473b8
|
|
void Gambit_fn_024473B8(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_024473B8: ; // 0x24473b8
|
|
/* 024473B8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 024473B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024473B8 */ cpu->r[1] = _t0;
|
|
/* 024473BC */ cpu->r[0] = cpu->lr;
|
|
/* 024473C0 */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024473C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024473C4 */ cpu->r[10] = 0x100A0000u;
|
|
/* 024473C8 */ cpu->r[31] = 0x100A0000u;
|
|
/* 024473CC */ cpu->r[31] = cpu->r[31] + 0xFFFFDAF4u;
|
|
/* 024473D0 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 024473D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 024473D4 */ cpu->r[10] = cpu->r[10] + 0xFFFFDC48u;
|
|
/* 024473D8 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 024473D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 024473DC */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024473DC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]);
|
|
/* 024473E0 */ cpu->r[30] = cpu->r[3];
|
|
/* 024473E4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024473E8 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 024473E8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024473EC */ cpu->r[0] = 0x100A0000u;
|
|
/* 024473F0 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 024473F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 024473F4 */ cpu->r[0] = cpu->r[0] + 0xFFFFDC58u;
|
|
/* 024473F8 */ cpu->r[4] = cpu->r[1] + 0x00000010u;
|
|
/* 024473FC */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 024473FC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02447400 */ Gambit_fn_027EC294(cpu);
|
|
/* 02447404 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447408 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447408 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]);
|
|
/* 0244740C */ cpu->r[0] = cpu->r[0] + 0xFFFFDC4Cu;
|
|
/* 02447410 */ cpu->r[4] = cpu->r[30];
|
|
/* 02447414 */ _t9 = cpu->r[30] + 0x00000224u;
|
|
/* 02447414 */ rbrew_write32(cpu->mem, _t9, cpu->r[3]);
|
|
/* 02447418 */ cpu->r[3] = 0x00000000u;
|
|
/* 0244741C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447420 */ _t10 = cpu->r[1] + 0x00000008u;
|
|
/* 02447420 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02447424 */ Gambit_fn_020E8090(cpu);
|
|
/* 02447428 */ cpu->r[0] = 0x100A0000u;
|
|
/* 0244742C */ _t11 = cpu->r[30] + 0x0000021Cu;
|
|
/* 0244742C */ rbrew_write32(cpu->mem, _t11, cpu->r[3]);
|
|
/* 02447430 */ cpu->r[3] = cpu->r[30];
|
|
/* 02447434 */ cpu->r[0] = cpu->r[0] + 0xFFFFDC68u;
|
|
/* 02447438 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447438 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]);
|
|
/* 0244743C */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02447440 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02447440 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447444 */ Gambit_fn_026D86C0(cpu);
|
|
/* 02447448 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0244744C */ _t14 = cpu->r[12] + 0xFFFFDBBCu;
|
|
/* 0244744C */ cpu->r[8] = rbrew_read32(cpu->mem, _t14);
|
|
/* 0244744C */ cpu->r[12] = _t14;
|
|
/* 02447450 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447454 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02447458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 0244745C */ cpu->r[4] = cpu->r[4] + 0xFFFFEE1Cu;
|
|
/* 02447460 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447460 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02447460 */ if (_t16) goto L_02447464; else goto L_02447478;
|
|
L_02447464: ; // 0x2447464
|
|
/* 02447464 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447468 */ cpu->r[9] = 0x00000001u;
|
|
/* 0244746C */ cpu->r[11] = cpu->r[11] + 0xFFFFDB8Cu;
|
|
/* 02447470 */ _t17 = cpu->r[12] + 0x00000000u;
|
|
/* 02447470 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]);
|
|
/* 02447474 */ _t18 = cpu->r[4] + 0x00000000u;
|
|
/* 02447474 */ rbrew_write32(cpu->mem, _t18, cpu->r[11]);
|
|
L_02447478: ; // 0x2447478
|
|
/* 02447478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0244747C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244747C */ _t20 = _t19 & 0x00000001u;
|
|
/* 0244747C */ if (_t20) goto L_0244749C; else goto L_02447480;
|
|
L_02447480: ; // 0x2447480
|
|
/* 02447480 */ _t21 = cpu->r[31] + 0x00000000u;
|
|
/* 02447480 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02447484 */ _t22 = cpu->r[12] + 0x0000001Cu;
|
|
/* 02447484 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02447488 */ cpu->ctr = cpu->r[0];
|
|
/* 0244748C */ cpu->r[3] = cpu->r[31];
|
|
/* 02447490 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02447494 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447498 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447498 */ _t24 = _t23 & 0x00000001u;
|
|
/* 02447498 */ if (_t24) goto L_0244749C; else goto L_024474A0;
|
|
L_0244749C: ; // 0x244749c
|
|
/* 0244749C */ cpu->r[31] = 0x00000000u;
|
|
L_024474A0: ; // 0x24474a0
|
|
/* 024474A0 */ cpu->r[4] = 0x00002000u;
|
|
/* 024474A4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024474A8 */ _t25 = cpu->r[30] + 0x00000220u;
|
|
/* 024474A8 */ rbrew_write32(cpu->mem, _t25, cpu->r[31]);
|
|
/* 024474AC */ Gambit_fn_020DB1C8(cpu);
|
|
/* 024474B0 */ _t26 = cpu->r[1] + 0x00000024u;
|
|
/* 024474B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 024474B4 */ _t27 = cpu->r[1] + 0x00000018u;
|
|
/* 024474B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27);
|
|
/* 024474B8 */ cpu->lr = cpu->r[0];
|
|
/* 024474BC */ _t28 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024474BC */ cpu->r[31] = rbrew_read32(cpu->mem, _t28);
|
|
/* 024474C0 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 024474C4 */ return;
|
|
}
|
|
|
|
// fn_024474C8 @ 0x24474c8
|
|
void Gambit_fn_024474C8(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, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121;
|
|
|
|
L_020E8CC4: ; // 0x20e8cc4
|
|
/* 020E8CC4 */ _t0 = cpu->r[1] + 0xFFFFFFD8u;
|
|
/* 020E8CC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020E8CC4 */ cpu->r[1] = _t0;
|
|
/* 020E8CC8 */ /* nop */
|
|
/* 020E8CCC */ cpu->r[11] = 0x10020000u;
|
|
/* 020E8CD0 */ cpu->r[0] = cpu->lr;
|
|
/* 020E8CD4 */ cpu->r[11] = cpu->r[11] + 0xFFFFACACu;
|
|
/* 020E8CD8 */ cpu->r[28] = 0x10020000u;
|
|
/* 020E8CDC */ _t1 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020E8CDC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 020E8CE0 */ cpu->r[28] = cpu->r[28] + 0xFFFFA8A8u;
|
|
/* 020E8CE4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8CE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]);
|
|
/* 020E8CE8 */ cpu->r[30] = cpu->r[3];
|
|
/* 020E8CEC */ _t3 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8CEC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3);
|
|
/* 020E8CF0 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8CF0 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]);
|
|
/* 020E8CF4 */ _t5 = cpu->r[12] + 0x00000014u;
|
|
/* 020E8CF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020E8CF8 */ cpu->ctr = cpu->r[0];
|
|
/* 020E8CFC */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8D00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8D04 */ _t6 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8D04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6);
|
|
/* 020E8D08 */ _t7 = cpu->r[8] + 0x00000014u;
|
|
/* 020E8D08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7);
|
|
/* 020E8D0C */ cpu->ctr = cpu->r[9];
|
|
/* 020E8D10 */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8D14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8D18 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8D18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8);
|
|
/* 020E8D1C */ _t9 = cpu->r[10] + 0x00000014u;
|
|
/* 020E8D1C */ cpu->r[11] = rbrew_read32(cpu->mem, _t9);
|
|
/* 020E8D20 */ cpu->ctr = cpu->r[11];
|
|
/* 020E8D24 */ _t10 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8D24 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 020E8D28 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020E8D2C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8D30 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8D30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 020E8D34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[12]);
|
|
/* 020E8D38 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8D38 */ _t13 = _t12 & 0x00000001u;
|
|
/* 020E8D38 */ if (_t13) goto L_020E8D80; else goto L_020E8D3C;
|
|
L_020E8D3C: ; // 0x20e8d3c
|
|
/* 020E8D3C */ cpu->r[29] = 0x00080000u;
|
|
/* 020E8D40 */ cpu->r[31] = 0x10110000u;
|
|
/* 020E8D44 */ cpu->r[29] = cpu->r[29] + 0x00000001u;
|
|
/* 020E8D48 */ _t14 = cpu->r[31] + 0x00007399u;
|
|
/* 020E8D48 */ cpu->r[31] = rbrew_read8(cpu->mem, _t14);
|
|
/* 020E8D4C */ _t15 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8D4C */ cpu->r[5] = rbrew_read32(cpu->mem, _t15);
|
|
/* 020E8D50 */ _t16 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8D50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16);
|
|
/* 020E8D54 */ cpu->ctr = cpu->r[29];
|
|
/* 020E8D58 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
/* 020E8D5C */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_020E8D60: ; // 0x20e8d60
|
|
/* 020E8D60 */ _t17 = cpu->r[5] + 0x00000001u;
|
|
/* 020E8D60 */ cpu->r[6] = rbrew_read8(cpu->mem, _t17);
|
|
/* 020E8D60 */ cpu->r[5] = _t17;
|
|
/* 020E8D64 */ _t18 = cpu->r[12] + 0x00000001u;
|
|
/* 020E8D64 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18);
|
|
/* 020E8D64 */ cpu->r[12] = _t18;
|
|
/* 020E8D68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[0]);
|
|
/* 020E8D6C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8D6C */ _t20 = _t19 & 0x00000001u;
|
|
/* 020E8D6C */ if (_t20) goto L_020E8D70; else goto L_020E8D98;
|
|
L_020E8D70: ; // 0x20e8d70
|
|
/* 020E8D70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 020E8D74 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8D74 */ _t22 = _t21 & 0x00000001u;
|
|
/* 020E8D74 */ if (_t22) goto L_020E8D80; else goto L_020E8D78;
|
|
L_020E8D78: ; // 0x20e8d78
|
|
/* 020E8D78 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020E8D78 */ _t23 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020E8D78 */ _t24 = _t23 >> (0x00000002u & 31u);
|
|
/* 020E8D78 */ _t25 = _t24 & 0x00000001u;
|
|
/* 020E8D78 */ if (_t25) goto L_020E8D60; else goto L_020E8D7C;
|
|
L_020E8D7C: ; // 0x20e8d7c
|
|
/* 020E8D7C */ goto L_020E8D98;
|
|
L_020E8D80: ; // 0x20e8d80
|
|
/* 020E8D80 */ /* nop */
|
|
/* 020E8D84 */ _t26 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020E8D84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26);
|
|
/* 020E8D88 */ cpu->lr = cpu->r[0];
|
|
/* 020E8D8C */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 020E8D90 */ cpu->r[3] = 0x0000000Au;
|
|
/* 020E8D94 */ return;
|
|
L_020E8D98: ; // 0x20e8d98
|
|
/* 020E8D98 */ cpu->r[0] = 0x10020000u;
|
|
/* 020E8D9C */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8D9C */ rbrew_write32(cpu->mem, _t27, cpu->r[28]);
|
|
/* 020E8DA0 */ cpu->r[0] = cpu->r[0] + 0xFFFFACBCu;
|
|
/* 020E8DA4 */ _t28 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8DA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28);
|
|
/* 020E8DA8 */ _t29 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8DA8 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]);
|
|
/* 020E8DAC */ _t30 = cpu->r[8] + 0x00000014u;
|
|
/* 020E8DAC */ cpu->r[9] = rbrew_read32(cpu->mem, _t30);
|
|
/* 020E8DB0 */ cpu->ctr = cpu->r[9];
|
|
/* 020E8DB4 */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8DB8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8DBC */ _t31 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8DBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t31);
|
|
/* 020E8DC0 */ _t32 = cpu->r[10] + 0x00000014u;
|
|
/* 020E8DC0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32);
|
|
/* 020E8DC4 */ cpu->ctr = cpu->r[11];
|
|
/* 020E8DC8 */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8DCC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8DD0 */ _t33 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8DD0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t33);
|
|
/* 020E8DD4 */ _t34 = cpu->r[12] + 0x00000014u;
|
|
/* 020E8DD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34);
|
|
/* 020E8DD8 */ cpu->ctr = cpu->r[0];
|
|
/* 020E8DDC */ _t35 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8DDC */ cpu->r[27] = rbrew_read32(cpu->mem, _t35);
|
|
/* 020E8DE0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020E8DE4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8DE8 */ _t36 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8DE8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t36);
|
|
/* 020E8DEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 020E8DF0 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8DF0 */ _t38 = _t37 & 0x00000001u;
|
|
/* 020E8DF0 */ if (_t38) goto L_020E8FFC; else goto L_020E8DF4;
|
|
L_020E8DF4: ; // 0x20e8df4
|
|
/* 020E8DF4 */ _t39 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8DF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t39);
|
|
/* 020E8DF8 */ _t40 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8DF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40);
|
|
/* 020E8DFC */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu;
|
|
/* 020E8E00 */ cpu->ctr = cpu->r[29];
|
|
/* 020E8E04 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_020E8E08: ; // 0x20e8e08
|
|
/* 020E8E08 */ _t41 = cpu->r[11] + 0x00000001u;
|
|
/* 020E8E08 */ cpu->r[7] = rbrew_read8(cpu->mem, _t41);
|
|
/* 020E8E08 */ cpu->r[11] = _t41;
|
|
/* 020E8E0C */ _t42 = cpu->r[10] + 0x00000001u;
|
|
/* 020E8E0C */ cpu->r[6] = rbrew_read8(cpu->mem, _t42);
|
|
/* 020E8E0C */ cpu->r[10] = _t42;
|
|
/* 020E8E10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[6]);
|
|
/* 020E8E14 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8E14 */ _t44 = _t43 & 0x00000001u;
|
|
/* 020E8E14 */ if (_t44) goto L_020E8E18; else goto L_020E8E24;
|
|
L_020E8E18: ; // 0x20e8e18
|
|
/* 020E8E18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 020E8E1C */ _t45 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8E1C */ _t46 = _t45 & 0x00000001u;
|
|
/* 020E8E1C */ if (_t46) goto L_020E8FFC; else goto L_020E8E20;
|
|
L_020E8E20: ; // 0x20e8e20
|
|
/* 020E8E20 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020E8E20 */ _t47 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020E8E20 */ _t48 = _t47 >> (0x00000002u & 31u);
|
|
/* 020E8E20 */ _t49 = _t48 & 0x00000001u;
|
|
/* 020E8E20 */ if (_t49) goto L_020E8E08; else goto L_020E8E24;
|
|
L_020E8E24: ; // 0x20e8e24
|
|
/* 020E8E24 */ cpu->r[0] = 0x10020000u;
|
|
/* 020E8E28 */ _t50 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8E28 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 020E8E2C */ cpu->r[0] = cpu->r[0] + 0xFFFFACD4u;
|
|
/* 020E8E30 */ _t51 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8E30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t51);
|
|
/* 020E8E34 */ _t52 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8E34 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]);
|
|
/* 020E8E38 */ _t53 = cpu->r[8] + 0x00000014u;
|
|
/* 020E8E38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t53);
|
|
/* 020E8E3C */ cpu->ctr = cpu->r[9];
|
|
/* 020E8E40 */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8E44 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8E48 */ _t54 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8E48 */ cpu->r[10] = rbrew_read32(cpu->mem, _t54);
|
|
/* 020E8E4C */ _t55 = cpu->r[10] + 0x00000014u;
|
|
/* 020E8E4C */ cpu->r[11] = rbrew_read32(cpu->mem, _t55);
|
|
/* 020E8E50 */ cpu->ctr = cpu->r[11];
|
|
/* 020E8E54 */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8E58 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8E5C */ _t56 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8E5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t56);
|
|
/* 020E8E60 */ _t57 = cpu->r[12] + 0x00000014u;
|
|
/* 020E8E60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t57);
|
|
/* 020E8E64 */ cpu->ctr = cpu->r[0];
|
|
/* 020E8E68 */ _t58 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8E68 */ cpu->r[27] = rbrew_read32(cpu->mem, _t58);
|
|
/* 020E8E6C */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020E8E70 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8E74 */ _t59 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8E74 */ cpu->r[5] = rbrew_read32(cpu->mem, _t59);
|
|
/* 020E8E78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[5]);
|
|
/* 020E8E7C */ _t60 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8E7C */ _t61 = _t60 & 0x00000001u;
|
|
/* 020E8E7C */ if (_t61) goto L_020E8EB4; else goto L_020E8E80;
|
|
L_020E8E80: ; // 0x20e8e80
|
|
/* 020E8E80 */ _t62 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8E80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t62);
|
|
/* 020E8E84 */ _t63 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8E84 */ cpu->r[7] = rbrew_read32(cpu->mem, _t63);
|
|
/* 020E8E88 */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu;
|
|
/* 020E8E8C */ cpu->ctr = cpu->r[29];
|
|
/* 020E8E90 */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
L_020E8E94: ; // 0x20e8e94
|
|
/* 020E8E94 */ _t64 = cpu->r[9] + 0x00000001u;
|
|
/* 020E8E94 */ cpu->r[8] = rbrew_read8(cpu->mem, _t64);
|
|
/* 020E8E94 */ cpu->r[9] = _t64;
|
|
/* 020E8E98 */ _t65 = cpu->r[7] + 0x00000001u;
|
|
/* 020E8E98 */ cpu->r[6] = rbrew_read8(cpu->mem, _t65);
|
|
/* 020E8E98 */ cpu->r[7] = _t65;
|
|
/* 020E8E9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[6]);
|
|
/* 020E8EA0 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8EA0 */ _t67 = _t66 & 0x00000001u;
|
|
/* 020E8EA0 */ if (_t67) goto L_020E8EA4; else goto L_020E8ECC;
|
|
L_020E8EA4: ; // 0x20e8ea4
|
|
/* 020E8EA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 020E8EA8 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8EA8 */ _t69 = _t68 & 0x00000001u;
|
|
/* 020E8EA8 */ if (_t69) goto L_020E8EB4; else goto L_020E8EAC;
|
|
L_020E8EAC: ; // 0x20e8eac
|
|
/* 020E8EAC */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020E8EAC */ _t70 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020E8EAC */ _t71 = _t70 >> (0x00000002u & 31u);
|
|
/* 020E8EAC */ _t72 = _t71 & 0x00000001u;
|
|
/* 020E8EAC */ if (_t72) goto L_020E8E94; else goto L_020E8EB0;
|
|
L_020E8EB0: ; // 0x20e8eb0
|
|
/* 020E8EB0 */ goto L_020E8ECC;
|
|
L_020E8EB4: ; // 0x20e8eb4
|
|
/* 020E8EB4 */ Gambit_fn_020ECD18(cpu);
|
|
/* 020E8EB8 */ /* nop */
|
|
/* 020E8EBC */ _t73 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020E8EBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t73);
|
|
/* 020E8EC0 */ cpu->lr = cpu->r[0];
|
|
/* 020E8EC4 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 020E8EC8 */ return;
|
|
L_020E8ECC: ; // 0x20e8ecc
|
|
/* 020E8ECC */ cpu->r[9] = 0x10020000u;
|
|
/* 020E8ED0 */ _t74 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8ED0 */ rbrew_write32(cpu->mem, _t74, cpu->r[28]);
|
|
/* 020E8ED4 */ cpu->r[9] = cpu->r[9] + 0xFFFFACA4u;
|
|
/* 020E8ED8 */ _t75 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8ED8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 020E8EDC */ _t76 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8EDC */ rbrew_write32(cpu->mem, _t76, cpu->r[9]);
|
|
/* 020E8EE0 */ _t77 = cpu->r[10] + 0x00000014u;
|
|
/* 020E8EE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t77);
|
|
/* 020E8EE4 */ cpu->ctr = cpu->r[11];
|
|
/* 020E8EE8 */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8EEC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8EF0 */ _t78 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8EF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t78);
|
|
/* 020E8EF4 */ _t79 = cpu->r[12] + 0x00000014u;
|
|
/* 020E8EF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t79);
|
|
/* 020E8EF8 */ cpu->ctr = cpu->r[0];
|
|
/* 020E8EFC */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8F00 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8F04 */ _t80 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8F04 */ cpu->r[5] = rbrew_read32(cpu->mem, _t80);
|
|
/* 020E8F08 */ _t81 = cpu->r[5] + 0x00000014u;
|
|
/* 020E8F08 */ cpu->r[6] = rbrew_read32(cpu->mem, _t81);
|
|
/* 020E8F0C */ cpu->ctr = cpu->r[6];
|
|
/* 020E8F10 */ _t82 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8F10 */ cpu->r[27] = rbrew_read32(cpu->mem, _t82);
|
|
/* 020E8F14 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020E8F18 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8F1C */ _t83 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8F1C */ cpu->r[7] = rbrew_read32(cpu->mem, _t83);
|
|
/* 020E8F20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[7]);
|
|
/* 020E8F24 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8F24 */ _t85 = _t84 & 0x00000001u;
|
|
/* 020E8F24 */ if (_t85) goto L_020E8FFC; else goto L_020E8F28;
|
|
L_020E8F28: ; // 0x20e8f28
|
|
/* 020E8F28 */ _t86 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8F28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t86);
|
|
/* 020E8F2C */ _t87 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8F2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t87);
|
|
/* 020E8F30 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 020E8F34 */ cpu->ctr = cpu->r[29];
|
|
/* 020E8F38 */ cpu->r[10] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_020E8F3C: ; // 0x20e8f3c
|
|
/* 020E8F3C */ _t88 = cpu->r[12] + 0x00000001u;
|
|
/* 020E8F3C */ cpu->r[9] = rbrew_read8(cpu->mem, _t88);
|
|
/* 020E8F3C */ cpu->r[12] = _t88;
|
|
/* 020E8F40 */ _t89 = cpu->r[10] + 0x00000001u;
|
|
/* 020E8F40 */ cpu->r[8] = rbrew_read8(cpu->mem, _t89);
|
|
/* 020E8F40 */ cpu->r[10] = _t89;
|
|
/* 020E8F44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[8]);
|
|
/* 020E8F48 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8F48 */ _t91 = _t90 & 0x00000001u;
|
|
/* 020E8F48 */ if (_t91) goto L_020E8F4C; else goto L_020E8F58;
|
|
L_020E8F4C: ; // 0x20e8f4c
|
|
/* 020E8F4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 020E8F50 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8F50 */ _t93 = _t92 & 0x00000001u;
|
|
/* 020E8F50 */ if (_t93) goto L_020E8FFC; else goto L_020E8F54;
|
|
L_020E8F54: ; // 0x20e8f54
|
|
/* 020E8F54 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020E8F54 */ _t94 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020E8F54 */ _t95 = _t94 >> (0x00000002u & 31u);
|
|
/* 020E8F54 */ _t96 = _t95 & 0x00000001u;
|
|
/* 020E8F54 */ if (_t96) goto L_020E8F3C; else goto L_020E8F58;
|
|
L_020E8F58: ; // 0x20e8f58
|
|
/* 020E8F58 */ cpu->r[11] = 0x10020000u;
|
|
/* 020E8F5C */ _t97 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8F5C */ rbrew_write32(cpu->mem, _t97, cpu->r[28]);
|
|
/* 020E8F60 */ cpu->r[11] = cpu->r[11] + 0xFFFFACC8u;
|
|
/* 020E8F64 */ _t98 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8F64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t98);
|
|
/* 020E8F68 */ _t99 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8F68 */ rbrew_write32(cpu->mem, _t99, cpu->r[11]);
|
|
/* 020E8F6C */ _t100 = cpu->r[12] + 0x00000014u;
|
|
/* 020E8F6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t100);
|
|
/* 020E8F70 */ cpu->ctr = cpu->r[0];
|
|
/* 020E8F74 */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8F78 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8F7C */ _t101 = cpu->r[30] + 0x00000090u;
|
|
/* 020E8F7C */ cpu->r[6] = rbrew_read32(cpu->mem, _t101);
|
|
/* 020E8F80 */ _t102 = cpu->r[6] + 0x00000014u;
|
|
/* 020E8F80 */ cpu->r[8] = rbrew_read32(cpu->mem, _t102);
|
|
/* 020E8F84 */ cpu->ctr = cpu->r[8];
|
|
/* 020E8F88 */ cpu->r[3] = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8F8C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8F90 */ _t103 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020E8F90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t103);
|
|
/* 020E8F94 */ _t104 = cpu->r[9] + 0x00000014u;
|
|
/* 020E8F94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t104);
|
|
/* 020E8F98 */ cpu->ctr = cpu->r[0];
|
|
/* 020E8F9C */ _t105 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8F9C */ cpu->r[28] = rbrew_read32(cpu->mem, _t105);
|
|
/* 020E8FA0 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 020E8FA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 020E8FA8 */ _t106 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8FA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106);
|
|
/* 020E8FAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]);
|
|
/* 020E8FB0 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8FB0 */ _t108 = _t107 & 0x00000001u;
|
|
/* 020E8FB0 */ if (_t108) goto L_020E8FFC; else goto L_020E8FB4;
|
|
L_020E8FB4: ; // 0x20e8fb4
|
|
/* 020E8FB4 */ _t109 = cpu->r[30] + 0x0000008Cu;
|
|
/* 020E8FB4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t109);
|
|
/* 020E8FB8 */ _t110 = cpu->r[1] + 0x00000008u;
|
|
/* 020E8FB8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t110);
|
|
/* 020E8FBC */ cpu->r[7] = cpu->r[7] + 0xFFFFFFFFu;
|
|
/* 020E8FC0 */ cpu->ctr = cpu->r[29];
|
|
/* 020E8FC4 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_020E8FC8: ; // 0x20e8fc8
|
|
/* 020E8FC8 */ _t111 = cpu->r[7] + 0x00000001u;
|
|
/* 020E8FC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t111);
|
|
/* 020E8FC8 */ cpu->r[7] = _t111;
|
|
/* 020E8FCC */ _t112 = cpu->r[5] + 0x00000001u;
|
|
/* 020E8FCC */ cpu->r[6] = rbrew_read8(cpu->mem, _t112);
|
|
/* 020E8FCC */ cpu->r[5] = _t112;
|
|
/* 020E8FD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]);
|
|
/* 020E8FD4 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8FD4 */ _t114 = _t113 & 0x00000001u;
|
|
/* 020E8FD4 */ if (_t114) goto L_020E8FD8; else goto L_020E8FE4;
|
|
L_020E8FD8: ; // 0x20e8fd8
|
|
/* 020E8FD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 020E8FDC */ _t115 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 020E8FDC */ _t116 = _t115 & 0x00000001u;
|
|
/* 020E8FDC */ if (_t116) goto L_020E8FFC; else goto L_020E8FE0;
|
|
L_020E8FE0: ; // 0x20e8fe0
|
|
/* 020E8FE0 */ cpu->ctr = cpu->ctr - 0x00000001u;
|
|
/* 020E8FE0 */ _t117 = rbrew_cmp_u32(cpu->ctr, 0x00000000u);
|
|
/* 020E8FE0 */ _t118 = _t117 >> (0x00000002u & 31u);
|
|
/* 020E8FE0 */ _t119 = _t118 & 0x00000001u;
|
|
/* 020E8FE0 */ if (_t119) goto L_020E8FC8; else goto L_020E8FE4;
|
|
L_020E8FE4: ; // 0x20e8fe4
|
|
/* 020E8FE4 */ /* nop */
|
|
/* 020E8FE8 */ _t120 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020E8FE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120);
|
|
/* 020E8FEC */ cpu->lr = cpu->r[0];
|
|
/* 020E8FF0 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 020E8FF4 */ cpu->r[3] = 0x00000000u;
|
|
/* 020E8FF8 */ return;
|
|
L_020E8FFC: ; // 0x20e8ffc
|
|
/* 020E8FFC */ /* nop */
|
|
/* 020E9000 */ _t121 = cpu->r[1] + 0x0000002Cu;
|
|
/* 020E9000 */ cpu->r[0] = rbrew_read32(cpu->mem, _t121);
|
|
/* 020E9004 */ cpu->lr = cpu->r[0];
|
|
/* 020E9008 */ cpu->r[1] = cpu->r[1] + 0x00000028u;
|
|
/* 020E900C */ cpu->r[3] = 0x00000001u;
|
|
/* 020E9010 */ return;
|
|
L_024474C8: ; // 0x24474c8
|
|
/* 024474C8 */ cpu->r[3] = cpu->r[4];
|
|
/* 024474CC */ goto L_020E8CC4;
|
|
}
|
|
|
|
// fn_024474D0 @ 0x24474d0
|
|
void Gambit_fn_024474D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024474D0: ; // 0x24474d0
|
|
/* 024474D0 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 024474D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024474D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024474D4 */ cpu->r[1] = _t0;
|
|
/* 024474D8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024474DC */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024474E0 */ _t1 = cpu->r[10] + 0x00007664u;
|
|
/* 024474E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024474E0 */ cpu->r[10] = _t1;
|
|
/* 024474E4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024474E8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024474E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024474EC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024474F0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 024474F4 */ _t3 = cpu->r[7] + 0x00007674u;
|
|
/* 024474F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024474F4 */ cpu->r[7] = _t3;
|
|
/* 024474F8 */ _t4 = cpu->r[8] + 0x0000766Cu;
|
|
/* 024474F8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 024474F8 */ cpu->r[8] = _t4;
|
|
/* 024474FC */ cpu->r[0] = 0x00000002u;
|
|
/* 02447500 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02447500 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02447504 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447508 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02447508 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0244750C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02447510 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02447510 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02447514 */ _t8 = cpu->r[8] + 0x00007684u;
|
|
/* 02447514 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02447514 */ cpu->r[8] = _t8;
|
|
/* 02447518 */ _t9 = cpu->r[12] + 0x0000767Cu;
|
|
/* 02447518 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02447518 */ cpu->r[12] = _t9;
|
|
/* 0244751C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0244751C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02447520 */ cpu->r[0] = 0x00000004u;
|
|
/* 02447524 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02447524 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02447528 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0244752C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0244752C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447530 */ _t13 = cpu->r[11] + 0x0000768Cu;
|
|
/* 02447530 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447534 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447538 */ return;
|
|
}
|
|
|
|
// fn_024474D4 @ 0x24474d4
|
|
void Gambit_fn_024474D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024474D4: ; // 0x24474d4
|
|
/* 024474D4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 024474D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024474D4 */ cpu->r[1] = _t0;
|
|
/* 024474D8 */ cpu->r[10] = 0x101E0000u;
|
|
/* 024474DC */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 024474E0 */ _t1 = cpu->r[10] + 0x00007664u;
|
|
/* 024474E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 024474E0 */ cpu->r[10] = _t1;
|
|
/* 024474E4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 024474E8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 024474E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 024474EC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 024474F0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 024474F4 */ _t3 = cpu->r[7] + 0x00007674u;
|
|
/* 024474F4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 024474F4 */ cpu->r[7] = _t3;
|
|
/* 024474F8 */ _t4 = cpu->r[8] + 0x0000766Cu;
|
|
/* 024474F8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 024474F8 */ cpu->r[8] = _t4;
|
|
/* 024474FC */ cpu->r[0] = 0x00000002u;
|
|
/* 02447500 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02447500 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02447504 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447508 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02447508 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 0244750C */ cpu->r[12] = 0x101E0000u;
|
|
/* 02447510 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02447510 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02447514 */ _t8 = cpu->r[8] + 0x00007684u;
|
|
/* 02447514 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02447514 */ cpu->r[8] = _t8;
|
|
/* 02447518 */ _t9 = cpu->r[12] + 0x0000767Cu;
|
|
/* 02447518 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02447518 */ cpu->r[12] = _t9;
|
|
/* 0244751C */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 0244751C */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02447520 */ cpu->r[0] = 0x00000004u;
|
|
/* 02447524 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02447524 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02447528 */ cpu->r[11] = 0x101E0000u;
|
|
/* 0244752C */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 0244752C */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447530 */ _t13 = cpu->r[11] + 0x0000768Cu;
|
|
/* 02447530 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447534 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447538 */ return;
|
|
}
|
|
|
|
// fn_0244753C @ 0x244753c
|
|
void Gambit_fn_0244753C(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_0244753C: ; // 0x244753c
|
|
/* 0244753C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447540 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447540 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02447540 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02447540 */ goto L_02447544;
|
|
L_02447544: ; // 0x2447544
|
|
/* 02447544 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02447544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02447548 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447548 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02447548 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02447548 */ goto L_0244754C;
|
|
L_0244754C: ; // 0x244754c
|
|
/* 0244754C */ 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_02447550 @ 0x2447550
|
|
void Gambit_fn_02447550(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02447550: ; // 0x2447550
|
|
/* 02447550 */ cpu->r[0] = cpu->lr;
|
|
/* 02447554 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447554 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447554 */ cpu->r[1] = _t0;
|
|
/* 02447558 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447558 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244755C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0244755C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02447560 */ cpu->r[30] = cpu->r[3];
|
|
/* 02447560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447564 */ cpu->r[31] = cpu->r[4];
|
|
/* 02447568 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02447568 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244756C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244756C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244756C */ if (_t5) goto L_024475DC; else goto L_02447570;
|
|
L_02447570: ; // 0x2447570
|
|
/* 02447570 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447574 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447578 */ cpu->r[0] = cpu->r[0] + 0xFFFFDE48u;
|
|
/* 0244757C */ cpu->r[12] = cpu->r[12] + 0xFFFFDE68u;
|
|
/* 02447580 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02447580 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447584 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447588 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02447588 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0244758C */ cpu->r[11] = cpu->r[11] + 0xFFFFDE58u;
|
|
/* 02447590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447594 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02447594 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447598 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447598 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02447598 */ if (_t10) goto L_024475CC; else goto L_0244759C;
|
|
L_0244759C: ; // 0x244759c
|
|
/* 0244759C */ cpu->r[10] = 0x10010000u;
|
|
/* 024475A0 */ cpu->r[0] = 0x10010000u;
|
|
/* 024475A4 */ cpu->r[10] = cpu->r[10] + 0x00004564u;
|
|
/* 024475A8 */ cpu->r[0] = cpu->r[0] + 0x00004554u;
|
|
/* 024475AC */ cpu->r[3] = cpu->r[30];
|
|
/* 024475B0 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024475B0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024475B4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024475B8 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024475B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024475BC */ cpu->r[0] = cpu->r[0] + 0x00004574u;
|
|
/* 024475C0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024475C4 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024475C4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024475C8 */ Gambit_fn_02068798(cpu);
|
|
L_024475CC: ; // 0x24475cc
|
|
/* 024475CC */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024475CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024475D0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024475D0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024475D0 */ if (_t15) goto L_024475DC; else goto L_024475D4;
|
|
L_024475D4: ; // 0x24475d4
|
|
/* 024475D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024475D8 */ Gambit_fn_02801BB0(cpu);
|
|
L_024475DC: ; // 0x24475dc
|
|
/* 024475DC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024475DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024475E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024475E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024475E4 */ cpu->lr = cpu->r[0];
|
|
/* 024475E8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024475E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024475EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024475F0 */ return;
|
|
}
|
|
|
|
// fn_02447554 @ 0x2447554
|
|
void Gambit_fn_02447554(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02447554: ; // 0x2447554
|
|
/* 02447554 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447554 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447554 */ cpu->r[1] = _t0;
|
|
/* 02447558 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447558 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244755C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0244755C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02447560 */ cpu->r[30] = cpu->r[3];
|
|
/* 02447560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447564 */ cpu->r[31] = cpu->r[4];
|
|
/* 02447568 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02447568 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244756C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244756C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244756C */ if (_t5) goto L_024475DC; else goto L_02447570;
|
|
L_02447570: ; // 0x2447570
|
|
/* 02447570 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447574 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447578 */ cpu->r[0] = cpu->r[0] + 0xFFFFDE48u;
|
|
/* 0244757C */ cpu->r[12] = cpu->r[12] + 0xFFFFDE68u;
|
|
/* 02447580 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02447580 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447584 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447588 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02447588 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0244758C */ cpu->r[11] = cpu->r[11] + 0xFFFFDE58u;
|
|
/* 02447590 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447594 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02447594 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447598 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447598 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02447598 */ if (_t10) goto L_024475CC; else goto L_0244759C;
|
|
L_0244759C: ; // 0x244759c
|
|
/* 0244759C */ cpu->r[10] = 0x10010000u;
|
|
/* 024475A0 */ cpu->r[0] = 0x10010000u;
|
|
/* 024475A4 */ cpu->r[10] = cpu->r[10] + 0x00004564u;
|
|
/* 024475A8 */ cpu->r[0] = cpu->r[0] + 0x00004554u;
|
|
/* 024475AC */ cpu->r[3] = cpu->r[30];
|
|
/* 024475B0 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 024475B0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024475B4 */ cpu->r[0] = 0x10010000u;
|
|
/* 024475B8 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 024475B8 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 024475BC */ cpu->r[0] = cpu->r[0] + 0x00004574u;
|
|
/* 024475C0 */ cpu->r[4] = 0x00000000u;
|
|
/* 024475C4 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 024475C4 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 024475C8 */ Gambit_fn_02068798(cpu);
|
|
L_024475CC: ; // 0x24475cc
|
|
/* 024475CC */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024475CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024475D0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024475D0 */ _t15 = _t14 & 0x00000001u;
|
|
/* 024475D0 */ if (_t15) goto L_024475DC; else goto L_024475D4;
|
|
L_024475D4: ; // 0x24475d4
|
|
/* 024475D4 */ cpu->r[3] = cpu->r[30];
|
|
/* 024475D8 */ Gambit_fn_02801BB0(cpu);
|
|
L_024475DC: ; // 0x24475dc
|
|
/* 024475DC */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 024475DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024475E0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024475E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024475E4 */ cpu->lr = cpu->r[0];
|
|
/* 024475E8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024475E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024475EC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024475F0 */ return;
|
|
}
|
|
|
|
// fn_024475F4 @ 0x24475f4
|
|
void Gambit_fn_024475F4(CPUState* cpu) {
|
|
L_024475F4: ; // 0x24475f4
|
|
/* 024475F4 */ return;
|
|
}
|
|
|
|
// fn_024475F8 @ 0x24475f8
|
|
void Gambit_fn_024475F8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024475F8: ; // 0x24475f8
|
|
/* 024475F8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024475F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024475FC */ return;
|
|
}
|
|
|
|
// fn_02447600 @ 0x2447600
|
|
void Gambit_fn_02447600(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02447600: ; // 0x2447600
|
|
/* 02447600 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02447600 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447604 */ return;
|
|
}
|
|
|
|
// fn_02447608 @ 0x2447608
|
|
void Gambit_fn_02447608(CPUState* cpu) {
|
|
L_02447608: ; // 0x2447608
|
|
/* 02447608 */ return;
|
|
}
|
|
|
|
// fn_0244760C @ 0x244760c
|
|
void Gambit_fn_0244760C(CPUState* cpu) {
|
|
L_0244760C: ; // 0x244760c
|
|
/* 0244760C */ return;
|
|
}
|
|
|
|
// fn_02447610 @ 0x2447610
|
|
void Gambit_fn_02447610(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02447610: ; // 0x2447610
|
|
/* 02447610 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02447610 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447614 */ cpu->r[9] = 0x10110000u;
|
|
/* 02447618 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02447618 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0244761C */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 02447620 */ _t2 = cpu->r[9] + 0x0000739Au;
|
|
/* 02447620 */ cpu->r[0] = rbrew_read16(cpu->mem, _t2);
|
|
/* 02447624 */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
/* 02447628 */ _t3 = cpu->r[12] + 0xFFFFFFFEu;
|
|
/* 02447628 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[0]);
|
|
/* 0244762C */ return;
|
|
}
|
|
|
|
// fn_02447630 @ 0x2447630
|
|
void Gambit_fn_02447630(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02447630: ; // 0x2447630
|
|
/* 02447630 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02447630 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447634 */ return;
|
|
}
|
|
|
|
// fn_02447638 @ 0x2447638
|
|
void Gambit_fn_02447638(CPUState* cpu) {
|
|
L_02447638: ; // 0x2447638
|
|
/* 02447638 */ return;
|
|
}
|
|
|
|
// fn_0244763C @ 0x244763c
|
|
void Gambit_fn_0244763C(CPUState* cpu) {
|
|
L_0244763C: ; // 0x244763c
|
|
/* 0244763C */ return;
|
|
}
|
|
|
|
// fn_02447640 @ 0x2447640
|
|
void Gambit_fn_02447640(CPUState* cpu) {
|
|
L_02447640: ; // 0x2447640
|
|
/* 02447640 */ return;
|
|
}
|
|
|
|
// fn_02447644 @ 0x2447644
|
|
void Gambit_fn_02447644(CPUState* cpu) {
|
|
L_02447644: ; // 0x2447644
|
|
/* 02447644 */ return;
|
|
}
|
|
|
|
// fn_02447648 @ 0x2447648
|
|
void Gambit_fn_02447648(CPUState* cpu) {
|
|
L_02447648: ; // 0x2447648
|
|
/* 02447648 */ return;
|
|
}
|
|
|
|
// fn_0244764C @ 0x244764c
|
|
void Gambit_fn_0244764C(CPUState* cpu) {
|
|
L_0244764C: ; // 0x244764c
|
|
/* 0244764C */ cpu->r[3] = 0x00000001u;
|
|
/* 02447650 */ return;
|
|
}
|
|
|
|
// fn_02447654 @ 0x2447654
|
|
void Gambit_fn_02447654(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02447654: ; // 0x2447654
|
|
/* 02447654 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02447654 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447658 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02447658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0244765C */ cpu->ctr = cpu->r[0];
|
|
/* 02447660 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02447664 @ 0x2447664
|
|
void Gambit_fn_02447664(CPUState* cpu) {
|
|
L_02447664: ; // 0x2447664
|
|
/* 02447664 */ return;
|
|
}
|
|
|
|
// fn_02447668 @ 0x2447668
|
|
void Gambit_fn_02447668(CPUState* cpu) {
|
|
L_02447668: ; // 0x2447668
|
|
/* 02447668 */ cpu->r[3] = 0x00000000u;
|
|
/* 0244766C */ return;
|
|
}
|
|
|
|
// fn_02447670 @ 0x2447670
|
|
void Gambit_fn_02447670(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02447670: ; // 0x2447670
|
|
/* 02447670 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02447674 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02447674 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447674 */ cpu->r[9] = _t0;
|
|
/* 02447678 */ cpu->r[12] = 0x101D0000u;
|
|
/* 0244767C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02447680 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02447684 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447684 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02447684 */ if (_t2) goto L_02447688; else goto L_0244769C;
|
|
L_02447688: ; // 0x2447688
|
|
/* 02447688 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0244768C */ cpu->r[0] = 0x00000001u;
|
|
/* 02447690 */ cpu->r[7] = cpu->r[7] + 0xFFFFDB4Cu;
|
|
/* 02447694 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02447694 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447698 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02447698 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_0244769C: ; // 0x244769c
|
|
/* 0244769C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 024476A0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024476A0 */ _t6 = _t5 & 0x00000001u;
|
|
/* 024476A0 */ if (_t6) goto L_024476A4; else goto L_024476AC;
|
|
L_024476A4: ; // 0x24476a4
|
|
/* 024476A4 */ cpu->r[3] = 0x00000001u;
|
|
/* 024476A8 */ return;
|
|
L_024476AC: ; // 0x24476ac
|
|
/* 024476AC */ cpu->r[7] = 0x101D0000u;
|
|
/* 024476B0 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 024476B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 024476B0 */ cpu->r[7] = _t7;
|
|
/* 024476B4 */ cpu->r[11] = 0x101D0000u;
|
|
/* 024476B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 024476BC */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 024476C0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024476C0 */ _t9 = _t8 & 0x00000001u;
|
|
/* 024476C0 */ if (_t9) goto L_024476C4; else goto L_024476D8;
|
|
L_024476C4: ; // 0x24476c4
|
|
/* 024476C4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024476C8 */ cpu->r[9] = 0x00000001u;
|
|
/* 024476CC */ cpu->r[0] = cpu->r[0] + 0xFFFFDAE4u;
|
|
/* 024476D0 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 024476D0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 024476D4 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 024476D4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_024476D8: ; // 0x24476d8
|
|
/* 024476D8 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 024476DC */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 024476E0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 024476E4 */ return;
|
|
}
|
|
|
|
// fn_024476E8 @ 0x24476e8
|
|
void Gambit_fn_024476E8(CPUState* cpu) {
|
|
L_024476E8: ; // 0x24476e8
|
|
/* 024476E8 */ return;
|
|
}
|
|
|
|
// fn_024476EC @ 0x24476ec
|
|
void Gambit_fn_024476EC(CPUState* cpu) {
|
|
L_024476EC: ; // 0x24476ec
|
|
/* 024476EC */ cpu->r[3] = 0x00000000u;
|
|
/* 024476F0 */ return;
|
|
}
|
|
|
|
// fn_024476F4 @ 0x24476f4
|
|
void Gambit_fn_024476F4(CPUState* cpu) {
|
|
L_024476F4: ; // 0x24476f4
|
|
/* 024476F4 */ return;
|
|
}
|
|
|
|
// fn_024476F8 @ 0x24476f8
|
|
void Gambit_fn_024476F8(CPUState* cpu) {
|
|
L_024476F8: ; // 0x24476f8
|
|
/* 024476F8 */ return;
|
|
}
|
|
|
|
// fn_024476FC @ 0x24476fc
|
|
void Gambit_fn_024476FC(CPUState* cpu) {
|
|
L_024476FC: ; // 0x24476fc
|
|
/* 024476FC */ return;
|
|
}
|
|
|
|
// fn_02447700 @ 0x2447700
|
|
void Gambit_fn_02447700(CPUState* cpu) {
|
|
L_02447700: ; // 0x2447700
|
|
/* 02447700 */ return;
|
|
}
|
|
|
|
// fn_02447704 @ 0x2447704
|
|
void Gambit_fn_02447704(CPUState* cpu) {
|
|
L_02447704: ; // 0x2447704
|
|
/* 02447704 */ return;
|
|
}
|
|
|
|
// fn_02447708 @ 0x2447708
|
|
void Gambit_fn_02447708(CPUState* cpu) {
|
|
L_02447708: ; // 0x2447708
|
|
/* 02447708 */ return;
|
|
}
|
|
|
|
// fn_0244770C @ 0x244770c
|
|
void Gambit_fn_0244770C(CPUState* cpu) {
|
|
L_0244770C: ; // 0x244770c
|
|
/* 0244770C */ return;
|
|
}
|
|
|
|
// fn_02447710 @ 0x2447710
|
|
void Gambit_fn_02447710(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0208A0C8: ; // 0x208a0c8
|
|
/* 0208A0C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0208A0CC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0208A0CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0208A0CC */ cpu->r[1] = _t0;
|
|
/* 0208A0D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0208A0D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0208A0D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0208A0D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0208A0D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0208A0DC */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0208A0DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0208A0E0 */ cpu->r[12] = 0x00000000u;
|
|
/* 0208A0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0208A0E8 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0208A0E8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0208A0EC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0208A0EC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0208A0EC */ if (_t6) goto L_0208A114; else goto L_0208A0F0;
|
|
L_0208A0F0: ; // 0x208a0f0
|
|
/* 0208A0F0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0208A0F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0208A0F4 */ /* nop */
|
|
/* 0208A0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0208A0FC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0208A0FC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0208A0FC */ if (_t9) goto L_0208A100; else goto L_0208A114;
|
|
L_0208A100: ; // 0x208a100
|
|
/* 0208A100 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0208A100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0208A104 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0208A104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0208A108 */ cpu->ctr = cpu->r[0];
|
|
/* 0208A10C */ cpu->r[3] = cpu->r[31];
|
|
/* 0208A110 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0208A114: ; // 0x208a114
|
|
/* 0208A114 */ cpu->r[3] = cpu->r[31];
|
|
/* 0208A118 */ Gambit_fn_0208A040(cpu);
|
|
/* 0208A11C */ cpu->r[3] = cpu->r[31];
|
|
/* 0208A120 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0208A124 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0208A124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0208A128 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0208A128 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0208A12C */ cpu->lr = cpu->r[0];
|
|
/* 0208A130 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0208A134 */ return;
|
|
L_02447710: ; // 0x2447710
|
|
/* 02447710 */ cpu->r[3] = cpu->r[3] + 0x000001E0u;
|
|
/* 02447714 */ goto L_0208A0C8;
|
|
}
|
|
|
|
// fn_02447718 @ 0x2447718
|
|
void Gambit_fn_02447718(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02447718: ; // 0x2447718
|
|
/* 02447718 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 0244771C */ goto L_02447B5C;
|
|
L_02447B5C: ; // 0x2447b5c
|
|
/* 02447B5C */ cpu->r[0] = cpu->lr;
|
|
/* 02447B60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447B60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447B60 */ cpu->r[1] = _t0;
|
|
/* 02447B64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447B64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447B68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02447B68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02447B6C */ cpu->r[30] = cpu->r[3];
|
|
/* 02447B6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447B70 */ cpu->r[31] = cpu->r[4];
|
|
/* 02447B74 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02447B74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447B78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447B78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02447B78 */ if (_t5) goto L_02447BE8; else goto L_02447B7C;
|
|
L_02447B7C: ; // 0x2447b7c
|
|
/* 02447B7C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447B80 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447B84 */ cpu->r[0] = cpu->r[0] + 0xFFFFE0DCu;
|
|
/* 02447B88 */ cpu->r[12] = cpu->r[12] + 0xFFFFE0FCu;
|
|
/* 02447B8C */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02447B8C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447B90 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447B94 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02447B94 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02447B98 */ cpu->r[11] = cpu->r[11] + 0xFFFFE0ECu;
|
|
/* 02447B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447BA0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02447BA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447BA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447BA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02447BA4 */ if (_t10) goto L_02447BD8; else goto L_02447BA8;
|
|
L_02447BA8: ; // 0x2447ba8
|
|
/* 02447BA8 */ cpu->r[10] = 0x10010000u;
|
|
/* 02447BAC */ cpu->r[0] = 0x10010000u;
|
|
/* 02447BB0 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 02447BB4 */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 02447BB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02447BBC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02447BBC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02447BC0 */ cpu->r[0] = 0x10010000u;
|
|
/* 02447BC4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02447BC4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02447BC8 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 02447BCC */ cpu->r[4] = 0x00000000u;
|
|
/* 02447BD0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02447BD0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447BD4 */ Gambit_fn_02068798(cpu);
|
|
L_02447BD8: ; // 0x2447bd8
|
|
/* 02447BD8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02447BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02447BDC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447BDC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02447BDC */ if (_t15) goto L_02447BE8; else goto L_02447BE0;
|
|
L_02447BE0: ; // 0x2447be0
|
|
/* 02447BE0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02447BE4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02447BE8: ; // 0x2447be8
|
|
/* 02447BE8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02447BE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02447BEC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02447BEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02447BF0 */ cpu->lr = cpu->r[0];
|
|
/* 02447BF4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447BF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02447BF8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447BFC */ return;
|
|
}
|
|
|
|
// fn_02447720 @ 0x2447720
|
|
void Gambit_fn_02447720(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_02447720: ; // 0x2447720
|
|
/* 02447720 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02447724 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02447728 @ 0x2447728
|
|
void Gambit_fn_02447728(CPUState* cpu) {
|
|
L_02447728: ; // 0x2447728
|
|
/* 02447728 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 0244772C */ goto L_02447C00;
|
|
L_02447C00: ; // 0x2447c00
|
|
/* 02447C00 */ return;
|
|
}
|
|
|
|
// fn_02447730 @ 0x2447730
|
|
void Gambit_fn_02447730(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02447730: ; // 0x2447730
|
|
/* 02447730 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02447734 */ goto L_02447C04;
|
|
L_02447C04: ; // 0x2447c04
|
|
/* 02447C04 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02447C04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447C08 */ return;
|
|
}
|
|
|
|
// fn_02447738 @ 0x2447738
|
|
void Gambit_fn_02447738(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02447738: ; // 0x2447738
|
|
/* 02447738 */ cpu->r[0] = cpu->lr;
|
|
/* 0244773C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0244773C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0244773C */ cpu->r[1] = _t0;
|
|
/* 02447740 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447740 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447744 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02447748 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447748 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0244774C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244774C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0244774C */ if (_t4) goto L_02447750; else goto L_02447760;
|
|
L_02447750: ; // 0x2447750
|
|
/* 02447750 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02447754 */ Gambit_fn_02801A78(cpu);
|
|
/* 02447758 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0244775C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244775C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244775C */ if (_t6) goto L_024477BC; else goto L_02447760;
|
|
L_02447760: ; // 0x2447760
|
|
/* 02447760 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02447764 */ cpu->r[3] = cpu->r[31];
|
|
/* 02447768 */ cpu->r[5] = 0x00000000u;
|
|
/* 0244776C */ cpu->r[4] = cpu->r[4] + 0xFFFFDF38u;
|
|
/* 02447770 */ Gambit_fn_020B82F0(cpu);
|
|
/* 02447774 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447778 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0244777C */ cpu->r[12] = cpu->r[12] + 0xFFFFDF74u;
|
|
/* 02447780 */ cpu->r[11] = cpu->r[11] + 0xFFFFE0ECu;
|
|
/* 02447784 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02447784 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02447788 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0244778C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447790 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02447790 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447794 */ cpu->r[12] = cpu->r[12] + 0xFFFFE0FCu;
|
|
/* 02447798 */ cpu->r[0] = cpu->r[0] + 0xFFFFE0DCu;
|
|
/* 0244779C */ _t9 = cpu->r[31] + 0x000001C8u;
|
|
/* 0244779C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 024477A0 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 024477A0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024477A4 */ cpu->r[0] = 0x00000000u;
|
|
/* 024477A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024477AC */ _t11 = cpu->r[31] + 0x00000228u;
|
|
/* 024477AC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024477B0 */ cpu->r[4] = 0x00000001u;
|
|
/* 024477B4 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 024477B4 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 024477B8 */ Gambit_fn_02068B6C(cpu);
|
|
L_024477BC: ; // 0x24477bc
|
|
/* 024477BC */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024477BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024477C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024477C4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024477C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024477C8 */ cpu->lr = cpu->r[0];
|
|
/* 024477CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024477D0 */ return;
|
|
}
|
|
|
|
// fn_0244773C @ 0x244773c
|
|
void Gambit_fn_0244773C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_0244773C: ; // 0x244773c
|
|
/* 0244773C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0244773C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0244773C */ cpu->r[1] = _t0;
|
|
/* 02447740 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447740 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447744 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447744 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02447748 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447748 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0244774C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244774C */ _t4 = _t3 & 0x00000001u;
|
|
/* 0244774C */ if (_t4) goto L_02447750; else goto L_02447760;
|
|
L_02447750: ; // 0x2447750
|
|
/* 02447750 */ cpu->r[3] = 0x0000022Cu;
|
|
/* 02447754 */ Gambit_fn_02801A78(cpu);
|
|
/* 02447758 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 0244775C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244775C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244775C */ if (_t6) goto L_024477BC; else goto L_02447760;
|
|
L_02447760: ; // 0x2447760
|
|
/* 02447760 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02447764 */ cpu->r[3] = cpu->r[31];
|
|
/* 02447768 */ cpu->r[5] = 0x00000000u;
|
|
/* 0244776C */ cpu->r[4] = cpu->r[4] + 0xFFFFDF38u;
|
|
/* 02447770 */ Gambit_fn_020B82F0(cpu);
|
|
/* 02447774 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447778 */ cpu->r[11] = 0x100A0000u;
|
|
/* 0244777C */ cpu->r[12] = cpu->r[12] + 0xFFFFDF74u;
|
|
/* 02447780 */ cpu->r[11] = cpu->r[11] + 0xFFFFE0ECu;
|
|
/* 02447784 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02447784 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02447788 */ cpu->r[12] = 0x100A0000u;
|
|
/* 0244778C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447790 */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02447790 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447794 */ cpu->r[12] = cpu->r[12] + 0xFFFFE0FCu;
|
|
/* 02447798 */ cpu->r[0] = cpu->r[0] + 0xFFFFE0DCu;
|
|
/* 0244779C */ _t9 = cpu->r[31] + 0x000001C8u;
|
|
/* 0244779C */ rbrew_write32(cpu->mem, _t9, cpu->r[12]);
|
|
/* 024477A0 */ _t10 = cpu->r[31] + 0x0000000Cu;
|
|
/* 024477A0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 024477A4 */ cpu->r[0] = 0x00000000u;
|
|
/* 024477A8 */ cpu->r[3] = cpu->r[31];
|
|
/* 024477AC */ _t11 = cpu->r[31] + 0x00000228u;
|
|
/* 024477AC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 024477B0 */ cpu->r[4] = 0x00000001u;
|
|
/* 024477B4 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 024477B4 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 024477B8 */ Gambit_fn_02068B6C(cpu);
|
|
L_024477BC: ; // 0x24477bc
|
|
/* 024477BC */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 024477BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024477C0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024477C4 */ _t14 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024477C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024477C8 */ cpu->lr = cpu->r[0];
|
|
/* 024477CC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024477D0 */ return;
|
|
}
|
|
|
|
// fn_024477D4 @ 0x24477d4
|
|
void Gambit_fn_024477D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024477D4: ; // 0x24477d4
|
|
/* 024477D4 */ cpu->r[0] = cpu->lr;
|
|
/* 024477D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024477D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024477D8 */ cpu->r[1] = _t0;
|
|
/* 024477DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024477DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024477E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024477E4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024477E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024477E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024477EC */ Gambit_fn_020B8610(cpu);
|
|
/* 024477F0 */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 024477F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024477F4 */ Gambit_fn_020C38CC(cpu);
|
|
/* 024477F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024477FC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024477FC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024477FC */ if (_t5) goto L_02447800; else goto L_02447808;
|
|
L_02447800: ; // 0x2447800
|
|
/* 02447800 */ _t6 = cpu->r[31] + 0x00000224u;
|
|
/* 02447800 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447804 */ Gambit_fn_020C3988(cpu);
|
|
L_02447808: ; // 0x2447808
|
|
/* 02447808 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 02447808 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0244780C */ Gambit_fn_020C38E0(cpu);
|
|
/* 02447810 */ _t8 = cpu->r[31] + 0x00000224u;
|
|
/* 02447810 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02447814 */ cpu->r[0] = 0x00000001u;
|
|
/* 02447818 */ _t9 = cpu->r[12] + 0x00000100u;
|
|
/* 02447818 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 0244781C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0244781C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02447820 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447820 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02447824 */ cpu->lr = cpu->r[0];
|
|
/* 02447828 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0244782C */ return;
|
|
}
|
|
|
|
// fn_024477D8 @ 0x24477d8
|
|
void Gambit_fn_024477D8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024477D8: ; // 0x24477d8
|
|
/* 024477D8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024477D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024477D8 */ cpu->r[1] = _t0;
|
|
/* 024477DC */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024477DC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024477E0 */ cpu->r[31] = cpu->r[3];
|
|
/* 024477E4 */ cpu->r[4] = 0x00000001u;
|
|
/* 024477E8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024477E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024477EC */ Gambit_fn_020B8610(cpu);
|
|
/* 024477F0 */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 024477F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024477F4 */ Gambit_fn_020C38CC(cpu);
|
|
/* 024477F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024477FC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024477FC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024477FC */ if (_t5) goto L_02447800; else goto L_02447808;
|
|
L_02447800: ; // 0x2447800
|
|
/* 02447800 */ _t6 = cpu->r[31] + 0x00000224u;
|
|
/* 02447800 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447804 */ Gambit_fn_020C3988(cpu);
|
|
L_02447808: ; // 0x2447808
|
|
/* 02447808 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 02447808 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0244780C */ Gambit_fn_020C38E0(cpu);
|
|
/* 02447810 */ _t8 = cpu->r[31] + 0x00000224u;
|
|
/* 02447810 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02447814 */ cpu->r[0] = 0x00000001u;
|
|
/* 02447818 */ _t9 = cpu->r[12] + 0x00000100u;
|
|
/* 02447818 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[0]);
|
|
/* 0244781C */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 0244781C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02447820 */ _t11 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447820 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02447824 */ cpu->lr = cpu->r[0];
|
|
/* 02447828 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0244782C */ return;
|
|
}
|
|
|
|
// fn_02447830 @ 0x2447830
|
|
void Gambit_fn_02447830(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02447830: ; // 0x2447830
|
|
/* 02447830 */ cpu->r[0] = cpu->lr;
|
|
/* 02447834 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447834 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447834 */ cpu->r[1] = _t0;
|
|
/* 02447838 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447838 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244783C */ cpu->r[31] = cpu->r[3];
|
|
/* 02447840 */ cpu->r[4] = 0x00000000u;
|
|
/* 02447844 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447844 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02447848 */ Gambit_fn_020B8610(cpu);
|
|
/* 0244784C */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 0244784C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02447850 */ Gambit_fn_020C3920(cpu);
|
|
/* 02447854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447858 */ _t4 = cpu->r[31] + 0x00000224u;
|
|
/* 02447858 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0244785C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244785C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244785C */ if (_t6) goto L_02447874; else goto L_02447860;
|
|
L_02447860: ; // 0x2447860
|
|
/* 02447860 */ Gambit_fn_020C3948(cpu);
|
|
/* 02447864 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 02447864 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02447868 */ cpu->r[0] = 0x00000000u;
|
|
/* 0244786C */ _t8 = cpu->r[12] + 0x00000100u;
|
|
/* 0244786C */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
/* 02447870 */ goto L_02447884;
|
|
L_02447874: ; // 0x2447874
|
|
/* 02447874 */ Gambit_fn_020C3988(cpu);
|
|
/* 02447878 */ _t9 = cpu->r[31] + 0x00000224u;
|
|
/* 02447878 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0244787C */ cpu->r[0] = 0x00000000u;
|
|
/* 02447880 */ _t10 = cpu->r[12] + 0x00000100u;
|
|
/* 02447880 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[0]);
|
|
L_02447884: ; // 0x2447884
|
|
/* 02447884 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02447884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02447888 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447888 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0244788C */ cpu->lr = cpu->r[0];
|
|
/* 02447890 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447894 */ return;
|
|
}
|
|
|
|
// fn_02447834 @ 0x2447834
|
|
void Gambit_fn_02447834(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12;
|
|
|
|
L_02447834: ; // 0x2447834
|
|
/* 02447834 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447834 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447834 */ cpu->r[1] = _t0;
|
|
/* 02447838 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447838 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244783C */ cpu->r[31] = cpu->r[3];
|
|
/* 02447840 */ cpu->r[4] = 0x00000000u;
|
|
/* 02447844 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447844 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02447848 */ Gambit_fn_020B8610(cpu);
|
|
/* 0244784C */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 0244784C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02447850 */ Gambit_fn_020C3920(cpu);
|
|
/* 02447854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447858 */ _t4 = cpu->r[31] + 0x00000224u;
|
|
/* 02447858 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0244785C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244785C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244785C */ if (_t6) goto L_02447874; else goto L_02447860;
|
|
L_02447860: ; // 0x2447860
|
|
/* 02447860 */ Gambit_fn_020C3948(cpu);
|
|
/* 02447864 */ _t7 = cpu->r[31] + 0x00000224u;
|
|
/* 02447864 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02447868 */ cpu->r[0] = 0x00000000u;
|
|
/* 0244786C */ _t8 = cpu->r[12] + 0x00000100u;
|
|
/* 0244786C */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[0]);
|
|
/* 02447870 */ goto L_02447884;
|
|
L_02447874: ; // 0x2447874
|
|
/* 02447874 */ Gambit_fn_020C3988(cpu);
|
|
/* 02447878 */ _t9 = cpu->r[31] + 0x00000224u;
|
|
/* 02447878 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9);
|
|
/* 0244787C */ cpu->r[0] = 0x00000000u;
|
|
/* 02447880 */ _t10 = cpu->r[12] + 0x00000100u;
|
|
/* 02447880 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[0]);
|
|
L_02447884: ; // 0x2447884
|
|
/* 02447884 */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 02447884 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02447888 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447888 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0244788C */ cpu->lr = cpu->r[0];
|
|
/* 02447890 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447894 */ return;
|
|
}
|
|
|
|
// fn_02447898 @ 0x2447898
|
|
void Gambit_fn_02447898(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02447898: ; // 0x2447898
|
|
/* 02447898 */ cpu->r[0] = cpu->lr;
|
|
/* 0244789C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0244789C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0244789C */ cpu->r[1] = _t0;
|
|
/* 024478A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024478A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024478A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024478A8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024478A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024478AC */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 024478AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024478B0 */ Gambit_fn_020C3988(cpu);
|
|
/* 024478B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024478B8 */ Gambit_fn_020B86A0(cpu);
|
|
/* 024478BC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024478BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024478C0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024478C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024478C4 */ cpu->lr = cpu->r[0];
|
|
/* 024478C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024478CC */ return;
|
|
}
|
|
|
|
// fn_0244789C @ 0x244789c
|
|
void Gambit_fn_0244789C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_0244789C: ; // 0x244789c
|
|
/* 0244789C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0244789C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0244789C */ cpu->r[1] = _t0;
|
|
/* 024478A0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024478A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024478A4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024478A8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024478A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024478AC */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 024478AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024478B0 */ Gambit_fn_020C3988(cpu);
|
|
/* 024478B4 */ cpu->r[3] = cpu->r[31];
|
|
/* 024478B8 */ Gambit_fn_020B86A0(cpu);
|
|
/* 024478BC */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 024478BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 024478C0 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024478C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 024478C4 */ cpu->lr = cpu->r[0];
|
|
/* 024478C8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024478CC */ return;
|
|
}
|
|
|
|
// fn_024478D4 @ 0x24478d4
|
|
void Gambit_fn_024478D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_024478D4: ; // 0x24478d4
|
|
/* 024478D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024478D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024478D4 */ cpu->r[1] = _t0;
|
|
/* 024478D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024478D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024478DC */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024478DC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024478E0 */ _t3 = cpu->r[3] + 0x00000118u;
|
|
/* 024478E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024478E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Eu, 0x0000001Eu);
|
|
/* 024478E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024478E8 */ cpu->r[31] = 0x00000000u;
|
|
/* 024478EC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024478EC */ _t5 = _t4 & 0x00000001u;
|
|
/* 024478EC */ if (_t5) goto L_02447904; else goto L_024478F0;
|
|
L_024478F0: ; // 0x24478f0
|
|
/* 024478F0 */ _t6 = cpu->r[3] + 0x00000224u;
|
|
/* 024478F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024478F4 */ Gambit_fn_020C38CC(cpu);
|
|
/* 024478F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024478FC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024478FC */ _t8 = _t7 & 0x00000001u;
|
|
/* 024478FC */ if (_t8) goto L_02447904; else goto L_02447900;
|
|
L_02447900: ; // 0x2447900
|
|
/* 02447900 */ cpu->r[31] = 0x00000001u;
|
|
L_02447904: ; // 0x2447904
|
|
/* 02447904 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02447904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02447908 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu);
|
|
/* 0244790C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244790C */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02447910 */ cpu->lr = cpu->r[0];
|
|
/* 02447914 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447918 */ return;
|
|
}
|
|
|
|
// fn_0244793C @ 0x244793c
|
|
void Gambit_fn_0244793C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_0244793C: ; // 0x244793c
|
|
/* 0244793C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0244793C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0244793C */ cpu->r[1] = _t0;
|
|
/* 02447940 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447940 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447944 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447948 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447948 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0244794C */ _t3 = cpu->r[31] + 0x00000228u;
|
|
/* 0244794C */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02447950 */ cpu->r[5] = 0x00000003u;
|
|
/* 02447954 */ Gambit_fn_020A7D70(cpu);
|
|
/* 02447958 */ _t4 = cpu->r[31] + 0x00000228u;
|
|
/* 02447958 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 0244795C */ Gambit_fn_020A7E60(cpu);
|
|
/* 02447960 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02447960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02447964 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447964 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447968 */ cpu->lr = cpu->r[0];
|
|
/* 0244796C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447970 */ return;
|
|
}
|
|
|
|
// fn_02447974 @ 0x2447974
|
|
void Gambit_fn_02447974(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_02447974: ; // 0x2447974
|
|
/* 02447974 */ cpu->r[0] = cpu->lr;
|
|
/* 02447978 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447978 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447978 */ cpu->r[1] = _t0;
|
|
/* 0244797C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0244797C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02447980 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447984 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447984 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02447988 */ cpu->r[12] = cpu->r[12] + 0xFFFFDF4Cu;
|
|
/* 0244798C */ cpu->r[30] = cpu->r[3];
|
|
/* 02447990 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447990 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447994 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447998 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02447998 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0244799C */ cpu->r[0] = cpu->r[0] + 0xFFFFDEF0u;
|
|
/* 024479A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024479A4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024479A4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024479A8 */ Gambit_fn_026D86C0(cpu);
|
|
/* 024479AC */ cpu->r[12] = 0x101D0000u;
|
|
/* 024479B0 */ _t6 = cpu->r[12] + 0xFFFFDBBCu;
|
|
/* 024479B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024479B0 */ cpu->r[12] = _t6;
|
|
/* 024479B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024479B8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024479BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024479C0 */ cpu->r[4] = cpu->r[4] + 0xFFFFEE1Cu;
|
|
/* 024479C4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024479C4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024479C4 */ if (_t8) goto L_024479C8; else goto L_024479DC;
|
|
L_024479C8: ; // 0x24479c8
|
|
/* 024479C8 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024479CC */ cpu->r[8] = 0x00000001u;
|
|
/* 024479D0 */ cpu->r[9] = cpu->r[9] + 0xFFFFDF18u;
|
|
/* 024479D4 */ _t9 = cpu->r[12] + 0x00000000u;
|
|
/* 024479D4 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 024479D8 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 024479D8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
L_024479DC: ; // 0x24479dc
|
|
/* 024479DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024479E0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024479E0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024479E0 */ if (_t12) goto L_02447A14; else goto L_024479E4;
|
|
L_024479E4: ; // 0x24479e4
|
|
/* 024479E4 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 024479E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024479E8 */ _t14 = cpu->r[10] + 0x0000001Cu;
|
|
/* 024479E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024479EC */ cpu->ctr = cpu->r[0];
|
|
/* 024479F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024479F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024479F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024479FC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024479FC */ _t16 = _t15 & 0x00000001u;
|
|
/* 024479FC */ if (_t16) goto L_02447A14; else goto L_02447A00;
|
|
L_02447A00: ; // 0x2447a00
|
|
/* 02447A00 */ cpu->r[3] = cpu->r[31];
|
|
/* 02447A04 */ cpu->r[4] = 0x00002000u;
|
|
/* 02447A08 */ _t17 = cpu->r[30] + 0x00000224u;
|
|
/* 02447A08 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02447A0C */ Gambit_fn_020DB1C8(cpu);
|
|
/* 02447A10 */ goto L_02447A24;
|
|
L_02447A14: ; // 0x2447a14
|
|
/* 02447A14 */ cpu->r[3] = 0x00000000u;
|
|
/* 02447A18 */ cpu->r[4] = 0x00002000u;
|
|
/* 02447A1C */ _t18 = cpu->r[30] + 0x00000224u;
|
|
/* 02447A1C */ rbrew_write32(cpu->mem, _t18, cpu->r[3]);
|
|
/* 02447A20 */ Gambit_fn_020DB1C8(cpu);
|
|
L_02447A24: ; // 0x2447a24
|
|
/* 02447A24 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02447A28 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 02447A28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02447A2C */ cpu->lr = cpu->r[0];
|
|
/* 02447A30 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02447A30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02447A34 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447A38 */ return;
|
|
}
|
|
|
|
// fn_02447978 @ 0x2447978
|
|
void Gambit_fn_02447978(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_02447978: ; // 0x2447978
|
|
/* 02447978 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447978 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447978 */ cpu->r[1] = _t0;
|
|
/* 0244797C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 0244797C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02447980 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447984 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447984 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02447988 */ cpu->r[12] = cpu->r[12] + 0xFFFFDF4Cu;
|
|
/* 0244798C */ cpu->r[30] = cpu->r[3];
|
|
/* 02447990 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447990 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447994 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447998 */ _t4 = cpu->r[1] + 0x00000008u;
|
|
/* 02447998 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 0244799C */ cpu->r[0] = cpu->r[0] + 0xFFFFDEF0u;
|
|
/* 024479A0 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 024479A4 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024479A4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 024479A8 */ Gambit_fn_026D86C0(cpu);
|
|
/* 024479AC */ cpu->r[12] = 0x101D0000u;
|
|
/* 024479B0 */ _t6 = cpu->r[12] + 0xFFFFDBBCu;
|
|
/* 024479B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 024479B0 */ cpu->r[12] = _t6;
|
|
/* 024479B4 */ cpu->r[31] = cpu->r[3];
|
|
/* 024479B8 */ cpu->r[4] = 0x101D0000u;
|
|
/* 024479BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024479C0 */ cpu->r[4] = cpu->r[4] + 0xFFFFEE1Cu;
|
|
/* 024479C4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024479C4 */ _t8 = _t7 & 0x00000001u;
|
|
/* 024479C4 */ if (_t8) goto L_024479C8; else goto L_024479DC;
|
|
L_024479C8: ; // 0x24479c8
|
|
/* 024479C8 */ cpu->r[9] = 0x100A0000u;
|
|
/* 024479CC */ cpu->r[8] = 0x00000001u;
|
|
/* 024479D0 */ cpu->r[9] = cpu->r[9] + 0xFFFFDF18u;
|
|
/* 024479D4 */ _t9 = cpu->r[12] + 0x00000000u;
|
|
/* 024479D4 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]);
|
|
/* 024479D8 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 024479D8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
L_024479DC: ; // 0x24479dc
|
|
/* 024479DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 024479E0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024479E0 */ _t12 = _t11 & 0x00000001u;
|
|
/* 024479E0 */ if (_t12) goto L_02447A14; else goto L_024479E4;
|
|
L_024479E4: ; // 0x24479e4
|
|
/* 024479E4 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 024479E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13);
|
|
/* 024479E8 */ _t14 = cpu->r[10] + 0x0000001Cu;
|
|
/* 024479E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 024479EC */ cpu->ctr = cpu->r[0];
|
|
/* 024479F0 */ cpu->r[3] = cpu->r[31];
|
|
/* 024479F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024479F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024479FC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024479FC */ _t16 = _t15 & 0x00000001u;
|
|
/* 024479FC */ if (_t16) goto L_02447A14; else goto L_02447A00;
|
|
L_02447A00: ; // 0x2447a00
|
|
/* 02447A00 */ cpu->r[3] = cpu->r[31];
|
|
/* 02447A04 */ cpu->r[4] = 0x00002000u;
|
|
/* 02447A08 */ _t17 = cpu->r[30] + 0x00000224u;
|
|
/* 02447A08 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]);
|
|
/* 02447A0C */ Gambit_fn_020DB1C8(cpu);
|
|
/* 02447A10 */ goto L_02447A24;
|
|
L_02447A14: ; // 0x2447a14
|
|
/* 02447A14 */ cpu->r[3] = 0x00000000u;
|
|
/* 02447A18 */ cpu->r[4] = 0x00002000u;
|
|
/* 02447A1C */ _t18 = cpu->r[30] + 0x00000224u;
|
|
/* 02447A1C */ rbrew_write32(cpu->mem, _t18, cpu->r[3]);
|
|
/* 02447A20 */ Gambit_fn_020DB1C8(cpu);
|
|
L_02447A24: ; // 0x2447a24
|
|
/* 02447A24 */ _t19 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02447A28 */ _t20 = cpu->r[1] + 0x00000010u;
|
|
/* 02447A28 */ cpu->r[30] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02447A2C */ cpu->lr = cpu->r[0];
|
|
/* 02447A30 */ _t21 = cpu->r[1] + 0x00000014u;
|
|
/* 02447A30 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02447A34 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447A38 */ return;
|
|
}
|
|
|
|
// fn_02447A3C @ 0x2447a3c
|
|
void Gambit_fn_02447A3C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02447A3C: ; // 0x2447a3c
|
|
/* 02447A3C */ cpu->r[0] = cpu->lr;
|
|
/* 02447A40 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447A40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447A40 */ cpu->r[1] = _t0;
|
|
/* 02447A44 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02447A44 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447A48 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447A4C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447A50 */ cpu->r[4] = cpu->r[31];
|
|
/* 02447A54 */ cpu->r[12] = cpu->r[12] + 0xFFFFDF5Cu;
|
|
/* 02447A58 */ cpu->r[3] = 0x00000000u;
|
|
/* 02447A5C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447A5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02447A60 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447A64 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02447A64 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02447A68 */ cpu->r[0] = cpu->r[0] + 0xFFFFDEF0u;
|
|
/* 02447A6C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447A70 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447A70 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02447A74 */ Gambit_fn_020A7150(cpu);
|
|
/* 02447A78 */ _t5 = cpu->r[31] + 0x00000228u;
|
|
/* 02447A78 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02447A7C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447A80 */ cpu->lr = cpu->r[0];
|
|
/* 02447A84 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02447A84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02447A88 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447A8C */ return;
|
|
}
|
|
|
|
// fn_02447A40 @ 0x2447a40
|
|
void Gambit_fn_02447A40(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7;
|
|
|
|
L_02447A40: ; // 0x2447a40
|
|
/* 02447A40 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447A40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447A40 */ cpu->r[1] = _t0;
|
|
/* 02447A44 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02447A44 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447A48 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447A4C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447A50 */ cpu->r[4] = cpu->r[31];
|
|
/* 02447A54 */ cpu->r[12] = cpu->r[12] + 0xFFFFDF5Cu;
|
|
/* 02447A58 */ cpu->r[3] = 0x00000000u;
|
|
/* 02447A5C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447A5C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02447A60 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447A64 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02447A64 */ rbrew_write32(cpu->mem, _t3, cpu->r[12]);
|
|
/* 02447A68 */ cpu->r[0] = cpu->r[0] + 0xFFFFDEF0u;
|
|
/* 02447A6C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447A70 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447A70 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02447A74 */ Gambit_fn_020A7150(cpu);
|
|
/* 02447A78 */ _t5 = cpu->r[31] + 0x00000228u;
|
|
/* 02447A78 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]);
|
|
/* 02447A7C */ _t6 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447A80 */ cpu->lr = cpu->r[0];
|
|
/* 02447A84 */ _t7 = cpu->r[1] + 0x00000014u;
|
|
/* 02447A84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02447A88 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447A8C */ return;
|
|
}
|
|
|
|
// fn_02447A90 @ 0x2447a90
|
|
void Gambit_fn_02447A90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02447A90: ; // 0x2447a90
|
|
/* 02447A90 */ cpu->r[0] = cpu->lr;
|
|
/* 02447A94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447A94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447A94 */ cpu->r[1] = _t0;
|
|
/* 02447A98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447A98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447A9C */ cpu->r[31] = cpu->r[3];
|
|
/* 02447AA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447AA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02447AA4 */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 02447AA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02447AA8 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02447AA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02447AAC */ _t5 = cpu->r[12] + 0x000000DCu;
|
|
/* 02447AAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02447AB0 */ cpu->ctr = cpu->r[0];
|
|
/* 02447AB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02447AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447ABC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447ABC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02447ABC */ if (_t7) goto L_02447AC8; else goto L_02447AC0;
|
|
L_02447AC0: ; // 0x2447ac0
|
|
/* 02447AC0 */ _t8 = cpu->r[31] + 0x00000224u;
|
|
/* 02447AC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02447AC4 */ Gambit_fn_020C39E0(cpu);
|
|
L_02447AC8: ; // 0x2447ac8
|
|
/* 02447AC8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02447AC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02447ACC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447ACC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02447AD0 */ cpu->lr = cpu->r[0];
|
|
/* 02447AD4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447AD8 */ return;
|
|
}
|
|
|
|
// fn_02447A94 @ 0x2447a94
|
|
void Gambit_fn_02447A94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10;
|
|
|
|
L_02447A94: ; // 0x2447a94
|
|
/* 02447A94 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447A94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447A94 */ cpu->r[1] = _t0;
|
|
/* 02447A98 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447A98 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447A9C */ cpu->r[31] = cpu->r[3];
|
|
/* 02447AA0 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447AA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02447AA4 */ _t3 = cpu->r[31] + 0x00000224u;
|
|
/* 02447AA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02447AA8 */ _t4 = cpu->r[3] + 0x00000000u;
|
|
/* 02447AA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02447AAC */ _t5 = cpu->r[12] + 0x000000DCu;
|
|
/* 02447AAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02447AB0 */ cpu->ctr = cpu->r[0];
|
|
/* 02447AB4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02447AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447ABC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447ABC */ _t7 = _t6 & 0x00000001u;
|
|
/* 02447ABC */ if (_t7) goto L_02447AC8; else goto L_02447AC0;
|
|
L_02447AC0: ; // 0x2447ac0
|
|
/* 02447AC0 */ _t8 = cpu->r[31] + 0x00000224u;
|
|
/* 02447AC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02447AC4 */ Gambit_fn_020C39E0(cpu);
|
|
L_02447AC8: ; // 0x2447ac8
|
|
/* 02447AC8 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02447AC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02447ACC */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447ACC */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02447AD0 */ cpu->lr = cpu->r[0];
|
|
/* 02447AD4 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447AD8 */ return;
|
|
}
|
|
|
|
// fn_02447ADC @ 0x2447adc
|
|
void Gambit_fn_02447ADC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02447ADC: ; // 0x2447adc
|
|
/* 02447ADC */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02447AE0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447AE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447AE0 */ cpu->r[1] = _t0;
|
|
/* 02447AE4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02447AE8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02447AEC */ _t1 = cpu->r[10] + 0x00007690u;
|
|
/* 02447AEC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02447AEC */ cpu->r[10] = _t1;
|
|
/* 02447AF0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02447AF4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02447AF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02447AF8 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02447AFC */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447B00 */ _t3 = cpu->r[7] + 0x000076A0u;
|
|
/* 02447B00 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02447B00 */ cpu->r[7] = _t3;
|
|
/* 02447B04 */ _t4 = cpu->r[8] + 0x00007698u;
|
|
/* 02447B04 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02447B04 */ cpu->r[8] = _t4;
|
|
/* 02447B08 */ cpu->r[0] = 0x00000002u;
|
|
/* 02447B0C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02447B0C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02447B10 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447B14 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02447B14 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447B18 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02447B1C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02447B1C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02447B20 */ _t8 = cpu->r[8] + 0x000076B0u;
|
|
/* 02447B20 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02447B20 */ cpu->r[8] = _t8;
|
|
/* 02447B24 */ _t9 = cpu->r[12] + 0x000076A8u;
|
|
/* 02447B24 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02447B24 */ cpu->r[12] = _t9;
|
|
/* 02447B28 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02447B28 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02447B2C */ cpu->r[0] = 0x00000004u;
|
|
/* 02447B30 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02447B30 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02447B34 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02447B38 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02447B38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447B3C */ _t13 = cpu->r[11] + 0x000076B8u;
|
|
/* 02447B3C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447B40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447B44 */ return;
|
|
}
|
|
|
|
// fn_02447AE0 @ 0x2447ae0
|
|
void Gambit_fn_02447AE0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02447AE0: ; // 0x2447ae0
|
|
/* 02447AE0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447AE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447AE0 */ cpu->r[1] = _t0;
|
|
/* 02447AE4 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02447AE8 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02447AEC */ _t1 = cpu->r[10] + 0x00007690u;
|
|
/* 02447AEC */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02447AEC */ cpu->r[10] = _t1;
|
|
/* 02447AF0 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02447AF4 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02447AF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02447AF8 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02447AFC */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447B00 */ _t3 = cpu->r[7] + 0x000076A0u;
|
|
/* 02447B00 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02447B00 */ cpu->r[7] = _t3;
|
|
/* 02447B04 */ _t4 = cpu->r[8] + 0x00007698u;
|
|
/* 02447B04 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02447B04 */ cpu->r[8] = _t4;
|
|
/* 02447B08 */ cpu->r[0] = 0x00000002u;
|
|
/* 02447B0C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02447B0C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02447B10 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447B14 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02447B14 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447B18 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02447B1C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02447B1C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02447B20 */ _t8 = cpu->r[8] + 0x000076B0u;
|
|
/* 02447B20 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02447B20 */ cpu->r[8] = _t8;
|
|
/* 02447B24 */ _t9 = cpu->r[12] + 0x000076A8u;
|
|
/* 02447B24 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02447B24 */ cpu->r[12] = _t9;
|
|
/* 02447B28 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02447B28 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02447B2C */ cpu->r[0] = 0x00000004u;
|
|
/* 02447B30 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02447B30 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02447B34 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02447B38 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02447B38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447B3C */ _t13 = cpu->r[11] + 0x000076B8u;
|
|
/* 02447B3C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447B40 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447B44 */ return;
|
|
}
|
|
|
|
// fn_02447B48 @ 0x2447b48
|
|
void Gambit_fn_02447B48(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_02447B48: ; // 0x2447b48
|
|
/* 02447B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447B4C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447B4C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02447B4C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02447B4C */ goto L_02447B50;
|
|
L_02447B50: ; // 0x2447b50
|
|
/* 02447B50 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02447B50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02447B54 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447B54 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02447B54 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02447B54 */ goto L_02447B58;
|
|
L_02447B58: ; // 0x2447b58
|
|
/* 02447B58 */ 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_02447B5C @ 0x2447b5c
|
|
void Gambit_fn_02447B5C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02447B5C: ; // 0x2447b5c
|
|
/* 02447B5C */ cpu->r[0] = cpu->lr;
|
|
/* 02447B60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447B60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447B60 */ cpu->r[1] = _t0;
|
|
/* 02447B64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447B64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447B68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02447B68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02447B6C */ cpu->r[30] = cpu->r[3];
|
|
/* 02447B6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447B70 */ cpu->r[31] = cpu->r[4];
|
|
/* 02447B74 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02447B74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447B78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447B78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02447B78 */ if (_t5) goto L_02447BE8; else goto L_02447B7C;
|
|
L_02447B7C: ; // 0x2447b7c
|
|
/* 02447B7C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447B80 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447B84 */ cpu->r[0] = cpu->r[0] + 0xFFFFE0DCu;
|
|
/* 02447B88 */ cpu->r[12] = cpu->r[12] + 0xFFFFE0FCu;
|
|
/* 02447B8C */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02447B8C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447B90 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447B94 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02447B94 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02447B98 */ cpu->r[11] = cpu->r[11] + 0xFFFFE0ECu;
|
|
/* 02447B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447BA0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02447BA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447BA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447BA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02447BA4 */ if (_t10) goto L_02447BD8; else goto L_02447BA8;
|
|
L_02447BA8: ; // 0x2447ba8
|
|
/* 02447BA8 */ cpu->r[10] = 0x10010000u;
|
|
/* 02447BAC */ cpu->r[0] = 0x10010000u;
|
|
/* 02447BB0 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 02447BB4 */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 02447BB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02447BBC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02447BBC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02447BC0 */ cpu->r[0] = 0x10010000u;
|
|
/* 02447BC4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02447BC4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02447BC8 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 02447BCC */ cpu->r[4] = 0x00000000u;
|
|
/* 02447BD0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02447BD0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447BD4 */ Gambit_fn_02068798(cpu);
|
|
L_02447BD8: ; // 0x2447bd8
|
|
/* 02447BD8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02447BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02447BDC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447BDC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02447BDC */ if (_t15) goto L_02447BE8; else goto L_02447BE0;
|
|
L_02447BE0: ; // 0x2447be0
|
|
/* 02447BE0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02447BE4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02447BE8: ; // 0x2447be8
|
|
/* 02447BE8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02447BE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02447BEC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02447BEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02447BF0 */ cpu->lr = cpu->r[0];
|
|
/* 02447BF4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447BF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02447BF8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447BFC */ return;
|
|
}
|
|
|
|
// fn_02447B60 @ 0x2447b60
|
|
void Gambit_fn_02447B60(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02447B60: ; // 0x2447b60
|
|
/* 02447B60 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447B60 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447B60 */ cpu->r[1] = _t0;
|
|
/* 02447B64 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447B64 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447B68 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02447B68 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02447B6C */ cpu->r[30] = cpu->r[3];
|
|
/* 02447B6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447B70 */ cpu->r[31] = cpu->r[4];
|
|
/* 02447B74 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02447B74 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447B78 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447B78 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02447B78 */ if (_t5) goto L_02447BE8; else goto L_02447B7C;
|
|
L_02447B7C: ; // 0x2447b7c
|
|
/* 02447B7C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447B80 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447B84 */ cpu->r[0] = cpu->r[0] + 0xFFFFE0DCu;
|
|
/* 02447B88 */ cpu->r[12] = cpu->r[12] + 0xFFFFE0FCu;
|
|
/* 02447B8C */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02447B8C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447B90 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447B94 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02447B94 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02447B98 */ cpu->r[11] = cpu->r[11] + 0xFFFFE0ECu;
|
|
/* 02447B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02447BA0 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02447BA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447BA4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447BA4 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02447BA4 */ if (_t10) goto L_02447BD8; else goto L_02447BA8;
|
|
L_02447BA8: ; // 0x2447ba8
|
|
/* 02447BA8 */ cpu->r[10] = 0x10010000u;
|
|
/* 02447BAC */ cpu->r[0] = 0x10010000u;
|
|
/* 02447BB0 */ cpu->r[10] = cpu->r[10] + 0x00004B98u;
|
|
/* 02447BB4 */ cpu->r[0] = cpu->r[0] + 0x00004B88u;
|
|
/* 02447BB8 */ cpu->r[3] = cpu->r[30];
|
|
/* 02447BBC */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02447BBC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02447BC0 */ cpu->r[0] = 0x10010000u;
|
|
/* 02447BC4 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02447BC4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 02447BC8 */ cpu->r[0] = cpu->r[0] + 0x00004BA8u;
|
|
/* 02447BCC */ cpu->r[4] = 0x00000000u;
|
|
/* 02447BD0 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02447BD0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447BD4 */ Gambit_fn_02068798(cpu);
|
|
L_02447BD8: ; // 0x2447bd8
|
|
/* 02447BD8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02447BD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02447BDC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447BDC */ _t15 = _t14 & 0x00000001u;
|
|
/* 02447BDC */ if (_t15) goto L_02447BE8; else goto L_02447BE0;
|
|
L_02447BE0: ; // 0x2447be0
|
|
/* 02447BE0 */ cpu->r[3] = cpu->r[30];
|
|
/* 02447BE4 */ Gambit_fn_02801BB0(cpu);
|
|
L_02447BE8: ; // 0x2447be8
|
|
/* 02447BE8 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02447BE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02447BEC */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02447BEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02447BF0 */ cpu->lr = cpu->r[0];
|
|
/* 02447BF4 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447BF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02447BF8 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447BFC */ return;
|
|
}
|
|
|
|
// fn_02447C00 @ 0x2447c00
|
|
void Gambit_fn_02447C00(CPUState* cpu) {
|
|
L_02447C00: ; // 0x2447c00
|
|
/* 02447C00 */ return;
|
|
}
|
|
|
|
// fn_02447C04 @ 0x2447c04
|
|
void Gambit_fn_02447C04(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02447C04: ; // 0x2447c04
|
|
/* 02447C04 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02447C04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447C08 */ return;
|
|
}
|
|
|
|
// fn_02447C0C @ 0x2447c0c
|
|
void Gambit_fn_02447C0C(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02447C0C: ; // 0x2447c0c
|
|
/* 02447C0C */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02447C0C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447C10 */ return;
|
|
}
|
|
|
|
// fn_02447C14 @ 0x2447c14
|
|
void Gambit_fn_02447C14(CPUState* cpu) {
|
|
L_02447C14: ; // 0x2447c14
|
|
/* 02447C14 */ return;
|
|
}
|
|
|
|
// fn_02447C18 @ 0x2447c18
|
|
void Gambit_fn_02447C18(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02447C18: ; // 0x2447c18
|
|
/* 02447C18 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 02447C18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447C1C */ return;
|
|
}
|
|
|
|
// fn_02447C20 @ 0x2447c20
|
|
void Gambit_fn_02447C20(CPUState* cpu) {
|
|
L_02447C20: ; // 0x2447c20
|
|
/* 02447C20 */ return;
|
|
}
|
|
|
|
// fn_02447C24 @ 0x2447c24
|
|
void Gambit_fn_02447C24(CPUState* cpu) {
|
|
L_02447C24: ; // 0x2447c24
|
|
/* 02447C24 */ return;
|
|
}
|
|
|
|
// fn_02447C28 @ 0x2447c28
|
|
void Gambit_fn_02447C28(CPUState* cpu) {
|
|
L_02447C28: ; // 0x2447c28
|
|
/* 02447C28 */ return;
|
|
}
|
|
|
|
// fn_02447C2C @ 0x2447c2c
|
|
void Gambit_fn_02447C2C(CPUState* cpu) {
|
|
L_02447C2C: ; // 0x2447c2c
|
|
/* 02447C2C */ return;
|
|
}
|
|
|
|
// fn_02447C30 @ 0x2447c30
|
|
void Gambit_fn_02447C30(CPUState* cpu) {
|
|
L_02447C30: ; // 0x2447c30
|
|
/* 02447C30 */ cpu->r[3] = 0x00000001u;
|
|
/* 02447C34 */ return;
|
|
}
|
|
|
|
// fn_02447C38 @ 0x2447c38
|
|
void Gambit_fn_02447C38(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_02447C38: ; // 0x2447c38
|
|
/* 02447C38 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02447C38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447C3C */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 02447C3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02447C40 */ cpu->ctr = cpu->r[0];
|
|
/* 02447C44 */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02447C48 @ 0x2447c48
|
|
void Gambit_fn_02447C48(CPUState* cpu) {
|
|
L_02447C48: ; // 0x2447c48
|
|
/* 02447C48 */ return;
|
|
}
|
|
|
|
// fn_02447C4C @ 0x2447c4c
|
|
void Gambit_fn_02447C4C(CPUState* cpu) {
|
|
L_02447C4C: ; // 0x2447c4c
|
|
/* 02447C4C */ cpu->r[3] = 0x00000000u;
|
|
/* 02447C50 */ return;
|
|
}
|
|
|
|
// fn_02447C54 @ 0x2447c54
|
|
void Gambit_fn_02447C54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_02447C54: ; // 0x2447c54
|
|
/* 02447C54 */ cpu->r[9] = 0x101D0000u;
|
|
/* 02447C58 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02447C58 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02447C58 */ cpu->r[9] = _t0;
|
|
/* 02447C5C */ cpu->r[12] = 0x101D0000u;
|
|
/* 02447C60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02447C64 */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02447C68 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447C68 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02447C68 */ if (_t2) goto L_02447C6C; else goto L_02447C80;
|
|
L_02447C6C: ; // 0x2447c6c
|
|
/* 02447C6C */ cpu->r[7] = 0x100A0000u;
|
|
/* 02447C70 */ cpu->r[0] = 0x00000001u;
|
|
/* 02447C74 */ cpu->r[7] = cpu->r[7] + 0xFFFFDF28u;
|
|
/* 02447C78 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02447C78 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447C7C */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02447C7C */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02447C80: ; // 0x2447c80
|
|
/* 02447C80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 02447C84 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447C84 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02447C84 */ if (_t6) goto L_02447C88; else goto L_02447C90;
|
|
L_02447C88: ; // 0x2447c88
|
|
/* 02447C88 */ cpu->r[3] = 0x00000001u;
|
|
/* 02447C8C */ return;
|
|
L_02447C90: ; // 0x2447c90
|
|
/* 02447C90 */ cpu->r[7] = 0x101D0000u;
|
|
/* 02447C94 */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 02447C94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02447C94 */ cpu->r[7] = _t7;
|
|
/* 02447C98 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02447C9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02447CA0 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 02447CA4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447CA4 */ _t9 = _t8 & 0x00000001u;
|
|
/* 02447CA4 */ if (_t9) goto L_02447CA8; else goto L_02447CBC;
|
|
L_02447CA8: ; // 0x2447ca8
|
|
/* 02447CA8 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447CAC */ cpu->r[9] = 0x00000001u;
|
|
/* 02447CB0 */ cpu->r[0] = cpu->r[0] + 0xFFFFDEE0u;
|
|
/* 02447CB4 */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 02447CB4 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02447CB8 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02447CB8 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02447CBC: ; // 0x2447cbc
|
|
/* 02447CBC */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02447CC0 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 02447CC4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02447CC8 */ return;
|
|
}
|
|
|
|
// fn_02447CCC @ 0x2447ccc
|
|
void Gambit_fn_02447CCC(CPUState* cpu) {
|
|
L_02447CCC: ; // 0x2447ccc
|
|
/* 02447CCC */ return;
|
|
}
|
|
|
|
// fn_02447CD0 @ 0x2447cd0
|
|
void Gambit_fn_02447CD0(CPUState* cpu) {
|
|
L_02447CD0: ; // 0x2447cd0
|
|
/* 02447CD0 */ return;
|
|
}
|
|
|
|
// fn_02447CD4 @ 0x2447cd4
|
|
void Gambit_fn_02447CD4(CPUState* cpu) {
|
|
L_02447CD4: ; // 0x2447cd4
|
|
/* 02447CD4 */ cpu->r[3] = 0x00000000u;
|
|
/* 02447CD8 */ return;
|
|
}
|
|
|
|
// fn_02447CDC @ 0x2447cdc
|
|
void Gambit_fn_02447CDC(CPUState* cpu) {
|
|
L_02447CDC: ; // 0x2447cdc
|
|
/* 02447CDC */ cpu->r[3] = 0x00000000u;
|
|
/* 02447CE0 */ return;
|
|
}
|
|
|
|
// fn_02447CE4 @ 0x2447ce4
|
|
void Gambit_fn_02447CE4(CPUState* cpu) {
|
|
L_02447CE4: ; // 0x2447ce4
|
|
/* 02447CE4 */ return;
|
|
}
|
|
|
|
// fn_02447CE8 @ 0x2447ce8
|
|
void Gambit_fn_02447CE8(CPUState* cpu) {
|
|
L_02447CE8: ; // 0x2447ce8
|
|
/* 02447CE8 */ return;
|
|
}
|
|
|
|
// fn_02447CEC @ 0x2447cec
|
|
void Gambit_fn_02447CEC(CPUState* cpu) {
|
|
L_02447CEC: ; // 0x2447cec
|
|
/* 02447CEC */ return;
|
|
}
|
|
|
|
// fn_02447CF0 @ 0x2447cf0
|
|
void Gambit_fn_02447CF0(CPUState* cpu) {
|
|
L_02447CF0: ; // 0x2447cf0
|
|
/* 02447CF0 */ return;
|
|
}
|
|
|
|
// fn_02447CF4 @ 0x2447cf4
|
|
void Gambit_fn_02447CF4(CPUState* cpu) {
|
|
L_02447CF4: ; // 0x2447cf4
|
|
/* 02447CF4 */ return;
|
|
}
|
|
|
|
// fn_02447CF8 @ 0x2447cf8
|
|
void Gambit_fn_02447CF8(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_02447CF8: ; // 0x2447cf8
|
|
/* 02447CF8 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 02447CFC */ goto L_0206C894;
|
|
}
|
|
|
|
// fn_02447D00 @ 0x2447d00
|
|
void Gambit_fn_02447D00(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02447D00: ; // 0x2447d00
|
|
/* 02447D00 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 02447D04 */ goto L_02448010;
|
|
L_02448010: ; // 0x2448010
|
|
/* 02448010 */ cpu->r[0] = cpu->lr;
|
|
/* 02448014 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448014 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448014 */ cpu->r[1] = _t0;
|
|
/* 02448018 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448018 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244801C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0244801C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02448020 */ cpu->r[30] = cpu->r[3];
|
|
/* 02448020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02448024 */ cpu->r[31] = cpu->r[4];
|
|
/* 02448028 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02448028 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244802C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244802C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244802C */ if (_t5) goto L_0244809C; else goto L_02448030;
|
|
L_02448030: ; // 0x2448030
|
|
/* 02448030 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448034 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02448038 */ cpu->r[0] = cpu->r[0] + 0xFFFFE3E8u;
|
|
/* 0244803C */ cpu->r[12] = cpu->r[12] + 0xFFFFE408u;
|
|
/* 02448040 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02448040 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02448044 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02448048 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02448048 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0244804C */ cpu->r[11] = cpu->r[11] + 0xFFFFE3F8u;
|
|
/* 02448050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02448054 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02448054 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02448058 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448058 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02448058 */ if (_t10) goto L_0244808C; else goto L_0244805C;
|
|
L_0244805C: ; // 0x244805c
|
|
/* 0244805C */ cpu->r[10] = 0x10010000u;
|
|
/* 02448060 */ cpu->r[0] = 0x10010000u;
|
|
/* 02448064 */ cpu->r[10] = cpu->r[10] + 0x00004564u;
|
|
/* 02448068 */ cpu->r[0] = cpu->r[0] + 0x00004554u;
|
|
/* 0244806C */ cpu->r[3] = cpu->r[30];
|
|
/* 02448070 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02448070 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02448074 */ cpu->r[0] = 0x10010000u;
|
|
/* 02448078 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02448078 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0244807C */ cpu->r[0] = cpu->r[0] + 0x00004574u;
|
|
/* 02448080 */ cpu->r[4] = 0x00000000u;
|
|
/* 02448084 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02448084 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02448088 */ Gambit_fn_02068798(cpu);
|
|
L_0244808C: ; // 0x244808c
|
|
/* 0244808C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0244808C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02448090 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448090 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02448090 */ if (_t15) goto L_0244809C; else goto L_02448094;
|
|
L_02448094: ; // 0x2448094
|
|
/* 02448094 */ cpu->r[3] = cpu->r[30];
|
|
/* 02448098 */ Gambit_fn_02801BB0(cpu);
|
|
L_0244809C: ; // 0x244809c
|
|
/* 0244809C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0244809C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024480A0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024480A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024480A4 */ cpu->lr = cpu->r[0];
|
|
/* 024480A8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024480A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024480AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024480B0 */ return;
|
|
}
|
|
|
|
// fn_02447D08 @ 0x2447d08
|
|
void Gambit_fn_02447D08(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_02447D08: ; // 0x2447d08
|
|
/* 02447D08 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02447D0C */ goto L_02068818;
|
|
}
|
|
|
|
// fn_02447D10 @ 0x2447d10
|
|
void Gambit_fn_02447D10(CPUState* cpu) {
|
|
L_02447D10: ; // 0x2447d10
|
|
/* 02447D10 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02447D14 */ goto L_024480B4;
|
|
L_024480B4: ; // 0x24480b4
|
|
/* 024480B4 */ return;
|
|
}
|
|
|
|
// fn_02447D18 @ 0x2447d18
|
|
void Gambit_fn_02447D18(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02447D18: ; // 0x2447d18
|
|
/* 02447D18 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 02447D1C */ goto L_024480B8;
|
|
L_024480B8: ; // 0x24480b8
|
|
/* 024480B8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024480B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024480BC */ return;
|
|
}
|
|
|
|
// fn_02447D20 @ 0x2447d20
|
|
void Gambit_fn_02447D20(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02447D20: ; // 0x2447d20
|
|
/* 02447D20 */ cpu->r[0] = cpu->lr;
|
|
/* 02447D24 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447D24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447D24 */ cpu->r[1] = _t0;
|
|
/* 02447D28 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447D28 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447D2C */ cpu->r[31] = cpu->r[3];
|
|
/* 02447D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02447D30 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447D30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02447D34 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447D34 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02447D34 */ if (_t4) goto L_02447D38; else goto L_02447D48;
|
|
L_02447D38: ; // 0x2447d38
|
|
/* 02447D38 */ cpu->r[3] = 0x00000228u;
|
|
/* 02447D3C */ Gambit_fn_02801A78(cpu);
|
|
/* 02447D40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447D40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02447D44 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447D44 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02447D44 */ if (_t6) goto L_02447DA0; else goto L_02447D48;
|
|
L_02447D48: ; // 0x2447d48
|
|
/* 02447D48 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02447D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02447D50 */ cpu->r[5] = 0x00000001u;
|
|
/* 02447D54 */ cpu->r[4] = cpu->r[4] + 0xFFFFE1CCu;
|
|
/* 02447D58 */ Gambit_fn_020B5C38(cpu);
|
|
/* 02447D5C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447D60 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447D64 */ cpu->r[12] = cpu->r[12] + 0xFFFFE218u;
|
|
/* 02447D68 */ cpu->r[11] = cpu->r[11] + 0xFFFFE3F8u;
|
|
/* 02447D6C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447D70 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02447D70 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02447D74 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447D78 */ cpu->r[0] = cpu->r[0] + 0xFFFFE3E8u;
|
|
/* 02447D7C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02447D7C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447D80 */ cpu->r[12] = cpu->r[12] + 0xFFFFE408u;
|
|
/* 02447D84 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02447D84 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02447D88 */ cpu->r[0] = 0x00000000u;
|
|
/* 02447D8C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02447D8C */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02447D90 */ _t11 = cpu->r[31] + 0x00000220u;
|
|
/* 02447D90 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02447D94 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 02447D94 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02447D98 */ _t13 = cpu->r[31] + 0x00000218u;
|
|
/* 02447D98 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447D9C */ _t14 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02447D9C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
L_02447DA0: ; // 0x2447da0
|
|
/* 02447DA0 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02447DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02447DA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02447DA8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447DA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02447DAC */ cpu->lr = cpu->r[0];
|
|
/* 02447DB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447DB4 */ return;
|
|
}
|
|
|
|
// fn_02447D24 @ 0x2447d24
|
|
void Gambit_fn_02447D24(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16;
|
|
|
|
L_02447D24: ; // 0x2447d24
|
|
/* 02447D24 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02447D24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447D24 */ cpu->r[1] = _t0;
|
|
/* 02447D28 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447D28 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447D2C */ cpu->r[31] = cpu->r[3];
|
|
/* 02447D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02447D30 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447D30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02447D34 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447D34 */ _t4 = _t3 & 0x00000001u;
|
|
/* 02447D34 */ if (_t4) goto L_02447D38; else goto L_02447D48;
|
|
L_02447D38: ; // 0x2447d38
|
|
/* 02447D38 */ cpu->r[3] = 0x00000228u;
|
|
/* 02447D3C */ Gambit_fn_02801A78(cpu);
|
|
/* 02447D40 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447D40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02447D44 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447D44 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02447D44 */ if (_t6) goto L_02447DA0; else goto L_02447D48;
|
|
L_02447D48: ; // 0x2447d48
|
|
/* 02447D48 */ cpu->r[4] = 0x100A0000u;
|
|
/* 02447D4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02447D50 */ cpu->r[5] = 0x00000001u;
|
|
/* 02447D54 */ cpu->r[4] = cpu->r[4] + 0xFFFFE1CCu;
|
|
/* 02447D58 */ Gambit_fn_020B5C38(cpu);
|
|
/* 02447D5C */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447D60 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447D64 */ cpu->r[12] = cpu->r[12] + 0xFFFFE218u;
|
|
/* 02447D68 */ cpu->r[11] = cpu->r[11] + 0xFFFFE3F8u;
|
|
/* 02447D6C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447D70 */ _t7 = cpu->r[31] + 0x00000000u;
|
|
/* 02447D70 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 02447D74 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447D78 */ cpu->r[0] = cpu->r[0] + 0xFFFFE3E8u;
|
|
/* 02447D7C */ _t8 = cpu->r[31] + 0x0000001Cu;
|
|
/* 02447D7C */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02447D80 */ cpu->r[12] = cpu->r[12] + 0xFFFFE408u;
|
|
/* 02447D84 */ _t9 = cpu->r[31] + 0x0000000Cu;
|
|
/* 02447D84 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02447D88 */ cpu->r[0] = 0x00000000u;
|
|
/* 02447D8C */ _t10 = cpu->r[31] + 0x000001C8u;
|
|
/* 02447D8C */ rbrew_write32(cpu->mem, _t10, cpu->r[12]);
|
|
/* 02447D90 */ _t11 = cpu->r[31] + 0x00000220u;
|
|
/* 02447D90 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02447D94 */ _t12 = cpu->r[31] + 0x00000224u;
|
|
/* 02447D94 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]);
|
|
/* 02447D98 */ _t13 = cpu->r[31] + 0x00000218u;
|
|
/* 02447D98 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447D9C */ _t14 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02447D9C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
L_02447DA0: ; // 0x2447da0
|
|
/* 02447DA0 */ _t15 = cpu->r[1] + 0x00000014u;
|
|
/* 02447DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02447DA4 */ cpu->r[3] = cpu->r[31];
|
|
/* 02447DA8 */ _t16 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447DA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02447DAC */ cpu->lr = cpu->r[0];
|
|
/* 02447DB0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02447DB4 */ return;
|
|
}
|
|
|
|
// fn_02447DB8 @ 0x2447db8
|
|
void Gambit_fn_02447DB8(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02447DB8: ; // 0x2447db8
|
|
/* 02447DB8 */ cpu->r[0] = cpu->lr;
|
|
/* 02447DBC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447DBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447DBC */ cpu->r[1] = _t0;
|
|
/* 02447DC0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02447DC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02447DC4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447DC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02447DC8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02447DCC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02447DCC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02447DD0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447DD0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02447DD4 */ cpu->r[29] = cpu->r[5];
|
|
/* 02447DD8 */ _t5 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02447DD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02447DDC */ cpu->r[31] = cpu->r[4];
|
|
/* 02447DE0 */ Gambit_fn_020A9BF4(cpu);
|
|
/* 02447DE4 */ _t6 = cpu->r[30] + 0x00000220u;
|
|
/* 02447DE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447DE8 */ cpu->r[4] = cpu->r[29];
|
|
/* 02447DEC */ Gambit_fn_020A7EFC(cpu);
|
|
/* 02447DF0 */ _t7 = cpu->r[31] + 0x000000B4u;
|
|
/* 02447DF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02447DF4 */ cpu->r[5] = 0x00000000u;
|
|
/* 02447DF8 */ _t8 = cpu->r[30] + 0x00000224u;
|
|
/* 02447DF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02447DFC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02447E00 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02447E00 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02447E04 */ Gambit_fn_020E32C8(cpu);
|
|
/* 02447E08 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447E08 */ cpu->r[29] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02447E0C */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02447E10 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02447E10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447E14 */ cpu->lr = cpu->r[0];
|
|
/* 02447E18 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02447E18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02447E1C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447E20 */ return;
|
|
}
|
|
|
|
// fn_02447DBC @ 0x2447dbc
|
|
void Gambit_fn_02447DBC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02447DBC: ; // 0x2447dbc
|
|
/* 02447DBC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447DBC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447DBC */ cpu->r[1] = _t0;
|
|
/* 02447DC0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02447DC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02447DC4 */ _t2 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447DC4 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02447DC8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02447DCC */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02447DCC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02447DD0 */ _t4 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447DD0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02447DD4 */ cpu->r[29] = cpu->r[5];
|
|
/* 02447DD8 */ _t5 = cpu->r[30] + 0x0000021Cu;
|
|
/* 02447DD8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02447DDC */ cpu->r[31] = cpu->r[4];
|
|
/* 02447DE0 */ Gambit_fn_020A9BF4(cpu);
|
|
/* 02447DE4 */ _t6 = cpu->r[30] + 0x00000220u;
|
|
/* 02447DE4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447DE8 */ cpu->r[4] = cpu->r[29];
|
|
/* 02447DEC */ Gambit_fn_020A7EFC(cpu);
|
|
/* 02447DF0 */ _t7 = cpu->r[31] + 0x000000B4u;
|
|
/* 02447DF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02447DF4 */ cpu->r[5] = 0x00000000u;
|
|
/* 02447DF8 */ _t8 = cpu->r[30] + 0x00000224u;
|
|
/* 02447DF8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8);
|
|
/* 02447DFC */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02447E00 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02447E00 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02447E04 */ Gambit_fn_020E32C8(cpu);
|
|
/* 02447E08 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447E08 */ cpu->r[29] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02447E0C */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02447E10 */ _t12 = cpu->r[1] + 0x00000010u;
|
|
/* 02447E10 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447E14 */ cpu->lr = cpu->r[0];
|
|
/* 02447E18 */ _t13 = cpu->r[1] + 0x00000014u;
|
|
/* 02447E18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02447E1C */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447E20 */ return;
|
|
}
|
|
|
|
// fn_02447E24 @ 0x2447e24
|
|
void Gambit_fn_02447E24(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_02447E24: ; // 0x2447e24
|
|
/* 02447E24 */ cpu->r[0] = cpu->lr;
|
|
/* 02447E28 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447E28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447E28 */ cpu->r[1] = _t0;
|
|
/* 02447E2C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02447E2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02447E30 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447E34 */ cpu->r[12] = cpu->r[12] + 0xFFFFE184u;
|
|
/* 02447E38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02447E3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447E3C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02447E40 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447E40 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447E44 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447E48 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447E48 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02447E4C */ cpu->r[0] = cpu->r[0] + 0xFFFFE1DCu;
|
|
/* 02447E50 */ cpu->r[30] = cpu->r[3];
|
|
/* 02447E54 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02447E54 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02447E58 */ Gambit_fn_026D86C0(cpu);
|
|
/* 02447E5C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02447E60 */ _t6 = cpu->r[11] + 0xFFFFDBBCu;
|
|
/* 02447E60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447E60 */ cpu->r[11] = _t6;
|
|
/* 02447E64 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02447E68 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02447E70 */ cpu->r[4] = cpu->r[4] + 0xFFFFEE1Cu;
|
|
/* 02447E74 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447E74 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02447E74 */ if (_t8) goto L_02447E78; else goto L_02447E8C;
|
|
L_02447E78: ; // 0x2447e78
|
|
/* 02447E78 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02447E7C */ cpu->r[7] = 0x00000001u;
|
|
/* 02447E80 */ cpu->r[8] = cpu->r[8] + 0xFFFFE1ACu;
|
|
/* 02447E84 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 02447E84 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02447E88 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 02447E88 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
L_02447E8C: ; // 0x2447e8c
|
|
/* 02447E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02447E90 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447E90 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02447E90 */ if (_t12) goto L_02447EB0; else goto L_02447E94;
|
|
L_02447E94: ; // 0x2447e94
|
|
/* 02447E94 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 02447E94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02447E98 */ _t14 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02447E98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02447E9C */ cpu->ctr = cpu->r[0];
|
|
/* 02447EA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02447EA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02447EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447EAC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447EAC */ _t16 = _t15 & 0x00000001u;
|
|
/* 02447EAC */ if (_t16) goto L_02447EB0; else goto L_02447EB4;
|
|
L_02447EB0: ; // 0x2447eb0
|
|
/* 02447EB0 */ cpu->r[31] = 0x00000000u;
|
|
L_02447EB4: ; // 0x2447eb4
|
|
/* 02447EB4 */ _t17 = cpu->r[30] + 0x00000218u;
|
|
/* 02447EB4 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 02447EB8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447EB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02447EBC */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02447EBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02447EC0 */ cpu->lr = cpu->r[0];
|
|
/* 02447EC4 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02447EC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02447EC8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447ECC */ return;
|
|
}
|
|
|
|
// fn_02447E28 @ 0x2447e28
|
|
void Gambit_fn_02447E28(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_02447E28: ; // 0x2447e28
|
|
/* 02447E28 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447E28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447E28 */ cpu->r[1] = _t0;
|
|
/* 02447E2C */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02447E2C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02447E30 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02447E34 */ cpu->r[12] = cpu->r[12] + 0xFFFFE184u;
|
|
/* 02447E38 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02447E3C */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02447E3C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02447E40 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447E40 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02447E44 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447E48 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447E48 */ rbrew_write32(cpu->mem, _t4, cpu->r[12]);
|
|
/* 02447E4C */ cpu->r[0] = cpu->r[0] + 0xFFFFE1DCu;
|
|
/* 02447E50 */ cpu->r[30] = cpu->r[3];
|
|
/* 02447E54 */ _t5 = cpu->r[1] + 0x00000008u;
|
|
/* 02447E54 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02447E58 */ Gambit_fn_026D86C0(cpu);
|
|
/* 02447E5C */ cpu->r[11] = 0x101D0000u;
|
|
/* 02447E60 */ _t6 = cpu->r[11] + 0xFFFFDBBCu;
|
|
/* 02447E60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447E60 */ cpu->r[11] = _t6;
|
|
/* 02447E64 */ cpu->r[4] = 0x101D0000u;
|
|
/* 02447E68 */ cpu->r[31] = cpu->r[3];
|
|
/* 02447E6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02447E70 */ cpu->r[4] = cpu->r[4] + 0xFFFFEE1Cu;
|
|
/* 02447E74 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447E74 */ _t8 = _t7 & 0x00000001u;
|
|
/* 02447E74 */ if (_t8) goto L_02447E78; else goto L_02447E8C;
|
|
L_02447E78: ; // 0x2447e78
|
|
/* 02447E78 */ cpu->r[8] = 0x100A0000u;
|
|
/* 02447E7C */ cpu->r[7] = 0x00000001u;
|
|
/* 02447E80 */ cpu->r[8] = cpu->r[8] + 0xFFFFE1ACu;
|
|
/* 02447E84 */ _t9 = cpu->r[11] + 0x00000000u;
|
|
/* 02447E84 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02447E88 */ _t10 = cpu->r[4] + 0x00000000u;
|
|
/* 02447E88 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
L_02447E8C: ; // 0x2447e8c
|
|
/* 02447E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02447E90 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447E90 */ _t12 = _t11 & 0x00000001u;
|
|
/* 02447E90 */ if (_t12) goto L_02447EB0; else goto L_02447E94;
|
|
L_02447E94: ; // 0x2447e94
|
|
/* 02447E94 */ _t13 = cpu->r[31] + 0x00000000u;
|
|
/* 02447E94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02447E98 */ _t14 = cpu->r[9] + 0x0000001Cu;
|
|
/* 02447E98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02447E9C */ cpu->ctr = cpu->r[0];
|
|
/* 02447EA0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02447EA4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02447EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02447EAC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02447EAC */ _t16 = _t15 & 0x00000001u;
|
|
/* 02447EAC */ if (_t16) goto L_02447EB0; else goto L_02447EB4;
|
|
L_02447EB0: ; // 0x2447eb0
|
|
/* 02447EB0 */ cpu->r[31] = 0x00000000u;
|
|
L_02447EB4: ; // 0x2447eb4
|
|
/* 02447EB4 */ _t17 = cpu->r[30] + 0x00000218u;
|
|
/* 02447EB4 */ rbrew_write32(cpu->mem, _t17, cpu->r[31]);
|
|
/* 02447EB8 */ _t18 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447EB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02447EBC */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02447EBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02447EC0 */ cpu->lr = cpu->r[0];
|
|
/* 02447EC4 */ _t20 = cpu->r[1] + 0x00000014u;
|
|
/* 02447EC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20);
|
|
/* 02447EC8 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447ECC */ return;
|
|
}
|
|
|
|
// fn_02447ED0 @ 0x2447ed0
|
|
void Gambit_fn_02447ED0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02447ED0: ; // 0x2447ed0
|
|
/* 02447ED0 */ cpu->r[0] = cpu->lr;
|
|
/* 02447ED4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02447ED4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447ED4 */ cpu->r[1] = _t0;
|
|
/* 02447ED8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447EDC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447EDC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447EE0 */ cpu->r[11] = cpu->r[11] + 0xFFFFE1F0u;
|
|
/* 02447EE4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02447EE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02447EE8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02447EEC */ cpu->r[31] = cpu->r[3];
|
|
/* 02447EF0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02447EF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02447EF4 */ cpu->r[30] = cpu->r[30] + 0xFFFFE184u;
|
|
/* 02447EF8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02447EFC */ cpu->r[4] = cpu->r[31];
|
|
/* 02447F00 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447F00 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02447F04 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447F08 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02447F08 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02447F0C */ Gambit_fn_020A7150(cpu);
|
|
/* 02447F10 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447F14 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447F14 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02447F18 */ cpu->r[4] = cpu->r[31];
|
|
/* 02447F1C */ cpu->r[0] = cpu->r[0] + 0xFFFFE20Cu;
|
|
/* 02447F20 */ _t7 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02447F20 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02447F24 */ cpu->r[3] = 0x00000000u;
|
|
/* 02447F28 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447F2C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02447F2C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02447F30 */ Gambit_fn_020A7150(cpu);
|
|
/* 02447F34 */ cpu->r[4] = cpu->r[31];
|
|
/* 02447F38 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02447F38 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02447F3C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447F40 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447F40 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02447F44 */ cpu->r[0] = cpu->r[0] + 0xFFFFE1FCu;
|
|
/* 02447F48 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02447F4C */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02447F4C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02447F50 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02447F54 */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 02447F54 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 02447F58 */ cpu->r[10] = cpu->r[10] + 0xFFFFE1ECu;
|
|
/* 02447F5C */ cpu->r[3] = 0x00000000u;
|
|
/* 02447F60 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447F64 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02447F64 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 02447F68 */ Gambit_fn_020E31C4(cpu);
|
|
/* 02447F6C */ _t14 = cpu->r[31] + 0x00000224u;
|
|
/* 02447F6C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02447F70 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 02447F70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02447F74 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447F74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02447F78 */ cpu->lr = cpu->r[0];
|
|
/* 02447F7C */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 02447F7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02447F80 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02447F84 */ return;
|
|
}
|
|
|
|
// fn_02447ED4 @ 0x2447ed4
|
|
void Gambit_fn_02447ED4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17;
|
|
|
|
L_02447ED4: ; // 0x2447ed4
|
|
/* 02447ED4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u;
|
|
/* 02447ED4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447ED4 */ cpu->r[1] = _t0;
|
|
/* 02447ED8 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02447EDC */ _t1 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447EDC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02447EE0 */ cpu->r[11] = cpu->r[11] + 0xFFFFE1F0u;
|
|
/* 02447EE4 */ _t2 = cpu->r[1] + 0x00000018u;
|
|
/* 02447EE4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02447EE8 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02447EEC */ cpu->r[31] = cpu->r[3];
|
|
/* 02447EF0 */ _t3 = cpu->r[1] + 0x00000008u;
|
|
/* 02447EF0 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02447EF4 */ cpu->r[30] = cpu->r[30] + 0xFFFFE184u;
|
|
/* 02447EF8 */ cpu->r[3] = 0x00000000u;
|
|
/* 02447EFC */ cpu->r[4] = cpu->r[31];
|
|
/* 02447F00 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447F00 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]);
|
|
/* 02447F04 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447F08 */ _t5 = cpu->r[1] + 0x00000024u;
|
|
/* 02447F08 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02447F0C */ Gambit_fn_020A7150(cpu);
|
|
/* 02447F10 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447F14 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447F14 */ rbrew_write32(cpu->mem, _t6, cpu->r[30]);
|
|
/* 02447F18 */ cpu->r[4] = cpu->r[31];
|
|
/* 02447F1C */ cpu->r[0] = cpu->r[0] + 0xFFFFE20Cu;
|
|
/* 02447F20 */ _t7 = cpu->r[31] + 0x0000021Cu;
|
|
/* 02447F20 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02447F24 */ cpu->r[3] = 0x00000000u;
|
|
/* 02447F28 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447F2C */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02447F2C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02447F30 */ Gambit_fn_020A7150(cpu);
|
|
/* 02447F34 */ cpu->r[4] = cpu->r[31];
|
|
/* 02447F38 */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 02447F38 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]);
|
|
/* 02447F3C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02447F40 */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02447F40 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02447F44 */ cpu->r[0] = cpu->r[0] + 0xFFFFE1FCu;
|
|
/* 02447F48 */ cpu->r[6] = cpu->r[1] + 0x00000010u;
|
|
/* 02447F4C */ _t11 = cpu->r[1] + 0x00000010u;
|
|
/* 02447F4C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02447F50 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02447F54 */ _t12 = cpu->r[31] + 0x00000220u;
|
|
/* 02447F54 */ rbrew_write32(cpu->mem, _t12, cpu->r[3]);
|
|
/* 02447F58 */ cpu->r[10] = cpu->r[10] + 0xFFFFE1ECu;
|
|
/* 02447F5C */ cpu->r[3] = 0x00000000u;
|
|
/* 02447F60 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02447F64 */ _t13 = cpu->r[1] + 0x00000008u;
|
|
/* 02447F64 */ rbrew_write32(cpu->mem, _t13, cpu->r[10]);
|
|
/* 02447F68 */ Gambit_fn_020E31C4(cpu);
|
|
/* 02447F6C */ _t14 = cpu->r[31] + 0x00000224u;
|
|
/* 02447F6C */ rbrew_write32(cpu->mem, _t14, cpu->r[3]);
|
|
/* 02447F70 */ _t15 = cpu->r[1] + 0x00000024u;
|
|
/* 02447F70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02447F74 */ _t16 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02447F74 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02447F78 */ cpu->lr = cpu->r[0];
|
|
/* 02447F7C */ _t17 = cpu->r[1] + 0x00000018u;
|
|
/* 02447F7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02447F80 */ cpu->r[1] = cpu->r[1] + 0x00000020u;
|
|
/* 02447F84 */ return;
|
|
}
|
|
|
|
// fn_02447F88 @ 0x2447f88
|
|
void Gambit_fn_02447F88(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_020C38E0: ; // 0x20c38e0
|
|
/* 020C38E0 */ cpu->r[0] = cpu->lr;
|
|
/* 020C38E4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 020C38E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 020C38E4 */ cpu->r[1] = _t0;
|
|
/* 020C38E8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020C38E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 020C38EC */ cpu->r[31] = cpu->r[3];
|
|
/* 020C38F0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 020C38F4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 020C38F4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 020C38F8 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 020C38F8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 020C38FC */ Gambit_fn_0206C030(cpu);
|
|
/* 020C3900 */ cpu->r[3] = cpu->r[31] + 0x00000168u;
|
|
/* 020C3904 */ cpu->r[4] = 0x00000001u;
|
|
/* 020C3908 */ Gambit_fn_020069F0(cpu);
|
|
/* 020C390C */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 020C390C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 020C3910 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 020C3910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 020C3914 */ cpu->lr = cpu->r[0];
|
|
/* 020C3918 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 020C391C */ return;
|
|
L_02447F88: ; // 0x2447f88
|
|
/* 02447F88 */ _t6 = cpu->r[3] + 0x00000218u;
|
|
/* 02447F88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02447F8C */ goto L_020C38E0;
|
|
}
|
|
|
|
// fn_02447F90 @ 0x2447f90
|
|
void Gambit_fn_02447F90(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02447F90: ; // 0x2447f90
|
|
/* 02447F90 */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02447F94 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447F94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447F94 */ cpu->r[1] = _t0;
|
|
/* 02447F98 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02447F9C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02447FA0 */ _t1 = cpu->r[10] + 0x000076BCu;
|
|
/* 02447FA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02447FA0 */ cpu->r[10] = _t1;
|
|
/* 02447FA4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02447FA8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02447FA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02447FAC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02447FB0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447FB4 */ _t3 = cpu->r[7] + 0x000076CCu;
|
|
/* 02447FB4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02447FB4 */ cpu->r[7] = _t3;
|
|
/* 02447FB8 */ _t4 = cpu->r[8] + 0x000076C4u;
|
|
/* 02447FB8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02447FB8 */ cpu->r[8] = _t4;
|
|
/* 02447FBC */ cpu->r[0] = 0x00000002u;
|
|
/* 02447FC0 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02447FC0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02447FC4 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447FC8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02447FC8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447FCC */ cpu->r[12] = 0x101E0000u;
|
|
/* 02447FD0 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02447FD0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02447FD4 */ _t8 = cpu->r[8] + 0x000076DCu;
|
|
/* 02447FD4 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02447FD4 */ cpu->r[8] = _t8;
|
|
/* 02447FD8 */ _t9 = cpu->r[12] + 0x000076D4u;
|
|
/* 02447FD8 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02447FD8 */ cpu->r[12] = _t9;
|
|
/* 02447FDC */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02447FDC */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02447FE0 */ cpu->r[0] = 0x00000004u;
|
|
/* 02447FE4 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02447FE4 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02447FE8 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02447FEC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02447FEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447FF0 */ _t13 = cpu->r[11] + 0x000076E4u;
|
|
/* 02447FF0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447FF4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447FF8 */ return;
|
|
}
|
|
|
|
// fn_02447F94 @ 0x2447f94
|
|
void Gambit_fn_02447F94(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02447F94: ; // 0x2447f94
|
|
/* 02447F94 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02447F94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02447F94 */ cpu->r[1] = _t0;
|
|
/* 02447F98 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02447F9C */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02447FA0 */ _t1 = cpu->r[10] + 0x000076BCu;
|
|
/* 02447FA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02447FA0 */ cpu->r[10] = _t1;
|
|
/* 02447FA4 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02447FA8 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02447FA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02447FAC */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02447FB0 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447FB4 */ _t3 = cpu->r[7] + 0x000076CCu;
|
|
/* 02447FB4 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02447FB4 */ cpu->r[7] = _t3;
|
|
/* 02447FB8 */ _t4 = cpu->r[8] + 0x000076C4u;
|
|
/* 02447FB8 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02447FB8 */ cpu->r[8] = _t4;
|
|
/* 02447FBC */ cpu->r[0] = 0x00000002u;
|
|
/* 02447FC0 */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02447FC0 */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02447FC4 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02447FC8 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02447FC8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02447FCC */ cpu->r[12] = 0x101E0000u;
|
|
/* 02447FD0 */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02447FD0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02447FD4 */ _t8 = cpu->r[8] + 0x000076DCu;
|
|
/* 02447FD4 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02447FD4 */ cpu->r[8] = _t8;
|
|
/* 02447FD8 */ _t9 = cpu->r[12] + 0x000076D4u;
|
|
/* 02447FD8 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02447FD8 */ cpu->r[12] = _t9;
|
|
/* 02447FDC */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02447FDC */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02447FE0 */ cpu->r[0] = 0x00000004u;
|
|
/* 02447FE4 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02447FE4 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02447FE8 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02447FEC */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02447FEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02447FF0 */ _t13 = cpu->r[11] + 0x000076E4u;
|
|
/* 02447FF0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02447FF4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02447FF8 */ return;
|
|
}
|
|
|
|
// fn_02447FFC @ 0x2447ffc
|
|
void Gambit_fn_02447FFC(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_02447FFC: ; // 0x2447ffc
|
|
/* 02447FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02448000 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448000 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02448000 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02448000 */ goto L_02448004;
|
|
L_02448004: ; // 0x2448004
|
|
/* 02448004 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02448004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02448008 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448008 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02448008 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02448008 */ goto L_0244800C;
|
|
L_0244800C: ; // 0x244800c
|
|
/* 0244800C */ 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_02448010 @ 0x2448010
|
|
void Gambit_fn_02448010(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02448010: ; // 0x2448010
|
|
/* 02448010 */ cpu->r[0] = cpu->lr;
|
|
/* 02448014 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448014 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448014 */ cpu->r[1] = _t0;
|
|
/* 02448018 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448018 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244801C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0244801C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02448020 */ cpu->r[30] = cpu->r[3];
|
|
/* 02448020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02448024 */ cpu->r[31] = cpu->r[4];
|
|
/* 02448028 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02448028 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244802C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244802C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244802C */ if (_t5) goto L_0244809C; else goto L_02448030;
|
|
L_02448030: ; // 0x2448030
|
|
/* 02448030 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448034 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02448038 */ cpu->r[0] = cpu->r[0] + 0xFFFFE3E8u;
|
|
/* 0244803C */ cpu->r[12] = cpu->r[12] + 0xFFFFE408u;
|
|
/* 02448040 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02448040 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02448044 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02448048 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02448048 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0244804C */ cpu->r[11] = cpu->r[11] + 0xFFFFE3F8u;
|
|
/* 02448050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02448054 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02448054 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02448058 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448058 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02448058 */ if (_t10) goto L_0244808C; else goto L_0244805C;
|
|
L_0244805C: ; // 0x244805c
|
|
/* 0244805C */ cpu->r[10] = 0x10010000u;
|
|
/* 02448060 */ cpu->r[0] = 0x10010000u;
|
|
/* 02448064 */ cpu->r[10] = cpu->r[10] + 0x00004564u;
|
|
/* 02448068 */ cpu->r[0] = cpu->r[0] + 0x00004554u;
|
|
/* 0244806C */ cpu->r[3] = cpu->r[30];
|
|
/* 02448070 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02448070 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02448074 */ cpu->r[0] = 0x10010000u;
|
|
/* 02448078 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02448078 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0244807C */ cpu->r[0] = cpu->r[0] + 0x00004574u;
|
|
/* 02448080 */ cpu->r[4] = 0x00000000u;
|
|
/* 02448084 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02448084 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02448088 */ Gambit_fn_02068798(cpu);
|
|
L_0244808C: ; // 0x244808c
|
|
/* 0244808C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0244808C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02448090 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448090 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02448090 */ if (_t15) goto L_0244809C; else goto L_02448094;
|
|
L_02448094: ; // 0x2448094
|
|
/* 02448094 */ cpu->r[3] = cpu->r[30];
|
|
/* 02448098 */ Gambit_fn_02801BB0(cpu);
|
|
L_0244809C: ; // 0x244809c
|
|
/* 0244809C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0244809C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024480A0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024480A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024480A4 */ cpu->lr = cpu->r[0];
|
|
/* 024480A8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024480A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024480AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024480B0 */ return;
|
|
}
|
|
|
|
// fn_02448014 @ 0x2448014
|
|
void Gambit_fn_02448014(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18;
|
|
|
|
L_02448014: ; // 0x2448014
|
|
/* 02448014 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448014 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448014 */ cpu->r[1] = _t0;
|
|
/* 02448018 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448018 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244801C */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 0244801C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02448020 */ cpu->r[30] = cpu->r[3];
|
|
/* 02448020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02448024 */ cpu->r[31] = cpu->r[4];
|
|
/* 02448028 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02448028 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 0244802C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244802C */ _t5 = _t4 & 0x00000001u;
|
|
/* 0244802C */ if (_t5) goto L_0244809C; else goto L_02448030;
|
|
L_02448030: ; // 0x2448030
|
|
/* 02448030 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448034 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02448038 */ cpu->r[0] = cpu->r[0] + 0xFFFFE3E8u;
|
|
/* 0244803C */ cpu->r[12] = cpu->r[12] + 0xFFFFE408u;
|
|
/* 02448040 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02448040 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02448044 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02448048 */ _t7 = cpu->r[30] + 0x000001C8u;
|
|
/* 02448048 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]);
|
|
/* 0244804C */ cpu->r[11] = cpu->r[11] + 0xFFFFE3F8u;
|
|
/* 02448050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02448054 */ _t8 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02448054 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]);
|
|
/* 02448058 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448058 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02448058 */ if (_t10) goto L_0244808C; else goto L_0244805C;
|
|
L_0244805C: ; // 0x244805c
|
|
/* 0244805C */ cpu->r[10] = 0x10010000u;
|
|
/* 02448060 */ cpu->r[0] = 0x10010000u;
|
|
/* 02448064 */ cpu->r[10] = cpu->r[10] + 0x00004564u;
|
|
/* 02448068 */ cpu->r[0] = cpu->r[0] + 0x00004554u;
|
|
/* 0244806C */ cpu->r[3] = cpu->r[30];
|
|
/* 02448070 */ _t11 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02448070 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
/* 02448074 */ cpu->r[0] = 0x10010000u;
|
|
/* 02448078 */ _t12 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02448078 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]);
|
|
/* 0244807C */ cpu->r[0] = cpu->r[0] + 0x00004574u;
|
|
/* 02448080 */ cpu->r[4] = 0x00000000u;
|
|
/* 02448084 */ _t13 = cpu->r[30] + 0x000001C8u;
|
|
/* 02448084 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02448088 */ Gambit_fn_02068798(cpu);
|
|
L_0244808C: ; // 0x244808c
|
|
/* 0244808C */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 0244808C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02448090 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448090 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02448090 */ if (_t15) goto L_0244809C; else goto L_02448094;
|
|
L_02448094: ; // 0x2448094
|
|
/* 02448094 */ cpu->r[3] = cpu->r[30];
|
|
/* 02448098 */ Gambit_fn_02801BB0(cpu);
|
|
L_0244809C: ; // 0x244809c
|
|
/* 0244809C */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 0244809C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16);
|
|
/* 024480A0 */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 024480A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17);
|
|
/* 024480A4 */ cpu->lr = cpu->r[0];
|
|
/* 024480A8 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024480A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18);
|
|
/* 024480AC */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 024480B0 */ return;
|
|
}
|
|
|
|
// fn_024480B4 @ 0x24480b4
|
|
void Gambit_fn_024480B4(CPUState* cpu) {
|
|
L_024480B4: ; // 0x24480b4
|
|
/* 024480B4 */ return;
|
|
}
|
|
|
|
// fn_024480B8 @ 0x24480b8
|
|
void Gambit_fn_024480B8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024480B8: ; // 0x24480b8
|
|
/* 024480B8 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024480B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024480BC */ return;
|
|
}
|
|
|
|
// fn_024480C0 @ 0x24480c0
|
|
void Gambit_fn_024480C0(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024480C0: ; // 0x24480c0
|
|
/* 024480C0 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 024480C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024480C4 */ return;
|
|
}
|
|
|
|
// fn_024480C8 @ 0x24480c8
|
|
void Gambit_fn_024480C8(CPUState* cpu) {
|
|
L_024480C8: ; // 0x24480c8
|
|
/* 024480C8 */ return;
|
|
}
|
|
|
|
// fn_024480CC @ 0x24480cc
|
|
void Gambit_fn_024480CC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024480CC: ; // 0x24480cc
|
|
/* 024480CC */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024480CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024480D0 */ return;
|
|
}
|
|
|
|
// fn_024480D4 @ 0x24480d4
|
|
void Gambit_fn_024480D4(CPUState* cpu) {
|
|
L_024480D4: ; // 0x24480d4
|
|
/* 024480D4 */ return;
|
|
}
|
|
|
|
// fn_024480D8 @ 0x24480d8
|
|
void Gambit_fn_024480D8(CPUState* cpu) {
|
|
L_024480D8: ; // 0x24480d8
|
|
/* 024480D8 */ return;
|
|
}
|
|
|
|
// fn_024480DC @ 0x24480dc
|
|
void Gambit_fn_024480DC(CPUState* cpu) {
|
|
L_024480DC: ; // 0x24480dc
|
|
/* 024480DC */ return;
|
|
}
|
|
|
|
// fn_024480E0 @ 0x24480e0
|
|
void Gambit_fn_024480E0(CPUState* cpu) {
|
|
L_024480E0: ; // 0x24480e0
|
|
/* 024480E0 */ return;
|
|
}
|
|
|
|
// fn_024480E4 @ 0x24480e4
|
|
void Gambit_fn_024480E4(CPUState* cpu) {
|
|
L_024480E4: ; // 0x24480e4
|
|
/* 024480E4 */ return;
|
|
}
|
|
|
|
// fn_024480E8 @ 0x24480e8
|
|
void Gambit_fn_024480E8(CPUState* cpu) {
|
|
L_024480E8: ; // 0x24480e8
|
|
/* 024480E8 */ cpu->r[3] = 0x00000001u;
|
|
/* 024480EC */ return;
|
|
}
|
|
|
|
// fn_024480F0 @ 0x24480f0
|
|
void Gambit_fn_024480F0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024480F0: ; // 0x24480f0
|
|
/* 024480F0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 024480F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024480F4 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024480F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024480F8 */ cpu->ctr = cpu->r[0];
|
|
/* 024480FC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_02448100 @ 0x2448100
|
|
void Gambit_fn_02448100(CPUState* cpu) {
|
|
L_02448100: ; // 0x2448100
|
|
/* 02448100 */ return;
|
|
}
|
|
|
|
// fn_02448104 @ 0x2448104
|
|
void Gambit_fn_02448104(CPUState* cpu) {
|
|
L_02448104: ; // 0x2448104
|
|
/* 02448104 */ cpu->r[3] = 0x00000000u;
|
|
/* 02448108 */ return;
|
|
}
|
|
|
|
// fn_0244810C @ 0x244810c
|
|
void Gambit_fn_0244810C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_0244810C: ; // 0x244810c
|
|
/* 0244810C */ cpu->r[9] = 0x101D0000u;
|
|
/* 02448110 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 02448110 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02448110 */ cpu->r[9] = _t0;
|
|
/* 02448114 */ cpu->r[12] = 0x101D0000u;
|
|
/* 02448118 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 0244811C */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 02448120 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448120 */ _t2 = _t1 & 0x00000001u;
|
|
/* 02448120 */ if (_t2) goto L_02448124; else goto L_02448138;
|
|
L_02448124: ; // 0x2448124
|
|
/* 02448124 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02448128 */ cpu->r[0] = 0x00000001u;
|
|
/* 0244812C */ cpu->r[7] = cpu->r[7] + 0xFFFFE1BCu;
|
|
/* 02448130 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02448130 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02448134 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02448134 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02448138: ; // 0x2448138
|
|
/* 02448138 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0244813C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244813C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244813C */ if (_t6) goto L_02448140; else goto L_02448148;
|
|
L_02448140: ; // 0x2448140
|
|
/* 02448140 */ cpu->r[3] = 0x00000001u;
|
|
/* 02448144 */ return;
|
|
L_02448148: ; // 0x2448148
|
|
/* 02448148 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0244814C */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 0244814C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0244814C */ cpu->r[7] = _t7;
|
|
/* 02448150 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02448154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02448158 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 0244815C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244815C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0244815C */ if (_t9) goto L_02448160; else goto L_02448174;
|
|
L_02448160: ; // 0x2448160
|
|
/* 02448160 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448164 */ cpu->r[9] = 0x00000001u;
|
|
/* 02448168 */ cpu->r[0] = cpu->r[0] + 0xFFFFE174u;
|
|
/* 0244816C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0244816C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02448170 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02448170 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02448174: ; // 0x2448174
|
|
/* 02448174 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02448178 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0244817C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02448180 */ return;
|
|
}
|
|
|
|
// fn_02448184 @ 0x2448184
|
|
void Gambit_fn_02448184(CPUState* cpu) {
|
|
L_02448184: ; // 0x2448184
|
|
/* 02448184 */ return;
|
|
}
|
|
|
|
// fn_02448188 @ 0x2448188
|
|
void Gambit_fn_02448188(CPUState* cpu) {
|
|
L_02448188: ; // 0x2448188
|
|
/* 02448188 */ cpu->r[3] = 0x00000000u;
|
|
/* 0244818C */ return;
|
|
}
|
|
|
|
// fn_02448190 @ 0x2448190
|
|
void Gambit_fn_02448190(CPUState* cpu) {
|
|
L_02448190: ; // 0x2448190
|
|
/* 02448190 */ return;
|
|
}
|
|
|
|
// fn_02448194 @ 0x2448194
|
|
void Gambit_fn_02448194(CPUState* cpu) {
|
|
L_02448194: ; // 0x2448194
|
|
/* 02448194 */ return;
|
|
}
|
|
|
|
// fn_02448198 @ 0x2448198
|
|
void Gambit_fn_02448198(CPUState* cpu) {
|
|
L_02448198: ; // 0x2448198
|
|
/* 02448198 */ return;
|
|
}
|
|
|
|
// fn_0244819C @ 0x244819c
|
|
void Gambit_fn_0244819C(CPUState* cpu) {
|
|
L_0244819C: ; // 0x244819c
|
|
/* 0244819C */ return;
|
|
}
|
|
|
|
// fn_024481A0 @ 0x24481a0
|
|
void Gambit_fn_024481A0(CPUState* cpu) {
|
|
L_024481A0: ; // 0x24481a0
|
|
/* 024481A0 */ return;
|
|
}
|
|
|
|
// fn_024481A4 @ 0x24481a4
|
|
void Gambit_fn_024481A4(CPUState* cpu) {
|
|
L_024481A4: ; // 0x24481a4
|
|
/* 024481A4 */ return;
|
|
}
|
|
|
|
// fn_024481A8 @ 0x24481a8
|
|
void Gambit_fn_024481A8(CPUState* cpu) {
|
|
L_024481A8: ; // 0x24481a8
|
|
/* 024481A8 */ return;
|
|
}
|
|
|
|
// fn_024481AC @ 0x24481ac
|
|
void Gambit_fn_024481AC(CPUState* cpu) {
|
|
L_024481AC: ; // 0x24481ac
|
|
/* 024481AC */ return;
|
|
}
|
|
|
|
// fn_024481B0 @ 0x24481b0
|
|
void Gambit_fn_024481B0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0208A0C8: ; // 0x208a0c8
|
|
/* 0208A0C8 */ cpu->r[0] = cpu->lr;
|
|
/* 0208A0CC */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0208A0CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0208A0CC */ cpu->r[1] = _t0;
|
|
/* 0208A0D0 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0208A0D0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0208A0D4 */ cpu->r[31] = cpu->r[3];
|
|
/* 0208A0D8 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0208A0D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0208A0DC */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0208A0DC */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0208A0E0 */ cpu->r[12] = 0x00000000u;
|
|
/* 0208A0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0208A0E8 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0208A0E8 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0208A0EC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0208A0EC */ _t6 = _t5 & 0x00000001u;
|
|
/* 0208A0EC */ if (_t6) goto L_0208A114; else goto L_0208A0F0;
|
|
L_0208A0F0: ; // 0x208a0f0
|
|
/* 0208A0F0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0208A0F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0208A0F4 */ /* nop */
|
|
/* 0208A0F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0208A0FC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0208A0FC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0208A0FC */ if (_t9) goto L_0208A100; else goto L_0208A114;
|
|
L_0208A100: ; // 0x208a100
|
|
/* 0208A100 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0208A100 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0208A104 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0208A104 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0208A108 */ cpu->ctr = cpu->r[0];
|
|
/* 0208A10C */ cpu->r[3] = cpu->r[31];
|
|
/* 0208A110 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0208A114: ; // 0x208a114
|
|
/* 0208A114 */ cpu->r[3] = cpu->r[31];
|
|
/* 0208A118 */ Gambit_fn_0208A040(cpu);
|
|
/* 0208A11C */ cpu->r[3] = cpu->r[31];
|
|
/* 0208A120 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0208A124 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0208A124 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0208A128 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0208A128 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0208A12C */ cpu->lr = cpu->r[0];
|
|
/* 0208A130 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0208A134 */ return;
|
|
L_024481B0: ; // 0x24481b0
|
|
/* 024481B0 */ cpu->r[3] = cpu->r[3] + 0x000001E0u;
|
|
/* 024481B4 */ goto L_0208A0C8;
|
|
}
|
|
|
|
// fn_024481B8 @ 0x24481b8
|
|
void Gambit_fn_024481B8(CPUState* cpu) {
|
|
L_024481B8: ; // 0x24481b8
|
|
/* 024481B8 */ return;
|
|
}
|
|
|
|
// fn_024481BC @ 0x24481bc
|
|
void Gambit_fn_024481BC(CPUState* cpu) {
|
|
L_024481BC: ; // 0x24481bc
|
|
/* 024481BC */ cpu->r[3] = 0x00000000u;
|
|
/* 024481C0 */ return;
|
|
}
|
|
|
|
// fn_024481C4 @ 0x24481c4
|
|
void Gambit_fn_024481C4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_024481C4: ; // 0x24481c4
|
|
/* 024481C4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFF0u;
|
|
/* 024481C8 */ goto L_02448FAC;
|
|
L_02448FAC: ; // 0x2448fac
|
|
/* 02448FAC */ cpu->r[0] = cpu->lr;
|
|
/* 02448FB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448FB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448FB0 */ cpu->r[1] = _t0;
|
|
/* 02448FB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448FB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448FB8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02448FB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02448FBC */ cpu->r[30] = cpu->r[3];
|
|
/* 02448FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02448FC0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02448FC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02448FC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02448FC8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448FC8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02448FC8 */ if (_t5) goto L_0244900C; else goto L_02448FCC;
|
|
L_02448FCC: ; // 0x2448fcc
|
|
/* 02448FCC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02448FD0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448FD4 */ cpu->r[11] = cpu->r[11] + 0xFFFFE7F8u;
|
|
/* 02448FD8 */ cpu->r[0] = cpu->r[0] + 0xFFFFE7E8u;
|
|
/* 02448FDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02448FE0 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02448FE0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02448FE4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448FE8 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02448FE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02448FEC */ cpu->r[0] = cpu->r[0] + 0xFFFFE808u;
|
|
/* 02448FF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02448FF4 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 02448FF4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02448FF8 */ Gambit_fn_02068798(cpu);
|
|
/* 02448FFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02448FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02449000 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02449000 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02449000 */ if (_t10) goto L_0244900C; else goto L_02449004;
|
|
L_02449004: ; // 0x2449004
|
|
/* 02449004 */ cpu->r[3] = cpu->r[30];
|
|
/* 02449008 */ Gambit_fn_02801BB0(cpu);
|
|
L_0244900C: ; // 0x244900c
|
|
/* 0244900C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0244900C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02449010 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02449010 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02449014 */ cpu->lr = cpu->r[0];
|
|
/* 02449018 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02449018 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0244901C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02449020 */ return;
|
|
}
|
|
|
|
// fn_024481CC @ 0x24481cc
|
|
void Gambit_fn_024481CC(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_024481CC: ; // 0x24481cc
|
|
/* 024481CC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024481D0 */ goto L_02068818;
|
|
}
|
|
|
|
// fn_024481D4 @ 0x24481d4
|
|
void Gambit_fn_024481D4(CPUState* cpu) {
|
|
L_024481D4: ; // 0x24481d4
|
|
/* 024481D4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024481D8 */ goto L_02449024;
|
|
L_02449024: ; // 0x2449024
|
|
/* 02449024 */ return;
|
|
}
|
|
|
|
// fn_024481DC @ 0x24481dc
|
|
void Gambit_fn_024481DC(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024481DC: ; // 0x24481dc
|
|
/* 024481DC */ cpu->r[3] = cpu->r[3] + 0xFFFFFE38u;
|
|
/* 024481E0 */ goto L_02449028;
|
|
L_02449028: ; // 0x2449028
|
|
/* 02449028 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02449028 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0244902C */ return;
|
|
}
|
|
|
|
// fn_024481E4 @ 0x24481e4
|
|
void Gambit_fn_024481E4(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, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238;
|
|
|
|
L_024481E4: ; // 0x24481e4
|
|
/* 024481E4 */ cpu->r[0] = cpu->lr;
|
|
/* 024481E8 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 024481E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024481E8 */ cpu->r[1] = _t0;
|
|
/* 024481EC */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 024481EC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024481F0 */ /* nop */
|
|
/* 024481F4 */ cpu->r[29] = cpu->r[3];
|
|
/* 024481F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024481F8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024481F8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024481F8 */ if (_t3) goto L_024481FC; else goto L_0244820C;
|
|
L_024481FC: ; // 0x24481fc
|
|
/* 024481FC */ cpu->r[3] = 0x0000021Cu;
|
|
/* 02448200 */ Gambit_fn_02801A78(cpu);
|
|
/* 02448204 */ cpu->r[29] = cpu->r[3];
|
|
/* 02448204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02448208 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448208 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02448208 */ if (_t5) goto L_02448918; else goto L_0244820C;
|
|
L_0244820C: ; // 0x244820c
|
|
/* 0244820C */ cpu->r[26] = 0x100A0000u;
|
|
/* 02448210 */ cpu->r[3] = cpu->r[29];
|
|
/* 02448214 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448218 */ cpu->r[26] = cpu->r[26] + 0xFFFFE490u;
|
|
/* 0244821C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448220 */ cpu->r[0] = cpu->r[0] + 0xFFFFE5A8u;
|
|
/* 02448224 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02448224 */ rbrew_write32(cpu->mem, _t6, cpu->r[26]);
|
|
/* 02448228 */ cpu->r[5] = 0x00000003u;
|
|
/* 0244822C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244822C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02448230 */ Gambit_fn_02068860(cpu);
|
|
/* 02448234 */ cpu->r[6] = 0x100A0000u;
|
|
/* 02448238 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0244823C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02448240 */ cpu->r[6] = cpu->r[6] + 0xFFFFE680u;
|
|
/* 02448244 */ cpu->r[7] = cpu->r[7] + 0xFFFFE7E8u;
|
|
/* 02448248 */ _t8 = cpu->r[29] + 0x00000000u;
|
|
/* 02448248 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0244824C */ cpu->r[8] = cpu->r[8] + 0xFFFFE7F8u;
|
|
/* 02448250 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02448254 */ _t9 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02448254 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02448258 */ cpu->r[27] = cpu->r[29] + 0x000001DCu;
|
|
/* 02448258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0244825C */ cpu->r[9] = cpu->r[9] + 0xFFFFE808u;
|
|
/* 02448260 */ _t10 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02448260 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02448264 */ cpu->r[31] = cpu->r[27];
|
|
/* 02448268 */ cpu->r[28] = 0x00000000u;
|
|
/* 0244826C */ _t11 = cpu->r[29] + 0x000001C8u;
|
|
/* 0244826C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02448270 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448270 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02448270 */ if (_t13) goto L_02448274; else goto L_02448284;
|
|
L_02448274: ; // 0x2448274
|
|
/* 02448274 */ cpu->r[3] = 0x00000038u;
|
|
/* 02448278 */ Gambit_fn_02801A78(cpu);
|
|
/* 0244827C */ cpu->r[31] = cpu->r[3];
|
|
/* 0244827C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02448280 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448280 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02448280 */ if (_t15) goto L_024482B4; else goto L_02448284;
|
|
L_02448284: ; // 0x2448284
|
|
/* 02448284 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448288 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0244828C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448290 */ _t16 = cpu->r[31] + 0x00000030u;
|
|
/* 02448290 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02448294 */ cpu->r[0] = cpu->r[0] + 0xFFFFB710u;
|
|
/* 02448298 */ _t17 = cpu->r[31] + 0x00000034u;
|
|
/* 02448298 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 0244829C */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 0244829C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024482A0 */ _t19 = cpu->r[31] + 0x00000024u;
|
|
/* 024482A0 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 024482A4 */ _t20 = cpu->r[31] + 0x00000028u;
|
|
/* 024482A4 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 024482A8 */ _t21 = cpu->r[31] + 0x0000002Cu;
|
|
/* 024482A8 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 024482AC */ _t22 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024482AC */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 024482B0 */ _t23 = cpu->r[31] + 0x00000020u;
|
|
/* 024482B0 */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
L_024482B4: ; // 0x24482b4
|
|
/* 024482B4 */ _t24 = cpu->r[29] + 0x00000214u;
|
|
/* 024482B4 */ rbrew_write32(cpu->mem, _t24, cpu->r[28]);
|
|
/* 024482B8 */ cpu->r[0] = 0x00000006u;
|
|
/* 024482BC */ cpu->r[3] = cpu->r[27];
|
|
/* 024482C0 */ _t25 = cpu->r[29] + 0x00000218u;
|
|
/* 024482C0 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 024482C4 */ cpu->r[4] = cpu->r[29];
|
|
/* 024482C8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024482CC */ cpu->r[6] = 0x00000000u;
|
|
/* 024482D0 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 024482D0 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[0]);
|
|
/* 024482D4 */ Gambit_fn_024491A8(cpu);
|
|
/* 024482D8 */ cpu->r[25] = 0x02450000u;
|
|
/* 024482DC */ cpu->r[11] = 0x100A0000u;
|
|
/* 024482E0 */ cpu->r[25] = cpu->r[25] + 0xFFFF9038u;
|
|
/* 024482E4 */ cpu->r[11] = cpu->r[11] + 0xFFFFE598u;
|
|
/* 024482E8 */ cpu->ctr = cpu->r[25];
|
|
/* 024482EC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024482EC */ rbrew_write32(cpu->mem, _t27, cpu->r[11]);
|
|
/* 024482F0 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 024482F0 */ rbrew_write32(cpu->mem, _t28, cpu->r[26]);
|
|
/* 024482F4 */ _t29 = cpu->r[27] + 0x00000018u;
|
|
/* 024482F4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024482F8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024482FC */ _t30 = cpu->r[23] + 0x00000000u;
|
|
/* 024482FC */ cpu->r[24] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02448300 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448304 */ cpu->r[31] = 0x10110000u;
|
|
/* 02448308 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448308 */ cpu->r[8] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0244830C */ _t32 = cpu->r[31] + 0x00007399u;
|
|
/* 0244830C */ cpu->r[31] = rbrew_read8(cpu->mem, _t32);
|
|
/* 02448310 */ _t33 = cpu->r[8] + 0x00000000u;
|
|
/* 02448310 */ cpu->r[12] = rbrew_read8(cpu->mem, _t33);
|
|
/* 02448314 */ cpu->r[30] = 0x00000000u;
|
|
/* 02448318 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 0244831C */ cpu->r[9] = 0x00080000u;
|
|
/* 02448320 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448320 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02448320 */ if (_t35) goto L_02448348; else goto L_02448324;
|
|
L_02448324: ; // 0x2448324
|
|
/* 02448324 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0244832C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02448330 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02448330 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02448330 */ if (_t37) goto L_02448344; else goto L_02448334;
|
|
L_02448334: ; // 0x2448334
|
|
/* 02448334 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 02448334 */ cpu->r[0] = rbrew_read8(cpu->mem, _t38);
|
|
/* 02448338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0244833C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244833C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0244833C */ if (_t40) goto L_02448340; else goto L_02448324;
|
|
L_02448340: ; // 0x2448340
|
|
/* 02448340 */ goto L_02448348;
|
|
L_02448344: ; // 0x2448344
|
|
/* 02448344 */ cpu->r[30] = 0x00000000u;
|
|
L_02448348: ; // 0x2448348
|
|
/* 02448348 */ _t41 = cpu->r[23] + 0x00000008u;
|
|
/* 02448348 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0244834C */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 0244834C */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02448350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448354 */ _t43 = cpu->r[7] + 0x00000014u;
|
|
/* 02448354 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02448358 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448358 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02448358 */ if (_t45) goto L_02448360; else goto L_0244835C;
|
|
L_0244835C: ; // 0x244835c
|
|
/* 0244835C */ cpu->r[30] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02448360: ; // 0x2448360
|
|
/* 02448360 */ cpu->ctr = cpu->r[9];
|
|
/* 02448364 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448368 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0244836C */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244836C */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02448370 */ cpu->r[6] = 0x00000000u;
|
|
/* 02448374 */ cpu->r[5] = cpu->r[30];
|
|
/* 02448378 */ cpu->r[3] = cpu->r[24];
|
|
/* 0244837C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02448380 */ _t47 = cpu->r[24] + cpu->r[30];
|
|
/* 02448380 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[31]);
|
|
/* 02448384 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02448388 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448388 */ rbrew_write16(cpu->mem, _t48, (uint16_t)cpu->r[28]);
|
|
/* 0244838C */ cpu->r[6] = 0x00000000u;
|
|
/* 02448390 */ _t49 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02448390 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[0]);
|
|
/* 02448394 */ cpu->r[10] = 0x02450000u;
|
|
/* 02448398 */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 02448398 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 0244839C */ cpu->r[10] = cpu->r[10] + 0xFFFF91A0u;
|
|
/* 024483A0 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 024483A0 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[6]);
|
|
/* 024483A4 */ _t52 = cpu->r[1] + 0x00000018u;
|
|
/* 024483A4 */ rbrew_write32(cpu->mem, _t52, cpu->r[28]);
|
|
/* 024483A8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024483AC */ _t53 = cpu->r[1] + 0x00000020u;
|
|
/* 024483AC */ rbrew_write32(cpu->mem, _t53, cpu->r[10]);
|
|
/* 024483B0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 024483B4 */ _t54 = cpu->r[1] + 0x00000026u;
|
|
/* 024483B4 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[28]);
|
|
/* 024483B8 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024483BC */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 024483BC */ rbrew_write16(cpu->mem, _t55, (uint16_t)cpu->r[28]);
|
|
/* 024483C0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024483C4 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 024483C4 */ rbrew_write16(cpu->mem, _t56, (uint16_t)cpu->r[28]);
|
|
/* 024483C8 */ cpu->r[3] = cpu->r[27];
|
|
/* 024483CC */ _t57 = cpu->r[1] + 0x00000016u;
|
|
/* 024483CC */ rbrew_write16(cpu->mem, _t57, (uint16_t)cpu->r[28]);
|
|
/* 024483D0 */ Gambit_fn_02449458(cpu);
|
|
/* 024483D4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024483D8 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 024483D8 */ rbrew_write32(cpu->mem, _t58, cpu->r[26]);
|
|
/* 024483DC */ cpu->r[11] = cpu->r[11] + 0xFFFFE5B8u;
|
|
/* 024483E0 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024483E0 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 024483E4 */ _t60 = cpu->r[27] + 0x00000014u;
|
|
/* 024483E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024483E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 024483EC */ _t61 = cpu->r[27] + 0x00000018u;
|
|
/* 024483EC */ cpu->r[24] = rbrew_read32(cpu->mem, _t61);
|
|
/* 024483F0 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024483F0 */ _t63 = _t62 & 0x00000001u;
|
|
/* 024483F0 */ if (_t63) goto L_024483F4; else goto L_024483F8;
|
|
L_024483F4: ; // 0x24483f4
|
|
/* 024483F4 */ cpu->r[24] = cpu->r[24] + 0x00000024u;
|
|
L_024483F8: ; // 0x24483f8
|
|
/* 024483F8 */ cpu->ctr = cpu->r[25];
|
|
/* 024483FC */ _t64 = cpu->r[24] + 0x00000000u;
|
|
/* 024483FC */ cpu->r[23] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02448400 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448404 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448408 */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448408 */ cpu->r[12] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0244840C */ _t66 = cpu->r[12] + 0x00000000u;
|
|
/* 0244840C */ cpu->r[6] = rbrew_read8(cpu->mem, _t66);
|
|
/* 02448410 */ cpu->r[30] = 0x00000000u;
|
|
/* 02448414 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02448418 */ cpu->r[5] = 0x00080000u;
|
|
/* 0244841C */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244841C */ _t68 = _t67 & 0x00000001u;
|
|
/* 0244841C */ if (_t68) goto L_02448444; else goto L_02448420;
|
|
L_02448420: ; // 0x2448420
|
|
/* 02448420 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448428 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0244842C */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0244842C */ _t70 = _t69 & 0x00000001u;
|
|
/* 0244842C */ if (_t70) goto L_02448440; else goto L_02448430;
|
|
L_02448430: ; // 0x2448430
|
|
/* 02448430 */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 02448430 */ cpu->r[8] = rbrew_read8(cpu->mem, _t71);
|
|
/* 02448434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02448438 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448438 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02448438 */ if (_t73) goto L_0244843C; else goto L_02448420;
|
|
L_0244843C: ; // 0x244843c
|
|
/* 0244843C */ goto L_02448444;
|
|
L_02448440: ; // 0x2448440
|
|
/* 02448440 */ cpu->r[30] = 0x00000000u;
|
|
L_02448444: ; // 0x2448444
|
|
/* 02448444 */ _t74 = cpu->r[24] + 0x00000008u;
|
|
/* 02448444 */ cpu->r[6] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02448448 */ _t75 = cpu->r[1] + 0x00000010u;
|
|
/* 02448448 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0244844C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 02448450 */ _t76 = cpu->r[10] + 0x00000014u;
|
|
/* 02448450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02448454 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448454 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02448454 */ if (_t78) goto L_0244845C; else goto L_02448458;
|
|
L_02448458: ; // 0x2448458
|
|
/* 02448458 */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_0244845C: ; // 0x244845c
|
|
/* 0244845C */ cpu->ctr = cpu->r[0];
|
|
/* 02448460 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448464 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448468 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448468 */ cpu->r[4] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0244846C */ cpu->r[3] = cpu->r[23];
|
|
/* 02448470 */ cpu->r[5] = cpu->r[30];
|
|
/* 02448474 */ cpu->r[6] = 0x00000000u;
|
|
/* 02448478 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0244847C */ _t80 = cpu->r[23] + cpu->r[30];
|
|
/* 0244847C */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[31]);
|
|
/* 02448480 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02448484 */ _t81 = cpu->r[1] + 0x00000026u;
|
|
/* 02448484 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[28]);
|
|
/* 02448488 */ cpu->r[6] = 0x02450000u;
|
|
/* 0244848C */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 0244848C */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[28]);
|
|
/* 02448490 */ cpu->r[6] = cpu->r[6] + 0xFFFF8C94u;
|
|
/* 02448494 */ _t83 = cpu->r[1] + 0x00000016u;
|
|
/* 02448494 */ rbrew_write16(cpu->mem, _t83, (uint16_t)cpu->r[12]);
|
|
/* 02448498 */ cpu->r[11] = 0x00000001u;
|
|
/* 0244849C */ _t84 = cpu->r[1] + 0x00000024u;
|
|
/* 0244849C */ rbrew_write16(cpu->mem, _t84, (uint16_t)cpu->r[28]);
|
|
/* 024484A0 */ _t85 = cpu->r[1] + 0x00000018u;
|
|
/* 024484A0 */ rbrew_write32(cpu->mem, _t85, cpu->r[6]);
|
|
/* 024484A4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024484A8 */ _t86 = cpu->r[1] + 0x00000028u;
|
|
/* 024484A8 */ rbrew_write32(cpu->mem, _t86, cpu->r[28]);
|
|
/* 024484AC */ cpu->r[3] = cpu->r[27];
|
|
/* 024484B0 */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024484B0 */ rbrew_write16(cpu->mem, _t87, (uint16_t)cpu->r[28]);
|
|
/* 024484B4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024484B8 */ _t88 = cpu->r[1] + 0x00000020u;
|
|
/* 024484B8 */ rbrew_write32(cpu->mem, _t88, cpu->r[28]);
|
|
/* 024484BC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024484C0 */ _t89 = cpu->r[1] + 0x00000008u;
|
|
/* 024484C0 */ rbrew_write8(cpu->mem, _t89, (uint8_t)cpu->r[11]);
|
|
/* 024484C4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024484C8 */ _t90 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024484C8 */ rbrew_write16(cpu->mem, _t90, (uint16_t)cpu->r[28]);
|
|
/* 024484CC */ Gambit_fn_02449458(cpu);
|
|
/* 024484D0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024484D4 */ _t91 = cpu->r[1] + 0x00000010u;
|
|
/* 024484D4 */ rbrew_write32(cpu->mem, _t91, cpu->r[26]);
|
|
/* 024484D8 */ cpu->r[0] = cpu->r[0] + 0xFFFFE5C8u;
|
|
/* 024484DC */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024484DC */ rbrew_write32(cpu->mem, _t92, cpu->r[0]);
|
|
/* 024484E0 */ _t93 = cpu->r[27] + 0x00000014u;
|
|
/* 024484E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 024484E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 024484E8 */ _t94 = cpu->r[27] + 0x00000018u;
|
|
/* 024484E8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t94);
|
|
/* 024484EC */ _t95 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024484EC */ _t96 = _t95 & 0x00000001u;
|
|
/* 024484EC */ if (_t96) goto L_024484F0; else goto L_024484F4;
|
|
L_024484F0: ; // 0x24484f0
|
|
/* 024484F0 */ cpu->r[24] = cpu->r[24] + 0x00000048u;
|
|
L_024484F4: ; // 0x24484f4
|
|
/* 024484F4 */ cpu->ctr = cpu->r[25];
|
|
/* 024484F8 */ _t97 = cpu->r[24] + 0x00000000u;
|
|
/* 024484F8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t97);
|
|
/* 024484FC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448504 */ _t98 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448504 */ cpu->r[8] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02448508 */ _t99 = cpu->r[8] + 0x00000000u;
|
|
/* 02448508 */ cpu->r[11] = rbrew_read8(cpu->mem, _t99);
|
|
/* 0244850C */ cpu->r[30] = 0x00000000u;
|
|
/* 02448510 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 02448514 */ cpu->r[10] = 0x00080000u;
|
|
/* 02448518 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448518 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02448518 */ if (_t101) goto L_02448540; else goto L_0244851C;
|
|
L_0244851C: ; // 0x244851c
|
|
/* 0244851C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02448524 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02448528 */ _t102 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02448528 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02448528 */ if (_t103) goto L_0244853C; else goto L_0244852C;
|
|
L_0244852C: ; // 0x244852c
|
|
/* 0244852C */ _t104 = cpu->r[8] + 0x00000000u;
|
|
/* 0244852C */ cpu->r[0] = rbrew_read8(cpu->mem, _t104);
|
|
/* 02448530 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02448534 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448534 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02448534 */ if (_t106) goto L_02448538; else goto L_0244851C;
|
|
L_02448538: ; // 0x2448538
|
|
/* 02448538 */ goto L_02448540;
|
|
L_0244853C: ; // 0x244853c
|
|
/* 0244853C */ cpu->r[30] = 0x00000000u;
|
|
L_02448540: ; // 0x2448540
|
|
/* 02448540 */ _t107 = cpu->r[24] + 0x00000008u;
|
|
/* 02448540 */ cpu->r[8] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02448544 */ _t108 = cpu->r[1] + 0x00000010u;
|
|
/* 02448544 */ cpu->r[6] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02448548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 0244854C */ _t109 = cpu->r[6] + 0x00000014u;
|
|
/* 0244854C */ cpu->r[7] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02448550 */ _t110 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448550 */ _t111 = _t110 & 0x00000001u;
|
|
/* 02448550 */ if (_t111) goto L_02448558; else goto L_02448554;
|
|
L_02448554: ; // 0x2448554
|
|
/* 02448554 */ cpu->r[30] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02448558: ; // 0x2448558
|
|
/* 02448558 */ cpu->ctr = cpu->r[7];
|
|
/* 0244855C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448560 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448564 */ _t112 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448564 */ cpu->r[4] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02448568 */ cpu->r[3] = cpu->r[23];
|
|
/* 0244856C */ cpu->r[5] = cpu->r[30];
|
|
/* 02448570 */ cpu->r[6] = 0x00000000u;
|
|
/* 02448574 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02448578 */ _t113 = cpu->r[23] + cpu->r[30];
|
|
/* 02448578 */ rbrew_write8(cpu->mem, _t113, (uint8_t)cpu->r[31]);
|
|
/* 0244857C */ cpu->r[0] = 0x00000002u;
|
|
/* 02448580 */ _t114 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02448580 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[28]);
|
|
/* 02448584 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 02448588 */ _t115 = cpu->r[1] + 0x00000024u;
|
|
/* 02448588 */ rbrew_write16(cpu->mem, _t115, (uint16_t)cpu->r[28]);
|
|
/* 0244858C */ cpu->r[10] = 0x02450000u;
|
|
/* 02448590 */ _t116 = cpu->r[1] + 0x00000016u;
|
|
/* 02448590 */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[9]);
|
|
/* 02448594 */ cpu->r[10] = cpu->r[10] + 0xFFFF8D20u;
|
|
/* 02448598 */ _t117 = cpu->r[1] + 0x00000020u;
|
|
/* 02448598 */ rbrew_write32(cpu->mem, _t117, cpu->r[28]);
|
|
/* 0244859C */ _t118 = cpu->r[1] + 0x00000014u;
|
|
/* 0244859C */ rbrew_write16(cpu->mem, _t118, (uint16_t)cpu->r[28]);
|
|
/* 024485A0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024485A4 */ _t119 = cpu->r[1] + 0x00000008u;
|
|
/* 024485A4 */ rbrew_write8(cpu->mem, _t119, (uint8_t)cpu->r[0]);
|
|
/* 024485A8 */ cpu->r[3] = cpu->r[27];
|
|
/* 024485AC */ _t120 = cpu->r[1] + 0x00000028u;
|
|
/* 024485AC */ rbrew_write32(cpu->mem, _t120, cpu->r[28]);
|
|
/* 024485B0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024485B4 */ _t121 = cpu->r[1] + 0x00000026u;
|
|
/* 024485B4 */ rbrew_write16(cpu->mem, _t121, (uint16_t)cpu->r[28]);
|
|
/* 024485B8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024485BC */ _t122 = cpu->r[1] + 0x00000018u;
|
|
/* 024485BC */ rbrew_write32(cpu->mem, _t122, cpu->r[10]);
|
|
/* 024485C0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024485C4 */ _t123 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024485C4 */ rbrew_write16(cpu->mem, _t123, (uint16_t)cpu->r[28]);
|
|
/* 024485C8 */ Gambit_fn_02449458(cpu);
|
|
/* 024485CC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024485D0 */ _t124 = cpu->r[1] + 0x00000010u;
|
|
/* 024485D0 */ rbrew_write32(cpu->mem, _t124, cpu->r[26]);
|
|
/* 024485D4 */ cpu->r[12] = cpu->r[12] + 0xFFFFE570u;
|
|
/* 024485D8 */ _t125 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024485D8 */ rbrew_write32(cpu->mem, _t125, cpu->r[12]);
|
|
/* 024485DC */ _t126 = cpu->r[27] + 0x00000014u;
|
|
/* 024485DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 024485E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 024485E4 */ _t127 = cpu->r[27] + 0x00000018u;
|
|
/* 024485E4 */ cpu->r[24] = rbrew_read32(cpu->mem, _t127);
|
|
/* 024485E8 */ _t128 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024485E8 */ _t129 = _t128 & 0x00000001u;
|
|
/* 024485E8 */ if (_t129) goto L_024485EC; else goto L_024485F0;
|
|
L_024485EC: ; // 0x24485ec
|
|
/* 024485EC */ cpu->r[24] = cpu->r[24] + 0x0000006Cu;
|
|
L_024485F0: ; // 0x24485f0
|
|
/* 024485F0 */ cpu->ctr = cpu->r[25];
|
|
/* 024485F4 */ _t130 = cpu->r[24] + 0x00000000u;
|
|
/* 024485F4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t130);
|
|
/* 024485F8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024485FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448600 */ _t131 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448600 */ cpu->r[12] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02448604 */ _t132 = cpu->r[12] + 0x00000000u;
|
|
/* 02448604 */ cpu->r[7] = rbrew_read8(cpu->mem, _t132);
|
|
/* 02448608 */ cpu->r[30] = 0x00000000u;
|
|
/* 0244860C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02448610 */ cpu->r[5] = 0x00080000u;
|
|
/* 02448614 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448614 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02448614 */ if (_t134) goto L_0244863C; else goto L_02448618;
|
|
L_02448618: ; // 0x2448618
|
|
/* 02448618 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0244861C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448620 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02448624 */ _t135 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02448624 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02448624 */ if (_t136) goto L_02448638; else goto L_02448628;
|
|
L_02448628: ; // 0x2448628
|
|
/* 02448628 */ _t137 = cpu->r[12] + 0x00000000u;
|
|
/* 02448628 */ cpu->r[0] = rbrew_read8(cpu->mem, _t137);
|
|
/* 0244862C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02448630 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448630 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02448630 */ if (_t139) goto L_02448634; else goto L_02448618;
|
|
L_02448634: ; // 0x2448634
|
|
/* 02448634 */ goto L_0244863C;
|
|
L_02448638: ; // 0x2448638
|
|
/* 02448638 */ cpu->r[30] = 0x00000000u;
|
|
L_0244863C: ; // 0x244863c
|
|
/* 0244863C */ _t140 = cpu->r[24] + 0x00000008u;
|
|
/* 0244863C */ cpu->r[10] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02448640 */ _t141 = cpu->r[1] + 0x00000010u;
|
|
/* 02448640 */ cpu->r[11] = rbrew_read32(cpu->mem, _t141);
|
|
/* 02448644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02448648 */ _t142 = cpu->r[11] + 0x00000014u;
|
|
/* 02448648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0244864C */ _t143 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0244864C */ _t144 = _t143 & 0x00000001u;
|
|
/* 0244864C */ if (_t144) goto L_02448654; else goto L_02448650;
|
|
L_02448650: ; // 0x2448650
|
|
/* 02448650 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02448654: ; // 0x2448654
|
|
/* 02448654 */ cpu->ctr = cpu->r[0];
|
|
/* 02448658 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244865C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448660 */ _t145 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448660 */ cpu->r[4] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02448664 */ cpu->r[3] = cpu->r[23];
|
|
/* 02448668 */ cpu->r[5] = cpu->r[30];
|
|
/* 0244866C */ cpu->r[6] = 0x00000000u;
|
|
/* 02448670 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02448674 */ _t146 = cpu->r[23] + cpu->r[30];
|
|
/* 02448674 */ rbrew_write8(cpu->mem, _t146, (uint8_t)cpu->r[31]);
|
|
/* 02448678 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0244867C */ _t147 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244867C */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[28]);
|
|
/* 02448680 */ cpu->r[0] = 0x02450000u;
|
|
/* 02448684 */ _t148 = cpu->r[1] + 0x00000024u;
|
|
/* 02448684 */ rbrew_write16(cpu->mem, _t148, (uint16_t)cpu->r[28]);
|
|
/* 02448688 */ cpu->r[0] = cpu->r[0] + 0xFFFF8DE8u;
|
|
/* 0244868C */ _t149 = cpu->r[1] + 0x00000026u;
|
|
/* 0244868C */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[28]);
|
|
/* 02448690 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02448694 */ _t150 = cpu->r[1] + 0x00000028u;
|
|
/* 02448694 */ rbrew_write32(cpu->mem, _t150, cpu->r[28]);
|
|
/* 02448698 */ _t151 = cpu->r[1] + 0x00000018u;
|
|
/* 02448698 */ rbrew_write32(cpu->mem, _t151, cpu->r[0]);
|
|
/* 0244869C */ cpu->r[0] = 0x00000003u;
|
|
/* 024486A0 */ _t152 = cpu->r[1] + 0x00000020u;
|
|
/* 024486A0 */ rbrew_write32(cpu->mem, _t152, cpu->r[28]);
|
|
/* 024486A4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024486A8 */ _t153 = cpu->r[1] + 0x00000008u;
|
|
/* 024486A8 */ rbrew_write8(cpu->mem, _t153, (uint8_t)cpu->r[0]);
|
|
/* 024486AC */ cpu->r[3] = cpu->r[27];
|
|
/* 024486B0 */ _t154 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024486B0 */ rbrew_write16(cpu->mem, _t154, (uint16_t)cpu->r[28]);
|
|
/* 024486B4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024486B8 */ _t155 = cpu->r[1] + 0x00000016u;
|
|
/* 024486B8 */ rbrew_write16(cpu->mem, _t155, (uint16_t)cpu->r[12]);
|
|
/* 024486BC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024486C0 */ _t156 = cpu->r[1] + 0x00000014u;
|
|
/* 024486C0 */ rbrew_write16(cpu->mem, _t156, (uint16_t)cpu->r[28]);
|
|
/* 024486C4 */ Gambit_fn_02449458(cpu);
|
|
/* 024486C8 */ cpu->r[8] = 0x100A0000u;
|
|
/* 024486CC */ _t157 = cpu->r[1] + 0x00000010u;
|
|
/* 024486CC */ rbrew_write32(cpu->mem, _t157, cpu->r[26]);
|
|
/* 024486D0 */ cpu->r[8] = cpu->r[8] + 0xFFFFE584u;
|
|
/* 024486D4 */ _t158 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024486D4 */ rbrew_write32(cpu->mem, _t158, cpu->r[8]);
|
|
/* 024486D8 */ _t159 = cpu->r[27] + 0x00000014u;
|
|
/* 024486D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t159);
|
|
/* 024486DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000004u);
|
|
/* 024486E0 */ _t160 = cpu->r[27] + 0x00000018u;
|
|
/* 024486E0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t160);
|
|
/* 024486E4 */ _t161 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024486E4 */ _t162 = _t161 & 0x00000001u;
|
|
/* 024486E4 */ if (_t162) goto L_024486E8; else goto L_024486EC;
|
|
L_024486E8: ; // 0x24486e8
|
|
/* 024486E8 */ cpu->r[24] = cpu->r[24] + 0x00000090u;
|
|
L_024486EC: ; // 0x24486ec
|
|
/* 024486EC */ cpu->ctr = cpu->r[25];
|
|
/* 024486F0 */ _t163 = cpu->r[24] + 0x00000000u;
|
|
/* 024486F0 */ cpu->r[23] = rbrew_read32(cpu->mem, _t163);
|
|
/* 024486F4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024486F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024486FC */ _t164 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024486FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02448700 */ _t165 = cpu->r[7] + 0x00000000u;
|
|
/* 02448700 */ cpu->r[10] = rbrew_read8(cpu->mem, _t165);
|
|
/* 02448704 */ cpu->r[30] = 0x00000000u;
|
|
/* 02448708 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0244870C */ cpu->r[9] = 0x00080000u;
|
|
/* 02448710 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448710 */ _t167 = _t166 & 0x00000001u;
|
|
/* 02448710 */ if (_t167) goto L_02448738; else goto L_02448714;
|
|
L_02448714: ; // 0x2448714
|
|
/* 02448714 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0244871C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02448720 */ _t168 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02448720 */ _t169 = _t168 & 0x00000001u;
|
|
/* 02448720 */ if (_t169) goto L_02448734; else goto L_02448724;
|
|
L_02448724: ; // 0x2448724
|
|
/* 02448724 */ _t170 = cpu->r[7] + 0x00000000u;
|
|
/* 02448724 */ cpu->r[0] = rbrew_read8(cpu->mem, _t170);
|
|
/* 02448728 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0244872C */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244872C */ _t172 = _t171 & 0x00000001u;
|
|
/* 0244872C */ if (_t172) goto L_02448730; else goto L_02448714;
|
|
L_02448730: ; // 0x2448730
|
|
/* 02448730 */ goto L_02448738;
|
|
L_02448734: ; // 0x2448734
|
|
/* 02448734 */ cpu->r[30] = 0x00000000u;
|
|
L_02448738: ; // 0x2448738
|
|
/* 02448738 */ _t173 = cpu->r[24] + 0x00000008u;
|
|
/* 02448738 */ cpu->r[12] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0244873C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 02448740 */ _t174 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448740 */ _t175 = _t174 & 0x00000001u;
|
|
/* 02448740 */ if (_t175) goto L_02448748; else goto L_02448744;
|
|
L_02448744: ; // 0x2448744
|
|
/* 02448744 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02448748: ; // 0x2448748
|
|
/* 02448748 */ _t176 = cpu->r[1] + 0x00000010u;
|
|
/* 02448748 */ cpu->r[12] = rbrew_read32(cpu->mem, _t176);
|
|
/* 0244874C */ _t177 = cpu->r[12] + 0x00000014u;
|
|
/* 0244874C */ cpu->r[0] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02448750 */ cpu->ctr = cpu->r[0];
|
|
/* 02448754 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448758 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0244875C */ _t178 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244875C */ cpu->r[4] = rbrew_read32(cpu->mem, _t178);
|
|
/* 02448760 */ cpu->r[6] = 0x00000000u;
|
|
/* 02448764 */ cpu->r[5] = cpu->r[30];
|
|
/* 02448768 */ cpu->r[3] = cpu->r[23];
|
|
/* 0244876C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02448770 */ _t179 = cpu->r[23] + cpu->r[30];
|
|
/* 02448770 */ rbrew_write8(cpu->mem, _t179, (uint8_t)cpu->r[31]);
|
|
/* 02448774 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 02448778 */ cpu->r[6] = 0x02450000u;
|
|
/* 0244877C */ _t180 = cpu->r[1] + 0x00000014u;
|
|
/* 0244877C */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[28]);
|
|
/* 02448780 */ cpu->r[6] = cpu->r[6] + 0xFFFF91A4u;
|
|
/* 02448784 */ _t181 = cpu->r[1] + 0x00000016u;
|
|
/* 02448784 */ rbrew_write16(cpu->mem, _t181, (uint16_t)cpu->r[5]);
|
|
/* 02448788 */ _t182 = cpu->r[1] + 0x00000018u;
|
|
/* 02448788 */ rbrew_write32(cpu->mem, _t182, cpu->r[6]);
|
|
/* 0244878C */ cpu->r[0] = 0x00000004u;
|
|
/* 02448790 */ _t183 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02448790 */ rbrew_write16(cpu->mem, _t183, (uint16_t)cpu->r[28]);
|
|
/* 02448794 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02448798 */ _t184 = cpu->r[1] + 0x00000008u;
|
|
/* 02448798 */ rbrew_write8(cpu->mem, _t184, (uint8_t)cpu->r[0]);
|
|
/* 0244879C */ cpu->r[3] = cpu->r[27];
|
|
/* 024487A0 */ _t185 = cpu->r[1] + 0x00000028u;
|
|
/* 024487A0 */ rbrew_write32(cpu->mem, _t185, cpu->r[28]);
|
|
/* 024487A4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024487A8 */ _t186 = cpu->r[1] + 0x00000026u;
|
|
/* 024487A8 */ rbrew_write16(cpu->mem, _t186, (uint16_t)cpu->r[28]);
|
|
/* 024487AC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024487B0 */ _t187 = cpu->r[1] + 0x00000024u;
|
|
/* 024487B0 */ rbrew_write16(cpu->mem, _t187, (uint16_t)cpu->r[28]);
|
|
/* 024487B4 */ _t188 = cpu->r[1] + 0x00000020u;
|
|
/* 024487B4 */ rbrew_write32(cpu->mem, _t188, cpu->r[28]);
|
|
/* 024487B8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024487BC */ _t189 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024487BC */ rbrew_write16(cpu->mem, _t189, (uint16_t)cpu->r[28]);
|
|
/* 024487C0 */ Gambit_fn_02449458(cpu);
|
|
/* 024487C4 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024487C8 */ _t190 = cpu->r[1] + 0x00000010u;
|
|
/* 024487C8 */ rbrew_write32(cpu->mem, _t190, cpu->r[26]);
|
|
/* 024487CC */ cpu->r[7] = cpu->r[7] + 0xFFFFE560u;
|
|
/* 024487D0 */ _t191 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024487D0 */ rbrew_write32(cpu->mem, _t191, cpu->r[7]);
|
|
/* 024487D4 */ _t192 = cpu->r[27] + 0x00000014u;
|
|
/* 024487D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t192);
|
|
/* 024487D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000005u);
|
|
/* 024487DC */ _t193 = cpu->r[27] + 0x00000018u;
|
|
/* 024487DC */ cpu->r[26] = rbrew_read32(cpu->mem, _t193);
|
|
/* 024487E0 */ _t194 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024487E0 */ _t195 = _t194 & 0x00000001u;
|
|
/* 024487E0 */ if (_t195) goto L_024487E4; else goto L_024487E8;
|
|
L_024487E4: ; // 0x24487e4
|
|
/* 024487E4 */ cpu->r[26] = cpu->r[26] + 0x000000B4u;
|
|
L_024487E8: ; // 0x24487e8
|
|
/* 024487E8 */ cpu->ctr = cpu->r[25];
|
|
/* 024487EC */ _t196 = cpu->r[26] + 0x00000000u;
|
|
/* 024487EC */ cpu->r[24] = rbrew_read32(cpu->mem, _t196);
|
|
/* 024487F0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024487F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024487F8 */ _t197 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024487F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t197);
|
|
/* 024487FC */ _t198 = cpu->r[12] + 0x00000000u;
|
|
/* 024487FC */ cpu->r[9] = rbrew_read8(cpu->mem, _t198);
|
|
/* 02448800 */ cpu->r[30] = 0x00000000u;
|
|
/* 02448804 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02448808 */ cpu->r[5] = 0x00080000u;
|
|
/* 0244880C */ _t199 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244880C */ _t200 = _t199 & 0x00000001u;
|
|
/* 0244880C */ if (_t200) goto L_02448834; else goto L_02448810;
|
|
L_02448810: ; // 0x2448810
|
|
/* 02448810 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448818 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0244881C */ _t201 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0244881C */ _t202 = _t201 & 0x00000001u;
|
|
/* 0244881C */ if (_t202) goto L_02448830; else goto L_02448820;
|
|
L_02448820: ; // 0x2448820
|
|
/* 02448820 */ _t203 = cpu->r[12] + 0x00000000u;
|
|
/* 02448820 */ cpu->r[10] = rbrew_read8(cpu->mem, _t203);
|
|
/* 02448824 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02448828 */ _t204 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448828 */ _t205 = _t204 & 0x00000001u;
|
|
/* 02448828 */ if (_t205) goto L_0244882C; else goto L_02448810;
|
|
L_0244882C: ; // 0x244882c
|
|
/* 0244882C */ goto L_02448834;
|
|
L_02448830: ; // 0x2448830
|
|
/* 02448830 */ cpu->r[30] = 0x00000000u;
|
|
L_02448834: ; // 0x2448834
|
|
/* 02448834 */ _t206 = cpu->r[26] + 0x00000008u;
|
|
/* 02448834 */ cpu->r[5] = rbrew_read32(cpu->mem, _t206);
|
|
/* 02448838 */ _t207 = cpu->r[1] + 0x00000010u;
|
|
/* 02448838 */ cpu->r[11] = rbrew_read32(cpu->mem, _t207);
|
|
/* 0244883C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448840 */ _t208 = cpu->r[11] + 0x00000014u;
|
|
/* 02448840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t208);
|
|
/* 02448844 */ _t209 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448844 */ _t210 = _t209 & 0x00000001u;
|
|
/* 02448844 */ if (_t210) goto L_0244884C; else goto L_02448848;
|
|
L_02448848: ; // 0x2448848
|
|
/* 02448848 */ cpu->r[30] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0244884C: ; // 0x244884c
|
|
/* 0244884C */ cpu->ctr = cpu->r[12];
|
|
/* 02448850 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448854 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448858 */ _t211 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448858 */ cpu->r[4] = rbrew_read32(cpu->mem, _t211);
|
|
/* 0244885C */ cpu->r[6] = 0x00000000u;
|
|
/* 02448860 */ cpu->r[5] = cpu->r[30];
|
|
/* 02448864 */ cpu->r[3] = cpu->r[24];
|
|
/* 02448868 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0244886C */ _t212 = cpu->r[24] + cpu->r[30];
|
|
/* 0244886C */ rbrew_write8(cpu->mem, _t212, (uint8_t)cpu->r[31]);
|
|
/* 02448870 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 02448874 */ _t213 = cpu->r[1] + 0x00000026u;
|
|
/* 02448874 */ rbrew_write16(cpu->mem, _t213, (uint16_t)cpu->r[28]);
|
|
/* 02448878 */ cpu->r[0] = 0x02450000u;
|
|
/* 0244887C */ _t214 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0244887C */ rbrew_write16(cpu->mem, _t214, (uint16_t)cpu->r[28]);
|
|
/* 02448880 */ cpu->r[8] = 0x00000005u;
|
|
/* 02448884 */ _t215 = cpu->r[1] + 0x00000016u;
|
|
/* 02448884 */ rbrew_write16(cpu->mem, _t215, (uint16_t)cpu->r[9]);
|
|
/* 02448888 */ cpu->r[0] = cpu->r[0] + 0xFFFF8EA0u;
|
|
/* 0244888C */ _t216 = cpu->r[1] + 0x00000020u;
|
|
/* 0244888C */ rbrew_write32(cpu->mem, _t216, cpu->r[28]);
|
|
/* 02448890 */ _t217 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448890 */ rbrew_write16(cpu->mem, _t217, (uint16_t)cpu->r[28]);
|
|
/* 02448894 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448898 */ _t218 = cpu->r[1] + 0x00000028u;
|
|
/* 02448898 */ rbrew_write32(cpu->mem, _t218, cpu->r[28]);
|
|
/* 0244889C */ cpu->r[3] = cpu->r[27];
|
|
/* 024488A0 */ _t219 = cpu->r[1] + 0x00000008u;
|
|
/* 024488A0 */ rbrew_write8(cpu->mem, _t219, (uint8_t)cpu->r[8]);
|
|
/* 024488A4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024488A8 */ _t220 = cpu->r[1] + 0x00000014u;
|
|
/* 024488A8 */ rbrew_write16(cpu->mem, _t220, (uint16_t)cpu->r[28]);
|
|
/* 024488AC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024488B0 */ _t221 = cpu->r[1] + 0x00000018u;
|
|
/* 024488B0 */ rbrew_write32(cpu->mem, _t221, cpu->r[0]);
|
|
/* 024488B4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024488B8 */ _t222 = cpu->r[1] + 0x00000024u;
|
|
/* 024488B8 */ rbrew_write16(cpu->mem, _t222, (uint16_t)cpu->r[28]);
|
|
/* 024488BC */ Gambit_fn_02449458(cpu);
|
|
/* 024488C0 */ cpu->r[3] = cpu->r[27];
|
|
/* 024488C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024488C8 */ _t223 = cpu->r[29] + 0x000001B8u;
|
|
/* 024488C8 */ rbrew_write32(cpu->mem, _t223, cpu->r[27]);
|
|
/* 024488CC */ Gambit_fn_0243A870(cpu);
|
|
/* 024488D0 */ cpu->r[10] = 0x101C0000u;
|
|
/* 024488D4 */ _t224 = cpu->r[10] + 0x00001D34u;
|
|
/* 024488D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t224);
|
|
/* 024488D8 */ _t225 = cpu->r[10] + 0x00000178u;
|
|
/* 024488D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t225);
|
|
/* 024488DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024488E0 */ _t226 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024488E0 */ _t227 = _t226 & 0x00000001u;
|
|
/* 024488E0 */ if (_t227) goto L_0244890C; else goto L_024488E4;
|
|
L_024488E4: ; // 0x24488e4
|
|
/* 024488E4 */ _t228 = cpu->r[10] + 0x00000174u;
|
|
/* 024488E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t228);
|
|
/* 024488E8 */ _t229 = cpu->r[10] + 0x00000170u;
|
|
/* 024488E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t229);
|
|
/* 024488EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[6]);
|
|
/* 024488F0 */ _t230 = cpu->r[10] + 0x0000016Cu;
|
|
/* 024488F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t230);
|
|
/* 024488F4 */ _t231 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024488F4 */ _t232 = _t231 & 0x00000001u;
|
|
/* 024488F4 */ if (_t232) goto L_024488FC; else goto L_024488F8;
|
|
L_024488F8: ; // 0x24488f8
|
|
/* 024488F8 */ cpu->r[8] = cpu->r[8] - cpu->r[6];
|
|
L_024488FC: ; // 0x24488fc
|
|
/* 024488FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02448900 */ _t233 = cpu->r[12] + cpu->r[0];
|
|
/* 02448900 */ cpu->r[11] = rbrew_read32(cpu->mem, _t233);
|
|
/* 02448904 */ _t234 = cpu->r[29] + 0x00000214u;
|
|
/* 02448904 */ rbrew_write32(cpu->mem, _t234, cpu->r[11]);
|
|
/* 02448908 */ goto L_02448918;
|
|
L_0244890C: ; // 0x244890c
|
|
/* 0244890C */ _t235 = cpu->r[10] + 0x0000016Cu;
|
|
/* 0244890C */ cpu->r[5] = rbrew_read32(cpu->mem, _t235);
|
|
/* 02448910 */ _t236 = cpu->r[5] + 0x00000000u;
|
|
/* 02448910 */ cpu->r[11] = rbrew_read32(cpu->mem, _t236);
|
|
/* 02448914 */ _t237 = cpu->r[29] + 0x00000214u;
|
|
/* 02448914 */ rbrew_write32(cpu->mem, _t237, cpu->r[11]);
|
|
L_02448918: ; // 0x2448918
|
|
/* 02448918 */ cpu->r[3] = cpu->r[29];
|
|
/* 0244891C */ /* nop */
|
|
/* 02448920 */ _t238 = cpu->r[1] + 0x00000054u;
|
|
/* 02448920 */ cpu->r[0] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02448924 */ cpu->lr = cpu->r[0];
|
|
/* 02448928 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0244892C */ return;
|
|
}
|
|
|
|
// fn_024481E8 @ 0x24481e8
|
|
void Gambit_fn_024481E8(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, _t107, _t108, _t109, _t110, _t111, _t112, _t113, _t114, _t115, _t116, _t117, _t118, _t119, _t120, _t121, _t122, _t123, _t124, _t125, _t126, _t127, _t128, _t129, _t130, _t131, _t132, _t133, _t134, _t135, _t136, _t137, _t138, _t139, _t140, _t141, _t142, _t143, _t144, _t145, _t146, _t147, _t148, _t149, _t150, _t151, _t152, _t153, _t154, _t155, _t156, _t157, _t158, _t159, _t160, _t161, _t162, _t163, _t164, _t165, _t166, _t167, _t168, _t169, _t170, _t171, _t172, _t173, _t174, _t175, _t176, _t177, _t178, _t179, _t180, _t181, _t182, _t183, _t184, _t185, _t186, _t187, _t188, _t189, _t190, _t191, _t192, _t193, _t194, _t195, _t196, _t197, _t198, _t199, _t200, _t201, _t202, _t203, _t204, _t205, _t206, _t207, _t208, _t209, _t210, _t211, _t212, _t213, _t214, _t215, _t216, _t217, _t218, _t219, _t220, _t221, _t222, _t223, _t224, _t225, _t226, _t227, _t228, _t229, _t230, _t231, _t232, _t233, _t234, _t235, _t236, _t237, _t238;
|
|
|
|
L_024481E8: ; // 0x24481e8
|
|
/* 024481E8 */ _t0 = cpu->r[1] + 0xFFFFFFB0u;
|
|
/* 024481E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024481E8 */ cpu->r[1] = _t0;
|
|
/* 024481EC */ _t1 = cpu->r[1] + 0x00000054u;
|
|
/* 024481EC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]);
|
|
/* 024481F0 */ /* nop */
|
|
/* 024481F4 */ cpu->r[29] = cpu->r[3];
|
|
/* 024481F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 024481F8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024481F8 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024481F8 */ if (_t3) goto L_024481FC; else goto L_0244820C;
|
|
L_024481FC: ; // 0x24481fc
|
|
/* 024481FC */ cpu->r[3] = 0x0000021Cu;
|
|
/* 02448200 */ Gambit_fn_02801A78(cpu);
|
|
/* 02448204 */ cpu->r[29] = cpu->r[3];
|
|
/* 02448204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u);
|
|
/* 02448208 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448208 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02448208 */ if (_t5) goto L_02448918; else goto L_0244820C;
|
|
L_0244820C: ; // 0x244820c
|
|
/* 0244820C */ cpu->r[26] = 0x100A0000u;
|
|
/* 02448210 */ cpu->r[3] = cpu->r[29];
|
|
/* 02448214 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448218 */ cpu->r[26] = cpu->r[26] + 0xFFFFE490u;
|
|
/* 0244821C */ cpu->r[4] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448220 */ cpu->r[0] = cpu->r[0] + 0xFFFFE5A8u;
|
|
/* 02448224 */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02448224 */ rbrew_write32(cpu->mem, _t6, cpu->r[26]);
|
|
/* 02448228 */ cpu->r[5] = 0x00000003u;
|
|
/* 0244822C */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244822C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02448230 */ Gambit_fn_02068860(cpu);
|
|
/* 02448234 */ cpu->r[6] = 0x100A0000u;
|
|
/* 02448238 */ cpu->r[7] = 0x100A0000u;
|
|
/* 0244823C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02448240 */ cpu->r[6] = cpu->r[6] + 0xFFFFE680u;
|
|
/* 02448244 */ cpu->r[7] = cpu->r[7] + 0xFFFFE7E8u;
|
|
/* 02448248 */ _t8 = cpu->r[29] + 0x00000000u;
|
|
/* 02448248 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]);
|
|
/* 0244824C */ cpu->r[8] = cpu->r[8] + 0xFFFFE7F8u;
|
|
/* 02448250 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02448254 */ _t9 = cpu->r[29] + 0x0000000Cu;
|
|
/* 02448254 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02448258 */ cpu->r[27] = cpu->r[29] + 0x000001DCu;
|
|
/* 02448258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u);
|
|
/* 0244825C */ cpu->r[9] = cpu->r[9] + 0xFFFFE808u;
|
|
/* 02448260 */ _t10 = cpu->r[29] + 0x0000001Cu;
|
|
/* 02448260 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]);
|
|
/* 02448264 */ cpu->r[31] = cpu->r[27];
|
|
/* 02448268 */ cpu->r[28] = 0x00000000u;
|
|
/* 0244826C */ _t11 = cpu->r[29] + 0x000001C8u;
|
|
/* 0244826C */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02448270 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448270 */ _t13 = _t12 & 0x00000001u;
|
|
/* 02448270 */ if (_t13) goto L_02448274; else goto L_02448284;
|
|
L_02448274: ; // 0x2448274
|
|
/* 02448274 */ cpu->r[3] = 0x00000038u;
|
|
/* 02448278 */ Gambit_fn_02801A78(cpu);
|
|
/* 0244827C */ cpu->r[31] = cpu->r[3];
|
|
/* 0244827C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u);
|
|
/* 02448280 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448280 */ _t15 = _t14 & 0x00000001u;
|
|
/* 02448280 */ if (_t15) goto L_024482B4; else goto L_02448284;
|
|
L_02448284: ; // 0x2448284
|
|
/* 02448284 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448288 */ Gambit_fn_027FC29C(cpu);
|
|
/* 0244828C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448290 */ _t16 = cpu->r[31] + 0x00000030u;
|
|
/* 02448290 */ rbrew_write32(cpu->mem, _t16, cpu->r[28]);
|
|
/* 02448294 */ cpu->r[0] = cpu->r[0] + 0xFFFFB710u;
|
|
/* 02448298 */ _t17 = cpu->r[31] + 0x00000034u;
|
|
/* 02448298 */ rbrew_write32(cpu->mem, _t17, cpu->r[28]);
|
|
/* 0244829C */ _t18 = cpu->r[31] + 0x00000004u;
|
|
/* 0244829C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]);
|
|
/* 024482A0 */ _t19 = cpu->r[31] + 0x00000024u;
|
|
/* 024482A0 */ rbrew_write32(cpu->mem, _t19, cpu->r[28]);
|
|
/* 024482A4 */ _t20 = cpu->r[31] + 0x00000028u;
|
|
/* 024482A4 */ rbrew_write32(cpu->mem, _t20, cpu->r[28]);
|
|
/* 024482A8 */ _t21 = cpu->r[31] + 0x0000002Cu;
|
|
/* 024482A8 */ rbrew_write32(cpu->mem, _t21, cpu->r[28]);
|
|
/* 024482AC */ _t22 = cpu->r[31] + 0x0000001Cu;
|
|
/* 024482AC */ rbrew_write32(cpu->mem, _t22, cpu->r[28]);
|
|
/* 024482B0 */ _t23 = cpu->r[31] + 0x00000020u;
|
|
/* 024482B0 */ rbrew_write32(cpu->mem, _t23, cpu->r[28]);
|
|
L_024482B4: ; // 0x24482b4
|
|
/* 024482B4 */ _t24 = cpu->r[29] + 0x00000214u;
|
|
/* 024482B4 */ rbrew_write32(cpu->mem, _t24, cpu->r[28]);
|
|
/* 024482B8 */ cpu->r[0] = 0x00000006u;
|
|
/* 024482BC */ cpu->r[3] = cpu->r[27];
|
|
/* 024482C0 */ _t25 = cpu->r[29] + 0x00000218u;
|
|
/* 024482C0 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]);
|
|
/* 024482C4 */ cpu->r[4] = cpu->r[29];
|
|
/* 024482C8 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 024482CC */ cpu->r[6] = 0x00000000u;
|
|
/* 024482D0 */ _t26 = cpu->r[1] + 0x00000008u;
|
|
/* 024482D0 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[0]);
|
|
/* 024482D4 */ Gambit_fn_024491A8(cpu);
|
|
/* 024482D8 */ cpu->r[25] = 0x02450000u;
|
|
/* 024482DC */ cpu->r[11] = 0x100A0000u;
|
|
/* 024482E0 */ cpu->r[25] = cpu->r[25] + 0xFFFF9038u;
|
|
/* 024482E4 */ cpu->r[11] = cpu->r[11] + 0xFFFFE598u;
|
|
/* 024482E8 */ cpu->ctr = cpu->r[25];
|
|
/* 024482EC */ _t27 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024482EC */ rbrew_write32(cpu->mem, _t27, cpu->r[11]);
|
|
/* 024482F0 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 024482F0 */ rbrew_write32(cpu->mem, _t28, cpu->r[26]);
|
|
/* 024482F4 */ _t29 = cpu->r[27] + 0x00000018u;
|
|
/* 024482F4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t29);
|
|
/* 024482F8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024482FC */ _t30 = cpu->r[23] + 0x00000000u;
|
|
/* 024482FC */ cpu->r[24] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02448300 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448304 */ cpu->r[31] = 0x10110000u;
|
|
/* 02448308 */ _t31 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448308 */ cpu->r[8] = rbrew_read32(cpu->mem, _t31);
|
|
/* 0244830C */ _t32 = cpu->r[31] + 0x00007399u;
|
|
/* 0244830C */ cpu->r[31] = rbrew_read8(cpu->mem, _t32);
|
|
/* 02448310 */ _t33 = cpu->r[8] + 0x00000000u;
|
|
/* 02448310 */ cpu->r[12] = rbrew_read8(cpu->mem, _t33);
|
|
/* 02448314 */ cpu->r[30] = 0x00000000u;
|
|
/* 02448318 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]);
|
|
/* 0244831C */ cpu->r[9] = 0x00080000u;
|
|
/* 02448320 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448320 */ _t35 = _t34 & 0x00000001u;
|
|
/* 02448320 */ if (_t35) goto L_02448348; else goto L_02448324;
|
|
L_02448324: ; // 0x2448324
|
|
/* 02448324 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0244832C */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02448330 */ _t36 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02448330 */ _t37 = _t36 & 0x00000001u;
|
|
/* 02448330 */ if (_t37) goto L_02448344; else goto L_02448334;
|
|
L_02448334: ; // 0x2448334
|
|
/* 02448334 */ _t38 = cpu->r[8] + 0x00000000u;
|
|
/* 02448334 */ cpu->r[0] = rbrew_read8(cpu->mem, _t38);
|
|
/* 02448338 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0244833C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244833C */ _t40 = _t39 & 0x00000001u;
|
|
/* 0244833C */ if (_t40) goto L_02448340; else goto L_02448324;
|
|
L_02448340: ; // 0x2448340
|
|
/* 02448340 */ goto L_02448348;
|
|
L_02448344: ; // 0x2448344
|
|
/* 02448344 */ cpu->r[30] = 0x00000000u;
|
|
L_02448348: ; // 0x2448348
|
|
/* 02448348 */ _t41 = cpu->r[23] + 0x00000008u;
|
|
/* 02448348 */ cpu->r[5] = rbrew_read32(cpu->mem, _t41);
|
|
/* 0244834C */ _t42 = cpu->r[1] + 0x00000010u;
|
|
/* 0244834C */ cpu->r[7] = rbrew_read32(cpu->mem, _t42);
|
|
/* 02448350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448354 */ _t43 = cpu->r[7] + 0x00000014u;
|
|
/* 02448354 */ cpu->r[9] = rbrew_read32(cpu->mem, _t43);
|
|
/* 02448358 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448358 */ _t45 = _t44 & 0x00000001u;
|
|
/* 02448358 */ if (_t45) goto L_02448360; else goto L_0244835C;
|
|
L_0244835C: ; // 0x244835c
|
|
/* 0244835C */ cpu->r[30] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_02448360: ; // 0x2448360
|
|
/* 02448360 */ cpu->ctr = cpu->r[9];
|
|
/* 02448364 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448368 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0244836C */ _t46 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244836C */ cpu->r[4] = rbrew_read32(cpu->mem, _t46);
|
|
/* 02448370 */ cpu->r[6] = 0x00000000u;
|
|
/* 02448374 */ cpu->r[5] = cpu->r[30];
|
|
/* 02448378 */ cpu->r[3] = cpu->r[24];
|
|
/* 0244837C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02448380 */ _t47 = cpu->r[24] + cpu->r[30];
|
|
/* 02448380 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[31]);
|
|
/* 02448384 */ cpu->r[0] = 0xFFFFFFFFu;
|
|
/* 02448388 */ _t48 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448388 */ rbrew_write16(cpu->mem, _t48, (uint16_t)cpu->r[28]);
|
|
/* 0244838C */ cpu->r[6] = 0x00000000u;
|
|
/* 02448390 */ _t49 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02448390 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[0]);
|
|
/* 02448394 */ cpu->r[10] = 0x02450000u;
|
|
/* 02448398 */ _t50 = cpu->r[1] + 0x00000028u;
|
|
/* 02448398 */ rbrew_write32(cpu->mem, _t50, cpu->r[28]);
|
|
/* 0244839C */ cpu->r[10] = cpu->r[10] + 0xFFFF91A0u;
|
|
/* 024483A0 */ _t51 = cpu->r[1] + 0x00000008u;
|
|
/* 024483A0 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[6]);
|
|
/* 024483A4 */ _t52 = cpu->r[1] + 0x00000018u;
|
|
/* 024483A4 */ rbrew_write32(cpu->mem, _t52, cpu->r[28]);
|
|
/* 024483A8 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024483AC */ _t53 = cpu->r[1] + 0x00000020u;
|
|
/* 024483AC */ rbrew_write32(cpu->mem, _t53, cpu->r[10]);
|
|
/* 024483B0 */ cpu->r[4] = cpu->r[1] + 0x00000014u;
|
|
/* 024483B4 */ _t54 = cpu->r[1] + 0x00000026u;
|
|
/* 024483B4 */ rbrew_write16(cpu->mem, _t54, (uint16_t)cpu->r[28]);
|
|
/* 024483B8 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024483BC */ _t55 = cpu->r[1] + 0x00000024u;
|
|
/* 024483BC */ rbrew_write16(cpu->mem, _t55, (uint16_t)cpu->r[28]);
|
|
/* 024483C0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024483C4 */ _t56 = cpu->r[1] + 0x00000014u;
|
|
/* 024483C4 */ rbrew_write16(cpu->mem, _t56, (uint16_t)cpu->r[28]);
|
|
/* 024483C8 */ cpu->r[3] = cpu->r[27];
|
|
/* 024483CC */ _t57 = cpu->r[1] + 0x00000016u;
|
|
/* 024483CC */ rbrew_write16(cpu->mem, _t57, (uint16_t)cpu->r[28]);
|
|
/* 024483D0 */ Gambit_fn_02449458(cpu);
|
|
/* 024483D4 */ cpu->r[11] = 0x100A0000u;
|
|
/* 024483D8 */ _t58 = cpu->r[1] + 0x00000010u;
|
|
/* 024483D8 */ rbrew_write32(cpu->mem, _t58, cpu->r[26]);
|
|
/* 024483DC */ cpu->r[11] = cpu->r[11] + 0xFFFFE5B8u;
|
|
/* 024483E0 */ _t59 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024483E0 */ rbrew_write32(cpu->mem, _t59, cpu->r[11]);
|
|
/* 024483E4 */ _t60 = cpu->r[27] + 0x00000014u;
|
|
/* 024483E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60);
|
|
/* 024483E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u);
|
|
/* 024483EC */ _t61 = cpu->r[27] + 0x00000018u;
|
|
/* 024483EC */ cpu->r[24] = rbrew_read32(cpu->mem, _t61);
|
|
/* 024483F0 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024483F0 */ _t63 = _t62 & 0x00000001u;
|
|
/* 024483F0 */ if (_t63) goto L_024483F4; else goto L_024483F8;
|
|
L_024483F4: ; // 0x24483f4
|
|
/* 024483F4 */ cpu->r[24] = cpu->r[24] + 0x00000024u;
|
|
L_024483F8: ; // 0x24483f8
|
|
/* 024483F8 */ cpu->ctr = cpu->r[25];
|
|
/* 024483FC */ _t64 = cpu->r[24] + 0x00000000u;
|
|
/* 024483FC */ cpu->r[23] = rbrew_read32(cpu->mem, _t64);
|
|
/* 02448400 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448404 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448408 */ _t65 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448408 */ cpu->r[12] = rbrew_read32(cpu->mem, _t65);
|
|
/* 0244840C */ _t66 = cpu->r[12] + 0x00000000u;
|
|
/* 0244840C */ cpu->r[6] = rbrew_read8(cpu->mem, _t66);
|
|
/* 02448410 */ cpu->r[30] = 0x00000000u;
|
|
/* 02448414 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]);
|
|
/* 02448418 */ cpu->r[5] = 0x00080000u;
|
|
/* 0244841C */ _t67 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244841C */ _t68 = _t67 & 0x00000001u;
|
|
/* 0244841C */ if (_t68) goto L_02448444; else goto L_02448420;
|
|
L_02448420: ; // 0x2448420
|
|
/* 02448420 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448428 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0244842C */ _t69 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0244842C */ _t70 = _t69 & 0x00000001u;
|
|
/* 0244842C */ if (_t70) goto L_02448440; else goto L_02448430;
|
|
L_02448430: ; // 0x2448430
|
|
/* 02448430 */ _t71 = cpu->r[12] + 0x00000000u;
|
|
/* 02448430 */ cpu->r[8] = rbrew_read8(cpu->mem, _t71);
|
|
/* 02448434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]);
|
|
/* 02448438 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448438 */ _t73 = _t72 & 0x00000001u;
|
|
/* 02448438 */ if (_t73) goto L_0244843C; else goto L_02448420;
|
|
L_0244843C: ; // 0x244843c
|
|
/* 0244843C */ goto L_02448444;
|
|
L_02448440: ; // 0x2448440
|
|
/* 02448440 */ cpu->r[30] = 0x00000000u;
|
|
L_02448444: ; // 0x2448444
|
|
/* 02448444 */ _t74 = cpu->r[24] + 0x00000008u;
|
|
/* 02448444 */ cpu->r[6] = rbrew_read32(cpu->mem, _t74);
|
|
/* 02448448 */ _t75 = cpu->r[1] + 0x00000010u;
|
|
/* 02448448 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75);
|
|
/* 0244844C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]);
|
|
/* 02448450 */ _t76 = cpu->r[10] + 0x00000014u;
|
|
/* 02448450 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76);
|
|
/* 02448454 */ _t77 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448454 */ _t78 = _t77 & 0x00000001u;
|
|
/* 02448454 */ if (_t78) goto L_0244845C; else goto L_02448458;
|
|
L_02448458: ; // 0x2448458
|
|
/* 02448458 */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu;
|
|
L_0244845C: ; // 0x244845c
|
|
/* 0244845C */ cpu->ctr = cpu->r[0];
|
|
/* 02448460 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448464 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448468 */ _t79 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448468 */ cpu->r[4] = rbrew_read32(cpu->mem, _t79);
|
|
/* 0244846C */ cpu->r[3] = cpu->r[23];
|
|
/* 02448470 */ cpu->r[5] = cpu->r[30];
|
|
/* 02448474 */ cpu->r[6] = 0x00000000u;
|
|
/* 02448478 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0244847C */ _t80 = cpu->r[23] + cpu->r[30];
|
|
/* 0244847C */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[31]);
|
|
/* 02448480 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 02448484 */ _t81 = cpu->r[1] + 0x00000026u;
|
|
/* 02448484 */ rbrew_write16(cpu->mem, _t81, (uint16_t)cpu->r[28]);
|
|
/* 02448488 */ cpu->r[6] = 0x02450000u;
|
|
/* 0244848C */ _t82 = cpu->r[1] + 0x00000014u;
|
|
/* 0244848C */ rbrew_write16(cpu->mem, _t82, (uint16_t)cpu->r[28]);
|
|
/* 02448490 */ cpu->r[6] = cpu->r[6] + 0xFFFF8C94u;
|
|
/* 02448494 */ _t83 = cpu->r[1] + 0x00000016u;
|
|
/* 02448494 */ rbrew_write16(cpu->mem, _t83, (uint16_t)cpu->r[12]);
|
|
/* 02448498 */ cpu->r[11] = 0x00000001u;
|
|
/* 0244849C */ _t84 = cpu->r[1] + 0x00000024u;
|
|
/* 0244849C */ rbrew_write16(cpu->mem, _t84, (uint16_t)cpu->r[28]);
|
|
/* 024484A0 */ _t85 = cpu->r[1] + 0x00000018u;
|
|
/* 024484A0 */ rbrew_write32(cpu->mem, _t85, cpu->r[6]);
|
|
/* 024484A4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024484A8 */ _t86 = cpu->r[1] + 0x00000028u;
|
|
/* 024484A8 */ rbrew_write32(cpu->mem, _t86, cpu->r[28]);
|
|
/* 024484AC */ cpu->r[3] = cpu->r[27];
|
|
/* 024484B0 */ _t87 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024484B0 */ rbrew_write16(cpu->mem, _t87, (uint16_t)cpu->r[28]);
|
|
/* 024484B4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024484B8 */ _t88 = cpu->r[1] + 0x00000020u;
|
|
/* 024484B8 */ rbrew_write32(cpu->mem, _t88, cpu->r[28]);
|
|
/* 024484BC */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024484C0 */ _t89 = cpu->r[1] + 0x00000008u;
|
|
/* 024484C0 */ rbrew_write8(cpu->mem, _t89, (uint8_t)cpu->r[11]);
|
|
/* 024484C4 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024484C8 */ _t90 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024484C8 */ rbrew_write16(cpu->mem, _t90, (uint16_t)cpu->r[28]);
|
|
/* 024484CC */ Gambit_fn_02449458(cpu);
|
|
/* 024484D0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 024484D4 */ _t91 = cpu->r[1] + 0x00000010u;
|
|
/* 024484D4 */ rbrew_write32(cpu->mem, _t91, cpu->r[26]);
|
|
/* 024484D8 */ cpu->r[0] = cpu->r[0] + 0xFFFFE5C8u;
|
|
/* 024484DC */ _t92 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024484DC */ rbrew_write32(cpu->mem, _t92, cpu->r[0]);
|
|
/* 024484E0 */ _t93 = cpu->r[27] + 0x00000014u;
|
|
/* 024484E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93);
|
|
/* 024484E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000002u);
|
|
/* 024484E8 */ _t94 = cpu->r[27] + 0x00000018u;
|
|
/* 024484E8 */ cpu->r[24] = rbrew_read32(cpu->mem, _t94);
|
|
/* 024484EC */ _t95 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024484EC */ _t96 = _t95 & 0x00000001u;
|
|
/* 024484EC */ if (_t96) goto L_024484F0; else goto L_024484F4;
|
|
L_024484F0: ; // 0x24484f0
|
|
/* 024484F0 */ cpu->r[24] = cpu->r[24] + 0x00000048u;
|
|
L_024484F4: ; // 0x24484f4
|
|
/* 024484F4 */ cpu->ctr = cpu->r[25];
|
|
/* 024484F8 */ _t97 = cpu->r[24] + 0x00000000u;
|
|
/* 024484F8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t97);
|
|
/* 024484FC */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448500 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448504 */ _t98 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448504 */ cpu->r[8] = rbrew_read32(cpu->mem, _t98);
|
|
/* 02448508 */ _t99 = cpu->r[8] + 0x00000000u;
|
|
/* 02448508 */ cpu->r[11] = rbrew_read8(cpu->mem, _t99);
|
|
/* 0244850C */ cpu->r[30] = 0x00000000u;
|
|
/* 02448510 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]);
|
|
/* 02448514 */ cpu->r[10] = 0x00080000u;
|
|
/* 02448518 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448518 */ _t101 = _t100 & 0x00000001u;
|
|
/* 02448518 */ if (_t101) goto L_02448540; else goto L_0244851C;
|
|
L_0244851C: ; // 0x244851c
|
|
/* 0244851C */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02448524 */ cpu->r[8] = cpu->r[8] + 0x00000001u;
|
|
/* 02448528 */ _t102 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02448528 */ _t103 = _t102 & 0x00000001u;
|
|
/* 02448528 */ if (_t103) goto L_0244853C; else goto L_0244852C;
|
|
L_0244852C: ; // 0x244852c
|
|
/* 0244852C */ _t104 = cpu->r[8] + 0x00000000u;
|
|
/* 0244852C */ cpu->r[0] = rbrew_read8(cpu->mem, _t104);
|
|
/* 02448530 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02448534 */ _t105 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448534 */ _t106 = _t105 & 0x00000001u;
|
|
/* 02448534 */ if (_t106) goto L_02448538; else goto L_0244851C;
|
|
L_02448538: ; // 0x2448538
|
|
/* 02448538 */ goto L_02448540;
|
|
L_0244853C: ; // 0x244853c
|
|
/* 0244853C */ cpu->r[30] = 0x00000000u;
|
|
L_02448540: ; // 0x2448540
|
|
/* 02448540 */ _t107 = cpu->r[24] + 0x00000008u;
|
|
/* 02448540 */ cpu->r[8] = rbrew_read32(cpu->mem, _t107);
|
|
/* 02448544 */ _t108 = cpu->r[1] + 0x00000010u;
|
|
/* 02448544 */ cpu->r[6] = rbrew_read32(cpu->mem, _t108);
|
|
/* 02448548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]);
|
|
/* 0244854C */ _t109 = cpu->r[6] + 0x00000014u;
|
|
/* 0244854C */ cpu->r[7] = rbrew_read32(cpu->mem, _t109);
|
|
/* 02448550 */ _t110 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448550 */ _t111 = _t110 & 0x00000001u;
|
|
/* 02448550 */ if (_t111) goto L_02448558; else goto L_02448554;
|
|
L_02448554: ; // 0x2448554
|
|
/* 02448554 */ cpu->r[30] = cpu->r[8] + 0xFFFFFFFFu;
|
|
L_02448558: ; // 0x2448558
|
|
/* 02448558 */ cpu->ctr = cpu->r[7];
|
|
/* 0244855C */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448560 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448564 */ _t112 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448564 */ cpu->r[4] = rbrew_read32(cpu->mem, _t112);
|
|
/* 02448568 */ cpu->r[3] = cpu->r[23];
|
|
/* 0244856C */ cpu->r[5] = cpu->r[30];
|
|
/* 02448570 */ cpu->r[6] = 0x00000000u;
|
|
/* 02448574 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02448578 */ _t113 = cpu->r[23] + cpu->r[30];
|
|
/* 02448578 */ rbrew_write8(cpu->mem, _t113, (uint8_t)cpu->r[31]);
|
|
/* 0244857C */ cpu->r[0] = 0x00000002u;
|
|
/* 02448580 */ _t114 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02448580 */ rbrew_write16(cpu->mem, _t114, (uint16_t)cpu->r[28]);
|
|
/* 02448584 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 02448588 */ _t115 = cpu->r[1] + 0x00000024u;
|
|
/* 02448588 */ rbrew_write16(cpu->mem, _t115, (uint16_t)cpu->r[28]);
|
|
/* 0244858C */ cpu->r[10] = 0x02450000u;
|
|
/* 02448590 */ _t116 = cpu->r[1] + 0x00000016u;
|
|
/* 02448590 */ rbrew_write16(cpu->mem, _t116, (uint16_t)cpu->r[9]);
|
|
/* 02448594 */ cpu->r[10] = cpu->r[10] + 0xFFFF8D20u;
|
|
/* 02448598 */ _t117 = cpu->r[1] + 0x00000020u;
|
|
/* 02448598 */ rbrew_write32(cpu->mem, _t117, cpu->r[28]);
|
|
/* 0244859C */ _t118 = cpu->r[1] + 0x00000014u;
|
|
/* 0244859C */ rbrew_write16(cpu->mem, _t118, (uint16_t)cpu->r[28]);
|
|
/* 024485A0 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024485A4 */ _t119 = cpu->r[1] + 0x00000008u;
|
|
/* 024485A4 */ rbrew_write8(cpu->mem, _t119, (uint8_t)cpu->r[0]);
|
|
/* 024485A8 */ cpu->r[3] = cpu->r[27];
|
|
/* 024485AC */ _t120 = cpu->r[1] + 0x00000028u;
|
|
/* 024485AC */ rbrew_write32(cpu->mem, _t120, cpu->r[28]);
|
|
/* 024485B0 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024485B4 */ _t121 = cpu->r[1] + 0x00000026u;
|
|
/* 024485B4 */ rbrew_write16(cpu->mem, _t121, (uint16_t)cpu->r[28]);
|
|
/* 024485B8 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024485BC */ _t122 = cpu->r[1] + 0x00000018u;
|
|
/* 024485BC */ rbrew_write32(cpu->mem, _t122, cpu->r[10]);
|
|
/* 024485C0 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024485C4 */ _t123 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024485C4 */ rbrew_write16(cpu->mem, _t123, (uint16_t)cpu->r[28]);
|
|
/* 024485C8 */ Gambit_fn_02449458(cpu);
|
|
/* 024485CC */ cpu->r[12] = 0x100A0000u;
|
|
/* 024485D0 */ _t124 = cpu->r[1] + 0x00000010u;
|
|
/* 024485D0 */ rbrew_write32(cpu->mem, _t124, cpu->r[26]);
|
|
/* 024485D4 */ cpu->r[12] = cpu->r[12] + 0xFFFFE570u;
|
|
/* 024485D8 */ _t125 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024485D8 */ rbrew_write32(cpu->mem, _t125, cpu->r[12]);
|
|
/* 024485DC */ _t126 = cpu->r[27] + 0x00000014u;
|
|
/* 024485DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t126);
|
|
/* 024485E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u);
|
|
/* 024485E4 */ _t127 = cpu->r[27] + 0x00000018u;
|
|
/* 024485E4 */ cpu->r[24] = rbrew_read32(cpu->mem, _t127);
|
|
/* 024485E8 */ _t128 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024485E8 */ _t129 = _t128 & 0x00000001u;
|
|
/* 024485E8 */ if (_t129) goto L_024485EC; else goto L_024485F0;
|
|
L_024485EC: ; // 0x24485ec
|
|
/* 024485EC */ cpu->r[24] = cpu->r[24] + 0x0000006Cu;
|
|
L_024485F0: ; // 0x24485f0
|
|
/* 024485F0 */ cpu->ctr = cpu->r[25];
|
|
/* 024485F4 */ _t130 = cpu->r[24] + 0x00000000u;
|
|
/* 024485F4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t130);
|
|
/* 024485F8 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024485FC */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448600 */ _t131 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448600 */ cpu->r[12] = rbrew_read32(cpu->mem, _t131);
|
|
/* 02448604 */ _t132 = cpu->r[12] + 0x00000000u;
|
|
/* 02448604 */ cpu->r[7] = rbrew_read8(cpu->mem, _t132);
|
|
/* 02448608 */ cpu->r[30] = 0x00000000u;
|
|
/* 0244860C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]);
|
|
/* 02448610 */ cpu->r[5] = 0x00080000u;
|
|
/* 02448614 */ _t133 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448614 */ _t134 = _t133 & 0x00000001u;
|
|
/* 02448614 */ if (_t134) goto L_0244863C; else goto L_02448618;
|
|
L_02448618: ; // 0x2448618
|
|
/* 02448618 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 0244861C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448620 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 02448624 */ _t135 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02448624 */ _t136 = _t135 & 0x00000001u;
|
|
/* 02448624 */ if (_t136) goto L_02448638; else goto L_02448628;
|
|
L_02448628: ; // 0x2448628
|
|
/* 02448628 */ _t137 = cpu->r[12] + 0x00000000u;
|
|
/* 02448628 */ cpu->r[0] = rbrew_read8(cpu->mem, _t137);
|
|
/* 0244862C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 02448630 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448630 */ _t139 = _t138 & 0x00000001u;
|
|
/* 02448630 */ if (_t139) goto L_02448634; else goto L_02448618;
|
|
L_02448634: ; // 0x2448634
|
|
/* 02448634 */ goto L_0244863C;
|
|
L_02448638: ; // 0x2448638
|
|
/* 02448638 */ cpu->r[30] = 0x00000000u;
|
|
L_0244863C: ; // 0x244863c
|
|
/* 0244863C */ _t140 = cpu->r[24] + 0x00000008u;
|
|
/* 0244863C */ cpu->r[10] = rbrew_read32(cpu->mem, _t140);
|
|
/* 02448640 */ _t141 = cpu->r[1] + 0x00000010u;
|
|
/* 02448640 */ cpu->r[11] = rbrew_read32(cpu->mem, _t141);
|
|
/* 02448644 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]);
|
|
/* 02448648 */ _t142 = cpu->r[11] + 0x00000014u;
|
|
/* 02448648 */ cpu->r[0] = rbrew_read32(cpu->mem, _t142);
|
|
/* 0244864C */ _t143 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 0244864C */ _t144 = _t143 & 0x00000001u;
|
|
/* 0244864C */ if (_t144) goto L_02448654; else goto L_02448650;
|
|
L_02448650: ; // 0x2448650
|
|
/* 02448650 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu;
|
|
L_02448654: ; // 0x2448654
|
|
/* 02448654 */ cpu->ctr = cpu->r[0];
|
|
/* 02448658 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244865C */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448660 */ _t145 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448660 */ cpu->r[4] = rbrew_read32(cpu->mem, _t145);
|
|
/* 02448664 */ cpu->r[3] = cpu->r[23];
|
|
/* 02448668 */ cpu->r[5] = cpu->r[30];
|
|
/* 0244866C */ cpu->r[6] = 0x00000000u;
|
|
/* 02448670 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02448674 */ _t146 = cpu->r[23] + cpu->r[30];
|
|
/* 02448674 */ rbrew_write8(cpu->mem, _t146, (uint8_t)cpu->r[31]);
|
|
/* 02448678 */ cpu->r[12] = 0xFFFFFFFFu;
|
|
/* 0244867C */ _t147 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244867C */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[28]);
|
|
/* 02448680 */ cpu->r[0] = 0x02450000u;
|
|
/* 02448684 */ _t148 = cpu->r[1] + 0x00000024u;
|
|
/* 02448684 */ rbrew_write16(cpu->mem, _t148, (uint16_t)cpu->r[28]);
|
|
/* 02448688 */ cpu->r[0] = cpu->r[0] + 0xFFFF8DE8u;
|
|
/* 0244868C */ _t149 = cpu->r[1] + 0x00000026u;
|
|
/* 0244868C */ rbrew_write16(cpu->mem, _t149, (uint16_t)cpu->r[28]);
|
|
/* 02448690 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 02448694 */ _t150 = cpu->r[1] + 0x00000028u;
|
|
/* 02448694 */ rbrew_write32(cpu->mem, _t150, cpu->r[28]);
|
|
/* 02448698 */ _t151 = cpu->r[1] + 0x00000018u;
|
|
/* 02448698 */ rbrew_write32(cpu->mem, _t151, cpu->r[0]);
|
|
/* 0244869C */ cpu->r[0] = 0x00000003u;
|
|
/* 024486A0 */ _t152 = cpu->r[1] + 0x00000020u;
|
|
/* 024486A0 */ rbrew_write32(cpu->mem, _t152, cpu->r[28]);
|
|
/* 024486A4 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024486A8 */ _t153 = cpu->r[1] + 0x00000008u;
|
|
/* 024486A8 */ rbrew_write8(cpu->mem, _t153, (uint8_t)cpu->r[0]);
|
|
/* 024486AC */ cpu->r[3] = cpu->r[27];
|
|
/* 024486B0 */ _t154 = cpu->r[1] + 0x0000001Eu;
|
|
/* 024486B0 */ rbrew_write16(cpu->mem, _t154, (uint16_t)cpu->r[28]);
|
|
/* 024486B4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024486B8 */ _t155 = cpu->r[1] + 0x00000016u;
|
|
/* 024486B8 */ rbrew_write16(cpu->mem, _t155, (uint16_t)cpu->r[12]);
|
|
/* 024486BC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024486C0 */ _t156 = cpu->r[1] + 0x00000014u;
|
|
/* 024486C0 */ rbrew_write16(cpu->mem, _t156, (uint16_t)cpu->r[28]);
|
|
/* 024486C4 */ Gambit_fn_02449458(cpu);
|
|
/* 024486C8 */ cpu->r[8] = 0x100A0000u;
|
|
/* 024486CC */ _t157 = cpu->r[1] + 0x00000010u;
|
|
/* 024486CC */ rbrew_write32(cpu->mem, _t157, cpu->r[26]);
|
|
/* 024486D0 */ cpu->r[8] = cpu->r[8] + 0xFFFFE584u;
|
|
/* 024486D4 */ _t158 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024486D4 */ rbrew_write32(cpu->mem, _t158, cpu->r[8]);
|
|
/* 024486D8 */ _t159 = cpu->r[27] + 0x00000014u;
|
|
/* 024486D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t159);
|
|
/* 024486DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], 0x00000004u);
|
|
/* 024486E0 */ _t160 = cpu->r[27] + 0x00000018u;
|
|
/* 024486E0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t160);
|
|
/* 024486E4 */ _t161 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024486E4 */ _t162 = _t161 & 0x00000001u;
|
|
/* 024486E4 */ if (_t162) goto L_024486E8; else goto L_024486EC;
|
|
L_024486E8: ; // 0x24486e8
|
|
/* 024486E8 */ cpu->r[24] = cpu->r[24] + 0x00000090u;
|
|
L_024486EC: ; // 0x24486ec
|
|
/* 024486EC */ cpu->ctr = cpu->r[25];
|
|
/* 024486F0 */ _t163 = cpu->r[24] + 0x00000000u;
|
|
/* 024486F0 */ cpu->r[23] = rbrew_read32(cpu->mem, _t163);
|
|
/* 024486F4 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024486F8 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024486FC */ _t164 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024486FC */ cpu->r[7] = rbrew_read32(cpu->mem, _t164);
|
|
/* 02448700 */ _t165 = cpu->r[7] + 0x00000000u;
|
|
/* 02448700 */ cpu->r[10] = rbrew_read8(cpu->mem, _t165);
|
|
/* 02448704 */ cpu->r[30] = 0x00000000u;
|
|
/* 02448708 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 0244870C */ cpu->r[9] = 0x00080000u;
|
|
/* 02448710 */ _t166 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448710 */ _t167 = _t166 & 0x00000001u;
|
|
/* 02448710 */ if (_t167) goto L_02448738; else goto L_02448714;
|
|
L_02448714: ; // 0x2448714
|
|
/* 02448714 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]);
|
|
/* 0244871C */ cpu->r[7] = cpu->r[7] + 0x00000001u;
|
|
/* 02448720 */ _t168 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 02448720 */ _t169 = _t168 & 0x00000001u;
|
|
/* 02448720 */ if (_t169) goto L_02448734; else goto L_02448724;
|
|
L_02448724: ; // 0x2448724
|
|
/* 02448724 */ _t170 = cpu->r[7] + 0x00000000u;
|
|
/* 02448724 */ cpu->r[0] = rbrew_read8(cpu->mem, _t170);
|
|
/* 02448728 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]);
|
|
/* 0244872C */ _t171 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244872C */ _t172 = _t171 & 0x00000001u;
|
|
/* 0244872C */ if (_t172) goto L_02448730; else goto L_02448714;
|
|
L_02448730: ; // 0x2448730
|
|
/* 02448730 */ goto L_02448738;
|
|
L_02448734: ; // 0x2448734
|
|
/* 02448734 */ cpu->r[30] = 0x00000000u;
|
|
L_02448738: ; // 0x2448738
|
|
/* 02448738 */ _t173 = cpu->r[24] + 0x00000008u;
|
|
/* 02448738 */ cpu->r[12] = rbrew_read32(cpu->mem, _t173);
|
|
/* 0244873C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]);
|
|
/* 02448740 */ _t174 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448740 */ _t175 = _t174 & 0x00000001u;
|
|
/* 02448740 */ if (_t175) goto L_02448748; else goto L_02448744;
|
|
L_02448744: ; // 0x2448744
|
|
/* 02448744 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu;
|
|
L_02448748: ; // 0x2448748
|
|
/* 02448748 */ _t176 = cpu->r[1] + 0x00000010u;
|
|
/* 02448748 */ cpu->r[12] = rbrew_read32(cpu->mem, _t176);
|
|
/* 0244874C */ _t177 = cpu->r[12] + 0x00000014u;
|
|
/* 0244874C */ cpu->r[0] = rbrew_read32(cpu->mem, _t177);
|
|
/* 02448750 */ cpu->ctr = cpu->r[0];
|
|
/* 02448754 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448758 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 0244875C */ _t178 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0244875C */ cpu->r[4] = rbrew_read32(cpu->mem, _t178);
|
|
/* 02448760 */ cpu->r[6] = 0x00000000u;
|
|
/* 02448764 */ cpu->r[5] = cpu->r[30];
|
|
/* 02448768 */ cpu->r[3] = cpu->r[23];
|
|
/* 0244876C */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 02448770 */ _t179 = cpu->r[23] + cpu->r[30];
|
|
/* 02448770 */ rbrew_write8(cpu->mem, _t179, (uint8_t)cpu->r[31]);
|
|
/* 02448774 */ cpu->r[5] = 0xFFFFFFFFu;
|
|
/* 02448778 */ cpu->r[6] = 0x02450000u;
|
|
/* 0244877C */ _t180 = cpu->r[1] + 0x00000014u;
|
|
/* 0244877C */ rbrew_write16(cpu->mem, _t180, (uint16_t)cpu->r[28]);
|
|
/* 02448780 */ cpu->r[6] = cpu->r[6] + 0xFFFF91A4u;
|
|
/* 02448784 */ _t181 = cpu->r[1] + 0x00000016u;
|
|
/* 02448784 */ rbrew_write16(cpu->mem, _t181, (uint16_t)cpu->r[5]);
|
|
/* 02448788 */ _t182 = cpu->r[1] + 0x00000018u;
|
|
/* 02448788 */ rbrew_write32(cpu->mem, _t182, cpu->r[6]);
|
|
/* 0244878C */ cpu->r[0] = 0x00000004u;
|
|
/* 02448790 */ _t183 = cpu->r[1] + 0x0000001Eu;
|
|
/* 02448790 */ rbrew_write16(cpu->mem, _t183, (uint16_t)cpu->r[28]);
|
|
/* 02448794 */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 02448798 */ _t184 = cpu->r[1] + 0x00000008u;
|
|
/* 02448798 */ rbrew_write8(cpu->mem, _t184, (uint8_t)cpu->r[0]);
|
|
/* 0244879C */ cpu->r[3] = cpu->r[27];
|
|
/* 024487A0 */ _t185 = cpu->r[1] + 0x00000028u;
|
|
/* 024487A0 */ rbrew_write32(cpu->mem, _t185, cpu->r[28]);
|
|
/* 024487A4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024487A8 */ _t186 = cpu->r[1] + 0x00000026u;
|
|
/* 024487A8 */ rbrew_write16(cpu->mem, _t186, (uint16_t)cpu->r[28]);
|
|
/* 024487AC */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 024487B0 */ _t187 = cpu->r[1] + 0x00000024u;
|
|
/* 024487B0 */ rbrew_write16(cpu->mem, _t187, (uint16_t)cpu->r[28]);
|
|
/* 024487B4 */ _t188 = cpu->r[1] + 0x00000020u;
|
|
/* 024487B4 */ rbrew_write32(cpu->mem, _t188, cpu->r[28]);
|
|
/* 024487B8 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024487BC */ _t189 = cpu->r[1] + 0x0000001Cu;
|
|
/* 024487BC */ rbrew_write16(cpu->mem, _t189, (uint16_t)cpu->r[28]);
|
|
/* 024487C0 */ Gambit_fn_02449458(cpu);
|
|
/* 024487C4 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024487C8 */ _t190 = cpu->r[1] + 0x00000010u;
|
|
/* 024487C8 */ rbrew_write32(cpu->mem, _t190, cpu->r[26]);
|
|
/* 024487CC */ cpu->r[7] = cpu->r[7] + 0xFFFFE560u;
|
|
/* 024487D0 */ _t191 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024487D0 */ rbrew_write32(cpu->mem, _t191, cpu->r[7]);
|
|
/* 024487D4 */ _t192 = cpu->r[27] + 0x00000014u;
|
|
/* 024487D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t192);
|
|
/* 024487D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000005u);
|
|
/* 024487DC */ _t193 = cpu->r[27] + 0x00000018u;
|
|
/* 024487DC */ cpu->r[26] = rbrew_read32(cpu->mem, _t193);
|
|
/* 024487E0 */ _t194 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 024487E0 */ _t195 = _t194 & 0x00000001u;
|
|
/* 024487E0 */ if (_t195) goto L_024487E4; else goto L_024487E8;
|
|
L_024487E4: ; // 0x24487e4
|
|
/* 024487E4 */ cpu->r[26] = cpu->r[26] + 0x000000B4u;
|
|
L_024487E8: ; // 0x24487e8
|
|
/* 024487E8 */ cpu->ctr = cpu->r[25];
|
|
/* 024487EC */ _t196 = cpu->r[26] + 0x00000000u;
|
|
/* 024487EC */ cpu->r[24] = rbrew_read32(cpu->mem, _t196);
|
|
/* 024487F0 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 024487F4 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 024487F8 */ _t197 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024487F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t197);
|
|
/* 024487FC */ _t198 = cpu->r[12] + 0x00000000u;
|
|
/* 024487FC */ cpu->r[9] = rbrew_read8(cpu->mem, _t198);
|
|
/* 02448800 */ cpu->r[30] = 0x00000000u;
|
|
/* 02448804 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]);
|
|
/* 02448808 */ cpu->r[5] = 0x00080000u;
|
|
/* 0244880C */ _t199 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244880C */ _t200 = _t199 & 0x00000001u;
|
|
/* 0244880C */ if (_t200) goto L_02448834; else goto L_02448810;
|
|
L_02448810: ; // 0x2448810
|
|
/* 02448810 */ cpu->r[30] = cpu->r[30] + 0x00000001u;
|
|
/* 02448814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448818 */ cpu->r[12] = cpu->r[12] + 0x00000001u;
|
|
/* 0244881C */ _t201 = cpu->cr[0] >> (0x00000002u & 31u);
|
|
/* 0244881C */ _t202 = _t201 & 0x00000001u;
|
|
/* 0244881C */ if (_t202) goto L_02448830; else goto L_02448820;
|
|
L_02448820: ; // 0x2448820
|
|
/* 02448820 */ _t203 = cpu->r[12] + 0x00000000u;
|
|
/* 02448820 */ cpu->r[10] = rbrew_read8(cpu->mem, _t203);
|
|
/* 02448824 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]);
|
|
/* 02448828 */ _t204 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448828 */ _t205 = _t204 & 0x00000001u;
|
|
/* 02448828 */ if (_t205) goto L_0244882C; else goto L_02448810;
|
|
L_0244882C: ; // 0x244882c
|
|
/* 0244882C */ goto L_02448834;
|
|
L_02448830: ; // 0x2448830
|
|
/* 02448830 */ cpu->r[30] = 0x00000000u;
|
|
L_02448834: ; // 0x2448834
|
|
/* 02448834 */ _t206 = cpu->r[26] + 0x00000008u;
|
|
/* 02448834 */ cpu->r[5] = rbrew_read32(cpu->mem, _t206);
|
|
/* 02448838 */ _t207 = cpu->r[1] + 0x00000010u;
|
|
/* 02448838 */ cpu->r[11] = rbrew_read32(cpu->mem, _t207);
|
|
/* 0244883C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]);
|
|
/* 02448840 */ _t208 = cpu->r[11] + 0x00000014u;
|
|
/* 02448840 */ cpu->r[12] = rbrew_read32(cpu->mem, _t208);
|
|
/* 02448844 */ _t209 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 02448844 */ _t210 = _t209 & 0x00000001u;
|
|
/* 02448844 */ if (_t210) goto L_0244884C; else goto L_02448848;
|
|
L_02448848: ; // 0x2448848
|
|
/* 02448848 */ cpu->r[30] = cpu->r[5] + 0xFFFFFFFFu;
|
|
L_0244884C: ; // 0x244884c
|
|
/* 0244884C */ cpu->ctr = cpu->r[12];
|
|
/* 02448850 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448854 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448858 */ _t211 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448858 */ cpu->r[4] = rbrew_read32(cpu->mem, _t211);
|
|
/* 0244885C */ cpu->r[6] = 0x00000000u;
|
|
/* 02448860 */ cpu->r[5] = cpu->r[30];
|
|
/* 02448864 */ cpu->r[3] = cpu->r[24];
|
|
/* 02448868 */ rbrew_dispatch(cpu, 0x02d0a6e8u);
|
|
/* 0244886C */ _t212 = cpu->r[24] + cpu->r[30];
|
|
/* 0244886C */ rbrew_write8(cpu->mem, _t212, (uint8_t)cpu->r[31]);
|
|
/* 02448870 */ cpu->r[9] = 0xFFFFFFFFu;
|
|
/* 02448874 */ _t213 = cpu->r[1] + 0x00000026u;
|
|
/* 02448874 */ rbrew_write16(cpu->mem, _t213, (uint16_t)cpu->r[28]);
|
|
/* 02448878 */ cpu->r[0] = 0x02450000u;
|
|
/* 0244887C */ _t214 = cpu->r[1] + 0x0000001Eu;
|
|
/* 0244887C */ rbrew_write16(cpu->mem, _t214, (uint16_t)cpu->r[28]);
|
|
/* 02448880 */ cpu->r[8] = 0x00000005u;
|
|
/* 02448884 */ _t215 = cpu->r[1] + 0x00000016u;
|
|
/* 02448884 */ rbrew_write16(cpu->mem, _t215, (uint16_t)cpu->r[9]);
|
|
/* 02448888 */ cpu->r[0] = cpu->r[0] + 0xFFFF8EA0u;
|
|
/* 0244888C */ _t216 = cpu->r[1] + 0x00000020u;
|
|
/* 0244888C */ rbrew_write32(cpu->mem, _t216, cpu->r[28]);
|
|
/* 02448890 */ _t217 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448890 */ rbrew_write16(cpu->mem, _t217, (uint16_t)cpu->r[28]);
|
|
/* 02448894 */ cpu->r[4] = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448898 */ _t218 = cpu->r[1] + 0x00000028u;
|
|
/* 02448898 */ rbrew_write32(cpu->mem, _t218, cpu->r[28]);
|
|
/* 0244889C */ cpu->r[3] = cpu->r[27];
|
|
/* 024488A0 */ _t219 = cpu->r[1] + 0x00000008u;
|
|
/* 024488A0 */ rbrew_write8(cpu->mem, _t219, (uint8_t)cpu->r[8]);
|
|
/* 024488A4 */ cpu->r[5] = cpu->r[1] + 0x00000014u;
|
|
/* 024488A8 */ _t220 = cpu->r[1] + 0x00000014u;
|
|
/* 024488A8 */ rbrew_write16(cpu->mem, _t220, (uint16_t)cpu->r[28]);
|
|
/* 024488AC */ cpu->r[7] = cpu->r[1] + 0x00000008u;
|
|
/* 024488B0 */ _t221 = cpu->r[1] + 0x00000018u;
|
|
/* 024488B0 */ rbrew_write32(cpu->mem, _t221, cpu->r[0]);
|
|
/* 024488B4 */ cpu->r[6] = cpu->r[1] + 0x00000024u;
|
|
/* 024488B8 */ _t222 = cpu->r[1] + 0x00000024u;
|
|
/* 024488B8 */ rbrew_write16(cpu->mem, _t222, (uint16_t)cpu->r[28]);
|
|
/* 024488BC */ Gambit_fn_02449458(cpu);
|
|
/* 024488C0 */ cpu->r[3] = cpu->r[27];
|
|
/* 024488C4 */ cpu->r[4] = 0x00000000u;
|
|
/* 024488C8 */ _t223 = cpu->r[29] + 0x000001B8u;
|
|
/* 024488C8 */ rbrew_write32(cpu->mem, _t223, cpu->r[27]);
|
|
/* 024488CC */ Gambit_fn_0243A870(cpu);
|
|
/* 024488D0 */ cpu->r[10] = 0x101C0000u;
|
|
/* 024488D4 */ _t224 = cpu->r[10] + 0x00001D34u;
|
|
/* 024488D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t224);
|
|
/* 024488D8 */ _t225 = cpu->r[10] + 0x00000178u;
|
|
/* 024488D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t225);
|
|
/* 024488DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 024488E0 */ _t226 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024488E0 */ _t227 = _t226 & 0x00000001u;
|
|
/* 024488E0 */ if (_t227) goto L_0244890C; else goto L_024488E4;
|
|
L_024488E4: ; // 0x24488e4
|
|
/* 024488E4 */ _t228 = cpu->r[10] + 0x00000174u;
|
|
/* 024488E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t228);
|
|
/* 024488E8 */ _t229 = cpu->r[10] + 0x00000170u;
|
|
/* 024488E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t229);
|
|
/* 024488EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[6]);
|
|
/* 024488F0 */ _t230 = cpu->r[10] + 0x0000016Cu;
|
|
/* 024488F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t230);
|
|
/* 024488F4 */ _t231 = cpu->cr[0] >> (0x00000003u & 31u);
|
|
/* 024488F4 */ _t232 = _t231 & 0x00000001u;
|
|
/* 024488F4 */ if (_t232) goto L_024488FC; else goto L_024488F8;
|
|
L_024488F8: ; // 0x24488f8
|
|
/* 024488F8 */ cpu->r[8] = cpu->r[8] - cpu->r[6];
|
|
L_024488FC: ; // 0x24488fc
|
|
/* 024488FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du);
|
|
/* 02448900 */ _t233 = cpu->r[12] + cpu->r[0];
|
|
/* 02448900 */ cpu->r[11] = rbrew_read32(cpu->mem, _t233);
|
|
/* 02448904 */ _t234 = cpu->r[29] + 0x00000214u;
|
|
/* 02448904 */ rbrew_write32(cpu->mem, _t234, cpu->r[11]);
|
|
/* 02448908 */ goto L_02448918;
|
|
L_0244890C: ; // 0x244890c
|
|
/* 0244890C */ _t235 = cpu->r[10] + 0x0000016Cu;
|
|
/* 0244890C */ cpu->r[5] = rbrew_read32(cpu->mem, _t235);
|
|
/* 02448910 */ _t236 = cpu->r[5] + 0x00000000u;
|
|
/* 02448910 */ cpu->r[11] = rbrew_read32(cpu->mem, _t236);
|
|
/* 02448914 */ _t237 = cpu->r[29] + 0x00000214u;
|
|
/* 02448914 */ rbrew_write32(cpu->mem, _t237, cpu->r[11]);
|
|
L_02448918: ; // 0x2448918
|
|
/* 02448918 */ cpu->r[3] = cpu->r[29];
|
|
/* 0244891C */ /* nop */
|
|
/* 02448920 */ _t238 = cpu->r[1] + 0x00000054u;
|
|
/* 02448920 */ cpu->r[0] = rbrew_read32(cpu->mem, _t238);
|
|
/* 02448924 */ cpu->lr = cpu->r[0];
|
|
/* 02448928 */ cpu->r[1] = cpu->r[1] + 0x00000050u;
|
|
/* 0244892C */ return;
|
|
}
|
|
|
|
// fn_02448930 @ 0x2448930
|
|
void Gambit_fn_02448930(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02448930: ; // 0x2448930
|
|
/* 02448930 */ cpu->r[0] = cpu->lr;
|
|
/* 02448934 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02448934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448934 */ cpu->r[1] = _t0;
|
|
/* 02448938 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02448938 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244893C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244893C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02448940 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 02448940 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02448944 */ _t4 = cpu->r[11] + 0x00000084u;
|
|
/* 02448944 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448948 */ cpu->ctr = cpu->r[12];
|
|
/* 0244894C */ cpu->r[31] = cpu->r[3];
|
|
/* 02448950 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448954 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448958 */ Gambit_fn_0206A274(cpu);
|
|
/* 0244895C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448960 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448964 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02448968 */ cpu->r[0] = cpu->r[0] + 0xFFFFE490u;
|
|
/* 0244896C */ cpu->r[4] = 0x00000000u;
|
|
/* 02448970 */ cpu->r[10] = cpu->r[10] + 0xFFFFE5E0u;
|
|
/* 02448974 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448974 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02448978 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0244897C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0244897C */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 02448980 */ Gambit_fn_027ED798(cpu);
|
|
/* 02448984 */ cpu->r[4] = 0x00000001u;
|
|
/* 02448988 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0244898C */ Gambit_fn_0243A870(cpu);
|
|
/* 02448990 */ _t7 = cpu->r[31] + 0x000001ACu;
|
|
/* 02448990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02448994 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 02448998 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0244899C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0244899C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024489A0 */ cpu->lr = cpu->r[0];
|
|
/* 024489A4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024489A8 */ return;
|
|
}
|
|
|
|
// fn_02448934 @ 0x2448934
|
|
void Gambit_fn_02448934(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9;
|
|
|
|
L_02448934: ; // 0x2448934
|
|
/* 02448934 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02448934 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448934 */ cpu->r[1] = _t0;
|
|
/* 02448938 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02448938 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0244893C */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 0244893C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02448940 */ _t3 = cpu->r[3] + 0x00000000u;
|
|
/* 02448940 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02448944 */ _t4 = cpu->r[11] + 0x00000084u;
|
|
/* 02448944 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448948 */ cpu->ctr = cpu->r[12];
|
|
/* 0244894C */ cpu->r[31] = cpu->r[3];
|
|
/* 02448950 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448954 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448958 */ Gambit_fn_0206A274(cpu);
|
|
/* 0244895C */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448960 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448964 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02448968 */ cpu->r[0] = cpu->r[0] + 0xFFFFE490u;
|
|
/* 0244896C */ cpu->r[4] = 0x00000000u;
|
|
/* 02448970 */ cpu->r[10] = cpu->r[10] + 0xFFFFE5E0u;
|
|
/* 02448974 */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448974 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]);
|
|
/* 02448978 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 0244897C */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 0244897C */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 02448980 */ Gambit_fn_027ED798(cpu);
|
|
/* 02448984 */ cpu->r[4] = 0x00000001u;
|
|
/* 02448988 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 0244898C */ Gambit_fn_0243A870(cpu);
|
|
/* 02448990 */ _t7 = cpu->r[31] + 0x000001ACu;
|
|
/* 02448990 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7);
|
|
/* 02448994 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 02448998 */ _t8 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8);
|
|
/* 0244899C */ _t9 = cpu->r[1] + 0x00000014u;
|
|
/* 0244899C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9);
|
|
/* 024489A0 */ cpu->lr = cpu->r[0];
|
|
/* 024489A4 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 024489A8 */ return;
|
|
}
|
|
|
|
// fn_024489D0 @ 0x24489d0
|
|
void Gambit_fn_024489D0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024489D0: ; // 0x24489d0
|
|
/* 024489D0 */ cpu->r[0] = cpu->lr;
|
|
/* 024489D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024489D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024489D4 */ cpu->r[1] = _t0;
|
|
/* 024489D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024489D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024489DC */ cpu->r[31] = cpu->r[3];
|
|
/* 024489E0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024489E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024489E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024489E8 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 024489E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024489EC */ Gambit_fn_0206C030(cpu);
|
|
/* 024489F0 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 024489F4 */ cpu->r[4] = 0x00000005u;
|
|
/* 024489F8 */ Gambit_fn_0243A870(cpu);
|
|
/* 024489FC */ _t4 = cpu->r[31] + 0x000001ACu;
|
|
/* 024489FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448A00 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 02448A04 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02448A08 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02448A0C */ cpu->lr = cpu->r[0];
|
|
/* 02448A10 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02448A14 */ return;
|
|
}
|
|
|
|
// fn_024489D4 @ 0x24489d4
|
|
void Gambit_fn_024489D4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6;
|
|
|
|
L_024489D4: ; // 0x24489d4
|
|
/* 024489D4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 024489D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 024489D4 */ cpu->r[1] = _t0;
|
|
/* 024489D8 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 024489D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 024489DC */ cpu->r[31] = cpu->r[3];
|
|
/* 024489E0 */ cpu->r[3] = 0x101C0000u;
|
|
/* 024489E4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 024489E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 024489E8 */ _t3 = cpu->r[3] + 0x00003400u;
|
|
/* 024489E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3);
|
|
/* 024489EC */ Gambit_fn_0206C030(cpu);
|
|
/* 024489F0 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 024489F4 */ cpu->r[4] = 0x00000005u;
|
|
/* 024489F8 */ Gambit_fn_0243A870(cpu);
|
|
/* 024489FC */ _t4 = cpu->r[31] + 0x000001ACu;
|
|
/* 024489FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448A00 */ Gambit_fn_027BB1DC(cpu);
|
|
/* 02448A04 */ _t5 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02448A08 */ _t6 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A08 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6);
|
|
/* 02448A0C */ cpu->lr = cpu->r[0];
|
|
/* 02448A10 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02448A14 */ return;
|
|
}
|
|
|
|
// fn_02448A18 @ 0x2448a18
|
|
void Gambit_fn_02448A18(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02448A18: ; // 0x2448a18
|
|
/* 02448A18 */ cpu->r[0] = cpu->lr;
|
|
/* 02448A1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448A1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448A1C */ cpu->r[1] = _t0;
|
|
/* 02448A20 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448A24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02448A28 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02448A2C */ cpu->r[4] = 0x00000000u;
|
|
/* 02448A30 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02448A34 */ Gambit_fn_0243A870(cpu);
|
|
/* 02448A38 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448A3C */ Gambit_fn_0206A310(cpu);
|
|
/* 02448A40 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02448A44 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448A48 */ cpu->lr = cpu->r[0];
|
|
/* 02448A4C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02448A50 */ return;
|
|
}
|
|
|
|
// fn_02448A1C @ 0x2448a1c
|
|
void Gambit_fn_02448A1C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4;
|
|
|
|
L_02448A1C: ; // 0x2448a1c
|
|
/* 02448A1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448A1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448A1C */ cpu->r[1] = _t0;
|
|
/* 02448A20 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448A24 */ cpu->r[31] = cpu->r[3];
|
|
/* 02448A28 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02448A2C */ cpu->r[4] = 0x00000000u;
|
|
/* 02448A30 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A30 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02448A34 */ Gambit_fn_0243A870(cpu);
|
|
/* 02448A38 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448A3C */ Gambit_fn_0206A310(cpu);
|
|
/* 02448A40 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02448A44 */ _t4 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A44 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448A48 */ cpu->lr = cpu->r[0];
|
|
/* 02448A4C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02448A50 */ return;
|
|
}
|
|
|
|
// fn_02448A54 @ 0x2448a54
|
|
void Gambit_fn_02448A54(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02448A54: ; // 0x2448a54
|
|
/* 02448A54 */ cpu->r[0] = cpu->lr;
|
|
/* 02448A58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448A58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448A58 */ cpu->r[1] = _t0;
|
|
/* 02448A5C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448A60 */ cpu->r[31] = cpu->r[3];
|
|
/* 02448A64 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A64 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02448A68 */ Gambit_fn_0206A1E0(cpu);
|
|
/* 02448A6C */ _t3 = cpu->r[31] + 0x000001EAu;
|
|
/* 02448A6C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02448A70 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02448A74 */ /* nop */
|
|
/* 02448A78 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02448A7C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02448A80 */ Gambit_fn_0243A668(cpu);
|
|
/* 02448A84 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448A88 */ cpu->lr = cpu->r[0];
|
|
/* 02448A8C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02448A90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02448A94 */ return;
|
|
}
|
|
|
|
// fn_02448A58 @ 0x2448a58
|
|
void Gambit_fn_02448A58(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5;
|
|
|
|
L_02448A58: ; // 0x2448a58
|
|
/* 02448A58 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448A58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448A58 */ cpu->r[1] = _t0;
|
|
/* 02448A5C */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A5C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448A60 */ cpu->r[31] = cpu->r[3];
|
|
/* 02448A64 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A64 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02448A68 */ Gambit_fn_0206A1E0(cpu);
|
|
/* 02448A6C */ _t3 = cpu->r[31] + 0x000001EAu;
|
|
/* 02448A6C */ cpu->r[4] = rbrew_read8(cpu->mem, _t3);
|
|
/* 02448A70 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02448A74 */ /* nop */
|
|
/* 02448A78 */ Gambit_fn_027FC35C(cpu);
|
|
/* 02448A7C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02448A80 */ Gambit_fn_0243A668(cpu);
|
|
/* 02448A84 */ _t4 = cpu->r[1] + 0x00000014u;
|
|
/* 02448A84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448A88 */ cpu->lr = cpu->r[0];
|
|
/* 02448A8C */ _t5 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448A8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t5);
|
|
/* 02448A90 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02448A94 */ return;
|
|
}
|
|
|
|
// fn_02448A98 @ 0x2448a98
|
|
void Gambit_fn_02448A98(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;
|
|
|
|
L_02448A98: ; // 0x2448a98
|
|
/* 02448A98 */ cpu->r[0] = cpu->lr;
|
|
/* 02448A9C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02448A9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448A9C */ cpu->r[1] = _t0;
|
|
/* 02448AA0 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02448AA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02448AA4 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02448AA8 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02448AA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02448AAC */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02448AAC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02448AB0 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02448AB4 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02448AB4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02448AB8 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02448ABC */ cpu->r[30] = cpu->r[30] + 0xFFFFE610u;
|
|
/* 02448AC0 */ cpu->r[29] = cpu->r[29] + 0xFFFFE490u;
|
|
/* 02448AC4 */ cpu->r[10] = cpu->r[10] + 0xFFFFE5E8u;
|
|
/* 02448AC8 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02448AC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02448ACC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02448ACC */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 02448AD0 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02448AD4 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448AD4 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02448AD8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02448AD8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02448ADC */ cpu->r[31] = cpu->r[3];
|
|
/* 02448AE0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448AE0 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02448AE4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448AE8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02448AEC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02448AEC */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02448AF0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02448AF4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448AF8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448AF8 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02448AFC */ cpu->r[0] = cpu->r[0] + 0xFFFFE5E4u;
|
|
/* 02448B00 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02448B00 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 02448B04 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02448B08 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02448B08 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02448B0C */ cpu->r[3] = cpu->r[31];
|
|
/* 02448B10 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 02448B10 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02448B14 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448B18 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448B18 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 02448B1C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02448B20 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02448B20 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02448B24 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02448B28 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02448B2C */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448B2C */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02448B30 */ cpu->r[12] = cpu->r[12] + 0xFFFFE61Cu;
|
|
/* 02448B34 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448B34 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02448B38 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448B3C */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02448B3C */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02448B40 */ cpu->r[0] = cpu->r[0] + 0xFFFFE5ECu;
|
|
/* 02448B44 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 02448B44 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 02448B48 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02448B4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02448B50 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02448B50 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02448B54 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02448B58 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448B5C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02448B5C */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 02448B60 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02448B64 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448B68 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448B68 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 02448B6C */ cpu->r[0] = cpu->r[0] + 0xFFFFE62Cu;
|
|
/* 02448B70 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448B70 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 02448B74 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02448B78 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02448B78 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02448B7C */ cpu->r[9] = cpu->r[9] + 0xFFFFE600u;
|
|
/* 02448B80 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 02448B80 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02448B84 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02448B88 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02448B8C */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02448B8C */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 02448B90 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448B94 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448B98 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02448B98 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02448B9C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02448BA0 */ _t29 = cpu->r[1] + 0x00000024u;
|
|
/* 02448BA0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02448BA4 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02448BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02448BA8 */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02448BA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02448BAC */ cpu->lr = cpu->r[0];
|
|
/* 02448BB0 */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 02448BB0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02448BB4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02448BB8 */ return;
|
|
}
|
|
|
|
// fn_02448A9C @ 0x2448a9c
|
|
void Gambit_fn_02448A9C(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;
|
|
|
|
L_02448A9C: ; // 0x2448a9c
|
|
/* 02448A9C */ _t0 = cpu->r[1] + 0xFFFFFFD0u;
|
|
/* 02448A9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448A9C */ cpu->r[1] = _t0;
|
|
/* 02448AA0 */ _t1 = cpu->r[1] + 0x00000028u;
|
|
/* 02448AA0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02448AA4 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02448AA8 */ _t2 = cpu->r[1] + 0x00000024u;
|
|
/* 02448AA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02448AAC */ _t3 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02448AAC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02448AB0 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02448AB4 */ _t4 = cpu->r[1] + 0x00000034u;
|
|
/* 02448AB4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02448AB8 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02448ABC */ cpu->r[30] = cpu->r[30] + 0xFFFFE610u;
|
|
/* 02448AC0 */ cpu->r[29] = cpu->r[29] + 0xFFFFE490u;
|
|
/* 02448AC4 */ cpu->r[10] = cpu->r[10] + 0xFFFFE5E8u;
|
|
/* 02448AC8 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02448AC8 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]);
|
|
/* 02448ACC */ _t6 = cpu->r[1] + 0x00000010u;
|
|
/* 02448ACC */ rbrew_write32(cpu->mem, _t6, cpu->r[10]);
|
|
/* 02448AD0 */ cpu->r[6] = cpu->r[1] + 0x00000018u;
|
|
/* 02448AD4 */ _t7 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448AD4 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]);
|
|
/* 02448AD8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02448AD8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]);
|
|
/* 02448ADC */ cpu->r[31] = cpu->r[3];
|
|
/* 02448AE0 */ _t9 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448AE0 */ rbrew_write32(cpu->mem, _t9, cpu->r[29]);
|
|
/* 02448AE4 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448AE8 */ cpu->r[4] = cpu->r[1] + 0x00000008u;
|
|
/* 02448AEC */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02448AEC */ rbrew_write32(cpu->mem, _t10, cpu->r[29]);
|
|
/* 02448AF0 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02448AF4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448AF8 */ _t11 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448AF8 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]);
|
|
/* 02448AFC */ cpu->r[0] = cpu->r[0] + 0xFFFFE5E4u;
|
|
/* 02448B00 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02448B00 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]);
|
|
/* 02448B04 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02448B08 */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02448B08 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02448B0C */ cpu->r[3] = cpu->r[31];
|
|
/* 02448B10 */ _t14 = cpu->r[1] + 0x00000018u;
|
|
/* 02448B10 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]);
|
|
/* 02448B14 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448B18 */ _t15 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448B18 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]);
|
|
/* 02448B1C */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02448B20 */ _t16 = cpu->r[1] + 0x00000014u;
|
|
/* 02448B20 */ rbrew_write32(cpu->mem, _t16, cpu->r[29]);
|
|
/* 02448B24 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02448B28 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02448B2C */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448B2C */ rbrew_write32(cpu->mem, _t17, cpu->r[29]);
|
|
/* 02448B30 */ cpu->r[12] = cpu->r[12] + 0xFFFFE61Cu;
|
|
/* 02448B34 */ _t18 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448B34 */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02448B38 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448B3C */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02448B3C */ rbrew_write32(cpu->mem, _t19, cpu->r[29]);
|
|
/* 02448B40 */ cpu->r[0] = cpu->r[0] + 0xFFFFE5ECu;
|
|
/* 02448B44 */ _t20 = cpu->r[1] + 0x00000018u;
|
|
/* 02448B44 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]);
|
|
/* 02448B48 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02448B4C */ cpu->r[3] = cpu->r[31];
|
|
/* 02448B50 */ _t21 = cpu->r[1] + 0x00000008u;
|
|
/* 02448B50 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]);
|
|
/* 02448B54 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02448B58 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448B5C */ _t22 = cpu->r[1] + 0x00000010u;
|
|
/* 02448B5C */ rbrew_write32(cpu->mem, _t22, cpu->r[12]);
|
|
/* 02448B60 */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02448B64 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448B68 */ _t23 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448B68 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]);
|
|
/* 02448B6C */ cpu->r[0] = cpu->r[0] + 0xFFFFE62Cu;
|
|
/* 02448B70 */ _t24 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448B70 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]);
|
|
/* 02448B74 */ cpu->r[9] = 0x100A0000u;
|
|
/* 02448B78 */ _t25 = cpu->r[1] + 0x00000014u;
|
|
/* 02448B78 */ rbrew_write32(cpu->mem, _t25, cpu->r[29]);
|
|
/* 02448B7C */ cpu->r[9] = cpu->r[9] + 0xFFFFE600u;
|
|
/* 02448B80 */ _t26 = cpu->r[1] + 0x00000018u;
|
|
/* 02448B80 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]);
|
|
/* 02448B84 */ cpu->r[6] = cpu->r[1] + 0x00000008u;
|
|
/* 02448B88 */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02448B8C */ _t27 = cpu->r[1] + 0x00000008u;
|
|
/* 02448B8C */ rbrew_write32(cpu->mem, _t27, cpu->r[9]);
|
|
/* 02448B90 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448B94 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448B98 */ _t28 = cpu->r[1] + 0x00000010u;
|
|
/* 02448B98 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]);
|
|
/* 02448B9C */ Gambit_fn_027ECDD0(cpu);
|
|
/* 02448BA0 */ _t29 = cpu->r[1] + 0x00000024u;
|
|
/* 02448BA0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29);
|
|
/* 02448BA4 */ _t30 = cpu->r[1] + 0x00000034u;
|
|
/* 02448BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30);
|
|
/* 02448BA8 */ _t31 = cpu->r[1] + 0x0000002Cu;
|
|
/* 02448BA8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t31);
|
|
/* 02448BAC */ cpu->lr = cpu->r[0];
|
|
/* 02448BB0 */ _t32 = cpu->r[1] + 0x00000028u;
|
|
/* 02448BB0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32);
|
|
/* 02448BB4 */ cpu->r[1] = cpu->r[1] + 0x00000030u;
|
|
/* 02448BB8 */ return;
|
|
}
|
|
|
|
// fn_02448BBC @ 0x2448bbc
|
|
void Gambit_fn_02448BBC(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_02448BBC: ; // 0x2448bbc
|
|
/* 02448BBC */ cpu->r[0] = cpu->lr;
|
|
/* 02448BC0 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 02448BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448BC0 */ cpu->r[1] = _t0;
|
|
/* 02448BC4 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 02448BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02448BC8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02448BCC */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 02448BCC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02448BD0 */ _t3 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02448BD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02448BD4 */ _t4 = cpu->r[1] + 0x00000074u;
|
|
/* 02448BD4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02448BD8 */ Gambit_fn_0201A09C(cpu);
|
|
/* 02448BDC */ cpu->r[8] = cpu->r[1] + 0x00000024u;
|
|
/* 02448BE0 */ cpu->r[12] = 0x10110000u;
|
|
/* 02448BE4 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02448BE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 02448BE8 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02448BEC */ _t6 = cpu->r[12] + 0x0000739Au;
|
|
/* 02448BEC */ cpu->r[12] = rbrew_read16(cpu->mem, _t6);
|
|
/* 02448BF0 */ cpu->r[29] = cpu->r[29] + 0xFFFFE490u;
|
|
/* 02448BF4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448BF8 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02448BF8 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02448BFC */ _t8 = cpu->r[1] + 0x00000062u;
|
|
/* 02448BFC */ rbrew_write16(cpu->mem, _t8, (uint16_t)cpu->r[12]);
|
|
/* 02448C00 */ cpu->r[0] = cpu->r[0] + 0xFFFFE548u;
|
|
/* 02448C04 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02448C04 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]);
|
|
/* 02448C08 */ cpu->r[9] = 0x00000020u;
|
|
/* 02448C0C */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448C0C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02448C10 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 02448C10 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02448C14 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02448C18 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448C18 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02448C1C */ Gambit_fn_02449070(cpu);
|
|
/* 02448C20 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448C20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02448C24 */ _t14 = cpu->r[11] + 0x00000014u;
|
|
/* 02448C24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02448C28 */ cpu->ctr = cpu->r[0];
|
|
/* 02448C2C */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02448C2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02448C30 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02448C34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448C38 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 02448C38 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02448C3C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02448C3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02448C40 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02448C44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448C48 */ Gambit_fn_0282C89C(cpu);
|
|
/* 02448C4C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02448C4C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02448C50 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448C54 */ cpu->r[4] = cpu->r[30];
|
|
/* 02448C58 */ cpu->r[3] = 0x00000000u;
|
|
/* 02448C5C */ cpu->r[0] = cpu->r[0] + 0xFFFFE638u;
|
|
/* 02448C60 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448C64 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02448C64 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 02448C68 */ Gambit_fn_020A7150(cpu);
|
|
/* 02448C6C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02448C70 */ _t20 = cpu->r[30] + 0x00000218u;
|
|
/* 02448C70 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 02448C74 */ Gambit_fn_020A804C(cpu);
|
|
/* 02448C78 */ _t21 = cpu->r[1] + 0x00000064u;
|
|
/* 02448C78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02448C7C */ _t22 = cpu->r[1] + 0x00000074u;
|
|
/* 02448C7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02448C80 */ _t23 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02448C80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02448C84 */ cpu->lr = cpu->r[0];
|
|
/* 02448C88 */ _t24 = cpu->r[1] + 0x00000068u;
|
|
/* 02448C88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02448C8C */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 02448C90 */ return;
|
|
}
|
|
|
|
// fn_02448BC0 @ 0x2448bc0
|
|
void Gambit_fn_02448BC0(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_02448BC0: ; // 0x2448bc0
|
|
/* 02448BC0 */ _t0 = cpu->r[1] + 0xFFFFFF90u;
|
|
/* 02448BC0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448BC0 */ cpu->r[1] = _t0;
|
|
/* 02448BC4 */ _t1 = cpu->r[1] + 0x00000068u;
|
|
/* 02448BC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02448BC8 */ cpu->r[30] = cpu->r[3];
|
|
/* 02448BCC */ _t2 = cpu->r[1] + 0x00000064u;
|
|
/* 02448BCC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]);
|
|
/* 02448BD0 */ _t3 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02448BD0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]);
|
|
/* 02448BD4 */ _t4 = cpu->r[1] + 0x00000074u;
|
|
/* 02448BD4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]);
|
|
/* 02448BD8 */ Gambit_fn_0201A09C(cpu);
|
|
/* 02448BDC */ cpu->r[8] = cpu->r[1] + 0x00000024u;
|
|
/* 02448BE0 */ cpu->r[12] = 0x10110000u;
|
|
/* 02448BE4 */ _t5 = cpu->r[1] + 0x00000018u;
|
|
/* 02448BE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]);
|
|
/* 02448BE8 */ cpu->r[29] = 0x100A0000u;
|
|
/* 02448BEC */ _t6 = cpu->r[12] + 0x0000739Au;
|
|
/* 02448BEC */ cpu->r[12] = rbrew_read16(cpu->mem, _t6);
|
|
/* 02448BF0 */ cpu->r[29] = cpu->r[29] + 0xFFFFE490u;
|
|
/* 02448BF4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448BF8 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02448BF8 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]);
|
|
/* 02448BFC */ _t8 = cpu->r[1] + 0x00000062u;
|
|
/* 02448BFC */ rbrew_write16(cpu->mem, _t8, (uint16_t)cpu->r[12]);
|
|
/* 02448C00 */ cpu->r[0] = cpu->r[0] + 0xFFFFE548u;
|
|
/* 02448C04 */ _t9 = cpu->r[1] + 0x00000024u;
|
|
/* 02448C04 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]);
|
|
/* 02448C08 */ cpu->r[9] = 0x00000020u;
|
|
/* 02448C0C */ _t10 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448C0C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]);
|
|
/* 02448C10 */ _t11 = cpu->r[1] + 0x00000020u;
|
|
/* 02448C10 */ rbrew_write32(cpu->mem, _t11, cpu->r[9]);
|
|
/* 02448C14 */ cpu->r[3] = cpu->r[1] + 0x00000018u;
|
|
/* 02448C18 */ _t12 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448C18 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]);
|
|
/* 02448C1C */ Gambit_fn_02449070(cpu);
|
|
/* 02448C20 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448C20 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02448C24 */ _t14 = cpu->r[11] + 0x00000014u;
|
|
/* 02448C24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02448C28 */ cpu->ctr = cpu->r[0];
|
|
/* 02448C2C */ _t15 = cpu->r[1] + 0x00000018u;
|
|
/* 02448C2C */ cpu->r[31] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02448C30 */ cpu->r[3] = cpu->r[1] + 0x00000008u;
|
|
/* 02448C34 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
/* 02448C38 */ _t16 = cpu->r[1] + 0x00000020u;
|
|
/* 02448C38 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16);
|
|
/* 02448C3C */ _t17 = cpu->r[1] + 0x00000008u;
|
|
/* 02448C3C */ cpu->r[5] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02448C40 */ cpu->r[6] = 0xFFFFFFFFu;
|
|
/* 02448C44 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448C48 */ Gambit_fn_0282C89C(cpu);
|
|
/* 02448C4C */ _t18 = cpu->r[1] + 0x00000014u;
|
|
/* 02448C4C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]);
|
|
/* 02448C50 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448C54 */ cpu->r[4] = cpu->r[30];
|
|
/* 02448C58 */ cpu->r[3] = 0x00000000u;
|
|
/* 02448C5C */ cpu->r[0] = cpu->r[0] + 0xFFFFE638u;
|
|
/* 02448C60 */ cpu->r[5] = cpu->r[1] + 0x00000010u;
|
|
/* 02448C64 */ _t19 = cpu->r[1] + 0x00000010u;
|
|
/* 02448C64 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]);
|
|
/* 02448C68 */ Gambit_fn_020A7150(cpu);
|
|
/* 02448C6C */ cpu->r[4] = cpu->r[1] + 0x00000018u;
|
|
/* 02448C70 */ _t20 = cpu->r[30] + 0x00000218u;
|
|
/* 02448C70 */ rbrew_write32(cpu->mem, _t20, cpu->r[3]);
|
|
/* 02448C74 */ Gambit_fn_020A804C(cpu);
|
|
/* 02448C78 */ _t21 = cpu->r[1] + 0x00000064u;
|
|
/* 02448C78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21);
|
|
/* 02448C7C */ _t22 = cpu->r[1] + 0x00000074u;
|
|
/* 02448C7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02448C80 */ _t23 = cpu->r[1] + 0x0000006Cu;
|
|
/* 02448C80 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02448C84 */ cpu->lr = cpu->r[0];
|
|
/* 02448C88 */ _t24 = cpu->r[1] + 0x00000068u;
|
|
/* 02448C88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02448C8C */ cpu->r[1] = cpu->r[1] + 0x00000070u;
|
|
/* 02448C90 */ return;
|
|
}
|
|
|
|
// fn_02448C98 @ 0x2448c98
|
|
void Gambit_fn_02448C98(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02448C98: ; // 0x2448c98
|
|
/* 02448C98 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02448C98 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448C98 */ cpu->r[1] = _t0;
|
|
/* 02448C9C */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02448C9C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448CA0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448CA0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02448CA4 */ _t3 = cpu->r[3] + 0x000001E4u;
|
|
/* 02448CA4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02448CA8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02448CAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 02448CB0 */ cpu->r[31] = cpu->r[3];
|
|
/* 02448CB4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448CB4 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02448CB4 */ if (_t5) goto L_02448CB8; else goto L_02448CF4;
|
|
L_02448CB8: ; // 0x2448cb8
|
|
/* 02448CB8 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02448CBC */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448CC0 */ _t6 = cpu->r[12] + 0xFFFFE648u;
|
|
/* 02448CC0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02448CC4 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02448CC8 */ cpu->r[0] = cpu->r[0] + 0xFFFFE64Cu;
|
|
/* 02448CCC */ cpu->r[12] = cpu->r[12] + 0xFFFFE490u;
|
|
/* 02448CD0 */ _t7 = cpu->r[1] + 0x00000008u;
|
|
/* 02448CD0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]);
|
|
/* 02448CD4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02448CD8 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448CD8 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]);
|
|
/* 02448CDC */ Gambit_fn_027ED2B0(cpu);
|
|
/* 02448CE0 */ _t9 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448CE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9);
|
|
/* 02448CE4 */ cpu->lr = cpu->r[0];
|
|
/* 02448CE8 */ _t10 = cpu->r[1] + 0x00000014u;
|
|
/* 02448CE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02448CEC */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02448CF0 */ return;
|
|
L_02448CF4: ; // 0x2448cf4
|
|
/* 02448CF4 */ Gambit_fn_027EDF00(cpu);
|
|
/* 02448CF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02448CFC */ _t11 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448CFC */ _t12 = _t11 & 0x00000001u;
|
|
/* 02448CFC */ if (_t12) goto L_02448D0C; else goto L_02448D00;
|
|
L_02448D00: ; // 0x2448d00
|
|
/* 02448D00 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02448D04 */ cpu->r[4] = 0x00000002u;
|
|
/* 02448D08 */ Gambit_fn_0243A870(cpu);
|
|
L_02448D0C: ; // 0x2448d0c
|
|
/* 02448D0C */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02448D10 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02448D10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02448D14 */ cpu->lr = cpu->r[0];
|
|
/* 02448D18 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02448D1C */ return;
|
|
}
|
|
|
|
// fn_02448D24 @ 0x2448d24
|
|
void Gambit_fn_02448D24(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_02448D24: ; // 0x2448d24
|
|
/* 02448D24 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02448D24 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448D24 */ cpu->r[1] = _t0;
|
|
/* 02448D28 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02448D28 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448D2C */ _t2 = cpu->r[1] + 0x00000010u;
|
|
/* 02448D2C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02448D30 */ cpu->r[31] = cpu->r[3];
|
|
/* 02448D34 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448D34 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02448D38 */ _t4 = cpu->r[31] + 0x000001E4u;
|
|
/* 02448D38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448D3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02448D40 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448D40 */ _t6 = _t5 & 0x00000001u;
|
|
/* 02448D40 */ if (_t6) goto L_02448D44; else goto L_02448D74;
|
|
L_02448D44: ; // 0x2448d44
|
|
/* 02448D44 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448D48 */ cpu->r[7] = 0x100A0000u;
|
|
/* 02448D4C */ cpu->r[8] = 0x100A0000u;
|
|
/* 02448D50 */ cpu->r[0] = cpu->r[0] + 0xFFFFE490u;
|
|
/* 02448D54 */ cpu->r[7] = cpu->r[7] + 0xFFFFE650u;
|
|
/* 02448D58 */ _t7 = cpu->r[8] + 0xFFFFE648u;
|
|
/* 02448D58 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02448D5C */ cpu->r[4] = 0x00000002u;
|
|
/* 02448D60 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448D64 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448D64 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02448D68 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02448D6C */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02448D6C */ rbrew_write32(cpu->mem, _t9, cpu->r[7]);
|
|
/* 02448D70 */ Gambit_fn_027ED1E4(cpu);
|
|
L_02448D74: ; // 0x2448d74
|
|
/* 02448D74 */ _t10 = cpu->r[31] + 0x00000214u;
|
|
/* 02448D74 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10);
|
|
/* 02448D78 */ cpu->r[4] = 0x00020000u;
|
|
/* 02448D7C */ _t11 = cpu->r[3] + 0x00000000u;
|
|
/* 02448D7C */ cpu->r[30] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02448D80 */ cpu->r[4] = cpu->r[4] + 0xFFFF8000u;
|
|
/* 02448D84 */ Gambit_fn_027DFCF8(cpu);
|
|
/* 02448D88 */ _t12 = cpu->r[30] + 0x00000008u;
|
|
/* 02448D88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02448D8C */ cpu->r[10] = cpu->r[3] & cpu->r[11];
|
|
/* 02448D90 */ cpu->r[12] = cpu->r[10] ^ cpu->r[3];
|
|
/* 02448D94 */ cpu->r[0] = rbrew_clz32(cpu->r[12]);
|
|
/* 02448D98 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu);
|
|
/* 02448D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02448D9C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448D9C */ _t14 = _t13 & 0x00000001u;
|
|
/* 02448D9C */ if (_t14) goto L_02448DD0; else goto L_02448DA0;
|
|
L_02448DA0: ; // 0x2448da0
|
|
/* 02448DA0 */ _t15 = cpu->r[30] + 0x0000008Cu;
|
|
/* 02448DA0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15);
|
|
/* 02448DA4 */ cpu->r[8] = cpu->r[3] & cpu->r[10];
|
|
/* 02448DA8 */ cpu->r[11] = cpu->r[8] + 0xFFFFFFFFu;
|
|
/* 02448DAC */ cpu->r[7] = cpu->r[8] - cpu->r[11];
|
|
/* 02448DAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u);
|
|
/* 02448DB0 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448DB0 */ _t17 = _t16 & 0x00000001u;
|
|
/* 02448DB0 */ if (_t17) goto L_02448DD0; else goto L_02448DB4;
|
|
L_02448DB4: ; // 0x2448db4
|
|
/* 02448DB4 */ _t18 = cpu->r[31] + 0x00000214u;
|
|
/* 02448DB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02448DB8 */ _t19 = cpu->r[9] + 0x00000084u;
|
|
/* 02448DB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02448DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02448DC0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448DC0 */ _t21 = _t20 & 0x00000001u;
|
|
/* 02448DC0 */ if (_t21) goto L_02448DC4; else goto L_02448DD0;
|
|
L_02448DC4: ; // 0x2448dc4
|
|
/* 02448DC4 */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02448DC8 */ cpu->r[4] = 0x00000003u;
|
|
/* 02448DCC */ Gambit_fn_0243A870(cpu);
|
|
L_02448DD0: ; // 0x2448dd0
|
|
/* 02448DD0 */ _t22 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448DD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22);
|
|
/* 02448DD4 */ _t23 = cpu->r[1] + 0x00000010u;
|
|
/* 02448DD4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23);
|
|
/* 02448DD8 */ cpu->lr = cpu->r[0];
|
|
/* 02448DDC */ _t24 = cpu->r[1] + 0x00000014u;
|
|
/* 02448DDC */ cpu->r[31] = rbrew_read32(cpu->mem, _t24);
|
|
/* 02448DE0 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02448DE4 */ return;
|
|
}
|
|
|
|
// fn_02448DEC @ 0x2448dec
|
|
void Gambit_fn_02448DEC(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_02448DEC: ; // 0x2448dec
|
|
/* 02448DEC */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02448DEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448DEC */ cpu->r[1] = _t0;
|
|
/* 02448DF0 */ _t1 = cpu->r[1] + 0x00000010u;
|
|
/* 02448DF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]);
|
|
/* 02448DF4 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 02448DF4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]);
|
|
/* 02448DF8 */ _t3 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448DF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02448DFC */ _t4 = cpu->r[3] + 0x000001E4u;
|
|
/* 02448DFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4);
|
|
/* 02448E00 */ cpu->r[4] = 0x00000001u;
|
|
/* 02448E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02448E08 */ cpu->r[31] = cpu->r[3];
|
|
/* 02448E0C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448E0C */ _t6 = _t5 & 0x00000001u;
|
|
/* 02448E0C */ if (_t6) goto L_02448E10; else goto L_02448E70;
|
|
L_02448E10: ; // 0x2448e10
|
|
/* 02448E10 */ cpu->r[30] = 0x100A0000u;
|
|
/* 02448E14 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02448E18 */ cpu->r[30] = cpu->r[30] + 0xFFFFE490u;
|
|
/* 02448E1C */ _t7 = cpu->r[11] + 0xFFFFE648u;
|
|
/* 02448E1C */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t7);
|
|
/* 02448E20 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448E24 */ _t8 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448E24 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]);
|
|
/* 02448E28 */ cpu->r[0] = cpu->r[0] + 0xFFFFE660u;
|
|
/* 02448E2C */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02448E30 */ _t9 = cpu->r[1] + 0x00000008u;
|
|
/* 02448E30 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]);
|
|
/* 02448E34 */ Gambit_fn_027ED1E4(cpu);
|
|
/* 02448E38 */ cpu->r[12] = 0x100A0000u;
|
|
/* 02448E3C */ _t10 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448E3C */ rbrew_write32(cpu->mem, _t10, cpu->r[30]);
|
|
/* 02448E40 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448E44 */ cpu->r[12] = cpu->r[12] + 0xFFFFE66Cu;
|
|
/* 02448E48 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02448E4C */ cpu->r[4] = 0x00000002u;
|
|
/* 02448E50 */ _t11 = cpu->r[1] + 0x00000008u;
|
|
/* 02448E50 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]);
|
|
/* 02448E54 */ Gambit_fn_027ED798(cpu);
|
|
/* 02448E58 */ _t12 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448E58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02448E5C */ _t13 = cpu->r[1] + 0x00000010u;
|
|
/* 02448E5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02448E60 */ cpu->lr = cpu->r[0];
|
|
/* 02448E64 */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02448E64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02448E68 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02448E6C */ return;
|
|
L_02448E70: ; // 0x2448e70
|
|
/* 02448E70 */ Gambit_fn_027EDF00(cpu);
|
|
/* 02448E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02448E78 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448E78 */ _t16 = _t15 & 0x00000001u;
|
|
/* 02448E78 */ if (_t16) goto L_02448E88; else goto L_02448E7C;
|
|
L_02448E7C: ; // 0x2448e7c
|
|
/* 02448E7C */ cpu->r[3] = cpu->r[31] + 0x000001DCu;
|
|
/* 02448E80 */ cpu->r[4] = 0x00000004u;
|
|
/* 02448E84 */ Gambit_fn_0243A870(cpu);
|
|
L_02448E88: ; // 0x2448e88
|
|
/* 02448E88 */ _t17 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448E88 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17);
|
|
/* 02448E8C */ _t18 = cpu->r[1] + 0x00000010u;
|
|
/* 02448E8C */ cpu->r[30] = rbrew_read32(cpu->mem, _t18);
|
|
/* 02448E90 */ cpu->lr = cpu->r[0];
|
|
/* 02448E94 */ _t19 = cpu->r[1] + 0x00000014u;
|
|
/* 02448E94 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19);
|
|
/* 02448E98 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02448E9C */ return;
|
|
}
|
|
|
|
// fn_02448EA4 @ 0x2448ea4
|
|
void Gambit_fn_02448EA4(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14;
|
|
|
|
L_02448EA4: ; // 0x2448ea4
|
|
/* 02448EA4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02448EA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448EA4 */ cpu->r[1] = _t0;
|
|
/* 02448EA8 */ _t1 = cpu->r[1] + 0x00000014u;
|
|
/* 02448EA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448EAC */ cpu->r[31] = cpu->r[3];
|
|
/* 02448EB0 */ _t2 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448EB0 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 02448EB4 */ _t3 = cpu->r[31] + 0x000001E4u;
|
|
/* 02448EB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3);
|
|
/* 02448EB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u);
|
|
/* 02448EBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448EBC */ _t5 = _t4 & 0x00000001u;
|
|
/* 02448EBC */ if (_t5) goto L_02448EC0; else goto L_02448EF0;
|
|
L_02448EC0: ; // 0x2448ec0
|
|
/* 02448EC0 */ cpu->r[11] = 0x100A0000u;
|
|
/* 02448EC4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448EC8 */ cpu->r[10] = 0x100A0000u;
|
|
/* 02448ECC */ cpu->r[11] = cpu->r[11] + 0xFFFFE490u;
|
|
/* 02448ED0 */ cpu->r[0] = cpu->r[0] + 0xFFFFE67Cu;
|
|
/* 02448ED4 */ _t6 = cpu->r[10] + 0xFFFFE648u;
|
|
/* 02448ED4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t6);
|
|
/* 02448ED8 */ cpu->r[4] = 0x00000000u;
|
|
/* 02448EDC */ cpu->r[3] = cpu->r[31];
|
|
/* 02448EE0 */ _t7 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448EE0 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02448EE4 */ cpu->r[5] = cpu->r[1] + 0x00000008u;
|
|
/* 02448EE8 */ _t8 = cpu->r[1] + 0x00000008u;
|
|
/* 02448EE8 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02448EEC */ Gambit_fn_027ED2B0(cpu);
|
|
L_02448EF0: ; // 0x2448ef0
|
|
/* 02448EF0 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448EF4 */ cpu->r[4] = 0x00000000u;
|
|
/* 02448EF8 */ Gambit_fn_027EDF00(cpu);
|
|
/* 02448EFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02448F00 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448F00 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02448F00 */ if (_t10) goto L_02448F18; else goto L_02448F04;
|
|
L_02448F04: ; // 0x2448f04
|
|
/* 02448F04 */ _t11 = cpu->r[31] + 0x00000000u;
|
|
/* 02448F04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02448F08 */ _t12 = cpu->r[12] + 0x00000094u;
|
|
/* 02448F08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02448F0C */ cpu->ctr = cpu->r[0];
|
|
/* 02448F10 */ cpu->r[3] = cpu->r[31];
|
|
/* 02448F14 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_02448F18: ; // 0x2448f18
|
|
/* 02448F18 */ _t13 = cpu->r[1] + 0x0000001Cu;
|
|
/* 02448F18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13);
|
|
/* 02448F1C */ _t14 = cpu->r[1] + 0x00000014u;
|
|
/* 02448F1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t14);
|
|
/* 02448F20 */ cpu->lr = cpu->r[0];
|
|
/* 02448F24 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02448F28 */ return;
|
|
}
|
|
|
|
// fn_02448F2C @ 0x2448f2c
|
|
void Gambit_fn_02448F2C(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02448F2C: ; // 0x2448f2c
|
|
/* 02448F2C */ cpu->r[5] = 0xFFFFFFFDu;
|
|
/* 02448F30 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02448F30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448F30 */ cpu->r[1] = _t0;
|
|
/* 02448F34 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02448F38 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02448F3C */ _t1 = cpu->r[10] + 0x000076E8u;
|
|
/* 02448F3C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02448F3C */ cpu->r[10] = _t1;
|
|
/* 02448F40 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02448F44 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02448F44 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02448F48 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02448F4C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02448F50 */ _t3 = cpu->r[7] + 0x000076F8u;
|
|
/* 02448F50 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02448F50 */ cpu->r[7] = _t3;
|
|
/* 02448F54 */ _t4 = cpu->r[8] + 0x000076F0u;
|
|
/* 02448F54 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02448F54 */ cpu->r[8] = _t4;
|
|
/* 02448F58 */ cpu->r[0] = 0x00000002u;
|
|
/* 02448F5C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02448F5C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02448F60 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02448F64 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02448F64 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02448F68 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02448F6C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02448F6C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02448F70 */ _t8 = cpu->r[8] + 0x00007708u;
|
|
/* 02448F70 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02448F70 */ cpu->r[8] = _t8;
|
|
/* 02448F74 */ _t9 = cpu->r[12] + 0x00007700u;
|
|
/* 02448F74 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02448F74 */ cpu->r[12] = _t9;
|
|
/* 02448F78 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02448F78 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02448F7C */ cpu->r[0] = 0x00000004u;
|
|
/* 02448F80 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02448F80 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02448F84 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02448F88 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02448F88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02448F8C */ _t13 = cpu->r[11] + 0x00007710u;
|
|
/* 02448F8C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02448F90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02448F94 */ return;
|
|
}
|
|
|
|
// fn_02448F30 @ 0x2448f30
|
|
void Gambit_fn_02448F30(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02448F30: ; // 0x2448f30
|
|
/* 02448F30 */ _t0 = cpu->r[1] + 0xFFFFFFE8u;
|
|
/* 02448F30 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448F30 */ cpu->r[1] = _t0;
|
|
/* 02448F34 */ cpu->r[10] = 0x101E0000u;
|
|
/* 02448F38 */ cpu->r[11] = 0xFFFFFFFFu;
|
|
/* 02448F3C */ _t1 = cpu->r[10] + 0x000076E8u;
|
|
/* 02448F3C */ rbrew_write32(cpu->mem, _t1, cpu->r[5]);
|
|
/* 02448F3C */ cpu->r[10] = _t1;
|
|
/* 02448F40 */ cpu->r[7] = 0x101E0000u;
|
|
/* 02448F44 */ _t2 = cpu->r[10] + 0x00000004u;
|
|
/* 02448F44 */ rbrew_write32(cpu->mem, _t2, cpu->r[11]);
|
|
/* 02448F48 */ cpu->r[9] = 0xFFFFFFFEu;
|
|
/* 02448F4C */ cpu->r[8] = 0x101E0000u;
|
|
/* 02448F50 */ _t3 = cpu->r[7] + 0x000076F8u;
|
|
/* 02448F50 */ rbrew_write32(cpu->mem, _t3, cpu->r[11]);
|
|
/* 02448F50 */ cpu->r[7] = _t3;
|
|
/* 02448F54 */ _t4 = cpu->r[8] + 0x000076F0u;
|
|
/* 02448F54 */ rbrew_write32(cpu->mem, _t4, cpu->r[9]);
|
|
/* 02448F54 */ cpu->r[8] = _t4;
|
|
/* 02448F58 */ cpu->r[0] = 0x00000002u;
|
|
/* 02448F5C */ _t5 = cpu->r[8] + 0x00000004u;
|
|
/* 02448F5C */ rbrew_write32(cpu->mem, _t5, cpu->r[11]);
|
|
/* 02448F60 */ cpu->r[8] = 0x101E0000u;
|
|
/* 02448F64 */ _t6 = cpu->r[1] + 0x00000008u;
|
|
/* 02448F64 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02448F68 */ cpu->r[12] = 0x101E0000u;
|
|
/* 02448F6C */ _t7 = cpu->r[7] + 0x00000004u;
|
|
/* 02448F6C */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02448F70 */ _t8 = cpu->r[8] + 0x00007708u;
|
|
/* 02448F70 */ rbrew_write32(cpu->mem, _t8, cpu->r[5]);
|
|
/* 02448F70 */ cpu->r[8] = _t8;
|
|
/* 02448F74 */ _t9 = cpu->r[12] + 0x00007700u;
|
|
/* 02448F74 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]);
|
|
/* 02448F74 */ cpu->r[12] = _t9;
|
|
/* 02448F78 */ _t10 = cpu->r[12] + 0x00000004u;
|
|
/* 02448F78 */ rbrew_write32(cpu->mem, _t10, cpu->r[11]);
|
|
/* 02448F7C */ cpu->r[0] = 0x00000004u;
|
|
/* 02448F80 */ _t11 = cpu->r[8] + 0x00000004u;
|
|
/* 02448F80 */ rbrew_write32(cpu->mem, _t11, cpu->r[11]);
|
|
/* 02448F84 */ cpu->r[11] = 0x101E0000u;
|
|
/* 02448F88 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02448F88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02448F8C */ _t13 = cpu->r[11] + 0x00007710u;
|
|
/* 02448F8C */ rbrew_write32(cpu->mem, _t13, cpu->r[0]);
|
|
/* 02448F90 */ cpu->r[1] = cpu->r[1] + 0x00000018u;
|
|
/* 02448F94 */ return;
|
|
}
|
|
|
|
// fn_02448F98 @ 0x2448f98
|
|
void Gambit_fn_02448F98(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_02448F98: ; // 0x2448f98
|
|
/* 02448F98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02448F9C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448F9C */ _t1 = _t0 & 0x00000001u;
|
|
/* 02448F9C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02448F9C */ goto L_02448FA0;
|
|
L_02448FA0: ; // 0x2448fa0
|
|
/* 02448FA0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02448FA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02448FA4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448FA4 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02448FA4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02448FA4 */ goto L_02448FA8;
|
|
L_02448FA8: ; // 0x2448fa8
|
|
/* 02448FA8 */ 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_02448FAC @ 0x2448fac
|
|
void Gambit_fn_02448FAC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02448FAC: ; // 0x2448fac
|
|
/* 02448FAC */ cpu->r[0] = cpu->lr;
|
|
/* 02448FB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448FB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448FB0 */ cpu->r[1] = _t0;
|
|
/* 02448FB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448FB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448FB8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02448FB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02448FBC */ cpu->r[30] = cpu->r[3];
|
|
/* 02448FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02448FC0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02448FC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02448FC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02448FC8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448FC8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02448FC8 */ if (_t5) goto L_0244900C; else goto L_02448FCC;
|
|
L_02448FCC: ; // 0x2448fcc
|
|
/* 02448FCC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02448FD0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448FD4 */ cpu->r[11] = cpu->r[11] + 0xFFFFE7F8u;
|
|
/* 02448FD8 */ cpu->r[0] = cpu->r[0] + 0xFFFFE7E8u;
|
|
/* 02448FDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02448FE0 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02448FE0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02448FE4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448FE8 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02448FE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02448FEC */ cpu->r[0] = cpu->r[0] + 0xFFFFE808u;
|
|
/* 02448FF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02448FF4 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 02448FF4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02448FF8 */ Gambit_fn_02068798(cpu);
|
|
/* 02448FFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02448FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02449000 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02449000 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02449000 */ if (_t10) goto L_0244900C; else goto L_02449004;
|
|
L_02449004: ; // 0x2449004
|
|
/* 02449004 */ cpu->r[3] = cpu->r[30];
|
|
/* 02449008 */ Gambit_fn_02801BB0(cpu);
|
|
L_0244900C: ; // 0x244900c
|
|
/* 0244900C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0244900C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02449010 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02449010 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02449014 */ cpu->lr = cpu->r[0];
|
|
/* 02449018 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02449018 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0244901C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02449020 */ return;
|
|
}
|
|
|
|
// fn_02448FB0 @ 0x2448fb0
|
|
void Gambit_fn_02448FB0(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_02448FB0: ; // 0x2448fb0
|
|
/* 02448FB0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 02448FB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 02448FB0 */ cpu->r[1] = _t0;
|
|
/* 02448FB4 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02448FB4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 02448FB8 */ _t2 = cpu->r[1] + 0x00000008u;
|
|
/* 02448FB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]);
|
|
/* 02448FBC */ cpu->r[30] = cpu->r[3];
|
|
/* 02448FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u);
|
|
/* 02448FC0 */ cpu->r[31] = cpu->r[4];
|
|
/* 02448FC4 */ _t3 = cpu->r[1] + 0x00000014u;
|
|
/* 02448FC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02448FC8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02448FC8 */ _t5 = _t4 & 0x00000001u;
|
|
/* 02448FC8 */ if (_t5) goto L_0244900C; else goto L_02448FCC;
|
|
L_02448FCC: ; // 0x2448fcc
|
|
/* 02448FCC */ cpu->r[11] = 0x100A0000u;
|
|
/* 02448FD0 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448FD4 */ cpu->r[11] = cpu->r[11] + 0xFFFFE7F8u;
|
|
/* 02448FD8 */ cpu->r[0] = cpu->r[0] + 0xFFFFE7E8u;
|
|
/* 02448FDC */ cpu->r[3] = cpu->r[30];
|
|
/* 02448FE0 */ _t6 = cpu->r[30] + 0x0000000Cu;
|
|
/* 02448FE0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]);
|
|
/* 02448FE4 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02448FE8 */ _t7 = cpu->r[30] + 0x0000001Cu;
|
|
/* 02448FE8 */ rbrew_write32(cpu->mem, _t7, cpu->r[11]);
|
|
/* 02448FEC */ cpu->r[0] = cpu->r[0] + 0xFFFFE808u;
|
|
/* 02448FF0 */ cpu->r[4] = 0x00000000u;
|
|
/* 02448FF4 */ _t8 = cpu->r[30] + 0x000001C8u;
|
|
/* 02448FF4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]);
|
|
/* 02448FF8 */ Gambit_fn_02068798(cpu);
|
|
/* 02448FFC */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02448FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02449000 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02449000 */ _t10 = _t9 & 0x00000001u;
|
|
/* 02449000 */ if (_t10) goto L_0244900C; else goto L_02449004;
|
|
L_02449004: ; // 0x2449004
|
|
/* 02449004 */ cpu->r[3] = cpu->r[30];
|
|
/* 02449008 */ Gambit_fn_02801BB0(cpu);
|
|
L_0244900C: ; // 0x244900c
|
|
/* 0244900C */ _t11 = cpu->r[1] + 0x00000014u;
|
|
/* 0244900C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 02449010 */ _t12 = cpu->r[1] + 0x00000008u;
|
|
/* 02449010 */ cpu->r[30] = rbrew_read32(cpu->mem, _t12);
|
|
/* 02449014 */ cpu->lr = cpu->r[0];
|
|
/* 02449018 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 02449018 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0244901C */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 02449020 */ return;
|
|
}
|
|
|
|
// fn_02449024 @ 0x2449024
|
|
void Gambit_fn_02449024(CPUState* cpu) {
|
|
L_02449024: ; // 0x2449024
|
|
/* 02449024 */ return;
|
|
}
|
|
|
|
// fn_02449028 @ 0x2449028
|
|
void Gambit_fn_02449028(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02449028: ; // 0x2449028
|
|
/* 02449028 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02449028 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 0244902C */ return;
|
|
}
|
|
|
|
// fn_02449030 @ 0x2449030
|
|
void Gambit_fn_02449030(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_02449030: ; // 0x2449030
|
|
/* 02449030 */ _t0 = cpu->r[3] + 0x000001CCu;
|
|
/* 02449030 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02449034 */ return;
|
|
}
|
|
|
|
// fn_02449038 @ 0x2449038
|
|
void Gambit_fn_02449038(CPUState* cpu) {
|
|
L_02449038: ; // 0x2449038
|
|
/* 02449038 */ return;
|
|
}
|
|
|
|
// fn_0244903C @ 0x244903c
|
|
void Gambit_fn_0244903C(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_0244903C: ; // 0x244903c
|
|
/* 0244903C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02449040 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02449040 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02449040 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02449040 */ goto L_02449044;
|
|
L_02449044: ; // 0x2449044
|
|
/* 02449044 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02449044 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 02449048 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02449048 */ _t3 = _t2 & 0x00000001u;
|
|
/* 02449048 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02449048 */ goto L_0244904C;
|
|
L_0244904C: ; // 0x244904c
|
|
/* 0244904C */ 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_02449050 @ 0x2449050
|
|
void Gambit_fn_02449050(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02449050: ; // 0x2449050
|
|
/* 02449050 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 02449050 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02449054 */ _t1 = cpu->r[3] + 0x00000008u;
|
|
/* 02449054 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 02449058 */ cpu->r[12] = cpu->r[11] + cpu->r[12];
|
|
/* 0244905C */ cpu->r[11] = 0x10110000u;
|
|
/* 02449060 */ _t2 = cpu->r[11] + 0x00007399u;
|
|
/* 02449060 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2);
|
|
/* 02449064 */ _t3 = cpu->r[12] + 0xFFFFFFFFu;
|
|
/* 02449064 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]);
|
|
/* 02449068 */ return;
|
|
}
|
|
|
|
// fn_0244906C @ 0x244906c
|
|
void Gambit_fn_0244906C(CPUState* cpu) {
|
|
L_0244906C: ; // 0x244906c
|
|
/* 0244906C */ return;
|
|
}
|
|
|
|
// fn_02449070 @ 0x2449070
|
|
void Gambit_fn_02449070(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3;
|
|
|
|
L_02449070: ; // 0x2449070
|
|
/* 02449070 */ _t0 = cpu->r[3] + 0x00000008u;
|
|
/* 02449070 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 02449074 */ cpu->r[9] = 0x10110000u;
|
|
/* 02449078 */ _t1 = cpu->r[3] + 0x00000000u;
|
|
/* 02449078 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1);
|
|
/* 0244907C */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000001u, 0x00000000u, 0x0000001Eu);
|
|
/* 02449080 */ _t2 = cpu->r[9] + 0x0000739Au;
|
|
/* 02449080 */ cpu->r[0] = rbrew_read16(cpu->mem, _t2);
|
|
/* 02449084 */ cpu->r[12] = cpu->r[12] + cpu->r[10];
|
|
/* 02449088 */ _t3 = cpu->r[12] + 0xFFFFFFFEu;
|
|
/* 02449088 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[0]);
|
|
/* 0244908C */ return;
|
|
}
|
|
|
|
// fn_02449090 @ 0x2449090
|
|
void Gambit_fn_02449090(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_02449090: ; // 0x2449090
|
|
/* 02449090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 02449094 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 02449094 */ _t1 = _t0 & 0x00000001u;
|
|
/* 02449094 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 02449094 */ goto L_02449098;
|
|
L_02449098: ; // 0x2449098
|
|
/* 02449098 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 02449098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0244909C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244909C */ _t3 = _t2 & 0x00000001u;
|
|
/* 0244909C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 0244909C */ goto L_024490A0;
|
|
L_024490A0: ; // 0x24490a0
|
|
/* 024490A0 */ 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_024490A4 @ 0x24490a4
|
|
void Gambit_fn_024490A4(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_024490A4: ; // 0x24490a4
|
|
/* 024490A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u);
|
|
/* 024490A8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024490A8 */ _t1 = _t0 & 0x00000001u;
|
|
/* 024490A8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024490A8 */ goto L_024490AC;
|
|
L_024490AC: ; // 0x24490ac
|
|
/* 024490AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu);
|
|
/* 024490AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 024490B0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024490B0 */ _t3 = _t2 & 0x00000001u;
|
|
/* 024490B0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; }
|
|
/* 024490B0 */ goto L_024490B4;
|
|
L_024490B4: ; // 0x24490b4
|
|
/* 024490B4 */ 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_024490B8 @ 0x24490b8
|
|
void Gambit_fn_024490B8(CPUState* cpu) {
|
|
uint32_t _t0;
|
|
|
|
L_024490B8: ; // 0x24490b8
|
|
/* 024490B8 */ _t0 = cpu->r[3] + 0x00000004u;
|
|
/* 024490B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024490BC */ return;
|
|
}
|
|
|
|
// fn_024490C0 @ 0x24490c0
|
|
void Gambit_fn_024490C0(CPUState* cpu) {
|
|
uint32_t _t0, _t1;
|
|
|
|
L_024490C0: ; // 0x24490c0
|
|
/* 024490C0 */ _t0 = cpu->r[3] + 0x00000000u;
|
|
/* 024490C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024490C4 */ _t1 = cpu->r[12] + 0x0000000Cu;
|
|
/* 024490C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1);
|
|
/* 024490C8 */ cpu->ctr = cpu->r[0];
|
|
/* 024490CC */ rbrew_dispatch(cpu, cpu->ctr); return;
|
|
}
|
|
|
|
// fn_024490D0 @ 0x24490d0
|
|
void Gambit_fn_024490D0(CPUState* cpu) {
|
|
L_024490D0: ; // 0x24490d0
|
|
/* 024490D0 */ return;
|
|
}
|
|
|
|
// fn_024490D4 @ 0x24490d4
|
|
void Gambit_fn_024490D4(CPUState* cpu) {
|
|
L_024490D4: ; // 0x24490d4
|
|
/* 024490D4 */ cpu->r[3] = 0x00000000u;
|
|
/* 024490D8 */ return;
|
|
}
|
|
|
|
// fn_024490DC @ 0x24490dc
|
|
void Gambit_fn_024490DC(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11;
|
|
|
|
L_024490DC: ; // 0x24490dc
|
|
/* 024490DC */ cpu->r[9] = 0x101D0000u;
|
|
/* 024490E0 */ _t0 = cpu->r[9] + 0xFFFFDBA0u;
|
|
/* 024490E0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0);
|
|
/* 024490E0 */ cpu->r[9] = _t0;
|
|
/* 024490E4 */ cpu->r[12] = 0x101D0000u;
|
|
/* 024490E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u);
|
|
/* 024490EC */ cpu->r[12] = cpu->r[12] + 0xFFFFED90u;
|
|
/* 024490F0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 024490F0 */ _t2 = _t1 & 0x00000001u;
|
|
/* 024490F0 */ if (_t2) goto L_024490F4; else goto L_02449108;
|
|
L_024490F4: ; // 0x24490f4
|
|
/* 024490F4 */ cpu->r[7] = 0x100A0000u;
|
|
/* 024490F8 */ cpu->r[0] = 0x00000001u;
|
|
/* 024490FC */ cpu->r[7] = cpu->r[7] + 0xFFFFE520u;
|
|
/* 02449100 */ _t3 = cpu->r[9] + 0x00000000u;
|
|
/* 02449100 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]);
|
|
/* 02449104 */ _t4 = cpu->r[12] + 0x00000000u;
|
|
/* 02449104 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]);
|
|
L_02449108: ; // 0x2449108
|
|
/* 02449108 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]);
|
|
/* 0244910C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244910C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0244910C */ if (_t6) goto L_02449110; else goto L_02449118;
|
|
L_02449110: ; // 0x2449110
|
|
/* 02449110 */ cpu->r[3] = 0x00000001u;
|
|
/* 02449114 */ return;
|
|
L_02449118: ; // 0x2449118
|
|
/* 02449118 */ cpu->r[7] = 0x101D0000u;
|
|
/* 0244911C */ _t7 = cpu->r[7] + 0xFFFFDB98u;
|
|
/* 0244911C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7);
|
|
/* 0244911C */ cpu->r[7] = _t7;
|
|
/* 02449120 */ cpu->r[11] = 0x101D0000u;
|
|
/* 02449124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u);
|
|
/* 02449128 */ cpu->r[11] = cpu->r[11] + 0xFFFFED94u;
|
|
/* 0244912C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0244912C */ _t9 = _t8 & 0x00000001u;
|
|
/* 0244912C */ if (_t9) goto L_02449130; else goto L_02449144;
|
|
L_02449130: ; // 0x2449130
|
|
/* 02449130 */ cpu->r[0] = 0x100A0000u;
|
|
/* 02449134 */ cpu->r[9] = 0x00000001u;
|
|
/* 02449138 */ cpu->r[0] = cpu->r[0] + 0xFFFFE480u;
|
|
/* 0244913C */ _t10 = cpu->r[7] + 0x00000000u;
|
|
/* 0244913C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]);
|
|
/* 02449140 */ _t11 = cpu->r[11] + 0x00000000u;
|
|
/* 02449140 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]);
|
|
L_02449144: ; // 0x2449144
|
|
/* 02449144 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11];
|
|
/* 02449148 */ cpu->r[8] = rbrew_clz32(cpu->r[0]);
|
|
/* 0244914C */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu);
|
|
/* 02449150 */ return;
|
|
}
|
|
|
|
// fn_02449154 @ 0x2449154
|
|
void Gambit_fn_02449154(CPUState* cpu) {
|
|
L_02449154: ; // 0x2449154
|
|
/* 02449154 */ return;
|
|
}
|
|
|
|
// fn_02449158 @ 0x2449158
|
|
void Gambit_fn_02449158(CPUState* cpu) {
|
|
L_02449158: ; // 0x2449158
|
|
/* 02449158 */ return;
|
|
}
|
|
|
|
// fn_0244915C @ 0x244915c
|
|
void Gambit_fn_0244915C(CPUState* cpu) {
|
|
L_0244915C: ; // 0x244915c
|
|
/* 0244915C */ cpu->r[3] = 0x00000000u;
|
|
/* 02449160 */ return;
|
|
}
|
|
|
|
// fn_02449164 @ 0x2449164
|
|
void Gambit_fn_02449164(CPUState* cpu) {
|
|
L_02449164: ; // 0x2449164
|
|
/* 02449164 */ cpu->r[3] = 0x00000000u;
|
|
/* 02449168 */ return;
|
|
}
|
|
|
|
// fn_0244916C @ 0x244916c
|
|
void Gambit_fn_0244916C(CPUState* cpu) {
|
|
L_0244916C: ; // 0x244916c
|
|
/* 0244916C */ return;
|
|
}
|
|
|
|
// fn_02449170 @ 0x2449170
|
|
void Gambit_fn_02449170(CPUState* cpu) {
|
|
L_02449170: ; // 0x2449170
|
|
/* 02449170 */ return;
|
|
}
|
|
|
|
// fn_02449174 @ 0x2449174
|
|
void Gambit_fn_02449174(CPUState* cpu) {
|
|
L_02449174: ; // 0x2449174
|
|
/* 02449174 */ return;
|
|
}
|
|
|
|
// fn_02449178 @ 0x2449178
|
|
void Gambit_fn_02449178(CPUState* cpu) {
|
|
L_02449178: ; // 0x2449178
|
|
/* 02449178 */ return;
|
|
}
|
|
|
|
// fn_0244917C @ 0x244917c
|
|
void Gambit_fn_0244917C(CPUState* cpu) {
|
|
L_0244917C: ; // 0x244917c
|
|
/* 0244917C */ return;
|
|
}
|
|
|
|
// fn_02449180 @ 0x2449180
|
|
void Gambit_fn_02449180(CPUState* cpu) {
|
|
L_02449180: ; // 0x2449180
|
|
/* 02449180 */ return;
|
|
}
|
|
|
|
// fn_02449184 @ 0x2449184
|
|
void Gambit_fn_02449184(CPUState* cpu) {
|
|
L_02449184: ; // 0x2449184
|
|
/* 02449184 */ return;
|
|
}
|
|
|
|
// fn_02449188 @ 0x2449188
|
|
void Gambit_fn_02449188(CPUState* cpu) {
|
|
L_02449188: ; // 0x2449188
|
|
/* 02449188 */ return;
|
|
}
|
|
|
|
// fn_0244918C @ 0x244918c
|
|
void Gambit_fn_0244918C(CPUState* cpu) {
|
|
L_0244918C: ; // 0x244918c
|
|
/* 0244918C */ return;
|
|
}
|
|
|
|
// fn_02449190 @ 0x2449190
|
|
void Gambit_fn_02449190(CPUState* cpu) {
|
|
L_02449190: ; // 0x2449190
|
|
/* 02449190 */ cpu->r[3] = 0x00000001u;
|
|
/* 02449194 */ return;
|
|
}
|
|
|
|
// fn_02449198 @ 0x2449198
|
|
void Gambit_fn_02449198(CPUState* cpu) {
|
|
uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13;
|
|
|
|
L_0243A778: ; // 0x243a778
|
|
/* 0243A778 */ cpu->r[0] = cpu->lr;
|
|
/* 0243A77C */ _t0 = cpu->r[1] + 0xFFFFFFF0u;
|
|
/* 0243A77C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]);
|
|
/* 0243A77C */ cpu->r[1] = _t0;
|
|
/* 0243A780 */ _t1 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0243A780 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]);
|
|
/* 0243A784 */ cpu->r[31] = cpu->r[3];
|
|
/* 0243A788 */ _t2 = cpu->r[1] + 0x00000014u;
|
|
/* 0243A788 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]);
|
|
/* 0243A78C */ _t3 = cpu->r[31] + 0x00000010u;
|
|
/* 0243A78C */ cpu->r[0] = rbrew_read8(cpu->mem, _t3);
|
|
/* 0243A790 */ cpu->r[12] = 0x00000000u;
|
|
/* 0243A794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u);
|
|
/* 0243A798 */ _t4 = cpu->r[31] + 0x00000011u;
|
|
/* 0243A798 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[12]);
|
|
/* 0243A79C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0243A79C */ _t6 = _t5 & 0x00000001u;
|
|
/* 0243A79C */ if (_t6) goto L_0243A7C4; else goto L_0243A7A0;
|
|
L_0243A7A0: ; // 0x243a7a0
|
|
/* 0243A7A0 */ _t7 = cpu->r[31] + 0x0000000Cu;
|
|
/* 0243A7A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t7);
|
|
/* 0243A7A4 */ /* nop */
|
|
/* 0243A7A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0xFFFFFFFFu);
|
|
/* 0243A7AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u);
|
|
/* 0243A7AC */ _t9 = _t8 & 0x00000001u;
|
|
/* 0243A7AC */ if (_t9) goto L_0243A7B0; else goto L_0243A7C4;
|
|
L_0243A7B0: ; // 0x243a7b0
|
|
/* 0243A7B0 */ _t10 = cpu->r[31] + 0x00000004u;
|
|
/* 0243A7B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10);
|
|
/* 0243A7B4 */ _t11 = cpu->r[12] + 0x00000014u;
|
|
/* 0243A7B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11);
|
|
/* 0243A7B8 */ cpu->ctr = cpu->r[0];
|
|
/* 0243A7BC */ cpu->r[3] = cpu->r[31];
|
|
/* 0243A7C0 */ rbrew_call_indirect(cpu, cpu->ctr);
|
|
L_0243A7C4: ; // 0x243a7c4
|
|
/* 0243A7C4 */ cpu->r[3] = cpu->r[31];
|
|
/* 0243A7C8 */ Gambit_fn_0243A6F0(cpu);
|
|
/* 0243A7CC */ cpu->r[3] = cpu->r[31];
|
|
/* 0243A7D0 */ Gambit_fn_027FC37C(cpu);
|
|
/* 0243A7D4 */ _t12 = cpu->r[1] + 0x00000014u;
|
|
/* 0243A7D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12);
|
|
/* 0243A7D8 */ _t13 = cpu->r[1] + 0x0000000Cu;
|
|
/* 0243A7D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13);
|
|
/* 0243A7DC */ cpu->lr = cpu->r[0];
|
|
/* 0243A7E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u;
|
|
/* 0243A7E4 */ return;
|
|
L_02449198: ; // 0x2449198
|
|
/* 02449198 */ cpu->r[3] = cpu->r[3] + 0x000001DCu;
|
|
/* 0244919C */ goto L_0243A778;
|
|
}
|
|
|