// Generated by RebrewU -- do not edit #include #include #include #include "Gambit.h" // fn_027B3530 @ 0x27b3530 void Gambit_fn_027B3530(CPUState* cpu) { L_027B3530: ; // 0x27b3530 /* 027B3530 */ return; } // fn_027B3534 @ 0x27b3534 void Gambit_fn_027B3534(CPUState* cpu) { L_027B3534: ; // 0x27b3534 /* 027B3534 */ return; } // fn_027B3538 @ 0x27b3538 void Gambit_fn_027B3538(CPUState* cpu) { L_027B3538: ; // 0x27b3538 /* 027B3538 */ return; } // fn_027B353C @ 0x27b353c void Gambit_fn_027B353C(CPUState* cpu) { uint32_t _t0; L_027B353C: ; // 0x27b353c /* 027B353C */ cpu->r[0] = 0x0000000Au; /* 027B3540 */ _t0 = cpu->r[3] + 0x0000005Cu; /* 027B3540 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027B3544 */ return; } // fn_027B3548 @ 0x27b3548 void Gambit_fn_027B3548(CPUState* cpu) { uint32_t _t0; L_027B3548: ; // 0x27b3548 /* 027B3548 */ _t0 = cpu->r[3] + 0x00000090u; /* 027B3548 */ cpu->r[0] = rbrew_read16(cpu->mem, _t0); /* 027B354C */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu); /* 027B3550 */ return; } // fn_027B3554 @ 0x27b3554 void Gambit_fn_027B3554(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B3554: ; // 0x27b3554 /* 027B3554 */ cpu->r[12] = 0x101D0000u; /* 027B3558 */ _t0 = cpu->r[12] + 0xFFFFDB08u; /* 027B3558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B355C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B3560 */ cpu->r[12] = 0x101D0000u; /* 027B3564 */ cpu->r[12] = cpu->r[12] + 0xFFFFE28Cu; /* 027B3568 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3568 */ _t2 = _t1 & 0x00000001u; /* 027B3568 */ if (_t2) goto L_027B356C; else goto L_027B3584; L_027B356C: ; // 0x27b356c /* 027B356C */ cpu->r[0] = 0x10110000u; /* 027B3570 */ cpu->r[9] = 0x00000001u; /* 027B3574 */ cpu->r[8] = 0x101D0000u; /* 027B3578 */ cpu->r[0] = cpu->r[0] + 0xFFFFAACCu; /* 027B357C */ _t3 = cpu->r[8] + 0xFFFFDB08u; /* 027B357C */ rbrew_write32(cpu->mem, _t3, cpu->r[9]); /* 027B3580 */ _t4 = cpu->r[12] + 0x00000000u; /* 027B3580 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); L_027B3584: ; // 0x27b3584 /* 027B3584 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]); /* 027B3588 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3588 */ _t6 = _t5 & 0x00000001u; /* 027B3588 */ if (_t6) goto L_027B358C; else goto L_027B3594; L_027B358C: ; // 0x27b358c /* 027B358C */ cpu->r[3] = 0x00000001u; /* 027B3590 */ return; L_027B3594: ; // 0x27b3594 /* 027B3594 */ cpu->r[11] = 0x101D0000u; /* 027B3598 */ _t7 = cpu->r[11] + 0xFFFFD864u; /* 027B3598 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027B3598 */ cpu->r[11] = _t7; /* 027B359C */ cpu->r[10] = 0x101D0000u; /* 027B35A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B35A4 */ cpu->r[10] = cpu->r[10] + 0xFFFFE294u; /* 027B35A8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B35A8 */ _t9 = _t8 & 0x00000001u; /* 027B35A8 */ if (_t9) goto L_027B35AC; else goto L_027B35C0; L_027B35AC: ; // 0x27b35ac /* 027B35AC */ cpu->r[12] = 0x10110000u; /* 027B35B0 */ cpu->r[9] = 0x00000001u; /* 027B35B4 */ cpu->r[12] = cpu->r[12] + 0xFFFFAA8Cu; /* 027B35B8 */ _t10 = cpu->r[11] + 0x00000000u; /* 027B35B8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027B35BC */ _t11 = cpu->r[10] + 0x00000000u; /* 027B35BC */ rbrew_write32(cpu->mem, _t11, cpu->r[12]); L_027B35C0: ; // 0x27b35c0 /* 027B35C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]); /* 027B35C4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B35C4 */ _t13 = _t12 & 0x00000001u; /* 027B35C4 */ if (_t13) goto L_027B35C8; else goto L_027B35D0; L_027B35C8: ; // 0x27b35c8 /* 027B35C8 */ cpu->r[0] = 0x00000001u; /* 027B35CC */ goto L_027B3608; L_027B35D0: ; // 0x27b35d0 /* 027B35D0 */ cpu->r[8] = 0x101D0000u; /* 027B35D4 */ _t14 = cpu->r[8] + 0xFFFFD860u; /* 027B35D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B35D4 */ cpu->r[8] = _t14; /* 027B35D8 */ cpu->r[11] = 0x101D0000u; /* 027B35DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B35E0 */ cpu->r[11] = cpu->r[11] + 0xFFFFE290u; /* 027B35E4 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B35E4 */ _t16 = _t15 & 0x00000001u; /* 027B35E4 */ if (_t16) goto L_027B35E8; else goto L_027B35FC; L_027B35E8: ; // 0x27b35e8 /* 027B35E8 */ cpu->r[10] = 0x10110000u; /* 027B35EC */ cpu->r[9] = 0x00000001u; /* 027B35F0 */ cpu->r[10] = cpu->r[10] + 0xFFFFAA3Cu; /* 027B35F4 */ _t17 = cpu->r[8] + 0x00000000u; /* 027B35F4 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]); /* 027B35F8 */ _t18 = cpu->r[11] + 0x00000000u; /* 027B35F8 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); L_027B35FC: ; // 0x27b35fc /* 027B35FC */ cpu->r[12] = cpu->r[4] ^ cpu->r[11]; /* 027B3600 */ cpu->r[0] = rbrew_clz32(cpu->r[12]); /* 027B3604 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu); L_027B3608: ; // 0x27b3608 /* 027B3608 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027B360C */ return; } // fn_027B3610 @ 0x27b3610 void Gambit_fn_027B3610(CPUState* cpu) { L_027B3610: ; // 0x27b3610 /* 027B3610 */ cpu->r[3] = 0x00000005u; /* 027B3614 */ return; } // fn_027B361C @ 0x27b361c void Gambit_fn_027B361C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B361C: ; // 0x27b361c /* 027B361C */ cpu->r[12] = 0x101D0000u; /* 027B3620 */ _t0 = cpu->r[12] + 0xFFFFDB0Cu; /* 027B3620 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B3624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B3628 */ cpu->r[12] = 0x101D0000u; /* 027B362C */ cpu->r[12] = cpu->r[12] + 0x000014D0u; /* 027B3630 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3630 */ _t2 = _t1 & 0x00000001u; /* 027B3630 */ if (_t2) goto L_027B3634; else goto L_027B364C; L_027B3634: ; // 0x27b3634 /* 027B3634 */ cpu->r[0] = 0x10110000u; /* 027B3638 */ cpu->r[9] = 0x00000001u; /* 027B363C */ cpu->r[8] = 0x101D0000u; /* 027B3640 */ cpu->r[0] = cpu->r[0] + 0xFFFFAACCu; /* 027B3644 */ _t3 = cpu->r[8] + 0xFFFFDB0Cu; /* 027B3644 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]); /* 027B3648 */ _t4 = cpu->r[12] + 0x00000000u; /* 027B3648 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); L_027B364C: ; // 0x27b364c /* 027B364C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]); /* 027B3650 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3650 */ _t6 = _t5 & 0x00000001u; /* 027B3650 */ if (_t6) goto L_027B3654; else goto L_027B365C; L_027B3654: ; // 0x27b3654 /* 027B3654 */ cpu->r[3] = 0x00000001u; /* 027B3658 */ return; L_027B365C: ; // 0x27b365c /* 027B365C */ cpu->r[11] = 0x101D0000u; /* 027B3660 */ _t7 = cpu->r[11] + 0xFFFFD864u; /* 027B3660 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027B3660 */ cpu->r[11] = _t7; /* 027B3664 */ cpu->r[10] = 0x101D0000u; /* 027B3668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B366C */ cpu->r[10] = cpu->r[10] + 0xFFFFE294u; /* 027B3670 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3670 */ _t9 = _t8 & 0x00000001u; /* 027B3670 */ if (_t9) goto L_027B3674; else goto L_027B3688; L_027B3674: ; // 0x27b3674 /* 027B3674 */ cpu->r[12] = 0x10110000u; /* 027B3678 */ cpu->r[9] = 0x00000001u; /* 027B367C */ cpu->r[12] = cpu->r[12] + 0xFFFFAA8Cu; /* 027B3680 */ _t10 = cpu->r[11] + 0x00000000u; /* 027B3680 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027B3684 */ _t11 = cpu->r[10] + 0x00000000u; /* 027B3684 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]); L_027B3688: ; // 0x27b3688 /* 027B3688 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]); /* 027B368C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B368C */ _t13 = _t12 & 0x00000001u; /* 027B368C */ if (_t13) goto L_027B3690; else goto L_027B3698; L_027B3690: ; // 0x27b3690 /* 027B3690 */ cpu->r[0] = 0x00000001u; /* 027B3694 */ goto L_027B36D0; L_027B3698: ; // 0x27b3698 /* 027B3698 */ cpu->r[8] = 0x101D0000u; /* 027B369C */ _t14 = cpu->r[8] + 0xFFFFD860u; /* 027B369C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B369C */ cpu->r[8] = _t14; /* 027B36A0 */ cpu->r[11] = 0x101D0000u; /* 027B36A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B36A8 */ cpu->r[11] = cpu->r[11] + 0xFFFFE290u; /* 027B36AC */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B36AC */ _t16 = _t15 & 0x00000001u; /* 027B36AC */ if (_t16) goto L_027B36B0; else goto L_027B36C4; L_027B36B0: ; // 0x27b36b0 /* 027B36B0 */ cpu->r[10] = 0x10110000u; /* 027B36B4 */ cpu->r[9] = 0x00000001u; /* 027B36B8 */ cpu->r[10] = cpu->r[10] + 0xFFFFAA3Cu; /* 027B36BC */ _t17 = cpu->r[8] + 0x00000000u; /* 027B36BC */ rbrew_write32(cpu->mem, _t17, cpu->r[9]); /* 027B36C0 */ _t18 = cpu->r[11] + 0x00000000u; /* 027B36C0 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); L_027B36C4: ; // 0x27b36c4 /* 027B36C4 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11]; /* 027B36C8 */ cpu->r[0] = rbrew_clz32(cpu->r[12]); /* 027B36CC */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu); L_027B36D0: ; // 0x27b36d0 /* 027B36D0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027B36D4 */ return; } // fn_027B36D8 @ 0x27b36d8 void Gambit_fn_027B36D8(CPUState* cpu) { L_027B36D8: ; // 0x27b36d8 /* 027B36D8 */ cpu->r[3] = 0x00000001u; /* 027B36DC */ return; } // fn_027B36E0 @ 0x27b36e0 void Gambit_fn_027B36E0(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_027B36E0: ; // 0x27b36e0 /* 027B36E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B36E4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B36E4 */ _t1 = _t0 & 0x00000001u; /* 027B36E4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B36E4 */ goto L_027B36E8; L_027B36E8: ; // 0x27b36e8 /* 027B36E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B36E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B36EC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B36EC */ _t3 = _t2 & 0x00000001u; /* 027B36EC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B36EC */ goto L_027B36F0; L_027B36F0: ; // 0x27b36f0 /* 027B36F0 */ 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_027B36F4 @ 0x27b36f4 void Gambit_fn_027B36F4(CPUState* cpu) { L_027B36F4: ; // 0x27b36f4 /* 027B36F4 */ return; } // fn_027B36F8 @ 0x27b36f8 void Gambit_fn_027B36F8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46; L_027B36F8: ; // 0x27b36f8 /* 027B36F8 */ _t0 = cpu->r[1] + 0xFFFFFFB8u; /* 027B36F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B36F8 */ cpu->r[1] = _t0; /* 027B36FC */ cpu->r[0] = cpu->lr; /* 027B3700 */ _t1 = cpu->r[1] + 0x00000040u; /* 027B3700 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B3704 */ cpu->r[6] = 0x10110000u; /* 027B3708 */ cpu->r[9] = 0x00000000u; /* 027B370C */ _t2 = cpu->r[1] + 0x00000044u; /* 027B370C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B3710 */ cpu->r[6] = cpu->r[6] + 0xFFFFADB0u; /* 027B3714 */ cpu->r[30] = 0x10110000u; /* 027B3718 */ _t3 = cpu->r[1] + 0x00000024u; /* 027B3718 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]); /* 027B371C */ cpu->r[30] = cpu->r[30] + 0xFFFFAD78u; /* 027B3720 */ _t4 = cpu->r[1] + 0x00000010u; /* 027B3720 */ rbrew_write32(cpu->mem, _t4, cpu->r[6]); /* 027B3724 */ cpu->r[4] = 0x00000100u; /* 027B3728 */ _t5 = cpu->r[1] + 0x00000014u; /* 027B3728 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]); /* 027B372C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B3730 */ _t6 = cpu->r[1] + 0x00000020u; /* 027B3730 */ rbrew_write32(cpu->mem, _t6, cpu->r[9]); /* 027B3734 */ cpu->r[5] = 0x00000001u; /* 027B3738 */ _t7 = cpu->r[1] + 0x0000004Cu; /* 027B3738 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027B373C */ Gambit_fn_027E273C(cpu); /* 027B3740 */ cpu->r[31] = 0x10110000u; /* 027B3744 */ _t8 = cpu->r[1] + 0x00000014u; /* 027B3744 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027B3748 */ cpu->r[4] = cpu->r[1] + 0x00000010u; /* 027B374C */ cpu->r[31] = cpu->r[31] + 0xFFFFADC0u; /* 027B3750 */ cpu->r[5] = cpu->r[1] + 0x00000020u; /* 027B3754 */ _t9 = cpu->r[1] + 0x00000010u; /* 027B3754 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]); /* 027B3758 */ Gambit_fn_027E2C10(cpu); /* 027B375C */ cpu->r[4] = cpu->r[3]; /* 027B3760 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B3764 */ Gambit_fn_0295C0A8(cpu); /* 027B3768 */ cpu->r[3] = 0x00000017u; /* 027B376C */ Gambit_fn_027E6E4C(cpu); /* 027B3770 */ _t10 = cpu->r[3] + 0x00000094u; /* 027B3770 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10); /* 027B3774 */ _t11 = cpu->r[6] + 0x00000024u; /* 027B3774 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11); /* 027B3778 */ _t12 = cpu->r[11] + 0x00000054u; /* 027B3778 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027B377C */ cpu->ctr = cpu->r[12]; /* 027B3780 */ _t13 = cpu->r[1] + 0x00000008u; /* 027B3780 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B3784 */ _t14 = cpu->r[1] + 0x00000028u; /* 027B3784 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027B3788 */ cpu->r[3] = cpu->r[6] + 0x00000004u; /* 027B378C */ cpu->r[4] = cpu->r[1] + 0x00000028u; /* 027B3790 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3794 */ cpu->r[3] = 0x00000018u; /* 027B3798 */ Gambit_fn_027E6E4C(cpu); /* 027B379C */ _t15 = cpu->r[3] + 0x00000094u; /* 027B379C */ cpu->r[6] = rbrew_read32(cpu->mem, _t15); /* 027B37A0 */ _t16 = cpu->r[6] + 0x00000024u; /* 027B37A0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16); /* 027B37A4 */ _t17 = cpu->r[11] + 0x00000054u; /* 027B37A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17); /* 027B37A8 */ cpu->ctr = cpu->r[12]; /* 027B37AC */ _t18 = cpu->r[1] + 0x00000008u; /* 027B37AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027B37B0 */ _t19 = cpu->r[1] + 0x0000002Cu; /* 027B37B0 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]); /* 027B37B4 */ cpu->r[3] = cpu->r[6] + 0x00000004u; /* 027B37B8 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu; /* 027B37BC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B37C0 */ cpu->r[3] = 0x00000019u; /* 027B37C4 */ Gambit_fn_027E6E4C(cpu); /* 027B37C8 */ _t20 = cpu->r[3] + 0x00000094u; /* 027B37C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20); /* 027B37CC */ _t21 = cpu->r[6] + 0x00000024u; /* 027B37CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t21); /* 027B37D0 */ _t22 = cpu->r[11] + 0x00000054u; /* 027B37D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22); /* 027B37D4 */ cpu->ctr = cpu->r[12]; /* 027B37D8 */ _t23 = cpu->r[1] + 0x00000008u; /* 027B37D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B37DC */ _t24 = cpu->r[1] + 0x00000030u; /* 027B37DC */ rbrew_write32(cpu->mem, _t24, cpu->r[0]); /* 027B37E0 */ cpu->r[3] = cpu->r[6] + 0x00000004u; /* 027B37E4 */ cpu->r[4] = cpu->r[1] + 0x00000030u; /* 027B37E8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B37EC */ cpu->r[0] = 0x10110000u; /* 027B37F0 */ _t25 = cpu->r[1] + 0x0000001Cu; /* 027B37F0 */ rbrew_write32(cpu->mem, _t25, cpu->r[30]); /* 027B37F4 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027B37F8 */ cpu->r[0] = cpu->r[0] + 0xFFFFADCCu; /* 027B37FC */ cpu->r[5] = 0x00000001u; /* 027B3800 */ cpu->r[4] = 0x00000100u; /* 027B3804 */ _t26 = cpu->r[1] + 0x00000018u; /* 027B3804 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]); /* 027B3808 */ Gambit_fn_027E273C(cpu); /* 027B380C */ cpu->r[4] = cpu->r[1] + 0x00000018u; /* 027B3810 */ _t27 = cpu->r[1] + 0x0000001Cu; /* 027B3810 */ rbrew_write32(cpu->mem, _t27, cpu->r[30]); /* 027B3814 */ cpu->r[5] = cpu->r[1] + 0x00000020u; /* 027B3818 */ _t28 = cpu->r[1] + 0x00000018u; /* 027B3818 */ rbrew_write32(cpu->mem, _t28, cpu->r[31]); /* 027B381C */ Gambit_fn_027E2C10(cpu); /* 027B3820 */ cpu->r[4] = cpu->r[3]; /* 027B3824 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu; /* 027B3828 */ Gambit_fn_0295C0A8(cpu); /* 027B382C */ cpu->r[3] = 0x00000017u; /* 027B3830 */ Gambit_fn_027E6E4C(cpu); /* 027B3834 */ _t29 = cpu->r[3] + 0x00000094u; /* 027B3834 */ cpu->r[6] = rbrew_read32(cpu->mem, _t29); /* 027B3838 */ _t30 = cpu->r[6] + 0x00000024u; /* 027B3838 */ cpu->r[7] = rbrew_read32(cpu->mem, _t30); /* 027B383C */ _t31 = cpu->r[7] + 0x00000054u; /* 027B383C */ cpu->r[8] = rbrew_read32(cpu->mem, _t31); /* 027B3840 */ cpu->ctr = cpu->r[8]; /* 027B3844 */ _t32 = cpu->r[1] + 0x0000000Cu; /* 027B3844 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32); /* 027B3848 */ _t33 = cpu->r[1] + 0x00000034u; /* 027B3848 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]); /* 027B384C */ cpu->r[3] = cpu->r[6] + 0x00000004u; /* 027B3850 */ cpu->r[4] = cpu->r[1] + 0x00000034u; /* 027B3854 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3858 */ cpu->r[3] = 0x0000001Au; /* 027B385C */ Gambit_fn_027E6E4C(cpu); /* 027B3860 */ _t34 = cpu->r[3] + 0x00000094u; /* 027B3860 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34); /* 027B3864 */ _t35 = cpu->r[6] + 0x00000024u; /* 027B3864 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35); /* 027B3868 */ _t36 = cpu->r[12] + 0x00000054u; /* 027B3868 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36); /* 027B386C */ cpu->ctr = cpu->r[0]; /* 027B3870 */ _t37 = cpu->r[1] + 0x0000000Cu; /* 027B3870 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37); /* 027B3874 */ _t38 = cpu->r[1] + 0x00000038u; /* 027B3874 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]); /* 027B3878 */ cpu->r[3] = cpu->r[6] + 0x00000004u; /* 027B387C */ cpu->r[4] = cpu->r[1] + 0x00000038u; /* 027B3880 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3884 */ cpu->r[3] = 0x0000001Bu; /* 027B3888 */ Gambit_fn_027E6E4C(cpu); /* 027B388C */ _t39 = cpu->r[3] + 0x00000094u; /* 027B388C */ cpu->r[6] = rbrew_read32(cpu->mem, _t39); /* 027B3890 */ _t40 = cpu->r[6] + 0x00000024u; /* 027B3890 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40); /* 027B3894 */ _t41 = cpu->r[8] + 0x00000054u; /* 027B3894 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41); /* 027B3898 */ cpu->ctr = cpu->r[9]; /* 027B389C */ _t42 = cpu->r[1] + 0x0000000Cu; /* 027B389C */ cpu->r[10] = rbrew_read32(cpu->mem, _t42); /* 027B38A0 */ _t43 = cpu->r[1] + 0x0000003Cu; /* 027B38A0 */ rbrew_write32(cpu->mem, _t43, cpu->r[10]); /* 027B38A4 */ cpu->r[3] = cpu->r[6] + 0x00000004u; /* 027B38A8 */ cpu->r[4] = cpu->r[1] + 0x0000003Cu; /* 027B38AC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B38B0 */ _t44 = cpu->r[1] + 0x0000004Cu; /* 027B38B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44); /* 027B38B4 */ _t45 = cpu->r[1] + 0x00000044u; /* 027B38B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t45); /* 027B38B8 */ cpu->lr = cpu->r[0]; /* 027B38BC */ _t46 = cpu->r[1] + 0x00000040u; /* 027B38BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t46); /* 027B38C0 */ cpu->r[1] = cpu->r[1] + 0x00000048u; /* 027B38C4 */ return; } // fn_027B38C8 @ 0x27b38c8 void Gambit_fn_027B38C8(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_027B38C8: ; // 0x27b38c8 /* 027B38C8 */ _t0 = cpu->r[1] + 0xFFFFFFD8u; /* 027B38C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B38C8 */ cpu->r[1] = _t0; /* 027B38CC */ cpu->r[0] = cpu->lr; /* 027B38D0 */ /* nop */ /* 027B38D4 */ cpu->r[31] = cpu->r[3]; /* 027B38D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B38D8 */ _t1 = cpu->r[1] + 0x0000002Cu; /* 027B38D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B38DC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B38DC */ _t3 = _t2 & 0x00000001u; /* 027B38DC */ if (_t3) goto L_027B38E0; else goto L_027B38F0; L_027B38E0: ; // 0x27b38e0 /* 027B38E0 */ cpu->r[3] = 0x00000010u; /* 027B38E4 */ Gambit_fn_02801A78(cpu); /* 027B38E8 */ cpu->r[31] = cpu->r[3]; /* 027B38E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B38EC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B38EC */ _t5 = _t4 & 0x00000001u; /* 027B38EC */ if (_t5) goto L_027B3B24; else goto L_027B38F0; L_027B38F0: ; // 0x27b38f0 /* 027B38F0 */ cpu->r[27] = 0x10110000u; /* 027B38F4 */ cpu->r[4] = 0x00000017u; /* 027B38F8 */ cpu->r[30] = 0x101D0000u; /* 027B38FC */ cpu->r[27] = cpu->r[27] + 0xFFFFAD78u; /* 027B3900 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B3904 */ _t6 = cpu->r[30] + 0xFFFFA498u; /* 027B3904 */ cpu->r[30] = rbrew_read32(cpu->mem, _t6); /* 027B3908 */ cpu->r[11] = 0x10110000u; /* 027B390C */ cpu->r[6] = 0x00000001u; /* 027B3910 */ _t7 = cpu->r[1] + 0x0000000Cu; /* 027B3910 */ rbrew_write32(cpu->mem, _t7, cpu->r[27]); /* 027B3914 */ cpu->r[11] = cpu->r[11] + 0xFFFFADDCu; /* 027B3918 */ cpu->r[3] = cpu->r[30]; /* 027B391C */ cpu->r[7] = 0x00000000u; /* 027B3920 */ _t8 = cpu->r[1] + 0x00000008u; /* 027B3920 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]); /* 027B3924 */ Gambit_fn_027B4144(cpu); /* 027B3928 */ cpu->r[28] = 0x00000000u; /* 027B392C */ cpu->r[29] = cpu->r[3]; /* 027B3930 */ cpu->r[4] = cpu->r[28]; /* 027B3934 */ Gambit_fn_02971AF0(cpu); /* 027B3938 */ _t9 = cpu->r[29] + 0x00000094u; /* 027B3938 */ cpu->r[11] = rbrew_read32(cpu->mem, _t9); /* 027B393C */ cpu->r[3] = cpu->r[29]; /* 027B3940 */ _t10 = cpu->r[11] + 0x0000067Cu; /* 027B3940 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[28]); /* 027B3944 */ Gambit_fn_027E6458(cpu); /* 027B3948 */ cpu->r[3] = cpu->r[30]; /* 027B394C */ cpu->r[8] = 0x10110000u; /* 027B3950 */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027B3950 */ rbrew_write32(cpu->mem, _t11, cpu->r[27]); /* 027B3954 */ cpu->r[6] = cpu->r[28]; /* 027B3958 */ cpu->r[8] = cpu->r[8] + 0xFFFFAE24u; /* 027B395C */ cpu->r[4] = 0x00000018u; /* 027B3960 */ cpu->r[7] = cpu->r[6]; /* 027B3964 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B3968 */ _t12 = cpu->r[1] + 0x00000008u; /* 027B3968 */ rbrew_write32(cpu->mem, _t12, cpu->r[8]); /* 027B396C */ Gambit_fn_027B4144(cpu); /* 027B3970 */ cpu->r[4] = cpu->r[28]; /* 027B3974 */ cpu->r[29] = cpu->r[3]; /* 027B3978 */ Gambit_fn_02971AF0(cpu); /* 027B397C */ _t13 = cpu->r[29] + 0x00000094u; /* 027B397C */ cpu->r[12] = rbrew_read32(cpu->mem, _t13); /* 027B3980 */ cpu->r[3] = 0x00000018u; /* 027B3984 */ _t14 = cpu->r[12] + 0x0000067Cu; /* 027B3984 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[28]); /* 027B3988 */ Gambit_fn_027E6F8C(cpu); /* 027B398C */ cpu->r[4] = 0x00000039u; /* 027B3990 */ Gambit_fn_027B2604(cpu); /* 027B3994 */ cpu->r[3] = cpu->r[29]; /* 027B3998 */ Gambit_fn_027E6458(cpu); /* 027B399C */ cpu->r[3] = cpu->r[30]; /* 027B39A0 */ cpu->r[4] = 0x00000019u; /* 027B39A4 */ cpu->r[0] = 0x10110000u; /* 027B39A8 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027B39A8 */ rbrew_write32(cpu->mem, _t15, cpu->r[27]); /* 027B39AC */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B39B0 */ cpu->r[0] = cpu->r[0] + 0xFFFFADFCu; /* 027B39B4 */ cpu->r[6] = 0x00000001u; /* 027B39B8 */ cpu->r[7] = 0x00000000u; /* 027B39BC */ _t16 = cpu->r[1] + 0x00000008u; /* 027B39BC */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027B39C0 */ Gambit_fn_027B4144(cpu); /* 027B39C4 */ cpu->r[4] = 0x00000000u; /* 027B39C8 */ cpu->r[29] = cpu->r[3]; /* 027B39CC */ Gambit_fn_02971AF0(cpu); /* 027B39D0 */ _t17 = cpu->r[29] + 0x00000094u; /* 027B39D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17); /* 027B39D4 */ cpu->r[3] = 0x00000019u; /* 027B39D8 */ _t18 = cpu->r[9] + 0x0000067Cu; /* 027B39D8 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[28]); /* 027B39DC */ Gambit_fn_027E6F8C(cpu); /* 027B39E0 */ cpu->r[4] = 0x0000003Au; /* 027B39E4 */ Gambit_fn_027B2604(cpu); /* 027B39E8 */ cpu->r[3] = cpu->r[29]; /* 027B39EC */ Gambit_fn_027E6458(cpu); /* 027B39F0 */ cpu->r[3] = cpu->r[30]; /* 027B39F4 */ cpu->r[8] = 0x10110000u; /* 027B39F8 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027B39F8 */ rbrew_write32(cpu->mem, _t19, cpu->r[27]); /* 027B39FC */ cpu->r[8] = cpu->r[8] + 0xFFFFAE34u; /* 027B3A00 */ cpu->r[6] = 0x00000000u; /* 027B3A04 */ cpu->r[4] = 0x0000001Au; /* 027B3A08 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B3A0C */ cpu->r[7] = cpu->r[6]; /* 027B3A10 */ _t20 = cpu->r[1] + 0x00000008u; /* 027B3A10 */ rbrew_write32(cpu->mem, _t20, cpu->r[8]); /* 027B3A14 */ Gambit_fn_027B4144(cpu); /* 027B3A18 */ cpu->r[29] = cpu->r[3]; /* 027B3A1C */ Gambit_fn_027E6458(cpu); /* 027B3A20 */ cpu->r[4] = 0x00000000u; /* 027B3A24 */ cpu->r[3] = cpu->r[29]; /* 027B3A28 */ Gambit_fn_02971AF0(cpu); /* 027B3A2C */ _t21 = cpu->r[29] + 0x00000094u; /* 027B3A2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21); /* 027B3A30 */ cpu->r[3] = 0x0000001Au; /* 027B3A34 */ _t22 = cpu->r[10] + 0x0000067Cu; /* 027B3A34 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[28]); /* 027B3A38 */ Gambit_fn_027E6F8C(cpu); /* 027B3A3C */ cpu->r[4] = 0x0000003Bu; /* 027B3A40 */ Gambit_fn_027B2604(cpu); /* 027B3A44 */ cpu->r[3] = cpu->r[30]; /* 027B3A48 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027B3A48 */ rbrew_write32(cpu->mem, _t23, cpu->r[27]); /* 027B3A4C */ cpu->r[0] = 0x10110000u; /* 027B3A50 */ cpu->r[4] = 0x0000001Bu; /* 027B3A54 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B3A58 */ cpu->r[0] = cpu->r[0] + 0xFFFFAE0Cu; /* 027B3A5C */ cpu->r[7] = 0x00000000u; /* 027B3A60 */ cpu->r[6] = 0x00000001u; /* 027B3A64 */ _t24 = cpu->r[1] + 0x00000008u; /* 027B3A64 */ rbrew_write32(cpu->mem, _t24, cpu->r[0]); /* 027B3A68 */ Gambit_fn_027B4144(cpu); /* 027B3A6C */ cpu->r[29] = cpu->r[3]; /* 027B3A70 */ Gambit_fn_027E6458(cpu); /* 027B3A74 */ cpu->r[4] = 0x00000000u; /* 027B3A78 */ cpu->r[3] = cpu->r[29]; /* 027B3A7C */ Gambit_fn_02971AF0(cpu); /* 027B3A80 */ _t25 = cpu->r[29] + 0x00000094u; /* 027B3A80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 027B3A84 */ cpu->r[3] = 0x0000001Bu; /* 027B3A88 */ _t26 = cpu->r[12] + 0x0000067Cu; /* 027B3A88 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[28]); /* 027B3A8C */ Gambit_fn_027E6F8C(cpu); /* 027B3A90 */ cpu->r[4] = 0x0000003Cu; /* 027B3A94 */ Gambit_fn_027B2604(cpu); /* 027B3A98 */ cpu->r[3] = cpu->r[30]; /* 027B3A9C */ cpu->r[10] = 0x10110000u; /* 027B3AA0 */ _t27 = cpu->r[1] + 0x0000000Cu; /* 027B3AA0 */ rbrew_write32(cpu->mem, _t27, cpu->r[27]); /* 027B3AA4 */ cpu->r[6] = 0x00000000u; /* 027B3AA8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B3AAC */ cpu->r[10] = cpu->r[10] + 0xFFFFADF0u; /* 027B3AB0 */ cpu->r[7] = cpu->r[6]; /* 027B3AB4 */ cpu->r[4] = 0x0000001Cu; /* 027B3AB8 */ _t28 = cpu->r[1] + 0x00000008u; /* 027B3AB8 */ rbrew_write32(cpu->mem, _t28, cpu->r[10]); /* 027B3ABC */ Gambit_fn_027B4144(cpu); /* 027B3AC0 */ Gambit_fn_027E6458(cpu); /* 027B3AC4 */ cpu->r[3] = cpu->r[30]; /* 027B3AC8 */ cpu->r[12] = 0x10110000u; /* 027B3ACC */ _t29 = cpu->r[1] + 0x0000000Cu; /* 027B3ACC */ rbrew_write32(cpu->mem, _t29, cpu->r[27]); /* 027B3AD0 */ cpu->r[6] = 0x00000000u; /* 027B3AD4 */ cpu->r[12] = cpu->r[12] + 0xFFFFAE4Cu; /* 027B3AD8 */ cpu->r[4] = 0x0000001Du; /* 027B3ADC */ cpu->r[7] = cpu->r[6]; /* 027B3AE0 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B3AE4 */ _t30 = cpu->r[1] + 0x00000008u; /* 027B3AE4 */ rbrew_write32(cpu->mem, _t30, cpu->r[12]); /* 027B3AE8 */ Gambit_fn_027B4144(cpu); /* 027B3AEC */ Gambit_fn_027E6458(cpu); /* 027B3AF0 */ cpu->r[3] = cpu->r[30]; /* 027B3AF4 */ cpu->r[0] = 0x10110000u; /* 027B3AF8 */ _t31 = cpu->r[1] + 0x0000000Cu; /* 027B3AF8 */ rbrew_write32(cpu->mem, _t31, cpu->r[27]); /* 027B3AFC */ cpu->r[4] = 0x0000001Eu; /* 027B3B00 */ cpu->r[0] = cpu->r[0] + 0xFFFFAE5Cu; /* 027B3B04 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B3B08 */ cpu->r[7] = 0x00000000u; /* 027B3B0C */ cpu->r[6] = 0x00000001u; /* 027B3B10 */ _t32 = cpu->r[1] + 0x00000008u; /* 027B3B10 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]); /* 027B3B14 */ Gambit_fn_027B4144(cpu); /* 027B3B18 */ Gambit_fn_027E6458(cpu); /* 027B3B1C */ cpu->r[3] = cpu->r[31]; /* 027B3B20 */ Gambit_fn_027B36F8(cpu); L_027B3B24: ; // 0x27b3b24 /* 027B3B24 */ cpu->r[3] = cpu->r[31]; /* 027B3B28 */ /* nop */ /* 027B3B2C */ _t33 = cpu->r[1] + 0x0000002Cu; /* 027B3B2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33); /* 027B3B30 */ cpu->lr = cpu->r[0]; /* 027B3B34 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B3B38 */ return; } // fn_027B3B3C @ 0x27b3b3c void Gambit_fn_027B3B3C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B3B3C: ; // 0x27b3b3c /* 027B3B3C */ cpu->r[0] = cpu->lr; /* 027B3B40 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B3B40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B3B40 */ cpu->r[1] = _t0; /* 027B3B44 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B3B44 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B3B48 */ _t2 = cpu->r[1] + 0x00000010u; /* 027B3B48 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B3B4C */ _t3 = cpu->r[1] + 0x00000014u; /* 027B3B4C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B3B50 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B3B50 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B3B54 */ cpu->r[29] = 0x101D0000u; /* 027B3B58 */ cpu->r[30] = cpu->r[3]; /* 027B3B5C */ _t5 = cpu->r[29] + 0xFFFF9328u; /* 027B3B5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5); /* 027B3B5C */ cpu->r[29] = _t5; /* 027B3B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3B64 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3B64 */ _t7 = _t6 & 0x00000001u; /* 027B3B64 */ if (_t7) goto L_027B3B68; else goto L_027B3BB4; L_027B3B68: ; // 0x27b3b68 /* 027B3B68 */ cpu->r[4] = cpu->r[30]; /* 027B3B6C */ cpu->r[3] = 0x00000010u; /* 027B3B70 */ cpu->r[5] = 0x00000004u; /* 027B3B74 */ Gambit_fn_02801ADC(cpu); /* 027B3B78 */ cpu->r[31] = cpu->r[3]; /* 027B3B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B3B7C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3B7C */ _t9 = _t8 & 0x00000001u; /* 027B3B7C */ if (_t9) goto L_027B3B9C; else goto L_027B3B80; L_027B3B80: ; // 0x27b3b80 /* 027B3B80 */ cpu->r[5] = 0x00000003u; /* 027B3B84 */ cpu->r[4] = cpu->r[30]; /* 027B3B88 */ cpu->r[3] = cpu->r[31]; /* 027B3B8C */ Gambit_fn_02821D88(cpu); /* 027B3B90 */ cpu->r[0] = 0x10110000u; /* 027B3B94 */ cpu->r[0] = cpu->r[0] + 0xFFFFAE6Cu; /* 027B3B98 */ _t10 = cpu->r[31] + 0x0000000Cu; /* 027B3B98 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); L_027B3B9C: ; // 0x27b3b9c /* 027B3B9C */ cpu->r[12] = 0x101D0000u; /* 027B3BA0 */ cpu->r[3] = cpu->r[31]; /* 027B3BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3BA4 */ _t11 = cpu->r[12] + 0xFFFF932Cu; /* 027B3BA4 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]); /* 027B3BA8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3BA8 */ _t13 = _t12 & 0x00000001u; /* 027B3BA8 */ if (_t13) goto L_027B3BB0; else goto L_027B3BAC; L_027B3BAC: ; // 0x27b3bac /* 027B3BAC */ Gambit_fn_027B38C8(cpu); L_027B3BB0: ; // 0x27b3bb0 /* 027B3BB0 */ _t14 = cpu->r[29] + 0x00000000u; /* 027B3BB0 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]); L_027B3BB4: ; // 0x27b3bb4 /* 027B3BB4 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027B3BB4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15); /* 027B3BB8 */ _t16 = cpu->r[1] + 0x0000001Cu; /* 027B3BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B3BBC */ _t17 = cpu->r[1] + 0x00000010u; /* 027B3BBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027B3BC0 */ cpu->lr = cpu->r[0]; /* 027B3BC4 */ _t18 = cpu->r[1] + 0x00000014u; /* 027B3BC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B3BC8 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B3BCC */ return; } // fn_027B3B40 @ 0x27b3b40 void Gambit_fn_027B3B40(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B3B40: ; // 0x27b3b40 /* 027B3B40 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B3B40 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B3B40 */ cpu->r[1] = _t0; /* 027B3B44 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B3B44 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B3B48 */ _t2 = cpu->r[1] + 0x00000010u; /* 027B3B48 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B3B4C */ _t3 = cpu->r[1] + 0x00000014u; /* 027B3B4C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B3B50 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B3B50 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B3B54 */ cpu->r[29] = 0x101D0000u; /* 027B3B58 */ cpu->r[30] = cpu->r[3]; /* 027B3B5C */ _t5 = cpu->r[29] + 0xFFFF9328u; /* 027B3B5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t5); /* 027B3B5C */ cpu->r[29] = _t5; /* 027B3B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3B64 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3B64 */ _t7 = _t6 & 0x00000001u; /* 027B3B64 */ if (_t7) goto L_027B3B68; else goto L_027B3BB4; L_027B3B68: ; // 0x27b3b68 /* 027B3B68 */ cpu->r[4] = cpu->r[30]; /* 027B3B6C */ cpu->r[3] = 0x00000010u; /* 027B3B70 */ cpu->r[5] = 0x00000004u; /* 027B3B74 */ Gambit_fn_02801ADC(cpu); /* 027B3B78 */ cpu->r[31] = cpu->r[3]; /* 027B3B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B3B7C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3B7C */ _t9 = _t8 & 0x00000001u; /* 027B3B7C */ if (_t9) goto L_027B3B9C; else goto L_027B3B80; L_027B3B80: ; // 0x27b3b80 /* 027B3B80 */ cpu->r[5] = 0x00000003u; /* 027B3B84 */ cpu->r[4] = cpu->r[30]; /* 027B3B88 */ cpu->r[3] = cpu->r[31]; /* 027B3B8C */ Gambit_fn_02821D88(cpu); /* 027B3B90 */ cpu->r[0] = 0x10110000u; /* 027B3B94 */ cpu->r[0] = cpu->r[0] + 0xFFFFAE6Cu; /* 027B3B98 */ _t10 = cpu->r[31] + 0x0000000Cu; /* 027B3B98 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); L_027B3B9C: ; // 0x27b3b9c /* 027B3B9C */ cpu->r[12] = 0x101D0000u; /* 027B3BA0 */ cpu->r[3] = cpu->r[31]; /* 027B3BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3BA4 */ _t11 = cpu->r[12] + 0xFFFF932Cu; /* 027B3BA4 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]); /* 027B3BA8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3BA8 */ _t13 = _t12 & 0x00000001u; /* 027B3BA8 */ if (_t13) goto L_027B3BB0; else goto L_027B3BAC; L_027B3BAC: ; // 0x27b3bac /* 027B3BAC */ Gambit_fn_027B38C8(cpu); L_027B3BB0: ; // 0x27b3bb0 /* 027B3BB0 */ _t14 = cpu->r[29] + 0x00000000u; /* 027B3BB0 */ rbrew_write32(cpu->mem, _t14, cpu->r[3]); L_027B3BB4: ; // 0x27b3bb4 /* 027B3BB4 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027B3BB4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t15); /* 027B3BB8 */ _t16 = cpu->r[1] + 0x0000001Cu; /* 027B3BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B3BBC */ _t17 = cpu->r[1] + 0x00000010u; /* 027B3BBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027B3BC0 */ cpu->lr = cpu->r[0]; /* 027B3BC4 */ _t18 = cpu->r[1] + 0x00000014u; /* 027B3BC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B3BC8 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B3BCC */ return; } // fn_027B3BD0 @ 0x27b3bd0 void Gambit_fn_027B3BD0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61; L_027B3BD0: ; // 0x27b3bd0 /* 027B3BD0 */ _t0 = cpu->r[1] + 0xFFFFFFB8u; /* 027B3BD0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B3BD0 */ cpu->r[1] = _t0; /* 027B3BD4 */ /* nop */ /* 027B3BD8 */ cpu->r[0] = cpu->lr; /* 027B3BDC */ _t1 = cpu->r[1] + 0x0000004Cu; /* 027B3BDC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B3BE0 */ cpu->r[29] = cpu->r[4]; /* 027B3BE4 */ cpu->r[17] = 0x00000017u; /* 027B3BE8 */ cpu->r[18] = 0x00000008u; /* 027B3BEC */ cpu->r[19] = 0x101D0000u; /* 027B3BF0 */ cpu->r[20] = 0x00000001u; /* 027B3BF4 */ cpu->r[21] = 0x101D0000u; /* 027B3BF8 */ cpu->r[22] = 0x101D0000u; /* 027B3BFC */ cpu->r[23] = 0x101D0000u; /* 027B3C00 */ cpu->r[24] = 0x101D0000u; /* 027B3C04 */ cpu->r[25] = 0x101D0000u; /* 027B3C08 */ cpu->r[26] = 0x0000005Cu; /* 027B3C0C */ cpu->r[28] = 0x10110000u; /* 027B3C10 */ cpu->r[27] = 0x101D0000u; /* 027B3C14 */ _t2 = cpu->r[5] + 0x00000000u; /* 027B3C14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t2); /* 027B3C18 */ cpu->r[28] = cpu->r[28] + 0xFFFFADA0u; L_027B3C1C: ; // 0x27b3c1c /* 027B3C1C */ /* nop */ /* 027B3C20 */ cpu->r[10] = cpu->r[31] & cpu->r[9]; /* 027B3C20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B3C24 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3C24 */ _t4 = _t3 & 0x00000001u; /* 027B3C24 */ if (_t4) goto L_027B3D78; else goto L_027B3C28; L_027B3C28: ; // 0x27b3c28 /* 027B3C28 */ _t5 = cpu->r[27] + 0xFFFFA498u; /* 027B3C28 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027B3C2C */ _t6 = cpu->r[12] + 0x00000F38u; /* 027B3C2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027B3C30 */ _t7 = cpu->r[25] + 0xFFFFD864u; /* 027B3C30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t7); /* 027B3C34 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[17], cpu->r[0]); /* 027B3C38 */ _t8 = cpu->r[12] + 0x00000F3Cu; /* 027B3C38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027B3C3C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B3C3C */ _t10 = _t9 & 0x00000001u; /* 027B3C3C */ if (_t10) goto L_027B3C40; else goto L_027B3C44; L_027B3C40: ; // 0x27b3c40 /* 027B3C40 */ cpu->r[12] = cpu->r[12] + cpu->r[26]; L_027B3C44: ; // 0x27b3c44 /* 027B3C44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B3C48 */ _t11 = cpu->r[12] + 0x00000000u; /* 027B3C48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11); /* 027B3C4C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3C4C */ _t13 = _t12 & 0x00000001u; /* 027B3C4C */ if (_t13) goto L_027B3C50; else goto L_027B3C60; L_027B3C50: ; // 0x27b3c50 /* 027B3C50 */ cpu->r[0] = 0x10110000u; /* 027B3C54 */ _t14 = cpu->r[25] + 0xFFFFD864u; /* 027B3C54 */ rbrew_write32(cpu->mem, _t14, cpu->r[20]); /* 027B3C58 */ cpu->r[0] = cpu->r[0] + 0xFFFFAD90u; /* 027B3C5C */ _t15 = cpu->r[23] + 0xFFFFE294u; /* 027B3C5C */ rbrew_write32(cpu->mem, _t15, cpu->r[0]); L_027B3C60: ; // 0x27b3c60 /* 027B3C60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B3C64 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3C64 */ _t17 = _t16 & 0x00000001u; /* 027B3C64 */ if (_t17) goto L_027B3C88; else goto L_027B3C68; L_027B3C68: ; // 0x27b3c68 /* 027B3C68 */ _t18 = cpu->r[30] + 0x0000000Cu; /* 027B3C68 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18); /* 027B3C6C */ _t19 = cpu->r[11] + 0x00000014u; /* 027B3C6C */ cpu->r[9] = rbrew_read32(cpu->mem, _t19); /* 027B3C70 */ cpu->ctr = cpu->r[9]; /* 027B3C74 */ cpu->r[3] = cpu->r[30]; /* 027B3C78 */ cpu->r[4] = cpu->r[23] + 0xFFFFE294u; /* 027B3C7C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3C80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3C84 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3C84 */ _t21 = _t20 & 0x00000001u; /* 027B3C84 */ if (_t21) goto L_027B3C88; else goto L_027B3C8C; L_027B3C88: ; // 0x27b3c88 /* 027B3C88 */ cpu->r[30] = 0x00000000u; L_027B3C8C: ; // 0x27b3c8c /* 027B3C8C */ _t22 = cpu->r[21] + 0xFFFFDB08u; /* 027B3C8C */ cpu->r[6] = rbrew_read32(cpu->mem, _t22); /* 027B3C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u); /* 027B3C94 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3C94 */ _t24 = _t23 & 0x00000001u; /* 027B3C94 */ if (_t24) goto L_027B3C98; else goto L_027B3CA0; L_027B3C98: ; // 0x27b3c98 /* 027B3C98 */ _t25 = cpu->r[19] + 0xFFFFE28Cu; /* 027B3C98 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]); /* 027B3C9C */ _t26 = cpu->r[21] + 0xFFFFDB08u; /* 027B3C9C */ rbrew_write32(cpu->mem, _t26, cpu->r[20]); L_027B3CA0: ; // 0x27b3ca0 /* 027B3CA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B3CA4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3CA4 */ _t28 = _t27 & 0x00000001u; /* 027B3CA4 */ if (_t28) goto L_027B3D28; else goto L_027B3CA8; L_027B3CA8: ; // 0x27b3ca8 /* 027B3CA8 */ _t29 = cpu->r[30] + 0x0000000Cu; /* 027B3CA8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t29); /* 027B3CAC */ _t30 = cpu->r[7] + 0x00000014u; /* 027B3CAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t30); /* 027B3CB0 */ cpu->ctr = cpu->r[8]; /* 027B3CB4 */ cpu->r[3] = cpu->r[30]; /* 027B3CB8 */ cpu->r[4] = cpu->r[19] + 0xFFFFE28Cu; /* 027B3CBC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3CC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3CC4 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3CC4 */ _t32 = _t31 & 0x00000001u; /* 027B3CC4 */ if (_t32) goto L_027B3D28; else goto L_027B3CC8; L_027B3CC8: ; // 0x27b3cc8 /* 027B3CC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B3CCC */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3CCC */ _t34 = _t33 & 0x00000001u; /* 027B3CCC */ if (_t34) goto L_027B3D28; else goto L_027B3CD0; L_027B3CD0: ; // 0x27b3cd0 /* 027B3CD0 */ _t35 = cpu->r[21] + 0xFFFFDB08u; /* 027B3CD0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35); /* 027B3CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B3CD8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3CD8 */ _t37 = _t36 & 0x00000001u; /* 027B3CD8 */ if (_t37) goto L_027B3CDC; else goto L_027B3CE4; L_027B3CDC: ; // 0x27b3cdc /* 027B3CDC */ _t38 = cpu->r[19] + 0xFFFFE28Cu; /* 027B3CDC */ rbrew_write32(cpu->mem, _t38, cpu->r[28]); /* 027B3CE0 */ _t39 = cpu->r[21] + 0xFFFFDB08u; /* 027B3CE0 */ rbrew_write32(cpu->mem, _t39, cpu->r[20]); L_027B3CE4: ; // 0x27b3ce4 /* 027B3CE4 */ _t40 = cpu->r[30] + 0x0000000Cu; /* 027B3CE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t40); /* 027B3CE8 */ _t41 = cpu->r[12] + 0x00000014u; /* 027B3CE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41); /* 027B3CEC */ cpu->ctr = cpu->r[0]; /* 027B3CF0 */ cpu->r[3] = cpu->r[30]; /* 027B3CF4 */ cpu->r[4] = cpu->r[19] + 0xFFFFE28Cu; /* 027B3CF8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3CFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3D00 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3D00 */ _t43 = _t42 & 0x00000001u; /* 027B3D00 */ if (_t43) goto L_027B3D04; else goto L_027B3D08; L_027B3D04: ; // 0x27b3d04 /* 027B3D04 */ cpu->r[30] = 0x00000000u; L_027B3D08: ; // 0x27b3d08 /* 027B3D08 */ cpu->r[3] = cpu->r[30]; /* 027B3D0C */ cpu->r[4] = cpu->r[29] + 0x000000C8u; /* 027B3D10 */ Gambit_fn_027B23C4(cpu); /* 027B3D14 */ cpu->r[18] = cpu->r[18] + 0xFFFFFFFFu; /* 027B3D14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u); /* 027B3D18 */ cpu->r[17] = cpu->r[17] + 0x00000001u; /* 027B3D1C */ cpu->r[26] = cpu->r[26] + 0x00000004u; /* 027B3D20 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3D20 */ _t45 = _t44 & 0x00000001u; /* 027B3D20 */ if (_t45) goto L_027B3D24; else goto L_027B3C1C; L_027B3D24: ; // 0x27b3d24 /* 027B3D24 */ goto L_027B3D88; L_027B3D28: ; // 0x27b3d28 /* 027B3D28 */ _t46 = cpu->r[24] + 0xFFFFDAFCu; /* 027B3D28 */ cpu->r[5] = rbrew_read32(cpu->mem, _t46); /* 027B3D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B3D30 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3D30 */ _t48 = _t47 & 0x00000001u; /* 027B3D30 */ if (_t48) goto L_027B3D34; else goto L_027B3D3C; L_027B3D34: ; // 0x27b3d34 /* 027B3D34 */ _t49 = cpu->r[22] + 0xFFFFE288u; /* 027B3D34 */ rbrew_write32(cpu->mem, _t49, cpu->r[28]); /* 027B3D38 */ _t50 = cpu->r[24] + 0xFFFFDAFCu; /* 027B3D38 */ rbrew_write32(cpu->mem, _t50, cpu->r[20]); L_027B3D3C: ; // 0x27b3d3c /* 027B3D3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B3D40 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3D40 */ _t52 = _t51 & 0x00000001u; /* 027B3D40 */ if (_t52) goto L_027B3D78; else goto L_027B3D44; L_027B3D44: ; // 0x27b3d44 /* 027B3D44 */ _t53 = cpu->r[30] + 0x0000000Cu; /* 027B3D44 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53); /* 027B3D48 */ _t54 = cpu->r[6] + 0x00000014u; /* 027B3D48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t54); /* 027B3D4C */ cpu->ctr = cpu->r[7]; /* 027B3D50 */ cpu->r[3] = cpu->r[30]; /* 027B3D54 */ cpu->r[4] = cpu->r[22] + 0xFFFFE288u; /* 027B3D58 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3D60 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3D60 */ _t56 = _t55 & 0x00000001u; /* 027B3D60 */ if (_t56) goto L_027B3D78; else goto L_027B3D64; L_027B3D64: ; // 0x27b3d64 /* 027B3D64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B3D68 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3D68 */ _t58 = _t57 & 0x00000001u; /* 027B3D68 */ if (_t58) goto L_027B3D78; else goto L_027B3D6C; L_027B3D6C: ; // 0x27b3d6c /* 027B3D6C */ cpu->r[3] = cpu->r[30]; /* 027B3D70 */ cpu->r[4] = cpu->r[29] + 0x0000010Cu; /* 027B3D74 */ Gambit_fn_02929064(cpu); L_027B3D78: ; // 0x27b3d78 /* 027B3D78 */ cpu->r[18] = cpu->r[18] + 0xFFFFFFFFu; /* 027B3D78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u); /* 027B3D7C */ cpu->r[17] = cpu->r[17] + 0x00000001u; /* 027B3D80 */ cpu->r[26] = cpu->r[26] + 0x00000004u; /* 027B3D84 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3D84 */ _t60 = _t59 & 0x00000001u; /* 027B3D84 */ if (_t60) goto L_027B3D88; else goto L_027B3C1C; L_027B3D88: ; // 0x27b3d88 /* 027B3D88 */ /* nop */ /* 027B3D8C */ _t61 = cpu->r[1] + 0x0000004Cu; /* 027B3D8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t61); /* 027B3D90 */ cpu->lr = cpu->r[0]; /* 027B3D94 */ cpu->r[1] = cpu->r[1] + 0x00000048u; /* 027B3D98 */ return; } // fn_027B3D9C @ 0x27b3d9c void Gambit_fn_027B3D9C(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; L_027B3D9C: ; // 0x27b3d9c /* 027B3D9C */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027B3D9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B3D9C */ cpu->r[1] = _t0; /* 027B3DA0 */ cpu->r[0] = cpu->lr; /* 027B3DA4 */ cpu->r[4] = 0x101D0000u; /* 027B3DA8 */ _t1 = cpu->r[1] + 0x00000038u; /* 027B3DA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B3DAC */ _t2 = cpu->r[1] + 0x0000003Cu; /* 027B3DAC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B3DB0 */ cpu->r[10] = 0x03000000u; /* 027B3DB4 */ _t3 = cpu->r[1] + 0x00000030u; /* 027B3DB4 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]); /* 027B3DB8 */ _t4 = cpu->r[1] + 0x00000008u; /* 027B3DB8 */ rbrew_write32(cpu->mem, _t4, cpu->r[10]); /* 027B3DBC */ _t5 = cpu->r[1] + 0x00000034u; /* 027B3DBC */ rbrew_write32(cpu->mem, _t5, cpu->r[29]); /* 027B3DC0 */ cpu->r[5] = cpu->r[1] + 0x0000000Cu; /* 027B3DC4 */ _t6 = cpu->r[1] + 0x00000044u; /* 027B3DC4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027B3DC8 */ _t7 = cpu->r[4] + 0xFFFF9578u; /* 027B3DC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t7); /* 027B3DCC */ cpu->r[31] = cpu->r[3]; /* 027B3DD0 */ _t8 = cpu->r[1] + 0x0000000Cu; /* 027B3DD0 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]); /* 027B3DD4 */ Gambit_fn_027B3BD0(cpu); /* 027B3DD8 */ cpu->r[4] = 0x101D0000u; /* 027B3DDC */ cpu->r[0] = 0x0C000000u; /* 027B3DE0 */ _t9 = cpu->r[4] + 0xFFFF92F8u; /* 027B3DE0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t9); /* 027B3DE4 */ cpu->r[3] = cpu->r[31]; /* 027B3DE8 */ _t10 = cpu->r[1] + 0x00000010u; /* 027B3DE8 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027B3DEC */ cpu->r[5] = cpu->r[1] + 0x00000010u; /* 027B3DF0 */ _t11 = cpu->r[1] + 0x00000008u; /* 027B3DF0 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); /* 027B3DF4 */ Gambit_fn_027B3BD0(cpu); /* 027B3DF8 */ cpu->r[30] = 0x10000000u; /* 027B3DFC */ cpu->r[4] = 0x101D0000u; /* 027B3E00 */ _t12 = cpu->r[1] + 0x00000008u; /* 027B3E00 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]); /* 027B3E04 */ _t13 = cpu->r[4] + 0xFFFF9280u; /* 027B3E04 */ cpu->r[4] = rbrew_read32(cpu->mem, _t13); /* 027B3E08 */ cpu->r[5] = cpu->r[1] + 0x00000014u; /* 027B3E0C */ cpu->r[3] = cpu->r[31]; /* 027B3E10 */ _t14 = cpu->r[1] + 0x00000014u; /* 027B3E10 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]); /* 027B3E14 */ Gambit_fn_027B3BD0(cpu); /* 027B3E18 */ cpu->r[4] = 0x101D0000u; /* 027B3E1C */ _t15 = cpu->r[1] + 0x00000008u; /* 027B3E1C */ rbrew_write32(cpu->mem, _t15, cpu->r[30]); /* 027B3E20 */ _t16 = cpu->r[4] + 0xFFFF9560u; /* 027B3E20 */ cpu->r[4] = rbrew_read32(cpu->mem, _t16); /* 027B3E24 */ cpu->r[3] = cpu->r[31]; /* 027B3E28 */ cpu->r[5] = cpu->r[1] + 0x00000018u; /* 027B3E2C */ _t17 = cpu->r[1] + 0x00000018u; /* 027B3E2C */ rbrew_write32(cpu->mem, _t17, cpu->r[30]); /* 027B3E30 */ Gambit_fn_027B3BD0(cpu); /* 027B3E34 */ cpu->r[4] = 0x101D0000u; /* 027B3E38 */ cpu->r[7] = 0x50000000u; /* 027B3E3C */ _t18 = cpu->r[4] + 0xFFFF92A8u; /* 027B3E3C */ cpu->r[4] = rbrew_read32(cpu->mem, _t18); /* 027B3E40 */ cpu->r[3] = cpu->r[31]; /* 027B3E44 */ _t19 = cpu->r[1] + 0x0000001Cu; /* 027B3E44 */ rbrew_write32(cpu->mem, _t19, cpu->r[7]); /* 027B3E48 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu; /* 027B3E4C */ _t20 = cpu->r[1] + 0x00000008u; /* 027B3E4C */ rbrew_write32(cpu->mem, _t20, cpu->r[7]); /* 027B3E50 */ Gambit_fn_027B3BD0(cpu); /* 027B3E54 */ cpu->r[4] = 0x101D0000u; /* 027B3E58 */ _t21 = cpu->r[1] + 0x00000008u; /* 027B3E58 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]); /* 027B3E5C */ _t22 = cpu->r[4] + 0xFFFF92ACu; /* 027B3E5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t22); /* 027B3E60 */ cpu->r[3] = cpu->r[31]; /* 027B3E64 */ cpu->r[5] = cpu->r[1] + 0x00000020u; /* 027B3E68 */ _t23 = cpu->r[1] + 0x00000020u; /* 027B3E68 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]); /* 027B3E6C */ Gambit_fn_027B3BD0(cpu); /* 027B3E70 */ cpu->r[4] = 0x101D0000u; /* 027B3E74 */ _t24 = cpu->r[1] + 0x00000008u; /* 027B3E74 */ rbrew_write32(cpu->mem, _t24, cpu->r[30]); /* 027B3E78 */ cpu->r[5] = cpu->r[1] + 0x00000024u; /* 027B3E7C */ _t25 = cpu->r[4] + 0xFFFF92D0u; /* 027B3E7C */ cpu->r[4] = rbrew_read32(cpu->mem, _t25); /* 027B3E80 */ cpu->r[3] = cpu->r[31]; /* 027B3E84 */ _t26 = cpu->r[1] + 0x00000024u; /* 027B3E84 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]); /* 027B3E88 */ Gambit_fn_027B3BD0(cpu); /* 027B3E8C */ cpu->r[4] = 0x101D0000u; /* 027B3E90 */ cpu->r[3] = cpu->r[31]; /* 027B3E94 */ _t27 = cpu->r[4] + 0xFFFF92F4u; /* 027B3E94 */ cpu->r[4] = rbrew_read32(cpu->mem, _t27); /* 027B3E98 */ _t28 = cpu->r[1] + 0x00000008u; /* 027B3E98 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]); /* 027B3E9C */ cpu->r[5] = cpu->r[1] + 0x00000028u; /* 027B3EA0 */ _t29 = cpu->r[1] + 0x00000028u; /* 027B3EA0 */ rbrew_write32(cpu->mem, _t29, cpu->r[30]); /* 027B3EA4 */ Gambit_fn_027B3BD0(cpu); /* 027B3EA8 */ cpu->r[10] = 0x101D0000u; /* 027B3EAC */ _t30 = cpu->r[10] + 0xFFFFA498u; /* 027B3EAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t30); /* 027B3EB0 */ _t31 = cpu->r[10] + 0x00000F38u; /* 027B3EB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027B3EB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000001Cu); /* 027B3EB8 */ _t32 = cpu->r[10] + 0x00000F3Cu; /* 027B3EB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32); /* 027B3EBC */ _t33 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B3EBC */ _t34 = _t33 & 0x00000001u; /* 027B3EBC */ if (_t34) goto L_027B3EC0; else goto L_027B3EC4; L_027B3EC0: ; // 0x27b3ec0 /* 027B3EC0 */ cpu->r[12] = cpu->r[12] + 0x00000070u; L_027B3EC4: ; // 0x27b3ec4 /* 027B3EC4 */ cpu->r[9] = 0x101D0000u; /* 027B3EC8 */ _t35 = cpu->r[9] + 0xFFFFD864u; /* 027B3EC8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t35); /* 027B3ECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B3ED0 */ _t36 = cpu->r[12] + 0x00000000u; /* 027B3ED0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36); /* 027B3ED4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3ED4 */ _t38 = _t37 & 0x00000001u; /* 027B3ED4 */ if (_t38) goto L_027B3ED8; else goto L_027B3EF4; L_027B3ED8: ; // 0x27b3ed8 /* 027B3ED8 */ cpu->r[8] = 0x101D0000u; /* 027B3EDC */ cpu->r[0] = 0x10110000u; /* 027B3EE0 */ cpu->r[7] = 0x00000001u; /* 027B3EE4 */ cpu->r[12] = 0x101D0000u; /* 027B3EE8 */ cpu->r[0] = cpu->r[0] + 0xFFFFAD90u; /* 027B3EEC */ _t39 = cpu->r[8] + 0xFFFFD864u; /* 027B3EEC */ rbrew_write32(cpu->mem, _t39, cpu->r[7]); /* 027B3EF0 */ _t40 = cpu->r[12] + 0xFFFFE294u; /* 027B3EF0 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]); L_027B3EF4: ; // 0x27b3ef4 /* 027B3EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B3EF8 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3EF8 */ _t42 = _t41 & 0x00000001u; /* 027B3EF8 */ if (_t42) goto L_027B3F20; else goto L_027B3EFC; L_027B3EFC: ; // 0x27b3efc /* 027B3EFC */ _t43 = cpu->r[31] + 0x0000000Cu; /* 027B3EFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t43); /* 027B3F00 */ _t44 = cpu->r[9] + 0x00000014u; /* 027B3F00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44); /* 027B3F04 */ cpu->r[4] = 0x101D0000u; /* 027B3F08 */ cpu->ctr = cpu->r[11]; /* 027B3F0C */ cpu->r[4] = cpu->r[4] + 0xFFFFE294u; /* 027B3F10 */ cpu->r[3] = cpu->r[31]; /* 027B3F14 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3F18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3F1C */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3F1C */ _t46 = _t45 & 0x00000001u; /* 027B3F1C */ if (_t46) goto L_027B3F20; else goto L_027B3F24; L_027B3F20: ; // 0x27b3f20 /* 027B3F20 */ cpu->r[31] = 0x00000000u; L_027B3F24: ; // 0x27b3f24 /* 027B3F24 */ cpu->r[28] = 0x101D0000u; /* 027B3F28 */ cpu->r[29] = 0x10110000u; /* 027B3F2C */ _t47 = cpu->r[28] + 0xFFFFDB08u; /* 027B3F2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t47); /* 027B3F2C */ cpu->r[28] = _t47; /* 027B3F30 */ cpu->r[29] = cpu->r[29] + 0xFFFFADA0u; /* 027B3F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B3F38 */ cpu->r[30] = 0x101D0000u; /* 027B3F3C */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3F3C */ _t49 = _t48 & 0x00000001u; /* 027B3F3C */ if (_t49) goto L_027B3F40; else goto L_027B3F4C; L_027B3F40: ; // 0x27b3f40 /* 027B3F40 */ _t50 = cpu->r[30] + 0xFFFFE28Cu; /* 027B3F40 */ rbrew_write32(cpu->mem, _t50, cpu->r[29]); /* 027B3F44 */ cpu->r[0] = 0x00000001u; /* 027B3F48 */ _t51 = cpu->r[28] + 0x00000000u; /* 027B3F48 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]); L_027B3F4C: ; // 0x27b3f4c /* 027B3F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B3F50 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3F50 */ _t53 = _t52 & 0x00000001u; /* 027B3F50 */ if (_t53) goto L_027B3FCC; else goto L_027B3F54; L_027B3F54: ; // 0x27b3f54 /* 027B3F54 */ _t54 = cpu->r[31] + 0x0000000Cu; /* 027B3F54 */ cpu->r[11] = rbrew_read32(cpu->mem, _t54); /* 027B3F58 */ _t55 = cpu->r[11] + 0x00000014u; /* 027B3F58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t55); /* 027B3F5C */ cpu->ctr = cpu->r[12]; /* 027B3F60 */ cpu->r[3] = cpu->r[31]; /* 027B3F64 */ cpu->r[4] = cpu->r[30] + 0xFFFFE28Cu; /* 027B3F68 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3F6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3F70 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3F70 */ _t57 = _t56 & 0x00000001u; /* 027B3F70 */ if (_t57) goto L_027B3FCC; else goto L_027B3F74; L_027B3F74: ; // 0x27b3f74 /* 027B3F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B3F78 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3F78 */ _t59 = _t58 & 0x00000001u; /* 027B3F78 */ if (_t59) goto L_027B3FCC; else goto L_027B3F7C; L_027B3F7C: ; // 0x27b3f7c /* 027B3F7C */ _t60 = cpu->r[28] + 0x00000000u; /* 027B3F7C */ cpu->r[7] = rbrew_read32(cpu->mem, _t60); /* 027B3F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B3F84 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3F84 */ _t62 = _t61 & 0x00000001u; /* 027B3F84 */ if (_t62) goto L_027B3F88; else goto L_027B3F94; L_027B3F88: ; // 0x27b3f88 /* 027B3F88 */ _t63 = cpu->r[30] + 0xFFFFE28Cu; /* 027B3F88 */ rbrew_write32(cpu->mem, _t63, cpu->r[29]); /* 027B3F8C */ cpu->r[8] = 0x00000001u; /* 027B3F90 */ _t64 = cpu->r[28] + 0x00000000u; /* 027B3F90 */ rbrew_write32(cpu->mem, _t64, cpu->r[8]); L_027B3F94: ; // 0x27b3f94 /* 027B3F94 */ _t65 = cpu->r[31] + 0x0000000Cu; /* 027B3F94 */ cpu->r[10] = rbrew_read32(cpu->mem, _t65); /* 027B3F98 */ _t66 = cpu->r[10] + 0x00000014u; /* 027B3F98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t66); /* 027B3F9C */ cpu->ctr = cpu->r[11]; /* 027B3FA0 */ cpu->r[3] = cpu->r[31]; /* 027B3FA4 */ cpu->r[4] = cpu->r[30] + 0xFFFFE28Cu; /* 027B3FA8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B3FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B3FB0 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B3FB0 */ _t68 = _t67 & 0x00000001u; /* 027B3FB0 */ if (_t68) goto L_027B3FB4; else goto L_027B3FB8; L_027B3FB4: ; // 0x27b3fb4 /* 027B3FB4 */ cpu->r[31] = 0x00000000u; L_027B3FB8: ; // 0x27b3fb8 /* 027B3FB8 */ cpu->r[11] = 0x101D0000u; /* 027B3FBC */ _t69 = cpu->r[11] + 0xFFFF9028u; /* 027B3FBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t69); /* 027B3FC0 */ cpu->r[3] = cpu->r[31]; /* 027B3FC4 */ cpu->r[4] = cpu->r[11] + 0x00000030u; /* 027B3FC8 */ Gambit_fn_027B23C4(cpu); L_027B3FCC: ; // 0x27b3fcc /* 027B3FCC */ _t70 = cpu->r[1] + 0x00000030u; /* 027B3FCC */ cpu->r[28] = rbrew_read32(cpu->mem, _t70); /* 027B3FD0 */ _t71 = cpu->r[1] + 0x00000034u; /* 027B3FD0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t71); /* 027B3FD4 */ _t72 = cpu->r[1] + 0x00000044u; /* 027B3FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72); /* 027B3FD8 */ _t73 = cpu->r[1] + 0x00000038u; /* 027B3FD8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t73); /* 027B3FDC */ cpu->lr = cpu->r[0]; /* 027B3FE0 */ _t74 = cpu->r[1] + 0x0000003Cu; /* 027B3FE0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t74); /* 027B3FE4 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027B3FE8 */ return; } // fn_027B3FEC @ 0x27b3fec void Gambit_fn_027B3FEC(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_027B3FEC: ; // 0x27b3fec /* 027B3FEC */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027B3FEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B3FEC */ cpu->r[1] = _t0; /* 027B3FF0 */ /* nop */ /* 027B3FF4 */ cpu->r[0] = cpu->lr; /* 027B3FF8 */ cpu->r[28] = 0x101D0000u; /* 027B3FFC */ cpu->r[27] = 0x0000005Cu; /* 027B4000 */ cpu->r[26] = 0x101D0000u; /* 027B4004 */ cpu->r[25] = 0x101D0000u; /* 027B4008 */ cpu->r[24] = 0x00000008u; /* 027B400C */ cpu->r[23] = 0x00000017u; /* 027B4010 */ cpu->r[30] = cpu->r[4]; /* 027B4014 */ _t1 = cpu->r[1] + 0x00000034u; /* 027B4014 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B4018 */ cpu->r[29] = 0x00000001u; L_027B401C: ; // 0x27b401c /* 027B401C */ _t2 = cpu->r[28] + 0xFFFFA498u; /* 027B401C */ cpu->r[7] = rbrew_read32(cpu->mem, _t2); /* 027B4020 */ _t3 = cpu->r[7] + 0x00000F38u; /* 027B4020 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B4024 */ _t4 = cpu->r[26] + 0xFFFFDB08u; /* 027B4024 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4); /* 027B4028 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[0]); /* 027B402C */ _t5 = cpu->r[7] + 0x00000F3Cu; /* 027B402C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027B4030 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4030 */ _t7 = _t6 & 0x00000001u; /* 027B4030 */ if (_t7) goto L_027B4034; else goto L_027B4038; L_027B4034: ; // 0x27b4034 /* 027B4034 */ cpu->r[12] = cpu->r[12] + cpu->r[27]; L_027B4038: ; // 0x27b4038 /* 027B4038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u); /* 027B403C */ _t8 = cpu->r[12] + 0x00000000u; /* 027B403C */ cpu->r[31] = rbrew_read32(cpu->mem, _t8); /* 027B4040 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4040 */ _t10 = _t9 & 0x00000001u; /* 027B4040 */ if (_t10) goto L_027B4044; else goto L_027B4054; L_027B4044: ; // 0x27b4044 /* 027B4044 */ cpu->r[0] = 0x10110000u; /* 027B4048 */ _t11 = cpu->r[26] + 0xFFFFDB08u; /* 027B4048 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]); /* 027B404C */ cpu->r[0] = cpu->r[0] + 0xFFFFADA0u; /* 027B4050 */ _t12 = cpu->r[25] + 0xFFFFE28Cu; /* 027B4050 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]); L_027B4054: ; // 0x27b4054 /* 027B4054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B4058 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4058 */ _t14 = _t13 & 0x00000001u; /* 027B4058 */ if (_t14) goto L_027B4088; else goto L_027B405C; L_027B405C: ; // 0x27b405c /* 027B405C */ _t15 = cpu->r[31] + 0x0000000Cu; /* 027B405C */ cpu->r[9] = rbrew_read32(cpu->mem, _t15); /* 027B4060 */ _t16 = cpu->r[9] + 0x00000014u; /* 027B4060 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B4064 */ cpu->ctr = cpu->r[0]; /* 027B4068 */ cpu->r[3] = cpu->r[31]; /* 027B406C */ cpu->r[4] = cpu->r[25] + 0xFFFFE28Cu; /* 027B4070 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4074 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B4078 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4078 */ _t18 = _t17 & 0x00000001u; /* 027B4078 */ if (_t18) goto L_027B4088; else goto L_027B407C; L_027B407C: ; // 0x27b407c /* 027B407C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B4080 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4080 */ _t20 = _t19 & 0x00000001u; /* 027B4080 */ if (_t20) goto L_027B4088; else goto L_027B4084; L_027B4084: ; // 0x27b4084 /* 027B4084 */ _t21 = cpu->r[31] + 0x000009D8u; /* 027B4084 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]); L_027B4088: ; // 0x27b4088 /* 027B4088 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu; /* 027B4088 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027B408C */ cpu->r[23] = cpu->r[23] + 0x00000001u; /* 027B4090 */ cpu->r[27] = cpu->r[27] + 0x00000004u; /* 027B4094 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4094 */ _t23 = _t22 & 0x00000001u; /* 027B4094 */ if (_t23) goto L_027B4098; else goto L_027B401C; L_027B4098: ; // 0x27b4098 /* 027B4098 */ /* nop */ /* 027B409C */ _t24 = cpu->r[1] + 0x00000034u; /* 027B409C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B40A0 */ cpu->lr = cpu->r[0]; /* 027B40A4 */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027B40A8 */ return; } // fn_027B40AC @ 0x27b40ac void Gambit_fn_027B40AC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16; L_027B40AC: ; // 0x27b40ac /* 027B40AC */ cpu->r[0] = cpu->lr; /* 027B40B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B40B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B40B0 */ cpu->r[1] = _t0; /* 027B40B4 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B40B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B40B8 */ _t2 = cpu->r[1] + 0x00000008u; /* 027B40B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B40BC */ cpu->r[30] = cpu->r[3]; /* 027B40BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B40C0 */ cpu->r[31] = cpu->r[4]; /* 027B40C4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B40C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B40C8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B40C8 */ _t5 = _t4 & 0x00000001u; /* 027B40C8 */ if (_t5) goto L_027B4114; else goto L_027B40CC; L_027B40CC: ; // 0x27b40cc /* 027B40CC */ cpu->r[10] = 0x10110000u; /* 027B40D0 */ cpu->r[10] = cpu->r[10] + 0xFFFFAE6Cu; /* 027B40D4 */ cpu->r[12] = 0x101D0000u; /* 027B40D8 */ _t6 = cpu->r[30] + 0x0000000Cu; /* 027B40D8 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]); /* 027B40DC */ _t7 = cpu->r[12] + 0xFFFF932Cu; /* 027B40DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t7); /* 027B40DC */ cpu->r[12] = _t7; /* 027B40E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027B40E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B40E4 */ _t9 = _t8 & 0x00000001u; /* 027B40E4 */ if (_t9) goto L_027B40E8; else goto L_027B40F8; L_027B40E8: ; // 0x27b40e8 /* 027B40E8 */ cpu->r[0] = 0x00000000u; /* 027B40EC */ cpu->r[11] = 0x101D0000u; /* 027B40F0 */ _t10 = cpu->r[12] + 0x00000000u; /* 027B40F0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027B40F4 */ _t11 = cpu->r[11] + 0xFFFF9328u; /* 027B40F4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); L_027B40F8: ; // 0x27b40f8 /* 027B40F8 */ cpu->r[3] = cpu->r[30]; /* 027B40FC */ cpu->r[4] = 0x00000000u; /* 027B4100 */ Gambit_fn_02821E68(cpu); /* 027B4104 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B4108 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4108 */ _t13 = _t12 & 0x00000001u; /* 027B4108 */ if (_t13) goto L_027B4114; else goto L_027B410C; L_027B410C: ; // 0x27b410c /* 027B410C */ cpu->r[3] = cpu->r[30]; /* 027B4110 */ Gambit_fn_02801BB0(cpu); L_027B4114: ; // 0x27b4114 /* 027B4114 */ _t14 = cpu->r[1] + 0x00000014u; /* 027B4114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B4118 */ _t15 = cpu->r[1] + 0x00000008u; /* 027B4118 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15); /* 027B411C */ cpu->lr = cpu->r[0]; /* 027B4120 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027B4120 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027B4124 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B4128 */ return; } // fn_027B40B0 @ 0x27b40b0 void Gambit_fn_027B40B0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16; L_027B40B0: ; // 0x27b40b0 /* 027B40B0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B40B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B40B0 */ cpu->r[1] = _t0; /* 027B40B4 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B40B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B40B8 */ _t2 = cpu->r[1] + 0x00000008u; /* 027B40B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B40BC */ cpu->r[30] = cpu->r[3]; /* 027B40BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B40C0 */ cpu->r[31] = cpu->r[4]; /* 027B40C4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B40C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B40C8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B40C8 */ _t5 = _t4 & 0x00000001u; /* 027B40C8 */ if (_t5) goto L_027B4114; else goto L_027B40CC; L_027B40CC: ; // 0x27b40cc /* 027B40CC */ cpu->r[10] = 0x10110000u; /* 027B40D0 */ cpu->r[10] = cpu->r[10] + 0xFFFFAE6Cu; /* 027B40D4 */ cpu->r[12] = 0x101D0000u; /* 027B40D8 */ _t6 = cpu->r[30] + 0x0000000Cu; /* 027B40D8 */ rbrew_write32(cpu->mem, _t6, cpu->r[10]); /* 027B40DC */ _t7 = cpu->r[12] + 0xFFFF932Cu; /* 027B40DC */ cpu->r[11] = rbrew_read32(cpu->mem, _t7); /* 027B40DC */ cpu->r[12] = _t7; /* 027B40E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027B40E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B40E4 */ _t9 = _t8 & 0x00000001u; /* 027B40E4 */ if (_t9) goto L_027B40E8; else goto L_027B40F8; L_027B40E8: ; // 0x27b40e8 /* 027B40E8 */ cpu->r[0] = 0x00000000u; /* 027B40EC */ cpu->r[11] = 0x101D0000u; /* 027B40F0 */ _t10 = cpu->r[12] + 0x00000000u; /* 027B40F0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027B40F4 */ _t11 = cpu->r[11] + 0xFFFF9328u; /* 027B40F4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); L_027B40F8: ; // 0x27b40f8 /* 027B40F8 */ cpu->r[3] = cpu->r[30]; /* 027B40FC */ cpu->r[4] = 0x00000000u; /* 027B4100 */ Gambit_fn_02821E68(cpu); /* 027B4104 */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B4108 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4108 */ _t13 = _t12 & 0x00000001u; /* 027B4108 */ if (_t13) goto L_027B4114; else goto L_027B410C; L_027B410C: ; // 0x27b410c /* 027B410C */ cpu->r[3] = cpu->r[30]; /* 027B4110 */ Gambit_fn_02801BB0(cpu); L_027B4114: ; // 0x27b4114 /* 027B4114 */ _t14 = cpu->r[1] + 0x00000014u; /* 027B4114 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B4118 */ _t15 = cpu->r[1] + 0x00000008u; /* 027B4118 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15); /* 027B411C */ cpu->lr = cpu->r[0]; /* 027B4120 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027B4120 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027B4124 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B4128 */ return; } // fn_027B412C @ 0x27b412c void Gambit_fn_027B412C(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_027B412C: ; // 0x27b412c /* 027B412C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B4130 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4130 */ _t1 = _t0 & 0x00000001u; /* 027B4130 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4130 */ goto L_027B4134; L_027B4134: ; // 0x27b4134 /* 027B4134 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4138 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4138 */ _t3 = _t2 & 0x00000001u; /* 027B4138 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4138 */ goto L_027B413C; L_027B413C: ; // 0x27b413c /* 027B413C */ 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_027B4140 @ 0x27b4140 void Gambit_fn_027B4140(CPUState* cpu) { L_027B4140: ; // 0x27b4140 /* 027B4140 */ return; } // fn_027B4144 @ 0x27b4144 void Gambit_fn_027B4144(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4; L_027B4144: ; // 0x27b4144 /* 027B4144 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B4144 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4144 */ cpu->r[1] = _t0; /* 027B4148 */ cpu->r[0] = cpu->lr; /* 027B414C */ /* nop */ /* 027B4150 */ cpu->r[28] = cpu->r[7]; /* 027B4154 */ cpu->r[30] = cpu->r[4]; /* 027B4158 */ cpu->r[26] = cpu->r[5]; /* 027B415C */ cpu->r[5] = 0x00000004u; /* 027B4160 */ cpu->r[4] = cpu->r[28]; /* 027B4164 */ _t1 = cpu->r[1] + 0x00000024u; /* 027B4164 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B4168 */ cpu->r[29] = cpu->r[3]; /* 027B416C */ cpu->r[3] = 0x00000F80u; /* 027B4170 */ cpu->r[27] = cpu->r[6]; /* 027B4174 */ Gambit_fn_02801AC8(cpu); /* 027B4178 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B417C */ cpu->r[31] = cpu->r[3]; /* 027B4180 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4180 */ _t3 = _t2 & 0x00000001u; /* 027B4180 */ if (_t3) goto L_027B418C; else goto L_027B4184; L_027B4184: ; // 0x27b4184 /* 027B4184 */ Gambit_fn_027B23EC(cpu); /* 027B4188 */ cpu->r[31] = cpu->r[3]; L_027B418C: ; // 0x27b418c /* 027B418C */ cpu->r[8] = cpu->r[28]; /* 027B4190 */ cpu->r[7] = cpu->r[27]; /* 027B4194 */ cpu->r[6] = cpu->r[26]; /* 027B4198 */ cpu->r[5] = cpu->r[30]; /* 027B419C */ cpu->r[4] = cpu->r[31]; /* 027B41A0 */ cpu->r[3] = cpu->r[29]; /* 027B41A4 */ Gambit_fn_0292D7E4(cpu); /* 027B41A8 */ cpu->r[3] = cpu->r[31]; /* 027B41AC */ /* nop */ /* 027B41B0 */ _t4 = cpu->r[1] + 0x00000024u; /* 027B41B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027B41B4 */ cpu->lr = cpu->r[0]; /* 027B41B8 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B41BC */ return; } // fn_027B41C0 @ 0x27b41c0 void Gambit_fn_027B41C0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B41C0: ; // 0x27b41c0 /* 027B41C0 */ cpu->r[0] = cpu->lr; /* 027B41C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B41C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B41C4 */ cpu->r[1] = _t0; /* 027B41C8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B41C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B41CC */ _t2 = cpu->r[1] + 0x00000008u; /* 027B41CC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B41D0 */ cpu->r[31] = 0x101F0000u; /* 027B41D4 */ cpu->r[12] = 0x101F0000u; /* 027B41D8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B41D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B41DC */ _t4 = cpu->r[12] + 0x00002B70u; /* 027B41DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t4); /* 027B41DC */ cpu->r[12] = _t4; /* 027B41E0 */ cpu->r[31] = cpu->r[31] + 0x00002B50u; /* 027B41E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B41E8 */ cpu->r[30] = cpu->r[3]; /* 027B41EC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B41EC */ _t6 = _t5 & 0x00000001u; /* 027B41EC */ if (_t6) goto L_027B41FC; else goto L_027B41F0; L_027B41F0: ; // 0x27b41f0 /* 027B41F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027B41F4 */ cpu->r[3] = cpu->r[31] + cpu->r[0]; /* 027B41F8 */ goto L_027B4248; L_027B41FC: ; // 0x27b41fc /* 027B41FC */ cpu->r[8] = 0x00000001u; /* 027B4200 */ cpu->r[9] = 0x00000500u; /* 027B4204 */ _t7 = cpu->r[12] + 0x00000000u; /* 027B4204 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027B4208 */ cpu->r[10] = 0x000002D0u; /* 027B420C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFFF8u); /* 027B4210 */ _t8 = cpu->r[31] + 0x00000000u; /* 027B4210 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]); /* 027B4214 */ cpu->r[3] = cpu->r[31] + 0x00000008u; /* 027B4218 */ _t9 = cpu->r[31] + 0x00000004u; /* 027B4218 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]); /* 027B421C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B421C */ _t11 = _t10 & 0x00000001u; /* 027B421C */ if (_t11) goto L_027B4220; else goto L_027B4230; L_027B4220: ; // 0x27b4220 /* 027B4220 */ cpu->r[3] = 0x00000008u; /* 027B4224 */ Gambit_fn_02801A78(cpu); /* 027B4228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B422C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B422C */ _t13 = _t12 & 0x00000001u; /* 027B422C */ if (_t13) goto L_027B4240; else goto L_027B4230; L_027B4230: ; // 0x27b4230 /* 027B4230 */ cpu->r[11] = 0x00000356u; /* 027B4234 */ cpu->r[12] = 0x000001E0u; /* 027B4238 */ _t14 = cpu->r[3] + 0x00000000u; /* 027B4238 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]); /* 027B423C */ _t15 = cpu->r[3] + 0x00000004u; /* 027B423C */ rbrew_write32(cpu->mem, _t15, cpu->r[12]); L_027B4240: ; // 0x27b4240 /* 027B4240 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027B4244 */ cpu->r[3] = cpu->r[31] + cpu->r[0]; L_027B4248: ; // 0x27b4248 /* 027B4248 */ _t16 = cpu->r[1] + 0x00000014u; /* 027B4248 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B424C */ _t17 = cpu->r[1] + 0x00000008u; /* 027B424C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027B4250 */ cpu->lr = cpu->r[0]; /* 027B4254 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B4254 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B4258 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B425C */ return; } // fn_027B41C4 @ 0x27b41c4 void Gambit_fn_027B41C4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B41C4: ; // 0x27b41c4 /* 027B41C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B41C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B41C4 */ cpu->r[1] = _t0; /* 027B41C8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B41C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B41CC */ _t2 = cpu->r[1] + 0x00000008u; /* 027B41CC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B41D0 */ cpu->r[31] = 0x101F0000u; /* 027B41D4 */ cpu->r[12] = 0x101F0000u; /* 027B41D8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B41D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B41DC */ _t4 = cpu->r[12] + 0x00002B70u; /* 027B41DC */ cpu->r[7] = rbrew_read32(cpu->mem, _t4); /* 027B41DC */ cpu->r[12] = _t4; /* 027B41E0 */ cpu->r[31] = cpu->r[31] + 0x00002B50u; /* 027B41E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B41E8 */ cpu->r[30] = cpu->r[3]; /* 027B41EC */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B41EC */ _t6 = _t5 & 0x00000001u; /* 027B41EC */ if (_t6) goto L_027B41FC; else goto L_027B41F0; L_027B41F0: ; // 0x27b41f0 /* 027B41F0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027B41F4 */ cpu->r[3] = cpu->r[31] + cpu->r[0]; /* 027B41F8 */ goto L_027B4248; L_027B41FC: ; // 0x27b41fc /* 027B41FC */ cpu->r[8] = 0x00000001u; /* 027B4200 */ cpu->r[9] = 0x00000500u; /* 027B4204 */ _t7 = cpu->r[12] + 0x00000000u; /* 027B4204 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027B4208 */ cpu->r[10] = 0x000002D0u; /* 027B420C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFFF8u); /* 027B4210 */ _t8 = cpu->r[31] + 0x00000000u; /* 027B4210 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]); /* 027B4214 */ cpu->r[3] = cpu->r[31] + 0x00000008u; /* 027B4218 */ _t9 = cpu->r[31] + 0x00000004u; /* 027B4218 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]); /* 027B421C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B421C */ _t11 = _t10 & 0x00000001u; /* 027B421C */ if (_t11) goto L_027B4220; else goto L_027B4230; L_027B4220: ; // 0x27b4220 /* 027B4220 */ cpu->r[3] = 0x00000008u; /* 027B4224 */ Gambit_fn_02801A78(cpu); /* 027B4228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B422C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B422C */ _t13 = _t12 & 0x00000001u; /* 027B422C */ if (_t13) goto L_027B4240; else goto L_027B4230; L_027B4230: ; // 0x27b4230 /* 027B4230 */ cpu->r[11] = 0x00000356u; /* 027B4234 */ cpu->r[12] = 0x000001E0u; /* 027B4238 */ _t14 = cpu->r[3] + 0x00000000u; /* 027B4238 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]); /* 027B423C */ _t15 = cpu->r[3] + 0x00000004u; /* 027B423C */ rbrew_write32(cpu->mem, _t15, cpu->r[12]); L_027B4240: ; // 0x27b4240 /* 027B4240 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027B4244 */ cpu->r[3] = cpu->r[31] + cpu->r[0]; L_027B4248: ; // 0x27b4248 /* 027B4248 */ _t16 = cpu->r[1] + 0x00000014u; /* 027B4248 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B424C */ _t17 = cpu->r[1] + 0x00000008u; /* 027B424C */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027B4250 */ cpu->lr = cpu->r[0]; /* 027B4254 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B4254 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B4258 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B425C */ return; } // fn_027B4260 @ 0x27b4260 void Gambit_fn_027B4260(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B4260: ; // 0x27b4260 /* 027B4260 */ cpu->r[0] = cpu->lr; /* 027B4264 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B4264 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4264 */ cpu->r[1] = _t0; /* 027B4268 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B4268 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B426C */ _t2 = cpu->r[1] + 0x00000008u; /* 027B426C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B4270 */ cpu->r[31] = 0x101F0000u; /* 027B4274 */ cpu->r[12] = 0x101F0000u; /* 027B4278 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B4278 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B427C */ _t4 = cpu->r[12] + 0x00002B74u; /* 027B427C */ cpu->r[7] = rbrew_read32(cpu->mem, _t4); /* 027B427C */ cpu->r[12] = _t4; /* 027B4280 */ cpu->r[31] = cpu->r[31] + 0x00002B60u; /* 027B4284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B4288 */ cpu->r[30] = cpu->r[3]; /* 027B428C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B428C */ _t6 = _t5 & 0x00000001u; /* 027B428C */ if (_t6) goto L_027B429C; else goto L_027B4290; L_027B4290: ; // 0x27b4290 /* 027B4290 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027B4294 */ cpu->r[3] = cpu->r[31] + cpu->r[0]; /* 027B4298 */ goto L_027B42E8; L_027B429C: ; // 0x27b429c /* 027B429C */ cpu->r[8] = 0x00000001u; /* 027B42A0 */ cpu->r[9] = 0x00000500u; /* 027B42A4 */ _t7 = cpu->r[12] + 0x00000000u; /* 027B42A4 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027B42A8 */ cpu->r[10] = 0x000002D0u; /* 027B42AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFFF8u); /* 027B42B0 */ _t8 = cpu->r[31] + 0x00000000u; /* 027B42B0 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]); /* 027B42B4 */ cpu->r[3] = cpu->r[31] + 0x00000008u; /* 027B42B8 */ _t9 = cpu->r[31] + 0x00000004u; /* 027B42B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]); /* 027B42BC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B42BC */ _t11 = _t10 & 0x00000001u; /* 027B42BC */ if (_t11) goto L_027B42C0; else goto L_027B42D0; L_027B42C0: ; // 0x27b42c0 /* 027B42C0 */ cpu->r[3] = 0x00000008u; /* 027B42C4 */ Gambit_fn_02801A78(cpu); /* 027B42C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B42CC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B42CC */ _t13 = _t12 & 0x00000001u; /* 027B42CC */ if (_t13) goto L_027B42E0; else goto L_027B42D0; L_027B42D0: ; // 0x27b42d0 /* 027B42D0 */ cpu->r[11] = 0x00000356u; /* 027B42D4 */ cpu->r[12] = 0x000001E0u; /* 027B42D8 */ _t14 = cpu->r[3] + 0x00000000u; /* 027B42D8 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]); /* 027B42DC */ _t15 = cpu->r[3] + 0x00000004u; /* 027B42DC */ rbrew_write32(cpu->mem, _t15, cpu->r[12]); L_027B42E0: ; // 0x27b42e0 /* 027B42E0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027B42E4 */ cpu->r[3] = cpu->r[31] + cpu->r[0]; L_027B42E8: ; // 0x27b42e8 /* 027B42E8 */ _t16 = cpu->r[1] + 0x00000014u; /* 027B42E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B42EC */ _t17 = cpu->r[1] + 0x00000008u; /* 027B42EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027B42F0 */ cpu->lr = cpu->r[0]; /* 027B42F4 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B42F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B42F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B42FC */ return; } // fn_027B4264 @ 0x27b4264 void Gambit_fn_027B4264(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B4264: ; // 0x27b4264 /* 027B4264 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B4264 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4264 */ cpu->r[1] = _t0; /* 027B4268 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B4268 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B426C */ _t2 = cpu->r[1] + 0x00000008u; /* 027B426C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B4270 */ cpu->r[31] = 0x101F0000u; /* 027B4274 */ cpu->r[12] = 0x101F0000u; /* 027B4278 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B4278 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B427C */ _t4 = cpu->r[12] + 0x00002B74u; /* 027B427C */ cpu->r[7] = rbrew_read32(cpu->mem, _t4); /* 027B427C */ cpu->r[12] = _t4; /* 027B4280 */ cpu->r[31] = cpu->r[31] + 0x00002B60u; /* 027B4284 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B4288 */ cpu->r[30] = cpu->r[3]; /* 027B428C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B428C */ _t6 = _t5 & 0x00000001u; /* 027B428C */ if (_t6) goto L_027B429C; else goto L_027B4290; L_027B4290: ; // 0x27b4290 /* 027B4290 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027B4294 */ cpu->r[3] = cpu->r[31] + cpu->r[0]; /* 027B4298 */ goto L_027B42E8; L_027B429C: ; // 0x27b429c /* 027B429C */ cpu->r[8] = 0x00000001u; /* 027B42A0 */ cpu->r[9] = 0x00000500u; /* 027B42A4 */ _t7 = cpu->r[12] + 0x00000000u; /* 027B42A4 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027B42A8 */ cpu->r[10] = 0x000002D0u; /* 027B42AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0xFFFFFFF8u); /* 027B42B0 */ _t8 = cpu->r[31] + 0x00000000u; /* 027B42B0 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]); /* 027B42B4 */ cpu->r[3] = cpu->r[31] + 0x00000008u; /* 027B42B8 */ _t9 = cpu->r[31] + 0x00000004u; /* 027B42B8 */ rbrew_write32(cpu->mem, _t9, cpu->r[10]); /* 027B42BC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B42BC */ _t11 = _t10 & 0x00000001u; /* 027B42BC */ if (_t11) goto L_027B42C0; else goto L_027B42D0; L_027B42C0: ; // 0x27b42c0 /* 027B42C0 */ cpu->r[3] = 0x00000008u; /* 027B42C4 */ Gambit_fn_02801A78(cpu); /* 027B42C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B42CC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B42CC */ _t13 = _t12 & 0x00000001u; /* 027B42CC */ if (_t13) goto L_027B42E0; else goto L_027B42D0; L_027B42D0: ; // 0x27b42d0 /* 027B42D0 */ cpu->r[11] = 0x00000356u; /* 027B42D4 */ cpu->r[12] = 0x000001E0u; /* 027B42D8 */ _t14 = cpu->r[3] + 0x00000000u; /* 027B42D8 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]); /* 027B42DC */ _t15 = cpu->r[3] + 0x00000004u; /* 027B42DC */ rbrew_write32(cpu->mem, _t15, cpu->r[12]); L_027B42E0: ; // 0x27b42e0 /* 027B42E0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027B42E4 */ cpu->r[3] = cpu->r[31] + cpu->r[0]; L_027B42E8: ; // 0x27b42e8 /* 027B42E8 */ _t16 = cpu->r[1] + 0x00000014u; /* 027B42E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B42EC */ _t17 = cpu->r[1] + 0x00000008u; /* 027B42EC */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027B42F0 */ cpu->lr = cpu->r[0]; /* 027B42F4 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B42F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B42F8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B42FC */ return; } // fn_027B4300 @ 0x27b4300 void Gambit_fn_027B4300(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6; L_027B4300: ; // 0x27b4300 /* 027B4300 */ cpu->r[10] = 0x101F0000u; /* 027B4304 */ cpu->r[3] = 0x101F0000u; /* 027B4308 */ _t0 = cpu->r[10] + 0x00002B80u; /* 027B4308 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B4308 */ cpu->r[10] = _t0; /* 027B430C */ cpu->r[3] = cpu->r[3] + 0x00002B78u; /* 027B4310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B4314 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4314 */ _t2 = _t1 & 0x00000001u; /* 027B4314 */ _t3 = _t2 ^ 0x00000001u; /* 027B4314 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4314 */ goto L_027B4318; L_027B4318: ; // 0x27b4318 /* 027B4318 */ cpu->r[0] = 0x00000001u; /* 027B431C */ cpu->r[9] = 0x00000500u; /* 027B4320 */ _t4 = cpu->r[10] + 0x00000000u; /* 027B4320 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B4324 */ cpu->r[11] = 0x000002D0u; /* 027B4328 */ _t5 = cpu->r[3] + 0x00000000u; /* 027B4328 */ rbrew_write32(cpu->mem, _t5, cpu->r[9]); /* 027B432C */ _t6 = cpu->r[3] + 0x00000004u; /* 027B432C */ rbrew_write32(cpu->mem, _t6, cpu->r[11]); /* 027B4330 */ return; } // fn_027B4334 @ 0x27b4334 void Gambit_fn_027B4334(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7; L_027B4334: ; // 0x27b4334 /* 027B4334 */ cpu->r[12] = 0x101F0000u; /* 027B4338 */ cpu->r[3] = 0x101F0000u; /* 027B433C */ _t0 = cpu->r[12] + 0x00002B8Cu; /* 027B433C */ cpu->r[0] = rbrew_read32(cpu->mem, _t0); /* 027B433C */ cpu->r[12] = _t0; /* 027B4340 */ cpu->r[3] = cpu->r[3] + 0x00002B84u; /* 027B4344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4348 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4348 */ _t2 = _t1 & 0x00000001u; /* 027B4348 */ _t3 = _t2 ^ 0x00000001u; /* 027B4348 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4348 */ goto L_027B434C; L_027B434C: ; // 0x27b434c /* 027B434C */ cpu->r[11] = 0x10110000u; /* 027B4350 */ cpu->r[10] = 0x00000001u; /* 027B4354 */ _t4 = cpu->r[11] + 0xFFFFAE80u; /* 027B4354 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t4); /* 027B4358 */ _t5 = cpu->r[12] + 0x00000000u; /* 027B4358 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]); /* 027B435C */ _t6 = cpu->r[3] + 0x00000004u; /* 027B435C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[0]); /* 027B4360 */ _t7 = cpu->r[3] + 0x00000000u; /* 027B4360 */ rbrew_write_f32(cpu->mem, _t7, cpu->f[0]); /* 027B4364 */ return; } // fn_027B4374 @ 0x27b4374 void Gambit_fn_027B4374(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_027B4374: ; // 0x27b4374 /* 027B4374 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B4374 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4374 */ cpu->r[1] = _t0; /* 027B4378 */ _t1 = cpu->r[9] + 0x00002B98u; /* 027B4378 */ cpu->r[10] = rbrew_read32(cpu->mem, _t1); /* 027B4378 */ cpu->r[9] = _t1; /* 027B437C */ cpu->r[8] = 0x101F0000u; /* 027B4380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B4384 */ cpu->r[8] = cpu->r[8] + 0x00002B90u; /* 027B4388 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4388 */ _t3 = _t2 & 0x00000001u; /* 027B4388 */ if (_t3) goto L_027B438C; else goto L_027B4404; L_027B438C: ; // 0x27b438c /* 027B438C */ cpu->r[0] = 0x00000001u; /* 027B4390 */ _t4 = cpu->r[9] + 0x00000000u; /* 027B4390 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B4394 */ Gambit_fn_027B4300(cpu); /* 027B4398 */ cpu->r[4] = 0x10110000u; /* 027B439C */ _t5 = cpu->r[3] + 0x00000000u; /* 027B439C */ cpu->r[11] = rbrew_read32(cpu->mem, _t5); /* 027B43A0 */ _t6 = cpu->r[4] + 0xFFFFAE88u; /* 027B43A0 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t6); /* 027B43A4 */ cpu->r[7] = 0x43300000u; /* 027B43A8 */ cpu->r[9] = cpu->r[11] ^ 0x80000000u; /* 027B43AC */ _t7 = cpu->r[1] + 0x00000008u; /* 027B43AC */ rbrew_write32(cpu->mem, _t7, cpu->r[7]); /* 027B43B0 */ _t8 = cpu->r[1] + 0x0000000Cu; /* 027B43B0 */ rbrew_write32(cpu->mem, _t8, cpu->r[9]); /* 027B43B4 */ _t9 = cpu->r[1] + 0x00000008u; /* 027B43B4 */ cpu->f[9] = rbrew_read_f64(cpu->mem, _t9); /* 027B43B8 */ cpu->f[11] = cpu->f[9] - cpu->f[0]; /* 027B43BC */ cpu->f[11] = (double)(float)cpu->f[11]; /* 027B43C0 */ Gambit_fn_027B4334(cpu); /* 027B43C4 */ _t10 = cpu->r[3] + 0x00000000u; /* 027B43C4 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t10); /* 027B43C8 */ cpu->f[9] = cpu->f[11] * cpu->f[8]; /* 027B43CC */ Gambit_fn_027B4300(cpu); /* 027B43D0 */ _t11 = cpu->r[3] + 0x00000004u; /* 027B43D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027B43D4 */ _t12 = cpu->r[4] + 0xFFFFAE88u; /* 027B43D4 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t12); /* 027B43D8 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u; /* 027B43DC */ _t13 = cpu->r[1] + 0x00000008u; /* 027B43DC */ rbrew_write32(cpu->mem, _t13, cpu->r[7]); /* 027B43E0 */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027B43E0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027B43E4 */ _t15 = cpu->r[1] + 0x00000008u; /* 027B43E4 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t15); /* 027B43E8 */ cpu->f[10] = cpu->f[8] - cpu->f[13]; /* 027B43EC */ cpu->f[13] = (double)(float)cpu->f[10]; /* 027B43F0 */ Gambit_fn_027B4334(cpu); /* 027B43F4 */ _t16 = cpu->r[3] + 0x00000004u; /* 027B43F4 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t16); /* 027B43F8 */ cpu->f[12] = cpu->f[13] * cpu->f[12]; /* 027B43FC */ _t17 = cpu->r[8] + 0x00000000u; /* 027B43FC */ rbrew_write_f32(cpu->mem, _t17, cpu->f[9]); /* 027B4400 */ _t18 = cpu->r[8] + 0x00000004u; /* 027B4400 */ rbrew_write_f32(cpu->mem, _t18, cpu->f[12]); L_027B4404: ; // 0x27b4404 /* 027B4404 */ _t19 = cpu->r[1] + 0x00000014u; /* 027B4404 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B4408 */ cpu->lr = cpu->r[0]; /* 027B440C */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B4410 */ cpu->r[3] = cpu->r[8]; /* 027B4414 */ return; } // fn_027B4418 @ 0x27b4418 void Gambit_fn_027B4418(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_027B4418: ; // 0x27b4418 /* 027B4418 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B441C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B441C */ _t1 = _t0 & 0x00000001u; /* 027B441C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B441C */ goto L_027B4420; L_027B4420: ; // 0x27b4420 /* 027B4420 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4424 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4424 */ _t3 = _t2 & 0x00000001u; /* 027B4424 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4424 */ goto L_027B4428; L_027B4428: ; // 0x27b4428 /* 027B4428 */ 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_027B442C @ 0x27b442c void Gambit_fn_027B442C(CPUState* cpu) { L_027B442C: ; // 0x27b442c /* 027B442C */ return; } // fn_027B4430 @ 0x27b4430 void Gambit_fn_027B4430(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39; L_027B4430: ; // 0x27b4430 /* 027B4430 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B4430 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4430 */ cpu->r[1] = _t0; /* 027B4434 */ /* nop */ /* 027B4438 */ cpu->r[0] = cpu->lr; /* 027B443C */ _t1 = cpu->r[1] + 0x00000024u; /* 027B443C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B4440 */ cpu->r[28] = 0x101D0000u; /* 027B4444 */ _t2 = cpu->r[28] + 0xFFFF9330u; /* 027B4444 */ cpu->r[31] = rbrew_read32(cpu->mem, _t2); /* 027B4444 */ cpu->r[28] = _t2; /* 027B4448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B444C */ cpu->r[30] = cpu->r[3]; /* 027B4450 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4450 */ _t4 = _t3 & 0x00000001u; /* 027B4450 */ if (_t4) goto L_027B4454; else goto L_027B4564; L_027B4454: ; // 0x27b4454 /* 027B4454 */ cpu->r[4] = cpu->r[30]; /* 027B4458 */ cpu->r[3] = 0x0000012Cu; /* 027B445C */ cpu->r[5] = 0x00000004u; /* 027B4460 */ Gambit_fn_02801ADC(cpu); /* 027B4464 */ cpu->r[31] = cpu->r[3]; /* 027B4468 */ cpu->r[29] = cpu->r[31] + 0x00000004u; /* 027B4468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B446C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B446C */ _t6 = _t5 & 0x00000001u; /* 027B446C */ if (_t6) goto L_027B448C; else goto L_027B4470; L_027B4470: ; // 0x27b4470 /* 027B4470 */ cpu->r[5] = 0x00000003u; /* 027B4474 */ cpu->r[4] = cpu->r[30]; /* 027B4478 */ cpu->r[3] = cpu->r[29]; /* 027B447C */ Gambit_fn_02821D88(cpu); /* 027B4480 */ cpu->r[5] = 0x10110000u; /* 027B4484 */ cpu->r[5] = cpu->r[5] + 0xFFFFAF9Cu; /* 027B4488 */ _t7 = cpu->r[29] + 0x0000000Cu; /* 027B4488 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]); L_027B448C: ; // 0x27b448c /* 027B448C */ cpu->r[12] = 0x101D0000u; /* 027B4490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B4494 */ _t8 = cpu->r[12] + 0xFFFF9338u; /* 027B4494 */ rbrew_write32(cpu->mem, _t8, cpu->r[29]); /* 027B4498 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4498 */ _t10 = _t9 & 0x00000001u; /* 027B4498 */ if (_t10) goto L_027B455C; else goto L_027B449C; L_027B449C: ; // 0x27b449c /* 027B449C */ cpu->r[6] = 0x10110000u; /* 027B44A0 */ cpu->r[6] = cpu->r[6] + 0xFFFFAFACu; /* 027B44A4 */ cpu->r[27] = cpu->r[31] + 0x0000001Cu; /* 027B44A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027B44A8 */ _t11 = cpu->r[31] + 0x00000000u; /* 027B44A8 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]); /* 027B44AC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B44AC */ _t13 = _t12 & 0x00000001u; /* 027B44AC */ if (_t13) goto L_027B44B0; else goto L_027B44C0; L_027B44B0: ; // 0x27b44b0 /* 027B44B0 */ cpu->r[3] = 0x0000010Cu; /* 027B44B4 */ Gambit_fn_02801A78(cpu); /* 027B44B8 */ cpu->r[27] = cpu->r[3]; /* 027B44B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027B44BC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B44BC */ _t15 = _t14 & 0x00000001u; /* 027B44BC */ if (_t15) goto L_027B4554; else goto L_027B44C0; L_027B44C0: ; // 0x27b44c0 /* 027B44C0 */ cpu->r[29] = cpu->r[27]; /* 027B44C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B44C4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B44C4 */ _t17 = _t16 & 0x00000001u; /* 027B44C4 */ if (_t17) goto L_027B44C8; else goto L_027B44D8; L_027B44C8: ; // 0x27b44c8 /* 027B44C8 */ cpu->r[3] = 0x0000010Cu; /* 027B44CC */ Gambit_fn_02801A78(cpu); /* 027B44D0 */ cpu->r[29] = cpu->r[3]; /* 027B44D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B44D4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B44D4 */ _t19 = _t18 & 0x00000001u; /* 027B44D4 */ if (_t19) goto L_027B4548; else goto L_027B44D8; L_027B44D8: ; // 0x27b44d8 /* 027B44D8 */ cpu->r[3] = cpu->r[29]; /* 027B44D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B44DC */ cpu->r[30] = 0x10110000u; /* 027B44E0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B44E0 */ _t21 = _t20 & 0x00000001u; /* 027B44E0 */ if (_t21) goto L_027B44E4; else goto L_027B4510; L_027B44E4: ; // 0x27b44e4 /* 027B44E4 */ cpu->r[3] = 0x0000000Cu; /* 027B44E8 */ Gambit_fn_02801A78(cpu); /* 027B44EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B44F0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B44F0 */ _t23 = _t22 & 0x00000001u; /* 027B44F0 */ if (_t23) goto L_027B44F4; else goto L_027B4510; L_027B44F4: ; // 0x27b44f4 /* 027B44F4 */ cpu->r[0] = 0x10110000u; /* 027B44F8 */ _t24 = cpu->r[30] + 0x00007399u; /* 027B44F8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t24); /* 027B44FC */ cpu->r[0] = cpu->r[0] + 0xFFFFAF30u; /* 027B4500 */ _t25 = cpu->r[29] + 0x00000000u; /* 027B4500 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 027B4504 */ _t26 = cpu->r[29] + 0x00000004u; /* 027B4504 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]); /* 027B4508 */ _t27 = cpu->r[12] + 0x00000000u; /* 027B4508 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[9]); /* 027B450C */ goto L_027B4548; L_027B4510: ; // 0x27b4510 /* 027B4510 */ cpu->r[8] = 0x10110000u; /* 027B4514 */ cpu->r[7] = cpu->r[29] + 0x0000000Cu; /* 027B4518 */ cpu->r[8] = cpu->r[8] + 0xFFFFAF18u; /* 027B451C */ _t28 = cpu->r[3] + 0x00000000u; /* 027B451C */ rbrew_write32(cpu->mem, _t28, cpu->r[7]); /* 027B4520 */ cpu->r[0] = 0x00000100u; /* 027B4524 */ _t29 = cpu->r[3] + 0x00000004u; /* 027B4524 */ rbrew_write32(cpu->mem, _t29, cpu->r[8]); /* 027B4528 */ _t30 = cpu->r[3] + 0x00000008u; /* 027B4528 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]); /* 027B452C */ _t31 = cpu->r[30] + 0x00007399u; /* 027B452C */ cpu->r[9] = rbrew_read8(cpu->mem, _t31); /* 027B4530 */ cpu->r[0] = 0x10110000u; /* 027B4534 */ _t32 = cpu->r[29] + 0x00000000u; /* 027B4534 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32); /* 027B4538 */ cpu->r[0] = cpu->r[0] + 0xFFFFAF30u; /* 027B453C */ _t33 = cpu->r[29] + 0x0000010Bu; /* 027B453C */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[9]); /* 027B4540 */ _t34 = cpu->r[29] + 0x00000004u; /* 027B4540 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]); /* 027B4544 */ _t35 = cpu->r[12] + 0x00000000u; /* 027B4544 */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[9]); L_027B4548: ; // 0x27b4548 /* 027B4548 */ cpu->r[0] = 0x10110000u; /* 027B454C */ cpu->r[0] = cpu->r[0] + 0xFFFFAF48u; /* 027B4550 */ _t36 = cpu->r[27] + 0x00000004u; /* 027B4550 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]); L_027B4554: ; // 0x27b4554 /* 027B4554 */ _t37 = cpu->r[28] + 0x00000000u; /* 027B4554 */ rbrew_write32(cpu->mem, _t37, cpu->r[31]); /* 027B4558 */ goto L_027B4564; L_027B455C: ; // 0x27b455c /* 027B455C */ cpu->r[31] = 0x00000000u; /* 027B4560 */ _t38 = cpu->r[28] + 0x00000000u; /* 027B4560 */ rbrew_write32(cpu->mem, _t38, cpu->r[31]); L_027B4564: ; // 0x27b4564 /* 027B4564 */ cpu->r[3] = cpu->r[31]; /* 027B4568 */ /* nop */ /* 027B456C */ _t39 = cpu->r[1] + 0x00000024u; /* 027B456C */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027B4570 */ cpu->lr = cpu->r[0]; /* 027B4574 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B4578 */ return; } // fn_027B457C @ 0x27b457c void Gambit_fn_027B457C(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_027B457C: ; // 0x27b457c /* 027B457C */ cpu->r[0] = cpu->lr; /* 027B4580 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B4580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4580 */ cpu->r[1] = _t0; /* 027B4584 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B4584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B4588 */ cpu->r[31] = cpu->r[3]; /* 027B458C */ cpu->r[3] = cpu->r[4]; /* 027B4590 */ cpu->r[4] = 0x10110000u; /* 027B4594 */ _t2 = cpu->r[1] + 0x00000008u; /* 027B4594 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B4598 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B4598 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B459C */ cpu->r[4] = cpu->r[4] + 0xFFFFAF90u; /* 027B45A0 */ _t4 = cpu->r[31] + 0x00000014u; /* 027B45A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[3]); /* 027B45A4 */ Gambit_fn_027B4840(cpu); /* 027B45A8 */ cpu->r[6] = 0x00000001u; /* 027B45AC */ cpu->r[7] = 0xFFFFFFFFu; /* 027B45B0 */ _t5 = cpu->r[31] + 0x00000128u; /* 027B45B0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[6]); /* 027B45B4 */ cpu->r[3] = 0x00000010u; /* 027B45B8 */ _t6 = cpu->r[31] + 0x00000018u; /* 027B45B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[7]); /* 027B45BC */ Gambit_fn_02801A78(cpu); /* 027B45C0 */ cpu->r[31] = cpu->r[3]; /* 027B45C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B45C4 */ cpu->r[30] = 0x00000000u; /* 027B45C8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B45C8 */ _t8 = _t7 & 0x00000001u; /* 027B45C8 */ if (_t8) goto L_027B460C; else goto L_027B45CC; L_027B45CC: ; // 0x27b45cc /* 027B45CC */ _t9 = cpu->r[31] + 0x00000004u; /* 027B45CC */ rbrew_write32(cpu->mem, _t9, cpu->r[30]); /* 027B45D0 */ cpu->r[12] = 0x101D0000u; /* 027B45D4 */ _t10 = cpu->r[31] + 0x0000000Cu; /* 027B45D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]); /* 027B45D8 */ cpu->r[3] = 0x101D0000u; /* 027B45DC */ _t11 = cpu->r[31] + 0x00000000u; /* 027B45DC */ rbrew_write32(cpu->mem, _t11, cpu->r[30]); /* 027B45E0 */ _t12 = cpu->r[31] + 0x00000008u; /* 027B45E0 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]); /* 027B45E4 */ _t13 = cpu->r[3] + 0xFFFF98F0u; /* 027B45E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13); /* 027B45E8 */ _t14 = cpu->r[12] + 0xFFFF9334u; /* 027B45E8 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]); /* 027B45EC */ Gambit_fn_02826F20(cpu); /* 027B45F0 */ _t15 = cpu->r[3] + 0x0000000Cu; /* 027B45F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15); /* 027B45F4 */ _t16 = cpu->r[8] + 0x00000034u; /* 027B45F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16); /* 027B45F8 */ cpu->ctr = cpu->r[9]; /* 027B45FC */ cpu->r[4] = 0x00000078u; /* 027B4600 */ cpu->r[5] = 0x00000004u; /* 027B4604 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4608 */ goto L_027B463C; L_027B460C: ; // 0x27b460c /* 027B460C */ cpu->r[3] = 0x101D0000u; /* 027B4610 */ cpu->r[12] = 0x101D0000u; /* 027B4614 */ cpu->r[31] = 0x00000000u; /* 027B4618 */ _t17 = cpu->r[3] + 0xFFFF98F0u; /* 027B4618 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17); /* 027B461C */ _t18 = cpu->r[12] + 0xFFFF9334u; /* 027B461C */ rbrew_write32(cpu->mem, _t18, cpu->r[31]); /* 027B4620 */ Gambit_fn_02826F20(cpu); /* 027B4624 */ _t19 = cpu->r[3] + 0x0000000Cu; /* 027B4624 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19); /* 027B4628 */ _t20 = cpu->r[8] + 0x00000034u; /* 027B4628 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20); /* 027B462C */ cpu->ctr = cpu->r[9]; /* 027B4630 */ cpu->r[5] = 0x00000004u; /* 027B4634 */ cpu->r[4] = 0x00000078u; /* 027B4638 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B463C: ; // 0x27b463c /* 027B463C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B4640 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4640 */ _t22 = _t21 & 0x00000001u; /* 027B4640 */ if (_t22) goto L_027B4658; else goto L_027B4644; L_027B4644: ; // 0x27b4644 /* 027B4644 */ _t23 = cpu->r[31] + 0x00000000u; /* 027B4644 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]); /* 027B4648 */ cpu->r[0] = 0x0000001Eu; /* 027B464C */ _t24 = cpu->r[31] + 0x00000008u; /* 027B464C */ rbrew_write32(cpu->mem, _t24, cpu->r[30]); /* 027B4650 */ _t25 = cpu->r[31] + 0x00000004u; /* 027B4650 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]); /* 027B4654 */ _t26 = cpu->r[31] + 0x0000000Cu; /* 027B4654 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]); L_027B4658: ; // 0x27b4658 /* 027B4658 */ _t27 = cpu->r[1] + 0x00000014u; /* 027B4658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27); /* 027B465C */ _t28 = cpu->r[1] + 0x00000008u; /* 027B465C */ cpu->r[30] = rbrew_read32(cpu->mem, _t28); /* 027B4660 */ cpu->lr = cpu->r[0]; /* 027B4664 */ _t29 = cpu->r[1] + 0x0000000Cu; /* 027B4664 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29); /* 027B4668 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B466C */ return; } // fn_027B4580 @ 0x27b4580 void Gambit_fn_027B4580(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_027B4580: ; // 0x27b4580 /* 027B4580 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B4580 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4580 */ cpu->r[1] = _t0; /* 027B4584 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B4584 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B4588 */ cpu->r[31] = cpu->r[3]; /* 027B458C */ cpu->r[3] = cpu->r[4]; /* 027B4590 */ cpu->r[4] = 0x10110000u; /* 027B4594 */ _t2 = cpu->r[1] + 0x00000008u; /* 027B4594 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B4598 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B4598 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B459C */ cpu->r[4] = cpu->r[4] + 0xFFFFAF90u; /* 027B45A0 */ _t4 = cpu->r[31] + 0x00000014u; /* 027B45A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[3]); /* 027B45A4 */ Gambit_fn_027B4840(cpu); /* 027B45A8 */ cpu->r[6] = 0x00000001u; /* 027B45AC */ cpu->r[7] = 0xFFFFFFFFu; /* 027B45B0 */ _t5 = cpu->r[31] + 0x00000128u; /* 027B45B0 */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[6]); /* 027B45B4 */ cpu->r[3] = 0x00000010u; /* 027B45B8 */ _t6 = cpu->r[31] + 0x00000018u; /* 027B45B8 */ rbrew_write32(cpu->mem, _t6, cpu->r[7]); /* 027B45BC */ Gambit_fn_02801A78(cpu); /* 027B45C0 */ cpu->r[31] = cpu->r[3]; /* 027B45C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B45C4 */ cpu->r[30] = 0x00000000u; /* 027B45C8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B45C8 */ _t8 = _t7 & 0x00000001u; /* 027B45C8 */ if (_t8) goto L_027B460C; else goto L_027B45CC; L_027B45CC: ; // 0x27b45cc /* 027B45CC */ _t9 = cpu->r[31] + 0x00000004u; /* 027B45CC */ rbrew_write32(cpu->mem, _t9, cpu->r[30]); /* 027B45D0 */ cpu->r[12] = 0x101D0000u; /* 027B45D4 */ _t10 = cpu->r[31] + 0x0000000Cu; /* 027B45D4 */ rbrew_write32(cpu->mem, _t10, cpu->r[30]); /* 027B45D8 */ cpu->r[3] = 0x101D0000u; /* 027B45DC */ _t11 = cpu->r[31] + 0x00000000u; /* 027B45DC */ rbrew_write32(cpu->mem, _t11, cpu->r[30]); /* 027B45E0 */ _t12 = cpu->r[31] + 0x00000008u; /* 027B45E0 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]); /* 027B45E4 */ _t13 = cpu->r[3] + 0xFFFF98F0u; /* 027B45E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13); /* 027B45E8 */ _t14 = cpu->r[12] + 0xFFFF9334u; /* 027B45E8 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]); /* 027B45EC */ Gambit_fn_02826F20(cpu); /* 027B45F0 */ _t15 = cpu->r[3] + 0x0000000Cu; /* 027B45F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15); /* 027B45F4 */ _t16 = cpu->r[8] + 0x00000034u; /* 027B45F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16); /* 027B45F8 */ cpu->ctr = cpu->r[9]; /* 027B45FC */ cpu->r[4] = 0x00000078u; /* 027B4600 */ cpu->r[5] = 0x00000004u; /* 027B4604 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4608 */ goto L_027B463C; L_027B460C: ; // 0x27b460c /* 027B460C */ cpu->r[3] = 0x101D0000u; /* 027B4610 */ cpu->r[12] = 0x101D0000u; /* 027B4614 */ cpu->r[31] = 0x00000000u; /* 027B4618 */ _t17 = cpu->r[3] + 0xFFFF98F0u; /* 027B4618 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17); /* 027B461C */ _t18 = cpu->r[12] + 0xFFFF9334u; /* 027B461C */ rbrew_write32(cpu->mem, _t18, cpu->r[31]); /* 027B4620 */ Gambit_fn_02826F20(cpu); /* 027B4624 */ _t19 = cpu->r[3] + 0x0000000Cu; /* 027B4624 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19); /* 027B4628 */ _t20 = cpu->r[8] + 0x00000034u; /* 027B4628 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20); /* 027B462C */ cpu->ctr = cpu->r[9]; /* 027B4630 */ cpu->r[5] = 0x00000004u; /* 027B4634 */ cpu->r[4] = 0x00000078u; /* 027B4638 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B463C: ; // 0x27b463c /* 027B463C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B4640 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4640 */ _t22 = _t21 & 0x00000001u; /* 027B4640 */ if (_t22) goto L_027B4658; else goto L_027B4644; L_027B4644: ; // 0x27b4644 /* 027B4644 */ _t23 = cpu->r[31] + 0x00000000u; /* 027B4644 */ rbrew_write32(cpu->mem, _t23, cpu->r[3]); /* 027B4648 */ cpu->r[0] = 0x0000001Eu; /* 027B464C */ _t24 = cpu->r[31] + 0x00000008u; /* 027B464C */ rbrew_write32(cpu->mem, _t24, cpu->r[30]); /* 027B4650 */ _t25 = cpu->r[31] + 0x00000004u; /* 027B4650 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]); /* 027B4654 */ _t26 = cpu->r[31] + 0x0000000Cu; /* 027B4654 */ rbrew_write32(cpu->mem, _t26, cpu->r[30]); L_027B4658: ; // 0x27b4658 /* 027B4658 */ _t27 = cpu->r[1] + 0x00000014u; /* 027B4658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27); /* 027B465C */ _t28 = cpu->r[1] + 0x00000008u; /* 027B465C */ cpu->r[30] = rbrew_read32(cpu->mem, _t28); /* 027B4660 */ cpu->lr = cpu->r[0]; /* 027B4664 */ _t29 = cpu->r[1] + 0x0000000Cu; /* 027B4664 */ cpu->r[31] = rbrew_read32(cpu->mem, _t29); /* 027B4668 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B466C */ return; } // fn_027B4670 @ 0x27b4670 void Gambit_fn_027B4670(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16; L_027B4670: ; // 0x27b4670 /* 027B4670 */ cpu->r[0] = cpu->lr; /* 027B4674 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B4674 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4674 */ cpu->r[1] = _t0; /* 027B4678 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B4678 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B467C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B467C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B4680 */ cpu->r[31] = cpu->r[3]; /* 027B4680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B4684 */ cpu->r[30] = cpu->r[4]; /* 027B4688 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B4688 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B468C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B468C */ _t5 = _t4 & 0x00000001u; /* 027B468C */ if (_t5) goto L_027B46D8; else goto L_027B4690; L_027B4690: ; // 0x27b4690 /* 027B4690 */ cpu->r[9] = 0x10110000u; /* 027B4694 */ cpu->r[9] = cpu->r[9] + 0xFFFFAF9Cu; /* 027B4698 */ cpu->r[12] = 0x101D0000u; /* 027B469C */ _t6 = cpu->r[31] + 0x0000000Cu; /* 027B469C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]); /* 027B46A0 */ _t7 = cpu->r[12] + 0xFFFF9338u; /* 027B46A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027B46A0 */ cpu->r[12] = _t7; /* 027B46A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027B46A8 */ cpu->r[10] = 0x00000000u; /* 027B46AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B46AC */ _t9 = _t8 & 0x00000001u; /* 027B46AC */ if (_t9) goto L_027B46B0; else goto L_027B46BC; L_027B46B0: ; // 0x27b46b0 /* 027B46B0 */ _t10 = cpu->r[12] + 0x00000000u; /* 027B46B0 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]); /* 027B46B4 */ cpu->r[8] = 0x101D0000u; /* 027B46B8 */ _t11 = cpu->r[8] + 0xFFFF9330u; /* 027B46B8 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]); L_027B46BC: ; // 0x27b46bc /* 027B46BC */ cpu->r[3] = cpu->r[31]; /* 027B46C0 */ cpu->r[4] = 0x00000000u; /* 027B46C4 */ Gambit_fn_02821E68(cpu); /* 027B46C8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B46C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B46CC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B46CC */ _t13 = _t12 & 0x00000001u; /* 027B46CC */ if (_t13) goto L_027B46D8; else goto L_027B46D0; L_027B46D0: ; // 0x27b46d0 /* 027B46D0 */ cpu->r[3] = cpu->r[31]; /* 027B46D4 */ Gambit_fn_02801BB0(cpu); L_027B46D8: ; // 0x27b46d8 /* 027B46D8 */ _t14 = cpu->r[1] + 0x00000014u; /* 027B46D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B46DC */ _t15 = cpu->r[1] + 0x00000008u; /* 027B46DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t15); /* 027B46E0 */ cpu->lr = cpu->r[0]; /* 027B46E4 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027B46E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027B46E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B46EC */ return; } // fn_027B4674 @ 0x27b4674 void Gambit_fn_027B4674(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16; L_027B4674: ; // 0x27b4674 /* 027B4674 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B4674 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4674 */ cpu->r[1] = _t0; /* 027B4678 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B4678 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B467C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B467C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B4680 */ cpu->r[31] = cpu->r[3]; /* 027B4680 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B4684 */ cpu->r[30] = cpu->r[4]; /* 027B4688 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B4688 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B468C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B468C */ _t5 = _t4 & 0x00000001u; /* 027B468C */ if (_t5) goto L_027B46D8; else goto L_027B4690; L_027B4690: ; // 0x27b4690 /* 027B4690 */ cpu->r[9] = 0x10110000u; /* 027B4694 */ cpu->r[9] = cpu->r[9] + 0xFFFFAF9Cu; /* 027B4698 */ cpu->r[12] = 0x101D0000u; /* 027B469C */ _t6 = cpu->r[31] + 0x0000000Cu; /* 027B469C */ rbrew_write32(cpu->mem, _t6, cpu->r[9]); /* 027B46A0 */ _t7 = cpu->r[12] + 0xFFFF9338u; /* 027B46A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027B46A0 */ cpu->r[12] = _t7; /* 027B46A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027B46A8 */ cpu->r[10] = 0x00000000u; /* 027B46AC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B46AC */ _t9 = _t8 & 0x00000001u; /* 027B46AC */ if (_t9) goto L_027B46B0; else goto L_027B46BC; L_027B46B0: ; // 0x27b46b0 /* 027B46B0 */ _t10 = cpu->r[12] + 0x00000000u; /* 027B46B0 */ rbrew_write32(cpu->mem, _t10, cpu->r[10]); /* 027B46B4 */ cpu->r[8] = 0x101D0000u; /* 027B46B8 */ _t11 = cpu->r[8] + 0xFFFF9330u; /* 027B46B8 */ rbrew_write32(cpu->mem, _t11, cpu->r[10]); L_027B46BC: ; // 0x27b46bc /* 027B46BC */ cpu->r[3] = cpu->r[31]; /* 027B46C0 */ cpu->r[4] = 0x00000000u; /* 027B46C4 */ Gambit_fn_02821E68(cpu); /* 027B46C8 */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B46C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B46CC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B46CC */ _t13 = _t12 & 0x00000001u; /* 027B46CC */ if (_t13) goto L_027B46D8; else goto L_027B46D0; L_027B46D0: ; // 0x27b46d0 /* 027B46D0 */ cpu->r[3] = cpu->r[31]; /* 027B46D4 */ Gambit_fn_02801BB0(cpu); L_027B46D8: ; // 0x27b46d8 /* 027B46D8 */ _t14 = cpu->r[1] + 0x00000014u; /* 027B46D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B46DC */ _t15 = cpu->r[1] + 0x00000008u; /* 027B46DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t15); /* 027B46E0 */ cpu->lr = cpu->r[0]; /* 027B46E4 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027B46E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027B46E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B46EC */ return; } // fn_027B46F0 @ 0x27b46f0 void Gambit_fn_027B46F0(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_027B46F0: ; // 0x27b46f0 /* 027B46F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B46F4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B46F4 */ _t1 = _t0 & 0x00000001u; /* 027B46F4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B46F4 */ goto L_027B46F8; L_027B46F8: ; // 0x27b46f8 /* 027B46F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B46F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B46FC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B46FC */ _t3 = _t2 & 0x00000001u; /* 027B46FC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B46FC */ goto L_027B4700; L_027B4700: ; // 0x27b4700 /* 027B4700 */ 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_027B4704 @ 0x27b4704 void Gambit_fn_027B4704(CPUState* cpu) { L_027B4704: ; // 0x27b4704 /* 027B4704 */ return; } // fn_027B4708 @ 0x27b4708 void Gambit_fn_027B4708(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027B4708: ; // 0x27b4708 /* 027B4708 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B4708 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027B470C */ _t1 = cpu->r[3] + 0x00000008u; /* 027B470C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027B4710 */ cpu->r[12] = cpu->r[11] + cpu->r[12]; /* 027B4714 */ cpu->r[11] = 0x10110000u; /* 027B4718 */ _t2 = cpu->r[11] + 0x00007399u; /* 027B4718 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027B471C */ _t3 = cpu->r[12] + 0xFFFFFFFFu; /* 027B471C */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]); /* 027B4720 */ return; } // fn_027B4724 @ 0x27b4724 void Gambit_fn_027B4724(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_027B4724: ; // 0x27b4724 /* 027B4724 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B4728 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4728 */ _t1 = _t0 & 0x00000001u; /* 027B4728 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4728 */ goto L_027B472C; L_027B472C: ; // 0x27b472c /* 027B472C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B472C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4730 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4730 */ _t3 = _t2 & 0x00000001u; /* 027B4730 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4730 */ goto L_027B4734; L_027B4734: ; // 0x27b4734 /* 027B4734 */ 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_027B4738 @ 0x27b4738 void Gambit_fn_027B4738(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_027B4738: ; // 0x27b4738 /* 027B4738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B473C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B473C */ _t1 = _t0 & 0x00000001u; /* 027B473C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B473C */ goto L_027B4740; L_027B4740: ; // 0x27b4740 /* 027B4740 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4744 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4744 */ _t3 = _t2 & 0x00000001u; /* 027B4744 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4744 */ goto L_027B4748; L_027B4748: ; // 0x27b4748 /* 027B4748 */ 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_027B474C @ 0x27b474c void Gambit_fn_027B474C(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_027B474C: ; // 0x27b474c /* 027B474C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B4750 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4750 */ _t1 = _t0 & 0x00000001u; /* 027B4750 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4750 */ goto L_027B4754; L_027B4754: ; // 0x27b4754 /* 027B4754 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4758 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4758 */ _t3 = _t2 & 0x00000001u; /* 027B4758 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4758 */ goto L_027B475C; L_027B475C: ; // 0x27b475c /* 027B475C */ 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_027B4760 @ 0x27b4760 void Gambit_fn_027B4760(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_027B4760: ; // 0x27b4760 /* 027B4760 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B4764 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4764 */ _t1 = _t0 & 0x00000001u; /* 027B4764 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4764 */ goto L_027B4768; L_027B4768: ; // 0x27b4768 /* 027B4768 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B476C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B476C */ _t3 = _t2 & 0x00000001u; /* 027B476C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B476C */ goto L_027B4770; L_027B4770: ; // 0x27b4770 /* 027B4770 */ 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_027B4774 @ 0x27b4774 void Gambit_fn_027B4774(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_027B4774: ; // 0x27b4774 /* 027B4774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B4778 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4778 */ _t1 = _t0 & 0x00000001u; /* 027B4778 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4778 */ goto L_027B477C; L_027B477C: ; // 0x27b477c /* 027B477C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B477C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4780 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4780 */ _t3 = _t2 & 0x00000001u; /* 027B4780 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4780 */ goto L_027B4784; L_027B4784: ; // 0x27b4784 /* 027B4784 */ 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_027B4788 @ 0x27b4788 void Gambit_fn_027B4788(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; L_027B4788: ; // 0x27b4788 /* 027B4788 */ cpu->r[0] = cpu->lr; /* 027B478C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B478C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B478C */ cpu->r[1] = _t0; /* 027B4790 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B4790 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B4794 */ _t2 = cpu->r[1] + 0x00000008u; /* 027B4794 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B4798 */ cpu->r[31] = cpu->r[3]; /* 027B4798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B479C */ _t3 = cpu->r[1] + 0x00000014u; /* 027B479C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B47A0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B47A0 */ _t5 = _t4 & 0x00000001u; /* 027B47A0 */ if (_t5) goto L_027B47A4; else goto L_027B47B4; L_027B47A4: ; // 0x27b47a4 /* 027B47A4 */ cpu->r[3] = 0x00000128u; /* 027B47A8 */ Gambit_fn_02801A78(cpu); /* 027B47AC */ cpu->r[31] = cpu->r[3]; /* 027B47AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B47B0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B47B0 */ _t7 = _t6 & 0x00000001u; /* 027B47B0 */ if (_t7) goto L_027B481C; else goto L_027B47B4; L_027B47B4: ; // 0x27b47b4 /* 027B47B4 */ cpu->r[0] = 0x10110000u; /* 027B47B8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB004u; /* 027B47BC */ cpu->r[30] = cpu->r[31] + 0x00000004u; /* 027B47BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B47C0 */ _t8 = cpu->r[31] + 0x00000000u; /* 027B47C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027B47C4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B47C4 */ _t10 = _t9 & 0x00000001u; /* 027B47C4 */ if (_t10) goto L_027B47C8; else goto L_027B47D8; L_027B47C8: ; // 0x27b47c8 /* 027B47C8 */ cpu->r[3] = 0x00000014u; /* 027B47CC */ Gambit_fn_02801A78(cpu); /* 027B47D0 */ cpu->r[30] = cpu->r[3]; /* 027B47D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B47D4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B47D4 */ _t12 = _t11 & 0x00000001u; /* 027B47D4 */ if (_t12) goto L_027B47E4; else goto L_027B47D8; L_027B47D8: ; // 0x27b47d8 /* 027B47D8 */ cpu->r[3] = cpu->r[30]; /* 027B47DC */ Gambit_fn_028029E4(cpu); /* 027B47E0 */ _t13 = cpu->r[30] + 0x00000010u; /* 027B47E0 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]); L_027B47E4: ; // 0x27b47e4 /* 027B47E4 */ cpu->r[0] = 0x00000000u; /* 027B47E8 */ cpu->r[10] = 0x00000001u; /* 027B47EC */ _t14 = cpu->r[31] + 0x00000022u; /* 027B47EC */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]); /* 027B47F0 */ cpu->r[11] = 0x00000040u; /* 027B47F4 */ _t15 = cpu->r[31] + 0x00000018u; /* 027B47F4 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]); /* 027B47F8 */ cpu->r[12] = cpu->r[31] + 0x00000020u; /* 027B47FC */ _t16 = cpu->r[31] + 0x00000124u; /* 027B47FC */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027B4800 */ _t17 = cpu->r[31] + 0x00000020u; /* 027B4800 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[10]); /* 027B4804 */ _t18 = cpu->r[31] + 0x00000021u; /* 027B4804 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]); /* 027B4808 */ _t19 = cpu->r[31] + 0x00000023u; /* 027B4808 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]); /* 027B480C */ cpu->ctr = cpu->r[11]; /* 027B4810 */ _t20 = cpu->r[31] + 0x0000001Cu; /* 027B4810 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]); L_027B4814: ; // 0x27b4814 /* 027B4814 */ _t21 = cpu->r[12] + 0x00000004u; /* 027B4814 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]); /* 027B4814 */ cpu->r[12] = _t21; /* 027B4818 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B4818 */ _t22 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B4818 */ _t23 = _t22 >> (0x00000002u & 31u); /* 027B4818 */ _t24 = _t23 & 0x00000001u; /* 027B4818 */ if (_t24) goto L_027B4814; else goto L_027B481C; L_027B481C: ; // 0x27b481c /* 027B481C */ _t25 = cpu->r[1] + 0x00000014u; /* 027B481C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027B4820 */ cpu->r[3] = cpu->r[31]; /* 027B4824 */ _t26 = cpu->r[1] + 0x0000000Cu; /* 027B4824 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027B4828 */ cpu->lr = cpu->r[0]; /* 027B482C */ _t27 = cpu->r[1] + 0x00000008u; /* 027B482C */ cpu->r[30] = rbrew_read32(cpu->mem, _t27); /* 027B4830 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B4834 */ return; } // fn_027B478C @ 0x27b478c void Gambit_fn_027B478C(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; L_027B478C: ; // 0x27b478c /* 027B478C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B478C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B478C */ cpu->r[1] = _t0; /* 027B4790 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B4790 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B4794 */ _t2 = cpu->r[1] + 0x00000008u; /* 027B4794 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B4798 */ cpu->r[31] = cpu->r[3]; /* 027B4798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B479C */ _t3 = cpu->r[1] + 0x00000014u; /* 027B479C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B47A0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B47A0 */ _t5 = _t4 & 0x00000001u; /* 027B47A0 */ if (_t5) goto L_027B47A4; else goto L_027B47B4; L_027B47A4: ; // 0x27b47a4 /* 027B47A4 */ cpu->r[3] = 0x00000128u; /* 027B47A8 */ Gambit_fn_02801A78(cpu); /* 027B47AC */ cpu->r[31] = cpu->r[3]; /* 027B47AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B47B0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B47B0 */ _t7 = _t6 & 0x00000001u; /* 027B47B0 */ if (_t7) goto L_027B481C; else goto L_027B47B4; L_027B47B4: ; // 0x27b47b4 /* 027B47B4 */ cpu->r[0] = 0x10110000u; /* 027B47B8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB004u; /* 027B47BC */ cpu->r[30] = cpu->r[31] + 0x00000004u; /* 027B47BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B47C0 */ _t8 = cpu->r[31] + 0x00000000u; /* 027B47C0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027B47C4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B47C4 */ _t10 = _t9 & 0x00000001u; /* 027B47C4 */ if (_t10) goto L_027B47C8; else goto L_027B47D8; L_027B47C8: ; // 0x27b47c8 /* 027B47C8 */ cpu->r[3] = 0x00000014u; /* 027B47CC */ Gambit_fn_02801A78(cpu); /* 027B47D0 */ cpu->r[30] = cpu->r[3]; /* 027B47D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B47D4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B47D4 */ _t12 = _t11 & 0x00000001u; /* 027B47D4 */ if (_t12) goto L_027B47E4; else goto L_027B47D8; L_027B47D8: ; // 0x27b47d8 /* 027B47D8 */ cpu->r[3] = cpu->r[30]; /* 027B47DC */ Gambit_fn_028029E4(cpu); /* 027B47E0 */ _t13 = cpu->r[30] + 0x00000010u; /* 027B47E0 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]); L_027B47E4: ; // 0x27b47e4 /* 027B47E4 */ cpu->r[0] = 0x00000000u; /* 027B47E8 */ cpu->r[10] = 0x00000001u; /* 027B47EC */ _t14 = cpu->r[31] + 0x00000022u; /* 027B47EC */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[0]); /* 027B47F0 */ cpu->r[11] = 0x00000040u; /* 027B47F4 */ _t15 = cpu->r[31] + 0x00000018u; /* 027B47F4 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]); /* 027B47F8 */ cpu->r[12] = cpu->r[31] + 0x00000020u; /* 027B47FC */ _t16 = cpu->r[31] + 0x00000124u; /* 027B47FC */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027B4800 */ _t17 = cpu->r[31] + 0x00000020u; /* 027B4800 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[10]); /* 027B4804 */ _t18 = cpu->r[31] + 0x00000021u; /* 027B4804 */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[0]); /* 027B4808 */ _t19 = cpu->r[31] + 0x00000023u; /* 027B4808 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[0]); /* 027B480C */ cpu->ctr = cpu->r[11]; /* 027B4810 */ _t20 = cpu->r[31] + 0x0000001Cu; /* 027B4810 */ rbrew_write32(cpu->mem, _t20, cpu->r[0]); L_027B4814: ; // 0x27b4814 /* 027B4814 */ _t21 = cpu->r[12] + 0x00000004u; /* 027B4814 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]); /* 027B4814 */ cpu->r[12] = _t21; /* 027B4818 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B4818 */ _t22 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B4818 */ _t23 = _t22 >> (0x00000002u & 31u); /* 027B4818 */ _t24 = _t23 & 0x00000001u; /* 027B4818 */ if (_t24) goto L_027B4814; else goto L_027B481C; L_027B481C: ; // 0x27b481c /* 027B481C */ _t25 = cpu->r[1] + 0x00000014u; /* 027B481C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027B4820 */ cpu->r[3] = cpu->r[31]; /* 027B4824 */ _t26 = cpu->r[1] + 0x0000000Cu; /* 027B4824 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027B4828 */ cpu->lr = cpu->r[0]; /* 027B482C */ _t27 = cpu->r[1] + 0x00000008u; /* 027B482C */ cpu->r[30] = rbrew_read32(cpu->mem, _t27); /* 027B4830 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B4834 */ return; } // fn_027B4838 @ 0x27b4838 void Gambit_fn_027B4838(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4; L_027B4838: ; // 0x27b4838 /* 027B4838 */ cpu->r[3] = cpu->r[3] + 0x00000004u; /* 027B483C */ goto L_02802AE8; L_02802AE8: ; // 0x2802ae8 /* 02802AE8 */ cpu->r[0] = cpu->lr; /* 02802AEC */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 02802AEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 02802AEC */ cpu->r[1] = _t0; /* 02802AF0 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 02802AF0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 02802AF4 */ cpu->r[31] = cpu->r[3]; /* 02802AF8 */ _t2 = cpu->r[1] + 0x00000014u; /* 02802AF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 02802AFC */ Gambit_fn_02802A1C(cpu); /* 02802B00 */ Gambit_fn_02802A90(cpu); /* 02802B04 */ cpu->r[3] = cpu->r[31]; /* 02802B08 */ Gambit_fn_028029CC(cpu); /* 02802B0C */ _t3 = cpu->r[1] + 0x00000014u; /* 02802B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 02802B10 */ cpu->lr = cpu->r[0]; /* 02802B14 */ _t4 = cpu->r[1] + 0x0000000Cu; /* 02802B14 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4); /* 02802B18 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 02802B1C */ return; } // fn_027B4840 @ 0x27b4840 void Gambit_fn_027B4840(CPUState* cpu) { uint32_t _t0; L_027B4840: ; // 0x27b4840 /* 027B4840 */ _t0 = cpu->r[3] + 0x0000001Cu; /* 027B4840 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]); /* 027B4844 */ return; } // fn_027B4848 @ 0x27b4848 void Gambit_fn_027B4848(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_027B4848: ; // 0x27b4848 /* 027B4848 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B484C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B484C */ _t1 = _t0 & 0x00000001u; /* 027B484C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B484C */ goto L_027B4850; L_027B4850: ; // 0x27b4850 /* 027B4850 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4854 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4854 */ _t3 = _t2 & 0x00000001u; /* 027B4854 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4854 */ goto L_027B4858; L_027B4858: ; // 0x27b4858 /* 027B4858 */ 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_027B485C @ 0x27b485c void Gambit_fn_027B485C(CPUState* cpu) { L_027B485C: ; // 0x27b485c /* 027B485C */ return; } // fn_027B4860 @ 0x27b4860 void Gambit_fn_027B4860(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_027B4860: ; // 0x27b4860 /* 027B4860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B4864 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4864 */ _t1 = _t0 & 0x00000001u; /* 027B4864 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4864 */ goto L_027B4868; L_027B4868: ; // 0x27b4868 /* 027B4868 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4868 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B486C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B486C */ _t3 = _t2 & 0x00000001u; /* 027B486C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B486C */ goto L_027B4870; L_027B4870: ; // 0x27b4870 /* 027B4870 */ 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_027B4874 @ 0x27b4874 void Gambit_fn_027B4874(CPUState* cpu) { L_027B4874: ; // 0x27b4874 /* 027B4874 */ return; } // fn_027B4878 @ 0x27b4878 void Gambit_fn_027B4878(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_027B4878: ; // 0x27b4878 /* 027B4878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B487C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B487C */ _t1 = _t0 & 0x00000001u; /* 027B487C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B487C */ goto L_027B4880; L_027B4880: ; // 0x27b4880 /* 027B4880 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B4880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4884 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4884 */ _t3 = _t2 & 0x00000001u; /* 027B4884 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B4884 */ goto L_027B4888; L_027B4888: ; // 0x27b4888 /* 027B4888 */ 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_027B488C @ 0x27b488c void Gambit_fn_027B488C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027B488C: ; // 0x27b488c /* 027B488C */ _t0 = cpu->r[3] + 0x00000000u; /* 027B488C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027B4890 */ _t1 = cpu->r[3] + 0x00000008u; /* 027B4890 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027B4894 */ cpu->r[12] = cpu->r[11] + cpu->r[12]; /* 027B4898 */ cpu->r[11] = 0x10110000u; /* 027B489C */ _t2 = cpu->r[11] + 0x00007399u; /* 027B489C */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027B48A0 */ _t3 = cpu->r[12] + 0xFFFFFFFFu; /* 027B48A0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]); /* 027B48A4 */ return; } // fn_027B48A8 @ 0x27b48a8 void Gambit_fn_027B48A8(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_027B48A8: ; // 0x27b48a8 /* 027B48A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B48AC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B48AC */ _t1 = _t0 & 0x00000001u; /* 027B48AC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B48AC */ goto L_027B48B0; L_027B48B0: ; // 0x27b48b0 /* 027B48B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B48B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B48B4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B48B4 */ _t3 = _t2 & 0x00000001u; /* 027B48B4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B48B4 */ goto L_027B48B8; L_027B48B8: ; // 0x27b48b8 /* 027B48B8 */ 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_027B48BC @ 0x27b48bc void Gambit_fn_027B48BC(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_027B48BC: ; // 0x27b48bc /* 027B48BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B48C0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B48C0 */ _t1 = _t0 & 0x00000001u; /* 027B48C0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B48C0 */ goto L_027B48C4; L_027B48C4: ; // 0x27b48c4 /* 027B48C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B48C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B48C8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B48C8 */ _t3 = _t2 & 0x00000001u; /* 027B48C8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B48C8 */ goto L_027B48CC; L_027B48CC: ; // 0x27b48cc /* 027B48CC */ 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_027B48D0 @ 0x27b48d0 void Gambit_fn_027B48D0(CPUState* cpu) { uint32_t _t0; L_027B48D0: ; // 0x27b48d0 /* 027B48D0 */ cpu->r[0] = 0xFFFFFFFFu; /* 027B48D4 */ _t0 = cpu->r[3] + 0x0000000Cu; /* 027B48D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027B48D8 */ return; } // fn_027B48DC @ 0x27b48dc void Gambit_fn_027B48DC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4; L_027B48DC: ; // 0x27b48dc /* 027B48DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B48E0 */ _t0 = cpu->r[3] + 0x00000008u; /* 027B48E0 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]); /* 027B48E4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B48E4 */ _t2 = _t1 & 0x00000001u; /* 027B48E4 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B48E4 */ goto L_027B48E8; L_027B48E8: ; // 0x27b48e8 /* 027B48E8 */ _t3 = cpu->r[4] + 0x0000000Fu; /* 027B48E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t3); /* 027B48EC */ _t4 = cpu->r[3] + 0x00000000u; /* 027B48EC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B48F0 */ return; } // fn_027B48F4 @ 0x27b48f4 void Gambit_fn_027B48F4(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_027B48F4: ; // 0x27b48f4 /* 027B48F4 */ cpu->r[0] = cpu->lr; /* 027B48F8 */ _t0 = cpu->r[1] + 0x00000004u; /* 027B48F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027B48FC */ _t1 = cpu->r[1] + 0xFFFFFFF8u; /* 027B48FC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027B48FC */ cpu->r[1] = _t1; /* 027B4900 */ _t2 = cpu->r[3] + 0x00000008u; /* 027B4900 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2); /* 027B4904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B4908 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4908 */ _t4 = _t3 & 0x00000001u; /* 027B4908 */ if (_t4) goto L_027B4960; else goto L_027B490C; L_027B490C: ; // 0x27b490c /* 027B490C */ _t5 = cpu->r[11] + 0x0000000Cu; /* 027B490C */ cpu->r[0] = rbrew_read8(cpu->mem, _t5); /* 027B4910 */ _t6 = cpu->r[3] + 0x0000000Cu; /* 027B4910 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027B4914 */ /* nop */ /* 027B4918 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]); /* 027B491C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B491C */ _t8 = _t7 & 0x00000001u; /* 027B491C */ if (_t8) goto L_027B4960; else goto L_027B4920; L_027B4920: ; // 0x27b4920 /* 027B4920 */ _t9 = cpu->r[11] + 0x0000000Cu; /* 027B4920 */ cpu->r[5] = rbrew_read8(cpu->mem, _t9); /* 027B4924 */ /* nop */ /* 027B4928 */ _t10 = cpu->r[3] + 0x0000000Cu; /* 027B4928 */ rbrew_write32(cpu->mem, _t10, cpu->r[5]); /* 027B492C */ _t11 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B492C */ _t12 = _t11 & 0x00000001u; /* 027B492C */ if (_t12) goto L_027B4960; else goto L_027B4930; L_027B4930: ; // 0x27b4930 /* 027B4930 */ _t13 = cpu->r[3] + 0x00000000u; /* 027B4930 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13); /* 027B4934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[10]); /* 027B4938 */ _t14 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4938 */ _t15 = _t14 & 0x00000001u; /* 027B4938 */ if (_t15) goto L_027B493C; else goto L_027B4960; L_027B493C: ; // 0x27b493c /* 027B493C */ _t16 = cpu->r[3] + 0x00000004u; /* 027B493C */ cpu->r[12] = rbrew_read32(cpu->mem, _t16); /* 027B4940 */ _t17 = cpu->r[12] + 0x0000002Cu; /* 027B4940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027B4944 */ cpu->ctr = cpu->r[0]; /* 027B4948 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B494C */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B494C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027B4950 */ cpu->lr = cpu->r[0]; /* 027B4954 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B4958 */ cpu->r[3] = 0x00000001u; /* 027B495C */ return; L_027B4960: ; // 0x27b4960 /* 027B4960 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027B4960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B4964 */ cpu->lr = cpu->r[0]; /* 027B4968 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B496C */ cpu->r[3] = 0x00000000u; /* 027B4970 */ return; } // fn_027B48FC @ 0x27b48fc void Gambit_fn_027B48FC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B48FC: ; // 0x27b48fc /* 027B48FC */ _t0 = cpu->r[1] + 0xFFFFFFF8u; /* 027B48FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B48FC */ cpu->r[1] = _t0; /* 027B4900 */ _t1 = cpu->r[3] + 0x00000008u; /* 027B4900 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1); /* 027B4904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B4908 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4908 */ _t3 = _t2 & 0x00000001u; /* 027B4908 */ if (_t3) goto L_027B4960; else goto L_027B490C; L_027B490C: ; // 0x27b490c /* 027B490C */ _t4 = cpu->r[11] + 0x0000000Cu; /* 027B490C */ cpu->r[0] = rbrew_read8(cpu->mem, _t4); /* 027B4910 */ _t5 = cpu->r[3] + 0x0000000Cu; /* 027B4910 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5); /* 027B4914 */ /* nop */ /* 027B4918 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]); /* 027B491C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B491C */ _t7 = _t6 & 0x00000001u; /* 027B491C */ if (_t7) goto L_027B4960; else goto L_027B4920; L_027B4920: ; // 0x27b4920 /* 027B4920 */ _t8 = cpu->r[11] + 0x0000000Cu; /* 027B4920 */ cpu->r[5] = rbrew_read8(cpu->mem, _t8); /* 027B4924 */ /* nop */ /* 027B4928 */ _t9 = cpu->r[3] + 0x0000000Cu; /* 027B4928 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]); /* 027B492C */ _t10 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B492C */ _t11 = _t10 & 0x00000001u; /* 027B492C */ if (_t11) goto L_027B4960; else goto L_027B4930; L_027B4930: ; // 0x27b4930 /* 027B4930 */ _t12 = cpu->r[3] + 0x00000000u; /* 027B4930 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12); /* 027B4934 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[10]); /* 027B4938 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4938 */ _t14 = _t13 & 0x00000001u; /* 027B4938 */ if (_t14) goto L_027B493C; else goto L_027B4960; L_027B493C: ; // 0x27b493c /* 027B493C */ _t15 = cpu->r[3] + 0x00000004u; /* 027B493C */ cpu->r[12] = rbrew_read32(cpu->mem, _t15); /* 027B4940 */ _t16 = cpu->r[12] + 0x0000002Cu; /* 027B4940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B4944 */ cpu->ctr = cpu->r[0]; /* 027B4948 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B494C */ _t17 = cpu->r[1] + 0x0000000Cu; /* 027B494C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027B4950 */ cpu->lr = cpu->r[0]; /* 027B4954 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B4958 */ cpu->r[3] = 0x00000001u; /* 027B495C */ return; L_027B4960: ; // 0x27b4960 /* 027B4960 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B4960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027B4964 */ cpu->lr = cpu->r[0]; /* 027B4968 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B496C */ cpu->r[3] = 0x00000000u; /* 027B4970 */ return; } // fn_027B4974 @ 0x27b4974 void Gambit_fn_027B4974(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027B4974: ; // 0x27b4974 /* 027B4974 */ cpu->r[0] = cpu->lr; /* 027B4978 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B4978 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4978 */ cpu->r[1] = _t0; /* 027B497C */ _t1 = cpu->r[1] + 0x00000008u; /* 027B497C */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027B4980 */ cpu->r[28] = cpu->r[3]; /* 027B4984 */ _t2 = cpu->r[1] + 0x00000010u; /* 027B4984 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B4988 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027B4988 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B498C */ _t4 = cpu->r[1] + 0x00000014u; /* 027B498C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B4990 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B4990 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B4994 */ cpu->r[29] = cpu->r[4]; /* 027B4998 */ _t6 = cpu->r[28] + 0x00000008u; /* 027B4998 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6); /* 027B499C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B49A0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B49A0 */ _t8 = _t7 & 0x00000001u; /* 027B49A0 */ if (_t8) goto L_027B49FC; else goto L_027B49A4; L_027B49A4: ; // 0x27b49a4 /* 027B49A4 */ _t9 = cpu->r[28] + 0x00000000u; /* 027B49A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027B49A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B49AC */ _t10 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B49AC */ _t11 = _t10 & 0x00000001u; /* 027B49AC */ if (_t11) goto L_027B49B0; else goto L_027B49FC; L_027B49B0: ; // 0x27b49b0 /* 027B49B0 */ _t12 = cpu->r[28] + 0x00000004u; /* 027B49B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12); /* 027B49B4 */ _t13 = cpu->r[12] + 0x00000014u; /* 027B49B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13); /* 027B49B8 */ cpu->r[30] = cpu->r[6] + 0x00000030u; /* 027B49BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[7]); /* 027B49C0 */ _t14 = cpu->r[12] + 0x00000018u; /* 027B49C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027B49C4 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B49C4 */ _t16 = _t15 & 0x00000001u; /* 027B49C4 */ if (_t16) goto L_027B49C8; else goto L_027B49D0; L_027B49C8: ; // 0x27b49c8 /* 027B49C8 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x00000024u); /* 027B49CC */ cpu->r[31] = cpu->r[31] + cpu->r[8]; L_027B49D0: ; // 0x27b49d0 /* 027B49D0 */ _t17 = cpu->r[31] + 0x00000004u; /* 027B49D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17); /* 027B49D4 */ _t18 = cpu->r[9] + 0x00000014u; /* 027B49D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18); /* 027B49D8 */ cpu->ctr = cpu->r[10]; /* 027B49DC */ cpu->r[3] = cpu->r[31]; /* 027B49E0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B49E4 */ _t19 = cpu->r[30] + 0x00000004u; /* 027B49E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B49E8 */ cpu->ctr = cpu->r[0]; /* 027B49EC */ _t20 = cpu->r[31] + 0x00000000u; /* 027B49EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t20); /* 027B49F0 */ cpu->r[3] = cpu->r[28]; /* 027B49F4 */ cpu->r[4] = cpu->r[29]; /* 027B49F8 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B49FC: ; // 0x27b49fc /* 027B49FC */ _t21 = cpu->r[1] + 0x00000008u; /* 027B49FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t21); /* 027B4A00 */ _t22 = cpu->r[1] + 0x0000000Cu; /* 027B4A00 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22); /* 027B4A04 */ _t23 = cpu->r[1] + 0x0000001Cu; /* 027B4A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B4A08 */ _t24 = cpu->r[1] + 0x00000010u; /* 027B4A08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24); /* 027B4A0C */ cpu->lr = cpu->r[0]; /* 027B4A10 */ _t25 = cpu->r[1] + 0x00000014u; /* 027B4A10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25); /* 027B4A14 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B4A18 */ return; } // fn_027B4978 @ 0x27b4978 void Gambit_fn_027B4978(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027B4978: ; // 0x27b4978 /* 027B4978 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B4978 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4978 */ cpu->r[1] = _t0; /* 027B497C */ _t1 = cpu->r[1] + 0x00000008u; /* 027B497C */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027B4980 */ cpu->r[28] = cpu->r[3]; /* 027B4984 */ _t2 = cpu->r[1] + 0x00000010u; /* 027B4984 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B4988 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027B4988 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B498C */ _t4 = cpu->r[1] + 0x00000014u; /* 027B498C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B4990 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B4990 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B4994 */ cpu->r[29] = cpu->r[4]; /* 027B4998 */ _t6 = cpu->r[28] + 0x00000008u; /* 027B4998 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6); /* 027B499C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B49A0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B49A0 */ _t8 = _t7 & 0x00000001u; /* 027B49A0 */ if (_t8) goto L_027B49FC; else goto L_027B49A4; L_027B49A4: ; // 0x27b49a4 /* 027B49A4 */ _t9 = cpu->r[28] + 0x00000000u; /* 027B49A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027B49A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B49AC */ _t10 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B49AC */ _t11 = _t10 & 0x00000001u; /* 027B49AC */ if (_t11) goto L_027B49B0; else goto L_027B49FC; L_027B49B0: ; // 0x27b49b0 /* 027B49B0 */ _t12 = cpu->r[28] + 0x00000004u; /* 027B49B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12); /* 027B49B4 */ _t13 = cpu->r[12] + 0x00000014u; /* 027B49B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13); /* 027B49B8 */ cpu->r[30] = cpu->r[6] + 0x00000030u; /* 027B49BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[7]); /* 027B49C0 */ _t14 = cpu->r[12] + 0x00000018u; /* 027B49C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027B49C4 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B49C4 */ _t16 = _t15 & 0x00000001u; /* 027B49C4 */ if (_t16) goto L_027B49C8; else goto L_027B49D0; L_027B49C8: ; // 0x27b49c8 /* 027B49C8 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x00000024u); /* 027B49CC */ cpu->r[31] = cpu->r[31] + cpu->r[8]; L_027B49D0: ; // 0x27b49d0 /* 027B49D0 */ _t17 = cpu->r[31] + 0x00000004u; /* 027B49D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17); /* 027B49D4 */ _t18 = cpu->r[9] + 0x00000014u; /* 027B49D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18); /* 027B49D8 */ cpu->ctr = cpu->r[10]; /* 027B49DC */ cpu->r[3] = cpu->r[31]; /* 027B49E0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B49E4 */ _t19 = cpu->r[30] + 0x00000004u; /* 027B49E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B49E8 */ cpu->ctr = cpu->r[0]; /* 027B49EC */ _t20 = cpu->r[31] + 0x00000000u; /* 027B49EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t20); /* 027B49F0 */ cpu->r[3] = cpu->r[28]; /* 027B49F4 */ cpu->r[4] = cpu->r[29]; /* 027B49F8 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B49FC: ; // 0x27b49fc /* 027B49FC */ _t21 = cpu->r[1] + 0x00000008u; /* 027B49FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t21); /* 027B4A00 */ _t22 = cpu->r[1] + 0x0000000Cu; /* 027B4A00 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22); /* 027B4A04 */ _t23 = cpu->r[1] + 0x0000001Cu; /* 027B4A04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B4A08 */ _t24 = cpu->r[1] + 0x00000010u; /* 027B4A08 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24); /* 027B4A0C */ cpu->lr = cpu->r[0]; /* 027B4A10 */ _t25 = cpu->r[1] + 0x00000014u; /* 027B4A10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25); /* 027B4A14 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B4A18 */ return; } // fn_027B4A1C @ 0x27b4a1c void Gambit_fn_027B4A1C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6; L_027B4A1C: ; // 0x27b4a1c /* 027B4A1C */ _t0 = cpu->r[3] + 0x00000008u; /* 027B4A1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B4A20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B4A24 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4A24 */ _t2 = _t1 & 0x00000001u; /* 027B4A24 */ if (_t2) goto L_027B4A34; else goto L_027B4A28; L_027B4A28: ; // 0x27b4a28 /* 027B4A28 */ _t3 = cpu->r[3] + 0x00000000u; /* 027B4A28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B4A2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4A30 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4A30 */ _t5 = _t4 & 0x00000001u; /* 027B4A30 */ if (_t5) goto L_027B4A3C; else goto L_027B4A34; L_027B4A34: ; // 0x27b4a34 /* 027B4A34 */ cpu->r[3] = 0x00000000u; /* 027B4A38 */ return; L_027B4A3C: ; // 0x27b4a3c /* 027B4A3C */ _t6 = cpu->r[12] + 0x00000008u; /* 027B4A3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B4A40 */ return; } // fn_027B4A44 @ 0x27b4a44 void Gambit_fn_027B4A44(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_027B4A44: ; // 0x27b4a44 /* 027B4A44 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B4A44 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4A44 */ cpu->r[1] = _t0; /* 027B4A48 */ /* nop */ /* 027B4A4C */ cpu->r[0] = cpu->lr; /* 027B4A50 */ _t1 = cpu->r[1] + 0x00000024u; /* 027B4A50 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B4A54 */ _t2 = cpu->r[3] + 0x00000008u; /* 027B4A54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2); /* 027B4A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B4A5C */ cpu->r[28] = cpu->r[4]; /* 027B4A60 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4A60 */ _t4 = _t3 & 0x00000001u; /* 027B4A60 */ if (_t4) goto L_027B4B20; else goto L_027B4A64; L_027B4A64: ; // 0x27b4a64 /* 027B4A64 */ _t5 = cpu->r[3] + 0x00000000u; /* 027B4A64 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5); /* 027B4A68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B4A6C */ _t6 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4A6C */ _t7 = _t6 & 0x00000001u; /* 027B4A6C */ if (_t7) goto L_027B4A70; else goto L_027B4B20; L_027B4A70: ; // 0x27b4a70 /* 027B4A70 */ _t8 = cpu->r[12] + 0x00000014u; /* 027B4A70 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8); /* 027B4A74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[8]); /* 027B4A78 */ _t9 = cpu->r[12] + 0x00000018u; /* 027B4A78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9); /* 027B4A7C */ _t10 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4A7C */ _t11 = _t10 & 0x00000001u; /* 027B4A7C */ if (_t11) goto L_027B4A80; else goto L_027B4A88; L_027B4A80: ; // 0x27b4a80 /* 027B4A80 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x00000024u); /* 027B4A84 */ cpu->r[29] = cpu->r[29] + cpu->r[9]; L_027B4A88: ; // 0x27b4a88 /* 027B4A88 */ _t12 = cpu->r[29] + 0x00000004u; /* 027B4A88 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12); /* 027B4A8C */ _t13 = cpu->r[10] + 0x00000014u; /* 027B4A8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B4A90 */ cpu->ctr = cpu->r[0]; /* 027B4A94 */ _t14 = cpu->r[28] + 0x00000000u; /* 027B4A94 */ cpu->r[27] = rbrew_read32(cpu->mem, _t14); /* 027B4A98 */ cpu->r[3] = cpu->r[29]; /* 027B4A9C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4AA0 */ _t15 = cpu->r[29] + 0x00000000u; /* 027B4AA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15); /* 027B4AA4 */ cpu->r[31] = 0x10110000u; /* 027B4AA8 */ _t16 = cpu->r[31] + 0x00007399u; /* 027B4AA8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t16); /* 027B4AAC */ _t17 = cpu->r[12] + 0x00000000u; /* 027B4AAC */ cpu->r[6] = rbrew_read8(cpu->mem, _t17); /* 027B4AB0 */ cpu->r[30] = 0x00000000u; /* 027B4AB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027B4AB8 */ cpu->r[7] = 0x00080000u; /* 027B4ABC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4ABC */ _t19 = _t18 & 0x00000001u; /* 027B4ABC */ if (_t19) goto L_027B4AE4; else goto L_027B4AC0; L_027B4AC0: ; // 0x27b4ac0 /* 027B4AC0 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B4AC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]); /* 027B4AC8 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B4ACC */ _t20 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4ACC */ _t21 = _t20 & 0x00000001u; /* 027B4ACC */ if (_t21) goto L_027B4AE0; else goto L_027B4AD0; L_027B4AD0: ; // 0x27b4ad0 /* 027B4AD0 */ _t22 = cpu->r[12] + 0x00000000u; /* 027B4AD0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t22); /* 027B4AD4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B4AD8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4AD8 */ _t24 = _t23 & 0x00000001u; /* 027B4AD8 */ if (_t24) goto L_027B4ADC; else goto L_027B4AC0; L_027B4ADC: ; // 0x27b4adc /* 027B4ADC */ goto L_027B4AE4; L_027B4AE0: ; // 0x27b4ae0 /* 027B4AE0 */ cpu->r[30] = 0x00000000u; L_027B4AE4: ; // 0x27b4ae4 /* 027B4AE4 */ _t25 = cpu->r[28] + 0x00000008u; /* 027B4AE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t25); /* 027B4AE8 */ _t26 = cpu->r[29] + 0x00000004u; /* 027B4AE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26); /* 027B4AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]); /* 027B4AF0 */ _t27 = cpu->r[9] + 0x00000014u; /* 027B4AF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27); /* 027B4AF4 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4AF4 */ _t29 = _t28 & 0x00000001u; /* 027B4AF4 */ if (_t29) goto L_027B4AFC; else goto L_027B4AF8; L_027B4AF8: ; // 0x27b4af8 /* 027B4AF8 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu; L_027B4AFC: ; // 0x27b4afc /* 027B4AFC */ cpu->ctr = cpu->r[0]; /* 027B4B00 */ cpu->r[3] = cpu->r[29]; /* 027B4B04 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4B08 */ _t30 = cpu->r[29] + 0x00000000u; /* 027B4B08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t30); /* 027B4B0C */ cpu->r[6] = 0x00000000u; /* 027B4B10 */ cpu->r[5] = cpu->r[30]; /* 027B4B14 */ cpu->r[3] = cpu->r[27]; /* 027B4B18 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B4B1C */ _t31 = cpu->r[27] + cpu->r[30]; /* 027B4B1C */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[31]); L_027B4B20: ; // 0x27b4b20 /* 027B4B20 */ /* nop */ /* 027B4B24 */ _t32 = cpu->r[1] + 0x00000024u; /* 027B4B24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027B4B28 */ cpu->lr = cpu->r[0]; /* 027B4B2C */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B4B30 */ return; } // fn_027B4B34 @ 0x27b4b34 void Gambit_fn_027B4B34(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_027B4B34: ; // 0x27b4b34 /* 027B4B34 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B4B34 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4B34 */ cpu->r[1] = _t0; /* 027B4B38 */ /* nop */ /* 027B4B3C */ cpu->r[0] = cpu->lr; /* 027B4B40 */ _t1 = cpu->r[1] + 0x00000024u; /* 027B4B40 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B4B44 */ _t2 = cpu->r[3] + 0x00000008u; /* 027B4B44 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2); /* 027B4B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B4B4C */ cpu->r[27] = cpu->r[4]; /* 027B4B50 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4B50 */ _t4 = _t3 & 0x00000001u; /* 027B4B50 */ if (_t4) goto L_027B4C18; else goto L_027B4B54; L_027B4B54: ; // 0x27b4b54 /* 027B4B54 */ _t5 = cpu->r[3] + 0x00000000u; /* 027B4B54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5); /* 027B4B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B4B5C */ _t6 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4B5C */ _t7 = _t6 & 0x00000001u; /* 027B4B5C */ if (_t7) goto L_027B4B60; else goto L_027B4C18; L_027B4B60: ; // 0x27b4b60 /* 027B4B60 */ _t8 = cpu->r[12] + 0x0000000Cu; /* 027B4B60 */ cpu->r[8] = rbrew_read8(cpu->mem, _t8); /* 027B4B64 */ _t9 = cpu->r[12] + 0x00000014u; /* 027B4B64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9); /* 027B4B68 */ /* nop */ /* 027B4B6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[10]); /* 027B4B70 */ _t10 = cpu->r[12] + 0x00000018u; /* 027B4B70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10); /* 027B4B74 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4B74 */ _t12 = _t11 & 0x00000001u; /* 027B4B74 */ if (_t12) goto L_027B4B78; else goto L_027B4B80; L_027B4B78: ; // 0x27b4b78 /* 027B4B78 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[8] * (int32_t)0x00000024u); /* 027B4B7C */ cpu->r[30] = cpu->r[30] + cpu->r[0]; L_027B4B80: ; // 0x27b4b80 /* 027B4B80 */ _t13 = cpu->r[30] + 0x00000004u; /* 027B4B80 */ cpu->r[12] = rbrew_read32(cpu->mem, _t13); /* 027B4B84 */ _t14 = cpu->r[12] + 0x00000014u; /* 027B4B84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B4B88 */ cpu->ctr = cpu->r[0]; /* 027B4B8C */ _t15 = cpu->r[27] + 0x00000000u; /* 027B4B8C */ cpu->r[28] = rbrew_read32(cpu->mem, _t15); /* 027B4B90 */ cpu->r[3] = cpu->r[30]; /* 027B4B94 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4B98 */ _t16 = cpu->r[30] + 0x00000000u; /* 027B4B98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t16); /* 027B4B9C */ cpu->r[31] = 0x10110000u; /* 027B4BA0 */ _t17 = cpu->r[31] + 0x00007399u; /* 027B4BA0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t17); /* 027B4BA4 */ _t18 = cpu->r[6] + 0x00000000u; /* 027B4BA4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t18); /* 027B4BA8 */ cpu->r[8] = 0x00080000u; /* 027B4BAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027B4BB0 */ cpu->r[29] = 0x00000000u; /* 027B4BB4 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4BB4 */ _t20 = _t19 & 0x00000001u; /* 027B4BB4 */ if (_t20) goto L_027B4BDC; else goto L_027B4BB8; L_027B4BB8: ; // 0x27b4bb8 /* 027B4BB8 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027B4BBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]); /* 027B4BC0 */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027B4BC4 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4BC4 */ _t22 = _t21 & 0x00000001u; /* 027B4BC4 */ if (_t22) goto L_027B4BD8; else goto L_027B4BC8; L_027B4BC8: ; // 0x27b4bc8 /* 027B4BC8 */ _t23 = cpu->r[6] + 0x00000000u; /* 027B4BC8 */ cpu->r[7] = rbrew_read8(cpu->mem, _t23); /* 027B4BCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027B4BD0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4BD0 */ _t25 = _t24 & 0x00000001u; /* 027B4BD0 */ if (_t25) goto L_027B4BD4; else goto L_027B4BB8; L_027B4BD4: ; // 0x27b4bd4 /* 027B4BD4 */ goto L_027B4BDC; L_027B4BD8: ; // 0x27b4bd8 /* 027B4BD8 */ cpu->r[29] = 0x00000000u; L_027B4BDC: ; // 0x27b4bdc /* 027B4BDC */ _t26 = cpu->r[27] + 0x00000008u; /* 027B4BDC */ cpu->r[11] = rbrew_read32(cpu->mem, _t26); /* 027B4BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[11]); /* 027B4BE4 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4BE4 */ _t28 = _t27 & 0x00000001u; /* 027B4BE4 */ if (_t28) goto L_027B4BEC; else goto L_027B4BE8; L_027B4BE8: ; // 0x27b4be8 /* 027B4BE8 */ cpu->r[29] = cpu->r[11] + 0xFFFFFFFFu; L_027B4BEC: ; // 0x27b4bec /* 027B4BEC */ _t29 = cpu->r[30] + 0x00000004u; /* 027B4BEC */ cpu->r[9] = rbrew_read32(cpu->mem, _t29); /* 027B4BF0 */ _t30 = cpu->r[9] + 0x00000014u; /* 027B4BF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027B4BF4 */ cpu->ctr = cpu->r[0]; /* 027B4BF8 */ cpu->r[3] = cpu->r[30]; /* 027B4BFC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4C00 */ _t31 = cpu->r[30] + 0x00000000u; /* 027B4C00 */ cpu->r[4] = rbrew_read32(cpu->mem, _t31); /* 027B4C04 */ cpu->r[6] = 0x00000000u; /* 027B4C08 */ cpu->r[5] = cpu->r[29]; /* 027B4C0C */ cpu->r[3] = cpu->r[28]; /* 027B4C10 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B4C14 */ _t32 = cpu->r[28] + cpu->r[29]; /* 027B4C14 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[31]); L_027B4C18: ; // 0x27b4c18 /* 027B4C18 */ /* nop */ /* 027B4C1C */ _t33 = cpu->r[1] + 0x00000024u; /* 027B4C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t33); /* 027B4C20 */ cpu->lr = cpu->r[0]; /* 027B4C24 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B4C28 */ return; } // fn_027B4C2C @ 0x27b4c2c void Gambit_fn_027B4C2C(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, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279; L_027B4C2C: ; // 0x27b4c2c /* 027B4C2C */ _t0 = cpu->r[1] + 0xFFFFFF88u; /* 027B4C2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B4C2C */ cpu->r[1] = _t0; /* 027B4C30 */ /* nop */ /* 027B4C34 */ cpu->r[0] = cpu->lr; /* 027B4C38 */ _t1 = cpu->r[1] + 0x0000007Cu; /* 027B4C38 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B4C3C */ cpu->r[27] = cpu->r[3]; /* 027B4C40 */ _t2 = cpu->r[27] + 0x00000008u; /* 027B4C40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027B4C44 */ cpu->r[28] = cpu->r[4]; /* 027B4C48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4C4C */ cpu->r[23] = cpu->r[5]; /* 027B4C50 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4C50 */ _t4 = _t3 & 0x00000001u; /* 027B4C50 */ if (_t4) goto L_027B53B0; else goto L_027B4C54; L_027B4C54: ; // 0x27b4c54 /* 027B4C54 */ _t5 = cpu->r[27] + 0x00000000u; /* 027B4C54 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5); /* 027B4C58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B4C5C */ _t6 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4C5C */ _t7 = _t6 & 0x00000001u; /* 027B4C5C */ if (_t7) goto L_027B4C60; else goto L_027B53B0; L_027B4C60: ; // 0x27b4c60 /* 027B4C60 */ cpu->r[25] = 0x10110000u; /* 027B4C64 */ cpu->r[26] = 0x10110000u; /* 027B4C68 */ _t8 = cpu->r[23] + 0x00000004u; /* 027B4C68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8); /* 027B4C6C */ cpu->r[25] = cpu->r[25] + 0xFFFFB0B0u; /* 027B4C70 */ cpu->r[26] = cpu->r[26] + 0xFFFFB120u; /* 027B4C74 */ _t9 = cpu->r[1] + 0x00000024u; /* 027B4C74 */ rbrew_write32(cpu->mem, _t9, cpu->r[25]); /* 027B4C78 */ _t10 = cpu->r[1] + 0x00000020u; /* 027B4C78 */ rbrew_write32(cpu->mem, _t10, cpu->r[26]); /* 027B4C7C */ _t11 = cpu->r[6] + 0x00000014u; /* 027B4C7C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11); /* 027B4C80 */ cpu->ctr = cpu->r[7]; /* 027B4C84 */ cpu->r[3] = cpu->r[23]; /* 027B4C88 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4C8C */ cpu->r[30] = 0x10110000u; /* 027B4C90 */ _t12 = cpu->r[23] + 0x00000000u; /* 027B4C90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t12); /* 027B4C94 */ _t13 = cpu->r[30] + 0x00007399u; /* 027B4C94 */ cpu->r[30] = rbrew_read8(cpu->mem, _t13); /* 027B4C98 */ _t14 = cpu->r[4] + 0x00000000u; /* 027B4C98 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14); /* 027B4C9C */ cpu->r[6] = 0x00080000u; /* 027B4CA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]); /* 027B4CA4 */ cpu->r[29] = 0x00000000u; /* 027B4CA8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4CA8 */ _t16 = _t15 & 0x00000001u; /* 027B4CA8 */ if (_t16) goto L_027B4CFC; else goto L_027B4CAC; L_027B4CAC: ; // 0x27b4cac /* 027B4CAC */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027B4CB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[6]); /* 027B4CB4 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027B4CB8 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4CB8 */ _t18 = _t17 & 0x00000001u; /* 027B4CB8 */ if (_t18) goto L_027B4CF8; else goto L_027B4CBC; L_027B4CBC: ; // 0x27b4cbc /* 027B4CBC */ _t19 = cpu->r[4] + 0x00000000u; /* 027B4CBC */ cpu->r[0] = rbrew_read8(cpu->mem, _t19); /* 027B4CC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027B4CC4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4CC4 */ _t21 = _t20 & 0x00000001u; /* 027B4CC4 */ if (_t21) goto L_027B4CC8; else goto L_027B4CAC; L_027B4CC8: ; // 0x27b4cc8 /* 027B4CC8 */ _t22 = cpu->r[1] + 0x00000024u; /* 027B4CC8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22); /* 027B4CCC */ _t23 = cpu->r[4] + 0x00000014u; /* 027B4CCC */ cpu->r[6] = rbrew_read32(cpu->mem, _t23); /* 027B4CD0 */ cpu->ctr = cpu->r[6]; /* 027B4CD4 */ cpu->r[3] = cpu->r[1] + 0x00000020u; /* 027B4CD8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4CDC */ _t24 = cpu->r[1] + 0x00000020u; /* 027B4CDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t24); /* 027B4CE0 */ _t25 = cpu->r[8] + 0x00000000u; /* 027B4CE0 */ cpu->r[7] = rbrew_read8(cpu->mem, _t25); /* 027B4CE4 */ cpu->r[31] = 0x00000000u; /* 027B4CE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]); /* 027B4CEC */ cpu->r[10] = 0x00080000u; /* 027B4CF0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4CF0 */ _t27 = _t26 & 0x00000001u; /* 027B4CF0 */ if (_t27) goto L_027B4CF4; else goto L_027B4D28; L_027B4CF4: ; // 0x27b4cf4 /* 027B4CF4 */ goto L_027B4D58; L_027B4CF8: ; // 0x27b4cf8 /* 027B4CF8 */ cpu->r[29] = 0x00000000u; L_027B4CFC: ; // 0x27b4cfc /* 027B4CFC */ _t28 = cpu->r[1] + 0x00000024u; /* 027B4CFC */ cpu->r[4] = rbrew_read32(cpu->mem, _t28); /* 027B4D00 */ _t29 = cpu->r[4] + 0x00000014u; /* 027B4D00 */ cpu->r[6] = rbrew_read32(cpu->mem, _t29); /* 027B4D04 */ cpu->ctr = cpu->r[6]; /* 027B4D08 */ cpu->r[3] = cpu->r[1] + 0x00000020u; /* 027B4D0C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4D10 */ _t30 = cpu->r[1] + 0x00000020u; /* 027B4D10 */ cpu->r[8] = rbrew_read32(cpu->mem, _t30); /* 027B4D14 */ _t31 = cpu->r[8] + 0x00000000u; /* 027B4D14 */ cpu->r[7] = rbrew_read8(cpu->mem, _t31); /* 027B4D18 */ cpu->r[31] = 0x00000000u; /* 027B4D1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]); /* 027B4D20 */ cpu->r[10] = 0x00080000u; /* 027B4D24 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4D24 */ _t33 = _t32 & 0x00000001u; /* 027B4D24 */ if (_t33) goto L_027B4CF4; else goto L_027B4D28; L_027B4D28: ; // 0x27b4d28 /* 027B4D28 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027B4D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]); /* 027B4D30 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027B4D34 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4D34 */ _t35 = _t34 & 0x00000001u; /* 027B4D34 */ if (_t35) goto L_027B4D54; else goto L_027B4D38; L_027B4D38: ; // 0x27b4d38 /* 027B4D38 */ _t36 = cpu->r[8] + 0x00000000u; /* 027B4D38 */ cpu->r[9] = rbrew_read8(cpu->mem, _t36); /* 027B4D3C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]); /* 027B4D40 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4D40 */ _t38 = _t37 & 0x00000001u; /* 027B4D40 */ if (_t38) goto L_027B4D44; else goto L_027B4D28; L_027B4D44: ; // 0x27b4d44 /* 027B4D44 */ cpu->r[29] = cpu->r[29] - cpu->r[31]; /* 027B4D44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B4D48 */ cpu->r[22] = cpu->r[29] + 0x00000001u; /* 027B4D4C */ _t39 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4D4C */ _t40 = _t39 & 0x00000001u; /* 027B4D4C */ if (_t40) goto L_027B4D50; else goto L_027B4D64; L_027B4D50: ; // 0x27b4d50 /* 027B4D50 */ goto L_027B4E54; L_027B4D54: ; // 0x27b4d54 /* 027B4D54 */ cpu->r[31] = 0x00000000u; L_027B4D58: ; // 0x27b4d58 /* 027B4D58 */ cpu->r[29] = cpu->r[29] - cpu->r[31]; /* 027B4D58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B4D5C */ cpu->r[22] = cpu->r[29] + 0x00000001u; /* 027B4D60 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4D60 */ _t42 = _t41 & 0x00000001u; /* 027B4D60 */ if (_t42) goto L_027B4E54; else goto L_027B4D64; L_027B4D64: ; // 0x27b4d64 /* 027B4D64 */ cpu->r[24] = cpu->r[30]; L_027B4D68: ; // 0x27b4d68 /* 027B4D68 */ _t43 = cpu->r[23] + 0x00000000u; /* 027B4D68 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43); /* 027B4D6C */ _t44 = cpu->r[1] + 0x0000001Cu; /* 027B4D6C */ rbrew_write32(cpu->mem, _t44, cpu->r[25]); /* 027B4D70 */ cpu->r[0] = cpu->r[12] + cpu->r[29]; /* 027B4D74 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027B4D78 */ _t45 = cpu->r[1] + 0x00000018u; /* 027B4D78 */ rbrew_write32(cpu->mem, _t45, cpu->r[0]); /* 027B4D7C */ Gambit_fn_027B653C(cpu); /* 027B4D80 */ _t46 = cpu->r[1] + 0x0000001Cu; /* 027B4D80 */ cpu->r[5] = rbrew_read32(cpu->mem, _t46); /* 027B4D84 */ _t47 = cpu->r[5] + 0x00000014u; /* 027B4D84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47); /* 027B4D88 */ cpu->ctr = cpu->r[0]; /* 027B4D8C */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027B4D90 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4D94 */ _t48 = cpu->r[1] + 0x00000024u; /* 027B4D94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t48); /* 027B4D98 */ _t49 = cpu->r[8] + 0x00000014u; /* 027B4D98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49); /* 027B4D9C */ cpu->ctr = cpu->r[10]; /* 027B4DA0 */ _t50 = cpu->r[1] + 0x00000018u; /* 027B4DA0 */ cpu->r[21] = rbrew_read32(cpu->mem, _t50); /* 027B4DA4 */ cpu->r[3] = cpu->r[1] + 0x00000020u; /* 027B4DA8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4DAC */ _t51 = cpu->r[1] + 0x00000020u; /* 027B4DAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t51); /* 027B4DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[11]); /* 027B4DB4 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4DB4 */ _t53 = _t52 & 0x00000001u; /* 027B4DB4 */ if (_t53) goto L_027B4E08; else goto L_027B4DB8; L_027B4DB8: ; // 0x27b4db8 /* 027B4DB8 */ cpu->r[0] = cpu->r[31]; /* 027B4DB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B4DBC */ _t54 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4DBC */ _t55 = _t54 & 0x00000001u; /* 027B4DBC */ if (_t55) goto L_027B4DC0; else goto L_027B4E08; L_027B4DC0: ; // 0x27b4dc0 /* 027B4DC0 */ _t56 = cpu->r[1] + 0x00000020u; /* 027B4DC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t56); /* 027B4DC4 */ cpu->ctr = cpu->r[0]; /* 027B4DC8 */ _t57 = cpu->r[1] + 0x00000018u; /* 027B4DC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57); L_027B4DCC: ; // 0x27b4dcc /* 027B4DCC */ _t58 = cpu->r[11] + 0x00000000u; /* 027B4DCC */ cpu->r[10] = rbrew_read8(cpu->mem, _t58); /* 027B4DD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[24]); /* 027B4DD4 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4DD4 */ _t60 = _t59 & 0x00000001u; /* 027B4DD4 */ if (_t60) goto L_027B4DD8; else goto L_027B4DE8; L_027B4DD8: ; // 0x27b4dd8 /* 027B4DD8 */ _t61 = cpu->r[9] + 0x00000000u; /* 027B4DD8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t61); /* 027B4DDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[24]); /* 027B4DE0 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4DE0 */ _t63 = _t62 & 0x00000001u; /* 027B4DE0 */ if (_t63) goto L_027B4DE4; else goto L_027B4E48; L_027B4DE4: ; // 0x27b4de4 /* 027B4DE4 */ goto L_027B4E08; L_027B4DE8: ; // 0x27b4de8 /* 027B4DE8 */ _t64 = cpu->r[9] + 0x00000000u; /* 027B4DE8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t64); /* 027B4DEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[24]); /* 027B4DF0 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4DF0 */ _t66 = _t65 & 0x00000001u; /* 027B4DF0 */ if (_t66) goto L_027B4E48; else goto L_027B4DF4; L_027B4DF4: ; // 0x27b4df4 /* 027B4DF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[10]); /* 027B4DF8 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4DF8 */ _t68 = _t67 & 0x00000001u; /* 027B4DF8 */ if (_t68) goto L_027B4DFC; else goto L_027B4E48; L_027B4DFC: ; // 0x27b4dfc /* 027B4DFC */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B4E00 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027B4E04 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B4E04 */ _t69 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B4E04 */ _t70 = _t69 >> (0x00000002u & 31u); /* 027B4E04 */ _t71 = _t70 & 0x00000001u; /* 027B4E04 */ if (_t71) goto L_027B4DCC; else goto L_027B4E08; L_027B4E08: ; // 0x27b4e08 /* 027B4E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B4E0C */ _t72 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4E0C */ _t73 = _t72 & 0x00000001u; /* 027B4E0C */ if (_t73) goto L_027B4E90; else goto L_027B4E10; L_027B4E10: ; // 0x27b4e10 /* 027B4E10 */ cpu->r[29] = cpu->r[29] + 0x00000002u; /* 027B4E14 */ _t74 = cpu->r[23] + 0x00000004u; /* 027B4E14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t74); /* 027B4E18 */ _t75 = cpu->r[4] + 0x00000014u; /* 027B4E18 */ cpu->r[6] = rbrew_read32(cpu->mem, _t75); /* 027B4E1C */ cpu->ctr = cpu->r[6]; /* 027B4E20 */ cpu->r[3] = cpu->r[23]; /* 027B4E24 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4E28 */ _t76 = cpu->r[23] + 0x00000000u; /* 027B4E28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t76); /* 027B4E2C */ cpu->r[4] = cpu->r[11]; /* 027B4E30 */ _t77 = cpu->r[4] + 0x00000000u; /* 027B4E30 */ cpu->r[8] = rbrew_read8(cpu->mem, _t77); /* 027B4E34 */ cpu->r[12] = 0x00000000u; /* 027B4E38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027B4E3C */ cpu->r[6] = 0x00080000u; /* 027B4E40 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4E40 */ _t79 = _t78 & 0x00000001u; /* 027B4E40 */ if (_t79) goto L_027B4E44; else goto L_027B4EC4; L_027B4E44: ; // 0x27b4e44 /* 027B4E44 */ goto L_027B4EF8; L_027B4E48: ; // 0x27b4e48 /* 027B4E48 */ cpu->r[22] = cpu->r[22] + 0xFFFFFFFFu; /* 027B4E48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u); /* 027B4E4C */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu; /* 027B4E50 */ _t80 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4E50 */ _t81 = _t80 & 0x00000001u; /* 027B4E50 */ if (_t81) goto L_027B4E54; else goto L_027B4D68; L_027B4E54: ; // 0x27b4e54 /* 027B4E54 */ cpu->r[29] = 0xFFFFFFFFu; /* 027B4E58 */ cpu->r[29] = 0x00000000u; /* 027B4E5C */ _t82 = cpu->r[23] + 0x00000004u; /* 027B4E5C */ cpu->r[4] = rbrew_read32(cpu->mem, _t82); /* 027B4E60 */ _t83 = cpu->r[4] + 0x00000014u; /* 027B4E60 */ cpu->r[6] = rbrew_read32(cpu->mem, _t83); /* 027B4E64 */ cpu->ctr = cpu->r[6]; /* 027B4E68 */ cpu->r[3] = cpu->r[23]; /* 027B4E6C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4E70 */ _t84 = cpu->r[23] + 0x00000000u; /* 027B4E70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t84); /* 027B4E74 */ cpu->r[4] = cpu->r[11]; /* 027B4E78 */ _t85 = cpu->r[4] + 0x00000000u; /* 027B4E78 */ cpu->r[8] = rbrew_read8(cpu->mem, _t85); /* 027B4E7C */ cpu->r[12] = cpu->r[29]; /* 027B4E80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027B4E84 */ cpu->r[6] = 0x00080000u; /* 027B4E88 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4E88 */ _t87 = _t86 & 0x00000001u; /* 027B4E88 */ if (_t87) goto L_027B4E44; else goto L_027B4E8C; L_027B4E8C: ; // 0x27b4e8c /* 027B4E8C */ goto L_027B4EC4; L_027B4E90: ; // 0x27b4e90 /* 027B4E90 */ cpu->r[29] = 0x00000000u; /* 027B4E94 */ _t88 = cpu->r[23] + 0x00000004u; /* 027B4E94 */ cpu->r[4] = rbrew_read32(cpu->mem, _t88); /* 027B4E98 */ _t89 = cpu->r[4] + 0x00000014u; /* 027B4E98 */ cpu->r[6] = rbrew_read32(cpu->mem, _t89); /* 027B4E9C */ cpu->ctr = cpu->r[6]; /* 027B4EA0 */ cpu->r[3] = cpu->r[23]; /* 027B4EA4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4EA8 */ _t90 = cpu->r[23] + 0x00000000u; /* 027B4EA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t90); /* 027B4EAC */ cpu->r[4] = cpu->r[11]; /* 027B4EB0 */ _t91 = cpu->r[4] + 0x00000000u; /* 027B4EB0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t91); /* 027B4EB4 */ cpu->r[12] = cpu->r[29]; /* 027B4EB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027B4EBC */ cpu->r[6] = 0x00080000u; /* 027B4EC0 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4EC0 */ _t93 = _t92 & 0x00000001u; /* 027B4EC0 */ if (_t93) goto L_027B4E44; else goto L_027B4EC4; L_027B4EC4: ; // 0x27b4ec4 /* 027B4EC4 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B4EC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[6]); /* 027B4ECC */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027B4ED0 */ _t94 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4ED0 */ _t95 = _t94 & 0x00000001u; /* 027B4ED0 */ if (_t95) goto L_027B4EF4; else goto L_027B4ED4; L_027B4ED4: ; // 0x27b4ed4 /* 027B4ED4 */ _t96 = cpu->r[4] + 0x00000000u; /* 027B4ED4 */ cpu->r[9] = rbrew_read8(cpu->mem, _t96); /* 027B4ED8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]); /* 027B4EDC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4EDC */ _t98 = _t97 & 0x00000001u; /* 027B4EDC */ if (_t98) goto L_027B4EE0; else goto L_027B4EC4; L_027B4EE0: ; // 0x27b4ee0 /* 027B4EE0 */ cpu->r[31] = 0x101F0000u; /* 027B4EE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B4EE8 */ cpu->r[31] = cpu->r[31] + 0x000066E8u; /* 027B4EEC */ _t99 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4EEC */ _t100 = _t99 & 0x00000001u; /* 027B4EEC */ if (_t100) goto L_027B4F10; else goto L_027B4EF0; L_027B4EF0: ; // 0x27b4ef0 /* 027B4EF0 */ goto L_027B4F08; L_027B4EF4: ; // 0x27b4ef4 /* 027B4EF4 */ cpu->r[12] = 0x00000000u; L_027B4EF8: ; // 0x27b4ef8 /* 027B4EF8 */ cpu->r[31] = 0x101F0000u; /* 027B4EFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B4F00 */ cpu->r[31] = cpu->r[31] + 0x000066E8u; /* 027B4F04 */ _t101 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4F04 */ _t102 = _t101 & 0x00000001u; /* 027B4F04 */ if (_t102) goto L_027B4F10; else goto L_027B4F08; L_027B4F08: ; // 0x27b4f08 /* 027B4F08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]); /* 027B4F0C */ _t103 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4F0C */ _t104 = _t103 & 0x00000001u; /* 027B4F0C */ if (_t104) goto L_027B4F10; else goto L_027B4F30; L_027B4F10: ; // 0x27b4f10 /* 027B4F10 */ _t105 = cpu->r[27] + 0x00000000u; /* 027B4F10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t105); /* 027B4F14 */ _t106 = cpu->r[31] + 0x00000000u; /* 027B4F14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t106); /* 027B4F18 */ cpu->r[21] = 0x00000000u; /* 027B4F1C */ _t107 = cpu->r[1] + 0x0000002Cu; /* 027B4F1C */ rbrew_write32(cpu->mem, _t107, cpu->r[25]); /* 027B4F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[0]); /* 027B4F24 */ _t108 = cpu->r[1] + 0x00000028u; /* 027B4F24 */ rbrew_write32(cpu->mem, _t108, cpu->r[10]); /* 027B4F28 */ _t109 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4F28 */ _t110 = _t109 & 0x00000001u; /* 027B4F28 */ if (_t110) goto L_027B4F2C; else goto L_027B53B0; L_027B4F2C: ; // 0x27b4f2c /* 027B4F2C */ goto L_027B4F4C; L_027B4F30: ; // 0x27b4f30 /* 027B4F30 */ _t111 = cpu->r[27] + 0x00000000u; /* 027B4F30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t111); /* 027B4F34 */ cpu->r[21] = 0x00000000u; /* 027B4F38 */ cpu->r[10] = cpu->r[11] + cpu->r[29]; /* 027B4F3C */ _t112 = cpu->r[1] + 0x0000002Cu; /* 027B4F3C */ rbrew_write32(cpu->mem, _t112, cpu->r[25]); /* 027B4F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[0]); /* 027B4F44 */ _t113 = cpu->r[1] + 0x00000028u; /* 027B4F44 */ rbrew_write32(cpu->mem, _t113, cpu->r[10]); /* 027B4F48 */ _t114 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4F48 */ _t115 = _t114 & 0x00000001u; /* 027B4F48 */ if (_t115) goto L_027B4F4C; else goto L_027B53B0; L_027B4F4C: ; // 0x27b4f4c /* 027B4F4C */ cpu->r[23] = 0x00080000u; /* 027B4F50 */ cpu->r[22] = 0x00000000u; /* 027B4F54 */ cpu->r[23] = cpu->r[23] + 0x00000001u; /* 027B4F58 */ cpu->r[29] = cpu->r[30]; L_027B4F5C: ; // 0x27b4f5c /* 027B4F5C */ _t116 = cpu->r[27] + 0x00000008u; /* 027B4F5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t116); /* 027B4F60 */ _t117 = cpu->r[12] + 0x00000014u; /* 027B4F60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t117); /* 027B4F64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[4]); /* 027B4F68 */ _t118 = cpu->r[12] + 0x00000018u; /* 027B4F68 */ cpu->r[19] = rbrew_read32(cpu->mem, _t118); /* 027B4F6C */ _t119 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B4F6C */ _t120 = _t119 & 0x00000001u; /* 027B4F6C */ if (_t120) goto L_027B4F70; else goto L_027B4F74; L_027B4F70: ; // 0x27b4f70 /* 027B4F70 */ cpu->r[19] = cpu->r[19] + cpu->r[22]; L_027B4F74: ; // 0x27b4f74 /* 027B4F74 */ _t121 = cpu->r[1] + 0x00000008u; /* 027B4F74 */ rbrew_write32(cpu->mem, _t121, cpu->r[26]); /* 027B4F78 */ _t122 = cpu->r[1] + 0x0000000Cu; /* 027B4F78 */ rbrew_write32(cpu->mem, _t122, cpu->r[25]); /* 027B4F7C */ _t123 = cpu->r[19] + 0x00000004u; /* 027B4F7C */ cpu->r[5] = rbrew_read32(cpu->mem, _t123); /* 027B4F80 */ _t124 = cpu->r[5] + 0x00000014u; /* 027B4F80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t124); /* 027B4F84 */ cpu->ctr = cpu->r[6]; /* 027B4F88 */ cpu->r[3] = cpu->r[19]; /* 027B4F8C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4F90 */ _t125 = cpu->r[19] + 0x00000000u; /* 027B4F90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t125); /* 027B4F94 */ _t126 = cpu->r[10] + 0x00000000u; /* 027B4F94 */ cpu->r[8] = rbrew_read8(cpu->mem, _t126); /* 027B4F98 */ cpu->r[20] = 0x00000000u; /* 027B4F9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[29]); /* 027B4FA0 */ cpu->r[12] = 0x00080000u; /* 027B4FA4 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4FA4 */ _t128 = _t127 & 0x00000001u; /* 027B4FA4 */ if (_t128) goto L_027B4FF8; else goto L_027B4FA8; L_027B4FA8: ; // 0x27b4fa8 /* 027B4FA8 */ cpu->r[20] = cpu->r[20] + 0x00000001u; /* 027B4FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[12]); /* 027B4FB0 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027B4FB4 */ _t129 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B4FB4 */ _t130 = _t129 & 0x00000001u; /* 027B4FB4 */ if (_t130) goto L_027B4FF4; else goto L_027B4FB8; L_027B4FB8: ; // 0x27b4fb8 /* 027B4FB8 */ _t131 = cpu->r[10] + 0x00000000u; /* 027B4FB8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t131); /* 027B4FBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027B4FC0 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4FC0 */ _t133 = _t132 & 0x00000001u; /* 027B4FC0 */ if (_t133) goto L_027B4FC4; else goto L_027B4FA8; L_027B4FC4: ; // 0x27b4fc4 /* 027B4FC4 */ _t134 = cpu->r[1] + 0x0000000Cu; /* 027B4FC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t134); /* 027B4FC8 */ _t135 = cpu->r[8] + 0x00000014u; /* 027B4FC8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t135); /* 027B4FCC */ cpu->ctr = cpu->r[10]; /* 027B4FD0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B4FD4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B4FD8 */ _t136 = cpu->r[1] + 0x00000008u; /* 027B4FD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t136); /* 027B4FDC */ _t137 = cpu->r[5] + 0x00000000u; /* 027B4FDC */ cpu->r[12] = rbrew_read8(cpu->mem, _t137); /* 027B4FE0 */ cpu->r[24] = 0x00000000u; /* 027B4FE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[29]); /* 027B4FE8 */ cpu->r[7] = 0x00080000u; /* 027B4FEC */ _t138 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B4FEC */ _t139 = _t138 & 0x00000001u; /* 027B4FEC */ if (_t139) goto L_027B4FF0; else goto L_027B5024; L_027B4FF0: ; // 0x27b4ff0 /* 027B4FF0 */ goto L_027B5054; L_027B4FF4: ; // 0x27b4ff4 /* 027B4FF4 */ cpu->r[20] = 0x00000000u; L_027B4FF8: ; // 0x27b4ff8 /* 027B4FF8 */ _t140 = cpu->r[1] + 0x0000000Cu; /* 027B4FF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t140); /* 027B4FFC */ _t141 = cpu->r[8] + 0x00000014u; /* 027B4FFC */ cpu->r[10] = rbrew_read32(cpu->mem, _t141); /* 027B5000 */ cpu->ctr = cpu->r[10]; /* 027B5004 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5008 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B500C */ _t142 = cpu->r[1] + 0x00000008u; /* 027B500C */ cpu->r[5] = rbrew_read32(cpu->mem, _t142); /* 027B5010 */ _t143 = cpu->r[5] + 0x00000000u; /* 027B5010 */ cpu->r[12] = rbrew_read8(cpu->mem, _t143); /* 027B5014 */ cpu->r[24] = 0x00000000u; /* 027B5018 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[29]); /* 027B501C */ cpu->r[7] = 0x00080000u; /* 027B5020 */ _t144 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5020 */ _t145 = _t144 & 0x00000001u; /* 027B5020 */ if (_t145) goto L_027B4FF0; else goto L_027B5024; L_027B5024: ; // 0x27b5024 /* 027B5024 */ cpu->r[24] = cpu->r[24] + 0x00000001u; /* 027B5028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[7]); /* 027B502C */ cpu->r[5] = cpu->r[5] + 0x00000001u; /* 027B5030 */ _t146 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5030 */ _t147 = _t146 & 0x00000001u; /* 027B5030 */ if (_t147) goto L_027B5050; else goto L_027B5034; L_027B5034: ; // 0x27b5034 /* 027B5034 */ _t148 = cpu->r[5] + 0x00000000u; /* 027B5034 */ cpu->r[0] = rbrew_read8(cpu->mem, _t148); /* 027B5038 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027B503C */ _t149 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B503C */ _t150 = _t149 & 0x00000001u; /* 027B503C */ if (_t150) goto L_027B5040; else goto L_027B5024; L_027B5040: ; // 0x27b5040 /* 027B5040 */ cpu->r[20] = cpu->r[20] - cpu->r[24]; /* 027B5040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u); /* 027B5044 */ cpu->r[16] = cpu->r[20] + 0x00000001u; /* 027B5048 */ _t151 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5048 */ _t152 = _t151 & 0x00000001u; /* 027B5048 */ if (_t152) goto L_027B504C; else goto L_027B5060; L_027B504C: ; // 0x27b504c /* 027B504C */ goto L_027B5154; L_027B5050: ; // 0x27b5050 /* 027B5050 */ cpu->r[24] = 0x00000000u; L_027B5054: ; // 0x27b5054 /* 027B5054 */ cpu->r[20] = cpu->r[20] - cpu->r[24]; /* 027B5054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u); /* 027B5058 */ cpu->r[16] = cpu->r[20] + 0x00000001u; /* 027B505C */ _t153 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B505C */ _t154 = _t153 & 0x00000001u; /* 027B505C */ if (_t154) goto L_027B5154; else goto L_027B5060; L_027B5060: ; // 0x27b5060 /* 027B5060 */ cpu->r[18] = cpu->r[29]; L_027B5064: ; // 0x27b5064 /* 027B5064 */ _t155 = cpu->r[19] + 0x00000000u; /* 027B5064 */ cpu->r[5] = rbrew_read32(cpu->mem, _t155); /* 027B5068 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B506C */ _t156 = cpu->r[1] + 0x00000014u; /* 027B506C */ rbrew_write32(cpu->mem, _t156, cpu->r[25]); /* 027B5070 */ cpu->r[0] = cpu->r[5] + cpu->r[20]; /* 027B5074 */ cpu->r[17] = cpu->r[24]; /* 027B5078 */ _t157 = cpu->r[1] + 0x00000010u; /* 027B5078 */ rbrew_write32(cpu->mem, _t157, cpu->r[0]); /* 027B507C */ Gambit_fn_027B653C(cpu); /* 027B5080 */ _t158 = cpu->r[1] + 0x00000014u; /* 027B5080 */ cpu->r[7] = rbrew_read32(cpu->mem, _t158); /* 027B5084 */ _t159 = cpu->r[7] + 0x00000014u; /* 027B5084 */ cpu->r[0] = rbrew_read32(cpu->mem, _t159); /* 027B5088 */ cpu->ctr = cpu->r[0]; /* 027B508C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B5090 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5094 */ _t160 = cpu->r[1] + 0x0000000Cu; /* 027B5094 */ cpu->r[10] = rbrew_read32(cpu->mem, _t160); /* 027B5098 */ _t161 = cpu->r[10] + 0x00000014u; /* 027B5098 */ cpu->r[4] = rbrew_read32(cpu->mem, _t161); /* 027B509C */ cpu->ctr = cpu->r[4]; /* 027B50A0 */ _t162 = cpu->r[1] + 0x00000010u; /* 027B50A0 */ cpu->r[15] = rbrew_read32(cpu->mem, _t162); /* 027B50A4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B50A8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B50AC */ _t163 = cpu->r[1] + 0x00000008u; /* 027B50AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t163); /* 027B50B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[15], cpu->r[5]); /* 027B50B4 */ _t164 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B50B4 */ _t165 = _t164 & 0x00000001u; /* 027B50B4 */ if (_t165) goto L_027B5108; else goto L_027B50B8; L_027B50B8: ; // 0x27b50b8 /* 027B50B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[17], 0x00000000u); /* 027B50BC */ _t166 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B50BC */ _t167 = _t166 & 0x00000001u; /* 027B50BC */ if (_t167) goto L_027B50C0; else goto L_027B5108; L_027B50C0: ; // 0x27b50c0 /* 027B50C0 */ _t168 = cpu->r[1] + 0x00000008u; /* 027B50C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t168); /* 027B50C4 */ cpu->ctr = cpu->r[17]; /* 027B50C8 */ _t169 = cpu->r[1] + 0x00000010u; /* 027B50C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t169); L_027B50CC: ; // 0x27b50cc /* 027B50CC */ _t170 = cpu->r[9] + 0x00000000u; /* 027B50CC */ cpu->r[5] = rbrew_read8(cpu->mem, _t170); /* 027B50D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[18]); /* 027B50D4 */ _t171 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B50D4 */ _t172 = _t171 & 0x00000001u; /* 027B50D4 */ if (_t172) goto L_027B50D8; else goto L_027B50E8; L_027B50D8: ; // 0x27b50d8 /* 027B50D8 */ _t173 = cpu->r[7] + 0x00000000u; /* 027B50D8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t173); /* 027B50DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[18]); /* 027B50E0 */ _t174 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B50E0 */ _t175 = _t174 & 0x00000001u; /* 027B50E0 */ if (_t175) goto L_027B50E4; else goto L_027B5148; L_027B50E4: ; // 0x27b50e4 /* 027B50E4 */ goto L_027B5108; L_027B50E8: ; // 0x27b50e8 /* 027B50E8 */ _t176 = cpu->r[7] + 0x00000000u; /* 027B50E8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t176); /* 027B50EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[18]); /* 027B50F0 */ _t177 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B50F0 */ _t178 = _t177 & 0x00000001u; /* 027B50F0 */ if (_t178) goto L_027B5148; else goto L_027B50F4; L_027B50F4: ; // 0x27b50f4 /* 027B50F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[5]); /* 027B50F8 */ _t179 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B50F8 */ _t180 = _t179 & 0x00000001u; /* 027B50F8 */ if (_t180) goto L_027B50FC; else goto L_027B5148; L_027B50FC: ; // 0x27b50fc /* 027B50FC */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B5100 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B5104 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B5104 */ _t181 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B5104 */ _t182 = _t181 >> (0x00000002u & 31u); /* 027B5104 */ _t183 = _t182 & 0x00000001u; /* 027B5104 */ if (_t183) goto L_027B50CC; else goto L_027B5108; L_027B5108: ; // 0x27b5108 /* 027B5108 */ _t184 = cpu->r[19] + 0x00000004u; /* 027B5108 */ cpu->r[7] = rbrew_read32(cpu->mem, _t184); /* 027B510C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u); /* 027B5110 */ _t185 = cpu->r[7] + 0x00000014u; /* 027B5110 */ cpu->r[9] = rbrew_read32(cpu->mem, _t185); /* 027B5114 */ _t186 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5114 */ _t187 = _t186 & 0x00000001u; /* 027B5114 */ if (_t187) goto L_027B5190; else goto L_027B5118; L_027B5118: ; // 0x27b5118 /* 027B5118 */ cpu->ctr = cpu->r[9]; /* 027B511C */ cpu->r[20] = cpu->r[20] + 0x00000002u; /* 027B5120 */ cpu->r[3] = cpu->r[19]; /* 027B5124 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5128 */ _t188 = cpu->r[19] + 0x00000000u; /* 027B5128 */ cpu->r[4] = rbrew_read32(cpu->mem, _t188); /* 027B512C */ cpu->r[11] = cpu->r[4]; /* 027B5130 */ _t189 = cpu->r[11] + 0x00000000u; /* 027B5130 */ cpu->r[0] = rbrew_read8(cpu->mem, _t189); /* 027B5134 */ cpu->r[10] = 0x00000000u; /* 027B5138 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027B513C */ cpu->r[0] = 0x00080000u; /* 027B5140 */ _t190 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5140 */ _t191 = _t190 & 0x00000001u; /* 027B5140 */ if (_t191) goto L_027B5144; else goto L_027B51BC; L_027B5144: ; // 0x27b5144 /* 027B5144 */ goto L_027B51E8; L_027B5148: ; // 0x27b5148 /* 027B5148 */ cpu->r[16] = cpu->r[16] + 0xFFFFFFFFu; /* 027B5148 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[16], 0x00000000u); /* 027B514C */ cpu->r[20] = cpu->r[20] + 0xFFFFFFFFu; /* 027B5150 */ _t192 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5150 */ _t193 = _t192 & 0x00000001u; /* 027B5150 */ if (_t193) goto L_027B5154; else goto L_027B5064; L_027B5154: ; // 0x27b5154 /* 027B5154 */ _t194 = cpu->r[19] + 0x00000004u; /* 027B5154 */ cpu->r[7] = rbrew_read32(cpu->mem, _t194); /* 027B5158 */ _t195 = cpu->r[7] + 0x00000014u; /* 027B5158 */ cpu->r[9] = rbrew_read32(cpu->mem, _t195); /* 027B515C */ cpu->r[20] = 0xFFFFFFFFu; /* 027B5160 */ cpu->ctr = cpu->r[9]; /* 027B5164 */ cpu->r[20] = 0x00000000u; /* 027B5168 */ cpu->r[3] = cpu->r[19]; /* 027B516C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5170 */ _t196 = cpu->r[19] + 0x00000000u; /* 027B5170 */ cpu->r[4] = rbrew_read32(cpu->mem, _t196); /* 027B5174 */ cpu->r[11] = cpu->r[4]; /* 027B5178 */ _t197 = cpu->r[11] + 0x00000000u; /* 027B5178 */ cpu->r[0] = rbrew_read8(cpu->mem, _t197); /* 027B517C */ cpu->r[10] = cpu->r[20]; /* 027B5180 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027B5184 */ cpu->r[0] = 0x00080000u; /* 027B5188 */ _t198 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5188 */ _t199 = _t198 & 0x00000001u; /* 027B5188 */ if (_t199) goto L_027B5144; else goto L_027B518C; L_027B518C: ; // 0x27b518c /* 027B518C */ goto L_027B51BC; L_027B5190: ; // 0x27b5190 /* 027B5190 */ cpu->ctr = cpu->r[9]; /* 027B5194 */ cpu->r[20] = 0x00000000u; /* 027B5198 */ cpu->r[3] = cpu->r[19]; /* 027B519C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B51A0 */ _t200 = cpu->r[19] + 0x00000000u; /* 027B51A0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t200); /* 027B51A4 */ cpu->r[11] = cpu->r[4]; /* 027B51A8 */ _t201 = cpu->r[11] + 0x00000000u; /* 027B51A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t201); /* 027B51AC */ cpu->r[10] = cpu->r[20]; /* 027B51B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027B51B4 */ cpu->r[0] = 0x00080000u; /* 027B51B8 */ _t202 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B51B8 */ _t203 = _t202 & 0x00000001u; /* 027B51B8 */ if (_t203) goto L_027B5144; else goto L_027B51BC; L_027B51BC: ; // 0x27b51bc /* 027B51BC */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027B51C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[0]); /* 027B51C4 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027B51C8 */ _t204 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B51C8 */ _t205 = _t204 & 0x00000001u; /* 027B51C8 */ if (_t205) goto L_027B51E4; else goto L_027B51CC; L_027B51CC: ; // 0x27b51cc /* 027B51CC */ _t206 = cpu->r[11] + 0x00000000u; /* 027B51CC */ cpu->r[12] = rbrew_read8(cpu->mem, _t206); /* 027B51D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[29]); /* 027B51D4 */ _t207 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B51D4 */ _t208 = _t207 & 0x00000001u; /* 027B51D4 */ if (_t208) goto L_027B51D8; else goto L_027B51BC; L_027B51D8: ; // 0x27b51d8 /* 027B51D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u); /* 027B51DC */ _t209 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B51DC */ _t210 = _t209 & 0x00000001u; /* 027B51DC */ if (_t210) goto L_027B51F8; else goto L_027B51E0; L_027B51E0: ; // 0x27b51e0 /* 027B51E0 */ goto L_027B51F0; L_027B51E4: ; // 0x27b51e4 /* 027B51E4 */ cpu->r[10] = 0x00000000u; L_027B51E8: ; // 0x27b51e8 /* 027B51E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u); /* 027B51EC */ _t211 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B51EC */ _t212 = _t211 & 0x00000001u; /* 027B51EC */ if (_t212) goto L_027B51F8; else goto L_027B51F0; L_027B51F0: ; // 0x27b51f0 /* 027B51F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[10]); /* 027B51F4 */ _t213 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B51F4 */ _t214 = _t213 & 0x00000001u; /* 027B51F4 */ if (_t214) goto L_027B51F8; else goto L_027B5248; L_027B51F8: ; // 0x27b51f8 /* 027B51F8 */ _t215 = cpu->r[31] + 0x00000000u; /* 027B51F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t215); /* 027B51FC */ _t216 = cpu->r[1] + 0x0000000Cu; /* 027B51FC */ rbrew_write32(cpu->mem, _t216, cpu->r[25]); /* 027B5200 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5204 */ _t217 = cpu->r[1] + 0x00000008u; /* 027B5204 */ rbrew_write32(cpu->mem, _t217, cpu->r[11]); /* 027B5208 */ Gambit_fn_027B653C(cpu); /* 027B520C */ _t218 = cpu->r[1] + 0x0000000Cu; /* 027B520C */ cpu->r[5] = rbrew_read32(cpu->mem, _t218); /* 027B5210 */ _t219 = cpu->r[5] + 0x00000014u; /* 027B5210 */ cpu->r[7] = rbrew_read32(cpu->mem, _t219); /* 027B5214 */ cpu->ctr = cpu->r[7]; /* 027B5218 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B521C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5220 */ _t220 = cpu->r[1] + 0x0000002Cu; /* 027B5220 */ cpu->r[8] = rbrew_read32(cpu->mem, _t220); /* 027B5224 */ _t221 = cpu->r[8] + 0x00000014u; /* 027B5224 */ cpu->r[9] = rbrew_read32(cpu->mem, _t221); /* 027B5228 */ cpu->ctr = cpu->r[9]; /* 027B522C */ _t222 = cpu->r[1] + 0x00000008u; /* 027B522C */ cpu->r[24] = rbrew_read32(cpu->mem, _t222); /* 027B5230 */ cpu->r[3] = cpu->r[1] + 0x00000028u; /* 027B5234 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5238 */ _t223 = cpu->r[1] + 0x00000028u; /* 027B5238 */ cpu->r[9] = rbrew_read32(cpu->mem, _t223); /* 027B523C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[9]); /* 027B5240 */ _t224 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5240 */ _t225 = _t224 & 0x00000001u; /* 027B5240 */ if (_t225) goto L_027B52C4; else goto L_027B5244; L_027B5244: ; // 0x27b5244 /* 027B5244 */ goto L_027B5294; L_027B5248: ; // 0x27b5248 /* 027B5248 */ _t226 = cpu->r[1] + 0x0000000Cu; /* 027B5248 */ rbrew_write32(cpu->mem, _t226, cpu->r[25]); /* 027B524C */ cpu->r[11] = cpu->r[4] + cpu->r[20]; /* 027B5250 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5254 */ _t227 = cpu->r[1] + 0x00000008u; /* 027B5254 */ rbrew_write32(cpu->mem, _t227, cpu->r[11]); /* 027B5258 */ Gambit_fn_027B653C(cpu); /* 027B525C */ _t228 = cpu->r[1] + 0x0000000Cu; /* 027B525C */ cpu->r[5] = rbrew_read32(cpu->mem, _t228); /* 027B5260 */ _t229 = cpu->r[5] + 0x00000014u; /* 027B5260 */ cpu->r[7] = rbrew_read32(cpu->mem, _t229); /* 027B5264 */ cpu->ctr = cpu->r[7]; /* 027B5268 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B526C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5270 */ _t230 = cpu->r[1] + 0x0000002Cu; /* 027B5270 */ cpu->r[8] = rbrew_read32(cpu->mem, _t230); /* 027B5274 */ _t231 = cpu->r[8] + 0x00000014u; /* 027B5274 */ cpu->r[9] = rbrew_read32(cpu->mem, _t231); /* 027B5278 */ cpu->ctr = cpu->r[9]; /* 027B527C */ _t232 = cpu->r[1] + 0x00000008u; /* 027B527C */ cpu->r[24] = rbrew_read32(cpu->mem, _t232); /* 027B5280 */ cpu->r[3] = cpu->r[1] + 0x00000028u; /* 027B5284 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5288 */ _t233 = cpu->r[1] + 0x00000028u; /* 027B5288 */ cpu->r[9] = rbrew_read32(cpu->mem, _t233); /* 027B528C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[9]); /* 027B5290 */ _t234 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5290 */ _t235 = _t234 & 0x00000001u; /* 027B5290 */ if (_t235) goto L_027B52C4; else goto L_027B5294; L_027B5294: ; // 0x27b5294 /* 027B5294 */ _t236 = cpu->r[1] + 0x00000008u; /* 027B5294 */ cpu->r[5] = rbrew_read32(cpu->mem, _t236); /* 027B5298 */ cpu->ctr = cpu->r[23]; /* 027B529C */ cpu->r[8] = cpu->r[9] + 0xFFFFFFFFu; L_027B52A0: ; // 0x27b52a0 /* 027B52A0 */ _t237 = cpu->r[5] + 0x00000000u; /* 027B52A0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t237); /* 027B52A4 */ _t238 = cpu->r[8] + 0x00000001u; /* 027B52A4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t238); /* 027B52A4 */ cpu->r[8] = _t238; /* 027B52A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[11]); /* 027B52AC */ _t239 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B52AC */ _t240 = _t239 & 0x00000001u; /* 027B52AC */ if (_t240) goto L_027B52B0; else goto L_027B539C; L_027B52B0: ; // 0x27b52b0 /* 027B52B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]); /* 027B52B4 */ _t241 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B52B4 */ _t242 = _t241 & 0x00000001u; /* 027B52B4 */ if (_t242) goto L_027B52C4; else goto L_027B52B8; L_027B52B8: ; // 0x27b52b8 /* 027B52B8 */ cpu->r[5] = cpu->r[5] + 0x00000001u; /* 027B52BC */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B52BC */ _t243 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B52BC */ _t244 = _t243 >> (0x00000002u & 31u); /* 027B52BC */ _t245 = _t244 & 0x00000001u; /* 027B52BC */ if (_t245) goto L_027B52A0; else goto L_027B52C0; L_027B52C0: ; // 0x27b52c0 /* 027B52C0 */ goto L_027B539C; L_027B52C4: ; // 0x27b52c4 /* 027B52C4 */ _t246 = cpu->r[27] + 0x00000008u; /* 027B52C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t246); /* 027B52C8 */ _t247 = cpu->r[9] + 0x00000014u; /* 027B52C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t247); /* 027B52CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[21], cpu->r[0]); /* 027B52D0 */ _t248 = cpu->r[9] + 0x00000018u; /* 027B52D0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t248); /* 027B52D4 */ _t249 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B52D4 */ _t250 = _t249 & 0x00000001u; /* 027B52D4 */ if (_t250) goto L_027B52D8; else goto L_027B52E0; L_027B52D8: ; // 0x27b52d8 /* 027B52D8 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[21] * (int32_t)0x00000024u); /* 027B52DC */ cpu->r[29] = cpu->r[29] + cpu->r[4]; L_027B52E0: ; // 0x27b52e0 /* 027B52E0 */ _t251 = cpu->r[29] + 0x00000004u; /* 027B52E0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t251); /* 027B52E4 */ _t252 = cpu->r[8] + 0x00000014u; /* 027B52E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t252); /* 027B52E8 */ cpu->ctr = cpu->r[10]; /* 027B52EC */ _t253 = cpu->r[28] + 0x00000000u; /* 027B52EC */ cpu->r[27] = rbrew_read32(cpu->mem, _t253); /* 027B52F0 */ cpu->r[3] = cpu->r[29]; /* 027B52F4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B52F8 */ _t254 = cpu->r[29] + 0x00000000u; /* 027B52F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t254); /* 027B52FC */ _t255 = cpu->r[9] + 0x00000000u; /* 027B52FC */ cpu->r[0] = rbrew_read8(cpu->mem, _t255); /* 027B5300 */ cpu->r[31] = 0x00000000u; /* 027B5304 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027B5308 */ cpu->r[11] = 0x00080000u; /* 027B530C */ _t256 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B530C */ _t257 = _t256 & 0x00000001u; /* 027B530C */ if (_t257) goto L_027B5348; else goto L_027B5310; L_027B5310: ; // 0x27b5310 /* 027B5310 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027B5314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[11]); /* 027B5318 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B531C */ _t258 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B531C */ _t259 = _t258 & 0x00000001u; /* 027B531C */ if (_t259) goto L_027B5344; else goto L_027B5320; L_027B5320: ; // 0x27b5320 /* 027B5320 */ _t260 = cpu->r[9] + 0x00000000u; /* 027B5320 */ cpu->r[5] = rbrew_read8(cpu->mem, _t260); /* 027B5324 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]); /* 027B5328 */ _t261 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5328 */ _t262 = _t261 & 0x00000001u; /* 027B5328 */ if (_t262) goto L_027B532C; else goto L_027B5310; L_027B532C: ; // 0x27b532c /* 027B532C */ _t263 = cpu->r[28] + 0x00000008u; /* 027B532C */ cpu->r[8] = rbrew_read32(cpu->mem, _t263); /* 027B5330 */ _t264 = cpu->r[29] + 0x00000004u; /* 027B5330 */ cpu->r[7] = rbrew_read32(cpu->mem, _t264); /* 027B5334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]); /* 027B5338 */ _t265 = cpu->r[7] + 0x00000014u; /* 027B5338 */ cpu->r[9] = rbrew_read32(cpu->mem, _t265); /* 027B533C */ _t266 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B533C */ _t267 = _t266 & 0x00000001u; /* 027B533C */ if (_t267) goto L_027B5340; else goto L_027B535C; L_027B5340: ; // 0x27b5340 /* 027B5340 */ goto L_027B5360; L_027B5344: ; // 0x27b5344 /* 027B5344 */ cpu->r[31] = 0x00000000u; L_027B5348: ; // 0x27b5348 /* 027B5348 */ _t268 = cpu->r[28] + 0x00000008u; /* 027B5348 */ cpu->r[8] = rbrew_read32(cpu->mem, _t268); /* 027B534C */ _t269 = cpu->r[29] + 0x00000004u; /* 027B534C */ cpu->r[7] = rbrew_read32(cpu->mem, _t269); /* 027B5350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[8]); /* 027B5354 */ _t270 = cpu->r[7] + 0x00000014u; /* 027B5354 */ cpu->r[9] = rbrew_read32(cpu->mem, _t270); /* 027B5358 */ _t271 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5358 */ _t272 = _t271 & 0x00000001u; /* 027B5358 */ if (_t272) goto L_027B5360; else goto L_027B535C; L_027B535C: ; // 0x27b535c /* 027B535C */ cpu->r[31] = cpu->r[8] + 0xFFFFFFFFu; L_027B5360: ; // 0x27b5360 /* 027B5360 */ cpu->ctr = cpu->r[9]; /* 027B5364 */ cpu->r[3] = cpu->r[29]; /* 027B5368 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B536C */ _t273 = cpu->r[29] + 0x00000000u; /* 027B536C */ cpu->r[4] = rbrew_read32(cpu->mem, _t273); /* 027B5370 */ cpu->r[6] = 0x00000000u; /* 027B5374 */ cpu->r[5] = cpu->r[31]; /* 027B5378 */ cpu->r[3] = cpu->r[27]; /* 027B537C */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B5380 */ _t274 = cpu->r[27] + cpu->r[31]; /* 027B5380 */ rbrew_write8(cpu->mem, _t274, (uint8_t)cpu->r[30]); /* 027B5384 */ /* nop */ /* 027B5388 */ _t275 = cpu->r[1] + 0x0000007Cu; /* 027B5388 */ cpu->r[0] = rbrew_read32(cpu->mem, _t275); /* 027B538C */ cpu->lr = cpu->r[0]; /* 027B5390 */ cpu->r[1] = cpu->r[1] + 0x00000078u; /* 027B5394 */ cpu->r[3] = 0x00000001u; /* 027B5398 */ return; L_027B539C: ; // 0x27b539c /* 027B539C */ _t276 = cpu->r[27] + 0x00000000u; /* 027B539C */ cpu->r[10] = rbrew_read32(cpu->mem, _t276); /* 027B53A0 */ cpu->r[21] = cpu->r[21] + 0x00000001u; /* 027B53A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], cpu->r[10]); /* 027B53A8 */ cpu->r[22] = cpu->r[22] + 0x00000024u; /* 027B53AC */ _t277 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B53AC */ _t278 = _t277 & 0x00000001u; /* 027B53AC */ if (_t278) goto L_027B4F5C; else goto L_027B53B0; L_027B53B0: ; // 0x27b53b0 /* 027B53B0 */ /* nop */ /* 027B53B4 */ _t279 = cpu->r[1] + 0x0000007Cu; /* 027B53B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t279); /* 027B53B8 */ cpu->lr = cpu->r[0]; /* 027B53BC */ cpu->r[1] = cpu->r[1] + 0x00000078u; /* 027B53C0 */ cpu->r[3] = 0x00000000u; /* 027B53C4 */ return; } // fn_027B53C8 @ 0x27b53c8 void Gambit_fn_027B53C8(CPUState* cpu) { uint32_t _t0, _t1; L_027B53C8: ; // 0x27b53c8 /* 027B53C8 */ cpu->r[12] = 0xFFFFFFFFu; /* 027B53CC */ _t0 = cpu->r[3] + 0x00000012u; /* 027B53CC */ rbrew_write16(cpu->mem, _t0, (uint16_t)cpu->r[12]); /* 027B53D0 */ _t1 = cpu->r[3] + 0x00000010u; /* 027B53D0 */ rbrew_write16(cpu->mem, _t1, (uint16_t)cpu->r[12]); /* 027B53D4 */ return; } // fn_027B53D8 @ 0x27b53d8 void Gambit_fn_027B53D8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7; L_027B53D8: ; // 0x27b53d8 /* 027B53D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B53DC */ _t0 = cpu->r[3] + 0x00000008u; /* 027B53DC */ rbrew_write32(cpu->mem, _t0, cpu->r[4]); /* 027B53E0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B53E0 */ _t2 = _t1 & 0x00000001u; /* 027B53E0 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B53E0 */ goto L_027B53E4; L_027B53E4: ; // 0x27b53e4 /* 027B53E4 */ _t3 = cpu->r[3] + 0x00000008u; /* 027B53E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B53E8 */ _t4 = cpu->r[3] + 0x0000000Cu; /* 027B53E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]); /* 027B53EC */ _t5 = cpu->r[12] + 0x000000A4u; /* 027B53EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t5); /* 027B53F0 */ _t6 = cpu->r[11] + 0x00000038u; /* 027B53F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027B53F4 */ _t7 = cpu->r[3] + 0x00000000u; /* 027B53F4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027B53F8 */ return; } // fn_027B53FC @ 0x27b53fc void Gambit_fn_027B53FC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62; L_027B53FC: ; // 0x27b53fc /* 027B53FC */ cpu->r[0] = cpu->lr; /* 027B5400 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B5400 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B5400 */ cpu->r[1] = _t0; /* 027B5404 */ _t1 = cpu->r[1] + 0x00000014u; /* 027B5404 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B5408 */ _t2 = cpu->r[1] + 0x00000010u; /* 027B5408 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B540C */ _t3 = cpu->r[1] + 0x00000018u; /* 027B540C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B5410 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B5410 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B5414 */ _t5 = cpu->r[1] + 0x00000024u; /* 027B5414 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B5418 */ _t6 = cpu->r[3] + 0x00000008u; /* 027B5418 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B541C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B5420 */ cpu->r[28] = cpu->r[4]; /* 027B5424 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5424 */ _t8 = _t7 & 0x00000001u; /* 027B5424 */ if (_t8) goto L_027B5458; else goto L_027B5428; L_027B5428: ; // 0x27b5428 /* 027B5428 */ _t9 = cpu->r[11] + 0x000000A4u; /* 027B5428 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027B542C */ _t10 = cpu->r[3] + 0x0000000Cu; /* 027B542C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B5430 */ _t11 = cpu->r[12] + 0x00000028u; /* 027B5430 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11); /* 027B5434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]); /* 027B5438 */ _t12 = cpu->r[12] + 0x0000002Cu; /* 027B5438 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027B543C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B543C */ _t14 = _t13 & 0x00000001u; /* 027B543C */ if (_t14) goto L_027B5440; else goto L_027B5448; L_027B5440: ; // 0x27b5440 /* 027B5440 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000006Cu); /* 027B5444 */ cpu->r[12] = cpu->r[12] + cpu->r[8]; L_027B5448: ; // 0x27b5448 /* 027B5448 */ _t15 = cpu->r[12] + 0x00000000u; /* 027B5448 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15); /* 027B544C */ _t16 = cpu->r[3] + 0x00000010u; /* 027B544C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B5450 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]); /* 027B5454 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5454 */ _t18 = _t17 & 0x00000001u; /* 027B5454 */ if (_t18) goto L_027B5458; else goto L_027B547C; L_027B5458: ; // 0x27b5458 /* 027B5458 */ _t19 = cpu->r[1] + 0x00000010u; /* 027B5458 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19); /* 027B545C */ _t20 = cpu->r[1] + 0x00000014u; /* 027B545C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20); /* 027B5460 */ _t21 = cpu->r[1] + 0x00000024u; /* 027B5460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027B5464 */ _t22 = cpu->r[1] + 0x00000018u; /* 027B5464 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22); /* 027B5468 */ cpu->lr = cpu->r[0]; /* 027B546C */ _t23 = cpu->r[1] + 0x0000001Cu; /* 027B546C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 027B5470 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5474 */ cpu->r[3] = 0x00000000u; /* 027B5478 */ return; L_027B547C: ; // 0x27b547c /* 027B547C */ _t24 = cpu->r[3] + 0x00000010u; /* 027B547C */ rbrew_write32(cpu->mem, _t24, cpu->r[9]); /* 027B5480 */ _t25 = cpu->r[3] + 0x00000010u; /* 027B5480 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t25); /* 027B5484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu); /* 027B5488 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5488 */ _t27 = _t26 & 0x00000001u; /* 027B5488 */ if (_t27) goto L_027B54D0; else goto L_027B548C; L_027B548C: ; // 0x27b548c /* 027B548C */ _t28 = cpu->r[3] + 0x00000012u; /* 027B548C */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t28); /* 027B5490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu); /* 027B5494 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5494 */ _t30 = _t29 & 0x00000001u; /* 027B5494 */ if (_t30) goto L_027B54D0; else goto L_027B5498; L_027B5498: ; // 0x27b5498 /* 027B5498 */ _t31 = cpu->r[3] + 0x00000004u; /* 027B5498 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31); /* 027B549C */ _t32 = cpu->r[11] + 0x0000002Cu; /* 027B549C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027B54A0 */ cpu->ctr = cpu->r[0]; /* 027B54A4 */ cpu->r[4] = cpu->r[28]; /* 027B54A8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B54AC */ _t33 = cpu->r[1] + 0x00000010u; /* 027B54AC */ cpu->r[28] = rbrew_read32(cpu->mem, _t33); /* 027B54B0 */ _t34 = cpu->r[1] + 0x00000014u; /* 027B54B0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t34); /* 027B54B4 */ _t35 = cpu->r[1] + 0x00000024u; /* 027B54B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35); /* 027B54B8 */ _t36 = cpu->r[1] + 0x00000018u; /* 027B54B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36); /* 027B54BC */ cpu->lr = cpu->r[0]; /* 027B54C0 */ _t37 = cpu->r[1] + 0x0000001Cu; /* 027B54C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37); /* 027B54C4 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B54C8 */ cpu->r[3] = 0x00000001u; /* 027B54CC */ return; L_027B54D0: ; // 0x27b54d0 /* 027B54D0 */ cpu->r[0] = 0x10110000u; /* 027B54D4 */ _t38 = cpu->r[28] + 0x00000000u; /* 027B54D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t38); /* 027B54D8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0B0u; /* 027B54DC */ cpu->r[7] = 0x10110000u; /* 027B54E0 */ _t39 = cpu->r[1] + 0x0000000Cu; /* 027B54E0 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]); /* 027B54E4 */ cpu->r[7] = cpu->r[7] + 0xFFFFB124u; /* 027B54E8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B54EC */ _t40 = cpu->r[1] + 0x00000008u; /* 027B54EC */ rbrew_write32(cpu->mem, _t40, cpu->r[7]); /* 027B54F0 */ Gambit_fn_027B653C(cpu); /* 027B54F4 */ cpu->r[31] = 0x10110000u; /* 027B54F8 */ _t41 = cpu->r[1] + 0x00000008u; /* 027B54F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41); /* 027B54FC */ _t42 = cpu->r[31] + 0x00007399u; /* 027B54FC */ cpu->r[31] = rbrew_read8(cpu->mem, _t42); /* 027B5500 */ _t43 = cpu->r[7] + 0x00000000u; /* 027B5500 */ cpu->r[8] = rbrew_read8(cpu->mem, _t43); /* 027B5504 */ cpu->r[30] = 0x00000000u; /* 027B5508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027B550C */ cpu->r[0] = 0x00080000u; /* 027B5510 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5510 */ _t45 = _t44 & 0x00000001u; /* 027B5510 */ if (_t45) goto L_027B5538; else goto L_027B5514; L_027B5514: ; // 0x27b5514 /* 027B5514 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B5518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B551C */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B5520 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5520 */ _t47 = _t46 & 0x00000001u; /* 027B5520 */ if (_t47) goto L_027B5534; else goto L_027B5524; L_027B5524: ; // 0x27b5524 /* 027B5524 */ _t48 = cpu->r[7] + 0x00000000u; /* 027B5524 */ cpu->r[9] = rbrew_read8(cpu->mem, _t48); /* 027B5528 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027B552C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B552C */ _t50 = _t49 & 0x00000001u; /* 027B552C */ if (_t50) goto L_027B5530; else goto L_027B5514; L_027B5530: ; // 0x27b5530 /* 027B5530 */ goto L_027B5538; L_027B5534: ; // 0x27b5534 /* 027B5534 */ cpu->r[30] = 0x00000000u; L_027B5538: ; // 0x27b5538 /* 027B5538 */ _t51 = cpu->r[28] + 0x00000008u; /* 027B5538 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51); /* 027B553C */ _t52 = cpu->r[1] + 0x0000000Cu; /* 027B553C */ cpu->r[10] = rbrew_read32(cpu->mem, _t52); /* 027B5540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027B5544 */ _t53 = cpu->r[10] + 0x00000014u; /* 027B5544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53); /* 027B5548 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5548 */ _t55 = _t54 & 0x00000001u; /* 027B5548 */ if (_t55) goto L_027B5550; else goto L_027B554C; L_027B554C: ; // 0x27b554c /* 027B554C */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027B5550: ; // 0x27b5550 /* 027B5550 */ cpu->ctr = cpu->r[0]; /* 027B5554 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5558 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B555C */ _t56 = cpu->r[1] + 0x00000008u; /* 027B555C */ cpu->r[4] = rbrew_read32(cpu->mem, _t56); /* 027B5560 */ cpu->r[6] = 0x00000000u; /* 027B5564 */ cpu->r[5] = cpu->r[30]; /* 027B5568 */ cpu->r[3] = cpu->r[29]; /* 027B556C */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B5570 */ _t57 = cpu->r[29] + cpu->r[30]; /* 027B5570 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[31]); /* 027B5574 */ _t58 = cpu->r[1] + 0x00000010u; /* 027B5574 */ cpu->r[28] = rbrew_read32(cpu->mem, _t58); /* 027B5578 */ _t59 = cpu->r[1] + 0x00000014u; /* 027B5578 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59); /* 027B557C */ _t60 = cpu->r[1] + 0x00000024u; /* 027B557C */ cpu->r[0] = rbrew_read32(cpu->mem, _t60); /* 027B5580 */ _t61 = cpu->r[1] + 0x00000018u; /* 027B5580 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61); /* 027B5584 */ cpu->lr = cpu->r[0]; /* 027B5588 */ _t62 = cpu->r[1] + 0x0000001Cu; /* 027B5588 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62); /* 027B558C */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5590 */ cpu->r[3] = 0x00000001u; /* 027B5594 */ return; } // fn_027B5400 @ 0x27b5400 void Gambit_fn_027B5400(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62; L_027B5400: ; // 0x27b5400 /* 027B5400 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B5400 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B5400 */ cpu->r[1] = _t0; /* 027B5404 */ _t1 = cpu->r[1] + 0x00000014u; /* 027B5404 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B5408 */ _t2 = cpu->r[1] + 0x00000010u; /* 027B5408 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B540C */ _t3 = cpu->r[1] + 0x00000018u; /* 027B540C */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B5410 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B5410 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B5414 */ _t5 = cpu->r[1] + 0x00000024u; /* 027B5414 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B5418 */ _t6 = cpu->r[3] + 0x00000008u; /* 027B5418 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B541C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B5420 */ cpu->r[28] = cpu->r[4]; /* 027B5424 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5424 */ _t8 = _t7 & 0x00000001u; /* 027B5424 */ if (_t8) goto L_027B5458; else goto L_027B5428; L_027B5428: ; // 0x27b5428 /* 027B5428 */ _t9 = cpu->r[11] + 0x000000A4u; /* 027B5428 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027B542C */ _t10 = cpu->r[3] + 0x0000000Cu; /* 027B542C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B5430 */ _t11 = cpu->r[12] + 0x00000028u; /* 027B5430 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11); /* 027B5434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]); /* 027B5438 */ _t12 = cpu->r[12] + 0x0000002Cu; /* 027B5438 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027B543C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B543C */ _t14 = _t13 & 0x00000001u; /* 027B543C */ if (_t14) goto L_027B5440; else goto L_027B5448; L_027B5440: ; // 0x27b5440 /* 027B5440 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000006Cu); /* 027B5444 */ cpu->r[12] = cpu->r[12] + cpu->r[8]; L_027B5448: ; // 0x27b5448 /* 027B5448 */ _t15 = cpu->r[12] + 0x00000000u; /* 027B5448 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15); /* 027B544C */ _t16 = cpu->r[3] + 0x00000010u; /* 027B544C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B5450 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]); /* 027B5454 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5454 */ _t18 = _t17 & 0x00000001u; /* 027B5454 */ if (_t18) goto L_027B5458; else goto L_027B547C; L_027B5458: ; // 0x27b5458 /* 027B5458 */ _t19 = cpu->r[1] + 0x00000010u; /* 027B5458 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19); /* 027B545C */ _t20 = cpu->r[1] + 0x00000014u; /* 027B545C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20); /* 027B5460 */ _t21 = cpu->r[1] + 0x00000024u; /* 027B5460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027B5464 */ _t22 = cpu->r[1] + 0x00000018u; /* 027B5464 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22); /* 027B5468 */ cpu->lr = cpu->r[0]; /* 027B546C */ _t23 = cpu->r[1] + 0x0000001Cu; /* 027B546C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 027B5470 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5474 */ cpu->r[3] = 0x00000000u; /* 027B5478 */ return; L_027B547C: ; // 0x27b547c /* 027B547C */ _t24 = cpu->r[3] + 0x00000010u; /* 027B547C */ rbrew_write32(cpu->mem, _t24, cpu->r[9]); /* 027B5480 */ _t25 = cpu->r[3] + 0x00000010u; /* 027B5480 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t25); /* 027B5484 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu); /* 027B5488 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5488 */ _t27 = _t26 & 0x00000001u; /* 027B5488 */ if (_t27) goto L_027B54D0; else goto L_027B548C; L_027B548C: ; // 0x27b548c /* 027B548C */ _t28 = cpu->r[3] + 0x00000012u; /* 027B548C */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t28); /* 027B5490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu); /* 027B5494 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5494 */ _t30 = _t29 & 0x00000001u; /* 027B5494 */ if (_t30) goto L_027B54D0; else goto L_027B5498; L_027B5498: ; // 0x27b5498 /* 027B5498 */ _t31 = cpu->r[3] + 0x00000004u; /* 027B5498 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31); /* 027B549C */ _t32 = cpu->r[11] + 0x0000002Cu; /* 027B549C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027B54A0 */ cpu->ctr = cpu->r[0]; /* 027B54A4 */ cpu->r[4] = cpu->r[28]; /* 027B54A8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B54AC */ _t33 = cpu->r[1] + 0x00000010u; /* 027B54AC */ cpu->r[28] = rbrew_read32(cpu->mem, _t33); /* 027B54B0 */ _t34 = cpu->r[1] + 0x00000014u; /* 027B54B0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t34); /* 027B54B4 */ _t35 = cpu->r[1] + 0x00000024u; /* 027B54B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35); /* 027B54B8 */ _t36 = cpu->r[1] + 0x00000018u; /* 027B54B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36); /* 027B54BC */ cpu->lr = cpu->r[0]; /* 027B54C0 */ _t37 = cpu->r[1] + 0x0000001Cu; /* 027B54C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37); /* 027B54C4 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B54C8 */ cpu->r[3] = 0x00000001u; /* 027B54CC */ return; L_027B54D0: ; // 0x27b54d0 /* 027B54D0 */ cpu->r[0] = 0x10110000u; /* 027B54D4 */ _t38 = cpu->r[28] + 0x00000000u; /* 027B54D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t38); /* 027B54D8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0B0u; /* 027B54DC */ cpu->r[7] = 0x10110000u; /* 027B54E0 */ _t39 = cpu->r[1] + 0x0000000Cu; /* 027B54E0 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]); /* 027B54E4 */ cpu->r[7] = cpu->r[7] + 0xFFFFB124u; /* 027B54E8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B54EC */ _t40 = cpu->r[1] + 0x00000008u; /* 027B54EC */ rbrew_write32(cpu->mem, _t40, cpu->r[7]); /* 027B54F0 */ Gambit_fn_027B653C(cpu); /* 027B54F4 */ cpu->r[31] = 0x10110000u; /* 027B54F8 */ _t41 = cpu->r[1] + 0x00000008u; /* 027B54F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41); /* 027B54FC */ _t42 = cpu->r[31] + 0x00007399u; /* 027B54FC */ cpu->r[31] = rbrew_read8(cpu->mem, _t42); /* 027B5500 */ _t43 = cpu->r[7] + 0x00000000u; /* 027B5500 */ cpu->r[8] = rbrew_read8(cpu->mem, _t43); /* 027B5504 */ cpu->r[30] = 0x00000000u; /* 027B5508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027B550C */ cpu->r[0] = 0x00080000u; /* 027B5510 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5510 */ _t45 = _t44 & 0x00000001u; /* 027B5510 */ if (_t45) goto L_027B5538; else goto L_027B5514; L_027B5514: ; // 0x27b5514 /* 027B5514 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B5518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B551C */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B5520 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5520 */ _t47 = _t46 & 0x00000001u; /* 027B5520 */ if (_t47) goto L_027B5534; else goto L_027B5524; L_027B5524: ; // 0x27b5524 /* 027B5524 */ _t48 = cpu->r[7] + 0x00000000u; /* 027B5524 */ cpu->r[9] = rbrew_read8(cpu->mem, _t48); /* 027B5528 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027B552C */ _t49 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B552C */ _t50 = _t49 & 0x00000001u; /* 027B552C */ if (_t50) goto L_027B5530; else goto L_027B5514; L_027B5530: ; // 0x27b5530 /* 027B5530 */ goto L_027B5538; L_027B5534: ; // 0x27b5534 /* 027B5534 */ cpu->r[30] = 0x00000000u; L_027B5538: ; // 0x27b5538 /* 027B5538 */ _t51 = cpu->r[28] + 0x00000008u; /* 027B5538 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51); /* 027B553C */ _t52 = cpu->r[1] + 0x0000000Cu; /* 027B553C */ cpu->r[10] = rbrew_read32(cpu->mem, _t52); /* 027B5540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027B5544 */ _t53 = cpu->r[10] + 0x00000014u; /* 027B5544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53); /* 027B5548 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5548 */ _t55 = _t54 & 0x00000001u; /* 027B5548 */ if (_t55) goto L_027B5550; else goto L_027B554C; L_027B554C: ; // 0x27b554c /* 027B554C */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027B5550: ; // 0x27b5550 /* 027B5550 */ cpu->ctr = cpu->r[0]; /* 027B5554 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5558 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B555C */ _t56 = cpu->r[1] + 0x00000008u; /* 027B555C */ cpu->r[4] = rbrew_read32(cpu->mem, _t56); /* 027B5560 */ cpu->r[6] = 0x00000000u; /* 027B5564 */ cpu->r[5] = cpu->r[30]; /* 027B5568 */ cpu->r[3] = cpu->r[29]; /* 027B556C */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B5570 */ _t57 = cpu->r[29] + cpu->r[30]; /* 027B5570 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[31]); /* 027B5574 */ _t58 = cpu->r[1] + 0x00000010u; /* 027B5574 */ cpu->r[28] = rbrew_read32(cpu->mem, _t58); /* 027B5578 */ _t59 = cpu->r[1] + 0x00000014u; /* 027B5578 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59); /* 027B557C */ _t60 = cpu->r[1] + 0x00000024u; /* 027B557C */ cpu->r[0] = rbrew_read32(cpu->mem, _t60); /* 027B5580 */ _t61 = cpu->r[1] + 0x00000018u; /* 027B5580 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61); /* 027B5584 */ cpu->lr = cpu->r[0]; /* 027B5588 */ _t62 = cpu->r[1] + 0x0000001Cu; /* 027B5588 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62); /* 027B558C */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5590 */ cpu->r[3] = 0x00000001u; /* 027B5594 */ return; } // fn_027B5598 @ 0x27b5598 void Gambit_fn_027B5598(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B5598: ; // 0x27b5598 /* 027B5598 */ _t0 = cpu->r[3] + 0x00000008u; /* 027B5598 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B559C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B55A0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B55A0 */ _t2 = _t1 & 0x00000001u; /* 027B55A0 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B55A0 */ goto L_027B55A4; L_027B55A4: ; // 0x27b55a4 /* 027B55A4 */ _t3 = cpu->r[3] + 0x00000000u; /* 027B55A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t3); /* 027B55A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B55AC */ _t4 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B55AC */ _t5 = _t4 & 0x00000001u; /* 027B55AC */ _t6 = _t5 ^ 0x00000001u; /* 027B55AC */ if (_t6) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B55AC */ goto L_027B55B0; L_027B55B0: ; // 0x27b55b0 /* 027B55B0 */ _t7 = cpu->r[12] + 0x000000A4u; /* 027B55B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7); /* 027B55B4 */ _t8 = cpu->r[11] + 0x00000038u; /* 027B55B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8); /* 027B55B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[9]); /* 027B55BC */ _t9 = cpu->r[11] + 0x0000003Cu; /* 027B55BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027B55C0 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B55C0 */ _t11 = _t10 & 0x00000001u; /* 027B55C0 */ if (_t11) goto L_027B55C4; else goto L_027B55CC; L_027B55C4: ; // 0x27b55c4 /* 027B55C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000004u, 0x00000000u, 0x0000001Bu); /* 027B55C8 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027B55CC: ; // 0x27b55cc /* 027B55CC */ _t12 = cpu->r[12] + 0x00000000u; /* 027B55CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t12); /* 027B55D0 */ _t13 = cpu->r[3] + 0x00000004u; /* 027B55D0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13); /* 027B55D4 */ _t14 = cpu->r[11] + 0x00000000u; /* 027B55D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14); /* 027B55D8 */ _t15 = cpu->r[12] + 0x00000004u; /* 027B55D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027B55DC */ cpu->r[10] = cpu->r[9] + 0x00000030u; /* 027B55E0 */ cpu->r[5] = 0x00000000u; /* 027B55E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B55E8 */ cpu->r[11] = cpu->r[12] + 0x00000004u; /* 027B55EC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B55EC */ _t17 = _t16 & 0x00000001u; /* 027B55EC */ if (_t17) goto L_027B55F4; else goto L_027B55F0; L_027B55F0: ; // 0x27b55f0 /* 027B55F0 */ cpu->r[5] = cpu->r[11] + cpu->r[0]; L_027B55F4: ; // 0x27b55f4 /* 027B55F4 */ _t18 = cpu->r[10] + 0x00000004u; /* 027B55F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027B55F8 */ cpu->ctr = cpu->r[0]; /* 027B55FC */ rbrew_dispatch(cpu, cpu->ctr); return; } // fn_027B5600 @ 0x27b5600 void Gambit_fn_027B5600(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; L_027B5600: ; // 0x27b5600 /* 027B5600 */ _t0 = cpu->r[1] + 0xFFFFFFC8u; /* 027B5600 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B5600 */ cpu->r[1] = _t0; /* 027B5604 */ /* nop */ /* 027B5608 */ cpu->r[0] = cpu->lr; /* 027B560C */ _t1 = cpu->r[1] + 0x0000003Cu; /* 027B560C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B5610 */ cpu->r[31] = 0x10110000u; /* 027B5614 */ cpu->r[28] = cpu->r[4]; /* 027B5618 */ _t2 = cpu->r[31] + 0x00007399u; /* 027B5618 */ cpu->r[31] = rbrew_read8(cpu->mem, _t2); /* 027B561C */ _t3 = cpu->r[28] + 0x00000000u; /* 027B561C */ cpu->r[11] = rbrew_read32(cpu->mem, _t3); /* 027B5620 */ cpu->r[26] = cpu->r[5]; /* 027B5624 */ _t4 = cpu->r[11] + 0x00000000u; /* 027B5624 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[31]); /* 027B5628 */ _t5 = cpu->r[3] + 0x0000000Cu; /* 027B5628 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5); /* 027B562C */ cpu->r[30] = 0x10110000u; /* 027B5630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B5634 */ cpu->r[30] = cpu->r[30] + 0xFFFFB0B0u; /* 027B5638 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5638 */ _t7 = _t6 & 0x00000001u; /* 027B5638 */ if (_t7) goto L_027B563C; else goto L_027B577C; L_027B563C: ; // 0x27b563c /* 027B563C */ cpu->r[4] = 0x10110000u; /* 027B5640 */ cpu->r[3] = cpu->r[28]; /* 027B5644 */ cpu->r[4] = cpu->r[4] + 0xFFFFB134u; /* 027B5648 */ _t8 = cpu->cr[1] >> (0x00000001u & 31u); /* 027B5648 */ _t9 = _t8 & 0x00000001u; /* 027B5648 */ if (_t9) goto L_027B564C; // else: addr-0 trap, fall-through L_027B564C: ; // 0x27b564c /* 027B564C */ Gambit_fn_0282A5F4(cpu); /* 027B5650 */ _t10 = cpu->r[28] + 0x00000000u; /* 027B5650 */ cpu->r[29] = rbrew_read32(cpu->mem, _t10); /* 027B5654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B5658 */ _t11 = cpu->r[1] + 0x00000010u; /* 027B5658 */ rbrew_write32(cpu->mem, _t11, cpu->r[26]); /* 027B565C */ cpu->r[27] = cpu->r[3]; /* 027B5660 */ _t12 = cpu->r[1] + 0x00000014u; /* 027B5660 */ rbrew_write32(cpu->mem, _t12, cpu->r[30]); /* 027B5664 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5664 */ _t14 = _t13 & 0x00000001u; /* 027B5664 */ if (_t14) goto L_027B5668; else goto L_027B56CC; L_027B5668: ; // 0x27b5668 /* 027B5668 */ _t15 = cpu->r[28] + 0x00000004u; /* 027B5668 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15); /* 027B566C */ _t16 = cpu->r[12] + 0x00000014u; /* 027B566C */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B5670 */ cpu->ctr = cpu->r[0]; /* 027B5674 */ cpu->r[3] = cpu->r[28]; /* 027B5678 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B567C */ _t17 = cpu->r[28] + 0x00000000u; /* 027B567C */ cpu->r[5] = rbrew_read32(cpu->mem, _t17); /* 027B5680 */ _t18 = cpu->r[5] + 0x00000000u; /* 027B5680 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18); /* 027B5684 */ cpu->r[12] = 0x00000000u; /* 027B5688 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B568C */ cpu->r[0] = 0x00080000u; /* 027B5690 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5690 */ _t20 = _t19 & 0x00000001u; /* 027B5690 */ if (_t20) goto L_027B56B8; else goto L_027B5694; L_027B5694: ; // 0x27b5694 /* 027B5694 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B5698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027B569C */ cpu->r[5] = cpu->r[5] + 0x00000001u; /* 027B56A0 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B56A0 */ _t22 = _t21 & 0x00000001u; /* 027B56A0 */ if (_t22) goto L_027B56B4; else goto L_027B56A4; L_027B56A4: ; // 0x27b56a4 /* 027B56A4 */ _t23 = cpu->r[5] + 0x00000000u; /* 027B56A4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t23); /* 027B56A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027B56AC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B56AC */ _t25 = _t24 & 0x00000001u; /* 027B56AC */ if (_t25) goto L_027B56B0; else goto L_027B5694; L_027B56B0: ; // 0x27b56b0 /* 027B56B0 */ goto L_027B56B8; L_027B56B4: ; // 0x27b56b4 /* 027B56B4 */ cpu->r[12] = 0x00000000u; L_027B56B8: ; // 0x27b56b8 /* 027B56B8 */ cpu->r[7] = cpu->r[12] + cpu->r[27]; /* 027B56BC */ cpu->r[27] = cpu->r[7] + 0x00000001u; /* 027B56BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027B56C0 */ _t26 = cpu->r[1] + 0x00000014u; /* 027B56C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26); /* 027B56C4 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B56C4 */ _t28 = _t27 & 0x00000001u; /* 027B56C4 */ if (_t28) goto L_027B56C8; else goto L_027B56CC; L_027B56C8: ; // 0x27b56c8 /* 027B56C8 */ cpu->r[27] = 0x00000000u; L_027B56CC: ; // 0x27b56cc /* 027B56CC */ _t29 = cpu->r[30] + 0x00000014u; /* 027B56CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t29); /* 027B56D0 */ cpu->ctr = cpu->r[8]; /* 027B56D4 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B56D8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B56DC */ _t30 = cpu->r[1] + 0x00000010u; /* 027B56DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t30); /* 027B56E0 */ _t31 = cpu->r[12] + 0x00000000u; /* 027B56E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31); /* 027B56E4 */ cpu->r[30] = 0x00000000u; /* 027B56E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B56EC */ cpu->r[0] = 0x00080000u; /* 027B56F0 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B56F0 */ _t33 = _t32 & 0x00000001u; /* 027B56F0 */ if (_t33) goto L_027B5718; else goto L_027B56F4; L_027B56F4: ; // 0x27b56f4 /* 027B56F4 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B56F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B56FC */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B5700 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5700 */ _t35 = _t34 & 0x00000001u; /* 027B5700 */ if (_t35) goto L_027B5714; else goto L_027B5704; L_027B5704: ; // 0x27b5704 /* 027B5704 */ _t36 = cpu->r[12] + 0x00000000u; /* 027B5704 */ cpu->r[10] = rbrew_read8(cpu->mem, _t36); /* 027B5708 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027B570C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B570C */ _t38 = _t37 & 0x00000001u; /* 027B570C */ if (_t38) goto L_027B5710; else goto L_027B56F4; L_027B5710: ; // 0x27b5710 /* 027B5710 */ goto L_027B5718; L_027B5714: ; // 0x27b5714 /* 027B5714 */ cpu->r[30] = 0x00000000u; L_027B5718: ; // 0x27b5718 /* 027B5718 */ _t39 = cpu->r[28] + 0x00000008u; /* 027B5718 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39); /* 027B571C */ cpu->r[10] = cpu->r[9] - cpu->r[27]; /* 027B5720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]); /* 027B5724 */ _t40 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5724 */ _t41 = _t40 & 0x00000001u; /* 027B5724 */ if (_t41) goto L_027B572C; else goto L_027B5728; L_027B5728: ; // 0x27b5728 /* 027B5728 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu; L_027B572C: ; // 0x27b572c /* 027B572C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B5730 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5730 */ _t43 = _t42 & 0x00000001u; /* 027B5730 */ if (_t43) goto L_027B5734; else goto L_027B5874; L_027B5734: ; // 0x27b5734 /* 027B5734 */ _t44 = cpu->r[1] + 0x00000014u; /* 027B5734 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44); /* 027B5738 */ _t45 = cpu->r[11] + 0x00000014u; /* 027B5738 */ cpu->r[12] = rbrew_read32(cpu->mem, _t45); /* 027B573C */ cpu->ctr = cpu->r[12]; /* 027B5740 */ cpu->r[28] = cpu->r[29] + cpu->r[27]; /* 027B5744 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B5748 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B574C */ _t46 = cpu->r[1] + 0x00000010u; /* 027B574C */ cpu->r[4] = rbrew_read32(cpu->mem, _t46); /* 027B5750 */ cpu->r[6] = 0x00000000u; /* 027B5754 */ cpu->r[5] = cpu->r[30]; /* 027B5758 */ cpu->r[3] = cpu->r[28]; /* 027B575C */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B5760 */ cpu->r[0] = cpu->r[27] + cpu->r[30]; /* 027B5764 */ _t47 = cpu->r[29] + cpu->r[0]; /* 027B5764 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[31]); /* 027B5768 */ /* nop */ /* 027B576C */ _t48 = cpu->r[1] + 0x0000003Cu; /* 027B576C */ cpu->r[0] = rbrew_read32(cpu->mem, _t48); /* 027B5770 */ cpu->lr = cpu->r[0]; /* 027B5774 */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027B5778 */ return; L_027B577C: ; // 0x27b577c /* 027B577C */ _t49 = cpu->r[28] + 0x00000008u; /* 027B577C */ cpu->r[9] = rbrew_read32(cpu->mem, _t49); /* 027B5780 */ cpu->r[5] = 0x10110000u; /* 027B5784 */ _t50 = cpu->r[28] + 0x00000000u; /* 027B5784 */ cpu->r[29] = rbrew_read32(cpu->mem, _t50); /* 027B5788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000003u); /* 027B578C */ cpu->r[5] = cpu->r[5] + 0xFFFFB130u; /* 027B5790 */ _t51 = cpu->r[1] + 0x0000000Cu; /* 027B5790 */ rbrew_write32(cpu->mem, _t51, cpu->r[30]); /* 027B5794 */ cpu->r[27] = 0x00000003u; /* 027B5798 */ _t52 = cpu->r[1] + 0x00000008u; /* 027B5798 */ rbrew_write32(cpu->mem, _t52, cpu->r[5]); /* 027B579C */ _t53 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B579C */ _t54 = _t53 & 0x00000001u; /* 027B579C */ if (_t54) goto L_027B57A4; else goto L_027B57A0; L_027B57A0: ; // 0x27b57a0 /* 027B57A0 */ cpu->r[27] = cpu->r[9] + 0xFFFFFFFFu; L_027B57A4: ; // 0x27b57a4 /* 027B57A4 */ cpu->r[25] = 0x027B0000u; /* 027B57A8 */ cpu->r[25] = cpu->r[25] + 0x0000653Cu; /* 027B57AC */ cpu->ctr = cpu->r[25]; /* 027B57B0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B57B4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B57B8 */ _t55 = cpu->r[1] + 0x00000008u; /* 027B57B8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t55); /* 027B57BC */ cpu->r[3] = cpu->r[29]; /* 027B57C0 */ cpu->r[5] = cpu->r[27]; /* 027B57C4 */ cpu->r[6] = 0x00000000u; /* 027B57C8 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B57CC */ _t56 = cpu->r[29] + cpu->r[27]; /* 027B57CC */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[31]); /* 027B57D0 */ cpu->ctr = cpu->r[25]; /* 027B57D4 */ _t57 = cpu->r[1] + 0x0000000Cu; /* 027B57D4 */ rbrew_write32(cpu->mem, _t57, cpu->r[30]); /* 027B57D8 */ _t58 = cpu->r[1] + 0x00000008u; /* 027B57D8 */ rbrew_write32(cpu->mem, _t58, cpu->r[26]); /* 027B57DC */ _t59 = cpu->r[28] + 0x00000000u; /* 027B57DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t59); /* 027B57E0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B57E4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B57E8 */ _t60 = cpu->r[1] + 0x00000008u; /* 027B57E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t60); /* 027B57EC */ _t61 = cpu->r[7] + 0x00000000u; /* 027B57EC */ cpu->r[6] = rbrew_read8(cpu->mem, _t61); /* 027B57F0 */ cpu->r[30] = 0x00000000u; /* 027B57F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027B57F8 */ cpu->r[8] = 0x00080000u; /* 027B57FC */ _t62 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B57FC */ _t63 = _t62 & 0x00000001u; /* 027B57FC */ if (_t63) goto L_027B5824; else goto L_027B5800; L_027B5800: ; // 0x27b5800 /* 027B5800 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B5804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]); /* 027B5808 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B580C */ _t64 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B580C */ _t65 = _t64 & 0x00000001u; /* 027B580C */ if (_t65) goto L_027B5820; else goto L_027B5810; L_027B5810: ; // 0x27b5810 /* 027B5810 */ _t66 = cpu->r[7] + 0x00000000u; /* 027B5810 */ cpu->r[0] = rbrew_read8(cpu->mem, _t66); /* 027B5814 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B5818 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5818 */ _t68 = _t67 & 0x00000001u; /* 027B5818 */ if (_t68) goto L_027B581C; else goto L_027B5800; L_027B581C: ; // 0x27b581c /* 027B581C */ goto L_027B5824; L_027B5820: ; // 0x27b5820 /* 027B5820 */ cpu->r[30] = 0x00000000u; L_027B5824: ; // 0x27b5824 /* 027B5824 */ _t69 = cpu->r[28] + 0x00000008u; /* 027B5824 */ cpu->r[9] = rbrew_read32(cpu->mem, _t69); /* 027B5828 */ cpu->r[0] = cpu->r[9] + 0xFFFFFFFDu; /* 027B582C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B5830 */ _t70 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5830 */ _t71 = _t70 & 0x00000001u; /* 027B5830 */ if (_t71) goto L_027B5838; else goto L_027B5834; L_027B5834: ; // 0x27b5834 /* 027B5834 */ cpu->r[30] = cpu->r[9] + 0xFFFFFFFCu; L_027B5838: ; // 0x27b5838 /* 027B5838 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B583C */ _t72 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B583C */ _t73 = _t72 & 0x00000001u; /* 027B583C */ if (_t73) goto L_027B5840; else goto L_027B5874; L_027B5840: ; // 0x27b5840 /* 027B5840 */ _t74 = cpu->r[1] + 0x0000000Cu; /* 027B5840 */ cpu->r[9] = rbrew_read32(cpu->mem, _t74); /* 027B5844 */ _t75 = cpu->r[9] + 0x00000014u; /* 027B5844 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75); /* 027B5848 */ cpu->ctr = cpu->r[0]; /* 027B584C */ cpu->r[28] = cpu->r[29] + 0x00000003u; /* 027B5850 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5854 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5858 */ _t76 = cpu->r[1] + 0x00000008u; /* 027B5858 */ cpu->r[4] = rbrew_read32(cpu->mem, _t76); /* 027B585C */ cpu->r[6] = 0x00000000u; /* 027B5860 */ cpu->r[5] = cpu->r[30]; /* 027B5864 */ cpu->r[3] = cpu->r[28]; /* 027B5868 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B586C */ cpu->r[11] = cpu->r[29] + cpu->r[30]; /* 027B5870 */ _t77 = cpu->r[11] + 0x00000003u; /* 027B5870 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[31]); L_027B5874: ; // 0x27b5874 /* 027B5874 */ /* nop */ /* 027B5878 */ _t78 = cpu->r[1] + 0x0000003Cu; /* 027B5878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78); /* 027B587C */ cpu->lr = cpu->r[0]; /* 027B5880 */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027B5884 */ return; } // fn_027B5888 @ 0x27b5888 void Gambit_fn_027B5888(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; L_027B5888: ; // 0x27b5888 /* 027B5888 */ cpu->r[0] = cpu->lr; /* 027B588C */ _t0 = cpu->r[1] + 0xFFFFFFD8u; /* 027B588C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B588C */ cpu->r[1] = _t0; /* 027B5890 */ _t1 = cpu->r[1] + 0x00000018u; /* 027B5890 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]); /* 027B5894 */ /* nop */ /* 027B5898 */ _t2 = cpu->r[1] + 0x00000020u; /* 027B5898 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]); /* 027B589C */ _t3 = cpu->r[1] + 0x0000002Cu; /* 027B589C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B58A0 */ _t4 = cpu->r[1] + 0x00000010u; /* 027B58A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027B58A4 */ cpu->r[30] = cpu->r[3]; /* 027B58A8 */ _t5 = cpu->r[1] + 0x00000014u; /* 027B58A8 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]); /* 027B58AC */ _t6 = cpu->r[30] + 0x00000008u; /* 027B58AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027B58B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B58B4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B58B4 */ _t8 = _t7 & 0x00000001u; /* 027B58B4 */ if (_t8) goto L_027B59A4; else goto L_027B58B8; L_027B58B8: ; // 0x27b58b8 /* 027B58B8 */ _t9 = cpu->r[30] + 0x00000000u; /* 027B58B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9); /* 027B58BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B58C0 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B58C0 */ _t11 = _t10 & 0x00000001u; /* 027B58C0 */ if (_t11) goto L_027B58C4; else goto L_027B59A4; L_027B58C4: ; // 0x27b58c4 /* 027B58C4 */ _t12 = cpu->r[9] + 0x000000A4u; /* 027B58C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12); /* 027B58C8 */ cpu->r[3] = cpu->r[31]; /* 027B58CC */ Gambit_fn_029844B4(cpu); /* 027B58D0 */ cpu->r[7] = 0x10110000u; /* 027B58D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B58D8 */ _t13 = cpu->r[7] + 0xFFFFB140u; /* 027B58D8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13); /* 027B58DC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B58DC */ _t15 = _t14 & 0x00000001u; /* 027B58DC */ if (_t15) goto L_027B597C; else goto L_027B58E0; L_027B58E0: ; // 0x27b58e0 /* 027B58E0 */ cpu->r[4] = 0x00000000u; /* 027B58E4 */ cpu->r[3] = cpu->r[31]; /* 027B58E8 */ Gambit_fn_029844D4(cpu); /* 027B58EC */ cpu->f[9] = (uint32_t)(int32_t)cpu->f[1]; /* 027B58F0 */ cpu->r[7] = cpu->r[1] + 0x00000008u; /* 027B58F4 */ cpu->r[10] = 0x10110000u; /* 027B58F8 */ /* nop */ /* 027B58FC */ _t16 = cpu->r[1] + 0x00000008u; /* 027B58FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t16); /* 027B5900 */ cpu->r[12] = 0x43300000u; /* 027B5904 */ _t17 = cpu->r[10] + 0xFFFFB148u; /* 027B5904 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t17); /* 027B5908 */ cpu->r[0] = cpu->r[3] ^ 0x80000000u; /* 027B590C */ _t18 = cpu->r[1] + 0x00000008u; /* 027B590C */ rbrew_write32(cpu->mem, _t18, cpu->r[12]); /* 027B5910 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027B5910 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]); /* 027B5914 */ _t20 = cpu->r[1] + 0x00000008u; /* 027B5914 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t20); /* 027B5918 */ cpu->f[13] = cpu->f[12] - cpu->f[0]; /* 027B591C */ cpu->f[10] = (double)(float)cpu->f[13]; /* 027B5920 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[1]); /* 027B5924 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5924 */ _t22 = _t21 & 0x00000001u; /* 027B5924 */ if (_t22) goto L_027B5930; else goto L_027B5928; L_027B5928: ; // 0x27b5928 /* 027B5928 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]); /* 027B592C */ _t23 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B592C */ _t24 = _t23 & 0x00000001u; /* 027B592C */ if (_t24) goto L_027B5954; else goto L_027B5930; L_027B5930: ; // 0x27b5930 /* 027B5930 */ _t25 = cpu->r[1] + 0x00000020u; /* 027B5930 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25); /* 027B5934 */ _t26 = cpu->r[1] + 0x00000014u; /* 027B5934 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027B5938 */ _t27 = cpu->r[1] + 0x00000018u; /* 027B5938 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t27); /* 027B593C */ _t28 = cpu->r[1] + 0x00000010u; /* 027B593C */ cpu->r[30] = rbrew_read32(cpu->mem, _t28); /* 027B5940 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5940 */ _t30 = _t29 & 0x00000001u; /* 027B5940 */ if (_t30) goto L_027B5944; // else: addr-0 trap, fall-through L_027B5944: ; // 0x27b5944 /* 027B5944 */ _t31 = cpu->r[1] + 0x0000002Cu; /* 027B5944 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027B5948 */ cpu->lr = cpu->r[0]; /* 027B594C */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B5950 */ return; L_027B5954: ; // 0x27b5954 /* 027B5954 */ _t32 = cpu->r[1] + 0x00000020u; /* 027B5954 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t32); /* 027B5958 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu; /* 027B595C */ _t33 = cpu->r[1] + 0x00000014u; /* 027B595C */ cpu->r[31] = rbrew_read32(cpu->mem, _t33); /* 027B5960 */ _t34 = cpu->r[1] + 0x00000018u; /* 027B5960 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t34); /* 027B5964 */ _t35 = cpu->r[1] + 0x00000010u; /* 027B5964 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35); /* 027B5968 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5968 */ _t37 = _t36 & 0x00000001u; /* 027B5968 */ if (_t37) goto L_027B596C; // else: addr-0 trap, fall-through L_027B596C: ; // 0x27b596c /* 027B596C */ _t38 = cpu->r[1] + 0x0000002Cu; /* 027B596C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027B5970 */ cpu->lr = cpu->r[0]; /* 027B5974 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B5978 */ return; L_027B597C: ; // 0x27b597c /* 027B597C */ _t39 = cpu->r[31] + 0x00000028u; /* 027B597C */ cpu->r[10] = rbrew_read32(cpu->mem, _t39); /* 027B5980 */ _t40 = cpu->r[30] + 0x0000000Cu; /* 027B5980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027B5984 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]); /* 027B5988 */ _t41 = cpu->r[31] + 0x0000002Cu; /* 027B5988 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41); /* 027B598C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B598C */ _t43 = _t42 & 0x00000001u; /* 027B598C */ if (_t43) goto L_027B5990; else goto L_027B59CC; L_027B5990: ; // 0x27b5990 /* 027B5990 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000006Cu); /* 027B5994 */ _t44 = cpu->r[12] + cpu->r[8]; /* 027B5994 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44); /* 027B5998 */ /* nop */ /* 027B599C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu); /* 027B59A0 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B59A0 */ _t46 = _t45 & 0x00000001u; /* 027B59A0 */ if (_t46) goto L_027B59A4; else goto L_027B59DC; L_027B59A4: ; // 0x27b59a4 /* 027B59A4 */ _t47 = cpu->r[1] + 0x00000020u; /* 027B59A4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t47); /* 027B59A8 */ cpu->r[3] = 0x00000000u; /* 027B59AC */ _t48 = cpu->r[1] + 0x00000014u; /* 027B59AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t48); /* 027B59B0 */ _t49 = cpu->r[1] + 0x00000018u; /* 027B59B0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t49); /* 027B59B4 */ _t50 = cpu->r[1] + 0x00000010u; /* 027B59B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50); /* 027B59B8 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B59B8 */ _t52 = _t51 & 0x00000001u; /* 027B59B8 */ if (_t52) goto L_027B59BC; // else: addr-0 trap, fall-through L_027B59BC: ; // 0x27b59bc /* 027B59BC */ _t53 = cpu->r[1] + 0x0000002Cu; /* 027B59BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t53); /* 027B59C0 */ cpu->lr = cpu->r[0]; /* 027B59C4 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B59C8 */ return; L_027B59CC: ; // 0x27b59cc /* 027B59CC */ _t54 = cpu->r[12] + 0x00000000u; /* 027B59CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t54); /* 027B59D0 */ /* nop */ /* 027B59D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu); /* 027B59D8 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B59D8 */ _t56 = _t55 & 0x00000001u; /* 027B59D8 */ if (_t56) goto L_027B59A4; else goto L_027B59DC; L_027B59DC: ; // 0x27b59dc /* 027B59DC */ /* nop */ /* 027B59E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu); /* 027B59E4 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B59E4 */ _t58 = _t57 & 0x00000001u; /* 027B59E4 */ if (_t58) goto L_027B59A4; else goto L_027B59E8; L_027B59E8: ; // 0x27b59e8 /* 027B59E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]); /* 027B59EC */ _t59 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B59EC */ _t60 = _t59 & 0x00000001u; /* 027B59EC */ if (_t60) goto L_027B59F0; else goto L_027B59F8; L_027B59F0: ; // 0x27b59f0 /* 027B59F0 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000006Cu); /* 027B59F4 */ cpu->r[12] = cpu->r[12] + cpu->r[11]; L_027B59F8: ; // 0x27b59f8 /* 027B59F8 */ _t61 = cpu->r[12] + 0x0000000Cu; /* 027B59F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61); /* 027B59FC */ _t62 = cpu->r[7] + 0x00000000u; /* 027B59FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t62); /* 027B5A00 */ cpu->r[11] = 0x10110000u; /* 027B5A04 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[10]; /* 027B5A08 */ _t63 = cpu->r[11] + 0xFFFFB148u; /* 027B5A08 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t63); /* 027B5A0C */ cpu->r[12] = cpu->r[1] + 0x00000008u; /* 027B5A10 */ cpu->r[0] = 0x43300000u; /* 027B5A14 */ /* nop */ /* 027B5A18 */ _t64 = cpu->r[1] + 0x00000008u; /* 027B5A18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t64); /* 027B5A1C */ _t65 = cpu->r[1] + 0x00000008u; /* 027B5A1C */ rbrew_write32(cpu->mem, _t65, cpu->r[0]); /* 027B5A20 */ cpu->r[8] = cpu->r[3] ^ 0x80000000u; /* 027B5A24 */ _t66 = cpu->r[1] + 0x0000000Cu; /* 027B5A24 */ rbrew_write32(cpu->mem, _t66, cpu->r[8]); /* 027B5A28 */ _t67 = cpu->r[1] + 0x00000008u; /* 027B5A28 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t67); /* 027B5A2C */ cpu->f[12] = cpu->f[11] - cpu->f[13]; /* 027B5A30 */ cpu->f[8] = (double)(float)cpu->f[12]; /* 027B5A34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[10]); /* 027B5A38 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5A38 */ _t69 = _t68 & 0x00000001u; /* 027B5A38 */ if (_t69) goto L_027B5A44; else goto L_027B5A3C; L_027B5A3C: ; // 0x27b5a3c /* 027B5A3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]); /* 027B5A40 */ _t70 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5A40 */ _t71 = _t70 & 0x00000001u; /* 027B5A40 */ if (_t71) goto L_027B5A68; else goto L_027B5A44; L_027B5A44: ; // 0x27b5a44 /* 027B5A44 */ _t72 = cpu->r[1] + 0x00000020u; /* 027B5A44 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t72); /* 027B5A48 */ _t73 = cpu->r[1] + 0x00000014u; /* 027B5A48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73); /* 027B5A4C */ _t74 = cpu->r[1] + 0x00000018u; /* 027B5A4C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t74); /* 027B5A50 */ _t75 = cpu->r[1] + 0x00000010u; /* 027B5A50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t75); /* 027B5A54 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5A54 */ _t77 = _t76 & 0x00000001u; /* 027B5A54 */ if (_t77) goto L_027B5A58; // else: addr-0 trap, fall-through L_027B5A58: ; // 0x27b5a58 /* 027B5A58 */ _t78 = cpu->r[1] + 0x0000002Cu; /* 027B5A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78); /* 027B5A5C */ cpu->lr = cpu->r[0]; /* 027B5A60 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B5A64 */ return; L_027B5A68: ; // 0x27b5a68 /* 027B5A68 */ _t79 = cpu->r[1] + 0x00000020u; /* 027B5A68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t79); /* 027B5A6C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu; /* 027B5A70 */ _t80 = cpu->r[1] + 0x00000014u; /* 027B5A70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t80); /* 027B5A74 */ _t81 = cpu->r[1] + 0x00000018u; /* 027B5A74 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t81); /* 027B5A78 */ _t82 = cpu->r[1] + 0x00000010u; /* 027B5A78 */ cpu->r[30] = rbrew_read32(cpu->mem, _t82); /* 027B5A7C */ _t83 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5A7C */ _t84 = _t83 & 0x00000001u; /* 027B5A7C */ if (_t84) goto L_027B5A80; // else: addr-0 trap, fall-through L_027B5A80: ; // 0x27b5a80 /* 027B5A80 */ _t85 = cpu->r[1] + 0x0000002Cu; /* 027B5A80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85); /* 027B5A84 */ cpu->lr = cpu->r[0]; /* 027B5A88 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B5A8C */ return; } // fn_027B588C @ 0x27b588c void Gambit_fn_027B588C(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; L_027B588C: ; // 0x27b588c /* 027B588C */ _t0 = cpu->r[1] + 0xFFFFFFD8u; /* 027B588C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B588C */ cpu->r[1] = _t0; /* 027B5890 */ _t1 = cpu->r[1] + 0x00000018u; /* 027B5890 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]); /* 027B5894 */ /* nop */ /* 027B5898 */ _t2 = cpu->r[1] + 0x00000020u; /* 027B5898 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[31]); /* 027B589C */ _t3 = cpu->r[1] + 0x0000002Cu; /* 027B589C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B58A0 */ _t4 = cpu->r[1] + 0x00000010u; /* 027B58A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027B58A4 */ cpu->r[30] = cpu->r[3]; /* 027B58A8 */ _t5 = cpu->r[1] + 0x00000014u; /* 027B58A8 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]); /* 027B58AC */ _t6 = cpu->r[30] + 0x00000008u; /* 027B58AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027B58B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B58B4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B58B4 */ _t8 = _t7 & 0x00000001u; /* 027B58B4 */ if (_t8) goto L_027B59A4; else goto L_027B58B8; L_027B58B8: ; // 0x27b58b8 /* 027B58B8 */ _t9 = cpu->r[30] + 0x00000000u; /* 027B58B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9); /* 027B58BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B58C0 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B58C0 */ _t11 = _t10 & 0x00000001u; /* 027B58C0 */ if (_t11) goto L_027B58C4; else goto L_027B59A4; L_027B58C4: ; // 0x27b58c4 /* 027B58C4 */ _t12 = cpu->r[9] + 0x000000A4u; /* 027B58C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12); /* 027B58C8 */ cpu->r[3] = cpu->r[31]; /* 027B58CC */ Gambit_fn_029844B4(cpu); /* 027B58D0 */ cpu->r[7] = 0x10110000u; /* 027B58D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B58D8 */ _t13 = cpu->r[7] + 0xFFFFB140u; /* 027B58D8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t13); /* 027B58DC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B58DC */ _t15 = _t14 & 0x00000001u; /* 027B58DC */ if (_t15) goto L_027B597C; else goto L_027B58E0; L_027B58E0: ; // 0x27b58e0 /* 027B58E0 */ cpu->r[4] = 0x00000000u; /* 027B58E4 */ cpu->r[3] = cpu->r[31]; /* 027B58E8 */ Gambit_fn_029844D4(cpu); /* 027B58EC */ cpu->f[9] = (uint32_t)(int32_t)cpu->f[1]; /* 027B58F0 */ cpu->r[7] = cpu->r[1] + 0x00000008u; /* 027B58F4 */ cpu->r[10] = 0x10110000u; /* 027B58F8 */ /* nop */ /* 027B58FC */ _t16 = cpu->r[1] + 0x00000008u; /* 027B58FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t16); /* 027B5900 */ cpu->r[12] = 0x43300000u; /* 027B5904 */ _t17 = cpu->r[10] + 0xFFFFB148u; /* 027B5904 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t17); /* 027B5908 */ cpu->r[0] = cpu->r[3] ^ 0x80000000u; /* 027B590C */ _t18 = cpu->r[1] + 0x00000008u; /* 027B590C */ rbrew_write32(cpu->mem, _t18, cpu->r[12]); /* 027B5910 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027B5910 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]); /* 027B5914 */ _t20 = cpu->r[1] + 0x00000008u; /* 027B5914 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t20); /* 027B5918 */ cpu->f[13] = cpu->f[12] - cpu->f[0]; /* 027B591C */ cpu->f[10] = (double)(float)cpu->f[13]; /* 027B5920 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[1]); /* 027B5924 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5924 */ _t22 = _t21 & 0x00000001u; /* 027B5924 */ if (_t22) goto L_027B5930; else goto L_027B5928; L_027B5928: ; // 0x27b5928 /* 027B5928 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[31]); /* 027B592C */ _t23 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B592C */ _t24 = _t23 & 0x00000001u; /* 027B592C */ if (_t24) goto L_027B5954; else goto L_027B5930; L_027B5930: ; // 0x27b5930 /* 027B5930 */ _t25 = cpu->r[1] + 0x00000020u; /* 027B5930 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t25); /* 027B5934 */ _t26 = cpu->r[1] + 0x00000014u; /* 027B5934 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027B5938 */ _t27 = cpu->r[1] + 0x00000018u; /* 027B5938 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t27); /* 027B593C */ _t28 = cpu->r[1] + 0x00000010u; /* 027B593C */ cpu->r[30] = rbrew_read32(cpu->mem, _t28); /* 027B5940 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5940 */ _t30 = _t29 & 0x00000001u; /* 027B5940 */ if (_t30) goto L_027B5944; // else: addr-0 trap, fall-through L_027B5944: ; // 0x27b5944 /* 027B5944 */ _t31 = cpu->r[1] + 0x0000002Cu; /* 027B5944 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027B5948 */ cpu->lr = cpu->r[0]; /* 027B594C */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B5950 */ return; L_027B5954: ; // 0x27b5954 /* 027B5954 */ _t32 = cpu->r[1] + 0x00000020u; /* 027B5954 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t32); /* 027B5958 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu; /* 027B595C */ _t33 = cpu->r[1] + 0x00000014u; /* 027B595C */ cpu->r[31] = rbrew_read32(cpu->mem, _t33); /* 027B5960 */ _t34 = cpu->r[1] + 0x00000018u; /* 027B5960 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t34); /* 027B5964 */ _t35 = cpu->r[1] + 0x00000010u; /* 027B5964 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35); /* 027B5968 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5968 */ _t37 = _t36 & 0x00000001u; /* 027B5968 */ if (_t37) goto L_027B596C; // else: addr-0 trap, fall-through L_027B596C: ; // 0x27b596c /* 027B596C */ _t38 = cpu->r[1] + 0x0000002Cu; /* 027B596C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027B5970 */ cpu->lr = cpu->r[0]; /* 027B5974 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B5978 */ return; L_027B597C: ; // 0x27b597c /* 027B597C */ _t39 = cpu->r[31] + 0x00000028u; /* 027B597C */ cpu->r[10] = rbrew_read32(cpu->mem, _t39); /* 027B5980 */ _t40 = cpu->r[30] + 0x0000000Cu; /* 027B5980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027B5984 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]); /* 027B5988 */ _t41 = cpu->r[31] + 0x0000002Cu; /* 027B5988 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41); /* 027B598C */ _t42 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B598C */ _t43 = _t42 & 0x00000001u; /* 027B598C */ if (_t43) goto L_027B5990; else goto L_027B59CC; L_027B5990: ; // 0x27b5990 /* 027B5990 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000006Cu); /* 027B5994 */ _t44 = cpu->r[12] + cpu->r[8]; /* 027B5994 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44); /* 027B5998 */ /* nop */ /* 027B599C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu); /* 027B59A0 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B59A0 */ _t46 = _t45 & 0x00000001u; /* 027B59A0 */ if (_t46) goto L_027B59A4; else goto L_027B59DC; L_027B59A4: ; // 0x27b59a4 /* 027B59A4 */ _t47 = cpu->r[1] + 0x00000020u; /* 027B59A4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t47); /* 027B59A8 */ cpu->r[3] = 0x00000000u; /* 027B59AC */ _t48 = cpu->r[1] + 0x00000014u; /* 027B59AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t48); /* 027B59B0 */ _t49 = cpu->r[1] + 0x00000018u; /* 027B59B0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t49); /* 027B59B4 */ _t50 = cpu->r[1] + 0x00000010u; /* 027B59B4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50); /* 027B59B8 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B59B8 */ _t52 = _t51 & 0x00000001u; /* 027B59B8 */ if (_t52) goto L_027B59BC; // else: addr-0 trap, fall-through L_027B59BC: ; // 0x27b59bc /* 027B59BC */ _t53 = cpu->r[1] + 0x0000002Cu; /* 027B59BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t53); /* 027B59C0 */ cpu->lr = cpu->r[0]; /* 027B59C4 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B59C8 */ return; L_027B59CC: ; // 0x27b59cc /* 027B59CC */ _t54 = cpu->r[12] + 0x00000000u; /* 027B59CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t54); /* 027B59D0 */ /* nop */ /* 027B59D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0xFFFFFFFFu); /* 027B59D8 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B59D8 */ _t56 = _t55 & 0x00000001u; /* 027B59D8 */ if (_t56) goto L_027B59A4; else goto L_027B59DC; L_027B59DC: ; // 0x27b59dc /* 027B59DC */ /* nop */ /* 027B59E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu); /* 027B59E4 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B59E4 */ _t58 = _t57 & 0x00000001u; /* 027B59E4 */ if (_t58) goto L_027B59A4; else goto L_027B59E8; L_027B59E8: ; // 0x27b59e8 /* 027B59E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]); /* 027B59EC */ _t59 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B59EC */ _t60 = _t59 & 0x00000001u; /* 027B59EC */ if (_t60) goto L_027B59F0; else goto L_027B59F8; L_027B59F0: ; // 0x27b59f0 /* 027B59F0 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000006Cu); /* 027B59F4 */ cpu->r[12] = cpu->r[12] + cpu->r[11]; L_027B59F8: ; // 0x27b59f8 /* 027B59F8 */ _t61 = cpu->r[12] + 0x0000000Cu; /* 027B59F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t61); /* 027B59FC */ _t62 = cpu->r[7] + 0x00000000u; /* 027B59FC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t62); /* 027B5A00 */ cpu->r[11] = 0x10110000u; /* 027B5A04 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[10]; /* 027B5A08 */ _t63 = cpu->r[11] + 0xFFFFB148u; /* 027B5A08 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t63); /* 027B5A0C */ cpu->r[12] = cpu->r[1] + 0x00000008u; /* 027B5A10 */ cpu->r[0] = 0x43300000u; /* 027B5A14 */ /* nop */ /* 027B5A18 */ _t64 = cpu->r[1] + 0x00000008u; /* 027B5A18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t64); /* 027B5A1C */ _t65 = cpu->r[1] + 0x00000008u; /* 027B5A1C */ rbrew_write32(cpu->mem, _t65, cpu->r[0]); /* 027B5A20 */ cpu->r[8] = cpu->r[3] ^ 0x80000000u; /* 027B5A24 */ _t66 = cpu->r[1] + 0x0000000Cu; /* 027B5A24 */ rbrew_write32(cpu->mem, _t66, cpu->r[8]); /* 027B5A28 */ _t67 = cpu->r[1] + 0x00000008u; /* 027B5A28 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t67); /* 027B5A2C */ cpu->f[12] = cpu->f[11] - cpu->f[13]; /* 027B5A30 */ cpu->f[8] = (double)(float)cpu->f[12]; /* 027B5A34 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[10]); /* 027B5A38 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5A38 */ _t69 = _t68 & 0x00000001u; /* 027B5A38 */ if (_t69) goto L_027B5A44; else goto L_027B5A3C; L_027B5A3C: ; // 0x27b5a3c /* 027B5A3C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[31]); /* 027B5A40 */ _t70 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5A40 */ _t71 = _t70 & 0x00000001u; /* 027B5A40 */ if (_t71) goto L_027B5A68; else goto L_027B5A44; L_027B5A44: ; // 0x27b5a44 /* 027B5A44 */ _t72 = cpu->r[1] + 0x00000020u; /* 027B5A44 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t72); /* 027B5A48 */ _t73 = cpu->r[1] + 0x00000014u; /* 027B5A48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73); /* 027B5A4C */ _t74 = cpu->r[1] + 0x00000018u; /* 027B5A4C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t74); /* 027B5A50 */ _t75 = cpu->r[1] + 0x00000010u; /* 027B5A50 */ cpu->r[30] = rbrew_read32(cpu->mem, _t75); /* 027B5A54 */ _t76 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5A54 */ _t77 = _t76 & 0x00000001u; /* 027B5A54 */ if (_t77) goto L_027B5A58; // else: addr-0 trap, fall-through L_027B5A58: ; // 0x27b5a58 /* 027B5A58 */ _t78 = cpu->r[1] + 0x0000002Cu; /* 027B5A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t78); /* 027B5A5C */ cpu->lr = cpu->r[0]; /* 027B5A60 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B5A64 */ return; L_027B5A68: ; // 0x27b5a68 /* 027B5A68 */ _t79 = cpu->r[1] + 0x00000020u; /* 027B5A68 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t79); /* 027B5A6C */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu; /* 027B5A70 */ _t80 = cpu->r[1] + 0x00000014u; /* 027B5A70 */ cpu->r[31] = rbrew_read32(cpu->mem, _t80); /* 027B5A74 */ _t81 = cpu->r[1] + 0x00000018u; /* 027B5A74 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t81); /* 027B5A78 */ _t82 = cpu->r[1] + 0x00000010u; /* 027B5A78 */ cpu->r[30] = rbrew_read32(cpu->mem, _t82); /* 027B5A7C */ _t83 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5A7C */ _t84 = _t83 & 0x00000001u; /* 027B5A7C */ if (_t84) goto L_027B5A80; // else: addr-0 trap, fall-through L_027B5A80: ; // 0x27b5a80 /* 027B5A80 */ _t85 = cpu->r[1] + 0x0000002Cu; /* 027B5A80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85); /* 027B5A84 */ cpu->lr = cpu->r[0]; /* 027B5A88 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B5A8C */ return; } // fn_027B5A90 @ 0x27b5a90 void Gambit_fn_027B5A90(CPUState* cpu) { uint32_t _t0, _t1; L_027B5A90: ; // 0x27b5a90 /* 027B5A90 */ cpu->r[12] = 0xFFFFFFFFu; /* 027B5A94 */ _t0 = cpu->r[3] + 0x00000012u; /* 027B5A94 */ rbrew_write16(cpu->mem, _t0, (uint16_t)cpu->r[12]); /* 027B5A98 */ _t1 = cpu->r[3] + 0x00000010u; /* 027B5A98 */ rbrew_write16(cpu->mem, _t1, (uint16_t)cpu->r[12]); /* 027B5A9C */ return; } // fn_027B5AA0 @ 0x27b5aa0 void Gambit_fn_027B5AA0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7; L_027B5AA0: ; // 0x27b5aa0 /* 027B5AA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B5AA4 */ _t0 = cpu->r[3] + 0x00000008u; /* 027B5AA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[4]); /* 027B5AA8 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5AA8 */ _t2 = _t1 & 0x00000001u; /* 027B5AA8 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B5AA8 */ goto L_027B5AAC; L_027B5AAC: ; // 0x27b5aac /* 027B5AAC */ _t3 = cpu->r[3] + 0x00000008u; /* 027B5AAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B5AB0 */ _t4 = cpu->r[3] + 0x0000000Cu; /* 027B5AB0 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]); /* 027B5AB4 */ _t5 = cpu->r[12] + 0x000000A4u; /* 027B5AB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t5); /* 027B5AB8 */ _t6 = cpu->r[11] + 0x00000050u; /* 027B5AB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027B5ABC */ _t7 = cpu->r[3] + 0x00000000u; /* 027B5ABC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027B5AC0 */ return; } // fn_027B5AC4 @ 0x27b5ac4 void Gambit_fn_027B5AC4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62; L_027B5AC4: ; // 0x27b5ac4 /* 027B5AC4 */ cpu->r[0] = cpu->lr; /* 027B5AC8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B5AC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B5AC8 */ cpu->r[1] = _t0; /* 027B5ACC */ _t1 = cpu->r[1] + 0x00000014u; /* 027B5ACC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B5AD0 */ _t2 = cpu->r[1] + 0x00000010u; /* 027B5AD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B5AD4 */ _t3 = cpu->r[1] + 0x00000018u; /* 027B5AD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B5AD8 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B5AD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B5ADC */ _t5 = cpu->r[1] + 0x00000024u; /* 027B5ADC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B5AE0 */ _t6 = cpu->r[3] + 0x00000008u; /* 027B5AE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B5AE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B5AE8 */ cpu->r[28] = cpu->r[4]; /* 027B5AEC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5AEC */ _t8 = _t7 & 0x00000001u; /* 027B5AEC */ if (_t8) goto L_027B5B20; else goto L_027B5AF0; L_027B5AF0: ; // 0x27b5af0 /* 027B5AF0 */ _t9 = cpu->r[11] + 0x000000A4u; /* 027B5AF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027B5AF4 */ _t10 = cpu->r[3] + 0x0000000Cu; /* 027B5AF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B5AF8 */ _t11 = cpu->r[12] + 0x00000030u; /* 027B5AF8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11); /* 027B5AFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]); /* 027B5B00 */ _t12 = cpu->r[12] + 0x00000034u; /* 027B5B00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027B5B04 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5B04 */ _t14 = _t13 & 0x00000001u; /* 027B5B04 */ if (_t14) goto L_027B5B08; else goto L_027B5B10; L_027B5B08: ; // 0x27b5b08 /* 027B5B08 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu); /* 027B5B0C */ cpu->r[12] = cpu->r[12] + cpu->r[8]; L_027B5B10: ; // 0x27b5b10 /* 027B5B10 */ _t15 = cpu->r[12] + 0x00000000u; /* 027B5B10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15); /* 027B5B14 */ _t16 = cpu->r[3] + 0x00000010u; /* 027B5B14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B5B18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]); /* 027B5B1C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5B1C */ _t18 = _t17 & 0x00000001u; /* 027B5B1C */ if (_t18) goto L_027B5B20; else goto L_027B5B44; L_027B5B20: ; // 0x27b5b20 /* 027B5B20 */ _t19 = cpu->r[1] + 0x00000010u; /* 027B5B20 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19); /* 027B5B24 */ _t20 = cpu->r[1] + 0x00000014u; /* 027B5B24 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20); /* 027B5B28 */ _t21 = cpu->r[1] + 0x00000024u; /* 027B5B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027B5B2C */ _t22 = cpu->r[1] + 0x00000018u; /* 027B5B2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22); /* 027B5B30 */ cpu->lr = cpu->r[0]; /* 027B5B34 */ _t23 = cpu->r[1] + 0x0000001Cu; /* 027B5B34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 027B5B38 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5B3C */ cpu->r[3] = 0x00000000u; /* 027B5B40 */ return; L_027B5B44: ; // 0x27b5b44 /* 027B5B44 */ _t24 = cpu->r[3] + 0x00000010u; /* 027B5B44 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]); /* 027B5B48 */ _t25 = cpu->r[3] + 0x00000010u; /* 027B5B48 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t25); /* 027B5B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu); /* 027B5B50 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5B50 */ _t27 = _t26 & 0x00000001u; /* 027B5B50 */ if (_t27) goto L_027B5B98; else goto L_027B5B54; L_027B5B54: ; // 0x27b5b54 /* 027B5B54 */ _t28 = cpu->r[3] + 0x00000012u; /* 027B5B54 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t28); /* 027B5B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu); /* 027B5B5C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5B5C */ _t30 = _t29 & 0x00000001u; /* 027B5B5C */ if (_t30) goto L_027B5B98; else goto L_027B5B60; L_027B5B60: ; // 0x27b5b60 /* 027B5B60 */ _t31 = cpu->r[3] + 0x00000004u; /* 027B5B60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31); /* 027B5B64 */ _t32 = cpu->r[11] + 0x0000002Cu; /* 027B5B64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027B5B68 */ cpu->ctr = cpu->r[0]; /* 027B5B6C */ cpu->r[4] = cpu->r[28]; /* 027B5B70 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5B74 */ _t33 = cpu->r[1] + 0x00000010u; /* 027B5B74 */ cpu->r[28] = rbrew_read32(cpu->mem, _t33); /* 027B5B78 */ _t34 = cpu->r[1] + 0x00000014u; /* 027B5B78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t34); /* 027B5B7C */ _t35 = cpu->r[1] + 0x00000024u; /* 027B5B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t35); /* 027B5B80 */ _t36 = cpu->r[1] + 0x00000018u; /* 027B5B80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36); /* 027B5B84 */ cpu->lr = cpu->r[0]; /* 027B5B88 */ _t37 = cpu->r[1] + 0x0000001Cu; /* 027B5B88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37); /* 027B5B8C */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5B90 */ cpu->r[3] = 0x00000001u; /* 027B5B94 */ return; L_027B5B98: ; // 0x27b5b98 /* 027B5B98 */ cpu->r[0] = 0x10110000u; /* 027B5B9C */ _t38 = cpu->r[28] + 0x00000000u; /* 027B5B9C */ cpu->r[29] = rbrew_read32(cpu->mem, _t38); /* 027B5BA0 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0B0u; /* 027B5BA4 */ cpu->r[7] = 0x10110000u; /* 027B5BA8 */ _t39 = cpu->r[1] + 0x0000000Cu; /* 027B5BA8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]); /* 027B5BAC */ cpu->r[7] = cpu->r[7] + 0xFFFFB154u; /* 027B5BB0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5BB4 */ _t40 = cpu->r[1] + 0x00000008u; /* 027B5BB4 */ rbrew_write32(cpu->mem, _t40, cpu->r[7]); /* 027B5BB8 */ Gambit_fn_027B653C(cpu); /* 027B5BBC */ cpu->r[31] = 0x10110000u; /* 027B5BC0 */ _t41 = cpu->r[1] + 0x00000008u; /* 027B5BC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41); /* 027B5BC4 */ _t42 = cpu->r[31] + 0x00007399u; /* 027B5BC4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t42); /* 027B5BC8 */ _t43 = cpu->r[7] + 0x00000000u; /* 027B5BC8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t43); /* 027B5BCC */ cpu->r[30] = 0x00000000u; /* 027B5BD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027B5BD4 */ cpu->r[0] = 0x00080000u; /* 027B5BD8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5BD8 */ _t45 = _t44 & 0x00000001u; /* 027B5BD8 */ if (_t45) goto L_027B5C00; else goto L_027B5BDC; L_027B5BDC: ; // 0x27b5bdc /* 027B5BDC */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B5BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B5BE4 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B5BE8 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5BE8 */ _t47 = _t46 & 0x00000001u; /* 027B5BE8 */ if (_t47) goto L_027B5BFC; else goto L_027B5BEC; L_027B5BEC: ; // 0x27b5bec /* 027B5BEC */ _t48 = cpu->r[7] + 0x00000000u; /* 027B5BEC */ cpu->r[9] = rbrew_read8(cpu->mem, _t48); /* 027B5BF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027B5BF4 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5BF4 */ _t50 = _t49 & 0x00000001u; /* 027B5BF4 */ if (_t50) goto L_027B5BF8; else goto L_027B5BDC; L_027B5BF8: ; // 0x27b5bf8 /* 027B5BF8 */ goto L_027B5C00; L_027B5BFC: ; // 0x27b5bfc /* 027B5BFC */ cpu->r[30] = 0x00000000u; L_027B5C00: ; // 0x27b5c00 /* 027B5C00 */ _t51 = cpu->r[28] + 0x00000008u; /* 027B5C00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51); /* 027B5C04 */ _t52 = cpu->r[1] + 0x0000000Cu; /* 027B5C04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t52); /* 027B5C08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027B5C0C */ _t53 = cpu->r[10] + 0x00000014u; /* 027B5C0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53); /* 027B5C10 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5C10 */ _t55 = _t54 & 0x00000001u; /* 027B5C10 */ if (_t55) goto L_027B5C18; else goto L_027B5C14; L_027B5C14: ; // 0x27b5c14 /* 027B5C14 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027B5C18: ; // 0x27b5c18 /* 027B5C18 */ cpu->ctr = cpu->r[0]; /* 027B5C1C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5C20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5C24 */ _t56 = cpu->r[1] + 0x00000008u; /* 027B5C24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t56); /* 027B5C28 */ cpu->r[6] = 0x00000000u; /* 027B5C2C */ cpu->r[5] = cpu->r[30]; /* 027B5C30 */ cpu->r[3] = cpu->r[29]; /* 027B5C34 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B5C38 */ _t57 = cpu->r[29] + cpu->r[30]; /* 027B5C38 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[31]); /* 027B5C3C */ _t58 = cpu->r[1] + 0x00000010u; /* 027B5C3C */ cpu->r[28] = rbrew_read32(cpu->mem, _t58); /* 027B5C40 */ _t59 = cpu->r[1] + 0x00000014u; /* 027B5C40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59); /* 027B5C44 */ _t60 = cpu->r[1] + 0x00000024u; /* 027B5C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60); /* 027B5C48 */ _t61 = cpu->r[1] + 0x00000018u; /* 027B5C48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61); /* 027B5C4C */ cpu->lr = cpu->r[0]; /* 027B5C50 */ _t62 = cpu->r[1] + 0x0000001Cu; /* 027B5C50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62); /* 027B5C54 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5C58 */ cpu->r[3] = 0x00000001u; /* 027B5C5C */ return; } // fn_027B5AC8 @ 0x27b5ac8 void Gambit_fn_027B5AC8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62; L_027B5AC8: ; // 0x27b5ac8 /* 027B5AC8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B5AC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B5AC8 */ cpu->r[1] = _t0; /* 027B5ACC */ _t1 = cpu->r[1] + 0x00000014u; /* 027B5ACC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B5AD0 */ _t2 = cpu->r[1] + 0x00000010u; /* 027B5AD0 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B5AD4 */ _t3 = cpu->r[1] + 0x00000018u; /* 027B5AD4 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B5AD8 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B5AD8 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B5ADC */ _t5 = cpu->r[1] + 0x00000024u; /* 027B5ADC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B5AE0 */ _t6 = cpu->r[3] + 0x00000008u; /* 027B5AE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B5AE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B5AE8 */ cpu->r[28] = cpu->r[4]; /* 027B5AEC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5AEC */ _t8 = _t7 & 0x00000001u; /* 027B5AEC */ if (_t8) goto L_027B5B20; else goto L_027B5AF0; L_027B5AF0: ; // 0x27b5af0 /* 027B5AF0 */ _t9 = cpu->r[11] + 0x000000A4u; /* 027B5AF0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027B5AF4 */ _t10 = cpu->r[3] + 0x0000000Cu; /* 027B5AF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B5AF8 */ _t11 = cpu->r[12] + 0x00000030u; /* 027B5AF8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11); /* 027B5AFC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]); /* 027B5B00 */ _t12 = cpu->r[12] + 0x00000034u; /* 027B5B00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027B5B04 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5B04 */ _t14 = _t13 & 0x00000001u; /* 027B5B04 */ if (_t14) goto L_027B5B08; else goto L_027B5B10; L_027B5B08: ; // 0x27b5b08 /* 027B5B08 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu); /* 027B5B0C */ cpu->r[12] = cpu->r[12] + cpu->r[8]; L_027B5B10: ; // 0x27b5b10 /* 027B5B10 */ _t15 = cpu->r[12] + 0x00000000u; /* 027B5B10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15); /* 027B5B14 */ _t16 = cpu->r[3] + 0x00000010u; /* 027B5B14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B5B18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]); /* 027B5B1C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5B1C */ _t18 = _t17 & 0x00000001u; /* 027B5B1C */ if (_t18) goto L_027B5B20; else goto L_027B5B44; L_027B5B20: ; // 0x27b5b20 /* 027B5B20 */ _t19 = cpu->r[1] + 0x00000010u; /* 027B5B20 */ cpu->r[28] = rbrew_read32(cpu->mem, _t19); /* 027B5B24 */ _t20 = cpu->r[1] + 0x00000014u; /* 027B5B24 */ cpu->r[29] = rbrew_read32(cpu->mem, _t20); /* 027B5B28 */ _t21 = cpu->r[1] + 0x00000024u; /* 027B5B28 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027B5B2C */ _t22 = cpu->r[1] + 0x00000018u; /* 027B5B2C */ cpu->r[30] = rbrew_read32(cpu->mem, _t22); /* 027B5B30 */ cpu->lr = cpu->r[0]; /* 027B5B34 */ _t23 = cpu->r[1] + 0x0000001Cu; /* 027B5B34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 027B5B38 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5B3C */ cpu->r[3] = 0x00000000u; /* 027B5B40 */ return; L_027B5B44: ; // 0x27b5b44 /* 027B5B44 */ _t24 = cpu->r[3] + 0x00000010u; /* 027B5B44 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]); /* 027B5B48 */ _t25 = cpu->r[3] + 0x00000010u; /* 027B5B48 */ cpu->r[10] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t25); /* 027B5B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu); /* 027B5B50 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5B50 */ _t27 = _t26 & 0x00000001u; /* 027B5B50 */ if (_t27) goto L_027B5B98; else goto L_027B5B54; L_027B5B54: ; // 0x27b5b54 /* 027B5B54 */ _t28 = cpu->r[3] + 0x00000012u; /* 027B5B54 */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t28); /* 027B5B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0xFFFFFFFFu); /* 027B5B5C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5B5C */ _t30 = _t29 & 0x00000001u; /* 027B5B5C */ if (_t30) goto L_027B5B98; else goto L_027B5B60; L_027B5B60: ; // 0x27b5b60 /* 027B5B60 */ _t31 = cpu->r[3] + 0x00000004u; /* 027B5B60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31); /* 027B5B64 */ _t32 = cpu->r[11] + 0x0000002Cu; /* 027B5B64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027B5B68 */ cpu->ctr = cpu->r[0]; /* 027B5B6C */ cpu->r[4] = cpu->r[28]; /* 027B5B70 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5B74 */ _t33 = cpu->r[1] + 0x00000010u; /* 027B5B74 */ cpu->r[28] = rbrew_read32(cpu->mem, _t33); /* 027B5B78 */ _t34 = cpu->r[1] + 0x00000014u; /* 027B5B78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t34); /* 027B5B7C */ _t35 = cpu->r[1] + 0x00000024u; /* 027B5B7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t35); /* 027B5B80 */ _t36 = cpu->r[1] + 0x00000018u; /* 027B5B80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t36); /* 027B5B84 */ cpu->lr = cpu->r[0]; /* 027B5B88 */ _t37 = cpu->r[1] + 0x0000001Cu; /* 027B5B88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37); /* 027B5B8C */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5B90 */ cpu->r[3] = 0x00000001u; /* 027B5B94 */ return; L_027B5B98: ; // 0x27b5b98 /* 027B5B98 */ cpu->r[0] = 0x10110000u; /* 027B5B9C */ _t38 = cpu->r[28] + 0x00000000u; /* 027B5B9C */ cpu->r[29] = rbrew_read32(cpu->mem, _t38); /* 027B5BA0 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0B0u; /* 027B5BA4 */ cpu->r[7] = 0x10110000u; /* 027B5BA8 */ _t39 = cpu->r[1] + 0x0000000Cu; /* 027B5BA8 */ rbrew_write32(cpu->mem, _t39, cpu->r[0]); /* 027B5BAC */ cpu->r[7] = cpu->r[7] + 0xFFFFB154u; /* 027B5BB0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5BB4 */ _t40 = cpu->r[1] + 0x00000008u; /* 027B5BB4 */ rbrew_write32(cpu->mem, _t40, cpu->r[7]); /* 027B5BB8 */ Gambit_fn_027B653C(cpu); /* 027B5BBC */ cpu->r[31] = 0x10110000u; /* 027B5BC0 */ _t41 = cpu->r[1] + 0x00000008u; /* 027B5BC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41); /* 027B5BC4 */ _t42 = cpu->r[31] + 0x00007399u; /* 027B5BC4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t42); /* 027B5BC8 */ _t43 = cpu->r[7] + 0x00000000u; /* 027B5BC8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t43); /* 027B5BCC */ cpu->r[30] = 0x00000000u; /* 027B5BD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027B5BD4 */ cpu->r[0] = 0x00080000u; /* 027B5BD8 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5BD8 */ _t45 = _t44 & 0x00000001u; /* 027B5BD8 */ if (_t45) goto L_027B5C00; else goto L_027B5BDC; L_027B5BDC: ; // 0x27b5bdc /* 027B5BDC */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B5BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B5BE4 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B5BE8 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5BE8 */ _t47 = _t46 & 0x00000001u; /* 027B5BE8 */ if (_t47) goto L_027B5BFC; else goto L_027B5BEC; L_027B5BEC: ; // 0x27b5bec /* 027B5BEC */ _t48 = cpu->r[7] + 0x00000000u; /* 027B5BEC */ cpu->r[9] = rbrew_read8(cpu->mem, _t48); /* 027B5BF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027B5BF4 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5BF4 */ _t50 = _t49 & 0x00000001u; /* 027B5BF4 */ if (_t50) goto L_027B5BF8; else goto L_027B5BDC; L_027B5BF8: ; // 0x27b5bf8 /* 027B5BF8 */ goto L_027B5C00; L_027B5BFC: ; // 0x27b5bfc /* 027B5BFC */ cpu->r[30] = 0x00000000u; L_027B5C00: ; // 0x27b5c00 /* 027B5C00 */ _t51 = cpu->r[28] + 0x00000008u; /* 027B5C00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t51); /* 027B5C04 */ _t52 = cpu->r[1] + 0x0000000Cu; /* 027B5C04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t52); /* 027B5C08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027B5C0C */ _t53 = cpu->r[10] + 0x00000014u; /* 027B5C0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t53); /* 027B5C10 */ _t54 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5C10 */ _t55 = _t54 & 0x00000001u; /* 027B5C10 */ if (_t55) goto L_027B5C18; else goto L_027B5C14; L_027B5C14: ; // 0x27b5c14 /* 027B5C14 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027B5C18: ; // 0x27b5c18 /* 027B5C18 */ cpu->ctr = cpu->r[0]; /* 027B5C1C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5C20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5C24 */ _t56 = cpu->r[1] + 0x00000008u; /* 027B5C24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t56); /* 027B5C28 */ cpu->r[6] = 0x00000000u; /* 027B5C2C */ cpu->r[5] = cpu->r[30]; /* 027B5C30 */ cpu->r[3] = cpu->r[29]; /* 027B5C34 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B5C38 */ _t57 = cpu->r[29] + cpu->r[30]; /* 027B5C38 */ rbrew_write8(cpu->mem, _t57, (uint8_t)cpu->r[31]); /* 027B5C3C */ _t58 = cpu->r[1] + 0x00000010u; /* 027B5C3C */ cpu->r[28] = rbrew_read32(cpu->mem, _t58); /* 027B5C40 */ _t59 = cpu->r[1] + 0x00000014u; /* 027B5C40 */ cpu->r[29] = rbrew_read32(cpu->mem, _t59); /* 027B5C44 */ _t60 = cpu->r[1] + 0x00000024u; /* 027B5C44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60); /* 027B5C48 */ _t61 = cpu->r[1] + 0x00000018u; /* 027B5C48 */ cpu->r[30] = rbrew_read32(cpu->mem, _t61); /* 027B5C4C */ cpu->lr = cpu->r[0]; /* 027B5C50 */ _t62 = cpu->r[1] + 0x0000001Cu; /* 027B5C50 */ cpu->r[31] = rbrew_read32(cpu->mem, _t62); /* 027B5C54 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B5C58 */ cpu->r[3] = 0x00000001u; /* 027B5C5C */ return; } // fn_027B5C60 @ 0x27b5c60 void Gambit_fn_027B5C60(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B5C60: ; // 0x27b5c60 /* 027B5C60 */ _t0 = cpu->r[3] + 0x00000008u; /* 027B5C60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B5C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B5C68 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5C68 */ _t2 = _t1 & 0x00000001u; /* 027B5C68 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B5C68 */ goto L_027B5C6C; L_027B5C6C: ; // 0x27b5c6c /* 027B5C6C */ _t3 = cpu->r[3] + 0x00000000u; /* 027B5C6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t3); /* 027B5C70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B5C74 */ _t4 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5C74 */ _t5 = _t4 & 0x00000001u; /* 027B5C74 */ _t6 = _t5 ^ 0x00000001u; /* 027B5C74 */ if (_t6) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B5C74 */ goto L_027B5C78; L_027B5C78: ; // 0x27b5c78 /* 027B5C78 */ _t7 = cpu->r[12] + 0x000000A4u; /* 027B5C78 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7); /* 027B5C7C */ _t8 = cpu->r[11] + 0x00000050u; /* 027B5C7C */ cpu->r[9] = rbrew_read32(cpu->mem, _t8); /* 027B5C80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[9]); /* 027B5C84 */ _t9 = cpu->r[11] + 0x00000054u; /* 027B5C84 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027B5C88 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5C88 */ _t11 = _t10 & 0x00000001u; /* 027B5C88 */ if (_t11) goto L_027B5C8C; else goto L_027B5C94; L_027B5C8C: ; // 0x27b5c8c /* 027B5C8C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x0000000Cu); /* 027B5C90 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027B5C94: ; // 0x27b5c94 /* 027B5C94 */ _t12 = cpu->r[12] + 0x00000000u; /* 027B5C94 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12); /* 027B5C98 */ _t13 = cpu->r[3] + 0x00000004u; /* 027B5C98 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13); /* 027B5C9C */ _t14 = cpu->r[11] + 0x00000000u; /* 027B5C9C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14); /* 027B5CA0 */ _t15 = cpu->r[12] + 0x00000004u; /* 027B5CA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027B5CA4 */ cpu->r[10] = cpu->r[9] + 0x00000030u; /* 027B5CA8 */ cpu->r[5] = 0x00000000u; /* 027B5CAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B5CB0 */ cpu->r[11] = cpu->r[12] + 0x00000004u; /* 027B5CB4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5CB4 */ _t17 = _t16 & 0x00000001u; /* 027B5CB4 */ if (_t17) goto L_027B5CBC; else goto L_027B5CB8; L_027B5CB8: ; // 0x27b5cb8 /* 027B5CB8 */ cpu->r[5] = cpu->r[11] + cpu->r[0]; L_027B5CBC: ; // 0x27b5cbc /* 027B5CBC */ _t18 = cpu->r[10] + 0x00000004u; /* 027B5CBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027B5CC0 */ cpu->ctr = cpu->r[0]; /* 027B5CC4 */ rbrew_dispatch(cpu, cpu->ctr); return; } // fn_027B5CC8 @ 0x27b5cc8 void Gambit_fn_027B5CC8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95; L_027B5CC8: ; // 0x27b5cc8 /* 027B5CC8 */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027B5CC8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B5CC8 */ cpu->r[1] = _t0; /* 027B5CCC */ /* nop */ /* 027B5CD0 */ cpu->r[0] = cpu->lr; /* 027B5CD4 */ _t1 = cpu->r[1] + 0x00000034u; /* 027B5CD4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B5CD8 */ cpu->r[29] = cpu->r[4]; /* 027B5CDC */ cpu->r[30] = 0x10110000u; /* 027B5CE0 */ _t2 = cpu->r[30] + 0x00007399u; /* 027B5CE0 */ cpu->r[30] = rbrew_read8(cpu->mem, _t2); /* 027B5CE4 */ _t3 = cpu->r[29] + 0x00000000u; /* 027B5CE4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t3); /* 027B5CE8 */ cpu->r[26] = cpu->r[5]; /* 027B5CEC */ _t4 = cpu->r[11] + 0x00000000u; /* 027B5CEC */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[30]); /* 027B5CF0 */ _t5 = cpu->r[3] + 0x0000000Cu; /* 027B5CF0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5); /* 027B5CF4 */ cpu->r[31] = 0x10110000u; /* 027B5CF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B5CFC */ cpu->r[31] = cpu->r[31] + 0xFFFFB0B0u; /* 027B5D00 */ _t6 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5D00 */ _t7 = _t6 & 0x00000001u; /* 027B5D00 */ if (_t7) goto L_027B5D04; else goto L_027B5E44; L_027B5D04: ; // 0x27b5d04 /* 027B5D04 */ cpu->r[4] = 0x10110000u; /* 027B5D08 */ cpu->r[3] = cpu->r[29]; /* 027B5D0C */ cpu->r[4] = cpu->r[4] + 0xFFFFB164u; /* 027B5D10 */ _t8 = cpu->cr[1] >> (0x00000001u & 31u); /* 027B5D10 */ _t9 = _t8 & 0x00000001u; /* 027B5D10 */ if (_t9) goto L_027B5D14; // else: addr-0 trap, fall-through L_027B5D14: ; // 0x27b5d14 /* 027B5D14 */ Gambit_fn_0282A5F4(cpu); /* 027B5D18 */ _t10 = cpu->r[29] + 0x00000000u; /* 027B5D18 */ cpu->r[28] = rbrew_read32(cpu->mem, _t10); /* 027B5D1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B5D20 */ _t11 = cpu->r[1] + 0x00000014u; /* 027B5D20 */ rbrew_write32(cpu->mem, _t11, cpu->r[31]); /* 027B5D24 */ cpu->r[27] = cpu->r[3]; /* 027B5D28 */ _t12 = cpu->r[1] + 0x00000010u; /* 027B5D28 */ rbrew_write32(cpu->mem, _t12, cpu->r[26]); /* 027B5D2C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5D2C */ _t14 = _t13 & 0x00000001u; /* 027B5D2C */ if (_t14) goto L_027B5D30; else goto L_027B5D94; L_027B5D30: ; // 0x27b5d30 /* 027B5D30 */ _t15 = cpu->r[29] + 0x00000004u; /* 027B5D30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15); /* 027B5D34 */ _t16 = cpu->r[12] + 0x00000014u; /* 027B5D34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B5D38 */ cpu->ctr = cpu->r[0]; /* 027B5D3C */ cpu->r[3] = cpu->r[29]; /* 027B5D40 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5D44 */ _t17 = cpu->r[29] + 0x00000000u; /* 027B5D44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17); /* 027B5D48 */ _t18 = cpu->r[10] + 0x00000000u; /* 027B5D48 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18); /* 027B5D4C */ cpu->r[11] = 0x00000000u; /* 027B5D50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027B5D54 */ cpu->r[0] = 0x00080000u; /* 027B5D58 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5D58 */ _t20 = _t19 & 0x00000001u; /* 027B5D58 */ if (_t20) goto L_027B5D80; else goto L_027B5D5C; L_027B5D5C: ; // 0x27b5d5c /* 027B5D5C */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027B5D60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]); /* 027B5D64 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027B5D68 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5D68 */ _t22 = _t21 & 0x00000001u; /* 027B5D68 */ if (_t22) goto L_027B5D7C; else goto L_027B5D6C; L_027B5D6C: ; // 0x27b5d6c /* 027B5D6C */ _t23 = cpu->r[10] + 0x00000000u; /* 027B5D6C */ cpu->r[7] = rbrew_read8(cpu->mem, _t23); /* 027B5D70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]); /* 027B5D74 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5D74 */ _t25 = _t24 & 0x00000001u; /* 027B5D74 */ if (_t25) goto L_027B5D78; else goto L_027B5D5C; L_027B5D78: ; // 0x27b5d78 /* 027B5D78 */ goto L_027B5D80; L_027B5D7C: ; // 0x27b5d7c /* 027B5D7C */ cpu->r[11] = 0x00000000u; L_027B5D80: ; // 0x27b5d80 /* 027B5D80 */ cpu->r[8] = cpu->r[11] + cpu->r[27]; /* 027B5D84 */ cpu->r[27] = cpu->r[8] + 0x00000001u; /* 027B5D84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027B5D88 */ _t26 = cpu->r[1] + 0x00000014u; /* 027B5D88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027B5D8C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5D8C */ _t28 = _t27 & 0x00000001u; /* 027B5D8C */ if (_t28) goto L_027B5D90; else goto L_027B5D94; L_027B5D90: ; // 0x27b5d90 /* 027B5D90 */ cpu->r[27] = 0x00000000u; L_027B5D94: ; // 0x27b5d94 /* 027B5D94 */ _t29 = cpu->r[31] + 0x00000014u; /* 027B5D94 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29); /* 027B5D98 */ cpu->ctr = cpu->r[9]; /* 027B5D9C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B5DA0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5DA4 */ _t30 = cpu->r[1] + 0x00000010u; /* 027B5DA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t30); /* 027B5DA8 */ _t31 = cpu->r[8] + 0x00000000u; /* 027B5DA8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t31); /* 027B5DAC */ cpu->r[31] = 0x00000000u; /* 027B5DB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]); /* 027B5DB4 */ cpu->r[9] = 0x00080000u; /* 027B5DB8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5DB8 */ _t33 = _t32 & 0x00000001u; /* 027B5DB8 */ if (_t33) goto L_027B5DE0; else goto L_027B5DBC; L_027B5DBC: ; // 0x27b5dbc /* 027B5DBC */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027B5DC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]); /* 027B5DC4 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027B5DC8 */ _t34 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5DC8 */ _t35 = _t34 & 0x00000001u; /* 027B5DC8 */ if (_t35) goto L_027B5DDC; else goto L_027B5DCC; L_027B5DCC: ; // 0x27b5dcc /* 027B5DCC */ _t36 = cpu->r[8] + 0x00000000u; /* 027B5DCC */ cpu->r[0] = rbrew_read8(cpu->mem, _t36); /* 027B5DD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027B5DD4 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5DD4 */ _t38 = _t37 & 0x00000001u; /* 027B5DD4 */ if (_t38) goto L_027B5DD8; else goto L_027B5DBC; L_027B5DD8: ; // 0x27b5dd8 /* 027B5DD8 */ goto L_027B5DE0; L_027B5DDC: ; // 0x27b5ddc /* 027B5DDC */ cpu->r[31] = 0x00000000u; L_027B5DE0: ; // 0x27b5de0 /* 027B5DE0 */ _t39 = cpu->r[29] + 0x00000008u; /* 027B5DE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t39); /* 027B5DE4 */ cpu->r[10] = cpu->r[8] - cpu->r[27]; /* 027B5DE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]); /* 027B5DEC */ _t40 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5DEC */ _t41 = _t40 & 0x00000001u; /* 027B5DEC */ if (_t41) goto L_027B5DF4; else goto L_027B5DF0; L_027B5DF0: ; // 0x27b5df0 /* 027B5DF0 */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu; L_027B5DF4: ; // 0x27b5df4 /* 027B5DF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B5DF8 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5DF8 */ _t43 = _t42 & 0x00000001u; /* 027B5DF8 */ if (_t43) goto L_027B5DFC; else goto L_027B5FA0; L_027B5DFC: ; // 0x27b5dfc /* 027B5DFC */ _t44 = cpu->r[1] + 0x00000014u; /* 027B5DFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t44); /* 027B5E00 */ _t45 = cpu->r[12] + 0x00000014u; /* 027B5E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45); /* 027B5E04 */ cpu->ctr = cpu->r[0]; /* 027B5E08 */ cpu->r[29] = cpu->r[28] + cpu->r[27]; /* 027B5E0C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B5E10 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5E14 */ _t46 = cpu->r[1] + 0x00000010u; /* 027B5E14 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46); /* 027B5E18 */ cpu->r[6] = 0x00000000u; /* 027B5E1C */ cpu->r[5] = cpu->r[31]; /* 027B5E20 */ cpu->r[3] = cpu->r[29]; /* 027B5E24 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B5E28 */ cpu->r[6] = cpu->r[27] + cpu->r[31]; /* 027B5E2C */ _t47 = cpu->r[28] + cpu->r[6]; /* 027B5E2C */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[30]); /* 027B5E30 */ /* nop */ /* 027B5E34 */ _t48 = cpu->r[1] + 0x00000034u; /* 027B5E34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48); /* 027B5E38 */ cpu->lr = cpu->r[0]; /* 027B5E3C */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027B5E40 */ return; L_027B5E44: ; // 0x27b5e44 /* 027B5E44 */ _t49 = cpu->r[29] + 0x00000008u; /* 027B5E44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t49); /* 027B5E48 */ cpu->r[7] = 0x10110000u; /* 027B5E4C */ _t50 = cpu->r[29] + 0x00000000u; /* 027B5E4C */ cpu->r[27] = rbrew_read32(cpu->mem, _t50); /* 027B5E50 */ cpu->r[7] = cpu->r[7] + 0xFFFFB160u; /* 027B5E54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u); /* 027B5E58 */ _t51 = cpu->r[1] + 0x0000000Cu; /* 027B5E58 */ rbrew_write32(cpu->mem, _t51, cpu->r[31]); /* 027B5E5C */ cpu->r[28] = 0x00000003u; /* 027B5E60 */ _t52 = cpu->r[1] + 0x00000008u; /* 027B5E60 */ rbrew_write32(cpu->mem, _t52, cpu->r[7]); /* 027B5E64 */ _t53 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5E64 */ _t54 = _t53 & 0x00000001u; /* 027B5E64 */ if (_t54) goto L_027B5E6C; else goto L_027B5E68; L_027B5E68: ; // 0x27b5e68 /* 027B5E68 */ cpu->r[28] = cpu->r[8] + 0xFFFFFFFFu; L_027B5E6C: ; // 0x27b5e6c /* 027B5E6C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5E70 */ Gambit_fn_027B653C(cpu); /* 027B5E74 */ _t55 = cpu->r[1] + 0x00000008u; /* 027B5E74 */ cpu->r[4] = rbrew_read32(cpu->mem, _t55); /* 027B5E78 */ cpu->r[6] = 0x00000000u; /* 027B5E7C */ cpu->r[5] = cpu->r[28]; /* 027B5E80 */ cpu->r[3] = cpu->r[27]; /* 027B5E84 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B5E88 */ _t56 = cpu->r[27] + cpu->r[28]; /* 027B5E88 */ rbrew_write8(cpu->mem, _t56, (uint8_t)cpu->r[30]); /* 027B5E8C */ _t57 = cpu->r[29] + 0x00000000u; /* 027B5E8C */ cpu->r[27] = rbrew_read32(cpu->mem, _t57); /* 027B5E90 */ _t58 = cpu->r[1] + 0x00000008u; /* 027B5E90 */ rbrew_write32(cpu->mem, _t58, cpu->r[26]); /* 027B5E94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027B5E98 */ _t59 = cpu->r[1] + 0x0000000Cu; /* 027B5E98 */ rbrew_write32(cpu->mem, _t59, cpu->r[31]); /* 027B5E9C */ _t60 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5E9C */ _t61 = _t60 & 0x00000001u; /* 027B5E9C */ if (_t61) goto L_027B5EA0; else goto L_027B5F04; L_027B5EA0: ; // 0x27b5ea0 /* 027B5EA0 */ _t62 = cpu->r[29] + 0x00000004u; /* 027B5EA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62); /* 027B5EA4 */ _t63 = cpu->r[8] + 0x00000014u; /* 027B5EA4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63); /* 027B5EA8 */ cpu->ctr = cpu->r[9]; /* 027B5EAC */ cpu->r[3] = cpu->r[29]; /* 027B5EB0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5EB4 */ _t64 = cpu->r[29] + 0x00000000u; /* 027B5EB4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t64); /* 027B5EB8 */ _t65 = cpu->r[6] + 0x00000000u; /* 027B5EB8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t65); /* 027B5EBC */ cpu->r[12] = 0x00000000u; /* 027B5EC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]); /* 027B5EC4 */ cpu->r[7] = 0x00080000u; /* 027B5EC8 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5EC8 */ _t67 = _t66 & 0x00000001u; /* 027B5EC8 */ if (_t67) goto L_027B5EF0; else goto L_027B5ECC; L_027B5ECC: ; // 0x27b5ecc /* 027B5ECC */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B5ED0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[7]); /* 027B5ED4 */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027B5ED8 */ _t68 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5ED8 */ _t69 = _t68 & 0x00000001u; /* 027B5ED8 */ if (_t69) goto L_027B5EEC; else goto L_027B5EDC; L_027B5EDC: ; // 0x27b5edc /* 027B5EDC */ _t70 = cpu->r[6] + 0x00000000u; /* 027B5EDC */ cpu->r[0] = rbrew_read8(cpu->mem, _t70); /* 027B5EE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027B5EE4 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5EE4 */ _t72 = _t71 & 0x00000001u; /* 027B5EE4 */ if (_t72) goto L_027B5EE8; else goto L_027B5ECC; L_027B5EE8: ; // 0x27b5ee8 /* 027B5EE8 */ goto L_027B5EF0; L_027B5EEC: ; // 0x27b5eec /* 027B5EEC */ cpu->r[12] = 0x00000000u; L_027B5EF0: ; // 0x27b5ef0 /* 027B5EF0 */ cpu->r[12] = cpu->r[12] + cpu->r[28]; /* 027B5EF4 */ cpu->r[28] = cpu->r[12] + 0x00000001u; /* 027B5EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027B5EF8 */ _t73 = cpu->r[1] + 0x0000000Cu; /* 027B5EF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t73); /* 027B5EFC */ _t74 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5EFC */ _t75 = _t74 & 0x00000001u; /* 027B5EFC */ if (_t75) goto L_027B5F00; else goto L_027B5F04; L_027B5F00: ; // 0x27b5f00 /* 027B5F00 */ cpu->r[28] = 0x00000000u; L_027B5F04: ; // 0x27b5f04 /* 027B5F04 */ _t76 = cpu->r[31] + 0x00000014u; /* 027B5F04 */ cpu->r[5] = rbrew_read32(cpu->mem, _t76); /* 027B5F08 */ cpu->ctr = cpu->r[5]; /* 027B5F0C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5F10 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5F14 */ _t77 = cpu->r[1] + 0x00000008u; /* 027B5F14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t77); /* 027B5F18 */ _t78 = cpu->r[12] + 0x00000000u; /* 027B5F18 */ cpu->r[6] = rbrew_read8(cpu->mem, _t78); /* 027B5F1C */ cpu->r[31] = 0x00000000u; /* 027B5F20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]); /* 027B5F24 */ cpu->r[0] = 0x00080000u; /* 027B5F28 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5F28 */ _t80 = _t79 & 0x00000001u; /* 027B5F28 */ if (_t80) goto L_027B5F50; else goto L_027B5F2C; L_027B5F2C: ; // 0x27b5f2c /* 027B5F2C */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027B5F30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027B5F34 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B5F38 */ _t81 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5F38 */ _t82 = _t81 & 0x00000001u; /* 027B5F38 */ if (_t82) goto L_027B5F4C; else goto L_027B5F3C; L_027B5F3C: ; // 0x27b5f3c /* 027B5F3C */ _t83 = cpu->r[12] + 0x00000000u; /* 027B5F3C */ cpu->r[7] = rbrew_read8(cpu->mem, _t83); /* 027B5F40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]); /* 027B5F44 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5F44 */ _t85 = _t84 & 0x00000001u; /* 027B5F44 */ if (_t85) goto L_027B5F48; else goto L_027B5F2C; L_027B5F48: ; // 0x27b5f48 /* 027B5F48 */ goto L_027B5F50; L_027B5F4C: ; // 0x27b5f4c /* 027B5F4C */ cpu->r[31] = 0x00000000u; L_027B5F50: ; // 0x27b5f50 /* 027B5F50 */ _t86 = cpu->r[29] + 0x00000008u; /* 027B5F50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t86); /* 027B5F54 */ cpu->r[9] = cpu->r[8] - cpu->r[28]; /* 027B5F58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[9]); /* 027B5F5C */ _t87 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5F5C */ _t88 = _t87 & 0x00000001u; /* 027B5F5C */ if (_t88) goto L_027B5F64; else goto L_027B5F60; L_027B5F60: ; // 0x27b5f60 /* 027B5F60 */ cpu->r[31] = cpu->r[9] + 0xFFFFFFFFu; L_027B5F64: ; // 0x27b5f64 /* 027B5F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B5F68 */ _t89 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5F68 */ _t90 = _t89 & 0x00000001u; /* 027B5F68 */ if (_t90) goto L_027B5F6C; else goto L_027B5FA0; L_027B5F6C: ; // 0x27b5f6c /* 027B5F6C */ _t91 = cpu->r[1] + 0x0000000Cu; /* 027B5F6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t91); /* 027B5F70 */ _t92 = cpu->r[8] + 0x00000014u; /* 027B5F70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t92); /* 027B5F74 */ cpu->ctr = cpu->r[9]; /* 027B5F78 */ cpu->r[29] = cpu->r[27] + cpu->r[28]; /* 027B5F7C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B5F80 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B5F84 */ _t93 = cpu->r[1] + 0x00000008u; /* 027B5F84 */ cpu->r[4] = rbrew_read32(cpu->mem, _t93); /* 027B5F88 */ cpu->r[6] = 0x00000000u; /* 027B5F8C */ cpu->r[5] = cpu->r[31]; /* 027B5F90 */ cpu->r[3] = cpu->r[29]; /* 027B5F94 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B5F98 */ cpu->r[0] = cpu->r[28] + cpu->r[31]; /* 027B5F9C */ _t94 = cpu->r[27] + cpu->r[0]; /* 027B5F9C */ rbrew_write8(cpu->mem, _t94, (uint8_t)cpu->r[30]); L_027B5FA0: ; // 0x27b5fa0 /* 027B5FA0 */ /* nop */ /* 027B5FA4 */ _t95 = cpu->r[1] + 0x00000034u; /* 027B5FA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t95); /* 027B5FA8 */ cpu->lr = cpu->r[0]; /* 027B5FAC */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027B5FB0 */ return; } // fn_027B5FB4 @ 0x27b5fb4 void Gambit_fn_027B5FB4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35; L_027B5FB4: ; // 0x27b5fb4 /* 027B5FB4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B5FB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B5FB4 */ cpu->r[1] = _t0; /* 027B5FB8 */ _t1 = cpu->r[3] + 0x00000008u; /* 027B5FB8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t1); /* 027B5FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B5FC0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5FC0 */ _t3 = _t2 & 0x00000001u; /* 027B5FC0 */ if (_t3) goto L_027B5FFC; else goto L_027B5FC4; L_027B5FC4: ; // 0x27b5fc4 /* 027B5FC4 */ _t4 = cpu->r[3] + 0x00000000u; /* 027B5FC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027B5FC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B5FCC */ _t5 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B5FCC */ _t6 = _t5 & 0x00000001u; /* 027B5FCC */ if (_t6) goto L_027B5FD0; else goto L_027B5FFC; L_027B5FD0: ; // 0x27b5fd0 /* 027B5FD0 */ _t7 = cpu->r[11] + 0x000000A4u; /* 027B5FD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027B5FD4 */ _t8 = cpu->r[3] + 0x0000000Cu; /* 027B5FD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B5FD8 */ _t9 = cpu->r[8] + 0x00000030u; /* 027B5FD8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t9); /* 027B5FDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]); /* 027B5FE0 */ _t10 = cpu->r[8] + 0x00000034u; /* 027B5FE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027B5FE4 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B5FE4 */ _t12 = _t11 & 0x00000001u; /* 027B5FE4 */ if (_t12) goto L_027B5FE8; else goto L_027B6008; L_027B5FE8: ; // 0x27b5fe8 /* 027B5FE8 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu); /* 027B5FEC */ _t13 = cpu->r[12] + cpu->r[8]; /* 027B5FEC */ cpu->r[11] = rbrew_read32(cpu->mem, _t13); /* 027B5FF0 */ /* nop */ /* 027B5FF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu); /* 027B5FF8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B5FF8 */ _t15 = _t14 & 0x00000001u; /* 027B5FF8 */ if (_t15) goto L_027B5FFC; else goto L_027B6018; L_027B5FFC: ; // 0x27b5ffc /* 027B5FFC */ cpu->r[3] = 0x00000000u; /* 027B6000 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B6004 */ return; L_027B6008: ; // 0x27b6008 /* 027B6008 */ _t16 = cpu->r[12] + 0x00000000u; /* 027B6008 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16); /* 027B600C */ /* nop */ /* 027B6010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0xFFFFFFFFu); /* 027B6014 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6014 */ _t18 = _t17 & 0x00000001u; /* 027B6014 */ if (_t18) goto L_027B5FFC; else goto L_027B6018; L_027B6018: ; // 0x27b6018 /* 027B6018 */ /* nop */ /* 027B601C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0xFFFFFFFFu); /* 027B6020 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6020 */ _t20 = _t19 & 0x00000001u; /* 027B6020 */ if (_t20) goto L_027B5FFC; else goto L_027B6024; L_027B6024: ; // 0x27b6024 /* 027B6024 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[7]); /* 027B6028 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6028 */ _t22 = _t21 & 0x00000001u; /* 027B6028 */ if (_t22) goto L_027B602C; else goto L_027B6034; L_027B602C: ; // 0x27b602c /* 027B602C */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu); /* 027B6030 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027B6034: ; // 0x27b6034 /* 027B6034 */ _t23 = cpu->r[12] + 0x00000008u; /* 027B6034 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23); /* 027B6038 */ _t24 = cpu->r[12] + 0x00000000u; /* 027B6038 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24); /* 027B603C */ _t25 = cpu->r[8] + 0x00000000u; /* 027B603C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t25); /* 027B6040 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[12]; /* 027B6044 */ cpu->r[9] = 0x43300000u; /* 027B6048 */ cpu->r[7] = cpu->r[1] + 0x00000008u; /* 027B604C */ /* nop */ /* 027B6050 */ _t26 = cpu->r[1] + 0x00000008u; /* 027B6050 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26); /* 027B6054 */ cpu->r[12] = 0x10110000u; /* 027B6058 */ _t27 = cpu->r[1] + 0x00000008u; /* 027B6058 */ rbrew_write32(cpu->mem, _t27, cpu->r[9]); /* 027B605C */ cpu->r[10] = cpu->r[3] ^ 0x80000000u; /* 027B6060 */ _t28 = cpu->r[12] + 0xFFFFB148u; /* 027B6060 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t28); /* 027B6064 */ _t29 = cpu->r[1] + 0x0000000Cu; /* 027B6064 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]); /* 027B6068 */ _t30 = cpu->r[1] + 0x00000008u; /* 027B6068 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t30); /* 027B606C */ cpu->f[13] = cpu->f[11] - cpu->f[0]; /* 027B6070 */ cpu->f[11] = (double)(float)cpu->f[13]; /* 027B6074 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[11], cpu->f[12]); /* 027B6078 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6078 */ _t32 = _t31 & 0x00000001u; /* 027B6078 */ if (_t32) goto L_027B608C; else goto L_027B607C; L_027B607C: ; // 0x27b607c /* 027B607C */ cpu->r[9] = 0x10110000u; /* 027B6080 */ _t33 = cpu->r[9] + 0xFFFFB140u; /* 027B6080 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t33); /* 027B6084 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[12], cpu->f[13]); /* 027B6088 */ _t34 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6088 */ _t35 = _t34 & 0x00000001u; /* 027B6088 */ if (_t35) goto L_027B6094; else goto L_027B608C; L_027B608C: ; // 0x27b608c /* 027B608C */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B6090 */ return; L_027B6094: ; // 0x27b6094 /* 027B6094 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFFFu; /* 027B6098 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B609C */ return; } // fn_027B60A0 @ 0x27b60a0 void Gambit_fn_027B60A0(CPUState* cpu) { uint32_t _t0; L_027B60A0: ; // 0x27b60a0 /* 027B60A0 */ cpu->r[0] = 0x00000000u; /* 027B60A4 */ _t0 = cpu->r[3] + 0x00000018u; /* 027B60A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027B60A8 */ return; } // fn_027B60AC @ 0x27b60ac void Gambit_fn_027B60AC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44; L_027B60AC: ; // 0x27b60ac /* 027B60AC */ _t0 = cpu->r[1] + 0xFFFFFFB8u; /* 027B60AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B60AC */ cpu->r[1] = _t0; /* 027B60B0 */ /* nop */ /* 027B60B4 */ cpu->r[0] = cpu->lr; /* 027B60B8 */ _t1 = cpu->r[1] + 0x0000004Cu; /* 027B60B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B60BC */ cpu->r[29] = cpu->r[4]; /* 027B60C0 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027B60C4 */ cpu->r[5] = 0x00000020u; /* 027B60C8 */ _t2 = cpu->r[1] + 0x00000008u; /* 027B60C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B60CC */ cpu->r[0] = 0x10110000u; /* 027B60D0 */ _t3 = cpu->r[1] + 0x00000010u; /* 027B60D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[5]); /* 027B60D4 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0F8u; /* 027B60D8 */ cpu->r[31] = 0x10110000u; /* 027B60DC */ _t4 = cpu->r[1] + 0x0000000Cu; /* 027B60DC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B60E0 */ _t5 = cpu->r[31] + 0x00007399u; /* 027B60E0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t5); /* 027B60E4 */ _t6 = cpu->r[29] + 0x00000004u; /* 027B60E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6); /* 027B60E8 */ _t7 = cpu->r[1] + 0x00000033u; /* 027B60E8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[31]); /* 027B60EC */ _t8 = cpu->r[1] + 0x00000014u; /* 027B60EC */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[31]); /* 027B60F0 */ _t9 = cpu->r[7] + 0x00000014u; /* 027B60F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027B60F4 */ cpu->ctr = cpu->r[0]; /* 027B60F8 */ cpu->r[28] = cpu->r[3]; /* 027B60FC */ _t10 = cpu->r[28] + 0x00000004u; /* 027B60FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10); /* 027B6100 */ cpu->r[3] = cpu->r[29]; /* 027B6104 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6108 */ _t11 = cpu->r[30] + 0x00000034u; /* 027B6108 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11); /* 027B610C */ cpu->ctr = cpu->r[9]; /* 027B6110 */ _t12 = cpu->r[29] + 0x00000000u; /* 027B6110 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12); /* 027B6114 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B6118 */ cpu->r[3] = cpu->r[28]; /* 027B611C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6120 */ _t13 = cpu->r[28] + 0x00000014u; /* 027B6120 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13); /* 027B6124 */ _t14 = cpu->r[28] + 0x0000000Cu; /* 027B6124 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14); /* 027B6128 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[10]); /* 027B612C */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B612C */ _t16 = _t15 & 0x00000001u; /* 027B612C */ if (_t16) goto L_027B6130; else goto L_027B61F0; L_027B6130: ; // 0x27b6130 /* 027B6130 */ _t17 = cpu->r[28] + 0x00000010u; /* 027B6130 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17); /* 027B6134 */ cpu->r[0] = cpu->r[8] + 0x00000001u; /* 027B6138 */ _t18 = cpu->r[28] + 0x0000000Cu; /* 027B6138 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18); /* 027B613C */ cpu->r[12] = cpu->r[12] + cpu->r[8]; /* 027B6140 */ _t19 = cpu->r[28] + 0x00000014u; /* 027B6140 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]); /* 027B6144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]); /* 027B6148 */ _t20 = cpu->r[28] + 0x00000008u; /* 027B6148 */ cpu->r[7] = rbrew_read32(cpu->mem, _t20); /* 027B614C */ _t21 = cpu->r[1] + 0x0000000Cu; /* 027B614C */ cpu->r[8] = rbrew_read32(cpu->mem, _t21); /* 027B6150 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6150 */ _t23 = _t22 & 0x00000001u; /* 027B6150 */ if (_t23) goto L_027B6158; else goto L_027B6154; L_027B6154: ; // 0x27b6154 /* 027B6154 */ cpu->r[12] = cpu->r[12] - cpu->r[9]; L_027B6158: ; // 0x27b6158 /* 027B6158 */ _t24 = cpu->r[8] + 0x00000014u; /* 027B6158 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24); /* 027B615C */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x0000002Cu); /* 027B6160 */ cpu->ctr = cpu->r[9]; /* 027B6164 */ _t25 = cpu->r[7] + cpu->r[6]; /* 027B6164 */ cpu->r[29] = rbrew_read32(cpu->mem, _t25); /* 027B6168 */ cpu->r[27] = cpu->r[7] + cpu->r[6]; /* 027B616C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B6170 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6174 */ _t26 = cpu->r[1] + 0x00000008u; /* 027B6174 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26); /* 027B6178 */ _t27 = cpu->r[12] + 0x00000000u; /* 027B6178 */ cpu->r[10] = rbrew_read8(cpu->mem, _t27); /* 027B617C */ cpu->r[30] = 0x00000000u; /* 027B6180 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027B6184 */ cpu->r[6] = 0x00080000u; /* 027B6188 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6188 */ _t29 = _t28 & 0x00000001u; /* 027B6188 */ if (_t29) goto L_027B61B0; else goto L_027B618C; L_027B618C: ; // 0x27b618c /* 027B618C */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B6190 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]); /* 027B6194 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B6198 */ _t30 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B6198 */ _t31 = _t30 & 0x00000001u; /* 027B6198 */ if (_t31) goto L_027B61AC; else goto L_027B619C; L_027B619C: ; // 0x27b619c /* 027B619C */ _t32 = cpu->r[12] + 0x00000000u; /* 027B619C */ cpu->r[0] = rbrew_read8(cpu->mem, _t32); /* 027B61A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B61A4 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B61A4 */ _t34 = _t33 & 0x00000001u; /* 027B61A4 */ if (_t34) goto L_027B61A8; else goto L_027B618C; L_027B61A8: ; // 0x27b61a8 /* 027B61A8 */ goto L_027B61B0; L_027B61AC: ; // 0x27b61ac /* 027B61AC */ cpu->r[30] = 0x00000000u; L_027B61B0: ; // 0x27b61b0 /* 027B61B0 */ _t35 = cpu->r[27] + 0x00000008u; /* 027B61B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35); /* 027B61B4 */ _t36 = cpu->r[1] + 0x0000000Cu; /* 027B61B4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t36); /* 027B61B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]); /* 027B61BC */ _t37 = cpu->r[5] + 0x00000014u; /* 027B61BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t37); /* 027B61C0 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B61C0 */ _t39 = _t38 & 0x00000001u; /* 027B61C0 */ if (_t39) goto L_027B61C8; else goto L_027B61C4; L_027B61C4: ; // 0x27b61c4 /* 027B61C4 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu; L_027B61C8: ; // 0x27b61c8 /* 027B61C8 */ cpu->ctr = cpu->r[0]; /* 027B61CC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B61D0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B61D4 */ _t40 = cpu->r[1] + 0x00000008u; /* 027B61D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40); /* 027B61D8 */ cpu->r[6] = 0x00000000u; /* 027B61DC */ cpu->r[5] = cpu->r[30]; /* 027B61E0 */ cpu->r[3] = cpu->r[29]; /* 027B61E4 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B61E8 */ _t41 = cpu->r[29] + cpu->r[30]; /* 027B61E8 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[31]); /* 027B61EC */ _t42 = cpu->r[28] + 0x00000014u; /* 027B61EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t42); L_027B61F0: ; // 0x27b61f0 /* 027B61F0 */ _t43 = cpu->r[28] + 0x00000000u; /* 027B61F0 */ rbrew_write32(cpu->mem, _t43, cpu->r[8]); /* 027B61F4 */ /* nop */ /* 027B61F8 */ _t44 = cpu->r[1] + 0x0000004Cu; /* 027B61F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44); /* 027B61FC */ cpu->lr = cpu->r[0]; /* 027B6200 */ cpu->r[1] = cpu->r[1] + 0x00000048u; /* 027B6204 */ return; } // fn_027B6208 @ 0x27b6208 void Gambit_fn_027B6208(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42; L_027B6208: ; // 0x27b6208 /* 027B6208 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B6208 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B6208 */ cpu->r[1] = _t0; /* 027B620C */ /* nop */ /* 027B6210 */ cpu->r[0] = cpu->lr; /* 027B6214 */ _t1 = cpu->r[1] + 0x00000024u; /* 027B6214 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B6218 */ cpu->r[29] = cpu->r[4]; /* 027B621C */ _t2 = cpu->r[3] + 0x00000000u; /* 027B621C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027B6220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B6224 */ _t3 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B6224 */ _t4 = _t3 & 0x00000001u; /* 027B6224 */ if (_t4) goto L_027B6228; else goto L_027B6330; L_027B6228: ; // 0x27b6228 /* 027B6228 */ _t5 = cpu->r[3] + 0x00000014u; /* 027B6228 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5); /* 027B622C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[7]); /* 027B6230 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6230 */ _t7 = _t6 & 0x00000001u; /* 027B6230 */ if (_t7) goto L_027B6234; else goto L_027B6294; L_027B6234: ; // 0x27b6234 /* 027B6234 */ _t8 = cpu->r[3] + 0x00000010u; /* 027B6234 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8); /* 027B6238 */ _t9 = cpu->r[3] + 0x0000000Cu; /* 027B6238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027B623C */ cpu->r[6] = cpu->r[8] + cpu->r[5]; /* 027B6240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]); /* 027B6244 */ _t10 = cpu->r[3] + 0x00000008u; /* 027B6244 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10); /* 027B6248 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6248 */ _t12 = _t11 & 0x00000001u; /* 027B6248 */ if (_t12) goto L_027B6250; else goto L_027B624C; L_027B624C: ; // 0x27b624c /* 027B624C */ cpu->r[6] = cpu->r[6] - cpu->r[0]; L_027B6250: ; // 0x27b6250 /* 027B6250 */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[6] * (int32_t)0x0000002Cu); /* 027B6254 */ cpu->r[27] = cpu->r[10] + cpu->r[9]; /* 027B6258 */ _t13 = cpu->r[27] + 0x00000004u; /* 027B6258 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13); /* 027B625C */ _t14 = cpu->r[11] + 0x00000014u; /* 027B625C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14); /* 027B6260 */ cpu->ctr = cpu->r[12]; /* 027B6264 */ cpu->r[3] = cpu->r[27]; /* 027B6268 */ _t15 = cpu->r[29] + 0x00000000u; /* 027B6268 */ cpu->r[28] = rbrew_read32(cpu->mem, _t15); /* 027B626C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6270 */ _t16 = cpu->r[27] + 0x00000000u; /* 027B6270 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16); /* 027B6274 */ cpu->r[31] = 0x10110000u; /* 027B6278 */ _t17 = cpu->r[31] + 0x00007399u; /* 027B6278 */ cpu->r[31] = rbrew_read8(cpu->mem, _t17); /* 027B627C */ _t18 = cpu->r[9] + 0x00000000u; /* 027B627C */ cpu->r[0] = rbrew_read8(cpu->mem, _t18); /* 027B6280 */ cpu->r[30] = 0x00000000u; /* 027B6284 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B6288 */ cpu->r[10] = 0x00080000u; /* 027B628C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B628C */ _t20 = _t19 & 0x00000001u; /* 027B628C */ if (_t20) goto L_027B6290; else goto L_027B62D0; L_027B6290: ; // 0x27b6290 /* 027B6290 */ goto L_027B62F4; L_027B6294: ; // 0x27b6294 /* 027B6294 */ _t21 = cpu->r[3] + 0x00000008u; /* 027B6294 */ cpu->r[27] = rbrew_read32(cpu->mem, _t21); /* 027B6298 */ _t22 = cpu->r[27] + 0x00000004u; /* 027B6298 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22); /* 027B629C */ _t23 = cpu->r[11] + 0x00000014u; /* 027B629C */ cpu->r[12] = rbrew_read32(cpu->mem, _t23); /* 027B62A0 */ cpu->ctr = cpu->r[12]; /* 027B62A4 */ _t24 = cpu->r[29] + 0x00000000u; /* 027B62A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t24); /* 027B62A8 */ cpu->r[3] = cpu->r[27]; /* 027B62AC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B62B0 */ _t25 = cpu->r[27] + 0x00000000u; /* 027B62B0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25); /* 027B62B4 */ cpu->r[31] = 0x10110000u; /* 027B62B8 */ _t26 = cpu->r[31] + 0x00007399u; /* 027B62B8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t26); /* 027B62BC */ _t27 = cpu->r[9] + 0x00000000u; /* 027B62BC */ cpu->r[0] = rbrew_read8(cpu->mem, _t27); /* 027B62C0 */ cpu->r[30] = 0x00000000u; /* 027B62C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B62C8 */ cpu->r[10] = 0x00080000u; /* 027B62CC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B62CC */ _t29 = _t28 & 0x00000001u; /* 027B62CC */ if (_t29) goto L_027B6290; else goto L_027B62D0; L_027B62D0: ; // 0x27b62d0 /* 027B62D0 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B62D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]); /* 027B62D8 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B62DC */ _t30 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B62DC */ _t31 = _t30 & 0x00000001u; /* 027B62DC */ if (_t31) goto L_027B62F0; else goto L_027B62E0; L_027B62E0: ; // 0x27b62e0 /* 027B62E0 */ _t32 = cpu->r[9] + 0x00000000u; /* 027B62E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t32); /* 027B62E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B62E8 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B62E8 */ _t34 = _t33 & 0x00000001u; /* 027B62E8 */ if (_t34) goto L_027B62EC; else goto L_027B62D0; L_027B62EC: ; // 0x27b62ec /* 027B62EC */ goto L_027B62F4; L_027B62F0: ; // 0x27b62f0 /* 027B62F0 */ cpu->r[30] = 0x00000000u; L_027B62F4: ; // 0x27b62f4 /* 027B62F4 */ _t35 = cpu->r[29] + 0x00000008u; /* 027B62F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35); /* 027B62F8 */ _t36 = cpu->r[27] + 0x00000004u; /* 027B62F8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t36); /* 027B62FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027B6300 */ _t37 = cpu->r[7] + 0x00000014u; /* 027B6300 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37); /* 027B6304 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6304 */ _t39 = _t38 & 0x00000001u; /* 027B6304 */ if (_t39) goto L_027B630C; else goto L_027B6308; L_027B6308: ; // 0x27b6308 /* 027B6308 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027B630C: ; // 0x27b630c /* 027B630C */ cpu->ctr = cpu->r[8]; /* 027B6310 */ cpu->r[3] = cpu->r[27]; /* 027B6314 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6318 */ _t40 = cpu->r[27] + 0x00000000u; /* 027B6318 */ cpu->r[4] = rbrew_read32(cpu->mem, _t40); /* 027B631C */ cpu->r[6] = 0x00000000u; /* 027B6320 */ cpu->r[5] = cpu->r[30]; /* 027B6324 */ cpu->r[3] = cpu->r[28]; /* 027B6328 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B632C */ _t41 = cpu->r[28] + cpu->r[30]; /* 027B632C */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[31]); L_027B6330: ; // 0x27b6330 /* 027B6330 */ /* nop */ /* 027B6334 */ _t42 = cpu->r[1] + 0x00000024u; /* 027B6334 */ cpu->r[0] = rbrew_read32(cpu->mem, _t42); /* 027B6338 */ cpu->lr = cpu->r[0]; /* 027B633C */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B6340 */ return; } // fn_027B6344 @ 0x27b6344 void Gambit_fn_027B6344(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; L_027B6344: ; // 0x27b6344 /* 027B6344 */ _t0 = cpu->r[1] + 0xFFFFFFD8u; /* 027B6344 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B6344 */ cpu->r[1] = _t0; /* 027B6348 */ /* nop */ /* 027B634C */ cpu->r[0] = cpu->lr; /* 027B6350 */ _t1 = cpu->r[1] + 0x0000002Cu; /* 027B6350 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B6354 */ cpu->r[29] = cpu->r[5]; /* 027B6358 */ cpu->r[27] = cpu->r[3]; /* 027B635C */ _t2 = cpu->r[27] + 0x00000020u; /* 027B635C */ cpu->r[6] = rbrew_read32(cpu->mem, _t2); /* 027B6360 */ _t3 = cpu->r[6] + 0x00000014u; /* 027B6360 */ cpu->r[7] = rbrew_read32(cpu->mem, _t3); /* 027B6364 */ cpu->r[28] = cpu->r[4]; /* 027B6368 */ cpu->ctr = cpu->r[7]; /* 027B636C */ _t4 = cpu->r[28] + 0x00000000u; /* 027B636C */ cpu->r[26] = rbrew_read32(cpu->mem, _t4); /* 027B6370 */ cpu->r[3] = cpu->r[27] + 0x0000001Cu; /* 027B6374 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6378 */ cpu->r[31] = 0x10110000u; /* 027B637C */ _t5 = cpu->r[27] + 0x0000001Cu; /* 027B637C */ cpu->r[7] = rbrew_read32(cpu->mem, _t5); /* 027B6380 */ _t6 = cpu->r[31] + 0x00007399u; /* 027B6380 */ cpu->r[31] = rbrew_read8(cpu->mem, _t6); /* 027B6384 */ _t7 = cpu->r[7] + 0x00000000u; /* 027B6384 */ cpu->r[8] = rbrew_read8(cpu->mem, _t7); /* 027B6388 */ cpu->r[30] = 0x00000000u; /* 027B638C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027B6390 */ cpu->r[0] = 0x00080000u; /* 027B6394 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6394 */ _t9 = _t8 & 0x00000001u; /* 027B6394 */ if (_t9) goto L_027B63BC; else goto L_027B6398; L_027B6398: ; // 0x27b6398 /* 027B6398 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B639C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B63A0 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B63A4 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B63A4 */ _t11 = _t10 & 0x00000001u; /* 027B63A4 */ if (_t11) goto L_027B63B8; else goto L_027B63A8; L_027B63A8: ; // 0x27b63a8 /* 027B63A8 */ _t12 = cpu->r[7] + 0x00000000u; /* 027B63A8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t12); /* 027B63AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027B63B0 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B63B0 */ _t14 = _t13 & 0x00000001u; /* 027B63B0 */ if (_t14) goto L_027B63B4; else goto L_027B6398; L_027B63B4: ; // 0x27b63b4 /* 027B63B4 */ goto L_027B63BC; L_027B63B8: ; // 0x27b63b8 /* 027B63B8 */ cpu->r[30] = 0x00000000u; L_027B63BC: ; // 0x27b63bc /* 027B63BC */ _t15 = cpu->r[28] + 0x00000008u; /* 027B63BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t15); /* 027B63C0 */ _t16 = cpu->r[27] + 0x00000020u; /* 027B63C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16); /* 027B63C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]); /* 027B63C8 */ _t17 = cpu->r[10] + 0x00000014u; /* 027B63C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027B63CC */ _t18 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B63CC */ _t19 = _t18 & 0x00000001u; /* 027B63CC */ if (_t19) goto L_027B63D4; else goto L_027B63D0; L_027B63D0: ; // 0x27b63d0 /* 027B63D0 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu; L_027B63D4: ; // 0x27b63d4 /* 027B63D4 */ cpu->ctr = cpu->r[0]; /* 027B63D8 */ cpu->r[3] = cpu->r[27] + 0x0000001Cu; /* 027B63DC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B63E0 */ _t20 = cpu->r[27] + 0x0000001Cu; /* 027B63E0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20); /* 027B63E4 */ cpu->r[3] = cpu->r[26]; /* 027B63E8 */ cpu->r[5] = cpu->r[30]; /* 027B63EC */ cpu->r[6] = 0x00000000u; /* 027B63F0 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B63F4 */ _t21 = cpu->r[26] + cpu->r[30]; /* 027B63F4 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[31]); /* 027B63F8 */ cpu->r[5] = 0x10110000u; /* 027B63FC */ _t22 = cpu->r[28] + 0x00000000u; /* 027B63FC */ cpu->r[27] = rbrew_read32(cpu->mem, _t22); /* 027B6400 */ cpu->r[5] = cpu->r[5] + 0xFFFFB0B0u; /* 027B6404 */ _t23 = cpu->r[1] + 0x00000008u; /* 027B6404 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]); /* 027B6408 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B640C */ _t24 = cpu->r[1] + 0x0000000Cu; /* 027B640C */ rbrew_write32(cpu->mem, _t24, cpu->r[5]); /* 027B6410 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6410 */ _t26 = _t25 & 0x00000001u; /* 027B6410 */ if (_t26) goto L_027B6414; else goto L_027B6478; L_027B6414: ; // 0x27b6414 /* 027B6414 */ _t27 = cpu->r[28] + 0x00000004u; /* 027B6414 */ cpu->r[7] = rbrew_read32(cpu->mem, _t27); /* 027B6418 */ _t28 = cpu->r[7] + 0x00000014u; /* 027B6418 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28); /* 027B641C */ cpu->ctr = cpu->r[8]; /* 027B6420 */ cpu->r[3] = cpu->r[28]; /* 027B6424 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6428 */ _t29 = cpu->r[28] + 0x00000000u; /* 027B6428 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29); /* 027B642C */ _t30 = cpu->r[11] + 0x00000000u; /* 027B642C */ cpu->r[0] = rbrew_read8(cpu->mem, _t30); /* 027B6430 */ cpu->r[12] = 0x00000000u; /* 027B6434 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B6438 */ cpu->r[0] = 0x00080000u; /* 027B643C */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B643C */ _t32 = _t31 & 0x00000001u; /* 027B643C */ if (_t32) goto L_027B6464; else goto L_027B6440; L_027B6440: ; // 0x27b6440 /* 027B6440 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B6444 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027B6448 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027B644C */ _t33 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B644C */ _t34 = _t33 & 0x00000001u; /* 027B644C */ if (_t34) goto L_027B6460; else goto L_027B6450; L_027B6450: ; // 0x27b6450 /* 027B6450 */ _t35 = cpu->r[11] + 0x00000000u; /* 027B6450 */ cpu->r[10] = rbrew_read8(cpu->mem, _t35); /* 027B6454 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027B6458 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6458 */ _t37 = _t36 & 0x00000001u; /* 027B6458 */ if (_t37) goto L_027B645C; else goto L_027B6440; L_027B645C: ; // 0x27b645c /* 027B645C */ goto L_027B6464; L_027B6460: ; // 0x27b6460 /* 027B6460 */ cpu->r[12] = 0x00000000u; L_027B6464: ; // 0x27b6464 /* 027B6464 */ cpu->r[5] = cpu->r[12] + cpu->r[30]; /* 027B6468 */ cpu->r[30] = cpu->r[5] + 0x00000001u; /* 027B6468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B646C */ _t38 = cpu->r[1] + 0x0000000Cu; /* 027B646C */ cpu->r[5] = rbrew_read32(cpu->mem, _t38); /* 027B6470 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6470 */ _t40 = _t39 & 0x00000001u; /* 027B6470 */ if (_t40) goto L_027B6474; else goto L_027B6478; L_027B6474: ; // 0x27b6474 /* 027B6474 */ cpu->r[30] = 0x00000000u; L_027B6478: ; // 0x27b6478 /* 027B6478 */ _t41 = cpu->r[5] + 0x00000014u; /* 027B6478 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41); /* 027B647C */ cpu->ctr = cpu->r[7]; /* 027B6480 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B6484 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6488 */ _t42 = cpu->r[1] + 0x00000008u; /* 027B6488 */ cpu->r[6] = rbrew_read32(cpu->mem, _t42); /* 027B648C */ _t43 = cpu->r[6] + 0x00000000u; /* 027B648C */ cpu->r[0] = rbrew_read8(cpu->mem, _t43); /* 027B6490 */ cpu->r[8] = 0x00080000u; /* 027B6494 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B6498 */ cpu->r[29] = 0x00000000u; /* 027B649C */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B649C */ _t45 = _t44 & 0x00000001u; /* 027B649C */ if (_t45) goto L_027B64C4; else goto L_027B64A0; L_027B64A0: ; // 0x27b64a0 /* 027B64A0 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027B64A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]); /* 027B64A8 */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027B64AC */ _t46 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B64AC */ _t47 = _t46 & 0x00000001u; /* 027B64AC */ if (_t47) goto L_027B64C0; else goto L_027B64B0; L_027B64B0: ; // 0x27b64b0 /* 027B64B0 */ _t48 = cpu->r[6] + 0x00000000u; /* 027B64B0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t48); /* 027B64B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027B64B8 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B64B8 */ _t50 = _t49 & 0x00000001u; /* 027B64B8 */ if (_t50) goto L_027B64BC; else goto L_027B64A0; L_027B64BC: ; // 0x27b64bc /* 027B64BC */ goto L_027B64C4; L_027B64C0: ; // 0x27b64c0 /* 027B64C0 */ cpu->r[29] = 0x00000000u; L_027B64C4: ; // 0x27b64c4 /* 027B64C4 */ _t51 = cpu->r[28] + 0x00000008u; /* 027B64C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t51); /* 027B64C8 */ cpu->r[12] = cpu->r[11] - cpu->r[30]; /* 027B64CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]); /* 027B64D0 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B64D0 */ _t53 = _t52 & 0x00000001u; /* 027B64D0 */ if (_t53) goto L_027B64D8; else goto L_027B64D4; L_027B64D4: ; // 0x27b64d4 /* 027B64D4 */ cpu->r[29] = cpu->r[12] + 0xFFFFFFFFu; L_027B64D8: ; // 0x27b64d8 /* 027B64D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B64DC */ _t54 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B64DC */ _t55 = _t54 & 0x00000001u; /* 027B64DC */ if (_t55) goto L_027B64E0; else goto L_027B6514; L_027B64E0: ; // 0x27b64e0 /* 027B64E0 */ _t56 = cpu->r[1] + 0x0000000Cu; /* 027B64E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t56); /* 027B64E4 */ _t57 = cpu->r[12] + 0x00000014u; /* 027B64E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t57); /* 027B64E8 */ cpu->ctr = cpu->r[5]; /* 027B64EC */ cpu->r[28] = cpu->r[27] + cpu->r[30]; /* 027B64F0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B64F4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B64F8 */ _t58 = cpu->r[1] + 0x00000008u; /* 027B64F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t58); /* 027B64FC */ cpu->r[6] = 0x00000000u; /* 027B6500 */ cpu->r[5] = cpu->r[29]; /* 027B6504 */ cpu->r[3] = cpu->r[28]; /* 027B6508 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B650C */ cpu->r[6] = cpu->r[30] + cpu->r[29]; /* 027B6510 */ _t59 = cpu->r[27] + cpu->r[6]; /* 027B6510 */ rbrew_write8(cpu->mem, _t59, (uint8_t)cpu->r[31]); L_027B6514: ; // 0x27b6514 /* 027B6514 */ /* nop */ /* 027B6518 */ _t60 = cpu->r[1] + 0x0000002Cu; /* 027B6518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60); /* 027B651C */ cpu->lr = cpu->r[0]; /* 027B6520 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B6524 */ return; } // fn_027B6528 @ 0x27b6528 void Gambit_fn_027B6528(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_027B6528: ; // 0x27b6528 /* 027B6528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B652C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B652C */ _t1 = _t0 & 0x00000001u; /* 027B652C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B652C */ goto L_027B6530; L_027B6530: ; // 0x27b6530 /* 027B6530 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B6530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B6534 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6534 */ _t3 = _t2 & 0x00000001u; /* 027B6534 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B6534 */ goto L_027B6538; L_027B6538: ; // 0x27b6538 /* 027B6538 */ 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_027B653C @ 0x27b653c void Gambit_fn_027B653C(CPUState* cpu) { L_027B653C: ; // 0x27b653c /* 027B653C */ return; } // fn_027B6540 @ 0x27b6540 void Gambit_fn_027B6540(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_027B6540: ; // 0x27b6540 /* 027B6540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6544 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6544 */ _t1 = _t0 & 0x00000001u; /* 027B6544 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B6544 */ goto L_027B6548; L_027B6548: ; // 0x27b6548 /* 027B6548 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B6548 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B654C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B654C */ _t3 = _t2 & 0x00000001u; /* 027B654C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B654C */ goto L_027B6550; L_027B6550: ; // 0x27b6550 /* 027B6550 */ 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_027B6554 @ 0x27b6554 void Gambit_fn_027B6554(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027B6554: ; // 0x27b6554 /* 027B6554 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B6554 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027B6558 */ _t1 = cpu->r[3] + 0x00000008u; /* 027B6558 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027B655C */ cpu->r[12] = cpu->r[11] + cpu->r[12]; /* 027B6560 */ cpu->r[11] = 0x10110000u; /* 027B6564 */ _t2 = cpu->r[11] + 0x00007399u; /* 027B6564 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027B6568 */ _t3 = cpu->r[12] + 0xFFFFFFFFu; /* 027B6568 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]); /* 027B656C */ return; } // fn_027B6570 @ 0x27b6570 void Gambit_fn_027B6570(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_027B6570: ; // 0x27b6570 /* 027B6570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6574 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6574 */ _t1 = _t0 & 0x00000001u; /* 027B6574 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B6574 */ goto L_027B6578; L_027B6578: ; // 0x27b6578 /* 027B6578 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B6578 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B657C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B657C */ _t3 = _t2 & 0x00000001u; /* 027B657C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B657C */ goto L_027B6580; L_027B6580: ; // 0x27b6580 /* 027B6580 */ 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_027B6584 @ 0x27b6584 void Gambit_fn_027B6584(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_027B6584: ; // 0x27b6584 /* 027B6584 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6588 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6588 */ _t1 = _t0 & 0x00000001u; /* 027B6588 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B6588 */ goto L_027B658C; L_027B658C: ; // 0x27b658c /* 027B658C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B658C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B6590 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6590 */ _t3 = _t2 & 0x00000001u; /* 027B6590 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B6590 */ goto L_027B6594; L_027B6594: ; // 0x27b6594 /* 027B6594 */ 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_027B6598 @ 0x27b6598 void Gambit_fn_027B6598(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_027B6598: ; // 0x27b6598 /* 027B6598 */ cpu->r[0] = cpu->lr; /* 027B659C */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B659C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B659C */ cpu->r[1] = _t0; /* 027B65A0 */ _t1 = cpu->r[1] + 0x00000014u; /* 027B65A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B65A4 */ _t2 = cpu->r[1] + 0x00000018u; /* 027B65A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B65A8 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027B65A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B65AC */ _t4 = cpu->r[1] + 0x00000024u; /* 027B65AC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B65B0 */ cpu->r[0] = 0x10110000u; /* 027B65B4 */ _t5 = cpu->r[4] + 0x00000000u; /* 027B65B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t5); /* 027B65B8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0B0u; /* 027B65BC */ _t6 = cpu->r[1] + 0x0000000Cu; /* 027B65BC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027B65C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B65C4 */ _t7 = cpu->r[1] + 0x00000008u; /* 027B65C4 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]); /* 027B65C8 */ Gambit_fn_027B653C(cpu); /* 027B65CC */ cpu->r[31] = 0x10110000u; /* 027B65D0 */ _t8 = cpu->r[1] + 0x00000008u; /* 027B65D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8); /* 027B65D4 */ _t9 = cpu->r[31] + 0x00007399u; /* 027B65D4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t9); /* 027B65D8 */ _t10 = cpu->r[10] + 0x00000000u; /* 027B65D8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t10); /* 027B65DC */ cpu->r[30] = 0x00000000u; /* 027B65E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027B65E4 */ cpu->r[0] = 0x00080000u; /* 027B65E8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B65E8 */ _t12 = _t11 & 0x00000001u; /* 027B65E8 */ if (_t12) goto L_027B6610; else goto L_027B65EC; L_027B65EC: ; // 0x27b65ec /* 027B65EC */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B65F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B65F4 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027B65F8 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B65F8 */ _t14 = _t13 & 0x00000001u; /* 027B65F8 */ if (_t14) goto L_027B660C; else goto L_027B65FC; L_027B65FC: ; // 0x27b65fc /* 027B65FC */ _t15 = cpu->r[10] + 0x00000000u; /* 027B65FC */ cpu->r[7] = rbrew_read8(cpu->mem, _t15); /* 027B6600 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027B6604 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6604 */ _t17 = _t16 & 0x00000001u; /* 027B6604 */ if (_t17) goto L_027B6608; else goto L_027B65EC; L_027B6608: ; // 0x27b6608 /* 027B6608 */ goto L_027B6610; L_027B660C: ; // 0x27b660c /* 027B660C */ cpu->r[30] = 0x00000000u; L_027B6610: ; // 0x27b6610 /* 027B6610 */ _t18 = cpu->r[4] + 0x00000008u; /* 027B6610 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18); /* 027B6614 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027B6614 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19); /* 027B6618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027B661C */ _t20 = cpu->r[8] + 0x00000014u; /* 027B661C */ cpu->r[9] = rbrew_read32(cpu->mem, _t20); /* 027B6620 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6620 */ _t22 = _t21 & 0x00000001u; /* 027B6620 */ if (_t22) goto L_027B6628; else goto L_027B6624; L_027B6624: ; // 0x27b6624 /* 027B6624 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027B6628: ; // 0x27b6628 /* 027B6628 */ cpu->ctr = cpu->r[9]; /* 027B662C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B6630 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6634 */ _t23 = cpu->r[1] + 0x00000008u; /* 027B6634 */ cpu->r[4] = rbrew_read32(cpu->mem, _t23); /* 027B6638 */ cpu->r[6] = 0x00000000u; /* 027B663C */ cpu->r[5] = cpu->r[30]; /* 027B6640 */ cpu->r[3] = cpu->r[29]; /* 027B6644 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B6648 */ _t24 = cpu->r[29] + cpu->r[30]; /* 027B6648 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[31]); /* 027B664C */ _t25 = cpu->r[1] + 0x00000014u; /* 027B664C */ cpu->r[29] = rbrew_read32(cpu->mem, _t25); /* 027B6650 */ _t26 = cpu->r[1] + 0x00000024u; /* 027B6650 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); /* 027B6654 */ _t27 = cpu->r[1] + 0x00000018u; /* 027B6654 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27); /* 027B6658 */ cpu->lr = cpu->r[0]; /* 027B665C */ _t28 = cpu->r[1] + 0x0000001Cu; /* 027B665C */ cpu->r[31] = rbrew_read32(cpu->mem, _t28); /* 027B6660 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B6664 */ return; } // fn_027B659C @ 0x27b659c void Gambit_fn_027B659C(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_027B659C: ; // 0x27b659c /* 027B659C */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B659C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B659C */ cpu->r[1] = _t0; /* 027B65A0 */ _t1 = cpu->r[1] + 0x00000014u; /* 027B65A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B65A4 */ _t2 = cpu->r[1] + 0x00000018u; /* 027B65A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B65A8 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027B65A8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B65AC */ _t4 = cpu->r[1] + 0x00000024u; /* 027B65AC */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B65B0 */ cpu->r[0] = 0x10110000u; /* 027B65B4 */ _t5 = cpu->r[4] + 0x00000000u; /* 027B65B4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t5); /* 027B65B8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0B0u; /* 027B65BC */ _t6 = cpu->r[1] + 0x0000000Cu; /* 027B65BC */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027B65C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B65C4 */ _t7 = cpu->r[1] + 0x00000008u; /* 027B65C4 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]); /* 027B65C8 */ Gambit_fn_027B653C(cpu); /* 027B65CC */ cpu->r[31] = 0x10110000u; /* 027B65D0 */ _t8 = cpu->r[1] + 0x00000008u; /* 027B65D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8); /* 027B65D4 */ _t9 = cpu->r[31] + 0x00007399u; /* 027B65D4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t9); /* 027B65D8 */ _t10 = cpu->r[10] + 0x00000000u; /* 027B65D8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t10); /* 027B65DC */ cpu->r[30] = 0x00000000u; /* 027B65E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027B65E4 */ cpu->r[0] = 0x00080000u; /* 027B65E8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B65E8 */ _t12 = _t11 & 0x00000001u; /* 027B65E8 */ if (_t12) goto L_027B6610; else goto L_027B65EC; L_027B65EC: ; // 0x27b65ec /* 027B65EC */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B65F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B65F4 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027B65F8 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B65F8 */ _t14 = _t13 & 0x00000001u; /* 027B65F8 */ if (_t14) goto L_027B660C; else goto L_027B65FC; L_027B65FC: ; // 0x27b65fc /* 027B65FC */ _t15 = cpu->r[10] + 0x00000000u; /* 027B65FC */ cpu->r[7] = rbrew_read8(cpu->mem, _t15); /* 027B6600 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027B6604 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6604 */ _t17 = _t16 & 0x00000001u; /* 027B6604 */ if (_t17) goto L_027B6608; else goto L_027B65EC; L_027B6608: ; // 0x27b6608 /* 027B6608 */ goto L_027B6610; L_027B660C: ; // 0x27b660c /* 027B660C */ cpu->r[30] = 0x00000000u; L_027B6610: ; // 0x27b6610 /* 027B6610 */ _t18 = cpu->r[4] + 0x00000008u; /* 027B6610 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18); /* 027B6614 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027B6614 */ cpu->r[8] = rbrew_read32(cpu->mem, _t19); /* 027B6618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027B661C */ _t20 = cpu->r[8] + 0x00000014u; /* 027B661C */ cpu->r[9] = rbrew_read32(cpu->mem, _t20); /* 027B6620 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6620 */ _t22 = _t21 & 0x00000001u; /* 027B6620 */ if (_t22) goto L_027B6628; else goto L_027B6624; L_027B6624: ; // 0x27b6624 /* 027B6624 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027B6628: ; // 0x27b6628 /* 027B6628 */ cpu->ctr = cpu->r[9]; /* 027B662C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B6630 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6634 */ _t23 = cpu->r[1] + 0x00000008u; /* 027B6634 */ cpu->r[4] = rbrew_read32(cpu->mem, _t23); /* 027B6638 */ cpu->r[6] = 0x00000000u; /* 027B663C */ cpu->r[5] = cpu->r[30]; /* 027B6640 */ cpu->r[3] = cpu->r[29]; /* 027B6644 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B6648 */ _t24 = cpu->r[29] + cpu->r[30]; /* 027B6648 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[31]); /* 027B664C */ _t25 = cpu->r[1] + 0x00000014u; /* 027B664C */ cpu->r[29] = rbrew_read32(cpu->mem, _t25); /* 027B6650 */ _t26 = cpu->r[1] + 0x00000024u; /* 027B6650 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); /* 027B6654 */ _t27 = cpu->r[1] + 0x00000018u; /* 027B6654 */ cpu->r[30] = rbrew_read32(cpu->mem, _t27); /* 027B6658 */ cpu->lr = cpu->r[0]; /* 027B665C */ _t28 = cpu->r[1] + 0x0000001Cu; /* 027B665C */ cpu->r[31] = rbrew_read32(cpu->mem, _t28); /* 027B6660 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B6664 */ return; } // fn_027B6668 @ 0x27b6668 void Gambit_fn_027B6668(CPUState* cpu) { uint32_t _t0, _t1; L_027B6668: ; // 0x27b6668 /* 027B6668 */ _t0 = cpu->r[3] + 0x00000004u; /* 027B6668 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B666C */ _t1 = cpu->r[12] + 0x0000003Cu; /* 027B666C */ cpu->r[0] = rbrew_read32(cpu->mem, _t1); /* 027B6670 */ cpu->ctr = cpu->r[0]; /* 027B6674 */ rbrew_dispatch(cpu, cpu->ctr); return; } // fn_027B6678 @ 0x27b6678 void Gambit_fn_027B6678(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027B6678: ; // 0x27b6678 /* 027B6678 */ cpu->r[9] = 0x101D0000u; /* 027B667C */ _t0 = cpu->r[9] + 0xFFFFE328u; /* 027B667C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027B667C */ cpu->r[9] = _t0; /* 027B6680 */ cpu->r[12] = 0x101D0000u; /* 027B6684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B6688 */ cpu->r[12] = cpu->r[12] + 0x000014D8u; /* 027B668C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B668C */ _t2 = _t1 & 0x00000001u; /* 027B668C */ if (_t2) goto L_027B6690; else goto L_027B66A4; L_027B6690: ; // 0x27b6690 /* 027B6690 */ cpu->r[7] = 0x10110000u; /* 027B6694 */ cpu->r[0] = 0x00000001u; /* 027B6698 */ cpu->r[7] = cpu->r[7] + 0xFFFFB110u; /* 027B669C */ _t3 = cpu->r[9] + 0x00000000u; /* 027B669C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B66A0 */ _t4 = cpu->r[12] + 0x00000000u; /* 027B66A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]); L_027B66A4: ; // 0x27b66a4 /* 027B66A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]); /* 027B66A8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B66A8 */ _t6 = _t5 & 0x00000001u; /* 027B66A8 */ if (_t6) goto L_027B66AC; else goto L_027B66B4; L_027B66AC: ; // 0x27b66ac /* 027B66AC */ cpu->r[3] = 0x00000001u; /* 027B66B0 */ return; L_027B66B4: ; // 0x27b66b4 /* 027B66B4 */ cpu->r[7] = 0x101D0000u; /* 027B66B8 */ _t7 = cpu->r[7] + 0xFFFFE324u; /* 027B66B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027B66B8 */ cpu->r[7] = _t7; /* 027B66BC */ cpu->r[11] = 0x101D0000u; /* 027B66C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B66C4 */ cpu->r[11] = cpu->r[11] + 0x000014D4u; /* 027B66C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B66C8 */ _t9 = _t8 & 0x00000001u; /* 027B66C8 */ if (_t9) goto L_027B66CC; else goto L_027B66E0; L_027B66CC: ; // 0x27b66cc /* 027B66CC */ cpu->r[0] = 0x10110000u; /* 027B66D0 */ cpu->r[9] = 0x00000001u; /* 027B66D4 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0A0u; /* 027B66D8 */ _t10 = cpu->r[7] + 0x00000000u; /* 027B66D8 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027B66DC */ _t11 = cpu->r[11] + 0x00000000u; /* 027B66DC */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); L_027B66E0: ; // 0x27b66e0 /* 027B66E0 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11]; /* 027B66E4 */ cpu->r[8] = rbrew_clz32(cpu->r[0]); /* 027B66E8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu); /* 027B66EC */ return; } // fn_027B66F0 @ 0x27b66f0 void Gambit_fn_027B66F0(CPUState* cpu) { L_027B66F0: ; // 0x27b66f0 /* 027B66F0 */ cpu->r[3] = 0x00000000u; /* 027B66F4 */ return; } // fn_027B66F8 @ 0x27b66f8 void Gambit_fn_027B66F8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027B66F8: ; // 0x27b66f8 /* 027B66F8 */ cpu->r[9] = 0x101D0000u; /* 027B66FC */ _t0 = cpu->r[9] + 0xFFFFE32Cu; /* 027B66FC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027B66FC */ cpu->r[9] = _t0; /* 027B6700 */ cpu->r[12] = 0x101D0000u; /* 027B6704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B6708 */ cpu->r[12] = cpu->r[12] + 0x000014DCu; /* 027B670C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B670C */ _t2 = _t1 & 0x00000001u; /* 027B670C */ if (_t2) goto L_027B6710; else goto L_027B6724; L_027B6710: ; // 0x27b6710 /* 027B6710 */ cpu->r[7] = 0x10110000u; /* 027B6714 */ cpu->r[0] = 0x00000001u; /* 027B6718 */ cpu->r[7] = cpu->r[7] + 0xFFFFB110u; /* 027B671C */ _t3 = cpu->r[9] + 0x00000000u; /* 027B671C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B6720 */ _t4 = cpu->r[12] + 0x00000000u; /* 027B6720 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]); L_027B6724: ; // 0x27b6724 /* 027B6724 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]); /* 027B6728 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6728 */ _t6 = _t5 & 0x00000001u; /* 027B6728 */ if (_t6) goto L_027B672C; else goto L_027B6734; L_027B672C: ; // 0x27b672c /* 027B672C */ cpu->r[3] = 0x00000001u; /* 027B6730 */ return; L_027B6734: ; // 0x27b6734 /* 027B6734 */ cpu->r[7] = 0x101D0000u; /* 027B6738 */ _t7 = cpu->r[7] + 0xFFFFE324u; /* 027B6738 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027B6738 */ cpu->r[7] = _t7; /* 027B673C */ cpu->r[11] = 0x101D0000u; /* 027B6740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B6744 */ cpu->r[11] = cpu->r[11] + 0x000014D4u; /* 027B6748 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6748 */ _t9 = _t8 & 0x00000001u; /* 027B6748 */ if (_t9) goto L_027B674C; else goto L_027B6760; L_027B674C: ; // 0x27b674c /* 027B674C */ cpu->r[0] = 0x10110000u; /* 027B6750 */ cpu->r[9] = 0x00000001u; /* 027B6754 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0A0u; /* 027B6758 */ _t10 = cpu->r[7] + 0x00000000u; /* 027B6758 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027B675C */ _t11 = cpu->r[11] + 0x00000000u; /* 027B675C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); L_027B6760: ; // 0x27b6760 /* 027B6760 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11]; /* 027B6764 */ cpu->r[8] = rbrew_clz32(cpu->r[0]); /* 027B6768 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu); /* 027B676C */ return; } // fn_027B6770 @ 0x27b6770 void Gambit_fn_027B6770(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027B6770: ; // 0x27b6770 /* 027B6770 */ cpu->r[9] = 0x101D0000u; /* 027B6774 */ _t0 = cpu->r[9] + 0xFFFFE334u; /* 027B6774 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027B6774 */ cpu->r[9] = _t0; /* 027B6778 */ cpu->r[12] = 0x101D0000u; /* 027B677C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B6780 */ cpu->r[12] = cpu->r[12] + 0x000014E4u; /* 027B6784 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6784 */ _t2 = _t1 & 0x00000001u; /* 027B6784 */ if (_t2) goto L_027B6788; else goto L_027B679C; L_027B6788: ; // 0x27b6788 /* 027B6788 */ cpu->r[7] = 0x10110000u; /* 027B678C */ cpu->r[0] = 0x00000001u; /* 027B6790 */ cpu->r[7] = cpu->r[7] + 0xFFFFB110u; /* 027B6794 */ _t3 = cpu->r[9] + 0x00000000u; /* 027B6794 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B6798 */ _t4 = cpu->r[12] + 0x00000000u; /* 027B6798 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]); L_027B679C: ; // 0x27b679c /* 027B679C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]); /* 027B67A0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B67A0 */ _t6 = _t5 & 0x00000001u; /* 027B67A0 */ if (_t6) goto L_027B67A4; else goto L_027B67AC; L_027B67A4: ; // 0x27b67a4 /* 027B67A4 */ cpu->r[3] = 0x00000001u; /* 027B67A8 */ return; L_027B67AC: ; // 0x27b67ac /* 027B67AC */ cpu->r[7] = 0x101D0000u; /* 027B67B0 */ _t7 = cpu->r[7] + 0xFFFFE324u; /* 027B67B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027B67B0 */ cpu->r[7] = _t7; /* 027B67B4 */ cpu->r[11] = 0x101D0000u; /* 027B67B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B67BC */ cpu->r[11] = cpu->r[11] + 0x000014D4u; /* 027B67C0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B67C0 */ _t9 = _t8 & 0x00000001u; /* 027B67C0 */ if (_t9) goto L_027B67C4; else goto L_027B67D8; L_027B67C4: ; // 0x27b67c4 /* 027B67C4 */ cpu->r[0] = 0x10110000u; /* 027B67C8 */ cpu->r[9] = 0x00000001u; /* 027B67CC */ cpu->r[0] = cpu->r[0] + 0xFFFFB0A0u; /* 027B67D0 */ _t10 = cpu->r[7] + 0x00000000u; /* 027B67D0 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027B67D4 */ _t11 = cpu->r[11] + 0x00000000u; /* 027B67D4 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); L_027B67D8: ; // 0x27b67d8 /* 027B67D8 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11]; /* 027B67DC */ cpu->r[8] = rbrew_clz32(cpu->r[0]); /* 027B67E0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu); /* 027B67E4 */ return; } // fn_027B67E8 @ 0x27b67e8 void Gambit_fn_027B67E8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027B67E8: ; // 0x27b67e8 /* 027B67E8 */ cpu->r[9] = 0x101D0000u; /* 027B67EC */ _t0 = cpu->r[9] + 0xFFFFE338u; /* 027B67EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027B67EC */ cpu->r[9] = _t0; /* 027B67F0 */ cpu->r[12] = 0x101D0000u; /* 027B67F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B67F8 */ cpu->r[12] = cpu->r[12] + 0x000014E8u; /* 027B67FC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B67FC */ _t2 = _t1 & 0x00000001u; /* 027B67FC */ if (_t2) goto L_027B6800; else goto L_027B6814; L_027B6800: ; // 0x27b6800 /* 027B6800 */ cpu->r[7] = 0x10110000u; /* 027B6804 */ cpu->r[0] = 0x00000001u; /* 027B6808 */ cpu->r[7] = cpu->r[7] + 0xFFFFB110u; /* 027B680C */ _t3 = cpu->r[9] + 0x00000000u; /* 027B680C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B6810 */ _t4 = cpu->r[12] + 0x00000000u; /* 027B6810 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]); L_027B6814: ; // 0x27b6814 /* 027B6814 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]); /* 027B6818 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6818 */ _t6 = _t5 & 0x00000001u; /* 027B6818 */ if (_t6) goto L_027B681C; else goto L_027B6824; L_027B681C: ; // 0x27b681c /* 027B681C */ cpu->r[3] = 0x00000001u; /* 027B6820 */ return; L_027B6824: ; // 0x27b6824 /* 027B6824 */ cpu->r[7] = 0x101D0000u; /* 027B6828 */ _t7 = cpu->r[7] + 0xFFFFE324u; /* 027B6828 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027B6828 */ cpu->r[7] = _t7; /* 027B682C */ cpu->r[11] = 0x101D0000u; /* 027B6830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B6834 */ cpu->r[11] = cpu->r[11] + 0x000014D4u; /* 027B6838 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6838 */ _t9 = _t8 & 0x00000001u; /* 027B6838 */ if (_t9) goto L_027B683C; else goto L_027B6850; L_027B683C: ; // 0x27b683c /* 027B683C */ cpu->r[0] = 0x10110000u; /* 027B6840 */ cpu->r[9] = 0x00000001u; /* 027B6844 */ cpu->r[0] = cpu->r[0] + 0xFFFFB0A0u; /* 027B6848 */ _t10 = cpu->r[7] + 0x00000000u; /* 027B6848 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027B684C */ _t11 = cpu->r[11] + 0x00000000u; /* 027B684C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); L_027B6850: ; // 0x27b6850 /* 027B6850 */ cpu->r[0] = cpu->r[4] ^ cpu->r[11]; /* 027B6854 */ cpu->r[8] = rbrew_clz32(cpu->r[0]); /* 027B6858 */ cpu->r[3] = rbrew_rlwinm(cpu->r[8], 0x0000001Bu, 0x00000018u, 0x0000001Fu); /* 027B685C */ return; } // fn_027B6860 @ 0x27b6860 void Gambit_fn_027B6860(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35; L_027B6860: ; // 0x27b6860 /* 027B6860 */ cpu->r[0] = cpu->lr; /* 027B6864 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B6864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B6864 */ cpu->r[1] = _t0; /* 027B6868 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B6868 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027B686C */ cpu->r[28] = cpu->r[4]; /* 027B6870 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B6870 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B6874 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027B6874 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B6878 */ cpu->r[31] = cpu->r[3]; /* 027B6878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B687C */ _t4 = cpu->r[1] + 0x00000010u; /* 027B687C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027B6880 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B6880 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B6884 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6884 */ _t7 = _t6 & 0x00000001u; /* 027B6884 */ if (_t7) goto L_027B6928; else goto L_027B6888; L_027B6888: ; // 0x27b6888 /* 027B6888 */ _t8 = cpu->r[31] + 0x00000008u; /* 027B6888 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8); /* 027B688C */ cpu->r[0] = 0x10110000u; /* 027B6890 */ cpu->r[0] = cpu->r[0] + 0xFFFFB248u; /* 027B6894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B6898 */ _t9 = cpu->r[31] + 0x00000004u; /* 027B6898 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 027B689C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B689C */ _t11 = _t10 & 0x00000001u; /* 027B689C */ if (_t11) goto L_027B6918; else goto L_027B68A0; L_027B68A0: ; // 0x27b68a0 /* 027B68A0 */ _t12 = cpu->r[31] + 0x0000000Cu; /* 027B68A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12); /* 027B68A4 */ cpu->r[29] = 0x00000000u; /* 027B68A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]); /* 027B68AC */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B68AC */ _t14 = _t13 & 0x00000001u; /* 027B68AC */ if (_t14) goto L_027B68B0; else goto L_027B68E4; L_027B68B0: ; // 0x27b68b0 /* 027B68B0 */ cpu->r[30] = 0x00000000u; L_027B68B4: ; // 0x27b68b4 /* 027B68B4 */ cpu->r[3] = cpu->r[4] + cpu->r[30]; /* 027B68B8 */ _t15 = cpu->r[3] + 0x00000004u; /* 027B68B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15); /* 027B68BC */ _t16 = cpu->r[8] + 0x0000000Cu; /* 027B68BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B68C0 */ cpu->ctr = cpu->r[0]; /* 027B68C4 */ cpu->r[4] = 0x00000002u; /* 027B68C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B68CC */ _t17 = cpu->r[31] + 0x0000000Cu; /* 027B68CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t17); /* 027B68D0 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027B68D4 */ cpu->r[30] = cpu->r[30] + 0x0000002Cu; /* 027B68D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]); /* 027B68DC */ _t18 = cpu->r[31] + 0x00000008u; /* 027B68DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t18); /* 027B68E0 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B68E0 */ _t20 = _t19 & 0x00000001u; /* 027B68E0 */ if (_t20) goto L_027B68B4; else goto L_027B68E4; L_027B68E4: ; // 0x27b68e4 /* 027B68E4 */ cpu->r[3] = 0x101D0000u; /* 027B68E8 */ _t21 = cpu->r[3] + 0xFFFF98F0u; /* 027B68E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21); /* 027B68EC */ Gambit_fn_02826B90(cpu); /* 027B68F0 */ _t22 = cpu->r[3] + 0x0000000Cu; /* 027B68F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22); /* 027B68F4 */ _t23 = cpu->r[11] + 0x0000003Cu; /* 027B68F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B68F8 */ cpu->ctr = cpu->r[0]; /* 027B68FC */ _t24 = cpu->r[31] + 0x00000008u; /* 027B68FC */ cpu->r[4] = rbrew_read32(cpu->mem, _t24); /* 027B6900 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6904 */ cpu->r[0] = 0x00000000u; /* 027B6908 */ _t25 = cpu->r[31] + 0x00000010u; /* 027B6908 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]); /* 027B690C */ _t26 = cpu->r[31] + 0x00000008u; /* 027B690C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]); /* 027B6910 */ _t27 = cpu->r[31] + 0x00000014u; /* 027B6910 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]); /* 027B6914 */ _t28 = cpu->r[31] + 0x0000000Cu; /* 027B6914 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]); L_027B6918: ; // 0x27b6918 /* 027B6918 */ cpu->r[6] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B6918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u); /* 027B691C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B691C */ _t30 = _t29 & 0x00000001u; /* 027B691C */ if (_t30) goto L_027B6928; else goto L_027B6920; L_027B6920: ; // 0x27b6920 /* 027B6920 */ cpu->r[3] = cpu->r[31]; /* 027B6924 */ Gambit_fn_02801BB0(cpu); L_027B6928: ; // 0x27b6928 /* 027B6928 */ _t31 = cpu->r[1] + 0x00000008u; /* 027B6928 */ cpu->r[28] = rbrew_read32(cpu->mem, _t31); /* 027B692C */ _t32 = cpu->r[1] + 0x0000000Cu; /* 027B692C */ cpu->r[29] = rbrew_read32(cpu->mem, _t32); /* 027B6930 */ _t33 = cpu->r[1] + 0x0000001Cu; /* 027B6930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33); /* 027B6934 */ _t34 = cpu->r[1] + 0x00000010u; /* 027B6934 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34); /* 027B6938 */ cpu->lr = cpu->r[0]; /* 027B693C */ _t35 = cpu->r[1] + 0x00000014u; /* 027B693C */ cpu->r[31] = rbrew_read32(cpu->mem, _t35); /* 027B6940 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B6944 */ return; } // fn_027B6864 @ 0x27b6864 void Gambit_fn_027B6864(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35; L_027B6864: ; // 0x27b6864 /* 027B6864 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B6864 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B6864 */ cpu->r[1] = _t0; /* 027B6868 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B6868 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027B686C */ cpu->r[28] = cpu->r[4]; /* 027B6870 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B6870 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B6874 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027B6874 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B6878 */ cpu->r[31] = cpu->r[3]; /* 027B6878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B687C */ _t4 = cpu->r[1] + 0x00000010u; /* 027B687C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027B6880 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B6880 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B6884 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6884 */ _t7 = _t6 & 0x00000001u; /* 027B6884 */ if (_t7) goto L_027B6928; else goto L_027B6888; L_027B6888: ; // 0x27b6888 /* 027B6888 */ _t8 = cpu->r[31] + 0x00000008u; /* 027B6888 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8); /* 027B688C */ cpu->r[0] = 0x10110000u; /* 027B6890 */ cpu->r[0] = cpu->r[0] + 0xFFFFB248u; /* 027B6894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B6898 */ _t9 = cpu->r[31] + 0x00000004u; /* 027B6898 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 027B689C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B689C */ _t11 = _t10 & 0x00000001u; /* 027B689C */ if (_t11) goto L_027B6918; else goto L_027B68A0; L_027B68A0: ; // 0x27b68a0 /* 027B68A0 */ _t12 = cpu->r[31] + 0x0000000Cu; /* 027B68A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t12); /* 027B68A4 */ cpu->r[29] = 0x00000000u; /* 027B68A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]); /* 027B68AC */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B68AC */ _t14 = _t13 & 0x00000001u; /* 027B68AC */ if (_t14) goto L_027B68B0; else goto L_027B68E4; L_027B68B0: ; // 0x27b68b0 /* 027B68B0 */ cpu->r[30] = 0x00000000u; L_027B68B4: ; // 0x27b68b4 /* 027B68B4 */ cpu->r[3] = cpu->r[4] + cpu->r[30]; /* 027B68B8 */ _t15 = cpu->r[3] + 0x00000004u; /* 027B68B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t15); /* 027B68BC */ _t16 = cpu->r[8] + 0x0000000Cu; /* 027B68BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B68C0 */ cpu->ctr = cpu->r[0]; /* 027B68C4 */ cpu->r[4] = 0x00000002u; /* 027B68C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B68CC */ _t17 = cpu->r[31] + 0x0000000Cu; /* 027B68CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t17); /* 027B68D0 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027B68D4 */ cpu->r[30] = cpu->r[30] + 0x0000002Cu; /* 027B68D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[9]); /* 027B68DC */ _t18 = cpu->r[31] + 0x00000008u; /* 027B68DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t18); /* 027B68E0 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B68E0 */ _t20 = _t19 & 0x00000001u; /* 027B68E0 */ if (_t20) goto L_027B68B4; else goto L_027B68E4; L_027B68E4: ; // 0x27b68e4 /* 027B68E4 */ cpu->r[3] = 0x101D0000u; /* 027B68E8 */ _t21 = cpu->r[3] + 0xFFFF98F0u; /* 027B68E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21); /* 027B68EC */ Gambit_fn_02826B90(cpu); /* 027B68F0 */ _t22 = cpu->r[3] + 0x0000000Cu; /* 027B68F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22); /* 027B68F4 */ _t23 = cpu->r[11] + 0x0000003Cu; /* 027B68F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B68F8 */ cpu->ctr = cpu->r[0]; /* 027B68FC */ _t24 = cpu->r[31] + 0x00000008u; /* 027B68FC */ cpu->r[4] = rbrew_read32(cpu->mem, _t24); /* 027B6900 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6904 */ cpu->r[0] = 0x00000000u; /* 027B6908 */ _t25 = cpu->r[31] + 0x00000010u; /* 027B6908 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]); /* 027B690C */ _t26 = cpu->r[31] + 0x00000008u; /* 027B690C */ rbrew_write32(cpu->mem, _t26, cpu->r[0]); /* 027B6910 */ _t27 = cpu->r[31] + 0x00000014u; /* 027B6910 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]); /* 027B6914 */ _t28 = cpu->r[31] + 0x0000000Cu; /* 027B6914 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]); L_027B6918: ; // 0x27b6918 /* 027B6918 */ cpu->r[6] = rbrew_rlwinm(cpu->r[28], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B6918 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u); /* 027B691C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B691C */ _t30 = _t29 & 0x00000001u; /* 027B691C */ if (_t30) goto L_027B6928; else goto L_027B6920; L_027B6920: ; // 0x27b6920 /* 027B6920 */ cpu->r[3] = cpu->r[31]; /* 027B6924 */ Gambit_fn_02801BB0(cpu); L_027B6928: ; // 0x27b6928 /* 027B6928 */ _t31 = cpu->r[1] + 0x00000008u; /* 027B6928 */ cpu->r[28] = rbrew_read32(cpu->mem, _t31); /* 027B692C */ _t32 = cpu->r[1] + 0x0000000Cu; /* 027B692C */ cpu->r[29] = rbrew_read32(cpu->mem, _t32); /* 027B6930 */ _t33 = cpu->r[1] + 0x0000001Cu; /* 027B6930 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33); /* 027B6934 */ _t34 = cpu->r[1] + 0x00000010u; /* 027B6934 */ cpu->r[30] = rbrew_read32(cpu->mem, _t34); /* 027B6938 */ cpu->lr = cpu->r[0]; /* 027B693C */ _t35 = cpu->r[1] + 0x00000014u; /* 027B693C */ cpu->r[31] = rbrew_read32(cpu->mem, _t35); /* 027B6940 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B6944 */ return; } // fn_027B6948 @ 0x27b6948 void Gambit_fn_027B6948(CPUState* cpu) { L_027B6948: ; // 0x27b6948 /* 027B6948 */ cpu->r[3] = 0x00000000u; /* 027B694C */ return; } // fn_027B6950 @ 0x27b6950 void Gambit_fn_027B6950(CPUState* cpu) { uint32_t _t0; L_027B6950: ; // 0x27b6950 /* 027B6950 */ _t0 = cpu->r[3] + 0x00000018u; /* 027B6950 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027B6954 */ return; } // fn_027B6958 @ 0x27b6958 void Gambit_fn_027B6958(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9; L_027B6958: ; // 0x27b6958 /* 027B6958 */ cpu->r[0] = cpu->lr; /* 027B695C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B695C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B695C */ cpu->r[1] = _t0; /* 027B6960 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B6960 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B6964 */ cpu->r[31] = cpu->r[3]; /* 027B6964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B6968 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B6968 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B696C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B696C */ _t4 = _t3 & 0x00000001u; /* 027B696C */ if (_t4) goto L_027B6970; else goto L_027B6980; L_027B6970: ; // 0x27b6970 /* 027B6970 */ cpu->r[3] = 0x000000E4u; /* 027B6974 */ Gambit_fn_02801A78(cpu); /* 027B6978 */ cpu->r[31] = cpu->r[3]; /* 027B6978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B697C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B697C */ _t6 = _t5 & 0x00000001u; /* 027B697C */ if (_t6) goto L_027B6994; else goto L_027B6980; L_027B6980: ; // 0x27b6980 /* 027B6980 */ cpu->r[3] = cpu->r[31]; /* 027B6984 */ Gambit_fn_027B6CCC(cpu); /* 027B6988 */ cpu->r[0] = 0x10110000u; /* 027B698C */ cpu->r[0] = cpu->r[0] + 0xFFFFB2D0u; /* 027B6990 */ _t7 = cpu->r[31] + 0x000000E0u; /* 027B6990 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); L_027B6994: ; // 0x27b6994 /* 027B6994 */ _t8 = cpu->r[1] + 0x00000014u; /* 027B6994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B6998 */ cpu->r[3] = cpu->r[31]; /* 027B699C */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027B699C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9); /* 027B69A0 */ cpu->lr = cpu->r[0]; /* 027B69A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B69A8 */ return; } // fn_027B695C @ 0x27b695c void Gambit_fn_027B695C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9; L_027B695C: ; // 0x27b695c /* 027B695C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B695C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B695C */ cpu->r[1] = _t0; /* 027B6960 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B6960 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B6964 */ cpu->r[31] = cpu->r[3]; /* 027B6964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B6968 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B6968 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B696C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B696C */ _t4 = _t3 & 0x00000001u; /* 027B696C */ if (_t4) goto L_027B6970; else goto L_027B6980; L_027B6970: ; // 0x27b6970 /* 027B6970 */ cpu->r[3] = 0x000000E4u; /* 027B6974 */ Gambit_fn_02801A78(cpu); /* 027B6978 */ cpu->r[31] = cpu->r[3]; /* 027B6978 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B697C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B697C */ _t6 = _t5 & 0x00000001u; /* 027B697C */ if (_t6) goto L_027B6994; else goto L_027B6980; L_027B6980: ; // 0x27b6980 /* 027B6980 */ cpu->r[3] = cpu->r[31]; /* 027B6984 */ Gambit_fn_027B6CCC(cpu); /* 027B6988 */ cpu->r[0] = 0x10110000u; /* 027B698C */ cpu->r[0] = cpu->r[0] + 0xFFFFB2D0u; /* 027B6990 */ _t7 = cpu->r[31] + 0x000000E0u; /* 027B6990 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); L_027B6994: ; // 0x27b6994 /* 027B6994 */ _t8 = cpu->r[1] + 0x00000014u; /* 027B6994 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B6998 */ cpu->r[3] = cpu->r[31]; /* 027B699C */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027B699C */ cpu->r[31] = rbrew_read32(cpu->mem, _t9); /* 027B69A0 */ cpu->lr = cpu->r[0]; /* 027B69A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B69A8 */ return; } // fn_027B69AC @ 0x27b69ac void Gambit_fn_027B69AC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027B69AC: ; // 0x27b69ac /* 027B69AC */ cpu->r[0] = cpu->lr; /* 027B69B0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B69B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B69B0 */ cpu->r[1] = _t0; /* 027B69B4 */ _t1 = cpu->r[1] + 0x00000010u; /* 027B69B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B69B8 */ cpu->r[30] = cpu->r[3]; /* 027B69BC */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B69BC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027B69C0 */ cpu->r[3] = 0x00000038u; /* 027B69C4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B69C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B69C8 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B69C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B69CC */ cpu->r[29] = cpu->r[5]; /* 027B69D0 */ cpu->r[5] = 0x00000004u; /* 027B69D4 */ cpu->r[31] = cpu->r[4]; /* 027B69D8 */ Gambit_fn_02801AC8(cpu); /* 027B69DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B69E0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B69E0 */ _t6 = _t5 & 0x00000001u; /* 027B69E0 */ if (_t6) goto L_027B69E8; else goto L_027B69E4; L_027B69E4: ; // 0x27b69e4 /* 027B69E4 */ Gambit_fn_027D9BA8(cpu); L_027B69E8: ; // 0x27b69e8 /* 027B69E8 */ _t7 = cpu->r[30] + 0x00000000u; /* 027B69E8 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]); /* 027B69EC */ cpu->r[5] = cpu->r[31]; /* 027B69F0 */ cpu->r[4] = cpu->r[29]; /* 027B69F4 */ cpu->r[3] = cpu->r[30]; /* 027B69F8 */ Gambit_fn_027B9CEC(cpu); /* 027B69FC */ _t8 = cpu->r[1] + 0x0000000Cu; /* 027B69FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t8); /* 027B6A00 */ _t9 = cpu->r[1] + 0x0000001Cu; /* 027B6A00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027B6A04 */ _t10 = cpu->r[1] + 0x00000010u; /* 027B6A04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10); /* 027B6A08 */ cpu->lr = cpu->r[0]; /* 027B6A0C */ _t11 = cpu->r[1] + 0x00000014u; /* 027B6A0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027B6A10 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B6A14 */ return; } // fn_027B69B0 @ 0x27b69b0 void Gambit_fn_027B69B0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027B69B0: ; // 0x27b69b0 /* 027B69B0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B69B0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B69B0 */ cpu->r[1] = _t0; /* 027B69B4 */ _t1 = cpu->r[1] + 0x00000010u; /* 027B69B4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B69B8 */ cpu->r[30] = cpu->r[3]; /* 027B69BC */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B69BC */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027B69C0 */ cpu->r[3] = 0x00000038u; /* 027B69C4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B69C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B69C8 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B69C8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B69CC */ cpu->r[29] = cpu->r[5]; /* 027B69D0 */ cpu->r[5] = 0x00000004u; /* 027B69D4 */ cpu->r[31] = cpu->r[4]; /* 027B69D8 */ Gambit_fn_02801AC8(cpu); /* 027B69DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B69E0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B69E0 */ _t6 = _t5 & 0x00000001u; /* 027B69E0 */ if (_t6) goto L_027B69E8; else goto L_027B69E4; L_027B69E4: ; // 0x27b69e4 /* 027B69E4 */ Gambit_fn_027D9BA8(cpu); L_027B69E8: ; // 0x27b69e8 /* 027B69E8 */ _t7 = cpu->r[30] + 0x00000000u; /* 027B69E8 */ rbrew_write32(cpu->mem, _t7, cpu->r[3]); /* 027B69EC */ cpu->r[5] = cpu->r[31]; /* 027B69F0 */ cpu->r[4] = cpu->r[29]; /* 027B69F4 */ cpu->r[3] = cpu->r[30]; /* 027B69F8 */ Gambit_fn_027B9CEC(cpu); /* 027B69FC */ _t8 = cpu->r[1] + 0x0000000Cu; /* 027B69FC */ cpu->r[29] = rbrew_read32(cpu->mem, _t8); /* 027B6A00 */ _t9 = cpu->r[1] + 0x0000001Cu; /* 027B6A00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027B6A04 */ _t10 = cpu->r[1] + 0x00000010u; /* 027B6A04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10); /* 027B6A08 */ cpu->lr = cpu->r[0]; /* 027B6A0C */ _t11 = cpu->r[1] + 0x00000014u; /* 027B6A0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027B6A10 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B6A14 */ return; } // fn_027B6A18 @ 0x27b6a18 void Gambit_fn_027B6A18(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B6A18: ; // 0x27b6a18 /* 027B6A18 */ cpu->r[0] = cpu->lr; /* 027B6A1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B6A1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B6A1C */ cpu->r[1] = _t0; /* 027B6A20 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B6A20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B6A24 */ cpu->r[9] = 0x101D0000u; /* 027B6A28 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B6A28 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B6A2C */ _t3 = cpu->r[9] + 0xFFFFE33Cu; /* 027B6A2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B6A2C */ cpu->r[9] = _t3; /* 027B6A30 */ cpu->r[4] = 0x101D0000u; /* 027B6A34 */ _t4 = cpu->r[3] + 0x00000000u; /* 027B6A34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4); /* 027B6A38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B6A3C */ cpu->r[4] = cpu->r[4] + 0x000014ECu; /* 027B6A40 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6A40 */ _t6 = _t5 & 0x00000001u; /* 027B6A40 */ if (_t6) goto L_027B6A44; else goto L_027B6A58; L_027B6A44: ; // 0x27b6a44 /* 027B6A44 */ cpu->r[11] = 0x10110000u; /* 027B6A48 */ cpu->r[8] = 0x00000001u; /* 027B6A4C */ cpu->r[11] = cpu->r[11] + 0xFFFFB2C0u; /* 027B6A50 */ _t7 = cpu->r[9] + 0x00000000u; /* 027B6A50 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027B6A54 */ _t8 = cpu->r[4] + 0x00000000u; /* 027B6A54 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]); L_027B6A58: ; // 0x27b6a58 /* 027B6A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B6A5C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6A5C */ _t10 = _t9 & 0x00000001u; /* 027B6A5C */ if (_t10) goto L_027B6A94; else goto L_027B6A60; L_027B6A60: ; // 0x27b6a60 /* 027B6A60 */ _t11 = cpu->r[31] + 0x00000000u; /* 027B6A60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11); /* 027B6A64 */ _t12 = cpu->r[12] + 0x0000007Cu; /* 027B6A64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12); /* 027B6A68 */ cpu->ctr = cpu->r[10]; /* 027B6A6C */ cpu->r[3] = cpu->r[31]; /* 027B6A70 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6A74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6A78 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6A78 */ _t14 = _t13 & 0x00000001u; /* 027B6A78 */ if (_t14) goto L_027B6A94; else goto L_027B6A7C; L_027B6A7C: ; // 0x27b6a7c /* 027B6A7C */ _t15 = cpu->r[1] + 0x00000014u; /* 027B6A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027B6A80 */ cpu->r[3] = cpu->r[31]; /* 027B6A84 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027B6A84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027B6A88 */ cpu->lr = cpu->r[0]; /* 027B6A8C */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B6A90 */ return; L_027B6A94: ; // 0x27b6a94 /* 027B6A94 */ _t17 = cpu->r[1] + 0x00000014u; /* 027B6A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027B6A98 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B6A98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B6A9C */ cpu->lr = cpu->r[0]; /* 027B6AA0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B6AA4 */ cpu->r[3] = 0x00000000u; /* 027B6AA8 */ return; } // fn_027B6A1C @ 0x27b6a1c void Gambit_fn_027B6A1C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B6A1C: ; // 0x27b6a1c /* 027B6A1C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B6A1C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B6A1C */ cpu->r[1] = _t0; /* 027B6A20 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B6A20 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B6A24 */ cpu->r[9] = 0x101D0000u; /* 027B6A28 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B6A28 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B6A2C */ _t3 = cpu->r[9] + 0xFFFFE33Cu; /* 027B6A2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B6A2C */ cpu->r[9] = _t3; /* 027B6A30 */ cpu->r[4] = 0x101D0000u; /* 027B6A34 */ _t4 = cpu->r[3] + 0x00000000u; /* 027B6A34 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4); /* 027B6A38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B6A3C */ cpu->r[4] = cpu->r[4] + 0x000014ECu; /* 027B6A40 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6A40 */ _t6 = _t5 & 0x00000001u; /* 027B6A40 */ if (_t6) goto L_027B6A44; else goto L_027B6A58; L_027B6A44: ; // 0x27b6a44 /* 027B6A44 */ cpu->r[11] = 0x10110000u; /* 027B6A48 */ cpu->r[8] = 0x00000001u; /* 027B6A4C */ cpu->r[11] = cpu->r[11] + 0xFFFFB2C0u; /* 027B6A50 */ _t7 = cpu->r[9] + 0x00000000u; /* 027B6A50 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027B6A54 */ _t8 = cpu->r[4] + 0x00000000u; /* 027B6A54 */ rbrew_write32(cpu->mem, _t8, cpu->r[11]); L_027B6A58: ; // 0x27b6a58 /* 027B6A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B6A5C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6A5C */ _t10 = _t9 & 0x00000001u; /* 027B6A5C */ if (_t10) goto L_027B6A94; else goto L_027B6A60; L_027B6A60: ; // 0x27b6a60 /* 027B6A60 */ _t11 = cpu->r[31] + 0x00000000u; /* 027B6A60 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11); /* 027B6A64 */ _t12 = cpu->r[12] + 0x0000007Cu; /* 027B6A64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12); /* 027B6A68 */ cpu->ctr = cpu->r[10]; /* 027B6A6C */ cpu->r[3] = cpu->r[31]; /* 027B6A70 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6A74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6A78 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6A78 */ _t14 = _t13 & 0x00000001u; /* 027B6A78 */ if (_t14) goto L_027B6A94; else goto L_027B6A7C; L_027B6A7C: ; // 0x27b6a7c /* 027B6A7C */ _t15 = cpu->r[1] + 0x00000014u; /* 027B6A7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027B6A80 */ cpu->r[3] = cpu->r[31]; /* 027B6A84 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027B6A84 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027B6A88 */ cpu->lr = cpu->r[0]; /* 027B6A8C */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B6A90 */ return; L_027B6A94: ; // 0x27b6a94 /* 027B6A94 */ _t17 = cpu->r[1] + 0x00000014u; /* 027B6A94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027B6A98 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B6A98 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B6A9C */ cpu->lr = cpu->r[0]; /* 027B6AA0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B6AA4 */ cpu->r[3] = 0x00000000u; /* 027B6AA8 */ return; } // fn_027B6AAC @ 0x27b6aac void Gambit_fn_027B6AAC(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_027B6AAC: ; // 0x27b6aac /* 027B6AAC */ _t0 = cpu->r[1] + 0xFFFFFFB8u; /* 027B6AAC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B6AAC */ cpu->r[1] = _t0; /* 027B6AB0 */ /* nop */ /* 027B6AB4 */ cpu->r[0] = cpu->lr; /* 027B6AB8 */ cpu->r[28] = cpu->r[4]; /* 027B6ABC */ cpu->r[31] = cpu->r[6]; /* 027B6AC0 */ cpu->r[30] = cpu->r[7]; /* 027B6AC4 */ cpu->r[22] = cpu->r[8]; /* 027B6AC8 */ cpu->r[27] = cpu->r[3]; /* 027B6ACC */ _t1 = cpu->r[1] + 0x0000004Cu; /* 027B6ACC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B6AD0 */ cpu->r[29] = cpu->r[5]; /* 027B6AD4 */ Gambit_fn_027B705C(cpu); /* 027B6AD8 */ _t2 = cpu->r[27] + 0x00000018u; /* 027B6AD8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027B6ADC */ cpu->r[4] = cpu->r[28]; /* 027B6AE0 */ cpu->r[5] = 0x00000004u; /* 027B6AE4 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B6AE8 */ Gambit_fn_02801ADC(cpu); /* 027B6AEC */ _t3 = cpu->r[27] + 0x00000018u; /* 027B6AEC */ cpu->r[10] = rbrew_read32(cpu->mem, _t3); /* 027B6AF0 */ cpu->r[24] = 0x00000000u; /* 027B6AF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[10]); /* 027B6AF8 */ cpu->r[23] = cpu->r[3]; /* 027B6AFC */ _t4 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6AFC */ _t5 = _t4 & 0x00000001u; /* 027B6AFC */ if (_t5) goto L_027B6B00; else goto L_027B6B48; L_027B6B00: ; // 0x27b6b00 /* 027B6B00 */ cpu->r[26] = 0x00000000u; L_027B6B04: ; // 0x27b6b04 /* 027B6B04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[24], cpu->r[10]); /* 027B6B08 */ cpu->r[25] = 0x00000000u; /* 027B6B0C */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6B0C */ _t7 = _t6 & 0x00000001u; /* 027B6B0C */ if (_t7) goto L_027B6B10; else goto L_027B6B18; L_027B6B10: ; // 0x27b6b10 /* 027B6B10 */ _t8 = cpu->r[27] + 0x00000020u; /* 027B6B10 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8); /* 027B6B14 */ _t9 = cpu->r[9] + cpu->r[26]; /* 027B6B14 */ cpu->r[25] = rbrew_read32(cpu->mem, _t9); L_027B6B18: ; // 0x27b6b18 /* 027B6B18 */ _t10 = cpu->r[25] + 0x00000004u; /* 027B6B18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10); /* 027B6B1C */ _t11 = cpu->r[11] + 0x00000014u; /* 027B6B1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027B6B20 */ cpu->ctr = cpu->r[0]; /* 027B6B24 */ cpu->r[3] = cpu->r[25]; /* 027B6B28 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B6B2C */ _t12 = cpu->r[25] + 0x00000000u; /* 027B6B2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027B6B30 */ _t13 = cpu->r[23] + cpu->r[26]; /* 027B6B30 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]); /* 027B6B34 */ _t14 = cpu->r[27] + 0x00000018u; /* 027B6B34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14); /* 027B6B38 */ cpu->r[24] = cpu->r[24] + 0x00000001u; /* 027B6B3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[10]); /* 027B6B40 */ cpu->r[26] = cpu->r[26] + 0x00000004u; /* 027B6B44 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B6B44 */ _t16 = _t15 & 0x00000001u; /* 027B6B44 */ if (_t16) goto L_027B6B04; else goto L_027B6B48; L_027B6B48: ; // 0x27b6b48 /* 027B6B48 */ cpu->r[26] = 0x10110000u; /* 027B6B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B6B50 */ _t17 = cpu->r[27] + 0x00000078u; /* 027B6B50 */ cpu->r[25] = rbrew_read32(cpu->mem, _t17); /* 027B6B54 */ cpu->r[26] = cpu->r[26] + 0xFFFFB2A8u; /* 027B6B58 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6B58 */ _t19 = _t18 & 0x00000001u; /* 027B6B58 */ if (_t19) goto L_027B6BEC; else goto L_027B6B5C; L_027B6B5C: ; // 0x27b6b5c /* 027B6B5C */ _t20 = cpu->r[31] + 0x00000000u; /* 027B6B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027B6B60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B6B64 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6B64 */ _t22 = _t21 & 0x00000001u; /* 027B6B64 */ if (_t22) goto L_027B6BEC; else goto L_027B6B68; L_027B6B68: ; // 0x27b6b68 /* 027B6B68 */ _t23 = cpu->r[1] + 0x00000014u; /* 027B6B68 */ rbrew_write32(cpu->mem, _t23, cpu->r[26]); /* 027B6B6C */ cpu->r[3] = cpu->r[27]; /* 027B6B70 */ _t24 = cpu->r[1] + 0x00000010u; /* 027B6B70 */ rbrew_write32(cpu->mem, _t24, cpu->r[29]); /* 027B6B74 */ Gambit_fn_027B6A18(cpu); /* 027B6B78 */ cpu->r[4] = cpu->r[28]; /* 027B6B7C */ cpu->r[7] = cpu->r[31]; /* 027B6B80 */ _t25 = cpu->r[27] + 0x0000000Cu; /* 027B6B80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25); /* 027B6B84 */ cpu->r[8] = cpu->r[30]; /* 027B6B88 */ cpu->r[10] = cpu->r[22]; /* 027B6B8C */ _t26 = cpu->r[1] + 0x0000000Cu; /* 027B6B8C */ rbrew_write32(cpu->mem, _t26, cpu->r[25]); /* 027B6B90 */ cpu->r[5] = cpu->r[1] + 0x00000010u; /* 027B6B94 */ cpu->r[9] = 0x00000000u; /* 027B6B98 */ _t27 = cpu->r[1] + 0x00000008u; /* 027B6B98 */ rbrew_write32(cpu->mem, _t27, cpu->r[23]); /* 027B6B9C */ Gambit_fn_027D9C3C(cpu); /* 027B6BA0 */ cpu->r[24] = cpu->r[1] + 0x00000010u; /* 027B6BA4 */ _t28 = cpu->r[1] + 0x00000014u; /* 027B6BA4 */ rbrew_write32(cpu->mem, _t28, cpu->r[26]); /* 027B6BA8 */ cpu->r[3] = cpu->r[27]; /* 027B6BAC */ _t29 = cpu->r[1] + 0x00000010u; /* 027B6BAC */ rbrew_write32(cpu->mem, _t29, cpu->r[29]); /* 027B6BB0 */ _t30 = cpu->r[27] + 0x0000000Cu; /* 027B6BB0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30); /* 027B6BB4 */ Gambit_fn_027B6A18(cpu); /* 027B6BB8 */ cpu->r[4] = cpu->r[28]; /* 027B6BBC */ cpu->r[5] = cpu->r[24]; /* 027B6BC0 */ cpu->r[7] = cpu->r[31]; /* 027B6BC4 */ cpu->r[6] = cpu->r[29]; /* 027B6BC8 */ cpu->r[8] = cpu->r[30]; /* 027B6BCC */ cpu->r[10] = cpu->r[23]; /* 027B6BD0 */ cpu->r[9] = 0x00000000u; /* 027B6BD4 */ _t31 = cpu->r[1] + 0x00000008u; /* 027B6BD4 */ rbrew_write32(cpu->mem, _t31, cpu->r[25]); /* 027B6BD8 */ Gambit_fn_027D9DC0(cpu); /* 027B6BDC */ cpu->r[4] = cpu->r[28]; /* 027B6BE0 */ cpu->r[3] = cpu->r[27]; /* 027B6BE4 */ Gambit_fn_027BA260(cpu); /* 027B6BE8 */ goto L_027B6C6C; L_027B6BEC: ; // 0x27b6bec /* 027B6BEC */ _t32 = cpu->r[1] + 0x0000001Cu; /* 027B6BEC */ rbrew_write32(cpu->mem, _t32, cpu->r[26]); /* 027B6BF0 */ cpu->r[3] = cpu->r[27]; /* 027B6BF4 */ _t33 = cpu->r[1] + 0x00000018u; /* 027B6BF4 */ rbrew_write32(cpu->mem, _t33, cpu->r[29]); /* 027B6BF8 */ Gambit_fn_027B6A18(cpu); /* 027B6BFC */ cpu->r[4] = cpu->r[28]; /* 027B6C00 */ cpu->r[8] = cpu->r[30]; /* 027B6C04 */ _t34 = cpu->r[27] + 0x0000000Cu; /* 027B6C04 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34); /* 027B6C08 */ cpu->r[10] = cpu->r[22]; /* 027B6C0C */ cpu->r[7] = 0x00000000u; /* 027B6C10 */ _t35 = cpu->r[1] + 0x0000000Cu; /* 027B6C10 */ rbrew_write32(cpu->mem, _t35, cpu->r[25]); /* 027B6C14 */ cpu->r[5] = cpu->r[1] + 0x00000018u; /* 027B6C18 */ cpu->r[9] = cpu->r[7]; /* 027B6C1C */ _t36 = cpu->r[1] + 0x00000008u; /* 027B6C1C */ rbrew_write32(cpu->mem, _t36, cpu->r[23]); /* 027B6C20 */ Gambit_fn_027D9C3C(cpu); /* 027B6C24 */ cpu->r[24] = cpu->r[1] + 0x00000018u; /* 027B6C28 */ _t37 = cpu->r[1] + 0x0000001Cu; /* 027B6C28 */ rbrew_write32(cpu->mem, _t37, cpu->r[26]); /* 027B6C2C */ cpu->r[3] = cpu->r[27]; /* 027B6C30 */ _t38 = cpu->r[1] + 0x00000018u; /* 027B6C30 */ rbrew_write32(cpu->mem, _t38, cpu->r[29]); /* 027B6C34 */ _t39 = cpu->r[27] + 0x0000000Cu; /* 027B6C34 */ cpu->r[29] = rbrew_read32(cpu->mem, _t39); /* 027B6C38 */ Gambit_fn_027B6A18(cpu); /* 027B6C3C */ cpu->r[4] = cpu->r[28]; /* 027B6C40 */ cpu->r[5] = cpu->r[24]; /* 027B6C44 */ cpu->r[8] = cpu->r[30]; /* 027B6C48 */ cpu->r[7] = 0x00000000u; /* 027B6C4C */ cpu->r[10] = cpu->r[23]; /* 027B6C50 */ cpu->r[6] = cpu->r[29]; /* 027B6C54 */ cpu->r[9] = cpu->r[7]; /* 027B6C58 */ _t40 = cpu->r[1] + 0x00000008u; /* 027B6C58 */ rbrew_write32(cpu->mem, _t40, cpu->r[25]); /* 027B6C5C */ Gambit_fn_027D9DC0(cpu); /* 027B6C60 */ cpu->r[3] = cpu->r[27]; /* 027B6C64 */ cpu->r[4] = cpu->r[28]; /* 027B6C68 */ Gambit_fn_027BA260(cpu); L_027B6C6C: ; // 0x27b6c6c /* 027B6C6C */ /* nop */ /* 027B6C70 */ _t41 = cpu->r[1] + 0x0000004Cu; /* 027B6C70 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41); /* 027B6C74 */ cpu->lr = cpu->r[0]; /* 027B6C78 */ cpu->r[1] = cpu->r[1] + 0x00000048u; /* 027B6C7C */ return; } // fn_027B6C80 @ 0x27b6c80 void Gambit_fn_027B6C80(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17; L_027B6C80: ; // 0x27b6c80 /* 027B6C80 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B6C80 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027B6C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6C88 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6C88 */ _t2 = _t1 & 0x00000001u; /* 027B6C88 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B6C88 */ goto L_027B6C8C; L_027B6C8C: ; // 0x27b6c8c /* 027B6C8C */ goto L_027DA38C; L_027DA38C: ; // 0x27da38c /* 027DA38C */ _t3 = cpu->r[1] + 0xFFFFFFD8u; /* 027DA38C */ rbrew_write32(cpu->mem, _t3, cpu->r[1]); /* 027DA38C */ cpu->r[1] = _t3; /* 027DA390 */ /* nop */ /* 027DA394 */ cpu->r[0] = cpu->lr; /* 027DA398 */ _t4 = cpu->r[1] + 0x0000002Cu; /* 027DA398 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027DA39C */ cpu->r[29] = cpu->r[4]; /* 027DA3A0 */ cpu->r[28] = cpu->r[3]; /* 027DA3A4 */ _t5 = cpu->r[28] + 0x00000018u; /* 027DA3A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5); /* 027DA3A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027DA3AC */ cpu->r[30] = cpu->r[5]; /* 027DA3B0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA3B0 */ _t7 = _t6 & 0x00000001u; /* 027DA3B0 */ if (_t7) goto L_027DA404; else goto L_027DA3B4; L_027DA3B4: ; // 0x27da3b4 /* 027DA3B4 */ cpu->r[27] = 0x101D0000u; /* 027DA3B8 */ _t8 = cpu->r[27] + 0xFFFF9028u; /* 027DA3B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027DA3BC */ _t9 = cpu->r[11] + 0x00000018u; /* 027DA3BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027DA3C0 */ _t10 = cpu->r[12] + 0x00000000u; /* 027DA3C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10); /* 027DA3C4 */ Gambit_fn_028AC54C(cpu); /* 027DA3C8 */ cpu->r[0] = 0x10110000u; /* 027DA3CC */ _t11 = cpu->r[1] + 0x00000008u; /* 027DA3CC */ rbrew_write32(cpu->mem, _t11, cpu->r[3]); /* 027DA3D0 */ cpu->r[0] = cpu->r[0] + 0xFFFFEA90u; /* 027DA3D4 */ _t12 = cpu->r[1] + 0x0000000Cu; /* 027DA3D4 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]); /* 027DA3D8 */ _t13 = cpu->r[31] + 0x0000001Cu; /* 027DA3D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027DA3DC */ _t14 = cpu->r[27] + 0xFFFF9028u; /* 027DA3DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t14); /* 027DA3E0 */ cpu->ctr = cpu->r[0]; /* 027DA3E4 */ _t15 = cpu->r[9] + 0x00000018u; /* 027DA3E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15); /* 027DA3E8 */ cpu->r[6] = cpu->r[30]; /* 027DA3EC */ cpu->r[5] = cpu->r[29]; /* 027DA3F0 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027DA3F4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027DA3F8 */ cpu->r[4] = cpu->r[3]; /* 027DA3FC */ _t16 = cpu->r[28] + 0x00000018u; /* 027DA3FC */ cpu->r[3] = rbrew_read32(cpu->mem, _t16); /* 027DA400 */ Gambit_fn_028B4BFC(cpu); L_027DA404: ; // 0x27da404 /* 027DA404 */ /* nop */ /* 027DA408 */ _t17 = cpu->r[1] + 0x0000002Cu; /* 027DA408 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027DA40C */ cpu->lr = cpu->r[0]; /* 027DA410 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027DA414 */ return; } // fn_027B6C90 @ 0x27b6c90 void Gambit_fn_027B6C90(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_027B6C90: ; // 0x27b6c90 /* 027B6C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6C94 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6C94 */ _t1 = _t0 & 0x00000001u; /* 027B6C94 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B6C94 */ goto L_027B6C98; L_027B6C98: ; // 0x27b6c98 /* 027B6C98 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027B6C98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B6C9C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6C9C */ _t3 = _t2 & 0x00000001u; /* 027B6C9C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B6C9C */ goto L_027B6CA0; L_027B6CA0: ; // 0x27b6ca0 /* 027B6CA0 */ 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_027B6CA4 @ 0x27b6ca4 void Gambit_fn_027B6CA4(CPUState* cpu) { L_027B6CA4: ; // 0x27b6ca4 /* 027B6CA4 */ return; } // fn_027B6CA8 @ 0x27b6ca8 void Gambit_fn_027B6CA8(CPUState* cpu) { uint32_t _t0; L_027B6CA8: ; // 0x27b6ca8 /* 027B6CA8 */ _t0 = cpu->r[3] + 0x000000D4u; /* 027B6CA8 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0); /* 027B6CAC */ return; } // fn_027B6CB0 @ 0x27b6cb0 void Gambit_fn_027B6CB0(CPUState* cpu) { L_027B6CB0: ; // 0x27b6cb0 /* 027B6CB0 */ return; } // fn_027B6CB4 @ 0x27b6cb4 void Gambit_fn_027B6CB4(CPUState* cpu) { L_027B6CB4: ; // 0x27b6cb4 /* 027B6CB4 */ return; } // fn_027B6CB8 @ 0x27b6cb8 void Gambit_fn_027B6CB8(CPUState* cpu) { L_027B6CB8: ; // 0x27b6cb8 /* 027B6CB8 */ return; } // fn_027B6CBC @ 0x27b6cbc void Gambit_fn_027B6CBC(CPUState* cpu) { L_027B6CBC: ; // 0x27b6cbc /* 027B6CBC */ return; } // fn_027B6CC0 @ 0x27b6cc0 void Gambit_fn_027B6CC0(CPUState* cpu) { uint32_t _t0; L_027B6CC0: ; // 0x27b6cc0 /* 027B6CC0 */ cpu->r[12] = 0x10110000u; /* 027B6CC4 */ _t0 = cpu->r[12] + 0xFFFFB398u; /* 027B6CC4 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0); /* 027B6CC8 */ return; } // fn_027B6CCC @ 0x27b6ccc void Gambit_fn_027B6CCC(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; L_027B6CCC: ; // 0x27b6ccc /* 027B6CCC */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027B6CCC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B6CCC */ cpu->r[1] = _t0; /* 027B6CD0 */ cpu->r[0] = cpu->lr; /* 027B6CD4 */ /* nop */ /* 027B6CD8 */ cpu->r[31] = cpu->r[3]; /* 027B6CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B6CDC */ _t1 = cpu->r[1] + 0x00000044u; /* 027B6CDC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B6CE0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6CE0 */ _t3 = _t2 & 0x00000001u; /* 027B6CE0 */ if (_t3) goto L_027B6CE4; else goto L_027B6CF4; L_027B6CE4: ; // 0x27b6ce4 /* 027B6CE4 */ cpu->r[3] = 0x000000E4u; /* 027B6CE8 */ Gambit_fn_02801A78(cpu); /* 027B6CEC */ cpu->r[31] = cpu->r[3]; /* 027B6CEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B6CF0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6CF0 */ _t5 = _t4 & 0x00000001u; /* 027B6CF0 */ if (_t5) goto L_027B701C; else goto L_027B6CF4; L_027B6CF4: ; // 0x27b6cf4 /* 027B6CF4 */ cpu->r[30] = 0x00000000u; /* 027B6CF8 */ cpu->r[12] = 0x10110000u; /* 027B6CFC */ _t6 = cpu->r[31] + 0x00000008u; /* 027B6CFC */ rbrew_write32(cpu->mem, _t6, cpu->r[30]); /* 027B6D00 */ cpu->r[12] = cpu->r[12] + 0xFFFFB5D0u; /* 027B6D04 */ _t7 = cpu->r[31] + 0x00000004u; /* 027B6D04 */ rbrew_write32(cpu->mem, _t7, cpu->r[30]); /* 027B6D08 */ _t8 = cpu->r[31] + 0x000000E0u; /* 027B6D08 */ rbrew_write32(cpu->mem, _t8, cpu->r[12]); /* 027B6D0C */ cpu->r[3] = cpu->r[31] + 0x0000000Cu; /* 027B6D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6D10 */ _t9 = cpu->r[31] + 0x00000000u; /* 027B6D10 */ rbrew_write32(cpu->mem, _t9, cpu->r[30]); /* 027B6D14 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6D14 */ _t11 = _t10 & 0x00000001u; /* 027B6D14 */ if (_t11) goto L_027B6D18; else goto L_027B6D28; L_027B6D18: ; // 0x27b6d18 /* 027B6D18 */ cpu->r[3] = 0x0000000Cu; /* 027B6D1C */ Gambit_fn_02801A78(cpu); /* 027B6D20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6D24 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6D24 */ _t13 = _t12 & 0x00000001u; /* 027B6D24 */ if (_t13) goto L_027B6D4C; else goto L_027B6D28; L_027B6D28: ; // 0x27b6d28 /* 027B6D28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6D2C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6D2C */ _t15 = _t14 & 0x00000001u; /* 027B6D2C */ if (_t15) goto L_027B6D30; else goto L_027B6D40; L_027B6D30: ; // 0x27b6d30 /* 027B6D30 */ cpu->r[3] = 0x0000000Cu; /* 027B6D34 */ Gambit_fn_02801A78(cpu); /* 027B6D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6D3C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6D3C */ _t17 = _t16 & 0x00000001u; /* 027B6D3C */ if (_t17) goto L_027B6D4C; else goto L_027B6D40; L_027B6D40: ; // 0x27b6d40 /* 027B6D40 */ _t18 = cpu->r[3] + 0x00000004u; /* 027B6D40 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]); /* 027B6D44 */ _t19 = cpu->r[3] + 0x00000000u; /* 027B6D44 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]); /* 027B6D48 */ _t20 = cpu->r[3] + 0x00000008u; /* 027B6D48 */ rbrew_write32(cpu->mem, _t20, cpu->r[30]); L_027B6D4C: ; // 0x27b6d4c /* 027B6D4C */ cpu->r[3] = cpu->r[31] + 0x00000018u; /* 027B6D4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6D50 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6D50 */ _t22 = _t21 & 0x00000001u; /* 027B6D50 */ if (_t22) goto L_027B6D54; else goto L_027B6D64; L_027B6D54: ; // 0x27b6d54 /* 027B6D54 */ cpu->r[3] = 0x0000000Cu; /* 027B6D58 */ Gambit_fn_02801A78(cpu); /* 027B6D5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6D60 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6D60 */ _t24 = _t23 & 0x00000001u; /* 027B6D60 */ if (_t24) goto L_027B6D88; else goto L_027B6D64; L_027B6D64: ; // 0x27b6d64 /* 027B6D64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6D68 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6D68 */ _t26 = _t25 & 0x00000001u; /* 027B6D68 */ if (_t26) goto L_027B6D6C; else goto L_027B6D7C; L_027B6D6C: ; // 0x27b6d6c /* 027B6D6C */ cpu->r[3] = 0x0000000Cu; /* 027B6D70 */ Gambit_fn_02801A78(cpu); /* 027B6D74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6D78 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6D78 */ _t28 = _t27 & 0x00000001u; /* 027B6D78 */ if (_t28) goto L_027B6D88; else goto L_027B6D7C; L_027B6D7C: ; // 0x27b6d7c /* 027B6D7C */ _t29 = cpu->r[3] + 0x00000004u; /* 027B6D7C */ rbrew_write32(cpu->mem, _t29, cpu->r[30]); /* 027B6D80 */ _t30 = cpu->r[3] + 0x00000000u; /* 027B6D80 */ rbrew_write32(cpu->mem, _t30, cpu->r[30]); /* 027B6D84 */ _t31 = cpu->r[3] + 0x00000008u; /* 027B6D84 */ rbrew_write32(cpu->mem, _t31, cpu->r[30]); L_027B6D88: ; // 0x27b6d88 /* 027B6D88 */ cpu->r[3] = cpu->r[31] + 0x00000028u; /* 027B6D88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6D8C */ _t32 = cpu->r[31] + 0x00000024u; /* 027B6D8C */ rbrew_write32(cpu->mem, _t32, cpu->r[30]); /* 027B6D90 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6D90 */ _t34 = _t33 & 0x00000001u; /* 027B6D90 */ if (_t34) goto L_027B6D94; else goto L_027B6DA4; L_027B6D94: ; // 0x27b6d94 /* 027B6D94 */ cpu->r[3] = 0x0000000Cu; /* 027B6D98 */ Gambit_fn_02801A78(cpu); /* 027B6D9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6DA0 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6DA0 */ _t36 = _t35 & 0x00000001u; /* 027B6DA0 */ if (_t36) goto L_027B6DC8; else goto L_027B6DA4; L_027B6DA4: ; // 0x27b6da4 /* 027B6DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6DA8 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6DA8 */ _t38 = _t37 & 0x00000001u; /* 027B6DA8 */ if (_t38) goto L_027B6DAC; else goto L_027B6DBC; L_027B6DAC: ; // 0x27b6dac /* 027B6DAC */ cpu->r[3] = 0x0000000Cu; /* 027B6DB0 */ Gambit_fn_02801A78(cpu); /* 027B6DB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6DB8 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6DB8 */ _t40 = _t39 & 0x00000001u; /* 027B6DB8 */ if (_t40) goto L_027B6DC8; else goto L_027B6DBC; L_027B6DBC: ; // 0x27b6dbc /* 027B6DBC */ _t41 = cpu->r[3] + 0x00000004u; /* 027B6DBC */ rbrew_write32(cpu->mem, _t41, cpu->r[30]); /* 027B6DC0 */ _t42 = cpu->r[3] + 0x00000000u; /* 027B6DC0 */ rbrew_write32(cpu->mem, _t42, cpu->r[30]); /* 027B6DC4 */ _t43 = cpu->r[3] + 0x00000008u; /* 027B6DC4 */ rbrew_write32(cpu->mem, _t43, cpu->r[30]); L_027B6DC8: ; // 0x27b6dc8 /* 027B6DC8 */ _t44 = cpu->r[31] + 0x00000034u; /* 027B6DC8 */ rbrew_write32(cpu->mem, _t44, cpu->r[30]); /* 027B6DCC */ cpu->r[26] = cpu->r[31] + 0x00000038u; /* 027B6DCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B6DD0 */ cpu->r[27] = 0x027C0000u; /* 027B6DD4 */ cpu->r[28] = 0xFFFFFFFFu; /* 027B6DD8 */ cpu->r[29] = 0x00000000u; /* 027B6DDC */ cpu->r[27] = cpu->r[27] + 0xFFFFA4D8u; /* 027B6DE0 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6DE0 */ _t46 = _t45 & 0x00000001u; /* 027B6DE0 */ if (_t46) goto L_027B6DE4; else goto L_027B6DF4; L_027B6DE4: ; // 0x27b6de4 /* 027B6DE4 */ cpu->r[3] = 0x00000010u; /* 027B6DE8 */ Gambit_fn_02801A78(cpu); /* 027B6DEC */ cpu->r[26] = cpu->r[3]; /* 027B6DEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B6DF0 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6DF0 */ _t48 = _t47 & 0x00000001u; /* 027B6DF0 */ if (_t48) goto L_027B6E44; else goto L_027B6DF4; L_027B6DF4: ; // 0x27b6df4 /* 027B6DF4 */ _t49 = cpu->r[1] + 0x0000000Cu; /* 027B6DF4 */ rbrew_write32(cpu->mem, _t49, cpu->r[27]); /* 027B6DF8 */ cpu->r[3] = cpu->r[26]; /* 027B6DF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6DFC */ _t50 = cpu->r[1] + 0x00000008u; /* 027B6DFC */ rbrew_write16(cpu->mem, _t50, (uint16_t)cpu->r[29]); /* 027B6E00 */ _t51 = cpu->r[1] + 0x0000000Au; /* 027B6E00 */ rbrew_write16(cpu->mem, _t51, (uint16_t)cpu->r[28]); /* 027B6E04 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6E04 */ _t53 = _t52 & 0x00000001u; /* 027B6E04 */ if (_t53) goto L_027B6E08; else goto L_027B6E18; L_027B6E08: ; // 0x27b6e08 /* 027B6E08 */ cpu->r[3] = 0x00000010u; /* 027B6E0C */ Gambit_fn_02801A78(cpu); /* 027B6E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6E14 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6E14 */ _t55 = _t54 & 0x00000001u; /* 027B6E14 */ if (_t55) goto L_027B6E38; else goto L_027B6E18; L_027B6E18: ; // 0x27b6e18 /* 027B6E18 */ cpu->r[0] = 0x10110000u; /* 027B6E1C */ _t56 = cpu->r[3] + 0x00000004u; /* 027B6E1C */ rbrew_write32(cpu->mem, _t56, cpu->r[31]); /* 027B6E20 */ cpu->r[0] = cpu->r[0] + 0xFFFFB4CCu; /* 027B6E24 */ _t57 = cpu->r[3] + 0x00000000u; /* 027B6E24 */ rbrew_write32(cpu->mem, _t57, cpu->r[0]); /* 027B6E28 */ _t58 = cpu->r[1] + 0x00000008u; /* 027B6E28 */ cpu->r[10] = rbrew_read32(cpu->mem, _t58); /* 027B6E2C */ _t59 = cpu->r[3] + 0x00000008u; /* 027B6E2C */ rbrew_write32(cpu->mem, _t59, cpu->r[10]); /* 027B6E30 */ _t60 = cpu->r[1] + 0x0000000Cu; /* 027B6E30 */ cpu->r[11] = rbrew_read32(cpu->mem, _t60); /* 027B6E34 */ _t61 = cpu->r[3] + 0x0000000Cu; /* 027B6E34 */ rbrew_write32(cpu->mem, _t61, cpu->r[11]); L_027B6E38: ; // 0x27b6e38 /* 027B6E38 */ cpu->r[12] = 0x10110000u; /* 027B6E3C */ cpu->r[12] = cpu->r[12] + 0xFFFFB4E4u; /* 027B6E40 */ _t62 = cpu->r[26] + 0x00000000u; /* 027B6E40 */ rbrew_write32(cpu->mem, _t62, cpu->r[12]); L_027B6E44: ; // 0x27b6e44 /* 027B6E44 */ cpu->r[26] = cpu->r[31] + 0x00000048u; /* 027B6E44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B6E48 */ cpu->r[27] = 0x027C0000u; /* 027B6E4C */ cpu->r[28] = 0xFFFFFFFFu; /* 027B6E50 */ cpu->r[29] = 0x00000000u; /* 027B6E54 */ cpu->r[27] = cpu->r[27] + 0xFFFFA7E8u; /* 027B6E58 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6E58 */ _t64 = _t63 & 0x00000001u; /* 027B6E58 */ if (_t64) goto L_027B6E5C; else goto L_027B6E6C; L_027B6E5C: ; // 0x27b6e5c /* 027B6E5C */ cpu->r[3] = 0x00000010u; /* 027B6E60 */ Gambit_fn_02801A78(cpu); /* 027B6E64 */ cpu->r[26] = cpu->r[3]; /* 027B6E64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B6E68 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6E68 */ _t66 = _t65 & 0x00000001u; /* 027B6E68 */ if (_t66) goto L_027B6EBC; else goto L_027B6E6C; L_027B6E6C: ; // 0x27b6e6c /* 027B6E6C */ _t67 = cpu->r[1] + 0x00000014u; /* 027B6E6C */ rbrew_write32(cpu->mem, _t67, cpu->r[27]); /* 027B6E70 */ cpu->r[3] = cpu->r[26]; /* 027B6E70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6E74 */ _t68 = cpu->r[1] + 0x00000010u; /* 027B6E74 */ rbrew_write16(cpu->mem, _t68, (uint16_t)cpu->r[29]); /* 027B6E78 */ _t69 = cpu->r[1] + 0x00000012u; /* 027B6E78 */ rbrew_write16(cpu->mem, _t69, (uint16_t)cpu->r[28]); /* 027B6E7C */ _t70 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6E7C */ _t71 = _t70 & 0x00000001u; /* 027B6E7C */ if (_t71) goto L_027B6E80; else goto L_027B6E90; L_027B6E80: ; // 0x27b6e80 /* 027B6E80 */ cpu->r[3] = 0x00000010u; /* 027B6E84 */ Gambit_fn_02801A78(cpu); /* 027B6E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6E8C */ _t72 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6E8C */ _t73 = _t72 & 0x00000001u; /* 027B6E8C */ if (_t73) goto L_027B6EB0; else goto L_027B6E90; L_027B6E90: ; // 0x27b6e90 /* 027B6E90 */ cpu->r[0] = 0x10110000u; /* 027B6E94 */ _t74 = cpu->r[3] + 0x00000004u; /* 027B6E94 */ rbrew_write32(cpu->mem, _t74, cpu->r[31]); /* 027B6E98 */ cpu->r[0] = cpu->r[0] + 0xFFFFB4FCu; /* 027B6E9C */ _t75 = cpu->r[3] + 0x00000000u; /* 027B6E9C */ rbrew_write32(cpu->mem, _t75, cpu->r[0]); /* 027B6EA0 */ _t76 = cpu->r[1] + 0x00000010u; /* 027B6EA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76); /* 027B6EA4 */ _t77 = cpu->r[3] + 0x00000008u; /* 027B6EA4 */ rbrew_write32(cpu->mem, _t77, cpu->r[0]); /* 027B6EA8 */ _t78 = cpu->r[1] + 0x00000014u; /* 027B6EA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t78); /* 027B6EAC */ _t79 = cpu->r[3] + 0x0000000Cu; /* 027B6EAC */ rbrew_write32(cpu->mem, _t79, cpu->r[8]); L_027B6EB0: ; // 0x27b6eb0 /* 027B6EB0 */ cpu->r[9] = 0x10110000u; /* 027B6EB4 */ cpu->r[9] = cpu->r[9] + 0xFFFFB514u; /* 027B6EB8 */ _t80 = cpu->r[26] + 0x00000000u; /* 027B6EB8 */ rbrew_write32(cpu->mem, _t80, cpu->r[9]); L_027B6EBC: ; // 0x27b6ebc /* 027B6EBC */ cpu->r[26] = cpu->r[31] + 0x00000058u; /* 027B6EBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B6EC0 */ cpu->r[27] = 0x027C0000u; /* 027B6EC4 */ cpu->r[28] = 0xFFFFFFFFu; /* 027B6EC8 */ cpu->r[29] = 0x00000000u; /* 027B6ECC */ cpu->r[27] = cpu->r[27] + 0xFFFFA49Cu; /* 027B6ED0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6ED0 */ _t82 = _t81 & 0x00000001u; /* 027B6ED0 */ if (_t82) goto L_027B6ED4; else goto L_027B6EE4; L_027B6ED4: ; // 0x27b6ed4 /* 027B6ED4 */ cpu->r[3] = 0x00000010u; /* 027B6ED8 */ Gambit_fn_02801A78(cpu); /* 027B6EDC */ cpu->r[26] = cpu->r[3]; /* 027B6EDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B6EE0 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6EE0 */ _t84 = _t83 & 0x00000001u; /* 027B6EE0 */ if (_t84) goto L_027B6F34; else goto L_027B6EE4; L_027B6EE4: ; // 0x27b6ee4 /* 027B6EE4 */ _t85 = cpu->r[1] + 0x0000001Cu; /* 027B6EE4 */ rbrew_write32(cpu->mem, _t85, cpu->r[27]); /* 027B6EE8 */ cpu->r[3] = cpu->r[26]; /* 027B6EE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6EEC */ _t86 = cpu->r[1] + 0x00000018u; /* 027B6EEC */ rbrew_write16(cpu->mem, _t86, (uint16_t)cpu->r[29]); /* 027B6EF0 */ _t87 = cpu->r[1] + 0x0000001Au; /* 027B6EF0 */ rbrew_write16(cpu->mem, _t87, (uint16_t)cpu->r[28]); /* 027B6EF4 */ _t88 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6EF4 */ _t89 = _t88 & 0x00000001u; /* 027B6EF4 */ if (_t89) goto L_027B6EF8; else goto L_027B6F08; L_027B6EF8: ; // 0x27b6ef8 /* 027B6EF8 */ cpu->r[3] = 0x00000010u; /* 027B6EFC */ Gambit_fn_02801A78(cpu); /* 027B6F00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6F04 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6F04 */ _t91 = _t90 & 0x00000001u; /* 027B6F04 */ if (_t91) goto L_027B6F28; else goto L_027B6F08; L_027B6F08: ; // 0x27b6f08 /* 027B6F08 */ cpu->r[0] = 0x10110000u; /* 027B6F0C */ _t92 = cpu->r[3] + 0x00000004u; /* 027B6F0C */ rbrew_write32(cpu->mem, _t92, cpu->r[31]); /* 027B6F10 */ cpu->r[0] = cpu->r[0] + 0xFFFFB52Cu; /* 027B6F14 */ _t93 = cpu->r[3] + 0x00000000u; /* 027B6F14 */ rbrew_write32(cpu->mem, _t93, cpu->r[0]); /* 027B6F18 */ _t94 = cpu->r[1] + 0x00000018u; /* 027B6F18 */ cpu->r[12] = rbrew_read32(cpu->mem, _t94); /* 027B6F1C */ _t95 = cpu->r[3] + 0x00000008u; /* 027B6F1C */ rbrew_write32(cpu->mem, _t95, cpu->r[12]); /* 027B6F20 */ _t96 = cpu->r[1] + 0x0000001Cu; /* 027B6F20 */ cpu->r[0] = rbrew_read32(cpu->mem, _t96); /* 027B6F24 */ _t97 = cpu->r[3] + 0x0000000Cu; /* 027B6F24 */ rbrew_write32(cpu->mem, _t97, cpu->r[0]); L_027B6F28: ; // 0x27b6f28 /* 027B6F28 */ cpu->r[6] = 0x10110000u; /* 027B6F2C */ cpu->r[6] = cpu->r[6] + 0xFFFFB544u; /* 027B6F30 */ _t98 = cpu->r[26] + 0x00000000u; /* 027B6F30 */ rbrew_write32(cpu->mem, _t98, cpu->r[6]); L_027B6F34: ; // 0x27b6f34 /* 027B6F34 */ cpu->r[26] = cpu->r[31] + 0x00000068u; /* 027B6F34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B6F38 */ cpu->r[27] = 0x027C0000u; /* 027B6F3C */ cpu->r[28] = 0xFFFFFFFFu; /* 027B6F40 */ cpu->r[29] = 0x00000000u; /* 027B6F44 */ cpu->r[27] = cpu->r[27] + 0xFFFFA628u; /* 027B6F48 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6F48 */ _t100 = _t99 & 0x00000001u; /* 027B6F48 */ if (_t100) goto L_027B6F4C; else goto L_027B6F5C; L_027B6F4C: ; // 0x27b6f4c /* 027B6F4C */ cpu->r[3] = 0x00000010u; /* 027B6F50 */ Gambit_fn_02801A78(cpu); /* 027B6F54 */ cpu->r[26] = cpu->r[3]; /* 027B6F54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B6F58 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6F58 */ _t102 = _t101 & 0x00000001u; /* 027B6F58 */ if (_t102) goto L_027B6FAC; else goto L_027B6F5C; L_027B6F5C: ; // 0x27b6f5c /* 027B6F5C */ _t103 = cpu->r[1] + 0x00000024u; /* 027B6F5C */ rbrew_write32(cpu->mem, _t103, cpu->r[27]); /* 027B6F60 */ cpu->r[3] = cpu->r[26]; /* 027B6F60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6F64 */ _t104 = cpu->r[1] + 0x00000020u; /* 027B6F64 */ rbrew_write16(cpu->mem, _t104, (uint16_t)cpu->r[29]); /* 027B6F68 */ _t105 = cpu->r[1] + 0x00000022u; /* 027B6F68 */ rbrew_write16(cpu->mem, _t105, (uint16_t)cpu->r[28]); /* 027B6F6C */ _t106 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6F6C */ _t107 = _t106 & 0x00000001u; /* 027B6F6C */ if (_t107) goto L_027B6F70; else goto L_027B6F80; L_027B6F70: ; // 0x27b6f70 /* 027B6F70 */ cpu->r[3] = 0x00000010u; /* 027B6F74 */ Gambit_fn_02801A78(cpu); /* 027B6F78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6F7C */ _t108 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6F7C */ _t109 = _t108 & 0x00000001u; /* 027B6F7C */ if (_t109) goto L_027B6FA0; else goto L_027B6F80; L_027B6F80: ; // 0x27b6f80 /* 027B6F80 */ cpu->r[0] = 0x10110000u; /* 027B6F84 */ _t110 = cpu->r[3] + 0x00000004u; /* 027B6F84 */ rbrew_write32(cpu->mem, _t110, cpu->r[31]); /* 027B6F88 */ cpu->r[0] = cpu->r[0] + 0xFFFFB55Cu; /* 027B6F8C */ _t111 = cpu->r[3] + 0x00000000u; /* 027B6F8C */ rbrew_write32(cpu->mem, _t111, cpu->r[0]); /* 027B6F90 */ _t112 = cpu->r[1] + 0x00000020u; /* 027B6F90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t112); /* 027B6F94 */ _t113 = cpu->r[3] + 0x00000008u; /* 027B6F94 */ rbrew_write32(cpu->mem, _t113, cpu->r[9]); /* 027B6F98 */ _t114 = cpu->r[1] + 0x00000024u; /* 027B6F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t114); /* 027B6F9C */ _t115 = cpu->r[3] + 0x0000000Cu; /* 027B6F9C */ rbrew_write32(cpu->mem, _t115, cpu->r[0]); L_027B6FA0: ; // 0x27b6fa0 /* 027B6FA0 */ cpu->r[0] = 0x10110000u; /* 027B6FA4 */ cpu->r[0] = cpu->r[0] + 0xFFFFB574u; /* 027B6FA8 */ _t116 = cpu->r[26] + 0x00000000u; /* 027B6FA8 */ rbrew_write32(cpu->mem, _t116, cpu->r[0]); L_027B6FAC: ; // 0x27b6fac /* 027B6FAC */ cpu->r[29] = cpu->r[31] + 0x00000078u; /* 027B6FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B6FB0 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6FB0 */ _t118 = _t117 & 0x00000001u; /* 027B6FB0 */ if (_t118) goto L_027B6FB4; else goto L_027B6FC4; L_027B6FB4: ; // 0x27b6fb4 /* 027B6FB4 */ cpu->r[3] = 0x0000005Cu; /* 027B6FB8 */ Gambit_fn_02801A78(cpu); /* 027B6FBC */ cpu->r[29] = cpu->r[3]; /* 027B6FBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B6FC0 */ _t119 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6FC0 */ _t120 = _t119 & 0x00000001u; /* 027B6FC0 */ if (_t120) goto L_027B6FF8; else goto L_027B6FC4; L_027B6FC4: ; // 0x27b6fc4 /* 027B6FC4 */ cpu->r[3] = cpu->r[29]; /* 027B6FC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6FC8 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6FC8 */ _t122 = _t121 & 0x00000001u; /* 027B6FC8 */ if (_t122) goto L_027B6FCC; else goto L_027B6FDC; L_027B6FCC: ; // 0x27b6fcc /* 027B6FCC */ cpu->r[3] = 0x0000000Cu; /* 027B6FD0 */ Gambit_fn_02801A78(cpu); /* 027B6FD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6FD8 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B6FD8 */ _t124 = _t123 & 0x00000001u; /* 027B6FD8 */ if (_t124) goto L_027B6FE8; else goto L_027B6FDC; L_027B6FDC: ; // 0x27b6fdc /* 027B6FDC */ _t125 = cpu->r[3] + 0x00000004u; /* 027B6FDC */ rbrew_write32(cpu->mem, _t125, cpu->r[30]); /* 027B6FE0 */ _t126 = cpu->r[3] + 0x00000000u; /* 027B6FE0 */ rbrew_write32(cpu->mem, _t126, cpu->r[30]); /* 027B6FE4 */ _t127 = cpu->r[3] + 0x00000008u; /* 027B6FE4 */ rbrew_write32(cpu->mem, _t127, cpu->r[30]); L_027B6FE8: ; // 0x27b6fe8 /* 027B6FE8 */ cpu->r[4] = 0x00000014u; /* 027B6FEC */ cpu->r[5] = cpu->r[29] + 0x0000000Cu; /* 027B6FF0 */ cpu->r[3] = cpu->r[29]; /* 027B6FF4 */ Gambit_fn_028023A8(cpu); L_027B6FF8: ; // 0x27b6ff8 /* 027B6FF8 */ cpu->r[3] = cpu->r[31] + 0x000000D8u; /* 027B6FF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B6FFC */ _t128 = cpu->r[31] + 0x000000D4u; /* 027B6FFC */ rbrew_write8(cpu->mem, _t128, (uint8_t)cpu->r[30]); /* 027B7000 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7000 */ _t130 = _t129 & 0x00000001u; /* 027B7000 */ if (_t130) goto L_027B7004; else goto L_027B7014; L_027B7004: ; // 0x27b7004 /* 027B7004 */ cpu->r[3] = 0x00000008u; /* 027B7008 */ Gambit_fn_02801A78(cpu); /* 027B700C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7010 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7010 */ _t132 = _t131 & 0x00000001u; /* 027B7010 */ if (_t132) goto L_027B701C; else goto L_027B7014; L_027B7014: ; // 0x27b7014 /* 027B7014 */ _t133 = cpu->r[3] + 0x00000004u; /* 027B7014 */ rbrew_write32(cpu->mem, _t133, cpu->r[30]); /* 027B7018 */ _t134 = cpu->r[3] + 0x00000000u; /* 027B7018 */ rbrew_write32(cpu->mem, _t134, cpu->r[30]); L_027B701C: ; // 0x27b701c /* 027B701C */ cpu->r[3] = cpu->r[31]; /* 027B7020 */ /* nop */ /* 027B7024 */ _t135 = cpu->r[1] + 0x00000044u; /* 027B7024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t135); /* 027B7028 */ cpu->lr = cpu->r[0]; /* 027B702C */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027B7030 */ return; } // fn_027B7034 @ 0x27b7034 void Gambit_fn_027B7034(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5; L_027B7034: ; // 0x27b7034 /* 027B7034 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B7034 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B7038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B703C */ cpu->r[0] = 0x00000000u; /* 027B7040 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7040 */ _t2 = _t1 & 0x00000001u; /* 027B7040 */ if (_t2) goto L_027B7054; else goto L_027B7044; L_027B7044: ; // 0x27b7044 /* 027B7044 */ _t3 = cpu->r[12] + 0x00000018u; /* 027B7044 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B7048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B704C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B704C */ _t5 = _t4 & 0x00000001u; /* 027B704C */ if (_t5) goto L_027B7054; else goto L_027B7050; L_027B7050: ; // 0x27b7050 /* 027B7050 */ cpu->r[0] = 0x00000001u; L_027B7054: ; // 0x27b7054 /* 027B7054 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027B7058 */ return; } // fn_027B705C @ 0x27b705c void Gambit_fn_027B705C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027B705C: ; // 0x27b705c /* 027B705C */ _t0 = cpu->r[3] + 0x0000000Cu; /* 027B705C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B7060 */ cpu->r[7] = 0x00000000u; /* 027B7064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7068 */ cpu->r[9] = cpu->r[7]; /* 027B706C */ _t1 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B706C */ _t2 = _t1 & 0x00000001u; /* 027B706C */ if (_t2) goto L_027B7070; else goto L_027B70A4; L_027B7070: ; // 0x27b7070 /* 027B7070 */ cpu->ctr = cpu->r[12]; /* 027B7074 */ cpu->r[0] = cpu->r[12]; /* 027B7078 */ cpu->r[8] = 0x00000000u; L_027B707C: ; // 0x27b707c /* 027B707C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]); /* 027B7080 */ cpu->r[11] = 0x00000000u; /* 027B7084 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B7084 */ _t4 = _t3 & 0x00000001u; /* 027B7084 */ if (_t4) goto L_027B7088; else goto L_027B7090; L_027B7088: ; // 0x27b7088 /* 027B7088 */ _t5 = cpu->r[3] + 0x00000014u; /* 027B7088 */ cpu->r[5] = rbrew_read32(cpu->mem, _t5); /* 027B708C */ _t6 = cpu->r[5] + cpu->r[8]; /* 027B708C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); L_027B7090: ; // 0x27b7090 /* 027B7090 */ _t7 = cpu->r[11] + 0x00000000u; /* 027B7090 */ cpu->r[6] = rbrew_read32(cpu->mem, _t7); /* 027B7094 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B7098 */ cpu->r[8] = cpu->r[8] + 0x00000004u; /* 027B709C */ cpu->r[7] = cpu->r[7] + cpu->r[6]; /* 027B70A0 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B70A0 */ _t8 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B70A0 */ _t9 = _t8 >> (0x00000002u & 31u); /* 027B70A0 */ _t10 = _t9 & 0x00000001u; /* 027B70A0 */ if (_t10) goto L_027B707C; else goto L_027B70A4; L_027B70A4: ; // 0x27b70a4 /* 027B70A4 */ _t11 = cpu->r[3] + 0x00000000u; /* 027B70A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11); /* 027B70A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B70AC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B70AC */ _t13 = _t12 & 0x00000001u; /* 027B70AC */ if (_t13) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B70AC */ goto L_027B70B0; L_027B70B0: ; // 0x27b70b0 /* 027B70B0 */ _t14 = cpu->r[10] + 0x0000001Cu; /* 027B70B0 */ rbrew_write32(cpu->mem, _t14, cpu->r[7]); /* 027B70B4 */ return; } // fn_027B70B8 @ 0x27b70b8 void Gambit_fn_027B70B8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5; L_027B70B8: ; // 0x27b70b8 /* 027B70B8 */ cpu->r[0] = cpu->lr; /* 027B70BC */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B70BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B70BC */ cpu->r[1] = _t0; /* 027B70C0 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B70C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B70C4 */ cpu->r[31] = cpu->r[3]; /* 027B70C8 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B70C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B70CC */ _t3 = cpu->r[31] + 0x00000004u; /* 027B70CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3); /* 027B70D0 */ Gambit_fn_027B60AC(cpu); /* 027B70D4 */ cpu->r[3] = cpu->r[31]; /* 027B70D8 */ Gambit_fn_027B705C(cpu); /* 027B70DC */ _t4 = cpu->r[1] + 0x00000014u; /* 027B70DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027B70E0 */ _t5 = cpu->r[1] + 0x0000000Cu; /* 027B70E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5); /* 027B70E4 */ cpu->lr = cpu->r[0]; /* 027B70E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B70EC */ return; } // fn_027B70BC @ 0x27b70bc void Gambit_fn_027B70BC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5; L_027B70BC: ; // 0x27b70bc /* 027B70BC */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B70BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B70BC */ cpu->r[1] = _t0; /* 027B70C0 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B70C0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B70C4 */ cpu->r[31] = cpu->r[3]; /* 027B70C8 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B70C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B70CC */ _t3 = cpu->r[31] + 0x00000004u; /* 027B70CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t3); /* 027B70D0 */ Gambit_fn_027B60AC(cpu); /* 027B70D4 */ cpu->r[3] = cpu->r[31]; /* 027B70D8 */ Gambit_fn_027B705C(cpu); /* 027B70DC */ _t4 = cpu->r[1] + 0x00000014u; /* 027B70DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027B70E0 */ _t5 = cpu->r[1] + 0x0000000Cu; /* 027B70E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5); /* 027B70E4 */ cpu->lr = cpu->r[0]; /* 027B70E8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B70EC */ return; } // fn_027B70F0 @ 0x27b70f0 void Gambit_fn_027B70F0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40; L_027B70F0: ; // 0x27b70f0 /* 027B70F0 */ cpu->r[0] = cpu->lr; /* 027B70F4 */ _t0 = cpu->r[1] + 0xFFFFFF98u; /* 027B70F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B70F4 */ cpu->r[1] = _t0; /* 027B70F8 */ _t1 = cpu->r[1] + 0x0000005Cu; /* 027B70F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B70FC */ _t2 = cpu->r[1] + 0x00000060u; /* 027B70FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B7100 */ _t3 = cpu->r[1] + 0x00000058u; /* 027B7100 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]); /* 027B7104 */ _t4 = cpu->r[1] + 0x00000064u; /* 027B7104 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B7108 */ _t5 = cpu->r[1] + 0x0000006Cu; /* 027B7108 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B710C */ _t6 = cpu->r[3] + 0x000000E0u; /* 027B710C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B7110 */ _t7 = cpu->r[11] + 0x00000074u; /* 027B7110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027B7114 */ cpu->ctr = cpu->r[0]; /* 027B7118 */ cpu->r[30] = cpu->r[3]; /* 027B711C */ cpu->r[31] = cpu->r[4]; /* 027B7120 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7128 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7128 */ _t9 = _t8 & 0x00000001u; /* 027B7128 */ if (_t9) goto L_027B71F0; else goto L_027B712C; L_027B712C: ; // 0x27b712c /* 027B712C */ _t10 = cpu->r[30] + 0x00000000u; /* 027B712C */ cpu->r[6] = rbrew_read32(cpu->mem, _t10); /* 027B7130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u); /* 027B7134 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7134 */ _t12 = _t11 & 0x00000001u; /* 027B7134 */ if (_t12) goto L_027B71F0; else goto L_027B7138; L_027B7138: ; // 0x27b7138 /* 027B7138 */ cpu->r[12] = 0x10110000u; /* 027B713C */ _t13 = cpu->r[31] + 0x00000004u; /* 027B713C */ cpu->r[11] = rbrew_read32(cpu->mem, _t13); /* 027B7140 */ cpu->r[7] = cpu->r[1] + 0x00000014u; /* 027B7144 */ _t14 = cpu->r[12] + 0x00007399u; /* 027B7144 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14); /* 027B7148 */ cpu->r[0] = 0x10110000u; /* 027B714C */ _t15 = cpu->r[1] + 0x00000008u; /* 027B714C */ rbrew_write32(cpu->mem, _t15, cpu->r[7]); /* 027B7150 */ cpu->r[0] = cpu->r[0] + 0xFFFFB444u; /* 027B7154 */ _t16 = cpu->r[1] + 0x00000014u; /* 027B7154 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[12]); /* 027B7158 */ cpu->r[8] = 0x00000040u; /* 027B715C */ _t17 = cpu->r[1] + 0x0000000Cu; /* 027B715C */ rbrew_write32(cpu->mem, _t17, cpu->r[0]); /* 027B7160 */ _t18 = cpu->r[1] + 0x00000010u; /* 027B7160 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]); /* 027B7164 */ _t19 = cpu->r[1] + 0x00000053u; /* 027B7164 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[12]); /* 027B7168 */ _t20 = cpu->r[11] + 0x00000014u; /* 027B7168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027B716C */ _t21 = cpu->r[30] + 0x00000004u; /* 027B716C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21); /* 027B7170 */ cpu->ctr = cpu->r[0]; /* 027B7174 */ _t22 = cpu->r[10] + 0x00000004u; /* 027B7174 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22); /* 027B7178 */ cpu->r[3] = cpu->r[31]; /* 027B717C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7180 */ _t23 = cpu->r[29] + 0x00000034u; /* 027B7180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B7184 */ _t24 = cpu->r[31] + 0x00000000u; /* 027B7184 */ cpu->r[5] = rbrew_read32(cpu->mem, _t24); /* 027B7188 */ cpu->ctr = cpu->r[0]; /* 027B718C */ _t25 = cpu->r[30] + 0x00000004u; /* 027B718C */ cpu->r[3] = rbrew_read32(cpu->mem, _t25); /* 027B7190 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B7194 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7198 */ _t26 = cpu->r[30] + 0x00000004u; /* 027B7198 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26); /* 027B719C */ cpu->r[29] = 0x00000000u; /* 027B71A0 */ _t27 = cpu->r[12] + 0x00000018u; /* 027B71A0 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]); /* 027B71A4 */ _t28 = cpu->r[1] + 0x0000000Cu; /* 027B71A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28); /* 027B71A8 */ _t29 = cpu->r[8] + 0x00000014u; /* 027B71A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027B71AC */ cpu->ctr = cpu->r[0]; /* 027B71B0 */ _t30 = cpu->r[30] + 0x000000E0u; /* 027B71B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30); /* 027B71B4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B71B8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B71BC */ _t31 = cpu->r[30] + 0x00000004u; /* 027B71BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t31); /* 027B71C0 */ _t32 = cpu->r[3] + 0x00000004u; /* 027B71C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32); /* 027B71C4 */ _t33 = cpu->r[10] + 0x00000044u; /* 027B71C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33); /* 027B71C8 */ _t34 = cpu->r[31] + 0x000000B4u; /* 027B71C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34); /* 027B71CC */ cpu->ctr = cpu->r[0]; /* 027B71D0 */ _t35 = cpu->r[1] + 0x00000008u; /* 027B71D0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t35); /* 027B71D4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B71D8 */ cpu->ctr = cpu->r[31]; /* 027B71DC */ cpu->r[5] = cpu->r[3]; /* 027B71E0 */ cpu->r[6] = cpu->r[29]; /* 027B71E4 */ cpu->r[4] = cpu->r[28]; /* 027B71E8 */ cpu->r[3] = cpu->r[30]; /* 027B71EC */ rbrew_call_indirect(cpu, cpu->ctr); L_027B71F0: ; // 0x27b71f0 /* 027B71F0 */ _t36 = cpu->r[1] + 0x00000058u; /* 027B71F0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36); /* 027B71F4 */ _t37 = cpu->r[1] + 0x0000005Cu; /* 027B71F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37); /* 027B71F8 */ _t38 = cpu->r[1] + 0x0000006Cu; /* 027B71F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027B71FC */ _t39 = cpu->r[1] + 0x00000060u; /* 027B71FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t39); /* 027B7200 */ cpu->lr = cpu->r[0]; /* 027B7204 */ _t40 = cpu->r[1] + 0x00000064u; /* 027B7204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40); /* 027B7208 */ cpu->r[1] = cpu->r[1] + 0x00000068u; /* 027B720C */ return; } // fn_027B70F4 @ 0x27b70f4 void Gambit_fn_027B70F4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40; L_027B70F4: ; // 0x27b70f4 /* 027B70F4 */ _t0 = cpu->r[1] + 0xFFFFFF98u; /* 027B70F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B70F4 */ cpu->r[1] = _t0; /* 027B70F8 */ _t1 = cpu->r[1] + 0x0000005Cu; /* 027B70F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B70FC */ _t2 = cpu->r[1] + 0x00000060u; /* 027B70FC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B7100 */ _t3 = cpu->r[1] + 0x00000058u; /* 027B7100 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]); /* 027B7104 */ _t4 = cpu->r[1] + 0x00000064u; /* 027B7104 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B7108 */ _t5 = cpu->r[1] + 0x0000006Cu; /* 027B7108 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B710C */ _t6 = cpu->r[3] + 0x000000E0u; /* 027B710C */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B7110 */ _t7 = cpu->r[11] + 0x00000074u; /* 027B7110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027B7114 */ cpu->ctr = cpu->r[0]; /* 027B7118 */ cpu->r[30] = cpu->r[3]; /* 027B711C */ cpu->r[31] = cpu->r[4]; /* 027B7120 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7124 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7128 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7128 */ _t9 = _t8 & 0x00000001u; /* 027B7128 */ if (_t9) goto L_027B71F0; else goto L_027B712C; L_027B712C: ; // 0x27b712c /* 027B712C */ _t10 = cpu->r[30] + 0x00000000u; /* 027B712C */ cpu->r[6] = rbrew_read32(cpu->mem, _t10); /* 027B7130 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u); /* 027B7134 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7134 */ _t12 = _t11 & 0x00000001u; /* 027B7134 */ if (_t12) goto L_027B71F0; else goto L_027B7138; L_027B7138: ; // 0x27b7138 /* 027B7138 */ cpu->r[12] = 0x10110000u; /* 027B713C */ _t13 = cpu->r[31] + 0x00000004u; /* 027B713C */ cpu->r[11] = rbrew_read32(cpu->mem, _t13); /* 027B7140 */ cpu->r[7] = cpu->r[1] + 0x00000014u; /* 027B7144 */ _t14 = cpu->r[12] + 0x00007399u; /* 027B7144 */ cpu->r[12] = rbrew_read8(cpu->mem, _t14); /* 027B7148 */ cpu->r[0] = 0x10110000u; /* 027B714C */ _t15 = cpu->r[1] + 0x00000008u; /* 027B714C */ rbrew_write32(cpu->mem, _t15, cpu->r[7]); /* 027B7150 */ cpu->r[0] = cpu->r[0] + 0xFFFFB444u; /* 027B7154 */ _t16 = cpu->r[1] + 0x00000014u; /* 027B7154 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[12]); /* 027B7158 */ cpu->r[8] = 0x00000040u; /* 027B715C */ _t17 = cpu->r[1] + 0x0000000Cu; /* 027B715C */ rbrew_write32(cpu->mem, _t17, cpu->r[0]); /* 027B7160 */ _t18 = cpu->r[1] + 0x00000010u; /* 027B7160 */ rbrew_write32(cpu->mem, _t18, cpu->r[8]); /* 027B7164 */ _t19 = cpu->r[1] + 0x00000053u; /* 027B7164 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[12]); /* 027B7168 */ _t20 = cpu->r[11] + 0x00000014u; /* 027B7168 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027B716C */ _t21 = cpu->r[30] + 0x00000004u; /* 027B716C */ cpu->r[10] = rbrew_read32(cpu->mem, _t21); /* 027B7170 */ cpu->ctr = cpu->r[0]; /* 027B7174 */ _t22 = cpu->r[10] + 0x00000004u; /* 027B7174 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22); /* 027B7178 */ cpu->r[3] = cpu->r[31]; /* 027B717C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7180 */ _t23 = cpu->r[29] + 0x00000034u; /* 027B7180 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B7184 */ _t24 = cpu->r[31] + 0x00000000u; /* 027B7184 */ cpu->r[5] = rbrew_read32(cpu->mem, _t24); /* 027B7188 */ cpu->ctr = cpu->r[0]; /* 027B718C */ _t25 = cpu->r[30] + 0x00000004u; /* 027B718C */ cpu->r[3] = rbrew_read32(cpu->mem, _t25); /* 027B7190 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B7194 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7198 */ _t26 = cpu->r[30] + 0x00000004u; /* 027B7198 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26); /* 027B719C */ cpu->r[29] = 0x00000000u; /* 027B71A0 */ _t27 = cpu->r[12] + 0x00000018u; /* 027B71A0 */ rbrew_write32(cpu->mem, _t27, cpu->r[29]); /* 027B71A4 */ _t28 = cpu->r[1] + 0x0000000Cu; /* 027B71A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28); /* 027B71A8 */ _t29 = cpu->r[8] + 0x00000014u; /* 027B71A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027B71AC */ cpu->ctr = cpu->r[0]; /* 027B71B0 */ _t30 = cpu->r[30] + 0x000000E0u; /* 027B71B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30); /* 027B71B4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B71B8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B71BC */ _t31 = cpu->r[30] + 0x00000004u; /* 027B71BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t31); /* 027B71C0 */ _t32 = cpu->r[3] + 0x00000004u; /* 027B71C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32); /* 027B71C4 */ _t33 = cpu->r[10] + 0x00000044u; /* 027B71C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33); /* 027B71C8 */ _t34 = cpu->r[31] + 0x000000B4u; /* 027B71C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t34); /* 027B71CC */ cpu->ctr = cpu->r[0]; /* 027B71D0 */ _t35 = cpu->r[1] + 0x00000008u; /* 027B71D0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t35); /* 027B71D4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B71D8 */ cpu->ctr = cpu->r[31]; /* 027B71DC */ cpu->r[5] = cpu->r[3]; /* 027B71E0 */ cpu->r[6] = cpu->r[29]; /* 027B71E4 */ cpu->r[4] = cpu->r[28]; /* 027B71E8 */ cpu->r[3] = cpu->r[30]; /* 027B71EC */ rbrew_call_indirect(cpu, cpu->ctr); L_027B71F0: ; // 0x27b71f0 /* 027B71F0 */ _t36 = cpu->r[1] + 0x00000058u; /* 027B71F0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36); /* 027B71F4 */ _t37 = cpu->r[1] + 0x0000005Cu; /* 027B71F4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37); /* 027B71F8 */ _t38 = cpu->r[1] + 0x0000006Cu; /* 027B71F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027B71FC */ _t39 = cpu->r[1] + 0x00000060u; /* 027B71FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t39); /* 027B7200 */ cpu->lr = cpu->r[0]; /* 027B7204 */ _t40 = cpu->r[1] + 0x00000064u; /* 027B7204 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40); /* 027B7208 */ cpu->r[1] = cpu->r[1] + 0x00000068u; /* 027B720C */ return; } // fn_027B7210 @ 0x27b7210 void Gambit_fn_027B7210(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9; L_027B7210: ; // 0x27b7210 /* 027B7210 */ cpu->r[0] = cpu->lr; /* 027B7214 */ _t0 = cpu->r[1] + 0x00000004u; /* 027B7214 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027B7218 */ _t1 = cpu->r[1] + 0xFFFFFFE0u; /* 027B7218 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027B7218 */ cpu->r[1] = _t1; /* 027B721C */ _t2 = cpu->r[3] + 0x00000000u; /* 027B721C */ cpu->r[12] = rbrew_read32(cpu->mem, _t2); /* 027B7220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7224 */ cpu->r[5] = cpu->r[4]; /* 027B7228 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7228 */ _t4 = _t3 & 0x00000001u; /* 027B7228 */ if (_t4) goto L_027B7244; else goto L_027B722C; L_027B722C: ; // 0x27b722c /* 027B722C */ _t5 = cpu->r[12] + 0x00000014u; /* 027B722C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B7230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7234 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7234 */ _t7 = _t6 & 0x00000001u; /* 027B7234 */ if (_t7) goto L_027B7244; else goto L_027B7238; L_027B7238: ; // 0x27b7238 /* 027B7238 */ _t8 = cpu->r[12] + 0x00000014u; /* 027B7238 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8); /* 027B723C */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B7240 */ Gambit_fn_028B2320(cpu); L_027B7244: ; // 0x27b7244 /* 027B7244 */ _t9 = cpu->r[1] + 0x00000024u; /* 027B7244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027B7248 */ cpu->lr = cpu->r[0]; /* 027B724C */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B7250 */ return; } // fn_027B7218 @ 0x27b7218 void Gambit_fn_027B7218(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8; L_027B7218: ; // 0x27b7218 /* 027B7218 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B7218 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7218 */ cpu->r[1] = _t0; /* 027B721C */ _t1 = cpu->r[3] + 0x00000000u; /* 027B721C */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027B7220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7224 */ cpu->r[5] = cpu->r[4]; /* 027B7228 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7228 */ _t3 = _t2 & 0x00000001u; /* 027B7228 */ if (_t3) goto L_027B7244; else goto L_027B722C; L_027B722C: ; // 0x27b722c /* 027B722C */ _t4 = cpu->r[12] + 0x00000014u; /* 027B722C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027B7230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7234 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7234 */ _t6 = _t5 & 0x00000001u; /* 027B7234 */ if (_t6) goto L_027B7244; else goto L_027B7238; L_027B7238: ; // 0x27b7238 /* 027B7238 */ _t7 = cpu->r[12] + 0x00000014u; /* 027B7238 */ cpu->r[3] = rbrew_read32(cpu->mem, _t7); /* 027B723C */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B7240 */ Gambit_fn_028B2320(cpu); L_027B7244: ; // 0x27b7244 /* 027B7244 */ _t8 = cpu->r[1] + 0x00000024u; /* 027B7244 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B7248 */ cpu->lr = cpu->r[0]; /* 027B724C */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B7250 */ return; } // fn_027B7254 @ 0x27b7254 void Gambit_fn_027B7254(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027B7254: ; // 0x27b7254 /* 027B7254 */ cpu->r[0] = cpu->lr; /* 027B7258 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B7258 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7258 */ cpu->r[1] = _t0; /* 027B725C */ _t1 = cpu->r[1] + 0x00000018u; /* 027B725C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B7260 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B7260 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027B7264 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027B7264 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B7268 */ _t4 = cpu->r[1] + 0x00000024u; /* 027B7268 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B726C */ cpu->r[29] = cpu->r[3]; /* 027B7270 */ _t5 = cpu->r[29] + 0x00000000u; /* 027B7270 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5); /* 027B7274 */ cpu->r[31] = cpu->r[5]; /* 027B7278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B727C */ cpu->r[30] = cpu->r[4]; /* 027B7280 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7280 */ _t7 = _t6 & 0x00000001u; /* 027B7280 */ if (_t7) goto L_027B72D4; else goto L_027B7284; L_027B7284: ; // 0x27b7284 /* 027B7284 */ _t8 = cpu->r[8] + 0x00000014u; /* 027B7284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B7288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B728C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B728C */ _t10 = _t9 & 0x00000001u; /* 027B728C */ if (_t10) goto L_027B72D4; else goto L_027B7290; L_027B7290: ; // 0x27b7290 /* 027B7290 */ _t11 = cpu->r[8] + 0x00000014u; /* 027B7290 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); /* 027B7294 */ _t12 = cpu->r[3] + 0x0000005Cu; /* 027B7294 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027B7298 */ _t13 = cpu->r[12] + 0x00000014u; /* 027B7298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B729C */ cpu->ctr = cpu->r[0]; /* 027B72A0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B72A4 */ _t14 = cpu->r[29] + 0x00000000u; /* 027B72A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14); /* 027B72A8 */ _t15 = cpu->r[7] + 0x00000014u; /* 027B72A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15); /* 027B72AC */ _t16 = cpu->r[9] + 0x00000066u; /* 027B72AC */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[31]); /* 027B72B0 */ _t17 = cpu->r[29] + 0x00000000u; /* 027B72B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17); /* 027B72B4 */ cpu->r[31] = cpu->r[3]; /* 027B72B8 */ cpu->r[5] = cpu->r[30]; /* 027B72BC */ _t18 = cpu->r[7] + 0x00000014u; /* 027B72BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18); /* 027B72C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B72C4 */ Gambit_fn_028B2320(cpu); /* 027B72C8 */ _t19 = cpu->r[29] + 0x00000000u; /* 027B72C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19); /* 027B72CC */ _t20 = cpu->r[7] + 0x00000014u; /* 027B72CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t20); /* 027B72D0 */ _t21 = cpu->r[10] + 0x00000066u; /* 027B72D0 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[31]); L_027B72D4: ; // 0x27b72d4 /* 027B72D4 */ _t22 = cpu->r[1] + 0x00000014u; /* 027B72D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22); /* 027B72D8 */ _t23 = cpu->r[1] + 0x00000024u; /* 027B72D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B72DC */ _t24 = cpu->r[1] + 0x00000018u; /* 027B72DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t24); /* 027B72E0 */ cpu->lr = cpu->r[0]; /* 027B72E4 */ _t25 = cpu->r[1] + 0x0000001Cu; /* 027B72E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25); /* 027B72E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B72EC */ return; } // fn_027B7258 @ 0x27b7258 void Gambit_fn_027B7258(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027B7258: ; // 0x27b7258 /* 027B7258 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B7258 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7258 */ cpu->r[1] = _t0; /* 027B725C */ _t1 = cpu->r[1] + 0x00000018u; /* 027B725C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B7260 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B7260 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027B7264 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027B7264 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B7268 */ _t4 = cpu->r[1] + 0x00000024u; /* 027B7268 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B726C */ cpu->r[29] = cpu->r[3]; /* 027B7270 */ _t5 = cpu->r[29] + 0x00000000u; /* 027B7270 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5); /* 027B7274 */ cpu->r[31] = cpu->r[5]; /* 027B7278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B727C */ cpu->r[30] = cpu->r[4]; /* 027B7280 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7280 */ _t7 = _t6 & 0x00000001u; /* 027B7280 */ if (_t7) goto L_027B72D4; else goto L_027B7284; L_027B7284: ; // 0x27b7284 /* 027B7284 */ _t8 = cpu->r[8] + 0x00000014u; /* 027B7284 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B7288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B728C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B728C */ _t10 = _t9 & 0x00000001u; /* 027B728C */ if (_t10) goto L_027B72D4; else goto L_027B7290; L_027B7290: ; // 0x27b7290 /* 027B7290 */ _t11 = cpu->r[8] + 0x00000014u; /* 027B7290 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); /* 027B7294 */ _t12 = cpu->r[3] + 0x0000005Cu; /* 027B7294 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027B7298 */ _t13 = cpu->r[12] + 0x00000014u; /* 027B7298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B729C */ cpu->ctr = cpu->r[0]; /* 027B72A0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B72A4 */ _t14 = cpu->r[29] + 0x00000000u; /* 027B72A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14); /* 027B72A8 */ _t15 = cpu->r[7] + 0x00000014u; /* 027B72A8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t15); /* 027B72AC */ _t16 = cpu->r[9] + 0x00000066u; /* 027B72AC */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[31]); /* 027B72B0 */ _t17 = cpu->r[29] + 0x00000000u; /* 027B72B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17); /* 027B72B4 */ cpu->r[31] = cpu->r[3]; /* 027B72B8 */ cpu->r[5] = cpu->r[30]; /* 027B72BC */ _t18 = cpu->r[7] + 0x00000014u; /* 027B72BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t18); /* 027B72C0 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B72C4 */ Gambit_fn_028B2320(cpu); /* 027B72C8 */ _t19 = cpu->r[29] + 0x00000000u; /* 027B72C8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19); /* 027B72CC */ _t20 = cpu->r[7] + 0x00000014u; /* 027B72CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t20); /* 027B72D0 */ _t21 = cpu->r[10] + 0x00000066u; /* 027B72D0 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[31]); L_027B72D4: ; // 0x27b72d4 /* 027B72D4 */ _t22 = cpu->r[1] + 0x00000014u; /* 027B72D4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22); /* 027B72D8 */ _t23 = cpu->r[1] + 0x00000024u; /* 027B72D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B72DC */ _t24 = cpu->r[1] + 0x00000018u; /* 027B72DC */ cpu->r[30] = rbrew_read32(cpu->mem, _t24); /* 027B72E0 */ cpu->lr = cpu->r[0]; /* 027B72E4 */ _t25 = cpu->r[1] + 0x0000001Cu; /* 027B72E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25); /* 027B72E8 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B72EC */ return; } // fn_027B72F0 @ 0x27b72f0 void Gambit_fn_027B72F0(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_027B72F0: ; // 0x27b72f0 /* 027B72F0 */ cpu->r[0] = cpu->lr; /* 027B72F4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B72F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B72F4 */ cpu->r[1] = _t0; /* 027B72F8 */ _t1 = cpu->r[1] + 0x00000010u; /* 027B72F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B72FC */ _t2 = cpu->r[1] + 0x00000008u; /* 027B72FC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B7300 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027B7300 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B7304 */ cpu->r[28] = cpu->r[3]; /* 027B7308 */ _t4 = cpu->r[1] + 0x00000014u; /* 027B7308 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B730C */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B730C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B7310 */ cpu->r[29] = cpu->r[4]; /* 027B7314 */ _t6 = cpu->r[28] + 0x00000000u; /* 027B7314 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027B7318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B731C */ cpu->r[30] = cpu->r[5]; /* 027B7320 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7320 */ _t8 = _t7 & 0x00000001u; /* 027B7320 */ if (_t8) goto L_027B738C; else goto L_027B7324; L_027B7324: ; // 0x27b7324 /* 027B7324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B7328 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7328 */ _t10 = _t9 & 0x00000001u; /* 027B7328 */ if (_t10) goto L_027B7370; else goto L_027B732C; L_027B732C: ; // 0x27b732c /* 027B732C */ _t11 = cpu->r[29] + 0x00000000u; /* 027B732C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027B7330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B7334 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7334 */ _t13 = _t12 & 0x00000001u; /* 027B7334 */ if (_t13) goto L_027B7370; else goto L_027B7338; L_027B7338: ; // 0x27b7338 /* 027B7338 */ _t14 = cpu->r[31] + 0x0000000Cu; /* 027B7338 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14); /* 027B733C */ _t15 = cpu->r[29] + 0x00000004u; /* 027B733C */ cpu->r[11] = rbrew_read32(cpu->mem, _t15); /* 027B7340 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]); /* 027B7344 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7344 */ _t17 = _t16 & 0x00000001u; /* 027B7344 */ if (_t17) goto L_027B7348; else goto L_027B7370; L_027B7348: ; // 0x27b7348 /* 027B7348 */ _t18 = cpu->r[31] + 0x00000028u; /* 027B7348 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18); /* 027B734C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7350 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7350 */ _t20 = _t19 & 0x00000001u; /* 027B7350 */ if (_t20) goto L_027B7364; else goto L_027B7354; L_027B7354: ; // 0x27b7354 /* 027B7354 */ _t21 = cpu->r[3] + 0x00000050u; /* 027B7354 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21); /* 027B7358 */ _t22 = cpu->r[12] + 0x00000044u; /* 027B7358 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027B735C */ cpu->ctr = cpu->r[0]; /* 027B7360 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B7364: ; // 0x27b7364 /* 027B7364 */ cpu->r[7] = 0x00000001u; /* 027B7368 */ _t23 = cpu->r[31] + 0x0000004Cu; /* 027B7368 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[7]); /* 027B736C */ _t24 = cpu->r[28] + 0x00000000u; /* 027B736C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24); L_027B7370: ; // 0x27b7370 /* 027B7370 */ _t25 = cpu->r[9] + 0x00000014u; /* 027B7370 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027B7374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7378 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7378 */ _t27 = _t26 & 0x00000001u; /* 027B7378 */ if (_t27) goto L_027B738C; else goto L_027B737C; L_027B737C: ; // 0x27b737c /* 027B737C */ _t28 = cpu->r[9] + 0x00000014u; /* 027B737C */ cpu->r[3] = rbrew_read32(cpu->mem, _t28); /* 027B7380 */ cpu->r[4] = cpu->r[30]; /* 027B7384 */ cpu->r[5] = cpu->r[29]; /* 027B7388 */ Gambit_fn_028B23CC(cpu); L_027B738C: ; // 0x27b738c /* 027B738C */ _t29 = cpu->r[1] + 0x00000008u; /* 027B738C */ cpu->r[28] = rbrew_read32(cpu->mem, _t29); /* 027B7390 */ _t30 = cpu->r[1] + 0x0000000Cu; /* 027B7390 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30); /* 027B7394 */ _t31 = cpu->r[1] + 0x0000001Cu; /* 027B7394 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027B7398 */ _t32 = cpu->r[1] + 0x00000010u; /* 027B7398 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32); /* 027B739C */ cpu->lr = cpu->r[0]; /* 027B73A0 */ _t33 = cpu->r[1] + 0x00000014u; /* 027B73A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33); /* 027B73A4 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B73A8 */ return; } // fn_027B72F4 @ 0x27b72f4 void Gambit_fn_027B72F4(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_027B72F4: ; // 0x27b72f4 /* 027B72F4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B72F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B72F4 */ cpu->r[1] = _t0; /* 027B72F8 */ _t1 = cpu->r[1] + 0x00000010u; /* 027B72F8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B72FC */ _t2 = cpu->r[1] + 0x00000008u; /* 027B72FC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B7300 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027B7300 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B7304 */ cpu->r[28] = cpu->r[3]; /* 027B7308 */ _t4 = cpu->r[1] + 0x00000014u; /* 027B7308 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B730C */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B730C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B7310 */ cpu->r[29] = cpu->r[4]; /* 027B7314 */ _t6 = cpu->r[28] + 0x00000000u; /* 027B7314 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027B7318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B731C */ cpu->r[30] = cpu->r[5]; /* 027B7320 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7320 */ _t8 = _t7 & 0x00000001u; /* 027B7320 */ if (_t8) goto L_027B738C; else goto L_027B7324; L_027B7324: ; // 0x27b7324 /* 027B7324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B7328 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7328 */ _t10 = _t9 & 0x00000001u; /* 027B7328 */ if (_t10) goto L_027B7370; else goto L_027B732C; L_027B732C: ; // 0x27b732c /* 027B732C */ _t11 = cpu->r[29] + 0x00000000u; /* 027B732C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027B7330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B7334 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7334 */ _t13 = _t12 & 0x00000001u; /* 027B7334 */ if (_t13) goto L_027B7370; else goto L_027B7338; L_027B7338: ; // 0x27b7338 /* 027B7338 */ _t14 = cpu->r[31] + 0x0000000Cu; /* 027B7338 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14); /* 027B733C */ _t15 = cpu->r[29] + 0x00000004u; /* 027B733C */ cpu->r[11] = rbrew_read32(cpu->mem, _t15); /* 027B7340 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[11]); /* 027B7344 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7344 */ _t17 = _t16 & 0x00000001u; /* 027B7344 */ if (_t17) goto L_027B7348; else goto L_027B7370; L_027B7348: ; // 0x27b7348 /* 027B7348 */ _t18 = cpu->r[31] + 0x00000028u; /* 027B7348 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18); /* 027B734C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7350 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7350 */ _t20 = _t19 & 0x00000001u; /* 027B7350 */ if (_t20) goto L_027B7364; else goto L_027B7354; L_027B7354: ; // 0x27b7354 /* 027B7354 */ _t21 = cpu->r[3] + 0x00000050u; /* 027B7354 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21); /* 027B7358 */ _t22 = cpu->r[12] + 0x00000044u; /* 027B7358 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027B735C */ cpu->ctr = cpu->r[0]; /* 027B7360 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B7364: ; // 0x27b7364 /* 027B7364 */ cpu->r[7] = 0x00000001u; /* 027B7368 */ _t23 = cpu->r[31] + 0x0000004Cu; /* 027B7368 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[7]); /* 027B736C */ _t24 = cpu->r[28] + 0x00000000u; /* 027B736C */ cpu->r[9] = rbrew_read32(cpu->mem, _t24); L_027B7370: ; // 0x27b7370 /* 027B7370 */ _t25 = cpu->r[9] + 0x00000014u; /* 027B7370 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027B7374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7378 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7378 */ _t27 = _t26 & 0x00000001u; /* 027B7378 */ if (_t27) goto L_027B738C; else goto L_027B737C; L_027B737C: ; // 0x27b737c /* 027B737C */ _t28 = cpu->r[9] + 0x00000014u; /* 027B737C */ cpu->r[3] = rbrew_read32(cpu->mem, _t28); /* 027B7380 */ cpu->r[4] = cpu->r[30]; /* 027B7384 */ cpu->r[5] = cpu->r[29]; /* 027B7388 */ Gambit_fn_028B23CC(cpu); L_027B738C: ; // 0x27b738c /* 027B738C */ _t29 = cpu->r[1] + 0x00000008u; /* 027B738C */ cpu->r[28] = rbrew_read32(cpu->mem, _t29); /* 027B7390 */ _t30 = cpu->r[1] + 0x0000000Cu; /* 027B7390 */ cpu->r[29] = rbrew_read32(cpu->mem, _t30); /* 027B7394 */ _t31 = cpu->r[1] + 0x0000001Cu; /* 027B7394 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027B7398 */ _t32 = cpu->r[1] + 0x00000010u; /* 027B7398 */ cpu->r[30] = rbrew_read32(cpu->mem, _t32); /* 027B739C */ cpu->lr = cpu->r[0]; /* 027B73A0 */ _t33 = cpu->r[1] + 0x00000014u; /* 027B73A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t33); /* 027B73A4 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B73A8 */ return; } // fn_027B73AC @ 0x27b73ac void Gambit_fn_027B73AC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36; L_027B73AC: ; // 0x27b73ac /* 027B73AC */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B73AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B73AC */ cpu->r[1] = _t0; /* 027B73B0 */ /* nop */ /* 027B73B4 */ cpu->r[0] = cpu->lr; /* 027B73B8 */ _t1 = cpu->r[1] + 0x00000024u; /* 027B73B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B73BC */ cpu->r[29] = cpu->r[4]; /* 027B73C0 */ cpu->r[28] = cpu->r[3]; /* 027B73C4 */ _t2 = cpu->r[28] + 0x00000000u; /* 027B73C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2); /* 027B73C8 */ cpu->r[30] = cpu->r[5]; /* 027B73CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B73D0 */ cpu->r[27] = cpu->r[6]; /* 027B73D4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B73D4 */ _t4 = _t3 & 0x00000001u; /* 027B73D4 */ if (_t4) goto L_027B7480; else goto L_027B73D8; L_027B73D8: ; // 0x27b73d8 /* 027B73D8 */ _t5 = cpu->r[12] + 0x00000014u; /* 027B73D8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5); /* 027B73DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B73E0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B73E0 */ _t7 = _t6 & 0x00000001u; /* 027B73E0 */ if (_t7) goto L_027B7480; else goto L_027B73E4; L_027B73E4: ; // 0x27b73e4 /* 027B73E4 */ _t8 = cpu->r[29] + 0x00000000u; /* 027B73E4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8); /* 027B73E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B73EC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B73EC */ _t10 = _t9 & 0x00000001u; /* 027B73EC */ if (_t10) goto L_027B7428; else goto L_027B73F0; L_027B73F0: ; // 0x27b73f0 /* 027B73F0 */ _t11 = cpu->r[31] + 0x0000000Cu; /* 027B73F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11); /* 027B73F4 */ _t12 = cpu->r[29] + 0x00000004u; /* 027B73F4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t12); /* 027B73F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[9]); /* 027B73FC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B73FC */ _t14 = _t13 & 0x00000001u; /* 027B73FC */ if (_t14) goto L_027B7400; else goto L_027B7428; L_027B7400: ; // 0x27b7400 /* 027B7400 */ _t15 = cpu->r[31] + 0x00000028u; /* 027B7400 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15); /* 027B7404 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7408 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7408 */ _t17 = _t16 & 0x00000001u; /* 027B7408 */ if (_t17) goto L_027B741C; else goto L_027B740C; L_027B740C: ; // 0x27b740c /* 027B740C */ _t18 = cpu->r[3] + 0x00000050u; /* 027B740C */ cpu->r[11] = rbrew_read32(cpu->mem, _t18); /* 027B7410 */ _t19 = cpu->r[11] + 0x00000044u; /* 027B7410 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B7414 */ cpu->ctr = cpu->r[0]; /* 027B7418 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B741C: ; // 0x27b741c /* 027B741C */ cpu->r[0] = 0x00000001u; /* 027B7420 */ _t20 = cpu->r[31] + 0x0000004Cu; /* 027B7420 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[0]); /* 027B7424 */ _t21 = cpu->r[28] + 0x00000000u; /* 027B7424 */ cpu->r[12] = rbrew_read32(cpu->mem, _t21); L_027B7428: ; // 0x27b7428 /* 027B7428 */ _t22 = cpu->r[12] + 0x00000014u; /* 027B7428 */ cpu->r[3] = rbrew_read32(cpu->mem, _t22); /* 027B742C */ _t23 = cpu->r[3] + 0x0000005Cu; /* 027B742C */ cpu->r[8] = rbrew_read32(cpu->mem, _t23); /* 027B7430 */ _t24 = cpu->r[8] + 0x00000014u; /* 027B7430 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24); /* 027B7434 */ cpu->ctr = cpu->r[9]; /* 027B7438 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B743C */ _t25 = cpu->r[28] + 0x00000000u; /* 027B743C */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 027B7440 */ _t26 = cpu->r[12] + 0x00000014u; /* 027B7440 */ cpu->r[10] = rbrew_read32(cpu->mem, _t26); /* 027B7444 */ _t27 = cpu->r[10] + 0x00000066u; /* 027B7444 */ rbrew_write8(cpu->mem, _t27, (uint8_t)cpu->r[27]); /* 027B7448 */ _t28 = cpu->r[28] + 0x00000000u; /* 027B7448 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28); /* 027B744C */ cpu->r[31] = cpu->r[3]; /* 027B7450 */ cpu->r[4] = cpu->r[30]; /* 027B7454 */ _t29 = cpu->r[12] + 0x00000014u; /* 027B7454 */ cpu->r[3] = rbrew_read32(cpu->mem, _t29); /* 027B7458 */ cpu->r[5] = cpu->r[29]; /* 027B745C */ Gambit_fn_028B23CC(cpu); /* 027B7460 */ _t30 = cpu->r[28] + 0x00000000u; /* 027B7460 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30); /* 027B7464 */ _t31 = cpu->r[12] + 0x00000014u; /* 027B7464 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31); /* 027B7468 */ _t32 = cpu->r[12] + 0x00000066u; /* 027B7468 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[31]); /* 027B746C */ /* nop */ /* 027B7470 */ _t33 = cpu->r[1] + 0x00000024u; /* 027B7470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33); /* 027B7474 */ cpu->lr = cpu->r[0]; /* 027B7478 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B747C */ return; L_027B7480: ; // 0x27b7480 /* 027B7480 */ cpu->r[10] = 0x00000000u; /* 027B7484 */ _t34 = cpu->r[29] + 0x00000004u; /* 027B7484 */ rbrew_write32(cpu->mem, _t34, cpu->r[10]); /* 027B7488 */ _t35 = cpu->r[29] + 0x00000000u; /* 027B7488 */ rbrew_write32(cpu->mem, _t35, cpu->r[10]); /* 027B748C */ /* nop */ /* 027B7490 */ _t36 = cpu->r[1] + 0x00000024u; /* 027B7490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36); /* 027B7494 */ cpu->lr = cpu->r[0]; /* 027B7498 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B749C */ return; } // fn_027B74A0 @ 0x27b74a0 void Gambit_fn_027B74A0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13; L_027B74A0: ; // 0x27b74a0 /* 027B74A0 */ cpu->r[0] = cpu->lr; /* 027B74A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B74A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B74A4 */ cpu->r[1] = _t0; /* 027B74A8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B74A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B74AC */ _t2 = cpu->r[1] + 0x00000014u; /* 027B74AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B74B0 */ _t3 = cpu->r[3] + 0x00000000u; /* 027B74B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B74B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B74B8 */ cpu->r[31] = cpu->r[4]; /* 027B74BC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B74BC */ _t5 = _t4 & 0x00000001u; /* 027B74BC */ if (_t5) goto L_027B74E0; else goto L_027B74C0; L_027B74C0: ; // 0x27b74c0 /* 027B74C0 */ _t6 = cpu->r[12] + 0x00000014u; /* 027B74C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027B74C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B74C8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B74C8 */ _t8 = _t7 & 0x00000001u; /* 027B74C8 */ if (_t8) goto L_027B74E0; else goto L_027B74CC; L_027B74CC: ; // 0x27b74cc /* 027B74CC */ _t9 = cpu->r[12] + 0x00000014u; /* 027B74CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027B74D0 */ cpu->r[4] = cpu->r[31]; /* 027B74D4 */ Gambit_fn_028AC2D0(cpu); /* 027B74D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B74DC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B74DC */ _t11 = _t10 & 0x00000001u; /* 027B74DC */ if (_t11) goto L_027B74E0; else goto L_027B74E8; L_027B74E0: ; // 0x27b74e0 /* 027B74E0 */ cpu->r[3] = cpu->r[31]; /* 027B74E4 */ Gambit_fn_028A6B4C(cpu); L_027B74E8: ; // 0x27b74e8 /* 027B74E8 */ _t12 = cpu->r[1] + 0x00000014u; /* 027B74E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027B74EC */ _t13 = cpu->r[1] + 0x0000000Cu; /* 027B74EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13); /* 027B74F0 */ cpu->lr = cpu->r[0]; /* 027B74F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B74F8 */ return; } // fn_027B74A4 @ 0x27b74a4 void Gambit_fn_027B74A4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13; L_027B74A4: ; // 0x27b74a4 /* 027B74A4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B74A4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B74A4 */ cpu->r[1] = _t0; /* 027B74A8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B74A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B74AC */ _t2 = cpu->r[1] + 0x00000014u; /* 027B74AC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B74B0 */ _t3 = cpu->r[3] + 0x00000000u; /* 027B74B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B74B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B74B8 */ cpu->r[31] = cpu->r[4]; /* 027B74BC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B74BC */ _t5 = _t4 & 0x00000001u; /* 027B74BC */ if (_t5) goto L_027B74E0; else goto L_027B74C0; L_027B74C0: ; // 0x27b74c0 /* 027B74C0 */ _t6 = cpu->r[12] + 0x00000014u; /* 027B74C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027B74C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B74C8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B74C8 */ _t8 = _t7 & 0x00000001u; /* 027B74C8 */ if (_t8) goto L_027B74E0; else goto L_027B74CC; L_027B74CC: ; // 0x27b74cc /* 027B74CC */ _t9 = cpu->r[12] + 0x00000014u; /* 027B74CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027B74D0 */ cpu->r[4] = cpu->r[31]; /* 027B74D4 */ Gambit_fn_028AC2D0(cpu); /* 027B74D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B74DC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B74DC */ _t11 = _t10 & 0x00000001u; /* 027B74DC */ if (_t11) goto L_027B74E0; else goto L_027B74E8; L_027B74E0: ; // 0x27b74e0 /* 027B74E0 */ cpu->r[3] = cpu->r[31]; /* 027B74E4 */ Gambit_fn_028A6B4C(cpu); L_027B74E8: ; // 0x27b74e8 /* 027B74E8 */ _t12 = cpu->r[1] + 0x00000014u; /* 027B74E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027B74EC */ _t13 = cpu->r[1] + 0x0000000Cu; /* 027B74EC */ cpu->r[31] = rbrew_read32(cpu->mem, _t13); /* 027B74F0 */ cpu->lr = cpu->r[0]; /* 027B74F4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B74F8 */ return; } // fn_027B74FC @ 0x27b74fc void Gambit_fn_027B74FC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027B74FC: ; // 0x27b74fc /* 027B74FC */ cpu->r[0] = cpu->lr; /* 027B7500 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B7500 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7500 */ cpu->r[1] = _t0; /* 027B7504 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B7504 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B7508 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B7508 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B750C */ _t3 = cpu->r[3] + 0x00000000u; /* 027B750C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B7510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7514 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7514 */ _t5 = _t4 & 0x00000001u; /* 027B7514 */ if (_t5) goto L_027B7540; else goto L_027B7518; L_027B7518: ; // 0x27b7518 /* 027B7518 */ _t6 = cpu->r[12] + 0x00000014u; /* 027B7518 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B751C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B7520 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7520 */ _t8 = _t7 & 0x00000001u; /* 027B7520 */ if (_t8) goto L_027B7540; else goto L_027B7524; L_027B7524: ; // 0x27b7524 /* 027B7524 */ _t9 = cpu->r[12] + 0x00000014u; /* 027B7524 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027B7528 */ Gambit_fn_028B23D0(cpu); /* 027B752C */ _t10 = cpu->r[1] + 0x00000014u; /* 027B752C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B7530 */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027B7530 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027B7534 */ cpu->lr = cpu->r[0]; /* 027B7538 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B753C */ return; L_027B7540: ; // 0x27b7540 /* 027B7540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B7544 */ cpu->r[31] = cpu->r[4]; /* 027B7548 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7548 */ _t13 = _t12 & 0x00000001u; /* 027B7548 */ if (_t13) goto L_027B754C; else goto L_027B755C; L_027B754C: ; // 0x27b754c /* 027B754C */ cpu->r[3] = 0x0000000Cu; /* 027B7550 */ Gambit_fn_02801A78(cpu); /* 027B7554 */ cpu->r[31] = cpu->r[3]; /* 027B7554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B7558 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7558 */ _t15 = _t14 & 0x00000001u; /* 027B7558 */ if (_t15) goto L_027B7598; else goto L_027B755C; L_027B755C: ; // 0x27b755c /* 027B755C */ cpu->r[3] = cpu->r[31]; /* 027B755C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7560 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7560 */ _t17 = _t16 & 0x00000001u; /* 027B7560 */ if (_t17) goto L_027B7564; else goto L_027B7574; L_027B7564: ; // 0x27b7564 /* 027B7564 */ cpu->r[3] = 0x0000000Cu; /* 027B7568 */ Gambit_fn_02801A78(cpu); /* 027B756C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7570 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7570 */ _t19 = _t18 & 0x00000001u; /* 027B7570 */ if (_t19) goto L_027B758C; else goto L_027B7574; L_027B7574: ; // 0x27b7574 /* 027B7574 */ cpu->r[10] = 0x10110000u; /* 027B7578 */ cpu->r[12] = 0x00000000u; /* 027B757C */ cpu->r[10] = cpu->r[10] + 0xFFFFB49Cu; /* 027B7580 */ _t20 = cpu->r[3] + 0x00000004u; /* 027B7580 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]); /* 027B7584 */ _t21 = cpu->r[3] + 0x00000008u; /* 027B7584 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]); /* 027B7588 */ _t22 = cpu->r[3] + 0x00000000u; /* 027B7588 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]); L_027B758C: ; // 0x27b758c /* 027B758C */ cpu->r[0] = 0x10110000u; /* 027B7590 */ cpu->r[0] = cpu->r[0] + 0xFFFFB4ACu; /* 027B7594 */ _t23 = cpu->r[31] + 0x00000008u; /* 027B7594 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]); L_027B7598: ; // 0x27b7598 /* 027B7598 */ _t24 = cpu->r[1] + 0x00000014u; /* 027B7598 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B759C */ _t25 = cpu->r[1] + 0x0000000Cu; /* 027B759C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25); /* 027B75A0 */ cpu->lr = cpu->r[0]; /* 027B75A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B75A8 */ return; } // fn_027B7500 @ 0x27b7500 void Gambit_fn_027B7500(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027B7500: ; // 0x27b7500 /* 027B7500 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B7500 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7500 */ cpu->r[1] = _t0; /* 027B7504 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B7504 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B7508 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B7508 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B750C */ _t3 = cpu->r[3] + 0x00000000u; /* 027B750C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B7510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7514 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7514 */ _t5 = _t4 & 0x00000001u; /* 027B7514 */ if (_t5) goto L_027B7540; else goto L_027B7518; L_027B7518: ; // 0x27b7518 /* 027B7518 */ _t6 = cpu->r[12] + 0x00000014u; /* 027B7518 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B751C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B7520 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7520 */ _t8 = _t7 & 0x00000001u; /* 027B7520 */ if (_t8) goto L_027B7540; else goto L_027B7524; L_027B7524: ; // 0x27b7524 /* 027B7524 */ _t9 = cpu->r[12] + 0x00000014u; /* 027B7524 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027B7528 */ Gambit_fn_028B23D0(cpu); /* 027B752C */ _t10 = cpu->r[1] + 0x00000014u; /* 027B752C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B7530 */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027B7530 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027B7534 */ cpu->lr = cpu->r[0]; /* 027B7538 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B753C */ return; L_027B7540: ; // 0x27b7540 /* 027B7540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B7544 */ cpu->r[31] = cpu->r[4]; /* 027B7548 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7548 */ _t13 = _t12 & 0x00000001u; /* 027B7548 */ if (_t13) goto L_027B754C; else goto L_027B755C; L_027B754C: ; // 0x27b754c /* 027B754C */ cpu->r[3] = 0x0000000Cu; /* 027B7550 */ Gambit_fn_02801A78(cpu); /* 027B7554 */ cpu->r[31] = cpu->r[3]; /* 027B7554 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B7558 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7558 */ _t15 = _t14 & 0x00000001u; /* 027B7558 */ if (_t15) goto L_027B7598; else goto L_027B755C; L_027B755C: ; // 0x27b755c /* 027B755C */ cpu->r[3] = cpu->r[31]; /* 027B755C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7560 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7560 */ _t17 = _t16 & 0x00000001u; /* 027B7560 */ if (_t17) goto L_027B7564; else goto L_027B7574; L_027B7564: ; // 0x27b7564 /* 027B7564 */ cpu->r[3] = 0x0000000Cu; /* 027B7568 */ Gambit_fn_02801A78(cpu); /* 027B756C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7570 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7570 */ _t19 = _t18 & 0x00000001u; /* 027B7570 */ if (_t19) goto L_027B758C; else goto L_027B7574; L_027B7574: ; // 0x27b7574 /* 027B7574 */ cpu->r[10] = 0x10110000u; /* 027B7578 */ cpu->r[12] = 0x00000000u; /* 027B757C */ cpu->r[10] = cpu->r[10] + 0xFFFFB49Cu; /* 027B7580 */ _t20 = cpu->r[3] + 0x00000004u; /* 027B7580 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]); /* 027B7584 */ _t21 = cpu->r[3] + 0x00000008u; /* 027B7584 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]); /* 027B7588 */ _t22 = cpu->r[3] + 0x00000000u; /* 027B7588 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]); L_027B758C: ; // 0x27b758c /* 027B758C */ cpu->r[0] = 0x10110000u; /* 027B7590 */ cpu->r[0] = cpu->r[0] + 0xFFFFB4ACu; /* 027B7594 */ _t23 = cpu->r[31] + 0x00000008u; /* 027B7594 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]); L_027B7598: ; // 0x27b7598 /* 027B7598 */ _t24 = cpu->r[1] + 0x00000014u; /* 027B7598 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B759C */ _t25 = cpu->r[1] + 0x0000000Cu; /* 027B759C */ cpu->r[31] = rbrew_read32(cpu->mem, _t25); /* 027B75A0 */ cpu->lr = cpu->r[0]; /* 027B75A4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B75A8 */ return; } // fn_027B75AC @ 0x27b75ac void Gambit_fn_027B75AC(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_027B75AC: ; // 0x27b75ac /* 027B75AC */ _t0 = cpu->r[1] + 0xFFFFFFC8u; /* 027B75AC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B75AC */ cpu->r[1] = _t0; /* 027B75B0 */ /* nop */ /* 027B75B4 */ cpu->r[0] = cpu->lr; /* 027B75B8 */ _t1 = cpu->r[1] + 0x0000003Cu; /* 027B75B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B75BC */ _t2 = cpu->r[3] + 0x00000000u; /* 027B75BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t2); /* 027B75C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B75C4 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B75C4 */ _t4 = _t3 & 0x00000001u; /* 027B75C4 */ if (_t4) goto L_027B76D8; else goto L_027B75C8; L_027B75C8: ; // 0x27b75c8 /* 027B75C8 */ _t5 = cpu->r[11] + 0x00000014u; /* 027B75C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B75CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B75D0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B75D0 */ _t7 = _t6 & 0x00000001u; /* 027B75D0 */ if (_t7) goto L_027B76D8; else goto L_027B75D4; L_027B75D4: ; // 0x27b75d4 /* 027B75D4 */ cpu->r[25] = 0x10110000u; /* 027B75D8 */ cpu->r[25] = cpu->r[25] + 0xFFFFB3B4u; /* 027B75DC */ _t8 = cpu->r[1] + 0x00000010u; /* 027B75DC */ rbrew_write32(cpu->mem, _t8, cpu->r[4]); /* 027B75E0 */ cpu->r[12] = cpu->r[25]; /* 027B75E4 */ _t9 = cpu->r[1] + 0x00000014u; /* 027B75E4 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]); /* 027B75E8 */ _t10 = cpu->r[11] + 0x00000014u; /* 027B75E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10); /* 027B75EC */ _t11 = cpu->r[11] + 0x00000014u; /* 027B75EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t11); /* 027B75F0 */ cpu->r[5] = cpu->r[11] + 0x00000008u; /* 027B75F4 */ _t12 = cpu->r[11] + 0x0000000Cu; /* 027B75F4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t12); /* 027B75F8 */ cpu->r[30] = cpu->r[5] - cpu->r[29]; /* 027B75FC */ cpu->r[27] = cpu->r[6] - cpu->r[29]; /* 027B7600 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[30]); /* 027B7604 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7604 */ _t14 = _t13 & 0x00000001u; /* 027B7604 */ if (_t14) goto L_027B76D8; else goto L_027B7608; L_027B7608: ; // 0x27b7608 /* 027B7608 */ cpu->r[31] = 0x10110000u; /* 027B760C */ cpu->r[26] = 0x00080000u; /* 027B7610 */ _t15 = cpu->r[31] + 0x00007399u; /* 027B7610 */ cpu->r[31] = rbrew_read8(cpu->mem, _t15); /* 027B7614 */ cpu->r[26] = cpu->r[26] + 0x00000001u; L_027B7618: ; // 0x27b7618 /* 027B7618 */ _t16 = cpu->r[27] + 0x00000014u; /* 027B7618 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16); /* 027B761C */ _t17 = cpu->r[8] + 0x00000000u; /* 027B761C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027B7620 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B7620 */ rbrew_write32(cpu->mem, _t18, cpu->r[25]); /* 027B7624 */ _t19 = cpu->r[1] + 0x00000008u; /* 027B7624 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]); /* 027B7628 */ _t20 = cpu->r[12] + 0x00000014u; /* 027B7628 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20); /* 027B762C */ cpu->ctr = cpu->r[9]; /* 027B7630 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B7634 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7638 */ _t21 = cpu->r[1] + 0x00000014u; /* 027B7638 */ cpu->r[7] = rbrew_read32(cpu->mem, _t21); /* 027B763C */ _t22 = cpu->r[7] + 0x00000014u; /* 027B763C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027B7640 */ cpu->ctr = cpu->r[0]; /* 027B7644 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B7648 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B764C */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027B764C */ cpu->r[11] = rbrew_read32(cpu->mem, _t23); /* 027B7650 */ _t24 = cpu->r[11] + 0x00000014u; /* 027B7650 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24); /* 027B7654 */ cpu->ctr = cpu->r[4]; /* 027B7658 */ _t25 = cpu->r[1] + 0x00000010u; /* 027B7658 */ cpu->r[28] = rbrew_read32(cpu->mem, _t25); /* 027B765C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B7660 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7664 */ _t26 = cpu->r[1] + 0x00000008u; /* 027B7664 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); /* 027B7668 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[0]); /* 027B766C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B766C */ _t28 = _t27 & 0x00000001u; /* 027B766C */ if (_t28) goto L_027B76A4; else goto L_027B7670; L_027B7670: ; // 0x27b7670 /* 027B7670 */ _t29 = cpu->r[1] + 0x00000008u; /* 027B7670 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29); /* 027B7674 */ cpu->ctr = cpu->r[26]; /* 027B7678 */ _t30 = cpu->r[1] + 0x00000010u; /* 027B7678 */ cpu->r[7] = rbrew_read32(cpu->mem, _t30); /* 027B767C */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu; L_027B7680: ; // 0x27b7680 /* 027B7680 */ _t31 = cpu->r[7] + 0x00000000u; /* 027B7680 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31); /* 027B7684 */ _t32 = cpu->r[9] + 0x00000001u; /* 027B7684 */ cpu->r[6] = rbrew_read8(cpu->mem, _t32); /* 027B7684 */ cpu->r[9] = _t32; /* 027B7688 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[6]); /* 027B768C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B768C */ _t34 = _t33 & 0x00000001u; /* 027B768C */ if (_t34) goto L_027B7690; else goto L_027B76BC; L_027B7690: ; // 0x27b7690 /* 027B7690 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B7694 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7694 */ _t36 = _t35 & 0x00000001u; /* 027B7694 */ if (_t36) goto L_027B76A4; else goto L_027B7698; L_027B7698: ; // 0x27b7698 /* 027B7698 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B769C */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B769C */ _t37 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B769C */ _t38 = _t37 >> (0x00000002u & 31u); /* 027B769C */ _t39 = _t38 & 0x00000001u; /* 027B769C */ if (_t39) goto L_027B7680; else goto L_027B76A0; L_027B76A0: ; // 0x27b76a0 /* 027B76A0 */ goto L_027B76BC; L_027B76A4: ; // 0x27b76a4 /* 027B76A4 */ /* nop */ /* 027B76A8 */ _t40 = cpu->r[1] + 0x0000003Cu; /* 027B76A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027B76AC */ cpu->lr = cpu->r[0]; /* 027B76B0 */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027B76B4 */ cpu->r[3] = 0x00000001u; /* 027B76B8 */ return; L_027B76BC: ; // 0x27b76bc /* 027B76BC */ cpu->r[10] = cpu->r[27] + cpu->r[29]; /* 027B76C0 */ _t41 = cpu->r[10] + 0x00000004u; /* 027B76C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41); /* 027B76C4 */ cpu->r[27] = cpu->r[0] - cpu->r[29]; /* 027B76C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[30]); /* 027B76CC */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B76CC */ _t43 = _t42 & 0x00000001u; /* 027B76CC */ if (_t43) goto L_027B76D8; else goto L_027B76D0; L_027B76D0: ; // 0x27b76d0 /* 027B76D0 */ _t44 = cpu->r[1] + 0x00000014u; /* 027B76D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44); /* 027B76D4 */ goto L_027B7618; L_027B76D8: ; // 0x27b76d8 /* 027B76D8 */ /* nop */ /* 027B76DC */ _t45 = cpu->r[1] + 0x0000003Cu; /* 027B76DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t45); /* 027B76E0 */ cpu->lr = cpu->r[0]; /* 027B76E4 */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027B76E8 */ cpu->r[3] = 0x00000000u; /* 027B76EC */ return; } // fn_027B76F0 @ 0x27b76f0 void Gambit_fn_027B76F0(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; L_027B76F0: ; // 0x27b76f0 /* 027B76F0 */ _t0 = cpu->r[1] + 0xFFFFFFC8u; /* 027B76F0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B76F0 */ cpu->r[1] = _t0; /* 027B76F4 */ /* nop */ /* 027B76F8 */ cpu->r[0] = cpu->lr; /* 027B76FC */ _t1 = cpu->r[1] + 0x0000003Cu; /* 027B76FC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B7700 */ _t2 = cpu->r[3] + 0x00000000u; /* 027B7700 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2); /* 027B7704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7708 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7708 */ _t4 = _t3 & 0x00000001u; /* 027B7708 */ if (_t4) goto L_027B77FC; else goto L_027B770C; L_027B770C: ; // 0x27b770c /* 027B770C */ _t5 = cpu->r[12] + 0x00000014u; /* 027B770C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B7710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7714 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7714 */ _t7 = _t6 & 0x00000001u; /* 027B7714 */ if (_t7) goto L_027B77FC; else goto L_027B7718; L_027B7718: ; // 0x27b7718 /* 027B7718 */ cpu->r[25] = 0x10110000u; /* 027B771C */ cpu->r[25] = cpu->r[25] + 0xFFFFB3B4u; /* 027B7720 */ _t8 = cpu->r[1] + 0x00000010u; /* 027B7720 */ rbrew_write32(cpu->mem, _t8, cpu->r[4]); /* 027B7724 */ cpu->r[8] = cpu->r[25]; /* 027B7728 */ _t9 = cpu->r[1] + 0x00000014u; /* 027B7728 */ rbrew_write32(cpu->mem, _t9, cpu->r[8]); /* 027B772C */ _t10 = cpu->r[12] + 0x00000014u; /* 027B772C */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027B7730 */ _t11 = cpu->r[9] + 0x00000014u; /* 027B7730 */ cpu->r[28] = rbrew_read32(cpu->mem, _t11); /* 027B7734 */ cpu->r[12] = cpu->r[9] + 0x00000008u; /* 027B7738 */ _t12 = cpu->r[9] + 0x0000000Cu; /* 027B7738 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12); /* 027B773C */ cpu->r[31] = cpu->r[12] - cpu->r[28]; /* 027B7740 */ cpu->r[29] = cpu->r[5] - cpu->r[28]; /* 027B7744 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]); /* 027B7748 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7748 */ _t14 = _t13 & 0x00000001u; /* 027B7748 */ if (_t14) goto L_027B77FC; else goto L_027B774C; L_027B774C: ; // 0x27b774c /* 027B774C */ cpu->r[30] = 0x10110000u; /* 027B7750 */ cpu->r[24] = 0x00080000u; /* 027B7754 */ cpu->r[26] = 0x00000001u; /* 027B7758 */ _t15 = cpu->r[30] + 0x00007399u; /* 027B7758 */ cpu->r[30] = rbrew_read8(cpu->mem, _t15); /* 027B775C */ cpu->r[24] = cpu->r[24] + 0x00000001u; L_027B7760: ; // 0x27b7760 /* 027B7760 */ _t16 = cpu->r[29] + 0x00000014u; /* 027B7760 */ cpu->r[7] = rbrew_read32(cpu->mem, _t16); /* 027B7764 */ _t17 = cpu->r[7] + 0x00000000u; /* 027B7764 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17); /* 027B7768 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B7768 */ rbrew_write32(cpu->mem, _t18, cpu->r[25]); /* 027B776C */ _t19 = cpu->r[1] + 0x00000008u; /* 027B776C */ rbrew_write32(cpu->mem, _t19, cpu->r[10]); /* 027B7770 */ _t20 = cpu->r[8] + 0x00000014u; /* 027B7770 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027B7774 */ cpu->ctr = cpu->r[0]; /* 027B7778 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B777C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7780 */ _t21 = cpu->r[1] + 0x00000014u; /* 027B7780 */ cpu->r[6] = rbrew_read32(cpu->mem, _t21); /* 027B7784 */ _t22 = cpu->r[6] + 0x00000014u; /* 027B7784 */ cpu->r[8] = rbrew_read32(cpu->mem, _t22); /* 027B7788 */ cpu->ctr = cpu->r[8]; /* 027B778C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B7790 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7794 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027B7794 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23); /* 027B7798 */ _t24 = cpu->r[11] + 0x00000014u; /* 027B7798 */ cpu->r[4] = rbrew_read32(cpu->mem, _t24); /* 027B779C */ cpu->ctr = cpu->r[4]; /* 027B77A0 */ _t25 = cpu->r[1] + 0x00000010u; /* 027B77A0 */ cpu->r[27] = rbrew_read32(cpu->mem, _t25); /* 027B77A4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B77A8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B77AC */ _t26 = cpu->r[1] + 0x00000008u; /* 027B77AC */ cpu->r[6] = rbrew_read32(cpu->mem, _t26); /* 027B77B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[6]); /* 027B77B4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B77B4 */ _t28 = _t27 & 0x00000001u; /* 027B77B4 */ if (_t28) goto L_027B7810; else goto L_027B77B8; L_027B77B8: ; // 0x27b77b8 /* 027B77B8 */ _t29 = cpu->r[1] + 0x00000008u; /* 027B77B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t29); /* 027B77BC */ cpu->ctr = cpu->r[24]; /* 027B77C0 */ _t30 = cpu->r[1] + 0x00000010u; /* 027B77C0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t30); /* 027B77C4 */ cpu->r[5] = cpu->r[5] + 0xFFFFFFFFu; L_027B77C8: ; // 0x27b77c8 /* 027B77C8 */ _t31 = cpu->r[10] + 0x00000000u; /* 027B77C8 */ cpu->r[11] = rbrew_read8(cpu->mem, _t31); /* 027B77CC */ _t32 = cpu->r[5] + 0x00000001u; /* 027B77CC */ cpu->r[7] = rbrew_read8(cpu->mem, _t32); /* 027B77CC */ cpu->r[5] = _t32; /* 027B77D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[7]); /* 027B77D4 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B77D4 */ _t34 = _t33 & 0x00000001u; /* 027B77D4 */ if (_t34) goto L_027B77D8; else goto L_027B7834; L_027B77D8: ; // 0x27b77d8 /* 027B77D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[30]); /* 027B77DC */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B77DC */ _t36 = _t35 & 0x00000001u; /* 027B77DC */ if (_t36) goto L_027B7810; else goto L_027B77E0; L_027B77E0: ; // 0x27b77e0 /* 027B77E0 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027B77E4 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B77E4 */ _t37 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B77E4 */ _t38 = _t37 >> (0x00000002u & 31u); /* 027B77E4 */ _t39 = _t38 & 0x00000001u; /* 027B77E4 */ if (_t39) goto L_027B77C8; else goto L_027B77E8; L_027B77E8: ; // 0x27b77e8 /* 027B77E8 */ cpu->r[10] = cpu->r[29] + cpu->r[28]; /* 027B77EC */ _t40 = cpu->r[10] + 0x00000004u; /* 027B77EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027B77F0 */ cpu->r[29] = cpu->r[0] - cpu->r[28]; /* 027B77F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]); /* 027B77F8 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B77F8 */ _t42 = _t41 & 0x00000001u; /* 027B77F8 */ if (_t42) goto L_027B77FC; else goto L_027B7848; L_027B77FC: ; // 0x27b77fc /* 027B77FC */ /* nop */ /* 027B7800 */ _t43 = cpu->r[1] + 0x0000003Cu; /* 027B7800 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43); /* 027B7804 */ cpu->lr = cpu->r[0]; /* 027B7808 */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027B780C */ return; L_027B7810: ; // 0x27b7810 /* 027B7810 */ _t44 = cpu->r[29] + 0x00000028u; /* 027B7810 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44); /* 027B7814 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7818 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7818 */ _t46 = _t45 & 0x00000001u; /* 027B7818 */ if (_t46) goto L_027B7830; else goto L_027B781C; L_027B781C: ; // 0x27b781c /* 027B781C */ _t47 = cpu->r[3] + 0x00000050u; /* 027B781C */ cpu->r[8] = rbrew_read32(cpu->mem, _t47); /* 027B7820 */ _t48 = cpu->r[8] + 0x00000024u; /* 027B7820 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48); /* 027B7824 */ cpu->ctr = cpu->r[0]; /* 027B7828 */ cpu->r[4] = 0xFFFFFFFFu; /* 027B782C */ rbrew_call_indirect(cpu, cpu->ctr); L_027B7830: ; // 0x27b7830 /* 027B7830 */ _t49 = cpu->r[29] + 0x0000004Cu; /* 027B7830 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[26]); L_027B7834: ; // 0x27b7834 /* 027B7834 */ cpu->r[10] = cpu->r[29] + cpu->r[28]; /* 027B7838 */ _t50 = cpu->r[10] + 0x00000004u; /* 027B7838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50); /* 027B783C */ cpu->r[29] = cpu->r[0] - cpu->r[28]; /* 027B7840 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[31]); /* 027B7844 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7844 */ _t52 = _t51 & 0x00000001u; /* 027B7844 */ if (_t52) goto L_027B77FC; else goto L_027B7848; L_027B7848: ; // 0x27b7848 /* 027B7848 */ _t53 = cpu->r[1] + 0x00000014u; /* 027B7848 */ cpu->r[8] = rbrew_read32(cpu->mem, _t53); /* 027B784C */ goto L_027B7760; } // fn_027B7850 @ 0x27b7850 void Gambit_fn_027B7850(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12; L_027B7850: ; // 0x27b7850 /* 027B7850 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B7850 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B7854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7858 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7858 */ _t2 = _t1 & 0x00000001u; /* 027B7858 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B7858 */ goto L_027B785C; L_027B785C: ; // 0x27b785c /* 027B785C */ _t3 = cpu->r[12] + 0x00000014u; /* 027B785C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B7860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7864 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7864 */ _t5 = _t4 & 0x00000001u; /* 027B7864 */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B7864 */ goto L_027B7868; L_027B7868: ; // 0x27b7868 /* 027B7868 */ _t6 = cpu->r[12] + 0x00000014u; /* 027B7868 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B786C */ goto L_028AC25C; L_028AC25C: ; // 0x28ac25c /* 028AC25C */ cpu->r[0] = cpu->lr; /* 028AC260 */ _t7 = cpu->r[1] + 0xFFFFFFF0u; /* 028AC260 */ rbrew_write32(cpu->mem, _t7, cpu->r[1]); /* 028AC260 */ cpu->r[1] = _t7; /* 028AC264 */ _t8 = cpu->r[1] + 0x0000000Cu; /* 028AC264 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]); /* 028AC268 */ cpu->r[31] = cpu->r[3]; /* 028AC26C */ _t9 = cpu->r[1] + 0x00000014u; /* 028AC26C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 028AC270 */ Gambit_fn_028AC1B4(cpu); /* 028AC274 */ _t10 = cpu->r[31] + 0x00000054u; /* 028AC274 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 028AC278 */ Gambit_fn_028AACF8(cpu); /* 028AC27C */ _t11 = cpu->r[1] + 0x00000014u; /* 028AC27C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 028AC280 */ cpu->lr = cpu->r[0]; /* 028AC284 */ _t12 = cpu->r[1] + 0x0000000Cu; /* 028AC284 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12); /* 028AC288 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 028AC28C */ return; } // fn_027B7870 @ 0x27b7870 void Gambit_fn_027B7870(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_027B7870: ; // 0x27b7870 /* 027B7870 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B7870 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B7874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7878 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7878 */ _t2 = _t1 & 0x00000001u; /* 027B7878 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B7878 */ goto L_027B787C; L_027B787C: ; // 0x27b787c /* 027B787C */ _t3 = cpu->r[12] + 0x00000014u; /* 027B787C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B7880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7884 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7884 */ _t5 = _t4 & 0x00000001u; /* 027B7884 */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B7884 */ goto L_027B7888; L_027B7888: ; // 0x27b7888 /* 027B7888 */ _t6 = cpu->r[12] + 0x00000014u; /* 027B7888 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B788C */ goto L_028B247C; L_028B247C: ; // 0x28b247c /* 028B247C */ _t7 = cpu->r[1] + 0xFFFFFFE0u; /* 028B247C */ rbrew_write32(cpu->mem, _t7, cpu->r[1]); /* 028B247C */ cpu->r[1] = _t7; /* 028B2480 */ /* nop */ /* 028B2484 */ cpu->r[0] = cpu->lr; /* 028B2488 */ cpu->r[27] = cpu->r[3]; /* 028B248C */ _t8 = cpu->r[1] + 0x00000024u; /* 028B248C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 028B2490 */ cpu->r[3] = 0x101D0000u; /* 028B2494 */ _t9 = cpu->r[3] + 0xFFFF9A60u; /* 028B2494 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 028B2498 */ _t10 = cpu->r[3] + 0x00000000u; /* 028B2498 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 028B249C */ _t11 = cpu->r[12] + 0x00000014u; /* 028B249C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 028B24A0 */ cpu->ctr = cpu->r[0]; /* 028B24A4 */ cpu->r[30] = cpu->r[3]; /* 028B24A8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 028B24AC */ _t12 = cpu->r[27] + 0x00000014u; /* 028B24AC */ cpu->r[29] = rbrew_read32(cpu->mem, _t12); /* 028B24B0 */ cpu->r[8] = cpu->r[27] + 0x00000008u; /* 028B24B4 */ _t13 = cpu->r[27] + 0x0000000Cu; /* 028B24B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 028B24B8 */ cpu->r[31] = cpu->r[8] - cpu->r[29]; /* 028B24BC */ cpu->r[28] = cpu->r[0] - cpu->r[29]; /* 028B24C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]); /* 028B24C4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 028B24C4 */ _t15 = _t14 & 0x00000001u; /* 028B24C4 */ if (_t15) goto L_028B2500; else goto L_028B24C8; L_028B24C8: ; // 0x28b24c8 /* 028B24C8 */ cpu->r[26] = 0x00000001u; L_028B24CC: ; // 0x28b24cc /* 028B24CC */ _t16 = cpu->r[28] + 0x00000028u; /* 028B24CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t16); /* 028B24D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 028B24D4 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 028B24D4 */ _t18 = _t17 & 0x00000001u; /* 028B24D4 */ if (_t18) goto L_028B24E8; else goto L_028B24D8; L_028B24D8: ; // 0x28b24d8 /* 028B24D8 */ _t19 = cpu->r[3] + 0x00000050u; /* 028B24D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19); /* 028B24DC */ _t20 = cpu->r[9] + 0x00000044u; /* 028B24DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t20); /* 028B24E0 */ cpu->ctr = cpu->r[10]; /* 028B24E4 */ rbrew_call_indirect(cpu, cpu->ctr); L_028B24E8: ; // 0x28b24e8 /* 028B24E8 */ cpu->r[6] = cpu->r[28] + cpu->r[29]; /* 028B24EC */ _t21 = cpu->r[28] + 0x0000004Cu; /* 028B24EC */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[26]); /* 028B24F0 */ _t22 = cpu->r[6] + 0x00000004u; /* 028B24F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22); /* 028B24F4 */ cpu->r[28] = cpu->r[11] - cpu->r[29]; /* 028B24F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]); /* 028B24FC */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 028B24FC */ _t24 = _t23 & 0x00000001u; /* 028B24FC */ if (_t24) goto L_028B2500; else goto L_028B24CC; L_028B2500: ; // 0x28b2500 /* 028B2500 */ _t25 = cpu->r[30] + 0x00000000u; /* 028B2500 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 028B2504 */ _t26 = cpu->r[12] + 0x0000001Cu; /* 028B2504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); /* 028B2508 */ cpu->ctr = cpu->r[0]; /* 028B250C */ cpu->r[3] = cpu->r[30]; /* 028B2510 */ rbrew_call_indirect(cpu, cpu->ctr); /* 028B2514 */ _t27 = cpu->r[27] + 0x00000054u; /* 028B2514 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27); /* 028B2518 */ Gambit_fn_028AACF8(cpu); /* 028B251C */ /* nop */ /* 028B2520 */ _t28 = cpu->r[1] + 0x00000024u; /* 028B2520 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28); /* 028B2524 */ cpu->lr = cpu->r[0]; /* 028B2528 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 028B252C */ return; } // fn_027B7890 @ 0x27b7890 void Gambit_fn_027B7890(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7; L_027B7890: ; // 0x27b7890 /* 027B7890 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B7890 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B7894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7898 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7898 */ _t2 = _t1 & 0x00000001u; /* 027B7898 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B7898 */ goto L_027B789C; L_027B789C: ; // 0x27b789c /* 027B789C */ _t3 = cpu->r[12] + 0x00000014u; /* 027B789C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B78A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B78A4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B78A4 */ _t5 = _t4 & 0x00000001u; /* 027B78A4 */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B78A4 */ goto L_027B78A8; L_027B78A8: ; // 0x27b78a8 /* 027B78A8 */ _t6 = cpu->r[12] + 0x00000014u; /* 027B78A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B78AC */ _t7 = cpu->r[11] + 0x00000067u; /* 027B78AC */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[4]); /* 027B78B0 */ return; } // fn_027B78B4 @ 0x27b78b4 void Gambit_fn_027B78B4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9; L_027B78B4: ; // 0x27b78b4 /* 027B78B4 */ cpu->r[0] = cpu->lr; /* 027B78B8 */ _t0 = cpu->r[1] + 0x00000004u; /* 027B78B8 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027B78BC */ _t1 = cpu->r[1] + 0xFFFFFFE0u; /* 027B78BC */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027B78BC */ cpu->r[1] = _t1; /* 027B78C0 */ _t2 = cpu->r[3] + 0x00000000u; /* 027B78C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2); /* 027B78C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B78C8 */ cpu->r[5] = cpu->r[4]; /* 027B78CC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B78CC */ _t4 = _t3 & 0x00000001u; /* 027B78CC */ if (_t4) goto L_027B78E8; else goto L_027B78D0; L_027B78D0: ; // 0x27b78d0 /* 027B78D0 */ _t5 = cpu->r[12] + 0x00000018u; /* 027B78D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B78D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B78D8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B78D8 */ _t7 = _t6 & 0x00000001u; /* 027B78D8 */ if (_t7) goto L_027B78E8; else goto L_027B78DC; L_027B78DC: ; // 0x27b78dc /* 027B78DC */ _t8 = cpu->r[12] + 0x00000018u; /* 027B78DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8); /* 027B78E0 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B78E4 */ Gambit_fn_028B484C(cpu); L_027B78E8: ; // 0x27b78e8 /* 027B78E8 */ _t9 = cpu->r[1] + 0x00000024u; /* 027B78E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027B78EC */ cpu->lr = cpu->r[0]; /* 027B78F0 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B78F4 */ return; } // fn_027B78BC @ 0x27b78bc void Gambit_fn_027B78BC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8; L_027B78BC: ; // 0x27b78bc /* 027B78BC */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027B78BC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B78BC */ cpu->r[1] = _t0; /* 027B78C0 */ _t1 = cpu->r[3] + 0x00000000u; /* 027B78C0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027B78C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B78C8 */ cpu->r[5] = cpu->r[4]; /* 027B78CC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B78CC */ _t3 = _t2 & 0x00000001u; /* 027B78CC */ if (_t3) goto L_027B78E8; else goto L_027B78D0; L_027B78D0: ; // 0x27b78d0 /* 027B78D0 */ _t4 = cpu->r[12] + 0x00000018u; /* 027B78D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027B78D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B78D8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B78D8 */ _t6 = _t5 & 0x00000001u; /* 027B78D8 */ if (_t6) goto L_027B78E8; else goto L_027B78DC; L_027B78DC: ; // 0x27b78dc /* 027B78DC */ _t7 = cpu->r[12] + 0x00000018u; /* 027B78DC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7); /* 027B78E0 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B78E4 */ Gambit_fn_028B484C(cpu); L_027B78E8: ; // 0x27b78e8 /* 027B78E8 */ _t8 = cpu->r[1] + 0x00000024u; /* 027B78E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B78EC */ cpu->lr = cpu->r[0]; /* 027B78F0 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027B78F4 */ return; } // fn_027B78F8 @ 0x27b78f8 void Gambit_fn_027B78F8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B78F8: ; // 0x27b78f8 /* 027B78F8 */ cpu->r[0] = cpu->lr; /* 027B78FC */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B78FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B78FC */ cpu->r[1] = _t0; /* 027B7900 */ _t1 = cpu->r[1] + 0x00000010u; /* 027B7900 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B7904 */ cpu->r[30] = cpu->r[3]; /* 027B7908 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B7908 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027B790C */ _t3 = cpu->r[1] + 0x00000014u; /* 027B790C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B7910 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B7910 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B7914 */ cpu->r[29] = cpu->r[5]; /* 027B7918 */ _t5 = cpu->r[30] + 0x00000000u; /* 027B7918 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027B791C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7920 */ cpu->r[31] = cpu->r[4]; /* 027B7924 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7924 */ _t7 = _t6 & 0x00000001u; /* 027B7924 */ if (_t7) goto L_027B795C; else goto L_027B7928; L_027B7928: ; // 0x27b7928 /* 027B7928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B792C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B792C */ _t9 = _t8 & 0x00000001u; /* 027B792C */ if (_t9) goto L_027B7940; else goto L_027B7930; L_027B7930: ; // 0x27b7930 /* 027B7930 */ cpu->r[3] = cpu->r[31]; /* 027B7934 */ cpu->r[4] = cpu->r[6]; /* 027B7938 */ Gambit_fn_028B2FD8(cpu); /* 027B793C */ _t10 = cpu->r[30] + 0x00000000u; /* 027B793C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); L_027B7940: ; // 0x27b7940 /* 027B7940 */ _t11 = cpu->r[12] + 0x00000018u; /* 027B7940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027B7944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7948 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7948 */ _t13 = _t12 & 0x00000001u; /* 027B7948 */ if (_t13) goto L_027B795C; else goto L_027B794C; L_027B794C: ; // 0x27b794c /* 027B794C */ _t14 = cpu->r[12] + 0x00000018u; /* 027B794C */ cpu->r[3] = rbrew_read32(cpu->mem, _t14); /* 027B7950 */ cpu->r[4] = cpu->r[29]; /* 027B7954 */ cpu->r[5] = cpu->r[31]; /* 027B7958 */ Gambit_fn_028B48F8(cpu); L_027B795C: ; // 0x27b795c /* 027B795C */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027B795C */ cpu->r[29] = rbrew_read32(cpu->mem, _t15); /* 027B7960 */ _t16 = cpu->r[1] + 0x0000001Cu; /* 027B7960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B7964 */ _t17 = cpu->r[1] + 0x00000010u; /* 027B7964 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027B7968 */ cpu->lr = cpu->r[0]; /* 027B796C */ _t18 = cpu->r[1] + 0x00000014u; /* 027B796C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B7970 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B7974 */ return; } // fn_027B78FC @ 0x27b78fc void Gambit_fn_027B78FC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027B78FC: ; // 0x27b78fc /* 027B78FC */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B78FC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B78FC */ cpu->r[1] = _t0; /* 027B7900 */ _t1 = cpu->r[1] + 0x00000010u; /* 027B7900 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B7904 */ cpu->r[30] = cpu->r[3]; /* 027B7908 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B7908 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027B790C */ _t3 = cpu->r[1] + 0x00000014u; /* 027B790C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B7910 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B7910 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B7914 */ cpu->r[29] = cpu->r[5]; /* 027B7918 */ _t5 = cpu->r[30] + 0x00000000u; /* 027B7918 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027B791C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7920 */ cpu->r[31] = cpu->r[4]; /* 027B7924 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7924 */ _t7 = _t6 & 0x00000001u; /* 027B7924 */ if (_t7) goto L_027B795C; else goto L_027B7928; L_027B7928: ; // 0x27b7928 /* 027B7928 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B792C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B792C */ _t9 = _t8 & 0x00000001u; /* 027B792C */ if (_t9) goto L_027B7940; else goto L_027B7930; L_027B7930: ; // 0x27b7930 /* 027B7930 */ cpu->r[3] = cpu->r[31]; /* 027B7934 */ cpu->r[4] = cpu->r[6]; /* 027B7938 */ Gambit_fn_028B2FD8(cpu); /* 027B793C */ _t10 = cpu->r[30] + 0x00000000u; /* 027B793C */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); L_027B7940: ; // 0x27b7940 /* 027B7940 */ _t11 = cpu->r[12] + 0x00000018u; /* 027B7940 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027B7944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7948 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7948 */ _t13 = _t12 & 0x00000001u; /* 027B7948 */ if (_t13) goto L_027B795C; else goto L_027B794C; L_027B794C: ; // 0x27b794c /* 027B794C */ _t14 = cpu->r[12] + 0x00000018u; /* 027B794C */ cpu->r[3] = rbrew_read32(cpu->mem, _t14); /* 027B7950 */ cpu->r[4] = cpu->r[29]; /* 027B7954 */ cpu->r[5] = cpu->r[31]; /* 027B7958 */ Gambit_fn_028B48F8(cpu); L_027B795C: ; // 0x27b795c /* 027B795C */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027B795C */ cpu->r[29] = rbrew_read32(cpu->mem, _t15); /* 027B7960 */ _t16 = cpu->r[1] + 0x0000001Cu; /* 027B7960 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B7964 */ _t17 = cpu->r[1] + 0x00000010u; /* 027B7964 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027B7968 */ cpu->lr = cpu->r[0]; /* 027B796C */ _t18 = cpu->r[1] + 0x00000014u; /* 027B796C */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027B7970 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B7974 */ return; } // fn_027B7978 @ 0x27b7978 void Gambit_fn_027B7978(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; L_027B7978: ; // 0x27b7978 /* 027B7978 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027B7978 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7978 */ cpu->r[1] = _t0; /* 027B797C */ /* nop */ /* 027B7980 */ cpu->r[0] = cpu->lr; /* 027B7984 */ _t1 = cpu->r[1] + 0x00000044u; /* 027B7984 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B7988 */ cpu->r[23] = cpu->r[3]; /* 027B798C */ _t2 = cpu->r[23] + 0x00000000u; /* 027B798C */ cpu->r[11] = rbrew_read32(cpu->mem, _t2); /* 027B7990 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B7994 */ cpu->r[25] = cpu->r[5]; /* 027B7998 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7998 */ _t4 = _t3 & 0x00000001u; /* 027B7998 */ if (_t4) goto L_027B7B44; else goto L_027B799C; L_027B799C: ; // 0x27b799c /* 027B799C */ _t5 = cpu->r[11] + 0x00000018u; /* 027B799C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B79A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B79A4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B79A4 */ _t7 = _t6 & 0x00000001u; /* 027B79A4 */ if (_t7) goto L_027B7B44; else goto L_027B79A8; L_027B79A8: ; // 0x27b79a8 /* 027B79A8 */ _t8 = cpu->r[23] + 0x000000D8u; /* 027B79A8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t8); /* 027B79AC */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[5] * (int32_t)0x00000024u); /* 027B79B0 */ _t9 = cpu->r[23] + 0x000000DCu; /* 027B79B0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t9); /* 027B79B4 */ cpu->r[26] = 0x00000000u; /* 027B79B8 */ cpu->r[24] = 0x10110000u; /* 027B79BC */ cpu->r[30] = cpu->r[28] + cpu->r[7]; /* 027B79C0 */ cpu->r[31] = 0x10110000u; /* 027B79C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]); /* 027B79C8 */ cpu->r[31] = cpu->r[31] + 0xFFFFB3B4u; /* 027B79CC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B79CC */ _t11 = _t10 & 0x00000001u; /* 027B79CC */ if (_t11) goto L_027B7B44; else goto L_027B79D0; L_027B79D0: ; // 0x27b79d0 /* 027B79D0 */ cpu->r[27] = 0x00080000u; /* 027B79D4 */ _t12 = cpu->r[24] + 0x00007399u; /* 027B79D4 */ cpu->r[29] = rbrew_read8(cpu->mem, _t12); /* 027B79D8 */ cpu->r[27] = cpu->r[27] + 0x00000001u; L_027B79DC: ; // 0x27b79dc /* 027B79DC */ _t13 = cpu->r[1] + 0x00000008u; /* 027B79DC */ rbrew_write32(cpu->mem, _t13, cpu->r[25]); /* 027B79E0 */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027B79E0 */ rbrew_write32(cpu->mem, _t14, cpu->r[31]); /* 027B79E4 */ _t15 = cpu->r[28] + 0x00000004u; /* 027B79E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027B79E8 */ _t16 = cpu->r[10] + 0x00000014u; /* 027B79E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B79EC */ cpu->ctr = cpu->r[0]; /* 027B79F0 */ cpu->r[3] = cpu->r[28]; /* 027B79F4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B79F8 */ _t17 = cpu->r[28] + 0x00000004u; /* 027B79F8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17); /* 027B79FC */ _t18 = cpu->r[9] + 0x00000014u; /* 027B79FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t18); /* 027B7A00 */ cpu->ctr = cpu->r[12]; /* 027B7A04 */ cpu->r[3] = cpu->r[28]; /* 027B7A08 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7A0C */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027B7A0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t19); /* 027B7A10 */ _t20 = cpu->r[5] + 0x00000014u; /* 027B7A10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027B7A14 */ cpu->ctr = cpu->r[0]; /* 027B7A18 */ _t21 = cpu->r[28] + 0x00000000u; /* 027B7A18 */ cpu->r[22] = rbrew_read32(cpu->mem, _t21); /* 027B7A1C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B7A20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7A24 */ _t22 = cpu->r[1] + 0x00000008u; /* 027B7A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027B7A28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[0]); /* 027B7A2C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7A2C */ _t24 = _t23 & 0x00000001u; /* 027B7A2C */ if (_t24) goto L_027B7A64; else goto L_027B7A30; L_027B7A30: ; // 0x27b7a30 /* 027B7A30 */ _t25 = cpu->r[1] + 0x00000008u; /* 027B7A30 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25); /* 027B7A34 */ cpu->ctr = cpu->r[27]; /* 027B7A38 */ _t26 = cpu->r[28] + 0x00000000u; /* 027B7A38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t26); /* 027B7A3C */ cpu->r[9] = cpu->r[9] + 0xFFFFFFFFu; L_027B7A40: ; // 0x27b7a40 /* 027B7A40 */ _t27 = cpu->r[6] + 0x00000000u; /* 027B7A40 */ cpu->r[0] = rbrew_read8(cpu->mem, _t27); /* 027B7A44 */ _t28 = cpu->r[9] + 0x00000001u; /* 027B7A44 */ cpu->r[10] = rbrew_read8(cpu->mem, _t28); /* 027B7A44 */ cpu->r[9] = _t28; /* 027B7A48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[10]); /* 027B7A4C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7A4C */ _t30 = _t29 & 0x00000001u; /* 027B7A4C */ if (_t30) goto L_027B7A50; else goto L_027B7A70; L_027B7A50: ; // 0x27b7a50 /* 027B7A50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027B7A54 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7A54 */ _t32 = _t31 & 0x00000001u; /* 027B7A54 */ if (_t32) goto L_027B7A64; else goto L_027B7A58; L_027B7A58: ; // 0x27b7a58 /* 027B7A58 */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027B7A5C */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B7A5C */ _t33 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B7A5C */ _t34 = _t33 >> (0x00000002u & 31u); /* 027B7A5C */ _t35 = _t34 & 0x00000001u; /* 027B7A5C */ if (_t35) goto L_027B7A40; else goto L_027B7A60; L_027B7A60: ; // 0x27b7a60 /* 027B7A60 */ goto L_027B7A70; L_027B7A64: ; // 0x27b7a64 /* 027B7A64 */ cpu->r[4] = 0x00000001u; /* 027B7A68 */ _t36 = cpu->r[28] + 0x0000001Cu; /* 027B7A68 */ rbrew_write32(cpu->mem, _t36, cpu->r[4]); /* 027B7A6C */ goto L_027B7B44; L_027B7A70: ; // 0x27b7a70 /* 027B7A70 */ _t37 = cpu->r[28] + 0x00000000u; /* 027B7A70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37); /* 027B7A74 */ _t38 = cpu->r[12] + 0x00000000u; /* 027B7A74 */ cpu->r[0] = rbrew_read8(cpu->mem, _t38); /* 027B7A78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027B7A7C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7A7C */ _t40 = _t39 & 0x00000001u; /* 027B7A7C */ if (_t40) goto L_027B7A80; else goto L_027B7A84; L_027B7A80: ; // 0x27b7a80 /* 027B7A80 */ cpu->r[26] = cpu->r[28]; L_027B7A84: ; // 0x27b7a84 /* 027B7A84 */ cpu->r[28] = cpu->r[28] + 0x00000024u; /* 027B7A88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[30]); /* 027B7A8C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7A8C */ _t42 = _t41 & 0x00000001u; /* 027B7A8C */ if (_t42) goto L_027B7A90; else goto L_027B79DC; L_027B7A90: ; // 0x27b7a90 /* 027B7A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B7A94 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7A94 */ _t44 = _t43 & 0x00000001u; /* 027B7A94 */ if (_t44) goto L_027B7B44; else goto L_027B7A98; L_027B7A98: ; // 0x27b7a98 /* 027B7A98 */ _t45 = cpu->r[23] + 0x00000000u; /* 027B7A98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45); /* 027B7A9C */ _t46 = cpu->r[26] + 0x00000020u; /* 027B7A9C */ cpu->r[5] = rbrew_read32(cpu->mem, _t46); /* 027B7AA0 */ _t47 = cpu->r[11] + 0x00000018u; /* 027B7AA0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47); /* 027B7AA4 */ cpu->r[4] = cpu->r[25]; /* 027B7AA8 */ Gambit_fn_028B48F8(cpu); /* 027B7AAC */ _t48 = cpu->r[1] + 0x00000014u; /* 027B7AAC */ rbrew_write32(cpu->mem, _t48, cpu->r[31]); /* 027B7AB0 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B7AB4 */ _t49 = cpu->r[1] + 0x00000010u; /* 027B7AB4 */ rbrew_write32(cpu->mem, _t49, cpu->r[25]); /* 027B7AB8 */ _t50 = cpu->r[26] + 0x00000000u; /* 027B7AB8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t50); /* 027B7ABC */ Gambit_fn_027BA6E8(cpu); /* 027B7AC0 */ _t51 = cpu->r[24] + 0x00007399u; /* 027B7AC0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t51); /* 027B7AC4 */ _t52 = cpu->r[1] + 0x00000010u; /* 027B7AC4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t52); /* 027B7AC8 */ _t53 = cpu->r[11] + 0x00000000u; /* 027B7AC8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t53); /* 027B7ACC */ cpu->r[30] = 0x00000000u; /* 027B7AD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027B7AD4 */ cpu->r[4] = 0x00080000u; /* 027B7AD8 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7AD8 */ _t55 = _t54 & 0x00000001u; /* 027B7AD8 */ if (_t55) goto L_027B7B00; else goto L_027B7ADC; L_027B7ADC: ; // 0x27b7adc /* 027B7ADC */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B7AE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[4]); /* 027B7AE4 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027B7AE8 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B7AE8 */ _t57 = _t56 & 0x00000001u; /* 027B7AE8 */ if (_t57) goto L_027B7AFC; else goto L_027B7AEC; L_027B7AEC: ; // 0x27b7aec /* 027B7AEC */ _t58 = cpu->r[11] + 0x00000000u; /* 027B7AEC */ cpu->r[7] = rbrew_read8(cpu->mem, _t58); /* 027B7AF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027B7AF4 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7AF4 */ _t60 = _t59 & 0x00000001u; /* 027B7AF4 */ if (_t60) goto L_027B7AF8; else goto L_027B7ADC; L_027B7AF8: ; // 0x27b7af8 /* 027B7AF8 */ goto L_027B7B00; L_027B7AFC: ; // 0x27b7afc /* 027B7AFC */ cpu->r[30] = 0x00000000u; L_027B7B00: ; // 0x27b7b00 /* 027B7B00 */ _t61 = cpu->r[26] + 0x00000008u; /* 027B7B00 */ cpu->r[12] = rbrew_read32(cpu->mem, _t61); /* 027B7B04 */ _t62 = cpu->r[1] + 0x00000014u; /* 027B7B04 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62); /* 027B7B08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027B7B0C */ _t63 = cpu->r[8] + 0x00000014u; /* 027B7B0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t63); /* 027B7B10 */ _t64 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B7B10 */ _t65 = _t64 & 0x00000001u; /* 027B7B10 */ if (_t65) goto L_027B7B18; else goto L_027B7B14; L_027B7B14: ; // 0x27b7b14 /* 027B7B14 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027B7B18: ; // 0x27b7b18 /* 027B7B18 */ cpu->ctr = cpu->r[0]; /* 027B7B1C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B7B20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7B24 */ _t66 = cpu->r[1] + 0x00000010u; /* 027B7B24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t66); /* 027B7B28 */ cpu->r[6] = 0x00000000u; /* 027B7B2C */ cpu->r[5] = cpu->r[30]; /* 027B7B30 */ cpu->r[3] = cpu->r[29]; /* 027B7B34 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B7B38 */ cpu->r[4] = 0x00000001u; /* 027B7B3C */ _t67 = cpu->r[29] + cpu->r[30]; /* 027B7B3C */ rbrew_write8(cpu->mem, _t67, (uint8_t)cpu->r[31]); /* 027B7B40 */ _t68 = cpu->r[26] + 0x0000001Cu; /* 027B7B40 */ rbrew_write32(cpu->mem, _t68, cpu->r[4]); L_027B7B44: ; // 0x27b7b44 /* 027B7B44 */ /* nop */ /* 027B7B48 */ _t69 = cpu->r[1] + 0x00000044u; /* 027B7B48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t69); /* 027B7B4C */ cpu->lr = cpu->r[0]; /* 027B7B50 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027B7B54 */ return; } // fn_027B7B58 @ 0x27b7b58 void Gambit_fn_027B7B58(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_027B7B58: ; // 0x27b7b58 /* 027B7B58 */ cpu->r[0] = cpu->lr; /* 027B7B5C */ _t0 = cpu->r[1] + 0xFFFFFFB8u; /* 027B7B5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7B5C */ cpu->r[1] = _t0; /* 027B7B60 */ _t1 = cpu->r[1] + 0x0000001Cu; /* 027B7B60 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B7B64 */ _t2 = cpu->r[1] + 0x00000038u; /* 027B7B64 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]); /* 027B7B68 */ _t3 = cpu->r[1] + 0x00000028u; /* 027B7B68 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]); /* 027B7B6C */ _t4 = cpu->r[1] + 0x00000020u; /* 027B7B6C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027B7B70 */ /* nop */ /* 027B7B74 */ _t5 = cpu->r[1] + 0x00000024u; /* 027B7B74 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]); /* 027B7B78 */ _t6 = cpu->r[1] + 0x0000004Cu; /* 027B7B78 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027B7B7C */ /* nop */ /* 027B7B80 */ _t7 = cpu->r[1] + 0x00000018u; /* 027B7B80 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]); /* 027B7B84 */ _t8 = cpu->r[1] + 0x00000040u; /* 027B7B84 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]); /* 027B7B88 */ _t9 = cpu->r[1] + 0x00000030u; /* 027B7B88 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]); /* 027B7B8C */ cpu->r[29] = cpu->r[3]; /* 027B7B90 */ _t10 = cpu->r[29] + 0x00000000u; /* 027B7B90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027B7B94 */ cpu->r[30] = cpu->r[4]; /* 027B7B98 */ cpu->f[31] = cpu->f[2]; /* 027B7B9C */ cpu->r[31] = cpu->r[5]; /* 027B7BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B7BA4 */ cpu->f[30] = cpu->f[1]; /* 027B7BA8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7BA8 */ _t12 = _t11 & 0x00000001u; /* 027B7BA8 */ if (_t12) goto L_027B7C54; else goto L_027B7BAC; L_027B7BAC: ; // 0x27b7bac /* 027B7BAC */ cpu->r[28] = 0x00000000u; /* 027B7BB0 */ cpu->r[0] = 0x10110000u; /* 027B7BB4 */ _t13 = cpu->r[1] + 0x00000010u; /* 027B7BB4 */ rbrew_write32(cpu->mem, _t13, cpu->r[28]); /* 027B7BB8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB4BCu; /* 027B7BBC */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027B7BBC */ rbrew_write32(cpu->mem, _t14, cpu->r[28]); /* 027B7BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B7BC4 */ _t15 = cpu->r[1] + 0x00000014u; /* 027B7BC4 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]); /* 027B7BC8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7BC8 */ _t17 = _t16 & 0x00000001u; /* 027B7BC8 */ if (_t17) goto L_027B7BEC; else goto L_027B7BCC; L_027B7BCC: ; // 0x27b7bcc /* 027B7BCC */ cpu->r[3] = cpu->r[30]; /* 027B7BD0 */ cpu->r[4] = 0x00000000u; /* 027B7BD4 */ Gambit_fn_028B2FD8(cpu); /* 027B7BD8 */ _t18 = cpu->r[29] + 0x00000000u; /* 027B7BD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18); /* 027B7BDC */ _t19 = cpu->r[9] + 0x00000018u; /* 027B7BDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B7BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7BE4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7BE4 */ _t21 = _t20 & 0x00000001u; /* 027B7BE4 */ if (_t21) goto L_027B7C54; else goto L_027B7BE8; L_027B7BE8: ; // 0x27b7be8 /* 027B7BE8 */ goto L_027B7BFC; L_027B7BEC: ; // 0x27b7bec /* 027B7BEC */ _t22 = cpu->r[9] + 0x00000018u; /* 027B7BEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027B7BF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7BF4 */ cpu->r[30] = cpu->r[1] + 0x0000000Cu; /* 027B7BF8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7BF8 */ _t24 = _t23 & 0x00000001u; /* 027B7BF8 */ if (_t24) goto L_027B7C54; else goto L_027B7BFC; L_027B7BFC: ; // 0x27b7bfc /* 027B7BFC */ _t25 = cpu->r[9] + 0x00000018u; /* 027B7BFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t25); /* 027B7C00 */ cpu->r[4] = cpu->r[31]; /* 027B7C04 */ cpu->r[5] = cpu->r[30]; /* 027B7C08 */ Gambit_fn_028B48F8(cpu); /* 027B7C0C */ _t26 = cpu->r[30] + 0x00000000u; /* 027B7C0C */ cpu->r[10] = rbrew_read32(cpu->mem, _t26); /* 027B7C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B7C14 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7C14 */ _t28 = _t27 & 0x00000001u; /* 027B7C14 */ if (_t28) goto L_027B7C54; else goto L_027B7C18; L_027B7C18: ; // 0x27b7c18 /* 027B7C18 */ _t29 = cpu->r[10] + 0x0000000Cu; /* 027B7C18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29); /* 027B7C1C */ _t30 = cpu->r[30] + 0x00000004u; /* 027B7C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027B7C20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]); /* 027B7C24 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7C24 */ _t32 = _t31 & 0x00000001u; /* 027B7C24 */ if (_t32) goto L_027B7C28; else goto L_027B7C54; L_027B7C28: ; // 0x27b7c28 /* 027B7C28 */ cpu->f[1] = cpu->f[30]; /* 027B7C2C */ _t33 = cpu->r[1] + 0x00000008u; /* 027B7C2C */ rbrew_write32(cpu->mem, _t33, cpu->r[28]); /* 027B7C30 */ cpu->r[3] = cpu->r[30]; /* 027B7C34 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B7C38 */ Gambit_fn_028B3078(cpu); /* 027B7C3C */ cpu->f[1] = cpu->f[31]; /* 027B7C40 */ cpu->r[0] = 0x00000001u; /* 027B7C44 */ cpu->r[3] = cpu->r[30]; /* 027B7C48 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B7C4C */ _t34 = cpu->r[1] + 0x00000008u; /* 027B7C4C */ rbrew_write32(cpu->mem, _t34, cpu->r[0]); /* 027B7C50 */ Gambit_fn_028B3078(cpu); L_027B7C54: ; // 0x27b7c54 /* 027B7C54 */ _t35 = cpu->r[1] + 0x00000018u; /* 027B7C54 */ cpu->r[28] = rbrew_read32(cpu->mem, _t35); /* 027B7C58 */ _t36 = cpu->r[1] + 0x0000001Cu; /* 027B7C58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t36); /* 027B7C5C */ _t37 = cpu->r[1] + 0x00000040u; /* 027B7C5C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37); /* 027B7C60 */ _t38 = cpu->r[1] + 0x00000030u; /* 027B7C60 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t38); /* 027B7C64 */ _t39 = cpu->r[1] + 0x00000038u; /* 027B7C64 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39); /* 027B7C68 */ _t40 = cpu->r[1] + 0x00000028u; /* 027B7C68 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t40); /* 027B7C6C */ _t41 = cpu->r[1] + 0x00000024u; /* 027B7C6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t41); /* 027B7C70 */ _t42 = cpu->r[1] + 0x00000020u; /* 027B7C70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42); /* 027B7C74 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B7C74 */ _t44 = _t43 & 0x00000001u; /* 027B7C74 */ if (_t44) goto L_027B7C78; // else: addr-0 trap, fall-through L_027B7C78: ; // 0x27b7c78 /* 027B7C78 */ _t45 = cpu->r[1] + 0x0000004Cu; /* 027B7C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45); /* 027B7C7C */ cpu->lr = cpu->r[0]; /* 027B7C80 */ cpu->r[1] = cpu->r[1] + 0x00000048u; /* 027B7C84 */ return; } // fn_027B7B5C @ 0x27b7b5c void Gambit_fn_027B7B5C(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_027B7B5C: ; // 0x27b7b5c /* 027B7B5C */ _t0 = cpu->r[1] + 0xFFFFFFB8u; /* 027B7B5C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7B5C */ cpu->r[1] = _t0; /* 027B7B60 */ _t1 = cpu->r[1] + 0x0000001Cu; /* 027B7B60 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B7B64 */ _t2 = cpu->r[1] + 0x00000038u; /* 027B7B64 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[31]); /* 027B7B68 */ _t3 = cpu->r[1] + 0x00000028u; /* 027B7B68 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[30]); /* 027B7B6C */ _t4 = cpu->r[1] + 0x00000020u; /* 027B7B6C */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027B7B70 */ /* nop */ /* 027B7B74 */ _t5 = cpu->r[1] + 0x00000024u; /* 027B7B74 */ rbrew_write32(cpu->mem, _t5, cpu->r[31]); /* 027B7B78 */ _t6 = cpu->r[1] + 0x0000004Cu; /* 027B7B78 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027B7B7C */ /* nop */ /* 027B7B80 */ _t7 = cpu->r[1] + 0x00000018u; /* 027B7B80 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]); /* 027B7B84 */ _t8 = cpu->r[1] + 0x00000040u; /* 027B7B84 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]); /* 027B7B88 */ _t9 = cpu->r[1] + 0x00000030u; /* 027B7B88 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]); /* 027B7B8C */ cpu->r[29] = cpu->r[3]; /* 027B7B90 */ _t10 = cpu->r[29] + 0x00000000u; /* 027B7B90 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027B7B94 */ cpu->r[30] = cpu->r[4]; /* 027B7B98 */ cpu->f[31] = cpu->f[2]; /* 027B7B9C */ cpu->r[31] = cpu->r[5]; /* 027B7BA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B7BA4 */ cpu->f[30] = cpu->f[1]; /* 027B7BA8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7BA8 */ _t12 = _t11 & 0x00000001u; /* 027B7BA8 */ if (_t12) goto L_027B7C54; else goto L_027B7BAC; L_027B7BAC: ; // 0x27b7bac /* 027B7BAC */ cpu->r[28] = 0x00000000u; /* 027B7BB0 */ cpu->r[0] = 0x10110000u; /* 027B7BB4 */ _t13 = cpu->r[1] + 0x00000010u; /* 027B7BB4 */ rbrew_write32(cpu->mem, _t13, cpu->r[28]); /* 027B7BB8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB4BCu; /* 027B7BBC */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027B7BBC */ rbrew_write32(cpu->mem, _t14, cpu->r[28]); /* 027B7BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B7BC4 */ _t15 = cpu->r[1] + 0x00000014u; /* 027B7BC4 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]); /* 027B7BC8 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7BC8 */ _t17 = _t16 & 0x00000001u; /* 027B7BC8 */ if (_t17) goto L_027B7BEC; else goto L_027B7BCC; L_027B7BCC: ; // 0x27b7bcc /* 027B7BCC */ cpu->r[3] = cpu->r[30]; /* 027B7BD0 */ cpu->r[4] = 0x00000000u; /* 027B7BD4 */ Gambit_fn_028B2FD8(cpu); /* 027B7BD8 */ _t18 = cpu->r[29] + 0x00000000u; /* 027B7BD8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18); /* 027B7BDC */ _t19 = cpu->r[9] + 0x00000018u; /* 027B7BDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B7BE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7BE4 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7BE4 */ _t21 = _t20 & 0x00000001u; /* 027B7BE4 */ if (_t21) goto L_027B7C54; else goto L_027B7BE8; L_027B7BE8: ; // 0x27b7be8 /* 027B7BE8 */ goto L_027B7BFC; L_027B7BEC: ; // 0x27b7bec /* 027B7BEC */ _t22 = cpu->r[9] + 0x00000018u; /* 027B7BEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027B7BF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7BF4 */ cpu->r[30] = cpu->r[1] + 0x0000000Cu; /* 027B7BF8 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7BF8 */ _t24 = _t23 & 0x00000001u; /* 027B7BF8 */ if (_t24) goto L_027B7C54; else goto L_027B7BFC; L_027B7BFC: ; // 0x27b7bfc /* 027B7BFC */ _t25 = cpu->r[9] + 0x00000018u; /* 027B7BFC */ cpu->r[3] = rbrew_read32(cpu->mem, _t25); /* 027B7C00 */ cpu->r[4] = cpu->r[31]; /* 027B7C04 */ cpu->r[5] = cpu->r[30]; /* 027B7C08 */ Gambit_fn_028B48F8(cpu); /* 027B7C0C */ _t26 = cpu->r[30] + 0x00000000u; /* 027B7C0C */ cpu->r[10] = rbrew_read32(cpu->mem, _t26); /* 027B7C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B7C14 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7C14 */ _t28 = _t27 & 0x00000001u; /* 027B7C14 */ if (_t28) goto L_027B7C54; else goto L_027B7C18; L_027B7C18: ; // 0x27b7c18 /* 027B7C18 */ _t29 = cpu->r[10] + 0x0000000Cu; /* 027B7C18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29); /* 027B7C1C */ _t30 = cpu->r[30] + 0x00000004u; /* 027B7C1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027B7C20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]); /* 027B7C24 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7C24 */ _t32 = _t31 & 0x00000001u; /* 027B7C24 */ if (_t32) goto L_027B7C28; else goto L_027B7C54; L_027B7C28: ; // 0x27b7c28 /* 027B7C28 */ cpu->f[1] = cpu->f[30]; /* 027B7C2C */ _t33 = cpu->r[1] + 0x00000008u; /* 027B7C2C */ rbrew_write32(cpu->mem, _t33, cpu->r[28]); /* 027B7C30 */ cpu->r[3] = cpu->r[30]; /* 027B7C34 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B7C38 */ Gambit_fn_028B3078(cpu); /* 027B7C3C */ cpu->f[1] = cpu->f[31]; /* 027B7C40 */ cpu->r[0] = 0x00000001u; /* 027B7C44 */ cpu->r[3] = cpu->r[30]; /* 027B7C48 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B7C4C */ _t34 = cpu->r[1] + 0x00000008u; /* 027B7C4C */ rbrew_write32(cpu->mem, _t34, cpu->r[0]); /* 027B7C50 */ Gambit_fn_028B3078(cpu); L_027B7C54: ; // 0x27b7c54 /* 027B7C54 */ _t35 = cpu->r[1] + 0x00000018u; /* 027B7C54 */ cpu->r[28] = rbrew_read32(cpu->mem, _t35); /* 027B7C58 */ _t36 = cpu->r[1] + 0x0000001Cu; /* 027B7C58 */ cpu->r[29] = rbrew_read32(cpu->mem, _t36); /* 027B7C5C */ _t37 = cpu->r[1] + 0x00000040u; /* 027B7C5C */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t37); /* 027B7C60 */ _t38 = cpu->r[1] + 0x00000030u; /* 027B7C60 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t38); /* 027B7C64 */ _t39 = cpu->r[1] + 0x00000038u; /* 027B7C64 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t39); /* 027B7C68 */ _t40 = cpu->r[1] + 0x00000028u; /* 027B7C68 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t40); /* 027B7C6C */ _t41 = cpu->r[1] + 0x00000024u; /* 027B7C6C */ cpu->r[31] = rbrew_read32(cpu->mem, _t41); /* 027B7C70 */ _t42 = cpu->r[1] + 0x00000020u; /* 027B7C70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42); /* 027B7C74 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B7C74 */ _t44 = _t43 & 0x00000001u; /* 027B7C74 */ if (_t44) goto L_027B7C78; // else: addr-0 trap, fall-through L_027B7C78: ; // 0x27b7c78 /* 027B7C78 */ _t45 = cpu->r[1] + 0x0000004Cu; /* 027B7C78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45); /* 027B7C7C */ cpu->lr = cpu->r[0]; /* 027B7C80 */ cpu->r[1] = cpu->r[1] + 0x00000048u; /* 027B7C84 */ return; } // fn_027B7C88 @ 0x27b7c88 void Gambit_fn_027B7C88(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; L_027B7C88: ; // 0x27b7c88 /* 027B7C88 */ _t0 = cpu->r[1] + 0xFFFFFF90u; /* 027B7C88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7C88 */ cpu->r[1] = _t0; /* 027B7C8C */ /* nop */ /* 027B7C90 */ cpu->r[0] = cpu->lr; /* 027B7C94 */ _t1 = cpu->r[1] + 0x00000060u; /* 027B7C94 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[31]); /* 027B7C98 */ /* nop */ /* 027B7C9C */ _t2 = cpu->r[1] + 0x00000074u; /* 027B7C9C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B7CA0 */ _t3 = cpu->r[1] + 0x00000068u; /* 027B7CA0 */ rbrew_write_f32(cpu->mem, _t3, cpu->f[31]); /* 027B7CA4 */ cpu->r[29] = cpu->r[4]; /* 027B7CA8 */ cpu->r[28] = cpu->r[3]; /* 027B7CAC */ cpu->r[31] = cpu->r[5]; /* 027B7CB0 */ _t4 = cpu->r[28] + 0x00000000u; /* 027B7CB0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t4); /* 027B7CB4 */ cpu->r[30] = cpu->r[6]; /* 027B7CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B7CBC */ cpu->f[31] = cpu->f[1]; /* 027B7CC0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7CC0 */ _t6 = _t5 & 0x00000001u; /* 027B7CC0 */ if (_t6) goto L_027B7DCC; else goto L_027B7CC4; L_027B7CC4: ; // 0x27b7cc4 /* 027B7CC4 */ cpu->r[27] = 0x00000000u; /* 027B7CC8 */ cpu->r[12] = 0x10110000u; /* 027B7CCC */ _t7 = cpu->r[1] + 0x00000040u; /* 027B7CCC */ rbrew_write32(cpu->mem, _t7, cpu->r[27]); /* 027B7CD0 */ cpu->r[12] = cpu->r[12] + 0xFFFFB4BCu; /* 027B7CD4 */ _t8 = cpu->r[1] + 0x0000003Cu; /* 027B7CD4 */ rbrew_write32(cpu->mem, _t8, cpu->r[27]); /* 027B7CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B7CDC */ _t9 = cpu->r[1] + 0x00000044u; /* 027B7CDC */ rbrew_write32(cpu->mem, _t9, cpu->r[12]); /* 027B7CE0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7CE0 */ _t11 = _t10 & 0x00000001u; /* 027B7CE0 */ if (_t11) goto L_027B7D04; else goto L_027B7CE4; L_027B7CE4: ; // 0x27b7ce4 /* 027B7CE4 */ cpu->r[3] = cpu->r[29]; /* 027B7CE8 */ cpu->r[4] = 0x00000000u; /* 027B7CEC */ Gambit_fn_028B2FD8(cpu); /* 027B7CF0 */ _t12 = cpu->r[28] + 0x00000000u; /* 027B7CF0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12); /* 027B7CF4 */ _t13 = cpu->r[5] + 0x00000018u; /* 027B7CF4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B7CF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7CFC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7CFC */ _t15 = _t14 & 0x00000001u; /* 027B7CFC */ if (_t15) goto L_027B7DCC; else goto L_027B7D00; L_027B7D00: ; // 0x27b7d00 /* 027B7D00 */ goto L_027B7D14; L_027B7D04: ; // 0x27b7d04 /* 027B7D04 */ cpu->r[29] = cpu->r[1] + 0x0000003Cu; /* 027B7D08 */ _t16 = cpu->r[5] + 0x00000018u; /* 027B7D08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B7D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7D10 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7D10 */ _t18 = _t17 & 0x00000001u; /* 027B7D10 */ if (_t18) goto L_027B7DCC; else goto L_027B7D14; L_027B7D14: ; // 0x27b7d14 /* 027B7D14 */ _t19 = cpu->r[5] + 0x00000018u; /* 027B7D14 */ cpu->r[3] = rbrew_read32(cpu->mem, _t19); /* 027B7D18 */ cpu->r[4] = cpu->r[31]; /* 027B7D1C */ cpu->r[5] = cpu->r[29]; /* 027B7D20 */ Gambit_fn_028B48F8(cpu); /* 027B7D24 */ _t20 = cpu->r[29] + 0x00000000u; /* 027B7D24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20); /* 027B7D28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u); /* 027B7D2C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7D2C */ _t22 = _t21 & 0x00000001u; /* 027B7D2C */ if (_t22) goto L_027B7DCC; else goto L_027B7D30; L_027B7D30: ; // 0x27b7d30 /* 027B7D30 */ _t23 = cpu->r[6] + 0x0000000Cu; /* 027B7D30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23); /* 027B7D34 */ _t24 = cpu->r[29] + 0x00000004u; /* 027B7D34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B7D38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[0]); /* 027B7D3C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7D3C */ _t26 = _t25 & 0x00000001u; /* 027B7D3C */ if (_t26) goto L_027B7D40; else goto L_027B7DCC; L_027B7D40: ; // 0x27b7d40 /* 027B7D40 */ _t27 = cpu->r[1] + 0x00000010u; /* 027B7D40 */ rbrew_write32(cpu->mem, _t27, cpu->r[27]); /* 027B7D44 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B7D48 */ cpu->r[5] = cpu->r[1] + 0x0000001Cu; /* 027B7D4C */ _t28 = cpu->r[1] + 0x00000014u; /* 027B7D4C */ rbrew_write32(cpu->mem, _t28, cpu->r[27]); /* 027B7D50 */ cpu->r[4] = 0x00000008u; /* 027B7D54 */ _t29 = cpu->r[1] + 0x00000018u; /* 027B7D54 */ rbrew_write32(cpu->mem, _t29, cpu->r[27]); /* 027B7D58 */ Gambit_fn_028023A8(cpu); /* 027B7D5C */ cpu->r[4] = cpu->r[1] + 0x00000010u; /* 027B7D60 */ cpu->r[3] = cpu->r[29]; /* 027B7D64 */ Gambit_fn_028B3194(cpu); /* 027B7D68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7D6C */ cpu->r[29] = cpu->r[3]; /* 027B7D70 */ cpu->r[31] = 0x00000000u; /* 027B7D74 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7D74 */ _t31 = _t30 & 0x00000001u; /* 027B7D74 */ if (_t31) goto L_027B7DCC; else goto L_027B7D78; L_027B7D78: ; // 0x27b7d78 /* 027B7D78 */ _t32 = cpu->r[1] + 0x00000010u; /* 027B7D78 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32); /* 027B7D7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[9]); /* 027B7D80 */ cpu->r[3] = 0x00000000u; /* 027B7D84 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B7D84 */ _t34 = _t33 & 0x00000001u; /* 027B7D84 */ if (_t34) goto L_027B7D88; else goto L_027B7D94; L_027B7D88: ; // 0x27b7d88 /* 027B7D88 */ _t35 = cpu->r[1] + 0x00000018u; /* 027B7D88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t35); /* 027B7D8C */ cpu->r[10] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B7D90 */ _t36 = cpu->r[10] + cpu->r[11]; /* 027B7D90 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36); L_027B7D94: ; // 0x27b7d94 /* 027B7D94 */ Gambit_fn_028BC334(cpu); /* 027B7D98 */ cpu->r[12] = cpu->r[3]; /* 027B7D98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7D9C */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7D9C */ _t38 = _t37 & 0x00000001u; /* 027B7D9C */ if (_t38) goto L_027B7DC0; else goto L_027B7DA0; L_027B7DA0: ; // 0x27b7da0 /* 027B7DA0 */ _t39 = cpu->r[30] + 0x00000000u; /* 027B7DA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027B7DA4 */ cpu->r[4] = 0x00000000u; /* 027B7DA8 */ cpu->r[6] = cpu->r[1] + 0x00000008u; /* 027B7DAC */ _t40 = cpu->r[1] + 0x0000000Cu; /* 027B7DAC */ rbrew_write_f32(cpu->mem, _t40, cpu->f[31]); /* 027B7DB0 */ cpu->r[5] = cpu->r[4]; /* 027B7DB4 */ cpu->r[3] = cpu->r[12]; /* 027B7DB8 */ _t41 = cpu->r[1] + 0x00000008u; /* 027B7DB8 */ rbrew_write32(cpu->mem, _t41, cpu->r[0]); /* 027B7DBC */ Gambit_fn_028BE9D4(cpu); L_027B7DC0: ; // 0x27b7dc0 /* 027B7DC0 */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu; /* 027B7DC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B7DC4 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027B7DC8 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7DC8 */ _t43 = _t42 & 0x00000001u; /* 027B7DC8 */ if (_t43) goto L_027B7DCC; else goto L_027B7D78; L_027B7DCC: ; // 0x27b7dcc /* 027B7DCC */ /* nop */ /* 027B7DD0 */ _t44 = cpu->r[1] + 0x00000068u; /* 027B7DD0 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t44); /* 027B7DD4 */ _t45 = cpu->r[1] + 0x00000060u; /* 027B7DD4 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t45); /* 027B7DD8 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B7DD8 */ _t47 = _t46 & 0x00000001u; /* 027B7DD8 */ if (_t47) goto L_027B7DDC; // else: addr-0 trap, fall-through L_027B7DDC: ; // 0x27b7ddc /* 027B7DDC */ _t48 = cpu->r[1] + 0x00000074u; /* 027B7DDC */ cpu->r[0] = rbrew_read32(cpu->mem, _t48); /* 027B7DE0 */ cpu->lr = cpu->r[0]; /* 027B7DE4 */ cpu->r[1] = cpu->r[1] + 0x00000070u; /* 027B7DE8 */ return; } // fn_027B7DEC @ 0x27b7dec void Gambit_fn_027B7DEC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13; L_027B7DEC: ; // 0x27b7dec /* 027B7DEC */ cpu->r[0] = cpu->lr; /* 027B7DF0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B7DF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7DF0 */ cpu->r[1] = _t0; /* 027B7DF4 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B7DF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B7DF8 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B7DF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B7DFC */ _t3 = cpu->r[3] + 0x00000000u; /* 027B7DFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B7E00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7E04 */ cpu->r[31] = cpu->r[4]; /* 027B7E08 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E08 */ _t5 = _t4 & 0x00000001u; /* 027B7E08 */ if (_t5) goto L_027B7E2C; else goto L_027B7E0C; L_027B7E0C: ; // 0x27b7e0c /* 027B7E0C */ _t6 = cpu->r[12] + 0x00000018u; /* 027B7E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027B7E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7E14 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E14 */ _t8 = _t7 & 0x00000001u; /* 027B7E14 */ if (_t8) goto L_027B7E2C; else goto L_027B7E18; L_027B7E18: ; // 0x27b7e18 /* 027B7E18 */ _t9 = cpu->r[12] + 0x00000018u; /* 027B7E18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027B7E1C */ cpu->r[4] = cpu->r[31]; /* 027B7E20 */ Gambit_fn_028AC2D0(cpu); /* 027B7E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7E28 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E28 */ _t11 = _t10 & 0x00000001u; /* 027B7E28 */ if (_t11) goto L_027B7E2C; else goto L_027B7E34; L_027B7E2C: ; // 0x27b7e2c /* 027B7E2C */ cpu->r[3] = cpu->r[31]; /* 027B7E30 */ Gambit_fn_028A6B4C(cpu); L_027B7E34: ; // 0x27b7e34 /* 027B7E34 */ _t12 = cpu->r[1] + 0x00000014u; /* 027B7E34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027B7E38 */ _t13 = cpu->r[1] + 0x0000000Cu; /* 027B7E38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13); /* 027B7E3C */ cpu->lr = cpu->r[0]; /* 027B7E40 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B7E44 */ return; } // fn_027B7DF0 @ 0x27b7df0 void Gambit_fn_027B7DF0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13; L_027B7DF0: ; // 0x27b7df0 /* 027B7DF0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B7DF0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7DF0 */ cpu->r[1] = _t0; /* 027B7DF4 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B7DF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B7DF8 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B7DF8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B7DFC */ _t3 = cpu->r[3] + 0x00000000u; /* 027B7DFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B7E00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7E04 */ cpu->r[31] = cpu->r[4]; /* 027B7E08 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E08 */ _t5 = _t4 & 0x00000001u; /* 027B7E08 */ if (_t5) goto L_027B7E2C; else goto L_027B7E0C; L_027B7E0C: ; // 0x27b7e0c /* 027B7E0C */ _t6 = cpu->r[12] + 0x00000018u; /* 027B7E0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027B7E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B7E14 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E14 */ _t8 = _t7 & 0x00000001u; /* 027B7E14 */ if (_t8) goto L_027B7E2C; else goto L_027B7E18; L_027B7E18: ; // 0x27b7e18 /* 027B7E18 */ _t9 = cpu->r[12] + 0x00000018u; /* 027B7E18 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027B7E1C */ cpu->r[4] = cpu->r[31]; /* 027B7E20 */ Gambit_fn_028AC2D0(cpu); /* 027B7E24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7E28 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E28 */ _t11 = _t10 & 0x00000001u; /* 027B7E28 */ if (_t11) goto L_027B7E2C; else goto L_027B7E34; L_027B7E2C: ; // 0x27b7e2c /* 027B7E2C */ cpu->r[3] = cpu->r[31]; /* 027B7E30 */ Gambit_fn_028A6B4C(cpu); L_027B7E34: ; // 0x27b7e34 /* 027B7E34 */ _t12 = cpu->r[1] + 0x00000014u; /* 027B7E34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027B7E38 */ _t13 = cpu->r[1] + 0x0000000Cu; /* 027B7E38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13); /* 027B7E3C */ cpu->lr = cpu->r[0]; /* 027B7E40 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B7E44 */ return; } // fn_027B7E48 @ 0x27b7e48 void Gambit_fn_027B7E48(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027B7E48: ; // 0x27b7e48 /* 027B7E48 */ cpu->r[0] = cpu->lr; /* 027B7E4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B7E4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7E4C */ cpu->r[1] = _t0; /* 027B7E50 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B7E50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B7E54 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B7E54 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B7E58 */ _t3 = cpu->r[3] + 0x00000000u; /* 027B7E58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B7E5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7E60 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E60 */ _t5 = _t4 & 0x00000001u; /* 027B7E60 */ if (_t5) goto L_027B7E8C; else goto L_027B7E64; L_027B7E64: ; // 0x27b7e64 /* 027B7E64 */ _t6 = cpu->r[12] + 0x00000018u; /* 027B7E64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B7E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B7E6C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E6C */ _t8 = _t7 & 0x00000001u; /* 027B7E6C */ if (_t8) goto L_027B7E8C; else goto L_027B7E70; L_027B7E70: ; // 0x27b7e70 /* 027B7E70 */ _t9 = cpu->r[12] + 0x00000018u; /* 027B7E70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027B7E74 */ Gambit_fn_028B48FC(cpu); /* 027B7E78 */ _t10 = cpu->r[1] + 0x00000014u; /* 027B7E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B7E7C */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027B7E7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027B7E80 */ cpu->lr = cpu->r[0]; /* 027B7E84 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B7E88 */ return; L_027B7E8C: ; // 0x27b7e8c /* 027B7E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B7E90 */ cpu->r[31] = cpu->r[4]; /* 027B7E94 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E94 */ _t13 = _t12 & 0x00000001u; /* 027B7E94 */ if (_t13) goto L_027B7E98; else goto L_027B7EA8; L_027B7E98: ; // 0x27b7e98 /* 027B7E98 */ cpu->r[3] = 0x0000000Cu; /* 027B7E9C */ Gambit_fn_02801A78(cpu); /* 027B7EA0 */ cpu->r[31] = cpu->r[3]; /* 027B7EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B7EA4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7EA4 */ _t15 = _t14 & 0x00000001u; /* 027B7EA4 */ if (_t15) goto L_027B7EE4; else goto L_027B7EA8; L_027B7EA8: ; // 0x27b7ea8 /* 027B7EA8 */ cpu->r[3] = cpu->r[31]; /* 027B7EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7EAC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7EAC */ _t17 = _t16 & 0x00000001u; /* 027B7EAC */ if (_t17) goto L_027B7EB0; else goto L_027B7EC0; L_027B7EB0: ; // 0x27b7eb0 /* 027B7EB0 */ cpu->r[3] = 0x0000000Cu; /* 027B7EB4 */ Gambit_fn_02801A78(cpu); /* 027B7EB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7EBC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7EBC */ _t19 = _t18 & 0x00000001u; /* 027B7EBC */ if (_t19) goto L_027B7ED8; else goto L_027B7EC0; L_027B7EC0: ; // 0x27b7ec0 /* 027B7EC0 */ cpu->r[10] = 0x10110000u; /* 027B7EC4 */ cpu->r[12] = 0x00000000u; /* 027B7EC8 */ cpu->r[10] = cpu->r[10] + 0xFFFFB49Cu; /* 027B7ECC */ _t20 = cpu->r[3] + 0x00000004u; /* 027B7ECC */ rbrew_write32(cpu->mem, _t20, cpu->r[12]); /* 027B7ED0 */ _t21 = cpu->r[3] + 0x00000008u; /* 027B7ED0 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]); /* 027B7ED4 */ _t22 = cpu->r[3] + 0x00000000u; /* 027B7ED4 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]); L_027B7ED8: ; // 0x27b7ed8 /* 027B7ED8 */ cpu->r[0] = 0x10110000u; /* 027B7EDC */ cpu->r[0] = cpu->r[0] + 0xFFFFB4BCu; /* 027B7EE0 */ _t23 = cpu->r[31] + 0x00000008u; /* 027B7EE0 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]); L_027B7EE4: ; // 0x27b7ee4 /* 027B7EE4 */ _t24 = cpu->r[1] + 0x00000014u; /* 027B7EE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B7EE8 */ _t25 = cpu->r[1] + 0x0000000Cu; /* 027B7EE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25); /* 027B7EEC */ cpu->lr = cpu->r[0]; /* 027B7EF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B7EF4 */ return; } // fn_027B7E4C @ 0x27b7e4c void Gambit_fn_027B7E4C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027B7E4C: ; // 0x27b7e4c /* 027B7E4C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B7E4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7E4C */ cpu->r[1] = _t0; /* 027B7E50 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B7E50 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B7E54 */ _t2 = cpu->r[1] + 0x00000014u; /* 027B7E54 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B7E58 */ _t3 = cpu->r[3] + 0x00000000u; /* 027B7E58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B7E5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B7E60 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E60 */ _t5 = _t4 & 0x00000001u; /* 027B7E60 */ if (_t5) goto L_027B7E8C; else goto L_027B7E64; L_027B7E64: ; // 0x27b7e64 /* 027B7E64 */ _t6 = cpu->r[12] + 0x00000018u; /* 027B7E64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B7E68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B7E6C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E6C */ _t8 = _t7 & 0x00000001u; /* 027B7E6C */ if (_t8) goto L_027B7E8C; else goto L_027B7E70; L_027B7E70: ; // 0x27b7e70 /* 027B7E70 */ _t9 = cpu->r[12] + 0x00000018u; /* 027B7E70 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027B7E74 */ Gambit_fn_028B48FC(cpu); /* 027B7E78 */ _t10 = cpu->r[1] + 0x00000014u; /* 027B7E78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B7E7C */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027B7E7C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027B7E80 */ cpu->lr = cpu->r[0]; /* 027B7E84 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B7E88 */ return; L_027B7E8C: ; // 0x27b7e8c /* 027B7E8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B7E90 */ cpu->r[31] = cpu->r[4]; /* 027B7E94 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7E94 */ _t13 = _t12 & 0x00000001u; /* 027B7E94 */ if (_t13) goto L_027B7E98; else goto L_027B7EA8; L_027B7E98: ; // 0x27b7e98 /* 027B7E98 */ cpu->r[3] = 0x0000000Cu; /* 027B7E9C */ Gambit_fn_02801A78(cpu); /* 027B7EA0 */ cpu->r[31] = cpu->r[3]; /* 027B7EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B7EA4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7EA4 */ _t15 = _t14 & 0x00000001u; /* 027B7EA4 */ if (_t15) goto L_027B7EE4; else goto L_027B7EA8; L_027B7EA8: ; // 0x27b7ea8 /* 027B7EA8 */ cpu->r[3] = cpu->r[31]; /* 027B7EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7EAC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7EAC */ _t17 = _t16 & 0x00000001u; /* 027B7EAC */ if (_t17) goto L_027B7EB0; else goto L_027B7EC0; L_027B7EB0: ; // 0x27b7eb0 /* 027B7EB0 */ cpu->r[3] = 0x0000000Cu; /* 027B7EB4 */ Gambit_fn_02801A78(cpu); /* 027B7EB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B7EBC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7EBC */ _t19 = _t18 & 0x00000001u; /* 027B7EBC */ if (_t19) goto L_027B7ED8; else goto L_027B7EC0; L_027B7EC0: ; // 0x27b7ec0 /* 027B7EC0 */ cpu->r[10] = 0x10110000u; /* 027B7EC4 */ cpu->r[12] = 0x00000000u; /* 027B7EC8 */ cpu->r[10] = cpu->r[10] + 0xFFFFB49Cu; /* 027B7ECC */ _t20 = cpu->r[3] + 0x00000004u; /* 027B7ECC */ rbrew_write32(cpu->mem, _t20, cpu->r[12]); /* 027B7ED0 */ _t21 = cpu->r[3] + 0x00000008u; /* 027B7ED0 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]); /* 027B7ED4 */ _t22 = cpu->r[3] + 0x00000000u; /* 027B7ED4 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]); L_027B7ED8: ; // 0x27b7ed8 /* 027B7ED8 */ cpu->r[0] = 0x10110000u; /* 027B7EDC */ cpu->r[0] = cpu->r[0] + 0xFFFFB4BCu; /* 027B7EE0 */ _t23 = cpu->r[31] + 0x00000008u; /* 027B7EE0 */ rbrew_write32(cpu->mem, _t23, cpu->r[0]); L_027B7EE4: ; // 0x27b7ee4 /* 027B7EE4 */ _t24 = cpu->r[1] + 0x00000014u; /* 027B7EE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B7EE8 */ _t25 = cpu->r[1] + 0x0000000Cu; /* 027B7EE8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25); /* 027B7EEC */ cpu->lr = cpu->r[0]; /* 027B7EF0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B7EF4 */ return; } // fn_027B7EF8 @ 0x27b7ef8 void Gambit_fn_027B7EF8(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; L_027B7EF8: ; // 0x27b7ef8 /* 027B7EF8 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027B7EF8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B7EF8 */ cpu->r[1] = _t0; /* 027B7EFC */ /* nop */ /* 027B7F00 */ cpu->r[0] = cpu->lr; /* 027B7F04 */ _t1 = cpu->r[1] + 0x00000044u; /* 027B7F04 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B7F08 */ _t2 = cpu->r[3] + 0x00000000u; /* 027B7F08 */ cpu->r[9] = rbrew_read32(cpu->mem, _t2); /* 027B7F0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B7F10 */ cpu->r[24] = cpu->r[5]; /* 027B7F14 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7F14 */ _t4 = _t3 & 0x00000001u; /* 027B7F14 */ if (_t4) goto L_027B8008; else goto L_027B7F18; L_027B7F18: ; // 0x27b7f18 /* 027B7F18 */ _t5 = cpu->r[9] + 0x00000018u; /* 027B7F18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5); /* 027B7F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B7F20 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7F20 */ _t7 = _t6 & 0x00000001u; /* 027B7F20 */ if (_t7) goto L_027B8008; else goto L_027B7F24; L_027B7F24: ; // 0x27b7f24 /* 027B7F24 */ cpu->r[23] = 0x10110000u; /* 027B7F28 */ cpu->r[23] = cpu->r[23] + 0xFFFFB3B4u; /* 027B7F2C */ _t8 = cpu->r[1] + 0x00000010u; /* 027B7F2C */ rbrew_write32(cpu->mem, _t8, cpu->r[4]); /* 027B7F30 */ cpu->r[12] = cpu->r[23]; /* 027B7F34 */ _t9 = cpu->r[1] + 0x00000014u; /* 027B7F34 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]); /* 027B7F38 */ _t10 = cpu->r[9] + 0x00000018u; /* 027B7F38 */ cpu->r[10] = rbrew_read32(cpu->mem, _t10); /* 027B7F3C */ _t11 = cpu->r[10] + 0x00000014u; /* 027B7F3C */ cpu->r[29] = rbrew_read32(cpu->mem, _t11); /* 027B7F40 */ cpu->r[4] = cpu->r[10] + 0x00000008u; /* 027B7F44 */ _t12 = cpu->r[10] + 0x0000000Cu; /* 027B7F44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12); /* 027B7F48 */ cpu->r[31] = cpu->r[4] - cpu->r[29]; /* 027B7F4C */ cpu->r[28] = cpu->r[8] - cpu->r[29]; /* 027B7F50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]); /* 027B7F54 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7F54 */ _t14 = _t13 & 0x00000001u; /* 027B7F54 */ if (_t14) goto L_027B8008; else goto L_027B7F58; L_027B7F58: ; // 0x27b7f58 /* 027B7F58 */ cpu->r[30] = 0x10110000u; /* 027B7F5C */ cpu->r[25] = 0x00080000u; /* 027B7F60 */ cpu->r[26] = 0x00000001u; /* 027B7F64 */ _t15 = cpu->r[30] + 0x00007399u; /* 027B7F64 */ cpu->r[30] = rbrew_read8(cpu->mem, _t15); /* 027B7F68 */ cpu->r[25] = cpu->r[25] + 0x00000001u; L_027B7F6C: ; // 0x27b7f6c /* 027B7F6C */ _t16 = cpu->r[28] + 0x00000014u; /* 027B7F6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16); /* 027B7F70 */ _t17 = cpu->r[10] + 0x00000000u; /* 027B7F70 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17); /* 027B7F74 */ _t18 = cpu->r[1] + 0x0000000Cu; /* 027B7F74 */ rbrew_write32(cpu->mem, _t18, cpu->r[23]); /* 027B7F78 */ _t19 = cpu->r[1] + 0x00000008u; /* 027B7F78 */ rbrew_write32(cpu->mem, _t19, cpu->r[11]); /* 027B7F7C */ _t20 = cpu->r[12] + 0x00000014u; /* 027B7F7C */ cpu->r[4] = rbrew_read32(cpu->mem, _t20); /* 027B7F80 */ cpu->ctr = cpu->r[4]; /* 027B7F84 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B7F88 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7F8C */ _t21 = cpu->r[1] + 0x00000014u; /* 027B7F8C */ cpu->r[9] = rbrew_read32(cpu->mem, _t21); /* 027B7F90 */ _t22 = cpu->r[9] + 0x00000014u; /* 027B7F90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027B7F94 */ cpu->ctr = cpu->r[0]; /* 027B7F98 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B7F9C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7FA0 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027B7FA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t23); /* 027B7FA4 */ _t24 = cpu->r[5] + 0x00000014u; /* 027B7FA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t24); /* 027B7FA8 */ cpu->ctr = cpu->r[7]; /* 027B7FAC */ _t25 = cpu->r[1] + 0x00000010u; /* 027B7FAC */ cpu->r[27] = rbrew_read32(cpu->mem, _t25); /* 027B7FB0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B7FB4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B7FB8 */ _t26 = cpu->r[1] + 0x00000008u; /* 027B7FB8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t26); /* 027B7FBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[27], cpu->r[8]); /* 027B7FC0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7FC0 */ _t28 = _t27 & 0x00000001u; /* 027B7FC0 */ if (_t28) goto L_027B801C; else goto L_027B7FC4; L_027B7FC4: ; // 0x27b7fc4 /* 027B7FC4 */ _t29 = cpu->r[1] + 0x00000008u; /* 027B7FC4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t29); /* 027B7FC8 */ cpu->ctr = cpu->r[25]; /* 027B7FCC */ _t30 = cpu->r[1] + 0x00000010u; /* 027B7FCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t30); /* 027B7FD0 */ cpu->r[6] = cpu->r[6] + 0xFFFFFFFFu; L_027B7FD4: ; // 0x27b7fd4 /* 027B7FD4 */ _t31 = cpu->r[12] + 0x00000000u; /* 027B7FD4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t31); /* 027B7FD8 */ _t32 = cpu->r[6] + 0x00000001u; /* 027B7FD8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t32); /* 027B7FD8 */ cpu->r[6] = _t32; /* 027B7FDC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[9]); /* 027B7FE0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7FE0 */ _t34 = _t33 & 0x00000001u; /* 027B7FE0 */ if (_t34) goto L_027B7FE4; else goto L_027B8040; L_027B7FE4: ; // 0x27b7fe4 /* 027B7FE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]); /* 027B7FE8 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B7FE8 */ _t36 = _t35 & 0x00000001u; /* 027B7FE8 */ if (_t36) goto L_027B801C; else goto L_027B7FEC; L_027B7FEC: ; // 0x27b7fec /* 027B7FEC */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B7FF0 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B7FF0 */ _t37 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B7FF0 */ _t38 = _t37 >> (0x00000002u & 31u); /* 027B7FF0 */ _t39 = _t38 & 0x00000001u; /* 027B7FF0 */ if (_t39) goto L_027B7FD4; else goto L_027B7FF4; L_027B7FF4: ; // 0x27b7ff4 /* 027B7FF4 */ cpu->r[11] = cpu->r[28] + cpu->r[29]; /* 027B7FF8 */ _t40 = cpu->r[11] + 0x00000004u; /* 027B7FF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027B7FFC */ cpu->r[28] = cpu->r[0] - cpu->r[29]; /* 027B8000 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]); /* 027B8004 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8004 */ _t42 = _t41 & 0x00000001u; /* 027B8004 */ if (_t42) goto L_027B8008; else goto L_027B8054; L_027B8008: ; // 0x27b8008 /* 027B8008 */ /* nop */ /* 027B800C */ _t43 = cpu->r[1] + 0x00000044u; /* 027B800C */ cpu->r[0] = rbrew_read32(cpu->mem, _t43); /* 027B8010 */ cpu->lr = cpu->r[0]; /* 027B8014 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027B8018 */ return; L_027B801C: ; // 0x27b801c /* 027B801C */ _t44 = cpu->r[28] + 0x00000028u; /* 027B801C */ cpu->r[3] = rbrew_read32(cpu->mem, _t44); /* 027B8020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8024 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8024 */ _t46 = _t45 & 0x00000001u; /* 027B8024 */ if (_t46) goto L_027B803C; else goto L_027B8028; L_027B8028: ; // 0x27b8028 /* 027B8028 */ _t47 = cpu->r[3] + 0x00000050u; /* 027B8028 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47); /* 027B802C */ _t48 = cpu->r[10] + 0x00000024u; /* 027B802C */ cpu->r[0] = rbrew_read32(cpu->mem, _t48); /* 027B8030 */ cpu->ctr = cpu->r[0]; /* 027B8034 */ cpu->r[4] = cpu->r[24]; /* 027B8038 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B803C: ; // 0x27b803c /* 027B803C */ _t49 = cpu->r[28] + 0x0000004Cu; /* 027B803C */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[26]); L_027B8040: ; // 0x27b8040 /* 027B8040 */ cpu->r[11] = cpu->r[28] + cpu->r[29]; /* 027B8044 */ _t50 = cpu->r[11] + 0x00000004u; /* 027B8044 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50); /* 027B8048 */ cpu->r[28] = cpu->r[0] - cpu->r[29]; /* 027B804C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]); /* 027B8050 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8050 */ _t52 = _t51 & 0x00000001u; /* 027B8050 */ if (_t52) goto L_027B8008; else goto L_027B8054; L_027B8054: ; // 0x27b8054 /* 027B8054 */ _t53 = cpu->r[1] + 0x00000014u; /* 027B8054 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53); /* 027B8058 */ goto L_027B7F6C; } // fn_027B805C @ 0x27b805c void Gambit_fn_027B805C(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; L_027B805C: ; // 0x27b805c /* 027B805C */ _t0 = cpu->r[3] + 0x00000000u; /* 027B805C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B8060 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B8064 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8064 */ _t2 = _t1 & 0x00000001u; /* 027B8064 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B8064 */ goto L_027B8068; L_027B8068: ; // 0x27b8068 /* 027B8068 */ _t3 = cpu->r[12] + 0x00000018u; /* 027B8068 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B806C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B8070 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8070 */ _t5 = _t4 & 0x00000001u; /* 027B8070 */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B8070 */ goto L_027B8074; L_027B8074: ; // 0x27b8074 /* 027B8074 */ _t6 = cpu->r[12] + 0x00000018u; /* 027B8074 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B8078 */ goto L_028B4A94; L_028B4A94: ; // 0x28b4a94 /* 028B4A94 */ _t7 = cpu->r[1] + 0xFFFFFFE0u; /* 028B4A94 */ rbrew_write32(cpu->mem, _t7, cpu->r[1]); /* 028B4A94 */ cpu->r[1] = _t7; /* 028B4A98 */ /* nop */ /* 028B4A9C */ cpu->r[0] = cpu->lr; /* 028B4AA0 */ _t8 = cpu->r[1] + 0x00000024u; /* 028B4AA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 028B4AA4 */ cpu->r[30] = 0x101D0000u; /* 028B4AA8 */ _t9 = cpu->r[30] + 0xFFFF9A6Cu; /* 028B4AA8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9); /* 028B4AAC */ _t10 = cpu->r[30] + 0x00000000u; /* 028B4AAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 028B4AB0 */ _t11 = cpu->r[12] + 0x00000014u; /* 028B4AB0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 028B4AB4 */ cpu->r[31] = cpu->r[3]; /* 028B4AB8 */ cpu->ctr = cpu->r[0]; /* 028B4ABC */ cpu->r[3] = cpu->r[30]; /* 028B4AC0 */ cpu->r[27] = cpu->r[4]; /* 028B4AC4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 028B4AC8 */ _t12 = cpu->r[31] + 0x00000014u; /* 028B4AC8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t12); /* 028B4ACC */ cpu->r[8] = cpu->r[31] + 0x00000008u; /* 028B4AD0 */ _t13 = cpu->r[31] + 0x0000000Cu; /* 028B4AD0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13); /* 028B4AD4 */ cpu->r[31] = cpu->r[8] - cpu->r[29]; /* 028B4AD8 */ cpu->r[28] = cpu->r[7] - cpu->r[29]; /* 028B4ADC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]); /* 028B4AE0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 028B4AE0 */ _t15 = _t14 & 0x00000001u; /* 028B4AE0 */ if (_t15) goto L_028B4B20; else goto L_028B4AE4; L_028B4AE4: ; // 0x28b4ae4 /* 028B4AE4 */ cpu->r[26] = 0x00000001u; L_028B4AE8: ; // 0x28b4ae8 /* 028B4AE8 */ _t16 = cpu->r[28] + 0x00000028u; /* 028B4AE8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16); /* 028B4AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 028B4AF0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 028B4AF0 */ _t18 = _t17 & 0x00000001u; /* 028B4AF0 */ if (_t18) goto L_028B4B08; else goto L_028B4AF4; L_028B4AF4: ; // 0x28b4af4 /* 028B4AF4 */ _t19 = cpu->r[3] + 0x00000050u; /* 028B4AF4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19); /* 028B4AF8 */ _t20 = cpu->r[9] + 0x00000024u; /* 028B4AF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20); /* 028B4AFC */ cpu->ctr = cpu->r[10]; /* 028B4B00 */ cpu->r[4] = cpu->r[27]; /* 028B4B04 */ rbrew_call_indirect(cpu, cpu->ctr); L_028B4B08: ; // 0x28b4b08 /* 028B4B08 */ cpu->r[6] = cpu->r[28] + cpu->r[29]; /* 028B4B0C */ _t21 = cpu->r[28] + 0x0000004Cu; /* 028B4B0C */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[26]); /* 028B4B10 */ _t22 = cpu->r[6] + 0x00000004u; /* 028B4B10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t22); /* 028B4B14 */ cpu->r[28] = cpu->r[11] - cpu->r[29]; /* 028B4B18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[31]); /* 028B4B1C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 028B4B1C */ _t24 = _t23 & 0x00000001u; /* 028B4B1C */ if (_t24) goto L_028B4B20; else goto L_028B4AE8; L_028B4B20: ; // 0x28b4b20 /* 028B4B20 */ _t25 = cpu->r[30] + 0x00000000u; /* 028B4B20 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 028B4B24 */ _t26 = cpu->r[12] + 0x0000001Cu; /* 028B4B24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); /* 028B4B28 */ cpu->ctr = cpu->r[0]; /* 028B4B2C */ cpu->r[3] = cpu->r[30]; /* 028B4B30 */ rbrew_call_indirect(cpu, cpu->ctr); /* 028B4B34 */ /* nop */ /* 028B4B38 */ _t27 = cpu->r[1] + 0x00000024u; /* 028B4B38 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27); /* 028B4B3C */ cpu->lr = cpu->r[0]; /* 028B4B40 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 028B4B44 */ return; } // fn_027B807C @ 0x27b807c void Gambit_fn_027B807C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12; L_027B807C: ; // 0x27b807c /* 027B807C */ _t0 = cpu->r[3] + 0x00000000u; /* 027B807C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B8080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B8084 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8084 */ _t2 = _t1 & 0x00000001u; /* 027B8084 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B8084 */ goto L_027B8088; L_027B8088: ; // 0x27b8088 /* 027B8088 */ _t3 = cpu->r[12] + 0x00000018u; /* 027B8088 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B808C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B8090 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8090 */ _t5 = _t4 & 0x00000001u; /* 027B8090 */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B8090 */ goto L_027B8094; L_027B8094: ; // 0x27b8094 /* 027B8094 */ _t6 = cpu->r[12] + 0x00000018u; /* 027B8094 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B8098 */ goto L_028AC25C; L_028AC25C: ; // 0x28ac25c /* 028AC25C */ cpu->r[0] = cpu->lr; /* 028AC260 */ _t7 = cpu->r[1] + 0xFFFFFFF0u; /* 028AC260 */ rbrew_write32(cpu->mem, _t7, cpu->r[1]); /* 028AC260 */ cpu->r[1] = _t7; /* 028AC264 */ _t8 = cpu->r[1] + 0x0000000Cu; /* 028AC264 */ rbrew_write32(cpu->mem, _t8, cpu->r[31]); /* 028AC268 */ cpu->r[31] = cpu->r[3]; /* 028AC26C */ _t9 = cpu->r[1] + 0x00000014u; /* 028AC26C */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 028AC270 */ Gambit_fn_028AC1B4(cpu); /* 028AC274 */ _t10 = cpu->r[31] + 0x00000054u; /* 028AC274 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 028AC278 */ Gambit_fn_028AACF8(cpu); /* 028AC27C */ _t11 = cpu->r[1] + 0x00000014u; /* 028AC27C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 028AC280 */ cpu->lr = cpu->r[0]; /* 028AC284 */ _t12 = cpu->r[1] + 0x0000000Cu; /* 028AC284 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12); /* 028AC288 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 028AC28C */ return; } // fn_027B809C @ 0x27b809c void Gambit_fn_027B809C(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_027B809C: ; // 0x27b809c /* 027B809C */ cpu->r[0] = cpu->lr; /* 027B80A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B80A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B80A0 */ cpu->r[1] = _t0; /* 027B80A4 */ _t1 = cpu->r[1] + 0x00000010u; /* 027B80A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B80A8 */ _t2 = cpu->r[1] + 0x00000008u; /* 027B80A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B80AC */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027B80AC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B80B0 */ _t4 = cpu->r[1] + 0x00000014u; /* 027B80B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B80B4 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B80B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B80B8 */ _t6 = cpu->r[3] + 0x00000000u; /* 027B80B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027B80BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B80C0 */ cpu->r[30] = 0x00000000u; /* 027B80C4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B80C4 */ _t8 = _t7 & 0x00000001u; /* 027B80C4 */ if (_t8) goto L_027B8114; else goto L_027B80C8; L_027B80C8: ; // 0x27b80c8 /* 027B80C8 */ _t9 = cpu->r[9] + 0x00000018u; /* 027B80C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9); /* 027B80CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B80D0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B80D0 */ _t11 = _t10 & 0x00000001u; /* 027B80D0 */ if (_t11) goto L_027B8114; else goto L_027B80D4; L_027B80D4: ; // 0x27b80d4 /* 027B80D4 */ _t12 = cpu->r[9] + 0x00000018u; /* 027B80D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12); /* 027B80D8 */ _t13 = cpu->r[11] + 0x00000014u; /* 027B80D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13); /* 027B80DC */ cpu->r[0] = cpu->r[11] + 0x00000008u; /* 027B80E0 */ _t14 = cpu->r[11] + 0x0000000Cu; /* 027B80E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14); /* 027B80E4 */ cpu->r[28] = cpu->r[0] - cpu->r[31]; /* 027B80E8 */ cpu->r[29] = cpu->r[12] - cpu->r[31]; /* 027B80EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]); /* 027B80F0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B80F0 */ _t16 = _t15 & 0x00000001u; /* 027B80F0 */ if (_t16) goto L_027B8114; else goto L_027B80F4; L_027B80F4: ; // 0x27b80f4 /* 027B80F4 */ cpu->r[3] = cpu->r[29]; /* 027B80F8 */ Gambit_fn_028A5764(cpu); /* 027B80FC */ cpu->r[8] = cpu->r[29] + cpu->r[31]; /* 027B8100 */ _t17 = cpu->r[8] + 0x00000004u; /* 027B8100 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027B8104 */ cpu->r[29] = cpu->r[0] - cpu->r[31]; /* 027B8108 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]); /* 027B810C */ cpu->r[30] = cpu->r[30] + cpu->r[3]; /* 027B8110 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8110 */ _t19 = _t18 & 0x00000001u; /* 027B8110 */ if (_t19) goto L_027B8114; else goto L_027B80F4; L_027B8114: ; // 0x27b8114 /* 027B8114 */ _t20 = cpu->r[1] + 0x00000008u; /* 027B8114 */ cpu->r[28] = rbrew_read32(cpu->mem, _t20); /* 027B8118 */ _t21 = cpu->r[1] + 0x0000000Cu; /* 027B8118 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21); /* 027B811C */ _t22 = cpu->r[1] + 0x0000001Cu; /* 027B811C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027B8120 */ cpu->r[3] = cpu->r[30]; /* 027B8124 */ _t23 = cpu->r[1] + 0x00000010u; /* 027B8124 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23); /* 027B8128 */ cpu->lr = cpu->r[0]; /* 027B812C */ _t24 = cpu->r[1] + 0x00000014u; /* 027B812C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24); /* 027B8130 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B8134 */ return; } // fn_027B80A0 @ 0x27b80a0 void Gambit_fn_027B80A0(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_027B80A0: ; // 0x27b80a0 /* 027B80A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B80A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B80A0 */ cpu->r[1] = _t0; /* 027B80A4 */ _t1 = cpu->r[1] + 0x00000010u; /* 027B80A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B80A8 */ _t2 = cpu->r[1] + 0x00000008u; /* 027B80A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B80AC */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027B80AC */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B80B0 */ _t4 = cpu->r[1] + 0x00000014u; /* 027B80B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B80B4 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B80B4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B80B8 */ _t6 = cpu->r[3] + 0x00000000u; /* 027B80B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027B80BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B80C0 */ cpu->r[30] = 0x00000000u; /* 027B80C4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B80C4 */ _t8 = _t7 & 0x00000001u; /* 027B80C4 */ if (_t8) goto L_027B8114; else goto L_027B80C8; L_027B80C8: ; // 0x27b80c8 /* 027B80C8 */ _t9 = cpu->r[9] + 0x00000018u; /* 027B80C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9); /* 027B80CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B80D0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B80D0 */ _t11 = _t10 & 0x00000001u; /* 027B80D0 */ if (_t11) goto L_027B8114; else goto L_027B80D4; L_027B80D4: ; // 0x27b80d4 /* 027B80D4 */ _t12 = cpu->r[9] + 0x00000018u; /* 027B80D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12); /* 027B80D8 */ _t13 = cpu->r[11] + 0x00000014u; /* 027B80D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t13); /* 027B80DC */ cpu->r[0] = cpu->r[11] + 0x00000008u; /* 027B80E0 */ _t14 = cpu->r[11] + 0x0000000Cu; /* 027B80E0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t14); /* 027B80E4 */ cpu->r[28] = cpu->r[0] - cpu->r[31]; /* 027B80E8 */ cpu->r[29] = cpu->r[12] - cpu->r[31]; /* 027B80EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]); /* 027B80F0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B80F0 */ _t16 = _t15 & 0x00000001u; /* 027B80F0 */ if (_t16) goto L_027B8114; else goto L_027B80F4; L_027B80F4: ; // 0x27b80f4 /* 027B80F4 */ cpu->r[3] = cpu->r[29]; /* 027B80F8 */ Gambit_fn_028A5764(cpu); /* 027B80FC */ cpu->r[8] = cpu->r[29] + cpu->r[31]; /* 027B8100 */ _t17 = cpu->r[8] + 0x00000004u; /* 027B8100 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027B8104 */ cpu->r[29] = cpu->r[0] - cpu->r[31]; /* 027B8108 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[28]); /* 027B810C */ cpu->r[30] = cpu->r[30] + cpu->r[3]; /* 027B8110 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8110 */ _t19 = _t18 & 0x00000001u; /* 027B8110 */ if (_t19) goto L_027B8114; else goto L_027B80F4; L_027B8114: ; // 0x27b8114 /* 027B8114 */ _t20 = cpu->r[1] + 0x00000008u; /* 027B8114 */ cpu->r[28] = rbrew_read32(cpu->mem, _t20); /* 027B8118 */ _t21 = cpu->r[1] + 0x0000000Cu; /* 027B8118 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21); /* 027B811C */ _t22 = cpu->r[1] + 0x0000001Cu; /* 027B811C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027B8120 */ cpu->r[3] = cpu->r[30]; /* 027B8124 */ _t23 = cpu->r[1] + 0x00000010u; /* 027B8124 */ cpu->r[30] = rbrew_read32(cpu->mem, _t23); /* 027B8128 */ cpu->lr = cpu->r[0]; /* 027B812C */ _t24 = cpu->r[1] + 0x00000014u; /* 027B812C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24); /* 027B8130 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B8134 */ return; } // fn_027B8138 @ 0x27b8138 void Gambit_fn_027B8138(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027B8138: ; // 0x27b8138 /* 027B8138 */ cpu->r[0] = cpu->lr; /* 027B813C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B8140 */ _t0 = cpu->r[1] + 0x00000004u; /* 027B8140 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027B8144 */ cpu->r[11] = cpu->r[3]; /* 027B8148 */ _t1 = cpu->r[1] + 0xFFFFFFF8u; /* 027B8148 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027B8148 */ cpu->r[1] = _t1; /* 027B814C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B814C */ _t3 = _t2 & 0x00000001u; /* 027B814C */ if (_t3) goto L_027B817C; else goto L_027B8150; L_027B8150: ; // 0x27b8150 /* 027B8150 */ cpu->r[3] = cpu->r[11]; /* 027B8154 */ Gambit_fn_027B7034(cpu); /* 027B8158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B815C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B815C */ _t5 = _t4 & 0x00000001u; /* 027B815C */ if (_t5) goto L_027B817C; else goto L_027B8160; L_027B8160: ; // 0x27b8160 /* 027B8160 */ _t6 = cpu->r[11] + 0x00000000u; /* 027B8160 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6); /* 027B8164 */ _t7 = cpu->r[12] + 0x00000018u; /* 027B8164 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7); /* 027B8168 */ _t8 = cpu->r[12] + 0x00000068u; /* 027B8168 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027B816C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B8170 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8170 */ _t10 = _t9 & 0x00000001u; /* 027B8170 */ if (_t10) goto L_027B817C; else goto L_027B8174; L_027B8174: ; // 0x27b8174 /* 027B8174 */ cpu->r[3] = cpu->r[11] + 0x000000FCu; /* 027B8178 */ Gambit_fn_028E1558(cpu); L_027B817C: ; // 0x27b817c /* 027B817C */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027B817C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027B8180 */ cpu->lr = cpu->r[0]; /* 027B8184 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B8188 */ return; } // fn_027B8148 @ 0x27b8148 void Gambit_fn_027B8148(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10; L_027B8148: ; // 0x27b8148 /* 027B8148 */ _t0 = cpu->r[1] + 0xFFFFFFF8u; /* 027B8148 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8148 */ cpu->r[1] = _t0; /* 027B814C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B814C */ _t2 = _t1 & 0x00000001u; /* 027B814C */ if (_t2) goto L_027B817C; else goto L_027B8150; L_027B8150: ; // 0x27b8150 /* 027B8150 */ cpu->r[3] = cpu->r[11]; /* 027B8154 */ Gambit_fn_027B7034(cpu); /* 027B8158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B815C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B815C */ _t4 = _t3 & 0x00000001u; /* 027B815C */ if (_t4) goto L_027B817C; else goto L_027B8160; L_027B8160: ; // 0x27b8160 /* 027B8160 */ _t5 = cpu->r[11] + 0x00000000u; /* 027B8160 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027B8164 */ _t6 = cpu->r[12] + 0x00000018u; /* 027B8164 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6); /* 027B8168 */ _t7 = cpu->r[12] + 0x00000068u; /* 027B8168 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7); /* 027B816C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B8170 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8170 */ _t9 = _t8 & 0x00000001u; /* 027B8170 */ if (_t9) goto L_027B817C; else goto L_027B8174; L_027B8174: ; // 0x27b8174 /* 027B8174 */ cpu->r[3] = cpu->r[11] + 0x000000FCu; /* 027B8178 */ Gambit_fn_028E1558(cpu); L_027B817C: ; // 0x27b817c /* 027B817C */ _t10 = cpu->r[1] + 0x0000000Cu; /* 027B817C */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B8180 */ cpu->lr = cpu->r[0]; /* 027B8184 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B8188 */ return; } // fn_027B818C @ 0x27b818c void Gambit_fn_027B818C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027B818C: ; // 0x27b818c /* 027B818C */ cpu->r[0] = cpu->lr; /* 027B8190 */ _t0 = cpu->r[1] + 0x00000004u; /* 027B8190 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027B8194 */ cpu->r[11] = cpu->r[3]; /* 027B8198 */ _t1 = cpu->r[1] + 0xFFFFFFF8u; /* 027B8198 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027B8198 */ cpu->r[1] = _t1; /* 027B819C */ Gambit_fn_027B7034(cpu); /* 027B81A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B81A4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B81A4 */ _t3 = _t2 & 0x00000001u; /* 027B81A4 */ if (_t3) goto L_027B81D0; else goto L_027B81A8; L_027B81A8: ; // 0x27b81a8 /* 027B81A8 */ _t4 = cpu->r[11] + 0x00000000u; /* 027B81A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4); /* 027B81AC */ _t5 = cpu->r[12] + 0x00000018u; /* 027B81AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027B81B0 */ _t6 = cpu->r[12] + 0x00000068u; /* 027B81B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6); /* 027B81B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B81B8 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B81B8 */ _t8 = _t7 & 0x00000001u; /* 027B81B8 */ if (_t8) goto L_027B81D0; else goto L_027B81BC; L_027B81BC: ; // 0x27b81bc /* 027B81BC */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027B81BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027B81C0 */ _t10 = cpu->r[12] + 0x0000014Cu; /* 027B81C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 027B81C4 */ cpu->lr = cpu->r[0]; /* 027B81C8 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B81CC */ return; L_027B81D0: ; // 0x27b81d0 /* 027B81D0 */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027B81D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027B81D4 */ cpu->lr = cpu->r[0]; /* 027B81D8 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B81DC */ cpu->r[3] = 0x00000000u; /* 027B81E0 */ return; } // fn_027B8198 @ 0x27b8198 void Gambit_fn_027B8198(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10; L_027B8198: ; // 0x27b8198 /* 027B8198 */ _t0 = cpu->r[1] + 0xFFFFFFF8u; /* 027B8198 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8198 */ cpu->r[1] = _t0; /* 027B819C */ Gambit_fn_027B7034(cpu); /* 027B81A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B81A4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B81A4 */ _t2 = _t1 & 0x00000001u; /* 027B81A4 */ if (_t2) goto L_027B81D0; else goto L_027B81A8; L_027B81A8: ; // 0x27b81a8 /* 027B81A8 */ _t3 = cpu->r[11] + 0x00000000u; /* 027B81A8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B81AC */ _t4 = cpu->r[12] + 0x00000018u; /* 027B81AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t4); /* 027B81B0 */ _t5 = cpu->r[12] + 0x00000068u; /* 027B81B0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027B81B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B81B8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B81B8 */ _t7 = _t6 & 0x00000001u; /* 027B81B8 */ if (_t7) goto L_027B81D0; else goto L_027B81BC; L_027B81BC: ; // 0x27b81bc /* 027B81BC */ _t8 = cpu->r[1] + 0x0000000Cu; /* 027B81BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B81C0 */ _t9 = cpu->r[12] + 0x0000014Cu; /* 027B81C0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027B81C4 */ cpu->lr = cpu->r[0]; /* 027B81C8 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B81CC */ return; L_027B81D0: ; // 0x27b81d0 /* 027B81D0 */ _t10 = cpu->r[1] + 0x0000000Cu; /* 027B81D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B81D4 */ cpu->lr = cpu->r[0]; /* 027B81D8 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027B81DC */ cpu->r[3] = 0x00000000u; /* 027B81E0 */ return; } // fn_027B81E4 @ 0x27b81e4 void Gambit_fn_027B81E4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8; L_027B81E4: ; // 0x27b81e4 /* 027B81E4 */ cpu->r[12] = cpu->r[3]; /* 027B81E8 */ _t0 = cpu->r[12] + 0x00000078u; /* 027B81E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027B81EC */ _t1 = cpu->r[12] + 0x0000007Cu; /* 027B81EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t1); /* 027B81F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], cpu->r[8]); /* 027B81F4 */ _t2 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B81F4 */ _t3 = _t2 & 0x00000001u; /* 027B81F4 */ _t4 = _t3 ^ 0x00000001u; /* 027B81F4 */ if (_t4) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B81F4 */ goto L_027B81F8; L_027B81F8: ; // 0x27b81f8 /* 027B81F8 */ _t5 = cpu->r[12] + 0x00000080u; /* 027B81F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B81FC */ cpu->r[11] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B8200 */ _t6 = cpu->r[11] + cpu->r[0]; /* 027B8200 */ rbrew_write32(cpu->mem, _t6, cpu->r[4]); /* 027B8204 */ _t7 = cpu->r[12] + 0x00000078u; /* 027B8204 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7); /* 027B8208 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027B820C */ _t8 = cpu->r[12] + 0x00000078u; /* 027B820C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]); /* 027B8210 */ return; } // fn_027B8214 @ 0x27b8214 void Gambit_fn_027B8214(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_027B8214: ; // 0x27b8214 /* 027B8214 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B8214 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027B8218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B821C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B821C */ _t2 = _t1 & 0x00000001u; /* 027B821C */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B821C */ goto L_027B8220; L_027B8220: ; // 0x27b8220 /* 027B8220 */ goto L_027DA708; L_027DA708: ; // 0x27da708 /* 027DA708 */ cpu->r[0] = cpu->lr; /* 027DA70C */ _t3 = cpu->r[1] + 0xFFFFFFE0u; /* 027DA70C */ rbrew_write32(cpu->mem, _t3, cpu->r[1]); /* 027DA70C */ cpu->r[1] = _t3; /* 027DA710 */ _t4 = cpu->r[1] + 0x00000010u; /* 027DA710 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[31]); /* 027DA714 */ _t5 = cpu->r[1] + 0x00000008u; /* 027DA714 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]); /* 027DA718 */ /* nop */ /* 027DA71C */ _t6 = cpu->r[1] + 0x00000018u; /* 027DA71C */ rbrew_write_f32(cpu->mem, _t6, cpu->f[31]); /* 027DA720 */ cpu->r[30] = cpu->r[3]; /* 027DA724 */ _t7 = cpu->r[1] + 0x0000000Cu; /* 027DA724 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]); /* 027DA728 */ _t8 = cpu->r[1] + 0x00000024u; /* 027DA728 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027DA72C */ _t9 = cpu->r[30] + 0x00000014u; /* 027DA72C */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027DA730 */ cpu->r[31] = cpu->r[4]; /* 027DA734 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027DA738 */ cpu->f[31] = cpu->f[1]; /* 027DA73C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA73C */ _t11 = _t10 & 0x00000001u; /* 027DA73C */ if (_t11) goto L_027DA74C; else goto L_027DA740; L_027DA740: ; // 0x27da740 /* 027DA740 */ cpu->f[1] = cpu->f[31]; /* 027DA744 */ cpu->r[4] = cpu->r[31]; /* 027DA748 */ Gambit_fn_028AC498(cpu); L_027DA74C: ; // 0x27da74c /* 027DA74C */ _t12 = cpu->r[30] + 0x00000018u; /* 027DA74C */ cpu->r[3] = rbrew_read32(cpu->mem, _t12); /* 027DA750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027DA754 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA754 */ _t14 = _t13 & 0x00000001u; /* 027DA754 */ if (_t14) goto L_027DA764; else goto L_027DA758; L_027DA758: ; // 0x27da758 /* 027DA758 */ cpu->f[1] = cpu->f[31]; /* 027DA75C */ cpu->r[4] = cpu->r[31]; /* 027DA760 */ Gambit_fn_028AC498(cpu); L_027DA764: ; // 0x27da764 /* 027DA764 */ _t15 = cpu->r[1] + 0x00000018u; /* 027DA764 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t15); /* 027DA768 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027DA768 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027DA76C */ _t17 = cpu->r[1] + 0x00000010u; /* 027DA76C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t17); /* 027DA770 */ _t18 = cpu->r[1] + 0x00000008u; /* 027DA770 */ cpu->r[30] = rbrew_read32(cpu->mem, _t18); /* 027DA774 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u); /* 027DA774 */ _t20 = _t19 & 0x00000001u; /* 027DA774 */ if (_t20) goto L_027DA778; // else: addr-0 trap, fall-through L_027DA778: ; // 0x27da778 /* 027DA778 */ _t21 = cpu->r[1] + 0x00000024u; /* 027DA778 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027DA77C */ cpu->lr = cpu->r[0]; /* 027DA780 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027DA784 */ return; } // fn_027B8224 @ 0x27b8224 void Gambit_fn_027B8224(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17; L_027B8224: ; // 0x27b8224 /* 027B8224 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B8224 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027B8228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B822C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B822C */ _t2 = _t1 & 0x00000001u; /* 027B822C */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B822C */ goto L_027B8230; L_027B8230: ; // 0x27b8230 /* 027B8230 */ goto L_027DA698; L_027DA698: ; // 0x27da698 /* 027DA698 */ cpu->r[0] = cpu->lr; /* 027DA69C */ _t3 = cpu->r[1] + 0xFFFFFFE8u; /* 027DA69C */ rbrew_write32(cpu->mem, _t3, cpu->r[1]); /* 027DA69C */ cpu->r[1] = _t3; /* 027DA6A0 */ _t4 = cpu->r[1] + 0x00000010u; /* 027DA6A0 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027DA6A4 */ _t5 = cpu->r[1] + 0x0000000Cu; /* 027DA6A4 */ rbrew_write32(cpu->mem, _t5, cpu->r[29]); /* 027DA6A8 */ _t6 = cpu->r[1] + 0x00000014u; /* 027DA6A8 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]); /* 027DA6AC */ _t7 = cpu->r[1] + 0x0000001Cu; /* 027DA6AC */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027DA6B0 */ cpu->r[29] = cpu->r[3]; /* 027DA6B4 */ _t8 = cpu->r[29] + 0x00000014u; /* 027DA6B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8); /* 027DA6B8 */ cpu->r[31] = cpu->r[5]; /* 027DA6BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027DA6C0 */ cpu->r[30] = cpu->r[4]; /* 027DA6C4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA6C4 */ _t10 = _t9 & 0x00000001u; /* 027DA6C4 */ if (_t10) goto L_027DA6D4; else goto L_027DA6C8; L_027DA6C8: ; // 0x27da6c8 /* 027DA6C8 */ cpu->r[5] = cpu->r[31]; /* 027DA6CC */ cpu->r[4] = cpu->r[30]; /* 027DA6D0 */ Gambit_fn_028AC3E4(cpu); L_027DA6D4: ; // 0x27da6d4 /* 027DA6D4 */ _t11 = cpu->r[29] + 0x00000018u; /* 027DA6D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); /* 027DA6D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027DA6DC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA6DC */ _t13 = _t12 & 0x00000001u; /* 027DA6DC */ if (_t13) goto L_027DA6EC; else goto L_027DA6E0; L_027DA6E0: ; // 0x27da6e0 /* 027DA6E0 */ cpu->r[5] = cpu->r[31]; /* 027DA6E4 */ cpu->r[4] = cpu->r[30]; /* 027DA6E8 */ Gambit_fn_028AC3E4(cpu); L_027DA6EC: ; // 0x27da6ec /* 027DA6EC */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027DA6EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t14); /* 027DA6F0 */ _t15 = cpu->r[1] + 0x0000001Cu; /* 027DA6F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027DA6F4 */ _t16 = cpu->r[1] + 0x00000010u; /* 027DA6F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16); /* 027DA6F8 */ cpu->lr = cpu->r[0]; /* 027DA6FC */ _t17 = cpu->r[1] + 0x00000014u; /* 027DA6FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t17); /* 027DA700 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027DA704 */ return; } // fn_027B8234 @ 0x27b8234 void Gambit_fn_027B8234(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8; L_027B8234: ; // 0x27b8234 /* 027B8234 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B8234 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027B8238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B823C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B823C */ _t2 = _t1 & 0x00000001u; /* 027B823C */ if (_t2) goto L_027B8264; else goto L_027B8240; L_027B8240: ; // 0x27b8240 /* 027B8240 */ _t3 = cpu->r[11] + 0x00000018u; /* 027B8240 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B8244 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B8248 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8248 */ _t5 = _t4 & 0x00000001u; /* 027B8248 */ if (_t5) goto L_027B8264; else goto L_027B824C; L_027B824C: ; // 0x27b824c /* 027B824C */ _t6 = cpu->r[11] + 0x00000018u; /* 027B824C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6); /* 027B8250 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x0000000Cu); /* 027B8254 */ _t7 = cpu->r[12] + 0x00000050u; /* 027B8254 */ cpu->r[12] = rbrew_read32(cpu->mem, _t7); /* 027B8258 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; /* 027B825C */ _t8 = cpu->r[12] + 0x00000004u; /* 027B825C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8); /* 027B8260 */ return; L_027B8264: ; // 0x27b8264 /* 027B8264 */ cpu->r[3] = 0xFFFFFFFFu; /* 027B8268 */ return; } // fn_027B826C @ 0x27b826c void Gambit_fn_027B826C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7; L_027B826C: ; // 0x27b826c /* 027B826C */ _t0 = cpu->r[3] + 0x00000000u; /* 027B826C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B8270 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B8274 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8274 */ _t2 = _t1 & 0x00000001u; /* 027B8274 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B8274 */ goto L_027B8278; L_027B8278: ; // 0x27b8278 /* 027B8278 */ _t3 = cpu->r[12] + 0x00000014u; /* 027B8278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B827C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B8280 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8280 */ _t5 = _t4 & 0x00000001u; /* 027B8280 */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B8280 */ goto L_027B8284; L_027B8284: ; // 0x27b8284 /* 027B8284 */ _t6 = cpu->r[12] + 0x00000014u; /* 027B8284 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B8288 */ _t7 = cpu->r[11] + 0x00000060u; /* 027B8288 */ rbrew_write32(cpu->mem, _t7, cpu->r[4]); /* 027B828C */ return; } // fn_027B8290 @ 0x27b8290 void Gambit_fn_027B8290(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7; L_027B8290: ; // 0x27b8290 /* 027B8290 */ _t0 = cpu->r[3] + 0x00000000u; /* 027B8290 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027B8294 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B8298 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8298 */ _t2 = _t1 & 0x00000001u; /* 027B8298 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B8298 */ goto L_027B829C; L_027B829C: ; // 0x27b829c /* 027B829C */ _t3 = cpu->r[12] + 0x00000018u; /* 027B829C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B82A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B82A4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B82A4 */ _t5 = _t4 & 0x00000001u; /* 027B82A4 */ if (_t5) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027B82A4 */ goto L_027B82A8; L_027B82A8: ; // 0x27b82a8 /* 027B82A8 */ _t6 = cpu->r[12] + 0x00000018u; /* 027B82A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027B82AC */ _t7 = cpu->r[11] + 0x00000088u; /* 027B82AC */ rbrew_write32(cpu->mem, _t7, cpu->r[4]); /* 027B82B0 */ return; } // fn_027B82B4 @ 0x27b82b4 void Gambit_fn_027B82B4(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; L_027B82B4: ; // 0x27b82b4 /* 027B82B4 */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027B82B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B82B4 */ cpu->r[1] = _t0; /* 027B82B8 */ /* nop */ /* 027B82BC */ cpu->r[30] = cpu->r[6]; /* 027B82C0 */ cpu->r[27] = cpu->r[4]; /* 027B82C4 */ cpu->r[4] = cpu->r[5]; /* 027B82C8 */ cpu->r[26] = cpu->r[3]; /* 027B82CC */ cpu->r[0] = cpu->lr; /* 027B82D0 */ cpu->r[3] = cpu->r[26] + 0x00000028u; /* 027B82D4 */ cpu->r[6] = 0x00000004u; /* 027B82D8 */ cpu->r[5] = cpu->r[27]; /* 027B82DC */ _t1 = cpu->r[1] + 0x00000034u; /* 027B82DC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B82E0 */ Gambit_fn_028023CC(cpu); /* 027B82E4 */ _t2 = cpu->r[26] + 0x0000002Cu; /* 027B82E4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027B82E8 */ cpu->r[25] = 0x00000000u; /* 027B82EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]); /* 027B82F0 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B82F0 */ _t4 = _t3 & 0x00000001u; /* 027B82F0 */ if (_t4) goto L_027B82F4; else goto L_027B8414; L_027B82F4: ; // 0x27b82f4 /* 027B82F4 */ cpu->r[31] = 0x10110000u; /* 027B82F8 */ _t5 = cpu->r[31] + 0x00007399u; /* 027B82F8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t5); /* 027B82FC */ cpu->r[24] = 0x00000000u; L_027B8300: ; // 0x27b8300 /* 027B8300 */ cpu->r[4] = cpu->r[27]; /* 027B8304 */ cpu->r[3] = 0x0000000Cu; /* 027B8308 */ cpu->r[5] = 0x00000004u; /* 027B830C */ Gambit_fn_02801AC8(cpu); /* 027B8310 */ cpu->r[28] = cpu->r[3]; /* 027B8310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027B8314 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8314 */ _t7 = _t6 & 0x00000001u; /* 027B8314 */ if (_t7) goto L_027B83D8; else goto L_027B8318; L_027B8318: ; // 0x27b8318 /* 027B8318 */ cpu->r[3] = cpu->r[30]; /* 027B831C */ cpu->r[4] = cpu->r[27]; /* 027B8320 */ cpu->r[5] = 0x00000004u; /* 027B8324 */ cpu->r[23] = cpu->r[3]; /* 027B8328 */ Gambit_fn_02801ADC(cpu); /* 027B832C */ cpu->r[29] = cpu->r[3]; /* 027B832C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B8330 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8330 */ _t9 = _t8 & 0x00000001u; /* 027B8330 */ if (_t9) goto L_027B8340; else goto L_027B8334; L_027B8334: ; // 0x27b8334 /* 027B8334 */ cpu->r[3] = cpu->r[29]; /* 027B8338 */ cpu->r[4] = cpu->r[23]; /* 027B833C */ Gambit_fn_02C89380(cpu); L_027B8340: ; // 0x27b8340 /* 027B8340 */ cpu->r[10] = cpu->r[28]; /* 027B8340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B8344 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8344 */ _t11 = _t10 & 0x00000001u; /* 027B8344 */ if (_t11) goto L_027B8348; else goto L_027B8358; L_027B8348: ; // 0x27b8348 /* 027B8348 */ cpu->r[3] = 0x0000000Cu; /* 027B834C */ Gambit_fn_02801A78(cpu); /* 027B8350 */ cpu->r[10] = cpu->r[3]; /* 027B8350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B8354 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8354 */ _t13 = _t12 & 0x00000001u; /* 027B8354 */ if (_t13) goto L_027B83B0; else goto L_027B8358; L_027B8358: ; // 0x27b8358 /* 027B8358 */ cpu->r[0] = 0x10110000u; /* 027B835C */ _t14 = cpu->r[10] + 0x00000000u; /* 027B835C */ rbrew_write32(cpu->mem, _t14, cpu->r[29]); /* 027B8360 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3CCu; /* 027B8364 */ _t15 = cpu->r[10] + 0x00000008u; /* 027B8364 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]); /* 027B8368 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B836C */ _t16 = cpu->r[10] + 0x00000004u; /* 027B836C */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027B8370 */ _t17 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8370 */ _t18 = _t17 & 0x00000001u; /* 027B8370 */ if (_t18) goto L_027B83A4; else goto L_027B8374; L_027B8374: ; // 0x27b8374 /* 027B8374 */ _t19 = cpu->r[10] + 0x00000000u; /* 027B8374 */ rbrew_write32(cpu->mem, _t19, cpu->r[24]); /* 027B8378 */ cpu->r[0] = 0x10110000u; /* 027B837C */ _t20 = cpu->r[10] + 0x00000008u; /* 027B837C */ rbrew_write32(cpu->mem, _t20, cpu->r[24]); /* 027B8380 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3E4u; /* 027B8384 */ _t21 = cpu->r[28] + 0x00000000u; /* 027B8384 */ cpu->r[9] = rbrew_read32(cpu->mem, _t21); /* 027B8388 */ _t22 = cpu->r[28] + 0x00000004u; /* 027B8388 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]); /* 027B838C */ _t23 = cpu->r[9] + 0x00000000u; /* 027B838C */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[31]); /* 027B8390 */ _t24 = cpu->r[26] + 0x0000002Cu; /* 027B8390 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B8394 */ _t25 = cpu->r[26] + 0x00000028u; /* 027B8394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 027B8398 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027B839C */ _t26 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B839C */ _t27 = _t26 & 0x00000001u; /* 027B839C */ if (_t27) goto L_027B83A0; else goto L_027B8408; L_027B83A0: ; // 0x27b83a0 /* 027B83A0 */ goto L_027B83EC; L_027B83A4: ; // 0x27b83a4 /* 027B83A4 */ _t28 = cpu->r[10] + 0x00000000u; /* 027B83A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28); /* 027B83A8 */ cpu->r[5] = cpu->r[8] + cpu->r[30]; /* 027B83AC */ _t29 = cpu->r[5] + 0xFFFFFFFFu; /* 027B83AC */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[31]); L_027B83B0: ; // 0x27b83b0 /* 027B83B0 */ cpu->r[0] = 0x10110000u; /* 027B83B4 */ _t30 = cpu->r[28] + 0x00000000u; /* 027B83B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t30); /* 027B83B8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3E4u; /* 027B83BC */ _t31 = cpu->r[28] + 0x00000004u; /* 027B83BC */ rbrew_write32(cpu->mem, _t31, cpu->r[0]); /* 027B83C0 */ _t32 = cpu->r[9] + 0x00000000u; /* 027B83C0 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[31]); /* 027B83C4 */ _t33 = cpu->r[26] + 0x0000002Cu; /* 027B83C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33); /* 027B83C8 */ _t34 = cpu->r[26] + 0x00000028u; /* 027B83C8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t34); /* 027B83CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027B83D0 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B83D0 */ _t36 = _t35 & 0x00000001u; /* 027B83D0 */ if (_t36) goto L_027B83D4; else goto L_027B8408; L_027B83D4: ; // 0x27b83d4 /* 027B83D4 */ goto L_027B83EC; L_027B83D8: ; // 0x27b83d8 /* 027B83D8 */ _t37 = cpu->r[26] + 0x00000028u; /* 027B83D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37); /* 027B83DC */ _t38 = cpu->r[26] + 0x0000002Cu; /* 027B83DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027B83E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027B83E4 */ cpu->r[28] = 0x00000000u; /* 027B83E8 */ _t39 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B83E8 */ _t40 = _t39 & 0x00000001u; /* 027B83E8 */ if (_t40) goto L_027B83EC; else goto L_027B8408; L_027B83EC: ; // 0x27b83ec /* 027B83EC */ _t41 = cpu->r[26] + 0x00000030u; /* 027B83EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41); /* 027B83F0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B83F4 */ _t42 = cpu->r[10] + cpu->r[0]; /* 027B83F4 */ rbrew_write32(cpu->mem, _t42, cpu->r[28]); /* 027B83F8 */ _t43 = cpu->r[26] + 0x00000028u; /* 027B83F8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43); /* 027B83FC */ _t44 = cpu->r[26] + 0x0000002Cu; /* 027B83FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t44); /* 027B8400 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B8404 */ _t45 = cpu->r[26] + 0x00000028u; /* 027B8404 */ rbrew_write32(cpu->mem, _t45, cpu->r[12]); L_027B8408: ; // 0x27b8408 /* 027B8408 */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027B840C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]); /* 027B8410 */ _t46 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8410 */ _t47 = _t46 & 0x00000001u; /* 027B8410 */ if (_t47) goto L_027B8300; else goto L_027B8414; L_027B8414: ; // 0x27b8414 /* 027B8414 */ /* nop */ /* 027B8418 */ _t48 = cpu->r[1] + 0x00000034u; /* 027B8418 */ cpu->r[0] = rbrew_read32(cpu->mem, _t48); /* 027B841C */ cpu->lr = cpu->r[0]; /* 027B8420 */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027B8424 */ return; } // fn_027B8428 @ 0x27b8428 void Gambit_fn_027B8428(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; L_027B8428: ; // 0x27b8428 /* 027B8428 */ _t0 = cpu->r[1] + 0xFFFFFFD8u; /* 027B8428 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8428 */ cpu->r[1] = _t0; /* 027B842C */ /* nop */ /* 027B8430 */ cpu->r[0] = cpu->lr; /* 027B8434 */ _t1 = cpu->r[1] + 0x0000002Cu; /* 027B8434 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B8438 */ cpu->r[27] = cpu->r[3]; /* 027B843C */ _t2 = cpu->r[27] + 0x00000034u; /* 027B843C */ cpu->r[11] = rbrew_read32(cpu->mem, _t2); /* 027B8440 */ _t3 = cpu->r[27] + 0x00000028u; /* 027B8440 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027B8444 */ cpu->r[26] = cpu->r[4]; /* 027B8448 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]); /* 027B844C */ cpu->r[29] = 0x00000000u; /* 027B8450 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8450 */ _t5 = _t4 & 0x00000001u; /* 027B8450 */ if (_t5) goto L_027B8454; else goto L_027B8460; L_027B8454: ; // 0x27b8454 /* 027B8454 */ _t6 = cpu->r[27] + 0x00000030u; /* 027B8454 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6); /* 027B8458 */ cpu->r[6] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B845C */ _t7 = cpu->r[6] + cpu->r[7]; /* 027B845C */ cpu->r[29] = rbrew_read32(cpu->mem, _t7); L_027B8460: ; // 0x27b8460 /* 027B8460 */ _t8 = cpu->r[29] + 0x00000004u; /* 027B8460 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8); /* 027B8464 */ _t9 = cpu->r[8] + 0x00000014u; /* 027B8464 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9); /* 027B8468 */ cpu->ctr = cpu->r[9]; /* 027B846C */ _t10 = cpu->r[29] + 0x00000000u; /* 027B846C */ cpu->r[25] = rbrew_read32(cpu->mem, _t10); /* 027B8470 */ cpu->r[3] = cpu->r[29]; /* 027B8474 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B8478 */ _t11 = cpu->r[29] + 0x00000000u; /* 027B8478 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11); /* 027B847C */ cpu->r[31] = 0x10110000u; /* 027B8480 */ _t12 = cpu->r[31] + 0x00007399u; /* 027B8480 */ cpu->r[31] = rbrew_read8(cpu->mem, _t12); /* 027B8484 */ _t13 = cpu->r[9] + 0x00000000u; /* 027B8484 */ cpu->r[10] = rbrew_read8(cpu->mem, _t13); /* 027B8488 */ cpu->r[28] = 0x00000000u; /* 027B848C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027B8490 */ cpu->r[10] = 0x00080000u; /* 027B8494 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8494 */ _t15 = _t14 & 0x00000001u; /* 027B8494 */ if (_t15) goto L_027B84BC; else goto L_027B8498; L_027B8498: ; // 0x27b8498 /* 027B8498 */ cpu->r[28] = cpu->r[28] + 0x00000001u; /* 027B849C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[10]); /* 027B84A0 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B84A4 */ _t16 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B84A4 */ _t17 = _t16 & 0x00000001u; /* 027B84A4 */ if (_t17) goto L_027B84B8; else goto L_027B84A8; L_027B84A8: ; // 0x27b84a8 /* 027B84A8 */ _t18 = cpu->r[9] + 0x00000000u; /* 027B84A8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18); /* 027B84AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B84B0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B84B0 */ _t20 = _t19 & 0x00000001u; /* 027B84B0 */ if (_t20) goto L_027B84B4; else goto L_027B8498; L_027B84B4: ; // 0x27b84b4 /* 027B84B4 */ goto L_027B84BC; L_027B84B8: ; // 0x27b84b8 /* 027B84B8 */ cpu->r[28] = 0x00000000u; L_027B84BC: ; // 0x27b84bc /* 027B84BC */ _t21 = cpu->r[26] + 0x00000004u; /* 027B84BC */ cpu->r[12] = rbrew_read32(cpu->mem, _t21); /* 027B84C0 */ cpu->r[24] = cpu->r[28]; /* 027B84C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027B84C4 */ _t22 = cpu->r[12] + 0x00000014u; /* 027B84C4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t22); /* 027B84C8 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B84C8 */ _t24 = _t23 & 0x00000001u; /* 027B84C8 */ if (_t24) goto L_027B84CC; else goto L_027B84D0; L_027B84CC: ; // 0x27b84cc /* 027B84CC */ cpu->r[24] = 0x00000000u; L_027B84D0: ; // 0x27b84d0 /* 027B84D0 */ cpu->ctr = cpu->r[5]; /* 027B84D4 */ cpu->r[3] = cpu->r[26]; /* 027B84D8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B84DC */ _t25 = cpu->r[26] + 0x00000000u; /* 027B84DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 027B84E0 */ _t26 = cpu->r[12] + 0x00000000u; /* 027B84E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t26); /* 027B84E4 */ cpu->r[30] = 0x00000000u; /* 027B84E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B84EC */ cpu->r[0] = 0x00080000u; /* 027B84F0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B84F0 */ _t28 = _t27 & 0x00000001u; /* 027B84F0 */ if (_t28) goto L_027B8518; else goto L_027B84F4; L_027B84F4: ; // 0x27b84f4 /* 027B84F4 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B84F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B84FC */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B8500 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8500 */ _t30 = _t29 & 0x00000001u; /* 027B8500 */ if (_t30) goto L_027B8514; else goto L_027B8504; L_027B8504: ; // 0x27b8504 /* 027B8504 */ _t31 = cpu->r[12] + 0x00000000u; /* 027B8504 */ cpu->r[7] = rbrew_read8(cpu->mem, _t31); /* 027B8508 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027B850C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B850C */ _t33 = _t32 & 0x00000001u; /* 027B850C */ if (_t33) goto L_027B8510; else goto L_027B84F4; L_027B8510: ; // 0x27b8510 /* 027B8510 */ goto L_027B8518; L_027B8514: ; // 0x27b8514 /* 027B8514 */ cpu->r[30] = 0x00000000u; L_027B8518: ; // 0x27b8518 /* 027B8518 */ _t34 = cpu->r[29] + 0x00000008u; /* 027B8518 */ cpu->r[8] = rbrew_read32(cpu->mem, _t34); /* 027B851C */ cpu->r[12] = cpu->r[8] - cpu->r[24]; /* 027B8520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027B8524 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8524 */ _t36 = _t35 & 0x00000001u; /* 027B8524 */ if (_t36) goto L_027B852C; else goto L_027B8528; L_027B8528: ; // 0x27b8528 /* 027B8528 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027B852C: ; // 0x27b852c /* 027B852C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B8530 */ _t37 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8530 */ _t38 = _t37 & 0x00000001u; /* 027B8530 */ if (_t38) goto L_027B8534; else goto L_027B8570; L_027B8534: ; // 0x27b8534 /* 027B8534 */ _t39 = cpu->r[26] + 0x00000004u; /* 027B8534 */ cpu->r[9] = rbrew_read32(cpu->mem, _t39); /* 027B8538 */ _t40 = cpu->r[9] + 0x00000014u; /* 027B8538 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40); /* 027B853C */ cpu->ctr = cpu->r[10]; /* 027B8540 */ cpu->r[29] = cpu->r[25] + cpu->r[24]; /* 027B8544 */ cpu->r[3] = cpu->r[26]; /* 027B8548 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B854C */ _t41 = cpu->r[26] + 0x00000000u; /* 027B854C */ cpu->r[4] = rbrew_read32(cpu->mem, _t41); /* 027B8550 */ cpu->r[6] = 0x00000000u; /* 027B8554 */ cpu->r[5] = cpu->r[30]; /* 027B8558 */ cpu->r[3] = cpu->r[29]; /* 027B855C */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B8560 */ cpu->r[0] = cpu->r[24] + cpu->r[30]; /* 027B8564 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[28]); /* 027B8568 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8568 */ _t43 = _t42 & 0x00000001u; /* 027B8568 */ if (_t43) goto L_027B856C; else goto L_027B8570; L_027B856C: ; // 0x27b856c /* 027B856C */ _t44 = cpu->r[25] + cpu->r[0]; /* 027B856C */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[31]); L_027B8570: ; // 0x27b8570 /* 027B8570 */ _t45 = cpu->r[27] + 0x00000034u; /* 027B8570 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45); /* 027B8574 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027B8578 */ _t46 = cpu->r[27] + 0x00000034u; /* 027B8578 */ rbrew_write32(cpu->mem, _t46, cpu->r[11]); /* 027B857C */ /* nop */ /* 027B8580 */ _t47 = cpu->r[1] + 0x0000002Cu; /* 027B8580 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47); /* 027B8584 */ cpu->lr = cpu->r[0]; /* 027B8588 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027B858C */ return; } // fn_027B8590 @ 0x27b8590 void Gambit_fn_027B8590(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; L_027B8590: ; // 0x27b8590 /* 027B8590 */ _t0 = cpu->r[1] + 0xFFFFFFB0u; /* 027B8590 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8590 */ cpu->r[1] = _t0; /* 027B8594 */ cpu->r[0] = cpu->lr; /* 027B8598 */ /* nop */ /* 027B859C */ cpu->r[28] = cpu->r[4]; /* 027B859C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027B85A0 */ cpu->r[25] = cpu->r[5]; /* 027B85A4 */ _t1 = cpu->r[1] + 0x00000054u; /* 027B85A4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B85A8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B85A8 */ _t3 = _t2 & 0x00000001u; /* 027B85A8 */ if (_t3) goto L_027B875C; else goto L_027B85AC; L_027B85AC: ; // 0x27b85ac /* 027B85AC */ cpu->r[27] = 0x10110000u; /* 027B85B0 */ cpu->r[0] = 0x10110000u; /* 027B85B4 */ _t4 = cpu->r[25] + 0x00000004u; /* 027B85B4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t4); /* 027B85B8 */ cpu->r[27] = cpu->r[27] + 0xFFFFB3B4u; /* 027B85BC */ cpu->r[0] = cpu->r[0] + 0xFFFFB594u; /* 027B85C0 */ _t5 = cpu->r[1] + 0x00000014u; /* 027B85C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[27]); /* 027B85C4 */ _t6 = cpu->r[1] + 0x00000010u; /* 027B85C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027B85C8 */ _t7 = cpu->r[4] + 0x00000014u; /* 027B85C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027B85CC */ cpu->ctr = cpu->r[0]; /* 027B85D0 */ cpu->r[3] = cpu->r[25]; /* 027B85D4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B85D8 */ cpu->r[31] = 0x10110000u; /* 027B85DC */ _t8 = cpu->r[25] + 0x00000000u; /* 027B85DC */ cpu->r[9] = rbrew_read32(cpu->mem, _t8); /* 027B85E0 */ _t9 = cpu->r[31] + 0x00007399u; /* 027B85E0 */ cpu->r[31] = rbrew_read8(cpu->mem, _t9); /* 027B85E4 */ _t10 = cpu->r[9] + 0x00000000u; /* 027B85E4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t10); /* 027B85E8 */ cpu->r[11] = 0x00080000u; /* 027B85EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027B85F0 */ cpu->r[29] = 0x00000000u; /* 027B85F4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B85F4 */ _t12 = _t11 & 0x00000001u; /* 027B85F4 */ if (_t12) goto L_027B8648; else goto L_027B85F8; L_027B85F8: ; // 0x27b85f8 /* 027B85F8 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027B85FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[11]); /* 027B8600 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B8604 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8604 */ _t14 = _t13 & 0x00000001u; /* 027B8604 */ if (_t14) goto L_027B8644; else goto L_027B8608; L_027B8608: ; // 0x27b8608 /* 027B8608 */ _t15 = cpu->r[9] + 0x00000000u; /* 027B8608 */ cpu->r[8] = rbrew_read8(cpu->mem, _t15); /* 027B860C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027B8610 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8610 */ _t17 = _t16 & 0x00000001u; /* 027B8610 */ if (_t17) goto L_027B8614; else goto L_027B85F8; L_027B8614: ; // 0x27b8614 /* 027B8614 */ _t18 = cpu->r[1] + 0x00000014u; /* 027B8614 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18); /* 027B8618 */ _t19 = cpu->r[10] + 0x00000014u; /* 027B8618 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19); /* 027B861C */ cpu->ctr = cpu->r[11]; /* 027B8620 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B8624 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B8628 */ _t20 = cpu->r[1] + 0x00000010u; /* 027B8628 */ cpu->r[4] = rbrew_read32(cpu->mem, _t20); /* 027B862C */ _t21 = cpu->r[4] + 0x00000000u; /* 027B862C */ cpu->r[12] = rbrew_read8(cpu->mem, _t21); /* 027B8630 */ cpu->r[30] = 0x00000000u; /* 027B8634 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027B8638 */ cpu->r[6] = 0x00080000u; /* 027B863C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B863C */ _t23 = _t22 & 0x00000001u; /* 027B863C */ if (_t23) goto L_027B8640; else goto L_027B8674; L_027B8640: ; // 0x27b8640 /* 027B8640 */ goto L_027B86A4; L_027B8644: ; // 0x27b8644 /* 027B8644 */ cpu->r[29] = 0x00000000u; L_027B8648: ; // 0x27b8648 /* 027B8648 */ _t24 = cpu->r[1] + 0x00000014u; /* 027B8648 */ cpu->r[10] = rbrew_read32(cpu->mem, _t24); /* 027B864C */ _t25 = cpu->r[10] + 0x00000014u; /* 027B864C */ cpu->r[11] = rbrew_read32(cpu->mem, _t25); /* 027B8650 */ cpu->ctr = cpu->r[11]; /* 027B8654 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B8658 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B865C */ _t26 = cpu->r[1] + 0x00000010u; /* 027B865C */ cpu->r[4] = rbrew_read32(cpu->mem, _t26); /* 027B8660 */ _t27 = cpu->r[4] + 0x00000000u; /* 027B8660 */ cpu->r[12] = rbrew_read8(cpu->mem, _t27); /* 027B8664 */ cpu->r[30] = 0x00000000u; /* 027B8668 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027B866C */ cpu->r[6] = 0x00080000u; /* 027B8670 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8670 */ _t29 = _t28 & 0x00000001u; /* 027B8670 */ if (_t29) goto L_027B8640; else goto L_027B8674; L_027B8674: ; // 0x27b8674 /* 027B8674 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B8678 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]); /* 027B867C */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027B8680 */ _t30 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8680 */ _t31 = _t30 & 0x00000001u; /* 027B8680 */ if (_t31) goto L_027B86A0; else goto L_027B8684; L_027B8684: ; // 0x27b8684 /* 027B8684 */ _t32 = cpu->r[4] + 0x00000000u; /* 027B8684 */ cpu->r[0] = rbrew_read8(cpu->mem, _t32); /* 027B8688 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B868C */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B868C */ _t34 = _t33 & 0x00000001u; /* 027B868C */ if (_t34) goto L_027B8690; else goto L_027B8674; L_027B8690: ; // 0x27b8690 /* 027B8690 */ cpu->r[29] = cpu->r[29] - cpu->r[30]; /* 027B8690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B8694 */ cpu->r[24] = cpu->r[29] + 0x00000001u; /* 027B8698 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8698 */ _t36 = _t35 & 0x00000001u; /* 027B8698 */ if (_t36) goto L_027B869C; else goto L_027B86B0; L_027B869C: ; // 0x27b869c /* 027B869C */ goto L_027B8780; L_027B86A0: ; // 0x27b86a0 /* 027B86A0 */ cpu->r[30] = 0x00000000u; L_027B86A4: ; // 0x27b86a4 /* 027B86A4 */ cpu->r[29] = cpu->r[29] - cpu->r[30]; /* 027B86A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B86A8 */ cpu->r[24] = cpu->r[29] + 0x00000001u; /* 027B86AC */ _t37 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B86AC */ _t38 = _t37 & 0x00000001u; /* 027B86AC */ if (_t38) goto L_027B8780; else goto L_027B86B0; L_027B86B0: ; // 0x27b86b0 /* 027B86B0 */ cpu->r[26] = cpu->r[31]; L_027B86B4: ; // 0x27b86b4 /* 027B86B4 */ _t39 = cpu->r[25] + 0x00000000u; /* 027B86B4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t39); /* 027B86B8 */ _t40 = cpu->r[1] + 0x0000000Cu; /* 027B86B8 */ rbrew_write32(cpu->mem, _t40, cpu->r[27]); /* 027B86BC */ cpu->r[5] = cpu->r[6] + cpu->r[29]; /* 027B86C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B86C4 */ _t41 = cpu->r[1] + 0x00000008u; /* 027B86C4 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]); /* 027B86C8 */ Gambit_fn_027BA6E8(cpu); /* 027B86CC */ _t42 = cpu->r[1] + 0x0000000Cu; /* 027B86CC */ cpu->r[7] = rbrew_read32(cpu->mem, _t42); /* 027B86D0 */ _t43 = cpu->r[7] + 0x00000014u; /* 027B86D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t43); /* 027B86D4 */ cpu->ctr = cpu->r[8]; /* 027B86D8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B86DC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B86E0 */ _t44 = cpu->r[1] + 0x00000014u; /* 027B86E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t44); /* 027B86E4 */ _t45 = cpu->r[9] + 0x00000014u; /* 027B86E4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t45); /* 027B86E8 */ cpu->ctr = cpu->r[10]; /* 027B86EC */ _t46 = cpu->r[1] + 0x00000008u; /* 027B86EC */ cpu->r[23] = rbrew_read32(cpu->mem, _t46); /* 027B86F0 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B86F4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B86F8 */ _t47 = cpu->r[1] + 0x00000010u; /* 027B86F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47); /* 027B86FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[11]); /* 027B8700 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8700 */ _t49 = _t48 & 0x00000001u; /* 027B8700 */ if (_t49) goto L_027B8754; else goto L_027B8704; L_027B8704: ; // 0x27b8704 /* 027B8704 */ cpu->r[0] = cpu->r[30]; /* 027B8704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B8708 */ _t50 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8708 */ _t51 = _t50 & 0x00000001u; /* 027B8708 */ if (_t51) goto L_027B870C; else goto L_027B8754; L_027B870C: ; // 0x27b870c /* 027B870C */ _t52 = cpu->r[1] + 0x00000010u; /* 027B870C */ cpu->r[7] = rbrew_read32(cpu->mem, _t52); /* 027B8710 */ cpu->ctr = cpu->r[0]; /* 027B8714 */ _t53 = cpu->r[1] + 0x00000008u; /* 027B8714 */ cpu->r[9] = rbrew_read32(cpu->mem, _t53); L_027B8718: ; // 0x27b8718 /* 027B8718 */ _t54 = cpu->r[9] + 0x00000000u; /* 027B8718 */ cpu->r[12] = rbrew_read8(cpu->mem, _t54); /* 027B871C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[26]); /* 027B8720 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8720 */ _t56 = _t55 & 0x00000001u; /* 027B8720 */ if (_t56) goto L_027B8724; else goto L_027B8734; L_027B8724: ; // 0x27b8724 /* 027B8724 */ _t57 = cpu->r[7] + 0x00000000u; /* 027B8724 */ cpu->r[0] = rbrew_read8(cpu->mem, _t57); /* 027B8728 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]); /* 027B872C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B872C */ _t59 = _t58 & 0x00000001u; /* 027B872C */ if (_t59) goto L_027B8730; else goto L_027B8774; L_027B8730: ; // 0x27b8730 /* 027B8730 */ goto L_027B8754; L_027B8734: ; // 0x27b8734 /* 027B8734 */ _t60 = cpu->r[7] + 0x00000000u; /* 027B8734 */ cpu->r[0] = rbrew_read8(cpu->mem, _t60); /* 027B8738 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[26]); /* 027B873C */ _t61 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B873C */ _t62 = _t61 & 0x00000001u; /* 027B873C */ if (_t62) goto L_027B8774; else goto L_027B8740; L_027B8740: ; // 0x27b8740 /* 027B8740 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]); /* 027B8744 */ _t63 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8744 */ _t64 = _t63 & 0x00000001u; /* 027B8744 */ if (_t64) goto L_027B8748; else goto L_027B8774; L_027B8748: ; // 0x27b8748 /* 027B8748 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B874C */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B8750 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027B8750 */ _t65 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027B8750 */ _t66 = _t65 >> (0x00000002u & 31u); /* 027B8750 */ _t67 = _t66 & 0x00000001u; /* 027B8750 */ if (_t67) goto L_027B8718; else goto L_027B8754; L_027B8754: ; // 0x27b8754 /* 027B8754 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B8758 */ _t68 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8758 */ _t69 = _t68 & 0x00000001u; /* 027B8758 */ if (_t69) goto L_027B875C; else goto L_027B879C; L_027B875C: ; // 0x27b875c /* 027B875C */ /* nop */ /* 027B8760 */ _t70 = cpu->r[1] + 0x00000054u; /* 027B8760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70); /* 027B8764 */ cpu->lr = cpu->r[0]; /* 027B8768 */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027B876C */ cpu->r[3] = 0x00000000u; /* 027B8770 */ return; L_027B8774: ; // 0x27b8774 /* 027B8774 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu; /* 027B8774 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027B8778 */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu; /* 027B877C */ _t71 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B877C */ _t72 = _t71 & 0x00000001u; /* 027B877C */ if (_t72) goto L_027B8780; else goto L_027B86B4; L_027B8780: ; // 0x27b8780 /* 027B8780 */ cpu->r[29] = 0xFFFFFFFFu; /* 027B8784 */ /* nop */ /* 027B8788 */ _t73 = cpu->r[1] + 0x00000054u; /* 027B8788 */ cpu->r[0] = rbrew_read32(cpu->mem, _t73); /* 027B878C */ cpu->lr = cpu->r[0]; /* 027B8790 */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027B8794 */ cpu->r[3] = 0x00000000u; /* 027B8798 */ return; L_027B879C: ; // 0x27b879c /* 027B879C */ _t74 = cpu->r[25] + 0x00000004u; /* 027B879C */ cpu->r[4] = rbrew_read32(cpu->mem, _t74); /* 027B87A0 */ _t75 = cpu->r[4] + 0x00000014u; /* 027B87A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75); /* 027B87A4 */ cpu->ctr = cpu->r[0]; /* 027B87A8 */ cpu->r[29] = cpu->r[29] + 0x00000003u; /* 027B87AC */ cpu->r[3] = cpu->r[25]; /* 027B87B0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B87B4 */ _t76 = cpu->r[25] + 0x00000000u; /* 027B87B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t76); /* 027B87B8 */ cpu->r[4] = cpu->r[7]; /* 027B87BC */ _t77 = cpu->r[4] + 0x00000000u; /* 027B87BC */ cpu->r[6] = rbrew_read8(cpu->mem, _t77); /* 027B87C0 */ cpu->r[11] = 0x00000000u; /* 027B87C4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027B87C8 */ cpu->r[5] = 0x00080000u; /* 027B87CC */ _t78 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B87CC */ _t79 = _t78 & 0x00000001u; /* 027B87CC */ if (_t79) goto L_027B87FC; else goto L_027B87D0; L_027B87D0: ; // 0x27b87d0 /* 027B87D0 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027B87D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[5]); /* 027B87D8 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027B87DC */ _t80 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B87DC */ _t81 = _t80 & 0x00000001u; /* 027B87DC */ if (_t81) goto L_027B87F8; else goto L_027B87E0; L_027B87E0: ; // 0x27b87e0 /* 027B87E0 */ _t82 = cpu->r[4] + 0x00000000u; /* 027B87E0 */ cpu->r[8] = rbrew_read8(cpu->mem, _t82); /* 027B87E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027B87E8 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B87E8 */ _t84 = _t83 & 0x00000001u; /* 027B87E8 */ if (_t84) goto L_027B87EC; else goto L_027B87D0; L_027B87EC: ; // 0x27b87ec /* 027B87EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B87F0 */ _t85 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B87F0 */ _t86 = _t85 & 0x00000001u; /* 027B87F0 */ if (_t86) goto L_027B880C; else goto L_027B87F4; L_027B87F4: ; // 0x27b87f4 /* 027B87F4 */ goto L_027B8804; L_027B87F8: ; // 0x27b87f8 /* 027B87F8 */ cpu->r[11] = 0x00000000u; L_027B87FC: ; // 0x27b87fc /* 027B87FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B8800 */ _t87 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8800 */ _t88 = _t87 & 0x00000001u; /* 027B8800 */ if (_t88) goto L_027B880C; else goto L_027B8804; L_027B8804: ; // 0x27b8804 /* 027B8804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[11]); /* 027B8808 */ _t89 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8808 */ _t90 = _t89 & 0x00000001u; /* 027B8808 */ if (_t90) goto L_027B880C; else goto L_027B8840; L_027B880C: ; // 0x27b880c /* 027B880C */ cpu->r[12] = 0x101F0000u; /* 027B8810 */ _t91 = cpu->r[1] + 0x0000001Cu; /* 027B8810 */ rbrew_write32(cpu->mem, _t91, cpu->r[27]); /* 027B8814 */ _t92 = cpu->r[12] + 0x000066E8u; /* 027B8814 */ cpu->r[12] = rbrew_read32(cpu->mem, _t92); /* 027B8818 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027B881C */ _t93 = cpu->r[1] + 0x00000018u; /* 027B881C */ rbrew_write32(cpu->mem, _t93, cpu->r[12]); /* 027B8820 */ Gambit_fn_027BA6E8(cpu); /* 027B8824 */ _t94 = cpu->r[1] + 0x00000018u; /* 027B8824 */ cpu->r[11] = rbrew_read32(cpu->mem, _t94); /* 027B8828 */ _t95 = cpu->r[11] + 0x00000000u; /* 027B8828 */ cpu->r[10] = rbrew_read8(cpu->mem, _t95); /* 027B882C */ cpu->r[6] = 0x00000000u; /* 027B8830 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027B8834 */ cpu->r[0] = 0x00080000u; /* 027B8838 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8838 */ _t97 = _t96 & 0x00000001u; /* 027B8838 */ if (_t97) goto L_027B8888; else goto L_027B883C; L_027B883C: ; // 0x27b883c /* 027B883C */ goto L_027B886C; L_027B8840: ; // 0x27b8840 /* 027B8840 */ _t98 = cpu->r[1] + 0x0000001Cu; /* 027B8840 */ rbrew_write32(cpu->mem, _t98, cpu->r[27]); /* 027B8844 */ cpu->r[12] = cpu->r[7] + cpu->r[29]; /* 027B8848 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027B884C */ _t99 = cpu->r[1] + 0x00000018u; /* 027B884C */ rbrew_write32(cpu->mem, _t99, cpu->r[12]); /* 027B8850 */ Gambit_fn_027BA6E8(cpu); /* 027B8854 */ _t100 = cpu->r[1] + 0x00000018u; /* 027B8854 */ cpu->r[11] = rbrew_read32(cpu->mem, _t100); /* 027B8858 */ _t101 = cpu->r[11] + 0x00000000u; /* 027B8858 */ cpu->r[10] = rbrew_read8(cpu->mem, _t101); /* 027B885C */ cpu->r[6] = 0x00000000u; /* 027B8860 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027B8864 */ cpu->r[0] = 0x00080000u; /* 027B8868 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8868 */ _t103 = _t102 & 0x00000001u; /* 027B8868 */ if (_t103) goto L_027B8888; else goto L_027B886C; L_027B886C: ; // 0x27b886c /* 027B886C */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027B8870 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]); /* 027B8874 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027B8878 */ _t104 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8878 */ _t105 = _t104 & 0x00000001u; /* 027B8878 */ if (_t105) goto L_027B8890; else goto L_027B887C; L_027B887C: ; // 0x27b887c /* 027B887C */ _t106 = cpu->r[11] + 0x00000000u; /* 027B887C */ cpu->r[12] = rbrew_read8(cpu->mem, _t106); /* 027B8880 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027B8884 */ _t107 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8884 */ _t108 = _t107 & 0x00000001u; /* 027B8884 */ if (_t108) goto L_027B8888; else goto L_027B886C; L_027B8888: ; // 0x27b8888 /* 027B8888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000000u); /* 027B888C */ _t109 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B888C */ _t110 = _t109 & 0x00000001u; /* 027B888C */ if (_t110) goto L_027B875C; else goto L_027B8890; L_027B8890: ; // 0x27b8890 /* 027B8890 */ _t111 = cpu->r[28] + 0x00000000u; /* 027B8890 */ cpu->r[4] = rbrew_read32(cpu->mem, _t111); /* 027B8894 */ cpu->r[6] = 0x10110000u; /* 027B8898 */ _t112 = cpu->r[4] + 0x00000000u; /* 027B8898 */ rbrew_write8(cpu->mem, _t112, (uint8_t)cpu->r[31]); /* 027B889C */ _t113 = cpu->r[28] + 0x00000004u; /* 027B889C */ cpu->r[8] = rbrew_read32(cpu->mem, _t113); /* 027B88A0 */ cpu->r[6] = cpu->r[6] + 0xFFFFB58Cu; /* 027B88A4 */ _t114 = cpu->r[1] + 0x00000024u; /* 027B88A4 */ rbrew_write32(cpu->mem, _t114, cpu->r[27]); /* 027B88A8 */ _t115 = cpu->r[1] + 0x00000020u; /* 027B88A8 */ rbrew_write32(cpu->mem, _t115, cpu->r[6]); /* 027B88AC */ _t116 = cpu->r[8] + 0x00000014u; /* 027B88AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t116); /* 027B88B0 */ cpu->ctr = cpu->r[9]; /* 027B88B4 */ _t117 = cpu->r[28] + 0x00000000u; /* 027B88B4 */ cpu->r[27] = rbrew_read32(cpu->mem, _t117); /* 027B88B8 */ cpu->r[3] = cpu->r[28]; /* 027B88BC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B88C0 */ _t118 = cpu->r[28] + 0x00000000u; /* 027B88C0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t118); /* 027B88C4 */ _t119 = cpu->r[5] + 0x00000000u; /* 027B88C4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t119); /* 027B88C8 */ cpu->r[30] = 0x00000000u; /* 027B88CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]); /* 027B88D0 */ cpu->r[8] = 0x00080000u; /* 027B88D4 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B88D4 */ _t121 = _t120 & 0x00000001u; /* 027B88D4 */ if (_t121) goto L_027B890C; else goto L_027B88D8; L_027B88D8: ; // 0x27b88d8 /* 027B88D8 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B88DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]); /* 027B88E0 */ cpu->r[5] = cpu->r[5] + 0x00000001u; /* 027B88E4 */ _t122 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B88E4 */ _t123 = _t122 & 0x00000001u; /* 027B88E4 */ if (_t123) goto L_027B8908; else goto L_027B88E8; L_027B88E8: ; // 0x27b88e8 /* 027B88E8 */ _t124 = cpu->r[5] + 0x00000000u; /* 027B88E8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t124); /* 027B88EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B88F0 */ _t125 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B88F0 */ _t126 = _t125 & 0x00000001u; /* 027B88F0 */ if (_t126) goto L_027B88F4; else goto L_027B88D8; L_027B88F4: ; // 0x27b88f4 /* 027B88F4 */ _t127 = cpu->r[1] + 0x00000024u; /* 027B88F4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t127); /* 027B88F8 */ cpu->r[26] = cpu->r[30]; /* 027B88F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B88FC */ _t128 = cpu->r[4] + 0x00000014u; /* 027B88FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t128); /* 027B8900 */ _t129 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8900 */ _t130 = _t129 & 0x00000001u; /* 027B8900 */ if (_t130) goto L_027B8904; else goto L_027B8920; L_027B8904: ; // 0x27b8904 /* 027B8904 */ goto L_027B891C; L_027B8908: ; // 0x27b8908 /* 027B8908 */ cpu->r[30] = 0x00000000u; L_027B890C: ; // 0x27b890c /* 027B890C */ _t131 = cpu->r[1] + 0x00000024u; /* 027B890C */ cpu->r[4] = rbrew_read32(cpu->mem, _t131); /* 027B8910 */ cpu->r[26] = cpu->r[30]; /* 027B8910 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B8914 */ _t132 = cpu->r[4] + 0x00000014u; /* 027B8914 */ cpu->r[6] = rbrew_read32(cpu->mem, _t132); /* 027B8918 */ _t133 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8918 */ _t134 = _t133 & 0x00000001u; /* 027B8918 */ if (_t134) goto L_027B891C; else goto L_027B8920; L_027B891C: ; // 0x27b891c /* 027B891C */ cpu->r[26] = 0x00000000u; L_027B8920: ; // 0x27b8920 /* 027B8920 */ cpu->ctr = cpu->r[6]; /* 027B8924 */ cpu->r[3] = cpu->r[1] + 0x00000020u; /* 027B8928 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B892C */ _t135 = cpu->r[1] + 0x00000020u; /* 027B892C */ cpu->r[10] = rbrew_read32(cpu->mem, _t135); /* 027B8930 */ _t136 = cpu->r[10] + 0x00000000u; /* 027B8930 */ cpu->r[7] = rbrew_read8(cpu->mem, _t136); /* 027B8934 */ cpu->r[12] = 0x00080000u; /* 027B8938 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027B893C */ cpu->r[29] = 0x00000000u; /* 027B8940 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8940 */ _t138 = _t137 & 0x00000001u; /* 027B8940 */ if (_t138) goto L_027B8978; else goto L_027B8944; L_027B8944: ; // 0x27b8944 /* 027B8944 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027B8948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]); /* 027B894C */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027B8950 */ _t139 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8950 */ _t140 = _t139 & 0x00000001u; /* 027B8950 */ if (_t140) goto L_027B8974; else goto L_027B8954; L_027B8954: ; // 0x27b8954 /* 027B8954 */ _t141 = cpu->r[10] + 0x00000000u; /* 027B8954 */ cpu->r[9] = rbrew_read8(cpu->mem, _t141); /* 027B8958 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027B895C */ _t142 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B895C */ _t143 = _t142 & 0x00000001u; /* 027B895C */ if (_t143) goto L_027B8960; else goto L_027B8944; L_027B8960: ; // 0x27b8960 /* 027B8960 */ _t144 = cpu->r[28] + 0x00000008u; /* 027B8960 */ cpu->r[4] = rbrew_read32(cpu->mem, _t144); /* 027B8964 */ cpu->r[5] = cpu->r[4] - cpu->r[26]; /* 027B8968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[5]); /* 027B896C */ _t145 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B896C */ _t146 = _t145 & 0x00000001u; /* 027B896C */ if (_t146) goto L_027B898C; else goto L_027B8970; L_027B8970: ; // 0x27b8970 /* 027B8970 */ goto L_027B8988; L_027B8974: ; // 0x27b8974 /* 027B8974 */ cpu->r[29] = 0x00000000u; L_027B8978: ; // 0x27b8978 /* 027B8978 */ _t147 = cpu->r[28] + 0x00000008u; /* 027B8978 */ cpu->r[4] = rbrew_read32(cpu->mem, _t147); /* 027B897C */ cpu->r[5] = cpu->r[4] - cpu->r[26]; /* 027B8980 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[5]); /* 027B8984 */ _t148 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8984 */ _t149 = _t148 & 0x00000001u; /* 027B8984 */ if (_t149) goto L_027B898C; else goto L_027B8988; L_027B8988: ; // 0x27b8988 /* 027B8988 */ cpu->r[29] = cpu->r[5] + 0xFFFFFFFFu; L_027B898C: ; // 0x27b898c /* 027B898C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B8990 */ _t150 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8990 */ _t151 = _t150 & 0x00000001u; /* 027B8990 */ if (_t151) goto L_027B8994; else goto L_027B89D0; L_027B8994: ; // 0x27b8994 /* 027B8994 */ _t152 = cpu->r[1] + 0x00000024u; /* 027B8994 */ cpu->r[10] = rbrew_read32(cpu->mem, _t152); /* 027B8998 */ _t153 = cpu->r[10] + 0x00000014u; /* 027B8998 */ cpu->r[12] = rbrew_read32(cpu->mem, _t153); /* 027B899C */ cpu->ctr = cpu->r[12]; /* 027B89A0 */ cpu->r[25] = cpu->r[27] + cpu->r[26]; /* 027B89A4 */ cpu->r[3] = cpu->r[1] + 0x00000020u; /* 027B89A8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B89AC */ _t154 = cpu->r[1] + 0x00000020u; /* 027B89AC */ cpu->r[4] = rbrew_read32(cpu->mem, _t154); /* 027B89B0 */ cpu->r[6] = 0x00000000u; /* 027B89B4 */ cpu->r[5] = cpu->r[29]; /* 027B89B8 */ cpu->r[3] = cpu->r[25]; /* 027B89BC */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B89C0 */ cpu->r[8] = cpu->r[26] + cpu->r[29]; /* 027B89C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[30]); /* 027B89C8 */ _t155 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B89C8 */ _t156 = _t155 & 0x00000001u; /* 027B89C8 */ if (_t156) goto L_027B89CC; else goto L_027B89D0; L_027B89CC: ; // 0x27b89cc /* 027B89CC */ _t157 = cpu->r[27] + cpu->r[8]; /* 027B89CC */ rbrew_write8(cpu->mem, _t157, (uint8_t)cpu->r[31]); L_027B89D0: ; // 0x27b89d0 /* 027B89D0 */ _t158 = cpu->r[28] + 0x00000004u; /* 027B89D0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t158); /* 027B89D4 */ _t159 = cpu->r[6] + 0x00000014u; /* 027B89D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t159); /* 027B89D8 */ cpu->ctr = cpu->r[8]; /* 027B89DC */ _t160 = cpu->r[28] + 0x00000000u; /* 027B89DC */ cpu->r[27] = rbrew_read32(cpu->mem, _t160); /* 027B89E0 */ cpu->r[3] = cpu->r[28]; /* 027B89E4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B89E8 */ _t161 = cpu->r[28] + 0x00000000u; /* 027B89E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t161); /* 027B89EC */ _t162 = cpu->r[5] + 0x00000000u; /* 027B89EC */ cpu->r[10] = rbrew_read8(cpu->mem, _t162); /* 027B89F0 */ cpu->r[7] = 0x00080000u; /* 027B89F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027B89F8 */ cpu->r[29] = 0x00000000u; /* 027B89FC */ _t163 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B89FC */ _t164 = _t163 & 0x00000001u; /* 027B89FC */ if (_t164) goto L_027B8A34; else goto L_027B8A00; L_027B8A00: ; // 0x27b8a00 /* 027B8A00 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027B8A04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]); /* 027B8A08 */ cpu->r[5] = cpu->r[5] + 0x00000001u; /* 027B8A0C */ _t165 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8A0C */ _t166 = _t165 & 0x00000001u; /* 027B8A0C */ if (_t166) goto L_027B8A30; else goto L_027B8A10; L_027B8A10: ; // 0x27b8a10 /* 027B8A10 */ _t167 = cpu->r[5] + 0x00000000u; /* 027B8A10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t167); /* 027B8A14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B8A18 */ _t168 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8A18 */ _t169 = _t168 & 0x00000001u; /* 027B8A18 */ if (_t169) goto L_027B8A1C; else goto L_027B8A00; L_027B8A1C: ; // 0x27b8a1c /* 027B8A1C */ _t170 = cpu->r[1] + 0x0000001Cu; /* 027B8A1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t170); /* 027B8A20 */ cpu->r[26] = cpu->r[29]; /* 027B8A20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B8A24 */ _t171 = cpu->r[12] + 0x00000014u; /* 027B8A24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t171); /* 027B8A28 */ _t172 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8A28 */ _t173 = _t172 & 0x00000001u; /* 027B8A28 */ if (_t173) goto L_027B8A2C; else goto L_027B8A48; L_027B8A2C: ; // 0x27b8a2c /* 027B8A2C */ goto L_027B8A44; L_027B8A30: ; // 0x27b8a30 /* 027B8A30 */ cpu->r[29] = 0x00000000u; L_027B8A34: ; // 0x27b8a34 /* 027B8A34 */ _t174 = cpu->r[1] + 0x0000001Cu; /* 027B8A34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t174); /* 027B8A38 */ cpu->r[26] = cpu->r[29]; /* 027B8A38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B8A3C */ _t175 = cpu->r[12] + 0x00000014u; /* 027B8A3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t175); /* 027B8A40 */ _t176 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8A40 */ _t177 = _t176 & 0x00000001u; /* 027B8A40 */ if (_t177) goto L_027B8A44; else goto L_027B8A48; L_027B8A44: ; // 0x27b8a44 /* 027B8A44 */ cpu->r[26] = 0x00000000u; L_027B8A48: ; // 0x27b8a48 /* 027B8A48 */ cpu->ctr = cpu->r[0]; /* 027B8A4C */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027B8A50 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B8A54 */ _t178 = cpu->r[1] + 0x00000018u; /* 027B8A54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t178); /* 027B8A58 */ _t179 = cpu->r[9] + 0x00000000u; /* 027B8A58 */ cpu->r[5] = rbrew_read8(cpu->mem, _t179); /* 027B8A5C */ cpu->r[30] = 0x00000000u; /* 027B8A60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027B8A64 */ cpu->r[0] = 0x00080000u; /* 027B8A68 */ _t180 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8A68 */ _t181 = _t180 & 0x00000001u; /* 027B8A68 */ if (_t181) goto L_027B8AA0; else goto L_027B8A6C; L_027B8A6C: ; // 0x27b8a6c /* 027B8A6C */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B8A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B8A74 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B8A78 */ _t182 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8A78 */ _t183 = _t182 & 0x00000001u; /* 027B8A78 */ if (_t183) goto L_027B8A9C; else goto L_027B8A7C; L_027B8A7C: ; // 0x27b8a7c /* 027B8A7C */ _t184 = cpu->r[9] + 0x00000000u; /* 027B8A7C */ cpu->r[7] = rbrew_read8(cpu->mem, _t184); /* 027B8A80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027B8A84 */ _t185 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8A84 */ _t186 = _t185 & 0x00000001u; /* 027B8A84 */ if (_t186) goto L_027B8A88; else goto L_027B8A6C; L_027B8A88: ; // 0x27b8a88 /* 027B8A88 */ _t187 = cpu->r[28] + 0x00000008u; /* 027B8A88 */ cpu->r[4] = rbrew_read32(cpu->mem, _t187); /* 027B8A8C */ cpu->r[6] = cpu->r[4] - cpu->r[26]; /* 027B8A90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]); /* 027B8A94 */ _t188 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8A94 */ _t189 = _t188 & 0x00000001u; /* 027B8A94 */ if (_t189) goto L_027B8AB4; else goto L_027B8A98; L_027B8A98: ; // 0x27b8a98 /* 027B8A98 */ goto L_027B8AB0; L_027B8A9C: ; // 0x27b8a9c /* 027B8A9C */ cpu->r[30] = 0x00000000u; L_027B8AA0: ; // 0x27b8aa0 /* 027B8AA0 */ _t190 = cpu->r[28] + 0x00000008u; /* 027B8AA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t190); /* 027B8AA4 */ cpu->r[6] = cpu->r[4] - cpu->r[26]; /* 027B8AA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]); /* 027B8AAC */ _t191 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8AAC */ _t192 = _t191 & 0x00000001u; /* 027B8AAC */ if (_t192) goto L_027B8AB4; else goto L_027B8AB0; L_027B8AB0: ; // 0x27b8ab0 /* 027B8AB0 */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu; L_027B8AB4: ; // 0x27b8ab4 /* 027B8AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B8AB8 */ _t193 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8AB8 */ _t194 = _t193 & 0x00000001u; /* 027B8AB8 */ if (_t194) goto L_027B8ABC; else goto L_027B8AF8; L_027B8ABC: ; // 0x27b8abc /* 027B8ABC */ _t195 = cpu->r[1] + 0x0000001Cu; /* 027B8ABC */ cpu->r[8] = rbrew_read32(cpu->mem, _t195); /* 027B8AC0 */ _t196 = cpu->r[8] + 0x00000014u; /* 027B8AC0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t196); /* 027B8AC4 */ cpu->ctr = cpu->r[10]; /* 027B8AC8 */ cpu->r[28] = cpu->r[27] + cpu->r[26]; /* 027B8ACC */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027B8AD0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B8AD4 */ _t197 = cpu->r[1] + 0x00000018u; /* 027B8AD4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t197); /* 027B8AD8 */ cpu->r[6] = 0x00000000u; /* 027B8ADC */ cpu->r[5] = cpu->r[30]; /* 027B8AE0 */ cpu->r[3] = cpu->r[28]; /* 027B8AE4 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B8AE8 */ cpu->r[0] = cpu->r[26] + cpu->r[30]; /* 027B8AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[29]); /* 027B8AF0 */ _t198 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B8AF0 */ _t199 = _t198 & 0x00000001u; /* 027B8AF0 */ if (_t199) goto L_027B8AF4; else goto L_027B8AF8; L_027B8AF4: ; // 0x27b8af4 /* 027B8AF4 */ _t200 = cpu->r[27] + cpu->r[0]; /* 027B8AF4 */ rbrew_write8(cpu->mem, _t200, (uint8_t)cpu->r[31]); L_027B8AF8: ; // 0x27b8af8 /* 027B8AF8 */ /* nop */ /* 027B8AFC */ _t201 = cpu->r[1] + 0x00000054u; /* 027B8AFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t201); /* 027B8B00 */ cpu->lr = cpu->r[0]; /* 027B8B04 */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027B8B08 */ cpu->r[3] = 0x00000001u; /* 027B8B0C */ return; } // fn_027B8B10 @ 0x27b8b10 void Gambit_fn_027B8B10(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_027B8B10: ; // 0x27b8b10 /* 027B8B10 */ cpu->r[0] = cpu->lr; /* 027B8B14 */ _t0 = cpu->r[1] + 0xFFFFFF90u; /* 027B8B14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8B14 */ cpu->r[1] = _t0; /* 027B8B18 */ _t1 = cpu->r[1] + 0x00000068u; /* 027B8B18 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B8B1C */ _t2 = cpu->r[1] + 0x00000060u; /* 027B8B1C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B8B20 */ _t3 = cpu->r[1] + 0x00000064u; /* 027B8B20 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B8B24 */ _t4 = cpu->r[1] + 0x0000006Cu; /* 027B8B24 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B8B28 */ _t5 = cpu->r[1] + 0x00000074u; /* 027B8B28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B8B2C */ cpu->r[29] = cpu->r[3]; /* 027B8B30 */ _t6 = cpu->r[29] + 0x00000008u; /* 027B8B30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B8B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8B38 */ cpu->r[5] = cpu->r[4]; /* 027B8B3C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8B3C */ _t8 = _t7 & 0x00000001u; /* 027B8B3C */ if (_t8) goto L_027B8BB0; else goto L_027B8B40; L_027B8B40: ; // 0x27b8b40 /* 027B8B40 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027B8B44 */ cpu->r[31] = 0x10110000u; /* 027B8B48 */ _t9 = cpu->r[1] + 0x00000008u; /* 027B8B48 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 027B8B4C */ cpu->r[30] = 0x00000020u; /* 027B8B50 */ _t10 = cpu->r[31] + 0x00007399u; /* 027B8B50 */ cpu->r[31] = rbrew_read8(cpu->mem, _t10); /* 027B8B54 */ cpu->r[28] = 0x10110000u; /* 027B8B58 */ _t11 = cpu->r[1] + 0x00000010u; /* 027B8B58 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]); /* 027B8B5C */ cpu->r[28] = cpu->r[28] + 0xFFFFB414u; /* 027B8B60 */ _t12 = cpu->r[1] + 0x00000014u; /* 027B8B60 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[31]); /* 027B8B64 */ _t13 = cpu->r[1] + 0x0000000Cu; /* 027B8B64 */ rbrew_write32(cpu->mem, _t13, cpu->r[28]); /* 027B8B68 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B8B6C */ _t14 = cpu->r[1] + 0x00000033u; /* 027B8B6C */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[31]); /* 027B8B70 */ Gambit_fn_027B4A44(cpu); /* 027B8B74 */ cpu->r[11] = cpu->r[1] + 0x00000040u; /* 027B8B78 */ _t15 = cpu->r[1] + 0x0000005Fu; /* 027B8B78 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[31]); /* 027B8B7C */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B8B80 */ _t16 = cpu->r[1] + 0x0000003Cu; /* 027B8B80 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]); /* 027B8B84 */ cpu->r[4] = cpu->r[1] + 0x00000034u; /* 027B8B88 */ _t17 = cpu->r[1] + 0x00000034u; /* 027B8B88 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]); /* 027B8B8C */ cpu->r[3] = cpu->r[29]; /* 027B8B90 */ _t18 = cpu->r[1] + 0x00000038u; /* 027B8B90 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]); /* 027B8B94 */ _t19 = cpu->r[1] + 0x00000040u; /* 027B8B94 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[31]); /* 027B8B98 */ Gambit_fn_027B8590(cpu); /* 027B8B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8BA0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8BA0 */ _t21 = _t20 & 0x00000001u; /* 027B8BA0 */ if (_t21) goto L_027B8BB0; else goto L_027B8BA4; L_027B8BA4: ; // 0x27b8ba4 /* 027B8BA4 */ cpu->r[3] = cpu->r[29]; /* 027B8BA8 */ cpu->r[4] = cpu->r[1] + 0x00000034u; /* 027B8BAC */ Gambit_fn_027B8428(cpu); L_027B8BB0: ; // 0x27b8bb0 /* 027B8BB0 */ _t22 = cpu->r[1] + 0x00000060u; /* 027B8BB0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22); /* 027B8BB4 */ _t23 = cpu->r[1] + 0x00000064u; /* 027B8BB4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23); /* 027B8BB8 */ _t24 = cpu->r[1] + 0x00000074u; /* 027B8BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B8BBC */ _t25 = cpu->r[1] + 0x00000068u; /* 027B8BBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t25); /* 027B8BC0 */ cpu->lr = cpu->r[0]; /* 027B8BC4 */ _t26 = cpu->r[1] + 0x0000006Cu; /* 027B8BC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027B8BC8 */ cpu->r[1] = cpu->r[1] + 0x00000070u; /* 027B8BCC */ return; } // fn_027B8B14 @ 0x27b8b14 void Gambit_fn_027B8B14(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_027B8B14: ; // 0x27b8b14 /* 027B8B14 */ _t0 = cpu->r[1] + 0xFFFFFF90u; /* 027B8B14 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8B14 */ cpu->r[1] = _t0; /* 027B8B18 */ _t1 = cpu->r[1] + 0x00000068u; /* 027B8B18 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B8B1C */ _t2 = cpu->r[1] + 0x00000060u; /* 027B8B1C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B8B20 */ _t3 = cpu->r[1] + 0x00000064u; /* 027B8B20 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027B8B24 */ _t4 = cpu->r[1] + 0x0000006Cu; /* 027B8B24 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B8B28 */ _t5 = cpu->r[1] + 0x00000074u; /* 027B8B28 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B8B2C */ cpu->r[29] = cpu->r[3]; /* 027B8B30 */ _t6 = cpu->r[29] + 0x00000008u; /* 027B8B30 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B8B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8B38 */ cpu->r[5] = cpu->r[4]; /* 027B8B3C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8B3C */ _t8 = _t7 & 0x00000001u; /* 027B8B3C */ if (_t8) goto L_027B8BB0; else goto L_027B8B40; L_027B8B40: ; // 0x27b8b40 /* 027B8B40 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027B8B44 */ cpu->r[31] = 0x10110000u; /* 027B8B48 */ _t9 = cpu->r[1] + 0x00000008u; /* 027B8B48 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 027B8B4C */ cpu->r[30] = 0x00000020u; /* 027B8B50 */ _t10 = cpu->r[31] + 0x00007399u; /* 027B8B50 */ cpu->r[31] = rbrew_read8(cpu->mem, _t10); /* 027B8B54 */ cpu->r[28] = 0x10110000u; /* 027B8B58 */ _t11 = cpu->r[1] + 0x00000010u; /* 027B8B58 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]); /* 027B8B5C */ cpu->r[28] = cpu->r[28] + 0xFFFFB414u; /* 027B8B60 */ _t12 = cpu->r[1] + 0x00000014u; /* 027B8B60 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[31]); /* 027B8B64 */ _t13 = cpu->r[1] + 0x0000000Cu; /* 027B8B64 */ rbrew_write32(cpu->mem, _t13, cpu->r[28]); /* 027B8B68 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B8B6C */ _t14 = cpu->r[1] + 0x00000033u; /* 027B8B6C */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[31]); /* 027B8B70 */ Gambit_fn_027B4A44(cpu); /* 027B8B74 */ cpu->r[11] = cpu->r[1] + 0x00000040u; /* 027B8B78 */ _t15 = cpu->r[1] + 0x0000005Fu; /* 027B8B78 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[31]); /* 027B8B7C */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B8B80 */ _t16 = cpu->r[1] + 0x0000003Cu; /* 027B8B80 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]); /* 027B8B84 */ cpu->r[4] = cpu->r[1] + 0x00000034u; /* 027B8B88 */ _t17 = cpu->r[1] + 0x00000034u; /* 027B8B88 */ rbrew_write32(cpu->mem, _t17, cpu->r[11]); /* 027B8B8C */ cpu->r[3] = cpu->r[29]; /* 027B8B90 */ _t18 = cpu->r[1] + 0x00000038u; /* 027B8B90 */ rbrew_write32(cpu->mem, _t18, cpu->r[28]); /* 027B8B94 */ _t19 = cpu->r[1] + 0x00000040u; /* 027B8B94 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[31]); /* 027B8B98 */ Gambit_fn_027B8590(cpu); /* 027B8B9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8BA0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8BA0 */ _t21 = _t20 & 0x00000001u; /* 027B8BA0 */ if (_t21) goto L_027B8BB0; else goto L_027B8BA4; L_027B8BA4: ; // 0x27b8ba4 /* 027B8BA4 */ cpu->r[3] = cpu->r[29]; /* 027B8BA8 */ cpu->r[4] = cpu->r[1] + 0x00000034u; /* 027B8BAC */ Gambit_fn_027B8428(cpu); L_027B8BB0: ; // 0x27b8bb0 /* 027B8BB0 */ _t22 = cpu->r[1] + 0x00000060u; /* 027B8BB0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22); /* 027B8BB4 */ _t23 = cpu->r[1] + 0x00000064u; /* 027B8BB4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23); /* 027B8BB8 */ _t24 = cpu->r[1] + 0x00000074u; /* 027B8BB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B8BBC */ _t25 = cpu->r[1] + 0x00000068u; /* 027B8BBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t25); /* 027B8BC0 */ cpu->lr = cpu->r[0]; /* 027B8BC4 */ _t26 = cpu->r[1] + 0x0000006Cu; /* 027B8BC4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027B8BC8 */ cpu->r[1] = cpu->r[1] + 0x00000070u; /* 027B8BCC */ return; } // fn_027B8BD0 @ 0x27b8bd0 void Gambit_fn_027B8BD0(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_027B8BD0: ; // 0x27b8bd0 /* 027B8BD0 */ cpu->r[0] = cpu->lr; /* 027B8BD4 */ _t0 = cpu->r[1] + 0xFFFFFF90u; /* 027B8BD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8BD4 */ cpu->r[1] = _t0; /* 027B8BD8 */ _t1 = cpu->r[1] + 0x00000064u; /* 027B8BD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B8BDC */ _t2 = cpu->r[1] + 0x00000068u; /* 027B8BDC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B8BE0 */ _t3 = cpu->r[1] + 0x0000006Cu; /* 027B8BE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B8BE4 */ cpu->r[30] = cpu->r[3]; /* 027B8BE8 */ _t4 = cpu->r[1] + 0x00000074u; /* 027B8BE8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B8BEC */ _t5 = cpu->r[30] + 0x00000008u; /* 027B8BEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t5); /* 027B8BF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8BF4 */ cpu->r[5] = cpu->r[4]; /* 027B8BF8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8BF8 */ _t7 = _t6 & 0x00000001u; /* 027B8BF8 */ if (_t7) goto L_027B8C78; else goto L_027B8BFC; L_027B8BFC: ; // 0x27b8bfc /* 027B8BFC */ cpu->r[31] = 0x10110000u; /* 027B8C00 */ cpu->r[11] = cpu->r[1] + 0x00000014u; /* 027B8C04 */ _t8 = cpu->r[31] + 0x00007399u; /* 027B8C04 */ cpu->r[31] = rbrew_read8(cpu->mem, _t8); /* 027B8C08 */ _t9 = cpu->r[1] + 0x00000008u; /* 027B8C08 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]); /* 027B8C0C */ _t10 = cpu->r[1] + 0x00000033u; /* 027B8C0C */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[31]); /* 027B8C10 */ cpu->r[29] = 0x10110000u; /* 027B8C14 */ cpu->r[0] = 0x00000020u; /* 027B8C18 */ cpu->r[29] = cpu->r[29] + 0xFFFFB414u; /* 027B8C1C */ _t11 = cpu->r[1] + 0x00000010u; /* 027B8C1C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); /* 027B8C20 */ _t12 = cpu->r[1] + 0x0000000Cu; /* 027B8C20 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]); /* 027B8C24 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B8C28 */ _t13 = cpu->r[1] + 0x00000014u; /* 027B8C28 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]); /* 027B8C2C */ Gambit_fn_027B4C2C(cpu); /* 027B8C30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8C34 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8C34 */ _t15 = _t14 & 0x00000001u; /* 027B8C34 */ if (_t15) goto L_027B8C78; else goto L_027B8C38; L_027B8C38: ; // 0x27b8c38 /* 027B8C38 */ _t16 = cpu->r[1] + 0x0000005Fu; /* 027B8C38 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[31]); /* 027B8C3C */ cpu->r[10] = cpu->r[1] + 0x00000040u; /* 027B8C40 */ _t17 = cpu->r[1] + 0x00000040u; /* 027B8C40 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[31]); /* 027B8C44 */ cpu->r[0] = 0x00000020u; /* 027B8C48 */ _t18 = cpu->r[1] + 0x00000034u; /* 027B8C48 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); /* 027B8C4C */ cpu->r[4] = cpu->r[1] + 0x00000034u; /* 027B8C50 */ cpu->r[3] = cpu->r[30]; /* 027B8C54 */ _t19 = cpu->r[1] + 0x0000003Cu; /* 027B8C54 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]); /* 027B8C58 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B8C5C */ _t20 = cpu->r[1] + 0x00000038u; /* 027B8C5C */ rbrew_write32(cpu->mem, _t20, cpu->r[29]); /* 027B8C60 */ Gambit_fn_027B8590(cpu); /* 027B8C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8C68 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8C68 */ _t22 = _t21 & 0x00000001u; /* 027B8C68 */ if (_t22) goto L_027B8C78; else goto L_027B8C6C; L_027B8C6C: ; // 0x27b8c6c /* 027B8C6C */ cpu->r[3] = cpu->r[30]; /* 027B8C70 */ cpu->r[4] = cpu->r[1] + 0x00000034u; /* 027B8C74 */ Gambit_fn_027B8428(cpu); L_027B8C78: ; // 0x27b8c78 /* 027B8C78 */ _t23 = cpu->r[1] + 0x00000064u; /* 027B8C78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23); /* 027B8C7C */ _t24 = cpu->r[1] + 0x00000074u; /* 027B8C7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B8C80 */ _t25 = cpu->r[1] + 0x00000068u; /* 027B8C80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25); /* 027B8C84 */ cpu->lr = cpu->r[0]; /* 027B8C88 */ _t26 = cpu->r[1] + 0x0000006Cu; /* 027B8C88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027B8C8C */ cpu->r[1] = cpu->r[1] + 0x00000070u; /* 027B8C90 */ return; } // fn_027B8BD4 @ 0x27b8bd4 void Gambit_fn_027B8BD4(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_027B8BD4: ; // 0x27b8bd4 /* 027B8BD4 */ _t0 = cpu->r[1] + 0xFFFFFF90u; /* 027B8BD4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8BD4 */ cpu->r[1] = _t0; /* 027B8BD8 */ _t1 = cpu->r[1] + 0x00000064u; /* 027B8BD8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B8BDC */ _t2 = cpu->r[1] + 0x00000068u; /* 027B8BDC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027B8BE0 */ _t3 = cpu->r[1] + 0x0000006Cu; /* 027B8BE0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027B8BE4 */ cpu->r[30] = cpu->r[3]; /* 027B8BE8 */ _t4 = cpu->r[1] + 0x00000074u; /* 027B8BE8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B8BEC */ _t5 = cpu->r[30] + 0x00000008u; /* 027B8BEC */ cpu->r[3] = rbrew_read32(cpu->mem, _t5); /* 027B8BF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8BF4 */ cpu->r[5] = cpu->r[4]; /* 027B8BF8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8BF8 */ _t7 = _t6 & 0x00000001u; /* 027B8BF8 */ if (_t7) goto L_027B8C78; else goto L_027B8BFC; L_027B8BFC: ; // 0x27b8bfc /* 027B8BFC */ cpu->r[31] = 0x10110000u; /* 027B8C00 */ cpu->r[11] = cpu->r[1] + 0x00000014u; /* 027B8C04 */ _t8 = cpu->r[31] + 0x00007399u; /* 027B8C04 */ cpu->r[31] = rbrew_read8(cpu->mem, _t8); /* 027B8C08 */ _t9 = cpu->r[1] + 0x00000008u; /* 027B8C08 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]); /* 027B8C0C */ _t10 = cpu->r[1] + 0x00000033u; /* 027B8C0C */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[31]); /* 027B8C10 */ cpu->r[29] = 0x10110000u; /* 027B8C14 */ cpu->r[0] = 0x00000020u; /* 027B8C18 */ cpu->r[29] = cpu->r[29] + 0xFFFFB414u; /* 027B8C1C */ _t11 = cpu->r[1] + 0x00000010u; /* 027B8C1C */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); /* 027B8C20 */ _t12 = cpu->r[1] + 0x0000000Cu; /* 027B8C20 */ rbrew_write32(cpu->mem, _t12, cpu->r[29]); /* 027B8C24 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B8C28 */ _t13 = cpu->r[1] + 0x00000014u; /* 027B8C28 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]); /* 027B8C2C */ Gambit_fn_027B4C2C(cpu); /* 027B8C30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8C34 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8C34 */ _t15 = _t14 & 0x00000001u; /* 027B8C34 */ if (_t15) goto L_027B8C78; else goto L_027B8C38; L_027B8C38: ; // 0x27b8c38 /* 027B8C38 */ _t16 = cpu->r[1] + 0x0000005Fu; /* 027B8C38 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[31]); /* 027B8C3C */ cpu->r[10] = cpu->r[1] + 0x00000040u; /* 027B8C40 */ _t17 = cpu->r[1] + 0x00000040u; /* 027B8C40 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[31]); /* 027B8C44 */ cpu->r[0] = 0x00000020u; /* 027B8C48 */ _t18 = cpu->r[1] + 0x00000034u; /* 027B8C48 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); /* 027B8C4C */ cpu->r[4] = cpu->r[1] + 0x00000034u; /* 027B8C50 */ cpu->r[3] = cpu->r[30]; /* 027B8C54 */ _t19 = cpu->r[1] + 0x0000003Cu; /* 027B8C54 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]); /* 027B8C58 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027B8C5C */ _t20 = cpu->r[1] + 0x00000038u; /* 027B8C5C */ rbrew_write32(cpu->mem, _t20, cpu->r[29]); /* 027B8C60 */ Gambit_fn_027B8590(cpu); /* 027B8C64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8C68 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8C68 */ _t22 = _t21 & 0x00000001u; /* 027B8C68 */ if (_t22) goto L_027B8C78; else goto L_027B8C6C; L_027B8C6C: ; // 0x27b8c6c /* 027B8C6C */ cpu->r[3] = cpu->r[30]; /* 027B8C70 */ cpu->r[4] = cpu->r[1] + 0x00000034u; /* 027B8C74 */ Gambit_fn_027B8428(cpu); L_027B8C78: ; // 0x27b8c78 /* 027B8C78 */ _t23 = cpu->r[1] + 0x00000064u; /* 027B8C78 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23); /* 027B8C7C */ _t24 = cpu->r[1] + 0x00000074u; /* 027B8C7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B8C80 */ _t25 = cpu->r[1] + 0x00000068u; /* 027B8C80 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25); /* 027B8C84 */ cpu->lr = cpu->r[0]; /* 027B8C88 */ _t26 = cpu->r[1] + 0x0000006Cu; /* 027B8C88 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027B8C8C */ cpu->r[1] = cpu->r[1] + 0x00000070u; /* 027B8C90 */ return; } // fn_027B8C94 @ 0x27b8c94 void Gambit_fn_027B8C94(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; L_027B8C94: ; // 0x27b8c94 /* 027B8C94 */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027B8C94 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8C94 */ cpu->r[1] = _t0; /* 027B8C98 */ cpu->r[0] = cpu->lr; /* 027B8C9C */ /* nop */ /* 027B8CA0 */ cpu->r[28] = cpu->r[3]; /* 027B8CA4 */ cpu->r[5] = 0x00000004u; /* 027B8CA8 */ cpu->r[3] = 0x00000024u; /* 027B8CAC */ cpu->r[30] = cpu->r[4]; /* 027B8CB0 */ _t1 = cpu->r[1] + 0x00000034u; /* 027B8CB0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B8CB4 */ Gambit_fn_02801AC8(cpu); /* 027B8CB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8CBC */ cpu->r[27] = 0x00000000u; /* 027B8CC0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8CC0 */ _t3 = _t2 & 0x00000001u; /* 027B8CC0 */ if (_t3) goto L_027B8E2C; else goto L_027B8CC4; L_027B8CC4: ; // 0x27b8cc4 /* 027B8CC4 */ cpu->r[31] = cpu->r[3]; /* 027B8CC8 */ cpu->r[9] = 0x10110000u; /* 027B8CCC */ _t4 = cpu->r[31] + 0x00000000u; /* 027B8CCC */ rbrew_write32(cpu->mem, _t4, cpu->r[27]); /* 027B8CD0 */ cpu->r[9] = cpu->r[9] + 0xFFFFB248u; /* 027B8CD4 */ cpu->r[3] = cpu->r[31] + 0x00000008u; /* 027B8CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8CD8 */ _t5 = cpu->r[31] + 0x00000004u; /* 027B8CD8 */ rbrew_write32(cpu->mem, _t5, cpu->r[9]); /* 027B8CDC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8CDC */ _t7 = _t6 & 0x00000001u; /* 027B8CDC */ if (_t7) goto L_027B8CE0; else goto L_027B8CF0; L_027B8CE0: ; // 0x27b8ce0 /* 027B8CE0 */ cpu->r[3] = 0x00000010u; /* 027B8CE4 */ Gambit_fn_02801A78(cpu); /* 027B8CE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8CEC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8CEC */ _t9 = _t8 & 0x00000001u; /* 027B8CEC */ if (_t9) goto L_027B8D00; else goto L_027B8CF0; L_027B8CF0: ; // 0x27b8cf0 /* 027B8CF0 */ _t10 = cpu->r[3] + 0x00000004u; /* 027B8CF0 */ rbrew_write32(cpu->mem, _t10, cpu->r[27]); /* 027B8CF4 */ _t11 = cpu->r[3] + 0x00000008u; /* 027B8CF4 */ rbrew_write32(cpu->mem, _t11, cpu->r[27]); /* 027B8CF8 */ _t12 = cpu->r[3] + 0x00000000u; /* 027B8CF8 */ rbrew_write32(cpu->mem, _t12, cpu->r[27]); /* 027B8CFC */ _t13 = cpu->r[3] + 0x0000000Cu; /* 027B8CFC */ rbrew_write32(cpu->mem, _t13, cpu->r[27]); L_027B8D00: ; // 0x27b8d00 /* 027B8D00 */ cpu->r[3] = cpu->r[31] + 0x0000001Cu; /* 027B8D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8D04 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8D04 */ _t15 = _t14 & 0x00000001u; /* 027B8D04 */ if (_t15) goto L_027B8D08; else goto L_027B8D18; L_027B8D08: ; // 0x27b8d08 /* 027B8D08 */ cpu->r[3] = 0x00000008u; /* 027B8D0C */ Gambit_fn_02801A78(cpu); /* 027B8D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8D14 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8D14 */ _t17 = _t16 & 0x00000001u; /* 027B8D14 */ if (_t17) goto L_027B8D30; else goto L_027B8D18; L_027B8D18: ; // 0x27b8d18 /* 027B8D18 */ cpu->r[10] = 0x10110000u; /* 027B8D1C */ cpu->r[0] = 0x10110000u; /* 027B8D20 */ cpu->r[10] = cpu->r[10] + 0xFFFFB3B4u; /* 027B8D24 */ cpu->r[0] = cpu->r[0] + 0xFFFFB39Cu; /* 027B8D28 */ _t18 = cpu->r[3] + 0x00000004u; /* 027B8D28 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); /* 027B8D2C */ _t19 = cpu->r[3] + 0x00000000u; /* 027B8D2C */ rbrew_write32(cpu->mem, _t19, cpu->r[0]); L_027B8D30: ; // 0x27b8d30 /* 027B8D30 */ cpu->r[3] = cpu->r[30]; /* 027B8D30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B8D34 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8D34 */ _t21 = _t20 & 0x00000001u; /* 027B8D34 */ if (_t21) goto L_027B8D38; else goto L_027B8D44; L_027B8D38: ; // 0x27b8d38 /* 027B8D38 */ cpu->r[3] = 0x101D0000u; /* 027B8D3C */ _t22 = cpu->r[3] + 0xFFFF98F0u; /* 027B8D3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22); /* 027B8D40 */ Gambit_fn_02826F20(cpu); L_027B8D44: ; // 0x27b8d44 /* 027B8D44 */ _t23 = cpu->r[3] + 0x0000000Cu; /* 027B8D44 */ cpu->r[6] = rbrew_read32(cpu->mem, _t23); /* 027B8D48 */ _t24 = cpu->r[6] + 0x00000034u; /* 027B8D48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027B8D4C */ cpu->ctr = cpu->r[0]; /* 027B8D50 */ cpu->r[4] = 0x00000580u; /* 027B8D54 */ cpu->r[5] = 0x00000004u; /* 027B8D58 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B8D5C */ cpu->r[30] = 0x10110000u; /* 027B8D60 */ cpu->r[25] = cpu->r[3]; /* 027B8D64 */ cpu->r[22] = 0x00000020u; /* 027B8D68 */ _t25 = cpu->r[30] + 0x00007399u; /* 027B8D68 */ cpu->r[30] = rbrew_read8(cpu->mem, _t25); /* 027B8D6C */ cpu->r[23] = 0x00000000u; /* 027B8D70 */ cpu->r[24] = cpu->r[22]; L_027B8D74: ; // 0x27b8d74 /* 027B8D74 */ cpu->r[29] = cpu->r[25] + cpu->r[23]; /* 027B8D74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027B8D78 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8D78 */ _t27 = _t26 & 0x00000001u; /* 027B8D78 */ if (_t27) goto L_027B8DE8; else goto L_027B8D7C; L_027B8D7C: ; // 0x27b8d7c /* 027B8D7C */ cpu->r[26] = cpu->r[29]; /* 027B8D7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B8D80 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8D80 */ _t29 = _t28 & 0x00000001u; /* 027B8D80 */ if (_t29) goto L_027B8D84; else goto L_027B8D94; L_027B8D84: ; // 0x27b8d84 /* 027B8D84 */ cpu->r[3] = 0x0000002Cu; /* 027B8D88 */ Gambit_fn_02801A78(cpu); /* 027B8D8C */ cpu->r[26] = cpu->r[3]; /* 027B8D8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027B8D90 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8D90 */ _t31 = _t30 & 0x00000001u; /* 027B8D90 */ if (_t31) goto L_027B8DDC; else goto L_027B8D94; L_027B8D94: ; // 0x27b8d94 /* 027B8D94 */ cpu->r[12] = cpu->r[26]; /* 027B8D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B8D98 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8D98 */ _t33 = _t32 & 0x00000001u; /* 027B8D98 */ if (_t33) goto L_027B8D9C; else goto L_027B8DAC; L_027B8D9C: ; // 0x27b8d9c /* 027B8D9C */ cpu->r[3] = 0x0000000Cu; /* 027B8DA0 */ Gambit_fn_02801A78(cpu); /* 027B8DA4 */ cpu->r[12] = cpu->r[3]; /* 027B8DA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B8DA8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8DA8 */ _t35 = _t34 & 0x00000001u; /* 027B8DA8 */ if (_t35) goto L_027B8DC8; else goto L_027B8DAC; L_027B8DAC: ; // 0x27b8dac /* 027B8DAC */ cpu->r[0] = 0x10110000u; /* 027B8DB0 */ _t36 = cpu->r[12] + 0x00000008u; /* 027B8DB0 */ rbrew_write32(cpu->mem, _t36, cpu->r[24]); /* 027B8DB4 */ cpu->r[8] = cpu->r[26] + 0x0000000Cu; /* 027B8DB8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3CCu; /* 027B8DBC */ _t37 = cpu->r[12] + 0x00000000u; /* 027B8DBC */ rbrew_write32(cpu->mem, _t37, cpu->r[8]); /* 027B8DC0 */ _t38 = cpu->r[12] + 0x00000004u; /* 027B8DC0 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]); /* 027B8DC4 */ _t39 = cpu->r[26] + 0x0000002Bu; /* 027B8DC4 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[30]); L_027B8DC8: ; // 0x27b8dc8 /* 027B8DC8 */ cpu->r[10] = 0x10110000u; /* 027B8DCC */ _t40 = cpu->r[26] + 0x00000000u; /* 027B8DCC */ cpu->r[11] = rbrew_read32(cpu->mem, _t40); /* 027B8DD0 */ cpu->r[10] = cpu->r[10] + 0xFFFFB3FCu; /* 027B8DD4 */ _t41 = cpu->r[26] + 0x00000004u; /* 027B8DD4 */ rbrew_write32(cpu->mem, _t41, cpu->r[10]); /* 027B8DD8 */ _t42 = cpu->r[11] + 0x00000000u; /* 027B8DD8 */ rbrew_write8(cpu->mem, _t42, (uint8_t)cpu->r[30]); L_027B8DDC: ; // 0x27b8ddc /* 027B8DDC */ cpu->r[12] = 0x10110000u; /* 027B8DE0 */ cpu->r[12] = cpu->r[12] + 0xFFFFB414u; /* 027B8DE4 */ _t43 = cpu->r[29] + 0x00000004u; /* 027B8DE4 */ rbrew_write32(cpu->mem, _t43, cpu->r[12]); L_027B8DE8: ; // 0x27b8de8 /* 027B8DE8 */ cpu->r[22] = cpu->r[22] + 0xFFFFFFFFu; /* 027B8DE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u); /* 027B8DEC */ cpu->r[23] = cpu->r[23] + 0x0000002Cu; /* 027B8DF0 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8DF0 */ _t45 = _t44 & 0x00000001u; /* 027B8DF0 */ if (_t45) goto L_027B8DF4; else goto L_027B8D74; L_027B8DF4: ; // 0x27b8df4 /* 027B8DF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027B8DF8 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8DF8 */ _t47 = _t46 & 0x00000001u; /* 027B8DF8 */ if (_t47) goto L_027B8E10; else goto L_027B8DFC; L_027B8DFC: ; // 0x27b8dfc /* 027B8DFC */ _t48 = cpu->r[31] + 0x00000008u; /* 027B8DFC */ rbrew_write32(cpu->mem, _t48, cpu->r[25]); /* 027B8E00 */ cpu->r[0] = 0x00000020u; /* 027B8E04 */ _t49 = cpu->r[31] + 0x00000010u; /* 027B8E04 */ rbrew_write32(cpu->mem, _t49, cpu->r[27]); /* 027B8E08 */ _t50 = cpu->r[31] + 0x0000000Cu; /* 027B8E08 */ rbrew_write32(cpu->mem, _t50, cpu->r[0]); /* 027B8E0C */ _t51 = cpu->r[31] + 0x00000014u; /* 027B8E0C */ rbrew_write32(cpu->mem, _t51, cpu->r[27]); L_027B8E10: ; // 0x27b8e10 /* 027B8E10 */ _t52 = cpu->r[31] + 0x00000018u; /* 027B8E10 */ rbrew_write32(cpu->mem, _t52, cpu->r[27]); /* 027B8E14 */ _t53 = cpu->r[28] + 0x00000010u; /* 027B8E14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t53); /* 027B8E18 */ _t54 = cpu->r[28] + 0x0000000Cu; /* 027B8E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54); /* 027B8E1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[11]); /* 027B8E20 */ _t55 = cpu->r[28] + 0x00000004u; /* 027B8E20 */ rbrew_write32(cpu->mem, _t55, cpu->r[31]); /* 027B8E24 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8E24 */ _t57 = _t56 & 0x00000001u; /* 027B8E24 */ if (_t57) goto L_027B8E28; else goto L_027B8E5C; L_027B8E28: ; // 0x27b8e28 /* 027B8E28 */ goto L_027B8E44; L_027B8E2C: ; // 0x27b8e2c /* 027B8E2C */ _t58 = cpu->r[28] + 0x0000000Cu; /* 027B8E2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t58); /* 027B8E30 */ cpu->r[31] = 0x00000000u; /* 027B8E34 */ _t59 = cpu->r[28] + 0x00000010u; /* 027B8E34 */ cpu->r[11] = rbrew_read32(cpu->mem, _t59); /* 027B8E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[11]); /* 027B8E3C */ _t60 = cpu->r[28] + 0x00000004u; /* 027B8E3C */ rbrew_write32(cpu->mem, _t60, cpu->r[31]); /* 027B8E40 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8E40 */ _t62 = _t61 & 0x00000001u; /* 027B8E40 */ if (_t62) goto L_027B8E44; else goto L_027B8E5C; L_027B8E44: ; // 0x27b8e44 /* 027B8E44 */ _t63 = cpu->r[28] + 0x00000014u; /* 027B8E44 */ cpu->r[6] = rbrew_read32(cpu->mem, _t63); /* 027B8E48 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B8E4C */ _t64 = cpu->r[12] + cpu->r[6]; /* 027B8E4C */ rbrew_write32(cpu->mem, _t64, cpu->r[31]); /* 027B8E50 */ _t65 = cpu->r[28] + 0x0000000Cu; /* 027B8E50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t65); /* 027B8E54 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B8E58 */ _t66 = cpu->r[28] + 0x0000000Cu; /* 027B8E58 */ rbrew_write32(cpu->mem, _t66, cpu->r[7]); L_027B8E5C: ; // 0x27b8e5c /* 027B8E5C */ /* nop */ /* 027B8E60 */ _t67 = cpu->r[1] + 0x00000034u; /* 027B8E60 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67); /* 027B8E64 */ cpu->lr = cpu->r[0]; /* 027B8E68 */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027B8E6C */ return; } // fn_027B8E70 @ 0x27b8e70 void Gambit_fn_027B8E70(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46; L_027B8E70: ; // 0x27b8e70 /* 027B8E70 */ cpu->r[0] = cpu->lr; /* 027B8E74 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B8E74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8E74 */ cpu->r[1] = _t0; /* 027B8E78 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B8E78 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027B8E7C */ cpu->r[28] = cpu->r[3]; /* 027B8E80 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B8E80 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027B8E84 */ cpu->r[3] = 0x00000010u; /* 027B8E88 */ _t3 = cpu->r[1] + 0x00000010u; /* 027B8E88 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B8E8C */ _t4 = cpu->r[1] + 0x00000014u; /* 027B8E8C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B8E90 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B8E90 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B8E94 */ cpu->r[29] = cpu->r[4]; /* 027B8E98 */ cpu->r[4] = cpu->r[5]; /* 027B8E9C */ cpu->r[5] = 0x00000004u; /* 027B8EA0 */ cpu->r[30] = cpu->r[6]; /* 027B8EA4 */ Gambit_fn_02801AC8(cpu); /* 027B8EA8 */ cpu->r[31] = cpu->r[3]; /* 027B8EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B8EAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8EAC */ _t7 = _t6 & 0x00000001u; /* 027B8EAC */ if (_t7) goto L_027B8EEC; else goto L_027B8EB0; L_027B8EB0: ; // 0x27b8eb0 /* 027B8EB0 */ cpu->r[10] = 0x00000000u; /* 027B8EB4 */ cpu->r[12] = 0x10110000u; /* 027B8EB8 */ _t8 = cpu->r[31] + 0x00000000u; /* 027B8EB8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]); /* 027B8EBC */ cpu->r[12] = cpu->r[12] + 0xFFFFB170u; /* 027B8EC0 */ cpu->r[0] = 0xFFFFFFFFu; /* 027B8EC4 */ cpu->r[3] = cpu->r[31]; /* 027B8EC8 */ _t9 = cpu->r[31] + 0x00000004u; /* 027B8EC8 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]); /* 027B8ECC */ cpu->r[4] = cpu->r[29]; /* 027B8ED0 */ _t10 = cpu->r[31] + 0x0000000Cu; /* 027B8ED0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027B8ED4 */ Gambit_fn_027B48DC(cpu); /* 027B8ED8 */ _t11 = cpu->r[28] + 0x00000010u; /* 027B8ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027B8EDC */ _t12 = cpu->r[28] + 0x0000000Cu; /* 027B8EDC */ cpu->r[7] = rbrew_read32(cpu->mem, _t12); /* 027B8EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]); /* 027B8EE4 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8EE4 */ _t14 = _t13 & 0x00000001u; /* 027B8EE4 */ if (_t14) goto L_027B8EE8; else goto L_027B8F18; L_027B8EE8: ; // 0x27b8ee8 /* 027B8EE8 */ goto L_027B8F00; L_027B8EEC: ; // 0x27b8eec /* 027B8EEC */ _t15 = cpu->r[28] + 0x0000000Cu; /* 027B8EEC */ cpu->r[7] = rbrew_read32(cpu->mem, _t15); /* 027B8EF0 */ _t16 = cpu->r[28] + 0x00000010u; /* 027B8EF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B8EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]); /* 027B8EF8 */ cpu->r[31] = 0x00000000u; /* 027B8EFC */ _t17 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8EFC */ _t18 = _t17 & 0x00000001u; /* 027B8EFC */ if (_t18) goto L_027B8F00; else goto L_027B8F18; L_027B8F00: ; // 0x27b8f00 /* 027B8F00 */ _t19 = cpu->r[28] + 0x00000014u; /* 027B8F00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B8F04 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B8F08 */ _t20 = cpu->r[10] + cpu->r[0]; /* 027B8F08 */ rbrew_write32(cpu->mem, _t20, cpu->r[31]); /* 027B8F0C */ _t21 = cpu->r[28] + 0x0000000Cu; /* 027B8F0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t21); /* 027B8F10 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B8F14 */ _t22 = cpu->r[28] + 0x0000000Cu; /* 027B8F14 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]); L_027B8F18: ; // 0x27b8f18 /* 027B8F18 */ _t23 = cpu->r[28] + 0x00000024u; /* 027B8F18 */ cpu->r[5] = rbrew_read32(cpu->mem, _t23); /* 027B8F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B8F20 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8F20 */ _t25 = _t24 & 0x00000001u; /* 027B8F20 */ if (_t25) goto L_027B8F38; else goto L_027B8F24; L_027B8F24: ; // 0x27b8f24 /* 027B8F24 */ cpu->r[4] = 0x10110000u; /* 027B8F28 */ cpu->r[3] = cpu->r[30]; /* 027B8F2C */ cpu->r[4] = cpu->r[4] + 0xFFFFB598u; /* 027B8F30 */ _t26 = cpu->cr[1] >> (0x00000001u & 31u); /* 027B8F30 */ _t27 = _t26 & 0x00000001u; /* 027B8F30 */ if (_t27) goto L_027B8F34; // else: addr-0 trap, fall-through L_027B8F34: ; // 0x27b8f34 /* 027B8F34 */ Gambit_fn_0282A718(cpu); L_027B8F38: ; // 0x27b8f38 /* 027B8F38 */ _t28 = cpu->r[28] + 0x00000018u; /* 027B8F38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28); /* 027B8F3C */ _t29 = cpu->r[28] + 0x0000001Cu; /* 027B8F3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027B8F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]); /* 027B8F44 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8F44 */ _t31 = _t30 & 0x00000001u; /* 027B8F44 */ if (_t31) goto L_027B8F48; else goto L_027B8F60; L_027B8F48: ; // 0x27b8f48 /* 027B8F48 */ _t32 = cpu->r[28] + 0x00000020u; /* 027B8F48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32); /* 027B8F4C */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B8F50 */ _t33 = cpu->r[7] + cpu->r[8]; /* 027B8F50 */ rbrew_write32(cpu->mem, _t33, cpu->r[30]); /* 027B8F54 */ _t34 = cpu->r[28] + 0x00000018u; /* 027B8F54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34); /* 027B8F58 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B8F5C */ _t35 = cpu->r[28] + 0x00000018u; /* 027B8F5C */ rbrew_write32(cpu->mem, _t35, cpu->r[9]); L_027B8F60: ; // 0x27b8f60 /* 027B8F60 */ _t36 = cpu->r[28] + 0x00000024u; /* 027B8F60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t36); /* 027B8F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B8F68 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8F68 */ _t38 = _t37 & 0x00000001u; /* 027B8F68 */ if (_t38) goto L_027B8F6C; else goto L_027B8F74; L_027B8F6C: ; // 0x27b8f6c /* 027B8F6C */ _t39 = cpu->r[28] + 0x00000024u; /* 027B8F6C */ cpu->r[5] = rbrew_read32(cpu->mem, _t39); /* 027B8F70 */ _t40 = cpu->r[28] + 0x00000008u; /* 027B8F70 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]); L_027B8F74: ; // 0x27b8f74 /* 027B8F74 */ cpu->r[11] = cpu->r[5] + 0x00000001u; /* 027B8F78 */ _t41 = cpu->r[28] + 0x00000024u; /* 027B8F78 */ rbrew_write32(cpu->mem, _t41, cpu->r[11]); /* 027B8F7C */ _t42 = cpu->r[1] + 0x00000008u; /* 027B8F7C */ cpu->r[28] = rbrew_read32(cpu->mem, _t42); /* 027B8F80 */ _t43 = cpu->r[1] + 0x0000000Cu; /* 027B8F80 */ cpu->r[29] = rbrew_read32(cpu->mem, _t43); /* 027B8F84 */ _t44 = cpu->r[1] + 0x0000001Cu; /* 027B8F84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44); /* 027B8F88 */ _t45 = cpu->r[1] + 0x00000010u; /* 027B8F88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45); /* 027B8F8C */ cpu->lr = cpu->r[0]; /* 027B8F90 */ _t46 = cpu->r[1] + 0x00000014u; /* 027B8F90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46); /* 027B8F94 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B8F98 */ return; } // fn_027B8E74 @ 0x27b8e74 void Gambit_fn_027B8E74(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46; L_027B8E74: ; // 0x27b8e74 /* 027B8E74 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B8E74 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8E74 */ cpu->r[1] = _t0; /* 027B8E78 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B8E78 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027B8E7C */ cpu->r[28] = cpu->r[3]; /* 027B8E80 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B8E80 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027B8E84 */ cpu->r[3] = 0x00000010u; /* 027B8E88 */ _t3 = cpu->r[1] + 0x00000010u; /* 027B8E88 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B8E8C */ _t4 = cpu->r[1] + 0x00000014u; /* 027B8E8C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B8E90 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B8E90 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B8E94 */ cpu->r[29] = cpu->r[4]; /* 027B8E98 */ cpu->r[4] = cpu->r[5]; /* 027B8E9C */ cpu->r[5] = 0x00000004u; /* 027B8EA0 */ cpu->r[30] = cpu->r[6]; /* 027B8EA4 */ Gambit_fn_02801AC8(cpu); /* 027B8EA8 */ cpu->r[31] = cpu->r[3]; /* 027B8EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B8EAC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8EAC */ _t7 = _t6 & 0x00000001u; /* 027B8EAC */ if (_t7) goto L_027B8EEC; else goto L_027B8EB0; L_027B8EB0: ; // 0x27b8eb0 /* 027B8EB0 */ cpu->r[10] = 0x00000000u; /* 027B8EB4 */ cpu->r[12] = 0x10110000u; /* 027B8EB8 */ _t8 = cpu->r[31] + 0x00000000u; /* 027B8EB8 */ rbrew_write32(cpu->mem, _t8, cpu->r[10]); /* 027B8EBC */ cpu->r[12] = cpu->r[12] + 0xFFFFB170u; /* 027B8EC0 */ cpu->r[0] = 0xFFFFFFFFu; /* 027B8EC4 */ cpu->r[3] = cpu->r[31]; /* 027B8EC8 */ _t9 = cpu->r[31] + 0x00000004u; /* 027B8EC8 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]); /* 027B8ECC */ cpu->r[4] = cpu->r[29]; /* 027B8ED0 */ _t10 = cpu->r[31] + 0x0000000Cu; /* 027B8ED0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027B8ED4 */ Gambit_fn_027B48DC(cpu); /* 027B8ED8 */ _t11 = cpu->r[28] + 0x00000010u; /* 027B8ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027B8EDC */ _t12 = cpu->r[28] + 0x0000000Cu; /* 027B8EDC */ cpu->r[7] = rbrew_read32(cpu->mem, _t12); /* 027B8EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]); /* 027B8EE4 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8EE4 */ _t14 = _t13 & 0x00000001u; /* 027B8EE4 */ if (_t14) goto L_027B8EE8; else goto L_027B8F18; L_027B8EE8: ; // 0x27b8ee8 /* 027B8EE8 */ goto L_027B8F00; L_027B8EEC: ; // 0x27b8eec /* 027B8EEC */ _t15 = cpu->r[28] + 0x0000000Cu; /* 027B8EEC */ cpu->r[7] = rbrew_read32(cpu->mem, _t15); /* 027B8EF0 */ _t16 = cpu->r[28] + 0x00000010u; /* 027B8EF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027B8EF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]); /* 027B8EF8 */ cpu->r[31] = 0x00000000u; /* 027B8EFC */ _t17 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8EFC */ _t18 = _t17 & 0x00000001u; /* 027B8EFC */ if (_t18) goto L_027B8F00; else goto L_027B8F18; L_027B8F00: ; // 0x27b8f00 /* 027B8F00 */ _t19 = cpu->r[28] + 0x00000014u; /* 027B8F00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B8F04 */ cpu->r[10] = rbrew_rlwinm(cpu->r[7], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B8F08 */ _t20 = cpu->r[10] + cpu->r[0]; /* 027B8F08 */ rbrew_write32(cpu->mem, _t20, cpu->r[31]); /* 027B8F0C */ _t21 = cpu->r[28] + 0x0000000Cu; /* 027B8F0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t21); /* 027B8F10 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027B8F14 */ _t22 = cpu->r[28] + 0x0000000Cu; /* 027B8F14 */ rbrew_write32(cpu->mem, _t22, cpu->r[12]); L_027B8F18: ; // 0x27b8f18 /* 027B8F18 */ _t23 = cpu->r[28] + 0x00000024u; /* 027B8F18 */ cpu->r[5] = rbrew_read32(cpu->mem, _t23); /* 027B8F1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B8F20 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8F20 */ _t25 = _t24 & 0x00000001u; /* 027B8F20 */ if (_t25) goto L_027B8F38; else goto L_027B8F24; L_027B8F24: ; // 0x27b8f24 /* 027B8F24 */ cpu->r[4] = 0x10110000u; /* 027B8F28 */ cpu->r[3] = cpu->r[30]; /* 027B8F2C */ cpu->r[4] = cpu->r[4] + 0xFFFFB598u; /* 027B8F30 */ _t26 = cpu->cr[1] >> (0x00000001u & 31u); /* 027B8F30 */ _t27 = _t26 & 0x00000001u; /* 027B8F30 */ if (_t27) goto L_027B8F34; // else: addr-0 trap, fall-through L_027B8F34: ; // 0x27b8f34 /* 027B8F34 */ Gambit_fn_0282A718(cpu); L_027B8F38: ; // 0x27b8f38 /* 027B8F38 */ _t28 = cpu->r[28] + 0x00000018u; /* 027B8F38 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28); /* 027B8F3C */ _t29 = cpu->r[28] + 0x0000001Cu; /* 027B8F3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027B8F40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]); /* 027B8F44 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B8F44 */ _t31 = _t30 & 0x00000001u; /* 027B8F44 */ if (_t31) goto L_027B8F48; else goto L_027B8F60; L_027B8F48: ; // 0x27b8f48 /* 027B8F48 */ _t32 = cpu->r[28] + 0x00000020u; /* 027B8F48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t32); /* 027B8F4C */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B8F50 */ _t33 = cpu->r[7] + cpu->r[8]; /* 027B8F50 */ rbrew_write32(cpu->mem, _t33, cpu->r[30]); /* 027B8F54 */ _t34 = cpu->r[28] + 0x00000018u; /* 027B8F54 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34); /* 027B8F58 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027B8F5C */ _t35 = cpu->r[28] + 0x00000018u; /* 027B8F5C */ rbrew_write32(cpu->mem, _t35, cpu->r[9]); L_027B8F60: ; // 0x27b8f60 /* 027B8F60 */ _t36 = cpu->r[28] + 0x00000024u; /* 027B8F60 */ cpu->r[5] = rbrew_read32(cpu->mem, _t36); /* 027B8F64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B8F68 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8F68 */ _t38 = _t37 & 0x00000001u; /* 027B8F68 */ if (_t38) goto L_027B8F6C; else goto L_027B8F74; L_027B8F6C: ; // 0x27b8f6c /* 027B8F6C */ _t39 = cpu->r[28] + 0x00000024u; /* 027B8F6C */ cpu->r[5] = rbrew_read32(cpu->mem, _t39); /* 027B8F70 */ _t40 = cpu->r[28] + 0x00000008u; /* 027B8F70 */ rbrew_write32(cpu->mem, _t40, cpu->r[31]); L_027B8F74: ; // 0x27b8f74 /* 027B8F74 */ cpu->r[11] = cpu->r[5] + 0x00000001u; /* 027B8F78 */ _t41 = cpu->r[28] + 0x00000024u; /* 027B8F78 */ rbrew_write32(cpu->mem, _t41, cpu->r[11]); /* 027B8F7C */ _t42 = cpu->r[1] + 0x00000008u; /* 027B8F7C */ cpu->r[28] = rbrew_read32(cpu->mem, _t42); /* 027B8F80 */ _t43 = cpu->r[1] + 0x0000000Cu; /* 027B8F80 */ cpu->r[29] = rbrew_read32(cpu->mem, _t43); /* 027B8F84 */ _t44 = cpu->r[1] + 0x0000001Cu; /* 027B8F84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t44); /* 027B8F88 */ _t45 = cpu->r[1] + 0x00000010u; /* 027B8F88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45); /* 027B8F8C */ cpu->lr = cpu->r[0]; /* 027B8F90 */ _t46 = cpu->r[1] + 0x00000014u; /* 027B8F90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t46); /* 027B8F94 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B8F98 */ return; } // fn_027B8F9C @ 0x27b8f9c void Gambit_fn_027B8F9C(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; L_027B8F9C: ; // 0x27b8f9c /* 027B8F9C */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027B8F9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B8F9C */ cpu->r[1] = _t0; /* 027B8FA0 */ cpu->r[0] = cpu->lr; /* 027B8FA4 */ /* nop */ /* 027B8FA8 */ cpu->r[26] = cpu->r[4]; /* 027B8FAC */ cpu->r[27] = cpu->r[5]; /* 027B8FB0 */ cpu->r[25] = cpu->r[3]; /* 027B8FB4 */ cpu->r[3] = 0x0000002Cu; /* 027B8FB8 */ cpu->r[4] = cpu->r[27]; /* 027B8FBC */ cpu->r[5] = 0x00000004u; /* 027B8FC0 */ _t1 = cpu->r[1] + 0x00000034u; /* 027B8FC0 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B8FC4 */ cpu->r[0] = 0x00000000u; /* 027B8FC8 */ Gambit_fn_02801AC8(cpu); /* 027B8FCC */ cpu->r[30] = cpu->r[3]; /* 027B8FCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B8FD0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8FD0 */ _t3 = _t2 & 0x00000001u; /* 027B8FD0 */ if (_t3) goto L_027B9208; else goto L_027B8FD4; L_027B8FD4: ; // 0x27b8fd4 /* 027B8FD4 */ cpu->r[12] = 0x101D0000u; /* 027B8FD8 */ _t4 = cpu->r[12] + 0xFFFFD9B4u; /* 027B8FD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4); /* 027B8FDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B8FE0 */ cpu->r[31] = 0x101D0000u; /* 027B8FE4 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B8FE4 */ _t6 = _t5 & 0x00000001u; /* 027B8FE4 */ if (_t6) goto L_027B8FE8; else goto L_027B9008; L_027B8FE8: ; // 0x27b8fe8 /* 027B8FE8 */ cpu->r[0] = 0x00000001u; /* 027B8FEC */ cpu->r[4] = 0x101D0000u; /* 027B8FF0 */ cpu->r[3] = cpu->r[31] + 0x00005B6Au; /* 027B8FF4 */ cpu->r[6] = 0x101D0000u; /* 027B8FF8 */ cpu->r[4] = cpu->r[4] + 0xFFFF933Cu; /* 027B8FFC */ cpu->r[5] = 0x00000041u; /* 027B9000 */ _t7 = cpu->r[6] + 0xFFFFD9B4u; /* 027B9000 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027B9004 */ rbrew_dispatch(cpu, 0x02d0b870u); L_027B9008: ; // 0x27b9008 /* 027B9008 */ cpu->r[10] = 0x101D0000u; /* 027B900C */ _t8 = cpu->r[10] + 0xFFFFD9B0u; /* 027B900C */ cpu->r[5] = rbrew_read32(cpu->mem, _t8); /* 027B900C */ cpu->r[10] = _t8; /* 027B9010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027B9014 */ cpu->r[29] = 0x101D0000u; /* 027B9018 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9018 */ _t10 = _t9 & 0x00000001u; /* 027B9018 */ if (_t10) goto L_027B901C; else goto L_027B9048; L_027B901C: ; // 0x27b901c /* 027B901C */ cpu->r[6] = 0x00000001u; /* 027B9020 */ cpu->r[7] = 0x00000000u; /* 027B9024 */ _t11 = cpu->r[10] + 0x00000000u; /* 027B9024 */ rbrew_write32(cpu->mem, _t11, cpu->r[6]); /* 027B9028 */ _t12 = cpu->r[29] + 0x000014F0u; /* 027B9028 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]); /* 027B902C */ Gambit_fn_0282A450(cpu); /* 027B9030 */ cpu->r[24] = cpu->r[3]; /* 027B9034 */ Gambit_fn_02836FFC(cpu); /* 027B9038 */ _t13 = cpu->r[29] + 0x000014F0u; /* 027B9038 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13); /* 027B903C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B9040 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9040 */ _t15 = _t14 & 0x00000001u; /* 027B9040 */ if (_t15) goto L_027B906C; else goto L_027B9044; L_027B9044: ; // 0x27b9044 /* 027B9044 */ goto L_027B9088; L_027B9048: ; // 0x27b9048 /* 027B9048 */ _t16 = cpu->r[29] + 0x000014F0u; /* 027B9048 */ cpu->r[8] = rbrew_read32(cpu->mem, _t16); /* 027B904C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027B9050 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9050 */ _t18 = _t17 & 0x00000001u; /* 027B9050 */ if (_t18) goto L_027B9054; else goto L_027B9094; L_027B9054: ; // 0x27b9054 /* 027B9054 */ Gambit_fn_0282A450(cpu); /* 027B9058 */ cpu->r[24] = cpu->r[3]; /* 027B905C */ Gambit_fn_02836FFC(cpu); /* 027B9060 */ _t19 = cpu->r[29] + 0x000014F0u; /* 027B9060 */ cpu->r[9] = rbrew_read32(cpu->mem, _t19); /* 027B9064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027B9068 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9068 */ _t21 = _t20 & 0x00000001u; /* 027B9068 */ if (_t21) goto L_027B906C; else goto L_027B9088; L_027B906C: ; // 0x27b906c /* 027B906C */ cpu->r[28] = 0x101D0000u; /* 027B9070 */ cpu->r[4] = cpu->r[31] + 0x00005B6Au; /* 027B9074 */ cpu->r[28] = cpu->r[28] + 0x000014F4u; /* 027B9078 */ cpu->r[5] = 0x00000005u; /* 027B907C */ cpu->r[3] = cpu->r[28]; /* 027B9080 */ Gambit_fn_0282A374(cpu); /* 027B9084 */ _t22 = cpu->r[29] + 0x000014F0u; /* 027B9084 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]); L_027B9088: ; // 0x27b9088 /* 027B9088 */ cpu->r[3] = cpu->r[24]; /* 027B908C */ Gambit_fn_02837030(cpu); /* 027B9090 */ _t23 = cpu->r[29] + 0x000014F0u; /* 027B9090 */ cpu->r[8] = rbrew_read32(cpu->mem, _t23); L_027B9094: ; // 0x27b9094 /* 027B9094 */ _t24 = cpu->r[8] + 0x00000004u; /* 027B9094 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24); /* 027B9098 */ cpu->r[0] = 0x10110000u; /* 027B909C */ cpu->r[0] = cpu->r[0] + 0xFFFFB3B4u; /* 027B90A0 */ _t25 = cpu->r[1] + 0x00000008u; /* 027B90A0 */ rbrew_write32(cpu->mem, _t25, cpu->r[8]); /* 027B90A4 */ cpu->r[24] = cpu->r[30]; /* 027B90A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027B90A8 */ _t26 = cpu->r[1] + 0x0000000Cu; /* 027B90A8 */ rbrew_write32(cpu->mem, _t26, cpu->r[0]); /* 027B90AC */ cpu->r[0] = 0x00000001u; /* 027B90B0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B90B0 */ _t28 = _t27 & 0x00000001u; /* 027B90B0 */ if (_t28) goto L_027B90B4; else goto L_027B90C4; L_027B90B4: ; // 0x27b90b4 /* 027B90B4 */ cpu->r[3] = 0x0000002Cu; /* 027B90B8 */ Gambit_fn_02801A78(cpu); /* 027B90BC */ cpu->r[24] = cpu->r[3]; /* 027B90BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027B90C0 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B90C0 */ _t30 = _t29 & 0x00000001u; /* 027B90C0 */ if (_t30) goto L_027B91E4; else goto L_027B90C4; L_027B90C4: ; // 0x27b90c4 /* 027B90C4 */ cpu->r[3] = cpu->r[24]; /* 027B90C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B90C8 */ cpu->r[31] = 0x10110000u; /* 027B90CC */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B90CC */ _t32 = _t31 & 0x00000001u; /* 027B90CC */ if (_t32) goto L_027B90D0; else goto L_027B9124; L_027B90D0: ; // 0x27b90d0 /* 027B90D0 */ cpu->r[3] = 0x0000000Cu; /* 027B90D4 */ Gambit_fn_02801A78(cpu); /* 027B90D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B90DC */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B90DC */ _t34 = _t33 & 0x00000001u; /* 027B90DC */ if (_t34) goto L_027B90E0; else goto L_027B9124; L_027B90E0: ; // 0x27b90e0 /* 027B90E0 */ cpu->r[7] = 0x10110000u; /* 027B90E4 */ _t35 = cpu->r[31] + 0x00007399u; /* 027B90E4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t35); /* 027B90E8 */ cpu->r[7] = cpu->r[7] + 0xFFFFB3FCu; /* 027B90EC */ _t36 = cpu->r[24] + 0x00000004u; /* 027B90EC */ rbrew_write32(cpu->mem, _t36, cpu->r[7]); /* 027B90F0 */ _t37 = cpu->r[1] + 0x0000000Cu; /* 027B90F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t37); /* 027B90F4 */ _t38 = cpu->r[9] + 0x00000014u; /* 027B90F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027B90F8 */ cpu->ctr = cpu->r[0]; /* 027B90FC */ _t39 = cpu->r[24] + 0x00000000u; /* 027B90FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t39); /* 027B9100 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B9104 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9108 */ _t40 = cpu->r[1] + 0x00000008u; /* 027B9108 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40); /* 027B910C */ _t41 = cpu->r[10] + 0x00000000u; /* 027B910C */ cpu->r[12] = rbrew_read8(cpu->mem, _t41); /* 027B9110 */ cpu->r[29] = 0x00000000u; /* 027B9114 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027B9118 */ cpu->r[12] = 0x00080000u; /* 027B911C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B911C */ _t43 = _t42 & 0x00000001u; /* 027B911C */ if (_t43) goto L_027B9120; else goto L_027B9184; L_027B9120: ; // 0x27b9120 /* 027B9120 */ goto L_027B91A8; L_027B9124: ; // 0x27b9124 /* 027B9124 */ cpu->r[5] = 0x10110000u; /* 027B9128 */ cpu->r[0] = cpu->r[24] + 0x0000000Cu; /* 027B912C */ cpu->r[5] = cpu->r[5] + 0xFFFFB3CCu; /* 027B9130 */ _t44 = cpu->r[3] + 0x00000000u; /* 027B9130 */ rbrew_write32(cpu->mem, _t44, cpu->r[0]); /* 027B9134 */ cpu->r[0] = 0x00000020u; /* 027B9138 */ cpu->r[7] = 0x10110000u; /* 027B913C */ _t45 = cpu->r[3] + 0x00000004u; /* 027B913C */ rbrew_write32(cpu->mem, _t45, cpu->r[5]); /* 027B9140 */ cpu->r[7] = cpu->r[7] + 0xFFFFB3FCu; /* 027B9144 */ _t46 = cpu->r[3] + 0x00000008u; /* 027B9144 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]); /* 027B9148 */ _t47 = cpu->r[31] + 0x00007399u; /* 027B9148 */ cpu->r[31] = rbrew_read8(cpu->mem, _t47); /* 027B914C */ _t48 = cpu->r[24] + 0x00000004u; /* 027B914C */ rbrew_write32(cpu->mem, _t48, cpu->r[7]); /* 027B9150 */ _t49 = cpu->r[24] + 0x0000002Bu; /* 027B9150 */ rbrew_write8(cpu->mem, _t49, (uint8_t)cpu->r[31]); /* 027B9154 */ _t50 = cpu->r[1] + 0x0000000Cu; /* 027B9154 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50); /* 027B9158 */ _t51 = cpu->r[9] + 0x00000014u; /* 027B9158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51); /* 027B915C */ cpu->ctr = cpu->r[0]; /* 027B9160 */ _t52 = cpu->r[24] + 0x00000000u; /* 027B9160 */ cpu->r[28] = rbrew_read32(cpu->mem, _t52); /* 027B9164 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B9168 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B916C */ _t53 = cpu->r[1] + 0x00000008u; /* 027B916C */ cpu->r[10] = rbrew_read32(cpu->mem, _t53); /* 027B9170 */ _t54 = cpu->r[10] + 0x00000000u; /* 027B9170 */ cpu->r[12] = rbrew_read8(cpu->mem, _t54); /* 027B9174 */ cpu->r[29] = 0x00000000u; /* 027B9178 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027B917C */ cpu->r[12] = 0x00080000u; /* 027B9180 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9180 */ _t56 = _t55 & 0x00000001u; /* 027B9180 */ if (_t56) goto L_027B9120; else goto L_027B9184; L_027B9184: ; // 0x27b9184 /* 027B9184 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027B9188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]); /* 027B918C */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027B9190 */ _t57 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B9190 */ _t58 = _t57 & 0x00000001u; /* 027B9190 */ if (_t58) goto L_027B91A4; else goto L_027B9194; L_027B9194: ; // 0x27b9194 /* 027B9194 */ _t59 = cpu->r[10] + 0x00000000u; /* 027B9194 */ cpu->r[0] = rbrew_read8(cpu->mem, _t59); /* 027B9198 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027B919C */ _t60 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B919C */ _t61 = _t60 & 0x00000001u; /* 027B919C */ if (_t61) goto L_027B91A0; else goto L_027B9184; L_027B91A0: ; // 0x27b91a0 /* 027B91A0 */ goto L_027B91A8; L_027B91A4: ; // 0x27b91a4 /* 027B91A4 */ cpu->r[29] = 0x00000000u; L_027B91A8: ; // 0x27b91a8 /* 027B91A8 */ _t62 = cpu->r[24] + 0x00000008u; /* 027B91A8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62); /* 027B91AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[10]); /* 027B91B0 */ _t63 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B91B0 */ _t64 = _t63 & 0x00000001u; /* 027B91B0 */ if (_t64) goto L_027B91B8; else goto L_027B91B4; L_027B91B4: ; // 0x27b91b4 /* 027B91B4 */ cpu->r[29] = cpu->r[10] + 0xFFFFFFFFu; L_027B91B8: ; // 0x27b91b8 /* 027B91B8 */ _t65 = cpu->r[1] + 0x0000000Cu; /* 027B91B8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t65); /* 027B91BC */ _t66 = cpu->r[7] + 0x00000014u; /* 027B91BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t66); /* 027B91C0 */ cpu->ctr = cpu->r[0]; /* 027B91C4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B91C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B91CC */ _t67 = cpu->r[1] + 0x00000008u; /* 027B91CC */ cpu->r[4] = rbrew_read32(cpu->mem, _t67); /* 027B91D0 */ cpu->r[6] = 0x00000000u; /* 027B91D4 */ cpu->r[5] = cpu->r[29]; /* 027B91D8 */ cpu->r[3] = cpu->r[28]; /* 027B91DC */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B91E0 */ _t68 = cpu->r[28] + cpu->r[29]; /* 027B91E0 */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[31]); L_027B91E4: ; // 0x27b91e4 /* 027B91E4 */ cpu->r[0] = 0x10110000u; /* 027B91E8 */ cpu->r[6] = cpu->r[30]; /* 027B91EC */ cpu->r[5] = cpu->r[27]; /* 027B91F0 */ cpu->r[0] = cpu->r[0] + 0xFFFFB414u; /* 027B91F4 */ cpu->r[3] = cpu->r[25]; /* 027B91F8 */ cpu->r[4] = cpu->r[26]; /* 027B91FC */ _t69 = cpu->r[30] + 0x00000004u; /* 027B91FC */ rbrew_write32(cpu->mem, _t69, cpu->r[0]); /* 027B9200 */ Gambit_fn_027B8E70(cpu); /* 027B9204 */ goto L_027B921C; L_027B9208: ; // 0x27b9208 /* 027B9208 */ cpu->r[5] = cpu->r[27]; /* 027B920C */ cpu->r[4] = cpu->r[26]; /* 027B9210 */ cpu->r[3] = cpu->r[25]; /* 027B9214 */ cpu->r[6] = 0x00000000u; /* 027B9218 */ Gambit_fn_027B8E70(cpu); L_027B921C: ; // 0x27b921c /* 027B921C */ /* nop */ /* 027B9220 */ _t70 = cpu->r[1] + 0x00000034u; /* 027B9220 */ cpu->r[0] = rbrew_read32(cpu->mem, _t70); /* 027B9224 */ cpu->lr = cpu->r[0]; /* 027B9228 */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027B922C */ return; } // fn_027B9230 @ 0x27b9230 void Gambit_fn_027B9230(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; L_027B9230: ; // 0x27b9230 /* 027B9230 */ _t0 = cpu->r[1] + 0xFFFFFFC8u; /* 027B9230 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9230 */ cpu->r[1] = _t0; /* 027B9234 */ /* nop */ /* 027B9238 */ cpu->r[0] = cpu->lr; /* 027B923C */ _t1 = cpu->r[1] + 0x0000003Cu; /* 027B923C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B9240 */ cpu->r[27] = 0x00000000u; /* 027B9244 */ cpu->r[28] = cpu->r[3]; /* 027B9248 */ _t2 = cpu->r[28] + 0x0000000Cu; /* 027B9248 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027B924C */ cpu->r[22] = cpu->r[27]; /* 027B9250 */ cpu->r[25] = cpu->r[4]; /* 027B9254 */ cpu->r[23] = cpu->r[5]; /* 027B9258 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[0]); /* 027B925C */ cpu->r[24] = cpu->r[6]; /* 027B9260 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9260 */ _t4 = _t3 & 0x00000001u; /* 027B9260 */ if (_t4) goto L_027B9264; else goto L_027B92E0; L_027B9264: ; // 0x27b9264 /* 027B9264 */ cpu->r[31] = 0x00000001u; /* 027B9268 */ cpu->r[30] = 0x101D0000u; /* 027B926C */ cpu->r[29] = 0x00000000u; /* 027B9270 */ cpu->r[26] = 0x101D0000u; L_027B9274: ; // 0x27b9274 /* 027B9274 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[0]); /* 027B9278 */ _t5 = cpu->r[30] + 0xFFFFE32Cu; /* 027B9278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B927C */ cpu->r[3] = 0x00000000u; /* 027B9280 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9280 */ _t7 = _t6 & 0x00000001u; /* 027B9280 */ if (_t7) goto L_027B9284; else goto L_027B928C; L_027B9284: ; // 0x27b9284 /* 027B9284 */ _t8 = cpu->r[28] + 0x00000014u; /* 027B9284 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027B9288 */ _t9 = cpu->r[11] + cpu->r[29]; /* 027B9288 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); L_027B928C: ; // 0x27b928c /* 027B928C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B9290 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9290 */ _t11 = _t10 & 0x00000001u; /* 027B9290 */ if (_t11) goto L_027B9294; else goto L_027B92A4; L_027B9294: ; // 0x27b9294 /* 027B9294 */ cpu->r[0] = 0x10110000u; /* 027B9298 */ _t12 = cpu->r[30] + 0xFFFFE32Cu; /* 027B9298 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]); /* 027B929C */ cpu->r[0] = cpu->r[0] + 0xFFFFB48Cu; /* 027B92A0 */ _t13 = cpu->r[26] + 0x000014DCu; /* 027B92A0 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]); L_027B92A4: ; // 0x27b92a4 /* 027B92A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B92A8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B92A8 */ _t15 = _t14 & 0x00000001u; /* 027B92A8 */ if (_t15) goto L_027B92CC; else goto L_027B92AC; L_027B92AC: ; // 0x27b92ac /* 027B92AC */ _t16 = cpu->r[3] + 0x00000004u; /* 027B92AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t16); /* 027B92B0 */ _t17 = cpu->r[5] + 0x0000000Cu; /* 027B92B0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17); /* 027B92B4 */ cpu->ctr = cpu->r[8]; /* 027B92B8 */ cpu->r[4] = cpu->r[26] + 0x000014DCu; /* 027B92BC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B92C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B92C4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B92C4 */ _t19 = _t18 & 0x00000001u; /* 027B92C4 */ if (_t19) goto L_027B92CC; else goto L_027B92C8; L_027B92C8: ; // 0x27b92c8 /* 027B92C8 */ cpu->r[27] = cpu->r[27] + 0x00000001u; L_027B92CC: ; // 0x27b92cc /* 027B92CC */ _t20 = cpu->r[28] + 0x0000000Cu; /* 027B92CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027B92D0 */ cpu->r[22] = cpu->r[22] + 0x00000001u; /* 027B92D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[0]); /* 027B92D8 */ cpu->r[29] = cpu->r[29] + 0x00000004u; /* 027B92DC */ _t21 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B92DC */ _t22 = _t21 & 0x00000001u; /* 027B92DC */ if (_t22) goto L_027B9274; else goto L_027B92E0; L_027B92E0: ; // 0x27b92e0 /* 027B92E0 */ cpu->r[4] = cpu->r[25]; /* 027B92E4 */ cpu->r[3] = 0x00000014u; /* 027B92E8 */ cpu->r[5] = 0x00000004u; /* 027B92EC */ Gambit_fn_02801AC8(cpu); /* 027B92F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B92F4 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B92F4 */ _t24 = _t23 & 0x00000001u; /* 027B92F4 */ if (_t24) goto L_027B9364; else goto L_027B92F8; L_027B92F8: ; // 0x27b92f8 /* 027B92F8 */ cpu->r[31] = cpu->r[3]; /* 027B92FC */ cpu->r[0] = 0x00000000u; /* 027B9300 */ cpu->r[9] = 0x10110000u; /* 027B9304 */ _t25 = cpu->r[31] + 0x00000000u; /* 027B9304 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]); /* 027B9308 */ cpu->r[9] = cpu->r[9] + 0xFFFFB1B8u; /* 027B930C */ cpu->r[3] = cpu->r[31] + 0x00000010u; /* 027B930C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9310 */ _t26 = cpu->r[31] + 0x00000004u; /* 027B9310 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]); /* 027B9314 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9314 */ _t28 = _t27 & 0x00000001u; /* 027B9314 */ if (_t28) goto L_027B9318; else goto L_027B9328; L_027B9318: ; // 0x27b9318 /* 027B9318 */ cpu->r[3] = 0x00000004u; /* 027B931C */ Gambit_fn_02801A78(cpu); /* 027B9320 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9324 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9324 */ _t30 = _t29 & 0x00000001u; /* 027B9324 */ if (_t30) goto L_027B9334; else goto L_027B9328; L_027B9328: ; // 0x27b9328 /* 027B9328 */ cpu->r[0] = 0xFFFFFFFFu; /* 027B932C */ _t31 = cpu->r[3] + 0x00000000u; /* 027B932C */ rbrew_write16(cpu->mem, _t31, (uint16_t)cpu->r[0]); /* 027B9330 */ _t32 = cpu->r[3] + 0x00000002u; /* 027B9330 */ rbrew_write16(cpu->mem, _t32, (uint16_t)cpu->r[0]); L_027B9334: ; // 0x27b9334 /* 027B9334 */ cpu->r[12] = 0xFFFFFFFFu; /* 027B9338 */ cpu->r[4] = cpu->r[23]; /* 027B933C */ cpu->r[5] = cpu->r[24]; /* 027B9340 */ _t33 = cpu->r[31] + 0x00000012u; /* 027B9340 */ rbrew_write16(cpu->mem, _t33, (uint16_t)cpu->r[12]); /* 027B9344 */ cpu->r[3] = cpu->r[31]; /* 027B9348 */ _t34 = cpu->r[31] + 0x00000010u; /* 027B9348 */ rbrew_write16(cpu->mem, _t34, (uint16_t)cpu->r[12]); /* 027B934C */ Gambit_fn_027B53D8(cpu); /* 027B9350 */ _t35 = cpu->r[28] + 0x00000010u; /* 027B9350 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35); /* 027B9354 */ _t36 = cpu->r[28] + 0x0000000Cu; /* 027B9354 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36); /* 027B9358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[5]); /* 027B935C */ _t37 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B935C */ _t38 = _t37 & 0x00000001u; /* 027B935C */ if (_t38) goto L_027B9360; else goto L_027B9390; L_027B9360: ; // 0x27b9360 /* 027B9360 */ goto L_027B9378; L_027B9364: ; // 0x27b9364 /* 027B9364 */ _t39 = cpu->r[28] + 0x0000000Cu; /* 027B9364 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027B9368 */ _t40 = cpu->r[28] + 0x00000010u; /* 027B9368 */ cpu->r[5] = rbrew_read32(cpu->mem, _t40); /* 027B936C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[5]); /* 027B9370 */ cpu->r[31] = 0x00000000u; /* 027B9374 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9374 */ _t42 = _t41 & 0x00000001u; /* 027B9374 */ if (_t42) goto L_027B9378; else goto L_027B9390; L_027B9378: ; // 0x27b9378 /* 027B9378 */ _t43 = cpu->r[28] + 0x00000014u; /* 027B9378 */ cpu->r[7] = rbrew_read32(cpu->mem, _t43); /* 027B937C */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B9380 */ _t44 = cpu->r[6] + cpu->r[7]; /* 027B9380 */ rbrew_write32(cpu->mem, _t44, cpu->r[31]); /* 027B9384 */ _t45 = cpu->r[28] + 0x0000000Cu; /* 027B9384 */ cpu->r[8] = rbrew_read32(cpu->mem, _t45); /* 027B9388 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027B938C */ _t46 = cpu->r[28] + 0x0000000Cu; /* 027B938C */ rbrew_write32(cpu->mem, _t46, cpu->r[8]); L_027B9390: ; // 0x27b9390 /* 027B9390 */ cpu->r[5] = 0x00000004u; /* 027B9394 */ cpu->r[3] = 0x0000002Cu; /* 027B9398 */ cpu->r[4] = cpu->r[25]; /* 027B939C */ cpu->r[10] = 0x00000000u; /* 027B93A0 */ Gambit_fn_02801AC8(cpu); /* 027B93A4 */ cpu->r[31] = cpu->r[3]; /* 027B93A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B93A8 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B93A8 */ _t48 = _t47 & 0x00000001u; /* 027B93A8 */ if (_t48) goto L_027B9518; else goto L_027B93AC; L_027B93AC: ; // 0x27b93ac /* 027B93AC */ cpu->r[0] = 0x10110000u; /* 027B93B0 */ cpu->r[9] = 0x10110000u; /* 027B93B4 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3B4u; /* 027B93B8 */ cpu->r[9] = cpu->r[9] + 0xFFFFB5A0u; /* 027B93BC */ cpu->r[25] = cpu->r[31]; /* 027B93BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027B93C0 */ _t49 = cpu->r[1] + 0x0000000Cu; /* 027B93C0 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]); /* 027B93C4 */ cpu->r[10] = 0x00000001u; /* 027B93C8 */ _t50 = cpu->r[1] + 0x00000008u; /* 027B93C8 */ rbrew_write32(cpu->mem, _t50, cpu->r[9]); /* 027B93CC */ _t51 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B93CC */ _t52 = _t51 & 0x00000001u; /* 027B93CC */ if (_t52) goto L_027B93D0; else goto L_027B93E0; L_027B93D0: ; // 0x27b93d0 /* 027B93D0 */ cpu->r[3] = 0x0000002Cu; /* 027B93D4 */ Gambit_fn_02801A78(cpu); /* 027B93D8 */ cpu->r[25] = cpu->r[3]; /* 027B93D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027B93DC */ _t53 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B93DC */ _t54 = _t53 & 0x00000001u; /* 027B93DC */ if (_t54) goto L_027B9500; else goto L_027B93E0; L_027B93E0: ; // 0x27b93e0 /* 027B93E0 */ cpu->r[3] = cpu->r[25]; /* 027B93E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B93E4 */ cpu->r[30] = 0x10110000u; /* 027B93E8 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B93E8 */ _t56 = _t55 & 0x00000001u; /* 027B93E8 */ if (_t56) goto L_027B93EC; else goto L_027B9440; L_027B93EC: ; // 0x27b93ec /* 027B93EC */ cpu->r[3] = 0x0000000Cu; /* 027B93F0 */ Gambit_fn_02801A78(cpu); /* 027B93F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B93F8 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B93F8 */ _t58 = _t57 & 0x00000001u; /* 027B93F8 */ if (_t58) goto L_027B93FC; else goto L_027B9440; L_027B93FC: ; // 0x27b93fc /* 027B93FC */ cpu->r[0] = 0x10110000u; /* 027B9400 */ _t59 = cpu->r[30] + 0x00007399u; /* 027B9400 */ cpu->r[29] = rbrew_read8(cpu->mem, _t59); /* 027B9404 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3FCu; /* 027B9408 */ _t60 = cpu->r[25] + 0x00000004u; /* 027B9408 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]); /* 027B940C */ _t61 = cpu->r[1] + 0x0000000Cu; /* 027B940C */ cpu->r[5] = rbrew_read32(cpu->mem, _t61); /* 027B9410 */ _t62 = cpu->r[5] + 0x00000014u; /* 027B9410 */ cpu->r[6] = rbrew_read32(cpu->mem, _t62); /* 027B9414 */ cpu->ctr = cpu->r[6]; /* 027B9418 */ _t63 = cpu->r[25] + 0x00000000u; /* 027B9418 */ cpu->r[26] = rbrew_read32(cpu->mem, _t63); /* 027B941C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B9420 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9424 */ _t64 = cpu->r[1] + 0x00000008u; /* 027B9424 */ cpu->r[8] = rbrew_read32(cpu->mem, _t64); /* 027B9428 */ _t65 = cpu->r[8] + 0x00000000u; /* 027B9428 */ cpu->r[7] = rbrew_read8(cpu->mem, _t65); /* 027B942C */ cpu->r[30] = 0x00000000u; /* 027B9430 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]); /* 027B9434 */ cpu->r[0] = 0x00080000u; /* 027B9438 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9438 */ _t67 = _t66 & 0x00000001u; /* 027B9438 */ if (_t67) goto L_027B943C; else goto L_027B94A0; L_027B943C: ; // 0x27b943c /* 027B943C */ goto L_027B94C4; L_027B9440: ; // 0x27b9440 /* 027B9440 */ cpu->r[11] = 0x10110000u; /* 027B9444 */ cpu->r[10] = cpu->r[25] + 0x0000000Cu; /* 027B9448 */ cpu->r[11] = cpu->r[11] + 0xFFFFB3CCu; /* 027B944C */ _t68 = cpu->r[3] + 0x00000000u; /* 027B944C */ rbrew_write32(cpu->mem, _t68, cpu->r[10]); /* 027B9450 */ cpu->r[0] = 0x00000020u; /* 027B9454 */ _t69 = cpu->r[3] + 0x00000004u; /* 027B9454 */ rbrew_write32(cpu->mem, _t69, cpu->r[11]); /* 027B9458 */ _t70 = cpu->r[3] + 0x00000008u; /* 027B9458 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]); /* 027B945C */ cpu->r[0] = 0x10110000u; /* 027B9460 */ _t71 = cpu->r[30] + 0x00007399u; /* 027B9460 */ cpu->r[29] = rbrew_read8(cpu->mem, _t71); /* 027B9464 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3FCu; /* 027B9468 */ _t72 = cpu->r[25] + 0x00000004u; /* 027B9468 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]); /* 027B946C */ _t73 = cpu->r[25] + 0x0000002Bu; /* 027B946C */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[29]); /* 027B9470 */ _t74 = cpu->r[1] + 0x0000000Cu; /* 027B9470 */ cpu->r[5] = rbrew_read32(cpu->mem, _t74); /* 027B9474 */ _t75 = cpu->r[5] + 0x00000014u; /* 027B9474 */ cpu->r[6] = rbrew_read32(cpu->mem, _t75); /* 027B9478 */ cpu->ctr = cpu->r[6]; /* 027B947C */ _t76 = cpu->r[25] + 0x00000000u; /* 027B947C */ cpu->r[26] = rbrew_read32(cpu->mem, _t76); /* 027B9480 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B9484 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9488 */ _t77 = cpu->r[1] + 0x00000008u; /* 027B9488 */ cpu->r[8] = rbrew_read32(cpu->mem, _t77); /* 027B948C */ _t78 = cpu->r[8] + 0x00000000u; /* 027B948C */ cpu->r[7] = rbrew_read8(cpu->mem, _t78); /* 027B9490 */ cpu->r[30] = 0x00000000u; /* 027B9494 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]); /* 027B9498 */ cpu->r[0] = 0x00080000u; /* 027B949C */ _t79 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B949C */ _t80 = _t79 & 0x00000001u; /* 027B949C */ if (_t80) goto L_027B943C; else goto L_027B94A0; L_027B94A0: ; // 0x27b94a0 /* 027B94A0 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B94A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B94A8 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027B94AC */ _t81 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B94AC */ _t82 = _t81 & 0x00000001u; /* 027B94AC */ if (_t82) goto L_027B94C0; else goto L_027B94B0; L_027B94B0: ; // 0x27b94b0 /* 027B94B0 */ _t83 = cpu->r[8] + 0x00000000u; /* 027B94B0 */ cpu->r[9] = rbrew_read8(cpu->mem, _t83); /* 027B94B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]); /* 027B94B8 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B94B8 */ _t85 = _t84 & 0x00000001u; /* 027B94B8 */ if (_t85) goto L_027B94BC; else goto L_027B94A0; L_027B94BC: ; // 0x27b94bc /* 027B94BC */ goto L_027B94C4; L_027B94C0: ; // 0x27b94c0 /* 027B94C0 */ cpu->r[30] = 0x00000000u; L_027B94C4: ; // 0x27b94c4 /* 027B94C4 */ _t86 = cpu->r[25] + 0x00000008u; /* 027B94C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t86); /* 027B94C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]); /* 027B94CC */ _t87 = cpu->r[1] + 0x0000000Cu; /* 027B94CC */ cpu->r[10] = rbrew_read32(cpu->mem, _t87); /* 027B94D0 */ _t88 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B94D0 */ _t89 = _t88 & 0x00000001u; /* 027B94D0 */ if (_t89) goto L_027B94D8; else goto L_027B94D4; L_027B94D4: ; // 0x27b94d4 /* 027B94D4 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu; L_027B94D8: ; // 0x27b94d8 /* 027B94D8 */ _t90 = cpu->r[10] + 0x00000014u; /* 027B94D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t90); /* 027B94DC */ cpu->ctr = cpu->r[11]; /* 027B94E0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B94E4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B94E8 */ _t91 = cpu->r[1] + 0x00000008u; /* 027B94E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t91); /* 027B94EC */ cpu->r[6] = 0x00000000u; /* 027B94F0 */ cpu->r[5] = cpu->r[30]; /* 027B94F4 */ cpu->r[3] = cpu->r[26]; /* 027B94F8 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B94FC */ _t92 = cpu->r[26] + cpu->r[30]; /* 027B94FC */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[29]); L_027B9500: ; // 0x27b9500 /* 027B9500 */ cpu->r[12] = 0x10110000u; /* 027B9504 */ cpu->r[12] = cpu->r[12] + 0xFFFFB414u; /* 027B9508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027B950C */ _t93 = cpu->r[31] + 0x00000004u; /* 027B950C */ rbrew_write32(cpu->mem, _t93, cpu->r[12]); /* 027B9510 */ _t94 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B9510 */ _t95 = _t94 & 0x00000001u; /* 027B9510 */ if (_t95) goto L_027B9514; else goto L_027B953C; L_027B9514: ; // 0x27b9514 /* 027B9514 */ goto L_027B9524; L_027B9518: ; // 0x27b9518 /* 027B9518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027B951C */ cpu->r[31] = 0x00000000u; /* 027B9520 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B9520 */ _t97 = _t96 & 0x00000001u; /* 027B9520 */ if (_t97) goto L_027B9524; else goto L_027B953C; L_027B9524: ; // 0x27b9524 /* 027B9524 */ cpu->r[4] = 0x10110000u; /* 027B9528 */ cpu->r[5] = cpu->r[27]; /* 027B952C */ cpu->r[4] = cpu->r[4] + 0xFFFFB59Bu; /* 027B9530 */ cpu->r[3] = cpu->r[31]; /* 027B9534 */ _t98 = cpu->cr[1] >> (0x00000001u & 31u); /* 027B9534 */ _t99 = _t98 & 0x00000001u; /* 027B9534 */ if (_t99) goto L_027B9538; // else: addr-0 trap, fall-through L_027B9538: ; // 0x27b9538 /* 027B9538 */ Gambit_fn_0282A718(cpu); L_027B953C: ; // 0x27b953c /* 027B953C */ _t100 = cpu->r[28] + 0x00000018u; /* 027B953C */ cpu->r[12] = rbrew_read32(cpu->mem, _t100); /* 027B9540 */ _t101 = cpu->r[28] + 0x0000001Cu; /* 027B9540 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101); /* 027B9544 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027B9548 */ _t102 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9548 */ _t103 = _t102 & 0x00000001u; /* 027B9548 */ if (_t103) goto L_027B954C; else goto L_027B9564; L_027B954C: ; // 0x27b954c /* 027B954C */ _t104 = cpu->r[28] + 0x00000020u; /* 027B954C */ cpu->r[6] = rbrew_read32(cpu->mem, _t104); /* 027B9550 */ cpu->r[5] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B9554 */ _t105 = cpu->r[5] + cpu->r[6]; /* 027B9554 */ rbrew_write32(cpu->mem, _t105, cpu->r[31]); /* 027B9558 */ _t106 = cpu->r[28] + 0x00000018u; /* 027B9558 */ cpu->r[7] = rbrew_read32(cpu->mem, _t106); /* 027B955C */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B9560 */ _t107 = cpu->r[28] + 0x00000018u; /* 027B9560 */ rbrew_write32(cpu->mem, _t107, cpu->r[7]); L_027B9564: ; // 0x27b9564 /* 027B9564 */ /* nop */ /* 027B9568 */ _t108 = cpu->r[1] + 0x0000003Cu; /* 027B9568 */ cpu->r[0] = rbrew_read32(cpu->mem, _t108); /* 027B956C */ cpu->lr = cpu->r[0]; /* 027B9570 */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027B9574 */ return; } // fn_027B9578 @ 0x27b9578 void Gambit_fn_027B9578(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; L_027B9578: ; // 0x27b9578 /* 027B9578 */ _t0 = cpu->r[1] + 0xFFFFFFC8u; /* 027B9578 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9578 */ cpu->r[1] = _t0; /* 027B957C */ /* nop */ /* 027B9580 */ cpu->r[0] = cpu->lr; /* 027B9584 */ _t1 = cpu->r[1] + 0x0000003Cu; /* 027B9584 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B9588 */ cpu->r[27] = 0x00000000u; /* 027B958C */ cpu->r[28] = cpu->r[3]; /* 027B9590 */ _t2 = cpu->r[28] + 0x0000000Cu; /* 027B9590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027B9594 */ cpu->r[22] = cpu->r[27]; /* 027B9598 */ cpu->r[25] = cpu->r[4]; /* 027B959C */ cpu->r[23] = cpu->r[5]; /* 027B95A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[0]); /* 027B95A4 */ cpu->r[24] = cpu->r[6]; /* 027B95A8 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B95A8 */ _t4 = _t3 & 0x00000001u; /* 027B95A8 */ if (_t4) goto L_027B95AC; else goto L_027B9628; L_027B95AC: ; // 0x27b95ac /* 027B95AC */ cpu->r[31] = 0x00000001u; /* 027B95B0 */ cpu->r[30] = 0x101D0000u; /* 027B95B4 */ cpu->r[29] = 0x00000000u; /* 027B95B8 */ cpu->r[26] = 0x101D0000u; L_027B95BC: ; // 0x27b95bc /* 027B95BC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[22], cpu->r[0]); /* 027B95C0 */ _t5 = cpu->r[30] + 0xFFFFE32Cu; /* 027B95C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B95C4 */ cpu->r[3] = 0x00000000u; /* 027B95C8 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B95C8 */ _t7 = _t6 & 0x00000001u; /* 027B95C8 */ if (_t7) goto L_027B95CC; else goto L_027B95D4; L_027B95CC: ; // 0x27b95cc /* 027B95CC */ _t8 = cpu->r[28] + 0x00000014u; /* 027B95CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027B95D0 */ _t9 = cpu->r[11] + cpu->r[29]; /* 027B95D0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); L_027B95D4: ; // 0x27b95d4 /* 027B95D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B95D8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B95D8 */ _t11 = _t10 & 0x00000001u; /* 027B95D8 */ if (_t11) goto L_027B95DC; else goto L_027B95EC; L_027B95DC: ; // 0x27b95dc /* 027B95DC */ cpu->r[0] = 0x10110000u; /* 027B95E0 */ _t12 = cpu->r[30] + 0xFFFFE32Cu; /* 027B95E0 */ rbrew_write32(cpu->mem, _t12, cpu->r[31]); /* 027B95E4 */ cpu->r[0] = cpu->r[0] + 0xFFFFB48Cu; /* 027B95E8 */ _t13 = cpu->r[26] + 0x000014DCu; /* 027B95E8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]); L_027B95EC: ; // 0x27b95ec /* 027B95EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B95F0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B95F0 */ _t15 = _t14 & 0x00000001u; /* 027B95F0 */ if (_t15) goto L_027B9614; else goto L_027B95F4; L_027B95F4: ; // 0x27b95f4 /* 027B95F4 */ _t16 = cpu->r[3] + 0x00000004u; /* 027B95F4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t16); /* 027B95F8 */ _t17 = cpu->r[5] + 0x0000000Cu; /* 027B95F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t17); /* 027B95FC */ cpu->ctr = cpu->r[8]; /* 027B9600 */ cpu->r[4] = cpu->r[26] + 0x000014DCu; /* 027B9604 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B960C */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B960C */ _t19 = _t18 & 0x00000001u; /* 027B960C */ if (_t19) goto L_027B9614; else goto L_027B9610; L_027B9610: ; // 0x27b9610 /* 027B9610 */ cpu->r[27] = cpu->r[27] + 0x00000001u; L_027B9614: ; // 0x27b9614 /* 027B9614 */ _t20 = cpu->r[28] + 0x0000000Cu; /* 027B9614 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027B9618 */ cpu->r[22] = cpu->r[22] + 0x00000001u; /* 027B961C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], cpu->r[0]); /* 027B9620 */ cpu->r[29] = cpu->r[29] + 0x00000004u; /* 027B9624 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9624 */ _t22 = _t21 & 0x00000001u; /* 027B9624 */ if (_t22) goto L_027B95BC; else goto L_027B9628; L_027B9628: ; // 0x27b9628 /* 027B9628 */ cpu->r[4] = cpu->r[25]; /* 027B962C */ cpu->r[3] = 0x00000014u; /* 027B9630 */ cpu->r[5] = 0x00000004u; /* 027B9634 */ Gambit_fn_02801AC8(cpu); /* 027B9638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B963C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B963C */ _t24 = _t23 & 0x00000001u; /* 027B963C */ if (_t24) goto L_027B96AC; else goto L_027B9640; L_027B9640: ; // 0x27b9640 /* 027B9640 */ cpu->r[31] = cpu->r[3]; /* 027B9644 */ cpu->r[0] = 0x00000000u; /* 027B9648 */ cpu->r[9] = 0x10110000u; /* 027B964C */ _t25 = cpu->r[31] + 0x00000000u; /* 027B964C */ rbrew_write32(cpu->mem, _t25, cpu->r[0]); /* 027B9650 */ cpu->r[9] = cpu->r[9] + 0xFFFFB200u; /* 027B9654 */ cpu->r[3] = cpu->r[31] + 0x00000010u; /* 027B9654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9658 */ _t26 = cpu->r[31] + 0x00000004u; /* 027B9658 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]); /* 027B965C */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B965C */ _t28 = _t27 & 0x00000001u; /* 027B965C */ if (_t28) goto L_027B9660; else goto L_027B9670; L_027B9660: ; // 0x27b9660 /* 027B9660 */ cpu->r[3] = 0x00000004u; /* 027B9664 */ Gambit_fn_02801A78(cpu); /* 027B9668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B966C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B966C */ _t30 = _t29 & 0x00000001u; /* 027B966C */ if (_t30) goto L_027B967C; else goto L_027B9670; L_027B9670: ; // 0x27b9670 /* 027B9670 */ cpu->r[0] = 0xFFFFFFFFu; /* 027B9674 */ _t31 = cpu->r[3] + 0x00000000u; /* 027B9674 */ rbrew_write16(cpu->mem, _t31, (uint16_t)cpu->r[0]); /* 027B9678 */ _t32 = cpu->r[3] + 0x00000002u; /* 027B9678 */ rbrew_write16(cpu->mem, _t32, (uint16_t)cpu->r[0]); L_027B967C: ; // 0x27b967c /* 027B967C */ cpu->r[12] = 0xFFFFFFFFu; /* 027B9680 */ cpu->r[4] = cpu->r[23]; /* 027B9684 */ cpu->r[5] = cpu->r[24]; /* 027B9688 */ _t33 = cpu->r[31] + 0x00000012u; /* 027B9688 */ rbrew_write16(cpu->mem, _t33, (uint16_t)cpu->r[12]); /* 027B968C */ cpu->r[3] = cpu->r[31]; /* 027B9690 */ _t34 = cpu->r[31] + 0x00000010u; /* 027B9690 */ rbrew_write16(cpu->mem, _t34, (uint16_t)cpu->r[12]); /* 027B9694 */ Gambit_fn_027B5AA0(cpu); /* 027B9698 */ _t35 = cpu->r[28] + 0x00000010u; /* 027B9698 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35); /* 027B969C */ _t36 = cpu->r[28] + 0x0000000Cu; /* 027B969C */ cpu->r[0] = rbrew_read32(cpu->mem, _t36); /* 027B96A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[5]); /* 027B96A4 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B96A4 */ _t38 = _t37 & 0x00000001u; /* 027B96A4 */ if (_t38) goto L_027B96A8; else goto L_027B96D8; L_027B96A8: ; // 0x27b96a8 /* 027B96A8 */ goto L_027B96C0; L_027B96AC: ; // 0x27b96ac /* 027B96AC */ _t39 = cpu->r[28] + 0x0000000Cu; /* 027B96AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027B96B0 */ _t40 = cpu->r[28] + 0x00000010u; /* 027B96B0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t40); /* 027B96B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[5]); /* 027B96B8 */ cpu->r[31] = 0x00000000u; /* 027B96BC */ _t41 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B96BC */ _t42 = _t41 & 0x00000001u; /* 027B96BC */ if (_t42) goto L_027B96C0; else goto L_027B96D8; L_027B96C0: ; // 0x27b96c0 /* 027B96C0 */ _t43 = cpu->r[28] + 0x00000014u; /* 027B96C0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t43); /* 027B96C4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B96C8 */ _t44 = cpu->r[6] + cpu->r[7]; /* 027B96C8 */ rbrew_write32(cpu->mem, _t44, cpu->r[31]); /* 027B96CC */ _t45 = cpu->r[28] + 0x0000000Cu; /* 027B96CC */ cpu->r[8] = rbrew_read32(cpu->mem, _t45); /* 027B96D0 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027B96D4 */ _t46 = cpu->r[28] + 0x0000000Cu; /* 027B96D4 */ rbrew_write32(cpu->mem, _t46, cpu->r[8]); L_027B96D8: ; // 0x27b96d8 /* 027B96D8 */ cpu->r[5] = 0x00000004u; /* 027B96DC */ cpu->r[3] = 0x0000002Cu; /* 027B96E0 */ cpu->r[4] = cpu->r[25]; /* 027B96E4 */ cpu->r[10] = 0x00000000u; /* 027B96E8 */ Gambit_fn_02801AC8(cpu); /* 027B96EC */ cpu->r[31] = cpu->r[3]; /* 027B96EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B96F0 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B96F0 */ _t48 = _t47 & 0x00000001u; /* 027B96F0 */ if (_t48) goto L_027B9860; else goto L_027B96F4; L_027B96F4: ; // 0x27b96f4 /* 027B96F4 */ cpu->r[0] = 0x10110000u; /* 027B96F8 */ cpu->r[9] = 0x10110000u; /* 027B96FC */ cpu->r[0] = cpu->r[0] + 0xFFFFB3B4u; /* 027B9700 */ cpu->r[9] = cpu->r[9] + 0xFFFFB5B4u; /* 027B9704 */ cpu->r[25] = cpu->r[31]; /* 027B9704 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027B9708 */ _t49 = cpu->r[1] + 0x0000000Cu; /* 027B9708 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]); /* 027B970C */ cpu->r[10] = 0x00000001u; /* 027B9710 */ _t50 = cpu->r[1] + 0x00000008u; /* 027B9710 */ rbrew_write32(cpu->mem, _t50, cpu->r[9]); /* 027B9714 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9714 */ _t52 = _t51 & 0x00000001u; /* 027B9714 */ if (_t52) goto L_027B9718; else goto L_027B9728; L_027B9718: ; // 0x27b9718 /* 027B9718 */ cpu->r[3] = 0x0000002Cu; /* 027B971C */ Gambit_fn_02801A78(cpu); /* 027B9720 */ cpu->r[25] = cpu->r[3]; /* 027B9720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027B9724 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9724 */ _t54 = _t53 & 0x00000001u; /* 027B9724 */ if (_t54) goto L_027B9848; else goto L_027B9728; L_027B9728: ; // 0x27b9728 /* 027B9728 */ cpu->r[3] = cpu->r[25]; /* 027B9728 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B972C */ cpu->r[30] = 0x10110000u; /* 027B9730 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9730 */ _t56 = _t55 & 0x00000001u; /* 027B9730 */ if (_t56) goto L_027B9734; else goto L_027B9788; L_027B9734: ; // 0x27b9734 /* 027B9734 */ cpu->r[3] = 0x0000000Cu; /* 027B9738 */ Gambit_fn_02801A78(cpu); /* 027B973C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9740 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9740 */ _t58 = _t57 & 0x00000001u; /* 027B9740 */ if (_t58) goto L_027B9744; else goto L_027B9788; L_027B9744: ; // 0x27b9744 /* 027B9744 */ cpu->r[0] = 0x10110000u; /* 027B9748 */ _t59 = cpu->r[30] + 0x00007399u; /* 027B9748 */ cpu->r[29] = rbrew_read8(cpu->mem, _t59); /* 027B974C */ cpu->r[0] = cpu->r[0] + 0xFFFFB3FCu; /* 027B9750 */ _t60 = cpu->r[25] + 0x00000004u; /* 027B9750 */ rbrew_write32(cpu->mem, _t60, cpu->r[0]); /* 027B9754 */ _t61 = cpu->r[1] + 0x0000000Cu; /* 027B9754 */ cpu->r[5] = rbrew_read32(cpu->mem, _t61); /* 027B9758 */ _t62 = cpu->r[5] + 0x00000014u; /* 027B9758 */ cpu->r[6] = rbrew_read32(cpu->mem, _t62); /* 027B975C */ cpu->ctr = cpu->r[6]; /* 027B9760 */ _t63 = cpu->r[25] + 0x00000000u; /* 027B9760 */ cpu->r[26] = rbrew_read32(cpu->mem, _t63); /* 027B9764 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B9768 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B976C */ _t64 = cpu->r[1] + 0x00000008u; /* 027B976C */ cpu->r[8] = rbrew_read32(cpu->mem, _t64); /* 027B9770 */ _t65 = cpu->r[8] + 0x00000000u; /* 027B9770 */ cpu->r[7] = rbrew_read8(cpu->mem, _t65); /* 027B9774 */ cpu->r[30] = 0x00000000u; /* 027B9778 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]); /* 027B977C */ cpu->r[0] = 0x00080000u; /* 027B9780 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9780 */ _t67 = _t66 & 0x00000001u; /* 027B9780 */ if (_t67) goto L_027B9784; else goto L_027B97E8; L_027B9784: ; // 0x27b9784 /* 027B9784 */ goto L_027B980C; L_027B9788: ; // 0x27b9788 /* 027B9788 */ cpu->r[11] = 0x10110000u; /* 027B978C */ cpu->r[10] = cpu->r[25] + 0x0000000Cu; /* 027B9790 */ cpu->r[11] = cpu->r[11] + 0xFFFFB3CCu; /* 027B9794 */ _t68 = cpu->r[3] + 0x00000000u; /* 027B9794 */ rbrew_write32(cpu->mem, _t68, cpu->r[10]); /* 027B9798 */ cpu->r[0] = 0x00000020u; /* 027B979C */ _t69 = cpu->r[3] + 0x00000004u; /* 027B979C */ rbrew_write32(cpu->mem, _t69, cpu->r[11]); /* 027B97A0 */ _t70 = cpu->r[3] + 0x00000008u; /* 027B97A0 */ rbrew_write32(cpu->mem, _t70, cpu->r[0]); /* 027B97A4 */ cpu->r[0] = 0x10110000u; /* 027B97A8 */ _t71 = cpu->r[30] + 0x00007399u; /* 027B97A8 */ cpu->r[29] = rbrew_read8(cpu->mem, _t71); /* 027B97AC */ cpu->r[0] = cpu->r[0] + 0xFFFFB3FCu; /* 027B97B0 */ _t72 = cpu->r[25] + 0x00000004u; /* 027B97B0 */ rbrew_write32(cpu->mem, _t72, cpu->r[0]); /* 027B97B4 */ _t73 = cpu->r[25] + 0x0000002Bu; /* 027B97B4 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[29]); /* 027B97B8 */ _t74 = cpu->r[1] + 0x0000000Cu; /* 027B97B8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t74); /* 027B97BC */ _t75 = cpu->r[5] + 0x00000014u; /* 027B97BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t75); /* 027B97C0 */ cpu->ctr = cpu->r[6]; /* 027B97C4 */ _t76 = cpu->r[25] + 0x00000000u; /* 027B97C4 */ cpu->r[26] = rbrew_read32(cpu->mem, _t76); /* 027B97C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B97CC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B97D0 */ _t77 = cpu->r[1] + 0x00000008u; /* 027B97D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t77); /* 027B97D4 */ _t78 = cpu->r[8] + 0x00000000u; /* 027B97D4 */ cpu->r[7] = rbrew_read8(cpu->mem, _t78); /* 027B97D8 */ cpu->r[30] = 0x00000000u; /* 027B97DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]); /* 027B97E0 */ cpu->r[0] = 0x00080000u; /* 027B97E4 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B97E4 */ _t80 = _t79 & 0x00000001u; /* 027B97E4 */ if (_t80) goto L_027B9784; else goto L_027B97E8; L_027B97E8: ; // 0x27b97e8 /* 027B97E8 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B97EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B97F0 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027B97F4 */ _t81 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B97F4 */ _t82 = _t81 & 0x00000001u; /* 027B97F4 */ if (_t82) goto L_027B9808; else goto L_027B97F8; L_027B97F8: ; // 0x27b97f8 /* 027B97F8 */ _t83 = cpu->r[8] + 0x00000000u; /* 027B97F8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t83); /* 027B97FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]); /* 027B9800 */ _t84 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9800 */ _t85 = _t84 & 0x00000001u; /* 027B9800 */ if (_t85) goto L_027B9804; else goto L_027B97E8; L_027B9804: ; // 0x27b9804 /* 027B9804 */ goto L_027B980C; L_027B9808: ; // 0x27b9808 /* 027B9808 */ cpu->r[30] = 0x00000000u; L_027B980C: ; // 0x27b980c /* 027B980C */ _t86 = cpu->r[25] + 0x00000008u; /* 027B980C */ cpu->r[11] = rbrew_read32(cpu->mem, _t86); /* 027B9810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]); /* 027B9814 */ _t87 = cpu->r[1] + 0x0000000Cu; /* 027B9814 */ cpu->r[10] = rbrew_read32(cpu->mem, _t87); /* 027B9818 */ _t88 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9818 */ _t89 = _t88 & 0x00000001u; /* 027B9818 */ if (_t89) goto L_027B9820; else goto L_027B981C; L_027B981C: ; // 0x27b981c /* 027B981C */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu; L_027B9820: ; // 0x27b9820 /* 027B9820 */ _t90 = cpu->r[10] + 0x00000014u; /* 027B9820 */ cpu->r[11] = rbrew_read32(cpu->mem, _t90); /* 027B9824 */ cpu->ctr = cpu->r[11]; /* 027B9828 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027B982C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9830 */ _t91 = cpu->r[1] + 0x00000008u; /* 027B9830 */ cpu->r[4] = rbrew_read32(cpu->mem, _t91); /* 027B9834 */ cpu->r[6] = 0x00000000u; /* 027B9838 */ cpu->r[5] = cpu->r[30]; /* 027B983C */ cpu->r[3] = cpu->r[26]; /* 027B9840 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B9844 */ _t92 = cpu->r[26] + cpu->r[30]; /* 027B9844 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[29]); L_027B9848: ; // 0x27b9848 /* 027B9848 */ cpu->r[12] = 0x10110000u; /* 027B984C */ cpu->r[12] = cpu->r[12] + 0xFFFFB414u; /* 027B9850 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027B9854 */ _t93 = cpu->r[31] + 0x00000004u; /* 027B9854 */ rbrew_write32(cpu->mem, _t93, cpu->r[12]); /* 027B9858 */ _t94 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B9858 */ _t95 = _t94 & 0x00000001u; /* 027B9858 */ if (_t95) goto L_027B985C; else goto L_027B9884; L_027B985C: ; // 0x27b985c /* 027B985C */ goto L_027B986C; L_027B9860: ; // 0x27b9860 /* 027B9860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027B9864 */ cpu->r[31] = 0x00000000u; /* 027B9868 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B9868 */ _t97 = _t96 & 0x00000001u; /* 027B9868 */ if (_t97) goto L_027B986C; else goto L_027B9884; L_027B986C: ; // 0x27b986c /* 027B986C */ cpu->r[4] = 0x10110000u; /* 027B9870 */ cpu->r[5] = cpu->r[27]; /* 027B9874 */ cpu->r[4] = cpu->r[4] + 0xFFFFB5B0u; /* 027B9878 */ cpu->r[3] = cpu->r[31]; /* 027B987C */ _t98 = cpu->cr[1] >> (0x00000001u & 31u); /* 027B987C */ _t99 = _t98 & 0x00000001u; /* 027B987C */ if (_t99) goto L_027B9880; // else: addr-0 trap, fall-through L_027B9880: ; // 0x27b9880 /* 027B9880 */ Gambit_fn_0282A718(cpu); L_027B9884: ; // 0x27b9884 /* 027B9884 */ _t100 = cpu->r[28] + 0x00000018u; /* 027B9884 */ cpu->r[12] = rbrew_read32(cpu->mem, _t100); /* 027B9888 */ _t101 = cpu->r[28] + 0x0000001Cu; /* 027B9888 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101); /* 027B988C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027B9890 */ _t102 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9890 */ _t103 = _t102 & 0x00000001u; /* 027B9890 */ if (_t103) goto L_027B9894; else goto L_027B98AC; L_027B9894: ; // 0x27b9894 /* 027B9894 */ _t104 = cpu->r[28] + 0x00000020u; /* 027B9894 */ cpu->r[6] = rbrew_read32(cpu->mem, _t104); /* 027B9898 */ cpu->r[5] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027B989C */ _t105 = cpu->r[5] + cpu->r[6]; /* 027B989C */ rbrew_write32(cpu->mem, _t105, cpu->r[31]); /* 027B98A0 */ _t106 = cpu->r[28] + 0x00000018u; /* 027B98A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t106); /* 027B98A4 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027B98A8 */ _t107 = cpu->r[28] + 0x00000018u; /* 027B98A8 */ rbrew_write32(cpu->mem, _t107, cpu->r[7]); L_027B98AC: ; // 0x27b98ac /* 027B98AC */ /* nop */ /* 027B98B0 */ _t108 = cpu->r[1] + 0x0000003Cu; /* 027B98B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t108); /* 027B98B4 */ cpu->lr = cpu->r[0]; /* 027B98B8 */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027B98BC */ return; } // fn_027B98C0 @ 0x27b98c0 void Gambit_fn_027B98C0(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; L_027B98C0: ; // 0x27b98c0 /* 027B98C0 */ cpu->r[0] = cpu->lr; /* 027B98C4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B98C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B98C4 */ cpu->r[1] = _t0; /* 027B98C8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B98C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B98CC */ _t2 = cpu->r[1] + 0x00000008u; /* 027B98CC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B98D0 */ _t3 = cpu->r[1] + 0x00000010u; /* 027B98D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B98D4 */ _t4 = cpu->r[1] + 0x00000014u; /* 027B98D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B98D8 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B98D8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B98DC */ cpu->r[29] = cpu->r[3]; /* 027B98E0 */ _t6 = cpu->r[29] + 0x00000000u; /* 027B98E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B98E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B98E8 */ cpu->r[28] = 0x00000000u; /* 027B98EC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B98EC */ _t8 = _t7 & 0x00000001u; /* 027B98EC */ if (_t8) goto L_027B98F8; else goto L_027B98F0; L_027B98F0: ; // 0x27b98f0 /* 027B98F0 */ Gambit_fn_027DA140(cpu); /* 027B98F4 */ _t9 = cpu->r[29] + 0x00000000u; /* 027B98F4 */ rbrew_write32(cpu->mem, _t9, cpu->r[28]); L_027B98F8: ; // 0x27b98f8 /* 027B98F8 */ _t10 = cpu->r[29] + 0x000000DCu; /* 027B98F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10); /* 027B98FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B9900 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9900 */ _t12 = _t11 & 0x00000001u; /* 027B9900 */ if (_t12) goto L_027B9984; else goto L_027B9904; L_027B9904: ; // 0x27b9904 /* 027B9904 */ _t13 = cpu->r[29] + 0x000000D8u; /* 027B9904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B9908 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000024u); /* 027B990C */ cpu->r[30] = cpu->r[31] + cpu->r[0]; /* 027B9910 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027B9914 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9914 */ _t15 = _t14 & 0x00000001u; /* 027B9914 */ if (_t15) goto L_027B9950; else goto L_027B9918; L_027B9918: ; // 0x27b9918 /* 027B9918 */ _t16 = cpu->r[31] + 0x00000020u; /* 027B9918 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16); /* 027B991C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9920 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9920 */ _t18 = _t17 & 0x00000001u; /* 027B9920 */ if (_t18) goto L_027B9938; else goto L_027B9924; L_027B9924: ; // 0x27b9924 /* 027B9924 */ _t19 = cpu->r[3] + 0x00000008u; /* 027B9924 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19); /* 027B9928 */ _t20 = cpu->r[7] + 0x0000000Cu; /* 027B9928 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20); /* 027B992C */ cpu->ctr = cpu->r[8]; /* 027B9930 */ cpu->r[4] = 0x00000003u; /* 027B9934 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B9938: ; // 0x27b9938 /* 027B9938 */ cpu->r[31] = cpu->r[31] + 0x00000024u; /* 027B993C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027B9940 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9940 */ _t22 = _t21 & 0x00000001u; /* 027B9940 */ if (_t22) goto L_027B9944; else goto L_027B9918; L_027B9944: ; // 0x27b9944 /* 027B9944 */ _t23 = cpu->r[29] + 0x000000DCu; /* 027B9944 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 027B9948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B994C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B994C */ _t25 = _t24 & 0x00000001u; /* 027B994C */ if (_t25) goto L_027B9984; else goto L_027B9950; L_027B9950: ; // 0x27b9950 /* 027B9950 */ _t26 = cpu->r[29] + 0x000000D8u; /* 027B9950 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26); /* 027B9954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B9958 */ cpu->r[3] = 0x101D0000u; /* 027B995C */ _t27 = cpu->r[3] + 0xFFFF98F0u; /* 027B995C */ cpu->r[3] = rbrew_read32(cpu->mem, _t27); /* 027B9960 */ cpu->r[4] = cpu->r[31]; /* 027B9964 */ Gambit_fn_02826B90(cpu); /* 027B9968 */ _t28 = cpu->r[3] + 0x0000000Cu; /* 027B9968 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28); /* 027B996C */ _t29 = cpu->r[9] + 0x0000003Cu; /* 027B996C */ cpu->r[10] = rbrew_read32(cpu->mem, _t29); /* 027B9970 */ cpu->ctr = cpu->r[10]; /* 027B9974 */ _t30 = cpu->r[29] + 0x000000DCu; /* 027B9974 */ cpu->r[4] = rbrew_read32(cpu->mem, _t30); /* 027B9978 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B997C */ _t31 = cpu->r[29] + 0x000000D8u; /* 027B997C */ rbrew_write32(cpu->mem, _t31, cpu->r[28]); /* 027B9980 */ _t32 = cpu->r[29] + 0x000000DCu; /* 027B9980 */ rbrew_write32(cpu->mem, _t32, cpu->r[28]); L_027B9984: ; // 0x27b9984 /* 027B9984 */ cpu->r[3] = cpu->r[29] + 0x00000018u; /* 027B9988 */ Gambit_fn_02802424(cpu); /* 027B998C */ cpu->r[3] = cpu->r[29] + 0x0000000Cu; /* 027B9990 */ Gambit_fn_02802424(cpu); /* 027B9994 */ _t33 = cpu->r[29] + 0x00000004u; /* 027B9994 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33); /* 027B9998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B999C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B999C */ _t35 = _t34 & 0x00000001u; /* 027B999C */ if (_t35) goto L_027B99B4; else goto L_027B99A0; L_027B99A0: ; // 0x27b99a0 /* 027B99A0 */ _t36 = cpu->r[3] + 0x00000004u; /* 027B99A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36); /* 027B99A4 */ _t37 = cpu->r[12] + 0x0000004Cu; /* 027B99A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37); /* 027B99A8 */ cpu->ctr = cpu->r[0]; /* 027B99AC */ cpu->r[4] = 0x00000003u; /* 027B99B0 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B99B4: ; // 0x27b99b4 /* 027B99B4 */ cpu->r[3] = cpu->r[29] + 0x00000028u; /* 027B99B8 */ _t38 = cpu->r[29] + 0x00000004u; /* 027B99B8 */ rbrew_write32(cpu->mem, _t38, cpu->r[28]); /* 027B99BC */ Gambit_fn_02802424(cpu); /* 027B99C0 */ _t39 = cpu->r[1] + 0x00000008u; /* 027B99C0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t39); /* 027B99C4 */ _t40 = cpu->r[1] + 0x0000000Cu; /* 027B99C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t40); /* 027B99C8 */ _t41 = cpu->r[1] + 0x0000001Cu; /* 027B99C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41); /* 027B99CC */ _t42 = cpu->r[1] + 0x00000010u; /* 027B99CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t42); /* 027B99D0 */ cpu->lr = cpu->r[0]; /* 027B99D4 */ _t43 = cpu->r[1] + 0x00000014u; /* 027B99D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t43); /* 027B99D8 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B99DC */ return; } // fn_027B98C4 @ 0x27b98c4 void Gambit_fn_027B98C4(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; L_027B98C4: ; // 0x27b98c4 /* 027B98C4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B98C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B98C4 */ cpu->r[1] = _t0; /* 027B98C8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B98C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B98CC */ _t2 = cpu->r[1] + 0x00000008u; /* 027B98CC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027B98D0 */ _t3 = cpu->r[1] + 0x00000010u; /* 027B98D0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B98D4 */ _t4 = cpu->r[1] + 0x00000014u; /* 027B98D4 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027B98D8 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027B98D8 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B98DC */ cpu->r[29] = cpu->r[3]; /* 027B98E0 */ _t6 = cpu->r[29] + 0x00000000u; /* 027B98E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B98E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B98E8 */ cpu->r[28] = 0x00000000u; /* 027B98EC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B98EC */ _t8 = _t7 & 0x00000001u; /* 027B98EC */ if (_t8) goto L_027B98F8; else goto L_027B98F0; L_027B98F0: ; // 0x27b98f0 /* 027B98F0 */ Gambit_fn_027DA140(cpu); /* 027B98F4 */ _t9 = cpu->r[29] + 0x00000000u; /* 027B98F4 */ rbrew_write32(cpu->mem, _t9, cpu->r[28]); L_027B98F8: ; // 0x27b98f8 /* 027B98F8 */ _t10 = cpu->r[29] + 0x000000DCu; /* 027B98F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10); /* 027B98FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B9900 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9900 */ _t12 = _t11 & 0x00000001u; /* 027B9900 */ if (_t12) goto L_027B9984; else goto L_027B9904; L_027B9904: ; // 0x27b9904 /* 027B9904 */ _t13 = cpu->r[29] + 0x000000D8u; /* 027B9904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B9908 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x00000024u); /* 027B990C */ cpu->r[30] = cpu->r[31] + cpu->r[0]; /* 027B9910 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027B9914 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9914 */ _t15 = _t14 & 0x00000001u; /* 027B9914 */ if (_t15) goto L_027B9950; else goto L_027B9918; L_027B9918: ; // 0x27b9918 /* 027B9918 */ _t16 = cpu->r[31] + 0x00000020u; /* 027B9918 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16); /* 027B991C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9920 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9920 */ _t18 = _t17 & 0x00000001u; /* 027B9920 */ if (_t18) goto L_027B9938; else goto L_027B9924; L_027B9924: ; // 0x27b9924 /* 027B9924 */ _t19 = cpu->r[3] + 0x00000008u; /* 027B9924 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19); /* 027B9928 */ _t20 = cpu->r[7] + 0x0000000Cu; /* 027B9928 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20); /* 027B992C */ cpu->ctr = cpu->r[8]; /* 027B9930 */ cpu->r[4] = 0x00000003u; /* 027B9934 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B9938: ; // 0x27b9938 /* 027B9938 */ cpu->r[31] = cpu->r[31] + 0x00000024u; /* 027B993C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027B9940 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9940 */ _t22 = _t21 & 0x00000001u; /* 027B9940 */ if (_t22) goto L_027B9944; else goto L_027B9918; L_027B9944: ; // 0x27b9944 /* 027B9944 */ _t23 = cpu->r[29] + 0x000000DCu; /* 027B9944 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 027B9948 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B994C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B994C */ _t25 = _t24 & 0x00000001u; /* 027B994C */ if (_t25) goto L_027B9984; else goto L_027B9950; L_027B9950: ; // 0x27b9950 /* 027B9950 */ _t26 = cpu->r[29] + 0x000000D8u; /* 027B9950 */ cpu->r[12] = rbrew_read32(cpu->mem, _t26); /* 027B9954 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B9958 */ cpu->r[3] = 0x101D0000u; /* 027B995C */ _t27 = cpu->r[3] + 0xFFFF98F0u; /* 027B995C */ cpu->r[3] = rbrew_read32(cpu->mem, _t27); /* 027B9960 */ cpu->r[4] = cpu->r[31]; /* 027B9964 */ Gambit_fn_02826B90(cpu); /* 027B9968 */ _t28 = cpu->r[3] + 0x0000000Cu; /* 027B9968 */ cpu->r[9] = rbrew_read32(cpu->mem, _t28); /* 027B996C */ _t29 = cpu->r[9] + 0x0000003Cu; /* 027B996C */ cpu->r[10] = rbrew_read32(cpu->mem, _t29); /* 027B9970 */ cpu->ctr = cpu->r[10]; /* 027B9974 */ _t30 = cpu->r[29] + 0x000000DCu; /* 027B9974 */ cpu->r[4] = rbrew_read32(cpu->mem, _t30); /* 027B9978 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B997C */ _t31 = cpu->r[29] + 0x000000D8u; /* 027B997C */ rbrew_write32(cpu->mem, _t31, cpu->r[28]); /* 027B9980 */ _t32 = cpu->r[29] + 0x000000DCu; /* 027B9980 */ rbrew_write32(cpu->mem, _t32, cpu->r[28]); L_027B9984: ; // 0x27b9984 /* 027B9984 */ cpu->r[3] = cpu->r[29] + 0x00000018u; /* 027B9988 */ Gambit_fn_02802424(cpu); /* 027B998C */ cpu->r[3] = cpu->r[29] + 0x0000000Cu; /* 027B9990 */ Gambit_fn_02802424(cpu); /* 027B9994 */ _t33 = cpu->r[29] + 0x00000004u; /* 027B9994 */ cpu->r[3] = rbrew_read32(cpu->mem, _t33); /* 027B9998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B999C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B999C */ _t35 = _t34 & 0x00000001u; /* 027B999C */ if (_t35) goto L_027B99B4; else goto L_027B99A0; L_027B99A0: ; // 0x27b99a0 /* 027B99A0 */ _t36 = cpu->r[3] + 0x00000004u; /* 027B99A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t36); /* 027B99A4 */ _t37 = cpu->r[12] + 0x0000004Cu; /* 027B99A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t37); /* 027B99A8 */ cpu->ctr = cpu->r[0]; /* 027B99AC */ cpu->r[4] = 0x00000003u; /* 027B99B0 */ rbrew_call_indirect(cpu, cpu->ctr); L_027B99B4: ; // 0x27b99b4 /* 027B99B4 */ cpu->r[3] = cpu->r[29] + 0x00000028u; /* 027B99B8 */ _t38 = cpu->r[29] + 0x00000004u; /* 027B99B8 */ rbrew_write32(cpu->mem, _t38, cpu->r[28]); /* 027B99BC */ Gambit_fn_02802424(cpu); /* 027B99C0 */ _t39 = cpu->r[1] + 0x00000008u; /* 027B99C0 */ cpu->r[28] = rbrew_read32(cpu->mem, _t39); /* 027B99C4 */ _t40 = cpu->r[1] + 0x0000000Cu; /* 027B99C4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t40); /* 027B99C8 */ _t41 = cpu->r[1] + 0x0000001Cu; /* 027B99C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41); /* 027B99CC */ _t42 = cpu->r[1] + 0x00000010u; /* 027B99CC */ cpu->r[30] = rbrew_read32(cpu->mem, _t42); /* 027B99D0 */ cpu->lr = cpu->r[0]; /* 027B99D4 */ _t43 = cpu->r[1] + 0x00000014u; /* 027B99D4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t43); /* 027B99D8 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B99DC */ return; } // fn_027B99E0 @ 0x27b99e0 void Gambit_fn_027B99E0(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_027B99E0: ; // 0x27b99e0 /* 027B99E0 */ cpu->r[0] = cpu->lr; /* 027B99E4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B99E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B99E4 */ cpu->r[1] = _t0; /* 027B99E8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B99E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B99EC */ _t2 = cpu->r[1] + 0x00000014u; /* 027B99EC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B99F0 */ _t3 = cpu->r[1] + 0x00000010u; /* 027B99F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B99F4 */ cpu->r[31] = cpu->r[3]; /* 027B99F8 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B99F8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B99FC */ _t5 = cpu->r[31] + 0x0000000Cu; /* 027B99FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B9A00 */ cpu->r[30] = 0x00000000u; /* 027B9A04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B9A08 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9A08 */ _t7 = _t6 & 0x00000001u; /* 027B9A08 */ if (_t7) goto L_027B9A0C; else goto L_027B9A48; L_027B9A0C: ; // 0x27b9a0c /* 027B9A0C */ cpu->r[29] = 0x00000000u; L_027B9A10: ; // 0x27b9a10 /* 027B9A10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027B9A14 */ cpu->r[3] = 0x00000000u; /* 027B9A18 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9A18 */ _t9 = _t8 & 0x00000001u; /* 027B9A18 */ if (_t9) goto L_027B9A1C; else goto L_027B9A24; L_027B9A1C: ; // 0x27b9a1c /* 027B9A1C */ _t10 = cpu->r[31] + 0x00000014u; /* 027B9A1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027B9A20 */ _t11 = cpu->r[9] + cpu->r[29]; /* 027B9A20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); L_027B9A24: ; // 0x27b9a24 /* 027B9A24 */ _t12 = cpu->r[3] + 0x00000004u; /* 027B9A24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12); /* 027B9A28 */ _t13 = cpu->r[10] + 0x0000001Cu; /* 027B9A28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13); /* 027B9A2C */ cpu->ctr = cpu->r[11]; /* 027B9A30 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9A34 */ _t14 = cpu->r[31] + 0x0000000Cu; /* 027B9A34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B9A38 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B9A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B9A40 */ cpu->r[29] = cpu->r[29] + 0x00000004u; /* 027B9A44 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9A44 */ _t16 = _t15 & 0x00000001u; /* 027B9A44 */ if (_t16) goto L_027B9A10; else goto L_027B9A48; L_027B9A48: ; // 0x27b9a48 /* 027B9A48 */ _t17 = cpu->r[31] + 0x00000000u; /* 027B9A48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17); /* 027B9A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B9A50 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9A50 */ _t19 = _t18 & 0x00000001u; /* 027B9A50 */ if (_t19) goto L_027B9A80; else goto L_027B9A54; L_027B9A54: ; // 0x27b9a54 /* 027B9A54 */ _t20 = cpu->r[7] + 0x00000014u; /* 027B9A54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20); /* 027B9A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B9A5C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9A5C */ _t22 = _t21 & 0x00000001u; /* 027B9A5C */ if (_t22) goto L_027B9A6C; else goto L_027B9A60; L_027B9A60: ; // 0x27b9a60 /* 027B9A60 */ _t23 = cpu->r[7] + 0x00000014u; /* 027B9A60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23); /* 027B9A64 */ Gambit_fn_028AC290(cpu); /* 027B9A68 */ _t24 = cpu->r[31] + 0x00000000u; /* 027B9A68 */ cpu->r[7] = rbrew_read32(cpu->mem, _t24); L_027B9A6C: ; // 0x27b9a6c /* 027B9A6C */ _t25 = cpu->r[7] + 0x00000018u; /* 027B9A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027B9A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B9A74 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9A74 */ _t27 = _t26 & 0x00000001u; /* 027B9A74 */ if (_t27) goto L_027B9A80; else goto L_027B9A78; L_027B9A78: ; // 0x27b9a78 /* 027B9A78 */ _t28 = cpu->r[7] + 0x00000018u; /* 027B9A78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28); /* 027B9A7C */ Gambit_fn_028AC290(cpu); L_027B9A80: ; // 0x27b9a80 /* 027B9A80 */ _t29 = cpu->r[1] + 0x0000000Cu; /* 027B9A80 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29); /* 027B9A84 */ _t30 = cpu->r[1] + 0x0000001Cu; /* 027B9A84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027B9A88 */ _t31 = cpu->r[1] + 0x00000010u; /* 027B9A88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31); /* 027B9A8C */ cpu->lr = cpu->r[0]; /* 027B9A90 */ _t32 = cpu->r[1] + 0x00000014u; /* 027B9A90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32); /* 027B9A94 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B9A98 */ return; } // fn_027B99E4 @ 0x27b99e4 void Gambit_fn_027B99E4(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_027B99E4: ; // 0x27b99e4 /* 027B99E4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027B99E4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B99E4 */ cpu->r[1] = _t0; /* 027B99E8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B99E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027B99EC */ _t2 = cpu->r[1] + 0x00000014u; /* 027B99EC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B99F0 */ _t3 = cpu->r[1] + 0x00000010u; /* 027B99F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027B99F4 */ cpu->r[31] = cpu->r[3]; /* 027B99F8 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027B99F8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027B99FC */ _t5 = cpu->r[31] + 0x0000000Cu; /* 027B99FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027B9A00 */ cpu->r[30] = 0x00000000u; /* 027B9A04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B9A08 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9A08 */ _t7 = _t6 & 0x00000001u; /* 027B9A08 */ if (_t7) goto L_027B9A0C; else goto L_027B9A48; L_027B9A0C: ; // 0x27b9a0c /* 027B9A0C */ cpu->r[29] = 0x00000000u; L_027B9A10: ; // 0x27b9a10 /* 027B9A10 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027B9A14 */ cpu->r[3] = 0x00000000u; /* 027B9A18 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9A18 */ _t9 = _t8 & 0x00000001u; /* 027B9A18 */ if (_t9) goto L_027B9A1C; else goto L_027B9A24; L_027B9A1C: ; // 0x27b9a1c /* 027B9A1C */ _t10 = cpu->r[31] + 0x00000014u; /* 027B9A1C */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027B9A20 */ _t11 = cpu->r[9] + cpu->r[29]; /* 027B9A20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); L_027B9A24: ; // 0x27b9a24 /* 027B9A24 */ _t12 = cpu->r[3] + 0x00000004u; /* 027B9A24 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12); /* 027B9A28 */ _t13 = cpu->r[10] + 0x0000001Cu; /* 027B9A28 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13); /* 027B9A2C */ cpu->ctr = cpu->r[11]; /* 027B9A30 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9A34 */ _t14 = cpu->r[31] + 0x0000000Cu; /* 027B9A34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B9A38 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027B9A3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027B9A40 */ cpu->r[29] = cpu->r[29] + 0x00000004u; /* 027B9A44 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9A44 */ _t16 = _t15 & 0x00000001u; /* 027B9A44 */ if (_t16) goto L_027B9A10; else goto L_027B9A48; L_027B9A48: ; // 0x27b9a48 /* 027B9A48 */ _t17 = cpu->r[31] + 0x00000000u; /* 027B9A48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17); /* 027B9A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027B9A50 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9A50 */ _t19 = _t18 & 0x00000001u; /* 027B9A50 */ if (_t19) goto L_027B9A80; else goto L_027B9A54; L_027B9A54: ; // 0x27b9a54 /* 027B9A54 */ _t20 = cpu->r[7] + 0x00000014u; /* 027B9A54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20); /* 027B9A58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B9A5C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9A5C */ _t22 = _t21 & 0x00000001u; /* 027B9A5C */ if (_t22) goto L_027B9A6C; else goto L_027B9A60; L_027B9A60: ; // 0x27b9a60 /* 027B9A60 */ _t23 = cpu->r[7] + 0x00000014u; /* 027B9A60 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23); /* 027B9A64 */ Gambit_fn_028AC290(cpu); /* 027B9A68 */ _t24 = cpu->r[31] + 0x00000000u; /* 027B9A68 */ cpu->r[7] = rbrew_read32(cpu->mem, _t24); L_027B9A6C: ; // 0x27b9a6c /* 027B9A6C */ _t25 = cpu->r[7] + 0x00000018u; /* 027B9A6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027B9A70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027B9A74 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9A74 */ _t27 = _t26 & 0x00000001u; /* 027B9A74 */ if (_t27) goto L_027B9A80; else goto L_027B9A78; L_027B9A78: ; // 0x27b9a78 /* 027B9A78 */ _t28 = cpu->r[7] + 0x00000018u; /* 027B9A78 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28); /* 027B9A7C */ Gambit_fn_028AC290(cpu); L_027B9A80: ; // 0x27b9a80 /* 027B9A80 */ _t29 = cpu->r[1] + 0x0000000Cu; /* 027B9A80 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29); /* 027B9A84 */ _t30 = cpu->r[1] + 0x0000001Cu; /* 027B9A84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027B9A88 */ _t31 = cpu->r[1] + 0x00000010u; /* 027B9A88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31); /* 027B9A8C */ cpu->lr = cpu->r[0]; /* 027B9A90 */ _t32 = cpu->r[1] + 0x00000014u; /* 027B9A90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32); /* 027B9A94 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027B9A98 */ return; } // fn_027B9A9C @ 0x27b9a9c void Gambit_fn_027B9A9C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15; L_027B9A9C: ; // 0x27b9a9c /* 027B9A9C */ cpu->r[0] = cpu->lr; /* 027B9AA0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B9AA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9AA0 */ cpu->r[1] = _t0; /* 027B9AA4 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B9AA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B9AA8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B9AA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B9AAC */ _t3 = cpu->r[1] + 0x00000014u; /* 027B9AAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B9AB0 */ _t4 = cpu->r[3] + 0x000000DCu; /* 027B9AB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4); /* 027B9AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B9AB8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9AB8 */ _t6 = _t5 & 0x00000001u; /* 027B9AB8 */ if (_t6) goto L_027B9AE8; else goto L_027B9ABC; L_027B9ABC: ; // 0x27b9abc /* 027B9ABC */ _t7 = cpu->r[3] + 0x000000D8u; /* 027B9ABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t7); /* 027B9AC0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x00000024u); /* 027B9AC4 */ cpu->r[30] = cpu->r[31] + cpu->r[0]; /* 027B9AC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027B9ACC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9ACC */ _t9 = _t8 & 0x00000001u; /* 027B9ACC */ if (_t9) goto L_027B9AE8; else goto L_027B9AD0; L_027B9AD0: ; // 0x27b9ad0 /* 027B9AD0 */ _t10 = cpu->r[31] + 0x00000020u; /* 027B9AD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 027B9AD4 */ cpu->r[4] = 0xFFFFFFFFu; /* 027B9AD8 */ Gambit_fn_028B2FD8(cpu); /* 027B9ADC */ cpu->r[31] = cpu->r[31] + 0x00000024u; /* 027B9AE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027B9AE4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9AE4 */ _t12 = _t11 & 0x00000001u; /* 027B9AE4 */ if (_t12) goto L_027B9AE8; else goto L_027B9AD0; L_027B9AE8: ; // 0x27b9ae8 /* 027B9AE8 */ _t13 = cpu->r[1] + 0x00000014u; /* 027B9AE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B9AEC */ _t14 = cpu->r[1] + 0x00000008u; /* 027B9AEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t14); /* 027B9AF0 */ cpu->lr = cpu->r[0]; /* 027B9AF4 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027B9AF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 027B9AF8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B9AFC */ return; } // fn_027B9AA0 @ 0x27b9aa0 void Gambit_fn_027B9AA0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15; L_027B9AA0: ; // 0x27b9aa0 /* 027B9AA0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B9AA0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9AA0 */ cpu->r[1] = _t0; /* 027B9AA4 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B9AA4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B9AA8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B9AA8 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B9AAC */ _t3 = cpu->r[1] + 0x00000014u; /* 027B9AAC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B9AB0 */ _t4 = cpu->r[3] + 0x000000DCu; /* 027B9AB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4); /* 027B9AB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B9AB8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9AB8 */ _t6 = _t5 & 0x00000001u; /* 027B9AB8 */ if (_t6) goto L_027B9AE8; else goto L_027B9ABC; L_027B9ABC: ; // 0x27b9abc /* 027B9ABC */ _t7 = cpu->r[3] + 0x000000D8u; /* 027B9ABC */ cpu->r[12] = rbrew_read32(cpu->mem, _t7); /* 027B9AC0 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[12] * (int32_t)0x00000024u); /* 027B9AC4 */ cpu->r[30] = cpu->r[31] + cpu->r[0]; /* 027B9AC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027B9ACC */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9ACC */ _t9 = _t8 & 0x00000001u; /* 027B9ACC */ if (_t9) goto L_027B9AE8; else goto L_027B9AD0; L_027B9AD0: ; // 0x27b9ad0 /* 027B9AD0 */ _t10 = cpu->r[31] + 0x00000020u; /* 027B9AD0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 027B9AD4 */ cpu->r[4] = 0xFFFFFFFFu; /* 027B9AD8 */ Gambit_fn_028B2FD8(cpu); /* 027B9ADC */ cpu->r[31] = cpu->r[31] + 0x00000024u; /* 027B9AE0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027B9AE4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9AE4 */ _t12 = _t11 & 0x00000001u; /* 027B9AE4 */ if (_t12) goto L_027B9AE8; else goto L_027B9AD0; L_027B9AE8: ; // 0x27b9ae8 /* 027B9AE8 */ _t13 = cpu->r[1] + 0x00000014u; /* 027B9AE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B9AEC */ _t14 = cpu->r[1] + 0x00000008u; /* 027B9AEC */ cpu->r[30] = rbrew_read32(cpu->mem, _t14); /* 027B9AF0 */ cpu->lr = cpu->r[0]; /* 027B9AF4 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027B9AF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 027B9AF8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B9AFC */ return; } // fn_027B9B00 @ 0x27b9b00 void Gambit_fn_027B9B00(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16; L_027B9B00: ; // 0x27b9b00 /* 027B9B00 */ cpu->r[0] = cpu->lr; /* 027B9B04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B9B04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9B04 */ cpu->r[1] = _t0; /* 027B9B08 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B9B08 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B9B0C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B9B0C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B9B10 */ cpu->r[31] = cpu->r[4]; /* 027B9B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B9B14 */ cpu->r[30] = cpu->r[3]; /* 027B9B18 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B9B18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B9B1C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B1C */ _t5 = _t4 & 0x00000001u; /* 027B9B1C */ if (_t5) goto L_027B9B3C; else goto L_027B9B20; L_027B9B20: ; // 0x27b9b20 /* 027B9B20 */ _t6 = cpu->r[30] + 0x00000000u; /* 027B9B20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B9B24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9B28 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B28 */ _t8 = _t7 & 0x00000001u; /* 027B9B28 */ if (_t8) goto L_027B9B54; else goto L_027B9B2C; L_027B9B2C: ; // 0x27b9b2c /* 027B9B2C */ cpu->r[4] = cpu->r[31]; /* 027B9B30 */ Gambit_fn_027DA460(cpu); /* 027B9B34 */ _t9 = cpu->r[30] + 0x000000D4u; /* 027B9B34 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[31]); /* 027B9B38 */ goto L_027B9B58; L_027B9B3C: ; // 0x27b9b3c /* 027B9B3C */ cpu->r[3] = cpu->r[30]; /* 027B9B40 */ Gambit_fn_027B9A9C(cpu); /* 027B9B44 */ _t10 = cpu->r[30] + 0x00000000u; /* 027B9B44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 027B9B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9B4C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B4C */ _t12 = _t11 & 0x00000001u; /* 027B9B4C */ if (_t12) goto L_027B9B54; else goto L_027B9B50; L_027B9B50: ; // 0x27b9b50 /* 027B9B50 */ Gambit_fn_027DA4BC(cpu); L_027B9B54: ; // 0x27b9b54 /* 027B9B54 */ _t13 = cpu->r[30] + 0x000000D4u; /* 027B9B54 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]); L_027B9B58: ; // 0x27b9b58 /* 027B9B58 */ _t14 = cpu->r[1] + 0x00000014u; /* 027B9B58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B9B5C */ _t15 = cpu->r[1] + 0x00000008u; /* 027B9B5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t15); /* 027B9B60 */ cpu->lr = cpu->r[0]; /* 027B9B64 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027B9B64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027B9B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B9B6C */ return; } // fn_027B9B04 @ 0x27b9b04 void Gambit_fn_027B9B04(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16; L_027B9B04: ; // 0x27b9b04 /* 027B9B04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B9B04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9B04 */ cpu->r[1] = _t0; /* 027B9B08 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B9B08 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B9B0C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B9B0C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B9B10 */ cpu->r[31] = cpu->r[4]; /* 027B9B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B9B14 */ cpu->r[30] = cpu->r[3]; /* 027B9B18 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B9B18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B9B1C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B1C */ _t5 = _t4 & 0x00000001u; /* 027B9B1C */ if (_t5) goto L_027B9B3C; else goto L_027B9B20; L_027B9B20: ; // 0x27b9b20 /* 027B9B20 */ _t6 = cpu->r[30] + 0x00000000u; /* 027B9B20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B9B24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9B28 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B28 */ _t8 = _t7 & 0x00000001u; /* 027B9B28 */ if (_t8) goto L_027B9B54; else goto L_027B9B2C; L_027B9B2C: ; // 0x27b9b2c /* 027B9B2C */ cpu->r[4] = cpu->r[31]; /* 027B9B30 */ Gambit_fn_027DA460(cpu); /* 027B9B34 */ _t9 = cpu->r[30] + 0x000000D4u; /* 027B9B34 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[31]); /* 027B9B38 */ goto L_027B9B58; L_027B9B3C: ; // 0x27b9b3c /* 027B9B3C */ cpu->r[3] = cpu->r[30]; /* 027B9B40 */ Gambit_fn_027B9A9C(cpu); /* 027B9B44 */ _t10 = cpu->r[30] + 0x00000000u; /* 027B9B44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 027B9B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9B4C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B4C */ _t12 = _t11 & 0x00000001u; /* 027B9B4C */ if (_t12) goto L_027B9B54; else goto L_027B9B50; L_027B9B50: ; // 0x27b9b50 /* 027B9B50 */ Gambit_fn_027DA4BC(cpu); L_027B9B54: ; // 0x27b9b54 /* 027B9B54 */ _t13 = cpu->r[30] + 0x000000D4u; /* 027B9B54 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]); L_027B9B58: ; // 0x27b9b58 /* 027B9B58 */ _t14 = cpu->r[1] + 0x00000014u; /* 027B9B58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B9B5C */ _t15 = cpu->r[1] + 0x00000008u; /* 027B9B5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t15); /* 027B9B60 */ cpu->lr = cpu->r[0]; /* 027B9B64 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027B9B64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027B9B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B9B6C */ return; } // fn_027B9B70 @ 0x27b9b70 void Gambit_fn_027B9B70(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39; L_027B9B70: ; // 0x27b9b70 /* 027B9B70 */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027B9B70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9B70 */ cpu->r[1] = _t0; /* 027B9B74 */ /* nop */ /* 027B9B78 */ cpu->r[0] = cpu->lr; /* 027B9B7C */ _t1 = cpu->r[1] + 0x00000034u; /* 027B9B7C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B9B80 */ cpu->r[28] = cpu->r[3]; /* 027B9B84 */ _t2 = cpu->r[28] + 0x000000DCu; /* 027B9B84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t2); /* 027B9B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027B9B8C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B8C */ _t4 = _t3 & 0x00000001u; /* 027B9B8C */ if (_t4) goto L_027B9C4C; else goto L_027B9B90; L_027B9B90: ; // 0x27b9b90 /* 027B9B90 */ _t5 = cpu->r[28] + 0x000000D8u; /* 027B9B90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5); /* 027B9B94 */ cpu->r[8] = (uint32_t)((int32_t)cpu->r[7] * (int32_t)0x00000024u); /* 027B9B98 */ cpu->r[29] = cpu->r[30] + cpu->r[8]; /* 027B9B9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[29]); /* 027B9BA0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9BA0 */ _t7 = _t6 & 0x00000001u; /* 027B9BA0 */ if (_t7) goto L_027B9C4C; else goto L_027B9BA4; L_027B9BA4: ; // 0x27b9ba4 /* 027B9BA4 */ cpu->r[31] = 0x10110000u; /* 027B9BA8 */ _t8 = cpu->r[31] + 0x00007399u; /* 027B9BA8 */ cpu->r[31] = rbrew_read8(cpu->mem, _t8); L_027B9BAC: ; // 0x27b9bac /* 027B9BAC */ _t9 = cpu->r[30] + 0x0000001Cu; /* 027B9BAC */ cpu->r[10] = rbrew_read32(cpu->mem, _t9); /* 027B9BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B9BB4 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9BB4 */ _t11 = _t10 & 0x00000001u; /* 027B9BB4 */ if (_t11) goto L_027B9C40; else goto L_027B9BB8; L_027B9BB8: ; // 0x27b9bb8 /* 027B9BB8 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B9BB8 */ _t13 = _t12 & 0x00000001u; /* 027B9BB8 */ if (_t13) goto L_027B9BBC; else goto L_027B9C20; L_027B9BBC: ; // 0x27b9bbc /* 027B9BBC */ _t14 = cpu->r[30] + 0x00000020u; /* 027B9BBC */ cpu->r[27] = rbrew_read32(cpu->mem, _t14); /* 027B9BC0 */ cpu->r[11] = cpu->r[27]; /* 027B9BC4 */ _t15 = cpu->r[11] + 0x00000000u; /* 027B9BC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15); /* 027B9BC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B9BCC */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9BCC */ _t17 = _t16 & 0x00000001u; /* 027B9BCC */ if (_t17) goto L_027B9BE0; else goto L_027B9BD0; L_027B9BD0: ; // 0x27b9bd0 /* 027B9BD0 */ _t18 = cpu->r[12] + 0x0000000Cu; /* 027B9BD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18); /* 027B9BD4 */ _t19 = cpu->r[11] + 0x00000004u; /* 027B9BD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027B9BD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]); /* 027B9BDC */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9BDC */ _t21 = _t20 & 0x00000001u; /* 027B9BDC */ if (_t21) goto L_027B9C38; else goto L_027B9BE0; L_027B9BE0: ; // 0x27b9be0 /* 027B9BE0 */ _t22 = cpu->r[30] + 0x00000004u; /* 027B9BE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t22); /* 027B9BE4 */ _t23 = cpu->r[12] + 0x00000014u; /* 027B9BE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027B9BE8 */ cpu->ctr = cpu->r[0]; /* 027B9BEC */ _t24 = cpu->r[28] + 0x00000000u; /* 027B9BEC */ cpu->r[26] = rbrew_read32(cpu->mem, _t24); /* 027B9BF0 */ cpu->r[3] = cpu->r[30]; /* 027B9BF4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9BF8 */ _t25 = cpu->r[30] + 0x00000000u; /* 027B9BF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t25); /* 027B9BFC */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027B9C00 */ _t26 = cpu->r[26] + 0x00000018u; /* 027B9C00 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26); /* 027B9C04 */ Gambit_fn_028B484C(cpu); /* 027B9C08 */ _t27 = cpu->r[1] + 0x00000008u; /* 027B9C08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t27); /* 027B9C0C */ _t28 = cpu->r[27] + 0x00000000u; /* 027B9C0C */ rbrew_write32(cpu->mem, _t28, cpu->r[11]); /* 027B9C10 */ _t29 = cpu->r[1] + 0x0000000Cu; /* 027B9C10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027B9C14 */ _t30 = cpu->r[27] + 0x00000004u; /* 027B9C14 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]); /* 027B9C18 */ _t31 = cpu->r[30] + 0x0000001Cu; /* 027B9C18 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31); /* 027B9C1C */ goto L_027B9C38; L_027B9C20: ; // 0x27b9c20 /* 027B9C20 */ _t32 = cpu->r[30] + 0x00000020u; /* 027B9C20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32); /* 027B9C24 */ cpu->r[4] = 0xFFFFFFFFu; /* 027B9C28 */ Gambit_fn_028B2FD8(cpu); /* 027B9C2C */ _t33 = cpu->r[30] + 0x00000000u; /* 027B9C2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t33); /* 027B9C30 */ _t34 = cpu->r[5] + 0x00000000u; /* 027B9C30 */ rbrew_write8(cpu->mem, _t34, (uint8_t)cpu->r[31]); /* 027B9C34 */ _t35 = cpu->r[30] + 0x0000001Cu; /* 027B9C34 */ cpu->r[10] = rbrew_read32(cpu->mem, _t35); L_027B9C38: ; // 0x27b9c38 /* 027B9C38 */ cpu->r[6] = cpu->r[10] + 0xFFFFFFFFu; /* 027B9C3C */ _t36 = cpu->r[30] + 0x0000001Cu; /* 027B9C3C */ rbrew_write32(cpu->mem, _t36, cpu->r[6]); L_027B9C40: ; // 0x27b9c40 /* 027B9C40 */ cpu->r[30] = cpu->r[30] + 0x00000024u; /* 027B9C44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[29]); /* 027B9C48 */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9C48 */ _t38 = _t37 & 0x00000001u; /* 027B9C48 */ if (_t38) goto L_027B9C4C; else goto L_027B9BAC; L_027B9C4C: ; // 0x27b9c4c /* 027B9C4C */ /* nop */ /* 027B9C50 */ _t39 = cpu->r[1] + 0x00000034u; /* 027B9C50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027B9C54 */ cpu->lr = cpu->r[0]; /* 027B9C58 */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027B9C5C */ return; } // fn_027B9C60 @ 0x27b9c60 void Gambit_fn_027B9C60(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027B9C60: ; // 0x27b9c60 /* 027B9C60 */ cpu->r[0] = cpu->lr; /* 027B9C64 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B9C64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9C64 */ cpu->r[1] = _t0; /* 027B9C68 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B9C68 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B9C6C */ _t2 = cpu->r[1] + 0x00000014u; /* 027B9C6C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B9C70 */ _t3 = cpu->r[3] + 0x000000E0u; /* 027B9C70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B9C74 */ _t4 = cpu->r[12] + 0x00000074u; /* 027B9C74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027B9C78 */ cpu->ctr = cpu->r[0]; /* 027B9C7C */ cpu->r[31] = cpu->r[3]; /* 027B9C80 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9C88 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9C88 */ _t6 = _t5 & 0x00000001u; /* 027B9C88 */ if (_t6) goto L_027B9CD0; else goto L_027B9C8C; L_027B9C8C: ; // 0x27b9c8c /* 027B9C8C */ _t7 = cpu->r[31] + 0x000000E0u; /* 027B9C8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7); /* 027B9C90 */ _t8 = cpu->r[12] + 0x0000009Cu; /* 027B9C90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B9C94 */ cpu->ctr = cpu->r[0]; /* 027B9C98 */ cpu->r[3] = cpu->r[31]; /* 027B9C9C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9CA0 */ _t9 = cpu->r[31] + 0x000000E0u; /* 027B9CA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027B9CA4 */ _t10 = cpu->r[12] + 0x000000A4u; /* 027B9CA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B9CA8 */ cpu->ctr = cpu->r[0]; /* 027B9CAC */ cpu->r[3] = cpu->r[31]; /* 027B9CB0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9CB4 */ _t11 = cpu->r[31] + 0x000000E0u; /* 027B9CB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11); /* 027B9CB8 */ _t12 = cpu->r[12] + 0x000000ACu; /* 027B9CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027B9CBC */ cpu->ctr = cpu->r[0]; /* 027B9CC0 */ cpu->r[3] = cpu->r[31]; /* 027B9CC4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9CC8 */ cpu->r[3] = cpu->r[31]; /* 027B9CCC */ Gambit_fn_027B9B70(cpu); L_027B9CD0: ; // 0x27b9cd0 /* 027B9CD0 */ _t13 = cpu->r[1] + 0x00000014u; /* 027B9CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B9CD4 */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027B9CD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027B9CD8 */ cpu->lr = cpu->r[0]; /* 027B9CDC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B9CE0 */ return; } // fn_027B9C64 @ 0x27b9c64 void Gambit_fn_027B9C64(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027B9C64: ; // 0x27b9c64 /* 027B9C64 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B9C64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9C64 */ cpu->r[1] = _t0; /* 027B9C68 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027B9C68 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027B9C6C */ _t2 = cpu->r[1] + 0x00000014u; /* 027B9C6C */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027B9C70 */ _t3 = cpu->r[3] + 0x000000E0u; /* 027B9C70 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027B9C74 */ _t4 = cpu->r[12] + 0x00000074u; /* 027B9C74 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027B9C78 */ cpu->ctr = cpu->r[0]; /* 027B9C7C */ cpu->r[31] = cpu->r[3]; /* 027B9C80 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9C88 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9C88 */ _t6 = _t5 & 0x00000001u; /* 027B9C88 */ if (_t6) goto L_027B9CD0; else goto L_027B9C8C; L_027B9C8C: ; // 0x27b9c8c /* 027B9C8C */ _t7 = cpu->r[31] + 0x000000E0u; /* 027B9C8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t7); /* 027B9C90 */ _t8 = cpu->r[12] + 0x0000009Cu; /* 027B9C90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027B9C94 */ cpu->ctr = cpu->r[0]; /* 027B9C98 */ cpu->r[3] = cpu->r[31]; /* 027B9C9C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9CA0 */ _t9 = cpu->r[31] + 0x000000E0u; /* 027B9CA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027B9CA4 */ _t10 = cpu->r[12] + 0x000000A4u; /* 027B9CA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027B9CA8 */ cpu->ctr = cpu->r[0]; /* 027B9CAC */ cpu->r[3] = cpu->r[31]; /* 027B9CB0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9CB4 */ _t11 = cpu->r[31] + 0x000000E0u; /* 027B9CB4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11); /* 027B9CB8 */ _t12 = cpu->r[12] + 0x000000ACu; /* 027B9CB8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027B9CBC */ cpu->ctr = cpu->r[0]; /* 027B9CC0 */ cpu->r[3] = cpu->r[31]; /* 027B9CC4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9CC8 */ cpu->r[3] = cpu->r[31]; /* 027B9CCC */ Gambit_fn_027B9B70(cpu); L_027B9CD0: ; // 0x27b9cd0 /* 027B9CD0 */ _t13 = cpu->r[1] + 0x00000014u; /* 027B9CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B9CD4 */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027B9CD4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027B9CD8 */ cpu->lr = cpu->r[0]; /* 027B9CDC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B9CE0 */ return; } // fn_027B9CE4 @ 0x27b9ce4 void Gambit_fn_027B9CE4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16; L_027B9B00: ; // 0x27b9b00 /* 027B9B00 */ cpu->r[0] = cpu->lr; /* 027B9B04 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027B9B04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9B04 */ cpu->r[1] = _t0; /* 027B9B08 */ _t1 = cpu->r[1] + 0x00000008u; /* 027B9B08 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027B9B0C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027B9B0C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027B9B10 */ cpu->r[31] = cpu->r[4]; /* 027B9B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B9B14 */ cpu->r[30] = cpu->r[3]; /* 027B9B18 */ _t3 = cpu->r[1] + 0x00000014u; /* 027B9B18 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027B9B1C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B1C */ _t5 = _t4 & 0x00000001u; /* 027B9B1C */ if (_t5) goto L_027B9B3C; else goto L_027B9B20; L_027B9B20: ; // 0x27b9b20 /* 027B9B20 */ _t6 = cpu->r[30] + 0x00000000u; /* 027B9B20 */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027B9B24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9B28 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B28 */ _t8 = _t7 & 0x00000001u; /* 027B9B28 */ if (_t8) goto L_027B9B54; else goto L_027B9B2C; L_027B9B2C: ; // 0x27b9b2c /* 027B9B2C */ cpu->r[4] = cpu->r[31]; /* 027B9B30 */ Gambit_fn_027DA460(cpu); /* 027B9B34 */ _t9 = cpu->r[30] + 0x000000D4u; /* 027B9B34 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[31]); /* 027B9B38 */ goto L_027B9B58; L_027B9B3C: ; // 0x27b9b3c /* 027B9B3C */ cpu->r[3] = cpu->r[30]; /* 027B9B40 */ Gambit_fn_027B9A9C(cpu); /* 027B9B44 */ _t10 = cpu->r[30] + 0x00000000u; /* 027B9B44 */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 027B9B48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9B4C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9B4C */ _t12 = _t11 & 0x00000001u; /* 027B9B4C */ if (_t12) goto L_027B9B54; else goto L_027B9B50; L_027B9B50: ; // 0x27b9b50 /* 027B9B50 */ Gambit_fn_027DA4BC(cpu); L_027B9B54: ; // 0x27b9b54 /* 027B9B54 */ _t13 = cpu->r[30] + 0x000000D4u; /* 027B9B54 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]); L_027B9B58: ; // 0x27b9b58 /* 027B9B58 */ _t14 = cpu->r[1] + 0x00000014u; /* 027B9B58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027B9B5C */ _t15 = cpu->r[1] + 0x00000008u; /* 027B9B5C */ cpu->r[30] = rbrew_read32(cpu->mem, _t15); /* 027B9B60 */ cpu->lr = cpu->r[0]; /* 027B9B64 */ _t16 = cpu->r[1] + 0x0000000Cu; /* 027B9B64 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027B9B68 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027B9B6C */ return; L_027B9CE4: ; // 0x27b9ce4 /* 027B9CE4 */ cpu->r[4] = 0x00000000u; /* 027B9CE8 */ goto L_027B9B00; } // fn_027B9CEC @ 0x27b9cec void Gambit_fn_027B9CEC(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; L_027B9CEC: ; // 0x27b9cec /* 027B9CEC */ _t0 = cpu->r[1] + 0xFFFFFFB0u; /* 027B9CEC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027B9CEC */ cpu->r[1] = _t0; /* 027B9CF0 */ /* nop */ /* 027B9CF4 */ cpu->r[0] = cpu->lr; /* 027B9CF8 */ _t1 = cpu->r[1] + 0x00000054u; /* 027B9CF8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027B9CFC */ cpu->r[29] = cpu->r[5]; /* 027B9D00 */ cpu->r[31] = cpu->r[4]; /* 027B9D04 */ cpu->r[28] = cpu->r[3]; /* 027B9D08 */ _t2 = cpu->r[28] + 0x00000000u; /* 027B9D08 */ cpu->r[4] = rbrew_read32(cpu->mem, _t2); /* 027B9D0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027B9D10 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9D10 */ _t4 = _t3 & 0x00000001u; /* 027B9D10 */ if (_t4) goto L_027B9D40; else goto L_027B9D14; L_027B9D14: ; // 0x27b9d14 /* 027B9D14 */ cpu->r[0] = cpu->r[28] + 0x00000058u; /* 027B9D18 */ _t5 = cpu->r[4] + 0x0000000Cu; /* 027B9D18 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027B9D1C */ _t6 = cpu->r[28] + 0x00000000u; /* 027B9D1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t6); /* 027B9D20 */ cpu->r[5] = cpu->r[28] + 0x00000038u; /* 027B9D24 */ _t7 = cpu->r[12] + 0x00000008u; /* 027B9D24 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]); /* 027B9D28 */ _t8 = cpu->r[28] + 0x00000000u; /* 027B9D28 */ cpu->r[4] = rbrew_read32(cpu->mem, _t8); /* 027B9D2C */ cpu->r[7] = cpu->r[28] + 0x00000048u; /* 027B9D30 */ _t9 = cpu->r[4] + 0x00000004u; /* 027B9D30 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]); /* 027B9D34 */ _t10 = cpu->r[28] + 0x00000000u; /* 027B9D34 */ cpu->r[6] = rbrew_read32(cpu->mem, _t10); /* 027B9D38 */ cpu->r[8] = cpu->r[28] + 0x00000068u; /* 027B9D3C */ _t11 = cpu->r[6] + 0x00000010u; /* 027B9D3C */ rbrew_write32(cpu->mem, _t11, cpu->r[8]); L_027B9D40: ; // 0x27b9d40 /* 027B9D40 */ cpu->r[6] = 0x00000004u; /* 027B9D44 */ cpu->r[5] = cpu->r[29]; /* 027B9D48 */ cpu->r[4] = cpu->r[31]; /* 027B9D4C */ cpu->r[3] = cpu->r[28] + 0x0000000Cu; /* 027B9D50 */ Gambit_fn_028023CC(cpu); /* 027B9D54 */ cpu->r[6] = 0x00000004u; /* 027B9D58 */ cpu->r[5] = cpu->r[29]; /* 027B9D5C */ cpu->r[4] = cpu->r[31]; /* 027B9D60 */ cpu->r[3] = cpu->r[28] + 0x00000018u; /* 027B9D64 */ Gambit_fn_028023CC(cpu); /* 027B9D68 */ _t12 = cpu->r[28] + 0x000000E0u; /* 027B9D68 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12); /* 027B9D6C */ _t13 = cpu->r[5] + 0x0000005Cu; /* 027B9D6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027B9D70 */ cpu->ctr = cpu->r[0]; /* 027B9D74 */ cpu->r[4] = cpu->r[29]; /* 027B9D78 */ cpu->r[3] = cpu->r[28]; /* 027B9D7C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9D80 */ cpu->r[4] = cpu->r[29]; /* 027B9D84 */ cpu->r[5] = 0x00000004u; /* 027B9D88 */ cpu->r[3] = 0x0000002Cu; /* 027B9D8C */ cpu->r[30] = 0x00000000u; /* 027B9D90 */ Gambit_fn_02801AC8(cpu); /* 027B9D94 */ cpu->r[31] = cpu->r[3]; /* 027B9D94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027B9D98 */ cpu->r[26] = 0x10110000u; /* 027B9D9C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9D9C */ _t15 = _t14 & 0x00000001u; /* 027B9D9C */ if (_t15) goto L_027B9FF0; else goto L_027B9DA0; L_027B9DA0: ; // 0x27b9da0 /* 027B9DA0 */ cpu->r[12] = 0x101D0000u; /* 027B9DA4 */ _t16 = cpu->r[12] + 0xFFFFD9B4u; /* 027B9DA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16); /* 027B9DA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B9DAC */ cpu->r[27] = 0x101D0000u; /* 027B9DB0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9DB0 */ _t18 = _t17 & 0x00000001u; /* 027B9DB0 */ if (_t18) goto L_027B9DB4; else goto L_027B9DD4; L_027B9DB4: ; // 0x27b9db4 /* 027B9DB4 */ cpu->r[8] = 0x00000001u; /* 027B9DB8 */ cpu->r[4] = 0x101D0000u; /* 027B9DBC */ cpu->r[3] = cpu->r[27] + 0x00005B6Au; /* 027B9DC0 */ cpu->r[12] = 0x101D0000u; /* 027B9DC4 */ cpu->r[4] = cpu->r[4] + 0xFFFF933Cu; /* 027B9DC8 */ cpu->r[5] = 0x00000041u; /* 027B9DCC */ _t19 = cpu->r[12] + 0xFFFFD9B4u; /* 027B9DCC */ rbrew_write32(cpu->mem, _t19, cpu->r[8]); /* 027B9DD0 */ rbrew_dispatch(cpu, 0x02d0b870u); L_027B9DD4: ; // 0x27b9dd4 /* 027B9DD4 */ cpu->r[11] = 0x101D0000u; /* 027B9DD8 */ _t20 = cpu->r[11] + 0xFFFFD9B0u; /* 027B9DD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t20); /* 027B9DDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027B9DE0 */ cpu->r[25] = 0x101D0000u; /* 027B9DE4 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9DE4 */ _t22 = _t21 & 0x00000001u; /* 027B9DE4 */ if (_t22) goto L_027B9DE8; else goto L_027B9E14; L_027B9DE8: ; // 0x27b9de8 /* 027B9DE8 */ _t23 = cpu->r[25] + 0x000014F0u; /* 027B9DE8 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]); /* 027B9DEC */ cpu->r[9] = 0x00000001u; /* 027B9DF0 */ cpu->r[11] = 0x101D0000u; /* 027B9DF4 */ _t24 = cpu->r[11] + 0xFFFFD9B0u; /* 027B9DF4 */ rbrew_write32(cpu->mem, _t24, cpu->r[9]); /* 027B9DF8 */ Gambit_fn_0282A450(cpu); /* 027B9DFC */ cpu->r[24] = cpu->r[3]; /* 027B9E00 */ Gambit_fn_02836FFC(cpu); /* 027B9E04 */ _t25 = cpu->r[25] + 0x000014F0u; /* 027B9E04 */ cpu->r[10] = rbrew_read32(cpu->mem, _t25); /* 027B9E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B9E0C */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9E0C */ _t27 = _t26 & 0x00000001u; /* 027B9E0C */ if (_t27) goto L_027B9E38; else goto L_027B9E10; L_027B9E10: ; // 0x27b9e10 /* 027B9E10 */ goto L_027B9E54; L_027B9E14: ; // 0x27b9e14 /* 027B9E14 */ _t28 = cpu->r[25] + 0x000014F0u; /* 027B9E14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t28); /* 027B9E18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027B9E1C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9E1C */ _t30 = _t29 & 0x00000001u; /* 027B9E1C */ if (_t30) goto L_027B9E20; else goto L_027B9E60; L_027B9E20: ; // 0x27b9e20 /* 027B9E20 */ Gambit_fn_0282A450(cpu); /* 027B9E24 */ cpu->r[24] = cpu->r[3]; /* 027B9E28 */ Gambit_fn_02836FFC(cpu); /* 027B9E2C */ _t31 = cpu->r[25] + 0x000014F0u; /* 027B9E2C */ cpu->r[10] = rbrew_read32(cpu->mem, _t31); /* 027B9E30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027B9E34 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9E34 */ _t33 = _t32 & 0x00000001u; /* 027B9E34 */ if (_t33) goto L_027B9E38; else goto L_027B9E54; L_027B9E38: ; // 0x27b9e38 /* 027B9E38 */ cpu->r[30] = 0x101D0000u; /* 027B9E3C */ cpu->r[4] = cpu->r[27] + 0x00005B6Au; /* 027B9E40 */ cpu->r[30] = cpu->r[30] + 0x000014F4u; /* 027B9E44 */ cpu->r[5] = 0x00000005u; /* 027B9E48 */ cpu->r[3] = cpu->r[30]; /* 027B9E4C */ Gambit_fn_0282A374(cpu); /* 027B9E50 */ _t34 = cpu->r[25] + 0x000014F0u; /* 027B9E50 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]); L_027B9E54: ; // 0x27b9e54 /* 027B9E54 */ cpu->r[3] = cpu->r[24]; /* 027B9E58 */ Gambit_fn_02837030(cpu); /* 027B9E5C */ _t35 = cpu->r[25] + 0x000014F0u; /* 027B9E5C */ cpu->r[12] = rbrew_read32(cpu->mem, _t35); L_027B9E60: ; // 0x27b9e60 /* 027B9E60 */ cpu->r[10] = 0x10110000u; /* 027B9E64 */ _t36 = cpu->r[12] + 0x00000000u; /* 027B9E64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36); /* 027B9E68 */ cpu->r[10] = cpu->r[10] + 0xFFFFB3B4u; /* 027B9E6C */ cpu->r[30] = 0x00000001u; /* 027B9E70 */ _t37 = cpu->r[1] + 0x00000010u; /* 027B9E70 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]); /* 027B9E74 */ cpu->r[25] = cpu->r[31]; /* 027B9E74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027B9E78 */ _t38 = cpu->r[1] + 0x00000014u; /* 027B9E78 */ rbrew_write32(cpu->mem, _t38, cpu->r[10]); /* 027B9E7C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9E7C */ _t40 = _t39 & 0x00000001u; /* 027B9E7C */ if (_t40) goto L_027B9E80; else goto L_027B9EB4; L_027B9E80: ; // 0x27b9e80 /* 027B9E80 */ cpu->r[3] = 0x0000002Cu; /* 027B9E84 */ Gambit_fn_02801A78(cpu); /* 027B9E88 */ cpu->r[25] = cpu->r[3]; /* 027B9E88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027B9E8C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9E8C */ _t42 = _t41 & 0x00000001u; /* 027B9E8C */ if (_t42) goto L_027B9E90; else goto L_027B9EB4; L_027B9E90: ; // 0x27b9e90 /* 027B9E90 */ cpu->r[0] = 0x10110000u; /* 027B9E94 */ _t43 = cpu->r[26] + 0x00007399u; /* 027B9E94 */ cpu->r[30] = rbrew_read8(cpu->mem, _t43); /* 027B9E98 */ cpu->r[0] = cpu->r[0] + 0xFFFFB414u; /* 027B9E9C */ _t44 = cpu->r[31] + 0x00000004u; /* 027B9E9C */ rbrew_write32(cpu->mem, _t44, cpu->r[0]); /* 027B9EA0 */ _t45 = cpu->r[28] + 0x0000001Cu; /* 027B9EA0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t45); /* 027B9EA4 */ _t46 = cpu->r[28] + 0x00000018u; /* 027B9EA4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t46); /* 027B9EA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[4]); /* 027B9EAC */ _t47 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9EAC */ _t48 = _t47 & 0x00000001u; /* 027B9EAC */ if (_t48) goto L_027B9EB0; else goto L_027BA020; L_027B9EB0: ; // 0x27b9eb0 /* 027B9EB0 */ goto L_027BA008; L_027B9EB4: ; // 0x27b9eb4 /* 027B9EB4 */ cpu->r[3] = cpu->r[25]; /* 027B9EB4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9EB8 */ _t49 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9EB8 */ _t50 = _t49 & 0x00000001u; /* 027B9EB8 */ if (_t50) goto L_027B9EBC; else goto L_027B9F10; L_027B9EBC: ; // 0x27b9ebc /* 027B9EBC */ cpu->r[3] = 0x0000000Cu; /* 027B9EC0 */ Gambit_fn_02801A78(cpu); /* 027B9EC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027B9EC8 */ _t51 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9EC8 */ _t52 = _t51 & 0x00000001u; /* 027B9EC8 */ if (_t52) goto L_027B9ECC; else goto L_027B9F10; L_027B9ECC: ; // 0x27b9ecc /* 027B9ECC */ cpu->r[0] = 0x10110000u; /* 027B9ED0 */ _t53 = cpu->r[26] + 0x00007399u; /* 027B9ED0 */ cpu->r[30] = rbrew_read8(cpu->mem, _t53); /* 027B9ED4 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3FCu; /* 027B9ED8 */ _t54 = cpu->r[25] + 0x00000004u; /* 027B9ED8 */ rbrew_write32(cpu->mem, _t54, cpu->r[0]); /* 027B9EDC */ _t55 = cpu->r[1] + 0x00000014u; /* 027B9EDC */ cpu->r[5] = rbrew_read32(cpu->mem, _t55); /* 027B9EE0 */ _t56 = cpu->r[5] + 0x00000014u; /* 027B9EE0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t56); /* 027B9EE4 */ cpu->ctr = cpu->r[6]; /* 027B9EE8 */ _t57 = cpu->r[25] + 0x00000000u; /* 027B9EE8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t57); /* 027B9EEC */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B9EF0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9EF4 */ _t58 = cpu->r[1] + 0x00000010u; /* 027B9EF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t58); /* 027B9EF8 */ _t59 = cpu->r[6] + 0x00000000u; /* 027B9EF8 */ cpu->r[8] = rbrew_read8(cpu->mem, _t59); /* 027B9EFC */ cpu->r[27] = 0x00000000u; /* 027B9F00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027B9F04 */ cpu->r[8] = 0x00080000u; /* 027B9F08 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9F08 */ _t61 = _t60 & 0x00000001u; /* 027B9F08 */ if (_t61) goto L_027B9F0C; else goto L_027B9F70; L_027B9F0C: ; // 0x27b9f0c /* 027B9F0C */ goto L_027B9F94; L_027B9F10: ; // 0x27b9f10 /* 027B9F10 */ cpu->r[12] = 0x10110000u; /* 027B9F14 */ cpu->r[11] = cpu->r[25] + 0x0000000Cu; /* 027B9F18 */ cpu->r[12] = cpu->r[12] + 0xFFFFB3CCu; /* 027B9F1C */ _t62 = cpu->r[3] + 0x00000000u; /* 027B9F1C */ rbrew_write32(cpu->mem, _t62, cpu->r[11]); /* 027B9F20 */ cpu->r[0] = 0x00000020u; /* 027B9F24 */ _t63 = cpu->r[3] + 0x00000004u; /* 027B9F24 */ rbrew_write32(cpu->mem, _t63, cpu->r[12]); /* 027B9F28 */ _t64 = cpu->r[3] + 0x00000008u; /* 027B9F28 */ rbrew_write32(cpu->mem, _t64, cpu->r[0]); /* 027B9F2C */ cpu->r[0] = 0x10110000u; /* 027B9F30 */ _t65 = cpu->r[26] + 0x00007399u; /* 027B9F30 */ cpu->r[30] = rbrew_read8(cpu->mem, _t65); /* 027B9F34 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3FCu; /* 027B9F38 */ _t66 = cpu->r[25] + 0x00000004u; /* 027B9F38 */ rbrew_write32(cpu->mem, _t66, cpu->r[0]); /* 027B9F3C */ _t67 = cpu->r[25] + 0x0000002Bu; /* 027B9F3C */ rbrew_write8(cpu->mem, _t67, (uint8_t)cpu->r[30]); /* 027B9F40 */ _t68 = cpu->r[1] + 0x00000014u; /* 027B9F40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t68); /* 027B9F44 */ _t69 = cpu->r[5] + 0x00000014u; /* 027B9F44 */ cpu->r[6] = rbrew_read32(cpu->mem, _t69); /* 027B9F48 */ cpu->ctr = cpu->r[6]; /* 027B9F4C */ _t70 = cpu->r[25] + 0x00000000u; /* 027B9F4C */ cpu->r[26] = rbrew_read32(cpu->mem, _t70); /* 027B9F50 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B9F54 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9F58 */ _t71 = cpu->r[1] + 0x00000010u; /* 027B9F58 */ cpu->r[6] = rbrew_read32(cpu->mem, _t71); /* 027B9F5C */ _t72 = cpu->r[6] + 0x00000000u; /* 027B9F5C */ cpu->r[8] = rbrew_read8(cpu->mem, _t72); /* 027B9F60 */ cpu->r[27] = 0x00000000u; /* 027B9F64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027B9F68 */ cpu->r[8] = 0x00080000u; /* 027B9F6C */ _t73 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9F6C */ _t74 = _t73 & 0x00000001u; /* 027B9F6C */ if (_t74) goto L_027B9F0C; else goto L_027B9F70; L_027B9F70: ; // 0x27b9f70 /* 027B9F70 */ cpu->r[27] = cpu->r[27] + 0x00000001u; /* 027B9F74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[8]); /* 027B9F78 */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027B9F7C */ _t75 = cpu->cr[0] >> (0x00000002u & 31u); /* 027B9F7C */ _t76 = _t75 & 0x00000001u; /* 027B9F7C */ if (_t76) goto L_027B9F90; else goto L_027B9F80; L_027B9F80: ; // 0x27b9f80 /* 027B9F80 */ _t77 = cpu->r[6] + 0x00000000u; /* 027B9F80 */ cpu->r[10] = rbrew_read8(cpu->mem, _t77); /* 027B9F84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]); /* 027B9F88 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u); /* 027B9F88 */ _t79 = _t78 & 0x00000001u; /* 027B9F88 */ if (_t79) goto L_027B9F8C; else goto L_027B9F70; L_027B9F8C: ; // 0x27b9f8c /* 027B9F8C */ goto L_027B9F94; L_027B9F90: ; // 0x27b9f90 /* 027B9F90 */ cpu->r[27] = 0x00000000u; L_027B9F94: ; // 0x27b9f94 /* 027B9F94 */ _t80 = cpu->r[25] + 0x00000008u; /* 027B9F94 */ cpu->r[6] = rbrew_read32(cpu->mem, _t80); /* 027B9F98 */ _t81 = cpu->r[1] + 0x00000014u; /* 027B9F98 */ cpu->r[11] = rbrew_read32(cpu->mem, _t81); /* 027B9F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[6]); /* 027B9FA0 */ _t82 = cpu->r[11] + 0x00000014u; /* 027B9FA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82); /* 027B9FA4 */ _t83 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9FA4 */ _t84 = _t83 & 0x00000001u; /* 027B9FA4 */ if (_t84) goto L_027B9FAC; else goto L_027B9FA8; L_027B9FA8: ; // 0x27b9fa8 /* 027B9FA8 */ cpu->r[27] = cpu->r[6] + 0xFFFFFFFFu; L_027B9FAC: ; // 0x27b9fac /* 027B9FAC */ cpu->ctr = cpu->r[12]; /* 027B9FB0 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027B9FB4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027B9FB8 */ _t85 = cpu->r[1] + 0x00000010u; /* 027B9FB8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t85); /* 027B9FBC */ cpu->r[6] = 0x00000000u; /* 027B9FC0 */ cpu->r[5] = cpu->r[27]; /* 027B9FC4 */ cpu->r[3] = cpu->r[26]; /* 027B9FC8 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027B9FCC */ cpu->r[0] = 0x10110000u; /* 027B9FD0 */ _t86 = cpu->r[26] + cpu->r[27]; /* 027B9FD0 */ rbrew_write8(cpu->mem, _t86, (uint8_t)cpu->r[30]); /* 027B9FD4 */ cpu->r[0] = cpu->r[0] + 0xFFFFB414u; /* 027B9FD8 */ _t87 = cpu->r[31] + 0x00000004u; /* 027B9FD8 */ rbrew_write32(cpu->mem, _t87, cpu->r[0]); /* 027B9FDC */ _t88 = cpu->r[28] + 0x0000001Cu; /* 027B9FDC */ cpu->r[4] = rbrew_read32(cpu->mem, _t88); /* 027B9FE0 */ _t89 = cpu->r[28] + 0x00000018u; /* 027B9FE0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t89); /* 027B9FE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[4]); /* 027B9FE8 */ _t90 = cpu->cr[0] >> (0x00000003u & 31u); /* 027B9FE8 */ _t91 = _t90 & 0x00000001u; /* 027B9FE8 */ if (_t91) goto L_027B9FEC; else goto L_027BA020; L_027B9FEC: ; // 0x27b9fec /* 027B9FEC */ goto L_027BA008; L_027B9FF0: ; // 0x27b9ff0 /* 027B9FF0 */ _t92 = cpu->r[28] + 0x00000018u; /* 027B9FF0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t92); /* 027B9FF4 */ cpu->r[31] = 0x00000000u; /* 027B9FF8 */ _t93 = cpu->r[28] + 0x0000001Cu; /* 027B9FF8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t93); /* 027B9FFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[4]); /* 027BA000 */ _t94 = cpu->r[26] + 0x00007399u; /* 027BA000 */ cpu->r[30] = rbrew_read8(cpu->mem, _t94); /* 027BA004 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA004 */ _t96 = _t95 & 0x00000001u; /* 027BA004 */ if (_t96) goto L_027BA008; else goto L_027BA020; L_027BA008: ; // 0x27ba008 /* 027BA008 */ _t97 = cpu->r[28] + 0x00000020u; /* 027BA008 */ cpu->r[7] = rbrew_read32(cpu->mem, _t97); /* 027BA00C */ cpu->r[5] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BA010 */ _t98 = cpu->r[5] + cpu->r[7]; /* 027BA010 */ rbrew_write32(cpu->mem, _t98, cpu->r[31]); /* 027BA014 */ _t99 = cpu->r[28] + 0x00000018u; /* 027BA014 */ cpu->r[9] = rbrew_read32(cpu->mem, _t99); /* 027BA018 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027BA01C */ _t100 = cpu->r[28] + 0x00000018u; /* 027BA01C */ rbrew_write32(cpu->mem, _t100, cpu->r[9]); L_027BA020: ; // 0x27ba020 /* 027BA020 */ cpu->r[3] = cpu->r[29]; /* 027BA020 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA024 */ _t101 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA024 */ _t102 = _t101 & 0x00000001u; /* 027BA024 */ if (_t102) goto L_027BA028; else goto L_027BA034; L_027BA028: ; // 0x27ba028 /* 027BA028 */ cpu->r[3] = 0x101D0000u; /* 027BA02C */ _t103 = cpu->r[3] + 0xFFFF98F0u; /* 027BA02C */ cpu->r[3] = rbrew_read32(cpu->mem, _t103); /* 027BA030 */ Gambit_fn_02826F20(cpu); L_027BA034: ; // 0x27ba034 /* 027BA034 */ _t104 = cpu->r[3] + 0x0000000Cu; /* 027BA034 */ cpu->r[10] = rbrew_read32(cpu->mem, _t104); /* 027BA038 */ _t105 = cpu->r[10] + 0x00000034u; /* 027BA038 */ cpu->r[0] = rbrew_read32(cpu->mem, _t105); /* 027BA03C */ cpu->ctr = cpu->r[0]; /* 027BA040 */ cpu->r[5] = 0x00000004u; /* 027BA044 */ cpu->r[4] = 0x00000048u; /* 027BA048 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA04C */ cpu->r[21] = 0x00000000u; /* 027BA050 */ cpu->r[25] = 0x00000010u; /* 027BA054 */ cpu->r[24] = cpu->r[21]; /* 027BA058 */ cpu->r[23] = 0xFFFFFFFFu; /* 027BA05C */ cpu->r[22] = 0x00000002u; /* 027BA060 */ cpu->r[31] = cpu->r[3]; L_027BA064: ; // 0x27ba064 /* 027BA064 */ cpu->r[26] = cpu->r[31] + cpu->r[21]; /* 027BA064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BA068 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA068 */ _t107 = _t106 & 0x00000001u; /* 027BA068 */ if (_t107) goto L_027BA19C; else goto L_027BA06C; L_027BA06C: ; // 0x27ba06c /* 027BA06C */ cpu->r[10] = 0x10110000u; /* 027BA070 */ cpu->r[0] = 0x10110000u; /* 027BA074 */ cpu->r[20] = cpu->r[26]; /* 027BA078 */ cpu->r[10] = cpu->r[10] + 0xFFFFB3B4u; /* 027BA07C */ cpu->r[0] = cpu->r[0] + 0xFFFFB3A0u; /* 027BA080 */ _t108 = cpu->r[1] + 0x0000000Cu; /* 027BA080 */ rbrew_write32(cpu->mem, _t108, cpu->r[10]); /* 027BA084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u); /* 027BA088 */ _t109 = cpu->r[1] + 0x00000008u; /* 027BA088 */ rbrew_write32(cpu->mem, _t109, cpu->r[0]); /* 027BA08C */ _t110 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA08C */ _t111 = _t110 & 0x00000001u; /* 027BA08C */ if (_t111) goto L_027BA090; else goto L_027BA0A0; L_027BA090: ; // 0x27ba090 /* 027BA090 */ cpu->r[3] = 0x0000001Cu; /* 027BA094 */ Gambit_fn_02801A78(cpu); /* 027BA098 */ cpu->r[20] = cpu->r[3]; /* 027BA098 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u); /* 027BA09C */ _t112 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA09C */ _t113 = _t112 & 0x00000001u; /* 027BA09C */ if (_t113) goto L_027BA194; else goto L_027BA0A0; L_027BA0A0: ; // 0x27ba0a0 /* 027BA0A0 */ cpu->r[18] = cpu->r[20]; /* 027BA0A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u); /* 027BA0A4 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA0A4 */ _t115 = _t114 & 0x00000001u; /* 027BA0A4 */ if (_t115) goto L_027BA0A8; else goto L_027BA0B8; L_027BA0A8: ; // 0x27ba0a8 /* 027BA0A8 */ cpu->r[3] = 0x0000001Cu; /* 027BA0AC */ Gambit_fn_02801A78(cpu); /* 027BA0B0 */ cpu->r[18] = cpu->r[3]; /* 027BA0B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u); /* 027BA0B4 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA0B4 */ _t117 = _t116 & 0x00000001u; /* 027BA0B4 */ if (_t117) goto L_027BA188; else goto L_027BA0B8; L_027BA0B8: ; // 0x27ba0b8 /* 027BA0B8 */ cpu->r[10] = cpu->r[18]; /* 027BA0B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027BA0BC */ _t118 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA0BC */ _t119 = _t118 & 0x00000001u; /* 027BA0BC */ if (_t119) goto L_027BA0C0; else goto L_027BA0D0; L_027BA0C0: ; // 0x27ba0c0 /* 027BA0C0 */ cpu->r[3] = 0x0000000Cu; /* 027BA0C4 */ Gambit_fn_02801A78(cpu); /* 027BA0C8 */ cpu->r[10] = cpu->r[3]; /* 027BA0C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027BA0CC */ _t120 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA0CC */ _t121 = _t120 & 0x00000001u; /* 027BA0CC */ if (_t121) goto L_027BA0EC; else goto L_027BA0D0; L_027BA0D0: ; // 0x27ba0d0 /* 027BA0D0 */ cpu->r[7] = 0x10110000u; /* 027BA0D4 */ _t122 = cpu->r[10] + 0x00000008u; /* 027BA0D4 */ rbrew_write32(cpu->mem, _t122, cpu->r[25]); /* 027BA0D8 */ cpu->r[5] = cpu->r[18] + 0x0000000Cu; /* 027BA0DC */ cpu->r[7] = cpu->r[7] + 0xFFFFB3CCu; /* 027BA0E0 */ _t123 = cpu->r[10] + 0x00000000u; /* 027BA0E0 */ rbrew_write32(cpu->mem, _t123, cpu->r[5]); /* 027BA0E4 */ _t124 = cpu->r[10] + 0x00000004u; /* 027BA0E4 */ rbrew_write32(cpu->mem, _t124, cpu->r[7]); /* 027BA0E8 */ _t125 = cpu->r[18] + 0x0000001Bu; /* 027BA0E8 */ rbrew_write8(cpu->mem, _t125, (uint8_t)cpu->r[30]); L_027BA0EC: ; // 0x27ba0ec /* 027BA0EC */ cpu->r[9] = 0x10110000u; /* 027BA0F0 */ cpu->r[9] = cpu->r[9] + 0xFFFFB45Cu; /* 027BA0F4 */ _t126 = cpu->r[18] + 0x00000004u; /* 027BA0F4 */ rbrew_write32(cpu->mem, _t126, cpu->r[9]); /* 027BA0F8 */ _t127 = cpu->r[1] + 0x0000000Cu; /* 027BA0F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t127); /* 027BA0FC */ _t128 = cpu->r[11] + 0x00000014u; /* 027BA0FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t128); /* 027BA100 */ cpu->ctr = cpu->r[0]; /* 027BA104 */ _t129 = cpu->r[18] + 0x00000000u; /* 027BA104 */ cpu->r[19] = rbrew_read32(cpu->mem, _t129); /* 027BA108 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BA10C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA110 */ _t130 = cpu->r[1] + 0x00000008u; /* 027BA110 */ cpu->r[7] = rbrew_read32(cpu->mem, _t130); /* 027BA114 */ _t131 = cpu->r[7] + 0x00000000u; /* 027BA114 */ cpu->r[0] = rbrew_read8(cpu->mem, _t131); /* 027BA118 */ cpu->r[27] = 0x00000000u; /* 027BA11C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027BA120 */ cpu->r[9] = 0x00080000u; /* 027BA124 */ _t132 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA124 */ _t133 = _t132 & 0x00000001u; /* 027BA124 */ if (_t133) goto L_027BA14C; else goto L_027BA128; L_027BA128: ; // 0x27ba128 /* 027BA128 */ cpu->r[27] = cpu->r[27] + 0x00000001u; /* 027BA12C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[9]); /* 027BA130 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027BA134 */ _t134 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BA134 */ _t135 = _t134 & 0x00000001u; /* 027BA134 */ if (_t135) goto L_027BA148; else goto L_027BA138; L_027BA138: ; // 0x27ba138 /* 027BA138 */ _t136 = cpu->r[7] + 0x00000000u; /* 027BA138 */ cpu->r[5] = rbrew_read8(cpu->mem, _t136); /* 027BA13C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]); /* 027BA140 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA140 */ _t138 = _t137 & 0x00000001u; /* 027BA140 */ if (_t138) goto L_027BA144; else goto L_027BA128; L_027BA144: ; // 0x27ba144 /* 027BA144 */ goto L_027BA14C; L_027BA148: ; // 0x27ba148 /* 027BA148 */ cpu->r[27] = 0x00000000u; L_027BA14C: ; // 0x27ba14c /* 027BA14C */ _t139 = cpu->r[18] + 0x00000008u; /* 027BA14C */ cpu->r[12] = rbrew_read32(cpu->mem, _t139); /* 027BA150 */ _t140 = cpu->r[1] + 0x0000000Cu; /* 027BA150 */ cpu->r[6] = rbrew_read32(cpu->mem, _t140); /* 027BA154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[12]); /* 027BA158 */ _t141 = cpu->r[6] + 0x00000014u; /* 027BA158 */ cpu->r[0] = rbrew_read32(cpu->mem, _t141); /* 027BA15C */ _t142 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA15C */ _t143 = _t142 & 0x00000001u; /* 027BA15C */ if (_t143) goto L_027BA164; else goto L_027BA160; L_027BA160: ; // 0x27ba160 /* 027BA160 */ cpu->r[27] = cpu->r[12] + 0xFFFFFFFFu; L_027BA164: ; // 0x27ba164 /* 027BA164 */ cpu->ctr = cpu->r[0]; /* 027BA168 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BA16C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA170 */ _t144 = cpu->r[1] + 0x00000008u; /* 027BA170 */ cpu->r[4] = rbrew_read32(cpu->mem, _t144); /* 027BA174 */ cpu->r[6] = 0x00000000u; /* 027BA178 */ cpu->r[5] = cpu->r[27]; /* 027BA17C */ cpu->r[3] = cpu->r[19]; /* 027BA180 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BA184 */ _t145 = cpu->r[19] + cpu->r[27]; /* 027BA184 */ rbrew_write8(cpu->mem, _t145, (uint8_t)cpu->r[30]); L_027BA188: ; // 0x27ba188 /* 027BA188 */ cpu->r[0] = 0x10110000u; /* 027BA18C */ cpu->r[0] = cpu->r[0] + 0xFFFFB474u; /* 027BA190 */ _t146 = cpu->r[20] + 0x00000004u; /* 027BA190 */ rbrew_write32(cpu->mem, _t146, cpu->r[0]); L_027BA194: ; // 0x27ba194 /* 027BA194 */ _t147 = cpu->r[26] + 0x00000020u; /* 027BA194 */ rbrew_write32(cpu->mem, _t147, cpu->r[24]); /* 027BA198 */ _t148 = cpu->r[26] + 0x0000001Cu; /* 027BA198 */ rbrew_write32(cpu->mem, _t148, cpu->r[23]); L_027BA19C: ; // 0x27ba19c /* 027BA19C */ cpu->r[22] = cpu->r[22] + 0xFFFFFFFFu; /* 027BA19C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u); /* 027BA1A0 */ cpu->r[21] = cpu->r[21] + 0x00000024u; /* 027BA1A4 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA1A4 */ _t150 = _t149 & 0x00000001u; /* 027BA1A4 */ if (_t150) goto L_027BA1A8; else goto L_027BA064; L_027BA1A8: ; // 0x27ba1a8 /* 027BA1A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BA1AC */ _t151 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA1AC */ _t152 = _t151 & 0x00000001u; /* 027BA1AC */ if (_t152) goto L_027BA1B0; else goto L_027BA1CC; L_027BA1B0: ; // 0x27ba1b0 /* 027BA1B0 */ _t153 = cpu->r[28] + 0x000000D8u; /* 027BA1B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t153); /* 027BA1B4 */ _t154 = cpu->r[28] + 0x000000DCu; /* 027BA1B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t154); /* 027BA1B8 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)0x00000024u); /* 027BA1BC */ cpu->r[30] = cpu->r[31] + cpu->r[0]; /* 027BA1C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027BA1C4 */ _t155 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA1C4 */ _t156 = _t155 & 0x00000001u; /* 027BA1C4 */ if (_t156) goto L_027BA24C; else goto L_027BA1C8; L_027BA1C8: ; // 0x27ba1c8 /* 027BA1C8 */ goto L_027BA1E4; L_027BA1CC: ; // 0x27ba1cc /* 027BA1CC */ cpu->r[9] = 0x00000002u; /* 027BA1D0 */ cpu->r[30] = cpu->r[31] + 0x00000048u; /* 027BA1D4 */ _t157 = cpu->r[28] + 0x000000D8u; /* 027BA1D4 */ rbrew_write32(cpu->mem, _t157, cpu->r[9]); /* 027BA1D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027BA1DC */ _t158 = cpu->r[28] + 0x000000DCu; /* 027BA1DC */ rbrew_write32(cpu->mem, _t158, cpu->r[31]); /* 027BA1E0 */ _t159 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA1E0 */ _t160 = _t159 & 0x00000001u; /* 027BA1E0 */ if (_t160) goto L_027BA24C; else goto L_027BA1E4; L_027BA1E4: ; // 0x27ba1e4 /* 027BA1E4 */ cpu->r[27] = 0x00000000u; L_027BA1E8: ; // 0x27ba1e8 /* 027BA1E8 */ cpu->r[5] = 0x00000004u; /* 027BA1EC */ cpu->r[3] = 0x0000000Cu; /* 027BA1F0 */ cpu->r[4] = cpu->r[29]; /* 027BA1F4 */ cpu->r[26] = cpu->r[31]; /* 027BA1F8 */ Gambit_fn_02801AC8(cpu); /* 027BA1FC */ cpu->r[28] = cpu->r[3]; /* 027BA1FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BA200 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA200 */ _t162 = _t161 & 0x00000001u; /* 027BA200 */ if (_t162) goto L_027BA23C; else goto L_027BA204; L_027BA204: ; // 0x27ba204 /* 027BA204 */ cpu->r[7] = cpu->r[28]; /* 027BA204 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027BA208 */ _t163 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA208 */ _t164 = _t163 & 0x00000001u; /* 027BA208 */ if (_t164) goto L_027BA20C; else goto L_027BA21C; L_027BA20C: ; // 0x27ba20c /* 027BA20C */ cpu->r[3] = 0x0000000Cu; /* 027BA210 */ Gambit_fn_02801A78(cpu); /* 027BA214 */ cpu->r[7] = cpu->r[3]; /* 027BA214 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027BA218 */ _t165 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA218 */ _t166 = _t165 & 0x00000001u; /* 027BA218 */ if (_t166) goto L_027BA230; else goto L_027BA21C; L_027BA21C: ; // 0x27ba21c /* 027BA21C */ cpu->r[10] = 0x10110000u; /* 027BA220 */ _t167 = cpu->r[7] + 0x00000004u; /* 027BA220 */ rbrew_write32(cpu->mem, _t167, cpu->r[27]); /* 027BA224 */ cpu->r[10] = cpu->r[10] + 0xFFFFB49Cu; /* 027BA228 */ _t168 = cpu->r[7] + 0x00000000u; /* 027BA228 */ rbrew_write32(cpu->mem, _t168, cpu->r[27]); /* 027BA22C */ _t169 = cpu->r[7] + 0x00000008u; /* 027BA22C */ rbrew_write32(cpu->mem, _t169, cpu->r[10]); L_027BA230: ; // 0x27ba230 /* 027BA230 */ cpu->r[11] = 0x10110000u; /* 027BA234 */ cpu->r[11] = cpu->r[11] + 0xFFFFB4BCu; /* 027BA238 */ _t170 = cpu->r[28] + 0x00000008u; /* 027BA238 */ rbrew_write32(cpu->mem, _t170, cpu->r[11]); L_027BA23C: ; // 0x27ba23c /* 027BA23C */ cpu->r[31] = cpu->r[31] + 0x00000024u; /* 027BA240 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[30]); /* 027BA244 */ _t171 = cpu->r[26] + 0x00000020u; /* 027BA244 */ rbrew_write32(cpu->mem, _t171, cpu->r[28]); /* 027BA248 */ _t172 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA248 */ _t173 = _t172 & 0x00000001u; /* 027BA248 */ if (_t173) goto L_027BA24C; else goto L_027BA1E8; L_027BA24C: ; // 0x27ba24c /* 027BA24C */ /* nop */ /* 027BA250 */ _t174 = cpu->r[1] + 0x00000054u; /* 027BA250 */ cpu->r[0] = rbrew_read32(cpu->mem, _t174); /* 027BA254 */ cpu->lr = cpu->r[0]; /* 027BA258 */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027BA25C */ return; } // fn_027BA260 @ 0x27ba260 void Gambit_fn_027BA260(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16; L_027BA260: ; // 0x27ba260 /* 027BA260 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027BA260 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA260 */ cpu->r[1] = _t0; /* 027BA264 */ /* nop */ /* 027BA268 */ cpu->r[0] = cpu->lr; /* 027BA26C */ _t1 = cpu->r[1] + 0x00000024u; /* 027BA26C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BA270 */ cpu->r[27] = cpu->r[3]; /* 027BA274 */ _t2 = cpu->r[27] + 0x00000000u; /* 027BA274 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2); /* 027BA278 */ _t3 = cpu->r[3] + 0x00000014u; /* 027BA278 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027BA27C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BA280 */ cpu->r[28] = cpu->r[4]; /* 027BA284 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA284 */ _t5 = _t4 & 0x00000001u; /* 027BA284 */ if (_t5) goto L_027BA290; else goto L_027BA288; L_027BA288: ; // 0x27ba288 /* 027BA288 */ _t6 = cpu->r[12] + 0x00000058u; /* 027BA288 */ rbrew_write32(cpu->mem, _t6, cpu->r[27]); /* 027BA28C */ _t7 = cpu->r[27] + 0x00000000u; /* 027BA28C */ cpu->r[3] = rbrew_read32(cpu->mem, _t7); L_027BA290: ; // 0x27ba290 /* 027BA290 */ _t8 = cpu->r[27] + 0x00000078u; /* 027BA290 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027BA294 */ _t9 = cpu->r[27] + 0x00000080u; /* 027BA294 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9); /* 027BA298 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BA29C */ cpu->r[31] = cpu->r[30] + cpu->r[0]; /* 027BA2A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]); /* 027BA2A4 */ cpu->r[29] = 0x00000000u; /* 027BA2A8 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA2A8 */ _t11 = _t10 & 0x00000001u; /* 027BA2A8 */ if (_t11) goto L_027BA2CC; else goto L_027BA2AC; L_027BA2AC: ; // 0x27ba2ac /* 027BA2AC */ _t12 = cpu->r[30] + 0x00000000u; /* 027BA2AC */ cpu->r[5] = rbrew_read32(cpu->mem, _t12); /* 027BA2B0 */ cpu->r[4] = cpu->r[29]; /* 027BA2B4 */ Gambit_fn_027DA628(cpu); /* 027BA2B8 */ cpu->r[30] = cpu->r[30] + 0x00000004u; /* 027BA2BC */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027BA2C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[31]); /* 027BA2C4 */ _t13 = cpu->r[27] + 0x00000000u; /* 027BA2C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13); /* 027BA2C8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA2C8 */ _t15 = _t14 & 0x00000001u; /* 027BA2C8 */ if (_t15) goto L_027BA2CC; else goto L_027BA2AC; L_027BA2CC: ; // 0x27ba2cc /* 027BA2CC */ cpu->r[4] = cpu->r[28]; /* 027BA2D0 */ Gambit_fn_027DA330(cpu); /* 027BA2D4 */ /* nop */ /* 027BA2D8 */ _t16 = cpu->r[1] + 0x00000024u; /* 027BA2D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027BA2DC */ cpu->lr = cpu->r[0]; /* 027BA2E0 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027BA2E4 */ return; } // fn_027BA2E8 @ 0x27ba2e8 void Gambit_fn_027BA2E8(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; L_027BA2E8: ; // 0x27ba2e8 /* 027BA2E8 */ _t0 = cpu->r[3] + 0x00000000u; /* 027BA2E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027BA2EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA2F0 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA2F0 */ _t2 = _t1 & 0x00000001u; /* 027BA2F0 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA2F0 */ goto L_027BA2F4; L_027BA2F4: ; // 0x27ba2f4 /* 027BA2F4 */ goto L_027DA5A0; L_027DA5A0: ; // 0x27da5a0 /* 027DA5A0 */ cpu->r[0] = cpu->lr; /* 027DA5A4 */ _t3 = cpu->r[1] + 0xFFFFFFE8u; /* 027DA5A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[1]); /* 027DA5A4 */ cpu->r[1] = _t3; /* 027DA5A8 */ _t4 = cpu->r[1] + 0x00000010u; /* 027DA5A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027DA5AC */ _t5 = cpu->r[1] + 0x0000000Cu; /* 027DA5AC */ rbrew_write32(cpu->mem, _t5, cpu->r[29]); /* 027DA5B0 */ _t6 = cpu->r[1] + 0x00000014u; /* 027DA5B0 */ rbrew_write32(cpu->mem, _t6, cpu->r[31]); /* 027DA5B4 */ _t7 = cpu->r[1] + 0x0000001Cu; /* 027DA5B4 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027DA5B8 */ cpu->r[29] = cpu->r[3]; /* 027DA5BC */ _t8 = cpu->r[29] + 0x00000014u; /* 027DA5BC */ cpu->r[3] = rbrew_read32(cpu->mem, _t8); /* 027DA5C0 */ cpu->r[31] = cpu->r[5]; /* 027DA5C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027DA5C8 */ cpu->r[30] = cpu->r[4]; /* 027DA5CC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA5CC */ _t10 = _t9 & 0x00000001u; /* 027DA5CC */ if (_t10) goto L_027DA5E8; else goto L_027DA5D0; L_027DA5D0: ; // 0x27da5d0 /* 027DA5D0 */ _t11 = cpu->r[29] + 0x00000028u; /* 027DA5D0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t11); /* 027DA5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027DA5D8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA5D8 */ _t13 = _t12 & 0x00000001u; /* 027DA5D8 */ if (_t13) goto L_027DA5E8; else goto L_027DA5DC; L_027DA5DC: ; // 0x27da5dc /* 027DA5DC */ cpu->r[5] = cpu->r[31]; /* 027DA5E0 */ cpu->r[4] = cpu->r[30]; /* 027DA5E4 */ Gambit_fn_028AC374(cpu); L_027DA5E8: ; // 0x27da5e8 /* 027DA5E8 */ _t14 = cpu->r[29] + 0x00000018u; /* 027DA5E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14); /* 027DA5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027DA5F0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA5F0 */ _t16 = _t15 & 0x00000001u; /* 027DA5F0 */ if (_t16) goto L_027DA60C; else goto L_027DA5F4; L_027DA5F4: ; // 0x27da5f4 /* 027DA5F4 */ _t17 = cpu->r[29] + 0x00000029u; /* 027DA5F4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t17); /* 027DA5F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027DA5FC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA5FC */ _t19 = _t18 & 0x00000001u; /* 027DA5FC */ if (_t19) goto L_027DA60C; else goto L_027DA600; L_027DA600: ; // 0x27da600 /* 027DA600 */ cpu->r[5] = cpu->r[31]; /* 027DA604 */ cpu->r[4] = cpu->r[30]; /* 027DA608 */ Gambit_fn_028AC374(cpu); L_027DA60C: ; // 0x27da60c /* 027DA60C */ _t20 = cpu->r[1] + 0x0000000Cu; /* 027DA60C */ cpu->r[29] = rbrew_read32(cpu->mem, _t20); /* 027DA610 */ _t21 = cpu->r[1] + 0x0000001Cu; /* 027DA610 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027DA614 */ _t22 = cpu->r[1] + 0x00000010u; /* 027DA614 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22); /* 027DA618 */ cpu->lr = cpu->r[0]; /* 027DA61C */ _t23 = cpu->r[1] + 0x00000014u; /* 027DA61C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 027DA620 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027DA624 */ return; } // fn_027BA2F8 @ 0x27ba2f8 void Gambit_fn_027BA2F8(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; L_027BA2F8: ; // 0x27ba2f8 /* 027BA2F8 */ _t0 = cpu->r[1] + 0xFFFFFF98u; /* 027BA2F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA2F8 */ cpu->r[1] = _t0; /* 027BA2FC */ cpu->r[0] = cpu->lr; /* 027BA300 */ /* nop */ /* 027BA304 */ _t1 = cpu->r[1] + 0x0000006Cu; /* 027BA304 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BA308 */ cpu->r[29] = cpu->r[3]; /* 027BA30C */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BA310 */ _t2 = cpu->r[1] + 0x00000008u; /* 027BA310 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027BA314 */ cpu->r[0] = 0x10110000u; /* 027BA318 */ cpu->r[0] = cpu->r[0] + 0xFFFFB444u; /* 027BA31C */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027BA31C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BA320 */ cpu->r[7] = 0x00000040u; /* 027BA324 */ _t4 = cpu->r[1] + 0x00000010u; /* 027BA324 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]); /* 027BA328 */ cpu->r[12] = 0x10110000u; /* 027BA32C */ _t5 = cpu->r[12] + 0x00007399u; /* 027BA32C */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BA330 */ _t6 = cpu->r[29] + 0x0000000Cu; /* 027BA330 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027BA334 */ cpu->r[28] = 0x00000000u; /* 027BA338 */ _t7 = cpu->r[1] + 0x00000053u; /* 027BA338 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BA33C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[9]); /* 027BA340 */ _t8 = cpu->r[1] + 0x00000014u; /* 027BA340 */ rbrew_write8(cpu->mem, _t8, (uint8_t)cpu->r[12]); /* 027BA344 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA344 */ _t10 = _t9 & 0x00000001u; /* 027BA344 */ if (_t10) goto L_027BA348; else goto L_027BA444; L_027BA348: ; // 0x27ba348 /* 027BA348 */ cpu->r[27] = 0x00000000u; L_027BA34C: ; // 0x27ba34c /* 027BA34C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[9]); /* 027BA350 */ cpu->r[3] = 0x00000000u; /* 027BA354 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA354 */ _t12 = _t11 & 0x00000001u; /* 027BA354 */ if (_t12) goto L_027BA358; else goto L_027BA360; L_027BA358: ; // 0x27ba358 /* 027BA358 */ _t13 = cpu->r[29] + 0x00000014u; /* 027BA358 */ cpu->r[9] = rbrew_read32(cpu->mem, _t13); /* 027BA35C */ _t14 = cpu->r[9] + cpu->r[27]; /* 027BA35C */ cpu->r[3] = rbrew_read32(cpu->mem, _t14); L_027BA360: ; // 0x27ba360 /* 027BA360 */ _t15 = cpu->r[3] + 0x00000004u; /* 027BA360 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027BA364 */ _t16 = cpu->r[10] + 0x00000024u; /* 027BA364 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027BA368 */ cpu->ctr = cpu->r[0]; /* 027BA36C */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BA370 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA378 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA378 */ _t18 = _t17 & 0x00000001u; /* 027BA378 */ if (_t18) goto L_027BA3F8; else goto L_027BA37C; L_027BA37C: ; // 0x27ba37c /* 027BA37C */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027BA37C */ cpu->r[12] = rbrew_read32(cpu->mem, _t19); /* 027BA380 */ _t20 = cpu->r[12] + 0x00000014u; /* 027BA380 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20); /* 027BA384 */ _t21 = cpu->r[29] + 0x000000E0u; /* 027BA384 */ cpu->r[11] = rbrew_read32(cpu->mem, _t21); /* 027BA388 */ cpu->ctr = cpu->r[6]; /* 027BA38C */ cpu->r[31] = cpu->r[11] + 0x000000B0u; /* 027BA390 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BA394 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA398 */ _t22 = cpu->r[29] + 0x0000000Cu; /* 027BA398 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22); /* 027BA39C */ _t23 = cpu->r[1] + 0x00000008u; /* 027BA39C */ cpu->r[30] = rbrew_read32(cpu->mem, _t23); /* 027BA3A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[7]); /* 027BA3A4 */ cpu->r[3] = 0x00000000u; /* 027BA3A8 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA3A8 */ _t25 = _t24 & 0x00000001u; /* 027BA3A8 */ if (_t25) goto L_027BA3AC; else goto L_027BA3B4; L_027BA3AC: ; // 0x27ba3ac /* 027BA3AC */ _t26 = cpu->r[29] + 0x00000014u; /* 027BA3AC */ cpu->r[9] = rbrew_read32(cpu->mem, _t26); /* 027BA3B0 */ _t27 = cpu->r[9] + cpu->r[27]; /* 027BA3B0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t27); L_027BA3B4: ; // 0x27ba3b4 /* 027BA3B4 */ _t28 = cpu->r[3] + 0x00000004u; /* 027BA3B4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28); /* 027BA3B8 */ _t29 = cpu->r[10] + 0x00000044u; /* 027BA3B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027BA3BC */ cpu->ctr = cpu->r[0]; /* 027BA3C0 */ _t30 = cpu->r[31] + 0x00000004u; /* 027BA3C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t30); /* 027BA3C4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA3C8 */ cpu->ctr = cpu->r[31]; /* 027BA3CC */ cpu->r[5] = cpu->r[3]; /* 027BA3D0 */ cpu->r[6] = cpu->r[28]; /* 027BA3D4 */ cpu->r[4] = cpu->r[30]; /* 027BA3D8 */ cpu->r[3] = cpu->r[29]; /* 027BA3DC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA3E0 */ _t31 = cpu->r[29] + 0x0000000Cu; /* 027BA3E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31); /* 027BA3E4 */ cpu->r[28] = cpu->r[28] + 0x00000001u; /* 027BA3E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[9]); /* 027BA3EC */ cpu->r[27] = cpu->r[27] + 0x00000004u; /* 027BA3F0 */ _t32 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA3F0 */ _t33 = _t32 & 0x00000001u; /* 027BA3F0 */ if (_t33) goto L_027BA34C; else goto L_027BA3F4; L_027BA3F4: ; // 0x27ba3f4 /* 027BA3F4 */ goto L_027BA444; L_027BA3F8: ; // 0x27ba3f8 /* 027BA3F8 */ _t34 = cpu->r[29] + 0x0000000Cu; /* 027BA3F8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34); /* 027BA3FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], cpu->r[6]); /* 027BA400 */ cpu->r[3] = 0x00000000u; /* 027BA404 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA404 */ _t36 = _t35 & 0x00000001u; /* 027BA404 */ if (_t36) goto L_027BA408; else goto L_027BA410; L_027BA408: ; // 0x27ba408 /* 027BA408 */ _t37 = cpu->r[29] + 0x00000014u; /* 027BA408 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37); /* 027BA40C */ _t38 = cpu->r[7] + cpu->r[27]; /* 027BA40C */ cpu->r[3] = rbrew_read32(cpu->mem, _t38); L_027BA410: ; // 0x27ba410 /* 027BA410 */ _t39 = cpu->r[3] + 0x00000004u; /* 027BA410 */ cpu->r[8] = rbrew_read32(cpu->mem, _t39); /* 027BA414 */ _t40 = cpu->r[8] + 0x0000003Cu; /* 027BA414 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027BA418 */ cpu->ctr = cpu->r[0]; /* 027BA41C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA420 */ cpu->r[4] = cpu->r[3]; /* 027BA424 */ cpu->r[3] = cpu->r[29]; /* 027BA428 */ cpu->r[5] = cpu->r[28]; /* 027BA42C */ Gambit_fn_027BA2E8(cpu); /* 027BA430 */ _t41 = cpu->r[29] + 0x0000000Cu; /* 027BA430 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41); /* 027BA434 */ cpu->r[28] = cpu->r[28] + 0x00000001u; /* 027BA438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[9]); /* 027BA43C */ cpu->r[27] = cpu->r[27] + 0x00000004u; /* 027BA440 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA440 */ _t43 = _t42 & 0x00000001u; /* 027BA440 */ if (_t43) goto L_027BA34C; else goto L_027BA444; L_027BA444: ; // 0x27ba444 /* 027BA444 */ _t44 = cpu->r[29] + 0x00000004u; /* 027BA444 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44); /* 027BA448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027BA44C */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA44C */ _t46 = _t45 & 0x00000001u; /* 027BA44C */ if (_t46) goto L_027BA45C; else goto L_027BA450; L_027BA450: ; // 0x27ba450 /* 027BA450 */ _t47 = cpu->r[11] + 0x00000018u; /* 027BA450 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47); /* 027BA454 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027BA458 */ _t48 = cpu->r[11] + 0x00000018u; /* 027BA458 */ rbrew_write32(cpu->mem, _t48, cpu->r[12]); L_027BA45C: ; // 0x27ba45c /* 027BA45C */ /* nop */ /* 027BA460 */ _t49 = cpu->r[1] + 0x0000006Cu; /* 027BA460 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49); /* 027BA464 */ cpu->lr = cpu->r[0]; /* 027BA468 */ cpu->r[1] = cpu->r[1] + 0x00000068u; /* 027BA46C */ return; } // fn_027BA470 @ 0x27ba470 void Gambit_fn_027BA470(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4; L_027BA470: ; // 0x27ba470 /* 027BA470 */ _t0 = cpu->r[3] + 0x00000000u; /* 027BA470 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027BA474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA478 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA478 */ _t2 = _t1 & 0x00000001u; /* 027BA478 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA478 */ goto L_027BA47C; L_027BA47C: ; // 0x27ba47c /* 027BA47C */ _t3 = cpu->r[3] + 0x00000000u; /* 027BA47C */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027BA480 */ _t4 = cpu->r[12] + 0x00000094u; /* 027BA480 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027BA484 */ cpu->ctr = cpu->r[0]; /* 027BA488 */ rbrew_dispatch(cpu, cpu->ctr); return; } // fn_027BA48C @ 0x27ba48c void Gambit_fn_027BA48C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027BA48C: ; // 0x27ba48c /* 027BA48C */ _t0 = cpu->r[3] + 0x00000000u; /* 027BA48C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027BA490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA494 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA494 */ _t2 = _t1 & 0x00000001u; /* 027BA494 */ if (_t2) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA494 */ goto L_027BA498; L_027BA498: ; // 0x27ba498 /* 027BA498 */ goto L_027DA504; L_027DA504: ; // 0x27da504 /* 027DA504 */ cpu->r[0] = cpu->lr; /* 027DA508 */ _t3 = cpu->r[1] + 0xFFFFFFE8u; /* 027DA508 */ rbrew_write32(cpu->mem, _t3, cpu->r[1]); /* 027DA508 */ cpu->r[1] = _t3; /* 027DA50C */ _t4 = cpu->r[1] + 0x0000000Cu; /* 027DA50C */ rbrew_write32(cpu->mem, _t4, cpu->r[29]); /* 027DA510 */ _t5 = cpu->r[1] + 0x00000010u; /* 027DA510 */ rbrew_write32(cpu->mem, _t5, cpu->r[30]); /* 027DA514 */ _t6 = cpu->r[1] + 0x00000008u; /* 027DA514 */ rbrew_write32(cpu->mem, _t6, cpu->r[28]); /* 027DA518 */ _t7 = cpu->r[1] + 0x00000014u; /* 027DA518 */ rbrew_write32(cpu->mem, _t7, cpu->r[31]); /* 027DA51C */ _t8 = cpu->r[1] + 0x0000001Cu; /* 027DA51C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027DA520 */ cpu->r[29] = cpu->r[3]; /* 027DA524 */ _t9 = cpu->r[29] + 0x00000014u; /* 027DA524 */ cpu->r[3] = rbrew_read32(cpu->mem, _t9); /* 027DA528 */ cpu->r[30] = cpu->r[4]; /* 027DA52C */ cpu->r[31] = cpu->r[5]; /* 027DA530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027DA534 */ cpu->r[28] = cpu->r[6]; /* 027DA538 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA538 */ _t11 = _t10 & 0x00000001u; /* 027DA538 */ if (_t11) goto L_027DA558; else goto L_027DA53C; L_027DA53C: ; // 0x27da53c /* 027DA53C */ _t12 = cpu->r[29] + 0x00000028u; /* 027DA53C */ cpu->r[0] = rbrew_read8(cpu->mem, _t12); /* 027DA540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027DA544 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA544 */ _t14 = _t13 & 0x00000001u; /* 027DA544 */ if (_t14) goto L_027DA558; else goto L_027DA548; L_027DA548: ; // 0x27da548 /* 027DA548 */ cpu->r[6] = cpu->r[28]; /* 027DA54C */ cpu->r[5] = cpu->r[31]; /* 027DA550 */ cpu->r[4] = cpu->r[30]; /* 027DA554 */ Gambit_fn_028AC35C(cpu); L_027DA558: ; // 0x27da558 /* 027DA558 */ _t15 = cpu->r[29] + 0x00000018u; /* 027DA558 */ cpu->r[3] = rbrew_read32(cpu->mem, _t15); /* 027DA55C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027DA560 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA560 */ _t17 = _t16 & 0x00000001u; /* 027DA560 */ if (_t17) goto L_027DA580; else goto L_027DA564; L_027DA564: ; // 0x27da564 /* 027DA564 */ _t18 = cpu->r[29] + 0x00000029u; /* 027DA564 */ cpu->r[0] = rbrew_read8(cpu->mem, _t18); /* 027DA568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027DA56C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027DA56C */ _t20 = _t19 & 0x00000001u; /* 027DA56C */ if (_t20) goto L_027DA580; else goto L_027DA570; L_027DA570: ; // 0x27da570 /* 027DA570 */ cpu->r[6] = cpu->r[28]; /* 027DA574 */ cpu->r[5] = cpu->r[31]; /* 027DA578 */ cpu->r[4] = cpu->r[30]; /* 027DA57C */ Gambit_fn_028AC35C(cpu); L_027DA580: ; // 0x27da580 /* 027DA580 */ _t21 = cpu->r[1] + 0x00000008u; /* 027DA580 */ cpu->r[28] = rbrew_read32(cpu->mem, _t21); /* 027DA584 */ _t22 = cpu->r[1] + 0x0000000Cu; /* 027DA584 */ cpu->r[29] = rbrew_read32(cpu->mem, _t22); /* 027DA588 */ _t23 = cpu->r[1] + 0x0000001Cu; /* 027DA588 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027DA58C */ _t24 = cpu->r[1] + 0x00000010u; /* 027DA58C */ cpu->r[30] = rbrew_read32(cpu->mem, _t24); /* 027DA590 */ cpu->lr = cpu->r[0]; /* 027DA594 */ _t25 = cpu->r[1] + 0x00000014u; /* 027DA594 */ cpu->r[31] = rbrew_read32(cpu->mem, _t25); /* 027DA598 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027DA59C */ return; } // fn_027BA4DC @ 0x27ba4dc void Gambit_fn_027BA4DC(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; L_027BA4DC: ; // 0x27ba4dc /* 027BA4DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BA4DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA4DC */ cpu->r[1] = _t0; /* 027BA4E0 */ _t1 = cpu->r[1] + 0x00000008u; /* 027BA4E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027BA4E4 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BA4E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027BA4E8 */ cpu->r[28] = cpu->r[3]; /* 027BA4EC */ _t3 = cpu->r[1] + 0x00000010u; /* 027BA4EC */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027BA4F0 */ _t4 = cpu->r[1] + 0x00000014u; /* 027BA4F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027BA4F4 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027BA4F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BA4F8 */ cpu->r[29] = cpu->r[4]; /* 027BA4F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BA4FC */ cpu->r[30] = cpu->r[5]; /* 027BA500 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA500 */ _t7 = _t6 & 0x00000001u; /* 027BA500 */ if (_t7) goto L_027BA53C; else goto L_027BA504; L_027BA504: ; // 0x27ba504 /* 027BA504 */ _t8 = cpu->r[28] + 0x0000000Cu; /* 027BA504 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027BA508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]); /* 027BA50C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA50C */ _t10 = _t9 & 0x00000001u; /* 027BA50C */ if (_t10) goto L_027BA510; else goto L_027BA53C; L_027BA510: ; // 0x27ba510 /* 027BA510 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BA514 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA514 */ _t12 = _t11 & 0x00000001u; /* 027BA514 */ if (_t12) goto L_027BA53C; else goto L_027BA518; L_027BA518: ; // 0x27ba518 /* 027BA518 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]); /* 027BA51C */ cpu->r[10] = 0x00000000u; /* 027BA520 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA520 */ _t14 = _t13 & 0x00000001u; /* 027BA520 */ if (_t14) goto L_027BA524; else goto L_027BA530; L_027BA524: ; // 0x27ba524 /* 027BA524 */ _t15 = cpu->r[28] + 0x00000014u; /* 027BA524 */ cpu->r[12] = rbrew_read32(cpu->mem, _t15); /* 027BA528 */ cpu->r[11] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BA52C */ _t16 = cpu->r[11] + cpu->r[12]; /* 027BA52C */ cpu->r[10] = rbrew_read32(cpu->mem, _t16); L_027BA530: ; // 0x27ba530 /* 027BA530 */ _t17 = cpu->r[10] + 0x00000000u; /* 027BA530 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17); /* 027BA534 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]); /* 027BA538 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA538 */ _t19 = _t18 & 0x00000001u; /* 027BA538 */ if (_t19) goto L_027BA564; else goto L_027BA53C; L_027BA53C: ; // 0x27ba53c /* 027BA53C */ _t20 = cpu->r[1] + 0x00000008u; /* 027BA53C */ cpu->r[28] = rbrew_read32(cpu->mem, _t20); /* 027BA540 */ _t21 = cpu->r[1] + 0x0000000Cu; /* 027BA540 */ cpu->r[29] = rbrew_read32(cpu->mem, _t21); /* 027BA544 */ _t22 = cpu->r[1] + 0x0000001Cu; /* 027BA544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027BA548 */ cpu->r[3] = 0x10110000u; /* 027BA54C */ _t23 = cpu->r[1] + 0x00000014u; /* 027BA54C */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 027BA550 */ cpu->lr = cpu->r[0]; /* 027BA554 */ _t24 = cpu->r[1] + 0x00000010u; /* 027BA554 */ cpu->r[30] = rbrew_read32(cpu->mem, _t24); /* 027BA558 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BA55C */ cpu->r[3] = cpu->r[3] + 0xFFFFB5C9u; /* 027BA560 */ return; L_027BA564: ; // 0x27ba564 /* 027BA564 */ cpu->r[9] = 0x101F0000u; /* 027BA568 */ _t25 = cpu->r[9] + 0x00002BE8u; /* 027BA568 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 027BA568 */ cpu->r[9] = _t25; /* 027BA56C */ cpu->r[31] = 0x101F0000u; /* 027BA570 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BA574 */ cpu->r[31] = cpu->r[31] + 0x00002B9Cu; /* 027BA578 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA578 */ _t27 = _t26 & 0x00000001u; /* 027BA578 */ if (_t27) goto L_027BA57C; else goto L_027BA5C0; L_027BA57C: ; // 0x27ba57c /* 027BA57C */ cpu->r[10] = 0x00000001u; /* 027BA580 */ cpu->r[0] = 0x00000040u; /* 027BA584 */ _t28 = cpu->r[9] + 0x00000000u; /* 027BA584 */ rbrew_write32(cpu->mem, _t28, cpu->r[10]); /* 027BA588 */ cpu->r[11] = 0x10110000u; /* 027BA58C */ cpu->r[12] = 0x10110000u; /* 027BA590 */ _t29 = cpu->r[31] + 0x00000008u; /* 027BA590 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]); /* 027BA594 */ cpu->r[11] = cpu->r[11] + 0xFFFFB444u; /* 027BA598 */ _t30 = cpu->r[12] + 0x00007399u; /* 027BA598 */ cpu->r[12] = rbrew_read8(cpu->mem, _t30); /* 027BA59C */ _t31 = cpu->r[31] + 0x00000004u; /* 027BA59C */ rbrew_write32(cpu->mem, _t31, cpu->r[11]); /* 027BA5A0 */ _t32 = cpu->r[31] + 0x0000000Cu; /* 027BA5A0 */ rbrew_write8(cpu->mem, _t32, (uint8_t)cpu->r[12]); /* 027BA5A4 */ cpu->r[3] = 0x101D0000u; /* 027BA5A8 */ _t33 = cpu->r[31] + 0x0000004Bu; /* 027BA5A8 */ rbrew_write8(cpu->mem, _t33, (uint8_t)cpu->r[12]); /* 027BA5AC */ cpu->r[12] = cpu->r[31] + 0x0000000Cu; /* 027BA5B0 */ cpu->r[3] = cpu->r[3] + 0xFFFF9380u; /* 027BA5B4 */ _t34 = cpu->r[31] + 0x00000000u; /* 027BA5B4 */ rbrew_write32(cpu->mem, _t34, cpu->r[12]); /* 027BA5B8 */ Gambit_fn_02C83090(cpu); /* 027BA5BC */ _t35 = cpu->r[28] + 0x0000000Cu; /* 027BA5BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t35); L_027BA5C0: ; // 0x27ba5c0 /* 027BA5C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]); /* 027BA5C4 */ cpu->r[3] = 0x00000000u; /* 027BA5C8 */ _t36 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA5C8 */ _t37 = _t36 & 0x00000001u; /* 027BA5C8 */ if (_t37) goto L_027BA5CC; else goto L_027BA5D8; L_027BA5CC: ; // 0x27ba5cc /* 027BA5CC */ _t38 = cpu->r[28] + 0x00000014u; /* 027BA5CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027BA5D0 */ cpu->r[10] = rbrew_rlwinm(cpu->r[29], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BA5D4 */ _t39 = cpu->r[10] + cpu->r[0]; /* 027BA5D4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t39); L_027BA5D8: ; // 0x27ba5d8 /* 027BA5D8 */ _t40 = cpu->r[3] + 0x00000004u; /* 027BA5D8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40); /* 027BA5DC */ _t41 = cpu->r[10] + 0x0000002Cu; /* 027BA5DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t41); /* 027BA5E0 */ cpu->ctr = cpu->r[0]; /* 027BA5E4 */ cpu->r[4] = cpu->r[31]; /* 027BA5E8 */ cpu->r[5] = cpu->r[30]; /* 027BA5EC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA5F0 */ _t42 = cpu->r[31] + 0x00000004u; /* 027BA5F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t42); /* 027BA5F4 */ _t43 = cpu->r[12] + 0x00000014u; /* 027BA5F4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t43); /* 027BA5F8 */ cpu->ctr = cpu->r[10]; /* 027BA5FC */ cpu->r[3] = cpu->r[31]; /* 027BA600 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA604 */ _t44 = cpu->r[1] + 0x00000008u; /* 027BA604 */ cpu->r[28] = rbrew_read32(cpu->mem, _t44); /* 027BA608 */ _t45 = cpu->r[1] + 0x0000000Cu; /* 027BA608 */ cpu->r[29] = rbrew_read32(cpu->mem, _t45); /* 027BA60C */ _t46 = cpu->r[1] + 0x0000001Cu; /* 027BA60C */ cpu->r[0] = rbrew_read32(cpu->mem, _t46); /* 027BA610 */ _t47 = cpu->r[31] + 0x00000000u; /* 027BA610 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47); /* 027BA614 */ cpu->lr = cpu->r[0]; /* 027BA618 */ _t48 = cpu->r[1] + 0x00000010u; /* 027BA618 */ cpu->r[30] = rbrew_read32(cpu->mem, _t48); /* 027BA61C */ _t49 = cpu->r[1] + 0x00000014u; /* 027BA61C */ cpu->r[31] = rbrew_read32(cpu->mem, _t49); /* 027BA620 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BA624 */ return; } // fn_027BA62C @ 0x27ba62c void Gambit_fn_027BA62C(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; L_027BA62C: ; // 0x27ba62c /* 027BA62C */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BA62C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA62C */ cpu->r[1] = _t0; /* 027BA630 */ _t1 = cpu->r[1] + 0x00000008u; /* 027BA630 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027BA634 */ cpu->r[28] = cpu->r[3]; /* 027BA638 */ _t2 = cpu->r[1] + 0x00000010u; /* 027BA638 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BA63C */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027BA63C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BA640 */ _t4 = cpu->r[1] + 0x00000014u; /* 027BA640 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027BA644 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027BA644 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BA648 */ cpu->r[29] = cpu->r[4]; /* 027BA64C */ _t6 = cpu->r[28] + 0x00000030u; /* 027BA64C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027BA650 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA654 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA654 */ _t8 = _t7 & 0x00000001u; /* 027BA654 */ if (_t8) goto L_027BA6B4; else goto L_027BA658; L_027BA658: ; // 0x27ba658 /* 027BA658 */ _t9 = cpu->r[28] + 0x00000034u; /* 027BA658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027BA65C */ cpu->r[31] = 0x00000000u; /* 027BA660 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027BA664 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA664 */ _t11 = _t10 & 0x00000001u; /* 027BA664 */ if (_t11) goto L_027BA668; else goto L_027BA6B4; L_027BA668: ; // 0x27ba668 /* 027BA668 */ _t12 = cpu->r[28] + 0x00000028u; /* 027BA668 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12); /* 027BA66C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]); /* 027BA670 */ cpu->r[30] = 0x00000000u; /* 027BA674 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA674 */ _t14 = _t13 & 0x00000001u; /* 027BA674 */ if (_t14) goto L_027BA678; else goto L_027BA684; L_027BA678: ; // 0x27ba678 /* 027BA678 */ _t15 = cpu->r[28] + 0x00000030u; /* 027BA678 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027BA67C */ cpu->r[9] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BA680 */ _t16 = cpu->r[9] + cpu->r[10]; /* 027BA680 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16); L_027BA684: ; // 0x27ba684 /* 027BA684 */ _t17 = cpu->r[30] + 0x00000004u; /* 027BA684 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17); /* 027BA688 */ _t18 = cpu->r[11] + 0x00000014u; /* 027BA688 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18); /* 027BA68C */ cpu->ctr = cpu->r[12]; /* 027BA690 */ cpu->r[3] = cpu->r[30]; /* 027BA694 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA698 */ _t19 = cpu->r[30] + 0x00000000u; /* 027BA698 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19); /* 027BA69C */ cpu->r[3] = cpu->r[29]; /* 027BA6A0 */ Gambit_fn_028A6AD0(cpu); /* 027BA6A4 */ _t20 = cpu->r[28] + 0x00000034u; /* 027BA6A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027BA6A8 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027BA6AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027BA6B0 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA6B0 */ _t22 = _t21 & 0x00000001u; /* 027BA6B0 */ if (_t22) goto L_027BA668; else goto L_027BA6B4; L_027BA6B4: ; // 0x27ba6b4 /* 027BA6B4 */ _t23 = cpu->r[1] + 0x00000008u; /* 027BA6B4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t23); /* 027BA6B8 */ _t24 = cpu->r[1] + 0x0000000Cu; /* 027BA6B8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24); /* 027BA6BC */ _t25 = cpu->r[1] + 0x0000001Cu; /* 027BA6BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BA6C0 */ _t26 = cpu->r[1] + 0x00000010u; /* 027BA6C0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26); /* 027BA6C4 */ cpu->lr = cpu->r[0]; /* 027BA6C8 */ _t27 = cpu->r[1] + 0x00000014u; /* 027BA6C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27); /* 027BA6CC */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BA6D0 */ return; } // fn_027BA6D4 @ 0x27ba6d4 void Gambit_fn_027BA6D4(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_027BA6D4: ; // 0x27ba6d4 /* 027BA6D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA6D8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA6D8 */ _t1 = _t0 & 0x00000001u; /* 027BA6D8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA6D8 */ goto L_027BA6DC; L_027BA6DC: ; // 0x27ba6dc /* 027BA6DC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA6DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA6E0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA6E0 */ _t3 = _t2 & 0x00000001u; /* 027BA6E0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA6E0 */ goto L_027BA6E4; L_027BA6E4: ; // 0x27ba6e4 /* 027BA6E4 */ 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_027BA6E8 @ 0x27ba6e8 void Gambit_fn_027BA6E8(CPUState* cpu) { L_027BA6E8: ; // 0x27ba6e8 /* 027BA6E8 */ return; } // fn_027BA6EC @ 0x27ba6ec void Gambit_fn_027BA6EC(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_027BA6EC: ; // 0x27ba6ec /* 027BA6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA6F0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA6F0 */ _t1 = _t0 & 0x00000001u; /* 027BA6F0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA6F0 */ goto L_027BA6F4; L_027BA6F4: ; // 0x27ba6f4 /* 027BA6F4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA6F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA6F8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA6F8 */ _t3 = _t2 & 0x00000001u; /* 027BA6F8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA6F8 */ goto L_027BA6FC; L_027BA6FC: ; // 0x27ba6fc /* 027BA6FC */ 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_027BA700 @ 0x27ba700 void Gambit_fn_027BA700(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027BA700: ; // 0x27ba700 /* 027BA700 */ _t0 = cpu->r[3] + 0x00000000u; /* 027BA700 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027BA704 */ _t1 = cpu->r[3] + 0x00000008u; /* 027BA704 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027BA708 */ cpu->r[12] = cpu->r[11] + cpu->r[12]; /* 027BA70C */ cpu->r[11] = 0x10110000u; /* 027BA710 */ _t2 = cpu->r[11] + 0x00007399u; /* 027BA710 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027BA714 */ _t3 = cpu->r[12] + 0xFFFFFFFFu; /* 027BA714 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]); /* 027BA718 */ return; } // fn_027BA71C @ 0x27ba71c void Gambit_fn_027BA71C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BA71C: ; // 0x27ba71c /* 027BA71C */ cpu->r[0] = cpu->lr; /* 027BA720 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BA720 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA720 */ cpu->r[1] = _t0; /* 027BA724 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BA724 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BA728 */ _t2 = cpu->r[1] + 0x00000008u; /* 027BA728 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BA72C */ cpu->r[30] = cpu->r[3]; /* 027BA72C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BA730 */ cpu->r[31] = cpu->r[4]; /* 027BA734 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BA734 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BA738 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA738 */ _t5 = _t4 & 0x00000001u; /* 027BA738 */ if (_t5) goto L_027BA768; else goto L_027BA73C; L_027BA73C: ; // 0x27ba73c /* 027BA73C */ _t6 = cpu->r[30] + 0x00000000u; /* 027BA73C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027BA740 */ cpu->r[0] = 0x10110000u; /* 027BA744 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3E4u; /* 027BA748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA74C */ _t7 = cpu->r[30] + 0x00000004u; /* 027BA74C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027BA750 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA750 */ _t9 = _t8 & 0x00000001u; /* 027BA750 */ if (_t9) goto L_027BA758; else goto L_027BA754; L_027BA754: ; // 0x27ba754 /* 027BA754 */ Gambit_fn_02801BB4(cpu); L_027BA758: ; // 0x27ba758 /* 027BA758 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA75C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA75C */ _t11 = _t10 & 0x00000001u; /* 027BA75C */ if (_t11) goto L_027BA768; else goto L_027BA760; L_027BA760: ; // 0x27ba760 /* 027BA760 */ cpu->r[3] = cpu->r[30]; /* 027BA764 */ Gambit_fn_02801BB0(cpu); L_027BA768: ; // 0x27ba768 /* 027BA768 */ _t12 = cpu->r[1] + 0x00000014u; /* 027BA768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BA76C */ _t13 = cpu->r[1] + 0x00000008u; /* 027BA76C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BA770 */ cpu->lr = cpu->r[0]; /* 027BA774 */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027BA774 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BA778 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BA77C */ return; } // fn_027BA720 @ 0x27ba720 void Gambit_fn_027BA720(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BA720: ; // 0x27ba720 /* 027BA720 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BA720 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA720 */ cpu->r[1] = _t0; /* 027BA724 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BA724 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BA728 */ _t2 = cpu->r[1] + 0x00000008u; /* 027BA728 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BA72C */ cpu->r[30] = cpu->r[3]; /* 027BA72C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BA730 */ cpu->r[31] = cpu->r[4]; /* 027BA734 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BA734 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BA738 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA738 */ _t5 = _t4 & 0x00000001u; /* 027BA738 */ if (_t5) goto L_027BA768; else goto L_027BA73C; L_027BA73C: ; // 0x27ba73c /* 027BA73C */ _t6 = cpu->r[30] + 0x00000000u; /* 027BA73C */ cpu->r[3] = rbrew_read32(cpu->mem, _t6); /* 027BA740 */ cpu->r[0] = 0x10110000u; /* 027BA744 */ cpu->r[0] = cpu->r[0] + 0xFFFFB3E4u; /* 027BA748 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA74C */ _t7 = cpu->r[30] + 0x00000004u; /* 027BA74C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027BA750 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA750 */ _t9 = _t8 & 0x00000001u; /* 027BA750 */ if (_t9) goto L_027BA758; else goto L_027BA754; L_027BA754: ; // 0x27ba754 /* 027BA754 */ Gambit_fn_02801BB4(cpu); L_027BA758: ; // 0x27ba758 /* 027BA758 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA75C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA75C */ _t11 = _t10 & 0x00000001u; /* 027BA75C */ if (_t11) goto L_027BA768; else goto L_027BA760; L_027BA760: ; // 0x27ba760 /* 027BA760 */ cpu->r[3] = cpu->r[30]; /* 027BA764 */ Gambit_fn_02801BB0(cpu); L_027BA768: ; // 0x27ba768 /* 027BA768 */ _t12 = cpu->r[1] + 0x00000014u; /* 027BA768 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BA76C */ _t13 = cpu->r[1] + 0x00000008u; /* 027BA76C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BA770 */ cpu->lr = cpu->r[0]; /* 027BA774 */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027BA774 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BA778 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BA77C */ return; } // fn_027BA780 @ 0x27ba780 void Gambit_fn_027BA780(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_027BA780: ; // 0x27ba780 /* 027BA780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA784 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA784 */ _t1 = _t0 & 0x00000001u; /* 027BA784 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA784 */ goto L_027BA788; L_027BA788: ; // 0x27ba788 /* 027BA788 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA788 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA78C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA78C */ _t3 = _t2 & 0x00000001u; /* 027BA78C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA78C */ goto L_027BA790; L_027BA790: ; // 0x27ba790 /* 027BA790 */ 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_027BA794 @ 0x27ba794 void Gambit_fn_027BA794(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_027BA794: ; // 0x27ba794 /* 027BA794 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA798 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA798 */ _t1 = _t0 & 0x00000001u; /* 027BA798 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA798 */ goto L_027BA79C; L_027BA79C: ; // 0x27ba79c /* 027BA79C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA79C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA7A0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA7A0 */ _t3 = _t2 & 0x00000001u; /* 027BA7A0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA7A0 */ goto L_027BA7A4; L_027BA7A4: ; // 0x27ba7a4 /* 027BA7A4 */ 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_027BA7A8 @ 0x27ba7a8 void Gambit_fn_027BA7A8(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_027BA7A8: ; // 0x27ba7a8 /* 027BA7A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA7AC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA7AC */ _t1 = _t0 & 0x00000001u; /* 027BA7AC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA7AC */ goto L_027BA7B0; L_027BA7B0: ; // 0x27ba7b0 /* 027BA7B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA7B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA7B4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA7B4 */ _t3 = _t2 & 0x00000001u; /* 027BA7B4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA7B4 */ goto L_027BA7B8; L_027BA7B8: ; // 0x27ba7b8 /* 027BA7B8 */ 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_027BA7BC @ 0x27ba7bc void Gambit_fn_027BA7BC(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_027BA7BC: ; // 0x27ba7bc /* 027BA7BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA7C0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA7C0 */ _t1 = _t0 & 0x00000001u; /* 027BA7C0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA7C0 */ goto L_027BA7C4; L_027BA7C4: ; // 0x27ba7c4 /* 027BA7C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA7C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA7C8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA7C8 */ _t3 = _t2 & 0x00000001u; /* 027BA7C8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA7C8 */ goto L_027BA7CC; L_027BA7CC: ; // 0x27ba7cc /* 027BA7CC */ 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_027BA7D0 @ 0x27ba7d0 void Gambit_fn_027BA7D0(CPUState* cpu) { uint32_t _t0; L_027BA7D0: ; // 0x27ba7d0 /* 027BA7D0 */ _t0 = cpu->r[3] + 0x000000D4u; /* 027BA7D0 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0); /* 027BA7D4 */ return; } // fn_027BA7D8 @ 0x27ba7d8 void Gambit_fn_027BA7D8(CPUState* cpu) { L_027BA7D8: ; // 0x27ba7d8 /* 027BA7D8 */ return; } // fn_027BA7DC @ 0x27ba7dc void Gambit_fn_027BA7DC(CPUState* cpu) { L_027BA7DC: ; // 0x27ba7dc /* 027BA7DC */ return; } // fn_027BA7E0 @ 0x27ba7e0 void Gambit_fn_027BA7E0(CPUState* cpu) { L_027BA7E0: ; // 0x27ba7e0 /* 027BA7E0 */ return; } // fn_027BA7E4 @ 0x27ba7e4 void Gambit_fn_027BA7E4(CPUState* cpu) { L_027BA7E4: ; // 0x27ba7e4 /* 027BA7E4 */ return; } // fn_027BA7F8 @ 0x27ba7f8 void Gambit_fn_027BA7F8(CPUState* cpu) { uint32_t _t0; L_027BA7F8: ; // 0x27ba7f8 /* 027BA7F8 */ cpu->r[12] = 0x10110000u; /* 027BA7FC */ _t0 = cpu->r[12] + 0xFFFFB5CCu; /* 027BA7FC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0); /* 027BA800 */ return; } // fn_027BA804 @ 0x27ba804 void Gambit_fn_027BA804(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_027BA804: ; // 0x27ba804 /* 027BA804 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA808 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA808 */ _t1 = _t0 & 0x00000001u; /* 027BA808 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA808 */ goto L_027BA80C; L_027BA80C: ; // 0x27ba80c /* 027BA80C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA80C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA810 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA810 */ _t3 = _t2 & 0x00000001u; /* 027BA810 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA810 */ goto L_027BA814; L_027BA814: ; // 0x27ba814 /* 027BA814 */ 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_027BA818 @ 0x27ba818 void Gambit_fn_027BA818(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_027BA818: ; // 0x27ba818 /* 027BA818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA81C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA81C */ _t1 = _t0 & 0x00000001u; /* 027BA81C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA81C */ goto L_027BA820; L_027BA820: ; // 0x27ba820 /* 027BA820 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA820 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA824 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA824 */ _t3 = _t2 & 0x00000001u; /* 027BA824 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA824 */ goto L_027BA828; L_027BA828: ; // 0x27ba828 /* 027BA828 */ 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_027BA82C @ 0x27ba82c void Gambit_fn_027BA82C(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_027BA82C: ; // 0x27ba82c /* 027BA82C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA830 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA830 */ _t1 = _t0 & 0x00000001u; /* 027BA830 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA830 */ goto L_027BA834; L_027BA834: ; // 0x27ba834 /* 027BA834 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA834 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA838 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA838 */ _t3 = _t2 & 0x00000001u; /* 027BA838 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA838 */ goto L_027BA83C; L_027BA83C: ; // 0x27ba83c /* 027BA83C */ 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_027BA840 @ 0x27ba840 void Gambit_fn_027BA840(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_027BA840: ; // 0x27ba840 /* 027BA840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA844 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA844 */ _t1 = _t0 & 0x00000001u; /* 027BA844 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA844 */ goto L_027BA848; L_027BA848: ; // 0x27ba848 /* 027BA848 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA848 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA84C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA84C */ _t3 = _t2 & 0x00000001u; /* 027BA84C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA84C */ goto L_027BA850; L_027BA850: ; // 0x27ba850 /* 027BA850 */ 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_027BA854 @ 0x27ba854 void Gambit_fn_027BA854(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_027BA854: ; // 0x27ba854 /* 027BA854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA858 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA858 */ _t1 = _t0 & 0x00000001u; /* 027BA858 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA858 */ goto L_027BA85C; L_027BA85C: ; // 0x27ba85c /* 027BA85C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BA85C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA860 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA860 */ _t3 = _t2 & 0x00000001u; /* 027BA860 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BA860 */ goto L_027BA864; L_027BA864: ; // 0x27ba864 /* 027BA864 */ 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_027BA86C @ 0x27ba86c void Gambit_fn_027BA86C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9; L_027BA86C: ; // 0x27ba86c /* 027BA86C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BA86C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA86C */ cpu->r[1] = _t0; /* 027BA870 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BA870 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BA874 */ cpu->r[31] = cpu->r[3]; /* 027BA874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BA878 */ _t2 = cpu->r[1] + 0x00000014u; /* 027BA878 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027BA87C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA87C */ _t4 = _t3 & 0x00000001u; /* 027BA87C */ if (_t4) goto L_027BA880; else goto L_027BA890; L_027BA880: ; // 0x27ba880 /* 027BA880 */ cpu->r[3] = 0x000000E4u; /* 027BA884 */ Gambit_fn_02801A78(cpu); /* 027BA888 */ cpu->r[31] = cpu->r[3]; /* 027BA888 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BA88C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA88C */ _t6 = _t5 & 0x00000001u; /* 027BA88C */ if (_t6) goto L_027BA8A4; else goto L_027BA890; L_027BA890: ; // 0x27ba890 /* 027BA890 */ cpu->r[3] = cpu->r[31]; /* 027BA894 */ Gambit_fn_027B6CCC(cpu); /* 027BA898 */ cpu->r[0] = 0x10110000u; /* 027BA89C */ cpu->r[0] = cpu->r[0] + 0xFFFFB780u; /* 027BA8A0 */ _t7 = cpu->r[31] + 0x000000E0u; /* 027BA8A0 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); L_027BA8A4: ; // 0x27ba8a4 /* 027BA8A4 */ _t8 = cpu->r[1] + 0x00000014u; /* 027BA8A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027BA8A8 */ cpu->r[3] = cpu->r[31]; /* 027BA8AC */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027BA8AC */ cpu->r[31] = rbrew_read32(cpu->mem, _t9); /* 027BA8B0 */ cpu->lr = cpu->r[0]; /* 027BA8B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BA8B8 */ return; } // fn_027BA8BC @ 0x27ba8bc void Gambit_fn_027BA8BC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9; L_027BA8BC: ; // 0x27ba8bc /* 027BA8BC */ cpu->r[0] = cpu->lr; /* 027BA8C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BA8C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA8C0 */ cpu->r[1] = _t0; /* 027BA8C4 */ _t1 = cpu->r[1] + 0x00000008u; /* 027BA8C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BA8C8 */ cpu->r[30] = cpu->r[3]; /* 027BA8CC */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BA8CC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BA8D0 */ cpu->r[31] = cpu->r[4]; /* 027BA8D4 */ cpu->r[3] = 0x00000038u; /* 027BA8D8 */ cpu->r[5] = 0x00000004u; /* 027BA8DC */ _t3 = cpu->r[1] + 0x00000014u; /* 027BA8DC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BA8E0 */ Gambit_fn_02801AC8(cpu); /* 027BA8E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA8E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA8E8 */ _t5 = _t4 & 0x00000001u; /* 027BA8E8 */ if (_t5) goto L_027BA8F0; else goto L_027BA8EC; L_027BA8EC: ; // 0x27ba8ec /* 027BA8EC */ Gambit_fn_027D96A0(cpu); L_027BA8F0: ; // 0x27ba8f0 /* 027BA8F0 */ _t6 = cpu->r[30] + 0x00000000u; /* 027BA8F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]); /* 027BA8F4 */ cpu->r[4] = 0x00000003u; /* 027BA8F8 */ cpu->r[5] = cpu->r[31]; /* 027BA8FC */ cpu->r[3] = cpu->r[30]; /* 027BA900 */ Gambit_fn_027B9CEC(cpu); /* 027BA904 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BA904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027BA908 */ _t8 = cpu->r[1] + 0x00000008u; /* 027BA908 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8); /* 027BA90C */ cpu->lr = cpu->r[0]; /* 027BA910 */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027BA910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9); /* 027BA914 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BA918 */ return; } // fn_027BA8C0 @ 0x27ba8c0 void Gambit_fn_027BA8C0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9; L_027BA8C0: ; // 0x27ba8c0 /* 027BA8C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BA8C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA8C0 */ cpu->r[1] = _t0; /* 027BA8C4 */ _t1 = cpu->r[1] + 0x00000008u; /* 027BA8C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BA8C8 */ cpu->r[30] = cpu->r[3]; /* 027BA8CC */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BA8CC */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BA8D0 */ cpu->r[31] = cpu->r[4]; /* 027BA8D4 */ cpu->r[3] = 0x00000038u; /* 027BA8D8 */ cpu->r[5] = 0x00000004u; /* 027BA8DC */ _t3 = cpu->r[1] + 0x00000014u; /* 027BA8DC */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BA8E0 */ Gambit_fn_02801AC8(cpu); /* 027BA8E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BA8E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA8E8 */ _t5 = _t4 & 0x00000001u; /* 027BA8E8 */ if (_t5) goto L_027BA8F0; else goto L_027BA8EC; L_027BA8EC: ; // 0x27ba8ec /* 027BA8EC */ Gambit_fn_027D96A0(cpu); L_027BA8F0: ; // 0x27ba8f0 /* 027BA8F0 */ _t6 = cpu->r[30] + 0x00000000u; /* 027BA8F0 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]); /* 027BA8F4 */ cpu->r[4] = 0x00000003u; /* 027BA8F8 */ cpu->r[5] = cpu->r[31]; /* 027BA8FC */ cpu->r[3] = cpu->r[30]; /* 027BA900 */ Gambit_fn_027B9CEC(cpu); /* 027BA904 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BA904 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027BA908 */ _t8 = cpu->r[1] + 0x00000008u; /* 027BA908 */ cpu->r[30] = rbrew_read32(cpu->mem, _t8); /* 027BA90C */ cpu->lr = cpu->r[0]; /* 027BA910 */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027BA910 */ cpu->r[31] = rbrew_read32(cpu->mem, _t9); /* 027BA914 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BA918 */ return; } // fn_027BA91C @ 0x27ba91c void Gambit_fn_027BA91C(CPUState* cpu) { uint32_t _t0; L_027BA91C: ; // 0x27ba91c /* 027BA91C */ _t0 = cpu->r[3] + 0x00000000u; /* 027BA91C */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027BA920 */ return; } // fn_027BA924 @ 0x27ba924 void Gambit_fn_027BA924(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027BA924: ; // 0x27ba924 /* 027BA924 */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027BA924 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BA924 */ cpu->r[1] = _t0; /* 027BA928 */ /* nop */ /* 027BA92C */ cpu->r[0] = cpu->lr; /* 027BA930 */ cpu->r[30] = cpu->r[5]; /* 027BA934 */ cpu->r[31] = cpu->r[6]; /* 027BA938 */ cpu->r[28] = cpu->r[3]; /* 027BA93C */ _t1 = cpu->r[1] + 0x00000034u; /* 027BA93C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BA940 */ cpu->r[29] = cpu->r[4]; /* 027BA944 */ Gambit_fn_027B705C(cpu); /* 027BA948 */ _t2 = cpu->r[28] + 0x00000000u; /* 027BA948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027BA94C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BA950 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BA950 */ _t4 = _t3 & 0x00000001u; /* 027BA950 */ if (_t4) goto L_027BAA14; else goto L_027BA954; L_027BA954: ; // 0x27ba954 /* 027BA954 */ _t5 = cpu->r[28] + 0x00000018u; /* 027BA954 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027BA958 */ cpu->r[5] = 0x00000004u; /* 027BA95C */ cpu->r[4] = cpu->r[31]; /* 027BA960 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BA964 */ Gambit_fn_02801ADC(cpu); /* 027BA968 */ _t6 = cpu->r[28] + 0x00000018u; /* 027BA968 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6); /* 027BA96C */ cpu->r[25] = 0x00000000u; /* 027BA970 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[10]); /* 027BA974 */ cpu->r[24] = cpu->r[3]; /* 027BA978 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA978 */ _t8 = _t7 & 0x00000001u; /* 027BA978 */ if (_t8) goto L_027BA97C; else goto L_027BA9C4; L_027BA97C: ; // 0x27ba97c /* 027BA97C */ cpu->r[26] = 0x00000000u; L_027BA980: ; // 0x27ba980 /* 027BA980 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[10]); /* 027BA984 */ cpu->r[27] = 0x00000000u; /* 027BA988 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA988 */ _t10 = _t9 & 0x00000001u; /* 027BA988 */ if (_t10) goto L_027BA98C; else goto L_027BA994; L_027BA98C: ; // 0x27ba98c /* 027BA98C */ _t11 = cpu->r[28] + 0x00000020u; /* 027BA98C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11); /* 027BA990 */ _t12 = cpu->r[7] + cpu->r[26]; /* 027BA990 */ cpu->r[27] = rbrew_read32(cpu->mem, _t12); L_027BA994: ; // 0x27ba994 /* 027BA994 */ _t13 = cpu->r[27] + 0x00000004u; /* 027BA994 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13); /* 027BA998 */ _t14 = cpu->r[8] + 0x00000014u; /* 027BA998 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BA99C */ cpu->ctr = cpu->r[0]; /* 027BA9A0 */ cpu->r[3] = cpu->r[27]; /* 027BA9A4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BA9A8 */ _t15 = cpu->r[27] + 0x00000000u; /* 027BA9A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027BA9AC */ _t16 = cpu->r[24] + cpu->r[26]; /* 027BA9AC */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027BA9B0 */ _t17 = cpu->r[28] + 0x00000018u; /* 027BA9B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17); /* 027BA9B4 */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027BA9B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[10]); /* 027BA9BC */ cpu->r[26] = cpu->r[26] + 0x00000004u; /* 027BA9C0 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BA9C0 */ _t19 = _t18 & 0x00000001u; /* 027BA9C0 */ if (_t19) goto L_027BA980; else goto L_027BA9C4; L_027BA9C4: ; // 0x27ba9c4 /* 027BA9C4 */ cpu->r[0] = 0x10110000u; /* 027BA9C8 */ _t20 = cpu->r[28] + 0x00000078u; /* 027BA9C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t20); /* 027BA9CC */ cpu->r[0] = cpu->r[0] + 0xFFFFB6A8u; /* 027BA9D0 */ _t21 = cpu->r[1] + 0x00000008u; /* 027BA9D0 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]); /* 027BA9D4 */ cpu->r[3] = cpu->r[28]; /* 027BA9D8 */ _t22 = cpu->r[1] + 0x0000000Cu; /* 027BA9D8 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]); /* 027BA9DC */ Gambit_fn_027BA91C(cpu); /* 027BA9E0 */ cpu->r[4] = cpu->r[31]; /* 027BA9E4 */ cpu->r[5] = cpu->r[29]; /* 027BA9E8 */ _t23 = cpu->r[28] + 0x0000000Cu; /* 027BA9E8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t23); /* 027BA9EC */ cpu->r[8] = cpu->r[24]; /* 027BA9F0 */ cpu->r[6] = cpu->r[1] + 0x00000008u; /* 027BA9F4 */ Gambit_fn_027D9860(cpu); /* 027BA9F8 */ cpu->r[4] = cpu->r[31]; /* 027BA9FC */ cpu->r[3] = cpu->r[28]; /* 027BAA00 */ Gambit_fn_027BA260(cpu); /* 027BAA04 */ _t24 = cpu->r[28] + 0x00000000u; /* 027BAA04 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24); /* 027BAA08 */ cpu->r[4] = cpu->r[31]; /* 027BAA0C */ cpu->r[5] = 0x00000000u; /* 027BAA10 */ Gambit_fn_027DA38C(cpu); L_027BAA14: ; // 0x27baa14 /* 027BAA14 */ /* nop */ /* 027BAA18 */ _t25 = cpu->r[1] + 0x00000034u; /* 027BAA18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BAA1C */ cpu->lr = cpu->r[0]; /* 027BAA20 */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027BAA24 */ return; } // fn_027BAA28 @ 0x27baa28 void Gambit_fn_027BAA28(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027BAA28: ; // 0x27baa28 /* 027BAA28 */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027BAA28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BAA28 */ cpu->r[1] = _t0; /* 027BAA2C */ /* nop */ /* 027BAA30 */ cpu->r[0] = cpu->lr; /* 027BAA34 */ cpu->r[30] = cpu->r[5]; /* 027BAA38 */ cpu->r[31] = cpu->r[6]; /* 027BAA3C */ cpu->r[28] = cpu->r[3]; /* 027BAA40 */ _t1 = cpu->r[1] + 0x00000034u; /* 027BAA40 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BAA44 */ cpu->r[29] = cpu->r[4]; /* 027BAA48 */ Gambit_fn_027B705C(cpu); /* 027BAA4C */ _t2 = cpu->r[28] + 0x00000000u; /* 027BAA4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027BAA50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BAA54 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAA54 */ _t4 = _t3 & 0x00000001u; /* 027BAA54 */ if (_t4) goto L_027BAB18; else goto L_027BAA58; L_027BAA58: ; // 0x27baa58 /* 027BAA58 */ _t5 = cpu->r[28] + 0x00000018u; /* 027BAA58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027BAA5C */ cpu->r[5] = 0x00000004u; /* 027BAA60 */ cpu->r[4] = cpu->r[31]; /* 027BAA64 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BAA68 */ Gambit_fn_02801ADC(cpu); /* 027BAA6C */ _t6 = cpu->r[28] + 0x00000018u; /* 027BAA6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t6); /* 027BAA70 */ cpu->r[25] = 0x00000000u; /* 027BAA74 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[10]); /* 027BAA78 */ cpu->r[24] = cpu->r[3]; /* 027BAA7C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BAA7C */ _t8 = _t7 & 0x00000001u; /* 027BAA7C */ if (_t8) goto L_027BAA80; else goto L_027BAAC8; L_027BAA80: ; // 0x27baa80 /* 027BAA80 */ cpu->r[26] = 0x00000000u; L_027BAA84: ; // 0x27baa84 /* 027BAA84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[10]); /* 027BAA88 */ cpu->r[27] = 0x00000000u; /* 027BAA8C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BAA8C */ _t10 = _t9 & 0x00000001u; /* 027BAA8C */ if (_t10) goto L_027BAA90; else goto L_027BAA98; L_027BAA90: ; // 0x27baa90 /* 027BAA90 */ _t11 = cpu->r[28] + 0x00000020u; /* 027BAA90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t11); /* 027BAA94 */ _t12 = cpu->r[7] + cpu->r[26]; /* 027BAA94 */ cpu->r[27] = rbrew_read32(cpu->mem, _t12); L_027BAA98: ; // 0x27baa98 /* 027BAA98 */ _t13 = cpu->r[27] + 0x00000004u; /* 027BAA98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t13); /* 027BAA9C */ _t14 = cpu->r[8] + 0x00000014u; /* 027BAA9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BAAA0 */ cpu->ctr = cpu->r[0]; /* 027BAAA4 */ cpu->r[3] = cpu->r[27]; /* 027BAAA8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BAAAC */ _t15 = cpu->r[27] + 0x00000000u; /* 027BAAAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027BAAB0 */ _t16 = cpu->r[24] + cpu->r[26]; /* 027BAAB0 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027BAAB4 */ _t17 = cpu->r[28] + 0x00000018u; /* 027BAAB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t17); /* 027BAAB8 */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027BAABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[10]); /* 027BAAC0 */ cpu->r[26] = cpu->r[26] + 0x00000004u; /* 027BAAC4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BAAC4 */ _t19 = _t18 & 0x00000001u; /* 027BAAC4 */ if (_t19) goto L_027BAA84; else goto L_027BAAC8; L_027BAAC8: ; // 0x27baac8 /* 027BAAC8 */ cpu->r[0] = 0x10110000u; /* 027BAACC */ _t20 = cpu->r[28] + 0x00000078u; /* 027BAACC */ cpu->r[9] = rbrew_read32(cpu->mem, _t20); /* 027BAAD0 */ cpu->r[0] = cpu->r[0] + 0xFFFFB6A8u; /* 027BAAD4 */ _t21 = cpu->r[1] + 0x00000008u; /* 027BAAD4 */ rbrew_write32(cpu->mem, _t21, cpu->r[30]); /* 027BAAD8 */ cpu->r[3] = cpu->r[28]; /* 027BAADC */ _t22 = cpu->r[1] + 0x0000000Cu; /* 027BAADC */ rbrew_write32(cpu->mem, _t22, cpu->r[0]); /* 027BAAE0 */ Gambit_fn_027BA91C(cpu); /* 027BAAE4 */ cpu->r[4] = cpu->r[31]; /* 027BAAE8 */ cpu->r[5] = cpu->r[29]; /* 027BAAEC */ _t23 = cpu->r[28] + 0x0000000Cu; /* 027BAAEC */ cpu->r[7] = rbrew_read32(cpu->mem, _t23); /* 027BAAF0 */ cpu->r[8] = cpu->r[24]; /* 027BAAF4 */ cpu->r[6] = cpu->r[1] + 0x00000008u; /* 027BAAF8 */ Gambit_fn_027D993C(cpu); /* 027BAAFC */ cpu->r[4] = cpu->r[31]; /* 027BAB00 */ cpu->r[3] = cpu->r[28]; /* 027BAB04 */ Gambit_fn_027BA260(cpu); /* 027BAB08 */ _t24 = cpu->r[28] + 0x00000000u; /* 027BAB08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24); /* 027BAB0C */ cpu->r[4] = cpu->r[31]; /* 027BAB10 */ cpu->r[5] = 0x00000000u; /* 027BAB14 */ Gambit_fn_027DA38C(cpu); L_027BAB18: ; // 0x27bab18 /* 027BAB18 */ /* nop */ /* 027BAB1C */ _t25 = cpu->r[1] + 0x00000034u; /* 027BAB1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BAB20 */ cpu->lr = cpu->r[0]; /* 027BAB24 */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027BAB28 */ return; } // fn_027BAB2C @ 0x27bab2c void Gambit_fn_027BAB2C(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; L_027BAB2C: ; // 0x27bab2c /* 027BAB2C */ _t0 = cpu->r[1] + 0xFFFFFFB0u; /* 027BAB2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BAB2C */ cpu->r[1] = _t0; /* 027BAB30 */ cpu->r[0] = cpu->lr; /* 027BAB34 */ /* nop */ /* 027BAB38 */ cpu->r[25] = cpu->r[3]; /* 027BAB3C */ cpu->r[27] = cpu->r[5]; /* 027BAB40 */ cpu->r[26] = cpu->r[4]; /* 027BAB44 */ cpu->r[8] = 0x00000000u; /* 027BAB48 */ cpu->r[5] = 0x00000004u; /* 027BAB4C */ cpu->r[4] = cpu->r[27]; /* 027BAB50 */ cpu->r[3] = 0x0000002Cu; /* 027BAB54 */ _t1 = cpu->r[1] + 0x00000054u; /* 027BAB54 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BAB58 */ Gambit_fn_02801AC8(cpu); /* 027BAB5C */ cpu->r[23] = 0x10110000u; /* 027BAB60 */ cpu->r[24] = cpu->r[3]; /* 027BAB60 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027BAB64 */ cpu->r[23] = cpu->r[23] + 0xFFFFB6A8u; /* 027BAB68 */ cpu->r[30] = 0x10110000u; /* 027BAB6C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAB6C */ _t3 = _t2 & 0x00000001u; /* 027BAB6C */ if (_t3) goto L_027BAE14; else goto L_027BAB70; L_027BAB70: ; // 0x27bab70 /* 027BAB70 */ cpu->r[11] = 0x101D0000u; /* 027BAB74 */ _t4 = cpu->r[11] + 0xFFFFD9B4u; /* 027BAB74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t4); /* 027BAB78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027BAB7C */ cpu->r[31] = 0x101D0000u; /* 027BAB80 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAB80 */ _t6 = _t5 & 0x00000001u; /* 027BAB80 */ if (_t6) goto L_027BAB84; else goto L_027BABA4; L_027BAB84: ; // 0x27bab84 /* 027BAB84 */ cpu->r[0] = 0x00000001u; /* 027BAB88 */ cpu->r[4] = 0x101D0000u; /* 027BAB8C */ cpu->r[3] = cpu->r[31] + 0x00005B6Au; /* 027BAB90 */ cpu->r[12] = 0x101D0000u; /* 027BAB94 */ cpu->r[4] = cpu->r[4] + 0xFFFF938Cu; /* 027BAB98 */ cpu->r[5] = 0x00000041u; /* 027BAB9C */ _t7 = cpu->r[12] + 0xFFFFD9B4u; /* 027BAB9C */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027BABA0 */ rbrew_dispatch(cpu, 0x02d0b870u); L_027BABA4: ; // 0x27baba4 /* 027BABA4 */ cpu->r[12] = 0x101D0000u; /* 027BABA8 */ _t8 = cpu->r[12] + 0xFFFFD9B0u; /* 027BABA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027BABAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BABB0 */ cpu->r[29] = 0x101D0000u; /* 027BABB4 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BABB4 */ _t10 = _t9 & 0x00000001u; /* 027BABB4 */ if (_t10) goto L_027BABB8; else goto L_027BABE8; L_027BABB8: ; // 0x27babb8 /* 027BABB8 */ cpu->r[11] = 0x101D0000u; /* 027BABBC */ cpu->r[5] = 0x00000001u; /* 027BABC0 */ cpu->r[6] = 0x00000000u; /* 027BABC4 */ _t11 = cpu->r[11] + 0xFFFFD9B0u; /* 027BABC4 */ rbrew_write32(cpu->mem, _t11, cpu->r[5]); /* 027BABC8 */ _t12 = cpu->r[29] + 0x000014F0u; /* 027BABC8 */ rbrew_write32(cpu->mem, _t12, cpu->r[6]); /* 027BABCC */ Gambit_fn_0282A450(cpu); /* 027BABD0 */ cpu->r[22] = cpu->r[3]; /* 027BABD4 */ Gambit_fn_02836FFC(cpu); /* 027BABD8 */ _t13 = cpu->r[29] + 0x000014F0u; /* 027BABD8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t13); /* 027BABDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027BABE0 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BABE0 */ _t15 = _t14 & 0x00000001u; /* 027BABE0 */ if (_t15) goto L_027BAC0C; else goto L_027BABE4; L_027BABE4: ; // 0x27babe4 /* 027BABE4 */ goto L_027BAC28; L_027BABE8: ; // 0x27babe8 /* 027BABE8 */ _t16 = cpu->r[29] + 0x000014F0u; /* 027BABE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t16); /* 027BABEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027BABF0 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BABF0 */ _t18 = _t17 & 0x00000001u; /* 027BABF0 */ if (_t18) goto L_027BABF4; else goto L_027BAC34; L_027BABF4: ; // 0x27babf4 /* 027BABF4 */ Gambit_fn_0282A450(cpu); /* 027BABF8 */ cpu->r[22] = cpu->r[3]; /* 027BABFC */ Gambit_fn_02836FFC(cpu); /* 027BAC00 */ _t19 = cpu->r[29] + 0x000014F0u; /* 027BAC00 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19); /* 027BAC04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027BAC08 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAC08 */ _t21 = _t20 & 0x00000001u; /* 027BAC08 */ if (_t21) goto L_027BAC0C; else goto L_027BAC28; L_027BAC0C: ; // 0x27bac0c /* 027BAC0C */ cpu->r[28] = 0x101D0000u; /* 027BAC10 */ cpu->r[4] = cpu->r[31] + 0x00005B6Au; /* 027BAC14 */ cpu->r[28] = cpu->r[28] + 0x000014F4u; /* 027BAC18 */ cpu->r[5] = 0x00000005u; /* 027BAC1C */ cpu->r[3] = cpu->r[28]; /* 027BAC20 */ Gambit_fn_0282A374(cpu); /* 027BAC24 */ _t22 = cpu->r[29] + 0x000014F0u; /* 027BAC24 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]); L_027BAC28: ; // 0x27bac28 /* 027BAC28 */ cpu->r[3] = cpu->r[22]; /* 027BAC2C */ Gambit_fn_02837030(cpu); /* 027BAC30 */ _t23 = cpu->r[29] + 0x000014F0u; /* 027BAC30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23); L_027BAC34: ; // 0x27bac34 /* 027BAC34 */ _t24 = cpu->r[10] + 0x00000004u; /* 027BAC34 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24); /* 027BAC38 */ cpu->r[28] = cpu->r[24]; /* 027BAC38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BAC3C */ _t25 = cpu->r[1] + 0x00000014u; /* 027BAC3C */ rbrew_write32(cpu->mem, _t25, cpu->r[23]); /* 027BAC40 */ cpu->r[8] = 0x00000001u; /* 027BAC44 */ _t26 = cpu->r[1] + 0x00000010u; /* 027BAC44 */ rbrew_write32(cpu->mem, _t26, cpu->r[9]); /* 027BAC48 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAC48 */ _t28 = _t27 & 0x00000001u; /* 027BAC48 */ if (_t28) goto L_027BAC4C; else goto L_027BACAC; L_027BAC4C: ; // 0x27bac4c /* 027BAC4C */ cpu->r[3] = 0x0000002Cu; /* 027BAC50 */ Gambit_fn_02801A78(cpu); /* 027BAC54 */ cpu->r[28] = cpu->r[3]; /* 027BAC54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BAC58 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAC58 */ _t30 = _t29 & 0x00000001u; /* 027BAC58 */ if (_t30) goto L_027BAC5C; else goto L_027BACAC; L_027BAC5C: ; // 0x27bac5c /* 027BAC5C */ cpu->r[0] = 0x10110000u; /* 027BAC60 */ _t31 = cpu->r[30] + 0x00007399u; /* 027BAC60 */ cpu->r[29] = rbrew_read8(cpu->mem, _t31); /* 027BAC64 */ cpu->r[0] = cpu->r[0] + 0xFFFFB6F0u; /* 027BAC68 */ cpu->r[4] = 0x10110000u; /* 027BAC6C */ _t32 = cpu->r[24] + 0x00000004u; /* 027BAC6C */ rbrew_write32(cpu->mem, _t32, cpu->r[0]); /* 027BAC70 */ cpu->r[4] = cpu->r[4] + 0xFFFFB768u; /* 027BAC74 */ _t33 = cpu->r[1] + 0x00000014u; /* 027BAC74 */ rbrew_write32(cpu->mem, _t33, cpu->r[23]); /* 027BAC78 */ _t34 = cpu->r[1] + 0x00000010u; /* 027BAC78 */ rbrew_write32(cpu->mem, _t34, cpu->r[4]); /* 027BAC7C */ _t35 = cpu->r[24] + 0x00000004u; /* 027BAC7C */ cpu->r[6] = rbrew_read32(cpu->mem, _t35); /* 027BAC80 */ _t36 = cpu->r[6] + 0x00000014u; /* 027BAC80 */ cpu->r[7] = rbrew_read32(cpu->mem, _t36); /* 027BAC84 */ cpu->ctr = cpu->r[7]; /* 027BAC88 */ cpu->r[3] = cpu->r[24]; /* 027BAC8C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BAC90 */ _t37 = cpu->r[24] + 0x00000000u; /* 027BAC90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t37); /* 027BAC94 */ _t38 = cpu->r[12] + 0x00000000u; /* 027BAC94 */ cpu->r[9] = rbrew_read8(cpu->mem, _t38); /* 027BAC98 */ cpu->r[31] = 0x00000000u; /* 027BAC9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]); /* 027BACA0 */ cpu->r[5] = 0x00080000u; /* 027BACA4 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BACA4 */ _t40 = _t39 & 0x00000001u; /* 027BACA4 */ if (_t40) goto L_027BACA8; else goto L_027BAE58; L_027BACA8: ; // 0x27baca8 /* 027BACA8 */ goto L_027BAE7C; L_027BACAC: ; // 0x27bacac /* 027BACAC */ cpu->r[3] = cpu->r[28]; /* 027BACAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BACB0 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BACB0 */ _t42 = _t41 & 0x00000001u; /* 027BACB0 */ if (_t42) goto L_027BACB4; else goto L_027BAD08; L_027BACB4: ; // 0x27bacb4 /* 027BACB4 */ cpu->r[3] = 0x0000000Cu; /* 027BACB8 */ Gambit_fn_02801A78(cpu); /* 027BACBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BACC0 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BACC0 */ _t44 = _t43 & 0x00000001u; /* 027BACC0 */ if (_t44) goto L_027BACC4; else goto L_027BAD08; L_027BACC4: ; // 0x27bacc4 /* 027BACC4 */ cpu->r[0] = 0x10110000u; /* 027BACC8 */ _t45 = cpu->r[30] + 0x00007399u; /* 027BACC8 */ cpu->r[29] = rbrew_read8(cpu->mem, _t45); /* 027BACCC */ cpu->r[0] = cpu->r[0] + 0xFFFFB6D8u; /* 027BACD0 */ _t46 = cpu->r[28] + 0x00000004u; /* 027BACD0 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]); /* 027BACD4 */ _t47 = cpu->r[1] + 0x00000014u; /* 027BACD4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47); /* 027BACD8 */ _t48 = cpu->r[12] + 0x00000014u; /* 027BACD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t48); /* 027BACDC */ cpu->ctr = cpu->r[4]; /* 027BACE0 */ _t49 = cpu->r[28] + 0x00000000u; /* 027BACE0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t49); /* 027BACE4 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BACE8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BACEC */ _t50 = cpu->r[1] + 0x00000010u; /* 027BACEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t50); /* 027BACF0 */ _t51 = cpu->r[8] + 0x00000000u; /* 027BACF0 */ cpu->r[5] = rbrew_read8(cpu->mem, _t51); /* 027BACF4 */ cpu->r[31] = 0x00000000u; /* 027BACF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]); /* 027BACFC */ cpu->r[10] = 0x00080000u; /* 027BAD00 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAD00 */ _t53 = _t52 & 0x00000001u; /* 027BAD00 */ if (_t53) goto L_027BAD04; else goto L_027BAD68; L_027BAD04: ; // 0x27bad04 /* 027BAD04 */ goto L_027BAD8C; L_027BAD08: ; // 0x27bad08 /* 027BAD08 */ cpu->r[9] = 0x10110000u; /* 027BAD0C */ cpu->r[8] = cpu->r[28] + 0x0000000Cu; /* 027BAD10 */ cpu->r[9] = cpu->r[9] + 0xFFFFB6C0u; /* 027BAD14 */ _t54 = cpu->r[3] + 0x00000000u; /* 027BAD14 */ rbrew_write32(cpu->mem, _t54, cpu->r[8]); /* 027BAD18 */ cpu->r[10] = 0x00000020u; /* 027BAD1C */ _t55 = cpu->r[3] + 0x00000004u; /* 027BAD1C */ rbrew_write32(cpu->mem, _t55, cpu->r[9]); /* 027BAD20 */ cpu->r[0] = 0x10110000u; /* 027BAD24 */ _t56 = cpu->r[3] + 0x00000008u; /* 027BAD24 */ rbrew_write32(cpu->mem, _t56, cpu->r[10]); /* 027BAD28 */ _t57 = cpu->r[30] + 0x00007399u; /* 027BAD28 */ cpu->r[29] = rbrew_read8(cpu->mem, _t57); /* 027BAD2C */ cpu->r[0] = cpu->r[0] + 0xFFFFB6D8u; /* 027BAD30 */ _t58 = cpu->r[28] + 0x0000002Bu; /* 027BAD30 */ rbrew_write8(cpu->mem, _t58, (uint8_t)cpu->r[29]); /* 027BAD34 */ _t59 = cpu->r[28] + 0x00000004u; /* 027BAD34 */ rbrew_write32(cpu->mem, _t59, cpu->r[0]); /* 027BAD38 */ _t60 = cpu->r[1] + 0x00000014u; /* 027BAD38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60); /* 027BAD3C */ _t61 = cpu->r[12] + 0x00000014u; /* 027BAD3C */ cpu->r[4] = rbrew_read32(cpu->mem, _t61); /* 027BAD40 */ cpu->ctr = cpu->r[4]; /* 027BAD44 */ _t62 = cpu->r[28] + 0x00000000u; /* 027BAD44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t62); /* 027BAD48 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BAD4C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BAD50 */ _t63 = cpu->r[1] + 0x00000010u; /* 027BAD50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t63); /* 027BAD54 */ _t64 = cpu->r[8] + 0x00000000u; /* 027BAD54 */ cpu->r[5] = rbrew_read8(cpu->mem, _t64); /* 027BAD58 */ cpu->r[31] = 0x00000000u; /* 027BAD5C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]); /* 027BAD60 */ cpu->r[10] = 0x00080000u; /* 027BAD64 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAD64 */ _t66 = _t65 & 0x00000001u; /* 027BAD64 */ if (_t66) goto L_027BAD04; else goto L_027BAD68; L_027BAD68: ; // 0x27bad68 /* 027BAD68 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027BAD6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]); /* 027BAD70 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027BAD74 */ _t67 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BAD74 */ _t68 = _t67 & 0x00000001u; /* 027BAD74 */ if (_t68) goto L_027BAD88; else goto L_027BAD78; L_027BAD78: ; // 0x27bad78 /* 027BAD78 */ _t69 = cpu->r[8] + 0x00000000u; /* 027BAD78 */ cpu->r[6] = rbrew_read8(cpu->mem, _t69); /* 027BAD7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]); /* 027BAD80 */ _t70 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAD80 */ _t71 = _t70 & 0x00000001u; /* 027BAD80 */ if (_t71) goto L_027BAD84; else goto L_027BAD68; L_027BAD84: ; // 0x27bad84 /* 027BAD84 */ goto L_027BAD8C; L_027BAD88: ; // 0x27bad88 /* 027BAD88 */ cpu->r[31] = 0x00000000u; L_027BAD8C: ; // 0x27bad8c /* 027BAD8C */ _t72 = cpu->r[28] + 0x00000008u; /* 027BAD8C */ cpu->r[4] = rbrew_read32(cpu->mem, _t72); /* 027BAD90 */ _t73 = cpu->r[1] + 0x00000014u; /* 027BAD90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t73); /* 027BAD94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[4]); /* 027BAD98 */ _t74 = cpu->r[8] + 0x00000014u; /* 027BAD98 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74); /* 027BAD9C */ _t75 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BAD9C */ _t76 = _t75 & 0x00000001u; /* 027BAD9C */ if (_t76) goto L_027BADA4; else goto L_027BADA0; L_027BADA0: ; // 0x27bada0 /* 027BADA0 */ cpu->r[31] = cpu->r[4] + 0xFFFFFFFFu; L_027BADA4: ; // 0x27bada4 /* 027BADA4 */ cpu->ctr = cpu->r[10]; /* 027BADA8 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BADAC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BADB0 */ _t77 = cpu->r[1] + 0x00000010u; /* 027BADB0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t77); /* 027BADB4 */ cpu->r[6] = 0x00000000u; /* 027BADB8 */ cpu->r[5] = cpu->r[31]; /* 027BADBC */ cpu->r[3] = cpu->r[30]; /* 027BADC0 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BADC4 */ cpu->r[0] = 0x10110000u; /* 027BADC8 */ _t78 = cpu->r[30] + cpu->r[31]; /* 027BADC8 */ rbrew_write8(cpu->mem, _t78, (uint8_t)cpu->r[29]); /* 027BADCC */ cpu->r[0] = cpu->r[0] + 0xFFFFB6F0u; /* 027BADD0 */ cpu->r[4] = 0x10110000u; /* 027BADD4 */ _t79 = cpu->r[24] + 0x00000004u; /* 027BADD4 */ rbrew_write32(cpu->mem, _t79, cpu->r[0]); /* 027BADD8 */ cpu->r[4] = cpu->r[4] + 0xFFFFB768u; /* 027BADDC */ _t80 = cpu->r[1] + 0x00000014u; /* 027BADDC */ rbrew_write32(cpu->mem, _t80, cpu->r[23]); /* 027BADE0 */ _t81 = cpu->r[1] + 0x00000010u; /* 027BADE0 */ rbrew_write32(cpu->mem, _t81, cpu->r[4]); /* 027BADE4 */ _t82 = cpu->r[24] + 0x00000004u; /* 027BADE4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t82); /* 027BADE8 */ _t83 = cpu->r[6] + 0x00000014u; /* 027BADE8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t83); /* 027BADEC */ cpu->ctr = cpu->r[7]; /* 027BADF0 */ cpu->r[3] = cpu->r[24]; /* 027BADF4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BADF8 */ _t84 = cpu->r[24] + 0x00000000u; /* 027BADF8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t84); /* 027BADFC */ _t85 = cpu->r[12] + 0x00000000u; /* 027BADFC */ cpu->r[9] = rbrew_read8(cpu->mem, _t85); /* 027BAE00 */ cpu->r[31] = 0x00000000u; /* 027BAE04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]); /* 027BAE08 */ cpu->r[5] = 0x00080000u; /* 027BAE0C */ _t86 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAE0C */ _t87 = _t86 & 0x00000001u; /* 027BAE0C */ if (_t87) goto L_027BACA8; else goto L_027BAE10; L_027BAE10: ; // 0x27bae10 /* 027BAE10 */ goto L_027BAE58; L_027BAE14: ; // 0x27bae14 /* 027BAE14 */ _t88 = cpu->r[30] + 0x00007399u; /* 027BAE14 */ cpu->r[29] = rbrew_read8(cpu->mem, _t88); /* 027BAE18 */ cpu->r[4] = 0x10110000u; /* 027BAE1C */ cpu->r[4] = cpu->r[4] + 0xFFFFB768u; /* 027BAE20 */ _t89 = cpu->r[1] + 0x00000014u; /* 027BAE20 */ rbrew_write32(cpu->mem, _t89, cpu->r[23]); /* 027BAE24 */ cpu->r[24] = 0x00000000u; /* 027BAE28 */ _t90 = cpu->r[1] + 0x00000010u; /* 027BAE28 */ rbrew_write32(cpu->mem, _t90, cpu->r[4]); /* 027BAE2C */ _t91 = cpu->r[24] + 0x00000004u; /* 027BAE2C */ cpu->r[6] = rbrew_read32(cpu->mem, _t91); /* 027BAE30 */ _t92 = cpu->r[6] + 0x00000014u; /* 027BAE30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92); /* 027BAE34 */ cpu->ctr = cpu->r[7]; /* 027BAE38 */ cpu->r[3] = cpu->r[24]; /* 027BAE3C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BAE40 */ _t93 = cpu->r[24] + 0x00000000u; /* 027BAE40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t93); /* 027BAE44 */ _t94 = cpu->r[12] + 0x00000000u; /* 027BAE44 */ cpu->r[9] = rbrew_read8(cpu->mem, _t94); /* 027BAE48 */ cpu->r[31] = cpu->r[24]; /* 027BAE4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[29]); /* 027BAE50 */ cpu->r[5] = 0x00080000u; /* 027BAE54 */ _t95 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAE54 */ _t96 = _t95 & 0x00000001u; /* 027BAE54 */ if (_t96) goto L_027BACA8; else goto L_027BAE58; L_027BAE58: ; // 0x27bae58 /* 027BAE58 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027BAE5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]); /* 027BAE60 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027BAE64 */ _t97 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BAE64 */ _t98 = _t97 & 0x00000001u; /* 027BAE64 */ if (_t98) goto L_027BAE78; else goto L_027BAE68; L_027BAE68: ; // 0x27bae68 /* 027BAE68 */ _t99 = cpu->r[12] + 0x00000000u; /* 027BAE68 */ cpu->r[0] = rbrew_read8(cpu->mem, _t99); /* 027BAE6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027BAE70 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAE70 */ _t101 = _t100 & 0x00000001u; /* 027BAE70 */ if (_t101) goto L_027BAE74; else goto L_027BAE58; L_027BAE74: ; // 0x27bae74 /* 027BAE74 */ goto L_027BAE7C; L_027BAE78: ; // 0x27bae78 /* 027BAE78 */ cpu->r[31] = 0x00000000u; L_027BAE7C: ; // 0x27bae7c /* 027BAE7C */ _t102 = cpu->r[1] + 0x00000014u; /* 027BAE7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t102); /* 027BAE80 */ _t103 = cpu->r[12] + 0x00000014u; /* 027BAE80 */ cpu->r[4] = rbrew_read32(cpu->mem, _t103); /* 027BAE84 */ cpu->ctr = cpu->r[4]; /* 027BAE88 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BAE8C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BAE90 */ _t104 = cpu->r[1] + 0x00000010u; /* 027BAE90 */ cpu->r[7] = rbrew_read32(cpu->mem, _t104); /* 027BAE94 */ _t105 = cpu->r[7] + 0x00000000u; /* 027BAE94 */ cpu->r[5] = rbrew_read8(cpu->mem, _t105); /* 027BAE98 */ cpu->r[30] = 0x00000000u; /* 027BAE9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[29]); /* 027BAEA0 */ cpu->r[9] = 0x00080000u; /* 027BAEA4 */ _t106 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAEA4 */ _t107 = _t106 & 0x00000001u; /* 027BAEA4 */ if (_t107) goto L_027BAECC; else goto L_027BAEA8; L_027BAEA8: ; // 0x27baea8 /* 027BAEA8 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BAEAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]); /* 027BAEB0 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027BAEB4 */ _t108 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BAEB4 */ _t109 = _t108 & 0x00000001u; /* 027BAEB4 */ if (_t109) goto L_027BAEC8; else goto L_027BAEB8; L_027BAEB8: ; // 0x27baeb8 /* 027BAEB8 */ _t110 = cpu->r[7] + 0x00000000u; /* 027BAEB8 */ cpu->r[6] = rbrew_read8(cpu->mem, _t110); /* 027BAEBC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]); /* 027BAEC0 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAEC0 */ _t112 = _t111 & 0x00000001u; /* 027BAEC0 */ if (_t112) goto L_027BAEC4; else goto L_027BAEA8; L_027BAEC4: ; // 0x27baec4 /* 027BAEC4 */ goto L_027BAECC; L_027BAEC8: ; // 0x27baec8 /* 027BAEC8 */ cpu->r[30] = 0x00000000u; L_027BAECC: ; // 0x27baecc /* 027BAECC */ cpu->r[28] = cpu->r[31] - cpu->r[30]; /* 027BAECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BAED0 */ cpu->r[31] = 0x00000000u; /* 027BAED4 */ _t113 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BAED4 */ _t114 = _t113 & 0x00000001u; /* 027BAED4 */ if (_t114) goto L_027BAFD0; else goto L_027BAED8; L_027BAED8: ; // 0x27baed8 /* 027BAED8 */ cpu->r[22] = cpu->r[29]; L_027BAEDC: ; // 0x27baedc /* 027BAEDC */ _t115 = cpu->r[24] + 0x00000000u; /* 027BAEDC */ cpu->r[8] = rbrew_read32(cpu->mem, _t115); /* 027BAEE0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BAEE4 */ _t116 = cpu->r[1] + 0x0000000Cu; /* 027BAEE4 */ rbrew_write32(cpu->mem, _t116, cpu->r[23]); /* 027BAEE8 */ cpu->r[0] = cpu->r[8] + cpu->r[31]; /* 027BAEEC */ cpu->r[21] = cpu->r[30]; /* 027BAEF0 */ _t117 = cpu->r[1] + 0x00000008u; /* 027BAEF0 */ rbrew_write32(cpu->mem, _t117, cpu->r[0]); /* 027BAEF4 */ Gambit_fn_027BB4B8(cpu); /* 027BAEF8 */ _t118 = cpu->r[1] + 0x0000000Cu; /* 027BAEF8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t118); /* 027BAEFC */ _t119 = cpu->r[10] + 0x00000014u; /* 027BAEFC */ cpu->r[0] = rbrew_read32(cpu->mem, _t119); /* 027BAF00 */ cpu->ctr = cpu->r[0]; /* 027BAF04 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BAF08 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BAF0C */ _t120 = cpu->r[1] + 0x00000014u; /* 027BAF0C */ cpu->r[4] = rbrew_read32(cpu->mem, _t120); /* 027BAF10 */ _t121 = cpu->r[4] + 0x00000014u; /* 027BAF10 */ cpu->r[6] = rbrew_read32(cpu->mem, _t121); /* 027BAF14 */ cpu->ctr = cpu->r[6]; /* 027BAF18 */ _t122 = cpu->r[1] + 0x00000008u; /* 027BAF18 */ cpu->r[20] = rbrew_read32(cpu->mem, _t122); /* 027BAF1C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BAF20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BAF24 */ _t123 = cpu->r[1] + 0x00000010u; /* 027BAF24 */ cpu->r[7] = rbrew_read32(cpu->mem, _t123); /* 027BAF28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[20], cpu->r[7]); /* 027BAF2C */ _t124 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAF2C */ _t125 = _t124 & 0x00000001u; /* 027BAF2C */ if (_t125) goto L_027BAF80; else goto L_027BAF30; L_027BAF30: ; // 0x27baf30 /* 027BAF30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u); /* 027BAF34 */ _t126 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BAF34 */ _t127 = _t126 & 0x00000001u; /* 027BAF34 */ if (_t127) goto L_027BAF38; else goto L_027BAF80; L_027BAF38: ; // 0x27baf38 /* 027BAF38 */ _t128 = cpu->r[1] + 0x00000010u; /* 027BAF38 */ cpu->r[8] = rbrew_read32(cpu->mem, _t128); /* 027BAF3C */ cpu->ctr = cpu->r[21]; /* 027BAF40 */ _t129 = cpu->r[1] + 0x00000008u; /* 027BAF40 */ cpu->r[10] = rbrew_read32(cpu->mem, _t129); L_027BAF44: ; // 0x27baf44 /* 027BAF44 */ _t130 = cpu->r[10] + 0x00000000u; /* 027BAF44 */ cpu->r[4] = rbrew_read8(cpu->mem, _t130); /* 027BAF48 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]); /* 027BAF4C */ _t131 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAF4C */ _t132 = _t131 & 0x00000001u; /* 027BAF4C */ if (_t132) goto L_027BAF50; else goto L_027BAF60; L_027BAF50: ; // 0x27baf50 /* 027BAF50 */ _t133 = cpu->r[8] + 0x00000000u; /* 027BAF50 */ cpu->r[9] = rbrew_read8(cpu->mem, _t133); /* 027BAF54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[22]); /* 027BAF58 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAF58 */ _t135 = _t134 & 0x00000001u; /* 027BAF58 */ if (_t135) goto L_027BAF5C; else goto L_027BAFC4; L_027BAF5C: ; // 0x27baf5c /* 027BAF5C */ goto L_027BAF80; L_027BAF60: ; // 0x27baf60 /* 027BAF60 */ _t136 = cpu->r[8] + 0x00000000u; /* 027BAF60 */ cpu->r[6] = rbrew_read8(cpu->mem, _t136); /* 027BAF64 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[22]); /* 027BAF68 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAF68 */ _t138 = _t137 & 0x00000001u; /* 027BAF68 */ if (_t138) goto L_027BAFC4; else goto L_027BAF6C; L_027BAF6C: ; // 0x27baf6c /* 027BAF6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[4]); /* 027BAF70 */ _t139 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAF70 */ _t140 = _t139 & 0x00000001u; /* 027BAF70 */ if (_t140) goto L_027BAF74; else goto L_027BAFC4; L_027BAF74: ; // 0x27baf74 /* 027BAF74 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027BAF78 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027BAF7C */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BAF7C */ _t141 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BAF7C */ _t142 = _t141 >> (0x00000002u & 31u); /* 027BAF7C */ _t143 = _t142 & 0x00000001u; /* 027BAF7C */ if (_t143) goto L_027BAF44; else goto L_027BAF80; L_027BAF80: ; // 0x27baf80 /* 027BAF80 */ cpu->r[0] = 0x10110000u; /* 027BAF84 */ _t144 = cpu->r[1] + 0x0000001Cu; /* 027BAF84 */ rbrew_write32(cpu->mem, _t144, cpu->r[23]); /* 027BAF88 */ cpu->r[0] = cpu->r[0] + 0xFFFFB770u; /* 027BAF8C */ _t145 = cpu->r[1] + 0x00000018u; /* 027BAF8C */ rbrew_write32(cpu->mem, _t145, cpu->r[0]); /* 027BAF90 */ _t146 = cpu->r[24] + 0x00000004u; /* 027BAF90 */ cpu->r[12] = rbrew_read32(cpu->mem, _t146); /* 027BAF94 */ _t147 = cpu->r[12] + 0x00000014u; /* 027BAF94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t147); /* 027BAF98 */ cpu->ctr = cpu->r[5]; /* 027BAF9C */ _t148 = cpu->r[24] + 0x00000000u; /* 027BAF9C */ cpu->r[23] = rbrew_read32(cpu->mem, _t148); /* 027BAFA0 */ cpu->r[3] = cpu->r[24]; /* 027BAFA4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BAFA8 */ _t149 = cpu->r[24] + 0x00000000u; /* 027BAFA8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t149); /* 027BAFAC */ _t150 = cpu->r[12] + 0x00000000u; /* 027BAFAC */ cpu->r[7] = rbrew_read8(cpu->mem, _t150); /* 027BAFB0 */ cpu->r[28] = 0x00000000u; /* 027BAFB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]); /* 027BAFB8 */ cpu->r[5] = 0x00080000u; /* 027BAFBC */ _t151 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BAFBC */ _t152 = _t151 & 0x00000001u; /* 027BAFBC */ if (_t152) goto L_027BAFC0; else goto L_027BB014; L_027BAFC0: ; // 0x27bafc0 /* 027BAFC0 */ goto L_027BB038; L_027BAFC4: ; // 0x27bafc4 /* 027BAFC4 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027BAFC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[28]); /* 027BAFCC */ _t153 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BAFCC */ _t154 = _t153 & 0x00000001u; /* 027BAFCC */ if (_t154) goto L_027BAFD0; else goto L_027BAEDC; L_027BAFD0: ; // 0x27bafd0 /* 027BAFD0 */ cpu->r[0] = 0x10110000u; /* 027BAFD4 */ _t155 = cpu->r[1] + 0x0000001Cu; /* 027BAFD4 */ rbrew_write32(cpu->mem, _t155, cpu->r[23]); /* 027BAFD8 */ cpu->r[0] = cpu->r[0] + 0xFFFFB770u; /* 027BAFDC */ _t156 = cpu->r[1] + 0x00000018u; /* 027BAFDC */ rbrew_write32(cpu->mem, _t156, cpu->r[0]); /* 027BAFE0 */ _t157 = cpu->r[24] + 0x00000004u; /* 027BAFE0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t157); /* 027BAFE4 */ _t158 = cpu->r[12] + 0x00000014u; /* 027BAFE4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t158); /* 027BAFE8 */ cpu->ctr = cpu->r[5]; /* 027BAFEC */ _t159 = cpu->r[24] + 0x00000000u; /* 027BAFEC */ cpu->r[23] = rbrew_read32(cpu->mem, _t159); /* 027BAFF0 */ cpu->r[31] = 0xFFFFFFFFu; /* 027BAFF4 */ cpu->r[3] = cpu->r[24]; /* 027BAFF8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BAFFC */ _t160 = cpu->r[24] + 0x00000000u; /* 027BAFFC */ cpu->r[12] = rbrew_read32(cpu->mem, _t160); /* 027BB000 */ _t161 = cpu->r[12] + 0x00000000u; /* 027BB000 */ cpu->r[7] = rbrew_read8(cpu->mem, _t161); /* 027BB004 */ cpu->r[28] = 0x00000000u; /* 027BB008 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[29]); /* 027BB00C */ cpu->r[5] = 0x00080000u; /* 027BB010 */ _t162 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB010 */ _t163 = _t162 & 0x00000001u; /* 027BB010 */ if (_t163) goto L_027BAFC0; else goto L_027BB014; L_027BB014: ; // 0x27bb014 /* 027BB014 */ cpu->r[28] = cpu->r[28] + 0x00000001u; /* 027BB018 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[5]); /* 027BB01C */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027BB020 */ _t164 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BB020 */ _t165 = _t164 & 0x00000001u; /* 027BB020 */ if (_t165) goto L_027BB034; else goto L_027BB024; L_027BB024: ; // 0x27bb024 /* 027BB024 */ _t166 = cpu->r[12] + 0x00000000u; /* 027BB024 */ cpu->r[0] = rbrew_read8(cpu->mem, _t166); /* 027BB028 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027BB02C */ _t167 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB02C */ _t168 = _t167 & 0x00000001u; /* 027BB02C */ if (_t168) goto L_027BB030; else goto L_027BB014; L_027BB030: ; // 0x27bb030 /* 027BB030 */ goto L_027BB038; L_027BB034: ; // 0x27bb034 /* 027BB034 */ cpu->r[28] = 0x00000000u; L_027BB038: ; // 0x27bb038 /* 027BB038 */ _t169 = cpu->r[1] + 0x0000001Cu; /* 027BB038 */ cpu->r[11] = rbrew_read32(cpu->mem, _t169); /* 027BB03C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BB040 */ _t170 = cpu->r[11] + 0x00000014u; /* 027BB040 */ cpu->r[0] = rbrew_read32(cpu->mem, _t170); /* 027BB044 */ _t171 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB044 */ _t172 = _t171 & 0x00000001u; /* 027BB044 */ if (_t172) goto L_027BB048; else goto L_027BB058; L_027BB048: ; // 0x27bb048 /* 027BB048 */ cpu->r[9] = cpu->r[28] + cpu->r[31]; /* 027BB04C */ cpu->r[31] = cpu->r[9] + 0x00000001u; /* 027BB04C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BB050 */ _t173 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB050 */ _t174 = _t173 & 0x00000001u; /* 027BB050 */ if (_t174) goto L_027BB054; else goto L_027BB058; L_027BB054: ; // 0x27bb054 /* 027BB054 */ cpu->r[31] = 0x00000000u; L_027BB058: ; // 0x27bb058 /* 027BB058 */ cpu->ctr = cpu->r[0]; /* 027BB05C */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027BB060 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB064 */ _t175 = cpu->r[1] + 0x00000018u; /* 027BB064 */ cpu->r[7] = rbrew_read32(cpu->mem, _t175); /* 027BB068 */ _t176 = cpu->r[7] + 0x00000000u; /* 027BB068 */ cpu->r[0] = rbrew_read8(cpu->mem, _t176); /* 027BB06C */ cpu->r[30] = 0x00000000u; /* 027BB070 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[29]); /* 027BB074 */ cpu->r[9] = 0x00080000u; /* 027BB078 */ _t177 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB078 */ _t178 = _t177 & 0x00000001u; /* 027BB078 */ if (_t178) goto L_027BB0A0; else goto L_027BB07C; L_027BB07C: ; // 0x27bb07c /* 027BB07C */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BB080 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]); /* 027BB084 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027BB088 */ _t179 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BB088 */ _t180 = _t179 & 0x00000001u; /* 027BB088 */ if (_t180) goto L_027BB09C; else goto L_027BB08C; L_027BB08C: ; // 0x27bb08c /* 027BB08C */ _t181 = cpu->r[7] + 0x00000000u; /* 027BB08C */ cpu->r[6] = rbrew_read8(cpu->mem, _t181); /* 027BB090 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[29]); /* 027BB094 */ _t182 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB094 */ _t183 = _t182 & 0x00000001u; /* 027BB094 */ if (_t183) goto L_027BB098; else goto L_027BB07C; L_027BB098: ; // 0x27bb098 /* 027BB098 */ goto L_027BB0A0; L_027BB09C: ; // 0x27bb09c /* 027BB09C */ cpu->r[30] = 0x00000000u; L_027BB0A0: ; // 0x27bb0a0 /* 027BB0A0 */ _t184 = cpu->r[24] + 0x00000008u; /* 027BB0A0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t184); /* 027BB0A4 */ cpu->r[12] = cpu->r[7] - cpu->r[31]; /* 027BB0A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027BB0AC */ _t185 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB0AC */ _t186 = _t185 & 0x00000001u; /* 027BB0AC */ if (_t186) goto L_027BB0B4; else goto L_027BB0B0; L_027BB0B0: ; // 0x27bb0b0 /* 027BB0B0 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027BB0B4: ; // 0x27bb0b4 /* 027BB0B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BB0B8 */ _t187 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BB0B8 */ _t188 = _t187 & 0x00000001u; /* 027BB0B8 */ if (_t188) goto L_027BB0BC; else goto L_027BB0F8; L_027BB0BC: ; // 0x27bb0bc /* 027BB0BC */ _t189 = cpu->r[1] + 0x0000001Cu; /* 027BB0BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t189); /* 027BB0C0 */ _t190 = cpu->r[8] + 0x00000014u; /* 027BB0C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t190); /* 027BB0C4 */ cpu->ctr = cpu->r[0]; /* 027BB0C8 */ cpu->r[22] = cpu->r[23] + cpu->r[31]; /* 027BB0CC */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027BB0D0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB0D4 */ _t191 = cpu->r[1] + 0x00000018u; /* 027BB0D4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t191); /* 027BB0D8 */ cpu->r[6] = 0x00000000u; /* 027BB0DC */ cpu->r[5] = cpu->r[30]; /* 027BB0E0 */ cpu->r[3] = cpu->r[22]; /* 027BB0E4 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BB0E8 */ cpu->r[9] = cpu->r[31] + cpu->r[30]; /* 027BB0EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[28]); /* 027BB0F0 */ _t192 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BB0F0 */ _t193 = _t192 & 0x00000001u; /* 027BB0F0 */ if (_t193) goto L_027BB0F4; else goto L_027BB0F8; L_027BB0F4: ; // 0x27bb0f4 /* 027BB0F4 */ _t194 = cpu->r[23] + cpu->r[9]; /* 027BB0F4 */ rbrew_write8(cpu->mem, _t194, (uint8_t)cpu->r[29]); L_027BB0F8: ; // 0x27bb0f8 /* 027BB0F8 */ cpu->r[6] = cpu->r[24]; /* 027BB0FC */ cpu->r[5] = cpu->r[27]; /* 027BB100 */ cpu->r[4] = cpu->r[26]; /* 027BB104 */ cpu->r[3] = cpu->r[25]; /* 027BB108 */ Gambit_fn_027B8E70(cpu); /* 027BB10C */ /* nop */ /* 027BB110 */ _t195 = cpu->r[1] + 0x00000054u; /* 027BB110 */ cpu->r[0] = rbrew_read32(cpu->mem, _t195); /* 027BB114 */ cpu->lr = cpu->r[0]; /* 027BB118 */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027BB11C */ return; } // fn_027BB120 @ 0x27bb120 void Gambit_fn_027BB120(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_027BB120: ; // 0x27bb120 /* 027BB120 */ cpu->r[0] = cpu->lr; /* 027BB124 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BB124 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB124 */ cpu->r[1] = _t0; /* 027BB128 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BB128 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027BB12C */ _t2 = cpu->r[1] + 0x00000014u; /* 027BB12C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BB130 */ _t3 = cpu->r[1] + 0x00000010u; /* 027BB130 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027BB134 */ cpu->r[31] = cpu->r[3]; /* 027BB138 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027BB138 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BB13C */ _t5 = cpu->r[31] + 0x0000000Cu; /* 027BB13C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027BB140 */ cpu->r[30] = 0x00000000u; /* 027BB144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027BB148 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB148 */ _t7 = _t6 & 0x00000001u; /* 027BB148 */ if (_t7) goto L_027BB14C; else goto L_027BB188; L_027BB14C: ; // 0x27bb14c /* 027BB14C */ cpu->r[29] = 0x00000000u; L_027BB150: ; // 0x27bb150 /* 027BB150 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027BB154 */ cpu->r[3] = 0x00000000u; /* 027BB158 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB158 */ _t9 = _t8 & 0x00000001u; /* 027BB158 */ if (_t9) goto L_027BB15C; else goto L_027BB164; L_027BB15C: ; // 0x27bb15c /* 027BB15C */ _t10 = cpu->r[31] + 0x00000014u; /* 027BB15C */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027BB160 */ _t11 = cpu->r[9] + cpu->r[29]; /* 027BB160 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); L_027BB164: ; // 0x27bb164 /* 027BB164 */ _t12 = cpu->r[3] + 0x00000004u; /* 027BB164 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12); /* 027BB168 */ _t13 = cpu->r[10] + 0x0000001Cu; /* 027BB168 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13); /* 027BB16C */ cpu->ctr = cpu->r[11]; /* 027BB170 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB174 */ _t14 = cpu->r[31] + 0x0000000Cu; /* 027BB174 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BB178 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BB17C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027BB180 */ cpu->r[29] = cpu->r[29] + 0x00000004u; /* 027BB184 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB184 */ _t16 = _t15 & 0x00000001u; /* 027BB184 */ if (_t16) goto L_027BB150; else goto L_027BB188; L_027BB188: ; // 0x27bb188 /* 027BB188 */ _t17 = cpu->r[31] + 0x00000000u; /* 027BB188 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17); /* 027BB18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027BB190 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB190 */ _t19 = _t18 & 0x00000001u; /* 027BB190 */ if (_t19) goto L_027BB1C0; else goto L_027BB194; L_027BB194: ; // 0x27bb194 /* 027BB194 */ _t20 = cpu->r[7] + 0x00000014u; /* 027BB194 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20); /* 027BB198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BB19C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB19C */ _t22 = _t21 & 0x00000001u; /* 027BB19C */ if (_t22) goto L_027BB1AC; else goto L_027BB1A0; L_027BB1A0: ; // 0x27bb1a0 /* 027BB1A0 */ _t23 = cpu->r[7] + 0x00000014u; /* 027BB1A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23); /* 027BB1A4 */ Gambit_fn_028AC290(cpu); /* 027BB1A8 */ _t24 = cpu->r[31] + 0x00000000u; /* 027BB1A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t24); L_027BB1AC: ; // 0x27bb1ac /* 027BB1AC */ _t25 = cpu->r[7] + 0x00000018u; /* 027BB1AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BB1B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB1B4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB1B4 */ _t27 = _t26 & 0x00000001u; /* 027BB1B4 */ if (_t27) goto L_027BB1C0; else goto L_027BB1B8; L_027BB1B8: ; // 0x27bb1b8 /* 027BB1B8 */ _t28 = cpu->r[7] + 0x00000018u; /* 027BB1B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28); /* 027BB1BC */ Gambit_fn_028B4B48(cpu); L_027BB1C0: ; // 0x27bb1c0 /* 027BB1C0 */ _t29 = cpu->r[1] + 0x0000000Cu; /* 027BB1C0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29); /* 027BB1C4 */ _t30 = cpu->r[1] + 0x0000001Cu; /* 027BB1C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027BB1C8 */ _t31 = cpu->r[1] + 0x00000010u; /* 027BB1C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31); /* 027BB1CC */ cpu->lr = cpu->r[0]; /* 027BB1D0 */ _t32 = cpu->r[1] + 0x00000014u; /* 027BB1D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32); /* 027BB1D4 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BB1D8 */ return; } // fn_027BB124 @ 0x27bb124 void Gambit_fn_027BB124(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_027BB124: ; // 0x27bb124 /* 027BB124 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BB124 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB124 */ cpu->r[1] = _t0; /* 027BB128 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BB128 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027BB12C */ _t2 = cpu->r[1] + 0x00000014u; /* 027BB12C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BB130 */ _t3 = cpu->r[1] + 0x00000010u; /* 027BB130 */ rbrew_write32(cpu->mem, _t3, cpu->r[30]); /* 027BB134 */ cpu->r[31] = cpu->r[3]; /* 027BB138 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027BB138 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BB13C */ _t5 = cpu->r[31] + 0x0000000Cu; /* 027BB13C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027BB140 */ cpu->r[30] = 0x00000000u; /* 027BB144 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027BB148 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB148 */ _t7 = _t6 & 0x00000001u; /* 027BB148 */ if (_t7) goto L_027BB14C; else goto L_027BB188; L_027BB14C: ; // 0x27bb14c /* 027BB14C */ cpu->r[29] = 0x00000000u; L_027BB150: ; // 0x27bb150 /* 027BB150 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027BB154 */ cpu->r[3] = 0x00000000u; /* 027BB158 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB158 */ _t9 = _t8 & 0x00000001u; /* 027BB158 */ if (_t9) goto L_027BB15C; else goto L_027BB164; L_027BB15C: ; // 0x27bb15c /* 027BB15C */ _t10 = cpu->r[31] + 0x00000014u; /* 027BB15C */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027BB160 */ _t11 = cpu->r[9] + cpu->r[29]; /* 027BB160 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); L_027BB164: ; // 0x27bb164 /* 027BB164 */ _t12 = cpu->r[3] + 0x00000004u; /* 027BB164 */ cpu->r[10] = rbrew_read32(cpu->mem, _t12); /* 027BB168 */ _t13 = cpu->r[10] + 0x0000001Cu; /* 027BB168 */ cpu->r[11] = rbrew_read32(cpu->mem, _t13); /* 027BB16C */ cpu->ctr = cpu->r[11]; /* 027BB170 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB174 */ _t14 = cpu->r[31] + 0x0000000Cu; /* 027BB174 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BB178 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BB17C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027BB180 */ cpu->r[29] = cpu->r[29] + 0x00000004u; /* 027BB184 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB184 */ _t16 = _t15 & 0x00000001u; /* 027BB184 */ if (_t16) goto L_027BB150; else goto L_027BB188; L_027BB188: ; // 0x27bb188 /* 027BB188 */ _t17 = cpu->r[31] + 0x00000000u; /* 027BB188 */ cpu->r[7] = rbrew_read32(cpu->mem, _t17); /* 027BB18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027BB190 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB190 */ _t19 = _t18 & 0x00000001u; /* 027BB190 */ if (_t19) goto L_027BB1C0; else goto L_027BB194; L_027BB194: ; // 0x27bb194 /* 027BB194 */ _t20 = cpu->r[7] + 0x00000014u; /* 027BB194 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20); /* 027BB198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BB19C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB19C */ _t22 = _t21 & 0x00000001u; /* 027BB19C */ if (_t22) goto L_027BB1AC; else goto L_027BB1A0; L_027BB1A0: ; // 0x27bb1a0 /* 027BB1A0 */ _t23 = cpu->r[7] + 0x00000014u; /* 027BB1A0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23); /* 027BB1A4 */ Gambit_fn_028AC290(cpu); /* 027BB1A8 */ _t24 = cpu->r[31] + 0x00000000u; /* 027BB1A8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t24); L_027BB1AC: ; // 0x27bb1ac /* 027BB1AC */ _t25 = cpu->r[7] + 0x00000018u; /* 027BB1AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BB1B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB1B4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB1B4 */ _t27 = _t26 & 0x00000001u; /* 027BB1B4 */ if (_t27) goto L_027BB1C0; else goto L_027BB1B8; L_027BB1B8: ; // 0x27bb1b8 /* 027BB1B8 */ _t28 = cpu->r[7] + 0x00000018u; /* 027BB1B8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28); /* 027BB1BC */ Gambit_fn_028B4B48(cpu); L_027BB1C0: ; // 0x27bb1c0 /* 027BB1C0 */ _t29 = cpu->r[1] + 0x0000000Cu; /* 027BB1C0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29); /* 027BB1C4 */ _t30 = cpu->r[1] + 0x0000001Cu; /* 027BB1C4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027BB1C8 */ _t31 = cpu->r[1] + 0x00000010u; /* 027BB1C8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t31); /* 027BB1CC */ cpu->lr = cpu->r[0]; /* 027BB1D0 */ _t32 = cpu->r[1] + 0x00000014u; /* 027BB1D0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32); /* 027BB1D4 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BB1D8 */ return; } // fn_027BB1DC @ 0x27bb1dc void Gambit_fn_027BB1DC(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; L_027BB1DC: ; // 0x27bb1dc /* 027BB1DC */ _t0 = cpu->r[1] + 0xFFFFFF28u; /* 027BB1DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB1DC */ cpu->r[1] = _t0; /* 027BB1E0 */ /* nop */ /* 027BB1E4 */ cpu->r[0] = cpu->lr; /* 027BB1E8 */ _t1 = cpu->r[1] + 0x000000DCu; /* 027BB1E8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BB1EC */ cpu->r[27] = cpu->r[3]; /* 027BB1F0 */ _t2 = cpu->r[27] + 0x00000008u; /* 027BB1F0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t2); /* 027BB1F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB1F8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB1F8 */ _t4 = _t3 & 0x00000001u; /* 027BB1F8 */ if (_t4) goto L_027BB3B8; else goto L_027BB1FC; L_027BB1FC: ; // 0x27bb1fc /* 027BB1FC */ _t5 = cpu->r[27] + 0x00000034u; /* 027BB1FC */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027BB200 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BB204 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB204 */ _t7 = _t6 & 0x00000001u; /* 027BB204 */ if (_t7) goto L_027BB3B8; else goto L_027BB208; L_027BB208: ; // 0x27bb208 /* 027BB208 */ cpu->r[31] = 0x10110000u; /* 027BB20C */ cpu->r[5] = cpu->r[1] + 0x00000078u; /* 027BB210 */ _t8 = cpu->r[31] + 0x00007399u; /* 027BB210 */ cpu->r[31] = rbrew_read8(cpu->mem, _t8); /* 027BB214 */ _t9 = cpu->r[1] + 0x0000006Cu; /* 027BB214 */ rbrew_write32(cpu->mem, _t9, cpu->r[5]); /* 027BB218 */ _t10 = cpu->r[1] + 0x000000B7u; /* 027BB218 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[31]); /* 027BB21C */ cpu->r[29] = 0x10110000u; /* 027BB220 */ cpu->r[30] = 0x00000040u; /* 027BB224 */ cpu->r[29] = cpu->r[29] + 0xFFFFB720u; /* 027BB228 */ _t11 = cpu->r[1] + 0x00000074u; /* 027BB228 */ rbrew_write32(cpu->mem, _t11, cpu->r[30]); /* 027BB22C */ _t12 = cpu->r[1] + 0x00000070u; /* 027BB22C */ rbrew_write32(cpu->mem, _t12, cpu->r[29]); /* 027BB230 */ cpu->r[4] = cpu->r[1] + 0x0000006Cu; /* 027BB234 */ _t13 = cpu->r[1] + 0x00000078u; /* 027BB234 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]); /* 027BB238 */ Gambit_fn_027B4B34(cpu); /* 027BB23C */ cpu->r[7] = cpu->r[1] + 0x0000002Cu; /* 027BB240 */ _t14 = cpu->r[1] + 0x0000006Bu; /* 027BB240 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[31]); /* 027BB244 */ cpu->r[3] = cpu->r[27]; /* 027BB248 */ _t15 = cpu->r[1] + 0x00000020u; /* 027BB248 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]); /* 027BB24C */ cpu->r[5] = cpu->r[1] + 0x0000006Cu; /* 027BB250 */ _t16 = cpu->r[1] + 0x0000002Cu; /* 027BB250 */ rbrew_write8(cpu->mem, _t16, (uint8_t)cpu->r[31]); /* 027BB254 */ cpu->r[4] = cpu->r[1] + 0x00000020u; /* 027BB258 */ _t17 = cpu->r[1] + 0x00000028u; /* 027BB258 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]); /* 027BB25C */ _t18 = cpu->r[1] + 0x00000024u; /* 027BB25C */ rbrew_write32(cpu->mem, _t18, cpu->r[29]); /* 027BB260 */ Gambit_fn_027B8590(cpu); /* 027BB264 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB268 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB268 */ _t20 = _t19 & 0x00000001u; /* 027BB268 */ if (_t20) goto L_027BB3B8; else goto L_027BB26C; L_027BB26C: ; // 0x27bb26c /* 027BB26C */ _t21 = cpu->r[27] + 0x00000034u; /* 027BB26C */ cpu->r[9] = rbrew_read32(cpu->mem, _t21); /* 027BB270 */ cpu->r[30] = 0x00000000u; /* 027BB274 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]); /* 027BB278 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB278 */ _t23 = _t22 & 0x00000001u; /* 027BB278 */ if (_t23) goto L_027BB27C; else goto L_027BB3B8; L_027BB27C: ; // 0x27bb27c /* 027BB27C */ cpu->r[28] = 0x00080000u; /* 027BB280 */ cpu->r[26] = 0x00000000u; /* 027BB284 */ cpu->r[28] = cpu->r[28] + 0x00000001u; L_027BB288: ; // 0x27bb288 /* 027BB288 */ _t24 = cpu->r[27] + 0x00000028u; /* 027BB288 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027BB28C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027BB290 */ cpu->r[25] = 0x00000000u; /* 027BB294 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB294 */ _t26 = _t25 & 0x00000001u; /* 027BB294 */ if (_t26) goto L_027BB298; else goto L_027BB2A4; L_027BB298: ; // 0x27bb298 /* 027BB298 */ _t27 = cpu->r[27] + 0x00000030u; /* 027BB298 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27); /* 027BB29C */ cpu->r[12] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BB2A0 */ _t28 = cpu->r[12] + cpu->r[0]; /* 027BB2A0 */ cpu->r[25] = rbrew_read32(cpu->mem, _t28); L_027BB2A4: ; // 0x27bb2a4 /* 027BB2A4 */ _t29 = cpu->r[25] + 0x00000004u; /* 027BB2A4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t29); /* 027BB2A8 */ _t30 = cpu->r[6] + 0x00000014u; /* 027BB2A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027BB2AC */ cpu->ctr = cpu->r[0]; /* 027BB2B0 */ cpu->r[3] = cpu->r[25]; /* 027BB2B4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB2B8 */ _t31 = cpu->r[25] + 0x00000004u; /* 027BB2B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t31); /* 027BB2BC */ _t32 = cpu->r[8] + 0x00000014u; /* 027BB2BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t32); /* 027BB2C0 */ cpu->ctr = cpu->r[10]; /* 027BB2C4 */ cpu->r[3] = cpu->r[25]; /* 027BB2C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB2CC */ _t33 = cpu->r[1] + 0x00000024u; /* 027BB2CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t33); /* 027BB2D0 */ _t34 = cpu->r[11] + 0x00000014u; /* 027BB2D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027BB2D4 */ cpu->ctr = cpu->r[0]; /* 027BB2D8 */ _t35 = cpu->r[25] + 0x00000000u; /* 027BB2D8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35); /* 027BB2DC */ cpu->r[3] = cpu->r[1] + 0x00000020u; /* 027BB2E0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB2E4 */ _t36 = cpu->r[1] + 0x00000020u; /* 027BB2E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36); /* 027BB2E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[9]); /* 027BB2EC */ _t37 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB2EC */ _t38 = _t37 & 0x00000001u; /* 027BB2EC */ if (_t38) goto L_027BB320; else goto L_027BB2F0; L_027BB2F0: ; // 0x27bb2f0 /* 027BB2F0 */ _t39 = cpu->r[25] + 0x00000000u; /* 027BB2F0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t39); /* 027BB2F4 */ cpu->r[11] = cpu->r[9] + 0xFFFFFFFFu; /* 027BB2F8 */ cpu->ctr = cpu->r[28]; /* 027BB2FC */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu; L_027BB300: ; // 0x27bb300 /* 027BB300 */ _t40 = cpu->r[4] + 0x00000001u; /* 027BB300 */ cpu->r[12] = rbrew_read8(cpu->mem, _t40); /* 027BB300 */ cpu->r[4] = _t40; /* 027BB304 */ _t41 = cpu->r[11] + 0x00000001u; /* 027BB304 */ cpu->r[6] = rbrew_read8(cpu->mem, _t41); /* 027BB304 */ cpu->r[11] = _t41; /* 027BB308 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[6]); /* 027BB30C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB30C */ _t43 = _t42 & 0x00000001u; /* 027BB30C */ if (_t43) goto L_027BB310; else goto L_027BB3A8; L_027BB310: ; // 0x27bb310 /* 027BB310 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027BB314 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB314 */ _t45 = _t44 & 0x00000001u; /* 027BB314 */ if (_t45) goto L_027BB320; else goto L_027BB318; L_027BB318: ; // 0x27bb318 /* 027BB318 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BB318 */ _t46 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BB318 */ _t47 = _t46 >> (0x00000002u & 31u); /* 027BB318 */ _t48 = _t47 & 0x00000001u; /* 027BB318 */ if (_t48) goto L_027BB300; else goto L_027BB31C; L_027BB31C: ; // 0x27bb31c /* 027BB31C */ goto L_027BB3A8; L_027BB320: ; // 0x27bb320 /* 027BB320 */ _t49 = cpu->r[1] + 0x00000024u; /* 027BB320 */ cpu->r[7] = rbrew_read32(cpu->mem, _t49); /* 027BB324 */ _t50 = cpu->r[7] + 0x00000014u; /* 027BB324 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50); /* 027BB328 */ cpu->ctr = cpu->r[0]; /* 027BB32C */ cpu->r[3] = cpu->r[1] + 0x00000020u; /* 027BB330 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB334 */ _t51 = cpu->r[1] + 0x00000008u; /* 027BB334 */ rbrew_write32(cpu->mem, _t51, cpu->r[26]); /* 027BB338 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BB33C */ cpu->r[9] = 0x10110000u; /* 027BB340 */ _t52 = cpu->r[1] + 0x00000020u; /* 027BB340 */ cpu->r[31] = rbrew_read32(cpu->mem, _t52); /* 027BB344 */ cpu->r[3] = cpu->r[27]; /* 027BB348 */ cpu->r[9] = cpu->r[9] + 0xFFFFB748u; /* 027BB34C */ _t53 = cpu->r[1] + 0x0000000Cu; /* 027BB34C */ rbrew_write32(cpu->mem, _t53, cpu->r[26]); /* 027BB350 */ cpu->r[5] = cpu->r[31]; /* 027BB354 */ cpu->r[6] = 0x00000000u; /* 027BB358 */ _t54 = cpu->r[1] + 0x00000010u; /* 027BB358 */ rbrew_write32(cpu->mem, _t54, cpu->r[9]); /* 027BB35C */ Gambit_fn_027B72F0(cpu); /* 027BB360 */ _t55 = cpu->r[27] + 0x000000E0u; /* 027BB360 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55); /* 027BB364 */ cpu->r[10] = 0x10110000u; /* 027BB368 */ _t56 = cpu->r[1] + 0x00000014u; /* 027BB368 */ rbrew_write32(cpu->mem, _t56, cpu->r[26]); /* 027BB36C */ cpu->r[10] = cpu->r[10] + 0xFFFFB758u; /* 027BB370 */ _t57 = cpu->r[1] + 0x00000018u; /* 027BB370 */ rbrew_write32(cpu->mem, _t57, cpu->r[26]); /* 027BB374 */ _t58 = cpu->r[1] + 0x0000001Cu; /* 027BB374 */ rbrew_write32(cpu->mem, _t58, cpu->r[10]); /* 027BB378 */ _t59 = cpu->r[11] + 0x0000003Cu; /* 027BB378 */ cpu->r[0] = rbrew_read32(cpu->mem, _t59); /* 027BB37C */ cpu->ctr = cpu->r[0]; /* 027BB380 */ cpu->r[6] = 0x00000000u; /* 027BB384 */ cpu->r[4] = cpu->r[1] + 0x00000014u; /* 027BB388 */ cpu->r[5] = cpu->r[31]; /* 027BB38C */ cpu->r[3] = cpu->r[27]; /* 027BB390 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB394 */ /* nop */ /* 027BB398 */ _t60 = cpu->r[1] + 0x000000DCu; /* 027BB398 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60); /* 027BB39C */ cpu->lr = cpu->r[0]; /* 027BB3A0 */ cpu->r[1] = cpu->r[1] + 0x000000D8u; /* 027BB3A4 */ return; L_027BB3A8: ; // 0x27bb3a8 /* 027BB3A8 */ _t61 = cpu->r[27] + 0x00000034u; /* 027BB3A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61); /* 027BB3AC */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BB3B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027BB3B4 */ _t62 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB3B4 */ _t63 = _t62 & 0x00000001u; /* 027BB3B4 */ if (_t63) goto L_027BB288; else goto L_027BB3B8; L_027BB3B8: ; // 0x27bb3b8 /* 027BB3B8 */ /* nop */ /* 027BB3BC */ _t64 = cpu->r[1] + 0x000000DCu; /* 027BB3BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t64); /* 027BB3C0 */ cpu->lr = cpu->r[0]; /* 027BB3C4 */ cpu->r[1] = cpu->r[1] + 0x000000D8u; /* 027BB3C8 */ return; } // fn_027BB3CC @ 0x27bb3cc void Gambit_fn_027BB3CC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37; L_027BB3CC: ; // 0x27bb3cc /* 027BB3CC */ cpu->r[0] = cpu->lr; /* 027BB3D0 */ _t0 = cpu->r[1] + 0xFFFFFF90u; /* 027BB3D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB3D0 */ cpu->r[1] = _t0; /* 027BB3D4 */ _t1 = cpu->r[1] + 0x0000006Cu; /* 027BB3D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BB3D8 */ _t2 = cpu->r[1] + 0x00000074u; /* 027BB3D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027BB3DC */ _t3 = cpu->r[4] + 0x00000010u; /* 027BB3DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027BB3E0 */ _t4 = cpu->r[12] + 0x00000000u; /* 027BB3E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4); /* 027BB3E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027BB3E8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB3E8 */ _t6 = _t5 & 0x00000001u; /* 027BB3E8 */ if (_t6) goto L_027BB490; else goto L_027BB3EC; L_027BB3EC: ; // 0x27bb3ec /* 027BB3EC */ _t7 = cpu->r[12] + 0x00000004u; /* 027BB3EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027BB3F0 */ _t8 = cpu->r[10] + 0x00000014u; /* 027BB3F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027BB3F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]); /* 027BB3F8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB3F8 */ _t10 = _t9 & 0x00000001u; /* 027BB3F8 */ if (_t10) goto L_027BB3FC; else goto L_027BB490; L_027BB3FC: ; // 0x27bb3fc /* 027BB3FC */ _t11 = cpu->r[12] + 0x00000000u; /* 027BB3FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027BB400 */ _t12 = cpu->r[31] + 0x00000060u; /* 027BB400 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t12); /* 027BB404 */ _t13 = cpu->r[31] + 0x00000050u; /* 027BB404 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t13); /* 027BB408 */ _t14 = cpu->r[31] + 0x00000054u; /* 027BB408 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t14); /* 027BB40C */ _t15 = cpu->r[31] + 0x00000064u; /* 027BB40C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15); /* 027BB410 */ _t16 = cpu->r[31] + 0x00000048u; /* 027BB410 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t16); /* 027BB414 */ _t17 = cpu->r[31] + 0x00000068u; /* 027BB414 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17); /* 027BB418 */ _t18 = cpu->r[31] + 0x00000044u; /* 027BB418 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18); /* 027BB41C */ _t19 = cpu->r[31] + 0x00000058u; /* 027BB41C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t19); /* 027BB420 */ _t20 = cpu->r[31] + 0x0000004Cu; /* 027BB420 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t20); /* 027BB424 */ _t21 = cpu->r[31] + 0x00000070u; /* 027BB424 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21); /* 027BB428 */ _t22 = cpu->r[31] + 0x0000006Cu; /* 027BB428 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22); /* 027BB42C */ _t23 = cpu->r[31] + 0x0000005Cu; /* 027BB42C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t23); /* 027BB430 */ _t24 = cpu->r[1] + 0x00000030u; /* 027BB430 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]); /* 027BB434 */ _t25 = cpu->r[1] + 0x00000010u; /* 027BB434 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[4]); /* 027BB438 */ _t26 = cpu->r[1] + 0x0000002Cu; /* 027BB438 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]); /* 027BB43C */ _t27 = cpu->r[1] + 0x0000001Cu; /* 027BB43C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[7]); /* 027BB440 */ cpu->r[3] = 0x00000018u; /* 027BB444 */ _t28 = cpu->r[1] + 0x00000028u; /* 027BB444 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]); /* 027BB448 */ _t29 = cpu->r[1] + 0x00000034u; /* 027BB448 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]); /* 027BB44C */ _t30 = cpu->r[1] + 0x0000000Cu; /* 027BB44C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[3]); /* 027BB450 */ _t31 = cpu->r[1] + 0x00000018u; /* 027BB450 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[6]); /* 027BB454 */ _t32 = cpu->r[1] + 0x00000024u; /* 027BB454 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[9]); /* 027BB458 */ _t33 = cpu->r[1] + 0x00000020u; /* 027BB458 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[8]); /* 027BB45C */ _t34 = cpu->r[1] + 0x00000008u; /* 027BB45C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]); /* 027BB460 */ _t35 = cpu->r[1] + 0x00000014u; /* 027BB460 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[5]); /* 027BB464 */ Gambit_fn_027E6E4C(cpu); /* 027BB468 */ Gambit_fn_02929174(cpu); /* 027BB46C */ cpu->r[4] = cpu->r[1] + 0x00000038u; /* 027BB470 */ Gambit_fn_02C69628(cpu); /* 027BB474 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BB478 */ cpu->r[3] = cpu->r[1] + 0x00000038u; /* 027BB47C */ cpu->r[5] = cpu->r[4]; /* 027BB480 */ Gambit_fn_02C69544(cpu); /* 027BB484 */ cpu->r[3] = cpu->r[31]; /* 027BB488 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BB48C */ Gambit_fn_02A39D84(cpu); L_027BB490: ; // 0x27bb490 /* 027BB490 */ _t36 = cpu->r[1] + 0x00000074u; /* 027BB490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36); /* 027BB494 */ _t37 = cpu->r[1] + 0x0000006Cu; /* 027BB494 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37); /* 027BB498 */ cpu->lr = cpu->r[0]; /* 027BB49C */ cpu->r[1] = cpu->r[1] + 0x00000070u; /* 027BB4A0 */ return; } // fn_027BB3D0 @ 0x27bb3d0 void Gambit_fn_027BB3D0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37; L_027BB3D0: ; // 0x27bb3d0 /* 027BB3D0 */ _t0 = cpu->r[1] + 0xFFFFFF90u; /* 027BB3D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB3D0 */ cpu->r[1] = _t0; /* 027BB3D4 */ _t1 = cpu->r[1] + 0x0000006Cu; /* 027BB3D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BB3D8 */ _t2 = cpu->r[1] + 0x00000074u; /* 027BB3D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027BB3DC */ _t3 = cpu->r[4] + 0x00000010u; /* 027BB3DC */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027BB3E0 */ _t4 = cpu->r[12] + 0x00000000u; /* 027BB3E0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4); /* 027BB3E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027BB3E8 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB3E8 */ _t6 = _t5 & 0x00000001u; /* 027BB3E8 */ if (_t6) goto L_027BB490; else goto L_027BB3EC; L_027BB3EC: ; // 0x27bb3ec /* 027BB3EC */ _t7 = cpu->r[12] + 0x00000004u; /* 027BB3EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027BB3F0 */ _t8 = cpu->r[10] + 0x00000014u; /* 027BB3F0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027BB3F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]); /* 027BB3F8 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB3F8 */ _t10 = _t9 & 0x00000001u; /* 027BB3F8 */ if (_t10) goto L_027BB3FC; else goto L_027BB490; L_027BB3FC: ; // 0x27bb3fc /* 027BB3FC */ _t11 = cpu->r[12] + 0x00000000u; /* 027BB3FC */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027BB400 */ _t12 = cpu->r[31] + 0x00000060u; /* 027BB400 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t12); /* 027BB404 */ _t13 = cpu->r[31] + 0x00000050u; /* 027BB404 */ cpu->f[5] = rbrew_read_f32(cpu->mem, _t13); /* 027BB408 */ _t14 = cpu->r[31] + 0x00000054u; /* 027BB408 */ cpu->f[6] = rbrew_read_f32(cpu->mem, _t14); /* 027BB40C */ _t15 = cpu->r[31] + 0x00000064u; /* 027BB40C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t15); /* 027BB410 */ _t16 = cpu->r[31] + 0x00000048u; /* 027BB410 */ cpu->f[3] = rbrew_read_f32(cpu->mem, _t16); /* 027BB414 */ _t17 = cpu->r[31] + 0x00000068u; /* 027BB414 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t17); /* 027BB418 */ _t18 = cpu->r[31] + 0x00000044u; /* 027BB418 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18); /* 027BB41C */ _t19 = cpu->r[31] + 0x00000058u; /* 027BB41C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t19); /* 027BB420 */ _t20 = cpu->r[31] + 0x0000004Cu; /* 027BB420 */ cpu->f[4] = rbrew_read_f32(cpu->mem, _t20); /* 027BB424 */ _t21 = cpu->r[31] + 0x00000070u; /* 027BB424 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t21); /* 027BB428 */ _t22 = cpu->r[31] + 0x0000006Cu; /* 027BB428 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t22); /* 027BB42C */ _t23 = cpu->r[31] + 0x0000005Cu; /* 027BB42C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t23); /* 027BB430 */ _t24 = cpu->r[1] + 0x00000030u; /* 027BB430 */ rbrew_write_f32(cpu->mem, _t24, cpu->f[12]); /* 027BB434 */ _t25 = cpu->r[1] + 0x00000010u; /* 027BB434 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[4]); /* 027BB438 */ _t26 = cpu->r[1] + 0x0000002Cu; /* 027BB438 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[11]); /* 027BB43C */ _t27 = cpu->r[1] + 0x0000001Cu; /* 027BB43C */ rbrew_write_f32(cpu->mem, _t27, cpu->f[7]); /* 027BB440 */ cpu->r[3] = 0x00000018u; /* 027BB444 */ _t28 = cpu->r[1] + 0x00000028u; /* 027BB444 */ rbrew_write_f32(cpu->mem, _t28, cpu->f[10]); /* 027BB448 */ _t29 = cpu->r[1] + 0x00000034u; /* 027BB448 */ rbrew_write_f32(cpu->mem, _t29, cpu->f[13]); /* 027BB44C */ _t30 = cpu->r[1] + 0x0000000Cu; /* 027BB44C */ rbrew_write_f32(cpu->mem, _t30, cpu->f[3]); /* 027BB450 */ _t31 = cpu->r[1] + 0x00000018u; /* 027BB450 */ rbrew_write_f32(cpu->mem, _t31, cpu->f[6]); /* 027BB454 */ _t32 = cpu->r[1] + 0x00000024u; /* 027BB454 */ rbrew_write_f32(cpu->mem, _t32, cpu->f[9]); /* 027BB458 */ _t33 = cpu->r[1] + 0x00000020u; /* 027BB458 */ rbrew_write_f32(cpu->mem, _t33, cpu->f[8]); /* 027BB45C */ _t34 = cpu->r[1] + 0x00000008u; /* 027BB45C */ rbrew_write_f32(cpu->mem, _t34, cpu->f[0]); /* 027BB460 */ _t35 = cpu->r[1] + 0x00000014u; /* 027BB460 */ rbrew_write_f32(cpu->mem, _t35, cpu->f[5]); /* 027BB464 */ Gambit_fn_027E6E4C(cpu); /* 027BB468 */ Gambit_fn_02929174(cpu); /* 027BB46C */ cpu->r[4] = cpu->r[1] + 0x00000038u; /* 027BB470 */ Gambit_fn_02C69628(cpu); /* 027BB474 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BB478 */ cpu->r[3] = cpu->r[1] + 0x00000038u; /* 027BB47C */ cpu->r[5] = cpu->r[4]; /* 027BB480 */ Gambit_fn_02C69544(cpu); /* 027BB484 */ cpu->r[3] = cpu->r[31]; /* 027BB488 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BB48C */ Gambit_fn_02A39D84(cpu); L_027BB490: ; // 0x27bb490 /* 027BB490 */ _t36 = cpu->r[1] + 0x00000074u; /* 027BB490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t36); /* 027BB494 */ _t37 = cpu->r[1] + 0x0000006Cu; /* 027BB494 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37); /* 027BB498 */ cpu->lr = cpu->r[0]; /* 027BB49C */ cpu->r[1] = cpu->r[1] + 0x00000070u; /* 027BB4A0 */ return; } // fn_027BB4A4 @ 0x27bb4a4 void Gambit_fn_027BB4A4(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_027BB4A4: ; // 0x27bb4a4 /* 027BB4A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB4A8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB4A8 */ _t1 = _t0 & 0x00000001u; /* 027BB4A8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB4A8 */ goto L_027BB4AC; L_027BB4AC: ; // 0x27bb4ac /* 027BB4AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB4AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB4B0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB4B0 */ _t3 = _t2 & 0x00000001u; /* 027BB4B0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB4B0 */ goto L_027BB4B4; L_027BB4B4: ; // 0x27bb4b4 /* 027BB4B4 */ 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_027BB4B8 @ 0x27bb4b8 void Gambit_fn_027BB4B8(CPUState* cpu) { L_027BB4B8: ; // 0x27bb4b8 /* 027BB4B8 */ return; } // fn_027BB4BC @ 0x27bb4bc void Gambit_fn_027BB4BC(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_027BB4BC: ; // 0x27bb4bc /* 027BB4BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB4C0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB4C0 */ _t1 = _t0 & 0x00000001u; /* 027BB4C0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB4C0 */ goto L_027BB4C4; L_027BB4C4: ; // 0x27bb4c4 /* 027BB4C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB4C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB4C8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB4C8 */ _t3 = _t2 & 0x00000001u; /* 027BB4C8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB4C8 */ goto L_027BB4CC; L_027BB4CC: ; // 0x27bb4cc /* 027BB4CC */ 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_027BB4D0 @ 0x27bb4d0 void Gambit_fn_027BB4D0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027BB4D0: ; // 0x27bb4d0 /* 027BB4D0 */ _t0 = cpu->r[3] + 0x00000000u; /* 027BB4D0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027BB4D4 */ _t1 = cpu->r[3] + 0x00000008u; /* 027BB4D4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027BB4D8 */ cpu->r[12] = cpu->r[11] + cpu->r[12]; /* 027BB4DC */ cpu->r[11] = 0x10110000u; /* 027BB4E0 */ _t2 = cpu->r[11] + 0x00007399u; /* 027BB4E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027BB4E4 */ _t3 = cpu->r[12] + 0xFFFFFFFFu; /* 027BB4E4 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]); /* 027BB4E8 */ return; } // fn_027BB4EC @ 0x27bb4ec void Gambit_fn_027BB4EC(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_027BB4EC: ; // 0x27bb4ec /* 027BB4EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB4F0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB4F0 */ _t1 = _t0 & 0x00000001u; /* 027BB4F0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB4F0 */ goto L_027BB4F4; L_027BB4F4: ; // 0x27bb4f4 /* 027BB4F4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB4F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB4F8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB4F8 */ _t3 = _t2 & 0x00000001u; /* 027BB4F8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB4F8 */ goto L_027BB4FC; L_027BB4FC: ; // 0x27bb4fc /* 027BB4FC */ 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_027BB500 @ 0x27bb500 void Gambit_fn_027BB500(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_027BB500: ; // 0x27bb500 /* 027BB500 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB504 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB504 */ _t1 = _t0 & 0x00000001u; /* 027BB504 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB504 */ goto L_027BB508; L_027BB508: ; // 0x27bb508 /* 027BB508 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB50C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB50C */ _t3 = _t2 & 0x00000001u; /* 027BB50C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB50C */ goto L_027BB510; L_027BB510: ; // 0x27bb510 /* 027BB510 */ 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_027BB514 @ 0x27bb514 void Gambit_fn_027BB514(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_027BB514: ; // 0x27bb514 /* 027BB514 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB518 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB518 */ _t1 = _t0 & 0x00000001u; /* 027BB518 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB518 */ goto L_027BB51C; L_027BB51C: ; // 0x27bb51c /* 027BB51C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB51C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB520 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB520 */ _t3 = _t2 & 0x00000001u; /* 027BB520 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB520 */ goto L_027BB524; L_027BB524: ; // 0x27bb524 /* 027BB524 */ 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_027BB528 @ 0x27bb528 void Gambit_fn_027BB528(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_027BB528: ; // 0x27bb528 /* 027BB528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB52C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB52C */ _t1 = _t0 & 0x00000001u; /* 027BB52C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB52C */ goto L_027BB530; L_027BB530: ; // 0x27bb530 /* 027BB530 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB534 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB534 */ _t3 = _t2 & 0x00000001u; /* 027BB534 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB534 */ goto L_027BB538; L_027BB538: ; // 0x27bb538 /* 027BB538 */ 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_027BB53C @ 0x27bb53c void Gambit_fn_027BB53C(CPUState* cpu) { uint32_t _t0; L_027BB53C: ; // 0x27bb53c /* 027BB53C */ _t0 = cpu->r[3] + 0x000000D4u; /* 027BB53C */ cpu->r[3] = rbrew_read8(cpu->mem, _t0); /* 027BB540 */ return; } // fn_027BB544 @ 0x27bb544 void Gambit_fn_027BB544(CPUState* cpu) { L_027BB544: ; // 0x27bb544 /* 027BB544 */ return; } // fn_027BB548 @ 0x27bb548 void Gambit_fn_027BB548(CPUState* cpu) { L_027BB548: ; // 0x27bb548 /* 027BB548 */ return; } // fn_027BB54C @ 0x27bb54c void Gambit_fn_027BB54C(CPUState* cpu) { L_027BB54C: ; // 0x27bb54c /* 027BB54C */ return; } // fn_027BB550 @ 0x27bb550 void Gambit_fn_027BB550(CPUState* cpu) { L_027BB550: ; // 0x27bb550 /* 027BB550 */ return; } // fn_027BB554 @ 0x27bb554 void Gambit_fn_027BB554(CPUState* cpu) { uint32_t _t0; L_027BB554: ; // 0x27bb554 /* 027BB554 */ cpu->r[12] = 0x10110000u; /* 027BB558 */ _t0 = cpu->r[12] + 0xFFFFB77Cu; /* 027BB558 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t0); /* 027BB55C */ return; } // fn_027BB560 @ 0x27bb560 void Gambit_fn_027BB560(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_027BB560: ; // 0x27bb560 /* 027BB560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB564 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB564 */ _t1 = _t0 & 0x00000001u; /* 027BB564 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB564 */ goto L_027BB568; L_027BB568: ; // 0x27bb568 /* 027BB568 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB568 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB56C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB56C */ _t3 = _t2 & 0x00000001u; /* 027BB56C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB56C */ goto L_027BB570; L_027BB570: ; // 0x27bb570 /* 027BB570 */ 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_027BB574 @ 0x27bb574 void Gambit_fn_027BB574(CPUState* cpu) { L_027BB574: ; // 0x27bb574 /* 027BB574 */ return; } // fn_027BB578 @ 0x27bb578 void Gambit_fn_027BB578(CPUState* cpu) { L_027BB578: ; // 0x27bb578 /* 027BB578 */ return; } // fn_027BB57C @ 0x27bb57c void Gambit_fn_027BB57C(CPUState* cpu) { L_027BB57C: ; // 0x27bb57c /* 027BB57C */ return; } // fn_027BB580 @ 0x27bb580 void Gambit_fn_027BB580(CPUState* cpu) { L_027BB580: ; // 0x27bb580 /* 027BB580 */ cpu->r[3] = 0x00000000u; /* 027BB584 */ return; } // fn_027BB588 @ 0x27bb588 void Gambit_fn_027BB588(CPUState* cpu) { L_027BB588: ; // 0x27bb588 /* 027BB588 */ return; } // fn_027BB58C @ 0x27bb58c void Gambit_fn_027BB58C(CPUState* cpu) { L_027BB58C: ; // 0x27bb58c /* 027BB58C */ return; } // fn_027BB590 @ 0x27bb590 void Gambit_fn_027BB590(CPUState* cpu) { L_027BB590: ; // 0x27bb590 /* 027BB590 */ return; } // fn_027BB594 @ 0x27bb594 void Gambit_fn_027BB594(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_027BB594: ; // 0x27bb594 /* 027BB594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB598 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB598 */ _t1 = _t0 & 0x00000001u; /* 027BB598 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB598 */ goto L_027BB59C; L_027BB59C: ; // 0x27bb59c /* 027BB59C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB59C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB5A0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB5A0 */ _t3 = _t2 & 0x00000001u; /* 027BB5A0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB5A0 */ goto L_027BB5A4; L_027BB5A4: ; // 0x27bb5a4 /* 027BB5A4 */ 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_027BB5A8 @ 0x27bb5a8 void Gambit_fn_027BB5A8(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_027BB5A8: ; // 0x27bb5a8 /* 027BB5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB5AC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB5AC */ _t1 = _t0 & 0x00000001u; /* 027BB5AC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB5AC */ goto L_027BB5B0; L_027BB5B0: ; // 0x27bb5b0 /* 027BB5B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB5B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB5B4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB5B4 */ _t3 = _t2 & 0x00000001u; /* 027BB5B4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB5B4 */ goto L_027BB5B8; L_027BB5B8: ; // 0x27bb5b8 /* 027BB5B8 */ 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_027BB5BC @ 0x27bb5bc void Gambit_fn_027BB5BC(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_027BB5BC: ; // 0x27bb5bc /* 027BB5BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB5C0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB5C0 */ _t1 = _t0 & 0x00000001u; /* 027BB5C0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB5C0 */ goto L_027BB5C4; L_027BB5C4: ; // 0x27bb5c4 /* 027BB5C4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BB5C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB5C8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB5C8 */ _t3 = _t2 & 0x00000001u; /* 027BB5C8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BB5C8 */ goto L_027BB5CC; L_027BB5CC: ; // 0x27bb5cc /* 027BB5CC */ 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_027BB5D0 @ 0x27bb5d0 void Gambit_fn_027BB5D0(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; L_027BB5D0: ; // 0x27bb5d0 /* 027BB5D0 */ cpu->r[0] = cpu->lr; /* 027BB5D4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027BB5D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB5D4 */ cpu->r[1] = _t0; /* 027BB5D8 */ _t1 = cpu->r[1] + 0x00000014u; /* 027BB5D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027BB5DC */ _t2 = cpu->r[1] + 0x00000010u; /* 027BB5DC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027BB5E0 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027BB5E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BB5E4 */ _t4 = cpu->r[1] + 0x00000018u; /* 027BB5E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027BB5E8 */ cpu->r[31] = cpu->r[3]; /* 027BB5E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BB5EC */ _t5 = cpu->r[1] + 0x00000024u; /* 027BB5EC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BB5F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB5F0 */ _t7 = _t6 & 0x00000001u; /* 027BB5F0 */ if (_t7) goto L_027BB5F4; else goto L_027BB604; L_027BB5F4: ; // 0x27bb5f4 /* 027BB5F4 */ cpu->r[3] = 0x00000050u; /* 027BB5F8 */ Gambit_fn_02801A78(cpu); /* 027BB5FC */ cpu->r[31] = cpu->r[3]; /* 027BB5FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BB600 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB600 */ _t9 = _t8 & 0x00000001u; /* 027BB600 */ if (_t9) goto L_027BB714; else goto L_027BB604; L_027BB604: ; // 0x27bb604 /* 027BB604 */ cpu->r[0] = 0x10110000u; /* 027BB608 */ cpu->r[0] = cpu->r[0] + 0xFFFFB9E8u; /* 027BB60C */ cpu->r[28] = cpu->r[31] + 0x00000004u; /* 027BB60C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BB610 */ _t10 = cpu->r[31] + 0x00000000u; /* 027BB610 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027BB614 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB614 */ _t12 = _t11 & 0x00000001u; /* 027BB614 */ if (_t12) goto L_027BB618; else goto L_027BB628; L_027BB618: ; // 0x27bb618 /* 027BB618 */ cpu->r[3] = 0x0000004Cu; /* 027BB61C */ Gambit_fn_02801A78(cpu); /* 027BB620 */ cpu->r[28] = cpu->r[3]; /* 027BB620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BB624 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB624 */ _t14 = _t13 & 0x00000001u; /* 027BB624 */ if (_t14) goto L_027BB6BC; else goto L_027BB628; L_027BB628: ; // 0x27bb628 /* 027BB628 */ cpu->r[29] = cpu->r[28]; /* 027BB628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BB62C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB62C */ _t16 = _t15 & 0x00000001u; /* 027BB62C */ if (_t16) goto L_027BB630; else goto L_027BB640; L_027BB630: ; // 0x27bb630 /* 027BB630 */ cpu->r[3] = 0x0000004Cu; /* 027BB634 */ Gambit_fn_02801A78(cpu); /* 027BB638 */ cpu->r[29] = cpu->r[3]; /* 027BB638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BB63C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB63C */ _t18 = _t17 & 0x00000001u; /* 027BB63C */ if (_t18) goto L_027BB6B0; else goto L_027BB640; L_027BB640: ; // 0x27bb640 /* 027BB640 */ cpu->r[3] = cpu->r[29]; /* 027BB640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB644 */ cpu->r[30] = 0x10110000u; /* 027BB648 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB648 */ _t20 = _t19 & 0x00000001u; /* 027BB648 */ if (_t20) goto L_027BB64C; else goto L_027BB678; L_027BB64C: ; // 0x27bb64c /* 027BB64C */ cpu->r[3] = 0x0000000Cu; /* 027BB650 */ Gambit_fn_02801A78(cpu); /* 027BB654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB658 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB658 */ _t22 = _t21 & 0x00000001u; /* 027BB658 */ if (_t22) goto L_027BB65C; else goto L_027BB678; L_027BB65C: ; // 0x27bb65c /* 027BB65C */ cpu->r[11] = 0x10110000u; /* 027BB660 */ _t23 = cpu->r[30] + 0x0000739Au; /* 027BB660 */ cpu->r[0] = rbrew_read16(cpu->mem, _t23); /* 027BB664 */ cpu->r[11] = cpu->r[11] + 0xFFFFB950u; /* 027BB668 */ _t24 = cpu->r[29] + 0x00000000u; /* 027BB668 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24); /* 027BB66C */ _t25 = cpu->r[29] + 0x00000004u; /* 027BB66C */ rbrew_write32(cpu->mem, _t25, cpu->r[11]); /* 027BB670 */ _t26 = cpu->r[12] + 0x00000000u; /* 027BB670 */ rbrew_write16(cpu->mem, _t26, (uint16_t)cpu->r[0]); /* 027BB674 */ goto L_027BB6B0; L_027BB678: ; // 0x27bb678 /* 027BB678 */ cpu->r[9] = 0x10110000u; /* 027BB67C */ cpu->r[0] = cpu->r[29] + 0x0000000Cu; /* 027BB680 */ cpu->r[9] = cpu->r[9] + 0xFFFFB938u; /* 027BB684 */ _t27 = cpu->r[3] + 0x00000000u; /* 027BB684 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]); /* 027BB688 */ cpu->r[0] = 0x00000020u; /* 027BB68C */ _t28 = cpu->r[3] + 0x00000004u; /* 027BB68C */ rbrew_write32(cpu->mem, _t28, cpu->r[9]); /* 027BB690 */ _t29 = cpu->r[3] + 0x00000008u; /* 027BB690 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]); /* 027BB694 */ _t30 = cpu->r[30] + 0x0000739Au; /* 027BB694 */ cpu->r[0] = rbrew_read16(cpu->mem, _t30); /* 027BB698 */ cpu->r[11] = 0x10110000u; /* 027BB69C */ _t31 = cpu->r[29] + 0x00000000u; /* 027BB69C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31); /* 027BB6A0 */ cpu->r[11] = cpu->r[11] + 0xFFFFB950u; /* 027BB6A4 */ _t32 = cpu->r[29] + 0x0000004Au; /* 027BB6A4 */ rbrew_write16(cpu->mem, _t32, (uint16_t)cpu->r[0]); /* 027BB6A8 */ _t33 = cpu->r[29] + 0x00000004u; /* 027BB6A8 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]); /* 027BB6AC */ _t34 = cpu->r[12] + 0x00000000u; /* 027BB6AC */ rbrew_write16(cpu->mem, _t34, (uint16_t)cpu->r[0]); L_027BB6B0: ; // 0x27bb6b0 /* 027BB6B0 */ cpu->r[6] = 0x10110000u; /* 027BB6B4 */ cpu->r[6] = cpu->r[6] + 0xFFFFB968u; /* 027BB6B8 */ _t35 = cpu->r[28] + 0x00000004u; /* 027BB6B8 */ rbrew_write32(cpu->mem, _t35, cpu->r[6]); L_027BB6BC: ; // 0x27bb6bc /* 027BB6BC */ cpu->r[7] = 0x10110000u; /* 027BB6C0 */ cpu->r[8] = 0x10110000u; /* 027BB6C4 */ cpu->r[7] = cpu->r[7] + 0xFFFFB890u; /* 027BB6C8 */ cpu->r[8] = cpu->r[8] + 0xFFFFB998u; /* 027BB6CC */ _t36 = cpu->r[1] + 0x0000000Cu; /* 027BB6CC */ rbrew_write32(cpu->mem, _t36, cpu->r[7]); /* 027BB6D0 */ _t37 = cpu->r[1] + 0x00000008u; /* 027BB6D0 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]); /* 027BB6D4 */ _t38 = cpu->r[31] + 0x00000008u; /* 027BB6D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38); /* 027BB6D8 */ _t39 = cpu->r[9] + 0x00000014u; /* 027BB6D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027BB6DC */ cpu->ctr = cpu->r[0]; /* 027BB6E0 */ cpu->r[3] = cpu->r[31] + 0x00000004u; /* 027BB6E4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB6E8 */ _t40 = cpu->r[1] + 0x0000000Cu; /* 027BB6E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t40); /* 027BB6EC */ _t41 = cpu->r[11] + 0x00000014u; /* 027BB6EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t41); /* 027BB6F0 */ cpu->ctr = cpu->r[12]; /* 027BB6F4 */ _t42 = cpu->r[31] + 0x00000004u; /* 027BB6F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42); /* 027BB6F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BB6FC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB700 */ _t43 = cpu->r[31] + 0x0000000Cu; /* 027BB700 */ cpu->r[4] = rbrew_read32(cpu->mem, _t43); /* 027BB704 */ cpu->r[6] = 0xFFFFFFFFu; /* 027BB708 */ _t44 = cpu->r[1] + 0x00000008u; /* 027BB708 */ cpu->r[5] = rbrew_read32(cpu->mem, _t44); /* 027BB70C */ cpu->r[3] = cpu->r[30]; /* 027BB710 */ Gambit_fn_0282C89C(cpu); L_027BB714: ; // 0x27bb714 /* 027BB714 */ _t45 = cpu->r[1] + 0x00000010u; /* 027BB714 */ cpu->r[28] = rbrew_read32(cpu->mem, _t45); /* 027BB718 */ _t46 = cpu->r[1] + 0x00000014u; /* 027BB718 */ cpu->r[29] = rbrew_read32(cpu->mem, _t46); /* 027BB71C */ _t47 = cpu->r[1] + 0x00000024u; /* 027BB71C */ cpu->r[0] = rbrew_read32(cpu->mem, _t47); /* 027BB720 */ cpu->r[3] = cpu->r[31]; /* 027BB724 */ _t48 = cpu->r[1] + 0x00000018u; /* 027BB724 */ cpu->r[30] = rbrew_read32(cpu->mem, _t48); /* 027BB728 */ cpu->lr = cpu->r[0]; /* 027BB72C */ _t49 = cpu->r[1] + 0x0000001Cu; /* 027BB72C */ cpu->r[31] = rbrew_read32(cpu->mem, _t49); /* 027BB730 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027BB734 */ return; } // fn_027BB5D4 @ 0x27bb5d4 void Gambit_fn_027BB5D4(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; L_027BB5D4: ; // 0x27bb5d4 /* 027BB5D4 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027BB5D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB5D4 */ cpu->r[1] = _t0; /* 027BB5D8 */ _t1 = cpu->r[1] + 0x00000014u; /* 027BB5D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027BB5DC */ _t2 = cpu->r[1] + 0x00000010u; /* 027BB5DC */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027BB5E0 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027BB5E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BB5E4 */ _t4 = cpu->r[1] + 0x00000018u; /* 027BB5E4 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027BB5E8 */ cpu->r[31] = cpu->r[3]; /* 027BB5E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BB5EC */ _t5 = cpu->r[1] + 0x00000024u; /* 027BB5EC */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BB5F0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB5F0 */ _t7 = _t6 & 0x00000001u; /* 027BB5F0 */ if (_t7) goto L_027BB5F4; else goto L_027BB604; L_027BB5F4: ; // 0x27bb5f4 /* 027BB5F4 */ cpu->r[3] = 0x00000050u; /* 027BB5F8 */ Gambit_fn_02801A78(cpu); /* 027BB5FC */ cpu->r[31] = cpu->r[3]; /* 027BB5FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BB600 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB600 */ _t9 = _t8 & 0x00000001u; /* 027BB600 */ if (_t9) goto L_027BB714; else goto L_027BB604; L_027BB604: ; // 0x27bb604 /* 027BB604 */ cpu->r[0] = 0x10110000u; /* 027BB608 */ cpu->r[0] = cpu->r[0] + 0xFFFFB9E8u; /* 027BB60C */ cpu->r[28] = cpu->r[31] + 0x00000004u; /* 027BB60C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BB610 */ _t10 = cpu->r[31] + 0x00000000u; /* 027BB610 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027BB614 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB614 */ _t12 = _t11 & 0x00000001u; /* 027BB614 */ if (_t12) goto L_027BB618; else goto L_027BB628; L_027BB618: ; // 0x27bb618 /* 027BB618 */ cpu->r[3] = 0x0000004Cu; /* 027BB61C */ Gambit_fn_02801A78(cpu); /* 027BB620 */ cpu->r[28] = cpu->r[3]; /* 027BB620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BB624 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB624 */ _t14 = _t13 & 0x00000001u; /* 027BB624 */ if (_t14) goto L_027BB6BC; else goto L_027BB628; L_027BB628: ; // 0x27bb628 /* 027BB628 */ cpu->r[29] = cpu->r[28]; /* 027BB628 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BB62C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB62C */ _t16 = _t15 & 0x00000001u; /* 027BB62C */ if (_t16) goto L_027BB630; else goto L_027BB640; L_027BB630: ; // 0x27bb630 /* 027BB630 */ cpu->r[3] = 0x0000004Cu; /* 027BB634 */ Gambit_fn_02801A78(cpu); /* 027BB638 */ cpu->r[29] = cpu->r[3]; /* 027BB638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BB63C */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB63C */ _t18 = _t17 & 0x00000001u; /* 027BB63C */ if (_t18) goto L_027BB6B0; else goto L_027BB640; L_027BB640: ; // 0x27bb640 /* 027BB640 */ cpu->r[3] = cpu->r[29]; /* 027BB640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB644 */ cpu->r[30] = 0x10110000u; /* 027BB648 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB648 */ _t20 = _t19 & 0x00000001u; /* 027BB648 */ if (_t20) goto L_027BB64C; else goto L_027BB678; L_027BB64C: ; // 0x27bb64c /* 027BB64C */ cpu->r[3] = 0x0000000Cu; /* 027BB650 */ Gambit_fn_02801A78(cpu); /* 027BB654 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB658 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB658 */ _t22 = _t21 & 0x00000001u; /* 027BB658 */ if (_t22) goto L_027BB65C; else goto L_027BB678; L_027BB65C: ; // 0x27bb65c /* 027BB65C */ cpu->r[11] = 0x10110000u; /* 027BB660 */ _t23 = cpu->r[30] + 0x0000739Au; /* 027BB660 */ cpu->r[0] = rbrew_read16(cpu->mem, _t23); /* 027BB664 */ cpu->r[11] = cpu->r[11] + 0xFFFFB950u; /* 027BB668 */ _t24 = cpu->r[29] + 0x00000000u; /* 027BB668 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24); /* 027BB66C */ _t25 = cpu->r[29] + 0x00000004u; /* 027BB66C */ rbrew_write32(cpu->mem, _t25, cpu->r[11]); /* 027BB670 */ _t26 = cpu->r[12] + 0x00000000u; /* 027BB670 */ rbrew_write16(cpu->mem, _t26, (uint16_t)cpu->r[0]); /* 027BB674 */ goto L_027BB6B0; L_027BB678: ; // 0x27bb678 /* 027BB678 */ cpu->r[9] = 0x10110000u; /* 027BB67C */ cpu->r[0] = cpu->r[29] + 0x0000000Cu; /* 027BB680 */ cpu->r[9] = cpu->r[9] + 0xFFFFB938u; /* 027BB684 */ _t27 = cpu->r[3] + 0x00000000u; /* 027BB684 */ rbrew_write32(cpu->mem, _t27, cpu->r[0]); /* 027BB688 */ cpu->r[0] = 0x00000020u; /* 027BB68C */ _t28 = cpu->r[3] + 0x00000004u; /* 027BB68C */ rbrew_write32(cpu->mem, _t28, cpu->r[9]); /* 027BB690 */ _t29 = cpu->r[3] + 0x00000008u; /* 027BB690 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]); /* 027BB694 */ _t30 = cpu->r[30] + 0x0000739Au; /* 027BB694 */ cpu->r[0] = rbrew_read16(cpu->mem, _t30); /* 027BB698 */ cpu->r[11] = 0x10110000u; /* 027BB69C */ _t31 = cpu->r[29] + 0x00000000u; /* 027BB69C */ cpu->r[12] = rbrew_read32(cpu->mem, _t31); /* 027BB6A0 */ cpu->r[11] = cpu->r[11] + 0xFFFFB950u; /* 027BB6A4 */ _t32 = cpu->r[29] + 0x0000004Au; /* 027BB6A4 */ rbrew_write16(cpu->mem, _t32, (uint16_t)cpu->r[0]); /* 027BB6A8 */ _t33 = cpu->r[29] + 0x00000004u; /* 027BB6A8 */ rbrew_write32(cpu->mem, _t33, cpu->r[11]); /* 027BB6AC */ _t34 = cpu->r[12] + 0x00000000u; /* 027BB6AC */ rbrew_write16(cpu->mem, _t34, (uint16_t)cpu->r[0]); L_027BB6B0: ; // 0x27bb6b0 /* 027BB6B0 */ cpu->r[6] = 0x10110000u; /* 027BB6B4 */ cpu->r[6] = cpu->r[6] + 0xFFFFB968u; /* 027BB6B8 */ _t35 = cpu->r[28] + 0x00000004u; /* 027BB6B8 */ rbrew_write32(cpu->mem, _t35, cpu->r[6]); L_027BB6BC: ; // 0x27bb6bc /* 027BB6BC */ cpu->r[7] = 0x10110000u; /* 027BB6C0 */ cpu->r[8] = 0x10110000u; /* 027BB6C4 */ cpu->r[7] = cpu->r[7] + 0xFFFFB890u; /* 027BB6C8 */ cpu->r[8] = cpu->r[8] + 0xFFFFB998u; /* 027BB6CC */ _t36 = cpu->r[1] + 0x0000000Cu; /* 027BB6CC */ rbrew_write32(cpu->mem, _t36, cpu->r[7]); /* 027BB6D0 */ _t37 = cpu->r[1] + 0x00000008u; /* 027BB6D0 */ rbrew_write32(cpu->mem, _t37, cpu->r[8]); /* 027BB6D4 */ _t38 = cpu->r[31] + 0x00000008u; /* 027BB6D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t38); /* 027BB6D8 */ _t39 = cpu->r[9] + 0x00000014u; /* 027BB6D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027BB6DC */ cpu->ctr = cpu->r[0]; /* 027BB6E0 */ cpu->r[3] = cpu->r[31] + 0x00000004u; /* 027BB6E4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB6E8 */ _t40 = cpu->r[1] + 0x0000000Cu; /* 027BB6E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t40); /* 027BB6EC */ _t41 = cpu->r[11] + 0x00000014u; /* 027BB6EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t41); /* 027BB6F0 */ cpu->ctr = cpu->r[12]; /* 027BB6F4 */ _t42 = cpu->r[31] + 0x00000004u; /* 027BB6F4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t42); /* 027BB6F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BB6FC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BB700 */ _t43 = cpu->r[31] + 0x0000000Cu; /* 027BB700 */ cpu->r[4] = rbrew_read32(cpu->mem, _t43); /* 027BB704 */ cpu->r[6] = 0xFFFFFFFFu; /* 027BB708 */ _t44 = cpu->r[1] + 0x00000008u; /* 027BB708 */ cpu->r[5] = rbrew_read32(cpu->mem, _t44); /* 027BB70C */ cpu->r[3] = cpu->r[30]; /* 027BB710 */ Gambit_fn_0282C89C(cpu); L_027BB714: ; // 0x27bb714 /* 027BB714 */ _t45 = cpu->r[1] + 0x00000010u; /* 027BB714 */ cpu->r[28] = rbrew_read32(cpu->mem, _t45); /* 027BB718 */ _t46 = cpu->r[1] + 0x00000014u; /* 027BB718 */ cpu->r[29] = rbrew_read32(cpu->mem, _t46); /* 027BB71C */ _t47 = cpu->r[1] + 0x00000024u; /* 027BB71C */ cpu->r[0] = rbrew_read32(cpu->mem, _t47); /* 027BB720 */ cpu->r[3] = cpu->r[31]; /* 027BB724 */ _t48 = cpu->r[1] + 0x00000018u; /* 027BB724 */ cpu->r[30] = rbrew_read32(cpu->mem, _t48); /* 027BB728 */ cpu->lr = cpu->r[0]; /* 027BB72C */ _t49 = cpu->r[1] + 0x0000001Cu; /* 027BB72C */ cpu->r[31] = rbrew_read32(cpu->mem, _t49); /* 027BB730 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027BB734 */ return; } // fn_027BB738 @ 0x27bb738 void Gambit_fn_027BB738(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_027BB738: ; // 0x27bb738 /* 027BB738 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BB738 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB738 */ cpu->r[1] = _t0; /* 027BB73C */ _t1 = cpu->r[3] + 0x000000B8u; /* 027BB73C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1); /* 027BB740 */ _t2 = cpu->r[3] + 0x000000C0u; /* 027BB740 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t2); /* 027BB744 */ _t3 = cpu->r[3] + 0x000000C4u; /* 027BB744 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t3); /* 027BB748 */ _t4 = cpu->r[3] + 0x00000040u; /* 027BB748 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t4); /* 027BB74C */ cpu->f[13] = cpu->f[0] + cpu->f[9]; /* 027BB750 */ _t5 = cpu->r[3] + 0x000000BCu; /* 027BB750 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t5); /* 027BB754 */ cpu->f[10] = cpu->f[10] + cpu->f[11]; /* 027BB758 */ _t6 = cpu->r[3] + 0x0000003Cu; /* 027BB758 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t6); /* 027BB75C */ cpu->f[11] = cpu->f[0] + cpu->f[11]; /* 027BB760 */ cpu->f[0] = cpu->f[12] + cpu->f[9]; /* 027BB764 */ cpu->r[9] = 0x10110000u; /* 027BB768 */ cpu->f[9] = cpu->f[10] / cpu->f[11]; /* 027BB76C */ _t7 = cpu->r[9] + 0xFFFFB9A4u; /* 027BB76C */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t7); /* 027BB770 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[11]); /* 027BB774 */ cpu->f[8] = cpu->f[0] / cpu->f[13]; /* 027BB778 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB778 */ _t9 = _t8 & 0x00000001u; /* 027BB778 */ if (_t9) goto L_027BB77C; else goto L_027BB784; L_027BB77C: ; // 0x27bb77c /* 027BB77C */ cpu->f[13] = cpu->f[9] - cpu->f[11]; /* 027BB780 */ /* nop */ L_027BB784: ; // 0x27bb784 /* 027BB784 */ cpu->f[0] = (uint32_t)(int32_t)cpu->f[8]; /* 027BB788 */ cpu->r[0] = cpu->r[1] + 0x00000008u; /* 027BB78C */ cpu->r[9] = 0x10110000u; /* 027BB790 */ /* nop */ /* 027BB794 */ _t10 = cpu->r[1] + 0x00000008u; /* 027BB794 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10); /* 027BB798 */ cpu->r[10] = 0x43300000u; /* 027BB79C */ _t11 = cpu->r[9] + 0xFFFFB9B0u; /* 027BB79C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t11); /* 027BB7A0 */ cpu->r[0] = cpu->r[11] ^ 0x80000000u; /* 027BB7A4 */ _t12 = cpu->r[1] + 0x00000008u; /* 027BB7A4 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]); /* 027BB7A8 */ _t13 = cpu->r[1] + 0x0000000Cu; /* 027BB7A8 */ rbrew_write32(cpu->mem, _t13, cpu->r[0]); /* 027BB7AC */ _t14 = cpu->r[1] + 0x00000008u; /* 027BB7AC */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t14); /* 027BB7B0 */ cpu->f[12] = cpu->f[11] - cpu->f[13]; /* 027BB7B4 */ cpu->f[10] = (double)(float)cpu->f[12]; /* 027BB7B8 */ cpu->r[9] = 0x10110000u; /* 027BB7BC */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[8]); /* 027BB7C0 */ _t15 = cpu->r[9] + 0xFFFFB9A8u; /* 027BB7C0 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t15); /* 027BB7C4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB7C4 */ _t17 = _t16 & 0x00000001u; /* 027BB7C4 */ if (_t17) goto L_027BB7D4; else goto L_027BB7C8; L_027BB7C8: ; // 0x27bb7c8 /* 027BB7C8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[0]); /* 027BB7CC */ _t18 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB7CC */ _t19 = _t18 & 0x00000001u; /* 027BB7CC */ if (_t19) goto L_027BB7D0; else goto L_027BB7D4; L_027BB7D0: ; // 0x27bb7d0 /* 027BB7D0 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu; L_027BB7D4: ; // 0x27bb7d4 /* 027BB7D4 */ cpu->r[12] = 0x10110000u; /* 027BB7D8 */ cpu->f[13] = (uint32_t)(int32_t)cpu->f[9]; /* 027BB7DC */ cpu->r[10] = 0x43300000u; /* 027BB7E0 */ _t20 = cpu->r[12] + 0xFFFFB9B0u; /* 027BB7E0 */ cpu->f[12] = rbrew_read_f64(cpu->mem, _t20); /* 027BB7E4 */ cpu->r[0] = cpu->r[1] + 0x00000008u; /* 027BB7E8 */ /* nop */ /* 027BB7EC */ _t21 = cpu->r[1] + 0x00000008u; /* 027BB7EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t21); /* 027BB7F0 */ _t22 = cpu->r[1] + 0x00000008u; /* 027BB7F0 */ rbrew_write32(cpu->mem, _t22, cpu->r[10]); /* 027BB7F4 */ cpu->r[10] = cpu->r[12] ^ 0x80000000u; /* 027BB7F8 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027BB7F8 */ rbrew_write32(cpu->mem, _t23, cpu->r[10]); /* 027BB7FC */ _t24 = cpu->r[1] + 0x00000008u; /* 027BB7FC */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t24); /* 027BB800 */ cpu->f[13] = cpu->f[11] - cpu->f[12]; /* 027BB804 */ cpu->f[10] = (double)(float)cpu->f[13]; /* 027BB808 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[10], cpu->f[9]); /* 027BB80C */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB80C */ _t26 = _t25 & 0x00000001u; /* 027BB80C */ if (_t26) goto L_027BB81C; else goto L_027BB810; L_027BB810: ; // 0x27bb810 /* 027BB810 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[9], cpu->f[0]); /* 027BB814 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB814 */ _t28 = _t27 & 0x00000001u; /* 027BB814 */ if (_t28) goto L_027BB818; else goto L_027BB81C; L_027BB818: ; // 0x27bb818 /* 027BB818 */ cpu->r[12] = cpu->r[12] + 0xFFFFFFFFu; L_027BB81C: ; // 0x27bb81c /* 027BB81C */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[4] * (int32_t)cpu->r[11]); /* 027BB820 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BB824 */ cpu->r[3] = (uint32_t)((int32_t)cpu->r[9] * (int32_t)cpu->r[12]); /* 027BB828 */ return; } // fn_027BB82C @ 0x27bb82c void Gambit_fn_027BB82C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12; L_027BB82C: ; // 0x27bb82c /* 027BB82C */ cpu->r[0] = cpu->lr; /* 027BB830 */ _t0 = cpu->r[1] + 0x00000004u; /* 027BB830 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027BB834 */ cpu->r[8] = cpu->r[3]; /* 027BB838 */ _t1 = cpu->r[1] + 0xFFFFFFF8u; /* 027BB838 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027BB838 */ cpu->r[1] = _t1; /* 027BB83C */ _t2 = cpu->r[8] + 0x0000000Cu; /* 027BB83C */ cpu->r[3] = rbrew_read32(cpu->mem, _t2); /* 027BB840 */ cpu->r[0] = cpu->r[4]; /* 027BB844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu); /* 027BB848 */ cpu->r[4] = cpu->r[5]; /* 027BB84C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB84C */ _t4 = _t3 & 0x00000001u; /* 027BB84C */ if (_t4) goto L_027BB850; else goto L_027BB880; L_027BB850: ; // 0x27bb850 /* 027BB850 */ cpu->r[3] = cpu->r[0]; /* 027BB854 */ Gambit_fn_027BB738(cpu); /* 027BB858 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000008u); /* 027BB85C */ _t5 = cpu->r[8] + 0x00000004u; /* 027BB85C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027BB860 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB860 */ _t7 = _t6 & 0x00000001u; /* 027BB860 */ if (_t7) goto L_027BB864; else goto L_027BB868; L_027BB864: ; // 0x27bb864 /* 027BB864 */ cpu->r[3] = 0x00000008u; L_027BB868: ; // 0x27bb868 /* 027BB868 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]); /* 027BB86C */ _t8 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB86C */ _t9 = _t8 & 0x00000001u; /* 027BB86C */ if (_t9) goto L_027BB870; else goto L_027BB874; L_027BB870: ; // 0x27bb870 /* 027BB870 */ cpu->r[3] = cpu->r[0]; L_027BB874: ; // 0x27bb874 /* 027BB874 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000100u); /* 027BB878 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BB878 */ _t11 = _t10 & 0x00000001u; /* 027BB878 */ if (_t11) goto L_027BB87C; else goto L_027BB880; L_027BB87C: ; // 0x27bb87c /* 027BB87C */ cpu->r[3] = 0x00000100u; L_027BB880: ; // 0x27bb880 /* 027BB880 */ _t12 = cpu->r[1] + 0x0000000Cu; /* 027BB880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BB884 */ cpu->lr = cpu->r[0]; /* 027BB888 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BB88C */ return; } // fn_027BB838 @ 0x27bb838 void Gambit_fn_027BB838(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027BB838: ; // 0x27bb838 /* 027BB838 */ _t0 = cpu->r[1] + 0xFFFFFFF8u; /* 027BB838 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB838 */ cpu->r[1] = _t0; /* 027BB83C */ _t1 = cpu->r[8] + 0x0000000Cu; /* 027BB83C */ cpu->r[3] = rbrew_read32(cpu->mem, _t1); /* 027BB840 */ cpu->r[0] = cpu->r[4]; /* 027BB844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu); /* 027BB848 */ cpu->r[4] = cpu->r[5]; /* 027BB84C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB84C */ _t3 = _t2 & 0x00000001u; /* 027BB84C */ if (_t3) goto L_027BB850; else goto L_027BB880; L_027BB850: ; // 0x27bb850 /* 027BB850 */ cpu->r[3] = cpu->r[0]; /* 027BB854 */ Gambit_fn_027BB738(cpu); /* 027BB858 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000008u); /* 027BB85C */ _t4 = cpu->r[8] + 0x00000004u; /* 027BB85C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027BB860 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB860 */ _t6 = _t5 & 0x00000001u; /* 027BB860 */ if (_t6) goto L_027BB864; else goto L_027BB868; L_027BB864: ; // 0x27bb864 /* 027BB864 */ cpu->r[3] = 0x00000008u; L_027BB868: ; // 0x27bb868 /* 027BB868 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]); /* 027BB86C */ _t7 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BB86C */ _t8 = _t7 & 0x00000001u; /* 027BB86C */ if (_t8) goto L_027BB870; else goto L_027BB874; L_027BB870: ; // 0x27bb870 /* 027BB870 */ cpu->r[3] = cpu->r[0]; L_027BB874: ; // 0x27bb874 /* 027BB874 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000100u); /* 027BB878 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BB878 */ _t10 = _t9 & 0x00000001u; /* 027BB878 */ if (_t10) goto L_027BB87C; else goto L_027BB880; L_027BB87C: ; // 0x27bb87c /* 027BB87C */ cpu->r[3] = 0x00000100u; L_027BB880: ; // 0x27bb880 /* 027BB880 */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027BB880 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027BB884 */ cpu->lr = cpu->r[0]; /* 027BB888 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BB88C */ return; } // fn_027BB890 @ 0x27bb890 void Gambit_fn_027BB890(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027BB890: ; // 0x27bb890 /* 027BB890 */ cpu->r[0] = cpu->lr; /* 027BB894 */ cpu->r[4] = 0x10110000u; /* 027BB898 */ _t0 = cpu->r[1] + 0x00000004u; /* 027BB898 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027BB89C */ cpu->r[4] = cpu->r[4] + 0xFFFFB9C0u; /* 027BB8A0 */ _t1 = cpu->r[1] + 0xFFFFFFF0u; /* 027BB8A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027BB8A0 */ cpu->r[1] = _t1; /* 027BB8A4 */ Gambit_fn_0285FB2C(cpu); /* 027BB8A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB8AC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB8AC */ _t3 = _t2 & 0x00000001u; /* 027BB8AC */ if (_t3) goto L_027BB8B0; else goto L_027BB8C8; L_027BB8B0: ; // 0x27bb8b0 /* 027BB8B0 */ _t4 = cpu->r[1] + 0x00000014u; /* 027BB8B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027BB8B4 */ cpu->r[11] = 0x10110000u; /* 027BB8B8 */ cpu->lr = cpu->r[0]; /* 027BB8BC */ _t5 = cpu->r[11] + 0xFFFFB9B8u; /* 027BB8BC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t5); /* 027BB8C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BB8C4 */ return; L_027BB8C8: ; // 0x27bb8c8 /* 027BB8C8 */ _t6 = cpu->r[3] + 0x0000000Au; /* 027BB8C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t6); /* 027BB8CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u); /* 027BB8D0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB8D0 */ _t8 = _t7 & 0x00000001u; /* 027BB8D0 */ if (_t8) goto L_027BB8EC; else goto L_027BB8D4; L_027BB8D4: ; // 0x27bb8d4 /* 027BB8D4 */ _t9 = cpu->r[1] + 0x00000014u; /* 027BB8D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027BB8D8 */ cpu->r[12] = 0x10110000u; /* 027BB8DC */ cpu->lr = cpu->r[0]; /* 027BB8E0 */ _t10 = cpu->r[12] + 0xFFFFB9A8u; /* 027BB8E0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t10); /* 027BB8E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BB8E8 */ return; L_027BB8EC: ; // 0x27bb8ec /* 027BB8EC */ _t11 = cpu->r[3] + 0x00000004u; /* 027BB8EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t11); /* 027BB8F0 */ cpu->r[12] = 0x43300000u; /* 027BB8F4 */ _t12 = cpu->r[3] + cpu->r[11]; /* 027BB8F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BB8F8 */ _t13 = cpu->r[1] + 0x00000008u; /* 027BB8F8 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]); /* 027BB8FC */ cpu->r[12] = 0x10110000u; /* 027BB900 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u; /* 027BB904 */ _t14 = cpu->r[12] + 0xFFFFB9B0u; /* 027BB904 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t14); /* 027BB908 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027BB908 */ rbrew_write32(cpu->mem, _t15, cpu->r[0]); /* 027BB90C */ _t16 = cpu->r[1] + 0x00000008u; /* 027BB90C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t16); /* 027BB910 */ cpu->r[12] = 0x10110000u; /* 027BB914 */ cpu->f[0] = cpu->f[13] - cpu->f[0]; /* 027BB918 */ _t17 = cpu->r[12] + 0xFFFFB9BCu; /* 027BB918 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17); /* 027BB91C */ _t18 = cpu->r[1] + 0x00000014u; /* 027BB91C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027BB920 */ cpu->f[0] = (double)(float)cpu->f[0]; /* 027BB924 */ cpu->lr = cpu->r[0]; /* 027BB928 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BB92C */ cpu->f[1] = cpu->f[0] / cpu->f[13]; /* 027BB930 */ return; } // fn_027BB8A0 @ 0x27bb8a0 void Gambit_fn_027BB8A0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17; L_027BB8A0: ; // 0x27bb8a0 /* 027BB8A0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BB8A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB8A0 */ cpu->r[1] = _t0; /* 027BB8A4 */ Gambit_fn_0285FB2C(cpu); /* 027BB8A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB8AC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB8AC */ _t2 = _t1 & 0x00000001u; /* 027BB8AC */ if (_t2) goto L_027BB8B0; else goto L_027BB8C8; L_027BB8B0: ; // 0x27bb8b0 /* 027BB8B0 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BB8B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027BB8B4 */ cpu->r[11] = 0x10110000u; /* 027BB8B8 */ cpu->lr = cpu->r[0]; /* 027BB8BC */ _t4 = cpu->r[11] + 0xFFFFB9B8u; /* 027BB8BC */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t4); /* 027BB8C0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BB8C4 */ return; L_027BB8C8: ; // 0x27bb8c8 /* 027BB8C8 */ _t5 = cpu->r[3] + 0x0000000Au; /* 027BB8C8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t5); /* 027BB8CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000001u); /* 027BB8D0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB8D0 */ _t7 = _t6 & 0x00000001u; /* 027BB8D0 */ if (_t7) goto L_027BB8EC; else goto L_027BB8D4; L_027BB8D4: ; // 0x27bb8d4 /* 027BB8D4 */ _t8 = cpu->r[1] + 0x00000014u; /* 027BB8D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027BB8D8 */ cpu->r[12] = 0x10110000u; /* 027BB8DC */ cpu->lr = cpu->r[0]; /* 027BB8E0 */ _t9 = cpu->r[12] + 0xFFFFB9A8u; /* 027BB8E0 */ cpu->f[1] = rbrew_read_f32(cpu->mem, _t9); /* 027BB8E4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BB8E8 */ return; L_027BB8EC: ; // 0x27bb8ec /* 027BB8EC */ _t10 = cpu->r[3] + 0x00000004u; /* 027BB8EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t10); /* 027BB8F0 */ cpu->r[12] = 0x43300000u; /* 027BB8F4 */ _t11 = cpu->r[3] + cpu->r[11]; /* 027BB8F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027BB8F8 */ _t12 = cpu->r[1] + 0x00000008u; /* 027BB8F8 */ rbrew_write32(cpu->mem, _t12, cpu->r[12]); /* 027BB8FC */ cpu->r[12] = 0x10110000u; /* 027BB900 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u; /* 027BB904 */ _t13 = cpu->r[12] + 0xFFFFB9B0u; /* 027BB904 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t13); /* 027BB908 */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027BB908 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027BB90C */ _t15 = cpu->r[1] + 0x00000008u; /* 027BB90C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t15); /* 027BB910 */ cpu->r[12] = 0x10110000u; /* 027BB914 */ cpu->f[0] = cpu->f[13] - cpu->f[0]; /* 027BB918 */ _t16 = cpu->r[12] + 0xFFFFB9BCu; /* 027BB918 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t16); /* 027BB91C */ _t17 = cpu->r[1] + 0x00000014u; /* 027BB91C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027BB920 */ cpu->f[0] = (double)(float)cpu->f[0]; /* 027BB924 */ cpu->lr = cpu->r[0]; /* 027BB928 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BB92C */ cpu->f[1] = cpu->f[0] / cpu->f[13]; /* 027BB930 */ return; } // fn_027BB934 @ 0x27bb934 void Gambit_fn_027BB934(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027BB934: ; // 0x27bb934 /* 027BB934 */ cpu->r[0] = cpu->lr; /* 027BB938 */ _t0 = cpu->r[1] + 0x00000004u; /* 027BB938 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027BB93C */ _t1 = cpu->r[1] + 0xFFFFFFF8u; /* 027BB93C */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027BB93C */ cpu->r[1] = _t1; /* 027BB940 */ Gambit_fn_027BB890(cpu); /* 027BB944 */ cpu->r[12] = 0x10110000u; /* 027BB948 */ _t2 = cpu->r[12] + 0xFFFFB9A8u; /* 027BB948 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t2); /* 027BB94C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]); /* 027BB950 */ /* nop */ /* 027BB954 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu); /* 027BB958 */ cpu->r[3] = cpu->r[0] ^ 0x00000001u; /* 027BB95C */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027BB95C */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027BB960 */ cpu->lr = cpu->r[0]; /* 027BB964 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BB968 */ return; } // fn_027BB93C @ 0x27bb93c void Gambit_fn_027BB93C(CPUState* cpu) { uint32_t _t0, _t1, _t2; L_027BB93C: ; // 0x27bb93c /* 027BB93C */ _t0 = cpu->r[1] + 0xFFFFFFF8u; /* 027BB93C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB93C */ cpu->r[1] = _t0; /* 027BB940 */ Gambit_fn_027BB890(cpu); /* 027BB944 */ cpu->r[12] = 0x10110000u; /* 027BB948 */ _t1 = cpu->r[12] + 0xFFFFB9A8u; /* 027BB948 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t1); /* 027BB94C */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[1], cpu->f[0]); /* 027BB950 */ /* nop */ /* 027BB954 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x0000001Fu, 0x0000001Fu); /* 027BB958 */ cpu->r[3] = cpu->r[0] ^ 0x00000001u; /* 027BB95C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BB95C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027BB960 */ cpu->lr = cpu->r[0]; /* 027BB964 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BB968 */ return; } // fn_027BB96C @ 0x27bb96c void Gambit_fn_027BB96C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22; L_027BB96C: ; // 0x27bb96c /* 027BB96C */ cpu->r[0] = cpu->lr; /* 027BB970 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BB970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB970 */ cpu->r[1] = _t0; /* 027BB974 */ _t1 = cpu->r[1] + 0x00000014u; /* 027BB974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BB978 */ cpu->r[31] = cpu->r[4]; /* 027BB97C */ cpu->r[4] = 0x10110000u; /* 027BB980 */ _t2 = cpu->r[1] + 0x00000010u; /* 027BB980 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BB984 */ cpu->r[4] = cpu->r[4] + 0xFFFFB9CCu; /* 027BB988 */ cpu->r[30] = cpu->r[3]; /* 027BB98C */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027BB98C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BB990 */ Gambit_fn_0285FB2C(cpu); /* 027BB994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB998 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB998 */ _t5 = _t4 & 0x00000001u; /* 027BB998 */ if (_t5) goto L_027BB9B8; else goto L_027BB99C; L_027BB99C: ; // 0x27bb99c /* 027BB99C */ _t6 = cpu->r[1] + 0x0000001Cu; /* 027BB99C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027BB9A0 */ _t7 = cpu->r[1] + 0x00000010u; /* 027BB9A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7); /* 027BB9A4 */ cpu->lr = cpu->r[0]; /* 027BB9A8 */ _t8 = cpu->r[1] + 0x00000014u; /* 027BB9A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8); /* 027BB9AC */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BB9B0 */ cpu->r[3] = 0x00000000u; /* 027BB9B4 */ return; L_027BB9B8: ; // 0x27bb9b8 /* 027BB9B8 */ cpu->r[4] = 0x10110000u; /* 027BB9BC */ cpu->r[3] = cpu->r[30]; /* 027BB9C0 */ cpu->r[4] = cpu->r[4] + 0xFFFFB9D4u; /* 027BB9C4 */ Gambit_fn_0285FB2C(cpu); /* 027BB9C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB9CC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB9CC */ _t10 = _t9 & 0x00000001u; /* 027BB9CC */ if (_t10) goto L_027BB9D0; else goto L_027BB9DC; L_027BB9D0: ; // 0x27bb9d0 /* 027BB9D0 */ _t11 = cpu->r[31] + 0x00000000u; /* 027BB9D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t11); /* 027BB9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB9D8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB9D8 */ _t13 = _t12 & 0x00000001u; /* 027BB9D8 */ if (_t13) goto L_027BB9DC; else goto L_027BB9F8; L_027BB9DC: ; // 0x27bb9dc /* 027BB9DC */ _t14 = cpu->r[1] + 0x0000001Cu; /* 027BB9DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BB9E0 */ _t15 = cpu->r[1] + 0x00000010u; /* 027BB9E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15); /* 027BB9E4 */ cpu->lr = cpu->r[0]; /* 027BB9E8 */ _t16 = cpu->r[1] + 0x00000014u; /* 027BB9E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027BB9EC */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BB9F0 */ cpu->r[3] = 0x00000001u; /* 027BB9F4 */ return; L_027BB9F8: ; // 0x27bb9f8 /* 027BB9F8 */ _t17 = cpu->r[31] + 0x00000008u; /* 027BB9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027BB9FC */ cpu->r[12] = 0x10110000u; /* 027BBA00 */ cpu->r[12] = cpu->r[12] + 0xFFFFB8A8u; /* 027BBA04 */ _t18 = cpu->r[1] + 0x00000008u; /* 027BBA04 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]); /* 027BBA08 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027BBA08 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]); /* 027BBA0C */ Gambit_fn_027BDBAC(cpu); /* 027BBA10 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BBA14 */ Gambit_fn_027C2100(cpu); /* 027BBA18 */ _t20 = cpu->r[1] + 0x0000001Cu; /* 027BBA18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027BBA1C */ _t21 = cpu->r[1] + 0x00000014u; /* 027BBA1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21); /* 027BBA20 */ cpu->lr = cpu->r[0]; /* 027BBA24 */ _t22 = cpu->r[1] + 0x00000010u; /* 027BBA24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22); /* 027BBA28 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BBA2C */ return; } // fn_027BB970 @ 0x27bb970 void Gambit_fn_027BB970(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22; L_027BB970: ; // 0x27bb970 /* 027BB970 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BB970 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BB970 */ cpu->r[1] = _t0; /* 027BB974 */ _t1 = cpu->r[1] + 0x00000014u; /* 027BB974 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BB978 */ cpu->r[31] = cpu->r[4]; /* 027BB97C */ cpu->r[4] = 0x10110000u; /* 027BB980 */ _t2 = cpu->r[1] + 0x00000010u; /* 027BB980 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BB984 */ cpu->r[4] = cpu->r[4] + 0xFFFFB9CCu; /* 027BB988 */ cpu->r[30] = cpu->r[3]; /* 027BB98C */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027BB98C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BB990 */ Gambit_fn_0285FB2C(cpu); /* 027BB994 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB998 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB998 */ _t5 = _t4 & 0x00000001u; /* 027BB998 */ if (_t5) goto L_027BB9B8; else goto L_027BB99C; L_027BB99C: ; // 0x27bb99c /* 027BB99C */ _t6 = cpu->r[1] + 0x0000001Cu; /* 027BB99C */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027BB9A0 */ _t7 = cpu->r[1] + 0x00000010u; /* 027BB9A0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t7); /* 027BB9A4 */ cpu->lr = cpu->r[0]; /* 027BB9A8 */ _t8 = cpu->r[1] + 0x00000014u; /* 027BB9A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t8); /* 027BB9AC */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BB9B0 */ cpu->r[3] = 0x00000000u; /* 027BB9B4 */ return; L_027BB9B8: ; // 0x27bb9b8 /* 027BB9B8 */ cpu->r[4] = 0x10110000u; /* 027BB9BC */ cpu->r[3] = cpu->r[30]; /* 027BB9C0 */ cpu->r[4] = cpu->r[4] + 0xFFFFB9D4u; /* 027BB9C4 */ Gambit_fn_0285FB2C(cpu); /* 027BB9C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BB9CC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB9CC */ _t10 = _t9 & 0x00000001u; /* 027BB9CC */ if (_t10) goto L_027BB9D0; else goto L_027BB9DC; L_027BB9D0: ; // 0x27bb9d0 /* 027BB9D0 */ _t11 = cpu->r[31] + 0x00000000u; /* 027BB9D0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t11); /* 027BB9D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BB9D8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BB9D8 */ _t13 = _t12 & 0x00000001u; /* 027BB9D8 */ if (_t13) goto L_027BB9DC; else goto L_027BB9F8; L_027BB9DC: ; // 0x27bb9dc /* 027BB9DC */ _t14 = cpu->r[1] + 0x0000001Cu; /* 027BB9DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BB9E0 */ _t15 = cpu->r[1] + 0x00000010u; /* 027BB9E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t15); /* 027BB9E4 */ cpu->lr = cpu->r[0]; /* 027BB9E8 */ _t16 = cpu->r[1] + 0x00000014u; /* 027BB9E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t16); /* 027BB9EC */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BB9F0 */ cpu->r[3] = 0x00000001u; /* 027BB9F4 */ return; L_027BB9F8: ; // 0x27bb9f8 /* 027BB9F8 */ _t17 = cpu->r[31] + 0x00000008u; /* 027BB9F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027BB9FC */ cpu->r[12] = 0x10110000u; /* 027BBA00 */ cpu->r[12] = cpu->r[12] + 0xFFFFB8A8u; /* 027BBA04 */ _t18 = cpu->r[1] + 0x00000008u; /* 027BBA04 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]); /* 027BBA08 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027BBA08 */ rbrew_write32(cpu->mem, _t19, cpu->r[12]); /* 027BBA0C */ Gambit_fn_027BDBAC(cpu); /* 027BBA10 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BBA14 */ Gambit_fn_027C2100(cpu); /* 027BBA18 */ _t20 = cpu->r[1] + 0x0000001Cu; /* 027BBA18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027BBA1C */ _t21 = cpu->r[1] + 0x00000014u; /* 027BBA1C */ cpu->r[31] = rbrew_read32(cpu->mem, _t21); /* 027BBA20 */ cpu->lr = cpu->r[0]; /* 027BBA24 */ _t22 = cpu->r[1] + 0x00000010u; /* 027BBA24 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22); /* 027BBA28 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BBA2C */ return; } // fn_027BBA30 @ 0x27bba30 void Gambit_fn_027BBA30(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5; L_027BBA30: ; // 0x27bba30 /* 027BBA30 */ cpu->r[0] = cpu->lr; /* 027BBA34 */ _t0 = cpu->r[1] + 0x00000004u; /* 027BBA34 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027BBA38 */ _t1 = cpu->r[1] + 0xFFFFFFF8u; /* 027BBA38 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027BBA38 */ cpu->r[1] = _t1; /* 027BBA3C */ _t2 = cpu->r[4] + 0x0000000Cu; /* 027BBA3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t2); /* 027BBA40 */ cpu->r[0] = cpu->r[5]; /* 027BBA44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu); /* 027BBA48 */ cpu->r[5] = cpu->r[6]; /* 027BBA4C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBA4C */ _t4 = _t3 & 0x00000001u; /* 027BBA4C */ if (_t4) goto L_027BBA50; else goto L_027BBA5C; L_027BBA50: ; // 0x27bba50 /* 027BBA50 */ cpu->r[3] = cpu->r[4]; /* 027BBA54 */ cpu->r[4] = cpu->r[0]; /* 027BBA58 */ Gambit_fn_027BB82C(cpu); L_027BBA5C: ; // 0x27bba5c /* 027BBA5C */ _t5 = cpu->r[1] + 0x0000000Cu; /* 027BBA5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027BBA60 */ cpu->lr = cpu->r[0]; /* 027BBA64 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BBA68 */ return; } // fn_027BBA38 @ 0x27bba38 void Gambit_fn_027BBA38(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4; L_027BBA38: ; // 0x27bba38 /* 027BBA38 */ _t0 = cpu->r[1] + 0xFFFFFFF8u; /* 027BBA38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BBA38 */ cpu->r[1] = _t0; /* 027BBA3C */ _t1 = cpu->r[4] + 0x0000000Cu; /* 027BBA3C */ cpu->r[3] = rbrew_read32(cpu->mem, _t1); /* 027BBA40 */ cpu->r[0] = cpu->r[5]; /* 027BBA44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu); /* 027BBA48 */ cpu->r[5] = cpu->r[6]; /* 027BBA4C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBA4C */ _t3 = _t2 & 0x00000001u; /* 027BBA4C */ if (_t3) goto L_027BBA50; else goto L_027BBA5C; L_027BBA50: ; // 0x27bba50 /* 027BBA50 */ cpu->r[3] = cpu->r[4]; /* 027BBA54 */ cpu->r[4] = cpu->r[0]; /* 027BBA58 */ Gambit_fn_027BB82C(cpu); L_027BBA5C: ; // 0x27bba5c /* 027BBA5C */ _t4 = cpu->r[1] + 0x0000000Cu; /* 027BBA5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027BBA60 */ cpu->lr = cpu->r[0]; /* 027BBA64 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BBA68 */ return; } // fn_027BBA6C @ 0x27bba6c void Gambit_fn_027BBA6C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12; L_027BBA6C: ; // 0x27bba6c /* 027BBA6C */ cpu->r[0] = cpu->lr; /* 027BBA70 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BBA70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BBA70 */ cpu->r[1] = _t0; /* 027BBA74 */ _t1 = cpu->r[1] + 0x00000010u; /* 027BBA74 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BBA78 */ _t2 = cpu->r[1] + 0x00000014u; /* 027BBA78 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BBA7C */ cpu->r[31] = cpu->r[4] + 0x000002FCu; /* 027BBA80 */ cpu->r[30] = cpu->r[6]; /* 027BBA84 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027BBA84 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BBA88 */ cpu->r[3] = 0x0000001Cu; /* 027BBA8C */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027BBA8C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BBA90 */ cpu->r[29] = cpu->r[5]; /* 027BBA94 */ Gambit_fn_02801A78(cpu); /* 027BBA98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBA9C */ cpu->r[4] = cpu->r[3]; /* 027BBAA0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBAA0 */ _t6 = _t5 & 0x00000001u; /* 027BBAA0 */ if (_t6) goto L_027BBAAC; else goto L_027BBAA4; L_027BBAA4: ; // 0x27bbaa4 /* 027BBAA4 */ Gambit_fn_027BC230(cpu); /* 027BBAA8 */ cpu->r[4] = cpu->r[3]; L_027BBAAC: ; // 0x27bbaac /* 027BBAAC */ _t7 = cpu->r[4] + 0x00000000u; /* 027BBAAC */ rbrew_write32(cpu->mem, _t7, cpu->r[29]); /* 027BBAB0 */ cpu->r[3] = cpu->r[31]; /* 027BBAB4 */ _t8 = cpu->r[4] + 0x00000004u; /* 027BBAB4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027BBAB8 */ Gambit_fn_027BC35C(cpu); /* 027BBABC */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027BBABC */ cpu->r[29] = rbrew_read32(cpu->mem, _t9); /* 027BBAC0 */ _t10 = cpu->r[1] + 0x0000001Cu; /* 027BBAC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027BBAC4 */ _t11 = cpu->r[1] + 0x00000010u; /* 027BBAC4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11); /* 027BBAC8 */ cpu->lr = cpu->r[0]; /* 027BBACC */ _t12 = cpu->r[1] + 0x00000014u; /* 027BBACC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12); /* 027BBAD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BBAD4 */ return; } // fn_027BBA70 @ 0x27bba70 void Gambit_fn_027BBA70(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12; L_027BBA70: ; // 0x27bba70 /* 027BBA70 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BBA70 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BBA70 */ cpu->r[1] = _t0; /* 027BBA74 */ _t1 = cpu->r[1] + 0x00000010u; /* 027BBA74 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BBA78 */ _t2 = cpu->r[1] + 0x00000014u; /* 027BBA78 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BBA7C */ cpu->r[31] = cpu->r[4] + 0x000002FCu; /* 027BBA80 */ cpu->r[30] = cpu->r[6]; /* 027BBA84 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027BBA84 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BBA88 */ cpu->r[3] = 0x0000001Cu; /* 027BBA8C */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027BBA8C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BBA90 */ cpu->r[29] = cpu->r[5]; /* 027BBA94 */ Gambit_fn_02801A78(cpu); /* 027BBA98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBA9C */ cpu->r[4] = cpu->r[3]; /* 027BBAA0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBAA0 */ _t6 = _t5 & 0x00000001u; /* 027BBAA0 */ if (_t6) goto L_027BBAAC; else goto L_027BBAA4; L_027BBAA4: ; // 0x27bbaa4 /* 027BBAA4 */ Gambit_fn_027BC230(cpu); /* 027BBAA8 */ cpu->r[4] = cpu->r[3]; L_027BBAAC: ; // 0x27bbaac /* 027BBAAC */ _t7 = cpu->r[4] + 0x00000000u; /* 027BBAAC */ rbrew_write32(cpu->mem, _t7, cpu->r[29]); /* 027BBAB0 */ cpu->r[3] = cpu->r[31]; /* 027BBAB4 */ _t8 = cpu->r[4] + 0x00000004u; /* 027BBAB4 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027BBAB8 */ Gambit_fn_027BC35C(cpu); /* 027BBABC */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027BBABC */ cpu->r[29] = rbrew_read32(cpu->mem, _t9); /* 027BBAC0 */ _t10 = cpu->r[1] + 0x0000001Cu; /* 027BBAC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027BBAC4 */ _t11 = cpu->r[1] + 0x00000010u; /* 027BBAC4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t11); /* 027BBAC8 */ cpu->lr = cpu->r[0]; /* 027BBACC */ _t12 = cpu->r[1] + 0x00000014u; /* 027BBACC */ cpu->r[31] = rbrew_read32(cpu->mem, _t12); /* 027BBAD0 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BBAD4 */ return; } // fn_027BBAD8 @ 0x27bbad8 void Gambit_fn_027BBAD8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81, _t82, _t83, _t84, _t85, _t86, _t87, _t88, _t89, _t90, _t91, _t92, _t93, _t94, _t95, _t96, _t97, _t98, _t99, _t100, _t101, _t102, _t103, _t104, _t105, _t106; L_027BBAD8: ; // 0x27bbad8 /* 027BBAD8 */ _t0 = cpu->r[1] + 0xFFFFFE88u; /* 027BBAD8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BBAD8 */ cpu->r[1] = _t0; /* 027BBADC */ cpu->r[0] = cpu->lr; /* 027BBAE0 */ /* nop */ /* 027BBAE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027BBAE8 */ cpu->r[27] = cpu->r[4]; /* 027BBAEC */ cpu->r[30] = cpu->r[7]; /* 027BBAF0 */ cpu->r[25] = cpu->r[8]; /* 027BBAF4 */ _t1 = cpu->r[1] + 0x0000017Cu; /* 027BBAF4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BBAF8 */ cpu->r[29] = cpu->r[3]; /* 027BBAFC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBAFC */ _t3 = _t2 & 0x00000001u; /* 027BBAFC */ if (_t3) goto L_027BBE00; else goto L_027BBB00; L_027BBB00: ; // 0x27bbb00 /* 027BBB00 */ cpu->r[6] = 0x101D0000u; /* 027BBB04 */ _t4 = cpu->r[1] + 0x00000008u; /* 027BBB04 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]); /* 027BBB08 */ cpu->r[31] = 0x101D0000u; /* 027BBB0C */ cpu->r[28] = 0x10110000u; /* 027BBB10 */ _t5 = cpu->r[6] + 0xFFFFDB90u; /* 027BBB10 */ cpu->r[7] = rbrew_read32(cpu->mem, _t5); /* 027BBB10 */ cpu->r[6] = _t5; /* 027BBB14 */ cpu->r[31] = cpu->r[31] + 0x00000F28u; /* 027BBB18 */ cpu->r[26] = 0x00000000u; /* 027BBB1C */ cpu->r[28] = cpu->r[28] + 0xFFFFB890u; /* 027BBB20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027BBB24 */ _t6 = cpu->r[1] + 0x0000000Cu; /* 027BBB24 */ rbrew_write32(cpu->mem, _t6, cpu->r[28]); /* 027BBB28 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBB28 */ _t8 = _t7 & 0x00000001u; /* 027BBB28 */ if (_t8) goto L_027BBB2C; else goto L_027BBB5C; L_027BBB2C: ; // 0x27bbb2c /* 027BBB2C */ cpu->r[5] = 0x101D0000u; /* 027BBB30 */ cpu->r[11] = 0x101D0000u; /* 027BBB34 */ _t9 = cpu->r[5] + 0xFFFFD7F8u; /* 027BBB34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027BBB34 */ cpu->r[5] = _t9; /* 027BBB38 */ cpu->r[8] = 0x00000001u; /* 027BBB3C */ cpu->r[11] = cpu->r[11] + 0x00000F2Cu; /* 027BBB40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BBB44 */ _t10 = cpu->r[6] + 0x00000000u; /* 027BBB44 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]); /* 027BBB48 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBB48 */ _t12 = _t11 & 0x00000001u; /* 027BBB48 */ if (_t12) goto L_027BBB4C; else goto L_027BBB58; L_027BBB4C: ; // 0x27bbb4c /* 027BBB4C */ _t13 = cpu->r[11] + 0x00000000u; /* 027BBB4C */ rbrew_write32(cpu->mem, _t13, cpu->r[26]); /* 027BBB50 */ cpu->r[10] = 0x00000001u; /* 027BBB54 */ _t14 = cpu->r[5] + 0x00000000u; /* 027BBB54 */ rbrew_write32(cpu->mem, _t14, cpu->r[10]); L_027BBB58: ; // 0x27bbb58 /* 027BBB58 */ _t15 = cpu->r[31] + 0x00000000u; /* 027BBB58 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]); L_027BBB5C: ; // 0x27bbb5c /* 027BBB5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027BBB60 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBB60 */ _t17 = _t16 & 0x00000001u; /* 027BBB60 */ if (_t17) goto L_027BBC84; else goto L_027BBB64; L_027BBB64: ; // 0x27bbb64 /* 027BBB64 */ _t18 = cpu->r[25] + 0x00000038u; /* 027BBB64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18); /* 027BBB68 */ _t19 = cpu->r[12] + 0x0000000Cu; /* 027BBB68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027BBB6C */ cpu->ctr = cpu->r[0]; /* 027BBB70 */ cpu->r[3] = cpu->r[25]; /* 027BBB74 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BBB78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBB7C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBB7C */ _t21 = _t20 & 0x00000001u; /* 027BBB7C */ if (_t21) goto L_027BBC84; else goto L_027BBB80; L_027BBB80: ; // 0x27bbb80 /* 027BBB80 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]); /* 027BBB84 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBB84 */ _t23 = _t22 & 0x00000001u; /* 027BBB84 */ if (_t23) goto L_027BBBAC; else goto L_027BBB88; L_027BBB88: ; // 0x27bbb88 /* 027BBB88 */ _t24 = cpu->r[3] + 0x00000000u; /* 027BBB88 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24); /* 027BBB8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBB90 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBB90 */ _t26 = _t25 & 0x00000001u; /* 027BBB90 */ if (_t26) goto L_027BBC84; else goto L_027BBB94; L_027BBB94: ; // 0x27bbb94 /* 027BBB94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]); /* 027BBB98 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBB98 */ _t28 = _t27 & 0x00000001u; /* 027BBB98 */ if (_t28) goto L_027BBBAC; else goto L_027BBB9C; L_027BBB9C: ; // 0x27bbb9c /* 027BBB9C */ _t29 = cpu->r[3] + 0x00000000u; /* 027BBB9C */ cpu->r[3] = rbrew_read32(cpu->mem, _t29); /* 027BBBA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBBA4 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBBA4 */ _t31 = _t30 & 0x00000001u; /* 027BBBA4 */ if (_t31) goto L_027BBBA8; else goto L_027BBB94; L_027BBBA8: ; // 0x27bbba8 /* 027BBBA8 */ goto L_027BBC84; L_027BBBAC: ; // 0x27bbbac /* 027BBBAC */ cpu->r[31] = cpu->r[25] + 0xFFFFFFF0u; /* 027BBBB0 */ cpu->r[3] = cpu->r[31]; /* 027BBBB4 */ Gambit_fn_026DFD70(cpu); /* 027BBBB8 */ cpu->r[4] = 0x10110000u; /* 027BBBBC */ _t32 = cpu->r[25] + 0x0000001Cu; /* 027BBBBC */ cpu->r[5] = rbrew_read32(cpu->mem, _t32); /* 027BBBC0 */ cpu->r[6] = cpu->r[3]; /* 027BBBC4 */ cpu->r[3] = cpu->r[1] + 0x000000CCu; /* 027BBBC8 */ cpu->r[4] = cpu->r[4] + 0xFFFFB9E0u; /* 027BBBCC */ _t33 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BBBCC */ _t34 = _t33 & 0x00000001u; /* 027BBBCC */ if (_t34) goto L_027BBBD0; // else: addr-0 trap, fall-through L_027BBBD0: ; // 0x27bbbd0 /* 027BBBD0 */ Gambit_fn_027BC068(cpu); /* 027BBBD4 */ _t35 = cpu->r[1] + 0x00000020u; /* 027BBBD4 */ rbrew_write32(cpu->mem, _t35, cpu->r[26]); /* 027BBBD8 */ cpu->r[0] = cpu->r[1] + 0x00000034u; /* 027BBBDC */ _t36 = cpu->r[1] + 0x00000024u; /* 027BBBDC */ rbrew_write32(cpu->mem, _t36, cpu->r[26]); /* 027BBBE0 */ cpu->r[10] = 0x00000040u; /* 027BBBE4 */ _t37 = cpu->r[1] + 0x00000028u; /* 027BBBE4 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]); /* 027BBBE8 */ cpu->r[0] = 0x00000000u; /* 027BBBEC */ _t38 = cpu->r[1] + 0x0000007Cu; /* 027BBBEC */ rbrew_write32(cpu->mem, _t38, cpu->r[10]); /* 027BBBF0 */ _t39 = cpu->r[1] + 0x0000001Cu; /* 027BBBF0 */ rbrew_write32(cpu->mem, _t39, cpu->r[26]); /* 027BBBF4 */ cpu->r[12] = 0x10110000u; /* 027BBBF8 */ _t40 = cpu->r[1] + 0x0000000Cu; /* 027BBBF8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t40); /* 027BBBFC */ cpu->r[8] = 0x10110000u; /* 027BBC00 */ _t41 = cpu->r[12] + 0x00007399u; /* 027BBC00 */ cpu->r[12] = rbrew_read8(cpu->mem, _t41); /* 027BBC04 */ _t42 = cpu->r[1] + 0x00000030u; /* 027BBC04 */ rbrew_write32(cpu->mem, _t42, cpu->r[10]); /* 027BBC08 */ _t43 = cpu->r[1] + 0x000000C4u; /* 027BBC08 */ rbrew_write32(cpu->mem, _t43, cpu->r[26]); /* 027BBC0C */ cpu->r[8] = cpu->r[8] + 0xFFFFB920u; /* 027BBC10 */ _t44 = cpu->r[1] + 0x00000073u; /* 027BBC10 */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[12]); /* 027BBC14 */ _t45 = cpu->r[1] + 0x00000078u; /* 027BBC14 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]); /* 027BBC18 */ cpu->r[9] = cpu->r[1] + 0x00000080u; /* 027BBC1C */ _t46 = cpu->r[1] + 0x000000BFu; /* 027BBC1C */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[12]); /* 027BBC20 */ _t47 = cpu->r[1] + 0x00000074u; /* 027BBC20 */ rbrew_write32(cpu->mem, _t47, cpu->r[9]); /* 027BBC24 */ _t48 = cpu->r[1] + 0x00000018u; /* 027BBC24 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[0]); /* 027BBC28 */ _t49 = cpu->r[1] + 0x0000002Cu; /* 027BBC28 */ rbrew_write32(cpu->mem, _t49, cpu->r[8]); /* 027BBC2C */ _t50 = cpu->r[1] + 0x00000080u; /* 027BBC2C */ rbrew_write8(cpu->mem, _t50, (uint8_t)cpu->r[12]); /* 027BBC30 */ cpu->r[11] = 0xFFFFFFFFu; /* 027BBC34 */ _t51 = cpu->r[1] + 0x00000034u; /* 027BBC34 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[12]); /* 027BBC38 */ _t52 = cpu->r[1] + 0x000000C8u; /* 027BBC38 */ rbrew_write32(cpu->mem, _t52, cpu->r[11]); /* 027BBC3C */ _t53 = cpu->r[1] + 0x000000C0u; /* 027BBC3C */ rbrew_write32(cpu->mem, _t53, cpu->r[11]); /* 027BBC40 */ _t54 = cpu->r[5] + 0x00000014u; /* 027BBC40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54); /* 027BBC44 */ cpu->ctr = cpu->r[0]; /* 027BBC48 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BBC4C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BBC50 */ _t55 = cpu->r[1] + 0x00000008u; /* 027BBC50 */ cpu->r[6] = rbrew_read32(cpu->mem, _t55); /* 027BBC54 */ cpu->r[4] = cpu->r[1] + 0x000000CCu; /* 027BBC58 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027BBC5C */ _t56 = cpu->r[1] + 0x00000014u; /* 027BBC5C */ rbrew_write32(cpu->mem, _t56, cpu->r[28]); /* 027BBC60 */ cpu->r[5] = cpu->r[1] + 0x00000010u; /* 027BBC64 */ _t57 = cpu->r[1] + 0x00000010u; /* 027BBC64 */ rbrew_write32(cpu->mem, _t57, cpu->r[6]); /* 027BBC68 */ Gambit_fn_027FDFE8(cpu); /* 027BBC6C */ cpu->r[3] = cpu->r[30]; /* 027BBC70 */ cpu->r[4] = cpu->r[1] + 0x00000018u; /* 027BBC74 */ Gambit_fn_027BB96C(cpu); /* 027BBC78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBC7C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBC7C */ _t59 = _t58 & 0x00000001u; /* 027BBC7C */ if (_t59) goto L_027BBDA0; else goto L_027BBC80; L_027BBC80: ; // 0x27bbc80 /* 027BBC80 */ goto L_027BBD54; L_027BBC84: ; // 0x27bbc84 /* 027BBC84 */ cpu->r[31] = 0x00000000u; /* 027BBC88 */ cpu->r[3] = cpu->r[31]; /* 027BBC8C */ Gambit_fn_026DFD70(cpu); /* 027BBC90 */ cpu->r[4] = 0x10110000u; /* 027BBC94 */ _t60 = cpu->r[31] + 0x0000002Cu; /* 027BBC94 */ cpu->r[5] = rbrew_read32(cpu->mem, _t60); /* 027BBC98 */ cpu->r[6] = cpu->r[3]; /* 027BBC9C */ cpu->r[3] = cpu->r[1] + 0x000000CCu; /* 027BBCA0 */ cpu->r[4] = cpu->r[4] + 0xFFFFB9E0u; /* 027BBCA4 */ _t61 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BBCA4 */ _t62 = _t61 & 0x00000001u; /* 027BBCA4 */ if (_t62) goto L_027BBCA8; // else: addr-0 trap, fall-through L_027BBCA8: ; // 0x27bbca8 /* 027BBCA8 */ Gambit_fn_027BC068(cpu); /* 027BBCAC */ _t63 = cpu->r[1] + 0x0000001Cu; /* 027BBCAC */ rbrew_write32(cpu->mem, _t63, cpu->r[26]); /* 027BBCB0 */ cpu->r[10] = 0x00000040u; /* 027BBCB4 */ _t64 = cpu->r[1] + 0x00000018u; /* 027BBCB4 */ rbrew_write8(cpu->mem, _t64, (uint8_t)cpu->r[31]); /* 027BBCB8 */ cpu->r[12] = 0x10110000u; /* 027BBCBC */ _t65 = cpu->r[1] + 0x00000030u; /* 027BBCBC */ rbrew_write32(cpu->mem, _t65, cpu->r[10]); /* 027BBCC0 */ _t66 = cpu->r[12] + 0x00007399u; /* 027BBCC0 */ cpu->r[12] = rbrew_read8(cpu->mem, _t66); /* 027BBCC4 */ _t67 = cpu->r[1] + 0x0000000Cu; /* 027BBCC4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t67); /* 027BBCC8 */ _t68 = cpu->r[1] + 0x00000020u; /* 027BBCC8 */ rbrew_write32(cpu->mem, _t68, cpu->r[26]); /* 027BBCCC */ cpu->r[11] = 0xFFFFFFFFu; /* 027BBCD0 */ _t69 = cpu->r[1] + 0x00000080u; /* 027BBCD0 */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[12]); /* 027BBCD4 */ cpu->r[0] = cpu->r[1] + 0x00000034u; /* 027BBCD8 */ _t70 = cpu->r[1] + 0x000000C8u; /* 027BBCD8 */ rbrew_write32(cpu->mem, _t70, cpu->r[11]); /* 027BBCDC */ cpu->r[8] = 0x10110000u; /* 027BBCE0 */ _t71 = cpu->r[1] + 0x00000028u; /* 027BBCE0 */ rbrew_write32(cpu->mem, _t71, cpu->r[0]); /* 027BBCE4 */ cpu->r[9] = cpu->r[1] + 0x00000080u; /* 027BBCE8 */ _t72 = cpu->r[1] + 0x000000BFu; /* 027BBCE8 */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[12]); /* 027BBCEC */ cpu->r[8] = cpu->r[8] + 0xFFFFB920u; /* 027BBCF0 */ _t73 = cpu->r[1] + 0x00000074u; /* 027BBCF0 */ rbrew_write32(cpu->mem, _t73, cpu->r[9]); /* 027BBCF4 */ _t74 = cpu->r[1] + 0x0000007Cu; /* 027BBCF4 */ rbrew_write32(cpu->mem, _t74, cpu->r[10]); /* 027BBCF8 */ _t75 = cpu->r[1] + 0x000000C4u; /* 027BBCF8 */ rbrew_write32(cpu->mem, _t75, cpu->r[26]); /* 027BBCFC */ _t76 = cpu->r[1] + 0x0000002Cu; /* 027BBCFC */ rbrew_write32(cpu->mem, _t76, cpu->r[8]); /* 027BBD00 */ _t77 = cpu->r[1] + 0x00000073u; /* 027BBD00 */ rbrew_write8(cpu->mem, _t77, (uint8_t)cpu->r[12]); /* 027BBD04 */ _t78 = cpu->r[1] + 0x00000078u; /* 027BBD04 */ rbrew_write32(cpu->mem, _t78, cpu->r[8]); /* 027BBD08 */ _t79 = cpu->r[1] + 0x000000C0u; /* 027BBD08 */ rbrew_write32(cpu->mem, _t79, cpu->r[11]); /* 027BBD0C */ _t80 = cpu->r[1] + 0x00000034u; /* 027BBD0C */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[12]); /* 027BBD10 */ _t81 = cpu->r[1] + 0x00000024u; /* 027BBD10 */ rbrew_write32(cpu->mem, _t81, cpu->r[26]); /* 027BBD14 */ _t82 = cpu->r[5] + 0x00000014u; /* 027BBD14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t82); /* 027BBD18 */ cpu->ctr = cpu->r[0]; /* 027BBD1C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BBD20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BBD24 */ _t83 = cpu->r[1] + 0x00000008u; /* 027BBD24 */ cpu->r[6] = rbrew_read32(cpu->mem, _t83); /* 027BBD28 */ cpu->r[4] = cpu->r[1] + 0x000000CCu; /* 027BBD2C */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027BBD30 */ _t84 = cpu->r[1] + 0x00000014u; /* 027BBD30 */ rbrew_write32(cpu->mem, _t84, cpu->r[28]); /* 027BBD34 */ cpu->r[5] = cpu->r[1] + 0x00000010u; /* 027BBD38 */ _t85 = cpu->r[1] + 0x00000010u; /* 027BBD38 */ rbrew_write32(cpu->mem, _t85, cpu->r[6]); /* 027BBD3C */ Gambit_fn_027FDFE8(cpu); /* 027BBD40 */ cpu->r[4] = cpu->r[1] + 0x00000018u; /* 027BBD44 */ cpu->r[3] = cpu->r[30]; /* 027BBD48 */ Gambit_fn_027BB96C(cpu); /* 027BBD4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBD50 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBD50 */ _t87 = _t86 & 0x00000001u; /* 027BBD50 */ if (_t87) goto L_027BBDA0; else goto L_027BBD54; L_027BBD54: ; // 0x27bbd54 /* 027BBD54 */ _t88 = cpu->r[27] + 0x00000000u; /* 027BBD54 */ rbrew_write32(cpu->mem, _t88, cpu->r[26]); /* 027BBD58 */ cpu->r[3] = cpu->r[30]; /* 027BBD5C */ _t89 = cpu->r[27] + 0x00000004u; /* 027BBD5C */ rbrew_write32(cpu->mem, _t89, cpu->r[26]); /* 027BBD60 */ Gambit_fn_027BB934(cpu); /* 027BBD64 */ cpu->r[6] = 0x00000004u; /* 027BBD68 */ cpu->r[5] = cpu->r[30]; /* 027BBD6C */ cpu->r[4] = cpu->r[27]; /* 027BBD70 */ cpu->r[3] = cpu->r[29]; /* 027BBD74 */ Gambit_fn_027BBA30(cpu); /* 027BBD78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x00000020u); /* 027BBD7C */ _t90 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BBD7C */ _t91 = _t90 & 0x00000001u; /* 027BBD7C */ if (_t91) goto L_027BBD80; else goto L_027BBD84; L_027BBD80: ; // 0x27bbd80 /* 027BBD80 */ cpu->r[3] = 0x00000020u; L_027BBD84: ; // 0x27bbd84 /* 027BBD84 */ _t92 = cpu->r[27] + 0x00000008u; /* 027BBD84 */ rbrew_write32(cpu->mem, _t92, cpu->r[3]); /* 027BBD88 */ cpu->r[6] = cpu->r[30]; /* 027BBD8C */ cpu->r[4] = cpu->r[31]; /* 027BBD90 */ cpu->r[3] = cpu->r[29]; /* 027BBD94 */ cpu->r[5] = 0xFFFFFFFFu; /* 027BBD98 */ Gambit_fn_027BBA6C(cpu); /* 027BBD9C */ goto L_027BBE00; L_027BBDA0: ; // 0x27bbda0 /* 027BBDA0 */ _t93 = cpu->r[1] + 0x000000C4u; /* 027BBDA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93); /* 027BBDA4 */ _t94 = cpu->r[1] + 0x00000020u; /* 027BBDA4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t94); /* 027BBDA8 */ cpu->r[3] = cpu->r[27]; /* 027BBDAC */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x0000001Fu, 0x00000001u, 0x0000001Fu); /* 027BBDB0 */ cpu->r[4] = cpu->r[30]; /* 027BBDB4 */ _t95 = cpu->r[27] + 0x00000000u; /* 027BBDB4 */ rbrew_write32(cpu->mem, _t95, cpu->r[5]); /* 027BBDB8 */ cpu->r[5] = 0x00000001u; /* 027BBDBC */ _t96 = cpu->r[27] + 0x00000004u; /* 027BBDBC */ rbrew_write32(cpu->mem, _t96, cpu->r[0]); /* 027BBDC0 */ Gambit_fn_027BB82C(cpu); /* 027BBDC4 */ _t97 = cpu->r[27] + 0x00000004u; /* 027BBDC4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t97); /* 027BBDC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]); /* 027BBDCC */ _t98 = cpu->r[27] + 0x00000008u; /* 027BBDCC */ rbrew_write32(cpu->mem, _t98, cpu->r[3]); /* 027BBDD0 */ _t99 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BBDD0 */ _t100 = _t99 & 0x00000001u; /* 027BBDD0 */ if (_t100) goto L_027BBDD4; else goto L_027BBDDC; L_027BBDD4: ; // 0x27bbdd4 /* 027BBDD4 */ cpu->r[7] = cpu->r[8] + 0x00000001u; /* 027BBDD8 */ _t101 = cpu->r[27] + 0x00000008u; /* 027BBDD8 */ rbrew_write32(cpu->mem, _t101, cpu->r[7]); L_027BBDDC: ; // 0x27bbddc /* 027BBDDC */ _t102 = cpu->r[1] + 0x00000018u; /* 027BBDDC */ cpu->r[0] = rbrew_read8(cpu->mem, _t102); /* 027BBDE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BBDE4 */ cpu->r[5] = 0xFFFFFFFFu; /* 027BBDE8 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBDE8 */ _t104 = _t103 & 0x00000001u; /* 027BBDE8 */ if (_t104) goto L_027BBDF0; else goto L_027BBDEC; L_027BBDEC: ; // 0x27bbdec /* 027BBDEC */ _t105 = cpu->r[1] + 0x000000C0u; /* 027BBDEC */ cpu->r[5] = rbrew_read32(cpu->mem, _t105); L_027BBDF0: ; // 0x27bbdf0 /* 027BBDF0 */ cpu->r[6] = cpu->r[30]; /* 027BBDF4 */ cpu->r[4] = cpu->r[31]; /* 027BBDF8 */ cpu->r[3] = cpu->r[29]; /* 027BBDFC */ Gambit_fn_027BBA6C(cpu); L_027BBE00: ; // 0x27bbe00 /* 027BBE00 */ /* nop */ /* 027BBE04 */ _t106 = cpu->r[1] + 0x0000017Cu; /* 027BBE04 */ cpu->r[0] = rbrew_read32(cpu->mem, _t106); /* 027BBE08 */ cpu->lr = cpu->r[0]; /* 027BBE0C */ cpu->r[1] = cpu->r[1] + 0x00000178u; /* 027BBE10 */ return; } // fn_027BBE14 @ 0x27bbe14 void Gambit_fn_027BBE14(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7; L_027BBE14: ; // 0x27bbe14 /* 027BBE14 */ cpu->r[0] = cpu->lr; /* 027BBE18 */ _t0 = cpu->r[1] + 0x00000004u; /* 027BBE18 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027BBE1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBE20 */ _t1 = cpu->r[1] + 0xFFFFFFF8u; /* 027BBE20 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027BBE20 */ cpu->r[1] = _t1; /* 027BBE24 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBE24 */ _t3 = _t2 & 0x00000001u; /* 027BBE24 */ if (_t3) goto L_027BBE28; else goto L_027BBE38; L_027BBE28: ; // 0x27bbe28 /* 027BBE28 */ cpu->r[3] = 0x00000004u; /* 027BBE2C */ Gambit_fn_02801A78(cpu); /* 027BBE30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBE34 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBE34 */ _t5 = _t4 & 0x00000001u; /* 027BBE34 */ if (_t5) goto L_027BBE44; else goto L_027BBE38; L_027BBE38: ; // 0x27bbe38 /* 027BBE38 */ cpu->r[0] = 0x10110000u; /* 027BBE3C */ cpu->r[0] = cpu->r[0] + 0xFFFFBA00u; /* 027BBE40 */ _t6 = cpu->r[3] + 0x00000000u; /* 027BBE40 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); L_027BBE44: ; // 0x27bbe44 /* 027BBE44 */ _t7 = cpu->r[1] + 0x0000000Cu; /* 027BBE44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027BBE48 */ cpu->lr = cpu->r[0]; /* 027BBE4C */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BBE50 */ return; } // fn_027BBE20 @ 0x27bbe20 void Gambit_fn_027BBE20(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6; L_027BBE20: ; // 0x27bbe20 /* 027BBE20 */ _t0 = cpu->r[1] + 0xFFFFFFF8u; /* 027BBE20 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BBE20 */ cpu->r[1] = _t0; /* 027BBE24 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBE24 */ _t2 = _t1 & 0x00000001u; /* 027BBE24 */ if (_t2) goto L_027BBE28; else goto L_027BBE38; L_027BBE28: ; // 0x27bbe28 /* 027BBE28 */ cpu->r[3] = 0x00000004u; /* 027BBE2C */ Gambit_fn_02801A78(cpu); /* 027BBE30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBE34 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBE34 */ _t4 = _t3 & 0x00000001u; /* 027BBE34 */ if (_t4) goto L_027BBE44; else goto L_027BBE38; L_027BBE38: ; // 0x27bbe38 /* 027BBE38 */ cpu->r[0] = 0x10110000u; /* 027BBE3C */ cpu->r[0] = cpu->r[0] + 0xFFFFBA00u; /* 027BBE40 */ _t5 = cpu->r[3] + 0x00000000u; /* 027BBE40 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); L_027BBE44: ; // 0x27bbe44 /* 027BBE44 */ _t6 = cpu->r[1] + 0x0000000Cu; /* 027BBE44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t6); /* 027BBE48 */ cpu->lr = cpu->r[0]; /* 027BBE4C */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BBE50 */ return; } // fn_027BBE54 @ 0x27bbe54 void Gambit_fn_027BBE54(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12; L_027BBE54: ; // 0x27bbe54 /* 027BBE54 */ cpu->r[0] = cpu->lr; /* 027BBE58 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BBE58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BBE58 */ cpu->r[1] = _t0; /* 027BBE5C */ _t1 = cpu->r[1] + 0x00000010u; /* 027BBE5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BBE60 */ _t2 = cpu->r[1] + 0x00000014u; /* 027BBE60 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BBE64 */ cpu->r[31] = cpu->r[4] + 0x000002FCu; /* 027BBE68 */ cpu->r[30] = cpu->r[6]; /* 027BBE6C */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027BBE6C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BBE70 */ cpu->r[3] = 0x0000001Cu; /* 027BBE74 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027BBE74 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BBE78 */ cpu->r[29] = cpu->r[5]; /* 027BBE7C */ Gambit_fn_02801A78(cpu); /* 027BBE80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBE84 */ cpu->r[4] = cpu->r[3]; /* 027BBE88 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBE88 */ _t6 = _t5 & 0x00000001u; /* 027BBE88 */ if (_t6) goto L_027BBE94; else goto L_027BBE8C; L_027BBE8C: ; // 0x27bbe8c /* 027BBE8C */ Gambit_fn_027BC230(cpu); /* 027BBE90 */ cpu->r[4] = cpu->r[3]; L_027BBE94: ; // 0x27bbe94 /* 027BBE94 */ _t7 = cpu->r[4] + 0x00000000u; /* 027BBE94 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]); /* 027BBE98 */ cpu->r[3] = cpu->r[31]; /* 027BBE9C */ _t8 = cpu->r[4] + 0x00000004u; /* 027BBE9C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027BBEA0 */ Gambit_fn_027BC35C(cpu); /* 027BBEA4 */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027BBEA4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9); /* 027BBEA8 */ _t10 = cpu->r[1] + 0x0000001Cu; /* 027BBEA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027BBEAC */ _t11 = cpu->r[1] + 0x00000010u; /* 027BBEAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t11); /* 027BBEB0 */ cpu->lr = cpu->r[0]; /* 027BBEB4 */ _t12 = cpu->r[1] + 0x00000014u; /* 027BBEB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12); /* 027BBEB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BBEBC */ return; } // fn_027BBE58 @ 0x27bbe58 void Gambit_fn_027BBE58(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12; L_027BBE58: ; // 0x27bbe58 /* 027BBE58 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BBE58 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BBE58 */ cpu->r[1] = _t0; /* 027BBE5C */ _t1 = cpu->r[1] + 0x00000010u; /* 027BBE5C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BBE60 */ _t2 = cpu->r[1] + 0x00000014u; /* 027BBE60 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BBE64 */ cpu->r[31] = cpu->r[4] + 0x000002FCu; /* 027BBE68 */ cpu->r[30] = cpu->r[6]; /* 027BBE6C */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027BBE6C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BBE70 */ cpu->r[3] = 0x0000001Cu; /* 027BBE74 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027BBE74 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BBE78 */ cpu->r[29] = cpu->r[5]; /* 027BBE7C */ Gambit_fn_02801A78(cpu); /* 027BBE80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBE84 */ cpu->r[4] = cpu->r[3]; /* 027BBE88 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBE88 */ _t6 = _t5 & 0x00000001u; /* 027BBE88 */ if (_t6) goto L_027BBE94; else goto L_027BBE8C; L_027BBE8C: ; // 0x27bbe8c /* 027BBE8C */ Gambit_fn_027BC230(cpu); /* 027BBE90 */ cpu->r[4] = cpu->r[3]; L_027BBE94: ; // 0x27bbe94 /* 027BBE94 */ _t7 = cpu->r[4] + 0x00000000u; /* 027BBE94 */ rbrew_write32(cpu->mem, _t7, cpu->r[29]); /* 027BBE98 */ cpu->r[3] = cpu->r[31]; /* 027BBE9C */ _t8 = cpu->r[4] + 0x00000004u; /* 027BBE9C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027BBEA0 */ Gambit_fn_027BC35C(cpu); /* 027BBEA4 */ _t9 = cpu->r[1] + 0x0000000Cu; /* 027BBEA4 */ cpu->r[29] = rbrew_read32(cpu->mem, _t9); /* 027BBEA8 */ _t10 = cpu->r[1] + 0x0000001Cu; /* 027BBEA8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t10); /* 027BBEAC */ _t11 = cpu->r[1] + 0x00000010u; /* 027BBEAC */ cpu->r[30] = rbrew_read32(cpu->mem, _t11); /* 027BBEB0 */ cpu->lr = cpu->r[0]; /* 027BBEB4 */ _t12 = cpu->r[1] + 0x00000014u; /* 027BBEB4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t12); /* 027BBEB8 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BBEBC */ return; } // fn_027BBEC0 @ 0x27bbec0 void Gambit_fn_027BBEC0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38; L_027BBEC0: ; // 0x27bbec0 /* 027BBEC0 */ cpu->r[0] = cpu->lr; /* 027BBEC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BBEC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BBEC4 */ cpu->r[1] = _t0; /* 027BBEC8 */ _t1 = cpu->r[1] + 0x00000008u; /* 027BBEC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027BBECC */ cpu->r[28] = cpu->r[3]; /* 027BBED0 */ _t2 = cpu->r[1] + 0x00000010u; /* 027BBED0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BBED4 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027BBED4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BBED8 */ cpu->r[30] = cpu->r[8]; /* 027BBEDC */ _t4 = cpu->r[1] + 0x00000014u; /* 027BBEDC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027BBEE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027BBEE4 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027BBEE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BBEE8 */ cpu->r[29] = cpu->r[7]; /* 027BBEEC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBEEC */ _t7 = _t6 & 0x00000001u; /* 027BBEEC */ if (_t7) goto L_027BBFB4; else goto L_027BBEF0; L_027BBEF0: ; // 0x27bbef0 /* 027BBEF0 */ cpu->r[9] = 0x101D0000u; /* 027BBEF4 */ _t8 = cpu->r[9] + 0xFFFFDB90u; /* 027BBEF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027BBEF4 */ cpu->r[9] = _t8; /* 027BBEF8 */ cpu->r[31] = 0x101D0000u; /* 027BBEFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BBF00 */ cpu->r[31] = cpu->r[31] + 0x00000F28u; /* 027BBF04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF04 */ _t10 = _t9 & 0x00000001u; /* 027BBF04 */ if (_t10) goto L_027BBF08; else goto L_027BBF3C; L_027BBF08: ; // 0x27bbf08 /* 027BBF08 */ cpu->r[6] = 0x101D0000u; /* 027BBF0C */ cpu->r[12] = 0x101D0000u; /* 027BBF10 */ _t11 = cpu->r[6] + 0xFFFFD7F8u; /* 027BBF10 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11); /* 027BBF10 */ cpu->r[6] = _t11; /* 027BBF14 */ cpu->r[0] = 0x00000001u; /* 027BBF18 */ cpu->r[12] = cpu->r[12] + 0x00000F2Cu; /* 027BBF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027BBF20 */ _t12 = cpu->r[9] + 0x00000000u; /* 027BBF20 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]); /* 027BBF24 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF24 */ _t14 = _t13 & 0x00000001u; /* 027BBF24 */ if (_t14) goto L_027BBF28; else goto L_027BBF38; L_027BBF28: ; // 0x27bbf28 /* 027BBF28 */ cpu->r[7] = 0x00000001u; /* 027BBF2C */ cpu->r[0] = 0x00000000u; /* 027BBF30 */ _t15 = cpu->r[6] + 0x00000000u; /* 027BBF30 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]); /* 027BBF34 */ _t16 = cpu->r[12] + 0x00000000u; /* 027BBF34 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); L_027BBF38: ; // 0x27bbf38 /* 027BBF38 */ _t17 = cpu->r[31] + 0x00000000u; /* 027BBF38 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]); L_027BBF3C: ; // 0x27bbf3c /* 027BBF3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BBF40 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF40 */ _t19 = _t18 & 0x00000001u; /* 027BBF40 */ if (_t19) goto L_027BBF88; else goto L_027BBF44; L_027BBF44: ; // 0x27bbf44 /* 027BBF44 */ _t20 = cpu->r[30] + 0x00000038u; /* 027BBF44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20); /* 027BBF48 */ _t21 = cpu->r[10] + 0x0000000Cu; /* 027BBF48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027BBF4C */ cpu->ctr = cpu->r[0]; /* 027BBF50 */ cpu->r[3] = cpu->r[30]; /* 027BBF54 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BBF58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBF5C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF5C */ _t23 = _t22 & 0x00000001u; /* 027BBF5C */ if (_t23) goto L_027BBF88; else goto L_027BBF60; L_027BBF60: ; // 0x27bbf60 /* 027BBF60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]); /* 027BBF64 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF64 */ _t25 = _t24 & 0x00000001u; /* 027BBF64 */ if (_t25) goto L_027BBFA0; else goto L_027BBF68; L_027BBF68: ; // 0x27bbf68 /* 027BBF68 */ _t26 = cpu->r[3] + 0x00000000u; /* 027BBF68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26); /* 027BBF6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBF70 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF70 */ _t28 = _t27 & 0x00000001u; /* 027BBF70 */ if (_t28) goto L_027BBF88; else goto L_027BBF74; L_027BBF74: ; // 0x27bbf74 /* 027BBF74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]); /* 027BBF78 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF78 */ _t30 = _t29 & 0x00000001u; /* 027BBF78 */ if (_t30) goto L_027BBFA0; else goto L_027BBF7C; L_027BBF7C: ; // 0x27bbf7c /* 027BBF7C */ _t31 = cpu->r[3] + 0x00000000u; /* 027BBF7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t31); /* 027BBF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBF84 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF84 */ _t33 = _t32 & 0x00000001u; /* 027BBF84 */ if (_t33) goto L_027BBF88; else goto L_027BBF74; L_027BBF88: ; // 0x27bbf88 /* 027BBF88 */ cpu->r[5] = 0xFFFFFFFFu; /* 027BBF8C */ cpu->r[6] = cpu->r[29]; /* 027BBF90 */ cpu->r[3] = cpu->r[28]; /* 027BBF94 */ cpu->r[4] = 0x00000000u; /* 027BBF98 */ Gambit_fn_027BBE54(cpu); /* 027BBF9C */ goto L_027BBFB4; L_027BBFA0: ; // 0x27bbfa0 /* 027BBFA0 */ cpu->r[5] = 0xFFFFFFFFu; /* 027BBFA4 */ cpu->r[6] = cpu->r[29]; /* 027BBFA8 */ cpu->r[3] = cpu->r[28]; /* 027BBFAC */ cpu->r[4] = cpu->r[30] + 0xFFFFFFF0u; /* 027BBFB0 */ Gambit_fn_027BBE54(cpu); L_027BBFB4: ; // 0x27bbfb4 /* 027BBFB4 */ _t34 = cpu->r[1] + 0x00000008u; /* 027BBFB4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34); /* 027BBFB8 */ _t35 = cpu->r[1] + 0x0000000Cu; /* 027BBFB8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35); /* 027BBFBC */ _t36 = cpu->r[1] + 0x0000001Cu; /* 027BBFBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36); /* 027BBFC0 */ _t37 = cpu->r[1] + 0x00000010u; /* 027BBFC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37); /* 027BBFC4 */ cpu->lr = cpu->r[0]; /* 027BBFC8 */ _t38 = cpu->r[1] + 0x00000014u; /* 027BBFC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38); /* 027BBFCC */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BBFD0 */ return; } // fn_027BBEC4 @ 0x27bbec4 void Gambit_fn_027BBEC4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38; L_027BBEC4: ; // 0x27bbec4 /* 027BBEC4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BBEC4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BBEC4 */ cpu->r[1] = _t0; /* 027BBEC8 */ _t1 = cpu->r[1] + 0x00000008u; /* 027BBEC8 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027BBECC */ cpu->r[28] = cpu->r[3]; /* 027BBED0 */ _t2 = cpu->r[1] + 0x00000010u; /* 027BBED0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BBED4 */ _t3 = cpu->r[1] + 0x0000000Cu; /* 027BBED4 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BBED8 */ cpu->r[30] = cpu->r[8]; /* 027BBEDC */ _t4 = cpu->r[1] + 0x00000014u; /* 027BBEDC */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027BBEE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027BBEE4 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027BBEE4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BBEE8 */ cpu->r[29] = cpu->r[7]; /* 027BBEEC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBEEC */ _t7 = _t6 & 0x00000001u; /* 027BBEEC */ if (_t7) goto L_027BBFB4; else goto L_027BBEF0; L_027BBEF0: ; // 0x27bbef0 /* 027BBEF0 */ cpu->r[9] = 0x101D0000u; /* 027BBEF4 */ _t8 = cpu->r[9] + 0xFFFFDB90u; /* 027BBEF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027BBEF4 */ cpu->r[9] = _t8; /* 027BBEF8 */ cpu->r[31] = 0x101D0000u; /* 027BBEFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BBF00 */ cpu->r[31] = cpu->r[31] + 0x00000F28u; /* 027BBF04 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF04 */ _t10 = _t9 & 0x00000001u; /* 027BBF04 */ if (_t10) goto L_027BBF08; else goto L_027BBF3C; L_027BBF08: ; // 0x27bbf08 /* 027BBF08 */ cpu->r[6] = 0x101D0000u; /* 027BBF0C */ cpu->r[12] = 0x101D0000u; /* 027BBF10 */ _t11 = cpu->r[6] + 0xFFFFD7F8u; /* 027BBF10 */ cpu->r[5] = rbrew_read32(cpu->mem, _t11); /* 027BBF10 */ cpu->r[6] = _t11; /* 027BBF14 */ cpu->r[0] = 0x00000001u; /* 027BBF18 */ cpu->r[12] = cpu->r[12] + 0x00000F2Cu; /* 027BBF1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027BBF20 */ _t12 = cpu->r[9] + 0x00000000u; /* 027BBF20 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]); /* 027BBF24 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF24 */ _t14 = _t13 & 0x00000001u; /* 027BBF24 */ if (_t14) goto L_027BBF28; else goto L_027BBF38; L_027BBF28: ; // 0x27bbf28 /* 027BBF28 */ cpu->r[7] = 0x00000001u; /* 027BBF2C */ cpu->r[0] = 0x00000000u; /* 027BBF30 */ _t15 = cpu->r[6] + 0x00000000u; /* 027BBF30 */ rbrew_write32(cpu->mem, _t15, cpu->r[7]); /* 027BBF34 */ _t16 = cpu->r[12] + 0x00000000u; /* 027BBF34 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); L_027BBF38: ; // 0x27bbf38 /* 027BBF38 */ _t17 = cpu->r[31] + 0x00000000u; /* 027BBF38 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]); L_027BBF3C: ; // 0x27bbf3c /* 027BBF3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BBF40 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF40 */ _t19 = _t18 & 0x00000001u; /* 027BBF40 */ if (_t19) goto L_027BBF88; else goto L_027BBF44; L_027BBF44: ; // 0x27bbf44 /* 027BBF44 */ _t20 = cpu->r[30] + 0x00000038u; /* 027BBF44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t20); /* 027BBF48 */ _t21 = cpu->r[10] + 0x0000000Cu; /* 027BBF48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027BBF4C */ cpu->ctr = cpu->r[0]; /* 027BBF50 */ cpu->r[3] = cpu->r[30]; /* 027BBF54 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BBF58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBF5C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF5C */ _t23 = _t22 & 0x00000001u; /* 027BBF5C */ if (_t23) goto L_027BBF88; else goto L_027BBF60; L_027BBF60: ; // 0x27bbf60 /* 027BBF60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]); /* 027BBF64 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF64 */ _t25 = _t24 & 0x00000001u; /* 027BBF64 */ if (_t25) goto L_027BBFA0; else goto L_027BBF68; L_027BBF68: ; // 0x27bbf68 /* 027BBF68 */ _t26 = cpu->r[3] + 0x00000000u; /* 027BBF68 */ cpu->r[3] = rbrew_read32(cpu->mem, _t26); /* 027BBF6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBF70 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF70 */ _t28 = _t27 & 0x00000001u; /* 027BBF70 */ if (_t28) goto L_027BBF88; else goto L_027BBF74; L_027BBF74: ; // 0x27bbf74 /* 027BBF74 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[31]); /* 027BBF78 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF78 */ _t30 = _t29 & 0x00000001u; /* 027BBF78 */ if (_t30) goto L_027BBFA0; else goto L_027BBF7C; L_027BBF7C: ; // 0x27bbf7c /* 027BBF7C */ _t31 = cpu->r[3] + 0x00000000u; /* 027BBF7C */ cpu->r[3] = rbrew_read32(cpu->mem, _t31); /* 027BBF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBF84 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBF84 */ _t33 = _t32 & 0x00000001u; /* 027BBF84 */ if (_t33) goto L_027BBF88; else goto L_027BBF74; L_027BBF88: ; // 0x27bbf88 /* 027BBF88 */ cpu->r[5] = 0xFFFFFFFFu; /* 027BBF8C */ cpu->r[6] = cpu->r[29]; /* 027BBF90 */ cpu->r[3] = cpu->r[28]; /* 027BBF94 */ cpu->r[4] = 0x00000000u; /* 027BBF98 */ Gambit_fn_027BBE54(cpu); /* 027BBF9C */ goto L_027BBFB4; L_027BBFA0: ; // 0x27bbfa0 /* 027BBFA0 */ cpu->r[5] = 0xFFFFFFFFu; /* 027BBFA4 */ cpu->r[6] = cpu->r[29]; /* 027BBFA8 */ cpu->r[3] = cpu->r[28]; /* 027BBFAC */ cpu->r[4] = cpu->r[30] + 0xFFFFFFF0u; /* 027BBFB0 */ Gambit_fn_027BBE54(cpu); L_027BBFB4: ; // 0x27bbfb4 /* 027BBFB4 */ _t34 = cpu->r[1] + 0x00000008u; /* 027BBFB4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t34); /* 027BBFB8 */ _t35 = cpu->r[1] + 0x0000000Cu; /* 027BBFB8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35); /* 027BBFBC */ _t36 = cpu->r[1] + 0x0000001Cu; /* 027BBFBC */ cpu->r[0] = rbrew_read32(cpu->mem, _t36); /* 027BBFC0 */ _t37 = cpu->r[1] + 0x00000010u; /* 027BBFC0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t37); /* 027BBFC4 */ cpu->lr = cpu->r[0]; /* 027BBFC8 */ _t38 = cpu->r[1] + 0x00000014u; /* 027BBFC8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t38); /* 027BBFCC */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BBFD0 */ return; } // fn_027BBFD4 @ 0x27bbfd4 void Gambit_fn_027BBFD4(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_027BBFD4: ; // 0x27bbfd4 /* 027BBFD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBFD8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBFD8 */ _t1 = _t0 & 0x00000001u; /* 027BBFD8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BBFD8 */ goto L_027BBFDC; L_027BBFDC: ; // 0x27bbfdc /* 027BBFDC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BBFDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BBFE0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBFE0 */ _t3 = _t2 & 0x00000001u; /* 027BBFE0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BBFE0 */ goto L_027BBFE4; L_027BBFE4: ; // 0x27bbfe4 /* 027BBFE4 */ 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_027BBFE8 @ 0x27bbfe8 void Gambit_fn_027BBFE8(CPUState* cpu) { L_027BBFE8: ; // 0x27bbfe8 /* 027BBFE8 */ return; } // fn_027BBFEC @ 0x27bbfec void Gambit_fn_027BBFEC(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_027BBFEC: ; // 0x27bbfec /* 027BBFEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BBFF0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBFF0 */ _t1 = _t0 & 0x00000001u; /* 027BBFF0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BBFF0 */ goto L_027BBFF4; L_027BBFF4: ; // 0x27bbff4 /* 027BBFF4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BBFF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BBFF8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BBFF8 */ _t3 = _t2 & 0x00000001u; /* 027BBFF8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BBFF8 */ goto L_027BBFFC; L_027BBFFC: ; // 0x27bbffc /* 027BBFFC */ 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_027BC000 @ 0x27bc000 void Gambit_fn_027BC000(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027BC000: ; // 0x27bc000 /* 027BC000 */ _t0 = cpu->r[3] + 0x00000000u; /* 027BC000 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027BC004 */ _t1 = cpu->r[3] + 0x00000008u; /* 027BC004 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027BC008 */ cpu->r[12] = cpu->r[11] + cpu->r[12]; /* 027BC00C */ cpu->r[11] = 0x10110000u; /* 027BC010 */ _t2 = cpu->r[11] + 0x00007399u; /* 027BC010 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027BC014 */ _t3 = cpu->r[12] + 0xFFFFFFFFu; /* 027BC014 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]); /* 027BC018 */ return; } // fn_027BC01C @ 0x27bc01c void Gambit_fn_027BC01C(CPUState* cpu) { L_027BC01C: ; // 0x27bc01c /* 027BC01C */ return; } // fn_027BC020 @ 0x27bc020 void Gambit_fn_027BC020(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027BC020: ; // 0x27bc020 /* 027BC020 */ _t0 = cpu->r[3] + 0x00000008u; /* 027BC020 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027BC024 */ cpu->r[9] = 0x10110000u; /* 027BC028 */ _t1 = cpu->r[3] + 0x00000000u; /* 027BC028 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027BC02C */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BC030 */ _t2 = cpu->r[9] + 0x0000739Au; /* 027BC030 */ cpu->r[0] = rbrew_read16(cpu->mem, _t2); /* 027BC034 */ cpu->r[12] = cpu->r[12] + cpu->r[10]; /* 027BC038 */ _t3 = cpu->r[12] + 0xFFFFFFFEu; /* 027BC038 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[0]); /* 027BC03C */ return; } // fn_027BC040 @ 0x27bc040 void Gambit_fn_027BC040(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_027BC040: ; // 0x27bc040 /* 027BC040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC044 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC044 */ _t1 = _t0 & 0x00000001u; /* 027BC044 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC044 */ goto L_027BC048; L_027BC048: ; // 0x27bc048 /* 027BC048 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC048 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC04C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC04C */ _t3 = _t2 & 0x00000001u; /* 027BC04C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC04C */ goto L_027BC050; L_027BC050: ; // 0x27bc050 /* 027BC050 */ 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_027BC054 @ 0x27bc054 void Gambit_fn_027BC054(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_027BC054: ; // 0x27bc054 /* 027BC054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC058 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC058 */ _t1 = _t0 & 0x00000001u; /* 027BC058 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC058 */ goto L_027BC05C; L_027BC05C: ; // 0x27bc05c /* 027BC05C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC05C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC060 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC060 */ _t3 = _t2 & 0x00000001u; /* 027BC060 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC060 */ goto L_027BC064; L_027BC064: ; // 0x27bc064 /* 027BC064 */ 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_027BC068 @ 0x27bc068 void Gambit_fn_027BC068(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57; L_027BC068: ; // 0x27bc068 /* 027BC068 */ cpu->r[0] = cpu->lr; /* 027BC06C */ _t0 = cpu->r[1] + 0xFFFFFF78u; /* 027BC06C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC06C */ cpu->r[1] = _t0; /* 027BC070 */ _t1 = cpu->r[1] + 0x00000034u; /* 027BC070 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]); /* 027BC074 */ _t2 = cpu->r[1] + 0x00000084u; /* 027BC074 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BC078 */ _t3 = cpu->r[1] + 0x0000002Cu; /* 027BC078 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]); /* 027BC07C */ _t4 = cpu->r[1] + 0x00000020u; /* 027BC07C */ rbrew_write32(cpu->mem, _t4, cpu->r[5]); /* 027BC080 */ _t5 = cpu->r[1] + 0x00000018u; /* 027BC080 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]); /* 027BC084 */ _t6 = cpu->r[1] + 0x0000008Cu; /* 027BC084 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BC088 */ _t7 = cpu->r[1] + 0x00000078u; /* 027BC088 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]); /* 027BC08C */ _t8 = cpu->r[1] + 0x00000080u; /* 027BC08C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027BC090 */ _t9 = cpu->r[1] + 0x00000024u; /* 027BC090 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]); /* 027BC094 */ _t10 = cpu->r[1] + 0x00000030u; /* 027BC094 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027BC098 */ _t11 = cpu->r[1] + 0x0000007Cu; /* 027BC098 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]); /* 027BC09C */ _t12 = cpu->r[1] + 0x0000001Cu; /* 027BC09C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]); /* 027BC0A0 */ _t13 = cpu->r[1] + 0x00000028u; /* 027BC0A0 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]); /* 027BC0A4 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BC0A4 */ _t15 = _t14 & 0x00000001u; /* 027BC0A4 */ if (_t15) goto L_027BC0A8; else goto L_027BC0C8; L_027BC0A8: ; // 0x27bc0a8 /* 027BC0A8 */ _t16 = cpu->r[1] + 0x00000048u; /* 027BC0A8 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]); /* 027BC0AC */ _t17 = cpu->r[1] + 0x00000068u; /* 027BC0AC */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]); /* 027BC0B0 */ _t18 = cpu->r[1] + 0x00000060u; /* 027BC0B0 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]); /* 027BC0B4 */ _t19 = cpu->r[1] + 0x00000040u; /* 027BC0B4 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]); /* 027BC0B8 */ _t20 = cpu->r[1] + 0x00000050u; /* 027BC0B8 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]); /* 027BC0BC */ _t21 = cpu->r[1] + 0x00000070u; /* 027BC0BC */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]); /* 027BC0C0 */ _t22 = cpu->r[1] + 0x00000058u; /* 027BC0C0 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]); /* 027BC0C4 */ _t23 = cpu->r[1] + 0x00000038u; /* 027BC0C4 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]); L_027BC0C8: ; // 0x27bc0c8 /* 027BC0C8 */ cpu->r[31] = cpu->r[3]; /* 027BC0C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC0CC */ cpu->r[30] = cpu->r[4]; /* 027BC0D0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC0D0 */ _t25 = _t24 & 0x00000001u; /* 027BC0D0 */ if (_t25) goto L_027BC0D4; else goto L_027BC0E4; L_027BC0D4: ; // 0x27bc0d4 /* 027BC0D4 */ cpu->r[3] = 0x0000008Cu; /* 027BC0D8 */ Gambit_fn_02801A78(cpu); /* 027BC0DC */ cpu->r[31] = cpu->r[3]; /* 027BC0DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC0E0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC0E0 */ _t27 = _t26 & 0x00000001u; /* 027BC0E0 */ if (_t27) goto L_027BC1A8; else goto L_027BC0E4; L_027BC0E4: ; // 0x27bc0e4 /* 027BC0E4 */ cpu->r[29] = cpu->r[31]; /* 027BC0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BC0E8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC0E8 */ _t29 = _t28 & 0x00000001u; /* 027BC0E8 */ if (_t29) goto L_027BC0EC; else goto L_027BC0FC; L_027BC0EC: ; // 0x27bc0ec /* 027BC0EC */ cpu->r[3] = 0x0000008Cu; /* 027BC0F0 */ Gambit_fn_02801A78(cpu); /* 027BC0F4 */ cpu->r[29] = cpu->r[3]; /* 027BC0F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BC0F8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC0F8 */ _t31 = _t30 & 0x00000001u; /* 027BC0F8 */ if (_t31) goto L_027BC16C; else goto L_027BC0FC; L_027BC0FC: ; // 0x27bc0fc /* 027BC0FC */ cpu->r[3] = cpu->r[29]; /* 027BC0FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC100 */ cpu->r[28] = 0x10110000u; /* 027BC104 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC104 */ _t33 = _t32 & 0x00000001u; /* 027BC104 */ if (_t33) goto L_027BC108; else goto L_027BC134; L_027BC108: ; // 0x27bc108 /* 027BC108 */ cpu->r[3] = 0x0000000Cu; /* 027BC10C */ Gambit_fn_02801A78(cpu); /* 027BC110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC114 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC114 */ _t35 = _t34 & 0x00000001u; /* 027BC114 */ if (_t35) goto L_027BC118; else goto L_027BC134; L_027BC118: ; // 0x27bc118 /* 027BC118 */ cpu->r[7] = 0x10110000u; /* 027BC11C */ _t36 = cpu->r[28] + 0x00007399u; /* 027BC11C */ cpu->r[0] = rbrew_read8(cpu->mem, _t36); /* 027BC120 */ cpu->r[7] = cpu->r[7] + 0xFFFFB8D8u; /* 027BC124 */ _t37 = cpu->r[29] + 0x00000000u; /* 027BC124 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37); /* 027BC128 */ _t38 = cpu->r[29] + 0x00000004u; /* 027BC128 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]); /* 027BC12C */ _t39 = cpu->r[8] + 0x00000000u; /* 027BC12C */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]); /* 027BC130 */ goto L_027BC16C; L_027BC134: ; // 0x27bc134 /* 027BC134 */ cpu->r[5] = 0x10110000u; /* 027BC138 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu; /* 027BC13C */ cpu->r[5] = cpu->r[5] + 0xFFFFB8C0u; /* 027BC140 */ _t40 = cpu->r[3] + 0x00000000u; /* 027BC140 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]); /* 027BC144 */ cpu->r[6] = 0x00000080u; /* 027BC148 */ _t41 = cpu->r[3] + 0x00000004u; /* 027BC148 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]); /* 027BC14C */ _t42 = cpu->r[3] + 0x00000008u; /* 027BC14C */ rbrew_write32(cpu->mem, _t42, cpu->r[6]); /* 027BC150 */ _t43 = cpu->r[28] + 0x00007399u; /* 027BC150 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43); /* 027BC154 */ cpu->r[7] = 0x10110000u; /* 027BC158 */ _t44 = cpu->r[29] + 0x00000000u; /* 027BC158 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44); /* 027BC15C */ cpu->r[7] = cpu->r[7] + 0xFFFFB8D8u; /* 027BC160 */ _t45 = cpu->r[29] + 0x0000008Bu; /* 027BC160 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]); /* 027BC164 */ _t46 = cpu->r[29] + 0x00000004u; /* 027BC164 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]); /* 027BC168 */ _t47 = cpu->r[8] + 0x00000000u; /* 027BC168 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]); L_027BC16C: ; // 0x27bc16c /* 027BC16C */ cpu->r[9] = 0x10110000u; /* 027BC170 */ cpu->r[12] = 0x00000002u; /* 027BC174 */ cpu->r[9] = cpu->r[9] + 0xFFFFB980u; /* 027BC178 */ cpu->r[0] = cpu->r[1] + 0x00000090u; /* 027BC17C */ _t48 = cpu->r[31] + 0x00000004u; /* 027BC17C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]); /* 027BC180 */ cpu->r[11] = cpu->r[1] + 0x00000018u; /* 027BC184 */ _t49 = cpu->r[1] + 0x0000000Cu; /* 027BC184 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]); /* 027BC188 */ cpu->r[0] = 0x00000000u; /* 027BC18C */ _t50 = cpu->r[1] + 0x00000010u; /* 027BC18C */ rbrew_write32(cpu->mem, _t50, cpu->r[11]); /* 027BC190 */ cpu->r[3] = cpu->r[31]; /* 027BC194 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BC198 */ _t51 = cpu->r[1] + 0x00000009u; /* 027BC198 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]); /* 027BC19C */ cpu->r[4] = cpu->r[30]; /* 027BC1A0 */ _t52 = cpu->r[1] + 0x00000008u; /* 027BC1A0 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]); /* 027BC1A4 */ Gambit_fn_0282A5DC(cpu); L_027BC1A8: ; // 0x27bc1a8 /* 027BC1A8 */ _t53 = cpu->r[1] + 0x00000078u; /* 027BC1A8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53); /* 027BC1AC */ _t54 = cpu->r[1] + 0x0000007Cu; /* 027BC1AC */ cpu->r[29] = rbrew_read32(cpu->mem, _t54); /* 027BC1B0 */ _t55 = cpu->r[1] + 0x0000008Cu; /* 027BC1B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55); /* 027BC1B4 */ cpu->r[3] = cpu->r[31]; /* 027BC1B8 */ _t56 = cpu->r[1] + 0x00000080u; /* 027BC1B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56); /* 027BC1BC */ cpu->lr = cpu->r[0]; /* 027BC1C0 */ _t57 = cpu->r[1] + 0x00000084u; /* 027BC1C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57); /* 027BC1C4 */ cpu->r[1] = cpu->r[1] + 0x00000088u; /* 027BC1C8 */ return; } // fn_027BC06C @ 0x27bc06c void Gambit_fn_027BC06C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57; L_027BC06C: ; // 0x27bc06c /* 027BC06C */ _t0 = cpu->r[1] + 0xFFFFFF78u; /* 027BC06C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC06C */ cpu->r[1] = _t0; /* 027BC070 */ _t1 = cpu->r[1] + 0x00000034u; /* 027BC070 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]); /* 027BC074 */ _t2 = cpu->r[1] + 0x00000084u; /* 027BC074 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BC078 */ _t3 = cpu->r[1] + 0x0000002Cu; /* 027BC078 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]); /* 027BC07C */ _t4 = cpu->r[1] + 0x00000020u; /* 027BC07C */ rbrew_write32(cpu->mem, _t4, cpu->r[5]); /* 027BC080 */ _t5 = cpu->r[1] + 0x00000018u; /* 027BC080 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]); /* 027BC084 */ _t6 = cpu->r[1] + 0x0000008Cu; /* 027BC084 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BC088 */ _t7 = cpu->r[1] + 0x00000078u; /* 027BC088 */ rbrew_write32(cpu->mem, _t7, cpu->r[28]); /* 027BC08C */ _t8 = cpu->r[1] + 0x00000080u; /* 027BC08C */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027BC090 */ _t9 = cpu->r[1] + 0x00000024u; /* 027BC090 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]); /* 027BC094 */ _t10 = cpu->r[1] + 0x00000030u; /* 027BC094 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027BC098 */ _t11 = cpu->r[1] + 0x0000007Cu; /* 027BC098 */ rbrew_write32(cpu->mem, _t11, cpu->r[29]); /* 027BC09C */ _t12 = cpu->r[1] + 0x0000001Cu; /* 027BC09C */ rbrew_write32(cpu->mem, _t12, cpu->r[4]); /* 027BC0A0 */ _t13 = cpu->r[1] + 0x00000028u; /* 027BC0A0 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]); /* 027BC0A4 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BC0A4 */ _t15 = _t14 & 0x00000001u; /* 027BC0A4 */ if (_t15) goto L_027BC0A8; else goto L_027BC0C8; L_027BC0A8: ; // 0x27bc0a8 /* 027BC0A8 */ _t16 = cpu->r[1] + 0x00000048u; /* 027BC0A8 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]); /* 027BC0AC */ _t17 = cpu->r[1] + 0x00000068u; /* 027BC0AC */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]); /* 027BC0B0 */ _t18 = cpu->r[1] + 0x00000060u; /* 027BC0B0 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]); /* 027BC0B4 */ _t19 = cpu->r[1] + 0x00000040u; /* 027BC0B4 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]); /* 027BC0B8 */ _t20 = cpu->r[1] + 0x00000050u; /* 027BC0B8 */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]); /* 027BC0BC */ _t21 = cpu->r[1] + 0x00000070u; /* 027BC0BC */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]); /* 027BC0C0 */ _t22 = cpu->r[1] + 0x00000058u; /* 027BC0C0 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]); /* 027BC0C4 */ _t23 = cpu->r[1] + 0x00000038u; /* 027BC0C4 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]); L_027BC0C8: ; // 0x27bc0c8 /* 027BC0C8 */ cpu->r[31] = cpu->r[3]; /* 027BC0C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC0CC */ cpu->r[30] = cpu->r[4]; /* 027BC0D0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC0D0 */ _t25 = _t24 & 0x00000001u; /* 027BC0D0 */ if (_t25) goto L_027BC0D4; else goto L_027BC0E4; L_027BC0D4: ; // 0x27bc0d4 /* 027BC0D4 */ cpu->r[3] = 0x0000008Cu; /* 027BC0D8 */ Gambit_fn_02801A78(cpu); /* 027BC0DC */ cpu->r[31] = cpu->r[3]; /* 027BC0DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC0E0 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC0E0 */ _t27 = _t26 & 0x00000001u; /* 027BC0E0 */ if (_t27) goto L_027BC1A8; else goto L_027BC0E4; L_027BC0E4: ; // 0x27bc0e4 /* 027BC0E4 */ cpu->r[29] = cpu->r[31]; /* 027BC0E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BC0E8 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC0E8 */ _t29 = _t28 & 0x00000001u; /* 027BC0E8 */ if (_t29) goto L_027BC0EC; else goto L_027BC0FC; L_027BC0EC: ; // 0x27bc0ec /* 027BC0EC */ cpu->r[3] = 0x0000008Cu; /* 027BC0F0 */ Gambit_fn_02801A78(cpu); /* 027BC0F4 */ cpu->r[29] = cpu->r[3]; /* 027BC0F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BC0F8 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC0F8 */ _t31 = _t30 & 0x00000001u; /* 027BC0F8 */ if (_t31) goto L_027BC16C; else goto L_027BC0FC; L_027BC0FC: ; // 0x27bc0fc /* 027BC0FC */ cpu->r[3] = cpu->r[29]; /* 027BC0FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC100 */ cpu->r[28] = 0x10110000u; /* 027BC104 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC104 */ _t33 = _t32 & 0x00000001u; /* 027BC104 */ if (_t33) goto L_027BC108; else goto L_027BC134; L_027BC108: ; // 0x27bc108 /* 027BC108 */ cpu->r[3] = 0x0000000Cu; /* 027BC10C */ Gambit_fn_02801A78(cpu); /* 027BC110 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC114 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC114 */ _t35 = _t34 & 0x00000001u; /* 027BC114 */ if (_t35) goto L_027BC118; else goto L_027BC134; L_027BC118: ; // 0x27bc118 /* 027BC118 */ cpu->r[7] = 0x10110000u; /* 027BC11C */ _t36 = cpu->r[28] + 0x00007399u; /* 027BC11C */ cpu->r[0] = rbrew_read8(cpu->mem, _t36); /* 027BC120 */ cpu->r[7] = cpu->r[7] + 0xFFFFB8D8u; /* 027BC124 */ _t37 = cpu->r[29] + 0x00000000u; /* 027BC124 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37); /* 027BC128 */ _t38 = cpu->r[29] + 0x00000004u; /* 027BC128 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]); /* 027BC12C */ _t39 = cpu->r[8] + 0x00000000u; /* 027BC12C */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]); /* 027BC130 */ goto L_027BC16C; L_027BC134: ; // 0x27bc134 /* 027BC134 */ cpu->r[5] = 0x10110000u; /* 027BC138 */ cpu->r[0] = cpu->r[29] + 0x0000000Cu; /* 027BC13C */ cpu->r[5] = cpu->r[5] + 0xFFFFB8C0u; /* 027BC140 */ _t40 = cpu->r[3] + 0x00000000u; /* 027BC140 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]); /* 027BC144 */ cpu->r[6] = 0x00000080u; /* 027BC148 */ _t41 = cpu->r[3] + 0x00000004u; /* 027BC148 */ rbrew_write32(cpu->mem, _t41, cpu->r[5]); /* 027BC14C */ _t42 = cpu->r[3] + 0x00000008u; /* 027BC14C */ rbrew_write32(cpu->mem, _t42, cpu->r[6]); /* 027BC150 */ _t43 = cpu->r[28] + 0x00007399u; /* 027BC150 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43); /* 027BC154 */ cpu->r[7] = 0x10110000u; /* 027BC158 */ _t44 = cpu->r[29] + 0x00000000u; /* 027BC158 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44); /* 027BC15C */ cpu->r[7] = cpu->r[7] + 0xFFFFB8D8u; /* 027BC160 */ _t45 = cpu->r[29] + 0x0000008Bu; /* 027BC160 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]); /* 027BC164 */ _t46 = cpu->r[29] + 0x00000004u; /* 027BC164 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]); /* 027BC168 */ _t47 = cpu->r[8] + 0x00000000u; /* 027BC168 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]); L_027BC16C: ; // 0x27bc16c /* 027BC16C */ cpu->r[9] = 0x10110000u; /* 027BC170 */ cpu->r[12] = 0x00000002u; /* 027BC174 */ cpu->r[9] = cpu->r[9] + 0xFFFFB980u; /* 027BC178 */ cpu->r[0] = cpu->r[1] + 0x00000090u; /* 027BC17C */ _t48 = cpu->r[31] + 0x00000004u; /* 027BC17C */ rbrew_write32(cpu->mem, _t48, cpu->r[9]); /* 027BC180 */ cpu->r[11] = cpu->r[1] + 0x00000018u; /* 027BC184 */ _t49 = cpu->r[1] + 0x0000000Cu; /* 027BC184 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]); /* 027BC188 */ cpu->r[0] = 0x00000000u; /* 027BC18C */ _t50 = cpu->r[1] + 0x00000010u; /* 027BC18C */ rbrew_write32(cpu->mem, _t50, cpu->r[11]); /* 027BC190 */ cpu->r[3] = cpu->r[31]; /* 027BC194 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BC198 */ _t51 = cpu->r[1] + 0x00000009u; /* 027BC198 */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]); /* 027BC19C */ cpu->r[4] = cpu->r[30]; /* 027BC1A0 */ _t52 = cpu->r[1] + 0x00000008u; /* 027BC1A0 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]); /* 027BC1A4 */ Gambit_fn_0282A5DC(cpu); L_027BC1A8: ; // 0x27bc1a8 /* 027BC1A8 */ _t53 = cpu->r[1] + 0x00000078u; /* 027BC1A8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t53); /* 027BC1AC */ _t54 = cpu->r[1] + 0x0000007Cu; /* 027BC1AC */ cpu->r[29] = rbrew_read32(cpu->mem, _t54); /* 027BC1B0 */ _t55 = cpu->r[1] + 0x0000008Cu; /* 027BC1B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55); /* 027BC1B4 */ cpu->r[3] = cpu->r[31]; /* 027BC1B8 */ _t56 = cpu->r[1] + 0x00000080u; /* 027BC1B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t56); /* 027BC1BC */ cpu->lr = cpu->r[0]; /* 027BC1C0 */ _t57 = cpu->r[1] + 0x00000084u; /* 027BC1C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57); /* 027BC1C4 */ cpu->r[1] = cpu->r[1] + 0x00000088u; /* 027BC1C8 */ return; } // fn_027BC1CC @ 0x27bc1cc void Gambit_fn_027BC1CC(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_027BC1CC: ; // 0x27bc1cc /* 027BC1CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC1D0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC1D0 */ _t1 = _t0 & 0x00000001u; /* 027BC1D0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC1D0 */ goto L_027BC1D4; L_027BC1D4: ; // 0x27bc1d4 /* 027BC1D4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC1D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC1D8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC1D8 */ _t3 = _t2 & 0x00000001u; /* 027BC1D8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC1D8 */ goto L_027BC1DC; L_027BC1DC: ; // 0x27bc1dc /* 027BC1DC */ 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_027BC1E0 @ 0x27bc1e0 void Gambit_fn_027BC1E0(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_027BC1E0: ; // 0x27bc1e0 /* 027BC1E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC1E4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC1E4 */ _t1 = _t0 & 0x00000001u; /* 027BC1E4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC1E4 */ goto L_027BC1E8; L_027BC1E8: ; // 0x27bc1e8 /* 027BC1E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC1E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC1EC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC1EC */ _t3 = _t2 & 0x00000001u; /* 027BC1EC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC1EC */ goto L_027BC1F0; L_027BC1F0: ; // 0x27bc1f0 /* 027BC1F0 */ 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_027BC1F4 @ 0x27bc1f4 void Gambit_fn_027BC1F4(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_027BC1F4: ; // 0x27bc1f4 /* 027BC1F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC1F8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC1F8 */ _t1 = _t0 & 0x00000001u; /* 027BC1F8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC1F8 */ goto L_027BC1FC; L_027BC1FC: ; // 0x27bc1fc /* 027BC1FC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC1FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC200 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC200 */ _t3 = _t2 & 0x00000001u; /* 027BC200 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC200 */ goto L_027BC204; L_027BC204: ; // 0x27bc204 /* 027BC204 */ 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_027BC208 @ 0x27bc208 void Gambit_fn_027BC208(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_027BC208: ; // 0x27bc208 /* 027BC208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC20C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC20C */ _t1 = _t0 & 0x00000001u; /* 027BC20C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC20C */ goto L_027BC210; L_027BC210: ; // 0x27bc210 /* 027BC210 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC210 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC214 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC214 */ _t3 = _t2 & 0x00000001u; /* 027BC214 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC214 */ goto L_027BC218; L_027BC218: ; // 0x27bc218 /* 027BC218 */ 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_027BC21C @ 0x27bc21c void Gambit_fn_027BC21C(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_027BC21C: ; // 0x27bc21c /* 027BC21C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC220 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC220 */ _t1 = _t0 & 0x00000001u; /* 027BC220 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC220 */ goto L_027BC224; L_027BC224: ; // 0x27bc224 /* 027BC224 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC224 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC228 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC228 */ _t3 = _t2 & 0x00000001u; /* 027BC228 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC228 */ goto L_027BC22C; L_027BC22C: ; // 0x27bc22c /* 027BC22C */ 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_027BC230 @ 0x27bc230 void Gambit_fn_027BC230(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_027BC230: ; // 0x27bc230 /* 027BC230 */ cpu->r[0] = cpu->lr; /* 027BC234 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BC234 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC234 */ cpu->r[1] = _t0; /* 027BC238 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BC238 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BC23C */ _t2 = cpu->r[1] + 0x00000008u; /* 027BC23C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BC240 */ cpu->r[31] = cpu->r[3]; /* 027BC240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC244 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BC244 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BC248 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC248 */ _t5 = _t4 & 0x00000001u; /* 027BC248 */ if (_t5) goto L_027BC24C; else goto L_027BC25C; L_027BC24C: ; // 0x27bc24c /* 027BC24C */ cpu->r[3] = 0x0000001Cu; /* 027BC250 */ Gambit_fn_02801A78(cpu); /* 027BC254 */ cpu->r[31] = cpu->r[3]; /* 027BC254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC258 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC258 */ _t7 = _t6 & 0x00000001u; /* 027BC258 */ if (_t7) goto L_027BC2A0; else goto L_027BC25C; L_027BC25C: ; // 0x27bc25c /* 027BC25C */ cpu->r[30] = 0x00000000u; /* 027BC260 */ cpu->r[0] = 0xFFFFFFFFu; /* 027BC264 */ cpu->r[12] = 0x10110000u; /* 027BC268 */ _t8 = cpu->r[31] + 0x00000004u; /* 027BC268 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027BC26C */ cpu->r[12] = cpu->r[12] + 0xFFFFBA28u; /* 027BC270 */ _t9 = cpu->r[31] + 0x00000000u; /* 027BC270 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 027BC274 */ cpu->r[3] = cpu->r[31] + 0x00000008u; /* 027BC274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC278 */ _t10 = cpu->r[31] + 0x00000018u; /* 027BC278 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]); /* 027BC27C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC27C */ _t12 = _t11 & 0x00000001u; /* 027BC27C */ if (_t12) goto L_027BC280; else goto L_027BC290; L_027BC280: ; // 0x27bc280 /* 027BC280 */ cpu->r[3] = 0x00000010u; /* 027BC284 */ Gambit_fn_02801A78(cpu); /* 027BC288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC28C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC28C */ _t14 = _t13 & 0x00000001u; /* 027BC28C */ if (_t14) goto L_027BC2A0; else goto L_027BC290; L_027BC290: ; // 0x27bc290 /* 027BC290 */ _t15 = cpu->r[3] + 0x00000004u; /* 027BC290 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]); /* 027BC294 */ _t16 = cpu->r[3] + 0x00000008u; /* 027BC294 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]); /* 027BC298 */ _t17 = cpu->r[3] + 0x00000000u; /* 027BC298 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]); /* 027BC29C */ _t18 = cpu->r[3] + 0x0000000Cu; /* 027BC29C */ rbrew_write32(cpu->mem, _t18, cpu->r[30]); L_027BC2A0: ; // 0x27bc2a0 /* 027BC2A0 */ _t19 = cpu->r[1] + 0x00000014u; /* 027BC2A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027BC2A4 */ cpu->r[3] = cpu->r[31]; /* 027BC2A8 */ _t20 = cpu->r[1] + 0x0000000Cu; /* 027BC2A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20); /* 027BC2AC */ cpu->lr = cpu->r[0]; /* 027BC2B0 */ _t21 = cpu->r[1] + 0x00000008u; /* 027BC2B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21); /* 027BC2B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BC2B8 */ return; } // fn_027BC234 @ 0x27bc234 void Gambit_fn_027BC234(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_027BC234: ; // 0x27bc234 /* 027BC234 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BC234 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC234 */ cpu->r[1] = _t0; /* 027BC238 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BC238 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BC23C */ _t2 = cpu->r[1] + 0x00000008u; /* 027BC23C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BC240 */ cpu->r[31] = cpu->r[3]; /* 027BC240 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC244 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BC244 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BC248 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC248 */ _t5 = _t4 & 0x00000001u; /* 027BC248 */ if (_t5) goto L_027BC24C; else goto L_027BC25C; L_027BC24C: ; // 0x27bc24c /* 027BC24C */ cpu->r[3] = 0x0000001Cu; /* 027BC250 */ Gambit_fn_02801A78(cpu); /* 027BC254 */ cpu->r[31] = cpu->r[3]; /* 027BC254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC258 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC258 */ _t7 = _t6 & 0x00000001u; /* 027BC258 */ if (_t7) goto L_027BC2A0; else goto L_027BC25C; L_027BC25C: ; // 0x27bc25c /* 027BC25C */ cpu->r[30] = 0x00000000u; /* 027BC260 */ cpu->r[0] = 0xFFFFFFFFu; /* 027BC264 */ cpu->r[12] = 0x10110000u; /* 027BC268 */ _t8 = cpu->r[31] + 0x00000004u; /* 027BC268 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027BC26C */ cpu->r[12] = cpu->r[12] + 0xFFFFBA28u; /* 027BC270 */ _t9 = cpu->r[31] + 0x00000000u; /* 027BC270 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 027BC274 */ cpu->r[3] = cpu->r[31] + 0x00000008u; /* 027BC274 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC278 */ _t10 = cpu->r[31] + 0x00000018u; /* 027BC278 */ rbrew_write32(cpu->mem, _t10, cpu->r[12]); /* 027BC27C */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC27C */ _t12 = _t11 & 0x00000001u; /* 027BC27C */ if (_t12) goto L_027BC280; else goto L_027BC290; L_027BC280: ; // 0x27bc280 /* 027BC280 */ cpu->r[3] = 0x00000010u; /* 027BC284 */ Gambit_fn_02801A78(cpu); /* 027BC288 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC28C */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC28C */ _t14 = _t13 & 0x00000001u; /* 027BC28C */ if (_t14) goto L_027BC2A0; else goto L_027BC290; L_027BC290: ; // 0x27bc290 /* 027BC290 */ _t15 = cpu->r[3] + 0x00000004u; /* 027BC290 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]); /* 027BC294 */ _t16 = cpu->r[3] + 0x00000008u; /* 027BC294 */ rbrew_write32(cpu->mem, _t16, cpu->r[31]); /* 027BC298 */ _t17 = cpu->r[3] + 0x00000000u; /* 027BC298 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]); /* 027BC29C */ _t18 = cpu->r[3] + 0x0000000Cu; /* 027BC29C */ rbrew_write32(cpu->mem, _t18, cpu->r[30]); L_027BC2A0: ; // 0x27bc2a0 /* 027BC2A0 */ _t19 = cpu->r[1] + 0x00000014u; /* 027BC2A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027BC2A4 */ cpu->r[3] = cpu->r[31]; /* 027BC2A8 */ _t20 = cpu->r[1] + 0x0000000Cu; /* 027BC2A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20); /* 027BC2AC */ cpu->lr = cpu->r[0]; /* 027BC2B0 */ _t21 = cpu->r[1] + 0x00000008u; /* 027BC2B0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t21); /* 027BC2B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BC2B8 */ return; } // fn_027BC2BC @ 0x27bc2bc void Gambit_fn_027BC2BC(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_027BC2BC: ; // 0x27bc2bc /* 027BC2BC */ cpu->r[0] = cpu->lr; /* 027BC2C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BC2C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC2C0 */ cpu->r[1] = _t0; /* 027BC2C4 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BC2C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BC2C8 */ cpu->r[31] = cpu->r[3]; /* 027BC2C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC2CC */ _t2 = cpu->r[1] + 0x00000014u; /* 027BC2CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027BC2D0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC2D0 */ _t4 = _t3 & 0x00000001u; /* 027BC2D0 */ if (_t4) goto L_027BC2D4; else goto L_027BC2E4; L_027BC2D4: ; // 0x27bc2d4 /* 027BC2D4 */ cpu->r[3] = 0x00000010u; /* 027BC2D8 */ Gambit_fn_02801A78(cpu); /* 027BC2DC */ cpu->r[31] = cpu->r[3]; /* 027BC2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC2E0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC2E0 */ _t6 = _t5 & 0x00000001u; /* 027BC2E0 */ if (_t6) goto L_027BC330; else goto L_027BC2E4; L_027BC2E4: ; // 0x27bc2e4 /* 027BC2E4 */ cpu->r[12] = 0x10110000u; /* 027BC2E8 */ cpu->r[12] = cpu->r[12] + 0xFFFFBA18u; /* 027BC2EC */ cpu->r[3] = cpu->r[31]; /* 027BC2EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC2F0 */ _t7 = cpu->r[31] + 0x0000000Cu; /* 027BC2F0 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]); /* 027BC2F4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC2F4 */ _t9 = _t8 & 0x00000001u; /* 027BC2F4 */ if (_t9) goto L_027BC2F8; else goto L_027BC308; L_027BC2F8: ; // 0x27bc2f8 /* 027BC2F8 */ cpu->r[3] = 0x0000000Cu; /* 027BC2FC */ Gambit_fn_02801A78(cpu); /* 027BC300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC304 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC304 */ _t11 = _t10 & 0x00000001u; /* 027BC304 */ if (_t11) goto L_027BC330; else goto L_027BC308; L_027BC308: ; // 0x27bc308 /* 027BC308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC30C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC30C */ _t13 = _t12 & 0x00000001u; /* 027BC30C */ if (_t13) goto L_027BC310; else goto L_027BC320; L_027BC310: ; // 0x27bc310 /* 027BC310 */ cpu->r[3] = 0x0000000Cu; /* 027BC314 */ Gambit_fn_02801A78(cpu); /* 027BC318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC31C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC31C */ _t15 = _t14 & 0x00000001u; /* 027BC31C */ if (_t15) goto L_027BC330; else goto L_027BC320; L_027BC320: ; // 0x27bc320 /* 027BC320 */ _t16 = cpu->r[3] + 0x00000000u; /* 027BC320 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]); /* 027BC324 */ cpu->r[0] = 0x00000000u; /* 027BC328 */ _t17 = cpu->r[3] + 0x00000004u; /* 027BC328 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]); /* 027BC32C */ _t18 = cpu->r[3] + 0x00000008u; /* 027BC32C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]); L_027BC330: ; // 0x27bc330 /* 027BC330 */ _t19 = cpu->r[1] + 0x00000014u; /* 027BC330 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027BC334 */ cpu->r[3] = cpu->r[31]; /* 027BC338 */ _t20 = cpu->r[1] + 0x0000000Cu; /* 027BC338 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20); /* 027BC33C */ cpu->lr = cpu->r[0]; /* 027BC340 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BC344 */ return; } // fn_027BC2C0 @ 0x27bc2c0 void Gambit_fn_027BC2C0(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_027BC2C0: ; // 0x27bc2c0 /* 027BC2C0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BC2C0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC2C0 */ cpu->r[1] = _t0; /* 027BC2C4 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BC2C4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BC2C8 */ cpu->r[31] = cpu->r[3]; /* 027BC2C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC2CC */ _t2 = cpu->r[1] + 0x00000014u; /* 027BC2CC */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027BC2D0 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC2D0 */ _t4 = _t3 & 0x00000001u; /* 027BC2D0 */ if (_t4) goto L_027BC2D4; else goto L_027BC2E4; L_027BC2D4: ; // 0x27bc2d4 /* 027BC2D4 */ cpu->r[3] = 0x00000010u; /* 027BC2D8 */ Gambit_fn_02801A78(cpu); /* 027BC2DC */ cpu->r[31] = cpu->r[3]; /* 027BC2DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC2E0 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC2E0 */ _t6 = _t5 & 0x00000001u; /* 027BC2E0 */ if (_t6) goto L_027BC330; else goto L_027BC2E4; L_027BC2E4: ; // 0x27bc2e4 /* 027BC2E4 */ cpu->r[12] = 0x10110000u; /* 027BC2E8 */ cpu->r[12] = cpu->r[12] + 0xFFFFBA18u; /* 027BC2EC */ cpu->r[3] = cpu->r[31]; /* 027BC2EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC2F0 */ _t7 = cpu->r[31] + 0x0000000Cu; /* 027BC2F0 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]); /* 027BC2F4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC2F4 */ _t9 = _t8 & 0x00000001u; /* 027BC2F4 */ if (_t9) goto L_027BC2F8; else goto L_027BC308; L_027BC2F8: ; // 0x27bc2f8 /* 027BC2F8 */ cpu->r[3] = 0x0000000Cu; /* 027BC2FC */ Gambit_fn_02801A78(cpu); /* 027BC300 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC304 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC304 */ _t11 = _t10 & 0x00000001u; /* 027BC304 */ if (_t11) goto L_027BC330; else goto L_027BC308; L_027BC308: ; // 0x27bc308 /* 027BC308 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC30C */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC30C */ _t13 = _t12 & 0x00000001u; /* 027BC30C */ if (_t13) goto L_027BC310; else goto L_027BC320; L_027BC310: ; // 0x27bc310 /* 027BC310 */ cpu->r[3] = 0x0000000Cu; /* 027BC314 */ Gambit_fn_02801A78(cpu); /* 027BC318 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC31C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC31C */ _t15 = _t14 & 0x00000001u; /* 027BC31C */ if (_t15) goto L_027BC330; else goto L_027BC320; L_027BC320: ; // 0x27bc320 /* 027BC320 */ _t16 = cpu->r[3] + 0x00000000u; /* 027BC320 */ rbrew_write32(cpu->mem, _t16, cpu->r[3]); /* 027BC324 */ cpu->r[0] = 0x00000000u; /* 027BC328 */ _t17 = cpu->r[3] + 0x00000004u; /* 027BC328 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]); /* 027BC32C */ _t18 = cpu->r[3] + 0x00000008u; /* 027BC32C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]); L_027BC330: ; // 0x27bc330 /* 027BC330 */ _t19 = cpu->r[1] + 0x00000014u; /* 027BC330 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027BC334 */ cpu->r[3] = cpu->r[31]; /* 027BC338 */ _t20 = cpu->r[1] + 0x0000000Cu; /* 027BC338 */ cpu->r[31] = rbrew_read32(cpu->mem, _t20); /* 027BC33C */ cpu->lr = cpu->r[0]; /* 027BC340 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BC344 */ return; } // fn_027BC348 @ 0x27bc348 void Gambit_fn_027BC348(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_027BC348: ; // 0x27bc348 /* 027BC348 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC34C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC34C */ _t1 = _t0 & 0x00000001u; /* 027BC34C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC34C */ goto L_027BC350; L_027BC350: ; // 0x27bc350 /* 027BC350 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC354 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC354 */ _t3 = _t2 & 0x00000001u; /* 027BC354 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC354 */ goto L_027BC358; L_027BC358: ; // 0x27bc358 /* 027BC358 */ 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_027BC35C @ 0x27bc35c void Gambit_fn_027BC35C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40; L_027BC35C: ; // 0x27bc35c /* 027BC35C */ cpu->r[0] = cpu->lr; /* 027BC360 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BC360 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC360 */ cpu->r[1] = _t0; /* 027BC364 */ _t1 = cpu->r[1] + 0x00000014u; /* 027BC364 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BC368 */ cpu->r[31] = cpu->r[3]; /* 027BC36C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BC36C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027BC370 */ _t3 = cpu->r[1] + 0x00000008u; /* 027BC370 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]); /* 027BC374 */ _t4 = cpu->r[1] + 0x00000010u; /* 027BC374 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027BC378 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027BC378 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BC37C */ cpu->r[29] = cpu->r[4]; /* 027BC380 */ _t6 = cpu->r[31] + 0x00000004u; /* 027BC380 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027BC384 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BC388 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC388 */ _t8 = _t7 & 0x00000001u; /* 027BC388 */ if (_t8) goto L_027BC3FC; else goto L_027BC38C; L_027BC38C: ; // 0x27bc38c /* 027BC38C */ _t9 = cpu->r[29] + 0x00000000u; /* 027BC38C */ cpu->r[8] = rbrew_read32(cpu->mem, _t9); /* 027BC390 */ cpu->r[0] = 0x00000000u; L_027BC394: ; // 0x27bc394 /* 027BC394 */ _t10 = cpu->r[9] + 0x00000008u; /* 027BC394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027BC398 */ _t11 = cpu->r[12] + 0x00000000u; /* 027BC398 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11); /* 027BC39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[10]); /* 027BC3A0 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC3A0 */ _t13 = _t12 & 0x00000001u; /* 027BC3A0 */ if (_t13) goto L_027BC3A4; else goto L_027BC3F0; L_027BC3A4: ; // 0x27bc3a4 /* 027BC3A4 */ _t14 = cpu->r[29] + 0x00000014u; /* 027BC3A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t14); /* 027BC3A8 */ cpu->r[30] = cpu->r[12] + 0x00000008u; /* 027BC3AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BC3B0 */ _t15 = cpu->r[12] + 0x00000014u; /* 027BC3B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 027BC3B4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC3B4 */ _t17 = _t16 & 0x00000001u; /* 027BC3B4 */ if (_t17) goto L_027BC3D0; else goto L_027BC3B8; L_027BC3B8: ; // 0x27bc3b8 /* 027BC3B8 */ cpu->r[3] = cpu->r[29] + 0x00000008u; /* 027BC3BC */ _t18 = cpu->r[29] + 0x00000014u; /* 027BC3BC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]); /* 027BC3C0 */ Gambit_fn_02801EDC(cpu); /* 027BC3C4 */ _t19 = cpu->r[28] + 0x00000008u; /* 027BC3C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19); /* 027BC3C8 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu; /* 027BC3CC */ _t20 = cpu->r[28] + 0x00000008u; /* 027BC3CC */ rbrew_write32(cpu->mem, _t20, cpu->r[11]); L_027BC3D0: ; // 0x27bc3d0 /* 027BC3D0 */ cpu->r[4] = cpu->r[29] + 0x00000008u; /* 027BC3D4 */ cpu->r[3] = cpu->r[30]; /* 027BC3D8 */ _t21 = cpu->r[29] + 0x00000014u; /* 027BC3D8 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]); /* 027BC3DC */ Gambit_fn_02801EBC(cpu); /* 027BC3E0 */ _t22 = cpu->r[31] + 0x00000008u; /* 027BC3E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22); /* 027BC3E4 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027BC3E8 */ _t23 = cpu->r[31] + 0x00000008u; /* 027BC3E8 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]); /* 027BC3EC */ goto L_027BC440; L_027BC3F0: ; // 0x27bc3f0 /* 027BC3F0 */ _t24 = cpu->r[9] + 0x00000004u; /* 027BC3F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24); /* 027BC3F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BC3F8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC3F8 */ _t26 = _t25 & 0x00000001u; /* 027BC3F8 */ if (_t26) goto L_027BC3FC; else goto L_027BC394; L_027BC3FC: ; // 0x27bc3fc /* 027BC3FC */ _t27 = cpu->r[29] + 0x00000014u; /* 027BC3FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t27); /* 027BC400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BC404 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC404 */ _t29 = _t28 & 0x00000001u; /* 027BC404 */ if (_t29) goto L_027BC424; else goto L_027BC408; L_027BC408: ; // 0x27bc408 /* 027BC408 */ cpu->r[0] = 0x00000000u; /* 027BC40C */ cpu->r[3] = cpu->r[29] + 0x00000008u; /* 027BC410 */ _t30 = cpu->r[29] + 0x00000014u; /* 027BC410 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]); /* 027BC414 */ Gambit_fn_02801EDC(cpu); /* 027BC418 */ _t31 = cpu->r[28] + 0x00000008u; /* 027BC418 */ cpu->r[8] = rbrew_read32(cpu->mem, _t31); /* 027BC41C */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu; /* 027BC420 */ _t32 = cpu->r[28] + 0x00000008u; /* 027BC420 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]); L_027BC424: ; // 0x27bc424 /* 027BC424 */ cpu->r[4] = cpu->r[29] + 0x00000008u; /* 027BC428 */ cpu->r[3] = cpu->r[31]; /* 027BC42C */ _t33 = cpu->r[29] + 0x00000014u; /* 027BC42C */ rbrew_write32(cpu->mem, _t33, cpu->r[31]); /* 027BC430 */ Gambit_fn_02801EBC(cpu); /* 027BC434 */ _t34 = cpu->r[31] + 0x00000008u; /* 027BC434 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34); /* 027BC438 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027BC43C */ _t35 = cpu->r[31] + 0x00000008u; /* 027BC43C */ rbrew_write32(cpu->mem, _t35, cpu->r[9]); L_027BC440: ; // 0x27bc440 /* 027BC440 */ _t36 = cpu->r[1] + 0x00000008u; /* 027BC440 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36); /* 027BC444 */ _t37 = cpu->r[1] + 0x0000000Cu; /* 027BC444 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37); /* 027BC448 */ _t38 = cpu->r[1] + 0x0000001Cu; /* 027BC448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027BC44C */ _t39 = cpu->r[1] + 0x00000010u; /* 027BC44C */ cpu->r[30] = rbrew_read32(cpu->mem, _t39); /* 027BC450 */ cpu->lr = cpu->r[0]; /* 027BC454 */ _t40 = cpu->r[1] + 0x00000014u; /* 027BC454 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40); /* 027BC458 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BC45C */ return; } // fn_027BC360 @ 0x27bc360 void Gambit_fn_027BC360(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40; L_027BC360: ; // 0x27bc360 /* 027BC360 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BC360 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC360 */ cpu->r[1] = _t0; /* 027BC364 */ _t1 = cpu->r[1] + 0x00000014u; /* 027BC364 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BC368 */ cpu->r[31] = cpu->r[3]; /* 027BC36C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BC36C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027BC370 */ _t3 = cpu->r[1] + 0x00000008u; /* 027BC370 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]); /* 027BC374 */ _t4 = cpu->r[1] + 0x00000010u; /* 027BC374 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027BC378 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027BC378 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BC37C */ cpu->r[29] = cpu->r[4]; /* 027BC380 */ _t6 = cpu->r[31] + 0x00000004u; /* 027BC380 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027BC384 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BC388 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC388 */ _t8 = _t7 & 0x00000001u; /* 027BC388 */ if (_t8) goto L_027BC3FC; else goto L_027BC38C; L_027BC38C: ; // 0x27bc38c /* 027BC38C */ _t9 = cpu->r[29] + 0x00000000u; /* 027BC38C */ cpu->r[8] = rbrew_read32(cpu->mem, _t9); /* 027BC390 */ cpu->r[0] = 0x00000000u; L_027BC394: ; // 0x27bc394 /* 027BC394 */ _t10 = cpu->r[9] + 0x00000008u; /* 027BC394 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027BC398 */ _t11 = cpu->r[12] + 0x00000000u; /* 027BC398 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11); /* 027BC39C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[10]); /* 027BC3A0 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC3A0 */ _t13 = _t12 & 0x00000001u; /* 027BC3A0 */ if (_t13) goto L_027BC3A4; else goto L_027BC3F0; L_027BC3A4: ; // 0x27bc3a4 /* 027BC3A4 */ _t14 = cpu->r[29] + 0x00000014u; /* 027BC3A4 */ cpu->r[28] = rbrew_read32(cpu->mem, _t14); /* 027BC3A8 */ cpu->r[30] = cpu->r[12] + 0x00000008u; /* 027BC3AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BC3B0 */ _t15 = cpu->r[12] + 0x00000014u; /* 027BC3B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 027BC3B4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC3B4 */ _t17 = _t16 & 0x00000001u; /* 027BC3B4 */ if (_t17) goto L_027BC3D0; else goto L_027BC3B8; L_027BC3B8: ; // 0x27bc3b8 /* 027BC3B8 */ cpu->r[3] = cpu->r[29] + 0x00000008u; /* 027BC3BC */ _t18 = cpu->r[29] + 0x00000014u; /* 027BC3BC */ rbrew_write32(cpu->mem, _t18, cpu->r[0]); /* 027BC3C0 */ Gambit_fn_02801EDC(cpu); /* 027BC3C4 */ _t19 = cpu->r[28] + 0x00000008u; /* 027BC3C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t19); /* 027BC3C8 */ cpu->r[11] = cpu->r[11] + 0xFFFFFFFFu; /* 027BC3CC */ _t20 = cpu->r[28] + 0x00000008u; /* 027BC3CC */ rbrew_write32(cpu->mem, _t20, cpu->r[11]); L_027BC3D0: ; // 0x27bc3d0 /* 027BC3D0 */ cpu->r[4] = cpu->r[29] + 0x00000008u; /* 027BC3D4 */ cpu->r[3] = cpu->r[30]; /* 027BC3D8 */ _t21 = cpu->r[29] + 0x00000014u; /* 027BC3D8 */ rbrew_write32(cpu->mem, _t21, cpu->r[31]); /* 027BC3DC */ Gambit_fn_02801EBC(cpu); /* 027BC3E0 */ _t22 = cpu->r[31] + 0x00000008u; /* 027BC3E0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t22); /* 027BC3E4 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027BC3E8 */ _t23 = cpu->r[31] + 0x00000008u; /* 027BC3E8 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]); /* 027BC3EC */ goto L_027BC440; L_027BC3F0: ; // 0x27bc3f0 /* 027BC3F0 */ _t24 = cpu->r[9] + 0x00000004u; /* 027BC3F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t24); /* 027BC3F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BC3F8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC3F8 */ _t26 = _t25 & 0x00000001u; /* 027BC3F8 */ if (_t26) goto L_027BC3FC; else goto L_027BC394; L_027BC3FC: ; // 0x27bc3fc /* 027BC3FC */ _t27 = cpu->r[29] + 0x00000014u; /* 027BC3FC */ cpu->r[28] = rbrew_read32(cpu->mem, _t27); /* 027BC400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BC404 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC404 */ _t29 = _t28 & 0x00000001u; /* 027BC404 */ if (_t29) goto L_027BC424; else goto L_027BC408; L_027BC408: ; // 0x27bc408 /* 027BC408 */ cpu->r[0] = 0x00000000u; /* 027BC40C */ cpu->r[3] = cpu->r[29] + 0x00000008u; /* 027BC410 */ _t30 = cpu->r[29] + 0x00000014u; /* 027BC410 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]); /* 027BC414 */ Gambit_fn_02801EDC(cpu); /* 027BC418 */ _t31 = cpu->r[28] + 0x00000008u; /* 027BC418 */ cpu->r[8] = rbrew_read32(cpu->mem, _t31); /* 027BC41C */ cpu->r[8] = cpu->r[8] + 0xFFFFFFFFu; /* 027BC420 */ _t32 = cpu->r[28] + 0x00000008u; /* 027BC420 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]); L_027BC424: ; // 0x27bc424 /* 027BC424 */ cpu->r[4] = cpu->r[29] + 0x00000008u; /* 027BC428 */ cpu->r[3] = cpu->r[31]; /* 027BC42C */ _t33 = cpu->r[29] + 0x00000014u; /* 027BC42C */ rbrew_write32(cpu->mem, _t33, cpu->r[31]); /* 027BC430 */ Gambit_fn_02801EBC(cpu); /* 027BC434 */ _t34 = cpu->r[31] + 0x00000008u; /* 027BC434 */ cpu->r[9] = rbrew_read32(cpu->mem, _t34); /* 027BC438 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027BC43C */ _t35 = cpu->r[31] + 0x00000008u; /* 027BC43C */ rbrew_write32(cpu->mem, _t35, cpu->r[9]); L_027BC440: ; // 0x27bc440 /* 027BC440 */ _t36 = cpu->r[1] + 0x00000008u; /* 027BC440 */ cpu->r[28] = rbrew_read32(cpu->mem, _t36); /* 027BC444 */ _t37 = cpu->r[1] + 0x0000000Cu; /* 027BC444 */ cpu->r[29] = rbrew_read32(cpu->mem, _t37); /* 027BC448 */ _t38 = cpu->r[1] + 0x0000001Cu; /* 027BC448 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027BC44C */ _t39 = cpu->r[1] + 0x00000010u; /* 027BC44C */ cpu->r[30] = rbrew_read32(cpu->mem, _t39); /* 027BC450 */ cpu->lr = cpu->r[0]; /* 027BC454 */ _t40 = cpu->r[1] + 0x00000014u; /* 027BC454 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40); /* 027BC458 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BC45C */ return; } // fn_027BC460 @ 0x27bc460 void Gambit_fn_027BC460(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027BC460: ; // 0x27bc460 /* 027BC460 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFECu; /* 027BC464 */ goto L_027BDC0C; L_027BDC0C: ; // 0x27bdc0c /* 027BDC0C */ cpu->r[0] = cpu->lr; /* 027BDC10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BDC10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BDC10 */ cpu->r[1] = _t0; /* 027BDC14 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BDC14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BDC18 */ _t2 = cpu->r[1] + 0x00000008u; /* 027BDC18 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BDC1C */ cpu->r[30] = cpu->r[3]; /* 027BDC1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BDC20 */ cpu->r[31] = cpu->r[4]; /* 027BDC24 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BDC24 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BDC28 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDC28 */ _t5 = _t4 & 0x00000001u; /* 027BDC28 */ if (_t5) goto L_027BDC6C; else goto L_027BDC2C; L_027BDC2C: ; // 0x27bdc2c /* 027BDC2C */ cpu->r[0] = 0x10110000u; /* 027BDC30 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu; /* 027BDC34 */ cpu->r[0] = cpu->r[0] + 0xFFFFBB34u; /* 027BDC38 */ cpu->r[4] = 0x00000002u; /* 027BDC3C */ _t6 = cpu->r[30] + 0x00000020u; /* 027BDC3C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BDC40 */ Gambit_fn_02928E8C(cpu); /* 027BDC44 */ cpu->r[3] = cpu->r[30] + 0x000000C8u; /* 027BDC48 */ cpu->r[4] = 0x00000002u; /* 027BDC4C */ Gambit_fn_02928E8C(cpu); /* 027BDC50 */ cpu->r[3] = cpu->r[30]; /* 027BDC54 */ cpu->r[4] = 0x00000000u; /* 027BDC58 */ Gambit_fn_028136EC(cpu); /* 027BDC5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDC5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDC60 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDC60 */ _t8 = _t7 & 0x00000001u; /* 027BDC60 */ if (_t8) goto L_027BDC6C; else goto L_027BDC64; L_027BDC64: ; // 0x27bdc64 /* 027BDC64 */ cpu->r[3] = cpu->r[30]; /* 027BDC68 */ Gambit_fn_02801BB0(cpu); L_027BDC6C: ; // 0x27bdc6c /* 027BDC6C */ _t9 = cpu->r[1] + 0x00000014u; /* 027BDC6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027BDC70 */ _t10 = cpu->r[1] + 0x00000008u; /* 027BDC70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10); /* 027BDC74 */ cpu->lr = cpu->r[0]; /* 027BDC78 */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027BDC78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027BDC7C */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BDC80 */ return; } // fn_027BC468 @ 0x27bc468 void Gambit_fn_027BC468(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; L_027BC468: ; // 0x27bc468 /* 027BC468 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC46C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC46C */ _t1 = _t0 & 0x00000001u; /* 027BC46C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC46C */ goto L_027BC470; L_027BC470: ; // 0x27bc470 /* 027BC470 */ _t2 = cpu->r[3] + 0x00000000u; /* 027BC470 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027BC474 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC478 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC478 */ _t4 = _t3 & 0x00000001u; /* 027BC478 */ if (_t4) goto L_027BC488; else goto L_027BC47C; L_027BC47C: ; // 0x27bc47c /* 027BC47C */ cpu->r[12] = 0x101D0000u; /* 027BC480 */ cpu->r[10] = 0x00000000u; /* 027BC484 */ _t5 = cpu->r[12] + 0xFFFF93D4u; /* 027BC484 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]); L_027BC488: ; // 0x27bc488 /* 027BC488 */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC488 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027BC48C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC48C */ _t7 = _t6 & 0x00000001u; /* 027BC48C */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BC48C */ goto L_027BC490; L_027BC490: ; // 0x27bc490 /* 027BC490 */ goto L_02801BB0; L_02801B30: ; // 0x2801b30 /* 02801B30 */ cpu->r[0] = cpu->lr; /* 02801B34 */ _t8 = cpu->r[1] + 0xFFFFFFF0u; /* 02801B34 */ rbrew_write32(cpu->mem, _t8, cpu->r[1]); /* 02801B34 */ cpu->r[1] = _t8; /* 02801B38 */ _t9 = cpu->r[1] + 0x0000000Cu; /* 02801B38 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]); /* 02801B3C */ cpu->r[31] = cpu->r[3]; /* 02801B40 */ cpu->r[3] = 0x101D0000u; /* 02801B44 */ _t10 = cpu->r[1] + 0x00000014u; /* 02801B44 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 02801B48 */ _t11 = cpu->r[3] + 0xFFFF98F0u; /* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); /* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 02801B50 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 02801B50 */ _t13 = _t12 & 0x00000001u; /* 02801B50 */ if (_t13) goto L_02801B54; else goto L_02801B70; L_02801B54: ; // 0x2801b54 /* 02801B54 */ cpu->r[3] = cpu->r[31]; /* 02801B58 */ Gambit_fn_02801B20(cpu); /* 02801B5C */ _t14 = cpu->r[1] + 0x00000014u; /* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 02801B60 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 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 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 02801B74 */ _t17 = _t16 & 0x00000001u; /* 02801B74 */ if (_t17) 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 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 02801B84 */ _t19 = _t18 & 0x00000001u; /* 02801B84 */ if (_t19) goto L_02801B9C; else goto L_02801B88; L_02801B88: ; // 0x2801b88 /* 02801B88 */ _t20 = cpu->r[3] + 0x0000000Cu; /* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20); /* 02801B8C */ _t21 = cpu->r[12] + 0x0000003Cu; /* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 02801B90 */ cpu->ctr = cpu->r[0]; /* 02801B94 */ cpu->r[4] = cpu->r[31]; /* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr); L_02801B9C: ; // 0x2801b9c /* 02801B9C */ _t22 = cpu->r[1] + 0x00000014u; /* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 02801BA0 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 02801BA4 */ cpu->lr = cpu->r[0]; /* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 02801BAC */ return; L_02801BB0: ; // 0x2801bb0 /* 02801BB0 */ goto L_02801B30; } // fn_027BC494 @ 0x27bc494 void Gambit_fn_027BC494(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_027BC494: ; // 0x27bc494 /* 027BC494 */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027BC494 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC494 */ cpu->r[1] = _t0; /* 027BC498 */ cpu->r[0] = cpu->lr; /* 027BC49C */ /* nop */ /* 027BC4A0 */ cpu->r[28] = cpu->r[3]; /* 027BC4A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BC4A4 */ cpu->r[27] = cpu->r[4]; /* 027BC4A8 */ _t1 = cpu->r[1] + 0x00000034u; /* 027BC4A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BC4AC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC4AC */ _t3 = _t2 & 0x00000001u; /* 027BC4AC */ if (_t3) goto L_027BC650; else goto L_027BC4B0; L_027BC4B0: ; // 0x27bc4b0 /* 027BC4B0 */ cpu->r[6] = 0x10110000u; /* 027BC4B4 */ _t4 = cpu->r[28] + 0x0000015Cu; /* 027BC4B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4); /* 027BC4B8 */ cpu->r[6] = cpu->r[6] + 0xFFFFBBC4u; /* 027BC4BC */ cpu->r[7] = 0x10110000u; /* 027BC4C0 */ _t5 = cpu->r[28] + 0x00000070u; /* 027BC4C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[6]); /* 027BC4C4 */ cpu->r[7] = cpu->r[7] + 0xFFFFBC8Cu; /* 027BC4C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC4CC */ _t6 = cpu->r[28] + 0x00000020u; /* 027BC4CC */ rbrew_write32(cpu->mem, _t6, cpu->r[7]); /* 027BC4D0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC4D0 */ _t8 = _t7 & 0x00000001u; /* 027BC4D0 */ if (_t8) goto L_027BC4E8; else goto L_027BC4D4; L_027BC4D4: ; // 0x27bc4d4 /* 027BC4D4 */ _t9 = cpu->r[3] + 0x00000000u; /* 027BC4D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9); /* 027BC4D8 */ _t10 = cpu->r[9] + 0x0000000Cu; /* 027BC4D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10); /* 027BC4DC */ cpu->ctr = cpu->r[11]; /* 027BC4E0 */ cpu->r[4] = 0x00000003u; /* 027BC4E4 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC4E8: ; // 0x27bc4e8 /* 027BC4E8 */ _t11 = cpu->r[28] + 0x00000160u; /* 027BC4E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); /* 027BC4EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC4F0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC4F0 */ _t13 = _t12 & 0x00000001u; /* 027BC4F0 */ if (_t13) goto L_027BC508; else goto L_027BC4F4; L_027BC4F4: ; // 0x27bc4f4 /* 027BC4F4 */ _t14 = cpu->r[3] + 0x00000000u; /* 027BC4F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14); /* 027BC4F8 */ _t15 = cpu->r[8] + 0x0000000Cu; /* 027BC4F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027BC4FC */ cpu->ctr = cpu->r[10]; /* 027BC500 */ cpu->r[4] = 0x00000003u; /* 027BC504 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC508: ; // 0x27bc508 /* 027BC508 */ _t16 = cpu->r[28] + 0x00000164u; /* 027BC508 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16); /* 027BC50C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC510 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC510 */ _t18 = _t17 & 0x00000001u; /* 027BC510 */ if (_t18) goto L_027BC528; else goto L_027BC514; L_027BC514: ; // 0x27bc514 /* 027BC514 */ _t19 = cpu->r[3] + 0x00000000u; /* 027BC514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19); /* 027BC518 */ _t20 = cpu->r[12] + 0x00000014u; /* 027BC518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027BC51C */ cpu->ctr = cpu->r[0]; /* 027BC520 */ cpu->r[4] = 0x00000003u; /* 027BC524 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC528: ; // 0x27bc528 /* 027BC528 */ _t21 = cpu->r[28] + 0x00000154u; /* 027BC528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027BC52C */ cpu->r[25] = 0x00000000u; /* 027BC530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]); /* 027BC534 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC534 */ _t23 = _t22 & 0x00000001u; /* 027BC534 */ if (_t23) goto L_027BC538; else goto L_027BC5FC; L_027BC538: ; // 0x27bc538 /* 027BC538 */ cpu->r[30] = 0x00000000u; L_027BC53C: ; // 0x27bc53c /* 027BC53C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[0]); /* 027BC540 */ _t24 = cpu->r[28] + 0x00000158u; /* 027BC540 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24); /* 027BC544 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC544 */ _t26 = _t25 & 0x00000001u; /* 027BC544 */ if (_t26) goto L_027BC548; else goto L_027BC54C; L_027BC548: ; // 0x27bc548 /* 027BC548 */ cpu->r[12] = cpu->r[12] + cpu->r[30]; L_027BC54C: ; // 0x27bc54c /* 027BC54C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BC550 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC550 */ _t28 = _t27 & 0x00000001u; /* 027BC550 */ if (_t28) goto L_027BC5EC; else goto L_027BC554; L_027BC554: ; // 0x27bc554 /* 027BC554 */ _t29 = cpu->r[12] + 0x00000110u; /* 027BC554 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29); /* 027BC558 */ _t30 = cpu->r[1] + 0x00000008u; /* 027BC558 */ rbrew_write32(cpu->mem, _t30, cpu->r[9]); /* 027BC55C */ _t31 = cpu->r[12] + 0x00000114u; /* 027BC55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027BC560 */ cpu->r[26] = 0x00000000u; /* 027BC564 */ _t32 = cpu->r[1] + 0x0000000Cu; /* 027BC564 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]); /* 027BC568 */ _t33 = cpu->r[12] + 0x00000118u; /* 027BC568 */ cpu->r[5] = rbrew_read32(cpu->mem, _t33); /* 027BC56C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[9]); /* 027BC570 */ _t34 = cpu->r[1] + 0x00000010u; /* 027BC570 */ rbrew_write32(cpu->mem, _t34, cpu->r[5]); /* 027BC574 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC574 */ _t36 = _t35 & 0x00000001u; /* 027BC574 */ if (_t36) goto L_027BC578; else goto L_027BC5E0; L_027BC578: ; // 0x27bc578 /* 027BC578 */ cpu->r[29] = 0x00000000u; L_027BC57C: ; // 0x27bc57c /* 027BC57C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[9]); /* 027BC580 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC580 */ _t38 = _t37 & 0x00000001u; /* 027BC580 */ if (_t38) goto L_027BC584; else goto L_027BC5D0; L_027BC584: ; // 0x27bc584 /* 027BC584 */ _t39 = cpu->r[1] + 0x00000010u; /* 027BC584 */ cpu->r[6] = rbrew_read32(cpu->mem, _t39); /* 027BC588 */ _t40 = cpu->r[6] + cpu->r[29]; /* 027BC588 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40); /* 027BC58C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC590 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC590 */ _t42 = _t41 & 0x00000001u; /* 027BC590 */ if (_t42) goto L_027BC5D0; else goto L_027BC594; L_027BC594: ; // 0x27bc594 /* 027BC594 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[9]); /* 027BC598 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC598 */ _t44 = _t43 & 0x00000001u; /* 027BC598 */ if (_t44) goto L_027BC59C; else goto L_027BC5D0; L_027BC59C: ; // 0x27bc59c /* 027BC59C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC5A0 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC5A0 */ _t46 = _t45 & 0x00000001u; /* 027BC5A0 */ if (_t46) goto L_027BC5D0; else goto L_027BC5A4; L_027BC5A4: ; // 0x27bc5a4 /* 027BC5A4 */ _t47 = cpu->r[31] + 0x00000008u; /* 027BC5A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47); /* 027BC5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC5AC */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC5AC */ _t49 = _t48 & 0x00000001u; /* 027BC5AC */ if (_t49) goto L_027BC5C4; else goto L_027BC5B0; L_027BC5B0: ; // 0x27bc5b0 /* 027BC5B0 */ _t50 = cpu->r[3] + 0x00000008u; /* 027BC5B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t50); /* 027BC5B4 */ _t51 = cpu->r[7] + 0x0000000Cu; /* 027BC5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51); /* 027BC5B8 */ cpu->ctr = cpu->r[0]; /* 027BC5BC */ cpu->r[4] = 0x00000003u; /* 027BC5C0 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC5C4: ; // 0x27bc5c4 /* 027BC5C4 */ cpu->r[3] = cpu->r[31]; /* 027BC5C8 */ Gambit_fn_02801BB0(cpu); /* 027BC5CC */ _t52 = cpu->r[1] + 0x00000008u; /* 027BC5CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t52); L_027BC5D0: ; // 0x27bc5d0 /* 027BC5D0 */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027BC5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[9]); /* 027BC5D8 */ cpu->r[29] = cpu->r[29] + 0x00000004u; /* 027BC5DC */ _t53 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC5DC */ _t54 = _t53 & 0x00000001u; /* 027BC5DC */ if (_t54) goto L_027BC57C; else goto L_027BC5E0; L_027BC5E0: ; // 0x27bc5e0 /* 027BC5E0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BC5E4 */ Gambit_fn_02802424(cpu); /* 027BC5E8 */ _t55 = cpu->r[28] + 0x00000154u; /* 027BC5E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55); L_027BC5EC: ; // 0x27bc5ec /* 027BC5EC */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027BC5F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]); /* 027BC5F4 */ cpu->r[30] = cpu->r[30] + 0x0000011Cu; /* 027BC5F8 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC5F8 */ _t57 = _t56 & 0x00000001u; /* 027BC5F8 */ if (_t57) goto L_027BC53C; else goto L_027BC5FC; L_027BC5FC: ; // 0x27bc5fc /* 027BC5FC */ cpu->r[3] = cpu->r[28] + 0x00000150u; /* 027BC600 */ cpu->r[4] = 0x00000002u; /* 027BC604 */ Gambit_fn_027BC468(cpu); /* 027BC608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BC60C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC60C */ _t59 = _t58 & 0x00000001u; /* 027BC60C */ if (_t59) goto L_027BC640; else goto L_027BC610; L_027BC610: ; // 0x27bc610 /* 027BC610 */ cpu->r[10] = 0x10110000u; /* 027BC614 */ cpu->r[3] = cpu->r[28] + 0x0000010Cu; /* 027BC618 */ cpu->r[10] = cpu->r[10] + 0xFFFFBB34u; /* 027BC61C */ cpu->r[4] = 0x00000002u; /* 027BC620 */ _t60 = cpu->r[28] + 0x00000020u; /* 027BC620 */ rbrew_write32(cpu->mem, _t60, cpu->r[10]); /* 027BC624 */ Gambit_fn_02928E8C(cpu); /* 027BC628 */ cpu->r[3] = cpu->r[28] + 0x000000C8u; /* 027BC62C */ cpu->r[4] = 0x00000002u; /* 027BC630 */ Gambit_fn_02928E8C(cpu); /* 027BC634 */ cpu->r[3] = cpu->r[28]; /* 027BC638 */ cpu->r[4] = 0x00000000u; /* 027BC63C */ Gambit_fn_028136EC(cpu); L_027BC640: ; // 0x27bc640 /* 027BC640 */ cpu->r[0] = rbrew_rlwinm(cpu->r[27], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC644 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC644 */ _t62 = _t61 & 0x00000001u; /* 027BC644 */ if (_t62) goto L_027BC650; else goto L_027BC648; L_027BC648: ; // 0x27bc648 /* 027BC648 */ cpu->r[3] = cpu->r[28]; /* 027BC64C */ Gambit_fn_02801BB0(cpu); L_027BC650: ; // 0x27bc650 /* 027BC650 */ /* nop */ /* 027BC654 */ _t63 = cpu->r[1] + 0x00000034u; /* 027BC654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63); /* 027BC658 */ cpu->lr = cpu->r[0]; /* 027BC65C */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027BC660 */ return; } // fn_027BC664 @ 0x27bc664 void Gambit_fn_027BC664(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_027BC494: ; // 0x27bc494 /* 027BC494 */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027BC494 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC494 */ cpu->r[1] = _t0; /* 027BC498 */ cpu->r[0] = cpu->lr; /* 027BC49C */ /* nop */ /* 027BC4A0 */ cpu->r[28] = cpu->r[3]; /* 027BC4A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BC4A4 */ cpu->r[27] = cpu->r[4]; /* 027BC4A8 */ _t1 = cpu->r[1] + 0x00000034u; /* 027BC4A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BC4AC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC4AC */ _t3 = _t2 & 0x00000001u; /* 027BC4AC */ if (_t3) goto L_027BC650; else goto L_027BC4B0; L_027BC4B0: ; // 0x27bc4b0 /* 027BC4B0 */ cpu->r[6] = 0x10110000u; /* 027BC4B4 */ _t4 = cpu->r[28] + 0x0000015Cu; /* 027BC4B4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t4); /* 027BC4B8 */ cpu->r[6] = cpu->r[6] + 0xFFFFBBC4u; /* 027BC4BC */ cpu->r[7] = 0x10110000u; /* 027BC4C0 */ _t5 = cpu->r[28] + 0x00000070u; /* 027BC4C0 */ rbrew_write32(cpu->mem, _t5, cpu->r[6]); /* 027BC4C4 */ cpu->r[7] = cpu->r[7] + 0xFFFFBC8Cu; /* 027BC4C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC4CC */ _t6 = cpu->r[28] + 0x00000020u; /* 027BC4CC */ rbrew_write32(cpu->mem, _t6, cpu->r[7]); /* 027BC4D0 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC4D0 */ _t8 = _t7 & 0x00000001u; /* 027BC4D0 */ if (_t8) goto L_027BC4E8; else goto L_027BC4D4; L_027BC4D4: ; // 0x27bc4d4 /* 027BC4D4 */ _t9 = cpu->r[3] + 0x00000000u; /* 027BC4D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t9); /* 027BC4D8 */ _t10 = cpu->r[9] + 0x0000000Cu; /* 027BC4D8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10); /* 027BC4DC */ cpu->ctr = cpu->r[11]; /* 027BC4E0 */ cpu->r[4] = 0x00000003u; /* 027BC4E4 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC4E8: ; // 0x27bc4e8 /* 027BC4E8 */ _t11 = cpu->r[28] + 0x00000160u; /* 027BC4E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); /* 027BC4EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC4F0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC4F0 */ _t13 = _t12 & 0x00000001u; /* 027BC4F0 */ if (_t13) goto L_027BC508; else goto L_027BC4F4; L_027BC4F4: ; // 0x27bc4f4 /* 027BC4F4 */ _t14 = cpu->r[3] + 0x00000000u; /* 027BC4F4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14); /* 027BC4F8 */ _t15 = cpu->r[8] + 0x0000000Cu; /* 027BC4F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027BC4FC */ cpu->ctr = cpu->r[10]; /* 027BC500 */ cpu->r[4] = 0x00000003u; /* 027BC504 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC508: ; // 0x27bc508 /* 027BC508 */ _t16 = cpu->r[28] + 0x00000164u; /* 027BC508 */ cpu->r[3] = rbrew_read32(cpu->mem, _t16); /* 027BC50C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC510 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC510 */ _t18 = _t17 & 0x00000001u; /* 027BC510 */ if (_t18) goto L_027BC528; else goto L_027BC514; L_027BC514: ; // 0x27bc514 /* 027BC514 */ _t19 = cpu->r[3] + 0x00000000u; /* 027BC514 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19); /* 027BC518 */ _t20 = cpu->r[12] + 0x00000014u; /* 027BC518 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027BC51C */ cpu->ctr = cpu->r[0]; /* 027BC520 */ cpu->r[4] = 0x00000003u; /* 027BC524 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC528: ; // 0x27bc528 /* 027BC528 */ _t21 = cpu->r[28] + 0x00000154u; /* 027BC528 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027BC52C */ cpu->r[25] = 0x00000000u; /* 027BC530 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]); /* 027BC534 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC534 */ _t23 = _t22 & 0x00000001u; /* 027BC534 */ if (_t23) goto L_027BC538; else goto L_027BC5FC; L_027BC538: ; // 0x27bc538 /* 027BC538 */ cpu->r[30] = 0x00000000u; L_027BC53C: ; // 0x27bc53c /* 027BC53C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[0]); /* 027BC540 */ _t24 = cpu->r[28] + 0x00000158u; /* 027BC540 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24); /* 027BC544 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC544 */ _t26 = _t25 & 0x00000001u; /* 027BC544 */ if (_t26) goto L_027BC548; else goto L_027BC54C; L_027BC548: ; // 0x27bc548 /* 027BC548 */ cpu->r[12] = cpu->r[12] + cpu->r[30]; L_027BC54C: ; // 0x27bc54c /* 027BC54C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BC550 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC550 */ _t28 = _t27 & 0x00000001u; /* 027BC550 */ if (_t28) goto L_027BC5EC; else goto L_027BC554; L_027BC554: ; // 0x27bc554 /* 027BC554 */ _t29 = cpu->r[12] + 0x00000110u; /* 027BC554 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29); /* 027BC558 */ _t30 = cpu->r[1] + 0x00000008u; /* 027BC558 */ rbrew_write32(cpu->mem, _t30, cpu->r[9]); /* 027BC55C */ _t31 = cpu->r[12] + 0x00000114u; /* 027BC55C */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027BC560 */ cpu->r[26] = 0x00000000u; /* 027BC564 */ _t32 = cpu->r[1] + 0x0000000Cu; /* 027BC564 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]); /* 027BC568 */ _t33 = cpu->r[12] + 0x00000118u; /* 027BC568 */ cpu->r[5] = rbrew_read32(cpu->mem, _t33); /* 027BC56C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[9]); /* 027BC570 */ _t34 = cpu->r[1] + 0x00000010u; /* 027BC570 */ rbrew_write32(cpu->mem, _t34, cpu->r[5]); /* 027BC574 */ _t35 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC574 */ _t36 = _t35 & 0x00000001u; /* 027BC574 */ if (_t36) goto L_027BC578; else goto L_027BC5E0; L_027BC578: ; // 0x27bc578 /* 027BC578 */ cpu->r[29] = 0x00000000u; L_027BC57C: ; // 0x27bc57c /* 027BC57C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[9]); /* 027BC580 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC580 */ _t38 = _t37 & 0x00000001u; /* 027BC580 */ if (_t38) goto L_027BC584; else goto L_027BC5D0; L_027BC584: ; // 0x27bc584 /* 027BC584 */ _t39 = cpu->r[1] + 0x00000010u; /* 027BC584 */ cpu->r[6] = rbrew_read32(cpu->mem, _t39); /* 027BC588 */ _t40 = cpu->r[6] + cpu->r[29]; /* 027BC588 */ cpu->r[31] = rbrew_read32(cpu->mem, _t40); /* 027BC58C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC590 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC590 */ _t42 = _t41 & 0x00000001u; /* 027BC590 */ if (_t42) goto L_027BC5D0; else goto L_027BC594; L_027BC594: ; // 0x27bc594 /* 027BC594 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[9]); /* 027BC598 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC598 */ _t44 = _t43 & 0x00000001u; /* 027BC598 */ if (_t44) goto L_027BC59C; else goto L_027BC5D0; L_027BC59C: ; // 0x27bc59c /* 027BC59C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC5A0 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC5A0 */ _t46 = _t45 & 0x00000001u; /* 027BC5A0 */ if (_t46) goto L_027BC5D0; else goto L_027BC5A4; L_027BC5A4: ; // 0x27bc5a4 /* 027BC5A4 */ _t47 = cpu->r[31] + 0x00000008u; /* 027BC5A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47); /* 027BC5A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC5AC */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC5AC */ _t49 = _t48 & 0x00000001u; /* 027BC5AC */ if (_t49) goto L_027BC5C4; else goto L_027BC5B0; L_027BC5B0: ; // 0x27bc5b0 /* 027BC5B0 */ _t50 = cpu->r[3] + 0x00000008u; /* 027BC5B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t50); /* 027BC5B4 */ _t51 = cpu->r[7] + 0x0000000Cu; /* 027BC5B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51); /* 027BC5B8 */ cpu->ctr = cpu->r[0]; /* 027BC5BC */ cpu->r[4] = 0x00000003u; /* 027BC5C0 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC5C4: ; // 0x27bc5c4 /* 027BC5C4 */ cpu->r[3] = cpu->r[31]; /* 027BC5C8 */ Gambit_fn_02801BB0(cpu); /* 027BC5CC */ _t52 = cpu->r[1] + 0x00000008u; /* 027BC5CC */ cpu->r[9] = rbrew_read32(cpu->mem, _t52); L_027BC5D0: ; // 0x27bc5d0 /* 027BC5D0 */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027BC5D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[9]); /* 027BC5D8 */ cpu->r[29] = cpu->r[29] + 0x00000004u; /* 027BC5DC */ _t53 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC5DC */ _t54 = _t53 & 0x00000001u; /* 027BC5DC */ if (_t54) goto L_027BC57C; else goto L_027BC5E0; L_027BC5E0: ; // 0x27bc5e0 /* 027BC5E0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BC5E4 */ Gambit_fn_02802424(cpu); /* 027BC5E8 */ _t55 = cpu->r[28] + 0x00000154u; /* 027BC5E8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55); L_027BC5EC: ; // 0x27bc5ec /* 027BC5EC */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027BC5F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[0]); /* 027BC5F4 */ cpu->r[30] = cpu->r[30] + 0x0000011Cu; /* 027BC5F8 */ _t56 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC5F8 */ _t57 = _t56 & 0x00000001u; /* 027BC5F8 */ if (_t57) goto L_027BC53C; else goto L_027BC5FC; L_027BC5FC: ; // 0x27bc5fc /* 027BC5FC */ cpu->r[3] = cpu->r[28] + 0x00000150u; /* 027BC600 */ cpu->r[4] = 0x00000002u; /* 027BC604 */ Gambit_fn_027BC468(cpu); /* 027BC608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BC60C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC60C */ _t59 = _t58 & 0x00000001u; /* 027BC60C */ if (_t59) goto L_027BC640; else goto L_027BC610; L_027BC610: ; // 0x27bc610 /* 027BC610 */ cpu->r[10] = 0x10110000u; /* 027BC614 */ cpu->r[3] = cpu->r[28] + 0x0000010Cu; /* 027BC618 */ cpu->r[10] = cpu->r[10] + 0xFFFFBB34u; /* 027BC61C */ cpu->r[4] = 0x00000002u; /* 027BC620 */ _t60 = cpu->r[28] + 0x00000020u; /* 027BC620 */ rbrew_write32(cpu->mem, _t60, cpu->r[10]); /* 027BC624 */ Gambit_fn_02928E8C(cpu); /* 027BC628 */ cpu->r[3] = cpu->r[28] + 0x000000C8u; /* 027BC62C */ cpu->r[4] = 0x00000002u; /* 027BC630 */ Gambit_fn_02928E8C(cpu); /* 027BC634 */ cpu->r[3] = cpu->r[28]; /* 027BC638 */ cpu->r[4] = 0x00000000u; /* 027BC63C */ Gambit_fn_028136EC(cpu); L_027BC640: ; // 0x27bc640 /* 027BC640 */ cpu->r[0] = rbrew_rlwinm(cpu->r[27], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BC640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BC644 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC644 */ _t62 = _t61 & 0x00000001u; /* 027BC644 */ if (_t62) goto L_027BC650; else goto L_027BC648; L_027BC648: ; // 0x27bc648 /* 027BC648 */ cpu->r[3] = cpu->r[28]; /* 027BC64C */ Gambit_fn_02801BB0(cpu); L_027BC650: ; // 0x27bc650 /* 027BC650 */ /* nop */ /* 027BC654 */ _t63 = cpu->r[1] + 0x00000034u; /* 027BC654 */ cpu->r[0] = rbrew_read32(cpu->mem, _t63); /* 027BC658 */ cpu->lr = cpu->r[0]; /* 027BC65C */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027BC660 */ return; L_027BC664: ; // 0x27bc664 /* 027BC664 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFECu; /* 027BC668 */ goto L_027BC494; } // fn_027BC68C @ 0x27bc68c void Gambit_fn_027BC68C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22; L_027BC68C: ; // 0x27bc68c /* 027BC68C */ cpu->r[0] = cpu->lr; /* 027BC690 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BC690 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC690 */ cpu->r[1] = _t0; /* 027BC694 */ _t1 = cpu->r[1] + 0x00000008u; /* 027BC694 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BC698 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BC698 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BC69C */ cpu->r[31] = cpu->r[3]; /* 027BC69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC6A0 */ cpu->r[30] = cpu->r[4]; /* 027BC6A4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BC6A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BC6A8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC6A8 */ _t5 = _t4 & 0x00000001u; /* 027BC6A8 */ if (_t5) goto L_027BC6AC; else goto L_027BC6BC; L_027BC6AC: ; // 0x27bc6ac /* 027BC6AC */ cpu->r[3] = 0x0000018Cu; /* 027BC6B0 */ Gambit_fn_02801A78(cpu); /* 027BC6B4 */ cpu->r[31] = cpu->r[3]; /* 027BC6B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC6B8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC6B8 */ _t7 = _t6 & 0x00000001u; /* 027BC6B8 */ if (_t7) goto L_027BC760; else goto L_027BC6BC; L_027BC6BC: ; // 0x27bc6bc /* 027BC6BC */ cpu->r[5] = 0x10110000u; /* 027BC6C0 */ cpu->r[4] = cpu->r[30]; /* 027BC6C4 */ cpu->r[5] = cpu->r[5] + 0xFFFFBBB4u; /* 027BC6C8 */ cpu->r[3] = cpu->r[31]; /* 027BC6CC */ Gambit_fn_02798BA4(cpu); /* 027BC6D0 */ cpu->r[0] = 0x10110000u; /* 027BC6D4 */ cpu->r[0] = cpu->r[0] + 0xFFFFBBC4u; /* 027BC6D8 */ cpu->r[30] = 0x00000000u; /* 027BC6DC */ _t8 = cpu->r[31] + 0x00000070u; /* 027BC6DC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BC6E0 */ cpu->r[0] = 0x10110000u; /* 027BC6E4 */ _t9 = cpu->r[31] + 0x00000150u; /* 027BC6E4 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[30]); /* 027BC6E8 */ cpu->r[0] = cpu->r[0] + 0xFFFFBC8Cu; /* 027BC6EC */ cpu->r[3] = cpu->r[31] + 0x00000154u; /* 027BC6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC6F0 */ _t10 = cpu->r[31] + 0x00000020u; /* 027BC6F0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027BC6F4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC6F4 */ _t12 = _t11 & 0x00000001u; /* 027BC6F4 */ if (_t12) goto L_027BC6F8; else goto L_027BC708; L_027BC6F8: ; // 0x27bc6f8 /* 027BC6F8 */ cpu->r[3] = 0x00000008u; /* 027BC6FC */ Gambit_fn_02801A78(cpu); /* 027BC700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC704 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC704 */ _t14 = _t13 & 0x00000001u; /* 027BC704 */ if (_t14) goto L_027BC710; else goto L_027BC708; L_027BC708: ; // 0x27bc708 /* 027BC708 */ _t15 = cpu->r[3] + 0x00000004u; /* 027BC708 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]); /* 027BC70C */ _t16 = cpu->r[3] + 0x00000000u; /* 027BC70C */ rbrew_write32(cpu->mem, _t16, cpu->r[30]); L_027BC710: ; // 0x27bc710 /* 027BC710 */ _t17 = cpu->r[31] + 0x0000015Cu; /* 027BC710 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]); /* 027BC714 */ cpu->r[3] = cpu->r[31] + 0x00000168u; /* 027BC718 */ _t18 = cpu->r[31] + 0x00000160u; /* 027BC718 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]); /* 027BC71C */ cpu->r[4] = 0x00000008u; /* 027BC720 */ _t19 = cpu->r[31] + 0x00000164u; /* 027BC720 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]); /* 027BC724 */ Gambit_fn_02C89380(cpu); /* 027BC728 */ cpu->r[4] = 0x101F0000u; /* 027BC72C */ cpu->r[5] = 0x101F0000u; /* 027BC730 */ cpu->r[6] = 0x101F0000u; /* 027BC734 */ cpu->r[8] = 0x101F0000u; /* 027BC738 */ cpu->r[9] = 0x101F0000u; /* 027BC73C */ cpu->r[7] = 0x101F0000u; /* 027BC740 */ cpu->r[3] = cpu->r[31] + 0x00000170u; /* 027BC744 */ cpu->r[4] = cpu->r[4] + 0x00006C18u; /* 027BC748 */ cpu->r[5] = cpu->r[5] + 0x00006C1Cu; /* 027BC74C */ cpu->r[6] = cpu->r[6] + 0x00006C20u; /* 027BC750 */ cpu->r[7] = cpu->r[7] + 0x00006C24u; /* 027BC754 */ cpu->r[9] = cpu->r[9] + 0x00006C2Cu; /* 027BC758 */ cpu->r[8] = cpu->r[8] + 0x00006C28u; /* 027BC75C */ Gambit_fn_0283801C(cpu); L_027BC760: ; // 0x27bc760 /* 027BC760 */ _t20 = cpu->r[1] + 0x00000014u; /* 027BC760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027BC764 */ cpu->r[3] = cpu->r[31]; /* 027BC768 */ _t21 = cpu->r[1] + 0x0000000Cu; /* 027BC768 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21); /* 027BC76C */ cpu->lr = cpu->r[0]; /* 027BC770 */ _t22 = cpu->r[1] + 0x00000008u; /* 027BC770 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22); /* 027BC774 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BC778 */ return; } // fn_027BC690 @ 0x27bc690 void Gambit_fn_027BC690(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22; L_027BC690: ; // 0x27bc690 /* 027BC690 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BC690 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC690 */ cpu->r[1] = _t0; /* 027BC694 */ _t1 = cpu->r[1] + 0x00000008u; /* 027BC694 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BC698 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BC698 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027BC69C */ cpu->r[31] = cpu->r[3]; /* 027BC69C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC6A0 */ cpu->r[30] = cpu->r[4]; /* 027BC6A4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BC6A4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BC6A8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC6A8 */ _t5 = _t4 & 0x00000001u; /* 027BC6A8 */ if (_t5) goto L_027BC6AC; else goto L_027BC6BC; L_027BC6AC: ; // 0x27bc6ac /* 027BC6AC */ cpu->r[3] = 0x0000018Cu; /* 027BC6B0 */ Gambit_fn_02801A78(cpu); /* 027BC6B4 */ cpu->r[31] = cpu->r[3]; /* 027BC6B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC6B8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC6B8 */ _t7 = _t6 & 0x00000001u; /* 027BC6B8 */ if (_t7) goto L_027BC760; else goto L_027BC6BC; L_027BC6BC: ; // 0x27bc6bc /* 027BC6BC */ cpu->r[5] = 0x10110000u; /* 027BC6C0 */ cpu->r[4] = cpu->r[30]; /* 027BC6C4 */ cpu->r[5] = cpu->r[5] + 0xFFFFBBB4u; /* 027BC6C8 */ cpu->r[3] = cpu->r[31]; /* 027BC6CC */ Gambit_fn_02798BA4(cpu); /* 027BC6D0 */ cpu->r[0] = 0x10110000u; /* 027BC6D4 */ cpu->r[0] = cpu->r[0] + 0xFFFFBBC4u; /* 027BC6D8 */ cpu->r[30] = 0x00000000u; /* 027BC6DC */ _t8 = cpu->r[31] + 0x00000070u; /* 027BC6DC */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BC6E0 */ cpu->r[0] = 0x10110000u; /* 027BC6E4 */ _t9 = cpu->r[31] + 0x00000150u; /* 027BC6E4 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[30]); /* 027BC6E8 */ cpu->r[0] = cpu->r[0] + 0xFFFFBC8Cu; /* 027BC6EC */ cpu->r[3] = cpu->r[31] + 0x00000154u; /* 027BC6EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC6F0 */ _t10 = cpu->r[31] + 0x00000020u; /* 027BC6F0 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027BC6F4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC6F4 */ _t12 = _t11 & 0x00000001u; /* 027BC6F4 */ if (_t12) goto L_027BC6F8; else goto L_027BC708; L_027BC6F8: ; // 0x27bc6f8 /* 027BC6F8 */ cpu->r[3] = 0x00000008u; /* 027BC6FC */ Gambit_fn_02801A78(cpu); /* 027BC700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC704 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC704 */ _t14 = _t13 & 0x00000001u; /* 027BC704 */ if (_t14) goto L_027BC710; else goto L_027BC708; L_027BC708: ; // 0x27bc708 /* 027BC708 */ _t15 = cpu->r[3] + 0x00000004u; /* 027BC708 */ rbrew_write32(cpu->mem, _t15, cpu->r[30]); /* 027BC70C */ _t16 = cpu->r[3] + 0x00000000u; /* 027BC70C */ rbrew_write32(cpu->mem, _t16, cpu->r[30]); L_027BC710: ; // 0x27bc710 /* 027BC710 */ _t17 = cpu->r[31] + 0x0000015Cu; /* 027BC710 */ rbrew_write32(cpu->mem, _t17, cpu->r[30]); /* 027BC714 */ cpu->r[3] = cpu->r[31] + 0x00000168u; /* 027BC718 */ _t18 = cpu->r[31] + 0x00000160u; /* 027BC718 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]); /* 027BC71C */ cpu->r[4] = 0x00000008u; /* 027BC720 */ _t19 = cpu->r[31] + 0x00000164u; /* 027BC720 */ rbrew_write32(cpu->mem, _t19, cpu->r[30]); /* 027BC724 */ Gambit_fn_02C89380(cpu); /* 027BC728 */ cpu->r[4] = 0x101F0000u; /* 027BC72C */ cpu->r[5] = 0x101F0000u; /* 027BC730 */ cpu->r[6] = 0x101F0000u; /* 027BC734 */ cpu->r[8] = 0x101F0000u; /* 027BC738 */ cpu->r[9] = 0x101F0000u; /* 027BC73C */ cpu->r[7] = 0x101F0000u; /* 027BC740 */ cpu->r[3] = cpu->r[31] + 0x00000170u; /* 027BC744 */ cpu->r[4] = cpu->r[4] + 0x00006C18u; /* 027BC748 */ cpu->r[5] = cpu->r[5] + 0x00006C1Cu; /* 027BC74C */ cpu->r[6] = cpu->r[6] + 0x00006C20u; /* 027BC750 */ cpu->r[7] = cpu->r[7] + 0x00006C24u; /* 027BC754 */ cpu->r[9] = cpu->r[9] + 0x00006C2Cu; /* 027BC758 */ cpu->r[8] = cpu->r[8] + 0x00006C28u; /* 027BC75C */ Gambit_fn_0283801C(cpu); L_027BC760: ; // 0x27bc760 /* 027BC760 */ _t20 = cpu->r[1] + 0x00000014u; /* 027BC760 */ cpu->r[0] = rbrew_read32(cpu->mem, _t20); /* 027BC764 */ cpu->r[3] = cpu->r[31]; /* 027BC768 */ _t21 = cpu->r[1] + 0x0000000Cu; /* 027BC768 */ cpu->r[31] = rbrew_read32(cpu->mem, _t21); /* 027BC76C */ cpu->lr = cpu->r[0]; /* 027BC770 */ _t22 = cpu->r[1] + 0x00000008u; /* 027BC770 */ cpu->r[30] = rbrew_read32(cpu->mem, _t22); /* 027BC774 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BC778 */ return; } // fn_027BC77C @ 0x27bc77c void Gambit_fn_027BC77C(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; L_027BC77C: ; // 0x27bc77c /* 027BC77C */ cpu->r[0] = cpu->lr; /* 027BC780 */ _t0 = cpu->r[1] + 0xFFFFFFD8u; /* 027BC780 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC780 */ cpu->r[1] = _t0; /* 027BC784 */ _t1 = cpu->r[1] + 0x00000020u; /* 027BC784 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BC788 */ cpu->r[30] = cpu->r[5]; /* 027BC78C */ _t2 = cpu->r[1] + 0x00000018u; /* 027BC78C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027BC790 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027BC790 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BC794 */ _t4 = cpu->r[1] + 0x00000024u; /* 027BC794 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027BC798 */ _t5 = cpu->r[1] + 0x0000002Cu; /* 027BC798 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BC79C */ cpu->r[29] = cpu->r[4]; /* 027BC7A0 */ _t6 = cpu->r[30] + 0x00000004u; /* 027BC7A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6); /* 027BC7A4 */ _t7 = cpu->r[12] + 0x00000014u; /* 027BC7A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7); /* 027BC7A8 */ cpu->r[28] = cpu->r[3]; /* 027BC7AC */ cpu->ctr = cpu->r[7]; /* 027BC7B0 */ cpu->r[3] = cpu->r[30]; /* 027BC7B4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BC7B8 */ _t8 = cpu->r[30] + 0x00000004u; /* 027BC7B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8); /* 027BC7BC */ _t9 = cpu->r[8] + 0x00000014u; /* 027BC7BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t9); /* 027BC7C0 */ cpu->ctr = cpu->r[9]; /* 027BC7C4 */ _t10 = cpu->r[30] + 0x00000000u; /* 027BC7C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10); /* 027BC7C8 */ cpu->r[3] = cpu->r[30]; /* 027BC7CC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BC7D0 */ cpu->r[12] = 0x10110000u; /* 027BC7D4 */ _t11 = cpu->r[30] + 0x00000000u; /* 027BC7D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11); /* 027BC7D8 */ _t12 = cpu->r[12] + 0x00007399u; /* 027BC7D8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t12); /* 027BC7DC */ _t13 = cpu->r[8] + 0x00000000u; /* 027BC7DC */ cpu->r[10] = rbrew_read8(cpu->mem, _t13); /* 027BC7E0 */ cpu->r[4] = 0x00000000u; /* 027BC7E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]); /* 027BC7E8 */ cpu->r[10] = 0x00080000u; /* 027BC7EC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC7EC */ _t15 = _t14 & 0x00000001u; /* 027BC7EC */ if (_t15) goto L_027BC814; else goto L_027BC7F0; L_027BC7F0: ; // 0x27bc7f0 /* 027BC7F0 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BC7F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[10]); /* 027BC7F8 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027BC7FC */ _t16 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BC7FC */ _t17 = _t16 & 0x00000001u; /* 027BC7FC */ if (_t17) goto L_027BC810; else goto L_027BC800; L_027BC800: ; // 0x27bc800 /* 027BC800 */ _t18 = cpu->r[8] + 0x00000000u; /* 027BC800 */ cpu->r[11] = rbrew_read8(cpu->mem, _t18); /* 027BC804 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]); /* 027BC808 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC808 */ _t20 = _t19 & 0x00000001u; /* 027BC808 */ if (_t20) goto L_027BC80C; else goto L_027BC7F0; L_027BC80C: ; // 0x27bc80c /* 027BC80C */ goto L_027BC814; L_027BC810: ; // 0x27bc810 /* 027BC810 */ cpu->r[4] = 0x00000000u; L_027BC814: ; // 0x27bc814 /* 027BC814 */ cpu->r[3] = cpu->r[31]; /* 027BC818 */ Gambit_fn_02801E30(cpu); /* 027BC81C */ _t21 = cpu->r[28] + 0x00000154u; /* 027BC81C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027BC820 */ _t22 = cpu->r[1] + 0x00000008u; /* 027BC820 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]); /* 027BC824 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]); /* 027BC828 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027BC828 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]); /* 027BC82C */ cpu->r[12] = 0x00000000u; /* 027BC830 */ _t24 = cpu->r[28] + 0x00000158u; /* 027BC830 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24); /* 027BC834 */ _t25 = cpu->r[1] + 0x00000010u; /* 027BC834 */ rbrew_write32(cpu->mem, _t25, cpu->r[12]); /* 027BC838 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC838 */ _t27 = _t26 & 0x00000001u; /* 027BC838 */ if (_t27) goto L_027BC83C; else goto L_027BC844; L_027BC83C: ; // 0x27bc83c /* 027BC83C */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000011Cu); /* 027BC840 */ cpu->r[31] = cpu->r[31] + cpu->r[7]; L_027BC844: ; // 0x27bc844 /* 027BC844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC848 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC848 */ _t29 = _t28 & 0x00000001u; /* 027BC848 */ if (_t29) goto L_027BC888; else goto L_027BC84C; L_027BC84C: ; // 0x27bc84c /* 027BC84C */ cpu->r[5] = 0x027C0000u; /* 027BC850 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BC854 */ cpu->r[5] = cpu->r[5] + 0xFFFFDE10u; /* 027BC858 */ cpu->r[3] = cpu->r[31] + 0x00000110u; /* 027BC85C */ Gambit_fn_028028E0(cpu); /* 027BC860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu); /* 027BC864 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC864 */ _t31 = _t30 & 0x00000001u; /* 027BC864 */ if (_t31) goto L_027BC868; else goto L_027BC8AC; L_027BC868: ; // 0x27bc868 /* 027BC868 */ _t32 = cpu->r[1] + 0x00000010u; /* 027BC868 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32); /* 027BC86C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC870 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC870 */ _t34 = _t33 & 0x00000001u; /* 027BC870 */ if (_t34) goto L_027BC888; else goto L_027BC874; L_027BC874: ; // 0x27bc874 /* 027BC874 */ _t35 = cpu->r[3] + 0x00000008u; /* 027BC874 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35); /* 027BC878 */ _t36 = cpu->r[8] + 0x0000000Cu; /* 027BC878 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36); /* 027BC87C */ cpu->ctr = cpu->r[9]; /* 027BC880 */ cpu->r[4] = 0x00000003u; /* 027BC884 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC888: ; // 0x27bc888 /* 027BC888 */ _t37 = cpu->r[1] + 0x00000018u; /* 027BC888 */ cpu->r[28] = rbrew_read32(cpu->mem, _t37); /* 027BC88C */ _t38 = cpu->r[1] + 0x0000001Cu; /* 027BC88C */ cpu->r[29] = rbrew_read32(cpu->mem, _t38); /* 027BC890 */ _t39 = cpu->r[1] + 0x0000002Cu; /* 027BC890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027BC894 */ _t40 = cpu->r[1] + 0x00000020u; /* 027BC894 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40); /* 027BC898 */ cpu->lr = cpu->r[0]; /* 027BC89C */ _t41 = cpu->r[1] + 0x00000024u; /* 027BC89C */ cpu->r[31] = rbrew_read32(cpu->mem, _t41); /* 027BC8A0 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027BC8A4 */ cpu->r[3] = 0x00000000u; /* 027BC8A8 */ return; L_027BC8AC: ; // 0x27bc8ac /* 027BC8AC */ _t42 = cpu->r[31] + 0x00000110u; /* 027BC8AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t42); /* 027BC8B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]); /* 027BC8B4 */ cpu->r[30] = 0x00000000u; /* 027BC8B8 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC8B8 */ _t44 = _t43 & 0x00000001u; /* 027BC8B8 */ if (_t44) goto L_027BC8BC; else goto L_027BC8C8; L_027BC8BC: ; // 0x27bc8bc /* 027BC8BC */ _t45 = cpu->r[31] + 0x00000118u; /* 027BC8BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t45); /* 027BC8C0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BC8C4 */ _t46 = cpu->r[11] + cpu->r[7]; /* 027BC8C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46); L_027BC8C8: ; // 0x27bc8c8 /* 027BC8C8 */ _t47 = cpu->r[1] + 0x00000010u; /* 027BC8C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47); /* 027BC8CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC8D0 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC8D0 */ _t49 = _t48 & 0x00000001u; /* 027BC8D0 */ if (_t49) goto L_027BC8E8; else goto L_027BC8D4; L_027BC8D4: ; // 0x27bc8d4 /* 027BC8D4 */ _t50 = cpu->r[3] + 0x00000008u; /* 027BC8D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50); /* 027BC8D8 */ _t51 = cpu->r[9] + 0x0000000Cu; /* 027BC8D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51); /* 027BC8DC */ cpu->ctr = cpu->r[0]; /* 027BC8E0 */ cpu->r[4] = 0x00000003u; /* 027BC8E4 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC8E8: ; // 0x27bc8e8 /* 027BC8E8 */ _t52 = cpu->r[1] + 0x00000018u; /* 027BC8E8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t52); /* 027BC8EC */ _t53 = cpu->r[1] + 0x0000001Cu; /* 027BC8EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t53); /* 027BC8F0 */ _t54 = cpu->r[1] + 0x0000002Cu; /* 027BC8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54); /* 027BC8F4 */ cpu->r[3] = cpu->r[30]; /* 027BC8F8 */ _t55 = cpu->r[1] + 0x00000020u; /* 027BC8F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t55); /* 027BC8FC */ cpu->lr = cpu->r[0]; /* 027BC900 */ _t56 = cpu->r[1] + 0x00000024u; /* 027BC900 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56); /* 027BC904 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027BC908 */ return; } // fn_027BC780 @ 0x27bc780 void Gambit_fn_027BC780(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; L_027BC780: ; // 0x27bc780 /* 027BC780 */ _t0 = cpu->r[1] + 0xFFFFFFD8u; /* 027BC780 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC780 */ cpu->r[1] = _t0; /* 027BC784 */ _t1 = cpu->r[1] + 0x00000020u; /* 027BC784 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BC788 */ cpu->r[30] = cpu->r[5]; /* 027BC78C */ _t2 = cpu->r[1] + 0x00000018u; /* 027BC78C */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027BC790 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027BC790 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BC794 */ _t4 = cpu->r[1] + 0x00000024u; /* 027BC794 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027BC798 */ _t5 = cpu->r[1] + 0x0000002Cu; /* 027BC798 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BC79C */ cpu->r[29] = cpu->r[4]; /* 027BC7A0 */ _t6 = cpu->r[30] + 0x00000004u; /* 027BC7A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t6); /* 027BC7A4 */ _t7 = cpu->r[12] + 0x00000014u; /* 027BC7A4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t7); /* 027BC7A8 */ cpu->r[28] = cpu->r[3]; /* 027BC7AC */ cpu->ctr = cpu->r[7]; /* 027BC7B0 */ cpu->r[3] = cpu->r[30]; /* 027BC7B4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BC7B8 */ _t8 = cpu->r[30] + 0x00000004u; /* 027BC7B8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t8); /* 027BC7BC */ _t9 = cpu->r[8] + 0x00000014u; /* 027BC7BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t9); /* 027BC7C0 */ cpu->ctr = cpu->r[9]; /* 027BC7C4 */ _t10 = cpu->r[30] + 0x00000000u; /* 027BC7C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10); /* 027BC7C8 */ cpu->r[3] = cpu->r[30]; /* 027BC7CC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BC7D0 */ cpu->r[12] = 0x10110000u; /* 027BC7D4 */ _t11 = cpu->r[30] + 0x00000000u; /* 027BC7D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t11); /* 027BC7D8 */ _t12 = cpu->r[12] + 0x00007399u; /* 027BC7D8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t12); /* 027BC7DC */ _t13 = cpu->r[8] + 0x00000000u; /* 027BC7DC */ cpu->r[10] = rbrew_read8(cpu->mem, _t13); /* 027BC7E0 */ cpu->r[4] = 0x00000000u; /* 027BC7E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]); /* 027BC7E8 */ cpu->r[10] = 0x00080000u; /* 027BC7EC */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC7EC */ _t15 = _t14 & 0x00000001u; /* 027BC7EC */ if (_t15) goto L_027BC814; else goto L_027BC7F0; L_027BC7F0: ; // 0x27bc7f0 /* 027BC7F0 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BC7F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[10]); /* 027BC7F8 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027BC7FC */ _t16 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BC7FC */ _t17 = _t16 & 0x00000001u; /* 027BC7FC */ if (_t17) goto L_027BC810; else goto L_027BC800; L_027BC800: ; // 0x27bc800 /* 027BC800 */ _t18 = cpu->r[8] + 0x00000000u; /* 027BC800 */ cpu->r[11] = rbrew_read8(cpu->mem, _t18); /* 027BC804 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]); /* 027BC808 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC808 */ _t20 = _t19 & 0x00000001u; /* 027BC808 */ if (_t20) goto L_027BC80C; else goto L_027BC7F0; L_027BC80C: ; // 0x27bc80c /* 027BC80C */ goto L_027BC814; L_027BC810: ; // 0x27bc810 /* 027BC810 */ cpu->r[4] = 0x00000000u; L_027BC814: ; // 0x27bc814 /* 027BC814 */ cpu->r[3] = cpu->r[31]; /* 027BC818 */ Gambit_fn_02801E30(cpu); /* 027BC81C */ _t21 = cpu->r[28] + 0x00000154u; /* 027BC81C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027BC820 */ _t22 = cpu->r[1] + 0x00000008u; /* 027BC820 */ rbrew_write32(cpu->mem, _t22, cpu->r[3]); /* 027BC824 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]); /* 027BC828 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027BC828 */ rbrew_write32(cpu->mem, _t23, cpu->r[29]); /* 027BC82C */ cpu->r[12] = 0x00000000u; /* 027BC830 */ _t24 = cpu->r[28] + 0x00000158u; /* 027BC830 */ cpu->r[31] = rbrew_read32(cpu->mem, _t24); /* 027BC834 */ _t25 = cpu->r[1] + 0x00000010u; /* 027BC834 */ rbrew_write32(cpu->mem, _t25, cpu->r[12]); /* 027BC838 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC838 */ _t27 = _t26 & 0x00000001u; /* 027BC838 */ if (_t27) goto L_027BC83C; else goto L_027BC844; L_027BC83C: ; // 0x27bc83c /* 027BC83C */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000011Cu); /* 027BC840 */ cpu->r[31] = cpu->r[31] + cpu->r[7]; L_027BC844: ; // 0x27bc844 /* 027BC844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BC848 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC848 */ _t29 = _t28 & 0x00000001u; /* 027BC848 */ if (_t29) goto L_027BC888; else goto L_027BC84C; L_027BC84C: ; // 0x27bc84c /* 027BC84C */ cpu->r[5] = 0x027C0000u; /* 027BC850 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BC854 */ cpu->r[5] = cpu->r[5] + 0xFFFFDE10u; /* 027BC858 */ cpu->r[3] = cpu->r[31] + 0x00000110u; /* 027BC85C */ Gambit_fn_028028E0(cpu); /* 027BC860 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0xFFFFFFFFu); /* 027BC864 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC864 */ _t31 = _t30 & 0x00000001u; /* 027BC864 */ if (_t31) goto L_027BC868; else goto L_027BC8AC; L_027BC868: ; // 0x27bc868 /* 027BC868 */ _t32 = cpu->r[1] + 0x00000010u; /* 027BC868 */ cpu->r[3] = rbrew_read32(cpu->mem, _t32); /* 027BC86C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC870 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC870 */ _t34 = _t33 & 0x00000001u; /* 027BC870 */ if (_t34) goto L_027BC888; else goto L_027BC874; L_027BC874: ; // 0x27bc874 /* 027BC874 */ _t35 = cpu->r[3] + 0x00000008u; /* 027BC874 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35); /* 027BC878 */ _t36 = cpu->r[8] + 0x0000000Cu; /* 027BC878 */ cpu->r[9] = rbrew_read32(cpu->mem, _t36); /* 027BC87C */ cpu->ctr = cpu->r[9]; /* 027BC880 */ cpu->r[4] = 0x00000003u; /* 027BC884 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC888: ; // 0x27bc888 /* 027BC888 */ _t37 = cpu->r[1] + 0x00000018u; /* 027BC888 */ cpu->r[28] = rbrew_read32(cpu->mem, _t37); /* 027BC88C */ _t38 = cpu->r[1] + 0x0000001Cu; /* 027BC88C */ cpu->r[29] = rbrew_read32(cpu->mem, _t38); /* 027BC890 */ _t39 = cpu->r[1] + 0x0000002Cu; /* 027BC890 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027BC894 */ _t40 = cpu->r[1] + 0x00000020u; /* 027BC894 */ cpu->r[30] = rbrew_read32(cpu->mem, _t40); /* 027BC898 */ cpu->lr = cpu->r[0]; /* 027BC89C */ _t41 = cpu->r[1] + 0x00000024u; /* 027BC89C */ cpu->r[31] = rbrew_read32(cpu->mem, _t41); /* 027BC8A0 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027BC8A4 */ cpu->r[3] = 0x00000000u; /* 027BC8A8 */ return; L_027BC8AC: ; // 0x27bc8ac /* 027BC8AC */ _t42 = cpu->r[31] + 0x00000110u; /* 027BC8AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t42); /* 027BC8B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[0]); /* 027BC8B4 */ cpu->r[30] = 0x00000000u; /* 027BC8B8 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC8B8 */ _t44 = _t43 & 0x00000001u; /* 027BC8B8 */ if (_t44) goto L_027BC8BC; else goto L_027BC8C8; L_027BC8BC: ; // 0x27bc8bc /* 027BC8BC */ _t45 = cpu->r[31] + 0x00000118u; /* 027BC8BC */ cpu->r[7] = rbrew_read32(cpu->mem, _t45); /* 027BC8C0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[3], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BC8C4 */ _t46 = cpu->r[11] + cpu->r[7]; /* 027BC8C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t46); L_027BC8C8: ; // 0x27bc8c8 /* 027BC8C8 */ _t47 = cpu->r[1] + 0x00000010u; /* 027BC8C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t47); /* 027BC8CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BC8D0 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BC8D0 */ _t49 = _t48 & 0x00000001u; /* 027BC8D0 */ if (_t49) goto L_027BC8E8; else goto L_027BC8D4; L_027BC8D4: ; // 0x27bc8d4 /* 027BC8D4 */ _t50 = cpu->r[3] + 0x00000008u; /* 027BC8D4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t50); /* 027BC8D8 */ _t51 = cpu->r[9] + 0x0000000Cu; /* 027BC8D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51); /* 027BC8DC */ cpu->ctr = cpu->r[0]; /* 027BC8E0 */ cpu->r[4] = 0x00000003u; /* 027BC8E4 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BC8E8: ; // 0x27bc8e8 /* 027BC8E8 */ _t52 = cpu->r[1] + 0x00000018u; /* 027BC8E8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t52); /* 027BC8EC */ _t53 = cpu->r[1] + 0x0000001Cu; /* 027BC8EC */ cpu->r[29] = rbrew_read32(cpu->mem, _t53); /* 027BC8F0 */ _t54 = cpu->r[1] + 0x0000002Cu; /* 027BC8F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54); /* 027BC8F4 */ cpu->r[3] = cpu->r[30]; /* 027BC8F8 */ _t55 = cpu->r[1] + 0x00000020u; /* 027BC8F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t55); /* 027BC8FC */ cpu->lr = cpu->r[0]; /* 027BC900 */ _t56 = cpu->r[1] + 0x00000024u; /* 027BC900 */ cpu->r[31] = rbrew_read32(cpu->mem, _t56); /* 027BC904 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027BC908 */ return; } // fn_027BC90C @ 0x27bc90c void Gambit_fn_027BC90C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58; L_027BC90C: ; // 0x27bc90c /* 027BC90C */ cpu->r[0] = cpu->lr; /* 027BC910 */ _t0 = cpu->r[1] + 0xFFFFFED0u; /* 027BC910 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC910 */ cpu->r[1] = _t0; /* 027BC914 */ _t1 = cpu->r[1] + 0x00000120u; /* 027BC914 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027BC918 */ cpu->r[28] = cpu->r[4]; /* 027BC91C */ _t2 = cpu->r[1] + 0x00000128u; /* 027BC91C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BC920 */ _t3 = cpu->r[1] + 0x00000124u; /* 027BC920 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BC924 */ _t4 = cpu->r[1] + 0x0000012Cu; /* 027BC924 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027BC928 */ _t5 = cpu->r[1] + 0x00000134u; /* 027BC928 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BC92C */ cpu->r[29] = cpu->r[5]; /* 027BC930 */ cpu->r[7] = 0x00000001u; /* 027BC934 */ _t6 = cpu->r[28] + 0x00000004u; /* 027BC934 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]); /* 027BC938 */ _t7 = cpu->r[28] + 0x00000000u; /* 027BC938 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[7]); /* 027BC93C */ _t8 = cpu->r[29] + 0x00000008u; /* 027BC93C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027BC940 */ _t9 = cpu->r[12] + 0x00000004u; /* 027BC940 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9); /* 027BC944 */ cpu->r[31] = cpu->r[6]; /* 027BC948 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]); /* 027BC94C */ cpu->r[3] = 0x00000000u; /* 027BC950 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC950 */ _t11 = _t10 & 0x00000001u; /* 027BC950 */ if (_t11) goto L_027BC954; else goto L_027BC960; L_027BC954: ; // 0x27bc954 /* 027BC954 */ _t12 = cpu->r[12] + 0x00000000u; /* 027BC954 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12); /* 027BC958 */ cpu->r[4] = cpu->r[31]; /* 027BC95C */ Gambit_fn_028016F4(cpu); L_027BC960: ; // 0x27bc960 /* 027BC960 */ _t13 = cpu->r[28] + 0x00000008u; /* 027BC960 */ rbrew_write32(cpu->mem, _t13, cpu->r[3]); /* 027BC964 */ _t14 = cpu->r[29] + 0x00000008u; /* 027BC964 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14); /* 027BC968 */ _t15 = cpu->r[6] + 0x00000004u; /* 027BC968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027BC96C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027BC970 */ cpu->r[3] = 0x00000000u; /* 027BC974 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC974 */ _t17 = _t16 & 0x00000001u; /* 027BC974 */ if (_t17) goto L_027BC978; else goto L_027BC984; L_027BC978: ; // 0x27bc978 /* 027BC978 */ _t18 = cpu->r[6] + 0x00000000u; /* 027BC978 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18); /* 027BC97C */ cpu->r[4] = cpu->r[31]; /* 027BC980 */ Gambit_fn_02801980(cpu); L_027BC984: ; // 0x27bc984 /* 027BC984 */ _t19 = cpu->r[28] + 0x0000000Cu; /* 027BC984 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]); /* 027BC988 */ _t20 = cpu->r[29] + 0x00000008u; /* 027BC988 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20); /* 027BC98C */ cpu->r[4] = cpu->r[31]; /* 027BC990 */ Gambit_fn_028280B8(cpu); /* 027BC994 */ _t21 = cpu->r[28] + 0x000000ACu; /* 027BC994 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]); /* 027BC998 */ cpu->r[11] = cpu->r[1] + 0x0000001Cu; /* 027BC99C */ _t22 = cpu->r[28] + 0x000000A8u; /* 027BC99C */ rbrew_write32(cpu->mem, _t22, cpu->r[31]); /* 027BC9A0 */ _t23 = cpu->r[29] + 0x00000004u; /* 027BC9A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23); /* 027BC9A4 */ cpu->r[30] = 0x10110000u; /* 027BC9A8 */ _t24 = cpu->r[1] + 0x00000010u; /* 027BC9A8 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]); /* 027BC9AC */ cpu->r[12] = 0x00000100u; /* 027BC9B0 */ _t25 = cpu->r[28] + 0x000000B0u; /* 027BC9B0 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]); /* 027BC9B4 */ _t26 = cpu->r[30] + 0x00007399u; /* 027BC9B4 */ cpu->r[30] = rbrew_read8(cpu->mem, _t26); /* 027BC9B8 */ cpu->r[5] = cpu->r[31]; /* 027BC9BC */ _t27 = cpu->r[1] + 0x00000018u; /* 027BC9BC */ rbrew_write32(cpu->mem, _t27, cpu->r[12]); /* 027BC9C0 */ cpu->r[31] = 0x10110000u; /* 027BC9C4 */ _t28 = cpu->r[29] + 0x00000008u; /* 027BC9C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28); /* 027BC9C8 */ cpu->r[0] = 0x10110000u; /* 027BC9CC */ _t29 = cpu->r[1] + 0x0000011Bu; /* 027BC9CC */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[30]); /* 027BC9D0 */ cpu->r[0] = cpu->r[0] + 0xFFFFBADCu; /* 027BC9D4 */ cpu->r[4] = cpu->r[1] + 0x00000010u; /* 027BC9D8 */ _t30 = cpu->r[1] + 0x0000001Cu; /* 027BC9D8 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[30]); /* 027BC9DC */ cpu->r[31] = cpu->r[31] + 0xFFFFBA54u; /* 027BC9E0 */ _t31 = cpu->r[1] + 0x00000014u; /* 027BC9E0 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]); /* 027BC9E4 */ Gambit_fn_028280D4(cpu); /* 027BC9E8 */ _t32 = cpu->r[1] + 0x00000014u; /* 027BC9E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32); /* 027BC9EC */ _t33 = cpu->r[10] + 0x00000014u; /* 027BC9EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t33); /* 027BC9F0 */ cpu->ctr = cpu->r[11]; /* 027BC9F4 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BC9F8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BC9FC */ _t34 = cpu->r[1] + 0x00000010u; /* 027BC9FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027BCA00 */ _t35 = cpu->r[28] + 0x0000005Cu; /* 027BCA00 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35); /* 027BCA04 */ _t36 = cpu->r[1] + 0x0000000Cu; /* 027BCA04 */ rbrew_write32(cpu->mem, _t36, cpu->r[31]); /* 027BCA08 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BCA0C */ _t37 = cpu->r[1] + 0x00000008u; /* 027BCA0C */ rbrew_write32(cpu->mem, _t37, cpu->r[0]); /* 027BCA10 */ Gambit_fn_027BDC84(cpu); /* 027BCA14 */ _t38 = cpu->r[1] + 0x00000008u; /* 027BCA14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38); /* 027BCA18 */ _t39 = cpu->r[10] + 0x00000000u; /* 027BCA18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t39); /* 027BCA1C */ cpu->r[31] = 0x00000000u; /* 027BCA20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027BCA24 */ cpu->r[0] = 0x00080000u; /* 027BCA28 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCA28 */ _t41 = _t40 & 0x00000001u; /* 027BCA28 */ if (_t41) goto L_027BCA50; else goto L_027BCA2C; L_027BCA2C: ; // 0x27bca2c /* 027BCA2C */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027BCA30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027BCA34 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027BCA38 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BCA38 */ _t43 = _t42 & 0x00000001u; /* 027BCA38 */ if (_t43) goto L_027BCA4C; else goto L_027BCA3C; L_027BCA3C: ; // 0x27bca3c /* 027BCA3C */ _t44 = cpu->r[10] + 0x00000000u; /* 027BCA3C */ cpu->r[7] = rbrew_read8(cpu->mem, _t44); /* 027BCA40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]); /* 027BCA44 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCA44 */ _t46 = _t45 & 0x00000001u; /* 027BCA44 */ if (_t46) goto L_027BCA48; else goto L_027BCA2C; L_027BCA48: ; // 0x27bca48 /* 027BCA48 */ goto L_027BCA50; L_027BCA4C: ; // 0x27bca4c /* 027BCA4C */ cpu->r[31] = 0x00000000u; L_027BCA50: ; // 0x27bca50 /* 027BCA50 */ _t47 = cpu->r[28] + 0x00000064u; /* 027BCA50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47); /* 027BCA54 */ _t48 = cpu->r[1] + 0x0000000Cu; /* 027BCA54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t48); /* 027BCA58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]); /* 027BCA5C */ _t49 = cpu->r[8] + 0x00000014u; /* 027BCA5C */ cpu->r[9] = rbrew_read32(cpu->mem, _t49); /* 027BCA60 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCA60 */ _t51 = _t50 & 0x00000001u; /* 027BCA60 */ if (_t51) goto L_027BCA68; else goto L_027BCA64; L_027BCA64: ; // 0x27bca64 /* 027BCA64 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu; L_027BCA68: ; // 0x27bca68 /* 027BCA68 */ cpu->ctr = cpu->r[9]; /* 027BCA6C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BCA70 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCA74 */ _t52 = cpu->r[1] + 0x00000008u; /* 027BCA74 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52); /* 027BCA78 */ cpu->r[6] = 0x00000000u; /* 027BCA7C */ cpu->r[5] = cpu->r[31]; /* 027BCA80 */ cpu->r[3] = cpu->r[29]; /* 027BCA84 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BCA88 */ _t53 = cpu->r[29] + cpu->r[31]; /* 027BCA88 */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[30]); /* 027BCA8C */ _t54 = cpu->r[1] + 0x00000120u; /* 027BCA8C */ cpu->r[28] = rbrew_read32(cpu->mem, _t54); /* 027BCA90 */ _t55 = cpu->r[1] + 0x00000124u; /* 027BCA90 */ cpu->r[29] = rbrew_read32(cpu->mem, _t55); /* 027BCA94 */ _t56 = cpu->r[1] + 0x00000134u; /* 027BCA94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56); /* 027BCA98 */ _t57 = cpu->r[1] + 0x00000128u; /* 027BCA98 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57); /* 027BCA9C */ cpu->lr = cpu->r[0]; /* 027BCAA0 */ _t58 = cpu->r[1] + 0x0000012Cu; /* 027BCAA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58); /* 027BCAA4 */ cpu->r[1] = cpu->r[1] + 0x00000130u; /* 027BCAA8 */ cpu->r[3] = 0x00000001u; /* 027BCAAC */ return; } // fn_027BC910 @ 0x27bc910 void Gambit_fn_027BC910(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58; L_027BC910: ; // 0x27bc910 /* 027BC910 */ _t0 = cpu->r[1] + 0xFFFFFED0u; /* 027BC910 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BC910 */ cpu->r[1] = _t0; /* 027BC914 */ _t1 = cpu->r[1] + 0x00000120u; /* 027BC914 */ rbrew_write32(cpu->mem, _t1, cpu->r[28]); /* 027BC918 */ cpu->r[28] = cpu->r[4]; /* 027BC91C */ _t2 = cpu->r[1] + 0x00000128u; /* 027BC91C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BC920 */ _t3 = cpu->r[1] + 0x00000124u; /* 027BC920 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BC924 */ _t4 = cpu->r[1] + 0x0000012Cu; /* 027BC924 */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027BC928 */ _t5 = cpu->r[1] + 0x00000134u; /* 027BC928 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BC92C */ cpu->r[29] = cpu->r[5]; /* 027BC930 */ cpu->r[7] = 0x00000001u; /* 027BC934 */ _t6 = cpu->r[28] + 0x00000004u; /* 027BC934 */ rbrew_write32(cpu->mem, _t6, cpu->r[29]); /* 027BC938 */ _t7 = cpu->r[28] + 0x00000000u; /* 027BC938 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[7]); /* 027BC93C */ _t8 = cpu->r[29] + 0x00000008u; /* 027BC93C */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027BC940 */ _t9 = cpu->r[12] + 0x00000004u; /* 027BC940 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9); /* 027BC944 */ cpu->r[31] = cpu->r[6]; /* 027BC948 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[8]); /* 027BC94C */ cpu->r[3] = 0x00000000u; /* 027BC950 */ _t10 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC950 */ _t11 = _t10 & 0x00000001u; /* 027BC950 */ if (_t11) goto L_027BC954; else goto L_027BC960; L_027BC954: ; // 0x27bc954 /* 027BC954 */ _t12 = cpu->r[12] + 0x00000000u; /* 027BC954 */ cpu->r[3] = rbrew_read32(cpu->mem, _t12); /* 027BC958 */ cpu->r[4] = cpu->r[31]; /* 027BC95C */ Gambit_fn_028016F4(cpu); L_027BC960: ; // 0x27bc960 /* 027BC960 */ _t13 = cpu->r[28] + 0x00000008u; /* 027BC960 */ rbrew_write32(cpu->mem, _t13, cpu->r[3]); /* 027BC964 */ _t14 = cpu->r[29] + 0x00000008u; /* 027BC964 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14); /* 027BC968 */ _t15 = cpu->r[6] + 0x00000004u; /* 027BC968 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027BC96C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027BC970 */ cpu->r[3] = 0x00000000u; /* 027BC974 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BC974 */ _t17 = _t16 & 0x00000001u; /* 027BC974 */ if (_t17) goto L_027BC978; else goto L_027BC984; L_027BC978: ; // 0x27bc978 /* 027BC978 */ _t18 = cpu->r[6] + 0x00000000u; /* 027BC978 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18); /* 027BC97C */ cpu->r[4] = cpu->r[31]; /* 027BC980 */ Gambit_fn_02801980(cpu); L_027BC984: ; // 0x27bc984 /* 027BC984 */ _t19 = cpu->r[28] + 0x0000000Cu; /* 027BC984 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]); /* 027BC988 */ _t20 = cpu->r[29] + 0x00000008u; /* 027BC988 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20); /* 027BC98C */ cpu->r[4] = cpu->r[31]; /* 027BC990 */ Gambit_fn_028280B8(cpu); /* 027BC994 */ _t21 = cpu->r[28] + 0x000000ACu; /* 027BC994 */ rbrew_write32(cpu->mem, _t21, cpu->r[3]); /* 027BC998 */ cpu->r[11] = cpu->r[1] + 0x0000001Cu; /* 027BC99C */ _t22 = cpu->r[28] + 0x000000A8u; /* 027BC99C */ rbrew_write32(cpu->mem, _t22, cpu->r[31]); /* 027BC9A0 */ _t23 = cpu->r[29] + 0x00000004u; /* 027BC9A0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t23); /* 027BC9A4 */ cpu->r[30] = 0x10110000u; /* 027BC9A8 */ _t24 = cpu->r[1] + 0x00000010u; /* 027BC9A8 */ rbrew_write32(cpu->mem, _t24, cpu->r[11]); /* 027BC9AC */ cpu->r[12] = 0x00000100u; /* 027BC9B0 */ _t25 = cpu->r[28] + 0x000000B0u; /* 027BC9B0 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]); /* 027BC9B4 */ _t26 = cpu->r[30] + 0x00007399u; /* 027BC9B4 */ cpu->r[30] = rbrew_read8(cpu->mem, _t26); /* 027BC9B8 */ cpu->r[5] = cpu->r[31]; /* 027BC9BC */ _t27 = cpu->r[1] + 0x00000018u; /* 027BC9BC */ rbrew_write32(cpu->mem, _t27, cpu->r[12]); /* 027BC9C0 */ cpu->r[31] = 0x10110000u; /* 027BC9C4 */ _t28 = cpu->r[29] + 0x00000008u; /* 027BC9C4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t28); /* 027BC9C8 */ cpu->r[0] = 0x10110000u; /* 027BC9CC */ _t29 = cpu->r[1] + 0x0000011Bu; /* 027BC9CC */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[30]); /* 027BC9D0 */ cpu->r[0] = cpu->r[0] + 0xFFFFBADCu; /* 027BC9D4 */ cpu->r[4] = cpu->r[1] + 0x00000010u; /* 027BC9D8 */ _t30 = cpu->r[1] + 0x0000001Cu; /* 027BC9D8 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[30]); /* 027BC9DC */ cpu->r[31] = cpu->r[31] + 0xFFFFBA54u; /* 027BC9E0 */ _t31 = cpu->r[1] + 0x00000014u; /* 027BC9E0 */ rbrew_write32(cpu->mem, _t31, cpu->r[0]); /* 027BC9E4 */ Gambit_fn_028280D4(cpu); /* 027BC9E8 */ _t32 = cpu->r[1] + 0x00000014u; /* 027BC9E8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t32); /* 027BC9EC */ _t33 = cpu->r[10] + 0x00000014u; /* 027BC9EC */ cpu->r[11] = rbrew_read32(cpu->mem, _t33); /* 027BC9F0 */ cpu->ctr = cpu->r[11]; /* 027BC9F4 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BC9F8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BC9FC */ _t34 = cpu->r[1] + 0x00000010u; /* 027BC9FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027BCA00 */ _t35 = cpu->r[28] + 0x0000005Cu; /* 027BCA00 */ cpu->r[29] = rbrew_read32(cpu->mem, _t35); /* 027BCA04 */ _t36 = cpu->r[1] + 0x0000000Cu; /* 027BCA04 */ rbrew_write32(cpu->mem, _t36, cpu->r[31]); /* 027BCA08 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BCA0C */ _t37 = cpu->r[1] + 0x00000008u; /* 027BCA0C */ rbrew_write32(cpu->mem, _t37, cpu->r[0]); /* 027BCA10 */ Gambit_fn_027BDC84(cpu); /* 027BCA14 */ _t38 = cpu->r[1] + 0x00000008u; /* 027BCA14 */ cpu->r[10] = rbrew_read32(cpu->mem, _t38); /* 027BCA18 */ _t39 = cpu->r[10] + 0x00000000u; /* 027BCA18 */ cpu->r[0] = rbrew_read8(cpu->mem, _t39); /* 027BCA1C */ cpu->r[31] = 0x00000000u; /* 027BCA20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027BCA24 */ cpu->r[0] = 0x00080000u; /* 027BCA28 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCA28 */ _t41 = _t40 & 0x00000001u; /* 027BCA28 */ if (_t41) goto L_027BCA50; else goto L_027BCA2C; L_027BCA2C: ; // 0x27bca2c /* 027BCA2C */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027BCA30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027BCA34 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027BCA38 */ _t42 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BCA38 */ _t43 = _t42 & 0x00000001u; /* 027BCA38 */ if (_t43) goto L_027BCA4C; else goto L_027BCA3C; L_027BCA3C: ; // 0x27bca3c /* 027BCA3C */ _t44 = cpu->r[10] + 0x00000000u; /* 027BCA3C */ cpu->r[7] = rbrew_read8(cpu->mem, _t44); /* 027BCA40 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[30]); /* 027BCA44 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCA44 */ _t46 = _t45 & 0x00000001u; /* 027BCA44 */ if (_t46) goto L_027BCA48; else goto L_027BCA2C; L_027BCA48: ; // 0x27bca48 /* 027BCA48 */ goto L_027BCA50; L_027BCA4C: ; // 0x27bca4c /* 027BCA4C */ cpu->r[31] = 0x00000000u; L_027BCA50: ; // 0x27bca50 /* 027BCA50 */ _t47 = cpu->r[28] + 0x00000064u; /* 027BCA50 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47); /* 027BCA54 */ _t48 = cpu->r[1] + 0x0000000Cu; /* 027BCA54 */ cpu->r[8] = rbrew_read32(cpu->mem, _t48); /* 027BCA58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]); /* 027BCA5C */ _t49 = cpu->r[8] + 0x00000014u; /* 027BCA5C */ cpu->r[9] = rbrew_read32(cpu->mem, _t49); /* 027BCA60 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCA60 */ _t51 = _t50 & 0x00000001u; /* 027BCA60 */ if (_t51) goto L_027BCA68; else goto L_027BCA64; L_027BCA64: ; // 0x27bca64 /* 027BCA64 */ cpu->r[31] = cpu->r[12] + 0xFFFFFFFFu; L_027BCA68: ; // 0x27bca68 /* 027BCA68 */ cpu->ctr = cpu->r[9]; /* 027BCA6C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BCA70 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCA74 */ _t52 = cpu->r[1] + 0x00000008u; /* 027BCA74 */ cpu->r[4] = rbrew_read32(cpu->mem, _t52); /* 027BCA78 */ cpu->r[6] = 0x00000000u; /* 027BCA7C */ cpu->r[5] = cpu->r[31]; /* 027BCA80 */ cpu->r[3] = cpu->r[29]; /* 027BCA84 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BCA88 */ _t53 = cpu->r[29] + cpu->r[31]; /* 027BCA88 */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[30]); /* 027BCA8C */ _t54 = cpu->r[1] + 0x00000120u; /* 027BCA8C */ cpu->r[28] = rbrew_read32(cpu->mem, _t54); /* 027BCA90 */ _t55 = cpu->r[1] + 0x00000124u; /* 027BCA90 */ cpu->r[29] = rbrew_read32(cpu->mem, _t55); /* 027BCA94 */ _t56 = cpu->r[1] + 0x00000134u; /* 027BCA94 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56); /* 027BCA98 */ _t57 = cpu->r[1] + 0x00000128u; /* 027BCA98 */ cpu->r[30] = rbrew_read32(cpu->mem, _t57); /* 027BCA9C */ cpu->lr = cpu->r[0]; /* 027BCAA0 */ _t58 = cpu->r[1] + 0x0000012Cu; /* 027BCAA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t58); /* 027BCAA4 */ cpu->r[1] = cpu->r[1] + 0x00000130u; /* 027BCAA8 */ cpu->r[3] = 0x00000001u; /* 027BCAAC */ return; } // fn_027BCAB0 @ 0x27bcab0 void Gambit_fn_027BCAB0(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; L_027BCAB0: ; // 0x27bcab0 /* 027BCAB0 */ _t0 = cpu->r[1] + 0xFFFFFEB0u; /* 027BCAB0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BCAB0 */ cpu->r[1] = _t0; /* 027BCAB4 */ /* nop */ /* 027BCAB8 */ cpu->r[28] = cpu->r[4]; /* 027BCABC */ cpu->r[30] = cpu->r[7]; /* 027BCAC0 */ cpu->r[0] = cpu->lr; /* 027BCAC4 */ _t1 = cpu->r[1] + 0x00000154u; /* 027BCAC4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BCAC8 */ cpu->r[29] = cpu->r[6]; /* 027BCACC */ cpu->r[4] = cpu->r[5]; /* 027BCAD0 */ cpu->r[5] = cpu->r[29]; /* 027BCAD4 */ cpu->r[27] = cpu->r[3]; /* 027BCAD8 */ Gambit_fn_027BC77C(cpu); /* 027BCADC */ cpu->r[24] = cpu->r[3]; /* 027BCADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027BCAE0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCAE0 */ _t3 = _t2 & 0x00000001u; /* 027BCAE0 */ if (_t3) goto L_027BCB74; else goto L_027BCAE4; L_027BCAE4: ; // 0x27bcae4 /* 027BCAE4 */ _t4 = cpu->r[24] + 0x00000008u; /* 027BCAE4 */ cpu->r[23] = rbrew_read32(cpu->mem, _t4); /* 027BCAE8 */ _t5 = cpu->r[23] + 0x00000004u; /* 027BCAE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027BCAEC */ cpu->r[20] = 0x00000000u; /* 027BCAF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[0]); /* 027BCAF4 */ cpu->r[26] = 0x10110000u; /* 027BCAF8 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCAF8 */ _t7 = _t6 & 0x00000001u; /* 027BCAF8 */ if (_t7) goto L_027BCAFC; else goto L_027BCB48; L_027BCAFC: ; // 0x27bcafc /* 027BCAFC */ cpu->r[25] = 0x10110000u; /* 027BCB00 */ _t8 = cpu->r[26] + 0x00007399u; /* 027BCB00 */ cpu->r[21] = rbrew_read8(cpu->mem, _t8); /* 027BCB04 */ cpu->r[31] = cpu->r[1] + 0x0000001Cu; /* 027BCB08 */ cpu->r[25] = cpu->r[25] + 0xFFFFBADCu; /* 027BCB0C */ cpu->r[22] = 0x00000100u; L_027BCB10: ; // 0x27bcb10 /* 027BCB10 */ _t9 = cpu->r[31] + 0x00000000u; /* 027BCB10 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[21]); /* 027BCB14 */ cpu->r[4] = cpu->r[1] + 0x00000010u; /* 027BCB18 */ _t10 = cpu->r[31] + 0x000000FFu; /* 027BCB18 */ rbrew_write8(cpu->mem, _t10, (uint8_t)cpu->r[21]); /* 027BCB1C */ _t11 = cpu->r[1] + 0x00000018u; /* 027BCB1C */ rbrew_write32(cpu->mem, _t11, cpu->r[22]); /* 027BCB20 */ _t12 = cpu->r[1] + 0x00000014u; /* 027BCB20 */ rbrew_write32(cpu->mem, _t12, cpu->r[25]); /* 027BCB24 */ _t13 = cpu->r[1] + 0x00000010u; /* 027BCB24 */ rbrew_write32(cpu->mem, _t13, cpu->r[31]); /* 027BCB28 */ _t14 = cpu->r[24] + 0x00000008u; /* 027BCB28 */ cpu->r[3] = rbrew_read32(cpu->mem, _t14); /* 027BCB2C */ cpu->r[5] = cpu->r[20]; /* 027BCB30 */ Gambit_fn_028280D4(cpu); /* 027BCB34 */ _t15 = cpu->r[24] + 0x00000008u; /* 027BCB34 */ cpu->r[23] = rbrew_read32(cpu->mem, _t15); /* 027BCB38 */ _t16 = cpu->r[23] + 0x00000004u; /* 027BCB38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t16); /* 027BCB3C */ cpu->r[20] = cpu->r[20] + 0x00000001u; /* 027BCB40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], cpu->r[6]); /* 027BCB44 */ _t17 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCB44 */ _t18 = _t17 & 0x00000001u; /* 027BCB44 */ if (_t18) goto L_027BCB10; else goto L_027BCB48; L_027BCB48: ; // 0x27bcb48 /* 027BCB48 */ _t19 = cpu->r[30] + 0x00000004u; /* 027BCB48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19); /* 027BCB4C */ _t20 = cpu->r[7] + 0x00000014u; /* 027BCB4C */ cpu->r[8] = rbrew_read32(cpu->mem, _t20); /* 027BCB50 */ cpu->ctr = cpu->r[8]; /* 027BCB54 */ cpu->r[3] = cpu->r[30]; /* 027BCB58 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCB5C */ _t21 = cpu->r[23] + 0x00000000u; /* 027BCB5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t21); /* 027BCB60 */ _t22 = cpu->r[30] + 0x00000000u; /* 027BCB60 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22); /* 027BCB64 */ Gambit_fn_028015D8(cpu); /* 027BCB68 */ cpu->r[25] = cpu->r[3]; /* 027BCB6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0xFFFFFFFFu); /* 027BCB70 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCB70 */ _t24 = _t23 & 0x00000001u; /* 027BCB70 */ if (_t24) goto L_027BCB74; else goto L_027BCB8C; L_027BCB74: ; // 0x27bcb74 /* 027BCB74 */ /* nop */ /* 027BCB78 */ _t25 = cpu->r[1] + 0x00000154u; /* 027BCB78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BCB7C */ cpu->lr = cpu->r[0]; /* 027BCB80 */ cpu->r[1] = cpu->r[1] + 0x00000150u; /* 027BCB84 */ cpu->r[3] = 0x00000000u; /* 027BCB88 */ return; L_027BCB8C: ; // 0x27bcb8c /* 027BCB8C */ _t26 = cpu->r[29] + 0x00000004u; /* 027BCB8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t26); /* 027BCB90 */ _t27 = cpu->r[12] + 0x00000014u; /* 027BCB90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27); /* 027BCB94 */ cpu->ctr = cpu->r[0]; /* 027BCB98 */ cpu->r[3] = cpu->r[29]; /* 027BCB9C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCBA0 */ _t28 = cpu->r[29] + 0x00000000u; /* 027BCBA0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28); /* 027BCBA4 */ cpu->r[7] = 0x10110000u; /* 027BCBA8 */ _t29 = cpu->r[28] + 0x00000010u; /* 027BCBA8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t29); /* 027BCBAC */ cpu->r[7] = cpu->r[7] + 0xFFFFBA54u; /* 027BCBB0 */ _t30 = cpu->r[1] + 0x0000000Cu; /* 027BCBB0 */ rbrew_write32(cpu->mem, _t30, cpu->r[7]); /* 027BCBB4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BCBB8 */ _t31 = cpu->r[1] + 0x00000008u; /* 027BCBB8 */ rbrew_write32(cpu->mem, _t31, cpu->r[8]); /* 027BCBBC */ Gambit_fn_027BDC84(cpu); /* 027BCBC0 */ _t32 = cpu->r[1] + 0x00000008u; /* 027BCBC0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t32); /* 027BCBC4 */ _t33 = cpu->r[26] + 0x00007399u; /* 027BCBC4 */ cpu->r[31] = rbrew_read8(cpu->mem, _t33); /* 027BCBC8 */ _t34 = cpu->r[9] + 0x00000000u; /* 027BCBC8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t34); /* 027BCBCC */ cpu->r[30] = 0x00000000u; /* 027BCBD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BCBD4 */ cpu->r[0] = 0x00080000u; /* 027BCBD8 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCBD8 */ _t36 = _t35 & 0x00000001u; /* 027BCBD8 */ if (_t36) goto L_027BCC00; else goto L_027BCBDC; L_027BCBDC: ; // 0x27bcbdc /* 027BCBDC */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BCBE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027BCBE4 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027BCBE8 */ _t37 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BCBE8 */ _t38 = _t37 & 0x00000001u; /* 027BCBE8 */ if (_t38) goto L_027BCBFC; else goto L_027BCBEC; L_027BCBEC: ; // 0x27bcbec /* 027BCBEC */ _t39 = cpu->r[9] + 0x00000000u; /* 027BCBEC */ cpu->r[10] = rbrew_read8(cpu->mem, _t39); /* 027BCBF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BCBF4 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCBF4 */ _t41 = _t40 & 0x00000001u; /* 027BCBF4 */ if (_t41) goto L_027BCBF8; else goto L_027BCBDC; L_027BCBF8: ; // 0x27bcbf8 /* 027BCBF8 */ goto L_027BCC00; L_027BCBFC: ; // 0x27bcbfc /* 027BCBFC */ cpu->r[30] = 0x00000000u; L_027BCC00: ; // 0x27bcc00 /* 027BCC00 */ _t42 = cpu->r[28] + 0x00000018u; /* 027BCC00 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42); /* 027BCC04 */ _t43 = cpu->r[1] + 0x0000000Cu; /* 027BCC04 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43); /* 027BCC08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]); /* 027BCC0C */ _t44 = cpu->r[12] + 0x00000014u; /* 027BCC0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44); /* 027BCC10 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCC10 */ _t46 = _t45 & 0x00000001u; /* 027BCC10 */ if (_t46) goto L_027BCC18; else goto L_027BCC14; L_027BCC14: ; // 0x27bcc14 /* 027BCC14 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu; L_027BCC18: ; // 0x27bcc18 /* 027BCC18 */ cpu->ctr = cpu->r[0]; /* 027BCC1C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BCC20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCC24 */ _t47 = cpu->r[1] + 0x00000008u; /* 027BCC24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t47); /* 027BCC28 */ cpu->r[6] = 0x00000000u; /* 027BCC2C */ cpu->r[5] = cpu->r[30]; /* 027BCC30 */ cpu->r[3] = cpu->r[29]; /* 027BCC34 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BCC38 */ cpu->r[6] = cpu->r[25]; /* 027BCC3C */ cpu->r[3] = cpu->r[27]; /* 027BCC40 */ cpu->r[4] = cpu->r[28]; /* 027BCC44 */ cpu->r[5] = cpu->r[24]; /* 027BCC48 */ _t48 = cpu->r[29] + cpu->r[30]; /* 027BCC48 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[31]); /* 027BCC4C */ Gambit_fn_027BC90C(cpu); /* 027BCC50 */ /* nop */ /* 027BCC54 */ _t49 = cpu->r[1] + 0x00000154u; /* 027BCC54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t49); /* 027BCC58 */ cpu->lr = cpu->r[0]; /* 027BCC5C */ cpu->r[1] = cpu->r[1] + 0x00000150u; /* 027BCC60 */ return; } // fn_027BCC64 @ 0x27bcc64 void Gambit_fn_027BCC64(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; L_027BCC64: ; // 0x27bcc64 /* 027BCC64 */ cpu->r[0] = cpu->lr; /* 027BCC68 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BCC68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BCC68 */ cpu->r[1] = _t0; /* 027BCC6C */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BCC6C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027BCC70 */ _t2 = cpu->r[1] + 0x00000010u; /* 027BCC70 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BCC74 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BCC74 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BCC78 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027BCC78 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BCC7C */ cpu->r[29] = cpu->r[3]; /* 027BCC80 */ cpu->r[30] = cpu->r[4]; /* 027BCC84 */ _t5 = cpu->r[29] + 0x00000154u; /* 027BCC84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5); /* 027BCC88 */ cpu->r[4] = cpu->r[5]; /* 027BCC8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]); /* 027BCC90 */ _t6 = cpu->r[29] + 0x00000158u; /* 027BCC90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6); /* 027BCC94 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCC94 */ _t8 = _t7 & 0x00000001u; /* 027BCC94 */ if (_t8) goto L_027BCC98; else goto L_027BCCA0; L_027BCC98: ; // 0x27bcc98 /* 027BCC98 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCC9C */ cpu->r[8] = cpu->r[8] + cpu->r[0]; L_027BCCA0: ; // 0x27bcca0 /* 027BCCA0 */ cpu->r[3] = cpu->r[8] + 0x00000004u; /* 027BCCA4 */ Gambit_fn_027EA6C0(cpu); /* 027BCCA8 */ _t9 = cpu->r[29] + 0x00000154u; /* 027BCCA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9); /* 027BCCAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]); /* 027BCCB0 */ _t10 = cpu->r[29] + 0x00000158u; /* 027BCCB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027BCCB4 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCCB4 */ _t12 = _t11 & 0x00000001u; /* 027BCCB4 */ if (_t12) goto L_027BCCB8; else goto L_027BCCC0; L_027BCCB8: ; // 0x27bccb8 /* 027BCCB8 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCCBC */ cpu->r[9] = cpu->r[9] + cpu->r[11]; L_027BCCC0: ; // 0x27bccc0 /* 027BCCC0 */ cpu->r[12] = 0x00000000u; /* 027BCCC4 */ _t13 = cpu->r[9] + 0x00000000u; /* 027BCCC4 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]); /* 027BCCC8 */ _t14 = cpu->r[29] + 0x00000154u; /* 027BCCC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BCCCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027BCCD0 */ _t15 = cpu->r[29] + 0x00000158u; /* 027BCCD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027BCCD4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCCD4 */ _t17 = _t16 & 0x00000001u; /* 027BCCD4 */ if (_t17) goto L_027BCCD8; else goto L_027BCCE0; L_027BCCD8: ; // 0x27bccd8 /* 027BCCD8 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCCDC */ cpu->r[10] = cpu->r[10] + cpu->r[7]; L_027BCCE0: ; // 0x27bcce0 /* 027BCCE0 */ cpu->r[3] = cpu->r[10] + 0x00000004u; /* 027BCCE4 */ Gambit_fn_027E2BBC(cpu); /* 027BCCE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BCCEC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCCEC */ _t19 = _t18 & 0x00000001u; /* 027BCCEC */ if (_t19) goto L_027BCDE8; else goto L_027BCCF0; L_027BCCF0: ; // 0x27bccf0 /* 027BCCF0 */ cpu->r[3] = 0x101D0000u; /* 027BCCF4 */ _t20 = cpu->r[3] + 0xFFFF93D0u; /* 027BCCF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20); /* 027BCCF8 */ _t21 = cpu->r[3] + 0x00000000u; /* 027BCCF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21); /* 027BCCFC */ _t22 = cpu->r[8] + 0x00000024u; /* 027BCCFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t22); /* 027BCD00 */ cpu->ctr = cpu->r[9]; /* 027BCD04 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCD08 */ _t23 = cpu->r[29] + 0x00000154u; /* 027BCD08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23); /* 027BCD0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[3]); /* 027BCD10 */ _t24 = cpu->r[29] + 0x00000158u; /* 027BCD10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24); /* 027BCD14 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCD14 */ _t26 = _t25 & 0x00000001u; /* 027BCD14 */ if (_t26) goto L_027BCD18; else goto L_027BCD58; L_027BCD18: ; // 0x27bcd18 /* 027BCD18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027BCD1C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCD1C */ _t28 = _t27 & 0x00000001u; /* 027BCD1C */ if (_t28) goto L_027BCD20; else goto L_027BCD28; L_027BCD20: ; // 0x27bcd20 /* 027BCD20 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCD24 */ cpu->r[12] = cpu->r[12] + cpu->r[10]; L_027BCD28: ; // 0x27bcd28 /* 027BCD28 */ cpu->r[5] = 0x00000001u; /* 027BCD2C */ cpu->r[4] = 0x00000100u; /* 027BCD30 */ cpu->r[3] = cpu->r[12] + 0x00000004u; /* 027BCD34 */ Gambit_fn_027E273C(cpu); /* 027BCD38 */ cpu->r[12] = 0x101D0000u; /* 027BCD3C */ _t29 = cpu->r[12] + 0xFFFFDDB4u; /* 027BCD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027BCD3C */ cpu->r[12] = _t29; /* 027BCD40 */ cpu->r[4] = 0x101D0000u; /* 027BCD44 */ cpu->r[31] = cpu->r[3]; /* 027BCD48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BCD4C */ cpu->r[4] = cpu->r[4] + 0xFFFFDDCCu; /* 027BCD50 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCD50 */ _t31 = _t30 & 0x00000001u; /* 027BCD50 */ if (_t31) goto L_027BCD54; else goto L_027BCDA4; L_027BCD54: ; // 0x27bcd54 /* 027BCD54 */ goto L_027BCD90; L_027BCD58: ; // 0x27bcd58 /* 027BCD58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027BCD5C */ _t32 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCD5C */ _t33 = _t32 & 0x00000001u; /* 027BCD5C */ if (_t33) goto L_027BCD60; else goto L_027BCD68; L_027BCD60: ; // 0x27bcd60 /* 027BCD60 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCD64 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027BCD68: ; // 0x27bcd68 /* 027BCD68 */ cpu->r[3] = cpu->r[12] + 0x00000004u; /* 027BCD6C */ cpu->r[4] = 0x00000100u; /* 027BCD70 */ Gambit_fn_027E2BB4(cpu); /* 027BCD74 */ cpu->r[12] = 0x101D0000u; /* 027BCD78 */ _t34 = cpu->r[12] + 0xFFFFDDB4u; /* 027BCD78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027BCD78 */ cpu->r[12] = _t34; /* 027BCD7C */ cpu->r[4] = 0x101D0000u; /* 027BCD80 */ cpu->r[31] = cpu->r[3]; /* 027BCD84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BCD88 */ cpu->r[4] = cpu->r[4] + 0xFFFFDDCCu; /* 027BCD8C */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCD8C */ _t36 = _t35 & 0x00000001u; /* 027BCD8C */ if (_t36) goto L_027BCD90; else goto L_027BCDA4; L_027BCD90: ; // 0x27bcd90 /* 027BCD90 */ cpu->r[11] = 0x10110000u; /* 027BCD94 */ cpu->r[9] = 0x00000001u; /* 027BCD98 */ cpu->r[11] = cpu->r[11] + 0xFFFFBB24u; /* 027BCD9C */ _t37 = cpu->r[12] + 0x00000000u; /* 027BCD9C */ rbrew_write32(cpu->mem, _t37, cpu->r[9]); /* 027BCDA0 */ _t38 = cpu->r[4] + 0x00000000u; /* 027BCDA0 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]); L_027BCDA4: ; // 0x27bcda4 /* 027BCDA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BCDA8 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCDA8 */ _t40 = _t39 & 0x00000001u; /* 027BCDA8 */ if (_t40) goto L_027BCDC8; else goto L_027BCDAC; L_027BCDAC: ; // 0x27bcdac /* 027BCDAC */ _t41 = cpu->r[31] + 0x00000000u; /* 027BCDAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t41); /* 027BCDB0 */ _t42 = cpu->r[12] + 0x0000000Cu; /* 027BCDB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t42); /* 027BCDB4 */ cpu->ctr = cpu->r[7]; /* 027BCDB8 */ cpu->r[3] = cpu->r[31]; /* 027BCDBC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCDC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BCDC4 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCDC4 */ _t44 = _t43 & 0x00000001u; /* 027BCDC4 */ if (_t44) goto L_027BCDC8; else goto L_027BCDCC; L_027BCDC8: ; // 0x27bcdc8 /* 027BCDC8 */ cpu->r[31] = 0x00000000u; L_027BCDCC: ; // 0x27bcdcc /* 027BCDCC */ _t45 = cpu->r[29] + 0x00000154u; /* 027BCDCC */ cpu->r[8] = rbrew_read32(cpu->mem, _t45); /* 027BCDD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[8]); /* 027BCDD4 */ _t46 = cpu->r[29] + 0x00000158u; /* 027BCDD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t46); /* 027BCDD8 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCDD8 */ _t48 = _t47 & 0x00000001u; /* 027BCDD8 */ if (_t48) goto L_027BCDDC; else goto L_027BCDE4; L_027BCDDC: ; // 0x27bcddc /* 027BCDDC */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCDE0 */ cpu->r[11] = cpu->r[11] + cpu->r[9]; L_027BCDE4: ; // 0x27bcde4 /* 027BCDE4 */ _t49 = cpu->r[11] + 0x00000000u; /* 027BCDE4 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]); L_027BCDE8: ; // 0x27bcde8 /* 027BCDE8 */ _t50 = cpu->r[1] + 0x0000000Cu; /* 027BCDE8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t50); /* 027BCDEC */ _t51 = cpu->r[1] + 0x0000001Cu; /* 027BCDEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t51); /* 027BCDF0 */ _t52 = cpu->r[1] + 0x00000010u; /* 027BCDF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52); /* 027BCDF4 */ cpu->lr = cpu->r[0]; /* 027BCDF8 */ _t53 = cpu->r[1] + 0x00000014u; /* 027BCDF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t53); /* 027BCDFC */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BCE00 */ return; } // fn_027BCC68 @ 0x27bcc68 void Gambit_fn_027BCC68(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; L_027BCC68: ; // 0x27bcc68 /* 027BCC68 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BCC68 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BCC68 */ cpu->r[1] = _t0; /* 027BCC6C */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BCC6C */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027BCC70 */ _t2 = cpu->r[1] + 0x00000010u; /* 027BCC70 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BCC74 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BCC74 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BCC78 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027BCC78 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BCC7C */ cpu->r[29] = cpu->r[3]; /* 027BCC80 */ cpu->r[30] = cpu->r[4]; /* 027BCC84 */ _t5 = cpu->r[29] + 0x00000154u; /* 027BCC84 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5); /* 027BCC88 */ cpu->r[4] = cpu->r[5]; /* 027BCC8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]); /* 027BCC90 */ _t6 = cpu->r[29] + 0x00000158u; /* 027BCC90 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6); /* 027BCC94 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCC94 */ _t8 = _t7 & 0x00000001u; /* 027BCC94 */ if (_t8) goto L_027BCC98; else goto L_027BCCA0; L_027BCC98: ; // 0x27bcc98 /* 027BCC98 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCC9C */ cpu->r[8] = cpu->r[8] + cpu->r[0]; L_027BCCA0: ; // 0x27bcca0 /* 027BCCA0 */ cpu->r[3] = cpu->r[8] + 0x00000004u; /* 027BCCA4 */ Gambit_fn_027EA6C0(cpu); /* 027BCCA8 */ _t9 = cpu->r[29] + 0x00000154u; /* 027BCCA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9); /* 027BCCAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[10]); /* 027BCCB0 */ _t10 = cpu->r[29] + 0x00000158u; /* 027BCCB0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027BCCB4 */ _t11 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCCB4 */ _t12 = _t11 & 0x00000001u; /* 027BCCB4 */ if (_t12) goto L_027BCCB8; else goto L_027BCCC0; L_027BCCB8: ; // 0x27bccb8 /* 027BCCB8 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCCBC */ cpu->r[9] = cpu->r[9] + cpu->r[11]; L_027BCCC0: ; // 0x27bccc0 /* 027BCCC0 */ cpu->r[12] = 0x00000000u; /* 027BCCC4 */ _t13 = cpu->r[9] + 0x00000000u; /* 027BCCC4 */ rbrew_write32(cpu->mem, _t13, cpu->r[12]); /* 027BCCC8 */ _t14 = cpu->r[29] + 0x00000154u; /* 027BCCC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BCCCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027BCCD0 */ _t15 = cpu->r[29] + 0x00000158u; /* 027BCCD0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027BCCD4 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCCD4 */ _t17 = _t16 & 0x00000001u; /* 027BCCD4 */ if (_t17) goto L_027BCCD8; else goto L_027BCCE0; L_027BCCD8: ; // 0x27bccd8 /* 027BCCD8 */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCCDC */ cpu->r[10] = cpu->r[10] + cpu->r[7]; L_027BCCE0: ; // 0x27bcce0 /* 027BCCE0 */ cpu->r[3] = cpu->r[10] + 0x00000004u; /* 027BCCE4 */ Gambit_fn_027E2BBC(cpu); /* 027BCCE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BCCEC */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCCEC */ _t19 = _t18 & 0x00000001u; /* 027BCCEC */ if (_t19) goto L_027BCDE8; else goto L_027BCCF0; L_027BCCF0: ; // 0x27bccf0 /* 027BCCF0 */ cpu->r[3] = 0x101D0000u; /* 027BCCF4 */ _t20 = cpu->r[3] + 0xFFFF93D0u; /* 027BCCF4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t20); /* 027BCCF8 */ _t21 = cpu->r[3] + 0x00000000u; /* 027BCCF8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21); /* 027BCCFC */ _t22 = cpu->r[8] + 0x00000024u; /* 027BCCFC */ cpu->r[9] = rbrew_read32(cpu->mem, _t22); /* 027BCD00 */ cpu->ctr = cpu->r[9]; /* 027BCD04 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCD08 */ _t23 = cpu->r[29] + 0x00000154u; /* 027BCD08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t23); /* 027BCD0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[3]); /* 027BCD10 */ _t24 = cpu->r[29] + 0x00000158u; /* 027BCD10 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24); /* 027BCD14 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCD14 */ _t26 = _t25 & 0x00000001u; /* 027BCD14 */ if (_t26) goto L_027BCD18; else goto L_027BCD58; L_027BCD18: ; // 0x27bcd18 /* 027BCD18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027BCD1C */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCD1C */ _t28 = _t27 & 0x00000001u; /* 027BCD1C */ if (_t28) goto L_027BCD20; else goto L_027BCD28; L_027BCD20: ; // 0x27bcd20 /* 027BCD20 */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCD24 */ cpu->r[12] = cpu->r[12] + cpu->r[10]; L_027BCD28: ; // 0x27bcd28 /* 027BCD28 */ cpu->r[5] = 0x00000001u; /* 027BCD2C */ cpu->r[4] = 0x00000100u; /* 027BCD30 */ cpu->r[3] = cpu->r[12] + 0x00000004u; /* 027BCD34 */ Gambit_fn_027E273C(cpu); /* 027BCD38 */ cpu->r[12] = 0x101D0000u; /* 027BCD3C */ _t29 = cpu->r[12] + 0xFFFFDDB4u; /* 027BCD3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027BCD3C */ cpu->r[12] = _t29; /* 027BCD40 */ cpu->r[4] = 0x101D0000u; /* 027BCD44 */ cpu->r[31] = cpu->r[3]; /* 027BCD48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BCD4C */ cpu->r[4] = cpu->r[4] + 0xFFFFDDCCu; /* 027BCD50 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCD50 */ _t31 = _t30 & 0x00000001u; /* 027BCD50 */ if (_t31) goto L_027BCD54; else goto L_027BCDA4; L_027BCD54: ; // 0x27bcd54 /* 027BCD54 */ goto L_027BCD90; L_027BCD58: ; // 0x27bcd58 /* 027BCD58 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027BCD5C */ _t32 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCD5C */ _t33 = _t32 & 0x00000001u; /* 027BCD5C */ if (_t33) goto L_027BCD60; else goto L_027BCD68; L_027BCD60: ; // 0x27bcd60 /* 027BCD60 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCD64 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027BCD68: ; // 0x27bcd68 /* 027BCD68 */ cpu->r[3] = cpu->r[12] + 0x00000004u; /* 027BCD6C */ cpu->r[4] = 0x00000100u; /* 027BCD70 */ Gambit_fn_027E2BB4(cpu); /* 027BCD74 */ cpu->r[12] = 0x101D0000u; /* 027BCD78 */ _t34 = cpu->r[12] + 0xFFFFDDB4u; /* 027BCD78 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027BCD78 */ cpu->r[12] = _t34; /* 027BCD7C */ cpu->r[4] = 0x101D0000u; /* 027BCD80 */ cpu->r[31] = cpu->r[3]; /* 027BCD84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BCD88 */ cpu->r[4] = cpu->r[4] + 0xFFFFDDCCu; /* 027BCD8C */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCD8C */ _t36 = _t35 & 0x00000001u; /* 027BCD8C */ if (_t36) goto L_027BCD90; else goto L_027BCDA4; L_027BCD90: ; // 0x27bcd90 /* 027BCD90 */ cpu->r[11] = 0x10110000u; /* 027BCD94 */ cpu->r[9] = 0x00000001u; /* 027BCD98 */ cpu->r[11] = cpu->r[11] + 0xFFFFBB24u; /* 027BCD9C */ _t37 = cpu->r[12] + 0x00000000u; /* 027BCD9C */ rbrew_write32(cpu->mem, _t37, cpu->r[9]); /* 027BCDA0 */ _t38 = cpu->r[4] + 0x00000000u; /* 027BCDA0 */ rbrew_write32(cpu->mem, _t38, cpu->r[11]); L_027BCDA4: ; // 0x27bcda4 /* 027BCDA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BCDA8 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCDA8 */ _t40 = _t39 & 0x00000001u; /* 027BCDA8 */ if (_t40) goto L_027BCDC8; else goto L_027BCDAC; L_027BCDAC: ; // 0x27bcdac /* 027BCDAC */ _t41 = cpu->r[31] + 0x00000000u; /* 027BCDAC */ cpu->r[12] = rbrew_read32(cpu->mem, _t41); /* 027BCDB0 */ _t42 = cpu->r[12] + 0x0000000Cu; /* 027BCDB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t42); /* 027BCDB4 */ cpu->ctr = cpu->r[7]; /* 027BCDB8 */ cpu->r[3] = cpu->r[31]; /* 027BCDBC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCDC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BCDC4 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCDC4 */ _t44 = _t43 & 0x00000001u; /* 027BCDC4 */ if (_t44) goto L_027BCDC8; else goto L_027BCDCC; L_027BCDC8: ; // 0x27bcdc8 /* 027BCDC8 */ cpu->r[31] = 0x00000000u; L_027BCDCC: ; // 0x27bcdcc /* 027BCDCC */ _t45 = cpu->r[29] + 0x00000154u; /* 027BCDCC */ cpu->r[8] = rbrew_read32(cpu->mem, _t45); /* 027BCDD0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[8]); /* 027BCDD4 */ _t46 = cpu->r[29] + 0x00000158u; /* 027BCDD4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t46); /* 027BCDD8 */ _t47 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCDD8 */ _t48 = _t47 & 0x00000001u; /* 027BCDD8 */ if (_t48) goto L_027BCDDC; else goto L_027BCDE4; L_027BCDDC: ; // 0x27bcddc /* 027BCDDC */ cpu->r[9] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000011Cu); /* 027BCDE0 */ cpu->r[11] = cpu->r[11] + cpu->r[9]; L_027BCDE4: ; // 0x27bcde4 /* 027BCDE4 */ _t49 = cpu->r[11] + 0x00000000u; /* 027BCDE4 */ rbrew_write32(cpu->mem, _t49, cpu->r[31]); L_027BCDE8: ; // 0x27bcde8 /* 027BCDE8 */ _t50 = cpu->r[1] + 0x0000000Cu; /* 027BCDE8 */ cpu->r[29] = rbrew_read32(cpu->mem, _t50); /* 027BCDEC */ _t51 = cpu->r[1] + 0x0000001Cu; /* 027BCDEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t51); /* 027BCDF0 */ _t52 = cpu->r[1] + 0x00000010u; /* 027BCDF0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t52); /* 027BCDF4 */ cpu->lr = cpu->r[0]; /* 027BCDF8 */ _t53 = cpu->r[1] + 0x00000014u; /* 027BCDF8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t53); /* 027BCDFC */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BCE00 */ return; } // fn_027BCE04 @ 0x27bce04 void Gambit_fn_027BCE04(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; L_027BCE04: ; // 0x27bce04 /* 027BCE04 */ _t0 = cpu->r[1] + 0xFFFFFE10u; /* 027BCE04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BCE04 */ cpu->r[1] = _t0; /* 027BCE08 */ /* nop */ /* 027BCE0C */ cpu->r[0] = cpu->lr; /* 027BCE10 */ _t1 = cpu->r[1] + 0x000001F4u; /* 027BCE10 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BCE14 */ cpu->r[29] = cpu->r[4]; /* 027BCE18 */ cpu->r[28] = cpu->r[3]; /* 027BCE1C */ _t2 = cpu->r[28] + 0x00000154u; /* 027BCE1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027BCE20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]); /* 027BCE24 */ _t3 = cpu->r[28] + 0x00000158u; /* 027BCE24 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3); /* 027BCE28 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCE28 */ _t5 = _t4 & 0x00000001u; /* 027BCE28 */ if (_t5) goto L_027BCE2C; else goto L_027BCE44; L_027BCE2C: ; // 0x27bce2c /* 027BCE2C */ cpu->r[7] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000011Cu); /* 027BCE30 */ _t6 = cpu->r[9] + cpu->r[7]; /* 027BCE30 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6); /* 027BCE34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BCE38 */ cpu->r[27] = 0x00000000u; /* 027BCE3C */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCE3C */ _t8 = _t7 & 0x00000001u; /* 027BCE3C */ if (_t8) goto L_027BCE40; else goto L_027BCE8C; L_027BCE40: ; // 0x27bce40 /* 027BCE40 */ goto L_027BCE54; L_027BCE44: ; // 0x27bce44 /* 027BCE44 */ _t9 = cpu->r[9] + 0x00000000u; /* 027BCE44 */ cpu->r[8] = rbrew_read32(cpu->mem, _t9); /* 027BCE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BCE4C */ cpu->r[27] = 0x00000000u; /* 027BCE50 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCE50 */ _t11 = _t10 & 0x00000001u; /* 027BCE50 */ if (_t11) goto L_027BCE54; else goto L_027BCE8C; L_027BCE54: ; // 0x27bce54 /* 027BCE54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]); /* 027BCE58 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCE58 */ _t13 = _t12 & 0x00000001u; /* 027BCE58 */ if (_t13) goto L_027BCE5C; else goto L_027BCE64; L_027BCE5C: ; // 0x27bce5c /* 027BCE5C */ cpu->r[10] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000011Cu); /* 027BCE60 */ cpu->r[9] = cpu->r[9] + cpu->r[10]; L_027BCE64: ; // 0x27bce64 /* 027BCE64 */ cpu->r[6] = 0x00000004u; /* 027BCE68 */ cpu->r[5] = 0x00000000u; /* 027BCE6C */ cpu->r[4] = 0x00000001u; /* 027BCE70 */ cpu->r[3] = cpu->r[9] + 0x00000110u; /* 027BCE74 */ Gambit_fn_028023CC(cpu); /* 027BCE78 */ /* nop */ /* 027BCE7C */ _t14 = cpu->r[1] + 0x000001F4u; /* 027BCE7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BCE80 */ cpu->lr = cpu->r[0]; /* 027BCE84 */ cpu->r[1] = cpu->r[1] + 0x000001F0u; /* 027BCE88 */ return; L_027BCE8C: ; // 0x27bce8c /* 027BCE8C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]); /* 027BCE90 */ _t15 = cpu->r[28] + 0x00000154u; /* 027BCE90 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027BCE94 */ _t16 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCE94 */ _t17 = _t16 & 0x00000001u; /* 027BCE94 */ if (_t17) goto L_027BCE98; else goto L_027BCEA0; L_027BCE98: ; // 0x27bce98 /* 027BCE98 */ cpu->r[12] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000011Cu); /* 027BCE9C */ cpu->r[9] = cpu->r[9] + cpu->r[12]; L_027BCEA0: ; // 0x27bcea0 /* 027BCEA0 */ _t18 = cpu->r[28] + 0x00000158u; /* 027BCEA0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18); /* 027BCEA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[0]); /* 027BCEA8 */ _t19 = cpu->r[28] + 0x0000016Cu; /* 027BCEA8 */ rbrew_write32(cpu->mem, _t19, cpu->r[29]); /* 027BCEAC */ _t20 = cpu->r[28] + 0x00000168u; /* 027BCEAC */ rbrew_write32(cpu->mem, _t20, cpu->r[9]); /* 027BCEB0 */ _t21 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCEB0 */ _t22 = _t21 & 0x00000001u; /* 027BCEB0 */ if (_t22) goto L_027BCEB4; else goto L_027BCEBC; L_027BCEB4: ; // 0x27bceb4 /* 027BCEB4 */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000011Cu); /* 027BCEB8 */ cpu->r[11] = cpu->r[11] + cpu->r[5]; L_027BCEBC: ; // 0x27bcebc /* 027BCEBC */ _t23 = cpu->r[11] + 0x00000000u; /* 027BCEBC */ cpu->r[26] = rbrew_read32(cpu->mem, _t23); /* 027BCEC0 */ cpu->r[3] = cpu->r[26]; /* 027BCEC4 */ Gambit_fn_027E2E18(cpu); /* 027BCEC8 */ _t24 = cpu->r[28] + 0x00000154u; /* 027BCEC8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24); /* 027BCECC */ cpu->r[4] = cpu->r[3]; /* 027BCED0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[6]); /* 027BCED4 */ _t25 = cpu->r[28] + 0x00000158u; /* 027BCED4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 027BCED8 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCED8 */ _t27 = _t26 & 0x00000001u; /* 027BCED8 */ if (_t27) goto L_027BCEDC; else goto L_027BCEE4; L_027BCEDC: ; // 0x27bcedc /* 027BCEDC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000011Cu); /* 027BCEE0 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027BCEE4: ; // 0x27bcee4 /* 027BCEE4 */ cpu->r[6] = 0x00000004u; /* 027BCEE8 */ cpu->r[5] = 0x00000000u; /* 027BCEEC */ cpu->r[3] = cpu->r[12] + 0x00000110u; /* 027BCEF0 */ Gambit_fn_028023CC(cpu); /* 027BCEF4 */ _t28 = cpu->r[1] + 0x00000058u; /* 027BCEF4 */ rbrew_write32(cpu->mem, _t28, cpu->r[27]); /* 027BCEF8 */ cpu->r[0] = cpu->r[1] + 0x00000058u; /* 027BCEFC */ _t29 = cpu->r[1] + 0x0000005Cu; /* 027BCEFC */ rbrew_write32(cpu->mem, _t29, cpu->r[27]); /* 027BCF00 */ cpu->r[8] = 0x10110000u; /* 027BCF04 */ _t30 = cpu->r[1] + 0x00000060u; /* 027BCF04 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]); /* 027BCF08 */ cpu->r[8] = cpu->r[8] + 0xFFFFBA40u; /* 027BCF0C */ cpu->r[25] = 0x10110000u; /* 027BCF10 */ _t31 = cpu->r[1] + 0x00000064u; /* 027BCF10 */ rbrew_write32(cpu->mem, _t31, cpu->r[27]); /* 027BCF14 */ cpu->r[25] = cpu->r[25] + 0xFFFFBA54u; /* 027BCF18 */ _t32 = cpu->r[1] + 0x0000001Cu; /* 027BCF18 */ rbrew_write32(cpu->mem, _t32, cpu->r[8]); /* 027BCF1C */ cpu->r[3] = cpu->r[1] + 0x00000068u; /* 027BCF20 */ _t33 = cpu->r[1] + 0x00000020u; /* 027BCF20 */ rbrew_write32(cpu->mem, _t33, cpu->r[25]); /* 027BCF24 */ Gambit_fn_02821D00(cpu); /* 027BCF28 */ cpu->r[11] = 0x10110000u; /* 027BCF2C */ cpu->r[0] = 0x10110000u; /* 027BCF30 */ cpu->r[31] = 0x10110000u; /* 027BCF34 */ _t34 = cpu->r[1] + 0x00000020u; /* 027BCF34 */ cpu->r[6] = rbrew_read32(cpu->mem, _t34); /* 027BCF38 */ cpu->r[0] = cpu->r[0] + 0x00003048u; /* 027BCF3C */ _t35 = cpu->r[31] + 0x00007399u; /* 027BCF3C */ cpu->r[31] = rbrew_read8(cpu->mem, _t35); /* 027BCF40 */ _t36 = cpu->r[1] + 0x00000074u; /* 027BCF40 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]); /* 027BCF44 */ cpu->r[0] = 0x00000020u; /* 027BCF48 */ _t37 = cpu->r[1] + 0x000000A3u; /* 027BCF48 */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[31]); /* 027BCF4C */ cpu->r[24] = cpu->r[1] + 0x00000084u; /* 027BCF50 */ _t38 = cpu->r[1] + 0x00000080u; /* 027BCF50 */ rbrew_write32(cpu->mem, _t38, cpu->r[0]); /* 027BCF54 */ cpu->r[0] = 0x00000001u; /* 027BCF58 */ _t39 = cpu->r[1] + 0x00000084u; /* 027BCF58 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[31]); /* 027BCF5C */ cpu->r[7] = 0x10110000u; /* 027BCF60 */ _t40 = cpu->r[1] + 0x000000A4u; /* 027BCF60 */ rbrew_write8(cpu->mem, _t40, (uint8_t)cpu->r[0]); /* 027BCF64 */ cpu->r[7] = cpu->r[7] + 0xFFFFBA9Cu; /* 027BCF68 */ _t41 = cpu->r[1] + 0x00000078u; /* 027BCF68 */ rbrew_write32(cpu->mem, _t41, cpu->r[24]); /* 027BCF6C */ cpu->r[11] = cpu->r[11] + 0x00002F60u; /* 027BCF70 */ _t42 = cpu->r[1] + 0x0000007Cu; /* 027BCF70 */ rbrew_write32(cpu->mem, _t42, cpu->r[7]); /* 027BCF74 */ _t43 = cpu->r[1] + 0x000000A8u; /* 027BCF74 */ rbrew_write32(cpu->mem, _t43, cpu->r[11]); /* 027BCF78 */ _t44 = cpu->r[6] + 0x00000014u; /* 027BCF78 */ cpu->r[8] = rbrew_read32(cpu->mem, _t44); /* 027BCF7C */ cpu->ctr = cpu->r[8]; /* 027BCF80 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu; /* 027BCF84 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCF88 */ _t45 = cpu->r[1] + 0x0000001Cu; /* 027BCF88 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45); /* 027BCF8C */ _t46 = cpu->r[11] + 0x00000000u; /* 027BCF8C */ cpu->r[9] = rbrew_read8(cpu->mem, _t46); /* 027BCF90 */ cpu->r[30] = 0x00000000u; /* 027BCF94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BCF98 */ cpu->r[0] = 0x00080000u; /* 027BCF9C */ _t47 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCF9C */ _t48 = _t47 & 0x00000001u; /* 027BCF9C */ if (_t48) goto L_027BCFC4; else goto L_027BCFA0; L_027BCFA0: ; // 0x27bcfa0 /* 027BCFA0 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BCFA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027BCFA8 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027BCFAC */ _t49 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BCFAC */ _t50 = _t49 & 0x00000001u; /* 027BCFAC */ if (_t50) goto L_027BCFC0; else goto L_027BCFB0; L_027BCFB0: ; // 0x27bcfb0 /* 027BCFB0 */ _t51 = cpu->r[11] + 0x00000000u; /* 027BCFB0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t51); /* 027BCFB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BCFB8 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BCFB8 */ _t53 = _t52 & 0x00000001u; /* 027BCFB8 */ if (_t53) goto L_027BCFBC; else goto L_027BCFA0; L_027BCFBC: ; // 0x27bcfbc /* 027BCFBC */ goto L_027BCFC4; L_027BCFC0: ; // 0x27bcfc0 /* 027BCFC0 */ cpu->r[30] = 0x00000000u; L_027BCFC4: ; // 0x27bcfc4 /* 027BCFC4 */ _t54 = cpu->r[1] + 0x00000080u; /* 027BCFC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t54); /* 027BCFC8 */ _t55 = cpu->r[1] + 0x00000020u; /* 027BCFC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t55); /* 027BCFCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]); /* 027BCFD0 */ _t56 = cpu->r[12] + 0x00000014u; /* 027BCFD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56); /* 027BCFD4 */ _t57 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BCFD4 */ _t58 = _t57 & 0x00000001u; /* 027BCFD4 */ if (_t58) goto L_027BCFDC; else goto L_027BCFD8; L_027BCFD8: ; // 0x27bcfd8 /* 027BCFD8 */ cpu->r[30] = cpu->r[7] + 0xFFFFFFFFu; L_027BCFDC: ; // 0x27bcfdc /* 027BCFDC */ cpu->ctr = cpu->r[0]; /* 027BCFE0 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu; /* 027BCFE4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BCFE8 */ _t59 = cpu->r[1] + 0x0000001Cu; /* 027BCFE8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t59); /* 027BCFEC */ cpu->r[6] = 0x00000000u; /* 027BCFF0 */ cpu->r[5] = cpu->r[30]; /* 027BCFF4 */ cpu->r[3] = cpu->r[24]; /* 027BCFF8 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BCFFC */ _t60 = cpu->r[24] + cpu->r[30]; /* 027BCFFC */ rbrew_write8(cpu->mem, _t60, (uint8_t)cpu->r[31]); /* 027BD000 */ cpu->r[8] = 0x10110000u; /* 027BD004 */ _t61 = cpu->r[1] + 0x00000028u; /* 027BD004 */ rbrew_write32(cpu->mem, _t61, cpu->r[25]); /* 027BD008 */ cpu->r[25] = 0x10110000u; /* 027BD00C */ cpu->r[6] = 0x10110000u; /* 027BD010 */ _t62 = cpu->r[8] + 0xFFFFBA38u; /* 027BD010 */ cpu->r[10] = rbrew_read32(cpu->mem, _t62); /* 027BD010 */ cpu->r[8] = _t62; /* 027BD014 */ cpu->r[6] = cpu->r[6] + 0x00002D64u; /* 027BD018 */ _t63 = cpu->r[8] + 0x00000004u; /* 027BD018 */ cpu->r[12] = rbrew_read32(cpu->mem, _t63); /* 027BD01C */ cpu->r[25] = cpu->r[25] + 0x00002E6Cu; /* 027BD020 */ _t64 = cpu->r[1] + 0x000000A8u; /* 027BD020 */ rbrew_write32(cpu->mem, _t64, cpu->r[6]); /* 027BD024 */ cpu->r[5] = cpu->r[1] + 0x000000B0u; /* 027BD028 */ _t65 = cpu->r[1] + 0x000000B0u; /* 027BD028 */ rbrew_write32(cpu->mem, _t65, cpu->r[10]); /* 027BD02C */ cpu->r[4] = cpu->r[28]; /* 027BD030 */ _t66 = cpu->r[1] + 0x00000074u; /* 027BD030 */ rbrew_write32(cpu->mem, _t66, cpu->r[25]); /* 027BD034 */ cpu->r[7] = 0x10110000u; /* 027BD038 */ _t67 = cpu->r[1] + 0x000000B4u; /* 027BD038 */ rbrew_write32(cpu->mem, _t67, cpu->r[12]); /* 027BD03C */ cpu->r[7] = cpu->r[7] + 0xFFFFBBC0u; /* 027BD040 */ _t68 = cpu->r[1] + 0x000000ACu; /* 027BD040 */ rbrew_write32(cpu->mem, _t68, cpu->r[26]); /* 027BD044 */ cpu->r[3] = cpu->r[1] + 0x0000000Cu; /* 027BD048 */ _t69 = cpu->r[1] + 0x00000024u; /* 027BD048 */ rbrew_write32(cpu->mem, _t69, cpu->r[7]); /* 027BD04C */ Gambit_fn_027BDE34(cpu); /* 027BD050 */ cpu->r[6] = 0x10110000u; /* 027BD054 */ _t70 = cpu->r[1] + 0x0000002Cu; /* 027BD054 */ rbrew_write32(cpu->mem, _t70, cpu->r[27]); /* 027BD058 */ cpu->r[6] = cpu->r[6] + 0xFFFFBAF4u; /* 027BD05C */ cpu->r[3] = cpu->r[1] + 0x00000034u; /* 027BD060 */ _t71 = cpu->r[1] + 0x00000030u; /* 027BD060 */ rbrew_write32(cpu->mem, _t71, cpu->r[27]); /* 027BD064 */ cpu->r[4] = 0x00000020u; /* 027BD068 */ _t72 = cpu->r[1] + 0x00000054u; /* 027BD068 */ rbrew_write32(cpu->mem, _t72, cpu->r[6]); /* 027BD06C */ Gambit_fn_02C89380(cpu); /* 027BD070 */ cpu->r[27] = 0x10110000u; /* 027BD074 */ cpu->r[3] = cpu->r[1] + 0x00000058u; /* 027BD078 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu; /* 027BD07C */ cpu->r[27] = cpu->r[27] + 0xFFFFBB04u; /* 027BD080 */ cpu->r[5] = cpu->r[1] + 0x00000024u; /* 027BD084 */ _t73 = cpu->r[1] + 0x00000054u; /* 027BD084 */ rbrew_write32(cpu->mem, _t73, cpu->r[27]); /* 027BD088 */ Gambit_fn_0280CEBC(cpu); /* 027BD08C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BD090 */ _t74 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD090 */ _t75 = _t74 & 0x00000001u; /* 027BD090 */ if (_t75) goto L_027BD15C; else goto L_027BD094; L_027BD094: ; // 0x27bd094 /* 027BD094 */ cpu->r[26] = 0x10110000u; /* 027BD098 */ cpu->r[24] = 0x00000100u; /* 027BD09C */ cpu->r[26] = cpu->r[26] + 0xFFFFBADCu; /* 027BD0A0 */ cpu->r[23] = 0x00000000u; /* 027BD0A4 */ cpu->r[30] = cpu->r[1] + 0x000000C4u; L_027BD0A8: ; // 0x27bd0a8 /* 027BD0A8 */ _t76 = cpu->r[1] + 0x000000BCu; /* 027BD0A8 */ rbrew_write32(cpu->mem, _t76, cpu->r[26]); /* 027BD0AC */ cpu->r[7] = 0x00000001u; /* 027BD0B0 */ _t77 = cpu->r[1] + 0x00000008u; /* 027BD0B0 */ rbrew_write32(cpu->mem, _t77, cpu->r[23]); /* 027BD0B4 */ cpu->r[3] = cpu->r[1] + 0x00000058u; /* 027BD0B8 */ _t78 = cpu->r[1] + 0x000000C0u; /* 027BD0B8 */ rbrew_write32(cpu->mem, _t78, cpu->r[24]); /* 027BD0BC */ cpu->r[5] = cpu->r[1] + 0x0000002Cu; /* 027BD0C0 */ _t79 = cpu->r[30] + 0x000000FFu; /* 027BD0C0 */ rbrew_write8(cpu->mem, _t79, (uint8_t)cpu->r[31]); /* 027BD0C4 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027BD0C8 */ _t80 = cpu->r[1] + 0x000001C4u; /* 027BD0C8 */ rbrew_write8(cpu->mem, _t80, (uint8_t)cpu->r[23]); /* 027BD0CC */ cpu->r[6] = cpu->r[1] + 0x000000B8u; /* 027BD0D0 */ _t81 = cpu->r[1] + 0x000000B8u; /* 027BD0D0 */ rbrew_write32(cpu->mem, _t81, cpu->r[30]); /* 027BD0D4 */ _t82 = cpu->r[30] + 0x00000000u; /* 027BD0D4 */ rbrew_write8(cpu->mem, _t82, (uint8_t)cpu->r[31]); /* 027BD0D8 */ Gambit_fn_0280CF68(cpu); /* 027BD0DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BD0E0 */ _t83 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD0E0 */ _t84 = _t83 & 0x00000001u; /* 027BD0E0 */ if (_t84) goto L_027BD150; else goto L_027BD0E4; L_027BD0E4: ; // 0x27bd0e4 /* 027BD0E4 */ _t85 = cpu->r[1] + 0x00000008u; /* 027BD0E4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t85); /* 027BD0E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027BD0EC */ _t86 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD0EC */ _t87 = _t86 & 0x00000001u; /* 027BD0EC */ if (_t87) goto L_027BD150; else goto L_027BD0F0; L_027BD0F0: ; // 0x27bd0f0 /* 027BD0F0 */ _t88 = cpu->r[1] + 0x00000010u; /* 027BD0F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t88); /* 027BD0F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BD0F8 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD0F8 */ _t90 = _t89 & 0x00000001u; /* 027BD0F8 */ if (_t90) goto L_027BD14C; else goto L_027BD0FC; L_027BD0FC: ; // 0x27bd0fc /* 027BD0FC */ _t91 = cpu->r[1] + 0x00000016u; /* 027BD0FC */ cpu->r[5] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t91); /* 027BD100 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027BD104 */ _t92 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD104 */ _t93 = _t92 & 0x00000001u; /* 027BD104 */ if (_t93) goto L_027BD14C; else goto L_027BD108; L_027BD108: ; // 0x27bd108 /* 027BD108 */ _t94 = cpu->r[1] + 0x00000014u; /* 027BD108 */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t94); /* 027BD10C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x00000000u); /* 027BD110 */ cpu->r[3] = cpu->r[8] + cpu->r[0]; /* 027BD114 */ _t95 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BD114 */ _t96 = _t95 & 0x00000001u; /* 027BD114 */ if (_t96) goto L_027BD118; else goto L_027BD12C; L_027BD118: ; // 0x27bd118 /* 027BD118 */ _t97 = cpu->r[1] + 0x00000018u; /* 027BD118 */ cpu->r[12] = rbrew_read32(cpu->mem, _t97); /* 027BD11C */ cpu->ctr = cpu->r[12]; /* 027BD120 */ cpu->r[4] = cpu->r[1] + 0x000000B8u; /* 027BD124 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD128 */ goto L_027BD14C; L_027BD12C: ; // 0x27bd12c /* 027BD12C */ _t98 = cpu->r[1] + 0x0000001Au; /* 027BD12C */ cpu->r[0] = (uint32_t)(int32_t)(int16_t)rbrew_read16(cpu->mem, _t98); /* 027BD130 */ _t99 = cpu->r[3] + cpu->r[0]; /* 027BD130 */ cpu->r[6] = rbrew_read32(cpu->mem, _t99); /* 027BD134 */ cpu->r[0] = rbrew_rlwinm(cpu->r[5], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027BD138 */ cpu->r[10] = cpu->r[6] + cpu->r[0]; /* 027BD13C */ _t100 = cpu->r[10] + 0x00000004u; /* 027BD13C */ cpu->r[12] = rbrew_read32(cpu->mem, _t100); /* 027BD140 */ cpu->ctr = cpu->r[12]; /* 027BD144 */ cpu->r[4] = cpu->r[1] + 0x000000B8u; /* 027BD148 */ rbrew_call_indirect(cpu, cpu->ctr); L_027BD14C: ; // 0x27bd14c /* 027BD14C */ goto L_027BD0A8; L_027BD150: ; // 0x27bd150 /* 027BD150 */ cpu->r[3] = cpu->r[1] + 0x00000058u; /* 027BD154 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu; /* 027BD158 */ Gambit_fn_0280C8C8(cpu); L_027BD15C: ; // 0x27bd15c /* 027BD15C */ _t101 = cpu->r[1] + 0x00000030u; /* 027BD15C */ cpu->r[3] = rbrew_read32(cpu->mem, _t101); /* 027BD160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BD164 */ _t102 = cpu->r[1] + 0x00000054u; /* 027BD164 */ rbrew_write32(cpu->mem, _t102, cpu->r[27]); /* 027BD168 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD168 */ _t104 = _t103 & 0x00000001u; /* 027BD168 */ if (_t104) goto L_027BD174; else goto L_027BD16C; L_027BD16C: ; // 0x27bd16c /* 027BD16C */ cpu->r[4] = cpu->r[1] + 0x0000002Cu; /* 027BD170 */ Gambit_fn_0280C8C8(cpu); L_027BD174: ; // 0x27bd174 /* 027BD174 */ _t105 = cpu->r[28] + 0x00000154u; /* 027BD174 */ cpu->r[9] = rbrew_read32(cpu->mem, _t105); /* 027BD178 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[9]); /* 027BD17C */ _t106 = cpu->r[28] + 0x00000158u; /* 027BD17C */ cpu->r[10] = rbrew_read32(cpu->mem, _t106); /* 027BD180 */ _t107 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BD180 */ _t108 = _t107 & 0x00000001u; /* 027BD180 */ if (_t108) goto L_027BD184; else goto L_027BD18C; L_027BD184: ; // 0x27bd184 /* 027BD184 */ cpu->r[11] = (uint32_t)((int32_t)cpu->r[29] * (int32_t)0x0000011Cu); /* 027BD188 */ cpu->r[10] = cpu->r[10] + cpu->r[11]; L_027BD18C: ; // 0x27bd18c /* 027BD18C */ cpu->r[4] = 0x027C0000u; /* 027BD190 */ cpu->r[3] = cpu->r[10] + 0x00000110u; /* 027BD194 */ cpu->r[4] = cpu->r[4] + 0xFFFFDE10u; /* 027BD198 */ Gambit_fn_02802748(cpu); /* 027BD19C */ cpu->r[4] = 0x00000000u; /* 027BD1A0 */ cpu->r[3] = cpu->r[1] + 0x00000058u; /* 027BD1A4 */ _t109 = cpu->r[1] + 0x00000074u; /* 027BD1A4 */ rbrew_write32(cpu->mem, _t109, cpu->r[25]); /* 027BD1A8 */ Gambit_fn_0280C770(cpu); /* 027BD1AC */ /* nop */ /* 027BD1B0 */ _t110 = cpu->r[1] + 0x000001F4u; /* 027BD1B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110); /* 027BD1B4 */ cpu->lr = cpu->r[0]; /* 027BD1B8 */ cpu->r[1] = cpu->r[1] + 0x000001F0u; /* 027BD1BC */ return; } // fn_027BD1C0 @ 0x27bd1c0 void Gambit_fn_027BD1C0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6; L_027BD1C0: ; // 0x27bd1c0 /* 027BD1C0 */ cpu->r[0] = cpu->lr; /* 027BD1C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BD1C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BD1C4 */ cpu->r[1] = _t0; /* 027BD1C8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BD1C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BD1CC */ _t2 = cpu->r[1] + 0x00000008u; /* 027BD1CC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BD1D0 */ cpu->r[30] = cpu->r[4]; /* 027BD1D4 */ cpu->r[31] = cpu->r[3]; /* 027BD1D8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BD1D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BD1DC */ Gambit_fn_027BCC64(cpu); /* 027BD1E0 */ cpu->r[4] = cpu->r[30]; /* 027BD1E4 */ cpu->r[3] = cpu->r[31]; /* 027BD1E8 */ Gambit_fn_027BCE04(cpu); /* 027BD1EC */ _t4 = cpu->r[1] + 0x00000014u; /* 027BD1EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027BD1F0 */ _t5 = cpu->r[1] + 0x0000000Cu; /* 027BD1F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5); /* 027BD1F4 */ cpu->lr = cpu->r[0]; /* 027BD1F8 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BD1F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t6); /* 027BD1FC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BD200 */ return; } // fn_027BD1C4 @ 0x27bd1c4 void Gambit_fn_027BD1C4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6; L_027BD1C4: ; // 0x27bd1c4 /* 027BD1C4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BD1C4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BD1C4 */ cpu->r[1] = _t0; /* 027BD1C8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BD1C8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BD1CC */ _t2 = cpu->r[1] + 0x00000008u; /* 027BD1CC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BD1D0 */ cpu->r[30] = cpu->r[4]; /* 027BD1D4 */ cpu->r[31] = cpu->r[3]; /* 027BD1D8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BD1D8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BD1DC */ Gambit_fn_027BCC64(cpu); /* 027BD1E0 */ cpu->r[4] = cpu->r[30]; /* 027BD1E4 */ cpu->r[3] = cpu->r[31]; /* 027BD1E8 */ Gambit_fn_027BCE04(cpu); /* 027BD1EC */ _t4 = cpu->r[1] + 0x00000014u; /* 027BD1EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027BD1F0 */ _t5 = cpu->r[1] + 0x0000000Cu; /* 027BD1F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t5); /* 027BD1F4 */ cpu->lr = cpu->r[0]; /* 027BD1F8 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BD1F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t6); /* 027BD1FC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BD200 */ return; } // fn_027BD204 @ 0x27bd204 void Gambit_fn_027BD204(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; L_027BD204: ; // 0x27bd204 /* 027BD204 */ _t0 = cpu->r[1] + 0xFFFFFFB0u; /* 027BD204 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BD204 */ cpu->r[1] = _t0; /* 027BD208 */ /* nop */ /* 027BD20C */ cpu->r[0] = cpu->lr; /* 027BD210 */ _t1 = cpu->r[1] + 0x00000054u; /* 027BD210 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BD214 */ cpu->r[29] = cpu->r[3]; /* 027BD218 */ cpu->r[30] = cpu->r[4]; /* 027BD21C */ _t2 = cpu->r[30] + 0x0000010Cu; /* 027BD21C */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027BD220 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BD224 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD224 */ _t4 = _t3 & 0x00000001u; /* 027BD224 */ if (_t4) goto L_027BD228; else goto L_027BD660; L_027BD228: ; // 0x27bd228 /* 027BD228 */ _t5 = cpu->r[30] + 0x00000004u; /* 027BD228 */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027BD22C */ _t6 = cpu->r[12] + 0x00000014u; /* 027BD22C */ cpu->r[4] = rbrew_read32(cpu->mem, _t6); /* 027BD230 */ _t7 = cpu->r[29] + 0x00000168u; /* 027BD230 */ cpu->r[11] = rbrew_read32(cpu->mem, _t7); /* 027BD234 */ cpu->ctr = cpu->r[4]; /* 027BD238 */ cpu->r[28] = cpu->r[11] + 0x00000110u; /* 027BD23C */ cpu->r[3] = cpu->r[30]; /* 027BD240 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD244 */ cpu->r[31] = 0x10110000u; /* 027BD248 */ _t8 = cpu->r[30] + 0x00000000u; /* 027BD248 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027BD24C */ _t9 = cpu->r[31] + 0x00007399u; /* 027BD24C */ cpu->r[31] = rbrew_read8(cpu->mem, _t9); /* 027BD250 */ cpu->r[27] = 0x00000000u; /* 027BD254 */ _t10 = cpu->r[12] + 0x00000000u; /* 027BD254 */ cpu->r[5] = rbrew_read8(cpu->mem, _t10); /* 027BD258 */ cpu->r[11] = cpu->r[27]; /* 027BD25C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027BD260 */ cpu->r[5] = 0x00080000u; /* 027BD264 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD264 */ _t12 = _t11 & 0x00000001u; /* 027BD264 */ if (_t12) goto L_027BD28C; else goto L_027BD268; L_027BD268: ; // 0x27bd268 /* 027BD268 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027BD26C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[5]); /* 027BD270 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027BD274 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD274 */ _t14 = _t13 & 0x00000001u; /* 027BD274 */ if (_t14) goto L_027BD288; else goto L_027BD278; L_027BD278: ; // 0x27bd278 /* 027BD278 */ _t15 = cpu->r[12] + 0x00000000u; /* 027BD278 */ cpu->r[6] = rbrew_read8(cpu->mem, _t15); /* 027BD27C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027BD280 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD280 */ _t17 = _t16 & 0x00000001u; /* 027BD280 */ if (_t17) goto L_027BD284; else goto L_027BD268; L_027BD284: ; // 0x27bd284 /* 027BD284 */ goto L_027BD28C; L_027BD288: ; // 0x27bd288 /* 027BD288 */ cpu->r[11] = 0x00000000u; L_027BD28C: ; // 0x27bd28c /* 027BD28C */ cpu->r[23] = cpu->r[11] + 0x00000001u; /* 027BD290 */ cpu->r[7] = 0x10110000u; /* 027BD294 */ _t18 = cpu->r[1] + 0x00000008u; /* 027BD294 */ rbrew_write32(cpu->mem, _t18, cpu->r[30]); /* 027BD298 */ cpu->r[25] = 0x10110000u; /* 027BD29C */ cpu->r[7] = cpu->r[7] + 0xFFFFBB74u; /* 027BD2A0 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027BD2A0 */ rbrew_write32(cpu->mem, _t19, cpu->r[23]); /* 027BD2A4 */ cpu->r[25] = cpu->r[25] + 0xFFFFBA54u; /* 027BD2A8 */ cpu->r[8] = 0x10110000u; /* 027BD2AC */ _t20 = cpu->r[1] + 0x00000010u; /* 027BD2AC */ rbrew_write32(cpu->mem, _t20, cpu->r[7]); /* 027BD2B0 */ cpu->r[8] = cpu->r[8] + 0xFFFFBBC2u; /* 027BD2B4 */ _t21 = cpu->r[1] + 0x00000018u; /* 027BD2B4 */ rbrew_write32(cpu->mem, _t21, cpu->r[25]); /* 027BD2B8 */ _t22 = cpu->r[1] + 0x00000014u; /* 027BD2B8 */ rbrew_write32(cpu->mem, _t22, cpu->r[8]); /* 027BD2BC */ _t23 = cpu->r[30] + 0x00000004u; /* 027BD2BC */ cpu->r[9] = rbrew_read32(cpu->mem, _t23); /* 027BD2C0 */ _t24 = cpu->r[9] + 0x00000014u; /* 027BD2C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027BD2C4 */ cpu->ctr = cpu->r[0]; /* 027BD2C8 */ cpu->r[3] = cpu->r[30]; /* 027BD2CC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD2D0 */ _t25 = cpu->r[30] + 0x00000000u; /* 027BD2D0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t25); /* 027BD2D4 */ _t26 = cpu->r[7] + 0x00000000u; /* 027BD2D4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t26); /* 027BD2D8 */ cpu->r[12] = 0x00000000u; /* 027BD2DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]); /* 027BD2E0 */ cpu->r[9] = 0x00080000u; /* 027BD2E4 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD2E4 */ _t28 = _t27 & 0x00000001u; /* 027BD2E4 */ if (_t28) goto L_027BD30C; else goto L_027BD2E8; L_027BD2E8: ; // 0x27bd2e8 /* 027BD2E8 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027BD2EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[9]); /* 027BD2F0 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027BD2F4 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD2F4 */ _t30 = _t29 & 0x00000001u; /* 027BD2F4 */ if (_t30) goto L_027BD308; else goto L_027BD2F8; L_027BD2F8: ; // 0x27bd2f8 /* 027BD2F8 */ _t31 = cpu->r[7] + 0x00000000u; /* 027BD2F8 */ cpu->r[0] = rbrew_read8(cpu->mem, _t31); /* 027BD2FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BD300 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD300 */ _t33 = _t32 & 0x00000001u; /* 027BD300 */ if (_t33) goto L_027BD304; else goto L_027BD2E8; L_027BD304: ; // 0x27bd304 /* 027BD304 */ goto L_027BD30C; L_027BD308: ; // 0x27bd308 /* 027BD308 */ cpu->r[12] = 0x00000000u; L_027BD30C: ; // 0x27bd30c /* 027BD30C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u); /* 027BD310 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD310 */ _t35 = _t34 & 0x00000001u; /* 027BD310 */ if (_t35) goto L_027BD33C; else goto L_027BD314; L_027BD314: ; // 0x27bd314 /* 027BD314 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000001u); /* 027BD318 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD318 */ _t37 = _t36 & 0x00000001u; /* 027BD318 */ if (_t37) goto L_027BD31C; else goto L_027BD328; L_027BD31C: ; // 0x27bd31c /* 027BD31C */ cpu->r[26] = 0x00000000u; /* 027BD320 */ _t38 = cpu->r[1] + 0x0000000Cu; /* 027BD320 */ rbrew_write32(cpu->mem, _t38, cpu->r[26]); /* 027BD324 */ goto L_027BD400; L_027BD328: ; // 0x27bd328 /* 027BD328 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u); /* 027BD32C */ _t39 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BD32C */ _t40 = _t39 & 0x00000001u; /* 027BD32C */ if (_t40) goto L_027BD33C; else goto L_027BD330; L_027BD330: ; // 0x27bd330 /* 027BD330 */ cpu->r[0] = cpu->r[12] + 0x00000001u; /* 027BD334 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[0]); /* 027BD338 */ _t41 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD338 */ _t42 = _t41 & 0x00000001u; /* 027BD338 */ if (_t42) goto L_027BD33C; else goto L_027BD374; L_027BD33C: ; // 0x27bd33c /* 027BD33C */ _t43 = cpu->r[30] + 0x00000004u; /* 027BD33C */ cpu->r[10] = rbrew_read32(cpu->mem, _t43); /* 027BD340 */ _t44 = cpu->r[10] + 0x00000014u; /* 027BD340 */ cpu->r[11] = rbrew_read32(cpu->mem, _t44); /* 027BD344 */ cpu->ctr = cpu->r[11]; /* 027BD348 */ _t45 = cpu->r[1] + 0x0000000Cu; /* 027BD348 */ cpu->r[26] = rbrew_read32(cpu->mem, _t45); /* 027BD34C */ cpu->r[3] = cpu->r[30]; /* 027BD350 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD354 */ _t46 = cpu->r[30] + 0x00000000u; /* 027BD354 */ cpu->r[7] = rbrew_read32(cpu->mem, _t46); /* 027BD358 */ cpu->r[4] = cpu->r[7]; /* 027BD35C */ _t47 = cpu->r[4] + 0x00000000u; /* 027BD35C */ cpu->r[12] = rbrew_read8(cpu->mem, _t47); /* 027BD360 */ cpu->r[10] = 0x00000000u; /* 027BD364 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027BD368 */ cpu->r[5] = 0x00080000u; /* 027BD36C */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD36C */ _t49 = _t48 & 0x00000001u; /* 027BD36C */ if (_t49) goto L_027BD370; else goto L_027BD430; L_027BD370: ; // 0x27bd370 /* 027BD370 */ goto L_027BD454; L_027BD374: ; // 0x27bd374 /* 027BD374 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFEu; /* 027BD378 */ cpu->r[6] = cpu->r[23] + 0xFFFFFFFFu; /* 027BD37C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0xFFFFFFFFu); /* 027BD380 */ cpu->r[26] = cpu->r[23] + 0x00000001u; /* 027BD384 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD384 */ _t51 = _t50 & 0x00000001u; /* 027BD384 */ if (_t51) goto L_027BD388; else goto L_027BD38C; L_027BD388: ; // 0x27bd388 /* 027BD388 */ cpu->r[26] = 0x00000001u; L_027BD38C: ; // 0x27bd38c /* 027BD38C */ cpu->r[21] = 0x00080000u; /* 027BD390 */ cpu->r[24] = cpu->r[31]; /* 027BD394 */ cpu->r[21] = cpu->r[21] + 0x00000001u; L_027BD398: ; // 0x27bd398 /* 027BD398 */ _t52 = cpu->r[1] + 0x00000008u; /* 027BD398 */ cpu->r[9] = rbrew_read32(cpu->mem, _t52); /* 027BD39C */ _t53 = cpu->r[9] + 0x00000000u; /* 027BD39C */ cpu->r[5] = rbrew_read32(cpu->mem, _t53); /* 027BD3A0 */ _t54 = cpu->r[5] + cpu->r[23]; /* 027BD3A0 */ cpu->r[6] = rbrew_read8(cpu->mem, _t54); /* 027BD3A4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[24]); /* 027BD3A8 */ cpu->r[22] = cpu->r[5] + cpu->r[23]; /* 027BD3AC */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD3AC */ _t56 = _t55 & 0x00000001u; /* 027BD3AC */ if (_t56) goto L_027BD3F8; else goto L_027BD3B0; L_027BD3B0: ; // 0x27bd3b0 /* 027BD3B0 */ _t57 = cpu->r[1] + 0x00000018u; /* 027BD3B0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57); /* 027BD3B4 */ _t58 = cpu->r[7] + 0x00000014u; /* 027BD3B4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t58); /* 027BD3B8 */ cpu->ctr = cpu->r[8]; /* 027BD3BC */ cpu->r[3] = cpu->r[1] + 0x00000014u; /* 027BD3C0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD3C4 */ cpu->ctr = cpu->r[21]; /* 027BD3C8 */ _t59 = cpu->r[1] + 0x00000014u; /* 027BD3C8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t59); L_027BD3CC: ; // 0x27bd3cc /* 027BD3CC */ _t60 = cpu->r[6] + 0x00000000u; /* 027BD3CC */ cpu->r[0] = rbrew_read8(cpu->mem, _t60); /* 027BD3D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[24]); /* 027BD3D4 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD3D4 */ _t62 = _t61 & 0x00000001u; /* 027BD3D4 */ if (_t62) goto L_027BD3EC; else goto L_027BD3D8; L_027BD3D8: ; // 0x27bd3d8 /* 027BD3D8 */ _t63 = cpu->r[22] + 0x00000000u; /* 027BD3D8 */ cpu->r[9] = rbrew_read8(cpu->mem, _t63); /* 027BD3DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[9]); /* 027BD3E0 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD3E0 */ _t65 = _t64 & 0x00000001u; /* 027BD3E0 */ if (_t65) goto L_027BD3F8; else goto L_027BD3E4; L_027BD3E4: ; // 0x27bd3e4 /* 027BD3E4 */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027BD3E8 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BD3E8 */ _t66 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BD3E8 */ _t67 = _t66 >> (0x00000002u & 31u); /* 027BD3E8 */ _t68 = _t67 & 0x00000001u; /* 027BD3E8 */ if (_t68) goto L_027BD3CC; else goto L_027BD3EC; L_027BD3EC: ; // 0x27bd3ec /* 027BD3EC */ cpu->r[26] = cpu->r[26] + 0xFFFFFFFFu; /* 027BD3EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BD3F0 */ cpu->r[23] = cpu->r[23] + 0xFFFFFFFFu; /* 027BD3F4 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD3F4 */ _t70 = _t69 & 0x00000001u; /* 027BD3F4 */ if (_t70) goto L_027BD3F8; else goto L_027BD398; L_027BD3F8: ; // 0x27bd3f8 /* 027BD3F8 */ cpu->r[26] = cpu->r[23] + 0x00000001u; /* 027BD3FC */ _t71 = cpu->r[1] + 0x0000000Cu; /* 027BD3FC */ rbrew_write32(cpu->mem, _t71, cpu->r[26]); L_027BD400: ; // 0x27bd400 /* 027BD400 */ _t72 = cpu->r[30] + 0x00000004u; /* 027BD400 */ cpu->r[10] = rbrew_read32(cpu->mem, _t72); /* 027BD404 */ _t73 = cpu->r[10] + 0x00000014u; /* 027BD404 */ cpu->r[11] = rbrew_read32(cpu->mem, _t73); /* 027BD408 */ cpu->ctr = cpu->r[11]; /* 027BD40C */ cpu->r[3] = cpu->r[30]; /* 027BD410 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD414 */ _t74 = cpu->r[30] + 0x00000000u; /* 027BD414 */ cpu->r[7] = rbrew_read32(cpu->mem, _t74); /* 027BD418 */ cpu->r[4] = cpu->r[7]; /* 027BD41C */ _t75 = cpu->r[4] + 0x00000000u; /* 027BD41C */ cpu->r[12] = rbrew_read8(cpu->mem, _t75); /* 027BD420 */ cpu->r[10] = 0x00000000u; /* 027BD424 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027BD428 */ cpu->r[5] = 0x00080000u; /* 027BD42C */ _t76 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD42C */ _t77 = _t76 & 0x00000001u; /* 027BD42C */ if (_t77) goto L_027BD454; else goto L_027BD430; L_027BD430: ; // 0x27bd430 /* 027BD430 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027BD434 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[5]); /* 027BD438 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BD43C */ _t78 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD43C */ _t79 = _t78 & 0x00000001u; /* 027BD43C */ if (_t79) goto L_027BD450; else goto L_027BD440; L_027BD440: ; // 0x27bd440 /* 027BD440 */ _t80 = cpu->r[4] + 0x00000000u; /* 027BD440 */ cpu->r[0] = rbrew_read8(cpu->mem, _t80); /* 027BD444 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BD448 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD448 */ _t82 = _t81 & 0x00000001u; /* 027BD448 */ if (_t82) goto L_027BD44C; else goto L_027BD430; L_027BD44C: ; // 0x27bd44c /* 027BD44C */ goto L_027BD454; L_027BD450: ; // 0x27bd450 /* 027BD450 */ cpu->r[10] = 0x00000000u; L_027BD454: ; // 0x27bd454 /* 027BD454 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BD458 */ _t83 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BD458 */ _t84 = _t83 & 0x00000001u; /* 027BD458 */ if (_t84) goto L_027BD464; else goto L_027BD45C; L_027BD45C: ; // 0x27bd45c /* 027BD45C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[10]); /* 027BD460 */ _t85 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD460 */ _t86 = _t85 & 0x00000001u; /* 027BD460 */ if (_t86) goto L_027BD464; else goto L_027BD488; L_027BD464: ; // 0x27bd464 /* 027BD464 */ cpu->r[9] = 0x101F0000u; /* 027BD468 */ _t87 = cpu->r[1] + 0x00000020u; /* 027BD468 */ rbrew_write32(cpu->mem, _t87, cpu->r[25]); /* 027BD46C */ _t88 = cpu->r[9] + 0x000066E8u; /* 027BD46C */ cpu->r[9] = rbrew_read32(cpu->mem, _t88); /* 027BD470 */ cpu->r[3] = 0x0000000Cu; /* 027BD474 */ _t89 = cpu->r[1] + 0x0000001Cu; /* 027BD474 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]); /* 027BD478 */ Gambit_fn_02801A78(cpu); /* 027BD47C */ cpu->r[26] = cpu->r[3]; /* 027BD47C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BD480 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD480 */ _t91 = _t90 & 0x00000001u; /* 027BD480 */ if (_t91) goto L_027BD50C; else goto L_027BD484; L_027BD484: ; // 0x27bd484 /* 027BD484 */ goto L_027BD4A4; L_027BD488: ; // 0x27bd488 /* 027BD488 */ _t92 = cpu->r[1] + 0x00000020u; /* 027BD488 */ rbrew_write32(cpu->mem, _t92, cpu->r[25]); /* 027BD48C */ cpu->r[9] = cpu->r[7] + cpu->r[26]; /* 027BD490 */ cpu->r[3] = 0x0000000Cu; /* 027BD494 */ _t93 = cpu->r[1] + 0x0000001Cu; /* 027BD494 */ rbrew_write32(cpu->mem, _t93, cpu->r[9]); /* 027BD498 */ Gambit_fn_02801A78(cpu); /* 027BD49C */ cpu->r[26] = cpu->r[3]; /* 027BD49C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BD4A0 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD4A0 */ _t95 = _t94 & 0x00000001u; /* 027BD4A0 */ if (_t95) goto L_027BD50C; else goto L_027BD4A4; L_027BD4A4: ; // 0x27bd4a4 /* 027BD4A4 */ cpu->r[4] = 0x00010000u; /* 027BD4A8 */ _t96 = cpu->r[26] + 0x00000008u; /* 027BD4A8 */ rbrew_write32(cpu->mem, _t96, cpu->r[27]); /* 027BD4AC */ cpu->r[4] = cpu->r[4] + 0xFFFFFFFFu; /* 027BD4B0 */ cpu->r[5] = 0xFFFFFFFFu; /* 027BD4B4 */ _t97 = cpu->r[26] + 0x00000000u; /* 027BD4B4 */ rbrew_write32(cpu->mem, _t97, cpu->r[4]); /* 027BD4B8 */ _t98 = cpu->r[26] + 0x00000004u; /* 027BD4B8 */ rbrew_write32(cpu->mem, _t98, cpu->r[5]); /* 027BD4BC */ _t99 = cpu->r[29] + 0x0000016Cu; /* 027BD4BC */ cpu->r[6] = rbrew_read32(cpu->mem, _t99); /* 027BD4C0 */ _t100 = cpu->r[26] + 0x00000004u; /* 027BD4C0 */ rbrew_write32(cpu->mem, _t100, cpu->r[6]); /* 027BD4C4 */ _t101 = cpu->r[1] + 0x00000020u; /* 027BD4C4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t101); /* 027BD4C8 */ _t102 = cpu->r[7] + 0x00000014u; /* 027BD4C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t102); /* 027BD4CC */ cpu->ctr = cpu->r[0]; /* 027BD4D0 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu; /* 027BD4D4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD4D8 */ _t103 = cpu->r[1] + 0x00000020u; /* 027BD4D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t103); /* 027BD4DC */ _t104 = cpu->r[12] + 0x00000014u; /* 027BD4DC */ cpu->r[4] = rbrew_read32(cpu->mem, _t104); /* 027BD4E0 */ cpu->ctr = cpu->r[4]; /* 027BD4E4 */ _t105 = cpu->r[1] + 0x0000001Cu; /* 027BD4E4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t105); /* 027BD4E8 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu; /* 027BD4EC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD4F0 */ _t106 = cpu->r[1] + 0x0000001Cu; /* 027BD4F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t106); /* 027BD4F4 */ _t107 = cpu->r[9] + 0x00000000u; /* 027BD4F4 */ cpu->r[5] = rbrew_read8(cpu->mem, _t107); /* 027BD4F8 */ cpu->r[4] = 0x00000000u; /* 027BD4FC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027BD500 */ cpu->r[0] = 0x00080000u; /* 027BD504 */ _t108 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD504 */ _t109 = _t108 & 0x00000001u; /* 027BD504 */ if (_t109) goto L_027BD508; else goto L_027BD55C; L_027BD508: ; // 0x27bd508 /* 027BD508 */ goto L_027BD580; L_027BD50C: ; // 0x27bd50c /* 027BD50C */ _t110 = cpu->r[29] + 0x0000016Cu; /* 027BD50C */ cpu->r[6] = rbrew_read32(cpu->mem, _t110); /* 027BD510 */ cpu->r[26] = 0x00000000u; /* 027BD514 */ _t111 = cpu->r[26] + 0x00000004u; /* 027BD514 */ rbrew_write32(cpu->mem, _t111, cpu->r[6]); /* 027BD518 */ _t112 = cpu->r[1] + 0x00000020u; /* 027BD518 */ cpu->r[7] = rbrew_read32(cpu->mem, _t112); /* 027BD51C */ _t113 = cpu->r[7] + 0x00000014u; /* 027BD51C */ cpu->r[0] = rbrew_read32(cpu->mem, _t113); /* 027BD520 */ cpu->ctr = cpu->r[0]; /* 027BD524 */ cpu->r[3] = cpu->r[1] + 0x0000001Cu; /* 027BD528 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD52C */ _t114 = cpu->r[1] + 0x00000020u; /* 027BD52C */ cpu->r[12] = rbrew_read32(cpu->mem, _t114); /* 027BD530 */ _t115 = cpu->r[12] + 0x00000014u; /* 027BD530 */ cpu->r[4] = rbrew_read32(cpu->mem, _t115); /* 027BD534 */ cpu->ctr = cpu->r[4]; /* 027BD538 */ _t116 = cpu->r[1] + 0x0000001Cu; /* 027BD538 */ cpu->r[25] = rbrew_read32(cpu->mem, _t116); /* 027BD53C */ cpu->r[3] = cpu->r[1] + 0x0000001Cu; /* 027BD540 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD544 */ _t117 = cpu->r[1] + 0x0000001Cu; /* 027BD544 */ cpu->r[9] = rbrew_read32(cpu->mem, _t117); /* 027BD548 */ _t118 = cpu->r[9] + 0x00000000u; /* 027BD548 */ cpu->r[5] = rbrew_read8(cpu->mem, _t118); /* 027BD54C */ cpu->r[4] = cpu->r[26]; /* 027BD550 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027BD554 */ cpu->r[0] = 0x00080000u; /* 027BD558 */ _t119 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD558 */ _t120 = _t119 & 0x00000001u; /* 027BD558 */ if (_t120) goto L_027BD580; else goto L_027BD55C; L_027BD55C: ; // 0x27bd55c /* 027BD55C */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BD560 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]); /* 027BD564 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027BD568 */ _t121 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD568 */ _t122 = _t121 & 0x00000001u; /* 027BD568 */ if (_t122) goto L_027BD57C; else goto L_027BD56C; L_027BD56C: ; // 0x27bd56c /* 027BD56C */ _t123 = cpu->r[9] + 0x00000000u; /* 027BD56C */ cpu->r[7] = rbrew_read8(cpu->mem, _t123); /* 027BD570 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027BD574 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD574 */ _t125 = _t124 & 0x00000001u; /* 027BD574 */ if (_t125) goto L_027BD578; else goto L_027BD55C; L_027BD578: ; // 0x27bd578 /* 027BD578 */ goto L_027BD580; L_027BD57C: ; // 0x27bd57c /* 027BD57C */ cpu->r[4] = 0x00000000u; L_027BD580: ; // 0x27bd580 /* 027BD580 */ cpu->r[3] = cpu->r[25]; /* 027BD584 */ Gambit_fn_02801E30(cpu); /* 027BD588 */ _t126 = cpu->r[26] + 0x00000000u; /* 027BD588 */ rbrew_write32(cpu->mem, _t126, cpu->r[3]); /* 027BD58C */ cpu->r[3] = 0x0000000Cu; /* 027BD590 */ Gambit_fn_02801A78(cpu); /* 027BD594 */ cpu->r[31] = cpu->r[3]; /* 027BD594 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BD598 */ _t127 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD598 */ _t128 = _t127 & 0x00000001u; /* 027BD598 */ if (_t128) goto L_027BD610; else goto L_027BD59C; L_027BD59C: ; // 0x27bd59c /* 027BD59C */ cpu->r[3] = cpu->r[31]; /* 027BD59C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BD5A0 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD5A0 */ _t130 = _t129 & 0x00000001u; /* 027BD5A0 */ if (_t130) goto L_027BD5A4; else goto L_027BD5B4; L_027BD5A4: ; // 0x27bd5a4 /* 027BD5A4 */ cpu->r[3] = 0x0000000Cu; /* 027BD5A8 */ Gambit_fn_02801A78(cpu); /* 027BD5AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BD5B0 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD5B0 */ _t132 = _t131 & 0x00000001u; /* 027BD5B0 */ if (_t132) goto L_027BD5C8; else goto L_027BD5B4; L_027BD5B4: ; // 0x27bd5b4 /* 027BD5B4 */ cpu->r[8] = 0x10110000u; /* 027BD5B8 */ _t133 = cpu->r[3] + 0x00000004u; /* 027BD5B8 */ rbrew_write32(cpu->mem, _t133, cpu->r[27]); /* 027BD5BC */ cpu->r[8] = cpu->r[8] + 0x00007110u; /* 027BD5C0 */ _t134 = cpu->r[3] + 0x00000000u; /* 027BD5C0 */ rbrew_write32(cpu->mem, _t134, cpu->r[27]); /* 027BD5C4 */ _t135 = cpu->r[3] + 0x00000008u; /* 027BD5C4 */ rbrew_write32(cpu->mem, _t135, cpu->r[8]); L_027BD5C8: ; // 0x27bd5c8 /* 027BD5C8 */ cpu->r[10] = 0x10110000u; /* 027BD5CC */ cpu->r[10] = cpu->r[10] + 0xFFFFBB54u; /* 027BD5D0 */ _t136 = cpu->r[31] + 0x00000008u; /* 027BD5D0 */ rbrew_write32(cpu->mem, _t136, cpu->r[10]); /* 027BD5D4 */ _t137 = cpu->r[26] + 0x00000008u; /* 027BD5D4 */ rbrew_write32(cpu->mem, _t137, cpu->r[31]); /* 027BD5D8 */ _t138 = cpu->r[29] + 0x00000168u; /* 027BD5D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t138); /* 027BD5DC */ cpu->r[4] = cpu->r[30]; /* 027BD5E0 */ _t139 = cpu->r[12] + 0x00000000u; /* 027BD5E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t139); /* 027BD5E4 */ cpu->r[5] = 0x00000000u; /* 027BD5E8 */ Gambit_fn_027E2C10(cpu); /* 027BD5EC */ cpu->r[4] = cpu->r[3]; /* 027BD5F0 */ cpu->r[3] = cpu->r[31]; /* 027BD5F4 */ cpu->r[5] = 0x00000000u; /* 027BD5F8 */ Gambit_fn_02827FF4(cpu); /* 027BD5FC */ _t140 = cpu->r[28] + 0x00000000u; /* 027BD5FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t140); /* 027BD600 */ _t141 = cpu->r[28] + 0x00000004u; /* 027BD600 */ cpu->r[8] = rbrew_read32(cpu->mem, _t141); /* 027BD604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[8]); /* 027BD608 */ _t142 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BD608 */ _t143 = _t142 & 0x00000001u; /* 027BD608 */ if (_t143) goto L_027BD60C; else goto L_027BD660; L_027BD60C: ; // 0x27bd60c /* 027BD60C */ goto L_027BD648; L_027BD610: ; // 0x27bd610 /* 027BD610 */ cpu->r[5] = 0x00000000u; /* 027BD614 */ _t144 = cpu->r[26] + 0x00000008u; /* 027BD614 */ rbrew_write32(cpu->mem, _t144, cpu->r[5]); /* 027BD618 */ _t145 = cpu->r[29] + 0x00000168u; /* 027BD618 */ cpu->r[12] = rbrew_read32(cpu->mem, _t145); /* 027BD61C */ _t146 = cpu->r[12] + 0x00000000u; /* 027BD61C */ cpu->r[3] = rbrew_read32(cpu->mem, _t146); /* 027BD620 */ cpu->r[4] = cpu->r[30]; /* 027BD624 */ Gambit_fn_027E2C10(cpu); /* 027BD628 */ cpu->r[4] = cpu->r[3]; /* 027BD62C */ cpu->r[3] = 0x00000000u; /* 027BD630 */ cpu->r[5] = cpu->r[3]; /* 027BD634 */ Gambit_fn_02827FF4(cpu); /* 027BD638 */ _t147 = cpu->r[28] + 0x00000004u; /* 027BD638 */ cpu->r[8] = rbrew_read32(cpu->mem, _t147); /* 027BD63C */ _t148 = cpu->r[28] + 0x00000000u; /* 027BD63C */ cpu->r[0] = rbrew_read32(cpu->mem, _t148); /* 027BD640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[8]); /* 027BD644 */ _t149 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BD644 */ _t150 = _t149 & 0x00000001u; /* 027BD644 */ if (_t150) goto L_027BD648; else goto L_027BD660; L_027BD648: ; // 0x27bd648 /* 027BD648 */ _t151 = cpu->r[28] + 0x00000008u; /* 027BD648 */ cpu->r[11] = rbrew_read32(cpu->mem, _t151); /* 027BD64C */ cpu->r[10] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BD650 */ _t152 = cpu->r[10] + cpu->r[11]; /* 027BD650 */ rbrew_write32(cpu->mem, _t152, cpu->r[26]); /* 027BD654 */ _t153 = cpu->r[28] + 0x00000000u; /* 027BD654 */ cpu->r[4] = rbrew_read32(cpu->mem, _t153); /* 027BD658 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BD65C */ _t154 = cpu->r[28] + 0x00000000u; /* 027BD65C */ rbrew_write32(cpu->mem, _t154, cpu->r[4]); L_027BD660: ; // 0x27bd660 /* 027BD660 */ /* nop */ /* 027BD664 */ _t155 = cpu->r[1] + 0x00000054u; /* 027BD664 */ cpu->r[0] = rbrew_read32(cpu->mem, _t155); /* 027BD668 */ cpu->lr = cpu->r[0]; /* 027BD66C */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027BD670 */ return; } // fn_027BD674 @ 0x27bd674 void Gambit_fn_027BD674(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; L_027BD674: ; // 0x27bd674 /* 027BD674 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BD674 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BD674 */ cpu->r[1] = _t0; /* 027BD678 */ /* nop */ /* 027BD67C */ cpu->r[0] = cpu->lr; /* 027BD680 */ _t1 = cpu->r[1] + 0x00000044u; /* 027BD680 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BD684 */ cpu->r[27] = 0x101D0000u; /* 027BD688 */ cpu->r[28] = cpu->r[3]; /* 027BD68C */ _t2 = cpu->r[27] + 0xFFFF93D0u; /* 027BD68C */ cpu->r[3] = rbrew_read32(cpu->mem, _t2); /* 027BD68C */ cpu->r[27] = _t2; /* 027BD690 */ _t3 = cpu->r[3] + 0x00000000u; /* 027BD690 */ cpu->r[10] = rbrew_read32(cpu->mem, _t3); /* 027BD694 */ _t4 = cpu->r[10] + 0x0000001Cu; /* 027BD694 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4); /* 027BD698 */ cpu->ctr = cpu->r[8]; /* 027BD69C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD6A0 */ cpu->r[23] = cpu->r[3]; /* 027BD6A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u); /* 027BD6A4 */ _t5 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD6A4 */ _t6 = _t5 & 0x00000001u; /* 027BD6A4 */ if (_t6) goto L_027BD6A8; else goto L_027BD7AC; L_027BD6A8: ; // 0x27bd6a8 /* 027BD6A8 */ cpu->r[3] = 0x101D0000u; /* 027BD6AC */ _t7 = cpu->r[3] + 0xFFFF98F0u; /* 027BD6AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t7); /* 027BD6B0 */ Gambit_fn_02826F20(cpu); /* 027BD6B4 */ _t8 = cpu->r[3] + 0x0000000Cu; /* 027BD6B4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t8); /* 027BD6B8 */ _t9 = cpu->r[9] + 0x00000034u; /* 027BD6B8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t9); /* 027BD6BC */ cpu->ctr = cpu->r[10]; /* 027BD6C0 */ cpu->r[5] = 0x00000004u; /* 027BD6C4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[23] * (int32_t)0x0000011Cu); /* 027BD6C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD6CC */ cpu->r[21] = cpu->r[3]; /* 027BD6D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u); /* 027BD6D4 */ cpu->r[30] = cpu->r[23]; /* 027BD6D8 */ cpu->r[0] = 0x00000000u; /* 027BD6DC */ _t10 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD6DC */ _t11 = _t10 & 0x00000001u; /* 027BD6DC */ if (_t11) goto L_027BD6E4; else goto L_027BD6E0; L_027BD6E0: ; // 0x27bd6e0 /* 027BD6E0 */ cpu->r[30] = 0x00000001u; L_027BD6E4: ; // 0x27bd6e4 /* 027BD6E4 */ cpu->r[31] = 0x10110000u; /* 027BD6E8 */ cpu->r[22] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000011Cu); /* 027BD6EC */ _t12 = cpu->r[31] + 0x00007399u; /* 027BD6EC */ cpu->r[31] = rbrew_read8(cpu->mem, _t12); /* 027BD6F0 */ cpu->r[25] = 0x00000100u; /* 027BD6F4 */ cpu->r[24] = 0x00000000u; L_027BD6F8: ; // 0x27bd6f8 /* 027BD6F8 */ cpu->r[29] = cpu->r[21] + cpu->r[22]; /* 027BD6F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BD6FC */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD6FC */ _t14 = _t13 & 0x00000001u; /* 027BD6FC */ if (_t14) goto L_027BD790; else goto L_027BD700; L_027BD700: ; // 0x27bd700 /* 027BD700 */ cpu->r[26] = cpu->r[29] + 0x00000004u; /* 027BD700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BD704 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD704 */ _t16 = _t15 & 0x00000001u; /* 027BD704 */ if (_t16) goto L_027BD708; else goto L_027BD718; L_027BD708: ; // 0x27bd708 /* 027BD708 */ cpu->r[3] = 0x0000010Cu; /* 027BD70C */ Gambit_fn_02801A78(cpu); /* 027BD710 */ cpu->r[26] = cpu->r[3]; /* 027BD710 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BD714 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD714 */ _t18 = _t17 & 0x00000001u; /* 027BD714 */ if (_t18) goto L_027BD760; else goto L_027BD718; L_027BD718: ; // 0x27bd718 /* 027BD718 */ cpu->r[7] = cpu->r[26]; /* 027BD718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027BD71C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD71C */ _t20 = _t19 & 0x00000001u; /* 027BD71C */ if (_t20) goto L_027BD720; else goto L_027BD730; L_027BD720: ; // 0x27bd720 /* 027BD720 */ cpu->r[3] = 0x0000000Cu; /* 027BD724 */ Gambit_fn_02801A78(cpu); /* 027BD728 */ cpu->r[7] = cpu->r[3]; /* 027BD728 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000000u); /* 027BD72C */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD72C */ _t22 = _t21 & 0x00000001u; /* 027BD72C */ if (_t22) goto L_027BD74C; else goto L_027BD730; L_027BD730: ; // 0x27bd730 /* 027BD730 */ cpu->r[0] = 0x10110000u; /* 027BD734 */ _t23 = cpu->r[7] + 0x00000008u; /* 027BD734 */ rbrew_write32(cpu->mem, _t23, cpu->r[25]); /* 027BD738 */ cpu->r[12] = cpu->r[26] + 0x0000000Cu; /* 027BD73C */ cpu->r[0] = cpu->r[0] + 0xFFFFBA6Cu; /* 027BD740 */ _t24 = cpu->r[7] + 0x00000000u; /* 027BD740 */ rbrew_write32(cpu->mem, _t24, cpu->r[12]); /* 027BD744 */ _t25 = cpu->r[7] + 0x00000004u; /* 027BD744 */ rbrew_write32(cpu->mem, _t25, cpu->r[0]); /* 027BD748 */ _t26 = cpu->r[26] + 0x0000010Bu; /* 027BD748 */ rbrew_write8(cpu->mem, _t26, (uint8_t)cpu->r[31]); L_027BD74C: ; // 0x27bd74c /* 027BD74C */ cpu->r[8] = 0x10110000u; /* 027BD750 */ _t27 = cpu->r[26] + 0x00000000u; /* 027BD750 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27); /* 027BD754 */ cpu->r[8] = cpu->r[8] + 0xFFFFBAC4u; /* 027BD758 */ _t28 = cpu->r[26] + 0x00000004u; /* 027BD758 */ rbrew_write32(cpu->mem, _t28, cpu->r[8]); /* 027BD75C */ _t29 = cpu->r[9] + 0x00000000u; /* 027BD75C */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[31]); L_027BD760: ; // 0x27bd760 /* 027BD760 */ cpu->r[0] = 0x10110000u; /* 027BD764 */ cpu->r[0] = cpu->r[0] + 0xFFFFBADCu; /* 027BD768 */ cpu->r[8] = cpu->r[29] + 0x00000110u; /* 027BD768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BD76C */ _t30 = cpu->r[29] + 0x00000008u; /* 027BD76C */ rbrew_write32(cpu->mem, _t30, cpu->r[0]); /* 027BD770 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD770 */ _t32 = _t31 & 0x00000001u; /* 027BD770 */ if (_t32) goto L_027BD774; else goto L_027BD784; L_027BD774: ; // 0x27bd774 /* 027BD774 */ cpu->r[3] = 0x0000000Cu; /* 027BD778 */ Gambit_fn_02801A78(cpu); /* 027BD77C */ cpu->r[8] = cpu->r[3]; /* 027BD77C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BD780 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD780 */ _t34 = _t33 & 0x00000001u; /* 027BD780 */ if (_t34) goto L_027BD790; else goto L_027BD784; L_027BD784: ; // 0x27bd784 /* 027BD784 */ _t35 = cpu->r[8] + 0x00000004u; /* 027BD784 */ rbrew_write32(cpu->mem, _t35, cpu->r[24]); /* 027BD788 */ _t36 = cpu->r[8] + 0x00000000u; /* 027BD788 */ rbrew_write32(cpu->mem, _t36, cpu->r[24]); /* 027BD78C */ _t37 = cpu->r[8] + 0x00000008u; /* 027BD78C */ rbrew_write32(cpu->mem, _t37, cpu->r[24]); L_027BD790: ; // 0x27bd790 /* 027BD790 */ cpu->r[30] = cpu->r[30] + 0xFFFFFFFFu; /* 027BD790 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BD794 */ cpu->r[22] = cpu->r[22] + 0x0000011Cu; /* 027BD798 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD798 */ _t39 = _t38 & 0x00000001u; /* 027BD798 */ if (_t39) goto L_027BD79C; else goto L_027BD6F8; L_027BD79C: ; // 0x27bd79c /* 027BD79C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u); /* 027BD7A0 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD7A0 */ _t41 = _t40 & 0x00000001u; /* 027BD7A0 */ if (_t41) goto L_027BD7AC; else goto L_027BD7A4; L_027BD7A4: ; // 0x27bd7a4 /* 027BD7A4 */ _t42 = cpu->r[28] + 0x00000158u; /* 027BD7A4 */ rbrew_write32(cpu->mem, _t42, cpu->r[21]); /* 027BD7A8 */ _t43 = cpu->r[28] + 0x00000154u; /* 027BD7A8 */ rbrew_write32(cpu->mem, _t43, cpu->r[23]); L_027BD7AC: ; // 0x27bd7ac /* 027BD7AC */ _t44 = cpu->r[27] + 0x00000000u; /* 027BD7AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t44); /* 027BD7B0 */ _t45 = cpu->r[3] + 0x00000000u; /* 027BD7B0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t45); /* 027BD7B4 */ _t46 = cpu->r[11] + 0x00000044u; /* 027BD7B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46); /* 027BD7B8 */ cpu->ctr = cpu->r[0]; /* 027BD7BC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD7C0 */ _t47 = cpu->r[28] + 0x00000164u; /* 027BD7C0 */ rbrew_write32(cpu->mem, _t47, cpu->r[3]); /* 027BD7C4 */ cpu->r[6] = 0x00000000u; /* 027BD7C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BD7CC */ cpu->r[5] = cpu->r[6]; /* 027BD7D0 */ Gambit_fn_02838654(cpu); /* 027BD7D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BD7D8 */ Gambit_fn_02838564(cpu); /* 027BD7DC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BD7E0 */ cpu->r[4] = cpu->r[28] + 0x00000170u; /* 027BD7E4 */ Gambit_fn_02838874(cpu); /* 027BD7E8 */ _t48 = cpu->r[27] + 0x00000000u; /* 027BD7E8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t48); /* 027BD7EC */ _t49 = cpu->r[3] + 0x00000000u; /* 027BD7EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t49); /* 027BD7F0 */ _t50 = cpu->r[9] + 0x00000024u; /* 027BD7F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t50); /* 027BD7F4 */ cpu->ctr = cpu->r[0]; /* 027BD7F8 */ cpu->r[31] = 0x00000000u; /* 027BD7FC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD800 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]); /* 027BD804 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BD804 */ _t52 = _t51 & 0x00000001u; /* 027BD804 */ if (_t52) goto L_027BD808; else goto L_027BD850; L_027BD808: ; // 0x27bd808 /* 027BD808 */ _t53 = cpu->r[27] + 0x00000000u; /* 027BD808 */ cpu->r[3] = rbrew_read32(cpu->mem, _t53); /* 027BD80C */ _t54 = cpu->r[3] + 0x00000000u; /* 027BD80C */ cpu->r[12] = rbrew_read32(cpu->mem, _t54); /* 027BD810 */ _t55 = cpu->r[12] + 0x0000002Cu; /* 027BD810 */ cpu->r[7] = rbrew_read32(cpu->mem, _t55); /* 027BD814 */ cpu->ctr = cpu->r[7]; /* 027BD818 */ cpu->r[4] = cpu->r[31]; /* 027BD81C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD820 */ cpu->r[5] = cpu->r[3]; /* 027BD824 */ cpu->r[3] = cpu->r[28]; /* 027BD828 */ cpu->r[4] = cpu->r[31]; /* 027BD82C */ Gambit_fn_027BD1C0(cpu); /* 027BD830 */ _t56 = cpu->r[27] + 0x00000000u; /* 027BD830 */ cpu->r[3] = rbrew_read32(cpu->mem, _t56); /* 027BD834 */ _t57 = cpu->r[3] + 0x00000000u; /* 027BD834 */ cpu->r[11] = rbrew_read32(cpu->mem, _t57); /* 027BD838 */ _t58 = cpu->r[11] + 0x00000024u; /* 027BD838 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58); /* 027BD83C */ cpu->ctr = cpu->r[0]; /* 027BD840 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027BD844 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD848 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]); /* 027BD84C */ _t59 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BD84C */ _t60 = _t59 & 0x00000001u; /* 027BD84C */ if (_t60) goto L_027BD808; else goto L_027BD850; L_027BD850: ; // 0x27bd850 /* 027BD850 */ cpu->r[3] = 0x00000050u; /* 027BD854 */ Gambit_fn_02801A78(cpu); /* 027BD858 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BD85C */ cpu->r[0] = cpu->r[3]; /* 027BD860 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD860 */ _t62 = _t61 & 0x00000001u; /* 027BD860 */ if (_t62) goto L_027BD86C; else goto L_027BD864; L_027BD864: ; // 0x27bd864 /* 027BD864 */ Gambit_fn_027BB5D0(cpu); /* 027BD868 */ cpu->r[0] = cpu->r[3]; L_027BD86C: ; // 0x27bd86c /* 027BD86C */ cpu->r[3] = 0x00000004u; /* 027BD870 */ _t63 = cpu->r[28] + 0x0000015Cu; /* 027BD870 */ rbrew_write32(cpu->mem, _t63, cpu->r[0]); /* 027BD874 */ Gambit_fn_02801A78(cpu); /* 027BD878 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BD87C */ _t64 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD87C */ _t65 = _t64 & 0x00000001u; /* 027BD87C */ if (_t65) goto L_027BD884; else goto L_027BD880; L_027BD880: ; // 0x27bd880 /* 027BD880 */ Gambit_fn_027BBE14(cpu); L_027BD884: ; // 0x27bd884 /* 027BD884 */ _t66 = cpu->r[28] + 0x00000160u; /* 027BD884 */ rbrew_write32(cpu->mem, _t66, cpu->r[3]); /* 027BD888 */ /* nop */ /* 027BD88C */ _t67 = cpu->r[1] + 0x00000044u; /* 027BD88C */ cpu->r[0] = rbrew_read32(cpu->mem, _t67); /* 027BD890 */ cpu->lr = cpu->r[0]; /* 027BD894 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BD898 */ return; } // fn_027BD89C @ 0x27bd89c void Gambit_fn_027BD89C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4; L_027BD89C: ; // 0x27bd89c /* 027BD89C */ cpu->r[0] = cpu->lr; /* 027BD8A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BD8A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BD8A0 */ cpu->r[1] = _t0; /* 027BD8A4 */ cpu->r[6] = 0x00000000u; /* 027BD8A8 */ _t1 = cpu->r[1] + 0x00000014u; /* 027BD8A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BD8AC */ cpu->r[31] = cpu->r[3]; /* 027BD8B0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BD8B4 */ cpu->r[5] = cpu->r[6]; /* 027BD8B8 */ _t2 = cpu->r[1] + 0x0000001Cu; /* 027BD8B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027BD8BC */ Gambit_fn_02838654(cpu); /* 027BD8C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BD8C4 */ Gambit_fn_02838564(cpu); /* 027BD8C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BD8CC */ cpu->r[4] = cpu->r[31] + 0x00000170u; /* 027BD8D0 */ Gambit_fn_02838874(cpu); /* 027BD8D4 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027BD8D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027BD8D8 */ _t4 = cpu->r[1] + 0x00000014u; /* 027BD8D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4); /* 027BD8DC */ cpu->lr = cpu->r[0]; /* 027BD8E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BD8E4 */ return; } // fn_027BD8A0 @ 0x27bd8a0 void Gambit_fn_027BD8A0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4; L_027BD8A0: ; // 0x27bd8a0 /* 027BD8A0 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027BD8A0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BD8A0 */ cpu->r[1] = _t0; /* 027BD8A4 */ cpu->r[6] = 0x00000000u; /* 027BD8A8 */ _t1 = cpu->r[1] + 0x00000014u; /* 027BD8A8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BD8AC */ cpu->r[31] = cpu->r[3]; /* 027BD8B0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BD8B4 */ cpu->r[5] = cpu->r[6]; /* 027BD8B8 */ _t2 = cpu->r[1] + 0x0000001Cu; /* 027BD8B8 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027BD8BC */ Gambit_fn_02838654(cpu); /* 027BD8C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BD8C4 */ Gambit_fn_02838564(cpu); /* 027BD8C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BD8CC */ cpu->r[4] = cpu->r[31] + 0x00000170u; /* 027BD8D0 */ Gambit_fn_02838874(cpu); /* 027BD8D4 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027BD8D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027BD8D8 */ _t4 = cpu->r[1] + 0x00000014u; /* 027BD8D8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4); /* 027BD8DC */ cpu->lr = cpu->r[0]; /* 027BD8E0 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027BD8E4 */ return; } // fn_027BD8E8 @ 0x27bd8e8 void Gambit_fn_027BD8E8(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; L_027BD8E8: ; // 0x27bd8e8 /* 027BD8E8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027BD8E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BD8E8 */ cpu->r[1] = _t0; /* 027BD8EC */ /* nop */ /* 027BD8F0 */ cpu->r[0] = cpu->lr; /* 027BD8F4 */ _t1 = cpu->r[1] + 0x00000024u; /* 027BD8F4 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BD8F8 */ cpu->r[29] = cpu->r[5]; /* 027BD8FC */ cpu->r[28] = cpu->r[4]; /* 027BD900 */ _t2 = cpu->r[28] + 0x00000000u; /* 027BD900 */ cpu->r[7] = rbrew_read8(cpu->mem, _t2); /* 027BD904 */ cpu->r[27] = cpu->r[3]; /* 027BD908 */ _t3 = cpu->r[27] + 0x00000000u; /* 027BD908 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[7]); /* 027BD90C */ _t4 = cpu->r[28] + 0x00000004u; /* 027BD90C */ cpu->r[8] = rbrew_read32(cpu->mem, _t4); /* 027BD910 */ _t5 = cpu->r[27] + 0x00000004u; /* 027BD910 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]); /* 027BD914 */ _t6 = cpu->r[28] + 0x00000008u; /* 027BD914 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027BD918 */ _t7 = cpu->r[27] + 0x00000008u; /* 027BD918 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]); /* 027BD91C */ _t8 = cpu->r[28] + 0x0000000Cu; /* 027BD91C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027BD920 */ _t9 = cpu->r[27] + 0x0000000Cu; /* 027BD920 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 027BD924 */ _t10 = cpu->r[28] + 0x00000014u; /* 027BD924 */ cpu->r[11] = rbrew_read32(cpu->mem, _t10); /* 027BD928 */ _t11 = cpu->r[11] + 0x00000014u; /* 027BD928 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11); /* 027BD92C */ cpu->ctr = cpu->r[12]; /* 027BD930 */ _t12 = cpu->r[27] + 0x00000010u; /* 027BD930 */ cpu->r[26] = rbrew_read32(cpu->mem, _t12); /* 027BD934 */ cpu->r[3] = cpu->r[28] + 0x00000010u; /* 027BD938 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD93C */ cpu->r[31] = 0x10110000u; /* 027BD940 */ _t13 = cpu->r[28] + 0x00000010u; /* 027BD940 */ cpu->r[10] = rbrew_read32(cpu->mem, _t13); /* 027BD944 */ _t14 = cpu->r[31] + 0x00007399u; /* 027BD944 */ cpu->r[31] = rbrew_read8(cpu->mem, _t14); /* 027BD948 */ _t15 = cpu->r[10] + 0x00000000u; /* 027BD948 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15); /* 027BD94C */ cpu->r[30] = 0x00000000u; /* 027BD950 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BD954 */ cpu->r[0] = 0x00080000u; /* 027BD958 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD958 */ _t17 = _t16 & 0x00000001u; /* 027BD958 */ if (_t17) goto L_027BD980; else goto L_027BD95C; L_027BD95C: ; // 0x27bd95c /* 027BD95C */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BD960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027BD964 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027BD968 */ _t18 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD968 */ _t19 = _t18 & 0x00000001u; /* 027BD968 */ if (_t19) goto L_027BD97C; else goto L_027BD96C; L_027BD96C: ; // 0x27bd96c /* 027BD96C */ _t20 = cpu->r[10] + 0x00000000u; /* 027BD96C */ cpu->r[5] = rbrew_read8(cpu->mem, _t20); /* 027BD970 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027BD974 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD974 */ _t22 = _t21 & 0x00000001u; /* 027BD974 */ if (_t22) goto L_027BD978; else goto L_027BD95C; L_027BD978: ; // 0x27bd978 /* 027BD978 */ goto L_027BD980; L_027BD97C: ; // 0x27bd97c /* 027BD97C */ cpu->r[30] = 0x00000000u; L_027BD980: ; // 0x27bd980 /* 027BD980 */ _t23 = cpu->r[27] + 0x00000018u; /* 027BD980 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23); /* 027BD984 */ _t24 = cpu->r[28] + 0x00000014u; /* 027BD984 */ cpu->r[6] = rbrew_read32(cpu->mem, _t24); /* 027BD988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027BD98C */ _t25 = cpu->r[6] + 0x00000014u; /* 027BD98C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BD990 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BD990 */ _t27 = _t26 & 0x00000001u; /* 027BD990 */ if (_t27) goto L_027BD998; else goto L_027BD994; L_027BD994: ; // 0x27bd994 /* 027BD994 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027BD998: ; // 0x27bd998 /* 027BD998 */ cpu->ctr = cpu->r[0]; /* 027BD99C */ cpu->r[3] = cpu->r[28] + 0x00000010u; /* 027BD9A0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD9A4 */ _t28 = cpu->r[28] + 0x00000010u; /* 027BD9A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t28); /* 027BD9A8 */ cpu->r[6] = 0x00000000u; /* 027BD9AC */ cpu->r[5] = cpu->r[30]; /* 027BD9B0 */ cpu->r[3] = cpu->r[26]; /* 027BD9B4 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BD9B8 */ _t29 = cpu->r[26] + cpu->r[30]; /* 027BD9B8 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[31]); /* 027BD9BC */ _t30 = cpu->r[28] + 0x00000060u; /* 027BD9BC */ cpu->r[8] = rbrew_read32(cpu->mem, _t30); /* 027BD9C0 */ _t31 = cpu->r[8] + 0x00000014u; /* 027BD9C0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31); /* 027BD9C4 */ cpu->ctr = cpu->r[9]; /* 027BD9C8 */ _t32 = cpu->r[27] + 0x0000005Cu; /* 027BD9C8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t32); /* 027BD9CC */ cpu->r[3] = cpu->r[28] + 0x0000005Cu; /* 027BD9D0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BD9D4 */ _t33 = cpu->r[28] + 0x0000005Cu; /* 027BD9D4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t33); /* 027BD9D8 */ _t34 = cpu->r[8] + 0x00000000u; /* 027BD9D8 */ cpu->r[10] = rbrew_read8(cpu->mem, _t34); /* 027BD9DC */ cpu->r[30] = 0x00000000u; /* 027BD9E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BD9E4 */ cpu->r[9] = 0x00080000u; /* 027BD9E8 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BD9E8 */ _t36 = _t35 & 0x00000001u; /* 027BD9E8 */ if (_t36) goto L_027BDA10; else goto L_027BD9EC; L_027BD9EC: ; // 0x27bd9ec /* 027BD9EC */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BD9F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[9]); /* 027BD9F4 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027BD9F8 */ _t37 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BD9F8 */ _t38 = _t37 & 0x00000001u; /* 027BD9F8 */ if (_t38) goto L_027BDA0C; else goto L_027BD9FC; L_027BD9FC: ; // 0x27bd9fc /* 027BD9FC */ _t39 = cpu->r[8] + 0x00000000u; /* 027BD9FC */ cpu->r[11] = rbrew_read8(cpu->mem, _t39); /* 027BDA00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]); /* 027BDA04 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDA04 */ _t41 = _t40 & 0x00000001u; /* 027BDA04 */ if (_t41) goto L_027BDA08; else goto L_027BD9EC; L_027BDA08: ; // 0x27bda08 /* 027BDA08 */ goto L_027BDA10; L_027BDA0C: ; // 0x27bda0c /* 027BDA0C */ cpu->r[30] = 0x00000000u; L_027BDA10: ; // 0x27bda10 /* 027BDA10 */ _t42 = cpu->r[27] + 0x00000064u; /* 027BDA10 */ cpu->r[6] = rbrew_read32(cpu->mem, _t42); /* 027BDA14 */ _t43 = cpu->r[28] + 0x00000060u; /* 027BDA14 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43); /* 027BDA18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]); /* 027BDA1C */ _t44 = cpu->r[12] + 0x00000014u; /* 027BDA1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44); /* 027BDA20 */ _t45 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BDA20 */ _t46 = _t45 & 0x00000001u; /* 027BDA20 */ if (_t46) goto L_027BDA28; else goto L_027BDA24; L_027BDA24: ; // 0x27bda24 /* 027BDA24 */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu; L_027BDA28: ; // 0x27bda28 /* 027BDA28 */ cpu->ctr = cpu->r[0]; /* 027BDA2C */ cpu->r[3] = cpu->r[28] + 0x0000005Cu; /* 027BDA30 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BDA34 */ _t47 = cpu->r[28] + 0x0000005Cu; /* 027BDA34 */ cpu->r[4] = rbrew_read32(cpu->mem, _t47); /* 027BDA38 */ cpu->r[6] = 0x00000000u; /* 027BDA3C */ cpu->r[5] = cpu->r[30]; /* 027BDA40 */ cpu->r[3] = cpu->r[26]; /* 027BDA44 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BDA48 */ _t48 = cpu->r[26] + cpu->r[30]; /* 027BDA48 */ rbrew_write8(cpu->mem, _t48, (uint8_t)cpu->r[31]); /* 027BDA4C */ _t49 = cpu->r[28] + 0x000000A8u; /* 027BDA4C */ cpu->r[5] = rbrew_read32(cpu->mem, _t49); /* 027BDA50 */ _t50 = cpu->r[27] + 0x000000A8u; /* 027BDA50 */ rbrew_write32(cpu->mem, _t50, cpu->r[5]); /* 027BDA54 */ _t51 = cpu->r[28] + 0x000000ACu; /* 027BDA54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51); /* 027BDA58 */ _t52 = cpu->r[27] + 0x000000ACu; /* 027BDA58 */ rbrew_write32(cpu->mem, _t52, cpu->r[0]); /* 027BDA5C */ _t53 = cpu->r[28] + 0x000000B0u; /* 027BDA5C */ cpu->r[7] = rbrew_read32(cpu->mem, _t53); /* 027BDA60 */ _t54 = cpu->r[27] + 0x000000B0u; /* 027BDA60 */ rbrew_write32(cpu->mem, _t54, cpu->r[7]); /* 027BDA64 */ _t55 = cpu->r[28] + 0x00000014u; /* 027BDA64 */ cpu->r[8] = rbrew_read32(cpu->mem, _t55); /* 027BDA68 */ _t56 = cpu->r[8] + 0x00000014u; /* 027BDA68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t56); /* 027BDA6C */ cpu->ctr = cpu->r[9]; /* 027BDA70 */ _t57 = cpu->r[27] + 0x00000010u; /* 027BDA70 */ cpu->r[26] = rbrew_read32(cpu->mem, _t57); /* 027BDA74 */ cpu->r[3] = cpu->r[28] + 0x00000010u; /* 027BDA78 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BDA7C */ _t58 = cpu->r[28] + 0x00000010u; /* 027BDA7C */ cpu->r[6] = rbrew_read32(cpu->mem, _t58); /* 027BDA80 */ _t59 = cpu->r[6] + 0x00000000u; /* 027BDA80 */ cpu->r[10] = rbrew_read8(cpu->mem, _t59); /* 027BDA84 */ cpu->r[30] = 0x00000000u; /* 027BDA88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BDA8C */ cpu->r[7] = 0x00080000u; /* 027BDA90 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDA90 */ _t61 = _t60 & 0x00000001u; /* 027BDA90 */ if (_t61) goto L_027BDAB8; else goto L_027BDA94; L_027BDA94: ; // 0x27bda94 /* 027BDA94 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BDA98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]); /* 027BDA9C */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027BDAA0 */ _t62 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BDAA0 */ _t63 = _t62 & 0x00000001u; /* 027BDAA0 */ if (_t63) goto L_027BDAB4; else goto L_027BDAA4; L_027BDAA4: ; // 0x27bdaa4 /* 027BDAA4 */ _t64 = cpu->r[6] + 0x00000000u; /* 027BDAA4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t64); /* 027BDAA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BDAAC */ _t65 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDAAC */ _t66 = _t65 & 0x00000001u; /* 027BDAAC */ if (_t66) goto L_027BDAB0; else goto L_027BDA94; L_027BDAB0: ; // 0x27bdab0 /* 027BDAB0 */ goto L_027BDAB8; L_027BDAB4: ; // 0x27bdab4 /* 027BDAB4 */ cpu->r[30] = 0x00000000u; L_027BDAB8: ; // 0x27bdab8 /* 027BDAB8 */ _t67 = cpu->r[27] + 0x00000018u; /* 027BDAB8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t67); /* 027BDABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[12]); /* 027BDAC0 */ _t68 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BDAC0 */ _t69 = _t68 & 0x00000001u; /* 027BDAC0 */ if (_t69) goto L_027BDAC8; else goto L_027BDAC4; L_027BDAC4: ; // 0x27bdac4 /* 027BDAC4 */ cpu->r[30] = cpu->r[12] + 0xFFFFFFFFu; L_027BDAC8: ; // 0x27bdac8 /* 027BDAC8 */ _t70 = cpu->r[28] + 0x00000014u; /* 027BDAC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70); /* 027BDACC */ _t71 = cpu->r[12] + 0x00000014u; /* 027BDACC */ cpu->r[5] = rbrew_read32(cpu->mem, _t71); /* 027BDAD0 */ cpu->ctr = cpu->r[5]; /* 027BDAD4 */ cpu->r[3] = cpu->r[28] + 0x00000010u; /* 027BDAD8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BDADC */ _t72 = cpu->r[28] + 0x00000010u; /* 027BDADC */ cpu->r[4] = rbrew_read32(cpu->mem, _t72); /* 027BDAE0 */ cpu->r[6] = 0x00000000u; /* 027BDAE4 */ cpu->r[5] = cpu->r[30]; /* 027BDAE8 */ cpu->r[3] = cpu->r[26]; /* 027BDAEC */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BDAF0 */ _t73 = cpu->r[26] + cpu->r[30]; /* 027BDAF0 */ rbrew_write8(cpu->mem, _t73, (uint8_t)cpu->r[31]); /* 027BDAF4 */ _t74 = cpu->r[28] + 0x00000060u; /* 027BDAF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t74); /* 027BDAF8 */ _t75 = cpu->r[6] + 0x00000014u; /* 027BDAF8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t75); /* 027BDAFC */ cpu->ctr = cpu->r[7]; /* 027BDB00 */ _t76 = cpu->r[27] + 0x0000005Cu; /* 027BDB00 */ cpu->r[26] = rbrew_read32(cpu->mem, _t76); /* 027BDB04 */ cpu->r[3] = cpu->r[28] + 0x0000005Cu; /* 027BDB08 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BDB0C */ _t77 = cpu->r[28] + 0x0000005Cu; /* 027BDB0C */ cpu->r[12] = rbrew_read32(cpu->mem, _t77); /* 027BDB10 */ _t78 = cpu->r[12] + 0x00000000u; /* 027BDB10 */ cpu->r[0] = rbrew_read8(cpu->mem, _t78); /* 027BDB14 */ cpu->r[30] = 0x00000000u; /* 027BDB18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BDB1C */ cpu->r[5] = 0x00080000u; /* 027BDB20 */ _t79 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDB20 */ _t80 = _t79 & 0x00000001u; /* 027BDB20 */ if (_t80) goto L_027BDB48; else goto L_027BDB24; L_027BDB24: ; // 0x27bdb24 /* 027BDB24 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BDB28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[5]); /* 027BDB2C */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027BDB30 */ _t81 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BDB30 */ _t82 = _t81 & 0x00000001u; /* 027BDB30 */ if (_t82) goto L_027BDB44; else goto L_027BDB34; L_027BDB34: ; // 0x27bdb34 /* 027BDB34 */ _t83 = cpu->r[12] + 0x00000000u; /* 027BDB34 */ cpu->r[9] = rbrew_read8(cpu->mem, _t83); /* 027BDB38 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BDB3C */ _t84 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDB3C */ _t85 = _t84 & 0x00000001u; /* 027BDB3C */ if (_t85) goto L_027BDB40; else goto L_027BDB24; L_027BDB40: ; // 0x27bdb40 /* 027BDB40 */ goto L_027BDB48; L_027BDB44: ; // 0x27bdb44 /* 027BDB44 */ cpu->r[30] = 0x00000000u; L_027BDB48: ; // 0x27bdb48 /* 027BDB48 */ _t86 = cpu->r[27] + 0x00000064u; /* 027BDB48 */ cpu->r[6] = rbrew_read32(cpu->mem, _t86); /* 027BDB4C */ _t87 = cpu->r[28] + 0x00000060u; /* 027BDB4C */ cpu->r[10] = rbrew_read32(cpu->mem, _t87); /* 027BDB50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[6]); /* 027BDB54 */ _t88 = cpu->r[10] + 0x00000014u; /* 027BDB54 */ cpu->r[0] = rbrew_read32(cpu->mem, _t88); /* 027BDB58 */ _t89 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BDB58 */ _t90 = _t89 & 0x00000001u; /* 027BDB58 */ if (_t90) goto L_027BDB60; else goto L_027BDB5C; L_027BDB5C: ; // 0x27bdb5c /* 027BDB5C */ cpu->r[30] = cpu->r[6] + 0xFFFFFFFFu; L_027BDB60: ; // 0x27bdb60 /* 027BDB60 */ cpu->ctr = cpu->r[0]; /* 027BDB64 */ cpu->r[3] = cpu->r[28] + 0x0000005Cu; /* 027BDB68 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BDB6C */ _t91 = cpu->r[28] + 0x0000005Cu; /* 027BDB6C */ cpu->r[4] = rbrew_read32(cpu->mem, _t91); /* 027BDB70 */ cpu->r[6] = 0x00000000u; /* 027BDB74 */ cpu->r[5] = cpu->r[30]; /* 027BDB78 */ cpu->r[3] = cpu->r[26]; /* 027BDB7C */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BDB80 */ _t92 = cpu->r[26] + cpu->r[30]; /* 027BDB80 */ rbrew_write8(cpu->mem, _t92, (uint8_t)cpu->r[31]); /* 027BDB84 */ _t93 = cpu->r[27] + 0x00000008u; /* 027BDB84 */ rbrew_write32(cpu->mem, _t93, cpu->r[29]); /* 027BDB88 */ /* nop */ /* 027BDB8C */ _t94 = cpu->r[1] + 0x00000024u; /* 027BDB8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t94); /* 027BDB90 */ cpu->lr = cpu->r[0]; /* 027BDB94 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027BDB98 */ return; } // fn_027BDB9C @ 0x27bdb9c void Gambit_fn_027BDB9C(CPUState* cpu) { uint32_t _t0, _t1; L_027BDB9C: ; // 0x27bdb9c /* 027BDB9C */ cpu->r[12] = 0x101D0000u; /* 027BDBA0 */ _t0 = cpu->r[12] + 0xFFFF93D4u; /* 027BDBA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027BDBA4 */ _t1 = cpu->r[12] + 0x0000015Cu; /* 027BDBA4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1); /* 027BDBA8 */ return; } // fn_027BDBAC @ 0x27bdbac void Gambit_fn_027BDBAC(CPUState* cpu) { uint32_t _t0, _t1; L_027BDBAC: ; // 0x27bdbac /* 027BDBAC */ cpu->r[12] = 0x101D0000u; /* 027BDBB0 */ _t0 = cpu->r[12] + 0xFFFF93D4u; /* 027BDBB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027BDBB4 */ _t1 = cpu->r[12] + 0x00000164u; /* 027BDBB4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t1); /* 027BDBB8 */ return; } // fn_027BDBBC @ 0x27bdbbc void Gambit_fn_027BDBBC(CPUState* cpu) { uint32_t _t0, _t1, _t2; L_027BDBBC: ; // 0x27bdbbc /* 027BDBBC */ cpu->r[3] = 0x101D0000u; /* 027BDBC0 */ _t0 = cpu->r[3] + 0xFFFF93D0u; /* 027BDBC0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027BDBC4 */ _t1 = cpu->r[3] + 0x00000000u; /* 027BDBC4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027BDBC8 */ _t2 = cpu->r[12] + 0x00000044u; /* 027BDBC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027BDBCC */ cpu->ctr = cpu->r[0]; /* 027BDBD0 */ rbrew_dispatch(cpu, cpu->ctr); return; } // fn_027BDBD4 @ 0x27bdbd4 void Gambit_fn_027BDBD4(CPUState* cpu) { uint32_t _t0; L_027BDBD4: ; // 0x27bdbd4 /* 027BDBD4 */ cpu->r[12] = 0x101D0000u; /* 027BDBD8 */ _t0 = cpu->r[12] + 0xFFFF93D4u; /* 027BDBD8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027BDBDC */ cpu->r[3] = cpu->r[12] + 0x00000170u; /* 027BDBE0 */ return; } // fn_027BDBE4 @ 0x27bdbe4 void Gambit_fn_027BDBE4(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_027BDBE4: ; // 0x27bdbe4 /* 027BDBE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDBE8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDBE8 */ _t1 = _t0 & 0x00000001u; /* 027BDBE8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDBE8 */ goto L_027BDBEC; L_027BDBEC: ; // 0x27bdbec /* 027BDBEC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDBEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDBF0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDBF0 */ _t3 = _t2 & 0x00000001u; /* 027BDBF0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDBF0 */ goto L_027BDBF4; L_027BDBF4: ; // 0x27bdbf4 /* 027BDBF4 */ 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_027BDBF8 @ 0x27bdbf8 void Gambit_fn_027BDBF8(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_027BDBF8: ; // 0x27bdbf8 /* 027BDBF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDBFC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDBFC */ _t1 = _t0 & 0x00000001u; /* 027BDBFC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDBFC */ goto L_027BDC00; L_027BDC00: ; // 0x27bdc00 /* 027BDC00 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDC00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDC04 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDC04 */ _t3 = _t2 & 0x00000001u; /* 027BDC04 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDC04 */ goto L_027BDC08; L_027BDC08: ; // 0x27bdc08 /* 027BDC08 */ 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_027BDC10 @ 0x27bdc10 void Gambit_fn_027BDC10(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027BDC10: ; // 0x27bdc10 /* 027BDC10 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BDC10 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BDC10 */ cpu->r[1] = _t0; /* 027BDC14 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BDC14 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BDC18 */ _t2 = cpu->r[1] + 0x00000008u; /* 027BDC18 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BDC1C */ cpu->r[30] = cpu->r[3]; /* 027BDC1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BDC20 */ cpu->r[31] = cpu->r[4]; /* 027BDC24 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BDC24 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BDC28 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDC28 */ _t5 = _t4 & 0x00000001u; /* 027BDC28 */ if (_t5) goto L_027BDC6C; else goto L_027BDC2C; L_027BDC2C: ; // 0x27bdc2c /* 027BDC2C */ cpu->r[0] = 0x10110000u; /* 027BDC30 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu; /* 027BDC34 */ cpu->r[0] = cpu->r[0] + 0xFFFFBB34u; /* 027BDC38 */ cpu->r[4] = 0x00000002u; /* 027BDC3C */ _t6 = cpu->r[30] + 0x00000020u; /* 027BDC3C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BDC40 */ Gambit_fn_02928E8C(cpu); /* 027BDC44 */ cpu->r[3] = cpu->r[30] + 0x000000C8u; /* 027BDC48 */ cpu->r[4] = 0x00000002u; /* 027BDC4C */ Gambit_fn_02928E8C(cpu); /* 027BDC50 */ cpu->r[3] = cpu->r[30]; /* 027BDC54 */ cpu->r[4] = 0x00000000u; /* 027BDC58 */ Gambit_fn_028136EC(cpu); /* 027BDC5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDC5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDC60 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDC60 */ _t8 = _t7 & 0x00000001u; /* 027BDC60 */ if (_t8) goto L_027BDC6C; else goto L_027BDC64; L_027BDC64: ; // 0x27bdc64 /* 027BDC64 */ cpu->r[3] = cpu->r[30]; /* 027BDC68 */ Gambit_fn_02801BB0(cpu); L_027BDC6C: ; // 0x27bdc6c /* 027BDC6C */ _t9 = cpu->r[1] + 0x00000014u; /* 027BDC6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027BDC70 */ _t10 = cpu->r[1] + 0x00000008u; /* 027BDC70 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10); /* 027BDC74 */ cpu->lr = cpu->r[0]; /* 027BDC78 */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027BDC78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027BDC7C */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BDC80 */ return; } // fn_027BDC84 @ 0x27bdc84 void Gambit_fn_027BDC84(CPUState* cpu) { L_027BDC84: ; // 0x27bdc84 /* 027BDC84 */ return; } // fn_027BDC88 @ 0x27bdc88 void Gambit_fn_027BDC88(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_027BDC88: ; // 0x27bdc88 /* 027BDC88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDC8C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDC8C */ _t1 = _t0 & 0x00000001u; /* 027BDC8C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDC8C */ goto L_027BDC90; L_027BDC90: ; // 0x27bdc90 /* 027BDC90 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDC90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDC94 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDC94 */ _t3 = _t2 & 0x00000001u; /* 027BDC94 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDC94 */ goto L_027BDC98; L_027BDC98: ; // 0x27bdc98 /* 027BDC98 */ 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_027BDC9C @ 0x27bdc9c void Gambit_fn_027BDC9C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027BDC9C: ; // 0x27bdc9c /* 027BDC9C */ _t0 = cpu->r[3] + 0x00000000u; /* 027BDC9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027BDCA0 */ _t1 = cpu->r[3] + 0x00000008u; /* 027BDCA0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027BDCA4 */ cpu->r[12] = cpu->r[11] + cpu->r[12]; /* 027BDCA8 */ cpu->r[11] = 0x10110000u; /* 027BDCAC */ _t2 = cpu->r[11] + 0x00007399u; /* 027BDCAC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027BDCB0 */ _t3 = cpu->r[12] + 0xFFFFFFFFu; /* 027BDCB0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]); /* 027BDCB4 */ return; } // fn_027BDCB8 @ 0x27bdcb8 void Gambit_fn_027BDCB8(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_027BDCB8: ; // 0x27bdcb8 /* 027BDCB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDCBC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDCBC */ _t1 = _t0 & 0x00000001u; /* 027BDCBC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDCBC */ goto L_027BDCC0; L_027BDCC0: ; // 0x27bdcc0 /* 027BDCC0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDCC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDCC4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDCC4 */ _t3 = _t2 & 0x00000001u; /* 027BDCC4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDCC4 */ goto L_027BDCC8; L_027BDCC8: ; // 0x27bdcc8 /* 027BDCC8 */ 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_027BDCCC @ 0x27bdccc void Gambit_fn_027BDCCC(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_027BDCCC: ; // 0x27bdccc /* 027BDCCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDCD0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDCD0 */ _t1 = _t0 & 0x00000001u; /* 027BDCD0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDCD0 */ goto L_027BDCD4; L_027BDCD4: ; // 0x27bdcd4 /* 027BDCD4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDCD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDCD8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDCD8 */ _t3 = _t2 & 0x00000001u; /* 027BDCD8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDCD8 */ goto L_027BDCDC; L_027BDCDC: ; // 0x27bdcdc /* 027BDCDC */ 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_027BDCE0 @ 0x27bdce0 void Gambit_fn_027BDCE0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10; L_027BDCE0: ; // 0x27bdce0 /* 027BDCE0 */ cpu->r[0] = cpu->lr; /* 027BDCE4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BDCE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BDCE4 */ cpu->r[1] = _t0; /* 027BDCE8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BDCE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BDCEC */ _t2 = cpu->r[1] + 0x00000008u; /* 027BDCEC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BDCF0 */ cpu->r[30] = cpu->r[3]; /* 027BDCF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BDCF4 */ cpu->r[31] = cpu->r[4]; /* 027BDCF8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BDCF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BDCFC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDCFC */ _t5 = _t4 & 0x00000001u; /* 027BDCFC */ if (_t5) goto L_027BDD1C; else goto L_027BDD00; L_027BDD00: ; // 0x27bdd00 /* 027BDD00 */ cpu->r[3] = cpu->r[30]; /* 027BDD04 */ cpu->r[4] = 0x00000000u; /* 027BDD08 */ Gambit_fn_02827FCC(cpu); /* 027BDD0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDD0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDD10 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDD10 */ _t7 = _t6 & 0x00000001u; /* 027BDD10 */ if (_t7) goto L_027BDD1C; else goto L_027BDD14; L_027BDD14: ; // 0x27bdd14 /* 027BDD14 */ cpu->r[3] = cpu->r[30]; /* 027BDD18 */ Gambit_fn_02801BB0(cpu); L_027BDD1C: ; // 0x27bdd1c /* 027BDD1C */ _t8 = cpu->r[1] + 0x00000014u; /* 027BDD1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027BDD20 */ _t9 = cpu->r[1] + 0x00000008u; /* 027BDD20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9); /* 027BDD24 */ cpu->lr = cpu->r[0]; /* 027BDD28 */ _t10 = cpu->r[1] + 0x0000000Cu; /* 027BDD28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10); /* 027BDD2C */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BDD30 */ return; } // fn_027BDCE4 @ 0x27bdce4 void Gambit_fn_027BDCE4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10; L_027BDCE4: ; // 0x27bdce4 /* 027BDCE4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BDCE4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BDCE4 */ cpu->r[1] = _t0; /* 027BDCE8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BDCE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BDCEC */ _t2 = cpu->r[1] + 0x00000008u; /* 027BDCEC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BDCF0 */ cpu->r[30] = cpu->r[3]; /* 027BDCF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BDCF4 */ cpu->r[31] = cpu->r[4]; /* 027BDCF8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BDCF8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BDCFC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDCFC */ _t5 = _t4 & 0x00000001u; /* 027BDCFC */ if (_t5) goto L_027BDD1C; else goto L_027BDD00; L_027BDD00: ; // 0x27bdd00 /* 027BDD00 */ cpu->r[3] = cpu->r[30]; /* 027BDD04 */ cpu->r[4] = 0x00000000u; /* 027BDD08 */ Gambit_fn_02827FCC(cpu); /* 027BDD0C */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDD0C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDD10 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDD10 */ _t7 = _t6 & 0x00000001u; /* 027BDD10 */ if (_t7) goto L_027BDD1C; else goto L_027BDD14; L_027BDD14: ; // 0x27bdd14 /* 027BDD14 */ cpu->r[3] = cpu->r[30]; /* 027BDD18 */ Gambit_fn_02801BB0(cpu); L_027BDD1C: ; // 0x27bdd1c /* 027BDD1C */ _t8 = cpu->r[1] + 0x00000014u; /* 027BDD1C */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027BDD20 */ _t9 = cpu->r[1] + 0x00000008u; /* 027BDD20 */ cpu->r[30] = rbrew_read32(cpu->mem, _t9); /* 027BDD24 */ cpu->lr = cpu->r[0]; /* 027BDD28 */ _t10 = cpu->r[1] + 0x0000000Cu; /* 027BDD28 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10); /* 027BDD2C */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BDD30 */ return; } // fn_027BDD34 @ 0x27bdd34 void Gambit_fn_027BDD34(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_027BDD34: ; // 0x27bdd34 /* 027BDD34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDD38 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDD38 */ _t1 = _t0 & 0x00000001u; /* 027BDD38 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDD38 */ goto L_027BDD3C; L_027BDD3C: ; // 0x27bdd3c /* 027BDD3C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027BDD3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDD40 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDD40 */ _t3 = _t2 & 0x00000001u; /* 027BDD40 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027BDD40 */ goto L_027BDD44; L_027BDD44: ; // 0x27bdd44 /* 027BDD44 */ 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_027BDD48 @ 0x27bdd48 void Gambit_fn_027BDD48(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027BDD48: ; // 0x27bdd48 /* 027BDD48 */ cpu->r[12] = 0x101D0000u; /* 027BDD4C */ _t0 = cpu->r[12] + 0xFFFFDAE4u; /* 027BDD4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027BDD50 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027BDD54 */ cpu->r[12] = 0x101D0000u; /* 027BDD58 */ cpu->r[12] = cpu->r[12] + 0xFFFFDD7Cu; /* 027BDD5C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDD5C */ _t2 = _t1 & 0x00000001u; /* 027BDD5C */ if (_t2) goto L_027BDD60; else goto L_027BDD78; L_027BDD60: ; // 0x27bdd60 /* 027BDD60 */ cpu->r[0] = 0x10110000u; /* 027BDD64 */ cpu->r[9] = 0x00000001u; /* 027BDD68 */ cpu->r[8] = 0x101D0000u; /* 027BDD6C */ cpu->r[0] = cpu->r[0] + 0xFFFFBB44u; /* 027BDD70 */ _t3 = cpu->r[8] + 0xFFFFDAE4u; /* 027BDD70 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]); /* 027BDD74 */ _t4 = cpu->r[12] + 0x00000000u; /* 027BDD74 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); L_027BDD78: ; // 0x27bdd78 /* 027BDD78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]); /* 027BDD7C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDD7C */ _t6 = _t5 & 0x00000001u; /* 027BDD7C */ if (_t6) goto L_027BDD80; else goto L_027BDD88; L_027BDD80: ; // 0x27bdd80 /* 027BDD80 */ cpu->r[3] = 0x00000001u; /* 027BDD84 */ return; L_027BDD88: ; // 0x27bdd88 /* 027BDD88 */ cpu->r[11] = 0x101D0000u; /* 027BDD8C */ _t7 = cpu->r[11] + 0xFFFFD868u; /* 027BDD8C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027BDD8C */ cpu->r[11] = _t7; /* 027BDD90 */ cpu->r[10] = 0x101D0000u; /* 027BDD94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BDD98 */ cpu->r[10] = cpu->r[10] + 0xFFFFDD70u; /* 027BDD9C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDD9C */ _t9 = _t8 & 0x00000001u; /* 027BDD9C */ if (_t9) goto L_027BDDA0; else goto L_027BDDB4; L_027BDDA0: ; // 0x27bdda0 /* 027BDDA0 */ cpu->r[12] = 0x10110000u; /* 027BDDA4 */ cpu->r[9] = 0x00000001u; /* 027BDDA8 */ cpu->r[12] = cpu->r[12] + 0xFFFFBAB4u; /* 027BDDAC */ _t10 = cpu->r[11] + 0x00000000u; /* 027BDDAC */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027BDDB0 */ _t11 = cpu->r[10] + 0x00000000u; /* 027BDDB0 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]); L_027BDDB4: ; // 0x27bddb4 /* 027BDDB4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]); /* 027BDDB8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDDB8 */ _t13 = _t12 & 0x00000001u; /* 027BDDB8 */ if (_t13) goto L_027BDDBC; else goto L_027BDDC4; L_027BDDBC: ; // 0x27bddbc /* 027BDDBC */ cpu->r[0] = 0x00000001u; /* 027BDDC0 */ goto L_027BDDFC; L_027BDDC4: ; // 0x27bddc4 /* 027BDDC4 */ cpu->r[8] = 0x101D0000u; /* 027BDDC8 */ _t14 = cpu->r[8] + 0xFFFFD4FCu; /* 027BDDC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027BDDC8 */ cpu->r[8] = _t14; /* 027BDDCC */ cpu->r[11] = 0x101D0000u; /* 027BDDD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BDDD4 */ cpu->r[11] = cpu->r[11] + 0xFFFFDD6Cu; /* 027BDDD8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDDD8 */ _t16 = _t15 & 0x00000001u; /* 027BDDD8 */ if (_t16) goto L_027BDDDC; else goto L_027BDDF0; L_027BDDDC: ; // 0x27bdddc /* 027BDDDC */ cpu->r[10] = 0x10110000u; /* 027BDDE0 */ cpu->r[9] = 0x00000001u; /* 027BDDE4 */ cpu->r[10] = cpu->r[10] + 0xFFFFBA44u; /* 027BDDE8 */ _t17 = cpu->r[8] + 0x00000000u; /* 027BDDE8 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]); /* 027BDDEC */ _t18 = cpu->r[11] + 0x00000000u; /* 027BDDEC */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); L_027BDDF0: ; // 0x27bddf0 /* 027BDDF0 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11]; /* 027BDDF4 */ cpu->r[0] = rbrew_clz32(cpu->r[12]); /* 027BDDF8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu); L_027BDDFC: ; // 0x27bddfc /* 027BDDFC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027BDE00 */ return; } // fn_027BDE04 @ 0x27bde04 void Gambit_fn_027BDE04(CPUState* cpu) { L_027BDE04: ; // 0x27bde04 /* 027BDE04 */ return; } // fn_027BDE08 @ 0x27bde08 void Gambit_fn_027BDE08(CPUState* cpu) { L_027BDE08: ; // 0x27bde08 /* 027BDE08 */ return; } // fn_027BDE0C @ 0x27bde0c void Gambit_fn_027BDE0C(CPUState* cpu) { L_027BDE0C: ; // 0x27bde0c /* 027BDE0C */ return; } // fn_027BDE34 @ 0x27bde34 void Gambit_fn_027BDE34(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; L_027BDE34: ; // 0x27bde34 /* 027BDE34 */ cpu->r[0] = cpu->lr; /* 027BDE38 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027BDE38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BDE38 */ cpu->r[1] = _t0; /* 027BDE3C */ _t1 = cpu->r[1] + 0x0000001Cu; /* 027BDE3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BDE40 */ _t2 = cpu->r[1] + 0x00000018u; /* 027BDE40 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BDE44 */ cpu->r[30] = cpu->r[5]; /* 027BDE48 */ cpu->r[31] = cpu->r[3]; /* 027BDE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BDE4C */ _t3 = cpu->r[1] + 0x00000014u; /* 027BDE4C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BDE50 */ _t4 = cpu->r[1] + 0x00000024u; /* 027BDE50 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BDE54 */ cpu->r[29] = cpu->r[4]; /* 027BDE58 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDE58 */ _t6 = _t5 & 0x00000001u; /* 027BDE58 */ if (_t6) goto L_027BDE5C; else goto L_027BDE6C; L_027BDE5C: ; // 0x27bde5c /* 027BDE5C */ cpu->r[3] = 0x00000010u; /* 027BDE60 */ Gambit_fn_02801A78(cpu); /* 027BDE64 */ cpu->r[31] = cpu->r[3]; /* 027BDE64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BDE68 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDE68 */ _t8 = _t7 & 0x00000001u; /* 027BDE68 */ if (_t8) goto L_027BDEC0; else goto L_027BDE6C; L_027BDE6C: ; // 0x27bde6c /* 027BDE6C */ _t9 = cpu->r[30] + 0x00000000u; /* 027BDE6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t9); /* 027BDE70 */ _t10 = cpu->r[1] + 0x00000008u; /* 027BDE70 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]); /* 027BDE74 */ _t11 = cpu->r[30] + 0x00000004u; /* 027BDE74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11); /* 027BDE78 */ cpu->r[3] = cpu->r[31]; /* 027BDE78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDE7C */ _t12 = cpu->r[1] + 0x0000000Cu; /* 027BDE7C */ rbrew_write32(cpu->mem, _t12, cpu->r[9]); /* 027BDE80 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDE80 */ _t14 = _t13 & 0x00000001u; /* 027BDE80 */ if (_t14) goto L_027BDE84; else goto L_027BDE94; L_027BDE84: ; // 0x27bde84 /* 027BDE84 */ cpu->r[3] = 0x00000010u; /* 027BDE88 */ Gambit_fn_02801A78(cpu); /* 027BDE8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDE90 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDE90 */ _t16 = _t15 & 0x00000001u; /* 027BDE90 */ if (_t16) goto L_027BDEB4; else goto L_027BDE94; L_027BDE94: ; // 0x27bde94 /* 027BDE94 */ cpu->r[10] = 0x10110000u; /* 027BDE98 */ _t17 = cpu->r[3] + 0x00000004u; /* 027BDE98 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]); /* 027BDE9C */ cpu->r[10] = cpu->r[10] + 0xFFFFBB84u; /* 027BDEA0 */ _t18 = cpu->r[3] + 0x00000000u; /* 027BDEA0 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); /* 027BDEA4 */ _t19 = cpu->r[1] + 0x00000008u; /* 027BDEA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19); /* 027BDEA8 */ _t20 = cpu->r[3] + 0x00000008u; /* 027BDEA8 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]); /* 027BDEAC */ _t21 = cpu->r[1] + 0x0000000Cu; /* 027BDEAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027BDEB0 */ _t22 = cpu->r[3] + 0x0000000Cu; /* 027BDEB0 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]); L_027BDEB4: ; // 0x27bdeb4 /* 027BDEB4 */ cpu->r[0] = 0x10110000u; /* 027BDEB8 */ cpu->r[0] = cpu->r[0] + 0xFFFFBB9Cu; /* 027BDEBC */ _t23 = cpu->r[31] + 0x00000000u; /* 027BDEBC */ rbrew_write32(cpu->mem, _t23, cpu->r[0]); L_027BDEC0: ; // 0x27bdec0 /* 027BDEC0 */ _t24 = cpu->r[1] + 0x00000014u; /* 027BDEC0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24); /* 027BDEC4 */ _t25 = cpu->r[1] + 0x00000024u; /* 027BDEC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BDEC8 */ _t26 = cpu->r[1] + 0x00000018u; /* 027BDEC8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26); /* 027BDECC */ cpu->lr = cpu->r[0]; /* 027BDED0 */ _t27 = cpu->r[1] + 0x0000001Cu; /* 027BDED0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27); /* 027BDED4 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027BDED8 */ return; } // fn_027BDE38 @ 0x27bde38 void Gambit_fn_027BDE38(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; L_027BDE38: ; // 0x27bde38 /* 027BDE38 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027BDE38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BDE38 */ cpu->r[1] = _t0; /* 027BDE3C */ _t1 = cpu->r[1] + 0x0000001Cu; /* 027BDE3C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BDE40 */ _t2 = cpu->r[1] + 0x00000018u; /* 027BDE40 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BDE44 */ cpu->r[30] = cpu->r[5]; /* 027BDE48 */ cpu->r[31] = cpu->r[3]; /* 027BDE48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BDE4C */ _t3 = cpu->r[1] + 0x00000014u; /* 027BDE4C */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027BDE50 */ _t4 = cpu->r[1] + 0x00000024u; /* 027BDE50 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BDE54 */ cpu->r[29] = cpu->r[4]; /* 027BDE58 */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDE58 */ _t6 = _t5 & 0x00000001u; /* 027BDE58 */ if (_t6) goto L_027BDE5C; else goto L_027BDE6C; L_027BDE5C: ; // 0x27bde5c /* 027BDE5C */ cpu->r[3] = 0x00000010u; /* 027BDE60 */ Gambit_fn_02801A78(cpu); /* 027BDE64 */ cpu->r[31] = cpu->r[3]; /* 027BDE64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BDE68 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDE68 */ _t8 = _t7 & 0x00000001u; /* 027BDE68 */ if (_t8) goto L_027BDEC0; else goto L_027BDE6C; L_027BDE6C: ; // 0x27bde6c /* 027BDE6C */ _t9 = cpu->r[30] + 0x00000000u; /* 027BDE6C */ cpu->r[8] = rbrew_read32(cpu->mem, _t9); /* 027BDE70 */ _t10 = cpu->r[1] + 0x00000008u; /* 027BDE70 */ rbrew_write32(cpu->mem, _t10, cpu->r[8]); /* 027BDE74 */ _t11 = cpu->r[30] + 0x00000004u; /* 027BDE74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11); /* 027BDE78 */ cpu->r[3] = cpu->r[31]; /* 027BDE78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDE7C */ _t12 = cpu->r[1] + 0x0000000Cu; /* 027BDE7C */ rbrew_write32(cpu->mem, _t12, cpu->r[9]); /* 027BDE80 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDE80 */ _t14 = _t13 & 0x00000001u; /* 027BDE80 */ if (_t14) goto L_027BDE84; else goto L_027BDE94; L_027BDE84: ; // 0x27bde84 /* 027BDE84 */ cpu->r[3] = 0x00000010u; /* 027BDE88 */ Gambit_fn_02801A78(cpu); /* 027BDE8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDE90 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDE90 */ _t16 = _t15 & 0x00000001u; /* 027BDE90 */ if (_t16) goto L_027BDEB4; else goto L_027BDE94; L_027BDE94: ; // 0x27bde94 /* 027BDE94 */ cpu->r[10] = 0x10110000u; /* 027BDE98 */ _t17 = cpu->r[3] + 0x00000004u; /* 027BDE98 */ rbrew_write32(cpu->mem, _t17, cpu->r[29]); /* 027BDE9C */ cpu->r[10] = cpu->r[10] + 0xFFFFBB84u; /* 027BDEA0 */ _t18 = cpu->r[3] + 0x00000000u; /* 027BDEA0 */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); /* 027BDEA4 */ _t19 = cpu->r[1] + 0x00000008u; /* 027BDEA4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t19); /* 027BDEA8 */ _t20 = cpu->r[3] + 0x00000008u; /* 027BDEA8 */ rbrew_write32(cpu->mem, _t20, cpu->r[12]); /* 027BDEAC */ _t21 = cpu->r[1] + 0x0000000Cu; /* 027BDEAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027BDEB0 */ _t22 = cpu->r[3] + 0x0000000Cu; /* 027BDEB0 */ rbrew_write32(cpu->mem, _t22, cpu->r[0]); L_027BDEB4: ; // 0x27bdeb4 /* 027BDEB4 */ cpu->r[0] = 0x10110000u; /* 027BDEB8 */ cpu->r[0] = cpu->r[0] + 0xFFFFBB9Cu; /* 027BDEBC */ _t23 = cpu->r[31] + 0x00000000u; /* 027BDEBC */ rbrew_write32(cpu->mem, _t23, cpu->r[0]); L_027BDEC0: ; // 0x27bdec0 /* 027BDEC0 */ _t24 = cpu->r[1] + 0x00000014u; /* 027BDEC0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t24); /* 027BDEC4 */ _t25 = cpu->r[1] + 0x00000024u; /* 027BDEC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BDEC8 */ _t26 = cpu->r[1] + 0x00000018u; /* 027BDEC8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t26); /* 027BDECC */ cpu->lr = cpu->r[0]; /* 027BDED0 */ _t27 = cpu->r[1] + 0x0000001Cu; /* 027BDED0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t27); /* 027BDED4 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027BDED8 */ return; } // fn_027BDEDC @ 0x27bdedc void Gambit_fn_027BDEDC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8; L_027BDEDC: ; // 0x27bdedc /* 027BDEDC */ cpu->r[0] = cpu->lr; /* 027BDEE0 */ _t0 = cpu->r[1] + 0x00000004u; /* 027BDEE0 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027BDEE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDEE8 */ _t1 = cpu->r[1] + 0xFFFFFFF8u; /* 027BDEE8 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027BDEE8 */ cpu->r[1] = _t1; /* 027BDEEC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDEEC */ _t3 = _t2 & 0x00000001u; /* 027BDEEC */ if (_t3) goto L_027BDEF0; else goto L_027BDF00; L_027BDEF0: ; // 0x27bdef0 /* 027BDEF0 */ cpu->r[3] = 0x00000008u; /* 027BDEF4 */ Gambit_fn_02801A78(cpu); /* 027BDEF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDEFC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDEFC */ _t5 = _t4 & 0x00000001u; /* 027BDEFC */ if (_t5) goto L_027BDF14; else goto L_027BDF00; L_027BDF00: ; // 0x27bdf00 /* 027BDF00 */ cpu->r[12] = 0x10110000u; /* 027BDF04 */ cpu->r[0] = 0x00000000u; /* 027BDF08 */ cpu->r[12] = cpu->r[12] + 0xFFFFBC9Cu; /* 027BDF0C */ _t6 = cpu->r[3] + 0x00000000u; /* 027BDF0C */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BDF10 */ _t7 = cpu->r[3] + 0x00000004u; /* 027BDF10 */ rbrew_write32(cpu->mem, _t7, cpu->r[12]); L_027BDF14: ; // 0x27bdf14 /* 027BDF14 */ _t8 = cpu->r[1] + 0x0000000Cu; /* 027BDF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027BDF18 */ cpu->lr = cpu->r[0]; /* 027BDF1C */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BDF20 */ return; } // fn_027BDEE8 @ 0x27bdee8 void Gambit_fn_027BDEE8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7; L_027BDEE8: ; // 0x27bdee8 /* 027BDEE8 */ _t0 = cpu->r[1] + 0xFFFFFFF8u; /* 027BDEE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BDEE8 */ cpu->r[1] = _t0; /* 027BDEEC */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDEEC */ _t2 = _t1 & 0x00000001u; /* 027BDEEC */ if (_t2) goto L_027BDEF0; else goto L_027BDF00; L_027BDEF0: ; // 0x27bdef0 /* 027BDEF0 */ cpu->r[3] = 0x00000008u; /* 027BDEF4 */ Gambit_fn_02801A78(cpu); /* 027BDEF8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDEFC */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDEFC */ _t4 = _t3 & 0x00000001u; /* 027BDEFC */ if (_t4) goto L_027BDF14; else goto L_027BDF00; L_027BDF00: ; // 0x27bdf00 /* 027BDF00 */ cpu->r[12] = 0x10110000u; /* 027BDF04 */ cpu->r[0] = 0x00000000u; /* 027BDF08 */ cpu->r[12] = cpu->r[12] + 0xFFFFBC9Cu; /* 027BDF0C */ _t5 = cpu->r[3] + 0x00000000u; /* 027BDF0C */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027BDF10 */ _t6 = cpu->r[3] + 0x00000004u; /* 027BDF10 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]); L_027BDF14: ; // 0x27bdf14 /* 027BDF14 */ _t7 = cpu->r[1] + 0x0000000Cu; /* 027BDF14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027BDF18 */ cpu->lr = cpu->r[0]; /* 027BDF1C */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 027BDF20 */ return; } // fn_027BDF24 @ 0x27bdf24 void Gambit_fn_027BDF24(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_027BDF24: ; // 0x27bdf24 /* 027BDF24 */ cpu->r[0] = cpu->lr; /* 027BDF28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BDF28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BDF28 */ cpu->r[1] = _t0; /* 027BDF2C */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BDF2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BDF30 */ _t2 = cpu->r[1] + 0x00000008u; /* 027BDF30 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BDF34 */ cpu->r[31] = cpu->r[3]; /* 027BDF34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BDF38 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BDF38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BDF3C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDF3C */ _t5 = _t4 & 0x00000001u; /* 027BDF3C */ if (_t5) goto L_027BDF40; else goto L_027BDF50; L_027BDF40: ; // 0x27bdf40 /* 027BDF40 */ cpu->r[3] = 0x0000002Cu; /* 027BDF44 */ Gambit_fn_02801A78(cpu); /* 027BDF48 */ cpu->r[31] = cpu->r[3]; /* 027BDF48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BDF4C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDF4C */ _t7 = _t6 & 0x00000001u; /* 027BDF4C */ if (_t7) goto L_027BDFEC; else goto L_027BDF50; L_027BDF50: ; // 0x27bdf50 /* 027BDF50 */ cpu->r[3] = cpu->r[31]; /* 027BDF54 */ Gambit_fn_0285827C(cpu); /* 027BDF58 */ cpu->r[11] = 0x10110000u; /* 027BDF5C */ cpu->r[30] = 0x00000000u; /* 027BDF60 */ _t8 = cpu->r[11] + 0xFFFFBE2Cu; /* 027BDF60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8); /* 027BDF64 */ cpu->r[0] = 0xFFFFFFFFu; /* 027BDF68 */ _t9 = cpu->r[31] + 0x00000020u; /* 027BDF68 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[30]); /* 027BDF6C */ cpu->r[12] = 0x10110000u; /* 027BDF70 */ _t10 = cpu->r[31] + 0x00000010u; /* 027BDF70 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]); /* 027BDF74 */ cpu->r[12] = cpu->r[12] + 0xFFFFBF54u; /* 027BDF78 */ _t11 = cpu->r[31] + 0x0000001Cu; /* 027BDF78 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); /* 027BDF7C */ _t12 = cpu->r[31] + 0x00000000u; /* 027BDF7C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]); /* 027BDF80 */ cpu->r[3] = cpu->r[31] + 0x00000024u; /* 027BDF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDF84 */ _t13 = cpu->r[31] + 0x00000014u; /* 027BDF84 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]); /* 027BDF88 */ _t14 = cpu->r[31] + 0x00000004u; /* 027BDF88 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]); /* 027BDF8C */ _t15 = cpu->r[31] + 0x00000008u; /* 027BDF8C */ rbrew_write32(cpu->mem, _t15, cpu->r[30]); /* 027BDF90 */ _t16 = cpu->r[31] + 0x00000018u; /* 027BDF90 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027BDF94 */ _t17 = cpu->r[31] + 0x0000000Cu; /* 027BDF94 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[30]); /* 027BDF98 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDF98 */ _t19 = _t18 & 0x00000001u; /* 027BDF98 */ if (_t19) goto L_027BDF9C; else goto L_027BDFAC; L_027BDF9C: ; // 0x27bdf9c /* 027BDF9C */ cpu->r[3] = 0x00000008u; /* 027BDFA0 */ Gambit_fn_02801A78(cpu); /* 027BDFA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDFA8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDFA8 */ _t21 = _t20 & 0x00000001u; /* 027BDFA8 */ if (_t21) goto L_027BDFB4; else goto L_027BDFAC; L_027BDFAC: ; // 0x27bdfac /* 027BDFAC */ _t22 = cpu->r[3] + 0x00000004u; /* 027BDFAC */ rbrew_write32(cpu->mem, _t22, cpu->r[30]); /* 027BDFB0 */ _t23 = cpu->r[3] + 0x00000000u; /* 027BDFB0 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]); L_027BDFB4: ; // 0x27bdfb4 /* 027BDFB4 */ cpu->r[3] = 0x101D0000u; /* 027BDFB8 */ _t24 = cpu->r[3] + 0xFFFF98F0u; /* 027BDFB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24); /* 027BDFBC */ Gambit_fn_02826F20(cpu); /* 027BDFC0 */ _t25 = cpu->r[3] + 0x0000000Cu; /* 027BDFC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 027BDFC4 */ _t26 = cpu->r[12] + 0x00000034u; /* 027BDFC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); /* 027BDFC8 */ cpu->ctr = cpu->r[0]; /* 027BDFCC */ cpu->r[4] = 0x00000030u; /* 027BDFD0 */ cpu->r[5] = 0x00000004u; /* 027BDFD4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BDFD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDFDC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDFDC */ _t28 = _t27 & 0x00000001u; /* 027BDFDC */ if (_t28) goto L_027BDFEC; else goto L_027BDFE0; L_027BDFE0: ; // 0x27bdfe0 /* 027BDFE0 */ _t29 = cpu->r[31] + 0x00000028u; /* 027BDFE0 */ rbrew_write32(cpu->mem, _t29, cpu->r[3]); /* 027BDFE4 */ cpu->r[0] = 0x0000000Cu; /* 027BDFE8 */ _t30 = cpu->r[31] + 0x00000024u; /* 027BDFE8 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]); L_027BDFEC: ; // 0x27bdfec /* 027BDFEC */ _t31 = cpu->r[1] + 0x00000014u; /* 027BDFEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027BDFF0 */ cpu->r[3] = cpu->r[31]; /* 027BDFF4 */ _t32 = cpu->r[1] + 0x0000000Cu; /* 027BDFF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32); /* 027BDFF8 */ cpu->lr = cpu->r[0]; /* 027BDFFC */ _t33 = cpu->r[1] + 0x00000008u; /* 027BDFFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t33); /* 027BE000 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BE004 */ return; } // fn_027BDF28 @ 0x27bdf28 void Gambit_fn_027BDF28(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_027BDF28: ; // 0x27bdf28 /* 027BDF28 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027BDF28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BDF28 */ cpu->r[1] = _t0; /* 027BDF2C */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027BDF2C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027BDF30 */ _t2 = cpu->r[1] + 0x00000008u; /* 027BDF30 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027BDF34 */ cpu->r[31] = cpu->r[3]; /* 027BDF34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BDF38 */ _t3 = cpu->r[1] + 0x00000014u; /* 027BDF38 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BDF3C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDF3C */ _t5 = _t4 & 0x00000001u; /* 027BDF3C */ if (_t5) goto L_027BDF40; else goto L_027BDF50; L_027BDF40: ; // 0x27bdf40 /* 027BDF40 */ cpu->r[3] = 0x0000002Cu; /* 027BDF44 */ Gambit_fn_02801A78(cpu); /* 027BDF48 */ cpu->r[31] = cpu->r[3]; /* 027BDF48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BDF4C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDF4C */ _t7 = _t6 & 0x00000001u; /* 027BDF4C */ if (_t7) goto L_027BDFEC; else goto L_027BDF50; L_027BDF50: ; // 0x27bdf50 /* 027BDF50 */ cpu->r[3] = cpu->r[31]; /* 027BDF54 */ Gambit_fn_0285827C(cpu); /* 027BDF58 */ cpu->r[11] = 0x10110000u; /* 027BDF5C */ cpu->r[30] = 0x00000000u; /* 027BDF60 */ _t8 = cpu->r[11] + 0xFFFFBE2Cu; /* 027BDF60 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t8); /* 027BDF64 */ cpu->r[0] = 0xFFFFFFFFu; /* 027BDF68 */ _t9 = cpu->r[31] + 0x00000020u; /* 027BDF68 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[30]); /* 027BDF6C */ cpu->r[12] = 0x10110000u; /* 027BDF70 */ _t10 = cpu->r[31] + 0x00000010u; /* 027BDF70 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]); /* 027BDF74 */ cpu->r[12] = cpu->r[12] + 0xFFFFBF54u; /* 027BDF78 */ _t11 = cpu->r[31] + 0x0000001Cu; /* 027BDF78 */ rbrew_write32(cpu->mem, _t11, cpu->r[0]); /* 027BDF7C */ _t12 = cpu->r[31] + 0x00000000u; /* 027BDF7C */ rbrew_write32(cpu->mem, _t12, cpu->r[12]); /* 027BDF80 */ cpu->r[3] = cpu->r[31] + 0x00000024u; /* 027BDF80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDF84 */ _t13 = cpu->r[31] + 0x00000014u; /* 027BDF84 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]); /* 027BDF88 */ _t14 = cpu->r[31] + 0x00000004u; /* 027BDF88 */ rbrew_write32(cpu->mem, _t14, cpu->r[30]); /* 027BDF8C */ _t15 = cpu->r[31] + 0x00000008u; /* 027BDF8C */ rbrew_write32(cpu->mem, _t15, cpu->r[30]); /* 027BDF90 */ _t16 = cpu->r[31] + 0x00000018u; /* 027BDF90 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027BDF94 */ _t17 = cpu->r[31] + 0x0000000Cu; /* 027BDF94 */ rbrew_write8(cpu->mem, _t17, (uint8_t)cpu->r[30]); /* 027BDF98 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDF98 */ _t19 = _t18 & 0x00000001u; /* 027BDF98 */ if (_t19) goto L_027BDF9C; else goto L_027BDFAC; L_027BDF9C: ; // 0x27bdf9c /* 027BDF9C */ cpu->r[3] = 0x00000008u; /* 027BDFA0 */ Gambit_fn_02801A78(cpu); /* 027BDFA4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDFA8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDFA8 */ _t21 = _t20 & 0x00000001u; /* 027BDFA8 */ if (_t21) goto L_027BDFB4; else goto L_027BDFAC; L_027BDFAC: ; // 0x27bdfac /* 027BDFAC */ _t22 = cpu->r[3] + 0x00000004u; /* 027BDFAC */ rbrew_write32(cpu->mem, _t22, cpu->r[30]); /* 027BDFB0 */ _t23 = cpu->r[3] + 0x00000000u; /* 027BDFB0 */ rbrew_write32(cpu->mem, _t23, cpu->r[30]); L_027BDFB4: ; // 0x27bdfb4 /* 027BDFB4 */ cpu->r[3] = 0x101D0000u; /* 027BDFB8 */ _t24 = cpu->r[3] + 0xFFFF98F0u; /* 027BDFB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t24); /* 027BDFBC */ Gambit_fn_02826F20(cpu); /* 027BDFC0 */ _t25 = cpu->r[3] + 0x0000000Cu; /* 027BDFC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t25); /* 027BDFC4 */ _t26 = cpu->r[12] + 0x00000034u; /* 027BDFC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); /* 027BDFC8 */ cpu->ctr = cpu->r[0]; /* 027BDFCC */ cpu->r[4] = 0x00000030u; /* 027BDFD0 */ cpu->r[5] = 0x00000004u; /* 027BDFD4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BDFD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BDFDC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BDFDC */ _t28 = _t27 & 0x00000001u; /* 027BDFDC */ if (_t28) goto L_027BDFEC; else goto L_027BDFE0; L_027BDFE0: ; // 0x27bdfe0 /* 027BDFE0 */ _t29 = cpu->r[31] + 0x00000028u; /* 027BDFE0 */ rbrew_write32(cpu->mem, _t29, cpu->r[3]); /* 027BDFE4 */ cpu->r[0] = 0x0000000Cu; /* 027BDFE8 */ _t30 = cpu->r[31] + 0x00000024u; /* 027BDFE8 */ rbrew_write32(cpu->mem, _t30, cpu->r[0]); L_027BDFEC: ; // 0x27bdfec /* 027BDFEC */ _t31 = cpu->r[1] + 0x00000014u; /* 027BDFEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027BDFF0 */ cpu->r[3] = cpu->r[31]; /* 027BDFF4 */ _t32 = cpu->r[1] + 0x0000000Cu; /* 027BDFF4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t32); /* 027BDFF8 */ cpu->lr = cpu->r[0]; /* 027BDFFC */ _t33 = cpu->r[1] + 0x00000008u; /* 027BDFFC */ cpu->r[30] = rbrew_read32(cpu->mem, _t33); /* 027BE000 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027BE004 */ return; } // fn_027BE008 @ 0x27be008 void Gambit_fn_027BE008(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_027BE008: ; // 0x27be008 /* 027BE008 */ cpu->r[0] = cpu->lr; /* 027BE00C */ _t0 = cpu->r[1] + 0x00000004u; /* 027BE00C */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027BE010 */ _t1 = cpu->r[1] + 0xFFFFFF88u; /* 027BE010 */ rbrew_write32(cpu->mem, _t1, cpu->r[1]); /* 027BE010 */ cpu->r[1] = _t1; /* 027BE014 */ _t2 = cpu->r[1] + 0x0000001Cu; /* 027BE014 */ rbrew_write32(cpu->mem, _t2, cpu->r[4]); /* 027BE018 */ _t3 = cpu->r[1] + 0x0000002Cu; /* 027BE018 */ rbrew_write32(cpu->mem, _t3, cpu->r[8]); /* 027BE01C */ _t4 = cpu->r[1] + 0x00000030u; /* 027BE01C */ rbrew_write32(cpu->mem, _t4, cpu->r[9]); /* 027BE020 */ _t5 = cpu->r[1] + 0x00000020u; /* 027BE020 */ rbrew_write32(cpu->mem, _t5, cpu->r[5]); /* 027BE024 */ _t6 = cpu->r[1] + 0x00000018u; /* 027BE024 */ rbrew_write32(cpu->mem, _t6, cpu->r[3]); /* 027BE028 */ _t7 = cpu->r[1] + 0x00000028u; /* 027BE028 */ rbrew_write32(cpu->mem, _t7, cpu->r[7]); /* 027BE02C */ _t8 = cpu->r[1] + 0x00000034u; /* 027BE02C */ rbrew_write32(cpu->mem, _t8, cpu->r[10]); /* 027BE030 */ _t9 = cpu->r[1] + 0x00000024u; /* 027BE030 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]); /* 027BE034 */ _t10 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BE034 */ _t11 = _t10 & 0x00000001u; /* 027BE034 */ if (_t11) goto L_027BE038; else goto L_027BE058; L_027BE038: ; // 0x27be038 /* 027BE038 */ _t12 = cpu->r[1] + 0x00000048u; /* 027BE038 */ rbrew_write_f64(cpu->mem, _t12, cpu->f[3]); /* 027BE03C */ _t13 = cpu->r[1] + 0x00000068u; /* 027BE03C */ rbrew_write_f64(cpu->mem, _t13, cpu->f[7]); /* 027BE040 */ _t14 = cpu->r[1] + 0x00000060u; /* 027BE040 */ rbrew_write_f64(cpu->mem, _t14, cpu->f[6]); /* 027BE044 */ _t15 = cpu->r[1] + 0x00000040u; /* 027BE044 */ rbrew_write_f64(cpu->mem, _t15, cpu->f[2]); /* 027BE048 */ _t16 = cpu->r[1] + 0x00000050u; /* 027BE048 */ rbrew_write_f64(cpu->mem, _t16, cpu->f[4]); /* 027BE04C */ _t17 = cpu->r[1] + 0x00000070u; /* 027BE04C */ rbrew_write_f64(cpu->mem, _t17, cpu->f[8]); /* 027BE050 */ _t18 = cpu->r[1] + 0x00000058u; /* 027BE050 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[5]); /* 027BE054 */ _t19 = cpu->r[1] + 0x00000038u; /* 027BE054 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[1]); L_027BE058: ; // 0x27be058 /* 027BE058 */ cpu->r[10] = cpu->r[1] + 0x00000080u; /* 027BE05C */ _t20 = cpu->r[3] + 0x00000000u; /* 027BE05C */ cpu->r[8] = rbrew_read32(cpu->mem, _t20); /* 027BE060 */ cpu->r[9] = cpu->r[1] + 0x00000018u; /* 027BE064 */ _t21 = cpu->r[1] + 0x0000000Cu; /* 027BE064 */ rbrew_write32(cpu->mem, _t21, cpu->r[10]); /* 027BE068 */ cpu->r[0] = 0x00000004u; /* 027BE06C */ _t22 = cpu->r[1] + 0x00000010u; /* 027BE06C */ rbrew_write32(cpu->mem, _t22, cpu->r[9]); /* 027BE070 */ cpu->r[12] = 0x00000000u; /* 027BE074 */ _t23 = cpu->r[1] + 0x00000008u; /* 027BE074 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[0]); /* 027BE078 */ _t24 = cpu->r[1] + 0x00000009u; /* 027BE078 */ rbrew_write8(cpu->mem, _t24, (uint8_t)cpu->r[12]); /* 027BE07C */ _t25 = cpu->r[8] + 0x00000064u; /* 027BE07C */ cpu->r[11] = rbrew_read32(cpu->mem, _t25); /* 027BE080 */ cpu->ctr = cpu->r[11]; /* 027BE084 */ cpu->r[7] = cpu->r[1] + 0x00000008u; /* 027BE088 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE08C */ _t26 = cpu->r[1] + 0x0000007Cu; /* 027BE08C */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); /* 027BE090 */ cpu->lr = cpu->r[0]; /* 027BE094 */ cpu->r[1] = cpu->r[1] + 0x00000078u; /* 027BE098 */ return; } // fn_027BE010 @ 0x27be010 void Gambit_fn_027BE010(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25; L_027BE010: ; // 0x27be010 /* 027BE010 */ _t0 = cpu->r[1] + 0xFFFFFF88u; /* 027BE010 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BE010 */ cpu->r[1] = _t0; /* 027BE014 */ _t1 = cpu->r[1] + 0x0000001Cu; /* 027BE014 */ rbrew_write32(cpu->mem, _t1, cpu->r[4]); /* 027BE018 */ _t2 = cpu->r[1] + 0x0000002Cu; /* 027BE018 */ rbrew_write32(cpu->mem, _t2, cpu->r[8]); /* 027BE01C */ _t3 = cpu->r[1] + 0x00000030u; /* 027BE01C */ rbrew_write32(cpu->mem, _t3, cpu->r[9]); /* 027BE020 */ _t4 = cpu->r[1] + 0x00000020u; /* 027BE020 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]); /* 027BE024 */ _t5 = cpu->r[1] + 0x00000018u; /* 027BE024 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]); /* 027BE028 */ _t6 = cpu->r[1] + 0x00000028u; /* 027BE028 */ rbrew_write32(cpu->mem, _t6, cpu->r[7]); /* 027BE02C */ _t7 = cpu->r[1] + 0x00000034u; /* 027BE02C */ rbrew_write32(cpu->mem, _t7, cpu->r[10]); /* 027BE030 */ _t8 = cpu->r[1] + 0x00000024u; /* 027BE030 */ rbrew_write32(cpu->mem, _t8, cpu->r[6]); /* 027BE034 */ _t9 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BE034 */ _t10 = _t9 & 0x00000001u; /* 027BE034 */ if (_t10) goto L_027BE038; else goto L_027BE058; L_027BE038: ; // 0x27be038 /* 027BE038 */ _t11 = cpu->r[1] + 0x00000048u; /* 027BE038 */ rbrew_write_f64(cpu->mem, _t11, cpu->f[3]); /* 027BE03C */ _t12 = cpu->r[1] + 0x00000068u; /* 027BE03C */ rbrew_write_f64(cpu->mem, _t12, cpu->f[7]); /* 027BE040 */ _t13 = cpu->r[1] + 0x00000060u; /* 027BE040 */ rbrew_write_f64(cpu->mem, _t13, cpu->f[6]); /* 027BE044 */ _t14 = cpu->r[1] + 0x00000040u; /* 027BE044 */ rbrew_write_f64(cpu->mem, _t14, cpu->f[2]); /* 027BE048 */ _t15 = cpu->r[1] + 0x00000050u; /* 027BE048 */ rbrew_write_f64(cpu->mem, _t15, cpu->f[4]); /* 027BE04C */ _t16 = cpu->r[1] + 0x00000070u; /* 027BE04C */ rbrew_write_f64(cpu->mem, _t16, cpu->f[8]); /* 027BE050 */ _t17 = cpu->r[1] + 0x00000058u; /* 027BE050 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[5]); /* 027BE054 */ _t18 = cpu->r[1] + 0x00000038u; /* 027BE054 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[1]); L_027BE058: ; // 0x27be058 /* 027BE058 */ cpu->r[10] = cpu->r[1] + 0x00000080u; /* 027BE05C */ _t19 = cpu->r[3] + 0x00000000u; /* 027BE05C */ cpu->r[8] = rbrew_read32(cpu->mem, _t19); /* 027BE060 */ cpu->r[9] = cpu->r[1] + 0x00000018u; /* 027BE064 */ _t20 = cpu->r[1] + 0x0000000Cu; /* 027BE064 */ rbrew_write32(cpu->mem, _t20, cpu->r[10]); /* 027BE068 */ cpu->r[0] = 0x00000004u; /* 027BE06C */ _t21 = cpu->r[1] + 0x00000010u; /* 027BE06C */ rbrew_write32(cpu->mem, _t21, cpu->r[9]); /* 027BE070 */ cpu->r[12] = 0x00000000u; /* 027BE074 */ _t22 = cpu->r[1] + 0x00000008u; /* 027BE074 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]); /* 027BE078 */ _t23 = cpu->r[1] + 0x00000009u; /* 027BE078 */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[12]); /* 027BE07C */ _t24 = cpu->r[8] + 0x00000064u; /* 027BE07C */ cpu->r[11] = rbrew_read32(cpu->mem, _t24); /* 027BE080 */ cpu->ctr = cpu->r[11]; /* 027BE084 */ cpu->r[7] = cpu->r[1] + 0x00000008u; /* 027BE088 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE08C */ _t25 = cpu->r[1] + 0x0000007Cu; /* 027BE08C */ cpu->r[0] = rbrew_read32(cpu->mem, _t25); /* 027BE090 */ cpu->lr = cpu->r[0]; /* 027BE094 */ cpu->r[1] = cpu->r[1] + 0x00000078u; /* 027BE098 */ return; } // fn_027BE09C @ 0x27be09c void Gambit_fn_027BE09C(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; L_027BE09C: ; // 0x27be09c /* 027BE09C */ _t0 = cpu->r[1] + 0xFFFFFF30u; /* 027BE09C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BE09C */ cpu->r[1] = _t0; /* 027BE0A0 */ cpu->r[0] = cpu->lr; /* 027BE0A4 */ /* nop */ /* 027BE0A8 */ cpu->r[30] = cpu->r[4]; /* 027BE0AC */ cpu->r[28] = cpu->r[5]; /* 027BE0B0 */ cpu->r[31] = cpu->r[7]; /* 027BE0B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BE0B4 */ cpu->r[4] = 0x00000000u; /* 027BE0B8 */ _t1 = cpu->r[1] + 0x000000D4u; /* 027BE0B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BE0BC */ cpu->r[29] = cpu->r[6]; /* 027BE0C0 */ _t2 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE0C0 */ _t3 = _t2 & 0x00000001u; /* 027BE0C0 */ if (_t3) goto L_027BE0C4; else goto L_027BE130; L_027BE0C4: ; // 0x27be0c4 /* 027BE0C4 */ _t4 = cpu->r[3] + 0x00000024u; /* 027BE0C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4); /* 027BE0C8 */ cpu->r[11] = cpu->r[1] + 0x00000080u; /* 027BE0CC */ cpu->ctr = cpu->r[31]; /* 027BE0D0 */ _t5 = cpu->r[3] + 0x00000028u; /* 027BE0D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5); /* 027BE0D4 */ cpu->r[7] = cpu->r[11]; /* 027BE0D8 */ cpu->r[10] = 0x00000000u; L_027BE0DC: ; // 0x27be0dc /* 027BE0DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x0000000Cu); /* 027BE0E0 */ cpu->r[9] = cpu->r[11]; /* 027BE0E4 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE0E4 */ _t7 = _t6 & 0x00000001u; /* 027BE0E4 */ if (_t7) goto L_027BE0E8; else goto L_027BE0EC; L_027BE0E8: ; // 0x27be0e8 /* 027BE0E8 */ cpu->r[9] = cpu->r[7]; L_027BE0EC: ; // 0x27be0ec /* 027BE0EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]); /* 027BE0F0 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE0F0 */ _t9 = _t8 & 0x00000001u; /* 027BE0F0 */ if (_t9) goto L_027BE0F4; else goto L_027BE114; L_027BE0F4: ; // 0x27be0f4 /* 027BE0F4 */ _t10 = cpu->r[8] + cpu->r[10]; /* 027BE0F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027BE0F8 */ _t11 = cpu->r[12] + 0x00000000u; /* 027BE0F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027BE0FC */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BE100 */ cpu->r[7] = cpu->r[7] + 0x00000004u; /* 027BE104 */ cpu->r[10] = cpu->r[10] + 0x00000004u; /* 027BE108 */ _t12 = cpu->r[9] + 0x00000000u; /* 027BE108 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]); /* 027BE10C */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BE10C */ _t13 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BE10C */ _t14 = _t13 >> (0x00000002u & 31u); /* 027BE10C */ _t15 = _t14 & 0x00000001u; /* 027BE10C */ if (_t15) goto L_027BE0DC; else goto L_027BE110; L_027BE110: ; // 0x27be110 /* 027BE110 */ goto L_027BE130; L_027BE114: ; // 0x27be114 /* 027BE114 */ _t16 = cpu->r[8] + 0x00000000u; /* 027BE114 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16); /* 027BE118 */ _t17 = cpu->r[12] + 0x00000000u; /* 027BE118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027BE11C */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BE120 */ cpu->r[7] = cpu->r[7] + 0x00000004u; /* 027BE124 */ cpu->r[10] = cpu->r[10] + 0x00000004u; /* 027BE128 */ _t18 = cpu->r[9] + 0x00000000u; /* 027BE128 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]); /* 027BE12C */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BE12C */ _t19 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BE12C */ _t20 = _t19 >> (0x00000002u & 31u); /* 027BE12C */ _t21 = _t20 & 0x00000001u; /* 027BE12C */ if (_t21) goto L_027BE0DC; else goto L_027BE130; L_027BE130: ; // 0x27be130 /* 027BE130 */ cpu->r[3] = cpu->r[30]; /* 027BE134 */ Gambit_fn_027C274C(cpu); /* 027BE138 */ cpu->r[26] = cpu->r[3]; /* 027BE13C */ _t22 = cpu->r[26] + 0x00000004u; /* 027BE13C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027BE140 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BE144 */ _t23 = cpu->r[26] + 0x00000000u; /* 027BE144 */ cpu->r[5] = rbrew_read32(cpu->mem, _t23); /* 027BE148 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE148 */ _t25 = _t24 & 0x00000001u; /* 027BE148 */ if (_t25) goto L_027BE14C; else goto L_027BE164; L_027BE14C: ; // 0x27be14c /* 027BE14C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Cu); /* 027BE150 */ cpu->r[11] = cpu->r[1] + 0x00000080u; /* 027BE154 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE154 */ _t27 = _t26 & 0x00000001u; /* 027BE154 */ if (_t27) goto L_027BE158; else goto L_027BE160; L_027BE158: ; // 0x27be158 /* 027BE158 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BE15C */ cpu->r[11] = cpu->r[11] + cpu->r[5]; L_027BE160: ; // 0x27be160 /* 027BE160 */ _t28 = cpu->r[11] + 0x00000000u; /* 027BE160 */ cpu->r[5] = rbrew_read32(cpu->mem, _t28); L_027BE164: ; // 0x27be164 /* 027BE164 */ _t29 = cpu->r[30] + 0x00000004u; /* 027BE164 */ cpu->r[0] = rbrew_read16(cpu->mem, _t29); /* 027BE168 */ cpu->r[30] = 0x10110000u; /* 027BE16C */ cpu->r[8] = 0x00000020u; /* 027BE170 */ _t30 = cpu->r[30] + 0x0000739Au; /* 027BE170 */ cpu->r[30] = rbrew_read16(cpu->mem, _t30); /* 027BE174 */ cpu->r[9] = 0x10110000u; /* 027BE178 */ _t31 = cpu->r[1] + 0x00000010u; /* 027BE178 */ rbrew_write32(cpu->mem, _t31, cpu->r[8]); /* 027BE17C */ cpu->r[9] = cpu->r[9] + 0xFFFFBD24u; /* 027BE180 */ _t32 = cpu->r[1] + 0x00000040u; /* 027BE180 */ rbrew_write16(cpu->mem, _t32, (uint16_t)cpu->r[30]); /* 027BE184 */ cpu->r[12] = 0x10110000u; /* 027BE188 */ cpu->r[10] = cpu->r[1] + 0x00000040u; /* 027BE18C */ _t33 = cpu->r[1] + 0x0000000Cu; /* 027BE18C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]); /* 027BE190 */ cpu->r[9] = 0x10110000u; /* 027BE194 */ _t34 = cpu->r[1] + 0x00000034u; /* 027BE194 */ rbrew_write32(cpu->mem, _t34, cpu->r[10]); /* 027BE198 */ cpu->r[9] = cpu->r[9] + 0xFFFFBD9Cu; /* 027BE19C */ _t35 = cpu->r[12] + 0x00007399u; /* 027BE19C */ cpu->r[12] = rbrew_read8(cpu->mem, _t35); /* 027BE1A0 */ cpu->r[7] = cpu->r[1] + 0x00000014u; /* 027BE1A4 */ _t36 = cpu->r[1] + 0x00000038u; /* 027BE1A4 */ rbrew_write32(cpu->mem, _t36, cpu->r[9]); /* 027BE1A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000014u); /* 027BE1AC */ _t37 = cpu->r[1] + 0x00000033u; /* 027BE1AC */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[12]); /* 027BE1B0 */ cpu->r[27] = 0x00000000u; /* 027BE1B4 */ _t38 = cpu->r[1] + 0x0000003Cu; /* 027BE1B4 */ rbrew_write32(cpu->mem, _t38, cpu->r[8]); /* 027BE1B8 */ _t39 = cpu->r[1] + 0x00000008u; /* 027BE1B8 */ rbrew_write32(cpu->mem, _t39, cpu->r[7]); /* 027BE1BC */ _t40 = cpu->r[1] + 0x0000007Eu; /* 027BE1BC */ rbrew_write16(cpu->mem, _t40, (uint16_t)cpu->r[30]); /* 027BE1C0 */ _t41 = cpu->r[1] + 0x00000014u; /* 027BE1C0 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[12]); /* 027BE1C4 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE1C4 */ _t43 = _t42 & 0x00000001u; /* 027BE1C4 */ if (_t43) goto L_027BE1C8; else goto L_027BE240; L_027BE1C8: ; // 0x27be1c8 /* 027BE1C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000013u); /* 027BE1CC */ _t44 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE1CC */ _t45 = _t44 & 0x00000001u; /* 027BE1CC */ if (_t45) goto L_027BE1EC; else goto L_027BE1D0; L_027BE1D0: ; // 0x27be1d0 /* 027BE1D0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BE1D4 */ cpu->r[6] = cpu->r[12] + 0x10110000u; /* 027BE1D8 */ _t46 = cpu->r[6] + 0xFFFFBE30u; /* 027BE1D8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46); /* 027BE1DC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE1E0 */ _t47 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BE1E0 */ _t48 = _t47 & 0x00000001u; /* 027BE1E0 */ if (_t48) goto L_027BE1E4; // else: addr-0 trap, fall-through L_027BE1E4: ; // 0x27be1e4 /* 027BE1E4 */ Gambit_fn_0282A5F4(cpu); /* 027BE1E8 */ _t49 = cpu->r[1] + 0x00000038u; /* 027BE1E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49); L_027BE1EC: ; // 0x27be1ec /* 027BE1EC */ _t50 = cpu->r[9] + 0x00000014u; /* 027BE1EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t50); /* 027BE1F0 */ cpu->ctr = cpu->r[0]; /* 027BE1F4 */ cpu->r[3] = cpu->r[1] + 0x00000034u; /* 027BE1F8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE1FC */ _t51 = cpu->r[1] + 0x0000000Cu; /* 027BE1FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t51); /* 027BE200 */ _t52 = cpu->r[8] + 0x00000014u; /* 027BE200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52); /* 027BE204 */ cpu->ctr = cpu->r[0]; /* 027BE208 */ _t53 = cpu->r[1] + 0x00000034u; /* 027BE208 */ cpu->r[31] = rbrew_read32(cpu->mem, _t53); /* 027BE20C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE210 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE214 */ _t54 = cpu->r[1] + 0x0000003Cu; /* 027BE214 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54); /* 027BE218 */ cpu->r[6] = 0xFFFFFFFFu; /* 027BE21C */ _t55 = cpu->r[1] + 0x00000008u; /* 027BE21C */ cpu->r[5] = rbrew_read32(cpu->mem, _t55); /* 027BE220 */ cpu->r[3] = cpu->r[31]; /* 027BE224 */ Gambit_fn_0282C89C(cpu); /* 027BE228 */ _t56 = cpu->r[26] + 0x00000008u; /* 027BE228 */ cpu->r[0] = rbrew_read8(cpu->mem, _t56); /* 027BE22C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BE230 */ cpu->r[27] = cpu->r[3]; /* 027BE234 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE234 */ _t58 = _t57 & 0x00000001u; /* 027BE234 */ if (_t58) goto L_027BE240; else goto L_027BE238; L_027BE238: ; // 0x27be238 /* 027BE238 */ cpu->r[3] = cpu->r[1] + 0x00000034u; /* 027BE23C */ Gambit_fn_02800614(cpu); L_027BE240: ; // 0x27be240 /* 027BE240 */ _t59 = cpu->r[28] + 0x00000004u; /* 027BE240 */ cpu->r[5] = rbrew_read32(cpu->mem, _t59); /* 027BE244 */ _t60 = cpu->r[5] + 0x00000014u; /* 027BE244 */ cpu->r[6] = rbrew_read32(cpu->mem, _t60); /* 027BE248 */ cpu->ctr = cpu->r[6]; /* 027BE24C */ _t61 = cpu->r[28] + 0x00000000u; /* 027BE24C */ cpu->r[25] = rbrew_read32(cpu->mem, _t61); /* 027BE250 */ cpu->r[26] = cpu->r[27]; /* 027BE254 */ cpu->r[3] = cpu->r[28]; /* 027BE258 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE25C */ _t62 = cpu->r[28] + 0x00000000u; /* 027BE25C */ cpu->r[7] = rbrew_read32(cpu->mem, _t62); /* 027BE260 */ _t63 = cpu->r[7] + 0x00000000u; /* 027BE260 */ cpu->r[0] = rbrew_read16(cpu->mem, _t63); /* 027BE264 */ cpu->r[31] = 0x00000000u; /* 027BE268 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027BE26C */ cpu->r[0] = 0x00080000u; /* 027BE270 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE270 */ _t65 = _t64 & 0x00000001u; /* 027BE270 */ if (_t65) goto L_027BE298; else goto L_027BE274; L_027BE274: ; // 0x27be274 /* 027BE274 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027BE278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027BE27C */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027BE280 */ _t66 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE280 */ _t67 = _t66 & 0x00000001u; /* 027BE280 */ if (_t67) goto L_027BE294; else goto L_027BE284; L_027BE284: ; // 0x27be284 /* 027BE284 */ _t68 = cpu->r[7] + 0x00000000u; /* 027BE284 */ cpu->r[8] = rbrew_read16(cpu->mem, _t68); /* 027BE288 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027BE28C */ _t69 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE28C */ _t70 = _t69 & 0x00000001u; /* 027BE28C */ if (_t70) goto L_027BE290; else goto L_027BE274; L_027BE290: ; // 0x27be290 /* 027BE290 */ goto L_027BE298; L_027BE294: ; // 0x27be294 /* 027BE294 */ cpu->r[31] = 0x00000000u; L_027BE298: ; // 0x27be298 /* 027BE298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE29C */ _t71 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE29C */ _t72 = _t71 & 0x00000001u; /* 027BE29C */ if (_t72) goto L_027BE2A0; else goto L_027BE2B0; L_027BE2A0: ; // 0x27be2a0 /* 027BE2A0 */ cpu->r[11] = cpu->r[31] + cpu->r[29]; /* 027BE2A4 */ cpu->r[29] = cpu->r[11] + 0x00000001u; /* 027BE2A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE2A8 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE2A8 */ _t74 = _t73 & 0x00000001u; /* 027BE2A8 */ if (_t74) goto L_027BE2AC; else goto L_027BE2B0; L_027BE2AC: ; // 0x27be2ac /* 027BE2AC */ cpu->r[29] = 0x00000000u; L_027BE2B0: ; // 0x27be2b0 /* 027BE2B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BE2B4 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE2B4 */ _t76 = _t75 & 0x00000001u; /* 027BE2B4 */ if (_t76) goto L_027BE2B8; else goto L_027BE308; L_027BE2B8: ; // 0x27be2b8 /* 027BE2B8 */ _t77 = cpu->r[1] + 0x00000038u; /* 027BE2B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t77); /* 027BE2BC */ _t78 = cpu->r[12] + 0x00000014u; /* 027BE2BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t78); /* 027BE2C0 */ cpu->ctr = cpu->r[0]; /* 027BE2C4 */ cpu->r[3] = cpu->r[1] + 0x00000034u; /* 027BE2C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE2CC */ _t79 = cpu->r[1] + 0x00000034u; /* 027BE2CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t79); /* 027BE2D0 */ _t80 = cpu->r[11] + 0x00000000u; /* 027BE2D0 */ cpu->r[9] = rbrew_read16(cpu->mem, _t80); /* 027BE2D4 */ cpu->r[26] = 0x00000000u; /* 027BE2D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]); /* 027BE2DC */ cpu->r[5] = 0x00080000u; /* 027BE2E0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE2E0 */ _t82 = _t81 & 0x00000001u; /* 027BE2E0 */ if (_t82) goto L_027BE308; else goto L_027BE2E4; L_027BE2E4: ; // 0x27be2e4 /* 027BE2E4 */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027BE2E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[5]); /* 027BE2EC */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027BE2F0 */ _t83 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE2F0 */ _t84 = _t83 & 0x00000001u; /* 027BE2F0 */ if (_t84) goto L_027BE304; else goto L_027BE2F4; L_027BE2F4: ; // 0x27be2f4 /* 027BE2F4 */ _t85 = cpu->r[11] + 0x00000000u; /* 027BE2F4 */ cpu->r[10] = rbrew_read16(cpu->mem, _t85); /* 027BE2F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]); /* 027BE2FC */ _t86 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE2FC */ _t87 = _t86 & 0x00000001u; /* 027BE2FC */ if (_t87) goto L_027BE300; else goto L_027BE2E4; L_027BE300: ; // 0x27be300 /* 027BE300 */ goto L_027BE308; L_027BE304: ; // 0x27be304 /* 027BE304 */ cpu->r[26] = 0x00000000u; L_027BE308: ; // 0x27be308 /* 027BE308 */ _t88 = cpu->r[28] + 0x00000008u; /* 027BE308 */ cpu->r[12] = rbrew_read32(cpu->mem, _t88); /* 027BE30C */ cpu->r[10] = cpu->r[12] - cpu->r[29]; /* 027BE310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[10]); /* 027BE314 */ _t89 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE314 */ _t90 = _t89 & 0x00000001u; /* 027BE314 */ if (_t90) goto L_027BE31C; else goto L_027BE318; L_027BE318: ; // 0x27be318 /* 027BE318 */ cpu->r[26] = cpu->r[10] + 0xFFFFFFFFu; L_027BE31C: ; // 0x27be31c /* 027BE31C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BE320 */ _t91 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE320 */ _t92 = _t91 & 0x00000001u; /* 027BE320 */ if (_t92) goto L_027BE324; else goto L_027BE368; L_027BE324: ; // 0x27be324 /* 027BE324 */ _t93 = cpu->r[1] + 0x00000038u; /* 027BE324 */ cpu->r[6] = rbrew_read32(cpu->mem, _t93); /* 027BE328 */ _t94 = cpu->r[6] + 0x00000014u; /* 027BE328 */ cpu->r[8] = rbrew_read32(cpu->mem, _t94); /* 027BE32C */ cpu->r[0] = rbrew_rlwinm(cpu->r[29], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE330 */ cpu->ctr = cpu->r[8]; /* 027BE334 */ cpu->r[28] = cpu->r[25] + cpu->r[0]; /* 027BE338 */ cpu->r[3] = cpu->r[1] + 0x00000034u; /* 027BE33C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE340 */ _t95 = cpu->r[1] + 0x00000034u; /* 027BE340 */ cpu->r[4] = rbrew_read32(cpu->mem, _t95); /* 027BE344 */ cpu->r[6] = 0x00000000u; /* 027BE348 */ cpu->r[5] = rbrew_rlwinm(cpu->r[26], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE34C */ cpu->r[3] = cpu->r[28]; /* 027BE350 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BE354 */ cpu->r[0] = cpu->r[29] + cpu->r[26]; /* 027BE358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[31]); /* 027BE35C */ _t96 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE35C */ _t97 = _t96 & 0x00000001u; /* 027BE35C */ if (_t97) goto L_027BE360; else goto L_027BE368; L_027BE360: ; // 0x27be360 /* 027BE360 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE364 */ _t98 = cpu->r[5] + cpu->r[25]; /* 027BE364 */ rbrew_write16(cpu->mem, _t98, (uint16_t)cpu->r[30]); L_027BE368: ; // 0x27be368 /* 027BE368 */ cpu->r[3] = cpu->r[27]; /* 027BE36C */ /* nop */ /* 027BE370 */ _t99 = cpu->r[1] + 0x000000D4u; /* 027BE370 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99); /* 027BE374 */ cpu->lr = cpu->r[0]; /* 027BE378 */ cpu->r[1] = cpu->r[1] + 0x000000D0u; /* 027BE37C */ return; } // fn_027BE380 @ 0x27be380 void Gambit_fn_027BE380(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; L_027BE380: ; // 0x27be380 /* 027BE380 */ _t0 = cpu->r[1] + 0xFFFFFF90u; /* 027BE380 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BE380 */ cpu->r[1] = _t0; /* 027BE384 */ /* nop */ /* 027BE388 */ cpu->r[0] = cpu->lr; /* 027BE38C */ _t1 = cpu->r[1] + 0x00000074u; /* 027BE38C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BE390 */ cpu->r[10] = 0x00000020u; /* 027BE394 */ _t2 = cpu->r[1] + 0x00000010u; /* 027BE394 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BE398 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BE39C */ cpu->r[11] = 0x10110000u; /* 027BE3A0 */ _t3 = cpu->r[1] + 0x00000008u; /* 027BE3A0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027BE3A4 */ cpu->r[11] = cpu->r[11] + 0xFFFFBD9Cu; /* 027BE3A8 */ _t4 = cpu->r[1] + 0x0000000Cu; /* 027BE3A8 */ rbrew_write32(cpu->mem, _t4, cpu->r[11]); /* 027BE3AC */ cpu->r[31] = 0x10110000u; /* 027BE3B0 */ _t5 = cpu->r[31] + 0x0000739Au; /* 027BE3B0 */ cpu->r[31] = rbrew_read16(cpu->mem, _t5); /* 027BE3B4 */ cpu->r[27] = cpu->r[4]; /* 027BE3B8 */ cpu->r[30] = cpu->r[5]; /* 027BE3BC */ cpu->r[25] = cpu->r[3]; /* 027BE3C0 */ _t6 = cpu->r[1] + 0x00000052u; /* 027BE3C0 */ rbrew_write16(cpu->mem, _t6, (uint16_t)cpu->r[31]); /* 027BE3C4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE3C8 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BE3C8 */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[31]); /* 027BE3CC */ Gambit_fn_027C24BC(cpu); /* 027BE3D0 */ _t8 = cpu->r[30] + 0x00000004u; /* 027BE3D0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027BE3D4 */ _t9 = cpu->r[12] + 0x00000014u; /* 027BE3D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027BE3D8 */ cpu->ctr = cpu->r[0]; /* 027BE3DC */ _t10 = cpu->r[1] + 0x00000008u; /* 027BE3DC */ cpu->r[29] = rbrew_read32(cpu->mem, _t10); /* 027BE3E0 */ cpu->r[3] = cpu->r[30]; /* 027BE3E4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE3E8 */ _t11 = cpu->r[1] + 0x00000010u; /* 027BE3E8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t11); /* 027BE3EC */ cpu->r[3] = cpu->r[29]; /* 027BE3F0 */ _t12 = cpu->r[30] + 0x00000000u; /* 027BE3F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t12); /* 027BE3F4 */ cpu->r[6] = 0xFFFFFFFFu; /* 027BE3F8 */ Gambit_fn_0282C89C(cpu); /* 027BE3FC */ _t13 = cpu->r[25] + 0x00000004u; /* 027BE3FC */ cpu->r[6] = rbrew_read32(cpu->mem, _t13); /* 027BE400 */ cpu->r[29] = cpu->r[3]; /* 027BE404 */ _t14 = cpu->r[6] + 0x00000014u; /* 027BE404 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14); /* 027BE408 */ _t15 = cpu->r[25] + 0x00000000u; /* 027BE408 */ cpu->r[26] = rbrew_read32(cpu->mem, _t15); /* 027BE40C */ cpu->ctr = cpu->r[7]; /* 027BE410 */ cpu->r[28] = cpu->r[29]; /* 027BE414 */ cpu->r[3] = cpu->r[25]; /* 027BE418 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE41C */ _t16 = cpu->r[25] + 0x00000000u; /* 027BE41C */ cpu->r[7] = rbrew_read32(cpu->mem, _t16); /* 027BE420 */ _t17 = cpu->r[7] + 0x00000000u; /* 027BE420 */ cpu->r[8] = rbrew_read16(cpu->mem, _t17); /* 027BE424 */ cpu->r[30] = 0x00000000u; /* 027BE428 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027BE42C */ cpu->r[10] = 0x00080000u; /* 027BE430 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE430 */ _t19 = _t18 & 0x00000001u; /* 027BE430 */ if (_t19) goto L_027BE458; else goto L_027BE434; L_027BE434: ; // 0x27be434 /* 027BE434 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BE438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]); /* 027BE43C */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027BE440 */ _t20 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE440 */ _t21 = _t20 & 0x00000001u; /* 027BE440 */ if (_t21) goto L_027BE454; else goto L_027BE444; L_027BE444: ; // 0x27be444 /* 027BE444 */ _t22 = cpu->r[7] + 0x00000000u; /* 027BE444 */ cpu->r[9] = rbrew_read16(cpu->mem, _t22); /* 027BE448 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BE44C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE44C */ _t24 = _t23 & 0x00000001u; /* 027BE44C */ if (_t24) goto L_027BE450; else goto L_027BE434; L_027BE450: ; // 0x27be450 /* 027BE450 */ goto L_027BE458; L_027BE454: ; // 0x27be454 /* 027BE454 */ cpu->r[30] = 0x00000000u; L_027BE458: ; // 0x27be458 /* 027BE458 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027BE45C */ _t25 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE45C */ _t26 = _t25 & 0x00000001u; /* 027BE45C */ if (_t26) goto L_027BE460; else goto L_027BE470; L_027BE460: ; // 0x27be460 /* 027BE460 */ cpu->r[10] = cpu->r[30] + cpu->r[27]; /* 027BE464 */ cpu->r[27] = cpu->r[10] + 0x00000001u; /* 027BE464 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027BE468 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE468 */ _t28 = _t27 & 0x00000001u; /* 027BE468 */ if (_t28) goto L_027BE46C; else goto L_027BE470; L_027BE46C: ; // 0x27be46c /* 027BE46C */ cpu->r[27] = 0x00000000u; L_027BE470: ; // 0x27be470 /* 027BE470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BE474 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE474 */ _t30 = _t29 & 0x00000001u; /* 027BE474 */ if (_t30) goto L_027BE478; else goto L_027BE4C8; L_027BE478: ; // 0x27be478 /* 027BE478 */ _t31 = cpu->r[1] + 0x0000000Cu; /* 027BE478 */ cpu->r[12] = rbrew_read32(cpu->mem, _t31); /* 027BE47C */ _t32 = cpu->r[12] + 0x00000014u; /* 027BE47C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027BE480 */ cpu->ctr = cpu->r[0]; /* 027BE484 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE488 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE48C */ _t33 = cpu->r[1] + 0x00000008u; /* 027BE48C */ cpu->r[11] = rbrew_read32(cpu->mem, _t33); /* 027BE490 */ _t34 = cpu->r[11] + 0x00000000u; /* 027BE490 */ cpu->r[0] = rbrew_read16(cpu->mem, _t34); /* 027BE494 */ cpu->r[28] = 0x00000000u; /* 027BE498 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BE49C */ cpu->r[5] = 0x00080000u; /* 027BE4A0 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE4A0 */ _t36 = _t35 & 0x00000001u; /* 027BE4A0 */ if (_t36) goto L_027BE4C8; else goto L_027BE4A4; L_027BE4A4: ; // 0x27be4a4 /* 027BE4A4 */ cpu->r[28] = cpu->r[28] + 0x00000001u; /* 027BE4A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[5]); /* 027BE4AC */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027BE4B0 */ _t37 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE4B0 */ _t38 = _t37 & 0x00000001u; /* 027BE4B0 */ if (_t38) goto L_027BE4C4; else goto L_027BE4B4; L_027BE4B4: ; // 0x27be4b4 /* 027BE4B4 */ _t39 = cpu->r[11] + 0x00000000u; /* 027BE4B4 */ cpu->r[8] = rbrew_read16(cpu->mem, _t39); /* 027BE4B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027BE4BC */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE4BC */ _t41 = _t40 & 0x00000001u; /* 027BE4BC */ if (_t41) goto L_027BE4C0; else goto L_027BE4A4; L_027BE4C0: ; // 0x27be4c0 /* 027BE4C0 */ goto L_027BE4C8; L_027BE4C4: ; // 0x27be4c4 /* 027BE4C4 */ cpu->r[28] = 0x00000000u; L_027BE4C8: ; // 0x27be4c8 /* 027BE4C8 */ _t42 = cpu->r[25] + 0x00000008u; /* 027BE4C8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42); /* 027BE4CC */ cpu->r[5] = cpu->r[9] - cpu->r[27]; /* 027BE4D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[5]); /* 027BE4D4 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE4D4 */ _t44 = _t43 & 0x00000001u; /* 027BE4D4 */ if (_t44) goto L_027BE4DC; else goto L_027BE4D8; L_027BE4D8: ; // 0x27be4d8 /* 027BE4D8 */ cpu->r[28] = cpu->r[5] + 0xFFFFFFFFu; L_027BE4DC: ; // 0x27be4dc /* 027BE4DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BE4E0 */ _t45 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE4E0 */ _t46 = _t45 & 0x00000001u; /* 027BE4E0 */ if (_t46) goto L_027BE4E4; else goto L_027BE528; L_027BE4E4: ; // 0x27be4e4 /* 027BE4E4 */ _t47 = cpu->r[1] + 0x0000000Cu; /* 027BE4E4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t47); /* 027BE4E8 */ _t48 = cpu->r[12] + 0x00000014u; /* 027BE4E8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t48); /* 027BE4EC */ cpu->r[0] = rbrew_rlwinm(cpu->r[27], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE4F0 */ cpu->ctr = cpu->r[6]; /* 027BE4F4 */ cpu->r[25] = cpu->r[26] + cpu->r[0]; /* 027BE4F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE4FC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE500 */ _t49 = cpu->r[1] + 0x00000008u; /* 027BE500 */ cpu->r[4] = rbrew_read32(cpu->mem, _t49); /* 027BE504 */ cpu->r[6] = 0x00000000u; /* 027BE508 */ cpu->r[5] = rbrew_rlwinm(cpu->r[28], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE50C */ cpu->r[3] = cpu->r[25]; /* 027BE510 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BE514 */ cpu->r[0] = cpu->r[27] + cpu->r[28]; /* 027BE518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[30]); /* 027BE51C */ _t50 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE51C */ _t51 = _t50 & 0x00000001u; /* 027BE51C */ if (_t51) goto L_027BE520; else goto L_027BE528; L_027BE520: ; // 0x27be520 /* 027BE520 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE524 */ _t52 = cpu->r[8] + cpu->r[26]; /* 027BE524 */ rbrew_write16(cpu->mem, _t52, (uint16_t)cpu->r[31]); L_027BE528: ; // 0x27be528 /* 027BE528 */ cpu->r[3] = cpu->r[29]; /* 027BE52C */ /* nop */ /* 027BE530 */ _t53 = cpu->r[1] + 0x00000074u; /* 027BE530 */ cpu->r[0] = rbrew_read32(cpu->mem, _t53); /* 027BE534 */ cpu->lr = cpu->r[0]; /* 027BE538 */ cpu->r[1] = cpu->r[1] + 0x00000070u; /* 027BE53C */ return; } // fn_027BE540 @ 0x27be540 void Gambit_fn_027BE540(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, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323; L_027BE540: ; // 0x27be540 /* 027BE540 */ _t0 = cpu->r[1] + 0xFFFFFE38u; /* 027BE540 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BE540 */ cpu->r[1] = _t0; /* 027BE544 */ /* nop */ /* 027BE548 */ cpu->r[26] = cpu->r[3]; /* 027BE54C */ cpu->r[30] = cpu->r[4]; /* 027BE550 */ cpu->r[0] = cpu->lr; /* 027BE554 */ cpu->r[27] = cpu->r[5]; /* 027BE558 */ cpu->r[3] = cpu->r[30]; /* 027BE55C */ cpu->r[28] = cpu->r[6]; /* 027BE560 */ cpu->r[31] = cpu->r[7]; /* 027BE564 */ _t1 = cpu->r[1] + 0x000001CCu; /* 027BE564 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BE568 */ Gambit_fn_027C2754(cpu); /* 027BE56C */ _t2 = cpu->r[30] + 0x00000004u; /* 027BE56C */ cpu->r[0] = rbrew_read16(cpu->mem, _t2); /* 027BE570 */ cpu->r[29] = 0x10110000u; /* 027BE574 */ cpu->r[30] = 0x10110000u; /* 027BE578 */ cpu->r[8] = 0x00000000u; /* 027BE57C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000006u); /* 027BE580 */ cpu->r[29] = cpu->r[29] + 0xFFFFBCDCu; /* 027BE584 */ _t3 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE584 */ _t4 = _t3 & 0x00000001u; /* 027BE584 */ if (_t4) goto L_027BE588; else goto L_027BE5C0; L_027BE588: ; // 0x27be588 /* 027BE588 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u); /* 027BE58C */ _t5 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE58C */ _t6 = _t5 & 0x00000001u; /* 027BE58C */ if (_t6) goto L_027BE590; else goto L_027BE5E4; L_027BE590: ; // 0x27be590 /* 027BE590 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u); /* 027BE594 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE594 */ _t8 = _t7 & 0x00000001u; /* 027BE594 */ if (_t8) goto L_027BE5A8; else goto L_027BE598; L_027BE598: ; // 0x27be598 /* 027BE598 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u); /* 027BE59C */ _t9 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE59C */ _t10 = _t9 & 0x00000001u; /* 027BE59C */ if (_t10) goto L_027BE5A0; else goto L_027BE5E4; L_027BE5A0: ; // 0x27be5a0 /* 027BE5A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BE5A4 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE5A4 */ _t12 = _t11 & 0x00000001u; /* 027BE5A4 */ if (_t12) goto L_027BE5A8; else goto L_027BE7A0; L_027BE5A8: ; // 0x27be5a8 /* 027BE5A8 */ /* nop */ /* 027BE5AC */ _t13 = cpu->r[1] + 0x000001CCu; /* 027BE5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027BE5B0 */ cpu->lr = cpu->r[0]; /* 027BE5B4 */ cpu->r[1] = cpu->r[1] + 0x000001C8u; /* 027BE5B8 */ cpu->r[3] = 0x00000000u; /* 027BE5BC */ return; L_027BE5C0: ; // 0x27be5c0 /* 027BE5C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000006u); /* 027BE5C4 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE5C4 */ _t15 = _t14 & 0x00000001u; /* 027BE5C4 */ if (_t15) goto L_027BE5E4; else goto L_027BE5C8; L_027BE5C8: ; // 0x27be5c8 /* 027BE5C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000008u); /* 027BE5CC */ _t16 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE5CC */ _t17 = _t16 & 0x00000001u; /* 027BE5CC */ if (_t17) goto L_027BE5A8; else goto L_027BE5D0; L_027BE5D0: ; // 0x27be5d0 /* 027BE5D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000011u); /* 027BE5D4 */ _t18 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE5D4 */ _t19 = _t18 & 0x00000001u; /* 027BE5D4 */ if (_t19) goto L_027BE5E4; else goto L_027BE5D8; L_027BE5D8: ; // 0x27be5d8 /* 027BE5D8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE5D8 */ _t21 = _t20 & 0x00000001u; /* 027BE5D8 */ if (_t21) goto L_027BEB94; else goto L_027BE5DC; L_027BE5DC: ; // 0x27be5dc /* 027BE5DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000017u); /* 027BE5E0 */ _t22 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE5E0 */ _t23 = _t22 & 0x00000001u; /* 027BE5E0 */ if (_t23) goto L_027BE5A8; else goto L_027BE5E4; L_027BE5E4: ; // 0x27be5e4 /* 027BE5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BE5E8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE5E8 */ _t25 = _t24 & 0x00000001u; /* 027BE5E8 */ if (_t25) goto L_027BE5A8; else goto L_027BE5EC; L_027BE5EC: ; // 0x27be5ec /* 027BE5EC */ _t26 = cpu->r[3] + 0x00000000u; /* 027BE5EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t26); /* 027BE5F0 */ _t27 = cpu->r[26] + 0x00000024u; /* 027BE5F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27); /* 027BE5F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[8]); /* 027BE5F8 */ _t28 = cpu->r[26] + 0x00000028u; /* 027BE5F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t28); /* 027BE5FC */ _t29 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE5FC */ _t30 = _t29 & 0x00000001u; /* 027BE5FC */ if (_t30) goto L_027BE600; else goto L_027BE608; L_027BE600: ; // 0x27be600 /* 027BE600 */ cpu->r[9] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BE604 */ cpu->r[8] = cpu->r[8] + cpu->r[9]; L_027BE608: ; // 0x27be608 /* 027BE608 */ _t31 = cpu->r[8] + 0x00000000u; /* 027BE608 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31); /* 027BE60C */ _t32 = cpu->r[1] + 0x00000064u; /* 027BE60C */ rbrew_write32(cpu->mem, _t32, cpu->r[29]); /* 027BE610 */ _t33 = cpu->r[11] + 0x00000000u; /* 027BE610 */ cpu->r[0] = rbrew_read32(cpu->mem, _t33); /* 027BE614 */ cpu->r[3] = cpu->r[1] + 0x00000060u; /* 027BE618 */ _t34 = cpu->r[1] + 0x00000060u; /* 027BE618 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]); /* 027BE61C */ Gambit_fn_027C24B8(cpu); /* 027BE620 */ _t35 = cpu->r[1] + 0x00000060u; /* 027BE620 */ cpu->r[8] = rbrew_read32(cpu->mem, _t35); /* 027BE624 */ _t36 = cpu->r[30] + 0x0000739Au; /* 027BE624 */ cpu->r[31] = rbrew_read16(cpu->mem, _t36); /* 027BE628 */ _t37 = cpu->r[8] + 0x00000000u; /* 027BE628 */ cpu->r[7] = rbrew_read16(cpu->mem, _t37); /* 027BE62C */ cpu->r[26] = 0x00000000u; /* 027BE630 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027BE634 */ cpu->r[11] = 0x00080000u; /* 027BE638 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE638 */ _t39 = _t38 & 0x00000001u; /* 027BE638 */ if (_t39) goto L_027BE660; else goto L_027BE63C; L_027BE63C: ; // 0x27be63c /* 027BE63C */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027BE640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[11]); /* 027BE644 */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027BE648 */ _t40 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE648 */ _t41 = _t40 & 0x00000001u; /* 027BE648 */ if (_t41) goto L_027BE65C; else goto L_027BE64C; L_027BE64C: ; // 0x27be64c /* 027BE64C */ _t42 = cpu->r[8] + 0x00000000u; /* 027BE64C */ cpu->r[10] = rbrew_read16(cpu->mem, _t42); /* 027BE650 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BE654 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE654 */ _t44 = _t43 & 0x00000001u; /* 027BE654 */ if (_t44) goto L_027BE658; else goto L_027BE63C; L_027BE658: ; // 0x27be658 /* 027BE658 */ goto L_027BE660; L_027BE65C: ; // 0x27be65c /* 027BE65C */ cpu->r[26] = 0x00000000u; L_027BE660: ; // 0x27be660 /* 027BE660 */ _t45 = cpu->r[27] + 0x00000004u; /* 027BE660 */ cpu->r[12] = rbrew_read32(cpu->mem, _t45); /* 027BE664 */ _t46 = cpu->r[12] + 0x00000014u; /* 027BE664 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46); /* 027BE668 */ cpu->r[29] = cpu->r[26]; /* 027BE66C */ cpu->ctr = cpu->r[4]; /* 027BE670 */ _t47 = cpu->r[27] + 0x00000000u; /* 027BE670 */ cpu->r[25] = rbrew_read32(cpu->mem, _t47); /* 027BE674 */ cpu->r[3] = cpu->r[27]; /* 027BE678 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE67C */ _t48 = cpu->r[27] + 0x00000000u; /* 027BE67C */ cpu->r[12] = rbrew_read32(cpu->mem, _t48); /* 027BE680 */ _t49 = cpu->r[12] + 0x00000000u; /* 027BE680 */ cpu->r[5] = rbrew_read16(cpu->mem, _t49); /* 027BE684 */ cpu->r[30] = 0x00000000u; /* 027BE688 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027BE68C */ cpu->r[7] = 0x00080000u; /* 027BE690 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE690 */ _t51 = _t50 & 0x00000001u; /* 027BE690 */ if (_t51) goto L_027BE6B8; else goto L_027BE694; L_027BE694: ; // 0x27be694 /* 027BE694 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BE698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]); /* 027BE69C */ cpu->r[12] = cpu->r[12] + 0x00000002u; /* 027BE6A0 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE6A0 */ _t53 = _t52 & 0x00000001u; /* 027BE6A0 */ if (_t53) goto L_027BE6B4; else goto L_027BE6A4; L_027BE6A4: ; // 0x27be6a4 /* 027BE6A4 */ _t54 = cpu->r[12] + 0x00000000u; /* 027BE6A4 */ cpu->r[6] = rbrew_read16(cpu->mem, _t54); /* 027BE6A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027BE6AC */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE6AC */ _t56 = _t55 & 0x00000001u; /* 027BE6AC */ if (_t56) goto L_027BE6B0; else goto L_027BE694; L_027BE6B0: ; // 0x27be6b0 /* 027BE6B0 */ goto L_027BE6B8; L_027BE6B4: ; // 0x27be6b4 /* 027BE6B4 */ cpu->r[30] = 0x00000000u; L_027BE6B8: ; // 0x27be6b8 /* 027BE6B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BE6BC */ _t57 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE6BC */ _t58 = _t57 & 0x00000001u; /* 027BE6BC */ if (_t58) goto L_027BE6C0; else goto L_027BE6D0; L_027BE6C0: ; // 0x27be6c0 /* 027BE6C0 */ cpu->r[8] = cpu->r[30] + cpu->r[28]; /* 027BE6C4 */ cpu->r[28] = cpu->r[8] + 0x00000001u; /* 027BE6C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BE6C8 */ _t59 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE6C8 */ _t60 = _t59 & 0x00000001u; /* 027BE6C8 */ if (_t60) goto L_027BE6CC; else goto L_027BE6D0; L_027BE6CC: ; // 0x27be6cc /* 027BE6CC */ cpu->r[28] = 0x00000000u; L_027BE6D0: ; // 0x27be6d0 /* 027BE6D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE6D4 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE6D4 */ _t62 = _t61 & 0x00000001u; /* 027BE6D4 */ if (_t62) goto L_027BE6D8; else goto L_027BE728; L_027BE6D8: ; // 0x27be6d8 /* 027BE6D8 */ _t63 = cpu->r[1] + 0x00000064u; /* 027BE6D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t63); /* 027BE6DC */ _t64 = cpu->r[9] + 0x00000014u; /* 027BE6DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t64); /* 027BE6E0 */ cpu->ctr = cpu->r[10]; /* 027BE6E4 */ cpu->r[3] = cpu->r[1] + 0x00000060u; /* 027BE6E8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE6EC */ _t65 = cpu->r[1] + 0x00000060u; /* 027BE6EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t65); /* 027BE6F0 */ _t66 = cpu->r[9] + 0x00000000u; /* 027BE6F0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t66); /* 027BE6F4 */ cpu->r[29] = 0x00000000u; /* 027BE6F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BE6FC */ cpu->r[0] = 0x00080000u; /* 027BE700 */ _t67 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE700 */ _t68 = _t67 & 0x00000001u; /* 027BE700 */ if (_t68) goto L_027BE728; else goto L_027BE704; L_027BE704: ; // 0x27be704 /* 027BE704 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027BE708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]); /* 027BE70C */ cpu->r[9] = cpu->r[9] + 0x00000002u; /* 027BE710 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE710 */ _t70 = _t69 & 0x00000001u; /* 027BE710 */ if (_t70) goto L_027BE724; else goto L_027BE714; L_027BE714: ; // 0x27be714 /* 027BE714 */ _t71 = cpu->r[9] + 0x00000000u; /* 027BE714 */ cpu->r[12] = rbrew_read16(cpu->mem, _t71); /* 027BE718 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027BE71C */ _t72 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE71C */ _t73 = _t72 & 0x00000001u; /* 027BE71C */ if (_t73) goto L_027BE720; else goto L_027BE704; L_027BE720: ; // 0x27be720 /* 027BE720 */ goto L_027BE728; L_027BE724: ; // 0x27be724 /* 027BE724 */ cpu->r[29] = 0x00000000u; L_027BE728: ; // 0x27be728 /* 027BE728 */ _t74 = cpu->r[27] + 0x00000008u; /* 027BE728 */ cpu->r[5] = rbrew_read32(cpu->mem, _t74); /* 027BE72C */ cpu->r[7] = cpu->r[5] - cpu->r[28]; /* 027BE730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]); /* 027BE734 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE734 */ _t76 = _t75 & 0x00000001u; /* 027BE734 */ if (_t76) goto L_027BE73C; else goto L_027BE738; L_027BE738: ; // 0x27be738 /* 027BE738 */ cpu->r[29] = cpu->r[7] + 0xFFFFFFFFu; L_027BE73C: ; // 0x27be73c /* 027BE73C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE740 */ _t77 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE740 */ _t78 = _t77 & 0x00000001u; /* 027BE740 */ if (_t78) goto L_027BE744; else goto L_027BE788; L_027BE744: ; // 0x27be744 /* 027BE744 */ _t79 = cpu->r[1] + 0x00000064u; /* 027BE744 */ cpu->r[5] = rbrew_read32(cpu->mem, _t79); /* 027BE748 */ _t80 = cpu->r[5] + 0x00000014u; /* 027BE748 */ cpu->r[7] = rbrew_read32(cpu->mem, _t80); /* 027BE74C */ cpu->r[4] = rbrew_rlwinm(cpu->r[28], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE750 */ cpu->ctr = cpu->r[7]; /* 027BE754 */ cpu->r[27] = cpu->r[25] + cpu->r[4]; /* 027BE758 */ cpu->r[3] = cpu->r[1] + 0x00000060u; /* 027BE75C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE760 */ _t81 = cpu->r[1] + 0x00000060u; /* 027BE760 */ cpu->r[4] = rbrew_read32(cpu->mem, _t81); /* 027BE764 */ cpu->r[6] = 0x00000000u; /* 027BE768 */ cpu->r[5] = rbrew_rlwinm(cpu->r[29], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE76C */ cpu->r[3] = cpu->r[27]; /* 027BE770 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BE774 */ cpu->r[6] = cpu->r[28] + cpu->r[29]; /* 027BE778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[30]); /* 027BE77C */ _t82 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE77C */ _t83 = _t82 & 0x00000001u; /* 027BE77C */ if (_t83) goto L_027BE780; else goto L_027BE788; L_027BE780: ; // 0x27be780 /* 027BE780 */ cpu->r[11] = rbrew_rlwinm(cpu->r[6], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE784 */ _t84 = cpu->r[11] + cpu->r[25]; /* 027BE784 */ rbrew_write16(cpu->mem, _t84, (uint16_t)cpu->r[31]); L_027BE788: ; // 0x27be788 /* 027BE788 */ cpu->r[3] = cpu->r[26]; /* 027BE78C */ /* nop */ /* 027BE790 */ _t85 = cpu->r[1] + 0x000001CCu; /* 027BE790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t85); /* 027BE794 */ cpu->lr = cpu->r[0]; /* 027BE798 */ cpu->r[1] = cpu->r[1] + 0x000001C8u; /* 027BE79C */ return; L_027BE7A0: ; // 0x27be7a0 /* 027BE7A0 */ _t86 = cpu->r[3] + 0x00000000u; /* 027BE7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t86); /* 027BE7A4 */ _t87 = cpu->r[26] + 0x00000024u; /* 027BE7A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t87); /* 027BE7A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]); /* 027BE7AC */ _t88 = cpu->r[26] + 0x00000028u; /* 027BE7AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t88); /* 027BE7B0 */ _t89 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE7B0 */ _t90 = _t89 & 0x00000001u; /* 027BE7B0 */ if (_t90) goto L_027BE7B4; else goto L_027BE7BC; L_027BE7B4: ; // 0x27be7b4 /* 027BE7B4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BE7B8 */ cpu->r[10] = cpu->r[10] + cpu->r[6]; L_027BE7BC: ; // 0x27be7bc /* 027BE7BC */ _t91 = cpu->r[10] + 0x00000000u; /* 027BE7BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t91); /* 027BE7C0 */ _t92 = cpu->r[1] + 0x0000000Cu; /* 027BE7C0 */ rbrew_write32(cpu->mem, _t92, cpu->r[29]); /* 027BE7C4 */ _t93 = cpu->r[11] + 0x00000000u; /* 027BE7C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t93); /* 027BE7C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE7CC */ _t94 = cpu->r[1] + 0x00000008u; /* 027BE7CC */ rbrew_write32(cpu->mem, _t94, cpu->r[9]); /* 027BE7D0 */ Gambit_fn_027C24B8(cpu); /* 027BE7D4 */ _t95 = cpu->r[1] + 0x00000008u; /* 027BE7D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t95); /* 027BE7D8 */ _t96 = cpu->r[30] + 0x0000739Au; /* 027BE7D8 */ cpu->r[31] = rbrew_read16(cpu->mem, _t96); /* 027BE7DC */ _t97 = cpu->r[6] + 0x00000000u; /* 027BE7DC */ cpu->r[10] = rbrew_read16(cpu->mem, _t97); /* 027BE7E0 */ cpu->r[0] = 0x00080000u; /* 027BE7E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BE7E8 */ cpu->r[29] = 0x00000000u; /* 027BE7EC */ _t98 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE7EC */ _t99 = _t98 & 0x00000001u; /* 027BE7EC */ if (_t99) goto L_027BE814; else goto L_027BE7F0; L_027BE7F0: ; // 0x27be7f0 /* 027BE7F0 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027BE7F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]); /* 027BE7F8 */ cpu->r[6] = cpu->r[6] + 0x00000002u; /* 027BE7FC */ _t100 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE7FC */ _t101 = _t100 & 0x00000001u; /* 027BE7FC */ if (_t101) goto L_027BE810; else goto L_027BE800; L_027BE800: ; // 0x27be800 /* 027BE800 */ _t102 = cpu->r[6] + 0x00000000u; /* 027BE800 */ cpu->r[12] = rbrew_read16(cpu->mem, _t102); /* 027BE804 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027BE808 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE808 */ _t104 = _t103 & 0x00000001u; /* 027BE808 */ if (_t104) goto L_027BE80C; else goto L_027BE7F0; L_027BE80C: ; // 0x27be80c /* 027BE80C */ goto L_027BE814; L_027BE810: ; // 0x27be810 /* 027BE810 */ cpu->r[29] = 0x00000000u; L_027BE814: ; // 0x27be814 /* 027BE814 */ _t105 = cpu->r[1] + 0x0000005Eu; /* 027BE814 */ rbrew_write16(cpu->mem, _t105, (uint16_t)cpu->r[31]); /* 027BE818 */ cpu->r[4] = 0x00000022u; /* 027BE81C */ cpu->r[7] = 0x10110000u; /* 027BE820 */ _t106 = cpu->r[1] + 0x0000001Cu; /* 027BE820 */ rbrew_write16(cpu->mem, _t106, (uint16_t)cpu->r[31]); /* 027BE824 */ cpu->r[7] = cpu->r[7] + 0xFFFFBDB4u; /* 027BE828 */ _t107 = cpu->r[1] + 0x00000018u; /* 027BE828 */ rbrew_write32(cpu->mem, _t107, cpu->r[4]); /* 027BE82C */ cpu->r[0] = cpu->r[1] + 0x0000001Cu; /* 027BE830 */ _t108 = cpu->r[1] + 0x00000014u; /* 027BE830 */ rbrew_write32(cpu->mem, _t108, cpu->r[7]); /* 027BE834 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000020u); /* 027BE838 */ _t109 = cpu->r[1] + 0x00000010u; /* 027BE838 */ rbrew_write32(cpu->mem, _t109, cpu->r[0]); /* 027BE83C */ _t110 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE83C */ _t111 = _t110 & 0x00000001u; /* 027BE83C */ if (_t111) goto L_027BE840; else goto L_027BE844; L_027BE840: ; // 0x27be840 /* 027BE840 */ cpu->r[29] = 0x00000020u; L_027BE844: ; // 0x27be844 /* 027BE844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE848 */ cpu->r[24] = 0x00000000u; /* 027BE84C */ _t112 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE84C */ _t113 = _t112 & 0x00000001u; /* 027BE84C */ if (_t113) goto L_027BE850; else goto L_027BEA08; L_027BE850: ; // 0x27be850 /* 027BE850 */ cpu->r[26] = 0x10110000u; /* 027BE854 */ _t114 = cpu->r[26] + 0x0000739Cu; /* 027BE854 */ cpu->r[26] = rbrew_read16(cpu->mem, _t114); L_027BE858: ; // 0x27be858 /* 027BE858 */ cpu->r[25] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu); L_027BE85C: ; // 0x27be85c /* 027BE85C */ cpu->r[22] = cpu->r[31]; /* 027BE860 */ cpu->r[23] = cpu->r[26]; /* 027BE864 */ cpu->r[21] = cpu->r[25]; /* 027BE868 */ goto L_027BE8EC; L_027BE86C: ; // 0x27be86c /* 027BE86C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000014u); /* 027BE870 */ _t115 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE870 */ _t116 = _t115 & 0x00000001u; /* 027BE870 */ if (_t116) goto L_027BE874; else goto L_027BE8EC; L_027BE874: ; // 0x27be874 /* 027BE874 */ _t117 = cpu->r[1] + 0x00000014u; /* 027BE874 */ cpu->r[6] = rbrew_read32(cpu->mem, _t117); /* 027BE878 */ _t118 = cpu->r[6] + 0x00000014u; /* 027BE878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t118); /* 027BE87C */ cpu->ctr = cpu->r[0]; /* 027BE880 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BE884 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE888 */ _t119 = cpu->r[1] + 0x00000010u; /* 027BE888 */ cpu->r[6] = rbrew_read32(cpu->mem, _t119); /* 027BE88C */ cpu->r[4] = cpu->r[6]; /* 027BE890 */ _t120 = cpu->r[4] + 0x00000000u; /* 027BE890 */ cpu->r[0] = rbrew_read16(cpu->mem, _t120); /* 027BE894 */ cpu->r[7] = 0x00000000u; /* 027BE898 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[22]); /* 027BE89C */ cpu->r[10] = 0x00080000u; /* 027BE8A0 */ _t121 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE8A0 */ _t122 = _t121 & 0x00000001u; /* 027BE8A0 */ if (_t122) goto L_027BE8C8; else goto L_027BE8A4; L_027BE8A4: ; // 0x27be8a4 /* 027BE8A4 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027BE8A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[10]); /* 027BE8AC */ cpu->r[4] = cpu->r[4] + 0x00000002u; /* 027BE8B0 */ _t123 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE8B0 */ _t124 = _t123 & 0x00000001u; /* 027BE8B0 */ if (_t124) goto L_027BE8C4; else goto L_027BE8B4; L_027BE8B4: ; // 0x27be8b4 /* 027BE8B4 */ _t125 = cpu->r[4] + 0x00000000u; /* 027BE8B4 */ cpu->r[5] = rbrew_read16(cpu->mem, _t125); /* 027BE8B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[22]); /* 027BE8BC */ _t126 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE8BC */ _t127 = _t126 & 0x00000001u; /* 027BE8BC */ if (_t127) goto L_027BE8C0; else goto L_027BE8A4; L_027BE8C0: ; // 0x27be8c0 /* 027BE8C0 */ goto L_027BE8C8; L_027BE8C4: ; // 0x27be8c4 /* 027BE8C4 */ cpu->r[7] = 0x00000000u; L_027BE8C8: ; // 0x27be8c8 /* 027BE8C8 */ _t128 = cpu->r[1] + 0x00000018u; /* 027BE8C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t128); /* 027BE8CC */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu; /* 027BE8D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]); /* 027BE8D4 */ _t129 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE8D4 */ _t130 = _t129 & 0x00000001u; /* 027BE8D4 */ if (_t130) goto L_027BE8D8; else goto L_027BE85C; L_027BE8D8: ; // 0x27be8d8 /* 027BE8D8 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE8DC */ _t131 = cpu->r[6] + cpu->r[8]; /* 027BE8DC */ rbrew_write16(cpu->mem, _t131, (uint16_t)cpu->r[23]); /* 027BE8E0 */ cpu->r[12] = cpu->r[6] + cpu->r[8]; /* 027BE8E4 */ _t132 = cpu->r[12] + 0x00000002u; /* 027BE8E4 */ rbrew_write16(cpu->mem, _t132, (uint16_t)cpu->r[31]); /* 027BE8E8 */ goto L_027BE858; L_027BE8EC: ; // 0x27be8ec /* 027BE8EC */ _t133 = cpu->r[1] + 0x0000000Cu; /* 027BE8EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t133); /* 027BE8F0 */ _t134 = cpu->r[7] + 0x00000014u; /* 027BE8F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t134); /* 027BE8F4 */ cpu->ctr = cpu->r[9]; /* 027BE8F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE8FC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE900 */ _t135 = cpu->r[1] + 0x00000008u; /* 027BE900 */ cpu->r[9] = rbrew_read32(cpu->mem, _t135); /* 027BE904 */ cpu->r[8] = cpu->r[9]; /* 027BE908 */ _t136 = cpu->r[8] + 0x00000000u; /* 027BE908 */ cpu->r[0] = rbrew_read16(cpu->mem, _t136); /* 027BE90C */ cpu->r[6] = 0x00000000u; /* 027BE910 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[22]); /* 027BE914 */ cpu->r[0] = 0x00080000u; /* 027BE918 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE918 */ _t138 = _t137 & 0x00000001u; /* 027BE918 */ if (_t138) goto L_027BE940; else goto L_027BE91C; L_027BE91C: ; // 0x27be91c /* 027BE91C */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027BE920 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]); /* 027BE924 */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027BE928 */ _t139 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE928 */ _t140 = _t139 & 0x00000001u; /* 027BE928 */ if (_t140) goto L_027BE93C; else goto L_027BE92C; L_027BE92C: ; // 0x27be92c /* 027BE92C */ _t141 = cpu->r[8] + 0x00000000u; /* 027BE92C */ cpu->r[7] = rbrew_read16(cpu->mem, _t141); /* 027BE930 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[22]); /* 027BE934 */ _t142 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE934 */ _t143 = _t142 & 0x00000001u; /* 027BE934 */ if (_t143) goto L_027BE938; else goto L_027BE91C; L_027BE938: ; // 0x27be938 /* 027BE938 */ goto L_027BE940; L_027BE93C: ; // 0x27be93c /* 027BE93C */ cpu->r[6] = 0x00000000u; L_027BE940: ; // 0x27be940 /* 027BE940 */ _t144 = cpu->r[1] + 0x00000014u; /* 027BE940 */ cpu->r[8] = rbrew_read32(cpu->mem, _t144); /* 027BE944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[6]); /* 027BE948 */ _t145 = cpu->r[8] + 0x00000014u; /* 027BE948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t145); /* 027BE94C */ _t146 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE94C */ _t147 = _t146 & 0x00000001u; /* 027BE94C */ if (_t147) goto L_027BE950; else goto L_027BE980; L_027BE950: ; // 0x27be950 /* 027BE950 */ cpu->ctr = cpu->r[0]; /* 027BE954 */ _t148 = cpu->r[30] + 0x0000739Au; /* 027BE954 */ cpu->r[20] = rbrew_read16(cpu->mem, _t148); /* 027BE958 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BE95C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE960 */ _t149 = cpu->r[1] + 0x00000010u; /* 027BE960 */ cpu->r[6] = rbrew_read32(cpu->mem, _t149); /* 027BE964 */ cpu->r[11] = cpu->r[6]; /* 027BE968 */ _t150 = cpu->r[11] + 0x00000000u; /* 027BE968 */ cpu->r[4] = rbrew_read16(cpu->mem, _t150); /* 027BE96C */ cpu->r[5] = 0x00000000u; /* 027BE970 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]); /* 027BE974 */ cpu->r[4] = 0x00080000u; /* 027BE978 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE978 */ _t152 = _t151 & 0x00000001u; /* 027BE978 */ if (_t152) goto L_027BE97C; else goto L_027BE9AC; L_027BE97C: ; // 0x27be97c /* 027BE97C */ goto L_027BE9D0; L_027BE980: ; // 0x27be980 /* 027BE980 */ cpu->ctr = cpu->r[0]; /* 027BE984 */ _t153 = cpu->r[9] + cpu->r[21]; /* 027BE984 */ cpu->r[20] = rbrew_read16(cpu->mem, _t153); /* 027BE988 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BE98C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE990 */ _t154 = cpu->r[1] + 0x00000010u; /* 027BE990 */ cpu->r[6] = rbrew_read32(cpu->mem, _t154); /* 027BE994 */ cpu->r[11] = cpu->r[6]; /* 027BE998 */ _t155 = cpu->r[11] + 0x00000000u; /* 027BE998 */ cpu->r[4] = rbrew_read16(cpu->mem, _t155); /* 027BE99C */ cpu->r[5] = 0x00000000u; /* 027BE9A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]); /* 027BE9A4 */ cpu->r[4] = 0x00080000u; /* 027BE9A8 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE9A8 */ _t157 = _t156 & 0x00000001u; /* 027BE9A8 */ if (_t157) goto L_027BE97C; else goto L_027BE9AC; L_027BE9AC: ; // 0x27be9ac /* 027BE9AC */ cpu->r[5] = cpu->r[5] + 0x00000001u; /* 027BE9B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[4]); /* 027BE9B4 */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027BE9B8 */ _t158 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE9B8 */ _t159 = _t158 & 0x00000001u; /* 027BE9B8 */ if (_t159) goto L_027BE9CC; else goto L_027BE9BC; L_027BE9BC: ; // 0x27be9bc /* 027BE9BC */ _t160 = cpu->r[11] + 0x00000000u; /* 027BE9BC */ cpu->r[12] = rbrew_read16(cpu->mem, _t160); /* 027BE9C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[22]); /* 027BE9C4 */ _t161 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE9C4 */ _t162 = _t161 & 0x00000001u; /* 027BE9C4 */ if (_t162) goto L_027BE9C8; else goto L_027BE9AC; L_027BE9C8: ; // 0x27be9c8 /* 027BE9C8 */ goto L_027BE9D0; L_027BE9CC: ; // 0x27be9cc /* 027BE9CC */ cpu->r[5] = 0x00000000u; L_027BE9D0: ; // 0x27be9d0 /* 027BE9D0 */ _t163 = cpu->r[1] + 0x00000018u; /* 027BE9D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t163); /* 027BE9D4 */ cpu->r[0] = cpu->r[4] + 0xFFFFFFFFu; /* 027BE9D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]); /* 027BE9DC */ _t164 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE9DC */ _t165 = _t164 & 0x00000001u; /* 027BE9DC */ if (_t165) goto L_027BE9E0; else goto L_027BE9F0; L_027BE9E0: ; // 0x27be9e0 /* 027BE9E0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE9E4 */ _t166 = cpu->r[6] + cpu->r[4]; /* 027BE9E4 */ rbrew_write16(cpu->mem, _t166, (uint16_t)cpu->r[20]); /* 027BE9E8 */ cpu->r[5] = cpu->r[6] + cpu->r[4]; /* 027BE9EC */ _t167 = cpu->r[5] + 0x00000002u; /* 027BE9EC */ rbrew_write16(cpu->mem, _t167, (uint16_t)cpu->r[22]); L_027BE9F0: ; // 0x27be9f0 /* 027BE9F0 */ cpu->r[21] = cpu->r[21] + 0x00000002u; /* 027BE9F4 */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu; /* 027BE9F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE9F8 */ cpu->r[24] = cpu->r[24] + 0x00000001u; /* 027BE9FC */ cpu->r[25] = cpu->r[25] + 0x00000002u; /* 027BEA00 */ _t168 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEA00 */ _t169 = _t168 & 0x00000001u; /* 027BEA00 */ if (_t169) goto L_027BEA04; else goto L_027BE86C; L_027BEA04: ; // 0x27bea04 /* 027BEA04 */ _t170 = cpu->r[1] + 0x00000014u; /* 027BEA04 */ cpu->r[7] = rbrew_read32(cpu->mem, _t170); L_027BEA08: ; // 0x27bea08 /* 027BEA08 */ _t171 = cpu->r[7] + 0x00000014u; /* 027BEA08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t171); /* 027BEA0C */ cpu->ctr = cpu->r[0]; /* 027BEA10 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BEA14 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEA18 */ _t172 = cpu->r[1] + 0x00000010u; /* 027BEA18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t172); /* 027BEA1C */ _t173 = cpu->r[11] + 0x00000000u; /* 027BEA1C */ cpu->r[7] = rbrew_read16(cpu->mem, _t173); /* 027BEA20 */ cpu->r[12] = 0x00080000u; /* 027BEA24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027BEA28 */ cpu->r[29] = 0x00000000u; /* 027BEA2C */ _t174 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEA2C */ _t175 = _t174 & 0x00000001u; /* 027BEA2C */ if (_t175) goto L_027BEA54; else goto L_027BEA30; L_027BEA30: ; // 0x27bea30 /* 027BEA30 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027BEA34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]); /* 027BEA38 */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027BEA3C */ _t176 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEA3C */ _t177 = _t176 & 0x00000001u; /* 027BEA3C */ if (_t177) goto L_027BEA50; else goto L_027BEA40; L_027BEA40: ; // 0x27bea40 /* 027BEA40 */ _t178 = cpu->r[11] + 0x00000000u; /* 027BEA40 */ cpu->r[0] = rbrew_read16(cpu->mem, _t178); /* 027BEA44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BEA48 */ _t179 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEA48 */ _t180 = _t179 & 0x00000001u; /* 027BEA48 */ if (_t180) goto L_027BEA4C; else goto L_027BEA30; L_027BEA4C: ; // 0x27bea4c /* 027BEA4C */ goto L_027BEA54; L_027BEA50: ; // 0x27bea50 /* 027BEA50 */ cpu->r[29] = 0x00000000u; L_027BEA54: ; // 0x27bea54 /* 027BEA54 */ _t181 = cpu->r[27] + 0x00000004u; /* 027BEA54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t181); /* 027BEA58 */ _t182 = cpu->r[12] + 0x00000014u; /* 027BEA58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t182); /* 027BEA5C */ cpu->ctr = cpu->r[0]; /* 027BEA60 */ _t183 = cpu->r[27] + 0x00000000u; /* 027BEA60 */ cpu->r[25] = rbrew_read32(cpu->mem, _t183); /* 027BEA64 */ cpu->r[26] = cpu->r[29]; /* 027BEA68 */ cpu->r[3] = cpu->r[27]; /* 027BEA6C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEA70 */ _t184 = cpu->r[27] + 0x00000000u; /* 027BEA70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t184); /* 027BEA74 */ _t185 = cpu->r[9] + 0x00000000u; /* 027BEA74 */ cpu->r[4] = rbrew_read16(cpu->mem, _t185); /* 027BEA78 */ cpu->r[30] = 0x00000000u; /* 027BEA7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]); /* 027BEA80 */ cpu->r[10] = 0x00080000u; /* 027BEA84 */ _t186 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEA84 */ _t187 = _t186 & 0x00000001u; /* 027BEA84 */ if (_t187) goto L_027BEAAC; else goto L_027BEA88; L_027BEA88: ; // 0x27bea88 /* 027BEA88 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BEA8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]); /* 027BEA90 */ cpu->r[9] = cpu->r[9] + 0x00000002u; /* 027BEA94 */ _t188 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEA94 */ _t189 = _t188 & 0x00000001u; /* 027BEA94 */ if (_t189) goto L_027BEAA8; else goto L_027BEA98; L_027BEA98: ; // 0x27bea98 /* 027BEA98 */ _t190 = cpu->r[9] + 0x00000000u; /* 027BEA98 */ cpu->r[0] = rbrew_read16(cpu->mem, _t190); /* 027BEA9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BEAA0 */ _t191 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEAA0 */ _t192 = _t191 & 0x00000001u; /* 027BEAA0 */ if (_t192) goto L_027BEAA4; else goto L_027BEA88; L_027BEAA4: ; // 0x27beaa4 /* 027BEAA4 */ goto L_027BEAAC; L_027BEAA8: ; // 0x27beaa8 /* 027BEAA8 */ cpu->r[30] = 0x00000000u; L_027BEAAC: ; // 0x27beaac /* 027BEAAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BEAB0 */ _t193 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEAB0 */ _t194 = _t193 & 0x00000001u; /* 027BEAB0 */ if (_t194) goto L_027BEAB4; else goto L_027BEAC4; L_027BEAB4: ; // 0x27beab4 /* 027BEAB4 */ cpu->r[6] = cpu->r[30] + cpu->r[28]; /* 027BEAB8 */ cpu->r[28] = cpu->r[6] + 0x00000001u; /* 027BEAB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BEABC */ _t195 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEABC */ _t196 = _t195 & 0x00000001u; /* 027BEABC */ if (_t196) goto L_027BEAC0; else goto L_027BEAC4; L_027BEAC0: ; // 0x27beac0 /* 027BEAC0 */ cpu->r[28] = 0x00000000u; L_027BEAC4: ; // 0x27beac4 /* 027BEAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BEAC8 */ _t197 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEAC8 */ _t198 = _t197 & 0x00000001u; /* 027BEAC8 */ if (_t198) goto L_027BEACC; else goto L_027BEB1C; L_027BEACC: ; // 0x27beacc /* 027BEACC */ _t199 = cpu->r[1] + 0x00000014u; /* 027BEACC */ cpu->r[7] = rbrew_read32(cpu->mem, _t199); /* 027BEAD0 */ _t200 = cpu->r[7] + 0x00000014u; /* 027BEAD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t200); /* 027BEAD4 */ cpu->ctr = cpu->r[8]; /* 027BEAD8 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BEADC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEAE0 */ _t201 = cpu->r[1] + 0x00000010u; /* 027BEAE0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t201); /* 027BEAE4 */ _t202 = cpu->r[7] + 0x00000000u; /* 027BEAE4 */ cpu->r[9] = rbrew_read16(cpu->mem, _t202); /* 027BEAE8 */ cpu->r[26] = 0x00000000u; /* 027BEAEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BEAF0 */ cpu->r[8] = 0x00080000u; /* 027BEAF4 */ _t203 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEAF4 */ _t204 = _t203 & 0x00000001u; /* 027BEAF4 */ if (_t204) goto L_027BEB1C; else goto L_027BEAF8; L_027BEAF8: ; // 0x27beaf8 /* 027BEAF8 */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027BEAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[8]); /* 027BEB00 */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027BEB04 */ _t205 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEB04 */ _t206 = _t205 & 0x00000001u; /* 027BEB04 */ if (_t206) goto L_027BEB18; else goto L_027BEB08; L_027BEB08: ; // 0x27beb08 /* 027BEB08 */ _t207 = cpu->r[7] + 0x00000000u; /* 027BEB08 */ cpu->r[10] = rbrew_read16(cpu->mem, _t207); /* 027BEB0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BEB10 */ _t208 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEB10 */ _t209 = _t208 & 0x00000001u; /* 027BEB10 */ if (_t209) goto L_027BEB14; else goto L_027BEAF8; L_027BEB14: ; // 0x27beb14 /* 027BEB14 */ goto L_027BEB1C; L_027BEB18: ; // 0x27beb18 /* 027BEB18 */ cpu->r[26] = 0x00000000u; L_027BEB1C: ; // 0x27beb1c /* 027BEB1C */ _t210 = cpu->r[27] + 0x00000008u; /* 027BEB1C */ cpu->r[5] = rbrew_read32(cpu->mem, _t210); /* 027BEB20 */ cpu->r[11] = cpu->r[5] - cpu->r[28]; /* 027BEB24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[11]); /* 027BEB28 */ _t211 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEB28 */ _t212 = _t211 & 0x00000001u; /* 027BEB28 */ if (_t212) goto L_027BEB30; else goto L_027BEB2C; L_027BEB2C: ; // 0x27beb2c /* 027BEB2C */ cpu->r[26] = cpu->r[11] + 0xFFFFFFFFu; L_027BEB30: ; // 0x27beb30 /* 027BEB30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BEB34 */ _t213 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEB34 */ _t214 = _t213 & 0x00000001u; /* 027BEB34 */ if (_t214) goto L_027BEB38; else goto L_027BEB7C; L_027BEB38: ; // 0x27beb38 /* 027BEB38 */ _t215 = cpu->r[1] + 0x00000014u; /* 027BEB38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t215); /* 027BEB3C */ _t216 = cpu->r[12] + 0x00000014u; /* 027BEB3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t216); /* 027BEB40 */ cpu->r[11] = rbrew_rlwinm(cpu->r[28], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BEB44 */ cpu->ctr = cpu->r[0]; /* 027BEB48 */ cpu->r[27] = cpu->r[25] + cpu->r[11]; /* 027BEB4C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BEB50 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEB54 */ _t217 = cpu->r[1] + 0x00000010u; /* 027BEB54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t217); /* 027BEB58 */ cpu->r[6] = 0x00000000u; /* 027BEB5C */ cpu->r[5] = rbrew_rlwinm(cpu->r[26], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BEB60 */ cpu->r[3] = cpu->r[27]; /* 027BEB64 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BEB68 */ cpu->r[9] = cpu->r[28] + cpu->r[26]; /* 027BEB6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[30]); /* 027BEB70 */ _t218 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEB70 */ _t219 = _t218 & 0x00000001u; /* 027BEB70 */ if (_t219) goto L_027BEB74; else goto L_027BEB7C; L_027BEB74: ; // 0x27beb74 /* 027BEB74 */ cpu->r[4] = rbrew_rlwinm(cpu->r[9], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BEB78 */ _t220 = cpu->r[4] + cpu->r[25]; /* 027BEB78 */ rbrew_write16(cpu->mem, _t220, (uint16_t)cpu->r[31]); L_027BEB7C: ; // 0x27beb7c /* 027BEB7C */ cpu->r[3] = cpu->r[29]; /* 027BEB80 */ /* nop */ /* 027BEB84 */ _t221 = cpu->r[1] + 0x000001CCu; /* 027BEB84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t221); /* 027BEB88 */ cpu->lr = cpu->r[0]; /* 027BEB8C */ cpu->r[1] = cpu->r[1] + 0x000001C8u; /* 027BEB90 */ return; L_027BEB94: ; // 0x27beb94 /* 027BEB94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BEB98 */ _t222 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEB98 */ _t223 = _t222 & 0x00000001u; /* 027BEB98 */ if (_t223) goto L_027BE5A8; else goto L_027BEB9C; L_027BEB9C: ; // 0x27beb9c /* 027BEB9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BEBA0 */ cpu->r[10] = 0x00000000u; /* 027BEBA4 */ _t224 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEBA4 */ _t225 = _t224 & 0x00000001u; /* 027BEBA4 */ if (_t225) goto L_027BEC50; else goto L_027BEBA8; L_027BEBA8: ; // 0x27beba8 /* 027BEBA8 */ cpu->r[0] = cpu->r[1] + 0x0000001Cu; /* 027BEBAC */ _t226 = cpu->r[1] + 0x00000080u; /* 027BEBAC */ rbrew_write32(cpu->mem, _t226, cpu->r[8]); /* 027BEBB0 */ cpu->r[11] = 0x10110000u; /* 027BEBB4 */ _t227 = cpu->r[1] + 0x00000010u; /* 027BEBB4 */ rbrew_write32(cpu->mem, _t227, cpu->r[0]); /* 027BEBB8 */ cpu->r[10] = 0x10110000u; /* 027BEBBC */ _t228 = cpu->r[11] + 0x00007399u; /* 027BEBBC */ cpu->r[11] = rbrew_read8(cpu->mem, _t228); /* 027BEBC0 */ _t229 = cpu->r[1] + 0x00000124u; /* 027BEBC0 */ rbrew_write32(cpu->mem, _t229, cpu->r[8]); /* 027BEBC4 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BEBC8 */ _t230 = cpu->r[1] + 0x000000E0u; /* 027BEBC8 */ rbrew_write8(cpu->mem, _t230, (uint8_t)cpu->r[11]); /* 027BEBCC */ cpu->r[9] = 0x00000020u; /* 027BEBD0 */ _t231 = cpu->r[1] + 0x00000014u; /* 027BEBD0 */ rbrew_write32(cpu->mem, _t231, cpu->r[10]); /* 027BEBD4 */ cpu->r[10] = 0xFFFFFFFFu; /* 027BEBD8 */ _t232 = cpu->r[1] + 0x0000003Bu; /* 027BEBD8 */ rbrew_write8(cpu->mem, _t232, (uint8_t)cpu->r[11]); /* 027BEBDC */ cpu->r[5] = 0x00000000u; /* 027BEBE0 */ _t233 = cpu->r[1] + 0x00000018u; /* 027BEBE0 */ rbrew_write32(cpu->mem, _t233, cpu->r[9]); /* 027BEBE4 */ cpu->r[7] = 0x10110000u; /* 027BEBE8 */ _t234 = cpu->r[1] + 0x00000128u; /* 027BEBE8 */ rbrew_write32(cpu->mem, _t234, cpu->r[10]); /* 027BEBEC */ _t235 = cpu->r[1] + 0x00000094u; /* 027BEBEC */ rbrew_write8(cpu->mem, _t235, (uint8_t)cpu->r[11]); /* 027BEBF0 */ cpu->r[6] = cpu->r[1] + 0x000000E0u; /* 027BEBF4 */ _t236 = cpu->r[1] + 0x0000007Cu; /* 027BEBF4 */ rbrew_write32(cpu->mem, _t236, cpu->r[8]); /* 027BEBF8 */ _t237 = cpu->r[1] + 0x000000D3u; /* 027BEBF8 */ rbrew_write8(cpu->mem, _t237, (uint8_t)cpu->r[11]); /* 027BEBFC */ _t238 = cpu->r[1] + 0x00000078u; /* 027BEBFC */ rbrew_write8(cpu->mem, _t238, (uint8_t)cpu->r[5]); /* 027BEC00 */ cpu->r[0] = 0x00000040u; /* 027BEC04 */ _t239 = cpu->r[1] + 0x00000120u; /* 027BEC04 */ rbrew_write32(cpu->mem, _t239, cpu->r[10]); /* 027BEC08 */ cpu->r[7] = cpu->r[7] + 0xFFFFBD54u; /* 027BEC0C */ _t240 = cpu->r[1] + 0x0000001Cu; /* 027BEC0C */ rbrew_write8(cpu->mem, _t240, (uint8_t)cpu->r[11]); /* 027BEC10 */ _t241 = cpu->r[1] + 0x000000DCu; /* 027BEC10 */ rbrew_write32(cpu->mem, _t241, cpu->r[0]); /* 027BEC14 */ _t242 = cpu->r[1] + 0x0000011Fu; /* 027BEC14 */ rbrew_write8(cpu->mem, _t242, (uint8_t)cpu->r[11]); /* 027BEC18 */ _t243 = cpu->r[1] + 0x000000D8u; /* 027BEC18 */ rbrew_write32(cpu->mem, _t243, cpu->r[7]); /* 027BEC1C */ cpu->r[11] = cpu->r[1] + 0x00000094u; /* 027BEC20 */ cpu->r[12] = cpu->r[1] + 0x00000164u; /* 027BEC24 */ _t244 = cpu->r[1] + 0x000000D4u; /* 027BEC24 */ rbrew_write32(cpu->mem, _t244, cpu->r[6]); /* 027BEC28 */ _t245 = cpu->r[1] + 0x00000084u; /* 027BEC28 */ rbrew_write32(cpu->mem, _t245, cpu->r[8]); /* 027BEC2C */ _t246 = cpu->r[1] + 0x00000088u; /* 027BEC2C */ rbrew_write32(cpu->mem, _t246, cpu->r[11]); /* 027BEC30 */ _t247 = cpu->r[1] + 0x00000090u; /* 027BEC30 */ rbrew_write32(cpu->mem, _t247, cpu->r[0]); /* 027BEC34 */ cpu->r[30] = 0x10110000u; /* 027BEC38 */ cpu->r[30] = cpu->r[30] + 0xFFFFBCC4u; /* 027BEC3C */ _t248 = cpu->r[1] + 0x0000008Cu; /* 027BEC3C */ rbrew_write32(cpu->mem, _t248, cpu->r[7]); /* 027BEC40 */ _t249 = cpu->r[3] + 0x00000000u; /* 027BEC40 */ cpu->r[6] = rbrew_read32(cpu->mem, _t249); /* 027BEC44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x0000000Cu); /* 027BEC48 */ _t250 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEC48 */ _t251 = _t250 & 0x00000001u; /* 027BEC48 */ if (_t251) goto L_027BEC4C; else goto L_027BED64; L_027BEC4C: ; // 0x27bec4c /* 027BEC4C */ goto L_027BED5C; L_027BEC50: ; // 0x27bec50 /* 027BEC50 */ _t252 = cpu->r[26] + 0x00000024u; /* 027BEC50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t252); /* 027BEC54 */ cpu->r[12] = cpu->r[1] + 0x00000164u; /* 027BEC58 */ cpu->ctr = cpu->r[31]; /* 027BEC5C */ _t253 = cpu->r[26] + 0x00000028u; /* 027BEC5C */ cpu->r[9] = rbrew_read32(cpu->mem, _t253); /* 027BEC60 */ cpu->r[6] = cpu->r[12]; /* 027BEC64 */ cpu->r[30] = 0x00000000u; L_027BEC68: ; // 0x27bec68 /* 027BEC68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000000Cu); /* 027BEC6C */ cpu->r[4] = cpu->r[12]; /* 027BEC70 */ _t254 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEC70 */ _t255 = _t254 & 0x00000001u; /* 027BEC70 */ if (_t255) goto L_027BEC74; else goto L_027BEC78; L_027BEC74: ; // 0x27bec74 /* 027BEC74 */ cpu->r[4] = cpu->r[6]; L_027BEC78: ; // 0x27bec78 /* 027BEC78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]); /* 027BEC7C */ _t256 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEC7C */ _t257 = _t256 & 0x00000001u; /* 027BEC7C */ if (_t257) goto L_027BEC80; else goto L_027BECA0; L_027BEC80: ; // 0x27bec80 /* 027BEC80 */ _t258 = cpu->r[9] + cpu->r[30]; /* 027BEC80 */ cpu->r[5] = rbrew_read32(cpu->mem, _t258); /* 027BEC84 */ _t259 = cpu->r[5] + 0x00000000u; /* 027BEC84 */ cpu->r[7] = rbrew_read32(cpu->mem, _t259); /* 027BEC88 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027BEC8C */ cpu->r[6] = cpu->r[6] + 0x00000004u; /* 027BEC90 */ cpu->r[30] = cpu->r[30] + 0x00000004u; /* 027BEC94 */ _t260 = cpu->r[4] + 0x00000000u; /* 027BEC94 */ rbrew_write32(cpu->mem, _t260, cpu->r[7]); /* 027BEC98 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BEC98 */ _t261 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BEC98 */ _t262 = _t261 >> (0x00000002u & 31u); /* 027BEC98 */ _t263 = _t262 & 0x00000001u; /* 027BEC98 */ if (_t263) goto L_027BEC68; else goto L_027BEC9C; L_027BEC9C: ; // 0x27bec9c /* 027BEC9C */ goto L_027BECBC; L_027BECA0: ; // 0x27beca0 /* 027BECA0 */ _t264 = cpu->r[9] + 0x00000000u; /* 027BECA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t264); /* 027BECA4 */ _t265 = cpu->r[5] + 0x00000000u; /* 027BECA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t265); /* 027BECA8 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027BECAC */ cpu->r[6] = cpu->r[6] + 0x00000004u; /* 027BECB0 */ cpu->r[30] = cpu->r[30] + 0x00000004u; /* 027BECB4 */ _t266 = cpu->r[4] + 0x00000000u; /* 027BECB4 */ rbrew_write32(cpu->mem, _t266, cpu->r[7]); /* 027BECB8 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BECB8 */ _t267 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BECB8 */ _t268 = _t267 >> (0x00000002u & 31u); /* 027BECB8 */ _t269 = _t268 & 0x00000001u; /* 027BECB8 */ if (_t269) goto L_027BEC68; else goto L_027BECBC; L_027BECBC: ; // 0x27becbc /* 027BECBC */ _t270 = cpu->r[1] + 0x00000080u; /* 027BECBC */ rbrew_write32(cpu->mem, _t270, cpu->r[8]); /* 027BECC0 */ cpu->r[10] = 0x10110000u; /* 027BECC4 */ _t271 = cpu->r[1] + 0x00000084u; /* 027BECC4 */ rbrew_write32(cpu->mem, _t271, cpu->r[8]); /* 027BECC8 */ cpu->r[0] = cpu->r[1] + 0x0000001Cu; /* 027BECCC */ _t272 = cpu->r[1] + 0x00000124u; /* 027BECCC */ rbrew_write32(cpu->mem, _t272, cpu->r[8]); /* 027BECD0 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BECD4 */ _t273 = cpu->r[1] + 0x00000010u; /* 027BECD4 */ rbrew_write32(cpu->mem, _t273, cpu->r[0]); /* 027BECD8 */ cpu->r[11] = 0x10110000u; /* 027BECDC */ _t274 = cpu->r[1] + 0x00000014u; /* 027BECDC */ rbrew_write32(cpu->mem, _t274, cpu->r[10]); /* 027BECE0 */ cpu->r[10] = 0xFFFFFFFFu; /* 027BECE4 */ _t275 = cpu->r[11] + 0x00007399u; /* 027BECE4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t275); /* 027BECE8 */ cpu->r[5] = 0x00000000u; /* 027BECEC */ _t276 = cpu->r[1] + 0x00000128u; /* 027BECEC */ rbrew_write32(cpu->mem, _t276, cpu->r[10]); /* 027BECF0 */ _t277 = cpu->r[1] + 0x0000011Fu; /* 027BECF0 */ rbrew_write8(cpu->mem, _t277, (uint8_t)cpu->r[11]); /* 027BECF4 */ cpu->r[7] = 0x10110000u; /* 027BECF8 */ _t278 = cpu->r[1] + 0x00000094u; /* 027BECF8 */ rbrew_write8(cpu->mem, _t278, (uint8_t)cpu->r[11]); /* 027BECFC */ cpu->r[0] = 0x00000040u; /* 027BED00 */ _t279 = cpu->r[1] + 0x0000001Cu; /* 027BED00 */ rbrew_write8(cpu->mem, _t279, (uint8_t)cpu->r[11]); /* 027BED04 */ cpu->r[7] = cpu->r[7] + 0xFFFFBD54u; /* 027BED08 */ _t280 = cpu->r[1] + 0x0000007Cu; /* 027BED08 */ rbrew_write32(cpu->mem, _t280, cpu->r[8]); /* 027BED0C */ cpu->r[9] = 0x00000020u; /* 027BED10 */ _t281 = cpu->r[1] + 0x00000078u; /* 027BED10 */ rbrew_write8(cpu->mem, _t281, (uint8_t)cpu->r[5]); /* 027BED14 */ cpu->r[6] = cpu->r[1] + 0x000000E0u; /* 027BED18 */ _t282 = cpu->r[1] + 0x0000003Bu; /* 027BED18 */ rbrew_write8(cpu->mem, _t282, (uint8_t)cpu->r[11]); /* 027BED1C */ _t283 = cpu->r[1] + 0x000000D3u; /* 027BED1C */ rbrew_write8(cpu->mem, _t283, (uint8_t)cpu->r[11]); /* 027BED20 */ _t284 = cpu->r[1] + 0x000000E0u; /* 027BED20 */ rbrew_write8(cpu->mem, _t284, (uint8_t)cpu->r[11]); /* 027BED24 */ cpu->r[11] = cpu->r[1] + 0x00000094u; /* 027BED28 */ _t285 = cpu->r[1] + 0x00000090u; /* 027BED28 */ rbrew_write32(cpu->mem, _t285, cpu->r[0]); /* 027BED2C */ _t286 = cpu->r[1] + 0x00000088u; /* 027BED2C */ rbrew_write32(cpu->mem, _t286, cpu->r[11]); /* 027BED30 */ _t287 = cpu->r[1] + 0x0000008Cu; /* 027BED30 */ rbrew_write32(cpu->mem, _t287, cpu->r[7]); /* 027BED34 */ _t288 = cpu->r[1] + 0x00000120u; /* 027BED34 */ rbrew_write32(cpu->mem, _t288, cpu->r[10]); /* 027BED38 */ _t289 = cpu->r[1] + 0x000000DCu; /* 027BED38 */ rbrew_write32(cpu->mem, _t289, cpu->r[0]); /* 027BED3C */ _t290 = cpu->r[1] + 0x00000018u; /* 027BED3C */ rbrew_write32(cpu->mem, _t290, cpu->r[9]); /* 027BED40 */ _t291 = cpu->r[1] + 0x000000D8u; /* 027BED40 */ rbrew_write32(cpu->mem, _t291, cpu->r[7]); /* 027BED44 */ _t292 = cpu->r[1] + 0x000000D4u; /* 027BED44 */ rbrew_write32(cpu->mem, _t292, cpu->r[6]); /* 027BED48 */ _t293 = cpu->r[3] + 0x00000000u; /* 027BED48 */ cpu->r[6] = rbrew_read32(cpu->mem, _t293); /* 027BED4C */ cpu->r[30] = 0x10110000u; /* 027BED50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x0000000Cu); /* 027BED54 */ cpu->r[30] = cpu->r[30] + 0xFFFFBCC4u; /* 027BED58 */ _t294 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BED58 */ _t295 = _t294 & 0x00000001u; /* 027BED58 */ if (_t295) goto L_027BED5C; else goto L_027BED64; L_027BED5C: ; // 0x27bed5c /* 027BED5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BED60 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027BED64: ; // 0x27bed64 /* 027BED64 */ _t296 = cpu->r[12] + 0x00000000u; /* 027BED64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t296); /* 027BED68 */ cpu->r[31] = 0x10110000u; /* 027BED6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027BED70 */ cpu->r[31] = cpu->r[31] + 0xFFFFBF0Cu; /* 027BED74 */ _t297 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BED74 */ _t298 = _t297 & 0x00000001u; /* 027BED74 */ if (_t298) goto L_027BED78; else goto L_027BEDB4; L_027BED78: ; // 0x27bed78 /* 027BED78 */ cpu->r[4] = 0x10110000u; /* 027BED7C */ cpu->r[3] = cpu->r[1] + 0x0000012Cu; /* 027BED80 */ cpu->r[4] = cpu->r[4] + 0xFFFFBEECu; /* 027BED84 */ _t299 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BED84 */ _t300 = _t299 & 0x00000001u; /* 027BED84 */ if (_t300) goto L_027BED88; // else: addr-0 trap, fall-through L_027BED88: ; // 0x27bed88 /* 027BED88 */ Gambit_fn_027C252C(cpu); /* 027BED8C */ _t301 = cpu->r[1] + 0x0000006Cu; /* 027BED8C */ rbrew_write32(cpu->mem, _t301, cpu->r[30]); /* 027BED90 */ cpu->r[4] = cpu->r[1] + 0x00000068u; /* 027BED94 */ cpu->r[5] = cpu->r[1] + 0x0000012Cu; /* 027BED98 */ _t302 = cpu->r[1] + 0x00000068u; /* 027BED98 */ rbrew_write32(cpu->mem, _t302, cpu->r[31]); /* 027BED9C */ cpu->r[3] = cpu->r[1] + 0x00000078u; /* 027BEDA0 */ Gambit_fn_027FDFE8(cpu); /* 027BEDA4 */ _t303 = cpu->r[1] + 0x00000078u; /* 027BEDA4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t303); /* 027BEDA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BEDAC */ _t304 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEDAC */ _t305 = _t304 & 0x00000001u; /* 027BEDAC */ if (_t305) goto L_027BE5A8; else goto L_027BEDB0; L_027BEDB0: ; // 0x27bedb0 /* 027BEDB0 */ goto L_027BEDEC; L_027BEDB4: ; // 0x27bedb4 /* 027BEDB4 */ cpu->r[4] = 0x10110000u; /* 027BEDB8 */ cpu->r[3] = cpu->r[1] + 0x00000148u; /* 027BEDBC */ cpu->r[4] = cpu->r[4] + 0xFFFFBEFCu; /* 027BEDC0 */ _t306 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BEDC0 */ _t307 = _t306 & 0x00000001u; /* 027BEDC0 */ if (_t307) goto L_027BEDC4; // else: addr-0 trap, fall-through L_027BEDC4: ; // 0x27bedc4 /* 027BEDC4 */ Gambit_fn_027C252C(cpu); /* 027BEDC8 */ _t308 = cpu->r[1] + 0x00000074u; /* 027BEDC8 */ rbrew_write32(cpu->mem, _t308, cpu->r[30]); /* 027BEDCC */ cpu->r[4] = cpu->r[1] + 0x00000070u; /* 027BEDD0 */ cpu->r[5] = cpu->r[1] + 0x00000148u; /* 027BEDD4 */ _t309 = cpu->r[1] + 0x00000070u; /* 027BEDD4 */ rbrew_write32(cpu->mem, _t309, cpu->r[31]); /* 027BEDD8 */ cpu->r[3] = cpu->r[1] + 0x00000078u; /* 027BEDDC */ Gambit_fn_027FDFE8(cpu); /* 027BEDE0 */ _t310 = cpu->r[1] + 0x00000078u; /* 027BEDE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t310); /* 027BEDE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BEDE8 */ _t311 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEDE8 */ _t312 = _t311 & 0x00000001u; /* 027BEDE8 */ if (_t312) goto L_027BE5A8; else goto L_027BEDEC; L_027BEDEC: ; // 0x27bedec /* 027BEDEC */ _t313 = cpu->r[1] + 0x00000014u; /* 027BEDEC */ cpu->r[7] = rbrew_read32(cpu->mem, _t313); /* 027BEDF0 */ _t314 = cpu->r[1] + 0x00000080u; /* 027BEDF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t314); /* 027BEDF4 */ _t315 = cpu->r[1] + 0x0000000Cu; /* 027BEDF4 */ rbrew_write32(cpu->mem, _t315, cpu->r[29]); /* 027BEDF8 */ _t316 = cpu->r[1] + 0x00000008u; /* 027BEDF8 */ rbrew_write32(cpu->mem, _t316, cpu->r[0]); /* 027BEDFC */ _t317 = cpu->r[7] + 0x00000014u; /* 027BEDFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t317); /* 027BEE00 */ cpu->ctr = cpu->r[8]; /* 027BEE04 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BEE08 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEE0C */ _t318 = cpu->r[1] + 0x0000000Cu; /* 027BEE0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t318); /* 027BEE10 */ _t319 = cpu->r[9] + 0x00000014u; /* 027BEE10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t319); /* 027BEE14 */ cpu->ctr = cpu->r[0]; /* 027BEE18 */ _t320 = cpu->r[1] + 0x00000010u; /* 027BEE18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t320); /* 027BEE1C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEE20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEE24 */ _t321 = cpu->r[1] + 0x00000018u; /* 027BEE24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t321); /* 027BEE28 */ cpu->r[6] = 0xFFFFFFFFu; /* 027BEE2C */ _t322 = cpu->r[1] + 0x00000008u; /* 027BEE2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t322); /* 027BEE30 */ cpu->r[3] = cpu->r[31]; /* 027BEE34 */ Gambit_fn_0282CA88(cpu); /* 027BEE38 */ cpu->r[3] = cpu->r[27]; /* 027BEE3C */ cpu->r[4] = cpu->r[28]; /* 027BEE40 */ cpu->r[5] = cpu->r[1] + 0x00000010u; /* 027BEE44 */ Gambit_fn_027BE380(cpu); /* 027BEE48 */ /* nop */ /* 027BEE4C */ _t323 = cpu->r[1] + 0x000001CCu; /* 027BEE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t323); /* 027BEE50 */ cpu->lr = cpu->r[0]; /* 027BEE54 */ cpu->r[1] = cpu->r[1] + 0x000001C8u; /* 027BEE58 */ return; } // fn_027BEE5C @ 0x27bee5c void Gambit_fn_027BEE5C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BEE5C: ; // 0x27bee5c /* 027BEE5C */ cpu->r[0] = cpu->lr; /* 027BEE60 */ cpu->r[10] = 0x10110000u; /* 027BEE64 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BEE64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BEE64 */ cpu->r[1] = _t0; /* 027BEE68 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BEE6C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BEE6C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BEE70 */ cpu->r[4] = cpu->r[9]; /* 027BEE74 */ cpu->r[12] = 0x10110000u; /* 027BEE78 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BEE78 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BEE7C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BEE7C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BEE80 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BEE80 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BEE84 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BEE88 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BEE88 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BEE8C */ cpu->r[31] = cpu->r[6]; /* 027BEE90 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BEE90 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BEE94 */ cpu->r[0] = 0x00000020u; /* 027BEE98 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BEE98 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BEE9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BEEA0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BEEA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BEEA4 */ cpu->r[30] = cpu->r[5]; /* 027BEEA8 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BEEA8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BEEAC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEEAC */ _t11 = _t10 & 0x00000001u; /* 027BEEAC */ if (_t11) goto L_027BEECC; else goto L_027BEEB0; L_027BEEB0: ; // 0x27beeb0 /* 027BEEB0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEEB4 */ Gambit_fn_027FD1F8(cpu); /* 027BEEB8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEEBC */ cpu->r[4] = cpu->r[31]; /* 027BEEC0 */ cpu->r[3] = cpu->r[30]; /* 027BEEC4 */ Gambit_fn_027BE380(cpu); /* 027BEEC8 */ goto L_027BEEE4; L_027BEECC: ; // 0x27beecc /* 027BEECC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEED0 */ Gambit_fn_027FD1C0(cpu); /* 027BEED4 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEED8 */ cpu->r[4] = cpu->r[31]; /* 027BEEDC */ cpu->r[3] = cpu->r[30]; /* 027BEEE0 */ Gambit_fn_027BE380(cpu); L_027BEEE4: ; // 0x27beee4 /* 027BEEE4 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BEEE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BEEE8 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BEEE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BEEEC */ cpu->lr = cpu->r[0]; /* 027BEEF0 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BEEF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BEEF4 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BEEF8 */ return; } // fn_027BEE64 @ 0x27bee64 void Gambit_fn_027BEE64(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BEE64: ; // 0x27bee64 /* 027BEE64 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BEE64 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BEE64 */ cpu->r[1] = _t0; /* 027BEE68 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BEE6C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BEE6C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BEE70 */ cpu->r[4] = cpu->r[9]; /* 027BEE74 */ cpu->r[12] = 0x10110000u; /* 027BEE78 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BEE78 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BEE7C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BEE7C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BEE80 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BEE80 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BEE84 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BEE88 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BEE88 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BEE8C */ cpu->r[31] = cpu->r[6]; /* 027BEE90 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BEE90 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BEE94 */ cpu->r[0] = 0x00000020u; /* 027BEE98 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BEE98 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BEE9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BEEA0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BEEA0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BEEA4 */ cpu->r[30] = cpu->r[5]; /* 027BEEA8 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BEEA8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BEEAC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEEAC */ _t11 = _t10 & 0x00000001u; /* 027BEEAC */ if (_t11) goto L_027BEECC; else goto L_027BEEB0; L_027BEEB0: ; // 0x27beeb0 /* 027BEEB0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEEB4 */ Gambit_fn_027FD1F8(cpu); /* 027BEEB8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEEBC */ cpu->r[4] = cpu->r[31]; /* 027BEEC0 */ cpu->r[3] = cpu->r[30]; /* 027BEEC4 */ Gambit_fn_027BE380(cpu); /* 027BEEC8 */ goto L_027BEEE4; L_027BEECC: ; // 0x27beecc /* 027BEECC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEED0 */ Gambit_fn_027FD1C0(cpu); /* 027BEED4 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEED8 */ cpu->r[4] = cpu->r[31]; /* 027BEEDC */ cpu->r[3] = cpu->r[30]; /* 027BEEE0 */ Gambit_fn_027BE380(cpu); L_027BEEE4: ; // 0x27beee4 /* 027BEEE4 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BEEE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BEEE8 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BEEE8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BEEEC */ cpu->lr = cpu->r[0]; /* 027BEEF0 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BEEF0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BEEF4 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BEEF8 */ return; } // fn_027BEEFC @ 0x27beefc void Gambit_fn_027BEEFC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BEEFC: ; // 0x27beefc /* 027BEEFC */ cpu->r[0] = cpu->lr; /* 027BEF00 */ cpu->r[10] = 0x10110000u; /* 027BEF04 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BEF04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BEF04 */ cpu->r[1] = _t0; /* 027BEF08 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BEF0C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BEF0C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BEF10 */ cpu->r[4] = cpu->r[9]; /* 027BEF14 */ cpu->r[12] = 0x10110000u; /* 027BEF18 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BEF18 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BEF1C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BEF1C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BEF20 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BEF20 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BEF24 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BEF28 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BEF28 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BEF2C */ cpu->r[31] = cpu->r[6]; /* 027BEF30 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BEF30 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BEF34 */ cpu->r[0] = 0x00000020u; /* 027BEF38 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BEF38 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BEF3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BEF40 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BEF40 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BEF44 */ cpu->r[30] = cpu->r[5]; /* 027BEF48 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BEF48 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BEF4C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEF4C */ _t11 = _t10 & 0x00000001u; /* 027BEF4C */ if (_t11) goto L_027BEF6C; else goto L_027BEF50; L_027BEF50: ; // 0x27bef50 /* 027BEF50 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEF54 */ Gambit_fn_027FD254(cpu); /* 027BEF58 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEF5C */ cpu->r[4] = cpu->r[31]; /* 027BEF60 */ cpu->r[3] = cpu->r[30]; /* 027BEF64 */ Gambit_fn_027BE380(cpu); /* 027BEF68 */ goto L_027BEF84; L_027BEF6C: ; // 0x27bef6c /* 027BEF6C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEF70 */ Gambit_fn_027FDE30(cpu); /* 027BEF74 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEF78 */ cpu->r[4] = cpu->r[31]; /* 027BEF7C */ cpu->r[3] = cpu->r[30]; /* 027BEF80 */ Gambit_fn_027BE380(cpu); L_027BEF84: ; // 0x27bef84 /* 027BEF84 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BEF84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BEF88 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BEF88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BEF8C */ cpu->lr = cpu->r[0]; /* 027BEF90 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BEF90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BEF94 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BEF98 */ return; } // fn_027BEF04 @ 0x27bef04 void Gambit_fn_027BEF04(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BEF04: ; // 0x27bef04 /* 027BEF04 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BEF04 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BEF04 */ cpu->r[1] = _t0; /* 027BEF08 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BEF0C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BEF0C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BEF10 */ cpu->r[4] = cpu->r[9]; /* 027BEF14 */ cpu->r[12] = 0x10110000u; /* 027BEF18 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BEF18 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BEF1C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BEF1C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BEF20 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BEF20 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BEF24 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BEF28 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BEF28 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BEF2C */ cpu->r[31] = cpu->r[6]; /* 027BEF30 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BEF30 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BEF34 */ cpu->r[0] = 0x00000020u; /* 027BEF38 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BEF38 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BEF3C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BEF40 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BEF40 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BEF44 */ cpu->r[30] = cpu->r[5]; /* 027BEF48 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BEF48 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BEF4C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEF4C */ _t11 = _t10 & 0x00000001u; /* 027BEF4C */ if (_t11) goto L_027BEF6C; else goto L_027BEF50; L_027BEF50: ; // 0x27bef50 /* 027BEF50 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEF54 */ Gambit_fn_027FD254(cpu); /* 027BEF58 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEF5C */ cpu->r[4] = cpu->r[31]; /* 027BEF60 */ cpu->r[3] = cpu->r[30]; /* 027BEF64 */ Gambit_fn_027BE380(cpu); /* 027BEF68 */ goto L_027BEF84; L_027BEF6C: ; // 0x27bef6c /* 027BEF6C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEF70 */ Gambit_fn_027FDE30(cpu); /* 027BEF74 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEF78 */ cpu->r[4] = cpu->r[31]; /* 027BEF7C */ cpu->r[3] = cpu->r[30]; /* 027BEF80 */ Gambit_fn_027BE380(cpu); L_027BEF84: ; // 0x27bef84 /* 027BEF84 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BEF84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BEF88 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BEF88 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BEF8C */ cpu->lr = cpu->r[0]; /* 027BEF90 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BEF90 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BEF94 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BEF98 */ return; } // fn_027BEF9C @ 0x27bef9c void Gambit_fn_027BEF9C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BEF9C: ; // 0x27bef9c /* 027BEF9C */ cpu->r[0] = cpu->lr; /* 027BEFA0 */ cpu->r[10] = 0x10110000u; /* 027BEFA4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BEFA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BEFA4 */ cpu->r[1] = _t0; /* 027BEFA8 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BEFAC */ _t1 = cpu->r[1] + 0x00000038u; /* 027BEFAC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BEFB0 */ cpu->r[4] = cpu->r[9]; /* 027BEFB4 */ cpu->r[12] = 0x10110000u; /* 027BEFB8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BEFB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BEFBC */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BEFBC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BEFC0 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BEFC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BEFC4 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BEFC8 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BEFC8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BEFCC */ cpu->r[31] = cpu->r[6]; /* 027BEFD0 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BEFD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BEFD4 */ cpu->r[0] = 0x00000020u; /* 027BEFD8 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BEFD8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BEFDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BEFE0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BEFE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BEFE4 */ cpu->r[30] = cpu->r[5]; /* 027BEFE8 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BEFE8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BEFEC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEFEC */ _t11 = _t10 & 0x00000001u; /* 027BEFEC */ if (_t11) goto L_027BF00C; else goto L_027BEFF0; L_027BEFF0: ; // 0x27beff0 /* 027BEFF0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEFF4 */ Gambit_fn_027FD304(cpu); /* 027BEFF8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEFFC */ cpu->r[4] = cpu->r[31]; /* 027BF000 */ cpu->r[3] = cpu->r[30]; /* 027BF004 */ Gambit_fn_027BE380(cpu); /* 027BF008 */ goto L_027BF024; L_027BF00C: ; // 0x27bf00c /* 027BF00C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF010 */ Gambit_fn_027FDE44(cpu); /* 027BF014 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF018 */ cpu->r[4] = cpu->r[31]; /* 027BF01C */ cpu->r[3] = cpu->r[30]; /* 027BF020 */ Gambit_fn_027BE380(cpu); L_027BF024: ; // 0x27bf024 /* 027BF024 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF028 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF028 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF02C */ cpu->lr = cpu->r[0]; /* 027BF030 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF030 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF034 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF038 */ return; } // fn_027BEFA4 @ 0x27befa4 void Gambit_fn_027BEFA4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BEFA4: ; // 0x27befa4 /* 027BEFA4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BEFA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BEFA4 */ cpu->r[1] = _t0; /* 027BEFA8 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BEFAC */ _t1 = cpu->r[1] + 0x00000038u; /* 027BEFAC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BEFB0 */ cpu->r[4] = cpu->r[9]; /* 027BEFB4 */ cpu->r[12] = 0x10110000u; /* 027BEFB8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BEFB8 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BEFBC */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BEFBC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BEFC0 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BEFC0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BEFC4 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BEFC8 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BEFC8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BEFCC */ cpu->r[31] = cpu->r[6]; /* 027BEFD0 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BEFD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BEFD4 */ cpu->r[0] = 0x00000020u; /* 027BEFD8 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BEFD8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BEFDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BEFE0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BEFE0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BEFE4 */ cpu->r[30] = cpu->r[5]; /* 027BEFE8 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BEFE8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BEFEC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEFEC */ _t11 = _t10 & 0x00000001u; /* 027BEFEC */ if (_t11) goto L_027BF00C; else goto L_027BEFF0; L_027BEFF0: ; // 0x27beff0 /* 027BEFF0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEFF4 */ Gambit_fn_027FD304(cpu); /* 027BEFF8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BEFFC */ cpu->r[4] = cpu->r[31]; /* 027BF000 */ cpu->r[3] = cpu->r[30]; /* 027BF004 */ Gambit_fn_027BE380(cpu); /* 027BF008 */ goto L_027BF024; L_027BF00C: ; // 0x27bf00c /* 027BF00C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF010 */ Gambit_fn_027FDE44(cpu); /* 027BF014 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF018 */ cpu->r[4] = cpu->r[31]; /* 027BF01C */ cpu->r[3] = cpu->r[30]; /* 027BF020 */ Gambit_fn_027BE380(cpu); L_027BF024: ; // 0x27bf024 /* 027BF024 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF024 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF028 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF028 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF02C */ cpu->lr = cpu->r[0]; /* 027BF030 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF030 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF034 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF038 */ return; } // fn_027BF03C @ 0x27bf03c void Gambit_fn_027BF03C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54; L_027BF03C: ; // 0x27bf03c /* 027BF03C */ _t0 = cpu->r[1] + 0xFFFFFFD8u; /* 027BF03C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF03C */ cpu->r[1] = _t0; /* 027BF040 */ /* nop */ /* 027BF044 */ cpu->r[0] = cpu->lr; /* 027BF048 */ _t1 = cpu->r[1] + 0x0000002Cu; /* 027BF048 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BF04C */ cpu->r[26] = cpu->r[5]; /* 027BF050 */ _t2 = cpu->r[26] + 0x00000004u; /* 027BF050 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2); /* 027BF054 */ _t3 = cpu->r[11] + 0x00000014u; /* 027BF054 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027BF058 */ cpu->r[25] = cpu->r[3]; /* 027BF05C */ cpu->ctr = cpu->r[12]; /* 027BF060 */ cpu->r[3] = cpu->r[26]; /* 027BF064 */ cpu->r[30] = cpu->r[4]; /* 027BF068 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BF06C */ cpu->r[31] = 0x10110000u; /* 027BF070 */ _t4 = cpu->r[26] + 0x00000000u; /* 027BF070 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4); /* 027BF074 */ _t5 = cpu->r[31] + 0x0000739Au; /* 027BF074 */ cpu->r[31] = rbrew_read16(cpu->mem, _t5); /* 027BF078 */ _t6 = cpu->r[6] + 0x00000000u; /* 027BF078 */ cpu->r[0] = rbrew_read16(cpu->mem, _t6); /* 027BF07C */ cpu->r[8] = 0x00080000u; /* 027BF080 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BF084 */ cpu->r[29] = 0x00000000u; /* 027BF088 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF088 */ _t8 = _t7 & 0x00000001u; /* 027BF088 */ if (_t8) goto L_027BF0B0; else goto L_027BF08C; L_027BF08C: ; // 0x27bf08c /* 027BF08C */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027BF090 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[8]); /* 027BF094 */ cpu->r[6] = cpu->r[6] + 0x00000002u; /* 027BF098 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BF098 */ _t10 = _t9 & 0x00000001u; /* 027BF098 */ if (_t10) goto L_027BF0AC; else goto L_027BF09C; L_027BF09C: ; // 0x27bf09c /* 027BF09C */ _t11 = cpu->r[6] + 0x00000000u; /* 027BF09C */ cpu->r[5] = rbrew_read16(cpu->mem, _t11); /* 027BF0A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027BF0A4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF0A4 */ _t13 = _t12 & 0x00000001u; /* 027BF0A4 */ if (_t13) goto L_027BF0A8; else goto L_027BF08C; L_027BF0A8: ; // 0x27bf0a8 /* 027BF0A8 */ goto L_027BF0B0; L_027BF0AC: ; // 0x27bf0ac /* 027BF0AC */ cpu->r[29] = 0x00000000u; L_027BF0B0: ; // 0x27bf0b0 /* 027BF0B0 */ _t14 = cpu->r[25] + 0x00000004u; /* 027BF0B0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t14); /* 027BF0B4 */ _t15 = cpu->r[6] + 0x00000014u; /* 027BF0B4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15); /* 027BF0B8 */ cpu->ctr = cpu->r[7]; /* 027BF0BC */ _t16 = cpu->r[25] + 0x00000000u; /* 027BF0BC */ cpu->r[24] = rbrew_read32(cpu->mem, _t16); /* 027BF0C0 */ cpu->r[28] = cpu->r[29]; /* 027BF0C4 */ cpu->r[3] = cpu->r[25]; /* 027BF0C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BF0CC */ _t17 = cpu->r[25] + 0x00000000u; /* 027BF0CC */ cpu->r[12] = rbrew_read32(cpu->mem, _t17); /* 027BF0D0 */ _t18 = cpu->r[12] + 0x00000000u; /* 027BF0D0 */ cpu->r[8] = rbrew_read16(cpu->mem, _t18); /* 027BF0D4 */ cpu->r[27] = 0x00000000u; /* 027BF0D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027BF0DC */ cpu->r[5] = 0x00080000u; /* 027BF0E0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF0E0 */ _t20 = _t19 & 0x00000001u; /* 027BF0E0 */ if (_t20) goto L_027BF108; else goto L_027BF0E4; L_027BF0E4: ; // 0x27bf0e4 /* 027BF0E4 */ cpu->r[27] = cpu->r[27] + 0x00000001u; /* 027BF0E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], cpu->r[5]); /* 027BF0EC */ cpu->r[12] = cpu->r[12] + 0x00000002u; /* 027BF0F0 */ _t21 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BF0F0 */ _t22 = _t21 & 0x00000001u; /* 027BF0F0 */ if (_t22) goto L_027BF104; else goto L_027BF0F4; L_027BF0F4: ; // 0x27bf0f4 /* 027BF0F4 */ _t23 = cpu->r[12] + 0x00000000u; /* 027BF0F4 */ cpu->r[9] = rbrew_read16(cpu->mem, _t23); /* 027BF0F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BF0FC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF0FC */ _t25 = _t24 & 0x00000001u; /* 027BF0FC */ if (_t25) goto L_027BF100; else goto L_027BF0E4; L_027BF100: ; // 0x27bf100 /* 027BF100 */ goto L_027BF108; L_027BF104: ; // 0x27bf104 /* 027BF104 */ cpu->r[27] = 0x00000000u; L_027BF108: ; // 0x27bf108 /* 027BF108 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BF10C */ _t26 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BF10C */ _t27 = _t26 & 0x00000001u; /* 027BF10C */ if (_t27) goto L_027BF110; else goto L_027BF120; L_027BF110: ; // 0x27bf110 /* 027BF110 */ cpu->r[10] = cpu->r[27] + cpu->r[30]; /* 027BF114 */ cpu->r[30] = cpu->r[10] + 0x00000001u; /* 027BF114 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027BF118 */ _t28 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BF118 */ _t29 = _t28 & 0x00000001u; /* 027BF118 */ if (_t29) goto L_027BF11C; else goto L_027BF120; L_027BF11C: ; // 0x27bf11c /* 027BF11C */ cpu->r[30] = 0x00000000u; L_027BF120: ; // 0x27bf120 /* 027BF120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BF124 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BF124 */ _t31 = _t30 & 0x00000001u; /* 027BF124 */ if (_t31) goto L_027BF128; else goto L_027BF178; L_027BF128: ; // 0x27bf128 /* 027BF128 */ _t32 = cpu->r[26] + 0x00000004u; /* 027BF128 */ cpu->r[11] = rbrew_read32(cpu->mem, _t32); /* 027BF12C */ _t33 = cpu->r[11] + 0x00000014u; /* 027BF12C */ cpu->r[12] = rbrew_read32(cpu->mem, _t33); /* 027BF130 */ cpu->ctr = cpu->r[12]; /* 027BF134 */ cpu->r[3] = cpu->r[26]; /* 027BF138 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BF13C */ _t34 = cpu->r[26] + 0x00000000u; /* 027BF13C */ cpu->r[8] = rbrew_read32(cpu->mem, _t34); /* 027BF140 */ _t35 = cpu->r[8] + 0x00000000u; /* 027BF140 */ cpu->r[0] = rbrew_read16(cpu->mem, _t35); /* 027BF144 */ cpu->r[28] = 0x00000000u; /* 027BF148 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BF14C */ cpu->r[0] = 0x00080000u; /* 027BF150 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF150 */ _t37 = _t36 & 0x00000001u; /* 027BF150 */ if (_t37) goto L_027BF178; else goto L_027BF154; L_027BF154: ; // 0x27bf154 /* 027BF154 */ cpu->r[28] = cpu->r[28] + 0x00000001u; /* 027BF158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[0]); /* 027BF15C */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027BF160 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BF160 */ _t39 = _t38 & 0x00000001u; /* 027BF160 */ if (_t39) goto L_027BF174; else goto L_027BF164; L_027BF164: ; // 0x27bf164 /* 027BF164 */ _t40 = cpu->r[8] + 0x00000000u; /* 027BF164 */ cpu->r[5] = rbrew_read16(cpu->mem, _t40); /* 027BF168 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027BF16C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF16C */ _t42 = _t41 & 0x00000001u; /* 027BF16C */ if (_t42) goto L_027BF170; else goto L_027BF154; L_027BF170: ; // 0x27bf170 /* 027BF170 */ goto L_027BF178; L_027BF174: ; // 0x27bf174 /* 027BF174 */ cpu->r[28] = 0x00000000u; L_027BF178: ; // 0x27bf178 /* 027BF178 */ _t43 = cpu->r[25] + 0x00000008u; /* 027BF178 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43); /* 027BF17C */ cpu->r[9] = cpu->r[0] - cpu->r[30]; /* 027BF180 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[9]); /* 027BF184 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BF184 */ _t45 = _t44 & 0x00000001u; /* 027BF184 */ if (_t45) goto L_027BF18C; else goto L_027BF188; L_027BF188: ; // 0x27bf188 /* 027BF188 */ cpu->r[28] = cpu->r[9] + 0xFFFFFFFFu; L_027BF18C: ; // 0x27bf18c /* 027BF18C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BF190 */ _t46 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BF190 */ _t47 = _t46 & 0x00000001u; /* 027BF190 */ if (_t47) goto L_027BF194; else goto L_027BF1D8; L_027BF194: ; // 0x27bf194 /* 027BF194 */ _t48 = cpu->r[26] + 0x00000004u; /* 027BF194 */ cpu->r[9] = rbrew_read32(cpu->mem, _t48); /* 027BF198 */ _t49 = cpu->r[9] + 0x00000014u; /* 027BF198 */ cpu->r[10] = rbrew_read32(cpu->mem, _t49); /* 027BF19C */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BF1A0 */ cpu->ctr = cpu->r[10]; /* 027BF1A4 */ cpu->r[25] = cpu->r[24] + cpu->r[0]; /* 027BF1A8 */ cpu->r[3] = cpu->r[26]; /* 027BF1AC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BF1B0 */ _t50 = cpu->r[26] + 0x00000000u; /* 027BF1B0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t50); /* 027BF1B4 */ cpu->r[6] = 0x00000000u; /* 027BF1B8 */ cpu->r[5] = rbrew_rlwinm(cpu->r[28], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BF1BC */ cpu->r[3] = cpu->r[25]; /* 027BF1C0 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BF1C4 */ cpu->r[0] = cpu->r[30] + cpu->r[28]; /* 027BF1C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[27]); /* 027BF1CC */ _t51 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BF1CC */ _t52 = _t51 & 0x00000001u; /* 027BF1CC */ if (_t52) goto L_027BF1D0; else goto L_027BF1D8; L_027BF1D0: ; // 0x27bf1d0 /* 027BF1D0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BF1D4 */ _t53 = cpu->r[7] + cpu->r[24]; /* 027BF1D4 */ rbrew_write16(cpu->mem, _t53, (uint16_t)cpu->r[31]); L_027BF1D8: ; // 0x27bf1d8 /* 027BF1D8 */ cpu->r[3] = cpu->r[29]; /* 027BF1DC */ /* nop */ /* 027BF1E0 */ _t54 = cpu->r[1] + 0x0000002Cu; /* 027BF1E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t54); /* 027BF1E4 */ cpu->lr = cpu->r[0]; /* 027BF1E8 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 027BF1EC */ return; } // fn_027BF1F0 @ 0x27bf1f0 void Gambit_fn_027BF1F0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF1F0: ; // 0x27bf1f0 /* 027BF1F0 */ cpu->r[0] = cpu->lr; /* 027BF1F4 */ cpu->r[10] = 0x10110000u; /* 027BF1F8 */ _t0 = cpu->r[1] + 0xFFFFFFA0u; /* 027BF1F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF1F8 */ cpu->r[1] = _t0; /* 027BF1FC */ cpu->r[10] = cpu->r[10] + 0xFFFFBD9Cu; /* 027BF200 */ _t1 = cpu->r[1] + 0x00000058u; /* 027BF200 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF204 */ cpu->r[4] = cpu->r[9]; /* 027BF208 */ cpu->r[12] = 0x10110000u; /* 027BF20C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF20C */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF210 */ _t3 = cpu->r[1] + 0x0000005Cu; /* 027BF210 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF214 */ _t4 = cpu->r[1] + 0x00000064u; /* 027BF214 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF218 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF21C */ _t5 = cpu->r[12] + 0x0000739Au; /* 027BF21C */ cpu->r[12] = rbrew_read16(cpu->mem, _t5); /* 027BF220 */ cpu->r[31] = cpu->r[6]; /* 027BF224 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF224 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF228 */ cpu->r[0] = 0x00000020u; /* 027BF22C */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF22C */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[12]); /* 027BF230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF234 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF234 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF238 */ cpu->r[30] = cpu->r[5]; /* 027BF23C */ _t9 = cpu->r[1] + 0x00000052u; /* 027BF23C */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]); /* 027BF240 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF240 */ _t11 = _t10 & 0x00000001u; /* 027BF240 */ if (_t11) goto L_027BF260; else goto L_027BF244; L_027BF244: ; // 0x27bf244 /* 027BF244 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF248 */ Gambit_fn_027FD570(cpu); /* 027BF24C */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF250 */ cpu->r[4] = cpu->r[31]; /* 027BF254 */ cpu->r[3] = cpu->r[30]; /* 027BF258 */ Gambit_fn_027BF03C(cpu); /* 027BF25C */ goto L_027BF278; L_027BF260: ; // 0x27bf260 /* 027BF260 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF264 */ Gambit_fn_027FD3B0(cpu); /* 027BF268 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF26C */ cpu->r[4] = cpu->r[31]; /* 027BF270 */ cpu->r[3] = cpu->r[30]; /* 027BF274 */ Gambit_fn_027BF03C(cpu); L_027BF278: ; // 0x27bf278 /* 027BF278 */ _t12 = cpu->r[1] + 0x00000064u; /* 027BF278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF27C */ _t13 = cpu->r[1] + 0x00000058u; /* 027BF27C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF280 */ cpu->lr = cpu->r[0]; /* 027BF284 */ _t14 = cpu->r[1] + 0x0000005Cu; /* 027BF284 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF288 */ cpu->r[1] = cpu->r[1] + 0x00000060u; /* 027BF28C */ return; } // fn_027BF1F8 @ 0x27bf1f8 void Gambit_fn_027BF1F8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF1F8: ; // 0x27bf1f8 /* 027BF1F8 */ _t0 = cpu->r[1] + 0xFFFFFFA0u; /* 027BF1F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF1F8 */ cpu->r[1] = _t0; /* 027BF1FC */ cpu->r[10] = cpu->r[10] + 0xFFFFBD9Cu; /* 027BF200 */ _t1 = cpu->r[1] + 0x00000058u; /* 027BF200 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF204 */ cpu->r[4] = cpu->r[9]; /* 027BF208 */ cpu->r[12] = 0x10110000u; /* 027BF20C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF20C */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF210 */ _t3 = cpu->r[1] + 0x0000005Cu; /* 027BF210 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF214 */ _t4 = cpu->r[1] + 0x00000064u; /* 027BF214 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF218 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF21C */ _t5 = cpu->r[12] + 0x0000739Au; /* 027BF21C */ cpu->r[12] = rbrew_read16(cpu->mem, _t5); /* 027BF220 */ cpu->r[31] = cpu->r[6]; /* 027BF224 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF224 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF228 */ cpu->r[0] = 0x00000020u; /* 027BF22C */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF22C */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[12]); /* 027BF230 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF234 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF234 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF238 */ cpu->r[30] = cpu->r[5]; /* 027BF23C */ _t9 = cpu->r[1] + 0x00000052u; /* 027BF23C */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]); /* 027BF240 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF240 */ _t11 = _t10 & 0x00000001u; /* 027BF240 */ if (_t11) goto L_027BF260; else goto L_027BF244; L_027BF244: ; // 0x27bf244 /* 027BF244 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF248 */ Gambit_fn_027FD570(cpu); /* 027BF24C */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF250 */ cpu->r[4] = cpu->r[31]; /* 027BF254 */ cpu->r[3] = cpu->r[30]; /* 027BF258 */ Gambit_fn_027BF03C(cpu); /* 027BF25C */ goto L_027BF278; L_027BF260: ; // 0x27bf260 /* 027BF260 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF264 */ Gambit_fn_027FD3B0(cpu); /* 027BF268 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF26C */ cpu->r[4] = cpu->r[31]; /* 027BF270 */ cpu->r[3] = cpu->r[30]; /* 027BF274 */ Gambit_fn_027BF03C(cpu); L_027BF278: ; // 0x27bf278 /* 027BF278 */ _t12 = cpu->r[1] + 0x00000064u; /* 027BF278 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF27C */ _t13 = cpu->r[1] + 0x00000058u; /* 027BF27C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF280 */ cpu->lr = cpu->r[0]; /* 027BF284 */ _t14 = cpu->r[1] + 0x0000005Cu; /* 027BF284 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF288 */ cpu->r[1] = cpu->r[1] + 0x00000060u; /* 027BF28C */ return; } // fn_027BF290 @ 0x27bf290 void Gambit_fn_027BF290(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF290: ; // 0x27bf290 /* 027BF290 */ cpu->r[0] = cpu->lr; /* 027BF294 */ cpu->r[10] = 0x10110000u; /* 027BF298 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF298 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF298 */ cpu->r[1] = _t0; /* 027BF29C */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF2A0 */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF2A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF2A4 */ cpu->r[4] = cpu->r[9]; /* 027BF2A8 */ cpu->r[12] = 0x10110000u; /* 027BF2AC */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF2AC */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF2B0 */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF2B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF2B4 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF2B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF2B8 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF2BC */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF2BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF2C0 */ cpu->r[31] = cpu->r[6]; /* 027BF2C4 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF2C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF2C8 */ cpu->r[0] = 0x00000020u; /* 027BF2CC */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF2CC */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF2D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF2D4 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF2D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF2D8 */ cpu->r[30] = cpu->r[5]; /* 027BF2DC */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF2DC */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF2E0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF2E0 */ _t11 = _t10 & 0x00000001u; /* 027BF2E0 */ if (_t11) goto L_027BF300; else goto L_027BF2E4; L_027BF2E4: ; // 0x27bf2e4 /* 027BF2E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF2E8 */ Gambit_fn_027FD5CC(cpu); /* 027BF2EC */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF2F0 */ cpu->r[4] = cpu->r[31]; /* 027BF2F4 */ cpu->r[3] = cpu->r[30]; /* 027BF2F8 */ Gambit_fn_027BE380(cpu); /* 027BF2FC */ goto L_027BF318; L_027BF300: ; // 0x27bf300 /* 027BF300 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF304 */ Gambit_fn_027FDE58(cpu); /* 027BF308 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF30C */ cpu->r[4] = cpu->r[31]; /* 027BF310 */ cpu->r[3] = cpu->r[30]; /* 027BF314 */ Gambit_fn_027BE380(cpu); L_027BF318: ; // 0x27bf318 /* 027BF318 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF31C */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF31C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF320 */ cpu->lr = cpu->r[0]; /* 027BF324 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF324 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF328 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF32C */ return; } // fn_027BF298 @ 0x27bf298 void Gambit_fn_027BF298(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF298: ; // 0x27bf298 /* 027BF298 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF298 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF298 */ cpu->r[1] = _t0; /* 027BF29C */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF2A0 */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF2A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF2A4 */ cpu->r[4] = cpu->r[9]; /* 027BF2A8 */ cpu->r[12] = 0x10110000u; /* 027BF2AC */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF2AC */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF2B0 */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF2B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF2B4 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF2B4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF2B8 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF2BC */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF2BC */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF2C0 */ cpu->r[31] = cpu->r[6]; /* 027BF2C4 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF2C4 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF2C8 */ cpu->r[0] = 0x00000020u; /* 027BF2CC */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF2CC */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF2D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF2D4 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF2D4 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF2D8 */ cpu->r[30] = cpu->r[5]; /* 027BF2DC */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF2DC */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF2E0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF2E0 */ _t11 = _t10 & 0x00000001u; /* 027BF2E0 */ if (_t11) goto L_027BF300; else goto L_027BF2E4; L_027BF2E4: ; // 0x27bf2e4 /* 027BF2E4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF2E8 */ Gambit_fn_027FD5CC(cpu); /* 027BF2EC */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF2F0 */ cpu->r[4] = cpu->r[31]; /* 027BF2F4 */ cpu->r[3] = cpu->r[30]; /* 027BF2F8 */ Gambit_fn_027BE380(cpu); /* 027BF2FC */ goto L_027BF318; L_027BF300: ; // 0x27bf300 /* 027BF300 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF304 */ Gambit_fn_027FDE58(cpu); /* 027BF308 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF30C */ cpu->r[4] = cpu->r[31]; /* 027BF310 */ cpu->r[3] = cpu->r[30]; /* 027BF314 */ Gambit_fn_027BE380(cpu); L_027BF318: ; // 0x27bf318 /* 027BF318 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF318 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF31C */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF31C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF320 */ cpu->lr = cpu->r[0]; /* 027BF324 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF324 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF328 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF32C */ return; } // fn_027BF330 @ 0x27bf330 void Gambit_fn_027BF330(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF330: ; // 0x27bf330 /* 027BF330 */ cpu->r[0] = cpu->lr; /* 027BF334 */ cpu->r[10] = 0x10110000u; /* 027BF338 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF338 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF338 */ cpu->r[1] = _t0; /* 027BF33C */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF340 */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF340 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF344 */ cpu->r[4] = cpu->r[9]; /* 027BF348 */ cpu->r[12] = 0x10110000u; /* 027BF34C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF34C */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF350 */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF350 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF354 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF354 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF358 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF35C */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF35C */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF360 */ cpu->r[31] = cpu->r[6]; /* 027BF364 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF364 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF368 */ cpu->r[0] = 0x00000020u; /* 027BF36C */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF36C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF374 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF374 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF378 */ cpu->r[30] = cpu->r[5]; /* 027BF37C */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF37C */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF380 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF380 */ _t11 = _t10 & 0x00000001u; /* 027BF380 */ if (_t11) goto L_027BF3A0; else goto L_027BF384; L_027BF384: ; // 0x27bf384 /* 027BF384 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF388 */ Gambit_fn_027FD6E0(cpu); /* 027BF38C */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF390 */ cpu->r[4] = cpu->r[31]; /* 027BF394 */ cpu->r[3] = cpu->r[30]; /* 027BF398 */ Gambit_fn_027BE380(cpu); /* 027BF39C */ goto L_027BF3B8; L_027BF3A0: ; // 0x27bf3a0 /* 027BF3A0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF3A4 */ Gambit_fn_027FD6A8(cpu); /* 027BF3A8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF3AC */ cpu->r[4] = cpu->r[31]; /* 027BF3B0 */ cpu->r[3] = cpu->r[30]; /* 027BF3B4 */ Gambit_fn_027BE380(cpu); L_027BF3B8: ; // 0x27bf3b8 /* 027BF3B8 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF3B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF3BC */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF3BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF3C0 */ cpu->lr = cpu->r[0]; /* 027BF3C4 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF3C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF3C8 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF3CC */ return; } // fn_027BF338 @ 0x27bf338 void Gambit_fn_027BF338(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF338: ; // 0x27bf338 /* 027BF338 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF338 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF338 */ cpu->r[1] = _t0; /* 027BF33C */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF340 */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF340 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF344 */ cpu->r[4] = cpu->r[9]; /* 027BF348 */ cpu->r[12] = 0x10110000u; /* 027BF34C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF34C */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF350 */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF350 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF354 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF354 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF358 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF35C */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF35C */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF360 */ cpu->r[31] = cpu->r[6]; /* 027BF364 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF364 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF368 */ cpu->r[0] = 0x00000020u; /* 027BF36C */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF36C */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF374 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF374 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF378 */ cpu->r[30] = cpu->r[5]; /* 027BF37C */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF37C */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF380 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF380 */ _t11 = _t10 & 0x00000001u; /* 027BF380 */ if (_t11) goto L_027BF3A0; else goto L_027BF384; L_027BF384: ; // 0x27bf384 /* 027BF384 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF388 */ Gambit_fn_027FD6E0(cpu); /* 027BF38C */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF390 */ cpu->r[4] = cpu->r[31]; /* 027BF394 */ cpu->r[3] = cpu->r[30]; /* 027BF398 */ Gambit_fn_027BE380(cpu); /* 027BF39C */ goto L_027BF3B8; L_027BF3A0: ; // 0x27bf3a0 /* 027BF3A0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF3A4 */ Gambit_fn_027FD6A8(cpu); /* 027BF3A8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF3AC */ cpu->r[4] = cpu->r[31]; /* 027BF3B0 */ cpu->r[3] = cpu->r[30]; /* 027BF3B4 */ Gambit_fn_027BE380(cpu); L_027BF3B8: ; // 0x27bf3b8 /* 027BF3B8 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF3B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF3BC */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF3BC */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF3C0 */ cpu->lr = cpu->r[0]; /* 027BF3C4 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF3C4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF3C8 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF3CC */ return; } // fn_027BF3D8 @ 0x27bf3d8 void Gambit_fn_027BF3D8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF3D8: ; // 0x27bf3d8 /* 027BF3D8 */ _t0 = cpu->r[1] + 0xFFFFFFA0u; /* 027BF3D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF3D8 */ cpu->r[1] = _t0; /* 027BF3DC */ cpu->r[10] = cpu->r[10] + 0xFFFFBD9Cu; /* 027BF3E0 */ _t1 = cpu->r[1] + 0x00000058u; /* 027BF3E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF3E4 */ cpu->r[4] = cpu->r[9]; /* 027BF3E8 */ cpu->r[12] = 0x10110000u; /* 027BF3EC */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF3EC */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF3F0 */ _t3 = cpu->r[1] + 0x0000005Cu; /* 027BF3F0 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF3F4 */ _t4 = cpu->r[1] + 0x00000064u; /* 027BF3F4 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF3F8 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF3FC */ _t5 = cpu->r[12] + 0x0000739Au; /* 027BF3FC */ cpu->r[12] = rbrew_read16(cpu->mem, _t5); /* 027BF400 */ cpu->r[31] = cpu->r[6]; /* 027BF404 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF404 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF408 */ cpu->r[0] = 0x00000020u; /* 027BF40C */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF40C */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[12]); /* 027BF410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF414 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF414 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF418 */ cpu->r[30] = cpu->r[5]; /* 027BF41C */ _t9 = cpu->r[1] + 0x00000052u; /* 027BF41C */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]); /* 027BF420 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF420 */ _t11 = _t10 & 0x00000001u; /* 027BF420 */ if (_t11) goto L_027BF440; else goto L_027BF424; L_027BF424: ; // 0x27bf424 /* 027BF424 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF428 */ Gambit_fn_027FDD00(cpu); /* 027BF42C */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF430 */ cpu->r[4] = cpu->r[31]; /* 027BF434 */ cpu->r[3] = cpu->r[30]; /* 027BF438 */ Gambit_fn_027BF03C(cpu); /* 027BF43C */ goto L_027BF458; L_027BF440: ; // 0x27bf440 /* 027BF440 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF444 */ Gambit_fn_027FDB5C(cpu); /* 027BF448 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF44C */ cpu->r[4] = cpu->r[31]; /* 027BF450 */ cpu->r[3] = cpu->r[30]; /* 027BF454 */ Gambit_fn_027BF03C(cpu); L_027BF458: ; // 0x27bf458 /* 027BF458 */ _t12 = cpu->r[1] + 0x00000064u; /* 027BF458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF45C */ _t13 = cpu->r[1] + 0x00000058u; /* 027BF45C */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF460 */ cpu->lr = cpu->r[0]; /* 027BF464 */ _t14 = cpu->r[1] + 0x0000005Cu; /* 027BF464 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF468 */ cpu->r[1] = cpu->r[1] + 0x00000060u; /* 027BF46C */ return; } // fn_027BF50C @ 0x27bf50c void Gambit_fn_027BF50C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF50C: ; // 0x27bf50c /* 027BF50C */ cpu->r[0] = cpu->lr; /* 027BF510 */ cpu->r[10] = 0x10110000u; /* 027BF514 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF514 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF514 */ cpu->r[1] = _t0; /* 027BF518 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF51C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF51C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF520 */ cpu->r[4] = cpu->r[9]; /* 027BF524 */ cpu->r[12] = 0x10110000u; /* 027BF528 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF528 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF52C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF52C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF530 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF530 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF534 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF538 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF538 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF53C */ cpu->r[31] = cpu->r[6]; /* 027BF540 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF540 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF544 */ cpu->r[0] = 0x00000020u; /* 027BF548 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF548 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF54C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF550 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF550 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF554 */ cpu->r[30] = cpu->r[5]; /* 027BF558 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF558 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF55C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF55C */ _t11 = _t10 & 0x00000001u; /* 027BF55C */ if (_t11) goto L_027BF57C; else goto L_027BF560; L_027BF560: ; // 0x27bf560 /* 027BF560 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF564 */ Gambit_fn_027FD76C(cpu); /* 027BF568 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF56C */ cpu->r[4] = cpu->r[31]; /* 027BF570 */ cpu->r[3] = cpu->r[30]; /* 027BF574 */ Gambit_fn_027BE380(cpu); /* 027BF578 */ goto L_027BF594; L_027BF57C: ; // 0x27bf57c /* 027BF57C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF580 */ Gambit_fn_027FD718(cpu); /* 027BF584 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF588 */ cpu->r[4] = cpu->r[31]; /* 027BF58C */ cpu->r[3] = cpu->r[30]; /* 027BF590 */ Gambit_fn_027BE380(cpu); L_027BF594: ; // 0x27bf594 /* 027BF594 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF598 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF598 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF59C */ cpu->lr = cpu->r[0]; /* 027BF5A0 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF5A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF5A4 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF5A8 */ return; } // fn_027BF514 @ 0x27bf514 void Gambit_fn_027BF514(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF514: ; // 0x27bf514 /* 027BF514 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF514 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF514 */ cpu->r[1] = _t0; /* 027BF518 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF51C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF51C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF520 */ cpu->r[4] = cpu->r[9]; /* 027BF524 */ cpu->r[12] = 0x10110000u; /* 027BF528 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF528 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF52C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF52C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF530 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF530 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF534 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF538 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF538 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF53C */ cpu->r[31] = cpu->r[6]; /* 027BF540 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF540 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF544 */ cpu->r[0] = 0x00000020u; /* 027BF548 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF548 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF54C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF550 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF550 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF554 */ cpu->r[30] = cpu->r[5]; /* 027BF558 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF558 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF55C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF55C */ _t11 = _t10 & 0x00000001u; /* 027BF55C */ if (_t11) goto L_027BF57C; else goto L_027BF560; L_027BF560: ; // 0x27bf560 /* 027BF560 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF564 */ Gambit_fn_027FD76C(cpu); /* 027BF568 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF56C */ cpu->r[4] = cpu->r[31]; /* 027BF570 */ cpu->r[3] = cpu->r[30]; /* 027BF574 */ Gambit_fn_027BE380(cpu); /* 027BF578 */ goto L_027BF594; L_027BF57C: ; // 0x27bf57c /* 027BF57C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF580 */ Gambit_fn_027FD718(cpu); /* 027BF584 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF588 */ cpu->r[4] = cpu->r[31]; /* 027BF58C */ cpu->r[3] = cpu->r[30]; /* 027BF590 */ Gambit_fn_027BE380(cpu); L_027BF594: ; // 0x27bf594 /* 027BF594 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF594 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF598 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF598 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF59C */ cpu->lr = cpu->r[0]; /* 027BF5A0 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF5A0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF5A4 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF5A8 */ return; } // fn_027BF5AC @ 0x27bf5ac void Gambit_fn_027BF5AC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF5AC: ; // 0x27bf5ac /* 027BF5AC */ cpu->r[0] = cpu->lr; /* 027BF5B0 */ cpu->r[10] = 0x10110000u; /* 027BF5B4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF5B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF5B4 */ cpu->r[1] = _t0; /* 027BF5B8 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF5BC */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF5BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF5C0 */ cpu->r[4] = cpu->r[9]; /* 027BF5C4 */ cpu->r[12] = 0x10110000u; /* 027BF5C8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF5C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF5CC */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF5CC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF5D0 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF5D0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF5D4 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF5D8 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF5D8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF5DC */ cpu->r[31] = cpu->r[6]; /* 027BF5E0 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF5E0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF5E4 */ cpu->r[0] = 0x00000020u; /* 027BF5E8 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF5E8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF5F0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF5F0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF5F4 */ cpu->r[30] = cpu->r[5]; /* 027BF5F8 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF5F8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF5FC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF5FC */ _t11 = _t10 & 0x00000001u; /* 027BF5FC */ if (_t11) goto L_027BF61C; else goto L_027BF600; L_027BF600: ; // 0x27bf600 /* 027BF600 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF604 */ Gambit_fn_027FD7F8(cpu); /* 027BF608 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF60C */ cpu->r[4] = cpu->r[31]; /* 027BF610 */ cpu->r[3] = cpu->r[30]; /* 027BF614 */ Gambit_fn_027BE380(cpu); /* 027BF618 */ goto L_027BF634; L_027BF61C: ; // 0x27bf61c /* 027BF61C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF620 */ Gambit_fn_027FD7A4(cpu); /* 027BF624 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF628 */ cpu->r[4] = cpu->r[31]; /* 027BF62C */ cpu->r[3] = cpu->r[30]; /* 027BF630 */ Gambit_fn_027BE380(cpu); L_027BF634: ; // 0x27bf634 /* 027BF634 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF638 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF638 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF63C */ cpu->lr = cpu->r[0]; /* 027BF640 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF640 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF644 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF648 */ return; } // fn_027BF5B4 @ 0x27bf5b4 void Gambit_fn_027BF5B4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF5B4: ; // 0x27bf5b4 /* 027BF5B4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF5B4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF5B4 */ cpu->r[1] = _t0; /* 027BF5B8 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF5BC */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF5BC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF5C0 */ cpu->r[4] = cpu->r[9]; /* 027BF5C4 */ cpu->r[12] = 0x10110000u; /* 027BF5C8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF5C8 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF5CC */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF5CC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF5D0 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF5D0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF5D4 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF5D8 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF5D8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF5DC */ cpu->r[31] = cpu->r[6]; /* 027BF5E0 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF5E0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF5E4 */ cpu->r[0] = 0x00000020u; /* 027BF5E8 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF5E8 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF5EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF5F0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF5F0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF5F4 */ cpu->r[30] = cpu->r[5]; /* 027BF5F8 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF5F8 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF5FC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF5FC */ _t11 = _t10 & 0x00000001u; /* 027BF5FC */ if (_t11) goto L_027BF61C; else goto L_027BF600; L_027BF600: ; // 0x27bf600 /* 027BF600 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF604 */ Gambit_fn_027FD7F8(cpu); /* 027BF608 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF60C */ cpu->r[4] = cpu->r[31]; /* 027BF610 */ cpu->r[3] = cpu->r[30]; /* 027BF614 */ Gambit_fn_027BE380(cpu); /* 027BF618 */ goto L_027BF634; L_027BF61C: ; // 0x27bf61c /* 027BF61C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF620 */ Gambit_fn_027FD7A4(cpu); /* 027BF624 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF628 */ cpu->r[4] = cpu->r[31]; /* 027BF62C */ cpu->r[3] = cpu->r[30]; /* 027BF630 */ Gambit_fn_027BE380(cpu); L_027BF634: ; // 0x27bf634 /* 027BF634 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF634 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF638 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF638 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF63C */ cpu->lr = cpu->r[0]; /* 027BF640 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF640 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF644 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF648 */ return; } // fn_027BF64C @ 0x27bf64c void Gambit_fn_027BF64C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF64C: ; // 0x27bf64c /* 027BF64C */ cpu->r[0] = cpu->lr; /* 027BF650 */ cpu->r[10] = 0x10110000u; /* 027BF654 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF654 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF654 */ cpu->r[1] = _t0; /* 027BF658 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF65C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF65C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF660 */ cpu->r[4] = cpu->r[9]; /* 027BF664 */ cpu->r[12] = 0x10110000u; /* 027BF668 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF668 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF66C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF66C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF670 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF670 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF674 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF678 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF678 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF67C */ cpu->r[31] = cpu->r[6]; /* 027BF680 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF680 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF684 */ cpu->r[0] = 0x00000020u; /* 027BF688 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF688 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF68C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF690 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF690 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF694 */ cpu->r[30] = cpu->r[5]; /* 027BF698 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF698 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF69C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF69C */ _t11 = _t10 & 0x00000001u; /* 027BF69C */ if (_t11) goto L_027BF6BC; else goto L_027BF6A0; L_027BF6A0: ; // 0x27bf6a0 /* 027BF6A0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF6A4 */ Gambit_fn_027FD8C4(cpu); /* 027BF6A8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF6AC */ cpu->r[4] = cpu->r[31]; /* 027BF6B0 */ cpu->r[3] = cpu->r[30]; /* 027BF6B4 */ Gambit_fn_027BE380(cpu); /* 027BF6B8 */ goto L_027BF6D4; L_027BF6BC: ; // 0x27bf6bc /* 027BF6BC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF6C0 */ Gambit_fn_027FD830(cpu); /* 027BF6C4 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF6C8 */ cpu->r[4] = cpu->r[31]; /* 027BF6CC */ cpu->r[3] = cpu->r[30]; /* 027BF6D0 */ Gambit_fn_027BE380(cpu); L_027BF6D4: ; // 0x27bf6d4 /* 027BF6D4 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF6D8 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF6D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF6DC */ cpu->lr = cpu->r[0]; /* 027BF6E0 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF6E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF6E4 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF6E8 */ return; } // fn_027BF654 @ 0x27bf654 void Gambit_fn_027BF654(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF654: ; // 0x27bf654 /* 027BF654 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF654 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF654 */ cpu->r[1] = _t0; /* 027BF658 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF65C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF65C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF660 */ cpu->r[4] = cpu->r[9]; /* 027BF664 */ cpu->r[12] = 0x10110000u; /* 027BF668 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF668 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF66C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF66C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF670 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF670 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF674 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF678 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF678 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF67C */ cpu->r[31] = cpu->r[6]; /* 027BF680 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF680 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF684 */ cpu->r[0] = 0x00000020u; /* 027BF688 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF688 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF68C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF690 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF690 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF694 */ cpu->r[30] = cpu->r[5]; /* 027BF698 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF698 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF69C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF69C */ _t11 = _t10 & 0x00000001u; /* 027BF69C */ if (_t11) goto L_027BF6BC; else goto L_027BF6A0; L_027BF6A0: ; // 0x27bf6a0 /* 027BF6A0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF6A4 */ Gambit_fn_027FD8C4(cpu); /* 027BF6A8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF6AC */ cpu->r[4] = cpu->r[31]; /* 027BF6B0 */ cpu->r[3] = cpu->r[30]; /* 027BF6B4 */ Gambit_fn_027BE380(cpu); /* 027BF6B8 */ goto L_027BF6D4; L_027BF6BC: ; // 0x27bf6bc /* 027BF6BC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF6C0 */ Gambit_fn_027FD830(cpu); /* 027BF6C4 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF6C8 */ cpu->r[4] = cpu->r[31]; /* 027BF6CC */ cpu->r[3] = cpu->r[30]; /* 027BF6D0 */ Gambit_fn_027BE380(cpu); L_027BF6D4: ; // 0x27bf6d4 /* 027BF6D4 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF6D4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF6D8 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF6D8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF6DC */ cpu->lr = cpu->r[0]; /* 027BF6E0 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF6E0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF6E4 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF6E8 */ return; } // fn_027BF6EC @ 0x27bf6ec void Gambit_fn_027BF6EC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF6EC: ; // 0x27bf6ec /* 027BF6EC */ cpu->r[0] = cpu->lr; /* 027BF6F0 */ cpu->r[10] = 0x10110000u; /* 027BF6F4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF6F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF6F4 */ cpu->r[1] = _t0; /* 027BF6F8 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF6FC */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF6FC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF700 */ cpu->r[4] = cpu->r[9]; /* 027BF704 */ cpu->r[12] = 0x10110000u; /* 027BF708 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF708 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF70C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF70C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF710 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF710 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF714 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF718 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF718 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF71C */ cpu->r[31] = cpu->r[6]; /* 027BF720 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF720 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF724 */ cpu->r[0] = 0x00000020u; /* 027BF728 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF728 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF72C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF730 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF730 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF734 */ cpu->r[30] = cpu->r[5]; /* 027BF738 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF738 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF73C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF73C */ _t11 = _t10 & 0x00000001u; /* 027BF73C */ if (_t11) goto L_027BF75C; else goto L_027BF740; L_027BF740: ; // 0x27bf740 /* 027BF740 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF744 */ Gambit_fn_027FD950(cpu); /* 027BF748 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF74C */ cpu->r[4] = cpu->r[31]; /* 027BF750 */ cpu->r[3] = cpu->r[30]; /* 027BF754 */ Gambit_fn_027BE380(cpu); /* 027BF758 */ goto L_027BF774; L_027BF75C: ; // 0x27bf75c /* 027BF75C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF760 */ Gambit_fn_027FD8FC(cpu); /* 027BF764 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF768 */ cpu->r[4] = cpu->r[31]; /* 027BF76C */ cpu->r[3] = cpu->r[30]; /* 027BF770 */ Gambit_fn_027BE380(cpu); L_027BF774: ; // 0x27bf774 /* 027BF774 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF778 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF778 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF77C */ cpu->lr = cpu->r[0]; /* 027BF780 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF780 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF784 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF788 */ return; } // fn_027BF6F4 @ 0x27bf6f4 void Gambit_fn_027BF6F4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF6F4: ; // 0x27bf6f4 /* 027BF6F4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF6F4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF6F4 */ cpu->r[1] = _t0; /* 027BF6F8 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF6FC */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF6FC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF700 */ cpu->r[4] = cpu->r[9]; /* 027BF704 */ cpu->r[12] = 0x10110000u; /* 027BF708 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF708 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF70C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF70C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF710 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF710 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF714 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF718 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF718 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF71C */ cpu->r[31] = cpu->r[6]; /* 027BF720 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF720 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF724 */ cpu->r[0] = 0x00000020u; /* 027BF728 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF728 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF72C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF730 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF730 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF734 */ cpu->r[30] = cpu->r[5]; /* 027BF738 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF738 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF73C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF73C */ _t11 = _t10 & 0x00000001u; /* 027BF73C */ if (_t11) goto L_027BF75C; else goto L_027BF740; L_027BF740: ; // 0x27bf740 /* 027BF740 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF744 */ Gambit_fn_027FD950(cpu); /* 027BF748 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF74C */ cpu->r[4] = cpu->r[31]; /* 027BF750 */ cpu->r[3] = cpu->r[30]; /* 027BF754 */ Gambit_fn_027BE380(cpu); /* 027BF758 */ goto L_027BF774; L_027BF75C: ; // 0x27bf75c /* 027BF75C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF760 */ Gambit_fn_027FD8FC(cpu); /* 027BF764 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF768 */ cpu->r[4] = cpu->r[31]; /* 027BF76C */ cpu->r[3] = cpu->r[30]; /* 027BF770 */ Gambit_fn_027BE380(cpu); L_027BF774: ; // 0x27bf774 /* 027BF774 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF774 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF778 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF778 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF77C */ cpu->lr = cpu->r[0]; /* 027BF780 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF780 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF784 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF788 */ return; } // fn_027BF78C @ 0x27bf78c void Gambit_fn_027BF78C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF78C: ; // 0x27bf78c /* 027BF78C */ cpu->r[0] = cpu->lr; /* 027BF790 */ cpu->r[10] = 0x10110000u; /* 027BF794 */ _t0 = cpu->r[1] + 0xFFFFFFA0u; /* 027BF794 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF794 */ cpu->r[1] = _t0; /* 027BF798 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD9Cu; /* 027BF79C */ _t1 = cpu->r[1] + 0x00000058u; /* 027BF79C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF7A0 */ cpu->r[4] = cpu->r[9]; /* 027BF7A4 */ cpu->r[12] = 0x10110000u; /* 027BF7A8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF7A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF7AC */ _t3 = cpu->r[1] + 0x0000005Cu; /* 027BF7AC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF7B0 */ _t4 = cpu->r[1] + 0x00000064u; /* 027BF7B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF7B4 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF7B8 */ _t5 = cpu->r[12] + 0x0000739Au; /* 027BF7B8 */ cpu->r[12] = rbrew_read16(cpu->mem, _t5); /* 027BF7BC */ cpu->r[31] = cpu->r[6]; /* 027BF7C0 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF7C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF7C4 */ cpu->r[0] = 0x00000020u; /* 027BF7C8 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF7C8 */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[12]); /* 027BF7CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF7D0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF7D0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF7D4 */ cpu->r[30] = cpu->r[5]; /* 027BF7D8 */ _t9 = cpu->r[1] + 0x00000052u; /* 027BF7D8 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]); /* 027BF7DC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF7DC */ _t11 = _t10 & 0x00000001u; /* 027BF7DC */ if (_t11) goto L_027BF7FC; else goto L_027BF7E0; L_027BF7E0: ; // 0x27bf7e0 /* 027BF7E0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF7E4 */ Gambit_fn_027FDB24(cpu); /* 027BF7E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF7EC */ cpu->r[4] = cpu->r[31]; /* 027BF7F0 */ cpu->r[3] = cpu->r[30]; /* 027BF7F4 */ Gambit_fn_027BF03C(cpu); /* 027BF7F8 */ goto L_027BF814; L_027BF7FC: ; // 0x27bf7fc /* 027BF7FC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF800 */ Gambit_fn_027FD988(cpu); /* 027BF804 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF808 */ cpu->r[4] = cpu->r[31]; /* 027BF80C */ cpu->r[3] = cpu->r[30]; /* 027BF810 */ Gambit_fn_027BF03C(cpu); L_027BF814: ; // 0x27bf814 /* 027BF814 */ _t12 = cpu->r[1] + 0x00000064u; /* 027BF814 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF818 */ _t13 = cpu->r[1] + 0x00000058u; /* 027BF818 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF81C */ cpu->lr = cpu->r[0]; /* 027BF820 */ _t14 = cpu->r[1] + 0x0000005Cu; /* 027BF820 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF824 */ cpu->r[1] = cpu->r[1] + 0x00000060u; /* 027BF828 */ return; } // fn_027BF794 @ 0x27bf794 void Gambit_fn_027BF794(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF794: ; // 0x27bf794 /* 027BF794 */ _t0 = cpu->r[1] + 0xFFFFFFA0u; /* 027BF794 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF794 */ cpu->r[1] = _t0; /* 027BF798 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD9Cu; /* 027BF79C */ _t1 = cpu->r[1] + 0x00000058u; /* 027BF79C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF7A0 */ cpu->r[4] = cpu->r[9]; /* 027BF7A4 */ cpu->r[12] = 0x10110000u; /* 027BF7A8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF7A8 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF7AC */ _t3 = cpu->r[1] + 0x0000005Cu; /* 027BF7AC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF7B0 */ _t4 = cpu->r[1] + 0x00000064u; /* 027BF7B0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF7B4 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF7B8 */ _t5 = cpu->r[12] + 0x0000739Au; /* 027BF7B8 */ cpu->r[12] = rbrew_read16(cpu->mem, _t5); /* 027BF7BC */ cpu->r[31] = cpu->r[6]; /* 027BF7C0 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF7C0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF7C4 */ cpu->r[0] = 0x00000020u; /* 027BF7C8 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF7C8 */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[12]); /* 027BF7CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF7D0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF7D0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF7D4 */ cpu->r[30] = cpu->r[5]; /* 027BF7D8 */ _t9 = cpu->r[1] + 0x00000052u; /* 027BF7D8 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]); /* 027BF7DC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF7DC */ _t11 = _t10 & 0x00000001u; /* 027BF7DC */ if (_t11) goto L_027BF7FC; else goto L_027BF7E0; L_027BF7E0: ; // 0x27bf7e0 /* 027BF7E0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF7E4 */ Gambit_fn_027FDB24(cpu); /* 027BF7E8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF7EC */ cpu->r[4] = cpu->r[31]; /* 027BF7F0 */ cpu->r[3] = cpu->r[30]; /* 027BF7F4 */ Gambit_fn_027BF03C(cpu); /* 027BF7F8 */ goto L_027BF814; L_027BF7FC: ; // 0x27bf7fc /* 027BF7FC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF800 */ Gambit_fn_027FD988(cpu); /* 027BF804 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF808 */ cpu->r[4] = cpu->r[31]; /* 027BF80C */ cpu->r[3] = cpu->r[30]; /* 027BF810 */ Gambit_fn_027BF03C(cpu); L_027BF814: ; // 0x27bf814 /* 027BF814 */ _t12 = cpu->r[1] + 0x00000064u; /* 027BF814 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF818 */ _t13 = cpu->r[1] + 0x00000058u; /* 027BF818 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF81C */ cpu->lr = cpu->r[0]; /* 027BF820 */ _t14 = cpu->r[1] + 0x0000005Cu; /* 027BF820 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF824 */ cpu->r[1] = cpu->r[1] + 0x00000060u; /* 027BF828 */ return; } // fn_027BF82C @ 0x27bf82c void Gambit_fn_027BF82C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF82C: ; // 0x27bf82c /* 027BF82C */ cpu->r[0] = cpu->lr; /* 027BF830 */ cpu->r[10] = 0x10110000u; /* 027BF834 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF834 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF834 */ cpu->r[1] = _t0; /* 027BF838 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF83C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF83C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF840 */ cpu->r[4] = cpu->r[9]; /* 027BF844 */ cpu->r[12] = 0x10110000u; /* 027BF848 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF848 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF84C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF84C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF850 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF850 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF854 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF858 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF858 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF85C */ cpu->r[31] = cpu->r[6]; /* 027BF860 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF860 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF864 */ cpu->r[0] = 0x00000020u; /* 027BF868 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF868 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF86C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF870 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF870 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF874 */ cpu->r[30] = cpu->r[5]; /* 027BF878 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF878 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF87C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF87C */ _t11 = _t10 & 0x00000001u; /* 027BF87C */ if (_t11) goto L_027BF89C; else goto L_027BF880; L_027BF880: ; // 0x27bf880 /* 027BF880 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF884 */ Gambit_fn_027FDD7C(cpu); /* 027BF888 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF88C */ cpu->r[4] = cpu->r[31]; /* 027BF890 */ cpu->r[3] = cpu->r[30]; /* 027BF894 */ Gambit_fn_027BE380(cpu); /* 027BF898 */ goto L_027BF8B4; L_027BF89C: ; // 0x27bf89c /* 027BF89C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF8A0 */ Gambit_fn_027FDD38(cpu); /* 027BF8A4 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF8A8 */ cpu->r[4] = cpu->r[31]; /* 027BF8AC */ cpu->r[3] = cpu->r[30]; /* 027BF8B0 */ Gambit_fn_027BE380(cpu); L_027BF8B4: ; // 0x27bf8b4 /* 027BF8B4 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF8B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF8B8 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF8B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF8BC */ cpu->lr = cpu->r[0]; /* 027BF8C0 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF8C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF8C4 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF8C8 */ return; } // fn_027BF834 @ 0x27bf834 void Gambit_fn_027BF834(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF834: ; // 0x27bf834 /* 027BF834 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF834 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF834 */ cpu->r[1] = _t0; /* 027BF838 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF83C */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF83C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF840 */ cpu->r[4] = cpu->r[9]; /* 027BF844 */ cpu->r[12] = 0x10110000u; /* 027BF848 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF848 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF84C */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF84C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF850 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF850 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF854 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF858 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF858 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF85C */ cpu->r[31] = cpu->r[6]; /* 027BF860 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF860 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF864 */ cpu->r[0] = 0x00000020u; /* 027BF868 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF868 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF86C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF870 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF870 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF874 */ cpu->r[30] = cpu->r[5]; /* 027BF878 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF878 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF87C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF87C */ _t11 = _t10 & 0x00000001u; /* 027BF87C */ if (_t11) goto L_027BF89C; else goto L_027BF880; L_027BF880: ; // 0x27bf880 /* 027BF880 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF884 */ Gambit_fn_027FDD7C(cpu); /* 027BF888 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF88C */ cpu->r[4] = cpu->r[31]; /* 027BF890 */ cpu->r[3] = cpu->r[30]; /* 027BF894 */ Gambit_fn_027BE380(cpu); /* 027BF898 */ goto L_027BF8B4; L_027BF89C: ; // 0x27bf89c /* 027BF89C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF8A0 */ Gambit_fn_027FDD38(cpu); /* 027BF8A4 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF8A8 */ cpu->r[4] = cpu->r[31]; /* 027BF8AC */ cpu->r[3] = cpu->r[30]; /* 027BF8B0 */ Gambit_fn_027BE380(cpu); L_027BF8B4: ; // 0x27bf8b4 /* 027BF8B4 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF8B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF8B8 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF8B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF8BC */ cpu->lr = cpu->r[0]; /* 027BF8C0 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF8C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF8C4 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF8C8 */ return; } // fn_027BF8CC @ 0x27bf8cc void Gambit_fn_027BF8CC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF8CC: ; // 0x27bf8cc /* 027BF8CC */ cpu->r[0] = cpu->lr; /* 027BF8D0 */ cpu->r[10] = 0x10110000u; /* 027BF8D4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF8D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF8D4 */ cpu->r[1] = _t0; /* 027BF8D8 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF8DC */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF8DC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF8E0 */ cpu->r[4] = cpu->r[9]; /* 027BF8E4 */ cpu->r[12] = 0x10110000u; /* 027BF8E8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF8E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF8EC */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF8EC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF8F0 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF8F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF8F4 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF8F8 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF8F8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF8FC */ cpu->r[31] = cpu->r[6]; /* 027BF900 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF900 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF904 */ cpu->r[0] = 0x00000020u; /* 027BF908 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF908 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF910 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF910 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF914 */ cpu->r[30] = cpu->r[5]; /* 027BF918 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF918 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF91C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF91C */ _t11 = _t10 & 0x00000001u; /* 027BF91C */ if (_t11) goto L_027BF93C; else goto L_027BF920; L_027BF920: ; // 0x27bf920 /* 027BF920 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF924 */ Gambit_fn_027FDDF8(cpu); /* 027BF928 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF92C */ cpu->r[4] = cpu->r[31]; /* 027BF930 */ cpu->r[3] = cpu->r[30]; /* 027BF934 */ Gambit_fn_027BE380(cpu); /* 027BF938 */ goto L_027BF954; L_027BF93C: ; // 0x27bf93c /* 027BF93C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF940 */ Gambit_fn_027FDDB4(cpu); /* 027BF944 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF948 */ cpu->r[4] = cpu->r[31]; /* 027BF94C */ cpu->r[3] = cpu->r[30]; /* 027BF950 */ Gambit_fn_027BE380(cpu); L_027BF954: ; // 0x27bf954 /* 027BF954 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF954 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF958 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF958 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF95C */ cpu->lr = cpu->r[0]; /* 027BF960 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF960 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF964 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF968 */ return; } // fn_027BF8D4 @ 0x27bf8d4 void Gambit_fn_027BF8D4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF8D4: ; // 0x27bf8d4 /* 027BF8D4 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027BF8D4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF8D4 */ cpu->r[1] = _t0; /* 027BF8D8 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BF8DC */ _t1 = cpu->r[1] + 0x00000038u; /* 027BF8DC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF8E0 */ cpu->r[4] = cpu->r[9]; /* 027BF8E4 */ cpu->r[12] = 0x10110000u; /* 027BF8E8 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF8E8 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF8EC */ _t3 = cpu->r[1] + 0x0000003Cu; /* 027BF8EC */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF8F0 */ _t4 = cpu->r[1] + 0x00000044u; /* 027BF8F0 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF8F4 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF8F8 */ _t5 = cpu->r[12] + 0x00007399u; /* 027BF8F8 */ cpu->r[12] = rbrew_read8(cpu->mem, _t5); /* 027BF8FC */ cpu->r[31] = cpu->r[6]; /* 027BF900 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF900 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF904 */ cpu->r[0] = 0x00000020u; /* 027BF908 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF908 */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[12]); /* 027BF90C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF910 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF910 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF914 */ cpu->r[30] = cpu->r[5]; /* 027BF918 */ _t9 = cpu->r[1] + 0x00000033u; /* 027BF918 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[12]); /* 027BF91C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF91C */ _t11 = _t10 & 0x00000001u; /* 027BF91C */ if (_t11) goto L_027BF93C; else goto L_027BF920; L_027BF920: ; // 0x27bf920 /* 027BF920 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF924 */ Gambit_fn_027FDDF8(cpu); /* 027BF928 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF92C */ cpu->r[4] = cpu->r[31]; /* 027BF930 */ cpu->r[3] = cpu->r[30]; /* 027BF934 */ Gambit_fn_027BE380(cpu); /* 027BF938 */ goto L_027BF954; L_027BF93C: ; // 0x27bf93c /* 027BF93C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF940 */ Gambit_fn_027FDDB4(cpu); /* 027BF944 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF948 */ cpu->r[4] = cpu->r[31]; /* 027BF94C */ cpu->r[3] = cpu->r[30]; /* 027BF950 */ Gambit_fn_027BE380(cpu); L_027BF954: ; // 0x27bf954 /* 027BF954 */ _t12 = cpu->r[1] + 0x00000044u; /* 027BF954 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF958 */ _t13 = cpu->r[1] + 0x00000038u; /* 027BF958 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF95C */ cpu->lr = cpu->r[0]; /* 027BF960 */ _t14 = cpu->r[1] + 0x0000003Cu; /* 027BF960 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BF964 */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027BF968 */ return; } // fn_027BF96C @ 0x27bf96c void Gambit_fn_027BF96C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF96C: ; // 0x27bf96c /* 027BF96C */ cpu->r[0] = cpu->lr; /* 027BF970 */ cpu->r[10] = 0x10110000u; /* 027BF974 */ _t0 = cpu->r[1] + 0xFFFFFFA0u; /* 027BF974 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF974 */ cpu->r[1] = _t0; /* 027BF978 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD9Cu; /* 027BF97C */ _t1 = cpu->r[1] + 0x00000058u; /* 027BF97C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF980 */ cpu->r[4] = cpu->r[9]; /* 027BF984 */ cpu->r[12] = 0x10110000u; /* 027BF988 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF988 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF98C */ _t3 = cpu->r[1] + 0x0000005Cu; /* 027BF98C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF990 */ _t4 = cpu->r[1] + 0x00000064u; /* 027BF990 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF994 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF998 */ _t5 = cpu->r[12] + 0x0000739Au; /* 027BF998 */ cpu->r[12] = rbrew_read16(cpu->mem, _t5); /* 027BF99C */ cpu->r[31] = cpu->r[6]; /* 027BF9A0 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF9A0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF9A4 */ cpu->r[0] = 0x00000020u; /* 027BF9A8 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF9A8 */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[12]); /* 027BF9AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF9B0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF9B0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF9B4 */ cpu->r[30] = cpu->r[5]; /* 027BF9B8 */ _t9 = cpu->r[1] + 0x00000052u; /* 027BF9B8 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]); /* 027BF9BC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF9BC */ _t11 = _t10 & 0x00000001u; /* 027BF9BC */ if (_t11) goto L_027BF9DC; else goto L_027BF9C0; L_027BF9C0: ; // 0x27bf9c0 /* 027BF9C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF9C4 */ Gambit_fn_027FDD00(cpu); /* 027BF9C8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF9CC */ cpu->r[4] = cpu->r[31]; /* 027BF9D0 */ cpu->r[3] = cpu->r[30]; /* 027BF9D4 */ Gambit_fn_027BF03C(cpu); /* 027BF9D8 */ goto L_027BF9F4; L_027BF9DC: ; // 0x27bf9dc /* 027BF9DC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF9E0 */ Gambit_fn_027FDB5C(cpu); /* 027BF9E4 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF9E8 */ cpu->r[4] = cpu->r[31]; /* 027BF9EC */ cpu->r[3] = cpu->r[30]; /* 027BF9F0 */ Gambit_fn_027BF03C(cpu); L_027BF9F4: ; // 0x27bf9f4 /* 027BF9F4 */ _t12 = cpu->r[1] + 0x00000064u; /* 027BF9F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF9F8 */ _t13 = cpu->r[1] + 0x00000058u; /* 027BF9F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF9FC */ cpu->lr = cpu->r[0]; /* 027BFA00 */ _t14 = cpu->r[1] + 0x0000005Cu; /* 027BFA00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BFA04 */ cpu->r[1] = cpu->r[1] + 0x00000060u; /* 027BFA08 */ return; } // fn_027BF974 @ 0x27bf974 void Gambit_fn_027BF974(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14; L_027BF974: ; // 0x27bf974 /* 027BF974 */ _t0 = cpu->r[1] + 0xFFFFFFA0u; /* 027BF974 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BF974 */ cpu->r[1] = _t0; /* 027BF978 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD9Cu; /* 027BF97C */ _t1 = cpu->r[1] + 0x00000058u; /* 027BF97C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027BF980 */ cpu->r[4] = cpu->r[9]; /* 027BF984 */ cpu->r[12] = 0x10110000u; /* 027BF988 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027BF988 */ rbrew_write32(cpu->mem, _t2, cpu->r[10]); /* 027BF98C */ _t3 = cpu->r[1] + 0x0000005Cu; /* 027BF98C */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027BF990 */ _t4 = cpu->r[1] + 0x00000064u; /* 027BF990 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027BF994 */ cpu->r[0] = cpu->r[1] + 0x00000014u; /* 027BF998 */ _t5 = cpu->r[12] + 0x0000739Au; /* 027BF998 */ cpu->r[12] = rbrew_read16(cpu->mem, _t5); /* 027BF99C */ cpu->r[31] = cpu->r[6]; /* 027BF9A0 */ _t6 = cpu->r[1] + 0x00000008u; /* 027BF9A0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027BF9A4 */ cpu->r[0] = 0x00000020u; /* 027BF9A8 */ _t7 = cpu->r[1] + 0x00000014u; /* 027BF9A8 */ rbrew_write16(cpu->mem, _t7, (uint16_t)cpu->r[12]); /* 027BF9AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027BF9B0 */ _t8 = cpu->r[1] + 0x00000010u; /* 027BF9B0 */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027BF9B4 */ cpu->r[30] = cpu->r[5]; /* 027BF9B8 */ _t9 = cpu->r[1] + 0x00000052u; /* 027BF9B8 */ rbrew_write16(cpu->mem, _t9, (uint16_t)cpu->r[12]); /* 027BF9BC */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BF9BC */ _t11 = _t10 & 0x00000001u; /* 027BF9BC */ if (_t11) goto L_027BF9DC; else goto L_027BF9C0; L_027BF9C0: ; // 0x27bf9c0 /* 027BF9C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF9C4 */ Gambit_fn_027FDD00(cpu); /* 027BF9C8 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF9CC */ cpu->r[4] = cpu->r[31]; /* 027BF9D0 */ cpu->r[3] = cpu->r[30]; /* 027BF9D4 */ Gambit_fn_027BF03C(cpu); /* 027BF9D8 */ goto L_027BF9F4; L_027BF9DC: ; // 0x27bf9dc /* 027BF9DC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BF9E0 */ Gambit_fn_027FDB5C(cpu); /* 027BF9E4 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027BF9E8 */ cpu->r[4] = cpu->r[31]; /* 027BF9EC */ cpu->r[3] = cpu->r[30]; /* 027BF9F0 */ Gambit_fn_027BF03C(cpu); L_027BF9F4: ; // 0x27bf9f4 /* 027BF9F4 */ _t12 = cpu->r[1] + 0x00000064u; /* 027BF9F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027BF9F8 */ _t13 = cpu->r[1] + 0x00000058u; /* 027BF9F8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t13); /* 027BF9FC */ cpu->lr = cpu->r[0]; /* 027BFA00 */ _t14 = cpu->r[1] + 0x0000005Cu; /* 027BFA00 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BFA04 */ cpu->r[1] = cpu->r[1] + 0x00000060u; /* 027BFA08 */ return; } // fn_027BFA0C @ 0x27bfa0c void Gambit_fn_027BFA0C(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; L_027BFA0C: ; // 0x27bfa0c /* 027BFA0C */ _t0 = cpu->r[1] + 0xFFFFFFB0u; /* 027BFA0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BFA0C */ cpu->r[1] = _t0; /* 027BFA10 */ cpu->r[0] = cpu->lr; /* 027BFA14 */ /* nop */ /* 027BFA18 */ cpu->r[30] = cpu->r[4]; /* 027BFA1C */ cpu->r[27] = cpu->r[5]; /* 027BFA20 */ cpu->r[28] = cpu->r[6]; /* 027BFA24 */ cpu->r[31] = cpu->r[7]; /* 027BFA24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BFA28 */ cpu->r[4] = 0x00000000u; /* 027BFA2C */ _t1 = cpu->r[1] + 0x00000054u; /* 027BFA2C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BFA30 */ cpu->r[29] = cpu->r[3]; /* 027BFA34 */ _t2 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BFA34 */ _t3 = _t2 & 0x00000001u; /* 027BFA34 */ if (_t3) goto L_027BFA38; else goto L_027BFAA4; L_027BFA38: ; // 0x27bfa38 /* 027BFA38 */ _t4 = cpu->r[29] + 0x00000024u; /* 027BFA38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4); /* 027BFA3C */ cpu->r[12] = cpu->r[1] + 0x00000008u; /* 027BFA40 */ cpu->ctr = cpu->r[31]; /* 027BFA44 */ _t5 = cpu->r[29] + 0x00000028u; /* 027BFA44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t5); /* 027BFA48 */ cpu->r[8] = cpu->r[12]; /* 027BFA4C */ cpu->r[11] = 0x00000000u; L_027BFA50: ; // 0x27bfa50 /* 027BFA50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x0000000Cu); /* 027BFA54 */ cpu->r[6] = cpu->r[12]; /* 027BFA58 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFA58 */ _t7 = _t6 & 0x00000001u; /* 027BFA58 */ if (_t7) goto L_027BFA5C; else goto L_027BFA60; L_027BFA5C: ; // 0x27bfa5c /* 027BFA5C */ cpu->r[6] = cpu->r[8]; L_027BFA60: ; // 0x27bfa60 /* 027BFA60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]); /* 027BFA64 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFA64 */ _t9 = _t8 & 0x00000001u; /* 027BFA64 */ if (_t9) goto L_027BFA68; else goto L_027BFA88; L_027BFA68: ; // 0x27bfa68 /* 027BFA68 */ _t10 = cpu->r[10] + cpu->r[11]; /* 027BFA68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t10); /* 027BFA6C */ _t11 = cpu->r[9] + 0x00000000u; /* 027BFA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027BFA70 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BFA74 */ cpu->r[8] = cpu->r[8] + 0x00000004u; /* 027BFA78 */ cpu->r[11] = cpu->r[11] + 0x00000004u; /* 027BFA7C */ _t12 = cpu->r[6] + 0x00000000u; /* 027BFA7C */ rbrew_write32(cpu->mem, _t12, cpu->r[0]); /* 027BFA80 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BFA80 */ _t13 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BFA80 */ _t14 = _t13 >> (0x00000002u & 31u); /* 027BFA80 */ _t15 = _t14 & 0x00000001u; /* 027BFA80 */ if (_t15) goto L_027BFA50; else goto L_027BFA84; L_027BFA84: ; // 0x27bfa84 /* 027BFA84 */ goto L_027BFAA4; L_027BFA88: ; // 0x27bfa88 /* 027BFA88 */ _t16 = cpu->r[10] + 0x00000000u; /* 027BFA88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16); /* 027BFA8C */ _t17 = cpu->r[9] + 0x00000000u; /* 027BFA8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027BFA90 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BFA94 */ cpu->r[8] = cpu->r[8] + 0x00000004u; /* 027BFA98 */ cpu->r[11] = cpu->r[11] + 0x00000004u; /* 027BFA9C */ _t18 = cpu->r[6] + 0x00000000u; /* 027BFA9C */ rbrew_write32(cpu->mem, _t18, cpu->r[0]); /* 027BFAA0 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BFAA0 */ _t19 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BFAA0 */ _t20 = _t19 >> (0x00000002u & 31u); /* 027BFAA0 */ _t21 = _t20 & 0x00000001u; /* 027BFAA0 */ if (_t21) goto L_027BFA50; else goto L_027BFAA4; L_027BFAA4: ; // 0x27bfaa4 /* 027BFAA4 */ cpu->r[3] = cpu->r[30]; /* 027BFAA8 */ Gambit_fn_027C275C(cpu); /* 027BFAAC */ _t22 = cpu->r[3] + 0x00000000u; /* 027BFAAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027BFAB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BFAB4 */ cpu->r[9] = 0x0000270Fu; /* 027BFAB8 */ _t23 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFAB8 */ _t24 = _t23 & 0x00000001u; /* 027BFAB8 */ if (_t24) goto L_027BFABC; else goto L_027BFAD4; L_027BFABC: ; // 0x27bfabc /* 027BFABC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Cu); /* 027BFAC0 */ cpu->r[12] = cpu->r[1] + 0x00000008u; /* 027BFAC4 */ _t25 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFAC4 */ _t26 = _t25 & 0x00000001u; /* 027BFAC4 */ if (_t26) goto L_027BFAC8; else goto L_027BFAD0; L_027BFAC8: ; // 0x27bfac8 /* 027BFAC8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BFACC */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027BFAD0: ; // 0x27bfad0 /* 027BFAD0 */ _t27 = cpu->r[12] + 0x00000000u; /* 027BFAD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27); L_027BFAD4: ; // 0x27bfad4 /* 027BFAD4 */ _t28 = cpu->r[30] + 0x00000004u; /* 027BFAD4 */ cpu->r[6] = rbrew_read16(cpu->mem, _t28); /* 027BFAD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x0000000Du); /* 027BFADC */ _t29 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BFADC */ _t30 = _t29 & 0x00000001u; /* 027BFADC */ if (_t30) goto L_027BFDD0; else goto L_027BFAE0; L_027BFAE0: ; // 0x27bfae0 /* 027BFAE0 */ cpu->r[0] = 0x027C0000u; /* 027BFAE4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BFAE8 */ cpu->r[0] = cpu->r[0] + 0xFFFFFAF8u; /* 027BFAEC */ cpu->r[0] = cpu->r[6] + cpu->r[0]; /* 027BFAF0 */ cpu->ctr = cpu->r[0]; /* 027BFAF4 */ rbrew_dispatch(cpu, cpu->ctr); return; L_027BFDD0: ; // 0x27bfdd0 /* 027BFDD0 */ /* nop */ /* 027BFDD4 */ _t31 = cpu->r[1] + 0x00000054u; /* 027BFDD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t31); /* 027BFDD8 */ cpu->lr = cpu->r[0]; /* 027BFDDC */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027BFDE0 */ cpu->r[3] = 0x00000000u; /* 027BFDE4 */ return; } // fn_027BFDE8 @ 0x27bfde8 void Gambit_fn_027BFDE8(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, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324, _t325, _t326, _t327, _t328, _t329, _t330, _t331, _t332, _t333, _t334, _t335, _t336, _t337, _t338, _t339, _t340, _t341, _t342, _t343, _t344, _t345, _t346, _t347, _t348, _t349, _t350, _t351, _t352, _t353, _t354, _t355, _t356, _t357, _t358, _t359, _t360, _t361, _t362, _t363, _t364, _t365, _t366, _t367, _t368, _t369, _t370, _t371, _t372, _t373, _t374, _t375, _t376, _t377, _t378, _t379, _t380, _t381, _t382, _t383, _t384, _t385, _t386, _t387, _t388, _t389, _t390, _t391, _t392, _t393, _t394, _t395, _t396, _t397, _t398, _t399, _t400, _t401, _t402, _t403, _t404, _t405, _t406, _t407, _t408, _t409, _t410, _t411, _t412, _t413, _t414, _t415, _t416, _t417, _t418, _t419, _t420, _t421, _t422, _t423, _t424, _t425, _t426, _t427, _t428, _t429, _t430, _t431, _t432, _t433, _t434, _t435, _t436, _t437, _t438, _t439, _t440, _t441, _t442, _t443, _t444, _t445, _t446, _t447, _t448, _t449, _t450, _t451, _t452, _t453, _t454, _t455, _t456, _t457, _t458, _t459, _t460, _t461, _t462, _t463, _t464, _t465, _t466, _t467, _t468, _t469; L_027BE09C: ; // 0x27be09c /* 027BE09C */ _t0 = cpu->r[1] + 0xFFFFFF30u; /* 027BE09C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BE09C */ cpu->r[1] = _t0; /* 027BE0A0 */ cpu->r[0] = cpu->lr; /* 027BE0A4 */ /* nop */ /* 027BE0A8 */ cpu->r[30] = cpu->r[4]; /* 027BE0AC */ cpu->r[28] = cpu->r[5]; /* 027BE0B0 */ cpu->r[31] = cpu->r[7]; /* 027BE0B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BE0B4 */ cpu->r[4] = 0x00000000u; /* 027BE0B8 */ _t1 = cpu->r[1] + 0x000000D4u; /* 027BE0B8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BE0BC */ cpu->r[29] = cpu->r[6]; /* 027BE0C0 */ _t2 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE0C0 */ _t3 = _t2 & 0x00000001u; /* 027BE0C0 */ if (_t3) goto L_027BE0C4; else goto L_027BE130; L_027BE0C4: ; // 0x27be0c4 /* 027BE0C4 */ _t4 = cpu->r[3] + 0x00000024u; /* 027BE0C4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4); /* 027BE0C8 */ cpu->r[11] = cpu->r[1] + 0x00000080u; /* 027BE0CC */ cpu->ctr = cpu->r[31]; /* 027BE0D0 */ _t5 = cpu->r[3] + 0x00000028u; /* 027BE0D0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5); /* 027BE0D4 */ cpu->r[7] = cpu->r[11]; /* 027BE0D8 */ cpu->r[10] = 0x00000000u; L_027BE0DC: ; // 0x27be0dc /* 027BE0DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x0000000Cu); /* 027BE0E0 */ cpu->r[9] = cpu->r[11]; /* 027BE0E4 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE0E4 */ _t7 = _t6 & 0x00000001u; /* 027BE0E4 */ if (_t7) goto L_027BE0E8; else goto L_027BE0EC; L_027BE0E8: ; // 0x27be0e8 /* 027BE0E8 */ cpu->r[9] = cpu->r[7]; L_027BE0EC: ; // 0x27be0ec /* 027BE0EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[6]); /* 027BE0F0 */ _t8 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE0F0 */ _t9 = _t8 & 0x00000001u; /* 027BE0F0 */ if (_t9) goto L_027BE0F4; else goto L_027BE114; L_027BE0F4: ; // 0x27be0f4 /* 027BE0F4 */ _t10 = cpu->r[8] + cpu->r[10]; /* 027BE0F4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027BE0F8 */ _t11 = cpu->r[12] + 0x00000000u; /* 027BE0F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027BE0FC */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BE100 */ cpu->r[7] = cpu->r[7] + 0x00000004u; /* 027BE104 */ cpu->r[10] = cpu->r[10] + 0x00000004u; /* 027BE108 */ _t12 = cpu->r[9] + 0x00000000u; /* 027BE108 */ rbrew_write32(cpu->mem, _t12, cpu->r[0]); /* 027BE10C */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BE10C */ _t13 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BE10C */ _t14 = _t13 >> (0x00000002u & 31u); /* 027BE10C */ _t15 = _t14 & 0x00000001u; /* 027BE10C */ if (_t15) goto L_027BE0DC; else goto L_027BE110; L_027BE110: ; // 0x27be110 /* 027BE110 */ goto L_027BE130; L_027BE114: ; // 0x27be114 /* 027BE114 */ _t16 = cpu->r[8] + 0x00000000u; /* 027BE114 */ cpu->r[12] = rbrew_read32(cpu->mem, _t16); /* 027BE118 */ _t17 = cpu->r[12] + 0x00000000u; /* 027BE118 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027BE11C */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BE120 */ cpu->r[7] = cpu->r[7] + 0x00000004u; /* 027BE124 */ cpu->r[10] = cpu->r[10] + 0x00000004u; /* 027BE128 */ _t18 = cpu->r[9] + 0x00000000u; /* 027BE128 */ rbrew_write32(cpu->mem, _t18, cpu->r[0]); /* 027BE12C */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BE12C */ _t19 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BE12C */ _t20 = _t19 >> (0x00000002u & 31u); /* 027BE12C */ _t21 = _t20 & 0x00000001u; /* 027BE12C */ if (_t21) goto L_027BE0DC; else goto L_027BE130; L_027BE130: ; // 0x27be130 /* 027BE130 */ cpu->r[3] = cpu->r[30]; /* 027BE134 */ Gambit_fn_027C274C(cpu); /* 027BE138 */ cpu->r[26] = cpu->r[3]; /* 027BE13C */ _t22 = cpu->r[26] + 0x00000004u; /* 027BE13C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027BE140 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BE144 */ _t23 = cpu->r[26] + 0x00000000u; /* 027BE144 */ cpu->r[5] = rbrew_read32(cpu->mem, _t23); /* 027BE148 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE148 */ _t25 = _t24 & 0x00000001u; /* 027BE148 */ if (_t25) goto L_027BE14C; else goto L_027BE164; L_027BE14C: ; // 0x27be14c /* 027BE14C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Cu); /* 027BE150 */ cpu->r[11] = cpu->r[1] + 0x00000080u; /* 027BE154 */ _t26 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE154 */ _t27 = _t26 & 0x00000001u; /* 027BE154 */ if (_t27) goto L_027BE158; else goto L_027BE160; L_027BE158: ; // 0x27be158 /* 027BE158 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BE15C */ cpu->r[11] = cpu->r[11] + cpu->r[5]; L_027BE160: ; // 0x27be160 /* 027BE160 */ _t28 = cpu->r[11] + 0x00000000u; /* 027BE160 */ cpu->r[5] = rbrew_read32(cpu->mem, _t28); L_027BE164: ; // 0x27be164 /* 027BE164 */ _t29 = cpu->r[30] + 0x00000004u; /* 027BE164 */ cpu->r[0] = rbrew_read16(cpu->mem, _t29); /* 027BE168 */ cpu->r[30] = 0x10110000u; /* 027BE16C */ cpu->r[8] = 0x00000020u; /* 027BE170 */ _t30 = cpu->r[30] + 0x0000739Au; /* 027BE170 */ cpu->r[30] = rbrew_read16(cpu->mem, _t30); /* 027BE174 */ cpu->r[9] = 0x10110000u; /* 027BE178 */ _t31 = cpu->r[1] + 0x00000010u; /* 027BE178 */ rbrew_write32(cpu->mem, _t31, cpu->r[8]); /* 027BE17C */ cpu->r[9] = cpu->r[9] + 0xFFFFBD24u; /* 027BE180 */ _t32 = cpu->r[1] + 0x00000040u; /* 027BE180 */ rbrew_write16(cpu->mem, _t32, (uint16_t)cpu->r[30]); /* 027BE184 */ cpu->r[12] = 0x10110000u; /* 027BE188 */ cpu->r[10] = cpu->r[1] + 0x00000040u; /* 027BE18C */ _t33 = cpu->r[1] + 0x0000000Cu; /* 027BE18C */ rbrew_write32(cpu->mem, _t33, cpu->r[9]); /* 027BE190 */ cpu->r[9] = 0x10110000u; /* 027BE194 */ _t34 = cpu->r[1] + 0x00000034u; /* 027BE194 */ rbrew_write32(cpu->mem, _t34, cpu->r[10]); /* 027BE198 */ cpu->r[9] = cpu->r[9] + 0xFFFFBD9Cu; /* 027BE19C */ _t35 = cpu->r[12] + 0x00007399u; /* 027BE19C */ cpu->r[12] = rbrew_read8(cpu->mem, _t35); /* 027BE1A0 */ cpu->r[7] = cpu->r[1] + 0x00000014u; /* 027BE1A4 */ _t36 = cpu->r[1] + 0x00000038u; /* 027BE1A4 */ rbrew_write32(cpu->mem, _t36, cpu->r[9]); /* 027BE1A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000014u); /* 027BE1AC */ _t37 = cpu->r[1] + 0x00000033u; /* 027BE1AC */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[12]); /* 027BE1B0 */ cpu->r[27] = 0x00000000u; /* 027BE1B4 */ _t38 = cpu->r[1] + 0x0000003Cu; /* 027BE1B4 */ rbrew_write32(cpu->mem, _t38, cpu->r[8]); /* 027BE1B8 */ _t39 = cpu->r[1] + 0x00000008u; /* 027BE1B8 */ rbrew_write32(cpu->mem, _t39, cpu->r[7]); /* 027BE1BC */ _t40 = cpu->r[1] + 0x0000007Eu; /* 027BE1BC */ rbrew_write16(cpu->mem, _t40, (uint16_t)cpu->r[30]); /* 027BE1C0 */ _t41 = cpu->r[1] + 0x00000014u; /* 027BE1C0 */ rbrew_write8(cpu->mem, _t41, (uint8_t)cpu->r[12]); /* 027BE1C4 */ _t42 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE1C4 */ _t43 = _t42 & 0x00000001u; /* 027BE1C4 */ if (_t43) goto L_027BE1C8; else goto L_027BE240; L_027BE1C8: ; // 0x27be1c8 /* 027BE1C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000013u); /* 027BE1CC */ _t44 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE1CC */ _t45 = _t44 & 0x00000001u; /* 027BE1CC */ if (_t45) goto L_027BE1EC; else goto L_027BE1D0; L_027BE1D0: ; // 0x27be1d0 /* 027BE1D0 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BE1D4 */ cpu->r[6] = cpu->r[12] + 0x10110000u; /* 027BE1D8 */ _t46 = cpu->r[6] + 0xFFFFBE30u; /* 027BE1D8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t46); /* 027BE1DC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE1E0 */ _t47 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BE1E0 */ _t48 = _t47 & 0x00000001u; /* 027BE1E0 */ if (_t48) goto L_027BE1E4; // else: addr-0 trap, fall-through L_027BE1E4: ; // 0x27be1e4 /* 027BE1E4 */ Gambit_fn_0282A5F4(cpu); /* 027BE1E8 */ _t49 = cpu->r[1] + 0x00000038u; /* 027BE1E8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49); L_027BE1EC: ; // 0x27be1ec /* 027BE1EC */ _t50 = cpu->r[9] + 0x00000014u; /* 027BE1EC */ cpu->r[0] = rbrew_read32(cpu->mem, _t50); /* 027BE1F0 */ cpu->ctr = cpu->r[0]; /* 027BE1F4 */ cpu->r[3] = cpu->r[1] + 0x00000034u; /* 027BE1F8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE1FC */ _t51 = cpu->r[1] + 0x0000000Cu; /* 027BE1FC */ cpu->r[8] = rbrew_read32(cpu->mem, _t51); /* 027BE200 */ _t52 = cpu->r[8] + 0x00000014u; /* 027BE200 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52); /* 027BE204 */ cpu->ctr = cpu->r[0]; /* 027BE208 */ _t53 = cpu->r[1] + 0x00000034u; /* 027BE208 */ cpu->r[31] = rbrew_read32(cpu->mem, _t53); /* 027BE20C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE210 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE214 */ _t54 = cpu->r[1] + 0x0000003Cu; /* 027BE214 */ cpu->r[4] = rbrew_read32(cpu->mem, _t54); /* 027BE218 */ cpu->r[6] = 0xFFFFFFFFu; /* 027BE21C */ _t55 = cpu->r[1] + 0x00000008u; /* 027BE21C */ cpu->r[5] = rbrew_read32(cpu->mem, _t55); /* 027BE220 */ cpu->r[3] = cpu->r[31]; /* 027BE224 */ Gambit_fn_0282C89C(cpu); /* 027BE228 */ _t56 = cpu->r[26] + 0x00000008u; /* 027BE228 */ cpu->r[0] = rbrew_read8(cpu->mem, _t56); /* 027BE22C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BE230 */ cpu->r[27] = cpu->r[3]; /* 027BE234 */ _t57 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE234 */ _t58 = _t57 & 0x00000001u; /* 027BE234 */ if (_t58) goto L_027BE240; else goto L_027BE238; L_027BE238: ; // 0x27be238 /* 027BE238 */ cpu->r[3] = cpu->r[1] + 0x00000034u; /* 027BE23C */ Gambit_fn_02800614(cpu); L_027BE240: ; // 0x27be240 /* 027BE240 */ _t59 = cpu->r[28] + 0x00000004u; /* 027BE240 */ cpu->r[5] = rbrew_read32(cpu->mem, _t59); /* 027BE244 */ _t60 = cpu->r[5] + 0x00000014u; /* 027BE244 */ cpu->r[6] = rbrew_read32(cpu->mem, _t60); /* 027BE248 */ cpu->ctr = cpu->r[6]; /* 027BE24C */ _t61 = cpu->r[28] + 0x00000000u; /* 027BE24C */ cpu->r[25] = rbrew_read32(cpu->mem, _t61); /* 027BE250 */ cpu->r[26] = cpu->r[27]; /* 027BE254 */ cpu->r[3] = cpu->r[28]; /* 027BE258 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE25C */ _t62 = cpu->r[28] + 0x00000000u; /* 027BE25C */ cpu->r[7] = rbrew_read32(cpu->mem, _t62); /* 027BE260 */ _t63 = cpu->r[7] + 0x00000000u; /* 027BE260 */ cpu->r[0] = rbrew_read16(cpu->mem, _t63); /* 027BE264 */ cpu->r[31] = 0x00000000u; /* 027BE268 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027BE26C */ cpu->r[0] = 0x00080000u; /* 027BE270 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE270 */ _t65 = _t64 & 0x00000001u; /* 027BE270 */ if (_t65) goto L_027BE298; else goto L_027BE274; L_027BE274: ; // 0x27be274 /* 027BE274 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027BE278 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027BE27C */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027BE280 */ _t66 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE280 */ _t67 = _t66 & 0x00000001u; /* 027BE280 */ if (_t67) goto L_027BE294; else goto L_027BE284; L_027BE284: ; // 0x27be284 /* 027BE284 */ _t68 = cpu->r[7] + 0x00000000u; /* 027BE284 */ cpu->r[8] = rbrew_read16(cpu->mem, _t68); /* 027BE288 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027BE28C */ _t69 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE28C */ _t70 = _t69 & 0x00000001u; /* 027BE28C */ if (_t70) goto L_027BE290; else goto L_027BE274; L_027BE290: ; // 0x27be290 /* 027BE290 */ goto L_027BE298; L_027BE294: ; // 0x27be294 /* 027BE294 */ cpu->r[31] = 0x00000000u; L_027BE298: ; // 0x27be298 /* 027BE298 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE29C */ _t71 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE29C */ _t72 = _t71 & 0x00000001u; /* 027BE29C */ if (_t72) goto L_027BE2A0; else goto L_027BE2B0; L_027BE2A0: ; // 0x27be2a0 /* 027BE2A0 */ cpu->r[11] = cpu->r[31] + cpu->r[29]; /* 027BE2A4 */ cpu->r[29] = cpu->r[11] + 0x00000001u; /* 027BE2A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE2A8 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE2A8 */ _t74 = _t73 & 0x00000001u; /* 027BE2A8 */ if (_t74) goto L_027BE2AC; else goto L_027BE2B0; L_027BE2AC: ; // 0x27be2ac /* 027BE2AC */ cpu->r[29] = 0x00000000u; L_027BE2B0: ; // 0x27be2b0 /* 027BE2B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BE2B4 */ _t75 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE2B4 */ _t76 = _t75 & 0x00000001u; /* 027BE2B4 */ if (_t76) goto L_027BE2B8; else goto L_027BE308; L_027BE2B8: ; // 0x27be2b8 /* 027BE2B8 */ _t77 = cpu->r[1] + 0x00000038u; /* 027BE2B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t77); /* 027BE2BC */ _t78 = cpu->r[12] + 0x00000014u; /* 027BE2BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t78); /* 027BE2C0 */ cpu->ctr = cpu->r[0]; /* 027BE2C4 */ cpu->r[3] = cpu->r[1] + 0x00000034u; /* 027BE2C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE2CC */ _t79 = cpu->r[1] + 0x00000034u; /* 027BE2CC */ cpu->r[11] = rbrew_read32(cpu->mem, _t79); /* 027BE2D0 */ _t80 = cpu->r[11] + 0x00000000u; /* 027BE2D0 */ cpu->r[9] = rbrew_read16(cpu->mem, _t80); /* 027BE2D4 */ cpu->r[26] = 0x00000000u; /* 027BE2D8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]); /* 027BE2DC */ cpu->r[5] = 0x00080000u; /* 027BE2E0 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE2E0 */ _t82 = _t81 & 0x00000001u; /* 027BE2E0 */ if (_t82) goto L_027BE308; else goto L_027BE2E4; L_027BE2E4: ; // 0x27be2e4 /* 027BE2E4 */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027BE2E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[5]); /* 027BE2EC */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027BE2F0 */ _t83 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE2F0 */ _t84 = _t83 & 0x00000001u; /* 027BE2F0 */ if (_t84) goto L_027BE304; else goto L_027BE2F4; L_027BE2F4: ; // 0x27be2f4 /* 027BE2F4 */ _t85 = cpu->r[11] + 0x00000000u; /* 027BE2F4 */ cpu->r[10] = rbrew_read16(cpu->mem, _t85); /* 027BE2F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[30]); /* 027BE2FC */ _t86 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE2FC */ _t87 = _t86 & 0x00000001u; /* 027BE2FC */ if (_t87) goto L_027BE300; else goto L_027BE2E4; L_027BE300: ; // 0x27be300 /* 027BE300 */ goto L_027BE308; L_027BE304: ; // 0x27be304 /* 027BE304 */ cpu->r[26] = 0x00000000u; L_027BE308: ; // 0x27be308 /* 027BE308 */ _t88 = cpu->r[28] + 0x00000008u; /* 027BE308 */ cpu->r[12] = rbrew_read32(cpu->mem, _t88); /* 027BE30C */ cpu->r[10] = cpu->r[12] - cpu->r[29]; /* 027BE310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[10]); /* 027BE314 */ _t89 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE314 */ _t90 = _t89 & 0x00000001u; /* 027BE314 */ if (_t90) goto L_027BE31C; else goto L_027BE318; L_027BE318: ; // 0x27be318 /* 027BE318 */ cpu->r[26] = cpu->r[10] + 0xFFFFFFFFu; L_027BE31C: ; // 0x27be31c /* 027BE31C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BE320 */ _t91 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE320 */ _t92 = _t91 & 0x00000001u; /* 027BE320 */ if (_t92) goto L_027BE324; else goto L_027BE368; L_027BE324: ; // 0x27be324 /* 027BE324 */ _t93 = cpu->r[1] + 0x00000038u; /* 027BE324 */ cpu->r[6] = rbrew_read32(cpu->mem, _t93); /* 027BE328 */ _t94 = cpu->r[6] + 0x00000014u; /* 027BE328 */ cpu->r[8] = rbrew_read32(cpu->mem, _t94); /* 027BE32C */ cpu->r[0] = rbrew_rlwinm(cpu->r[29], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE330 */ cpu->ctr = cpu->r[8]; /* 027BE334 */ cpu->r[28] = cpu->r[25] + cpu->r[0]; /* 027BE338 */ cpu->r[3] = cpu->r[1] + 0x00000034u; /* 027BE33C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE340 */ _t95 = cpu->r[1] + 0x00000034u; /* 027BE340 */ cpu->r[4] = rbrew_read32(cpu->mem, _t95); /* 027BE344 */ cpu->r[6] = 0x00000000u; /* 027BE348 */ cpu->r[5] = rbrew_rlwinm(cpu->r[26], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE34C */ cpu->r[3] = cpu->r[28]; /* 027BE350 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BE354 */ cpu->r[0] = cpu->r[29] + cpu->r[26]; /* 027BE358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[31]); /* 027BE35C */ _t96 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE35C */ _t97 = _t96 & 0x00000001u; /* 027BE35C */ if (_t97) goto L_027BE360; else goto L_027BE368; L_027BE360: ; // 0x27be360 /* 027BE360 */ cpu->r[5] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE364 */ _t98 = cpu->r[5] + cpu->r[25]; /* 027BE364 */ rbrew_write16(cpu->mem, _t98, (uint16_t)cpu->r[30]); L_027BE368: ; // 0x27be368 /* 027BE368 */ cpu->r[3] = cpu->r[27]; /* 027BE36C */ /* nop */ /* 027BE370 */ _t99 = cpu->r[1] + 0x000000D4u; /* 027BE370 */ cpu->r[0] = rbrew_read32(cpu->mem, _t99); /* 027BE374 */ cpu->lr = cpu->r[0]; /* 027BE378 */ cpu->r[1] = cpu->r[1] + 0x000000D0u; /* 027BE37C */ return; L_027BE540: ; // 0x27be540 /* 027BE540 */ _t100 = cpu->r[1] + 0xFFFFFE38u; /* 027BE540 */ rbrew_write32(cpu->mem, _t100, cpu->r[1]); /* 027BE540 */ cpu->r[1] = _t100; /* 027BE544 */ /* nop */ /* 027BE548 */ cpu->r[26] = cpu->r[3]; /* 027BE54C */ cpu->r[30] = cpu->r[4]; /* 027BE550 */ cpu->r[0] = cpu->lr; /* 027BE554 */ cpu->r[27] = cpu->r[5]; /* 027BE558 */ cpu->r[3] = cpu->r[30]; /* 027BE55C */ cpu->r[28] = cpu->r[6]; /* 027BE560 */ cpu->r[31] = cpu->r[7]; /* 027BE564 */ _t101 = cpu->r[1] + 0x000001CCu; /* 027BE564 */ rbrew_write32(cpu->mem, _t101, cpu->r[0]); /* 027BE568 */ Gambit_fn_027C2754(cpu); /* 027BE56C */ _t102 = cpu->r[30] + 0x00000004u; /* 027BE56C */ cpu->r[0] = rbrew_read16(cpu->mem, _t102); /* 027BE570 */ cpu->r[29] = 0x10110000u; /* 027BE574 */ cpu->r[30] = 0x10110000u; /* 027BE578 */ cpu->r[8] = 0x00000000u; /* 027BE57C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000006u); /* 027BE580 */ cpu->r[29] = cpu->r[29] + 0xFFFFBCDCu; /* 027BE584 */ _t103 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE584 */ _t104 = _t103 & 0x00000001u; /* 027BE584 */ if (_t104) goto L_027BE588; else goto L_027BE5C0; L_027BE588: ; // 0x27be588 /* 027BE588 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u); /* 027BE58C */ _t105 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE58C */ _t106 = _t105 & 0x00000001u; /* 027BE58C */ if (_t106) goto L_027BE590; else goto L_027BE5E4; L_027BE590: ; // 0x27be590 /* 027BE590 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u); /* 027BE594 */ _t107 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE594 */ _t108 = _t107 & 0x00000001u; /* 027BE594 */ if (_t108) goto L_027BE5A8; else goto L_027BE598; L_027BE598: ; // 0x27be598 /* 027BE598 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u); /* 027BE59C */ _t109 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE59C */ _t110 = _t109 & 0x00000001u; /* 027BE59C */ if (_t110) goto L_027BE5A0; else goto L_027BE5E4; L_027BE5A0: ; // 0x27be5a0 /* 027BE5A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BE5A4 */ _t111 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE5A4 */ _t112 = _t111 & 0x00000001u; /* 027BE5A4 */ if (_t112) goto L_027BE5A8; else goto L_027BE7A0; L_027BE5A8: ; // 0x27be5a8 /* 027BE5A8 */ /* nop */ /* 027BE5AC */ _t113 = cpu->r[1] + 0x000001CCu; /* 027BE5AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t113); /* 027BE5B0 */ cpu->lr = cpu->r[0]; /* 027BE5B4 */ cpu->r[1] = cpu->r[1] + 0x000001C8u; /* 027BE5B8 */ cpu->r[3] = 0x00000000u; /* 027BE5BC */ return; L_027BE5C0: ; // 0x27be5c0 /* 027BE5C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000006u); /* 027BE5C4 */ _t114 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE5C4 */ _t115 = _t114 & 0x00000001u; /* 027BE5C4 */ if (_t115) goto L_027BE5E4; else goto L_027BE5C8; L_027BE5C8: ; // 0x27be5c8 /* 027BE5C8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000008u); /* 027BE5CC */ _t116 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE5CC */ _t117 = _t116 & 0x00000001u; /* 027BE5CC */ if (_t117) goto L_027BE5A8; else goto L_027BE5D0; L_027BE5D0: ; // 0x27be5d0 /* 027BE5D0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000011u); /* 027BE5D4 */ _t118 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE5D4 */ _t119 = _t118 & 0x00000001u; /* 027BE5D4 */ if (_t119) goto L_027BE5E4; else goto L_027BE5D8; L_027BE5D8: ; // 0x27be5d8 /* 027BE5D8 */ _t120 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE5D8 */ _t121 = _t120 & 0x00000001u; /* 027BE5D8 */ if (_t121) goto L_027BEB94; else goto L_027BE5DC; L_027BE5DC: ; // 0x27be5dc /* 027BE5DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000017u); /* 027BE5E0 */ _t122 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE5E0 */ _t123 = _t122 & 0x00000001u; /* 027BE5E0 */ if (_t123) goto L_027BE5A8; else goto L_027BE5E4; L_027BE5E4: ; // 0x27be5e4 /* 027BE5E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BE5E8 */ _t124 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE5E8 */ _t125 = _t124 & 0x00000001u; /* 027BE5E8 */ if (_t125) goto L_027BE5A8; else goto L_027BE5EC; L_027BE5EC: ; // 0x27be5ec /* 027BE5EC */ _t126 = cpu->r[3] + 0x00000000u; /* 027BE5EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t126); /* 027BE5F0 */ _t127 = cpu->r[26] + 0x00000024u; /* 027BE5F0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t127); /* 027BE5F4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[8]); /* 027BE5F8 */ _t128 = cpu->r[26] + 0x00000028u; /* 027BE5F8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t128); /* 027BE5FC */ _t129 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE5FC */ _t130 = _t129 & 0x00000001u; /* 027BE5FC */ if (_t130) goto L_027BE600; else goto L_027BE608; L_027BE600: ; // 0x27be600 /* 027BE600 */ cpu->r[9] = rbrew_rlwinm(cpu->r[5], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BE604 */ cpu->r[8] = cpu->r[8] + cpu->r[9]; L_027BE608: ; // 0x27be608 /* 027BE608 */ _t131 = cpu->r[8] + 0x00000000u; /* 027BE608 */ cpu->r[11] = rbrew_read32(cpu->mem, _t131); /* 027BE60C */ _t132 = cpu->r[1] + 0x00000064u; /* 027BE60C */ rbrew_write32(cpu->mem, _t132, cpu->r[29]); /* 027BE610 */ _t133 = cpu->r[11] + 0x00000000u; /* 027BE610 */ cpu->r[0] = rbrew_read32(cpu->mem, _t133); /* 027BE614 */ cpu->r[3] = cpu->r[1] + 0x00000060u; /* 027BE618 */ _t134 = cpu->r[1] + 0x00000060u; /* 027BE618 */ rbrew_write32(cpu->mem, _t134, cpu->r[0]); /* 027BE61C */ Gambit_fn_027C24B8(cpu); /* 027BE620 */ _t135 = cpu->r[1] + 0x00000060u; /* 027BE620 */ cpu->r[8] = rbrew_read32(cpu->mem, _t135); /* 027BE624 */ _t136 = cpu->r[30] + 0x0000739Au; /* 027BE624 */ cpu->r[31] = rbrew_read16(cpu->mem, _t136); /* 027BE628 */ _t137 = cpu->r[8] + 0x00000000u; /* 027BE628 */ cpu->r[7] = rbrew_read16(cpu->mem, _t137); /* 027BE62C */ cpu->r[26] = 0x00000000u; /* 027BE630 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027BE634 */ cpu->r[11] = 0x00080000u; /* 027BE638 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE638 */ _t139 = _t138 & 0x00000001u; /* 027BE638 */ if (_t139) goto L_027BE660; else goto L_027BE63C; L_027BE63C: ; // 0x27be63c /* 027BE63C */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027BE640 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[11]); /* 027BE644 */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027BE648 */ _t140 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE648 */ _t141 = _t140 & 0x00000001u; /* 027BE648 */ if (_t141) goto L_027BE65C; else goto L_027BE64C; L_027BE64C: ; // 0x27be64c /* 027BE64C */ _t142 = cpu->r[8] + 0x00000000u; /* 027BE64C */ cpu->r[10] = rbrew_read16(cpu->mem, _t142); /* 027BE650 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BE654 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE654 */ _t144 = _t143 & 0x00000001u; /* 027BE654 */ if (_t144) goto L_027BE658; else goto L_027BE63C; L_027BE658: ; // 0x27be658 /* 027BE658 */ goto L_027BE660; L_027BE65C: ; // 0x27be65c /* 027BE65C */ cpu->r[26] = 0x00000000u; L_027BE660: ; // 0x27be660 /* 027BE660 */ _t145 = cpu->r[27] + 0x00000004u; /* 027BE660 */ cpu->r[12] = rbrew_read32(cpu->mem, _t145); /* 027BE664 */ _t146 = cpu->r[12] + 0x00000014u; /* 027BE664 */ cpu->r[4] = rbrew_read32(cpu->mem, _t146); /* 027BE668 */ cpu->r[29] = cpu->r[26]; /* 027BE66C */ cpu->ctr = cpu->r[4]; /* 027BE670 */ _t147 = cpu->r[27] + 0x00000000u; /* 027BE670 */ cpu->r[25] = rbrew_read32(cpu->mem, _t147); /* 027BE674 */ cpu->r[3] = cpu->r[27]; /* 027BE678 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE67C */ _t148 = cpu->r[27] + 0x00000000u; /* 027BE67C */ cpu->r[12] = rbrew_read32(cpu->mem, _t148); /* 027BE680 */ _t149 = cpu->r[12] + 0x00000000u; /* 027BE680 */ cpu->r[5] = rbrew_read16(cpu->mem, _t149); /* 027BE684 */ cpu->r[30] = 0x00000000u; /* 027BE688 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027BE68C */ cpu->r[7] = 0x00080000u; /* 027BE690 */ _t150 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE690 */ _t151 = _t150 & 0x00000001u; /* 027BE690 */ if (_t151) goto L_027BE6B8; else goto L_027BE694; L_027BE694: ; // 0x27be694 /* 027BE694 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BE698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[7]); /* 027BE69C */ cpu->r[12] = cpu->r[12] + 0x00000002u; /* 027BE6A0 */ _t152 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE6A0 */ _t153 = _t152 & 0x00000001u; /* 027BE6A0 */ if (_t153) goto L_027BE6B4; else goto L_027BE6A4; L_027BE6A4: ; // 0x27be6a4 /* 027BE6A4 */ _t154 = cpu->r[12] + 0x00000000u; /* 027BE6A4 */ cpu->r[6] = rbrew_read16(cpu->mem, _t154); /* 027BE6A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027BE6AC */ _t155 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE6AC */ _t156 = _t155 & 0x00000001u; /* 027BE6AC */ if (_t156) goto L_027BE6B0; else goto L_027BE694; L_027BE6B0: ; // 0x27be6b0 /* 027BE6B0 */ goto L_027BE6B8; L_027BE6B4: ; // 0x27be6b4 /* 027BE6B4 */ cpu->r[30] = 0x00000000u; L_027BE6B8: ; // 0x27be6b8 /* 027BE6B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BE6BC */ _t157 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE6BC */ _t158 = _t157 & 0x00000001u; /* 027BE6BC */ if (_t158) goto L_027BE6C0; else goto L_027BE6D0; L_027BE6C0: ; // 0x27be6c0 /* 027BE6C0 */ cpu->r[8] = cpu->r[30] + cpu->r[28]; /* 027BE6C4 */ cpu->r[28] = cpu->r[8] + 0x00000001u; /* 027BE6C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BE6C8 */ _t159 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE6C8 */ _t160 = _t159 & 0x00000001u; /* 027BE6C8 */ if (_t160) goto L_027BE6CC; else goto L_027BE6D0; L_027BE6CC: ; // 0x27be6cc /* 027BE6CC */ cpu->r[28] = 0x00000000u; L_027BE6D0: ; // 0x27be6d0 /* 027BE6D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE6D4 */ _t161 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE6D4 */ _t162 = _t161 & 0x00000001u; /* 027BE6D4 */ if (_t162) goto L_027BE6D8; else goto L_027BE728; L_027BE6D8: ; // 0x27be6d8 /* 027BE6D8 */ _t163 = cpu->r[1] + 0x00000064u; /* 027BE6D8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t163); /* 027BE6DC */ _t164 = cpu->r[9] + 0x00000014u; /* 027BE6DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t164); /* 027BE6E0 */ cpu->ctr = cpu->r[10]; /* 027BE6E4 */ cpu->r[3] = cpu->r[1] + 0x00000060u; /* 027BE6E8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE6EC */ _t165 = cpu->r[1] + 0x00000060u; /* 027BE6EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t165); /* 027BE6F0 */ _t166 = cpu->r[9] + 0x00000000u; /* 027BE6F0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t166); /* 027BE6F4 */ cpu->r[29] = 0x00000000u; /* 027BE6F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BE6FC */ cpu->r[0] = 0x00080000u; /* 027BE700 */ _t167 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE700 */ _t168 = _t167 & 0x00000001u; /* 027BE700 */ if (_t168) goto L_027BE728; else goto L_027BE704; L_027BE704: ; // 0x27be704 /* 027BE704 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027BE708 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]); /* 027BE70C */ cpu->r[9] = cpu->r[9] + 0x00000002u; /* 027BE710 */ _t169 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE710 */ _t170 = _t169 & 0x00000001u; /* 027BE710 */ if (_t170) goto L_027BE724; else goto L_027BE714; L_027BE714: ; // 0x27be714 /* 027BE714 */ _t171 = cpu->r[9] + 0x00000000u; /* 027BE714 */ cpu->r[12] = rbrew_read16(cpu->mem, _t171); /* 027BE718 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027BE71C */ _t172 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE71C */ _t173 = _t172 & 0x00000001u; /* 027BE71C */ if (_t173) goto L_027BE720; else goto L_027BE704; L_027BE720: ; // 0x27be720 /* 027BE720 */ goto L_027BE728; L_027BE724: ; // 0x27be724 /* 027BE724 */ cpu->r[29] = 0x00000000u; L_027BE728: ; // 0x27be728 /* 027BE728 */ _t174 = cpu->r[27] + 0x00000008u; /* 027BE728 */ cpu->r[5] = rbrew_read32(cpu->mem, _t174); /* 027BE72C */ cpu->r[7] = cpu->r[5] - cpu->r[28]; /* 027BE730 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[7]); /* 027BE734 */ _t175 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE734 */ _t176 = _t175 & 0x00000001u; /* 027BE734 */ if (_t176) goto L_027BE73C; else goto L_027BE738; L_027BE738: ; // 0x27be738 /* 027BE738 */ cpu->r[29] = cpu->r[7] + 0xFFFFFFFFu; L_027BE73C: ; // 0x27be73c /* 027BE73C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE740 */ _t177 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE740 */ _t178 = _t177 & 0x00000001u; /* 027BE740 */ if (_t178) goto L_027BE744; else goto L_027BE788; L_027BE744: ; // 0x27be744 /* 027BE744 */ _t179 = cpu->r[1] + 0x00000064u; /* 027BE744 */ cpu->r[5] = rbrew_read32(cpu->mem, _t179); /* 027BE748 */ _t180 = cpu->r[5] + 0x00000014u; /* 027BE748 */ cpu->r[7] = rbrew_read32(cpu->mem, _t180); /* 027BE74C */ cpu->r[4] = rbrew_rlwinm(cpu->r[28], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE750 */ cpu->ctr = cpu->r[7]; /* 027BE754 */ cpu->r[27] = cpu->r[25] + cpu->r[4]; /* 027BE758 */ cpu->r[3] = cpu->r[1] + 0x00000060u; /* 027BE75C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE760 */ _t181 = cpu->r[1] + 0x00000060u; /* 027BE760 */ cpu->r[4] = rbrew_read32(cpu->mem, _t181); /* 027BE764 */ cpu->r[6] = 0x00000000u; /* 027BE768 */ cpu->r[5] = rbrew_rlwinm(cpu->r[29], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE76C */ cpu->r[3] = cpu->r[27]; /* 027BE770 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BE774 */ cpu->r[6] = cpu->r[28] + cpu->r[29]; /* 027BE778 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[30]); /* 027BE77C */ _t182 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE77C */ _t183 = _t182 & 0x00000001u; /* 027BE77C */ if (_t183) goto L_027BE780; else goto L_027BE788; L_027BE780: ; // 0x27be780 /* 027BE780 */ cpu->r[11] = rbrew_rlwinm(cpu->r[6], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE784 */ _t184 = cpu->r[11] + cpu->r[25]; /* 027BE784 */ rbrew_write16(cpu->mem, _t184, (uint16_t)cpu->r[31]); L_027BE788: ; // 0x27be788 /* 027BE788 */ cpu->r[3] = cpu->r[26]; /* 027BE78C */ /* nop */ /* 027BE790 */ _t185 = cpu->r[1] + 0x000001CCu; /* 027BE790 */ cpu->r[0] = rbrew_read32(cpu->mem, _t185); /* 027BE794 */ cpu->lr = cpu->r[0]; /* 027BE798 */ cpu->r[1] = cpu->r[1] + 0x000001C8u; /* 027BE79C */ return; L_027BE7A0: ; // 0x27be7a0 /* 027BE7A0 */ _t186 = cpu->r[3] + 0x00000000u; /* 027BE7A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t186); /* 027BE7A4 */ _t187 = cpu->r[26] + 0x00000024u; /* 027BE7A4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t187); /* 027BE7A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[4]); /* 027BE7AC */ _t188 = cpu->r[26] + 0x00000028u; /* 027BE7AC */ cpu->r[10] = rbrew_read32(cpu->mem, _t188); /* 027BE7B0 */ _t189 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE7B0 */ _t190 = _t189 & 0x00000001u; /* 027BE7B0 */ if (_t190) goto L_027BE7B4; else goto L_027BE7BC; L_027BE7B4: ; // 0x27be7b4 /* 027BE7B4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BE7B8 */ cpu->r[10] = cpu->r[10] + cpu->r[6]; L_027BE7BC: ; // 0x27be7bc /* 027BE7BC */ _t191 = cpu->r[10] + 0x00000000u; /* 027BE7BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t191); /* 027BE7C0 */ _t192 = cpu->r[1] + 0x0000000Cu; /* 027BE7C0 */ rbrew_write32(cpu->mem, _t192, cpu->r[29]); /* 027BE7C4 */ _t193 = cpu->r[11] + 0x00000000u; /* 027BE7C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t193); /* 027BE7C8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE7CC */ _t194 = cpu->r[1] + 0x00000008u; /* 027BE7CC */ rbrew_write32(cpu->mem, _t194, cpu->r[9]); /* 027BE7D0 */ Gambit_fn_027C24B8(cpu); /* 027BE7D4 */ _t195 = cpu->r[1] + 0x00000008u; /* 027BE7D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t195); /* 027BE7D8 */ _t196 = cpu->r[30] + 0x0000739Au; /* 027BE7D8 */ cpu->r[31] = rbrew_read16(cpu->mem, _t196); /* 027BE7DC */ _t197 = cpu->r[6] + 0x00000000u; /* 027BE7DC */ cpu->r[10] = rbrew_read16(cpu->mem, _t197); /* 027BE7E0 */ cpu->r[0] = 0x00080000u; /* 027BE7E4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BE7E8 */ cpu->r[29] = 0x00000000u; /* 027BE7EC */ _t198 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE7EC */ _t199 = _t198 & 0x00000001u; /* 027BE7EC */ if (_t199) goto L_027BE814; else goto L_027BE7F0; L_027BE7F0: ; // 0x27be7f0 /* 027BE7F0 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027BE7F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[0]); /* 027BE7F8 */ cpu->r[6] = cpu->r[6] + 0x00000002u; /* 027BE7FC */ _t200 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE7FC */ _t201 = _t200 & 0x00000001u; /* 027BE7FC */ if (_t201) goto L_027BE810; else goto L_027BE800; L_027BE800: ; // 0x27be800 /* 027BE800 */ _t202 = cpu->r[6] + 0x00000000u; /* 027BE800 */ cpu->r[12] = rbrew_read16(cpu->mem, _t202); /* 027BE804 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027BE808 */ _t203 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE808 */ _t204 = _t203 & 0x00000001u; /* 027BE808 */ if (_t204) goto L_027BE80C; else goto L_027BE7F0; L_027BE80C: ; // 0x27be80c /* 027BE80C */ goto L_027BE814; L_027BE810: ; // 0x27be810 /* 027BE810 */ cpu->r[29] = 0x00000000u; L_027BE814: ; // 0x27be814 /* 027BE814 */ _t205 = cpu->r[1] + 0x0000005Eu; /* 027BE814 */ rbrew_write16(cpu->mem, _t205, (uint16_t)cpu->r[31]); /* 027BE818 */ cpu->r[4] = 0x00000022u; /* 027BE81C */ cpu->r[7] = 0x10110000u; /* 027BE820 */ _t206 = cpu->r[1] + 0x0000001Cu; /* 027BE820 */ rbrew_write16(cpu->mem, _t206, (uint16_t)cpu->r[31]); /* 027BE824 */ cpu->r[7] = cpu->r[7] + 0xFFFFBDB4u; /* 027BE828 */ _t207 = cpu->r[1] + 0x00000018u; /* 027BE828 */ rbrew_write32(cpu->mem, _t207, cpu->r[4]); /* 027BE82C */ cpu->r[0] = cpu->r[1] + 0x0000001Cu; /* 027BE830 */ _t208 = cpu->r[1] + 0x00000014u; /* 027BE830 */ rbrew_write32(cpu->mem, _t208, cpu->r[7]); /* 027BE834 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], 0x00000020u); /* 027BE838 */ _t209 = cpu->r[1] + 0x00000010u; /* 027BE838 */ rbrew_write32(cpu->mem, _t209, cpu->r[0]); /* 027BE83C */ _t210 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE83C */ _t211 = _t210 & 0x00000001u; /* 027BE83C */ if (_t211) goto L_027BE840; else goto L_027BE844; L_027BE840: ; // 0x27be840 /* 027BE840 */ cpu->r[29] = 0x00000020u; L_027BE844: ; // 0x27be844 /* 027BE844 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE848 */ cpu->r[24] = 0x00000000u; /* 027BE84C */ _t212 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE84C */ _t213 = _t212 & 0x00000001u; /* 027BE84C */ if (_t213) goto L_027BE850; else goto L_027BEA08; L_027BE850: ; // 0x27be850 /* 027BE850 */ cpu->r[26] = 0x10110000u; /* 027BE854 */ _t214 = cpu->r[26] + 0x0000739Cu; /* 027BE854 */ cpu->r[26] = rbrew_read16(cpu->mem, _t214); L_027BE858: ; // 0x27be858 /* 027BE858 */ cpu->r[25] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu); L_027BE85C: ; // 0x27be85c /* 027BE85C */ cpu->r[22] = cpu->r[31]; /* 027BE860 */ cpu->r[23] = cpu->r[26]; /* 027BE864 */ cpu->r[21] = cpu->r[25]; /* 027BE868 */ goto L_027BE8EC; L_027BE86C: ; // 0x27be86c /* 027BE86C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000014u); /* 027BE870 */ _t215 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE870 */ _t216 = _t215 & 0x00000001u; /* 027BE870 */ if (_t216) goto L_027BE874; else goto L_027BE8EC; L_027BE874: ; // 0x27be874 /* 027BE874 */ _t217 = cpu->r[1] + 0x00000014u; /* 027BE874 */ cpu->r[6] = rbrew_read32(cpu->mem, _t217); /* 027BE878 */ _t218 = cpu->r[6] + 0x00000014u; /* 027BE878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t218); /* 027BE87C */ cpu->ctr = cpu->r[0]; /* 027BE880 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BE884 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE888 */ _t219 = cpu->r[1] + 0x00000010u; /* 027BE888 */ cpu->r[6] = rbrew_read32(cpu->mem, _t219); /* 027BE88C */ cpu->r[4] = cpu->r[6]; /* 027BE890 */ _t220 = cpu->r[4] + 0x00000000u; /* 027BE890 */ cpu->r[0] = rbrew_read16(cpu->mem, _t220); /* 027BE894 */ cpu->r[7] = 0x00000000u; /* 027BE898 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[22]); /* 027BE89C */ cpu->r[10] = 0x00080000u; /* 027BE8A0 */ _t221 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE8A0 */ _t222 = _t221 & 0x00000001u; /* 027BE8A0 */ if (_t222) goto L_027BE8C8; else goto L_027BE8A4; L_027BE8A4: ; // 0x27be8a4 /* 027BE8A4 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027BE8A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[10]); /* 027BE8AC */ cpu->r[4] = cpu->r[4] + 0x00000002u; /* 027BE8B0 */ _t223 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE8B0 */ _t224 = _t223 & 0x00000001u; /* 027BE8B0 */ if (_t224) goto L_027BE8C4; else goto L_027BE8B4; L_027BE8B4: ; // 0x27be8b4 /* 027BE8B4 */ _t225 = cpu->r[4] + 0x00000000u; /* 027BE8B4 */ cpu->r[5] = rbrew_read16(cpu->mem, _t225); /* 027BE8B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[22]); /* 027BE8BC */ _t226 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE8BC */ _t227 = _t226 & 0x00000001u; /* 027BE8BC */ if (_t227) goto L_027BE8C0; else goto L_027BE8A4; L_027BE8C0: ; // 0x27be8c0 /* 027BE8C0 */ goto L_027BE8C8; L_027BE8C4: ; // 0x27be8c4 /* 027BE8C4 */ cpu->r[7] = 0x00000000u; L_027BE8C8: ; // 0x27be8c8 /* 027BE8C8 */ _t228 = cpu->r[1] + 0x00000018u; /* 027BE8C8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t228); /* 027BE8CC */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu; /* 027BE8D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[0]); /* 027BE8D4 */ _t229 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE8D4 */ _t230 = _t229 & 0x00000001u; /* 027BE8D4 */ if (_t230) goto L_027BE8D8; else goto L_027BE85C; L_027BE8D8: ; // 0x27be8d8 /* 027BE8D8 */ cpu->r[8] = rbrew_rlwinm(cpu->r[7], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE8DC */ _t231 = cpu->r[6] + cpu->r[8]; /* 027BE8DC */ rbrew_write16(cpu->mem, _t231, (uint16_t)cpu->r[23]); /* 027BE8E0 */ cpu->r[12] = cpu->r[6] + cpu->r[8]; /* 027BE8E4 */ _t232 = cpu->r[12] + 0x00000002u; /* 027BE8E4 */ rbrew_write16(cpu->mem, _t232, (uint16_t)cpu->r[31]); /* 027BE8E8 */ goto L_027BE858; L_027BE8EC: ; // 0x27be8ec /* 027BE8EC */ _t233 = cpu->r[1] + 0x0000000Cu; /* 027BE8EC */ cpu->r[7] = rbrew_read32(cpu->mem, _t233); /* 027BE8F0 */ _t234 = cpu->r[7] + 0x00000014u; /* 027BE8F0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t234); /* 027BE8F4 */ cpu->ctr = cpu->r[9]; /* 027BE8F8 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BE8FC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE900 */ _t235 = cpu->r[1] + 0x00000008u; /* 027BE900 */ cpu->r[9] = rbrew_read32(cpu->mem, _t235); /* 027BE904 */ cpu->r[8] = cpu->r[9]; /* 027BE908 */ _t236 = cpu->r[8] + 0x00000000u; /* 027BE908 */ cpu->r[0] = rbrew_read16(cpu->mem, _t236); /* 027BE90C */ cpu->r[6] = 0x00000000u; /* 027BE910 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[22]); /* 027BE914 */ cpu->r[0] = 0x00080000u; /* 027BE918 */ _t237 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE918 */ _t238 = _t237 & 0x00000001u; /* 027BE918 */ if (_t238) goto L_027BE940; else goto L_027BE91C; L_027BE91C: ; // 0x27be91c /* 027BE91C */ cpu->r[6] = cpu->r[6] + 0x00000001u; /* 027BE920 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], cpu->r[0]); /* 027BE924 */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027BE928 */ _t239 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE928 */ _t240 = _t239 & 0x00000001u; /* 027BE928 */ if (_t240) goto L_027BE93C; else goto L_027BE92C; L_027BE92C: ; // 0x27be92c /* 027BE92C */ _t241 = cpu->r[8] + 0x00000000u; /* 027BE92C */ cpu->r[7] = rbrew_read16(cpu->mem, _t241); /* 027BE930 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[22]); /* 027BE934 */ _t242 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE934 */ _t243 = _t242 & 0x00000001u; /* 027BE934 */ if (_t243) goto L_027BE938; else goto L_027BE91C; L_027BE938: ; // 0x27be938 /* 027BE938 */ goto L_027BE940; L_027BE93C: ; // 0x27be93c /* 027BE93C */ cpu->r[6] = 0x00000000u; L_027BE940: ; // 0x27be940 /* 027BE940 */ _t244 = cpu->r[1] + 0x00000014u; /* 027BE940 */ cpu->r[8] = rbrew_read32(cpu->mem, _t244); /* 027BE944 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], cpu->r[6]); /* 027BE948 */ _t245 = cpu->r[8] + 0x00000014u; /* 027BE948 */ cpu->r[0] = rbrew_read32(cpu->mem, _t245); /* 027BE94C */ _t246 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE94C */ _t247 = _t246 & 0x00000001u; /* 027BE94C */ if (_t247) goto L_027BE950; else goto L_027BE980; L_027BE950: ; // 0x27be950 /* 027BE950 */ cpu->ctr = cpu->r[0]; /* 027BE954 */ _t248 = cpu->r[30] + 0x0000739Au; /* 027BE954 */ cpu->r[20] = rbrew_read16(cpu->mem, _t248); /* 027BE958 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BE95C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE960 */ _t249 = cpu->r[1] + 0x00000010u; /* 027BE960 */ cpu->r[6] = rbrew_read32(cpu->mem, _t249); /* 027BE964 */ cpu->r[11] = cpu->r[6]; /* 027BE968 */ _t250 = cpu->r[11] + 0x00000000u; /* 027BE968 */ cpu->r[4] = rbrew_read16(cpu->mem, _t250); /* 027BE96C */ cpu->r[5] = 0x00000000u; /* 027BE970 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]); /* 027BE974 */ cpu->r[4] = 0x00080000u; /* 027BE978 */ _t251 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE978 */ _t252 = _t251 & 0x00000001u; /* 027BE978 */ if (_t252) goto L_027BE97C; else goto L_027BE9AC; L_027BE97C: ; // 0x27be97c /* 027BE97C */ goto L_027BE9D0; L_027BE980: ; // 0x27be980 /* 027BE980 */ cpu->ctr = cpu->r[0]; /* 027BE984 */ _t253 = cpu->r[9] + cpu->r[21]; /* 027BE984 */ cpu->r[20] = rbrew_read16(cpu->mem, _t253); /* 027BE988 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BE98C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BE990 */ _t254 = cpu->r[1] + 0x00000010u; /* 027BE990 */ cpu->r[6] = rbrew_read32(cpu->mem, _t254); /* 027BE994 */ cpu->r[11] = cpu->r[6]; /* 027BE998 */ _t255 = cpu->r[11] + 0x00000000u; /* 027BE998 */ cpu->r[4] = rbrew_read16(cpu->mem, _t255); /* 027BE99C */ cpu->r[5] = 0x00000000u; /* 027BE9A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[22]); /* 027BE9A4 */ cpu->r[4] = 0x00080000u; /* 027BE9A8 */ _t256 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE9A8 */ _t257 = _t256 & 0x00000001u; /* 027BE9A8 */ if (_t257) goto L_027BE97C; else goto L_027BE9AC; L_027BE9AC: ; // 0x27be9ac /* 027BE9AC */ cpu->r[5] = cpu->r[5] + 0x00000001u; /* 027BE9B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[4]); /* 027BE9B4 */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027BE9B8 */ _t258 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BE9B8 */ _t259 = _t258 & 0x00000001u; /* 027BE9B8 */ if (_t259) goto L_027BE9CC; else goto L_027BE9BC; L_027BE9BC: ; // 0x27be9bc /* 027BE9BC */ _t260 = cpu->r[11] + 0x00000000u; /* 027BE9BC */ cpu->r[12] = rbrew_read16(cpu->mem, _t260); /* 027BE9C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[22]); /* 027BE9C4 */ _t261 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BE9C4 */ _t262 = _t261 & 0x00000001u; /* 027BE9C4 */ if (_t262) goto L_027BE9C8; else goto L_027BE9AC; L_027BE9C8: ; // 0x27be9c8 /* 027BE9C8 */ goto L_027BE9D0; L_027BE9CC: ; // 0x27be9cc /* 027BE9CC */ cpu->r[5] = 0x00000000u; L_027BE9D0: ; // 0x27be9d0 /* 027BE9D0 */ _t263 = cpu->r[1] + 0x00000018u; /* 027BE9D0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t263); /* 027BE9D4 */ cpu->r[0] = cpu->r[4] + 0xFFFFFFFFu; /* 027BE9D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]); /* 027BE9DC */ _t264 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BE9DC */ _t265 = _t264 & 0x00000001u; /* 027BE9DC */ if (_t265) goto L_027BE9E0; else goto L_027BE9F0; L_027BE9E0: ; // 0x27be9e0 /* 027BE9E0 */ cpu->r[4] = rbrew_rlwinm(cpu->r[5], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BE9E4 */ _t266 = cpu->r[6] + cpu->r[4]; /* 027BE9E4 */ rbrew_write16(cpu->mem, _t266, (uint16_t)cpu->r[20]); /* 027BE9E8 */ cpu->r[5] = cpu->r[6] + cpu->r[4]; /* 027BE9EC */ _t267 = cpu->r[5] + 0x00000002u; /* 027BE9EC */ rbrew_write16(cpu->mem, _t267, (uint16_t)cpu->r[22]); L_027BE9F0: ; // 0x27be9f0 /* 027BE9F0 */ cpu->r[21] = cpu->r[21] + 0x00000002u; /* 027BE9F4 */ cpu->r[29] = cpu->r[29] + 0xFFFFFFFFu; /* 027BE9F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027BE9F8 */ cpu->r[24] = cpu->r[24] + 0x00000001u; /* 027BE9FC */ cpu->r[25] = cpu->r[25] + 0x00000002u; /* 027BEA00 */ _t268 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEA00 */ _t269 = _t268 & 0x00000001u; /* 027BEA00 */ if (_t269) goto L_027BEA04; else goto L_027BE86C; L_027BEA04: ; // 0x27bea04 /* 027BEA04 */ _t270 = cpu->r[1] + 0x00000014u; /* 027BEA04 */ cpu->r[7] = rbrew_read32(cpu->mem, _t270); L_027BEA08: ; // 0x27bea08 /* 027BEA08 */ _t271 = cpu->r[7] + 0x00000014u; /* 027BEA08 */ cpu->r[0] = rbrew_read32(cpu->mem, _t271); /* 027BEA0C */ cpu->ctr = cpu->r[0]; /* 027BEA10 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BEA14 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEA18 */ _t272 = cpu->r[1] + 0x00000010u; /* 027BEA18 */ cpu->r[11] = rbrew_read32(cpu->mem, _t272); /* 027BEA1C */ _t273 = cpu->r[11] + 0x00000000u; /* 027BEA1C */ cpu->r[7] = rbrew_read16(cpu->mem, _t273); /* 027BEA20 */ cpu->r[12] = 0x00080000u; /* 027BEA24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[7], cpu->r[31]); /* 027BEA28 */ cpu->r[29] = 0x00000000u; /* 027BEA2C */ _t274 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEA2C */ _t275 = _t274 & 0x00000001u; /* 027BEA2C */ if (_t275) goto L_027BEA54; else goto L_027BEA30; L_027BEA30: ; // 0x27bea30 /* 027BEA30 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027BEA34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[12]); /* 027BEA38 */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027BEA3C */ _t276 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEA3C */ _t277 = _t276 & 0x00000001u; /* 027BEA3C */ if (_t277) goto L_027BEA50; else goto L_027BEA40; L_027BEA40: ; // 0x27bea40 /* 027BEA40 */ _t278 = cpu->r[11] + 0x00000000u; /* 027BEA40 */ cpu->r[0] = rbrew_read16(cpu->mem, _t278); /* 027BEA44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BEA48 */ _t279 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEA48 */ _t280 = _t279 & 0x00000001u; /* 027BEA48 */ if (_t280) goto L_027BEA4C; else goto L_027BEA30; L_027BEA4C: ; // 0x27bea4c /* 027BEA4C */ goto L_027BEA54; L_027BEA50: ; // 0x27bea50 /* 027BEA50 */ cpu->r[29] = 0x00000000u; L_027BEA54: ; // 0x27bea54 /* 027BEA54 */ _t281 = cpu->r[27] + 0x00000004u; /* 027BEA54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t281); /* 027BEA58 */ _t282 = cpu->r[12] + 0x00000014u; /* 027BEA58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t282); /* 027BEA5C */ cpu->ctr = cpu->r[0]; /* 027BEA60 */ _t283 = cpu->r[27] + 0x00000000u; /* 027BEA60 */ cpu->r[25] = rbrew_read32(cpu->mem, _t283); /* 027BEA64 */ cpu->r[26] = cpu->r[29]; /* 027BEA68 */ cpu->r[3] = cpu->r[27]; /* 027BEA6C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEA70 */ _t284 = cpu->r[27] + 0x00000000u; /* 027BEA70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t284); /* 027BEA74 */ _t285 = cpu->r[9] + 0x00000000u; /* 027BEA74 */ cpu->r[4] = rbrew_read16(cpu->mem, _t285); /* 027BEA78 */ cpu->r[30] = 0x00000000u; /* 027BEA7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]); /* 027BEA80 */ cpu->r[10] = 0x00080000u; /* 027BEA84 */ _t286 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEA84 */ _t287 = _t286 & 0x00000001u; /* 027BEA84 */ if (_t287) goto L_027BEAAC; else goto L_027BEA88; L_027BEA88: ; // 0x27bea88 /* 027BEA88 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027BEA8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]); /* 027BEA90 */ cpu->r[9] = cpu->r[9] + 0x00000002u; /* 027BEA94 */ _t288 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEA94 */ _t289 = _t288 & 0x00000001u; /* 027BEA94 */ if (_t289) goto L_027BEAA8; else goto L_027BEA98; L_027BEA98: ; // 0x27bea98 /* 027BEA98 */ _t290 = cpu->r[9] + 0x00000000u; /* 027BEA98 */ cpu->r[0] = rbrew_read16(cpu->mem, _t290); /* 027BEA9C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BEAA0 */ _t291 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEAA0 */ _t292 = _t291 & 0x00000001u; /* 027BEAA0 */ if (_t292) goto L_027BEAA4; else goto L_027BEA88; L_027BEAA4: ; // 0x27beaa4 /* 027BEAA4 */ goto L_027BEAAC; L_027BEAA8: ; // 0x27beaa8 /* 027BEAA8 */ cpu->r[30] = 0x00000000u; L_027BEAAC: ; // 0x27beaac /* 027BEAAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BEAB0 */ _t293 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEAB0 */ _t294 = _t293 & 0x00000001u; /* 027BEAB0 */ if (_t294) goto L_027BEAB4; else goto L_027BEAC4; L_027BEAB4: ; // 0x27beab4 /* 027BEAB4 */ cpu->r[6] = cpu->r[30] + cpu->r[28]; /* 027BEAB8 */ cpu->r[28] = cpu->r[6] + 0x00000001u; /* 027BEAB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027BEABC */ _t295 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEABC */ _t296 = _t295 & 0x00000001u; /* 027BEABC */ if (_t296) goto L_027BEAC0; else goto L_027BEAC4; L_027BEAC0: ; // 0x27beac0 /* 027BEAC0 */ cpu->r[28] = 0x00000000u; L_027BEAC4: ; // 0x27beac4 /* 027BEAC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BEAC8 */ _t297 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEAC8 */ _t298 = _t297 & 0x00000001u; /* 027BEAC8 */ if (_t298) goto L_027BEACC; else goto L_027BEB1C; L_027BEACC: ; // 0x27beacc /* 027BEACC */ _t299 = cpu->r[1] + 0x00000014u; /* 027BEACC */ cpu->r[7] = rbrew_read32(cpu->mem, _t299); /* 027BEAD0 */ _t300 = cpu->r[7] + 0x00000014u; /* 027BEAD0 */ cpu->r[8] = rbrew_read32(cpu->mem, _t300); /* 027BEAD4 */ cpu->ctr = cpu->r[8]; /* 027BEAD8 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BEADC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEAE0 */ _t301 = cpu->r[1] + 0x00000010u; /* 027BEAE0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t301); /* 027BEAE4 */ _t302 = cpu->r[7] + 0x00000000u; /* 027BEAE4 */ cpu->r[9] = rbrew_read16(cpu->mem, _t302); /* 027BEAE8 */ cpu->r[26] = 0x00000000u; /* 027BEAEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027BEAF0 */ cpu->r[8] = 0x00080000u; /* 027BEAF4 */ _t303 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEAF4 */ _t304 = _t303 & 0x00000001u; /* 027BEAF4 */ if (_t304) goto L_027BEB1C; else goto L_027BEAF8; L_027BEAF8: ; // 0x27beaf8 /* 027BEAF8 */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027BEAFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[8]); /* 027BEB00 */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027BEB04 */ _t305 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEB04 */ _t306 = _t305 & 0x00000001u; /* 027BEB04 */ if (_t306) goto L_027BEB18; else goto L_027BEB08; L_027BEB08: ; // 0x27beb08 /* 027BEB08 */ _t307 = cpu->r[7] + 0x00000000u; /* 027BEB08 */ cpu->r[10] = rbrew_read16(cpu->mem, _t307); /* 027BEB0C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027BEB10 */ _t308 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEB10 */ _t309 = _t308 & 0x00000001u; /* 027BEB10 */ if (_t309) goto L_027BEB14; else goto L_027BEAF8; L_027BEB14: ; // 0x27beb14 /* 027BEB14 */ goto L_027BEB1C; L_027BEB18: ; // 0x27beb18 /* 027BEB18 */ cpu->r[26] = 0x00000000u; L_027BEB1C: ; // 0x27beb1c /* 027BEB1C */ _t310 = cpu->r[27] + 0x00000008u; /* 027BEB1C */ cpu->r[5] = rbrew_read32(cpu->mem, _t310); /* 027BEB20 */ cpu->r[11] = cpu->r[5] - cpu->r[28]; /* 027BEB24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[11]); /* 027BEB28 */ _t311 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEB28 */ _t312 = _t311 & 0x00000001u; /* 027BEB28 */ if (_t312) goto L_027BEB30; else goto L_027BEB2C; L_027BEB2C: ; // 0x27beb2c /* 027BEB2C */ cpu->r[26] = cpu->r[11] + 0xFFFFFFFFu; L_027BEB30: ; // 0x27beb30 /* 027BEB30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027BEB34 */ _t313 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEB34 */ _t314 = _t313 & 0x00000001u; /* 027BEB34 */ if (_t314) goto L_027BEB38; else goto L_027BEB7C; L_027BEB38: ; // 0x27beb38 /* 027BEB38 */ _t315 = cpu->r[1] + 0x00000014u; /* 027BEB38 */ cpu->r[12] = rbrew_read32(cpu->mem, _t315); /* 027BEB3C */ _t316 = cpu->r[12] + 0x00000014u; /* 027BEB3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t316); /* 027BEB40 */ cpu->r[11] = rbrew_rlwinm(cpu->r[28], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BEB44 */ cpu->ctr = cpu->r[0]; /* 027BEB48 */ cpu->r[27] = cpu->r[25] + cpu->r[11]; /* 027BEB4C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BEB50 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEB54 */ _t317 = cpu->r[1] + 0x00000010u; /* 027BEB54 */ cpu->r[4] = rbrew_read32(cpu->mem, _t317); /* 027BEB58 */ cpu->r[6] = 0x00000000u; /* 027BEB5C */ cpu->r[5] = rbrew_rlwinm(cpu->r[26], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BEB60 */ cpu->r[3] = cpu->r[27]; /* 027BEB64 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027BEB68 */ cpu->r[9] = cpu->r[28] + cpu->r[26]; /* 027BEB6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[30]); /* 027BEB70 */ _t318 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEB70 */ _t319 = _t318 & 0x00000001u; /* 027BEB70 */ if (_t319) goto L_027BEB74; else goto L_027BEB7C; L_027BEB74: ; // 0x27beb74 /* 027BEB74 */ cpu->r[4] = rbrew_rlwinm(cpu->r[9], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027BEB78 */ _t320 = cpu->r[4] + cpu->r[25]; /* 027BEB78 */ rbrew_write16(cpu->mem, _t320, (uint16_t)cpu->r[31]); L_027BEB7C: ; // 0x27beb7c /* 027BEB7C */ cpu->r[3] = cpu->r[29]; /* 027BEB80 */ /* nop */ /* 027BEB84 */ _t321 = cpu->r[1] + 0x000001CCu; /* 027BEB84 */ cpu->r[0] = rbrew_read32(cpu->mem, _t321); /* 027BEB88 */ cpu->lr = cpu->r[0]; /* 027BEB8C */ cpu->r[1] = cpu->r[1] + 0x000001C8u; /* 027BEB90 */ return; L_027BEB94: ; // 0x27beb94 /* 027BEB94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BEB98 */ _t322 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEB98 */ _t323 = _t322 & 0x00000001u; /* 027BEB98 */ if (_t323) goto L_027BE5A8; else goto L_027BEB9C; L_027BEB9C: ; // 0x27beb9c /* 027BEB9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BEBA0 */ cpu->r[10] = 0x00000000u; /* 027BEBA4 */ _t324 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BEBA4 */ _t325 = _t324 & 0x00000001u; /* 027BEBA4 */ if (_t325) goto L_027BEC50; else goto L_027BEBA8; L_027BEBA8: ; // 0x27beba8 /* 027BEBA8 */ cpu->r[0] = cpu->r[1] + 0x0000001Cu; /* 027BEBAC */ _t326 = cpu->r[1] + 0x00000080u; /* 027BEBAC */ rbrew_write32(cpu->mem, _t326, cpu->r[8]); /* 027BEBB0 */ cpu->r[11] = 0x10110000u; /* 027BEBB4 */ _t327 = cpu->r[1] + 0x00000010u; /* 027BEBB4 */ rbrew_write32(cpu->mem, _t327, cpu->r[0]); /* 027BEBB8 */ cpu->r[10] = 0x10110000u; /* 027BEBBC */ _t328 = cpu->r[11] + 0x00007399u; /* 027BEBBC */ cpu->r[11] = rbrew_read8(cpu->mem, _t328); /* 027BEBC0 */ _t329 = cpu->r[1] + 0x00000124u; /* 027BEBC0 */ rbrew_write32(cpu->mem, _t329, cpu->r[8]); /* 027BEBC4 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BEBC8 */ _t330 = cpu->r[1] + 0x000000E0u; /* 027BEBC8 */ rbrew_write8(cpu->mem, _t330, (uint8_t)cpu->r[11]); /* 027BEBCC */ cpu->r[9] = 0x00000020u; /* 027BEBD0 */ _t331 = cpu->r[1] + 0x00000014u; /* 027BEBD0 */ rbrew_write32(cpu->mem, _t331, cpu->r[10]); /* 027BEBD4 */ cpu->r[10] = 0xFFFFFFFFu; /* 027BEBD8 */ _t332 = cpu->r[1] + 0x0000003Bu; /* 027BEBD8 */ rbrew_write8(cpu->mem, _t332, (uint8_t)cpu->r[11]); /* 027BEBDC */ cpu->r[5] = 0x00000000u; /* 027BEBE0 */ _t333 = cpu->r[1] + 0x00000018u; /* 027BEBE0 */ rbrew_write32(cpu->mem, _t333, cpu->r[9]); /* 027BEBE4 */ cpu->r[7] = 0x10110000u; /* 027BEBE8 */ _t334 = cpu->r[1] + 0x00000128u; /* 027BEBE8 */ rbrew_write32(cpu->mem, _t334, cpu->r[10]); /* 027BEBEC */ _t335 = cpu->r[1] + 0x00000094u; /* 027BEBEC */ rbrew_write8(cpu->mem, _t335, (uint8_t)cpu->r[11]); /* 027BEBF0 */ cpu->r[6] = cpu->r[1] + 0x000000E0u; /* 027BEBF4 */ _t336 = cpu->r[1] + 0x0000007Cu; /* 027BEBF4 */ rbrew_write32(cpu->mem, _t336, cpu->r[8]); /* 027BEBF8 */ _t337 = cpu->r[1] + 0x000000D3u; /* 027BEBF8 */ rbrew_write8(cpu->mem, _t337, (uint8_t)cpu->r[11]); /* 027BEBFC */ _t338 = cpu->r[1] + 0x00000078u; /* 027BEBFC */ rbrew_write8(cpu->mem, _t338, (uint8_t)cpu->r[5]); /* 027BEC00 */ cpu->r[0] = 0x00000040u; /* 027BEC04 */ _t339 = cpu->r[1] + 0x00000120u; /* 027BEC04 */ rbrew_write32(cpu->mem, _t339, cpu->r[10]); /* 027BEC08 */ cpu->r[7] = cpu->r[7] + 0xFFFFBD54u; /* 027BEC0C */ _t340 = cpu->r[1] + 0x0000001Cu; /* 027BEC0C */ rbrew_write8(cpu->mem, _t340, (uint8_t)cpu->r[11]); /* 027BEC10 */ _t341 = cpu->r[1] + 0x000000DCu; /* 027BEC10 */ rbrew_write32(cpu->mem, _t341, cpu->r[0]); /* 027BEC14 */ _t342 = cpu->r[1] + 0x0000011Fu; /* 027BEC14 */ rbrew_write8(cpu->mem, _t342, (uint8_t)cpu->r[11]); /* 027BEC18 */ _t343 = cpu->r[1] + 0x000000D8u; /* 027BEC18 */ rbrew_write32(cpu->mem, _t343, cpu->r[7]); /* 027BEC1C */ cpu->r[11] = cpu->r[1] + 0x00000094u; /* 027BEC20 */ cpu->r[12] = cpu->r[1] + 0x00000164u; /* 027BEC24 */ _t344 = cpu->r[1] + 0x000000D4u; /* 027BEC24 */ rbrew_write32(cpu->mem, _t344, cpu->r[6]); /* 027BEC28 */ _t345 = cpu->r[1] + 0x00000084u; /* 027BEC28 */ rbrew_write32(cpu->mem, _t345, cpu->r[8]); /* 027BEC2C */ _t346 = cpu->r[1] + 0x00000088u; /* 027BEC2C */ rbrew_write32(cpu->mem, _t346, cpu->r[11]); /* 027BEC30 */ _t347 = cpu->r[1] + 0x00000090u; /* 027BEC30 */ rbrew_write32(cpu->mem, _t347, cpu->r[0]); /* 027BEC34 */ cpu->r[30] = 0x10110000u; /* 027BEC38 */ cpu->r[30] = cpu->r[30] + 0xFFFFBCC4u; /* 027BEC3C */ _t348 = cpu->r[1] + 0x0000008Cu; /* 027BEC3C */ rbrew_write32(cpu->mem, _t348, cpu->r[7]); /* 027BEC40 */ _t349 = cpu->r[3] + 0x00000000u; /* 027BEC40 */ cpu->r[6] = rbrew_read32(cpu->mem, _t349); /* 027BEC44 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x0000000Cu); /* 027BEC48 */ _t350 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEC48 */ _t351 = _t350 & 0x00000001u; /* 027BEC48 */ if (_t351) goto L_027BEC4C; else goto L_027BED64; L_027BEC4C: ; // 0x27bec4c /* 027BEC4C */ goto L_027BED5C; L_027BEC50: ; // 0x27bec50 /* 027BEC50 */ _t352 = cpu->r[26] + 0x00000024u; /* 027BEC50 */ cpu->r[0] = rbrew_read32(cpu->mem, _t352); /* 027BEC54 */ cpu->r[12] = cpu->r[1] + 0x00000164u; /* 027BEC58 */ cpu->ctr = cpu->r[31]; /* 027BEC5C */ _t353 = cpu->r[26] + 0x00000028u; /* 027BEC5C */ cpu->r[9] = rbrew_read32(cpu->mem, _t353); /* 027BEC60 */ cpu->r[6] = cpu->r[12]; /* 027BEC64 */ cpu->r[30] = 0x00000000u; L_027BEC68: ; // 0x27bec68 /* 027BEC68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000000Cu); /* 027BEC6C */ cpu->r[4] = cpu->r[12]; /* 027BEC70 */ _t354 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEC70 */ _t355 = _t354 & 0x00000001u; /* 027BEC70 */ if (_t355) goto L_027BEC74; else goto L_027BEC78; L_027BEC74: ; // 0x27bec74 /* 027BEC74 */ cpu->r[4] = cpu->r[6]; L_027BEC78: ; // 0x27bec78 /* 027BEC78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[0]); /* 027BEC7C */ _t356 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BEC7C */ _t357 = _t356 & 0x00000001u; /* 027BEC7C */ if (_t357) goto L_027BEC80; else goto L_027BECA0; L_027BEC80: ; // 0x27bec80 /* 027BEC80 */ _t358 = cpu->r[9] + cpu->r[30]; /* 027BEC80 */ cpu->r[5] = rbrew_read32(cpu->mem, _t358); /* 027BEC84 */ _t359 = cpu->r[5] + 0x00000000u; /* 027BEC84 */ cpu->r[7] = rbrew_read32(cpu->mem, _t359); /* 027BEC88 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027BEC8C */ cpu->r[6] = cpu->r[6] + 0x00000004u; /* 027BEC90 */ cpu->r[30] = cpu->r[30] + 0x00000004u; /* 027BEC94 */ _t360 = cpu->r[4] + 0x00000000u; /* 027BEC94 */ rbrew_write32(cpu->mem, _t360, cpu->r[7]); /* 027BEC98 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BEC98 */ _t361 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BEC98 */ _t362 = _t361 >> (0x00000002u & 31u); /* 027BEC98 */ _t363 = _t362 & 0x00000001u; /* 027BEC98 */ if (_t363) goto L_027BEC68; else goto L_027BEC9C; L_027BEC9C: ; // 0x27bec9c /* 027BEC9C */ goto L_027BECBC; L_027BECA0: ; // 0x27beca0 /* 027BECA0 */ _t364 = cpu->r[9] + 0x00000000u; /* 027BECA0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t364); /* 027BECA4 */ _t365 = cpu->r[5] + 0x00000000u; /* 027BECA4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t365); /* 027BECA8 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027BECAC */ cpu->r[6] = cpu->r[6] + 0x00000004u; /* 027BECB0 */ cpu->r[30] = cpu->r[30] + 0x00000004u; /* 027BECB4 */ _t366 = cpu->r[4] + 0x00000000u; /* 027BECB4 */ rbrew_write32(cpu->mem, _t366, cpu->r[7]); /* 027BECB8 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BECB8 */ _t367 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BECB8 */ _t368 = _t367 >> (0x00000002u & 31u); /* 027BECB8 */ _t369 = _t368 & 0x00000001u; /* 027BECB8 */ if (_t369) goto L_027BEC68; else goto L_027BECBC; L_027BECBC: ; // 0x27becbc /* 027BECBC */ _t370 = cpu->r[1] + 0x00000080u; /* 027BECBC */ rbrew_write32(cpu->mem, _t370, cpu->r[8]); /* 027BECC0 */ cpu->r[10] = 0x10110000u; /* 027BECC4 */ _t371 = cpu->r[1] + 0x00000084u; /* 027BECC4 */ rbrew_write32(cpu->mem, _t371, cpu->r[8]); /* 027BECC8 */ cpu->r[0] = cpu->r[1] + 0x0000001Cu; /* 027BECCC */ _t372 = cpu->r[1] + 0x00000124u; /* 027BECCC */ rbrew_write32(cpu->mem, _t372, cpu->r[8]); /* 027BECD0 */ cpu->r[10] = cpu->r[10] + 0xFFFFBD24u; /* 027BECD4 */ _t373 = cpu->r[1] + 0x00000010u; /* 027BECD4 */ rbrew_write32(cpu->mem, _t373, cpu->r[0]); /* 027BECD8 */ cpu->r[11] = 0x10110000u; /* 027BECDC */ _t374 = cpu->r[1] + 0x00000014u; /* 027BECDC */ rbrew_write32(cpu->mem, _t374, cpu->r[10]); /* 027BECE0 */ cpu->r[10] = 0xFFFFFFFFu; /* 027BECE4 */ _t375 = cpu->r[11] + 0x00007399u; /* 027BECE4 */ cpu->r[11] = rbrew_read8(cpu->mem, _t375); /* 027BECE8 */ cpu->r[5] = 0x00000000u; /* 027BECEC */ _t376 = cpu->r[1] + 0x00000128u; /* 027BECEC */ rbrew_write32(cpu->mem, _t376, cpu->r[10]); /* 027BECF0 */ _t377 = cpu->r[1] + 0x0000011Fu; /* 027BECF0 */ rbrew_write8(cpu->mem, _t377, (uint8_t)cpu->r[11]); /* 027BECF4 */ cpu->r[7] = 0x10110000u; /* 027BECF8 */ _t378 = cpu->r[1] + 0x00000094u; /* 027BECF8 */ rbrew_write8(cpu->mem, _t378, (uint8_t)cpu->r[11]); /* 027BECFC */ cpu->r[0] = 0x00000040u; /* 027BED00 */ _t379 = cpu->r[1] + 0x0000001Cu; /* 027BED00 */ rbrew_write8(cpu->mem, _t379, (uint8_t)cpu->r[11]); /* 027BED04 */ cpu->r[7] = cpu->r[7] + 0xFFFFBD54u; /* 027BED08 */ _t380 = cpu->r[1] + 0x0000007Cu; /* 027BED08 */ rbrew_write32(cpu->mem, _t380, cpu->r[8]); /* 027BED0C */ cpu->r[9] = 0x00000020u; /* 027BED10 */ _t381 = cpu->r[1] + 0x00000078u; /* 027BED10 */ rbrew_write8(cpu->mem, _t381, (uint8_t)cpu->r[5]); /* 027BED14 */ cpu->r[6] = cpu->r[1] + 0x000000E0u; /* 027BED18 */ _t382 = cpu->r[1] + 0x0000003Bu; /* 027BED18 */ rbrew_write8(cpu->mem, _t382, (uint8_t)cpu->r[11]); /* 027BED1C */ _t383 = cpu->r[1] + 0x000000D3u; /* 027BED1C */ rbrew_write8(cpu->mem, _t383, (uint8_t)cpu->r[11]); /* 027BED20 */ _t384 = cpu->r[1] + 0x000000E0u; /* 027BED20 */ rbrew_write8(cpu->mem, _t384, (uint8_t)cpu->r[11]); /* 027BED24 */ cpu->r[11] = cpu->r[1] + 0x00000094u; /* 027BED28 */ _t385 = cpu->r[1] + 0x00000090u; /* 027BED28 */ rbrew_write32(cpu->mem, _t385, cpu->r[0]); /* 027BED2C */ _t386 = cpu->r[1] + 0x00000088u; /* 027BED2C */ rbrew_write32(cpu->mem, _t386, cpu->r[11]); /* 027BED30 */ _t387 = cpu->r[1] + 0x0000008Cu; /* 027BED30 */ rbrew_write32(cpu->mem, _t387, cpu->r[7]); /* 027BED34 */ _t388 = cpu->r[1] + 0x00000120u; /* 027BED34 */ rbrew_write32(cpu->mem, _t388, cpu->r[10]); /* 027BED38 */ _t389 = cpu->r[1] + 0x000000DCu; /* 027BED38 */ rbrew_write32(cpu->mem, _t389, cpu->r[0]); /* 027BED3C */ _t390 = cpu->r[1] + 0x00000018u; /* 027BED3C */ rbrew_write32(cpu->mem, _t390, cpu->r[9]); /* 027BED40 */ _t391 = cpu->r[1] + 0x000000D8u; /* 027BED40 */ rbrew_write32(cpu->mem, _t391, cpu->r[7]); /* 027BED44 */ _t392 = cpu->r[1] + 0x000000D4u; /* 027BED44 */ rbrew_write32(cpu->mem, _t392, cpu->r[6]); /* 027BED48 */ _t393 = cpu->r[3] + 0x00000000u; /* 027BED48 */ cpu->r[6] = rbrew_read32(cpu->mem, _t393); /* 027BED4C */ cpu->r[30] = 0x10110000u; /* 027BED50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x0000000Cu); /* 027BED54 */ cpu->r[30] = cpu->r[30] + 0xFFFFBCC4u; /* 027BED58 */ _t394 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BED58 */ _t395 = _t394 & 0x00000001u; /* 027BED58 */ if (_t395) goto L_027BED5C; else goto L_027BED64; L_027BED5C: ; // 0x27bed5c /* 027BED5C */ cpu->r[0] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BED60 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027BED64: ; // 0x27bed64 /* 027BED64 */ _t396 = cpu->r[12] + 0x00000000u; /* 027BED64 */ cpu->r[4] = rbrew_read32(cpu->mem, _t396); /* 027BED68 */ cpu->r[31] = 0x10110000u; /* 027BED6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027BED70 */ cpu->r[31] = cpu->r[31] + 0xFFFFBF0Cu; /* 027BED74 */ _t397 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BED74 */ _t398 = _t397 & 0x00000001u; /* 027BED74 */ if (_t398) goto L_027BED78; else goto L_027BEDB4; L_027BED78: ; // 0x27bed78 /* 027BED78 */ cpu->r[4] = 0x10110000u; /* 027BED7C */ cpu->r[3] = cpu->r[1] + 0x0000012Cu; /* 027BED80 */ cpu->r[4] = cpu->r[4] + 0xFFFFBEECu; /* 027BED84 */ _t399 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BED84 */ _t400 = _t399 & 0x00000001u; /* 027BED84 */ if (_t400) goto L_027BED88; // else: addr-0 trap, fall-through L_027BED88: ; // 0x27bed88 /* 027BED88 */ Gambit_fn_027C252C(cpu); /* 027BED8C */ _t401 = cpu->r[1] + 0x0000006Cu; /* 027BED8C */ rbrew_write32(cpu->mem, _t401, cpu->r[30]); /* 027BED90 */ cpu->r[4] = cpu->r[1] + 0x00000068u; /* 027BED94 */ cpu->r[5] = cpu->r[1] + 0x0000012Cu; /* 027BED98 */ _t402 = cpu->r[1] + 0x00000068u; /* 027BED98 */ rbrew_write32(cpu->mem, _t402, cpu->r[31]); /* 027BED9C */ cpu->r[3] = cpu->r[1] + 0x00000078u; /* 027BEDA0 */ Gambit_fn_027FDFE8(cpu); /* 027BEDA4 */ _t403 = cpu->r[1] + 0x00000078u; /* 027BEDA4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t403); /* 027BEDA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BEDAC */ _t404 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEDAC */ _t405 = _t404 & 0x00000001u; /* 027BEDAC */ if (_t405) goto L_027BE5A8; else goto L_027BEDB0; L_027BEDB0: ; // 0x27bedb0 /* 027BEDB0 */ goto L_027BEDEC; L_027BEDB4: ; // 0x27bedb4 /* 027BEDB4 */ cpu->r[4] = 0x10110000u; /* 027BEDB8 */ cpu->r[3] = cpu->r[1] + 0x00000148u; /* 027BEDBC */ cpu->r[4] = cpu->r[4] + 0xFFFFBEFCu; /* 027BEDC0 */ _t406 = cpu->cr[1] >> (0x00000001u & 31u); /* 027BEDC0 */ _t407 = _t406 & 0x00000001u; /* 027BEDC0 */ if (_t407) goto L_027BEDC4; // else: addr-0 trap, fall-through L_027BEDC4: ; // 0x27bedc4 /* 027BEDC4 */ Gambit_fn_027C252C(cpu); /* 027BEDC8 */ _t408 = cpu->r[1] + 0x00000074u; /* 027BEDC8 */ rbrew_write32(cpu->mem, _t408, cpu->r[30]); /* 027BEDCC */ cpu->r[4] = cpu->r[1] + 0x00000070u; /* 027BEDD0 */ cpu->r[5] = cpu->r[1] + 0x00000148u; /* 027BEDD4 */ _t409 = cpu->r[1] + 0x00000070u; /* 027BEDD4 */ rbrew_write32(cpu->mem, _t409, cpu->r[31]); /* 027BEDD8 */ cpu->r[3] = cpu->r[1] + 0x00000078u; /* 027BEDDC */ Gambit_fn_027FDFE8(cpu); /* 027BEDE0 */ _t410 = cpu->r[1] + 0x00000078u; /* 027BEDE0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t410); /* 027BEDE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BEDE8 */ _t411 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BEDE8 */ _t412 = _t411 & 0x00000001u; /* 027BEDE8 */ if (_t412) goto L_027BE5A8; else goto L_027BEDEC; L_027BEDEC: ; // 0x27bedec /* 027BEDEC */ _t413 = cpu->r[1] + 0x00000014u; /* 027BEDEC */ cpu->r[7] = rbrew_read32(cpu->mem, _t413); /* 027BEDF0 */ _t414 = cpu->r[1] + 0x00000080u; /* 027BEDF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t414); /* 027BEDF4 */ _t415 = cpu->r[1] + 0x0000000Cu; /* 027BEDF4 */ rbrew_write32(cpu->mem, _t415, cpu->r[29]); /* 027BEDF8 */ _t416 = cpu->r[1] + 0x00000008u; /* 027BEDF8 */ rbrew_write32(cpu->mem, _t416, cpu->r[0]); /* 027BEDFC */ _t417 = cpu->r[7] + 0x00000014u; /* 027BEDFC */ cpu->r[8] = rbrew_read32(cpu->mem, _t417); /* 027BEE00 */ cpu->ctr = cpu->r[8]; /* 027BEE04 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027BEE08 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEE0C */ _t418 = cpu->r[1] + 0x0000000Cu; /* 027BEE0C */ cpu->r[9] = rbrew_read32(cpu->mem, _t418); /* 027BEE10 */ _t419 = cpu->r[9] + 0x00000014u; /* 027BEE10 */ cpu->r[0] = rbrew_read32(cpu->mem, _t419); /* 027BEE14 */ cpu->ctr = cpu->r[0]; /* 027BEE18 */ _t420 = cpu->r[1] + 0x00000010u; /* 027BEE18 */ cpu->r[31] = rbrew_read32(cpu->mem, _t420); /* 027BEE1C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027BEE20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BEE24 */ _t421 = cpu->r[1] + 0x00000018u; /* 027BEE24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t421); /* 027BEE28 */ cpu->r[6] = 0xFFFFFFFFu; /* 027BEE2C */ _t422 = cpu->r[1] + 0x00000008u; /* 027BEE2C */ cpu->r[5] = rbrew_read32(cpu->mem, _t422); /* 027BEE30 */ cpu->r[3] = cpu->r[31]; /* 027BEE34 */ Gambit_fn_0282CA88(cpu); /* 027BEE38 */ cpu->r[3] = cpu->r[27]; /* 027BEE3C */ cpu->r[4] = cpu->r[28]; /* 027BEE40 */ cpu->r[5] = cpu->r[1] + 0x00000010u; /* 027BEE44 */ Gambit_fn_027BE380(cpu); /* 027BEE48 */ /* nop */ /* 027BEE4C */ _t423 = cpu->r[1] + 0x000001CCu; /* 027BEE4C */ cpu->r[0] = rbrew_read32(cpu->mem, _t423); /* 027BEE50 */ cpu->lr = cpu->r[0]; /* 027BEE54 */ cpu->r[1] = cpu->r[1] + 0x000001C8u; /* 027BEE58 */ return; L_027BF470: ; // 0x27bf470 /* 027BF470 */ _t424 = cpu->r[4] + 0x00000004u; /* 027BF470 */ cpu->r[12] = rbrew_read16(cpu->mem, _t424); /* 027BF474 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], 0x00000006u); /* 027BF478 */ _t425 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BF478 */ _t426 = _t425 & 0x00000001u; /* 027BF478 */ if (_t426) goto L_027BF504; else goto L_027BF47C; L_027BF47C: ; // 0x27bf47c /* 027BF47C */ cpu->r[0] = 0x027C0000u; /* 027BF480 */ cpu->r[12] = rbrew_rlwinm(cpu->r[12], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BF484 */ cpu->r[0] = cpu->r[0] + 0xFFFFF494u; /* 027BF488 */ cpu->r[0] = cpu->r[12] + cpu->r[0]; /* 027BF48C */ cpu->ctr = cpu->r[0]; /* 027BF490 */ rbrew_dispatch(cpu, cpu->ctr); return; L_027BF504: ; // 0x27bf504 /* 027BF504 */ cpu->r[3] = 0x00000000u; /* 027BF508 */ return; L_027BFA0C: ; // 0x27bfa0c /* 027BFA0C */ _t427 = cpu->r[1] + 0xFFFFFFB0u; /* 027BFA0C */ rbrew_write32(cpu->mem, _t427, cpu->r[1]); /* 027BFA0C */ cpu->r[1] = _t427; /* 027BFA10 */ cpu->r[0] = cpu->lr; /* 027BFA14 */ /* nop */ /* 027BFA18 */ cpu->r[30] = cpu->r[4]; /* 027BFA1C */ cpu->r[27] = cpu->r[5]; /* 027BFA20 */ cpu->r[28] = cpu->r[6]; /* 027BFA24 */ cpu->r[31] = cpu->r[7]; /* 027BFA24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027BFA28 */ cpu->r[4] = 0x00000000u; /* 027BFA2C */ _t428 = cpu->r[1] + 0x00000054u; /* 027BFA2C */ rbrew_write32(cpu->mem, _t428, cpu->r[0]); /* 027BFA30 */ cpu->r[29] = cpu->r[3]; /* 027BFA34 */ _t429 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BFA34 */ _t430 = _t429 & 0x00000001u; /* 027BFA34 */ if (_t430) goto L_027BFA38; else goto L_027BFAA4; L_027BFA38: ; // 0x27bfa38 /* 027BFA38 */ _t431 = cpu->r[29] + 0x00000024u; /* 027BFA38 */ cpu->r[7] = rbrew_read32(cpu->mem, _t431); /* 027BFA3C */ cpu->r[12] = cpu->r[1] + 0x00000008u; /* 027BFA40 */ cpu->ctr = cpu->r[31]; /* 027BFA44 */ _t432 = cpu->r[29] + 0x00000028u; /* 027BFA44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t432); /* 027BFA48 */ cpu->r[8] = cpu->r[12]; /* 027BFA4C */ cpu->r[11] = 0x00000000u; L_027BFA50: ; // 0x27bfa50 /* 027BFA50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], 0x0000000Cu); /* 027BFA54 */ cpu->r[6] = cpu->r[12]; /* 027BFA58 */ _t433 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFA58 */ _t434 = _t433 & 0x00000001u; /* 027BFA58 */ if (_t434) goto L_027BFA5C; else goto L_027BFA60; L_027BFA5C: ; // 0x27bfa5c /* 027BFA5C */ cpu->r[6] = cpu->r[8]; L_027BFA60: ; // 0x27bfa60 /* 027BFA60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[7]); /* 027BFA64 */ _t435 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFA64 */ _t436 = _t435 & 0x00000001u; /* 027BFA64 */ if (_t436) goto L_027BFA68; else goto L_027BFA88; L_027BFA68: ; // 0x27bfa68 /* 027BFA68 */ _t437 = cpu->r[10] + cpu->r[11]; /* 027BFA68 */ cpu->r[9] = rbrew_read32(cpu->mem, _t437); /* 027BFA6C */ _t438 = cpu->r[9] + 0x00000000u; /* 027BFA6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t438); /* 027BFA70 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BFA74 */ cpu->r[8] = cpu->r[8] + 0x00000004u; /* 027BFA78 */ cpu->r[11] = cpu->r[11] + 0x00000004u; /* 027BFA7C */ _t439 = cpu->r[6] + 0x00000000u; /* 027BFA7C */ rbrew_write32(cpu->mem, _t439, cpu->r[0]); /* 027BFA80 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BFA80 */ _t440 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BFA80 */ _t441 = _t440 >> (0x00000002u & 31u); /* 027BFA80 */ _t442 = _t441 & 0x00000001u; /* 027BFA80 */ if (_t442) goto L_027BFA50; else goto L_027BFA84; L_027BFA84: ; // 0x27bfa84 /* 027BFA84 */ goto L_027BFAA4; L_027BFA88: ; // 0x27bfa88 /* 027BFA88 */ _t443 = cpu->r[10] + 0x00000000u; /* 027BFA88 */ cpu->r[9] = rbrew_read32(cpu->mem, _t443); /* 027BFA8C */ _t444 = cpu->r[9] + 0x00000000u; /* 027BFA8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t444); /* 027BFA90 */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027BFA94 */ cpu->r[8] = cpu->r[8] + 0x00000004u; /* 027BFA98 */ cpu->r[11] = cpu->r[11] + 0x00000004u; /* 027BFA9C */ _t445 = cpu->r[6] + 0x00000000u; /* 027BFA9C */ rbrew_write32(cpu->mem, _t445, cpu->r[0]); /* 027BFAA0 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027BFAA0 */ _t446 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027BFAA0 */ _t447 = _t446 >> (0x00000002u & 31u); /* 027BFAA0 */ _t448 = _t447 & 0x00000001u; /* 027BFAA0 */ if (_t448) goto L_027BFA50; else goto L_027BFAA4; L_027BFAA4: ; // 0x27bfaa4 /* 027BFAA4 */ cpu->r[3] = cpu->r[30]; /* 027BFAA8 */ Gambit_fn_027C275C(cpu); /* 027BFAAC */ _t449 = cpu->r[3] + 0x00000000u; /* 027BFAAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t449); /* 027BFAB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027BFAB4 */ cpu->r[9] = 0x0000270Fu; /* 027BFAB8 */ _t450 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFAB8 */ _t451 = _t450 & 0x00000001u; /* 027BFAB8 */ if (_t451) goto L_027BFABC; else goto L_027BFAD4; L_027BFABC: ; // 0x27bfabc /* 027BFABC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Cu); /* 027BFAC0 */ cpu->r[12] = cpu->r[1] + 0x00000008u; /* 027BFAC4 */ _t452 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFAC4 */ _t453 = _t452 & 0x00000001u; /* 027BFAC4 */ if (_t453) goto L_027BFAC8; else goto L_027BFAD0; L_027BFAC8: ; // 0x27bfac8 /* 027BFAC8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BFACC */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027BFAD0: ; // 0x27bfad0 /* 027BFAD0 */ _t454 = cpu->r[12] + 0x00000000u; /* 027BFAD0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t454); L_027BFAD4: ; // 0x27bfad4 /* 027BFAD4 */ _t455 = cpu->r[30] + 0x00000004u; /* 027BFAD4 */ cpu->r[6] = rbrew_read16(cpu->mem, _t455); /* 027BFAD8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], 0x0000000Du); /* 027BFADC */ _t456 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BFADC */ _t457 = _t456 & 0x00000001u; /* 027BFADC */ if (_t457) goto L_027BFDD0; else goto L_027BFAE0; L_027BFAE0: ; // 0x27bfae0 /* 027BFAE0 */ cpu->r[0] = 0x027C0000u; /* 027BFAE4 */ cpu->r[6] = rbrew_rlwinm(cpu->r[6], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027BFAE8 */ cpu->r[0] = cpu->r[0] + 0xFFFFFAF8u; /* 027BFAEC */ cpu->r[0] = cpu->r[6] + cpu->r[0]; /* 027BFAF0 */ cpu->ctr = cpu->r[0]; /* 027BFAF4 */ rbrew_dispatch(cpu, cpu->ctr); return; L_027BFDD0: ; // 0x27bfdd0 /* 027BFDD0 */ /* nop */ /* 027BFDD4 */ _t458 = cpu->r[1] + 0x00000054u; /* 027BFDD4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t458); /* 027BFDD8 */ cpu->lr = cpu->r[0]; /* 027BFDDC */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027BFDE0 */ cpu->r[3] = 0x00000000u; /* 027BFDE4 */ return; L_027BFDE8: ; // 0x27bfde8 /* 027BFDE8 */ _t459 = cpu->r[4] + 0x00000002u; /* 027BFDE8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t459); /* 027BFDEC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000001u); /* 027BFDF0 */ _t460 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFDF0 */ _t461 = _t460 & 0x00000001u; /* 027BFDF0 */ if (_t461) goto L_027BFE24; else goto L_027BFDF4; L_027BFDF4: ; // 0x27bfdf4 /* 027BFDF4 */ _t462 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFDF4 */ _t463 = _t462 & 0x00000001u; /* 027BFDF4 */ if (_t463) goto L_027BFE14; else goto L_027BFDF8; L_027BFDF8: ; // 0x27bfdf8 /* 027BFDF8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000003u); /* 027BFDFC */ _t464 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFDFC */ _t465 = _t464 & 0x00000001u; /* 027BFDFC */ if (_t465) goto L_027BFE18; else goto L_027BFE00; L_027BFE00: ; // 0x27bfe00 /* 027BFE00 */ _t466 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFE00 */ _t467 = _t466 & 0x00000001u; /* 027BFE00 */ if (_t467) goto L_027BFE1C; else goto L_027BFE04; L_027BFE04: ; // 0x27bfe04 /* 027BFE04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u); /* 027BFE08 */ _t468 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFE08 */ _t469 = _t468 & 0x00000001u; /* 027BFE08 */ if (_t469) goto L_027BFE20; else goto L_027BFE0C; L_027BFE0C: ; // 0x27bfe0c /* 027BFE0C */ cpu->r[3] = 0x00000000u; /* 027BFE10 */ return; L_027BFE14: ; // 0x27bfe14 /* 027BFE14 */ goto L_027BE09C; L_027BFE18: ; // 0x27bfe18 /* 027BFE18 */ goto L_027BE540; L_027BFE1C: ; // 0x27bfe1c /* 027BFE1C */ goto L_027BF470; L_027BFE20: ; // 0x27bfe20 /* 027BFE20 */ goto L_027BFA0C; L_027BFE24: ; // 0x27bfe24 /* 027BFE24 */ cpu->r[3] = 0x00000000u; /* 027BFE28 */ return; } // fn_027BFE2C @ 0x27bfe2c void Gambit_fn_027BFE2C(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; L_027BFE2C: ; // 0x27bfe2c /* 027BFE2C */ _t0 = cpu->r[1] + 0xFFFFFFB8u; /* 027BFE2C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027BFE2C */ cpu->r[1] = _t0; /* 027BFE30 */ /* nop */ /* 027BFE34 */ cpu->r[0] = cpu->lr; /* 027BFE38 */ _t1 = cpu->r[1] + 0x0000004Cu; /* 027BFE38 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027BFE3C */ cpu->r[11] = 0x00000000u; /* 027BFE40 */ cpu->r[25] = cpu->r[3]; /* 027BFE44 */ _t2 = cpu->r[25] + 0x00000024u; /* 027BFE44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027BFE48 */ cpu->r[28] = cpu->r[5]; /* 027BFE4C */ cpu->r[27] = cpu->r[6]; /* 027BFE50 */ cpu->r[26] = cpu->r[4]; /* 027BFE54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]); /* 027BFE58 */ cpu->r[30] = cpu->r[7]; /* 027BFE5C */ _t3 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFE5C */ _t4 = _t3 & 0x00000001u; /* 027BFE5C */ if (_t4) goto L_027BFE60; else goto L_027BFE90; L_027BFE60: ; // 0x27bfe60 /* 027BFE60 */ cpu->r[5] = 0x00000000u; /* 027BFE64 */ cpu->r[7] = cpu->r[5]; L_027BFE68: ; // 0x27bfe68 /* 027BFE68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]); /* 027BFE6C */ _t5 = cpu->r[25] + 0x00000028u; /* 027BFE6C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027BFE70 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFE70 */ _t7 = _t6 & 0x00000001u; /* 027BFE70 */ if (_t7) goto L_027BFE74; else goto L_027BFE78; L_027BFE74: ; // 0x27bfe74 /* 027BFE74 */ cpu->r[12] = cpu->r[12] + cpu->r[5]; L_027BFE78: ; // 0x27bfe78 /* 027BFE78 */ _t8 = cpu->r[12] + 0x00000000u; /* 027BFE78 */ rbrew_write32(cpu->mem, _t8, cpu->r[7]); /* 027BFE7C */ _t9 = cpu->r[25] + 0x00000024u; /* 027BFE7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027BFE80 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027BFE84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]); /* 027BFE88 */ cpu->r[5] = cpu->r[5] + 0x00000004u; /* 027BFE8C */ _t10 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFE8C */ _t11 = _t10 & 0x00000001u; /* 027BFE8C */ if (_t11) goto L_027BFE68; else goto L_027BFE90; L_027BFE90: ; // 0x27bfe90 /* 027BFE90 */ cpu->r[24] = cpu->r[27]; /* 027BFE90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027BFE94 */ cpu->r[23] = 0x00000000u; /* 027BFE98 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BFE98 */ _t13 = _t12 & 0x00000001u; /* 027BFE98 */ if (_t13) goto L_027BFE9C; else goto L_027BFEDC; L_027BFE9C: ; // 0x27bfe9c /* 027BFE9C */ cpu->r[29] = 0x00000000u; L_027BFEA0: ; // 0x27bfea0 /* 027BFEA0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[0]); /* 027BFEA4 */ _t14 = cpu->r[25] + 0x00000028u; /* 027BFEA4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t14); /* 027BFEA8 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027BFEA8 */ _t16 = _t15 & 0x00000001u; /* 027BFEA8 */ if (_t16) goto L_027BFEAC; else goto L_027BFEB0; L_027BFEAC: ; // 0x27bfeac /* 027BFEAC */ cpu->r[31] = cpu->r[31] + cpu->r[29]; L_027BFEB0: ; // 0x27bfeb0 /* 027BFEB0 */ cpu->r[3] = cpu->r[30]; /* 027BFEB4 */ cpu->r[4] = 0x00000001u; /* 027BFEB8 */ Gambit_fn_02C89FC4(cpu); /* 027BFEBC */ _t17 = cpu->r[3] + 0x00000000u; /* 027BFEBC */ cpu->r[10] = rbrew_read32(cpu->mem, _t17); /* 027BFEC0 */ cpu->r[29] = cpu->r[29] + 0x00000004u; /* 027BFEC4 */ cpu->r[23] = cpu->r[23] + 0x00000001u; /* 027BFEC8 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu; /* 027BFEC8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027BFECC */ _t18 = cpu->r[31] + 0x00000000u; /* 027BFECC */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); /* 027BFED0 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFED0 */ _t20 = _t19 & 0x00000001u; /* 027BFED0 */ if (_t20) goto L_027BFEDC; else goto L_027BFED4; L_027BFED4: ; // 0x27bfed4 /* 027BFED4 */ _t21 = cpu->r[25] + 0x00000024u; /* 027BFED4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027BFED8 */ goto L_027BFEA0; L_027BFEDC: ; // 0x27bfedc /* 027BFEDC */ _t22 = cpu->r[28] + 0x00000004u; /* 027BFEDC */ cpu->r[10] = rbrew_read32(cpu->mem, _t22); /* 027BFEE0 */ _t23 = cpu->r[10] + 0x00000014u; /* 027BFEE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027BFEE4 */ cpu->ctr = cpu->r[0]; /* 027BFEE8 */ cpu->r[29] = 0x00000000u; /* 027BFEEC */ cpu->r[3] = cpu->r[28]; /* 027BFEF0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BFEF4 */ _t24 = cpu->r[28] + 0x00000000u; /* 027BFEF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24); /* 027BFEF8 */ cpu->r[30] = 0x10110000u; /* 027BFEFC */ _t25 = cpu->r[30] + 0x0000739Au; /* 027BFEFC */ cpu->r[30] = rbrew_read16(cpu->mem, _t25); /* 027BFF00 */ _t26 = cpu->r[8] + 0x00000000u; /* 027BFF00 */ cpu->r[0] = rbrew_read16(cpu->mem, _t26); /* 027BFF04 */ cpu->r[7] = cpu->r[29]; /* 027BFF08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027BFF0C */ cpu->r[11] = 0x00080000u; /* 027BFF10 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFF10 */ _t28 = _t27 & 0x00000001u; /* 027BFF10 */ if (_t28) goto L_027BFF30; else goto L_027BFF14; L_027BFF14: ; // 0x27bff14 /* 027BFF14 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027BFF18 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[11]); /* 027BFF1C */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027BFF20 */ _t29 = cpu->cr[0] >> (0x00000002u & 31u); /* 027BFF20 */ _t30 = _t29 & 0x00000001u; /* 027BFF20 */ if (_t30) goto L_027BFF30; else goto L_027BFF24; L_027BFF24: ; // 0x27bff24 /* 027BFF24 */ _t31 = cpu->r[8] + 0x00000000u; /* 027BFF24 */ cpu->r[0] = rbrew_read16(cpu->mem, _t31); /* 027BFF28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027BFF2C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFF2C */ _t33 = _t32 & 0x00000001u; /* 027BFF2C */ if (_t33) goto L_027BFF30; else goto L_027BFF14; L_027BFF30: ; // 0x27bff30 /* 027BFF30 */ _t34 = cpu->r[28] + 0x00000004u; /* 027BFF30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t34); /* 027BFF34 */ _t35 = cpu->r[5] + 0x00000014u; /* 027BFF34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35); /* 027BFF38 */ cpu->ctr = cpu->r[0]; /* 027BFF3C */ cpu->r[3] = cpu->r[28]; /* 027BFF40 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BFF44 */ _t36 = cpu->r[28] + 0x00000000u; /* 027BFF44 */ cpu->r[23] = rbrew_read32(cpu->mem, _t36); /* 027BFF48 */ _t37 = cpu->r[23] + 0x00000000u; /* 027BFF48 */ cpu->r[0] = rbrew_read16(cpu->mem, _t37); /* 027BFF4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027BFF50 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFF50 */ _t39 = _t38 & 0x00000001u; /* 027BFF50 */ if (_t39) goto L_027C02AC; else goto L_027BFF54; L_027BFF54: ; // 0x27bff54 /* 027BFF54 */ cpu->r[31] = 0x10110000u; /* 027BFF58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027BFF5C */ cpu->r[31] = cpu->r[31] + 0xFFFFBCDCu; /* 027BFF60 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFF60 */ _t41 = _t40 & 0x00000001u; /* 027BFF60 */ if (_t41) goto L_027BFF6C; else goto L_027BFF64; L_027BFF64: ; // 0x27bff64 /* 027BFF64 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027BFF68 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFF68 */ _t43 = _t42 & 0x00000001u; /* 027BFF68 */ if (_t43) goto L_027BFF6C; else goto L_027C01C4; L_027BFF6C: ; // 0x27bff6c /* 027BFF6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027BFF70 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFF70 */ _t45 = _t44 & 0x00000001u; /* 027BFF70 */ if (_t45) goto L_027BFF74; else goto L_027BFFAC; L_027BFF74: ; // 0x27bff74 /* 027BFF74 */ _t46 = cpu->r[25] + 0x00000000u; /* 027BFF74 */ cpu->r[9] = rbrew_read32(cpu->mem, _t46); /* 027BFF78 */ _t47 = cpu->r[9] + 0x0000007Cu; /* 027BFF78 */ cpu->r[10] = rbrew_read32(cpu->mem, _t47); /* 027BFF7C */ _t48 = cpu->r[23] + 0x00000006u; /* 027BFF7C */ cpu->r[0] = rbrew_read16(cpu->mem, _t48); /* 027BFF80 */ cpu->ctr = cpu->r[10]; /* 027BFF84 */ cpu->r[7] = cpu->r[23] + cpu->r[0]; /* 027BFF88 */ _t49 = cpu->r[23] + 0x00000002u; /* 027BFF88 */ cpu->r[4] = rbrew_read16(cpu->mem, _t49); /* 027BFF8C */ cpu->r[3] = cpu->r[25]; /* 027BFF90 */ cpu->r[22] = cpu->r[7] + 0x00000008u; /* 027BFF94 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BFF98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BFF9C */ cpu->r[3] = cpu->r[25]; /* 027BFFA0 */ cpu->r[4] = cpu->r[23]; /* 027BFFA4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFFA4 */ _t51 = _t50 & 0x00000001u; /* 027BFFA4 */ if (_t51) goto L_027C0044; else goto L_027BFFA8; L_027BFFA8: ; // 0x27bffa8 /* 027BFFA8 */ goto L_027C0014; L_027BFFAC: ; // 0x27bffac /* 027BFFAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027BFFB0 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFFB0 */ _t53 = _t52 & 0x00000001u; /* 027BFFB0 */ if (_t53) goto L_027BFFB4; else goto L_027BFFE4; L_027BFFB4: ; // 0x27bffb4 /* 027BFFB4 */ _t54 = cpu->r[25] + 0x00000000u; /* 027BFFB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t54); /* 027BFFB8 */ _t55 = cpu->r[9] + 0x0000007Cu; /* 027BFFB8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t55); /* 027BFFBC */ cpu->ctr = cpu->r[10]; /* 027BFFC0 */ _t56 = cpu->r[23] + 0x00000002u; /* 027BFFC0 */ cpu->r[4] = rbrew_read16(cpu->mem, _t56); /* 027BFFC4 */ cpu->r[22] = cpu->r[23] + 0x00000006u; /* 027BFFC8 */ cpu->r[3] = cpu->r[25]; /* 027BFFCC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027BFFD0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027BFFD4 */ cpu->r[3] = cpu->r[25]; /* 027BFFD8 */ cpu->r[4] = cpu->r[23]; /* 027BFFDC */ _t57 = cpu->cr[0] >> (0x00000001u & 31u); /* 027BFFDC */ _t58 = _t57 & 0x00000001u; /* 027BFFDC */ if (_t58) goto L_027C0044; else goto L_027BFFE0; L_027BFFE0: ; // 0x27bffe0 /* 027BFFE0 */ goto L_027C0014; L_027BFFE4: ; // 0x27bffe4 /* 027BFFE4 */ _t59 = cpu->r[25] + 0x00000000u; /* 027BFFE4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t59); /* 027BFFE8 */ _t60 = cpu->r[9] + 0x0000007Cu; /* 027BFFE8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t60); /* 027BFFEC */ cpu->r[28] = 0x00000000u; /* 027BFFF0 */ cpu->ctr = cpu->r[10]; /* 027BFFF4 */ _t61 = cpu->r[28] + 0x00000002u; /* 027BFFF4 */ cpu->r[4] = rbrew_read16(cpu->mem, _t61); /* 027BFFF8 */ cpu->r[22] = cpu->r[23]; /* 027BFFFC */ cpu->r[3] = cpu->r[25]; /* 027C0000 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0004 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C0008 */ cpu->r[3] = cpu->r[25]; /* 027C000C */ cpu->r[4] = cpu->r[28]; /* 027C0010 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0010 */ _t63 = _t62 & 0x00000001u; /* 027C0010 */ if (_t63) goto L_027C0044; else goto L_027C0014; L_027C0014: ; // 0x27c0014 /* 027C0014 */ cpu->r[0] = cpu->r[22] - cpu->r[23]; /* 027C0018 */ cpu->r[7] = cpu->r[27]; /* 027C001C */ cpu->r[6] = cpu->r[29]; /* 027C0020 */ /* nop */ /* 027C0024 */ cpu->r[5] = cpu->r[26]; /* 027C0028 */ Gambit_fn_027BFDE8(cpu); /* 027C002C */ cpu->r[23] = cpu->r[22]; /* 027C0030 */ cpu->r[29] = cpu->r[29] + cpu->r[3]; /* 027C0034 */ _t64 = cpu->r[23] + 0x00000000u; /* 027C0034 */ cpu->r[0] = rbrew_read16(cpu->mem, _t64); /* 027C0038 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C003C */ _t65 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C003C */ _t66 = _t65 & 0x00000001u; /* 027C003C */ if (_t66) goto L_027C0040; else goto L_027BFF54; L_027C0040: ; // 0x27c0040 /* 027C0040 */ goto L_027C02AC; L_027C0044: ; // 0x27c0044 /* 027C0044 */ _t67 = cpu->r[25] + 0x00000000u; /* 027C0044 */ cpu->r[7] = rbrew_read32(cpu->mem, _t67); /* 027C0048 */ _t68 = cpu->r[7] + 0x00000084u; /* 027C0048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t68); /* 027C004C */ cpu->ctr = cpu->r[0]; /* 027C0050 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0054 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C0058 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0058 */ _t70 = _t69 & 0x00000001u; /* 027C0058 */ if (_t70) goto L_027C0070; else goto L_027C005C; L_027C005C: ; // 0x27c005c /* 027C005C */ cpu->r[23] = cpu->r[22]; /* 027C0060 */ _t71 = cpu->r[23] + 0x00000000u; /* 027C0060 */ cpu->r[0] = rbrew_read16(cpu->mem, _t71); /* 027C0064 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C0068 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0068 */ _t73 = _t72 & 0x00000001u; /* 027C0068 */ if (_t73) goto L_027C006C; else goto L_027BFF54; L_027C006C: ; // 0x27c006c /* 027C006C */ goto L_027C02AC; L_027C0070: ; // 0x27c0070 /* 027C0070 */ _t74 = cpu->r[26] + 0x00000004u; /* 027C0070 */ cpu->r[10] = rbrew_read32(cpu->mem, _t74); /* 027C0074 */ _t75 = cpu->r[1] + 0x00000008u; /* 027C0074 */ rbrew_write32(cpu->mem, _t75, cpu->r[23]); /* 027C0078 */ cpu->r[9] = cpu->r[22] - cpu->r[23]; /* 027C007C */ _t76 = cpu->r[1] + 0x0000000Cu; /* 027C007C */ rbrew_write32(cpu->mem, _t76, cpu->r[31]); /* 027C0080 */ _t77 = cpu->r[10] + 0x00000014u; /* 027C0080 */ cpu->r[0] = rbrew_read32(cpu->mem, _t77); /* 027C0084 */ /* nop */ /* 027C0088 */ cpu->ctr = cpu->r[0]; /* 027C008C */ cpu->r[3] = cpu->r[26]; /* 027C0090 */ _t78 = cpu->r[26] + 0x00000000u; /* 027C0090 */ cpu->r[24] = rbrew_read32(cpu->mem, _t78); /* 027C0094 */ cpu->r[28] = cpu->r[20]; /* 027C0098 */ cpu->r[21] = cpu->r[29]; /* 027C009C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C00A0 */ _t79 = cpu->r[26] + 0x00000000u; /* 027C00A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t79); /* 027C00A4 */ _t80 = cpu->r[12] + 0x00000000u; /* 027C00A4 */ cpu->r[5] = rbrew_read16(cpu->mem, _t80); /* 027C00A8 */ cpu->r[31] = 0x00000000u; /* 027C00AC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]); /* 027C00B0 */ cpu->r[6] = 0x00080000u; /* 027C00B4 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C00B4 */ _t82 = _t81 & 0x00000001u; /* 027C00B4 */ if (_t82) goto L_027C00DC; else goto L_027C00B8; L_027C00B8: ; // 0x27c00b8 /* 027C00B8 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C00BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[6]); /* 027C00C0 */ cpu->r[12] = cpu->r[12] + 0x00000002u; /* 027C00C4 */ _t83 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C00C4 */ _t84 = _t83 & 0x00000001u; /* 027C00C4 */ if (_t84) goto L_027C00D8; else goto L_027C00C8; L_027C00C8: ; // 0x27c00c8 /* 027C00C8 */ _t85 = cpu->r[12] + 0x00000000u; /* 027C00C8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t85); /* 027C00CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C00D0 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C00D0 */ _t87 = _t86 & 0x00000001u; /* 027C00D0 */ if (_t87) goto L_027C00D4; else goto L_027C00B8; L_027C00D4: ; // 0x27c00d4 /* 027C00D4 */ goto L_027C00DC; L_027C00D8: ; // 0x27c00d8 /* 027C00D8 */ cpu->r[31] = 0x00000000u; L_027C00DC: ; // 0x27c00dc /* 027C00DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u); /* 027C00E0 */ _t88 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C00E0 */ _t89 = _t88 & 0x00000001u; /* 027C00E0 */ if (_t89) goto L_027C00E4; else goto L_027C00F4; L_027C00E4: ; // 0x27c00e4 /* 027C00E4 */ cpu->r[7] = cpu->r[31] + cpu->r[21]; /* 027C00E8 */ cpu->r[21] = cpu->r[7] + 0x00000001u; /* 027C00E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u); /* 027C00EC */ _t90 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C00EC */ _t91 = _t90 & 0x00000001u; /* 027C00EC */ if (_t91) goto L_027C00F0; else goto L_027C00F4; L_027C00F0: ; // 0x27c00f0 /* 027C00F0 */ cpu->r[21] = 0x00000000u; L_027C00F4: ; // 0x27c00f4 /* 027C00F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027C00F8 */ _t92 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C00F8 */ _t93 = _t92 & 0x00000001u; /* 027C00F8 */ if (_t93) goto L_027C00FC; else goto L_027C014C; L_027C00FC: ; // 0x27c00fc /* 027C00FC */ _t94 = cpu->r[1] + 0x0000000Cu; /* 027C00FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t94); /* 027C0100 */ _t95 = cpu->r[9] + 0x00000014u; /* 027C0100 */ cpu->r[11] = rbrew_read32(cpu->mem, _t95); /* 027C0104 */ cpu->ctr = cpu->r[11]; /* 027C0108 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C010C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0110 */ _t96 = cpu->r[1] + 0x00000008u; /* 027C0110 */ cpu->r[5] = rbrew_read32(cpu->mem, _t96); /* 027C0114 */ _t97 = cpu->r[5] + 0x00000000u; /* 027C0114 */ cpu->r[0] = rbrew_read16(cpu->mem, _t97); /* 027C0118 */ cpu->r[28] = 0x00000000u; /* 027C011C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C0120 */ cpu->r[0] = 0x00080000u; /* 027C0124 */ _t98 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0124 */ _t99 = _t98 & 0x00000001u; /* 027C0124 */ if (_t99) goto L_027C014C; else goto L_027C0128; L_027C0128: ; // 0x27c0128 /* 027C0128 */ cpu->r[28] = cpu->r[28] + 0x00000001u; /* 027C012C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[0]); /* 027C0130 */ cpu->r[5] = cpu->r[5] + 0x00000002u; /* 027C0134 */ _t100 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0134 */ _t101 = _t100 & 0x00000001u; /* 027C0134 */ if (_t101) goto L_027C0148; else goto L_027C0138; L_027C0138: ; // 0x27c0138 /* 027C0138 */ _t102 = cpu->r[5] + 0x00000000u; /* 027C0138 */ cpu->r[6] = rbrew_read16(cpu->mem, _t102); /* 027C013C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[30]); /* 027C0140 */ _t103 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0140 */ _t104 = _t103 & 0x00000001u; /* 027C0140 */ if (_t104) goto L_027C0144; else goto L_027C0128; L_027C0144: ; // 0x27c0144 /* 027C0144 */ goto L_027C014C; L_027C0148: ; // 0x27c0148 /* 027C0148 */ cpu->r[28] = 0x00000000u; L_027C014C: ; // 0x27c014c /* 027C014C */ _t105 = cpu->r[26] + 0x00000008u; /* 027C014C */ cpu->r[0] = rbrew_read32(cpu->mem, _t105); /* 027C0150 */ cpu->r[6] = cpu->r[0] - cpu->r[21]; /* 027C0154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], cpu->r[6]); /* 027C0158 */ _t106 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0158 */ _t107 = _t106 & 0x00000001u; /* 027C0158 */ if (_t107) goto L_027C0160; else goto L_027C015C; L_027C015C: ; // 0x27c015c /* 027C015C */ cpu->r[28] = cpu->r[6] + 0xFFFFFFFFu; L_027C0160: ; // 0x27c0160 /* 027C0160 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027C0164 */ _t108 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0164 */ _t109 = _t108 & 0x00000001u; /* 027C0164 */ if (_t109) goto L_027C0168; else goto L_027C01AC; L_027C0168: ; // 0x27c0168 /* 027C0168 */ _t110 = cpu->r[1] + 0x0000000Cu; /* 027C0168 */ cpu->r[11] = rbrew_read32(cpu->mem, _t110); /* 027C016C */ _t111 = cpu->r[11] + 0x00000014u; /* 027C016C */ cpu->r[5] = rbrew_read32(cpu->mem, _t111); /* 027C0170 */ cpu->r[9] = rbrew_rlwinm(cpu->r[21], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0174 */ cpu->ctr = cpu->r[5]; /* 027C0178 */ cpu->r[23] = cpu->r[24] + cpu->r[9]; /* 027C017C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C0180 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0184 */ _t112 = cpu->r[1] + 0x00000008u; /* 027C0184 */ cpu->r[4] = rbrew_read32(cpu->mem, _t112); /* 027C0188 */ cpu->r[6] = 0x00000000u; /* 027C018C */ cpu->r[5] = rbrew_rlwinm(cpu->r[28], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0190 */ cpu->r[3] = cpu->r[23]; /* 027C0194 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C0198 */ cpu->r[8] = cpu->r[21] + cpu->r[28]; /* 027C019C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[31]); /* 027C01A0 */ _t113 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C01A0 */ _t114 = _t113 & 0x00000001u; /* 027C01A0 */ if (_t114) goto L_027C01A4; else goto L_027C01AC; L_027C01A4: ; // 0x27c01a4 /* 027C01A4 */ cpu->r[7] = rbrew_rlwinm(cpu->r[8], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C01A8 */ _t115 = cpu->r[7] + cpu->r[24]; /* 027C01A8 */ rbrew_write16(cpu->mem, _t115, (uint16_t)cpu->r[30]); L_027C01AC: ; // 0x27c01ac /* 027C01AC */ cpu->r[23] = cpu->r[22]; /* 027C01B0 */ cpu->r[29] = cpu->r[29] + cpu->r[20]; /* 027C01B4 */ _t116 = cpu->r[23] + 0x00000000u; /* 027C01B4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t116); /* 027C01B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C01BC */ _t117 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C01BC */ _t118 = _t117 & 0x00000001u; /* 027C01BC */ if (_t118) goto L_027C01C0; else goto L_027BFF54; L_027C01C0: ; // 0x27c01c0 /* 027C01C0 */ goto L_027C02AC; L_027C01C4: ; // 0x27c01c4 /* 027C01C4 */ _t119 = cpu->r[26] + 0x00000004u; /* 027C01C4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t119); /* 027C01C8 */ _t120 = cpu->r[1] + 0x00000010u; /* 027C01C8 */ rbrew_write32(cpu->mem, _t120, cpu->r[23]); /* 027C01CC */ _t121 = cpu->r[1] + 0x00000014u; /* 027C01CC */ rbrew_write32(cpu->mem, _t121, cpu->r[31]); /* 027C01D0 */ _t122 = cpu->r[9] + 0x00000014u; /* 027C01D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t122); /* 027C01D4 */ cpu->ctr = cpu->r[10]; /* 027C01D8 */ _t123 = cpu->r[26] + 0x00000000u; /* 027C01D8 */ cpu->r[28] = rbrew_read32(cpu->mem, _t123); /* 027C01DC */ cpu->r[22] = 0x00000001u; /* 027C01E0 */ cpu->r[21] = cpu->r[29]; /* 027C01E4 */ cpu->r[3] = cpu->r[26]; /* 027C01E8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C01EC */ _t124 = cpu->r[26] + 0x00000000u; /* 027C01EC */ cpu->r[8] = rbrew_read32(cpu->mem, _t124); /* 027C01F0 */ _t125 = cpu->r[8] + 0x00000000u; /* 027C01F0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t125); /* 027C01F4 */ cpu->r[31] = 0x00000000u; /* 027C01F8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C01FC */ cpu->r[12] = 0x00080000u; /* 027C0200 */ _t126 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0200 */ _t127 = _t126 & 0x00000001u; /* 027C0200 */ if (_t127) goto L_027C0228; else goto L_027C0204; L_027C0204: ; // 0x27c0204 /* 027C0204 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C0208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[12]); /* 027C020C */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027C0210 */ _t128 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0210 */ _t129 = _t128 & 0x00000001u; /* 027C0210 */ if (_t129) goto L_027C0224; else goto L_027C0214; L_027C0214: ; // 0x27c0214 /* 027C0214 */ _t130 = cpu->r[8] + 0x00000000u; /* 027C0214 */ cpu->r[0] = rbrew_read16(cpu->mem, _t130); /* 027C0218 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C021C */ _t131 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C021C */ _t132 = _t131 & 0x00000001u; /* 027C021C */ if (_t132) goto L_027C0220; else goto L_027C0204; L_027C0220: ; // 0x27c0220 /* 027C0220 */ goto L_027C0228; L_027C0224: ; // 0x27c0224 /* 027C0224 */ cpu->r[31] = 0x00000000u; L_027C0228: ; // 0x27c0228 /* 027C0228 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u); /* 027C022C */ _t133 = cpu->r[26] + 0x00000008u; /* 027C022C */ cpu->r[0] = rbrew_read32(cpu->mem, _t133); /* 027C0230 */ _t134 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0230 */ _t135 = _t134 & 0x00000001u; /* 027C0230 */ if (_t135) goto L_027C0234; else goto L_027C0244; L_027C0234: ; // 0x27c0234 /* 027C0234 */ cpu->r[6] = cpu->r[31] + cpu->r[21]; /* 027C0238 */ cpu->r[21] = cpu->r[6] + 0x00000001u; /* 027C0238 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u); /* 027C023C */ _t136 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C023C */ _t137 = _t136 & 0x00000001u; /* 027C023C */ if (_t137) goto L_027C0240; else goto L_027C0244; L_027C0240: ; // 0x27c0240 /* 027C0240 */ cpu->r[21] = 0x00000000u; L_027C0244: ; // 0x27c0244 /* 027C0244 */ cpu->r[7] = cpu->r[0] - cpu->r[21]; /* 027C0248 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], 0x00000001u); /* 027C024C */ _t138 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C024C */ _t139 = _t138 & 0x00000001u; /* 027C024C */ if (_t139) goto L_027C0258; else goto L_027C0250; L_027C0250: ; // 0x27c0250 /* 027C0250 */ cpu->r[22] = cpu->r[7] + 0xFFFFFFFFu; /* 027C0250 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u); /* 027C0254 */ _t140 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0254 */ _t141 = _t140 & 0x00000001u; /* 027C0254 */ if (_t141) goto L_027C0258; else goto L_027C029C; L_027C0258: ; // 0x27c0258 /* 027C0258 */ _t142 = cpu->r[1] + 0x00000014u; /* 027C0258 */ cpu->r[9] = rbrew_read32(cpu->mem, _t142); /* 027C025C */ _t143 = cpu->r[9] + 0x00000014u; /* 027C025C */ cpu->r[10] = rbrew_read32(cpu->mem, _t143); /* 027C0260 */ cpu->r[8] = rbrew_rlwinm(cpu->r[21], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0264 */ cpu->ctr = cpu->r[10]; /* 027C0268 */ cpu->r[24] = cpu->r[28] + cpu->r[8]; /* 027C026C */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027C0270 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0274 */ _t144 = cpu->r[1] + 0x00000010u; /* 027C0274 */ cpu->r[4] = rbrew_read32(cpu->mem, _t144); /* 027C0278 */ cpu->r[6] = 0x00000000u; /* 027C027C */ cpu->r[5] = rbrew_rlwinm(cpu->r[22], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0280 */ cpu->r[3] = cpu->r[24]; /* 027C0284 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C0288 */ cpu->r[0] = cpu->r[21] + cpu->r[22]; /* 027C028C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[31]); /* 027C0290 */ _t145 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0290 */ _t146 = _t145 & 0x00000001u; /* 027C0290 */ if (_t146) goto L_027C0294; else goto L_027C029C; L_027C0294: ; // 0x27c0294 /* 027C0294 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0298 */ _t147 = cpu->r[12] + cpu->r[28]; /* 027C0298 */ rbrew_write16(cpu->mem, _t147, (uint16_t)cpu->r[30]); L_027C029C: ; // 0x27c029c /* 027C029C */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027C02A0 */ _t148 = cpu->r[23] + 0x00000002u; /* 027C02A0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t148); /* 027C02A0 */ cpu->r[23] = _t148; /* 027C02A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C02A8 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C02A8 */ _t150 = _t149 & 0x00000001u; /* 027C02A8 */ if (_t150) goto L_027C02AC; else goto L_027BFF54; L_027C02AC: ; // 0x27c02ac /* 027C02AC */ cpu->r[3] = cpu->r[29]; /* 027C02B0 */ /* nop */ /* 027C02B4 */ _t151 = cpu->r[1] + 0x0000004Cu; /* 027C02B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t151); /* 027C02B8 */ cpu->lr = cpu->r[0]; /* 027C02BC */ cpu->r[1] = cpu->r[1] + 0x00000048u; /* 027C02C0 */ return; } // fn_027C02C4 @ 0x27c02c4 void Gambit_fn_027C02C4(CPUState* cpu) { L_027C02C4: ; // 0x27c02c4 /* 027C02C4 */ cpu->r[3] = cpu->r[9]; /* 027C02C8 */ return; } // fn_027C02CC @ 0x27c02cc void Gambit_fn_027C02CC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57, _t58, _t59, _t60, _t61, _t62, _t63, _t64, _t65, _t66, _t67, _t68, _t69, _t70, _t71, _t72, _t73, _t74, _t75, _t76, _t77, _t78, _t79, _t80, _t81; L_027C02CC: ; // 0x27c02cc /* 027C02CC */ _t0 = cpu->r[1] + 0xFFFFFFB8u; /* 027C02CC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C02CC */ cpu->r[1] = _t0; /* 027C02D0 */ /* nop */ /* 027C02D4 */ cpu->r[0] = cpu->lr; /* 027C02D8 */ _t1 = cpu->r[1] + 0x0000004Cu; /* 027C02D8 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027C02DC */ cpu->r[29] = cpu->r[6]; /* 027C02E0 */ cpu->r[30] = cpu->r[7]; /* 027C02E4 */ cpu->r[25] = 0x00000000u; /* 027C02E8 */ _t2 = cpu->r[30] + 0x00000004u; /* 027C02E8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2); /* 027C02EC */ _t3 = cpu->r[1] + 0x00000010u; /* 027C02EC */ rbrew_write32(cpu->mem, _t3, cpu->r[25]); /* 027C02F0 */ _t4 = cpu->r[11] + 0x00000014u; /* 027C02F0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4); /* 027C02F4 */ cpu->r[26] = cpu->r[3]; /* 027C02F8 */ cpu->ctr = cpu->r[12]; /* 027C02FC */ cpu->r[27] = cpu->r[4]; /* 027C0300 */ cpu->r[3] = cpu->r[30]; /* 027C0304 */ cpu->r[28] = cpu->r[5]; /* 027C0308 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C030C */ cpu->r[31] = 0x10110000u; /* 027C0310 */ _t5 = cpu->r[30] + 0x00000000u; /* 027C0310 */ cpu->r[9] = rbrew_read32(cpu->mem, _t5); /* 027C0314 */ _t6 = cpu->r[31] + 0x0000739Au; /* 027C0314 */ cpu->r[31] = rbrew_read16(cpu->mem, _t6); /* 027C0318 */ _t7 = cpu->r[9] + 0x00000000u; /* 027C0318 */ cpu->r[0] = rbrew_read16(cpu->mem, _t7); /* 027C031C */ cpu->r[8] = cpu->r[25]; /* 027C0320 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027C0324 */ cpu->r[10] = 0x00080000u; /* 027C0328 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0328 */ _t9 = _t8 & 0x00000001u; /* 027C0328 */ if (_t9) goto L_027C0348; else goto L_027C032C; L_027C032C: ; // 0x27c032c /* 027C032C */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027C0330 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], cpu->r[10]); /* 027C0334 */ cpu->r[9] = cpu->r[9] + 0x00000002u; /* 027C0338 */ _t10 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0338 */ _t11 = _t10 & 0x00000001u; /* 027C0338 */ if (_t11) goto L_027C0348; else goto L_027C033C; L_027C033C: ; // 0x27c033c /* 027C033C */ _t12 = cpu->r[9] + 0x00000000u; /* 027C033C */ cpu->r[4] = rbrew_read16(cpu->mem, _t12); /* 027C0340 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[31]); /* 027C0344 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0344 */ _t14 = _t13 & 0x00000001u; /* 027C0344 */ if (_t14) goto L_027C0348; else goto L_027C032C; L_027C0348: ; // 0x27c0348 /* 027C0348 */ _t15 = cpu->r[30] + 0x00000004u; /* 027C0348 */ cpu->r[5] = rbrew_read32(cpu->mem, _t15); /* 027C034C */ _t16 = cpu->r[5] + 0x00000014u; /* 027C034C */ cpu->r[6] = rbrew_read32(cpu->mem, _t16); /* 027C0350 */ cpu->ctr = cpu->r[6]; /* 027C0354 */ cpu->r[3] = cpu->r[30]; /* 027C0358 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C035C */ _t17 = cpu->r[30] + 0x00000000u; /* 027C035C */ cpu->r[24] = rbrew_read32(cpu->mem, _t17); /* 027C0360 */ _t18 = cpu->r[24] + 0x00000000u; /* 027C0360 */ cpu->r[0] = rbrew_read16(cpu->mem, _t18); /* 027C0364 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C0368 */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0368 */ _t20 = _t19 & 0x00000001u; /* 027C0368 */ if (_t20) goto L_027C054C; else goto L_027C036C; L_027C036C: ; // 0x27c036c /* 027C036C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C0370 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0370 */ _t22 = _t21 & 0x00000001u; /* 027C0370 */ if (_t22) goto L_027C037C; else goto L_027C0374; L_027C0374: ; // 0x27c0374 /* 027C0374 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C0378 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0378 */ _t24 = _t23 & 0x00000001u; /* 027C0378 */ if (_t24) goto L_027C037C; else goto L_027C045C; L_027C037C: ; // 0x27c037c /* 027C037C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C0380 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0380 */ _t26 = _t25 & 0x00000001u; /* 027C0380 */ if (_t26) goto L_027C0384; else goto L_027C03C8; L_027C0384: ; // 0x27c0384 /* 027C0384 */ _t27 = cpu->r[26] + 0x00000000u; /* 027C0384 */ cpu->r[10] = rbrew_read32(cpu->mem, _t27); /* 027C0388 */ _t28 = cpu->r[10] + 0x0000008Cu; /* 027C0388 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28); /* 027C038C */ _t29 = cpu->r[24] + 0x00000006u; /* 027C038C */ cpu->r[9] = rbrew_read16(cpu->mem, _t29); /* 027C0390 */ cpu->ctr = cpu->r[11]; /* 027C0394 */ cpu->r[7] = cpu->r[24] + cpu->r[9]; /* 027C0398 */ cpu->r[23] = cpu->r[24]; /* 027C039C */ cpu->r[30] = cpu->r[7] + 0x00000008u; /* 027C03A0 */ cpu->r[4] = cpu->r[23]; /* 027C03A4 */ cpu->r[3] = cpu->r[26]; /* 027C03A8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C03AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C03B0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C03B0 */ _t31 = _t30 & 0x00000001u; /* 027C03B0 */ if (_t31) goto L_027C03B4; else goto L_027C0424; L_027C03B4: ; // 0x27c03b4 /* 027C03B4 */ cpu->r[24] = cpu->r[30]; /* 027C03B8 */ _t32 = cpu->r[24] + 0x00000000u; /* 027C03B8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t32); /* 027C03BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C03C0 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C03C0 */ _t34 = _t33 & 0x00000001u; /* 027C03C0 */ if (_t34) goto L_027C03C4; else goto L_027C036C; L_027C03C4: ; // 0x27c03c4 /* 027C03C4 */ goto L_027C054C; L_027C03C8: ; // 0x27c03c8 /* 027C03C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C03CC */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C03CC */ _t36 = _t35 & 0x00000001u; /* 027C03CC */ if (_t36) goto L_027C03D0; else goto L_027C03FC; L_027C03D0: ; // 0x27c03d0 /* 027C03D0 */ _t37 = cpu->r[26] + 0x00000000u; /* 027C03D0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t37); /* 027C03D4 */ _t38 = cpu->r[10] + 0x0000008Cu; /* 027C03D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t38); /* 027C03D8 */ cpu->r[23] = cpu->r[24]; /* 027C03DC */ cpu->ctr = cpu->r[11]; /* 027C03E0 */ cpu->r[4] = cpu->r[23]; /* 027C03E4 */ cpu->r[30] = cpu->r[24] + 0x00000006u; /* 027C03E8 */ cpu->r[3] = cpu->r[26]; /* 027C03EC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C03F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C03F4 */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C03F4 */ _t40 = _t39 & 0x00000001u; /* 027C03F4 */ if (_t40) goto L_027C03B4; else goto L_027C03F8; L_027C03F8: ; // 0x27c03f8 /* 027C03F8 */ goto L_027C0424; L_027C03FC: ; // 0x27c03fc /* 027C03FC */ _t41 = cpu->r[26] + 0x00000000u; /* 027C03FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t41); /* 027C0400 */ _t42 = cpu->r[10] + 0x0000008Cu; /* 027C0400 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42); /* 027C0404 */ cpu->r[23] = 0x00000000u; /* 027C0408 */ cpu->ctr = cpu->r[11]; /* 027C040C */ cpu->r[4] = cpu->r[23]; /* 027C0410 */ cpu->r[30] = cpu->r[24]; /* 027C0414 */ cpu->r[3] = cpu->r[26]; /* 027C0418 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C041C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C0420 */ _t43 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0420 */ _t44 = _t43 & 0x00000001u; /* 027C0420 */ if (_t44) goto L_027C03B4; else goto L_027C0424; L_027C0424: ; // 0x27c0424 /* 027C0424 */ cpu->r[0] = cpu->r[30] - cpu->r[24]; /* 027C0428 */ cpu->r[8] = cpu->r[24]; /* 027C042C */ cpu->r[4] = cpu->r[1] + 0x00000010u; /* 027C0430 */ /* nop */ /* 027C0434 */ cpu->r[7] = cpu->r[23]; /* 027C0438 */ cpu->r[6] = cpu->r[27]; /* 027C043C */ cpu->r[5] = cpu->r[29]; /* 027C0440 */ cpu->r[3] = cpu->r[26]; /* 027C0444 */ Gambit_fn_027C02C4(cpu); /* 027C0448 */ cpu->r[4] = rbrew_rlwinm(cpu->r[3], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C044C */ _t45 = cpu->r[24] + cpu->r[4]; /* 027C044C */ cpu->r[0] = rbrew_read16(cpu->mem, _t45); /* 027C044C */ cpu->r[24] = _t45; /* 027C0450 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C0454 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0454 */ _t47 = _t46 & 0x00000001u; /* 027C0454 */ if (_t47) goto L_027C0458; else goto L_027C036C; L_027C0458: ; // 0x27c0458 /* 027C0458 */ goto L_027C054C; L_027C045C: ; // 0x27c045c /* 027C045C */ cpu->r[5] = 0x10110000u; /* 027C0460 */ _t48 = cpu->r[28] + 0x00000004u; /* 027C0460 */ cpu->r[6] = rbrew_read32(cpu->mem, _t48); /* 027C0464 */ cpu->r[5] = cpu->r[5] + 0xFFFFBCDCu; /* 027C0468 */ _t49 = cpu->r[1] + 0x00000008u; /* 027C0468 */ rbrew_write32(cpu->mem, _t49, cpu->r[24]); /* 027C046C */ _t50 = cpu->r[1] + 0x0000000Cu; /* 027C046C */ rbrew_write32(cpu->mem, _t50, cpu->r[5]); /* 027C0470 */ _t51 = cpu->r[6] + 0x00000014u; /* 027C0470 */ cpu->r[7] = rbrew_read32(cpu->mem, _t51); /* 027C0474 */ cpu->ctr = cpu->r[7]; /* 027C0478 */ _t52 = cpu->r[28] + 0x00000000u; /* 027C0478 */ cpu->r[23] = rbrew_read32(cpu->mem, _t52); /* 027C047C */ cpu->r[3] = cpu->r[28]; /* 027C0480 */ cpu->r[21] = cpu->r[25]; /* 027C0484 */ cpu->r[22] = 0x00000001u; /* 027C0488 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C048C */ _t53 = cpu->r[28] + 0x00000000u; /* 027C048C */ cpu->r[7] = rbrew_read32(cpu->mem, _t53); /* 027C0490 */ _t54 = cpu->r[7] + 0x00000000u; /* 027C0490 */ cpu->r[8] = rbrew_read16(cpu->mem, _t54); /* 027C0494 */ cpu->r[30] = 0x00000000u; /* 027C0498 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[31]); /* 027C049C */ cpu->r[0] = 0x00080000u; /* 027C04A0 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C04A0 */ _t56 = _t55 & 0x00000001u; /* 027C04A0 */ if (_t56) goto L_027C04C8; else goto L_027C04A4; L_027C04A4: ; // 0x27c04a4 /* 027C04A4 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027C04A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027C04AC */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027C04B0 */ _t57 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C04B0 */ _t58 = _t57 & 0x00000001u; /* 027C04B0 */ if (_t58) goto L_027C04C4; else goto L_027C04B4; L_027C04B4: ; // 0x27c04b4 /* 027C04B4 */ _t59 = cpu->r[7] + 0x00000000u; /* 027C04B4 */ cpu->r[9] = rbrew_read16(cpu->mem, _t59); /* 027C04B8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027C04BC */ _t60 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C04BC */ _t61 = _t60 & 0x00000001u; /* 027C04BC */ if (_t61) goto L_027C04C0; else goto L_027C04A4; L_027C04C0: ; // 0x27c04c0 /* 027C04C0 */ goto L_027C04C8; L_027C04C4: ; // 0x27c04c4 /* 027C04C4 */ cpu->r[30] = 0x00000000u; L_027C04C8: ; // 0x27c04c8 /* 027C04C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u); /* 027C04CC */ _t62 = cpu->r[28] + 0x00000008u; /* 027C04CC */ cpu->r[0] = rbrew_read32(cpu->mem, _t62); /* 027C04D0 */ _t63 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C04D0 */ _t64 = _t63 & 0x00000001u; /* 027C04D0 */ if (_t64) goto L_027C04D4; else goto L_027C04E4; L_027C04D4: ; // 0x27c04d4 /* 027C04D4 */ cpu->r[10] = cpu->r[30] + cpu->r[21]; /* 027C04D8 */ cpu->r[21] = cpu->r[10] + 0x00000001u; /* 027C04D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[21], 0x00000000u); /* 027C04DC */ _t65 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C04DC */ _t66 = _t65 & 0x00000001u; /* 027C04DC */ if (_t66) goto L_027C04E0; else goto L_027C04E4; L_027C04E0: ; // 0x27c04e0 /* 027C04E0 */ cpu->r[21] = 0x00000000u; L_027C04E4: ; // 0x27c04e4 /* 027C04E4 */ cpu->r[11] = cpu->r[0] - cpu->r[21]; /* 027C04E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u); /* 027C04EC */ _t67 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C04EC */ _t68 = _t67 & 0x00000001u; /* 027C04EC */ if (_t68) goto L_027C04F8; else goto L_027C04F0; L_027C04F0: ; // 0x27c04f0 /* 027C04F0 */ cpu->r[22] = cpu->r[11] + 0xFFFFFFFFu; /* 027C04F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u); /* 027C04F4 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C04F4 */ _t70 = _t69 & 0x00000001u; /* 027C04F4 */ if (_t70) goto L_027C04F8; else goto L_027C053C; L_027C04F8: ; // 0x27c04f8 /* 027C04F8 */ _t71 = cpu->r[1] + 0x0000000Cu; /* 027C04F8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t71); /* 027C04FC */ _t72 = cpu->r[4] + 0x00000014u; /* 027C04FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t72); /* 027C0500 */ cpu->r[12] = rbrew_rlwinm(cpu->r[21], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0504 */ cpu->ctr = cpu->r[0]; /* 027C0508 */ cpu->r[20] = cpu->r[23] + cpu->r[12]; /* 027C050C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C0510 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0514 */ _t73 = cpu->r[1] + 0x00000008u; /* 027C0514 */ cpu->r[4] = rbrew_read32(cpu->mem, _t73); /* 027C0518 */ cpu->r[6] = 0x00000000u; /* 027C051C */ cpu->r[5] = rbrew_rlwinm(cpu->r[22], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0520 */ cpu->r[3] = cpu->r[20]; /* 027C0524 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C0528 */ cpu->r[0] = cpu->r[21] + cpu->r[22]; /* 027C052C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[30]); /* 027C0530 */ _t74 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0530 */ _t75 = _t74 & 0x00000001u; /* 027C0530 */ if (_t75) goto L_027C0534; else goto L_027C053C; L_027C0534: ; // 0x27c0534 /* 027C0534 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0538 */ _t76 = cpu->r[6] + cpu->r[23]; /* 027C0538 */ rbrew_write16(cpu->mem, _t76, (uint16_t)cpu->r[31]); L_027C053C: ; // 0x27c053c /* 027C053C */ _t77 = cpu->r[24] + 0x00000002u; /* 027C053C */ cpu->r[0] = rbrew_read16(cpu->mem, _t77); /* 027C053C */ cpu->r[24] = _t77; /* 027C0540 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C0544 */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027C0548 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0548 */ _t79 = _t78 & 0x00000001u; /* 027C0548 */ if (_t79) goto L_027C054C; else goto L_027C036C; L_027C054C: ; // 0x27c054c /* 027C054C */ _t80 = cpu->r[1] + 0x00000010u; /* 027C054C */ cpu->r[3] = rbrew_read32(cpu->mem, _t80); /* 027C0550 */ /* nop */ /* 027C0554 */ _t81 = cpu->r[1] + 0x0000004Cu; /* 027C0554 */ cpu->r[0] = rbrew_read32(cpu->mem, _t81); /* 027C0558 */ cpu->lr = cpu->r[0]; /* 027C055C */ cpu->r[1] = cpu->r[1] + 0x00000048u; /* 027C0560 */ return; } // fn_027C0568 @ 0x27c0568 void Gambit_fn_027C0568(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; L_027C0568: ; // 0x27c0568 /* 027C0568 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027C0568 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C0568 */ cpu->r[1] = _t0; /* 027C056C */ _t1 = cpu->r[1] + 0x00000038u; /* 027C056C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C0570 */ cpu->r[30] = cpu->r[6]; /* 027C0574 */ _t2 = cpu->r[1] + 0x00000034u; /* 027C0574 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027C0578 */ _t3 = cpu->r[1] + 0x00000030u; /* 027C0578 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]); /* 027C057C */ _t4 = cpu->r[1] + 0x0000003Cu; /* 027C057C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027C0580 */ _t5 = cpu->r[1] + 0x00000044u; /* 027C0580 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027C0584 */ cpu->r[29] = cpu->r[3]; /* 027C0588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C058C */ _t6 = cpu->r[30] + 0x00000004u; /* 027C058C */ rbrew_write32(cpu->mem, _t6, cpu->r[7]); /* 027C0590 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0590 */ _t8 = _t7 & 0x00000001u; /* 027C0590 */ if (_t8) goto L_027C0594; else goto L_027C0700; L_027C0594: ; // 0x27c0594 /* 027C0594 */ _t9 = cpu->r[5] + 0x00000008u; /* 027C0594 */ cpu->r[28] = rbrew_read16(cpu->mem, _t9); /* 027C0598 */ cpu->r[10] = cpu->r[29] + 0x0000001Cu; /* 027C059C */ cpu->r[9] = cpu->r[29] + 0x00000018u; /* 027C05A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x0000FFFFu); /* 027C05A4 */ _t10 = cpu->r[30] + 0x00000000u; /* 027C05A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027C05A8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C05A8 */ _t12 = _t11 & 0x00000001u; /* 027C05A8 */ if (_t12) goto L_027C05AC; else goto L_027C05F8; L_027C05AC: ; // 0x27c05ac /* 027C05AC */ /* nop */ /* 027C05B0 */ cpu->r[6] = cpu->r[1] + 0x00000008u; /* 027C05B4 */ /* nop */ /* 027C05B8 */ /* nop */ /* 027C05BC */ cpu->r[8] = cpu->r[1] + 0x0000000Cu; /* 027C05C0 */ _t13 = cpu->r[1] + 0x00000008u; /* 027C05C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027C05C4 */ /* nop */ /* 027C05C8 */ cpu->r[11] = cpu->r[1] + 0x00000010u; /* 027C05CC */ _t14 = cpu->r[1] + 0x00000010u; /* 027C05CC */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027C05D0 */ /* nop */ /* 027C05D4 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027C05D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027C05D8 */ cpu->r[6] = cpu->r[1] + 0x00000014u; /* 027C05DC */ /* nop */ /* 027C05E0 */ cpu->r[7] = cpu->r[12] + 0x00000004u; /* 027C05E4 */ _t16 = cpu->r[1] + 0x00000014u; /* 027C05E4 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]); /* 027C05E8 */ /* nop */ /* 027C05EC */ cpu->r[3] = 0x00000001u; /* 027C05F0 */ /* nop */ /* 027C05F4 */ goto L_027C0704; L_027C05F8: ; // 0x27c05f8 /* 027C05F8 */ /* nop */ /* 027C05FC */ /* nop */ /* 027C0600 */ _t17 = cpu->r[30] + 0x00000000u; /* 027C0600 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17); /* 027C0604 */ cpu->r[6] = cpu->r[9] + 0x00000004u; /* 027C0608 */ /* nop */ /* 027C060C */ cpu->r[31] = 0x101D0000u; /* 027C0610 */ /* nop */ /* 027C0614 */ _t18 = cpu->r[31] + 0xFFFF93D0u; /* 027C0614 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18); /* 027C0614 */ cpu->r[31] = _t18; /* 027C0618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C061C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C061C */ _t20 = _t19 & 0x00000001u; /* 027C061C */ if (_t20) goto L_027C06A8; else goto L_027C0620; L_027C0620: ; // 0x27c0620 /* 027C0620 */ _t21 = cpu->r[3] + 0x00000000u; /* 027C0620 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21); /* 027C0624 */ _t22 = cpu->r[8] + 0x00000034u; /* 027C0624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027C0628 */ cpu->ctr = cpu->r[0]; /* 027C062C */ cpu->r[4] = cpu->r[28]; /* 027C0630 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0634 */ /* nop */ /* 027C0638 */ cpu->r[10] = cpu->r[1] + 0x00000018u; /* 027C063C */ /* nop */ /* 027C0640 */ _t23 = cpu->r[31] + 0x00000000u; /* 027C0640 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23); /* 027C0644 */ _t24 = cpu->r[3] + 0x00000000u; /* 027C0644 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24); /* 027C0648 */ _t25 = cpu->r[12] + 0x00000034u; /* 027C0648 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25); /* 027C064C */ cpu->ctr = cpu->r[6]; /* 027C0650 */ _t26 = cpu->r[1] + 0x00000018u; /* 027C0650 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027C0654 */ cpu->r[4] = cpu->r[28]; /* 027C0658 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C065C */ /* nop */ /* 027C0660 */ cpu->r[7] = cpu->r[1] + 0x0000001Cu; /* 027C0664 */ /* nop */ /* 027C0668 */ _t27 = cpu->r[29] + 0x0000001Bu; /* 027C0668 */ cpu->r[6] = rbrew_read8(cpu->mem, _t27); /* 027C066C */ _t28 = cpu->r[1] + 0x0000001Cu; /* 027C066C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28); /* 027C0670 */ _t29 = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C0670 */ _t30 = cpu->r[31] & 0xFFFFFF00u; /* 027C0670 */ cpu->r[31] = _t30 | _t29; /* 027C0674 */ _t31 = cpu->r[30] + 0x00000000u; /* 027C0674 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31); /* 027C0678 */ cpu->r[8] = cpu->r[1] + 0x00000024u; /* 027C067C */ _t32 = cpu->r[29] + 0x0000001Fu; /* 027C067C */ cpu->r[7] = rbrew_read8(cpu->mem, _t32); /* 027C0680 */ _t33 = cpu->r[1] + 0x00000024u; /* 027C0680 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]); /* 027C0684 */ /* nop */ /* 027C0688 */ _t34 = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C0688 */ _t35 = cpu->r[0] & 0xFFFFFF00u; /* 027C0688 */ cpu->r[0] = _t35 | _t34; /* 027C068C */ /* nop */ /* 027C0690 */ cpu->r[11] = cpu->r[1] + 0x00000028u; /* 027C0694 */ _t36 = cpu->r[1] + 0x00000028u; /* 027C0694 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]); /* 027C0698 */ /* nop */ /* 027C069C */ cpu->r[12] = cpu->r[9] + 0x00000004u; /* 027C06A0 */ /* nop */ /* 027C06A4 */ goto L_027C0700; L_027C06A8: ; // 0x27c06a8 /* 027C06A8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[28], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C06AC */ cpu->r[10] = cpu->r[9] + 0x101F0000u; /* 027C06B0 */ cpu->r[11] = cpu->r[10] + 0x00002BECu; /* 027C06B4 */ /* nop */ /* 027C06B8 */ cpu->r[12] = cpu->r[1] + 0x00000020u; /* 027C06BC */ /* nop */ /* 027C06C0 */ _t37 = cpu->r[1] + 0x00000020u; /* 027C06C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37); /* 027C06C4 */ _t38 = cpu->r[29] + 0x0000001Bu; /* 027C06C4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t38); /* 027C06C8 */ cpu->r[0] = cpu->r[31]; /* 027C06CC */ _t39 = cpu->r[29] + 0x0000001Fu; /* 027C06CC */ cpu->r[7] = rbrew_read8(cpu->mem, _t39); /* 027C06D0 */ _t40 = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C06D0 */ _t41 = cpu->r[31] & 0xFFFFFF00u; /* 027C06D0 */ cpu->r[31] = _t41 | _t40; /* 027C06D4 */ cpu->r[8] = cpu->r[1] + 0x00000024u; /* 027C06D8 */ _t42 = cpu->r[1] + 0x00000024u; /* 027C06D8 */ rbrew_write32(cpu->mem, _t42, cpu->r[31]); /* 027C06DC */ /* nop */ /* 027C06E0 */ _t43 = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C06E0 */ _t44 = cpu->r[0] & 0xFFFFFF00u; /* 027C06E0 */ cpu->r[0] = _t44 | _t43; /* 027C06E4 */ _t45 = cpu->r[30] + 0x00000000u; /* 027C06E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45); /* 027C06E8 */ /* nop */ /* 027C06EC */ cpu->r[11] = cpu->r[1] + 0x00000028u; /* 027C06F0 */ _t46 = cpu->r[1] + 0x00000028u; /* 027C06F0 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]); /* 027C06F4 */ /* nop */ /* 027C06F8 */ cpu->r[12] = cpu->r[9] + 0x00000004u; /* 027C06FC */ /* nop */ L_027C0700: ; // 0x27c0700 /* 027C0700 */ cpu->r[3] = 0x00000001u; L_027C0704: ; // 0x27c0704 /* 027C0704 */ _t47 = cpu->r[1] + 0x00000030u; /* 027C0704 */ cpu->r[28] = rbrew_read32(cpu->mem, _t47); /* 027C0708 */ _t48 = cpu->r[1] + 0x00000034u; /* 027C0708 */ cpu->r[29] = rbrew_read32(cpu->mem, _t48); /* 027C070C */ _t49 = cpu->r[1] + 0x00000044u; /* 027C070C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49); /* 027C0710 */ _t50 = cpu->r[1] + 0x00000038u; /* 027C0710 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50); /* 027C0714 */ cpu->lr = cpu->r[0]; /* 027C0718 */ _t51 = cpu->r[1] + 0x0000003Cu; /* 027C0718 */ cpu->r[31] = rbrew_read32(cpu->mem, _t51); /* 027C071C */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027C0720 */ return; } // fn_027C0728 @ 0x27c0728 void Gambit_fn_027C0728(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34; L_027C0728: ; // 0x27c0728 /* 027C0728 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C0728 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C0728 */ cpu->r[1] = _t0; /* 027C072C */ _t1 = cpu->r[1] + 0x00000008u; /* 027C072C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C0730 */ cpu->r[30] = cpu->r[6]; /* 027C0734 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C0734 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C0738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C073C */ _t3 = cpu->r[1] + 0x00000014u; /* 027C073C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C0740 */ cpu->r[31] = cpu->r[3]; /* 027C0744 */ _t4 = cpu->r[30] + 0x00000004u; /* 027C0744 */ rbrew_write32(cpu->mem, _t4, cpu->r[7]); /* 027C0748 */ _t5 = cpu->r[5] + 0x00000008u; /* 027C0748 */ cpu->r[3] = rbrew_read16(cpu->mem, _t5); /* 027C074C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C074C */ _t7 = _t6 & 0x00000001u; /* 027C074C */ if (_t7) goto L_027C0750; else goto L_027C0794; L_027C0750: ; // 0x27c0750 /* 027C0750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000FFFFu); /* 027C0754 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0754 */ _t9 = _t8 & 0x00000001u; /* 027C0754 */ if (_t9) goto L_027C0758; else goto L_027C0768; L_027C0758: ; // 0x27c0758 /* 027C0758 */ cpu->r[8] = 0x00000000u; /* 027C075C */ _t10 = cpu->r[31] + 0x00000004u; /* 027C075C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 027C0760 */ _t11 = cpu->r[31] + 0x00000004u; /* 027C0760 */ rbrew_write32(cpu->mem, _t11, cpu->r[8]); /* 027C0764 */ goto L_027C0784; L_027C0768: ; // 0x27c0768 /* 027C0768 */ Gambit_fn_027B1F5C(cpu); /* 027C076C */ _t12 = cpu->r[31] + 0x00000004u; /* 027C076C */ cpu->r[0] = rbrew_read32(cpu->mem, _t12); /* 027C0770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C0774 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0774 */ _t14 = _t13 & 0x00000001u; /* 027C0774 */ if (_t14) goto L_027C0778; else goto L_027C0784; L_027C0778: ; // 0x27c0778 /* 027C0778 */ _t15 = cpu->r[30] + 0x00000000u; /* 027C0778 */ cpu->r[7] = rbrew_read32(cpu->mem, _t15); /* 027C077C */ _t16 = cpu->r[7] + 0x00000028u; /* 027C077C */ cpu->r[8] = rbrew_read32(cpu->mem, _t16); /* 027C0780 */ _t17 = cpu->r[31] + 0x00000004u; /* 027C0780 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]); L_027C0784: ; // 0x27c0784 /* 027C0784 */ _t18 = cpu->r[30] + 0x00000000u; /* 027C0784 */ cpu->r[12] = rbrew_read32(cpu->mem, _t18); /* 027C0788 */ _t19 = cpu->r[12] + 0x00000028u; /* 027C0788 */ rbrew_write32(cpu->mem, _t19, cpu->r[3]); /* 027C078C */ cpu->r[3] = 0x00000000u; /* 027C0790 */ goto L_027C07D0; L_027C0794: ; // 0x27c0794 /* 027C0794 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000FFFFu); /* 027C0798 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0798 */ _t21 = _t20 & 0x00000001u; /* 027C0798 */ if (_t21) goto L_027C079C; else goto L_027C07B4; L_027C079C: ; // 0x27c079c /* 027C079C */ _t22 = cpu->r[31] + 0x00000008u; /* 027C079C */ cpu->r[3] = rbrew_read32(cpu->mem, _t22); /* 027C07A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C07A4 */ _t23 = cpu->r[30] + 0x00000000u; /* 027C07A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t23); /* 027C07A8 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C07A8 */ _t25 = _t24 & 0x00000001u; /* 027C07A8 */ if (_t25) goto L_027C07AC; else goto L_027C07C8; L_027C07AC: ; // 0x27c07ac /* 027C07AC */ _t26 = cpu->r[12] + 0x00000028u; /* 027C07AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t26); /* 027C07B0 */ goto L_027C07C8; L_027C07B4: ; // 0x27c07b4 /* 027C07B4 */ Gambit_fn_027B1F5C(cpu); /* 027C07B8 */ _t27 = cpu->r[30] + 0x00000000u; /* 027C07B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t27); /* 027C07BC */ _t28 = cpu->r[9] + 0x00000028u; /* 027C07BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t28); /* 027C07C0 */ _t29 = cpu->r[31] + 0x00000008u; /* 027C07C0 */ rbrew_write32(cpu->mem, _t29, cpu->r[0]); /* 027C07C4 */ _t30 = cpu->r[30] + 0x00000000u; /* 027C07C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t30); L_027C07C8: ; // 0x27c07c8 /* 027C07C8 */ _t31 = cpu->r[12] + 0x00000028u; /* 027C07C8 */ rbrew_write32(cpu->mem, _t31, cpu->r[3]); /* 027C07CC */ cpu->r[3] = 0x00000000u; L_027C07D0: ; // 0x27c07d0 /* 027C07D0 */ _t32 = cpu->r[1] + 0x00000014u; /* 027C07D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027C07D4 */ _t33 = cpu->r[1] + 0x00000008u; /* 027C07D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t33); /* 027C07D8 */ cpu->lr = cpu->r[0]; /* 027C07DC */ _t34 = cpu->r[1] + 0x0000000Cu; /* 027C07DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t34); /* 027C07E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C07E4 */ return; } // fn_027C07E8 @ 0x27c07e8 void Gambit_fn_027C07E8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22; L_027C07E8: ; // 0x27c07e8 /* 027C07E8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C07E8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C07E8 */ cpu->r[1] = _t0; /* 027C07EC */ _t1 = cpu->r[3] + 0x0000000Cu; /* 027C07EC */ cpu->r[0] = rbrew_read8(cpu->mem, _t1); /* 027C07F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C07F4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C07F4 */ _t3 = _t2 & 0x00000001u; /* 027C07F4 */ if (_t3) goto L_027C07F8; else goto L_027C0818; L_027C07F8: ; // 0x27c07f8 /* 027C07F8 */ _t4 = cpu->r[6] + 0x00000000u; /* 027C07F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4); /* 027C07FC */ _t5 = cpu->r[10] + 0x0000000Cu; /* 027C07FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t5); /* 027C0800 */ _t6 = cpu->r[3] + 0x00000010u; /* 027C0800 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[11]); /* 027C0804 */ _t7 = cpu->r[6] + 0x00000000u; /* 027C0804 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7); /* 027C0808 */ cpu->r[9] = 0x00000001u; /* 027C080C */ _t8 = cpu->r[10] + 0x00000010u; /* 027C080C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t8); /* 027C0810 */ _t9 = cpu->r[3] + 0x0000000Cu; /* 027C0810 */ rbrew_write8(cpu->mem, _t9, (uint8_t)cpu->r[9]); /* 027C0814 */ _t10 = cpu->r[3] + 0x00000014u; /* 027C0814 */ rbrew_write_f32(cpu->mem, _t10, cpu->f[12]); L_027C0818: ; // 0x27c0818 /* 027C0818 */ _t11 = cpu->r[6] + 0x00000004u; /* 027C0818 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]); /* 027C081C */ cpu->r[12] = 0x10110000u; /* 027C0820 */ _t12 = cpu->r[5] + 0x00000008u; /* 027C0820 */ cpu->r[0] = rbrew_read16(cpu->mem, _t12); /* 027C0824 */ _t13 = cpu->r[12] + 0xFFFFBF28u; /* 027C0824 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t13); /* 027C0828 */ cpu->r[12] = 0x43300000u; /* 027C082C */ _t14 = cpu->r[1] + 0x0000000Cu; /* 027C082C */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027C0830 */ _t15 = cpu->r[1] + 0x00000008u; /* 027C0830 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]); /* 027C0834 */ _t16 = cpu->r[1] + 0x00000008u; /* 027C0834 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t16); /* 027C0838 */ cpu->r[10] = 0x10110000u; /* 027C083C */ cpu->f[0] = cpu->f[13] - cpu->f[0]; /* 027C0840 */ _t17 = cpu->r[10] + 0xFFFFBF30u; /* 027C0840 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t17); /* 027C0844 */ cpu->f[11] = (double)(float)cpu->f[0]; /* 027C0848 */ _t18 = cpu->r[3] + 0x00000014u; /* 027C0848 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t18); /* 027C084C */ cpu->f[13] = cpu->f[11] / cpu->f[13]; /* 027C0850 */ _t19 = cpu->r[3] + 0x00000010u; /* 027C0850 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t19); /* 027C0854 */ cpu->f[11] = cpu->f[12] * cpu->f[13]; /* 027C0858 */ _t20 = cpu->r[6] + 0x00000000u; /* 027C0858 */ cpu->r[8] = rbrew_read32(cpu->mem, _t20); /* 027C085C */ cpu->f[12] = cpu->f[0] * cpu->f[13]; /* 027C0860 */ _t21 = cpu->r[8] + 0x0000000Cu; /* 027C0860 */ rbrew_write_f32(cpu->mem, _t21, cpu->f[11]); /* 027C0864 */ cpu->r[3] = 0x00000001u; /* 027C0868 */ _t22 = cpu->r[8] + 0x00000010u; /* 027C0868 */ rbrew_write_f32(cpu->mem, _t22, cpu->f[12]); /* 027C086C */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C0870 */ return; } // fn_027C094C @ 0x27c094c void Gambit_fn_027C094C(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; L_027C0564: ; // 0x27c0564 /* 027C0564 */ cpu->r[0] = cpu->lr; /* 027C0568 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027C0568 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C0568 */ cpu->r[1] = _t0; /* 027C056C */ _t1 = cpu->r[1] + 0x00000038u; /* 027C056C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C0570 */ cpu->r[30] = cpu->r[6]; /* 027C0574 */ _t2 = cpu->r[1] + 0x00000034u; /* 027C0574 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027C0578 */ _t3 = cpu->r[1] + 0x00000030u; /* 027C0578 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]); /* 027C057C */ _t4 = cpu->r[1] + 0x0000003Cu; /* 027C057C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027C0580 */ _t5 = cpu->r[1] + 0x00000044u; /* 027C0580 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027C0584 */ cpu->r[29] = cpu->r[3]; /* 027C0588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C058C */ _t6 = cpu->r[30] + 0x00000004u; /* 027C058C */ rbrew_write32(cpu->mem, _t6, cpu->r[7]); /* 027C0590 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0590 */ _t8 = _t7 & 0x00000001u; /* 027C0590 */ if (_t8) goto L_027C0594; else goto L_027C0700; L_027C0594: ; // 0x27c0594 /* 027C0594 */ _t9 = cpu->r[5] + 0x00000008u; /* 027C0594 */ cpu->r[28] = rbrew_read16(cpu->mem, _t9); /* 027C0598 */ cpu->r[10] = cpu->r[29] + 0x0000001Cu; /* 027C059C */ cpu->r[9] = cpu->r[29] + 0x00000018u; /* 027C05A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x0000FFFFu); /* 027C05A4 */ _t10 = cpu->r[30] + 0x00000000u; /* 027C05A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027C05A8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C05A8 */ _t12 = _t11 & 0x00000001u; /* 027C05A8 */ if (_t12) goto L_027C05AC; else goto L_027C05F8; L_027C05AC: ; // 0x27c05ac /* 027C05AC */ /* nop */ /* 027C05B0 */ cpu->r[6] = cpu->r[1] + 0x00000008u; /* 027C05B4 */ /* nop */ /* 027C05B8 */ /* nop */ /* 027C05BC */ cpu->r[8] = cpu->r[1] + 0x0000000Cu; /* 027C05C0 */ _t13 = cpu->r[1] + 0x00000008u; /* 027C05C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027C05C4 */ /* nop */ /* 027C05C8 */ cpu->r[11] = cpu->r[1] + 0x00000010u; /* 027C05CC */ _t14 = cpu->r[1] + 0x00000010u; /* 027C05CC */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027C05D0 */ /* nop */ /* 027C05D4 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027C05D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027C05D8 */ cpu->r[6] = cpu->r[1] + 0x00000014u; /* 027C05DC */ /* nop */ /* 027C05E0 */ cpu->r[7] = cpu->r[12] + 0x00000004u; /* 027C05E4 */ _t16 = cpu->r[1] + 0x00000014u; /* 027C05E4 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]); /* 027C05E8 */ /* nop */ /* 027C05EC */ cpu->r[3] = 0x00000001u; /* 027C05F0 */ /* nop */ /* 027C05F4 */ goto L_027C0704; L_027C05F8: ; // 0x27c05f8 /* 027C05F8 */ /* nop */ /* 027C05FC */ /* nop */ /* 027C0600 */ _t17 = cpu->r[30] + 0x00000000u; /* 027C0600 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17); /* 027C0604 */ cpu->r[6] = cpu->r[9] + 0x00000004u; /* 027C0608 */ /* nop */ /* 027C060C */ cpu->r[31] = 0x101D0000u; /* 027C0610 */ /* nop */ /* 027C0614 */ _t18 = cpu->r[31] + 0xFFFF93D0u; /* 027C0614 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18); /* 027C0614 */ cpu->r[31] = _t18; /* 027C0618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C061C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C061C */ _t20 = _t19 & 0x00000001u; /* 027C061C */ if (_t20) goto L_027C06A8; else goto L_027C0620; L_027C0620: ; // 0x27c0620 /* 027C0620 */ _t21 = cpu->r[3] + 0x00000000u; /* 027C0620 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21); /* 027C0624 */ _t22 = cpu->r[8] + 0x00000034u; /* 027C0624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027C0628 */ cpu->ctr = cpu->r[0]; /* 027C062C */ cpu->r[4] = cpu->r[28]; /* 027C0630 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0634 */ /* nop */ /* 027C0638 */ cpu->r[10] = cpu->r[1] + 0x00000018u; /* 027C063C */ /* nop */ /* 027C0640 */ _t23 = cpu->r[31] + 0x00000000u; /* 027C0640 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23); /* 027C0644 */ _t24 = cpu->r[3] + 0x00000000u; /* 027C0644 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24); /* 027C0648 */ _t25 = cpu->r[12] + 0x00000034u; /* 027C0648 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25); /* 027C064C */ cpu->ctr = cpu->r[6]; /* 027C0650 */ _t26 = cpu->r[1] + 0x00000018u; /* 027C0650 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027C0654 */ cpu->r[4] = cpu->r[28]; /* 027C0658 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C065C */ /* nop */ /* 027C0660 */ cpu->r[7] = cpu->r[1] + 0x0000001Cu; /* 027C0664 */ /* nop */ /* 027C0668 */ _t27 = cpu->r[29] + 0x0000001Bu; /* 027C0668 */ cpu->r[6] = rbrew_read8(cpu->mem, _t27); /* 027C066C */ _t28 = cpu->r[1] + 0x0000001Cu; /* 027C066C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28); /* 027C0670 */ _t29 = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C0670 */ _t30 = cpu->r[31] & 0xFFFFFF00u; /* 027C0670 */ cpu->r[31] = _t30 | _t29; /* 027C0674 */ _t31 = cpu->r[30] + 0x00000000u; /* 027C0674 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31); /* 027C0678 */ cpu->r[8] = cpu->r[1] + 0x00000024u; /* 027C067C */ _t32 = cpu->r[29] + 0x0000001Fu; /* 027C067C */ cpu->r[7] = rbrew_read8(cpu->mem, _t32); /* 027C0680 */ _t33 = cpu->r[1] + 0x00000024u; /* 027C0680 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]); /* 027C0684 */ /* nop */ /* 027C0688 */ _t34 = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C0688 */ _t35 = cpu->r[0] & 0xFFFFFF00u; /* 027C0688 */ cpu->r[0] = _t35 | _t34; /* 027C068C */ /* nop */ /* 027C0690 */ cpu->r[11] = cpu->r[1] + 0x00000028u; /* 027C0694 */ _t36 = cpu->r[1] + 0x00000028u; /* 027C0694 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]); /* 027C0698 */ /* nop */ /* 027C069C */ cpu->r[12] = cpu->r[9] + 0x00000004u; /* 027C06A0 */ /* nop */ /* 027C06A4 */ goto L_027C0700; L_027C06A8: ; // 0x27c06a8 /* 027C06A8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[28], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C06AC */ cpu->r[10] = cpu->r[9] + 0x101F0000u; /* 027C06B0 */ cpu->r[11] = cpu->r[10] + 0x00002BECu; /* 027C06B4 */ /* nop */ /* 027C06B8 */ cpu->r[12] = cpu->r[1] + 0x00000020u; /* 027C06BC */ /* nop */ /* 027C06C0 */ _t37 = cpu->r[1] + 0x00000020u; /* 027C06C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37); /* 027C06C4 */ _t38 = cpu->r[29] + 0x0000001Bu; /* 027C06C4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t38); /* 027C06C8 */ cpu->r[0] = cpu->r[31]; /* 027C06CC */ _t39 = cpu->r[29] + 0x0000001Fu; /* 027C06CC */ cpu->r[7] = rbrew_read8(cpu->mem, _t39); /* 027C06D0 */ _t40 = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C06D0 */ _t41 = cpu->r[31] & 0xFFFFFF00u; /* 027C06D0 */ cpu->r[31] = _t41 | _t40; /* 027C06D4 */ cpu->r[8] = cpu->r[1] + 0x00000024u; /* 027C06D8 */ _t42 = cpu->r[1] + 0x00000024u; /* 027C06D8 */ rbrew_write32(cpu->mem, _t42, cpu->r[31]); /* 027C06DC */ /* nop */ /* 027C06E0 */ _t43 = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C06E0 */ _t44 = cpu->r[0] & 0xFFFFFF00u; /* 027C06E0 */ cpu->r[0] = _t44 | _t43; /* 027C06E4 */ _t45 = cpu->r[30] + 0x00000000u; /* 027C06E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45); /* 027C06E8 */ /* nop */ /* 027C06EC */ cpu->r[11] = cpu->r[1] + 0x00000028u; /* 027C06F0 */ _t46 = cpu->r[1] + 0x00000028u; /* 027C06F0 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]); /* 027C06F4 */ /* nop */ /* 027C06F8 */ cpu->r[12] = cpu->r[9] + 0x00000004u; /* 027C06FC */ /* nop */ L_027C0700: ; // 0x27c0700 /* 027C0700 */ cpu->r[3] = 0x00000001u; L_027C0704: ; // 0x27c0704 /* 027C0704 */ _t47 = cpu->r[1] + 0x00000030u; /* 027C0704 */ cpu->r[28] = rbrew_read32(cpu->mem, _t47); /* 027C0708 */ _t48 = cpu->r[1] + 0x00000034u; /* 027C0708 */ cpu->r[29] = rbrew_read32(cpu->mem, _t48); /* 027C070C */ _t49 = cpu->r[1] + 0x00000044u; /* 027C070C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49); /* 027C0710 */ _t50 = cpu->r[1] + 0x00000038u; /* 027C0710 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50); /* 027C0714 */ cpu->lr = cpu->r[0]; /* 027C0718 */ _t51 = cpu->r[1] + 0x0000003Cu; /* 027C0718 */ cpu->r[31] = rbrew_read32(cpu->mem, _t51); /* 027C071C */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027C0720 */ return; L_027C0724: ; // 0x27c0724 /* 027C0724 */ cpu->r[0] = cpu->lr; /* 027C0728 */ _t52 = cpu->r[1] + 0xFFFFFFF0u; /* 027C0728 */ rbrew_write32(cpu->mem, _t52, cpu->r[1]); /* 027C0728 */ cpu->r[1] = _t52; /* 027C072C */ _t53 = cpu->r[1] + 0x00000008u; /* 027C072C */ rbrew_write32(cpu->mem, _t53, cpu->r[30]); /* 027C0730 */ cpu->r[30] = cpu->r[6]; /* 027C0734 */ _t54 = cpu->r[1] + 0x0000000Cu; /* 027C0734 */ rbrew_write32(cpu->mem, _t54, cpu->r[31]); /* 027C0738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C073C */ _t55 = cpu->r[1] + 0x00000014u; /* 027C073C */ rbrew_write32(cpu->mem, _t55, cpu->r[0]); /* 027C0740 */ cpu->r[31] = cpu->r[3]; /* 027C0744 */ _t56 = cpu->r[30] + 0x00000004u; /* 027C0744 */ rbrew_write32(cpu->mem, _t56, cpu->r[7]); /* 027C0748 */ _t57 = cpu->r[5] + 0x00000008u; /* 027C0748 */ cpu->r[3] = rbrew_read16(cpu->mem, _t57); /* 027C074C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C074C */ _t59 = _t58 & 0x00000001u; /* 027C074C */ if (_t59) goto L_027C0750; else goto L_027C0794; L_027C0750: ; // 0x27c0750 /* 027C0750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000FFFFu); /* 027C0754 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0754 */ _t61 = _t60 & 0x00000001u; /* 027C0754 */ if (_t61) goto L_027C0758; else goto L_027C0768; L_027C0758: ; // 0x27c0758 /* 027C0758 */ cpu->r[8] = 0x00000000u; /* 027C075C */ _t62 = cpu->r[31] + 0x00000004u; /* 027C075C */ cpu->r[3] = rbrew_read32(cpu->mem, _t62); /* 027C0760 */ _t63 = cpu->r[31] + 0x00000004u; /* 027C0760 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]); /* 027C0764 */ goto L_027C0784; L_027C0768: ; // 0x27c0768 /* 027C0768 */ Gambit_fn_027B1F5C(cpu); /* 027C076C */ _t64 = cpu->r[31] + 0x00000004u; /* 027C076C */ cpu->r[0] = rbrew_read32(cpu->mem, _t64); /* 027C0770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C0774 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0774 */ _t66 = _t65 & 0x00000001u; /* 027C0774 */ if (_t66) goto L_027C0778; else goto L_027C0784; L_027C0778: ; // 0x27c0778 /* 027C0778 */ _t67 = cpu->r[30] + 0x00000000u; /* 027C0778 */ cpu->r[7] = rbrew_read32(cpu->mem, _t67); /* 027C077C */ _t68 = cpu->r[7] + 0x00000028u; /* 027C077C */ cpu->r[8] = rbrew_read32(cpu->mem, _t68); /* 027C0780 */ _t69 = cpu->r[31] + 0x00000004u; /* 027C0780 */ rbrew_write32(cpu->mem, _t69, cpu->r[8]); L_027C0784: ; // 0x27c0784 /* 027C0784 */ _t70 = cpu->r[30] + 0x00000000u; /* 027C0784 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70); /* 027C0788 */ _t71 = cpu->r[12] + 0x00000028u; /* 027C0788 */ rbrew_write32(cpu->mem, _t71, cpu->r[3]); /* 027C078C */ cpu->r[3] = 0x00000000u; /* 027C0790 */ goto L_027C07D0; L_027C0794: ; // 0x27c0794 /* 027C0794 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000FFFFu); /* 027C0798 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0798 */ _t73 = _t72 & 0x00000001u; /* 027C0798 */ if (_t73) goto L_027C079C; else goto L_027C07B4; L_027C079C: ; // 0x27c079c /* 027C079C */ _t74 = cpu->r[31] + 0x00000008u; /* 027C079C */ cpu->r[3] = rbrew_read32(cpu->mem, _t74); /* 027C07A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C07A4 */ _t75 = cpu->r[30] + 0x00000000u; /* 027C07A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75); /* 027C07A8 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C07A8 */ _t77 = _t76 & 0x00000001u; /* 027C07A8 */ if (_t77) goto L_027C07AC; else goto L_027C07C8; L_027C07AC: ; // 0x27c07ac /* 027C07AC */ _t78 = cpu->r[12] + 0x00000028u; /* 027C07AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t78); /* 027C07B0 */ goto L_027C07C8; L_027C07B4: ; // 0x27c07b4 /* 027C07B4 */ Gambit_fn_027B1F5C(cpu); /* 027C07B8 */ _t79 = cpu->r[30] + 0x00000000u; /* 027C07B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t79); /* 027C07BC */ _t80 = cpu->r[9] + 0x00000028u; /* 027C07BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t80); /* 027C07C0 */ _t81 = cpu->r[31] + 0x00000008u; /* 027C07C0 */ rbrew_write32(cpu->mem, _t81, cpu->r[0]); /* 027C07C4 */ _t82 = cpu->r[30] + 0x00000000u; /* 027C07C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82); L_027C07C8: ; // 0x27c07c8 /* 027C07C8 */ _t83 = cpu->r[12] + 0x00000028u; /* 027C07C8 */ rbrew_write32(cpu->mem, _t83, cpu->r[3]); /* 027C07CC */ cpu->r[3] = 0x00000000u; L_027C07D0: ; // 0x27c07d0 /* 027C07D0 */ _t84 = cpu->r[1] + 0x00000014u; /* 027C07D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84); /* 027C07D4 */ _t85 = cpu->r[1] + 0x00000008u; /* 027C07D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t85); /* 027C07D8 */ cpu->lr = cpu->r[0]; /* 027C07DC */ _t86 = cpu->r[1] + 0x0000000Cu; /* 027C07DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t86); /* 027C07E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C07E4 */ return; L_027C07E8: ; // 0x27c07e8 /* 027C07E8 */ _t87 = cpu->r[1] + 0xFFFFFFE8u; /* 027C07E8 */ rbrew_write32(cpu->mem, _t87, cpu->r[1]); /* 027C07E8 */ cpu->r[1] = _t87; /* 027C07EC */ _t88 = cpu->r[3] + 0x0000000Cu; /* 027C07EC */ cpu->r[0] = rbrew_read8(cpu->mem, _t88); /* 027C07F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C07F4 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C07F4 */ _t90 = _t89 & 0x00000001u; /* 027C07F4 */ if (_t90) goto L_027C07F8; else goto L_027C0818; L_027C07F8: ; // 0x27c07f8 /* 027C07F8 */ _t91 = cpu->r[6] + 0x00000000u; /* 027C07F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91); /* 027C07FC */ _t92 = cpu->r[10] + 0x0000000Cu; /* 027C07FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t92); /* 027C0800 */ _t93 = cpu->r[3] + 0x00000010u; /* 027C0800 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[11]); /* 027C0804 */ _t94 = cpu->r[6] + 0x00000000u; /* 027C0804 */ cpu->r[10] = rbrew_read32(cpu->mem, _t94); /* 027C0808 */ cpu->r[9] = 0x00000001u; /* 027C080C */ _t95 = cpu->r[10] + 0x00000010u; /* 027C080C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t95); /* 027C0810 */ _t96 = cpu->r[3] + 0x0000000Cu; /* 027C0810 */ rbrew_write8(cpu->mem, _t96, (uint8_t)cpu->r[9]); /* 027C0814 */ _t97 = cpu->r[3] + 0x00000014u; /* 027C0814 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[12]); L_027C0818: ; // 0x27c0818 /* 027C0818 */ _t98 = cpu->r[6] + 0x00000004u; /* 027C0818 */ rbrew_write32(cpu->mem, _t98, cpu->r[7]); /* 027C081C */ cpu->r[12] = 0x10110000u; /* 027C0820 */ _t99 = cpu->r[5] + 0x00000008u; /* 027C0820 */ cpu->r[0] = rbrew_read16(cpu->mem, _t99); /* 027C0824 */ _t100 = cpu->r[12] + 0xFFFFBF28u; /* 027C0824 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t100); /* 027C0828 */ cpu->r[12] = 0x43300000u; /* 027C082C */ _t101 = cpu->r[1] + 0x0000000Cu; /* 027C082C */ rbrew_write32(cpu->mem, _t101, cpu->r[0]); /* 027C0830 */ _t102 = cpu->r[1] + 0x00000008u; /* 027C0830 */ rbrew_write32(cpu->mem, _t102, cpu->r[12]); /* 027C0834 */ _t103 = cpu->r[1] + 0x00000008u; /* 027C0834 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t103); /* 027C0838 */ cpu->r[10] = 0x10110000u; /* 027C083C */ cpu->f[0] = cpu->f[13] - cpu->f[0]; /* 027C0840 */ _t104 = cpu->r[10] + 0xFFFFBF30u; /* 027C0840 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t104); /* 027C0844 */ cpu->f[11] = (double)(float)cpu->f[0]; /* 027C0848 */ _t105 = cpu->r[3] + 0x00000014u; /* 027C0848 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105); /* 027C084C */ cpu->f[13] = cpu->f[11] / cpu->f[13]; /* 027C0850 */ _t106 = cpu->r[3] + 0x00000010u; /* 027C0850 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t106); /* 027C0854 */ cpu->f[11] = cpu->f[12] * cpu->f[13]; /* 027C0858 */ _t107 = cpu->r[6] + 0x00000000u; /* 027C0858 */ cpu->r[8] = rbrew_read32(cpu->mem, _t107); /* 027C085C */ cpu->f[12] = cpu->f[0] * cpu->f[13]; /* 027C0860 */ _t108 = cpu->r[8] + 0x0000000Cu; /* 027C0860 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[11]); /* 027C0864 */ cpu->r[3] = 0x00000001u; /* 027C0868 */ _t109 = cpu->r[8] + 0x00000010u; /* 027C0868 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[12]); /* 027C086C */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C0870 */ return; L_027C0874: ; // 0x27c0874 /* 027C0874 */ _t110 = cpu->r[5] + 0x00000004u; /* 027C0874 */ cpu->r[11] = rbrew_read16(cpu->mem, _t110); /* 027C0878 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u); /* 027C087C */ _t111 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C087C */ _t112 = _t111 & 0x00000001u; /* 027C087C */ if (_t112) goto L_027C089C; else goto L_027C0880; L_027C0880: ; // 0x27c0880 /* 027C0880 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0880 */ _t114 = _t113 & 0x00000001u; /* 027C0880 */ if (_t114) goto L_027C0894; else goto L_027C0884; L_027C0884: ; // 0x27c0884 /* 027C0884 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u); /* 027C0888 */ _t115 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0888 */ _t116 = _t115 & 0x00000001u; /* 027C0888 */ if (_t116) goto L_027C0898; else goto L_027C088C; L_027C088C: ; // 0x27c088c /* 027C088C */ _t117 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C088C */ _t118 = _t117 & 0x00000001u; /* 027C088C */ if (_t118) goto L_027C0890; else goto L_027C08AC; L_027C0890: ; // 0x27c0890 /* 027C0890 */ goto L_027C0564; L_027C0894: ; // 0x27c0894 /* 027C0894 */ goto L_027C0724; L_027C0898: ; // 0x27c0898 /* 027C0898 */ goto L_027C07E8; L_027C089C: ; // 0x27c089c /* 027C089C */ _t119 = cpu->r[3] + 0x00000000u; /* 027C089C */ cpu->r[12] = rbrew_read32(cpu->mem, _t119); /* 027C08A0 */ _t120 = cpu->r[12] + 0x0000009Cu; /* 027C08A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120); /* 027C08A4 */ cpu->ctr = cpu->r[0]; /* 027C08A8 */ rbrew_dispatch(cpu, cpu->ctr); return; L_027C08AC: ; // 0x27c08ac /* 027C08AC */ _t121 = cpu->r[6] + 0x00000004u; /* 027C08AC */ rbrew_write32(cpu->mem, _t121, cpu->r[7]); /* 027C08B0 */ cpu->r[3] = 0x00000001u; /* 027C08B4 */ return; L_027C08B8: ; // 0x27c08b8 /* 027C08B8 */ _t122 = cpu->r[6] + 0x00000004u; /* 027C08B8 */ rbrew_write32(cpu->mem, _t122, cpu->r[7]); /* 027C08BC */ cpu->r[3] = 0x00000001u; /* 027C08C0 */ return; L_027C08C4: ; // 0x27c08c4 /* 027C08C4 */ _t123 = cpu->r[6] + 0x00000004u; /* 027C08C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t123); /* 027C08C8 */ _t124 = cpu->r[10] + 0xFFFFFFFEu; /* 027C08C8 */ cpu->r[11] = rbrew_read16(cpu->mem, _t124); /* 027C08CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000000Eu); /* 027C08D0 */ cpu->r[7] = cpu->r[10] + 0xFFFFFFFEu; /* 027C08D4 */ _t125 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C08D4 */ _t126 = _t125 & 0x00000001u; /* 027C08D4 */ if (_t126) goto L_027C08D8; else goto L_027C08F8; L_027C08D8: ; // 0x27c08d8 /* 027C08D8 */ _t127 = cpu->r[7] + 0x00000006u; /* 027C08D8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t127); /* 027C08DC */ cpu->r[5] = cpu->r[7]; /* 027C08E0 */ _t128 = cpu->r[5] + 0x00000002u; /* 027C08E0 */ cpu->r[8] = rbrew_read16(cpu->mem, _t128); /* 027C08E4 */ cpu->r[12] = cpu->r[7] + cpu->r[0]; /* 027C08E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000000u); /* 027C08EC */ cpu->r[7] = cpu->r[12] + 0x00000008u; /* 027C08F0 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C08F0 */ _t130 = _t129 & 0x00000001u; /* 027C08F0 */ if (_t130) goto L_027C08F4; else goto L_027C0928; L_027C08F4: ; // 0x27c08f4 /* 027C08F4 */ goto L_027C0874; L_027C08F8: ; // 0x27c08f8 /* 027C08F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000000Fu); /* 027C08FC */ _t131 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C08FC */ _t132 = _t131 & 0x00000001u; /* 027C08FC */ if (_t132) goto L_027C0900; else goto L_027C0918; L_027C0900: ; // 0x27c0900 /* 027C0900 */ cpu->r[5] = cpu->r[7]; /* 027C0904 */ _t133 = cpu->r[5] + 0x00000002u; /* 027C0904 */ cpu->r[8] = rbrew_read16(cpu->mem, _t133); /* 027C0908 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000000u); /* 027C090C */ cpu->r[7] = cpu->r[7] + 0x00000006u; /* 027C0910 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0910 */ _t135 = _t134 & 0x00000001u; /* 027C0910 */ if (_t135) goto L_027C08F4; else goto L_027C0914; L_027C0914: ; // 0x27c0914 /* 027C0914 */ goto L_027C0928; L_027C0918: ; // 0x27c0918 /* 027C0918 */ cpu->r[5] = 0x00000000u; /* 027C091C */ _t136 = cpu->r[5] + 0x00000002u; /* 027C091C */ cpu->r[8] = rbrew_read16(cpu->mem, _t136); /* 027C0920 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000000u); /* 027C0924 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0924 */ _t138 = _t137 & 0x00000001u; /* 027C0924 */ if (_t138) goto L_027C08F4; else goto L_027C0928; L_027C0928: ; // 0x27c0928 /* 027C0928 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000002u); /* 027C092C */ _t139 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C092C */ _t140 = _t139 & 0x00000001u; /* 027C092C */ if (_t140) goto L_027C093C; else goto L_027C0930; L_027C0930: ; // 0x27c0930 /* 027C0930 */ _t141 = cpu->r[6] + 0x00000004u; /* 027C0930 */ rbrew_write32(cpu->mem, _t141, cpu->r[7]); L_027C0934: ; // 0x27c0934 /* 027C0934 */ cpu->r[3] = 0x00000000u; /* 027C0938 */ return; L_027C093C: ; // 0x27c093c /* 027C093C */ _t142 = cpu->r[5] + 0x00000004u; /* 027C093C */ cpu->r[9] = rbrew_read16(cpu->mem, _t142); /* 027C0940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000007u); /* 027C0944 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0944 */ _t144 = _t143 & 0x00000001u; /* 027C0944 */ if (_t144) goto L_027C0948; else goto L_027C0934; L_027C0948: ; // 0x27c0948 /* 027C0948 */ goto L_027C08B8; L_027C094C: ; // 0x27c094c /* 027C094C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x0000000Eu); /* 027C0950 */ _t145 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0950 */ _t146 = _t145 & 0x00000001u; /* 027C0950 */ if (_t146) goto L_027C0958; else goto L_027C0954; L_027C0954: ; // 0x27c0954 /* 027C0954 */ goto L_02858468; L_027C0958: ; // 0x27c0958 /* 027C0958 */ cpu->r[6] = cpu->r[5]; /* 027C095C */ cpu->r[5] = 0x0000000Eu; /* 027C0960 */ cpu->r[4] = 0x00000000u; /* 027C0964 */ goto L_027C08C4; L_02858468: ; // 0x2858468 /* 02858468 */ cpu->r[0] = cpu->lr; /* 0285846C */ _t147 = cpu->r[1] + 0x00000004u; /* 0285846C */ rbrew_write32(cpu->mem, _t147, cpu->r[0]); /* 02858470 */ cpu->r[0] = cpu->r[4]; /* 02858474 */ _t148 = cpu->r[1] + 0xFFFFFFF8u; /* 02858474 */ rbrew_write32(cpu->mem, _t148, cpu->r[1]); /* 02858474 */ cpu->r[1] = _t148; /* 02858478 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000009u); /* 0285847C */ cpu->r[4] = cpu->r[5]; /* 02858480 */ _t149 = cpu->cr[0] >> (0x00000001u & 31u); /* 02858480 */ _t150 = _t149 & 0x00000001u; /* 02858480 */ if (_t150) goto L_028584A4; else goto L_02858484; L_02858484: ; // 0x2858484 /* 02858484 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000000Au); /* 02858488 */ _t151 = cpu->cr[0] >> (0x00000001u & 31u); /* 02858488 */ _t152 = _t151 & 0x00000001u; /* 02858488 */ if (_t152) goto L_0285848C; else goto L_028584BC; L_0285848C: ; // 0x285848c /* 0285848C */ Gambit_fn_028582D0(cpu); /* 02858490 */ _t153 = cpu->r[1] + 0x0000000Cu; /* 02858490 */ cpu->r[0] = rbrew_read32(cpu->mem, _t153); /* 02858494 */ cpu->lr = cpu->r[0]; /* 02858498 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 0285849C */ cpu->r[3] = 0x00000003u; /* 028584A0 */ return; L_028584A4: ; // 0x28584a4 /* 028584A4 */ Gambit_fn_0285832C(cpu); /* 028584A8 */ _t154 = cpu->r[1] + 0x0000000Cu; /* 028584A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t154); /* 028584AC */ cpu->lr = cpu->r[0]; /* 028584B0 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 028584B4 */ cpu->r[3] = 0x00000001u; /* 028584B8 */ return; L_028584BC: ; // 0x28584bc /* 028584BC */ _t155 = cpu->r[1] + 0x0000000Cu; /* 028584BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t155); /* 028584C0 */ cpu->lr = cpu->r[0]; /* 028584C4 */ cpu->r[1] = cpu->r[1] + 0x00000008u; /* 028584C8 */ cpu->r[3] = 0x00000000u; /* 028584CC */ return; } // fn_027C0968 @ 0x27c0968 void Gambit_fn_027C0968(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; L_027C0564: ; // 0x27c0564 /* 027C0564 */ cpu->r[0] = cpu->lr; /* 027C0568 */ _t0 = cpu->r[1] + 0xFFFFFFC0u; /* 027C0568 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C0568 */ cpu->r[1] = _t0; /* 027C056C */ _t1 = cpu->r[1] + 0x00000038u; /* 027C056C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C0570 */ cpu->r[30] = cpu->r[6]; /* 027C0574 */ _t2 = cpu->r[1] + 0x00000034u; /* 027C0574 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027C0578 */ _t3 = cpu->r[1] + 0x00000030u; /* 027C0578 */ rbrew_write32(cpu->mem, _t3, cpu->r[28]); /* 027C057C */ _t4 = cpu->r[1] + 0x0000003Cu; /* 027C057C */ rbrew_write32(cpu->mem, _t4, cpu->r[31]); /* 027C0580 */ _t5 = cpu->r[1] + 0x00000044u; /* 027C0580 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027C0584 */ cpu->r[29] = cpu->r[3]; /* 027C0588 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C058C */ _t6 = cpu->r[30] + 0x00000004u; /* 027C058C */ rbrew_write32(cpu->mem, _t6, cpu->r[7]); /* 027C0590 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0590 */ _t8 = _t7 & 0x00000001u; /* 027C0590 */ if (_t8) goto L_027C0594; else goto L_027C0700; L_027C0594: ; // 0x27c0594 /* 027C0594 */ _t9 = cpu->r[5] + 0x00000008u; /* 027C0594 */ cpu->r[28] = rbrew_read16(cpu->mem, _t9); /* 027C0598 */ cpu->r[10] = cpu->r[29] + 0x0000001Cu; /* 027C059C */ cpu->r[9] = cpu->r[29] + 0x00000018u; /* 027C05A0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[28], 0x0000FFFFu); /* 027C05A4 */ _t10 = cpu->r[30] + 0x00000000u; /* 027C05A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027C05A8 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C05A8 */ _t12 = _t11 & 0x00000001u; /* 027C05A8 */ if (_t12) goto L_027C05AC; else goto L_027C05F8; L_027C05AC: ; // 0x27c05ac /* 027C05AC */ /* nop */ /* 027C05B0 */ cpu->r[6] = cpu->r[1] + 0x00000008u; /* 027C05B4 */ /* nop */ /* 027C05B8 */ /* nop */ /* 027C05BC */ cpu->r[8] = cpu->r[1] + 0x0000000Cu; /* 027C05C0 */ _t13 = cpu->r[1] + 0x00000008u; /* 027C05C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027C05C4 */ /* nop */ /* 027C05C8 */ cpu->r[11] = cpu->r[1] + 0x00000010u; /* 027C05CC */ _t14 = cpu->r[1] + 0x00000010u; /* 027C05CC */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027C05D0 */ /* nop */ /* 027C05D4 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027C05D4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t15); /* 027C05D8 */ cpu->r[6] = cpu->r[1] + 0x00000014u; /* 027C05DC */ /* nop */ /* 027C05E0 */ cpu->r[7] = cpu->r[12] + 0x00000004u; /* 027C05E4 */ _t16 = cpu->r[1] + 0x00000014u; /* 027C05E4 */ rbrew_write32(cpu->mem, _t16, cpu->r[10]); /* 027C05E8 */ /* nop */ /* 027C05EC */ cpu->r[3] = 0x00000001u; /* 027C05F0 */ /* nop */ /* 027C05F4 */ goto L_027C0704; L_027C05F8: ; // 0x27c05f8 /* 027C05F8 */ /* nop */ /* 027C05FC */ /* nop */ /* 027C0600 */ _t17 = cpu->r[30] + 0x00000000u; /* 027C0600 */ cpu->r[9] = rbrew_read32(cpu->mem, _t17); /* 027C0604 */ cpu->r[6] = cpu->r[9] + 0x00000004u; /* 027C0608 */ /* nop */ /* 027C060C */ cpu->r[31] = 0x101D0000u; /* 027C0610 */ /* nop */ /* 027C0614 */ _t18 = cpu->r[31] + 0xFFFF93D0u; /* 027C0614 */ cpu->r[3] = rbrew_read32(cpu->mem, _t18); /* 027C0614 */ cpu->r[31] = _t18; /* 027C0618 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C061C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C061C */ _t20 = _t19 & 0x00000001u; /* 027C061C */ if (_t20) goto L_027C06A8; else goto L_027C0620; L_027C0620: ; // 0x27c0620 /* 027C0620 */ _t21 = cpu->r[3] + 0x00000000u; /* 027C0620 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21); /* 027C0624 */ _t22 = cpu->r[8] + 0x00000034u; /* 027C0624 */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 027C0628 */ cpu->ctr = cpu->r[0]; /* 027C062C */ cpu->r[4] = cpu->r[28]; /* 027C0630 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0634 */ /* nop */ /* 027C0638 */ cpu->r[10] = cpu->r[1] + 0x00000018u; /* 027C063C */ /* nop */ /* 027C0640 */ _t23 = cpu->r[31] + 0x00000000u; /* 027C0640 */ cpu->r[3] = rbrew_read32(cpu->mem, _t23); /* 027C0644 */ _t24 = cpu->r[3] + 0x00000000u; /* 027C0644 */ cpu->r[12] = rbrew_read32(cpu->mem, _t24); /* 027C0648 */ _t25 = cpu->r[12] + 0x00000034u; /* 027C0648 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25); /* 027C064C */ cpu->ctr = cpu->r[6]; /* 027C0650 */ _t26 = cpu->r[1] + 0x00000018u; /* 027C0650 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027C0654 */ cpu->r[4] = cpu->r[28]; /* 027C0658 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C065C */ /* nop */ /* 027C0660 */ cpu->r[7] = cpu->r[1] + 0x0000001Cu; /* 027C0664 */ /* nop */ /* 027C0668 */ _t27 = cpu->r[29] + 0x0000001Bu; /* 027C0668 */ cpu->r[6] = rbrew_read8(cpu->mem, _t27); /* 027C066C */ _t28 = cpu->r[1] + 0x0000001Cu; /* 027C066C */ cpu->r[0] = rbrew_read32(cpu->mem, _t28); /* 027C0670 */ _t29 = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C0670 */ _t30 = cpu->r[31] & 0xFFFFFF00u; /* 027C0670 */ cpu->r[31] = _t30 | _t29; /* 027C0674 */ _t31 = cpu->r[30] + 0x00000000u; /* 027C0674 */ cpu->r[9] = rbrew_read32(cpu->mem, _t31); /* 027C0678 */ cpu->r[8] = cpu->r[1] + 0x00000024u; /* 027C067C */ _t32 = cpu->r[29] + 0x0000001Fu; /* 027C067C */ cpu->r[7] = rbrew_read8(cpu->mem, _t32); /* 027C0680 */ _t33 = cpu->r[1] + 0x00000024u; /* 027C0680 */ rbrew_write32(cpu->mem, _t33, cpu->r[31]); /* 027C0684 */ /* nop */ /* 027C0688 */ _t34 = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C0688 */ _t35 = cpu->r[0] & 0xFFFFFF00u; /* 027C0688 */ cpu->r[0] = _t35 | _t34; /* 027C068C */ /* nop */ /* 027C0690 */ cpu->r[11] = cpu->r[1] + 0x00000028u; /* 027C0694 */ _t36 = cpu->r[1] + 0x00000028u; /* 027C0694 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]); /* 027C0698 */ /* nop */ /* 027C069C */ cpu->r[12] = cpu->r[9] + 0x00000004u; /* 027C06A0 */ /* nop */ /* 027C06A4 */ goto L_027C0700; L_027C06A8: ; // 0x27c06a8 /* 027C06A8 */ cpu->r[9] = rbrew_rlwinm(cpu->r[28], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C06AC */ cpu->r[10] = cpu->r[9] + 0x101F0000u; /* 027C06B0 */ cpu->r[11] = cpu->r[10] + 0x00002BECu; /* 027C06B4 */ /* nop */ /* 027C06B8 */ cpu->r[12] = cpu->r[1] + 0x00000020u; /* 027C06BC */ /* nop */ /* 027C06C0 */ _t37 = cpu->r[1] + 0x00000020u; /* 027C06C0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t37); /* 027C06C4 */ _t38 = cpu->r[29] + 0x0000001Bu; /* 027C06C4 */ cpu->r[6] = rbrew_read8(cpu->mem, _t38); /* 027C06C8 */ cpu->r[0] = cpu->r[31]; /* 027C06CC */ _t39 = cpu->r[29] + 0x0000001Fu; /* 027C06CC */ cpu->r[7] = rbrew_read8(cpu->mem, _t39); /* 027C06D0 */ _t40 = rbrew_rlwinm(cpu->r[6], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C06D0 */ _t41 = cpu->r[31] & 0xFFFFFF00u; /* 027C06D0 */ cpu->r[31] = _t41 | _t40; /* 027C06D4 */ cpu->r[8] = cpu->r[1] + 0x00000024u; /* 027C06D8 */ _t42 = cpu->r[1] + 0x00000024u; /* 027C06D8 */ rbrew_write32(cpu->mem, _t42, cpu->r[31]); /* 027C06DC */ /* nop */ /* 027C06E0 */ _t43 = rbrew_rlwinm(cpu->r[7], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C06E0 */ _t44 = cpu->r[0] & 0xFFFFFF00u; /* 027C06E0 */ cpu->r[0] = _t44 | _t43; /* 027C06E4 */ _t45 = cpu->r[30] + 0x00000000u; /* 027C06E4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t45); /* 027C06E8 */ /* nop */ /* 027C06EC */ cpu->r[11] = cpu->r[1] + 0x00000028u; /* 027C06F0 */ _t46 = cpu->r[1] + 0x00000028u; /* 027C06F0 */ rbrew_write32(cpu->mem, _t46, cpu->r[0]); /* 027C06F4 */ /* nop */ /* 027C06F8 */ cpu->r[12] = cpu->r[9] + 0x00000004u; /* 027C06FC */ /* nop */ L_027C0700: ; // 0x27c0700 /* 027C0700 */ cpu->r[3] = 0x00000001u; L_027C0704: ; // 0x27c0704 /* 027C0704 */ _t47 = cpu->r[1] + 0x00000030u; /* 027C0704 */ cpu->r[28] = rbrew_read32(cpu->mem, _t47); /* 027C0708 */ _t48 = cpu->r[1] + 0x00000034u; /* 027C0708 */ cpu->r[29] = rbrew_read32(cpu->mem, _t48); /* 027C070C */ _t49 = cpu->r[1] + 0x00000044u; /* 027C070C */ cpu->r[0] = rbrew_read32(cpu->mem, _t49); /* 027C0710 */ _t50 = cpu->r[1] + 0x00000038u; /* 027C0710 */ cpu->r[30] = rbrew_read32(cpu->mem, _t50); /* 027C0714 */ cpu->lr = cpu->r[0]; /* 027C0718 */ _t51 = cpu->r[1] + 0x0000003Cu; /* 027C0718 */ cpu->r[31] = rbrew_read32(cpu->mem, _t51); /* 027C071C */ cpu->r[1] = cpu->r[1] + 0x00000040u; /* 027C0720 */ return; L_027C0724: ; // 0x27c0724 /* 027C0724 */ cpu->r[0] = cpu->lr; /* 027C0728 */ _t52 = cpu->r[1] + 0xFFFFFFF0u; /* 027C0728 */ rbrew_write32(cpu->mem, _t52, cpu->r[1]); /* 027C0728 */ cpu->r[1] = _t52; /* 027C072C */ _t53 = cpu->r[1] + 0x00000008u; /* 027C072C */ rbrew_write32(cpu->mem, _t53, cpu->r[30]); /* 027C0730 */ cpu->r[30] = cpu->r[6]; /* 027C0734 */ _t54 = cpu->r[1] + 0x0000000Cu; /* 027C0734 */ rbrew_write32(cpu->mem, _t54, cpu->r[31]); /* 027C0738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C073C */ _t55 = cpu->r[1] + 0x00000014u; /* 027C073C */ rbrew_write32(cpu->mem, _t55, cpu->r[0]); /* 027C0740 */ cpu->r[31] = cpu->r[3]; /* 027C0744 */ _t56 = cpu->r[30] + 0x00000004u; /* 027C0744 */ rbrew_write32(cpu->mem, _t56, cpu->r[7]); /* 027C0748 */ _t57 = cpu->r[5] + 0x00000008u; /* 027C0748 */ cpu->r[3] = rbrew_read16(cpu->mem, _t57); /* 027C074C */ _t58 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C074C */ _t59 = _t58 & 0x00000001u; /* 027C074C */ if (_t59) goto L_027C0750; else goto L_027C0794; L_027C0750: ; // 0x27c0750 /* 027C0750 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000FFFFu); /* 027C0754 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0754 */ _t61 = _t60 & 0x00000001u; /* 027C0754 */ if (_t61) goto L_027C0758; else goto L_027C0768; L_027C0758: ; // 0x27c0758 /* 027C0758 */ cpu->r[8] = 0x00000000u; /* 027C075C */ _t62 = cpu->r[31] + 0x00000004u; /* 027C075C */ cpu->r[3] = rbrew_read32(cpu->mem, _t62); /* 027C0760 */ _t63 = cpu->r[31] + 0x00000004u; /* 027C0760 */ rbrew_write32(cpu->mem, _t63, cpu->r[8]); /* 027C0764 */ goto L_027C0784; L_027C0768: ; // 0x27c0768 /* 027C0768 */ Gambit_fn_027B1F5C(cpu); /* 027C076C */ _t64 = cpu->r[31] + 0x00000004u; /* 027C076C */ cpu->r[0] = rbrew_read32(cpu->mem, _t64); /* 027C0770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C0774 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0774 */ _t66 = _t65 & 0x00000001u; /* 027C0774 */ if (_t66) goto L_027C0778; else goto L_027C0784; L_027C0778: ; // 0x27c0778 /* 027C0778 */ _t67 = cpu->r[30] + 0x00000000u; /* 027C0778 */ cpu->r[7] = rbrew_read32(cpu->mem, _t67); /* 027C077C */ _t68 = cpu->r[7] + 0x00000028u; /* 027C077C */ cpu->r[8] = rbrew_read32(cpu->mem, _t68); /* 027C0780 */ _t69 = cpu->r[31] + 0x00000004u; /* 027C0780 */ rbrew_write32(cpu->mem, _t69, cpu->r[8]); L_027C0784: ; // 0x27c0784 /* 027C0784 */ _t70 = cpu->r[30] + 0x00000000u; /* 027C0784 */ cpu->r[12] = rbrew_read32(cpu->mem, _t70); /* 027C0788 */ _t71 = cpu->r[12] + 0x00000028u; /* 027C0788 */ rbrew_write32(cpu->mem, _t71, cpu->r[3]); /* 027C078C */ cpu->r[3] = 0x00000000u; /* 027C0790 */ goto L_027C07D0; L_027C0794: ; // 0x27c0794 /* 027C0794 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], 0x0000FFFFu); /* 027C0798 */ _t72 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0798 */ _t73 = _t72 & 0x00000001u; /* 027C0798 */ if (_t73) goto L_027C079C; else goto L_027C07B4; L_027C079C: ; // 0x27c079c /* 027C079C */ _t74 = cpu->r[31] + 0x00000008u; /* 027C079C */ cpu->r[3] = rbrew_read32(cpu->mem, _t74); /* 027C07A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C07A4 */ _t75 = cpu->r[30] + 0x00000000u; /* 027C07A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t75); /* 027C07A8 */ _t76 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C07A8 */ _t77 = _t76 & 0x00000001u; /* 027C07A8 */ if (_t77) goto L_027C07AC; else goto L_027C07C8; L_027C07AC: ; // 0x27c07ac /* 027C07AC */ _t78 = cpu->r[12] + 0x00000028u; /* 027C07AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t78); /* 027C07B0 */ goto L_027C07C8; L_027C07B4: ; // 0x27c07b4 /* 027C07B4 */ Gambit_fn_027B1F5C(cpu); /* 027C07B8 */ _t79 = cpu->r[30] + 0x00000000u; /* 027C07B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t79); /* 027C07BC */ _t80 = cpu->r[9] + 0x00000028u; /* 027C07BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t80); /* 027C07C0 */ _t81 = cpu->r[31] + 0x00000008u; /* 027C07C0 */ rbrew_write32(cpu->mem, _t81, cpu->r[0]); /* 027C07C4 */ _t82 = cpu->r[30] + 0x00000000u; /* 027C07C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t82); L_027C07C8: ; // 0x27c07c8 /* 027C07C8 */ _t83 = cpu->r[12] + 0x00000028u; /* 027C07C8 */ rbrew_write32(cpu->mem, _t83, cpu->r[3]); /* 027C07CC */ cpu->r[3] = 0x00000000u; L_027C07D0: ; // 0x27c07d0 /* 027C07D0 */ _t84 = cpu->r[1] + 0x00000014u; /* 027C07D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t84); /* 027C07D4 */ _t85 = cpu->r[1] + 0x00000008u; /* 027C07D4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t85); /* 027C07D8 */ cpu->lr = cpu->r[0]; /* 027C07DC */ _t86 = cpu->r[1] + 0x0000000Cu; /* 027C07DC */ cpu->r[31] = rbrew_read32(cpu->mem, _t86); /* 027C07E0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C07E4 */ return; L_027C07E8: ; // 0x27c07e8 /* 027C07E8 */ _t87 = cpu->r[1] + 0xFFFFFFE8u; /* 027C07E8 */ rbrew_write32(cpu->mem, _t87, cpu->r[1]); /* 027C07E8 */ cpu->r[1] = _t87; /* 027C07EC */ _t88 = cpu->r[3] + 0x0000000Cu; /* 027C07EC */ cpu->r[0] = rbrew_read8(cpu->mem, _t88); /* 027C07F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C07F4 */ _t89 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C07F4 */ _t90 = _t89 & 0x00000001u; /* 027C07F4 */ if (_t90) goto L_027C07F8; else goto L_027C0818; L_027C07F8: ; // 0x27c07f8 /* 027C07F8 */ _t91 = cpu->r[6] + 0x00000000u; /* 027C07F8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t91); /* 027C07FC */ _t92 = cpu->r[10] + 0x0000000Cu; /* 027C07FC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t92); /* 027C0800 */ _t93 = cpu->r[3] + 0x00000010u; /* 027C0800 */ rbrew_write_f32(cpu->mem, _t93, cpu->f[11]); /* 027C0804 */ _t94 = cpu->r[6] + 0x00000000u; /* 027C0804 */ cpu->r[10] = rbrew_read32(cpu->mem, _t94); /* 027C0808 */ cpu->r[9] = 0x00000001u; /* 027C080C */ _t95 = cpu->r[10] + 0x00000010u; /* 027C080C */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t95); /* 027C0810 */ _t96 = cpu->r[3] + 0x0000000Cu; /* 027C0810 */ rbrew_write8(cpu->mem, _t96, (uint8_t)cpu->r[9]); /* 027C0814 */ _t97 = cpu->r[3] + 0x00000014u; /* 027C0814 */ rbrew_write_f32(cpu->mem, _t97, cpu->f[12]); L_027C0818: ; // 0x27c0818 /* 027C0818 */ _t98 = cpu->r[6] + 0x00000004u; /* 027C0818 */ rbrew_write32(cpu->mem, _t98, cpu->r[7]); /* 027C081C */ cpu->r[12] = 0x10110000u; /* 027C0820 */ _t99 = cpu->r[5] + 0x00000008u; /* 027C0820 */ cpu->r[0] = rbrew_read16(cpu->mem, _t99); /* 027C0824 */ _t100 = cpu->r[12] + 0xFFFFBF28u; /* 027C0824 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t100); /* 027C0828 */ cpu->r[12] = 0x43300000u; /* 027C082C */ _t101 = cpu->r[1] + 0x0000000Cu; /* 027C082C */ rbrew_write32(cpu->mem, _t101, cpu->r[0]); /* 027C0830 */ _t102 = cpu->r[1] + 0x00000008u; /* 027C0830 */ rbrew_write32(cpu->mem, _t102, cpu->r[12]); /* 027C0834 */ _t103 = cpu->r[1] + 0x00000008u; /* 027C0834 */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t103); /* 027C0838 */ cpu->r[10] = 0x10110000u; /* 027C083C */ cpu->f[0] = cpu->f[13] - cpu->f[0]; /* 027C0840 */ _t104 = cpu->r[10] + 0xFFFFBF30u; /* 027C0840 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t104); /* 027C0844 */ cpu->f[11] = (double)(float)cpu->f[0]; /* 027C0848 */ _t105 = cpu->r[3] + 0x00000014u; /* 027C0848 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t105); /* 027C084C */ cpu->f[13] = cpu->f[11] / cpu->f[13]; /* 027C0850 */ _t106 = cpu->r[3] + 0x00000010u; /* 027C0850 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t106); /* 027C0854 */ cpu->f[11] = cpu->f[12] * cpu->f[13]; /* 027C0858 */ _t107 = cpu->r[6] + 0x00000000u; /* 027C0858 */ cpu->r[8] = rbrew_read32(cpu->mem, _t107); /* 027C085C */ cpu->f[12] = cpu->f[0] * cpu->f[13]; /* 027C0860 */ _t108 = cpu->r[8] + 0x0000000Cu; /* 027C0860 */ rbrew_write_f32(cpu->mem, _t108, cpu->f[11]); /* 027C0864 */ cpu->r[3] = 0x00000001u; /* 027C0868 */ _t109 = cpu->r[8] + 0x00000010u; /* 027C0868 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[12]); /* 027C086C */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C0870 */ return; L_027C0874: ; // 0x27c0874 /* 027C0874 */ _t110 = cpu->r[5] + 0x00000004u; /* 027C0874 */ cpu->r[11] = rbrew_read16(cpu->mem, _t110); /* 027C0878 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000001u); /* 027C087C */ _t111 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C087C */ _t112 = _t111 & 0x00000001u; /* 027C087C */ if (_t112) goto L_027C089C; else goto L_027C0880; L_027C0880: ; // 0x27c0880 /* 027C0880 */ _t113 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0880 */ _t114 = _t113 & 0x00000001u; /* 027C0880 */ if (_t114) goto L_027C0894; else goto L_027C0884; L_027C0884: ; // 0x27c0884 /* 027C0884 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], 0x00000003u); /* 027C0888 */ _t115 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0888 */ _t116 = _t115 & 0x00000001u; /* 027C0888 */ if (_t116) goto L_027C0898; else goto L_027C088C; L_027C088C: ; // 0x27c088c /* 027C088C */ _t117 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C088C */ _t118 = _t117 & 0x00000001u; /* 027C088C */ if (_t118) goto L_027C0890; else goto L_027C08AC; L_027C0890: ; // 0x27c0890 /* 027C0890 */ goto L_027C0564; L_027C0894: ; // 0x27c0894 /* 027C0894 */ goto L_027C0724; L_027C0898: ; // 0x27c0898 /* 027C0898 */ goto L_027C07E8; L_027C089C: ; // 0x27c089c /* 027C089C */ _t119 = cpu->r[3] + 0x00000000u; /* 027C089C */ cpu->r[12] = rbrew_read32(cpu->mem, _t119); /* 027C08A0 */ _t120 = cpu->r[12] + 0x0000009Cu; /* 027C08A0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t120); /* 027C08A4 */ cpu->ctr = cpu->r[0]; /* 027C08A8 */ rbrew_dispatch(cpu, cpu->ctr); return; L_027C08AC: ; // 0x27c08ac /* 027C08AC */ _t121 = cpu->r[6] + 0x00000004u; /* 027C08AC */ rbrew_write32(cpu->mem, _t121, cpu->r[7]); /* 027C08B0 */ cpu->r[3] = 0x00000001u; /* 027C08B4 */ return; L_027C08B8: ; // 0x27c08b8 /* 027C08B8 */ _t122 = cpu->r[6] + 0x00000004u; /* 027C08B8 */ rbrew_write32(cpu->mem, _t122, cpu->r[7]); /* 027C08BC */ cpu->r[3] = 0x00000001u; /* 027C08C0 */ return; L_027C08C4: ; // 0x27c08c4 /* 027C08C4 */ _t123 = cpu->r[6] + 0x00000004u; /* 027C08C4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t123); /* 027C08C8 */ _t124 = cpu->r[10] + 0xFFFFFFFEu; /* 027C08C8 */ cpu->r[11] = rbrew_read16(cpu->mem, _t124); /* 027C08CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000000Eu); /* 027C08D0 */ cpu->r[7] = cpu->r[10] + 0xFFFFFFFEu; /* 027C08D4 */ _t125 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C08D4 */ _t126 = _t125 & 0x00000001u; /* 027C08D4 */ if (_t126) goto L_027C08D8; else goto L_027C08F8; L_027C08D8: ; // 0x27c08d8 /* 027C08D8 */ _t127 = cpu->r[7] + 0x00000006u; /* 027C08D8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t127); /* 027C08DC */ cpu->r[5] = cpu->r[7]; /* 027C08E0 */ _t128 = cpu->r[5] + 0x00000002u; /* 027C08E0 */ cpu->r[8] = rbrew_read16(cpu->mem, _t128); /* 027C08E4 */ cpu->r[12] = cpu->r[7] + cpu->r[0]; /* 027C08E8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000000u); /* 027C08EC */ cpu->r[7] = cpu->r[12] + 0x00000008u; /* 027C08F0 */ _t129 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C08F0 */ _t130 = _t129 & 0x00000001u; /* 027C08F0 */ if (_t130) goto L_027C08F4; else goto L_027C0928; L_027C08F4: ; // 0x27c08f4 /* 027C08F4 */ goto L_027C0874; L_027C08F8: ; // 0x27c08f8 /* 027C08F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x0000000Fu); /* 027C08FC */ _t131 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C08FC */ _t132 = _t131 & 0x00000001u; /* 027C08FC */ if (_t132) goto L_027C0900; else goto L_027C0918; L_027C0900: ; // 0x27c0900 /* 027C0900 */ cpu->r[5] = cpu->r[7]; /* 027C0904 */ _t133 = cpu->r[5] + 0x00000002u; /* 027C0904 */ cpu->r[8] = rbrew_read16(cpu->mem, _t133); /* 027C0908 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000000u); /* 027C090C */ cpu->r[7] = cpu->r[7] + 0x00000006u; /* 027C0910 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0910 */ _t135 = _t134 & 0x00000001u; /* 027C0910 */ if (_t135) goto L_027C08F4; else goto L_027C0914; L_027C0914: ; // 0x27c0914 /* 027C0914 */ goto L_027C0928; L_027C0918: ; // 0x27c0918 /* 027C0918 */ cpu->r[5] = 0x00000000u; /* 027C091C */ _t136 = cpu->r[5] + 0x00000002u; /* 027C091C */ cpu->r[8] = rbrew_read16(cpu->mem, _t136); /* 027C0920 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000000u); /* 027C0924 */ _t137 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0924 */ _t138 = _t137 & 0x00000001u; /* 027C0924 */ if (_t138) goto L_027C08F4; else goto L_027C0928; L_027C0928: ; // 0x27c0928 /* 027C0928 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], 0x00000002u); /* 027C092C */ _t139 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C092C */ _t140 = _t139 & 0x00000001u; /* 027C092C */ if (_t140) goto L_027C093C; else goto L_027C0930; L_027C0930: ; // 0x27c0930 /* 027C0930 */ _t141 = cpu->r[6] + 0x00000004u; /* 027C0930 */ rbrew_write32(cpu->mem, _t141, cpu->r[7]); L_027C0934: ; // 0x27c0934 /* 027C0934 */ cpu->r[3] = 0x00000000u; /* 027C0938 */ return; L_027C093C: ; // 0x27c093c /* 027C093C */ _t142 = cpu->r[5] + 0x00000004u; /* 027C093C */ cpu->r[9] = rbrew_read16(cpu->mem, _t142); /* 027C0940 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000007u); /* 027C0944 */ _t143 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0944 */ _t144 = _t143 & 0x00000001u; /* 027C0944 */ if (_t144) goto L_027C0948; else goto L_027C0934; L_027C0948: ; // 0x27c0948 /* 027C0948 */ goto L_027C08B8; L_027C0968: ; // 0x27c0968 /* 027C0968 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], 0x0000000Eu); /* 027C096C */ _t145 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C096C */ _t146 = _t145 & 0x00000001u; /* 027C096C */ if (_t146) goto L_027C0974; else goto L_027C0970; L_027C0970: ; // 0x27c0970 /* 027C0970 */ goto L_028584D0; L_027C0974: ; // 0x27c0974 /* 027C0974 */ cpu->r[5] = 0x0000000Eu; /* 027C0978 */ goto L_027C08C4; L_028584D0: ; // 0x28584d0 /* 028584D0 */ _t147 = cpu->r[1] + 0xFFFFFFD8u; /* 028584D0 */ rbrew_write32(cpu->mem, _t147, cpu->r[1]); /* 028584D0 */ cpu->r[1] = _t147; /* 028584D4 */ cpu->r[0] = cpu->lr; /* 028584D8 */ _t148 = cpu->r[1] + 0x00000018u; /* 028584D8 */ rbrew_write_f64(cpu->mem, _t148, cpu->f[31]); /* 028584DC */ /* nop */ /* 028584E0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x00000009u); /* 028584E4 */ _t149 = cpu->r[1] + 0x00000010u; /* 028584E4 */ rbrew_write32(cpu->mem, _t149, cpu->r[30]); /* 028584E8 */ _t150 = cpu->r[1] + 0x00000020u; /* 028584E8 */ rbrew_write_f32(cpu->mem, _t150, cpu->f[31]); /* 028584EC */ _t151 = cpu->r[1] + 0x00000014u; /* 028584EC */ rbrew_write32(cpu->mem, _t151, cpu->r[31]); /* 028584F0 */ _t152 = cpu->r[1] + 0x0000000Cu; /* 028584F0 */ rbrew_write32(cpu->mem, _t152, cpu->r[29]); /* 028584F4 */ cpu->r[30] = cpu->r[4]; /* 028584F8 */ cpu->r[31] = cpu->r[6]; /* 028584FC */ _t153 = cpu->r[1] + 0x0000002Cu; /* 028584FC */ rbrew_write32(cpu->mem, _t153, cpu->r[0]); /* 02858500 */ _t154 = cpu->cr[0] >> (0x00000001u & 31u); /* 02858500 */ _t155 = _t154 & 0x00000001u; /* 02858500 */ if (_t155) goto L_028585A0; else goto L_02858504; L_02858504: ; // 0x2858504 /* 02858504 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], 0x0000000Au); /* 02858508 */ _t156 = cpu->cr[0] >> (0x00000001u & 31u); /* 02858508 */ _t157 = _t156 & 0x00000001u; /* 02858508 */ if (_t157) goto L_0285850C; else goto L_02858630; L_0285850C: ; // 0x285850c /* 0285850C */ _t158 = cpu->r[31] + 0x00000000u; /* 0285850C */ cpu->r[29] = rbrew_read32(cpu->mem, _t158); /* 02858510 */ _t159 = cpu->r[29] + 0x00000014u; /* 02858510 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t159); /* 02858514 */ _t160 = cpu->r[30] + 0x00000008u; /* 02858514 */ rbrew_write_f32(cpu->mem, _t160, cpu->f[8]); /* 02858518 */ _t161 = cpu->r[29] + 0x00000018u; /* 02858518 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t161); /* 0285851C */ cpu->r[4] = cpu->r[31]; /* 02858520 */ _t162 = cpu->r[30] + 0x00000004u; /* 02858520 */ rbrew_write_f32(cpu->mem, _t162, cpu->f[9]); /* 02858524 */ Gambit_fn_028582D0(cpu); /* 02858528 */ _t163 = cpu->r[29] + 0x00000014u; /* 02858528 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t163); /* 0285852C */ _t164 = cpu->r[30] + 0x00000000u; /* 0285852C */ rbrew_write_f32(cpu->mem, _t164, cpu->f[8]); /* 02858530 */ _t165 = cpu->r[31] + 0x00000000u; /* 02858530 */ cpu->r[3] = rbrew_read32(cpu->mem, _t165); /* 02858534 */ Gambit_fn_02854518(cpu); /* 02858538 */ _t166 = cpu->r[30] + 0x00000000u; /* 02858538 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t166); /* 0285853C */ _t167 = cpu->r[30] + 0x00000008u; /* 0285853C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t167); /* 02858540 */ _t168 = cpu->r[29] + 0x00000018u; /* 02858540 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t168); /* 02858544 */ cpu->f[13] = cpu->f[10] - cpu->f[12]; /* 02858548 */ cpu->f[0] = cpu->f[11] + cpu->f[1]; /* 0285854C */ _t169 = cpu->r[30] + 0x00000004u; /* 0285854C */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t169); /* 02858550 */ /* nop */ /* 02858554 */ cpu->f[9] = cpu->f[0] - cpu->f[8]; /* 02858558 */ /* nop */ /* 0285855C */ /* nop */ /* 02858560 */ _t170 = cpu->r[30] + 0x00000000u; /* 02858560 */ rbrew_write_f32(cpu->mem, _t170, cpu->f[11]); /* 02858564 */ /* nop */ /* 02858568 */ _t171 = cpu->r[30] + 0x00000008u; /* 02858568 */ rbrew_write_f32(cpu->mem, _t171, cpu->f[12]); /* 0285856C */ _t172 = cpu->r[30] + 0x00000004u; /* 0285856C */ rbrew_write_f32(cpu->mem, _t172, cpu->f[13]); /* 02858570 */ _t173 = cpu->r[30] + 0x0000000Cu; /* 02858570 */ rbrew_write_f32(cpu->mem, _t173, cpu->f[0]); /* 02858574 */ _t174 = cpu->r[1] + 0x0000000Cu; /* 02858574 */ cpu->r[29] = rbrew_read32(cpu->mem, _t174); /* 02858578 */ _t175 = cpu->r[1] + 0x00000020u; /* 02858578 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t175); /* 0285857C */ _t176 = cpu->r[1] + 0x00000010u; /* 0285857C */ cpu->r[30] = rbrew_read32(cpu->mem, _t176); /* 02858580 */ _t177 = cpu->r[1] + 0x00000018u; /* 02858580 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t177); /* 02858584 */ _t178 = cpu->r[1] + 0x00000014u; /* 02858584 */ cpu->r[31] = rbrew_read32(cpu->mem, _t178); /* 02858588 */ cpu->r[3] = 0x00000003u; /* 0285858C */ _t179 = cpu->cr[0] >> (0x00000003u & 31u); /* 0285858C */ _t180 = _t179 & 0x00000001u; /* 0285858C */ if (_t180) goto L_02858590; // else: addr-0 trap, fall-through L_02858590: ; // 0x2858590 /* 02858590 */ _t181 = cpu->r[1] + 0x0000002Cu; /* 02858590 */ cpu->r[0] = rbrew_read32(cpu->mem, _t181); /* 02858594 */ cpu->lr = cpu->r[0]; /* 02858598 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 0285859C */ return; L_028585A0: ; // 0x28585a0 /* 028585A0 */ _t182 = cpu->r[31] + 0x00000000u; /* 028585A0 */ cpu->r[29] = rbrew_read32(cpu->mem, _t182); /* 028585A4 */ _t183 = cpu->r[29] + 0x00000014u; /* 028585A4 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t183); /* 028585A8 */ cpu->r[4] = cpu->r[31]; /* 028585AC */ _t184 = cpu->r[30] + 0x00000000u; /* 028585AC */ rbrew_write_f32(cpu->mem, _t184, cpu->f[10]); /* 028585B0 */ Gambit_fn_0285832C(cpu); /* 028585B4 */ _t185 = cpu->r[29] + 0x00000014u; /* 028585B4 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t185); /* 028585B8 */ _t186 = cpu->r[30] + 0x00000008u; /* 028585B8 */ rbrew_write_f32(cpu->mem, _t186, cpu->f[11]); /* 028585BC */ _t187 = cpu->r[29] + 0x00000018u; /* 028585BC */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t187); /* 028585C0 */ cpu->r[3] = cpu->r[29]; /* 028585C4 */ _t188 = cpu->r[30] + 0x00000004u; /* 028585C4 */ rbrew_write_f32(cpu->mem, _t188, cpu->f[31]); /* 028585C8 */ Gambit_fn_02854518(cpu); /* 028585CC */ _t189 = cpu->r[30] + 0x00000008u; /* 028585CC */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t189); /* 028585D0 */ _t190 = cpu->r[30] + 0x00000000u; /* 028585D0 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t190); /* 028585D4 */ cpu->f[0] = cpu->f[31] + cpu->f[1]; /* 028585D8 */ _t191 = cpu->r[30] + 0x00000004u; /* 028585D8 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t191); /* 028585DC */ cpu->f[12] = cpu->f[11] - cpu->f[10]; /* 028585E0 */ cpu->f[13] = cpu->f[0] - cpu->f[8]; /* 028585E4 */ /* nop */ /* 028585E8 */ /* nop */ /* 028585EC */ /* nop */ /* 028585F0 */ _t192 = cpu->r[30] + 0x00000000u; /* 028585F0 */ rbrew_write_f32(cpu->mem, _t192, cpu->f[9]); /* 028585F4 */ /* nop */ /* 028585F8 */ _t193 = cpu->r[30] + 0x00000008u; /* 028585F8 */ rbrew_write_f32(cpu->mem, _t193, cpu->f[10]); /* 028585FC */ _t194 = cpu->r[30] + 0x00000004u; /* 028585FC */ rbrew_write_f32(cpu->mem, _t194, cpu->f[12]); /* 02858600 */ _t195 = cpu->r[30] + 0x0000000Cu; /* 02858600 */ rbrew_write_f32(cpu->mem, _t195, cpu->f[8]); /* 02858604 */ _t196 = cpu->r[1] + 0x0000000Cu; /* 02858604 */ cpu->r[29] = rbrew_read32(cpu->mem, _t196); /* 02858608 */ _t197 = cpu->r[1] + 0x00000020u; /* 02858608 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t197); /* 0285860C */ _t198 = cpu->r[1] + 0x00000010u; /* 0285860C */ cpu->r[30] = rbrew_read32(cpu->mem, _t198); /* 02858610 */ _t199 = cpu->r[1] + 0x00000018u; /* 02858610 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t199); /* 02858614 */ _t200 = cpu->r[1] + 0x00000014u; /* 02858614 */ cpu->r[31] = rbrew_read32(cpu->mem, _t200); /* 02858618 */ cpu->r[3] = 0x00000001u; /* 0285861C */ _t201 = cpu->cr[0] >> (0x00000003u & 31u); /* 0285861C */ _t202 = _t201 & 0x00000001u; /* 0285861C */ if (_t202) goto L_02858620; // else: addr-0 trap, fall-through L_02858620: ; // 0x2858620 /* 02858620 */ _t203 = cpu->r[1] + 0x0000002Cu; /* 02858620 */ cpu->r[0] = rbrew_read32(cpu->mem, _t203); /* 02858624 */ cpu->lr = cpu->r[0]; /* 02858628 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 0285862C */ return; L_02858630: ; // 0x2858630 /* 02858630 */ _t204 = cpu->r[1] + 0x0000000Cu; /* 02858630 */ cpu->r[29] = rbrew_read32(cpu->mem, _t204); /* 02858634 */ _t205 = cpu->r[1] + 0x00000020u; /* 02858634 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t205); /* 02858638 */ _t206 = cpu->r[1] + 0x00000014u; /* 02858638 */ cpu->r[31] = rbrew_read32(cpu->mem, _t206); /* 0285863C */ _t207 = cpu->r[1] + 0x00000018u; /* 0285863C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t207); /* 02858640 */ _t208 = cpu->r[1] + 0x00000010u; /* 02858640 */ cpu->r[30] = rbrew_read32(cpu->mem, _t208); /* 02858644 */ cpu->r[3] = 0x00000000u; /* 02858648 */ _t209 = cpu->cr[0] >> (0x00000003u & 31u); /* 02858648 */ _t210 = _t209 & 0x00000001u; /* 02858648 */ if (_t210) goto L_0285864C; // else: addr-0 trap, fall-through L_0285864C: ; // 0x285864c /* 0285864C */ _t211 = cpu->r[1] + 0x0000002Cu; /* 0285864C */ cpu->r[0] = rbrew_read32(cpu->mem, _t211); /* 02858650 */ cpu->lr = cpu->r[0]; /* 02858654 */ cpu->r[1] = cpu->r[1] + 0x00000028u; /* 02858658 */ return; } // fn_027C097C @ 0x27c097c void Gambit_fn_027C097C(CPUState* cpu) { uint32_t _t0, _t1; L_027C097C: ; // 0x27c097c /* 027C097C */ cpu->r[0] = cpu->r[4] + 0xFFFFFFFFu; /* 027C0980 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x00000004u); /* 027C0984 */ cpu->r[0] = 0x00000000u; /* 027C0988 */ _t0 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0988 */ _t1 = _t0 & 0x00000001u; /* 027C0988 */ if (_t1) goto L_027C098C; else goto L_027C0990; L_027C098C: ; // 0x27c098c /* 027C098C */ cpu->r[0] = 0x00000001u; L_027C0990: ; // 0x27c0990 /* 027C0990 */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C0994 */ return; } // fn_027C0998 @ 0x27c0998 void Gambit_fn_027C0998(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5; L_027C0998: ; // 0x27c0998 /* 027C0998 */ _t0 = cpu->r[4] + 0x00000002u; /* 027C0998 */ cpu->r[0] = rbrew_read16(cpu->mem, _t0); /* 027C099C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u); /* 027C09A0 */ cpu->r[12] = 0x00000000u; /* 027C09A4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C09A4 */ _t2 = _t1 & 0x00000001u; /* 027C09A4 */ if (_t2) goto L_027C09A8; else goto L_027C09B8; L_027C09A8: ; // 0x27c09a8 /* 027C09A8 */ _t3 = cpu->r[4] + 0x00000004u; /* 027C09A8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t3); /* 027C09AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000007u); /* 027C09B0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C09B0 */ _t5 = _t4 & 0x00000001u; /* 027C09B0 */ if (_t5) goto L_027C09B4; else goto L_027C09B8; L_027C09B4: ; // 0x27c09b4 /* 027C09B4 */ cpu->r[12] = 0x00000001u; L_027C09B8: ; // 0x27c09b8 /* 027C09B8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C09BC */ return; } // fn_027C09C0 @ 0x27c09c0 void Gambit_fn_027C09C0(CPUState* cpu) { uint32_t _t0; L_027C09C0: ; // 0x27c09c0 /* 027C09C0 */ _t0 = cpu->r[4] + 0x00000002u; /* 027C09C0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t0); /* 027C09C4 */ cpu->r[0] = cpu->r[0] ^ 0x00000002u; /* 027C09C8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]); /* 027C09CC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu); /* 027C09D0 */ return; } // fn_027C09D8 @ 0x27c09d8 void Gambit_fn_027C09D8(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_027C09D8: ; // 0x27c09d8 /* 027C09D8 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027C09D8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C09D8 */ cpu->r[1] = _t0; /* 027C09DC */ _t1 = cpu->r[1] + 0x00000014u; /* 027C09DC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027C09E0 */ _t2 = cpu->r[1] + 0x00000018u; /* 027C09E0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C09E4 */ _t3 = cpu->r[1] + 0x0000001Cu; /* 027C09E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C09E8 */ _t4 = cpu->r[1] + 0x00000024u; /* 027C09E8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027C09EC */ cpu->r[29] = cpu->r[3]; /* 027C09F0 */ _t5 = cpu->r[29] + 0x0000000Cu; /* 027C09F0 */ cpu->r[10] = rbrew_read8(cpu->mem, _t5); /* 027C09F4 */ cpu->r[30] = cpu->r[6]; /* 027C09F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027C09FC */ cpu->r[31] = cpu->r[7]; /* 027C0A00 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0A00 */ _t7 = _t6 & 0x00000001u; /* 027C0A00 */ if (_t7) goto L_027C0A04; else goto L_027C0A24; L_027C0A04: ; // 0x27c0a04 /* 027C0A04 */ _t8 = cpu->r[30] + 0x00000000u; /* 027C0A04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027C0A08 */ _t9 = cpu->r[11] + 0x0000000Cu; /* 027C0A08 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t9); /* 027C0A0C */ _t10 = cpu->r[29] + 0x00000010u; /* 027C0A0C */ rbrew_write_f32(cpu->mem, _t10, cpu->f[0]); /* 027C0A10 */ _t11 = cpu->r[30] + 0x00000000u; /* 027C0A10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t11); /* 027C0A14 */ cpu->r[12] = 0x00000001u; /* 027C0A18 */ _t12 = cpu->r[11] + 0x00000010u; /* 027C0A18 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t12); /* 027C0A1C */ _t13 = cpu->r[29] + 0x0000000Cu; /* 027C0A1C */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[12]); /* 027C0A20 */ _t14 = cpu->r[29] + 0x00000014u; /* 027C0A20 */ rbrew_write_f32(cpu->mem, _t14, cpu->f[12]); L_027C0A24: ; // 0x27c0a24 /* 027C0A24 */ cpu->r[3] = cpu->r[5]; /* 027C0A28 */ Gambit_fn_027C2764(cpu); /* 027C0A2C */ _t15 = cpu->r[30] + 0x00000004u; /* 027C0A2C */ rbrew_write32(cpu->mem, _t15, cpu->r[31]); /* 027C0A30 */ cpu->r[9] = 0x10110000u; /* 027C0A34 */ _t16 = cpu->r[3] + 0x00000000u; /* 027C0A34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027C0A38 */ cpu->r[5] = 0x43300000u; /* 027C0A3C */ _t17 = cpu->r[9] + 0xFFFFBF38u; /* 027C0A3C */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t17); /* 027C0A40 */ cpu->r[0] = cpu->r[0] ^ 0x80000000u; /* 027C0A44 */ _t18 = cpu->r[1] + 0x00000008u; /* 027C0A44 */ rbrew_write32(cpu->mem, _t18, cpu->r[5]); /* 027C0A48 */ _t19 = cpu->r[1] + 0x0000000Cu; /* 027C0A48 */ rbrew_write32(cpu->mem, _t19, cpu->r[0]); /* 027C0A4C */ _t20 = cpu->r[1] + 0x00000008u; /* 027C0A4C */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t20); /* 027C0A50 */ _t21 = cpu->r[30] + 0x00000000u; /* 027C0A50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t21); /* 027C0A54 */ cpu->f[0] = cpu->f[13] - cpu->f[0]; /* 027C0A58 */ cpu->r[7] = 0x10110000u; /* 027C0A5C */ cpu->f[0] = (double)(float)cpu->f[0]; /* 027C0A60 */ _t22 = cpu->r[7] + 0xFFFFBF30u; /* 027C0A60 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t22); /* 027C0A64 */ cpu->f[13] = cpu->f[0] / cpu->f[13]; /* 027C0A68 */ _t23 = cpu->r[29] + 0x00000010u; /* 027C0A68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t23); /* 027C0A6C */ cpu->f[12] = cpu->f[12] * cpu->f[13]; /* 027C0A70 */ _t24 = cpu->r[29] + 0x00000014u; /* 027C0A70 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t24); /* 027C0A74 */ _t25 = cpu->r[8] + 0x0000000Cu; /* 027C0A74 */ rbrew_write_f32(cpu->mem, _t25, cpu->f[12]); /* 027C0A78 */ _t26 = cpu->r[8] + 0x00000010u; /* 027C0A78 */ rbrew_write_f32(cpu->mem, _t26, cpu->f[13]); /* 027C0A7C */ _t27 = cpu->r[1] + 0x00000014u; /* 027C0A7C */ cpu->r[29] = rbrew_read32(cpu->mem, _t27); /* 027C0A80 */ _t28 = cpu->r[1] + 0x00000024u; /* 027C0A80 */ cpu->r[0] = rbrew_read32(cpu->mem, _t28); /* 027C0A84 */ _t29 = cpu->r[1] + 0x00000018u; /* 027C0A84 */ cpu->r[30] = rbrew_read32(cpu->mem, _t29); /* 027C0A88 */ cpu->lr = cpu->r[0]; /* 027C0A8C */ _t30 = cpu->r[1] + 0x0000001Cu; /* 027C0A8C */ cpu->r[31] = rbrew_read32(cpu->mem, _t30); /* 027C0A90 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027C0A94 */ cpu->r[3] = 0x00000001u; /* 027C0A98 */ return; } // fn_027C0A9C @ 0x27c0a9c void Gambit_fn_027C0A9C(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; L_027C0A9C: ; // 0x27c0a9c /* 027C0A9C */ _t0 = cpu->r[1] + 0xFFFFFE98u; /* 027C0A9C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C0A9C */ cpu->r[1] = _t0; /* 027C0AA0 */ _t1 = cpu->r[1] + 0x00000128u; /* 027C0AA0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[28]); /* 027C0AA4 */ /* nop */ /* 027C0AA8 */ _t2 = cpu->r[1] + 0x00000130u; /* 027C0AA8 */ rbrew_write_f32(cpu->mem, _t2, cpu->f[28]); /* 027C0AAC */ cpu->r[0] = cpu->lr; /* 027C0AB0 */ _t3 = cpu->r[1] + 0x00000138u; /* 027C0AB0 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]); /* 027C0AB4 */ _t4 = cpu->r[1] + 0x00000148u; /* 027C0AB4 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]); /* 027C0AB8 */ /* nop */ /* 027C0ABC */ _t5 = cpu->r[1] + 0x00000158u; /* 027C0ABC */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]); /* 027C0AC0 */ /* nop */ /* 027C0AC4 */ _t6 = cpu->r[1] + 0x00000140u; /* 027C0AC4 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[29]); /* 027C0AC8 */ /* nop */ /* 027C0ACC */ _t7 = cpu->r[1] + 0x00000150u; /* 027C0ACC */ rbrew_write_f32(cpu->mem, _t7, cpu->f[30]); /* 027C0AD0 */ _t8 = cpu->r[1] + 0x00000160u; /* 027C0AD0 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[31]); /* 027C0AD4 */ _t9 = cpu->r[1] + 0x0000016Cu; /* 027C0AD4 */ rbrew_write32(cpu->mem, _t9, cpu->r[0]); /* 027C0AD8 */ /* nop */ /* 027C0ADC */ cpu->r[25] = cpu->r[7]; /* 027C0AE0 */ cpu->r[26] = cpu->r[6]; /* 027C0AE4 */ cpu->r[29] = cpu->r[3]; /* 027C0AE8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C0AEC */ _t10 = cpu->r[26] + 0x00000004u; /* 027C0AEC */ rbrew_write32(cpu->mem, _t10, cpu->r[25]); /* 027C0AF0 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0AF0 */ _t12 = _t11 & 0x00000001u; /* 027C0AF0 */ if (_t12) goto L_027C0AF4; else goto L_027C0EAC; L_027C0AF4: ; // 0x27c0af4 /* 027C0AF4 */ _t13 = cpu->r[5] + 0x00000008u; /* 027C0AF4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t13); /* 027C0AF8 */ cpu->r[28] = rbrew_rlwinm(cpu->r[0], 0x0000001Fu, 0x00000001u, 0x0000001Fu); /* 027C0AFC */ _t14 = cpu->r[5] + 0x0000000Au; /* 027C0AFC */ cpu->r[12] = rbrew_read16(cpu->mem, _t14); /* 027C0B00 */ cpu->r[0] = cpu->r[28] + 0xFFFFFFFFu; /* 027C0B04 */ cpu->r[5] = cpu->r[5] + 0x0000000Cu; /* 027C0B08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], 0x0000001Fu); /* 027C0B0C */ cpu->r[27] = rbrew_rlwinm(cpu->r[12], 0x0000001Fu, 0x00000001u, 0x0000001Fu); /* 027C0B10 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0B10 */ _t16 = _t15 & 0x00000001u; /* 027C0B10 */ if (_t16) goto L_027C0B14; else goto L_027C0EAC; L_027C0B14: ; // 0x27c0b14 /* 027C0B14 */ cpu->r[10] = cpu->r[27] + 0xFFFFFFFFu; /* 027C0B18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], 0x0000001Fu); /* 027C0B1C */ _t17 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0B1C */ _t18 = _t17 & 0x00000001u; /* 027C0B1C */ if (_t18) goto L_027C0B20; else goto L_027C0EAC; L_027C0B20: ; // 0x27c0b20 /* 027C0B20 */ cpu->r[22] = cpu->r[1] + 0x00000070u; /* 027C0B24 */ cpu->r[31] = 0x10110000u; /* 027C0B28 */ _t19 = cpu->r[1] + 0x00000064u; /* 027C0B28 */ rbrew_write32(cpu->mem, _t19, cpu->r[22]); /* 027C0B2C */ cpu->r[8] = 0x00000020u; /* 027C0B30 */ cpu->r[21] = 0x10110000u; /* 027C0B34 */ _t20 = cpu->r[31] + 0x0000739Au; /* 027C0B34 */ cpu->r[31] = rbrew_read16(cpu->mem, _t20); /* 027C0B38 */ cpu->r[11] = cpu->r[21] + 0xFFFFBCDCu; /* 027C0B3C */ _t21 = cpu->r[1] + 0x0000006Cu; /* 027C0B3C */ rbrew_write32(cpu->mem, _t21, cpu->r[8]); /* 027C0B40 */ cpu->r[24] = 0x10110000u; /* 027C0B44 */ _t22 = cpu->r[1] + 0x000000AEu; /* 027C0B44 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[31]); /* 027C0B48 */ cpu->r[24] = cpu->r[24] + 0xFFFFBD9Cu; /* 027C0B4C */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027C0B4C */ rbrew_write32(cpu->mem, _t23, cpu->r[11]); /* 027C0B50 */ _t24 = cpu->r[1] + 0x00000068u; /* 027C0B50 */ rbrew_write32(cpu->mem, _t24, cpu->r[24]); /* 027C0B54 */ _t25 = cpu->r[1] + 0x00000070u; /* 027C0B54 */ rbrew_write16(cpu->mem, _t25, (uint16_t)cpu->r[31]); /* 027C0B58 */ cpu->r[30] = cpu->r[27]; /* 027C0B58 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C0B5C */ _t26 = cpu->r[1] + 0x00000008u; /* 027C0B5C */ rbrew_write32(cpu->mem, _t26, cpu->r[5]); /* 027C0B60 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0B60 */ _t28 = _t27 & 0x00000001u; /* 027C0B60 */ if (_t28) goto L_027C0B64; else goto L_027C0BB0; L_027C0B64: ; // 0x27c0b64 /* 027C0B64 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C0B68 */ Gambit_fn_027C24B8(cpu); /* 027C0B6C */ _t29 = cpu->r[1] + 0x00000008u; /* 027C0B6C */ cpu->r[10] = rbrew_read32(cpu->mem, _t29); /* 027C0B70 */ _t30 = cpu->r[10] + 0x00000000u; /* 027C0B70 */ cpu->r[11] = rbrew_read16(cpu->mem, _t30); /* 027C0B74 */ cpu->r[30] = 0x00000000u; /* 027C0B78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[31]); /* 027C0B7C */ cpu->r[0] = 0x00080000u; /* 027C0B80 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0B80 */ _t32 = _t31 & 0x00000001u; /* 027C0B80 */ if (_t32) goto L_027C0BA8; else goto L_027C0B84; L_027C0B84: ; // 0x27c0b84 /* 027C0B84 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027C0B88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027C0B8C */ cpu->r[10] = cpu->r[10] + 0x00000002u; /* 027C0B90 */ _t33 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0B90 */ _t34 = _t33 & 0x00000001u; /* 027C0B90 */ if (_t34) goto L_027C0BA4; else goto L_027C0B94; L_027C0B94: ; // 0x27c0b94 /* 027C0B94 */ _t35 = cpu->r[10] + 0x00000000u; /* 027C0B94 */ cpu->r[12] = rbrew_read16(cpu->mem, _t35); /* 027C0B98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027C0B9C */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0B9C */ _t37 = _t36 & 0x00000001u; /* 027C0B9C */ if (_t37) goto L_027C0BA0; else goto L_027C0B84; L_027C0BA0: ; // 0x27c0ba0 /* 027C0BA0 */ goto L_027C0BA8; L_027C0BA4: ; // 0x27c0ba4 /* 027C0BA4 */ cpu->r[30] = 0x00000000u; L_027C0BA8: ; // 0x27c0ba8 /* 027C0BA8 */ _t38 = cpu->r[1] + 0x0000006Cu; /* 027C0BA8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t38); /* 027C0BAC */ _t39 = cpu->r[1] + 0x0000000Cu; /* 027C0BAC */ cpu->r[11] = rbrew_read32(cpu->mem, _t39); L_027C0BB0: ; // 0x27c0bb0 /* 027C0BB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[8]); /* 027C0BB4 */ _t40 = cpu->r[11] + 0x00000014u; /* 027C0BB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027C0BB8 */ _t41 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0BB8 */ _t42 = _t41 & 0x00000001u; /* 027C0BB8 */ if (_t42) goto L_027C0BC0; else goto L_027C0BBC; L_027C0BBC: ; // 0x27c0bbc /* 027C0BBC */ cpu->r[30] = cpu->r[8] + 0xFFFFFFFFu; L_027C0BC0: ; // 0x27c0bc0 /* 027C0BC0 */ cpu->ctr = cpu->r[0]; /* 027C0BC4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C0BC8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0BCC */ _t43 = cpu->r[1] + 0x00000008u; /* 027C0BCC */ cpu->r[4] = rbrew_read32(cpu->mem, _t43); /* 027C0BD0 */ cpu->r[3] = cpu->r[22]; /* 027C0BD4 */ cpu->r[5] = rbrew_rlwinm(cpu->r[30], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0BD8 */ cpu->r[6] = 0x00000000u; /* 027C0BDC */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C0BE0 */ _t44 = cpu->r[1] + 0x000000FAu; /* 027C0BE0 */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[31]); /* 027C0BE4 */ cpu->r[23] = cpu->r[1] + 0x000000BCu; /* 027C0BE8 */ _t45 = cpu->r[1] + 0x00000008u; /* 027C0BE8 */ rbrew_write32(cpu->mem, _t45, cpu->r[25]); /* 027C0BEC */ cpu->r[10] = 0x00000020u; /* 027C0BF0 */ _t46 = cpu->r[1] + 0x000000B4u; /* 027C0BF0 */ rbrew_write32(cpu->mem, _t46, cpu->r[24]); /* 027C0BF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027C0BF8 */ _t47 = cpu->r[1] + 0x000000B8u; /* 027C0BF8 */ rbrew_write32(cpu->mem, _t47, cpu->r[10]); /* 027C0BFC */ cpu->r[11] = cpu->r[21] + 0xFFFFBCDCu; /* 027C0C00 */ _t48 = cpu->r[1] + 0x000000B0u; /* 027C0C00 */ rbrew_write32(cpu->mem, _t48, cpu->r[23]); /* 027C0C04 */ cpu->r[8] = rbrew_rlwinm(cpu->r[30], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0C08 */ _t49 = cpu->r[8] + cpu->r[22]; /* 027C0C08 */ rbrew_write16(cpu->mem, _t49, (uint16_t)cpu->r[31]); /* 027C0C0C */ _t50 = cpu->r[1] + 0x000000BCu; /* 027C0C0C */ rbrew_write16(cpu->mem, _t50, (uint16_t)cpu->r[31]); /* 027C0C10 */ cpu->r[30] = cpu->r[28]; /* 027C0C14 */ _t51 = cpu->r[1] + 0x0000000Cu; /* 027C0C14 */ rbrew_write32(cpu->mem, _t51, cpu->r[11]); /* 027C0C18 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0C18 */ _t53 = _t52 & 0x00000001u; /* 027C0C18 */ if (_t53) goto L_027C0C1C; else goto L_027C0C68; L_027C0C1C: ; // 0x27c0c1c /* 027C0C1C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C0C20 */ Gambit_fn_027C24B8(cpu); /* 027C0C24 */ _t54 = cpu->r[1] + 0x00000008u; /* 027C0C24 */ cpu->r[7] = rbrew_read32(cpu->mem, _t54); /* 027C0C28 */ _t55 = cpu->r[7] + 0x00000000u; /* 027C0C28 */ cpu->r[9] = rbrew_read16(cpu->mem, _t55); /* 027C0C2C */ cpu->r[30] = 0x00000000u; /* 027C0C30 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[31]); /* 027C0C34 */ cpu->r[0] = 0x00080000u; /* 027C0C38 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0C38 */ _t57 = _t56 & 0x00000001u; /* 027C0C38 */ if (_t57) goto L_027C0C60; else goto L_027C0C3C; L_027C0C3C: ; // 0x27c0c3c /* 027C0C3C */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027C0C40 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027C0C44 */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027C0C48 */ _t58 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0C48 */ _t59 = _t58 & 0x00000001u; /* 027C0C48 */ if (_t59) goto L_027C0C5C; else goto L_027C0C4C; L_027C0C4C: ; // 0x27c0c4c /* 027C0C4C */ _t60 = cpu->r[7] + 0x00000000u; /* 027C0C4C */ cpu->r[10] = rbrew_read16(cpu->mem, _t60); /* 027C0C50 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[31]); /* 027C0C54 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0C54 */ _t62 = _t61 & 0x00000001u; /* 027C0C54 */ if (_t62) goto L_027C0C58; else goto L_027C0C3C; L_027C0C58: ; // 0x27c0c58 /* 027C0C58 */ goto L_027C0C60; L_027C0C5C: ; // 0x27c0c5c /* 027C0C5C */ cpu->r[30] = 0x00000000u; L_027C0C60: ; // 0x27c0c60 /* 027C0C60 */ _t63 = cpu->r[1] + 0x000000B8u; /* 027C0C60 */ cpu->r[10] = rbrew_read32(cpu->mem, _t63); /* 027C0C64 */ _t64 = cpu->r[1] + 0x0000000Cu; /* 027C0C64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t64); L_027C0C68: ; // 0x27c0c68 /* 027C0C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[10]); /* 027C0C6C */ _t65 = cpu->r[11] + 0x00000014u; /* 027C0C6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t65); /* 027C0C70 */ _t66 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0C70 */ _t67 = _t66 & 0x00000001u; /* 027C0C70 */ if (_t67) goto L_027C0C78; else goto L_027C0C74; L_027C0C74: ; // 0x27c0c74 /* 027C0C74 */ cpu->r[30] = cpu->r[10] + 0xFFFFFFFFu; L_027C0C78: ; // 0x27c0c78 /* 027C0C78 */ cpu->ctr = cpu->r[0]; /* 027C0C7C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C0C80 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0C84 */ _t68 = cpu->r[1] + 0x00000008u; /* 027C0C84 */ cpu->r[4] = rbrew_read32(cpu->mem, _t68); /* 027C0C88 */ cpu->r[6] = 0x00000000u; /* 027C0C8C */ cpu->r[5] = rbrew_rlwinm(cpu->r[30], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0C90 */ cpu->r[3] = cpu->r[23]; /* 027C0C94 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C0C98 */ _t69 = cpu->r[26] + 0x00000000u; /* 027C0C98 */ cpu->r[26] = rbrew_read32(cpu->mem, _t69); /* 027C0C9C */ cpu->r[12] = rbrew_rlwinm(cpu->r[30], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C0CA0 */ cpu->r[3] = cpu->r[26]; /* 027C0CA4 */ _t70 = cpu->r[12] + cpu->r[23]; /* 027C0CA4 */ rbrew_write16(cpu->mem, _t70, (uint16_t)cpu->r[31]); /* 027C0CA8 */ Gambit_fn_028544B0(cpu); /* 027C0CAC */ cpu->r[3] = cpu->r[26]; /* 027C0CB0 */ cpu->f[28] = cpu->f[1]; /* 027C0CB4 */ Gambit_fn_02854518(cpu); /* 027C0CB8 */ cpu->r[9] = 0x00000013u; /* 027C0CBC */ cpu->f[29] = cpu->f[1]; /* 027C0CC0 */ cpu->r[8] = cpu->r[1] + 0x00000014u; /* 027C0CC4 */ cpu->ctr = cpu->r[9]; /* 027C0CC8 */ cpu->r[7] = cpu->r[26] + 0xFFFFFFFCu; L_027C0CCC: ; // 0x27c0ccc /* 027C0CCC */ _t71 = cpu->r[7] + 0x00000004u; /* 027C0CCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t71); /* 027C0CCC */ cpu->r[7] = _t71; /* 027C0CD0 */ _t72 = cpu->r[8] + 0x00000004u; /* 027C0CD0 */ rbrew_write32(cpu->mem, _t72, cpu->r[10]); /* 027C0CD0 */ cpu->r[8] = _t72; /* 027C0CD4 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C0CD4 */ _t73 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C0CD4 */ _t74 = _t73 >> (0x00000002u & 31u); /* 027C0CD4 */ _t75 = _t74 & 0x00000001u; /* 027C0CD4 */ if (_t75) goto L_027C0CCC; else goto L_027C0CD8; L_027C0CD8: ; // 0x27c0cd8 /* 027C0CD8 */ cpu->r[3] = 0x101D0000u; /* 027C0CDC */ _t76 = cpu->r[3] + 0xFFFF93D0u; /* 027C0CDC */ cpu->r[3] = rbrew_read32(cpu->mem, _t76); /* 027C0CE0 */ _t77 = cpu->r[3] + 0x00000000u; /* 027C0CE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t77); /* 027C0CE4 */ _t78 = cpu->r[11] + 0x0000003Cu; /* 027C0CE4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t78); /* 027C0CE8 */ cpu->ctr = cpu->r[12]; /* 027C0CEC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0CF0 */ Gambit_fn_027B1F84(cpu); /* 027C0CF4 */ cpu->r[9] = 0x10110000u; /* 027C0CF8 */ cpu->r[6] = 0x10110000u; /* 027C0CFC */ _t79 = cpu->r[9] + 0xFFFFBF48u; /* 027C0CFC */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t79); /* 027C0D00 */ cpu->r[11] = 0x10110000u; /* 027C0D04 */ _t80 = cpu->r[1] + 0x00000040u; /* 027C0D04 */ rbrew_write32(cpu->mem, _t80, cpu->r[3]); /* 027C0D08 */ _t81 = cpu->r[6] + 0xFFFFBF40u; /* 027C0D08 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t81); /* 027C0D0C */ cpu->f[2] = cpu->f[29] * cpu->f[13]; /* 027C0D10 */ _t82 = cpu->r[11] + 0xFFFFBF44u; /* 027C0D10 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t82); /* 027C0D14 */ cpu->r[0] = 0x00000300u; /* 027C0D18 */ _t83 = cpu->r[1] + 0x00000054u; /* 027C0D18 */ rbrew_write_f32(cpu->mem, _t83, cpu->f[31]); /* 027C0D1C */ cpu->f[1] = cpu->f[28] * cpu->f[13]; /* 027C0D20 */ _t84 = cpu->r[1] + 0x00000050u; /* 027C0D20 */ rbrew_write_f32(cpu->mem, _t84, cpu->f[30]); /* 027C0D24 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027C0D28 */ _t85 = cpu->r[1] + 0x0000005Cu; /* 027C0D28 */ rbrew_write32(cpu->mem, _t85, cpu->r[0]); /* 027C0D2C */ Gambit_fn_028543D0(cpu); /* 027C0D30 */ _t86 = cpu->r[1] + 0x000000B4u; /* 027C0D30 */ cpu->r[5] = rbrew_read32(cpu->mem, _t86); /* 027C0D34 */ _t87 = cpu->r[1] + 0x00000060u; /* 027C0D34 */ rbrew_write32(cpu->mem, _t87, cpu->r[29]); /* 027C0D38 */ _t88 = cpu->r[5] + 0x00000014u; /* 027C0D38 */ cpu->r[6] = rbrew_read32(cpu->mem, _t88); /* 027C0D3C */ cpu->ctr = cpu->r[6]; /* 027C0D40 */ cpu->r[3] = cpu->r[1] + 0x000000B0u; /* 027C0D44 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0D48 */ _t89 = cpu->r[1] + 0x000000B0u; /* 027C0D48 */ cpu->r[4] = rbrew_read32(cpu->mem, _t89); /* 027C0D4C */ cpu->r[5] = cpu->r[28]; /* 027C0D50 */ cpu->r[3] = cpu->r[26]; /* 027C0D54 */ Gambit_fn_02858F88(cpu); /* 027C0D58 */ _t90 = cpu->r[1] + 0x00000068u; /* 027C0D58 */ cpu->r[9] = rbrew_read32(cpu->mem, _t90); /* 027C0D5C */ _t91 = cpu->r[9] + 0x00000014u; /* 027C0D5C */ cpu->r[5] = rbrew_read32(cpu->mem, _t91); /* 027C0D60 */ cpu->ctr = cpu->r[5]; /* 027C0D64 */ cpu->f[29] = cpu->f[1]; /* 027C0D68 */ cpu->r[3] = cpu->r[1] + 0x00000064u; /* 027C0D6C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0D70 */ _t92 = cpu->r[1] + 0x00000064u; /* 027C0D70 */ cpu->r[4] = rbrew_read32(cpu->mem, _t92); /* 027C0D74 */ cpu->r[5] = cpu->r[27]; /* 027C0D78 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027C0D7C */ Gambit_fn_02858F88(cpu); /* 027C0D80 */ cpu->r[9] = 0x10110000u; /* 027C0D84 */ cpu->r[7] = 0x43300000u; /* 027C0D88 */ _t93 = cpu->r[9] + 0xFFFFBF38u; /* 027C0D88 */ cpu->f[11] = rbrew_read_f64(cpu->mem, _t93); /* 027C0D8C */ cpu->r[0] = cpu->r[28] ^ 0x80000000u; /* 027C0D90 */ _t94 = cpu->r[1] + 0x00000010u; /* 027C0D90 */ rbrew_write32(cpu->mem, _t94, cpu->r[7]); /* 027C0D94 */ _t95 = cpu->r[1] + 0x00000014u; /* 027C0D94 */ rbrew_write32(cpu->mem, _t95, cpu->r[0]); /* 027C0D98 */ _t96 = cpu->r[1] + 0x00000010u; /* 027C0D98 */ cpu->f[8] = rbrew_read_f64(cpu->mem, _t96); /* 027C0D9C */ cpu->f[10] = cpu->f[8] - cpu->f[11]; /* 027C0DA0 */ cpu->f[9] = (double)(float)cpu->f[10]; /* 027C0DA4 */ cpu->f[8] = cpu->f[9] - cpu->f[1]; /* 027C0DA8 */ cpu->cr[0] = rbrew_cmp_f64(cpu->f[8], cpu->f[31]); /* 027C0DAC */ _t97 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C0DAC */ _t98 = _t97 & 0x00000001u; /* 027C0DAC */ if (_t98) goto L_027C0DB0; else goto L_027C0E44; L_027C0DB0: ; // 0x27c0db0 /* 027C0DB0 */ cpu->r[8] = 0x10110000u; /* 027C0DB4 */ cpu->r[12] = 0x43300000u; /* 027C0DB8 */ cpu->r[6] = cpu->r[27] + 0x00000001u; /* 027C0DBC */ _t99 = cpu->r[8] + 0xFFFFBF38u; /* 027C0DBC */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t99); /* 027C0DC0 */ cpu->r[0] = cpu->r[6] ^ 0x80000000u; /* 027C0DC4 */ _t100 = cpu->r[1] + 0x00000010u; /* 027C0DC4 */ rbrew_write32(cpu->mem, _t100, cpu->r[12]); /* 027C0DC8 */ _t101 = cpu->r[1] + 0x00000014u; /* 027C0DC8 */ rbrew_write32(cpu->mem, _t101, cpu->r[0]); /* 027C0DCC */ _t102 = cpu->r[1] + 0x00000010u; /* 027C0DCC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t102); /* 027C0DD0 */ cpu->f[9] = cpu->f[13] - cpu->f[0]; /* 027C0DD4 */ cpu->f[11] = (double)(float)cpu->f[9]; /* 027C0DD8 */ cpu->f[12] = cpu->f[8] / cpu->f[11]; /* 027C0DDC */ _t103 = cpu->r[1] + 0x0000002Cu; /* 027C0DDC */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t103); /* 027C0DE0 */ cpu->f[10] = cpu->f[10] + cpu->f[12]; /* 027C0DE4 */ cpu->f[11] = cpu->f[12] + cpu->f[30]; /* 027C0DE8 */ _t104 = cpu->r[1] + 0x0000002Cu; /* 027C0DE8 */ rbrew_write_f32(cpu->mem, _t104, cpu->f[10]); /* 027C0DEC */ cpu->r[3] = cpu->r[26]; /* 027C0DF0 */ _t105 = cpu->r[1] + 0x00000050u; /* 027C0DF0 */ rbrew_write_f32(cpu->mem, _t105, cpu->f[11]); /* 027C0DF4 */ Gambit_fn_02854580(cpu); /* 027C0DF8 */ cpu->r[6] = 0x10110000u; /* 027C0DFC */ _t106 = cpu->r[6] + 0xFFFFBF50u; /* 027C0DFC */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t106); /* 027C0E00 */ _t107 = cpu->r[1] + 0x00000030u; /* 027C0E00 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t107); /* 027C0E04 */ cpu->f[9] = cpu->f[12] - cpu->f[1]; /* 027C0E08 */ cpu->f[0] = cpu->f[0] + cpu->f[9]; /* 027C0E0C */ _t108 = cpu->r[1] + 0x00000068u; /* 027C0E0C */ cpu->r[5] = rbrew_read32(cpu->mem, _t108); /* 027C0E10 */ _t109 = cpu->r[1] + 0x00000030u; /* 027C0E10 */ rbrew_write_f32(cpu->mem, _t109, cpu->f[0]); /* 027C0E14 */ _t110 = cpu->r[5] + 0x00000014u; /* 027C0E14 */ cpu->r[7] = rbrew_read32(cpu->mem, _t110); /* 027C0E18 */ cpu->ctr = cpu->r[7]; /* 027C0E1C */ cpu->r[3] = cpu->r[1] + 0x00000064u; /* 027C0E20 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0E24 */ _t111 = cpu->r[1] + 0x00000064u; /* 027C0E24 */ cpu->r[4] = rbrew_read32(cpu->mem, _t111); /* 027C0E28 */ cpu->r[5] = cpu->r[27]; /* 027C0E2C */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027C0E30 */ Gambit_fn_02859A44(cpu); /* 027C0E34 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027C0E38 */ cpu->r[4] = 0x00000002u; /* 027C0E3C */ Gambit_fn_02858758(cpu); /* 027C0E40 */ goto L_027C0EAC; L_027C0E44: ; // 0x27c0e44 /* 027C0E44 */ _t112 = cpu->r[1] + 0x0000002Cu; /* 027C0E44 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t112); /* 027C0E48 */ cpu->r[7] = 0x10110000u; /* 027C0E4C */ cpu->f[12] = cpu->f[29] - cpu->f[1]; /* 027C0E50 */ _t113 = cpu->r[7] + 0xFFFFBF4Cu; /* 027C0E50 */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t113); /* 027C0E54 */ cpu->f[13] = fma(cpu->f[12], cpu->f[10], cpu->f[13]); /* 027C0E58 */ cpu->r[3] = cpu->r[26]; /* 027C0E5C */ _t114 = cpu->r[1] + 0x0000002Cu; /* 027C0E5C */ rbrew_write_f32(cpu->mem, _t114, cpu->f[13]); /* 027C0E60 */ Gambit_fn_02854580(cpu); /* 027C0E64 */ cpu->r[6] = 0x10110000u; /* 027C0E68 */ _t115 = cpu->r[6] + 0xFFFFBF50u; /* 027C0E68 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t115); /* 027C0E6C */ _t116 = cpu->r[1] + 0x00000030u; /* 027C0E6C */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t116); /* 027C0E70 */ cpu->f[9] = cpu->f[12] - cpu->f[1]; /* 027C0E74 */ cpu->f[0] = cpu->f[0] + cpu->f[9]; /* 027C0E78 */ _t117 = cpu->r[1] + 0x00000068u; /* 027C0E78 */ cpu->r[5] = rbrew_read32(cpu->mem, _t117); /* 027C0E7C */ _t118 = cpu->r[1] + 0x00000030u; /* 027C0E7C */ rbrew_write_f32(cpu->mem, _t118, cpu->f[0]); /* 027C0E80 */ _t119 = cpu->r[5] + 0x00000014u; /* 027C0E80 */ cpu->r[7] = rbrew_read32(cpu->mem, _t119); /* 027C0E84 */ cpu->ctr = cpu->r[7]; /* 027C0E88 */ cpu->r[3] = cpu->r[1] + 0x00000064u; /* 027C0E8C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0E90 */ _t120 = cpu->r[1] + 0x00000064u; /* 027C0E90 */ cpu->r[4] = rbrew_read32(cpu->mem, _t120); /* 027C0E94 */ cpu->r[5] = cpu->r[27]; /* 027C0E98 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027C0E9C */ Gambit_fn_02859A44(cpu); /* 027C0EA0 */ cpu->r[4] = 0x00000002u; /* 027C0EA4 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027C0EA8 */ Gambit_fn_02858758(cpu); L_027C0EAC: ; // 0x27c0eac /* 027C0EAC */ /* nop */ /* 027C0EB0 */ _t121 = cpu->r[1] + 0x00000150u; /* 027C0EB0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t121); /* 027C0EB4 */ _t122 = cpu->r[1] + 0x00000160u; /* 027C0EB4 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t122); /* 027C0EB8 */ _t123 = cpu->r[1] + 0x00000148u; /* 027C0EB8 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t123); /* 027C0EBC */ _t124 = cpu->r[1] + 0x00000158u; /* 027C0EBC */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t124); /* 027C0EC0 */ _t125 = cpu->r[1] + 0x00000130u; /* 027C0EC0 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t125); /* 027C0EC4 */ _t126 = cpu->r[1] + 0x00000140u; /* 027C0EC4 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t126); /* 027C0EC8 */ _t127 = cpu->r[1] + 0x00000128u; /* 027C0EC8 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t127); /* 027C0ECC */ _t128 = cpu->r[1] + 0x00000138u; /* 027C0ECC */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t128); /* 027C0ED0 */ cpu->r[3] = 0x00000001u; /* 027C0ED4 */ _t129 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0ED4 */ _t130 = _t129 & 0x00000001u; /* 027C0ED4 */ if (_t130) goto L_027C0ED8; // else: addr-0 trap, fall-through L_027C0ED8: ; // 0x27c0ed8 /* 027C0ED8 */ _t131 = cpu->r[1] + 0x0000016Cu; /* 027C0ED8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t131); /* 027C0EDC */ cpu->lr = cpu->r[0]; /* 027C0EE0 */ cpu->r[1] = cpu->r[1] + 0x00000168u; /* 027C0EE4 */ return; } // fn_027C0EE8 @ 0x27c0ee8 void Gambit_fn_027C0EE8(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; L_027C0EE8: ; // 0x27c0ee8 /* 027C0EE8 */ _t0 = cpu->r[1] + 0xFFFFFED8u; /* 027C0EE8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C0EE8 */ cpu->r[1] = _t0; /* 027C0EEC */ /* nop */ /* 027C0EF0 */ _t1 = cpu->r[1] + 0x000000D8u; /* 027C0EF0 */ rbrew_write_f64(cpu->mem, _t1, cpu->f[27]); /* 027C0EF4 */ _t2 = cpu->r[1] + 0x000000E8u; /* 027C0EF4 */ rbrew_write_f64(cpu->mem, _t2, cpu->f[28]); /* 027C0EF8 */ _t3 = cpu->r[1] + 0x000000F8u; /* 027C0EF8 */ rbrew_write_f64(cpu->mem, _t3, cpu->f[29]); /* 027C0EFC */ /* nop */ /* 027C0F00 */ _t4 = cpu->r[1] + 0x00000108u; /* 027C0F00 */ rbrew_write_f64(cpu->mem, _t4, cpu->f[30]); /* 027C0F04 */ _t5 = cpu->r[1] + 0x00000118u; /* 027C0F04 */ rbrew_write_f64(cpu->mem, _t5, cpu->f[31]); /* 027C0F08 */ /* nop */ /* 027C0F0C */ cpu->r[0] = cpu->lr; /* 027C0F10 */ /* nop */ /* 027C0F14 */ /* nop */ /* 027C0F18 */ _t6 = cpu->r[1] + 0x000000E0u; /* 027C0F18 */ rbrew_write_f32(cpu->mem, _t6, cpu->f[27]); /* 027C0F1C */ _t7 = cpu->r[1] + 0x000000F0u; /* 027C0F1C */ rbrew_write_f32(cpu->mem, _t7, cpu->f[28]); /* 027C0F20 */ _t8 = cpu->r[1] + 0x00000100u; /* 027C0F20 */ rbrew_write_f32(cpu->mem, _t8, cpu->f[29]); /* 027C0F24 */ _t9 = cpu->r[1] + 0x00000110u; /* 027C0F24 */ rbrew_write_f32(cpu->mem, _t9, cpu->f[30]); /* 027C0F28 */ /* nop */ /* 027C0F2C */ _t10 = cpu->r[1] + 0x0000012Cu; /* 027C0F2C */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027C0F30 */ _t11 = cpu->r[1] + 0x00000120u; /* 027C0F30 */ rbrew_write_f32(cpu->mem, _t11, cpu->f[31]); /* 027C0F34 */ cpu->r[29] = cpu->r[6]; /* 027C0F38 */ _t12 = cpu->r[29] + 0x00000004u; /* 027C0F38 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]); /* 027C0F3C */ _t13 = cpu->r[3] + 0x00000000u; /* 027C0F3C */ cpu->r[9] = rbrew_read32(cpu->mem, _t13); /* 027C0F40 */ _t14 = cpu->r[9] + 0x000000ACu; /* 027C0F40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027C0F44 */ cpu->r[23] = cpu->r[5]; /* 027C0F48 */ cpu->r[28] = cpu->r[4]; /* 027C0F4C */ cpu->ctr = cpu->r[0]; /* 027C0F50 */ cpu->r[4] = cpu->r[23]; /* 027C0F54 */ cpu->r[22] = cpu->r[3]; /* 027C0F58 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C0F5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C0F60 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C0F60 */ _t16 = _t15 & 0x00000001u; /* 027C0F60 */ if (_t16) goto L_027C0F64; else goto L_027C0FA8; L_027C0F64: ; // 0x27c0f64 /* 027C0F64 */ /* nop */ /* 027C0F68 */ _t17 = cpu->r[1] + 0x00000110u; /* 027C0F68 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t17); /* 027C0F6C */ _t18 = cpu->r[1] + 0x00000100u; /* 027C0F6C */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t18); /* 027C0F70 */ _t19 = cpu->r[1] + 0x00000108u; /* 027C0F70 */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t19); /* 027C0F74 */ _t20 = cpu->r[1] + 0x00000120u; /* 027C0F74 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t20); /* 027C0F78 */ _t21 = cpu->r[1] + 0x000000F8u; /* 027C0F78 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t21); /* 027C0F7C */ _t22 = cpu->r[1] + 0x00000118u; /* 027C0F7C */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t22); /* 027C0F80 */ _t23 = cpu->r[1] + 0x000000E0u; /* 027C0F80 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t23); /* 027C0F84 */ _t24 = cpu->r[1] + 0x000000F0u; /* 027C0F84 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t24); /* 027C0F88 */ _t25 = cpu->r[1] + 0x000000D8u; /* 027C0F88 */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t25); /* 027C0F8C */ _t26 = cpu->r[1] + 0x000000E8u; /* 027C0F8C */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t26); /* 027C0F90 */ cpu->r[3] = 0x00000001u; /* 027C0F94 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C0F94 */ _t28 = _t27 & 0x00000001u; /* 027C0F94 */ if (_t28) goto L_027C0F98; // else: addr-0 trap, fall-through L_027C0F98: ; // 0x27c0f98 /* 027C0F98 */ _t29 = cpu->r[1] + 0x0000012Cu; /* 027C0F98 */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027C0F9C */ cpu->lr = cpu->r[0]; /* 027C0FA0 */ cpu->r[1] = cpu->r[1] + 0x00000128u; /* 027C0FA4 */ return; L_027C0FA8: ; // 0x27c0fa8 /* 027C0FA8 */ cpu->r[31] = 0x00000001u; /* 027C0FAC */ _t30 = cpu->r[22] + 0x00000020u; /* 027C0FAC */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[31]); /* 027C0FB0 */ _t31 = cpu->r[29] + 0x00000000u; /* 027C0FB0 */ cpu->r[21] = rbrew_read32(cpu->mem, _t31); /* 027C0FB4 */ _t32 = cpu->r[21] + 0x00000028u; /* 027C0FB4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t32); /* 027C0FB8 */ cpu->r[3] = cpu->r[21]; /* 027C0FBC */ _t33 = cpu->r[21] + 0x00000044u; /* 027C0FBC */ cpu->r[26] = rbrew_read32(cpu->mem, _t33); /* 027C0FC0 */ _t34 = cpu->r[21] + 0x0000003Cu; /* 027C0FC0 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t34); /* 027C0FC4 */ _t35 = cpu->r[21] + 0x00000038u; /* 027C0FC4 */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t35); /* 027C0FC8 */ Gambit_fn_028544B0(cpu); /* 027C0FCC */ cpu->r[3] = cpu->r[21]; /* 027C0FD0 */ Gambit_fn_02854518(cpu); /* 027C0FD4 */ cpu->r[3] = cpu->r[21]; /* 027C0FD8 */ cpu->f[29] = cpu->f[1]; /* 027C0FDC */ Gambit_fn_02854580(cpu); /* 027C0FE0 */ cpu->r[3] = cpu->r[23]; /* 027C0FE4 */ Gambit_fn_027C276C(cpu); /* 027C0FE8 */ cpu->r[6] = 0x10110000u; /* 027C0FEC */ _t36 = cpu->r[6] + 0xFFFFBF38u; /* 027C0FEC */ cpu->f[13] = rbrew_read_f64(cpu->mem, _t36); /* 027C0FF0 */ cpu->r[7] = 0x43300000u; /* 027C0FF4 */ _t37 = cpu->r[3] + 0x00000000u; /* 027C0FF4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37); /* 027C0FF8 */ _t38 = cpu->r[1] + 0x00000010u; /* 027C0FF8 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]); /* 027C0FFC */ cpu->r[8] = cpu->r[6] ^ 0x80000000u; /* 027C1000 */ _t39 = cpu->r[1] + 0x00000014u; /* 027C1000 */ rbrew_write32(cpu->mem, _t39, cpu->r[8]); /* 027C1004 */ _t40 = cpu->r[1] + 0x00000010u; /* 027C1004 */ cpu->f[10] = rbrew_read_f64(cpu->mem, _t40); /* 027C1008 */ cpu->r[12] = 0x10110000u; /* 027C100C */ _t41 = cpu->r[3] + 0x00000004u; /* 027C100C */ cpu->r[10] = rbrew_read32(cpu->mem, _t41); /* 027C1010 */ cpu->f[8] = cpu->f[10] - cpu->f[13]; /* 027C1014 */ _t42 = cpu->r[12] + 0xFFFFBF30u; /* 027C1014 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t42); /* 027C1018 */ cpu->f[12] = (double)(float)cpu->f[8]; /* 027C101C */ cpu->r[11] = cpu->r[10] ^ 0x80000000u; /* 027C1020 */ _t43 = cpu->r[1] + 0x00000014u; /* 027C1020 */ rbrew_write32(cpu->mem, _t43, cpu->r[11]); /* 027C1024 */ cpu->f[30] = cpu->f[12] / cpu->f[11]; /* 027C1028 */ _t44 = cpu->r[22] + 0x00000000u; /* 027C1028 */ cpu->r[12] = rbrew_read32(cpu->mem, _t44); /* 027C102C */ _t45 = cpu->r[12] + 0x000000ACu; /* 027C102C */ cpu->r[0] = rbrew_read32(cpu->mem, _t45); /* 027C1030 */ _t46 = cpu->r[1] + 0x00000010u; /* 027C1030 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t46); /* 027C1034 */ cpu->ctr = cpu->r[0]; /* 027C1038 */ cpu->f[8] = cpu->f[0] - cpu->f[13]; /* 027C103C */ cpu->r[4] = cpu->r[23]; /* 027C1040 */ cpu->r[3] = cpu->r[22]; /* 027C1044 */ cpu->f[31] = (double)(float)cpu->f[8]; /* 027C1048 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C104C */ cpu->r[6] = 0x10110000u; /* 027C1050 */ _t47 = cpu->r[1] + 0x00000054u; /* 027C1050 */ rbrew_write32(cpu->mem, _t47, cpu->r[3]); /* 027C1054 */ cpu->r[6] = cpu->r[6] + 0xFFFFBCC4u; /* 027C1058 */ cpu->r[3] = cpu->r[1] + 0x00000054u; /* 027C105C */ _t48 = cpu->r[1] + 0x00000058u; /* 027C105C */ rbrew_write32(cpu->mem, _t48, cpu->r[6]); /* 027C1060 */ Gambit_fn_027B1F84(cpu); /* 027C1064 */ _t49 = cpu->r[3] + 0x00000004u; /* 027C1064 */ cpu->r[7] = rbrew_read32(cpu->mem, _t49); /* 027C1068 */ _t50 = cpu->r[7] + 0x0000004Cu; /* 027C1068 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50); /* 027C106C */ cpu->ctr = cpu->r[8]; /* 027C1070 */ cpu->r[27] = cpu->r[3]; /* 027C1074 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1078 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C107C */ _t51 = cpu->r[29] + 0x00000000u; /* 027C107C */ cpu->r[12] = rbrew_read32(cpu->mem, _t51); /* 027C1080 */ _t52 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1080 */ _t53 = _t52 & 0x00000001u; /* 027C1080 */ if (_t53) goto L_027C1098; else goto L_027C1084; L_027C1084: ; // 0x27c1084 /* 027C1084 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000001u); /* 027C1088 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1088 */ _t55 = _t54 & 0x00000001u; /* 027C1088 */ if (_t55) goto L_027C1098; else goto L_027C108C; L_027C108C: ; // 0x27c108c /* 027C108C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x0000000Eu); /* 027C1090 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1090 */ _t57 = _t56 & 0x00000001u; /* 027C1090 */ if (_t57) goto L_027C1098; else goto L_027C1094; L_027C1094: ; // 0x27c1094 /* 027C1094 */ cpu->r[31] = 0x00000000u; L_027C1098: ; // 0x27c1098 /* 027C1098 */ /* nop */ /* 027C109C */ cpu->r[9] = cpu->r[1] + 0x0000003Cu; /* 027C10A0 */ cpu->r[11] = cpu->r[12] + 0x00000004u; /* 027C10A4 */ /* nop */ /* 027C10A8 */ /* nop */ /* 027C10AC */ cpu->r[6] = cpu->r[1] + 0x00000040u; /* 027C10B0 */ _t58 = cpu->r[1] + 0x0000003Cu; /* 027C10B0 */ cpu->r[24] = rbrew_read32(cpu->mem, _t58); /* 027C10B4 */ /* nop */ /* 027C10B8 */ _t59 = cpu->r[1] + 0x00000040u; /* 027C10B8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59); /* 027C10BC */ _t60 = cpu->r[1] + 0x00000008u; /* 027C10BC */ rbrew_write32(cpu->mem, _t60, cpu->r[24]); /* 027C10C0 */ cpu->r[31] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C10C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C10C4 */ _t61 = cpu->r[1] + 0x0000000Cu; /* 027C10C4 */ rbrew_write32(cpu->mem, _t61, cpu->r[30]); /* 027C10C8 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C10C8 */ _t63 = _t62 & 0x00000001u; /* 027C10C8 */ if (_t63) goto L_027C10D8; else goto L_027C10CC; L_027C10CC: ; // 0x27c10cc /* 027C10CC */ cpu->r[9] = 0xFFFFFFFFu; /* 027C10D0 */ _t64 = cpu->r[1] + 0x0000000Cu; /* 027C10D0 */ rbrew_write32(cpu->mem, _t64, cpu->r[9]); /* 027C10D4 */ _t65 = cpu->r[1] + 0x00000008u; /* 027C10D4 */ rbrew_write32(cpu->mem, _t65, cpu->r[9]); L_027C10D8: ; // 0x27c10d8 /* 027C10D8 */ _t66 = cpu->r[1] + 0x0000000Bu; /* 027C10D8 */ rbrew_write8(cpu->mem, _t66, (uint8_t)cpu->r[24]); /* 027C10DC */ _t67 = cpu->r[1] + 0x00000008u; /* 027C10DC */ cpu->r[6] = rbrew_read32(cpu->mem, _t67); /* 027C10E0 */ _t68 = cpu->r[1] + 0x0000000Fu; /* 027C10E0 */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[30]); /* 027C10E4 */ cpu->r[11] = cpu->r[1] + 0x00000044u; /* 027C10E8 */ _t69 = cpu->r[1] + 0x00000044u; /* 027C10E8 */ rbrew_write32(cpu->mem, _t69, cpu->r[6]); /* 027C10EC */ /* nop */ /* 027C10F0 */ _t70 = cpu->r[1] + 0x0000000Cu; /* 027C10F0 */ cpu->r[5] = rbrew_read32(cpu->mem, _t70); /* 027C10F4 */ cpu->r[7] = cpu->r[1] + 0x00000048u; /* 027C10F8 */ /* nop */ /* 027C10FC */ cpu->r[11] = cpu->r[21] + 0xFFFFFFFCu; /* 027C1100 */ cpu->r[8] = cpu->r[12] + 0x00000004u; /* 027C1104 */ _t71 = cpu->r[1] + 0x00000048u; /* 027C1104 */ rbrew_write32(cpu->mem, _t71, cpu->r[5]); /* 027C1108 */ cpu->r[5] = 0x00000013u; /* 027C110C */ /* nop */ /* 027C1110 */ cpu->r[12] = cpu->r[1] + 0x00000058u; /* 027C1114 */ cpu->ctr = cpu->r[5]; /* 027C1118 */ /* nop */ L_027C111C: ; // 0x27c111c /* 027C111C */ _t72 = cpu->r[11] + 0x00000004u; /* 027C111C */ cpu->r[6] = rbrew_read32(cpu->mem, _t72); /* 027C111C */ cpu->r[11] = _t72; /* 027C1120 */ _t73 = cpu->r[12] + 0x00000004u; /* 027C1120 */ rbrew_write32(cpu->mem, _t73, cpu->r[6]); /* 027C1120 */ cpu->r[12] = _t73; /* 027C1124 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C1124 */ _t74 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C1124 */ _t75 = _t74 >> (0x00000002u & 31u); /* 027C1124 */ _t76 = _t75 & 0x00000001u; /* 027C1124 */ if (_t76) goto L_027C111C; else goto L_027C1128; L_027C1128: ; // 0x27c1128 /* 027C1128 */ _t77 = cpu->r[1] + 0x000000A4u; /* 027C1128 */ rbrew_write32(cpu->mem, _t77, cpu->r[22]); /* 027C112C */ _t78 = cpu->r[1] + 0x00000068u; /* 027C112C */ rbrew_write_f32(cpu->mem, _t78, cpu->f[30]); /* 027C1130 */ _t79 = cpu->r[1] + 0x00000098u; /* 027C1130 */ rbrew_write_f32(cpu->mem, _t79, cpu->f[27]); /* 027C1134 */ _t80 = cpu->r[1] + 0x0000006Cu; /* 027C1134 */ rbrew_write_f32(cpu->mem, _t80, cpu->f[30]); /* 027C1138 */ _t81 = cpu->r[1] + 0x00000094u; /* 027C1138 */ rbrew_write_f32(cpu->mem, _t81, cpu->f[28]); /* 027C113C */ _t82 = cpu->r[29] + 0x00000000u; /* 027C113C */ cpu->r[11] = rbrew_read32(cpu->mem, _t82); /* 027C1140 */ _t83 = cpu->r[1] + 0x000000A0u; /* 027C1140 */ rbrew_write32(cpu->mem, _t83, cpu->r[26]); /* 027C1144 */ _t84 = cpu->r[1] + 0x00000084u; /* 027C1144 */ rbrew_write32(cpu->mem, _t84, cpu->r[27]); /* 027C1148 */ _t85 = cpu->r[11] + 0x00000014u; /* 027C1148 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t85); /* 027C114C */ cpu->f[12] = cpu->f[12] + cpu->f[28]; /* 027C1150 */ _t86 = cpu->r[11] + 0x00000014u; /* 027C1150 */ rbrew_write_f32(cpu->mem, _t86, cpu->f[12]); /* 027C1154 */ _t87 = cpu->r[22] + 0x00000000u; /* 027C1154 */ cpu->r[7] = rbrew_read32(cpu->mem, _t87); /* 027C1158 */ _t88 = cpu->r[7] + 0x000000B4u; /* 027C1158 */ cpu->r[9] = rbrew_read32(cpu->mem, _t88); /* 027C115C */ cpu->ctr = cpu->r[9]; /* 027C1160 */ cpu->r[4] = cpu->r[23]; /* 027C1164 */ cpu->r[3] = cpu->r[22]; /* 027C1168 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C116C */ cpu->r[10] = cpu->r[1] + 0x00000024u; /* 027C1170 */ cpu->r[31] = 0x10110000u; /* 027C1174 */ _t89 = cpu->r[1] + 0x00000018u; /* 027C1174 */ rbrew_write32(cpu->mem, _t89, cpu->r[10]); /* 027C1178 */ cpu->r[11] = 0x00000004u; /* 027C117C */ _t90 = cpu->r[31] + 0x0000739Au; /* 027C117C */ cpu->r[31] = rbrew_read16(cpu->mem, _t90); /* 027C1180 */ cpu->r[12] = 0x10110000u; /* 027C1184 */ _t91 = cpu->r[1] + 0x00000020u; /* 027C1184 */ rbrew_write32(cpu->mem, _t91, cpu->r[11]); /* 027C1188 */ cpu->r[23] = cpu->r[3]; /* 027C118C */ _t92 = cpu->r[1] + 0x0000002Au; /* 027C118C */ rbrew_write16(cpu->mem, _t92, (uint16_t)cpu->r[31]); /* 027C1190 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027C1194 */ cpu->r[12] = cpu->r[12] + 0xFFFFBE14u; /* 027C1198 */ _t93 = cpu->r[1] + 0x00000024u; /* 027C1198 */ rbrew_write16(cpu->mem, _t93, (uint16_t)cpu->r[31]); /* 027C119C */ _t94 = cpu->r[1] + 0x0000001Cu; /* 027C119C */ rbrew_write32(cpu->mem, _t94, cpu->r[12]); /* 027C11A0 */ Gambit_fn_027C24BC(cpu); /* 027C11A4 */ _t95 = cpu->r[1] + 0x00000018u; /* 027C11A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t95); /* 027C11A8 */ cpu->r[12] = cpu->r[10]; /* 027C11AC */ _t96 = cpu->r[12] + 0x00000000u; /* 027C11AC */ cpu->r[0] = rbrew_read16(cpu->mem, _t96); /* 027C11B0 */ cpu->r[11] = 0x00000000u; /* 027C11B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027C11B8 */ cpu->r[7] = 0x00080000u; /* 027C11BC */ _t97 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C11BC */ _t98 = _t97 & 0x00000001u; /* 027C11BC */ if (_t98) goto L_027C11E4; else goto L_027C11C0; L_027C11C0: ; // 0x27c11c0 /* 027C11C0 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027C11C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[7]); /* 027C11C8 */ cpu->r[12] = cpu->r[12] + 0x00000002u; /* 027C11CC */ _t99 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C11CC */ _t100 = _t99 & 0x00000001u; /* 027C11CC */ if (_t100) goto L_027C11E0; else goto L_027C11D0; L_027C11D0: ; // 0x27c11d0 /* 027C11D0 */ _t101 = cpu->r[12] + 0x00000000u; /* 027C11D0 */ cpu->r[5] = rbrew_read16(cpu->mem, _t101); /* 027C11D4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027C11D8 */ _t102 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C11D8 */ _t103 = _t102 & 0x00000001u; /* 027C11D8 */ if (_t103) goto L_027C11DC; else goto L_027C11C0; L_027C11DC: ; // 0x27c11dc /* 027C11DC */ goto L_027C11E4; L_027C11E0: ; // 0x27c11e0 /* 027C11E0 */ cpu->r[11] = 0x00000000u; L_027C11E4: ; // 0x27c11e4 /* 027C11E4 */ _t104 = cpu->r[1] + 0x00000020u; /* 027C11E4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t104); /* 027C11E8 */ cpu->r[0] = cpu->r[7] + 0xFFFFFFFFu; /* 027C11EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], cpu->r[0]); /* 027C11F0 */ _t105 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C11F0 */ _t106 = _t105 & 0x00000001u; /* 027C11F0 */ if (_t106) goto L_027C11F4; else goto L_027C1200; L_027C11F4: ; // 0x27c11f4 /* 027C11F4 */ cpu->r[8] = rbrew_rlwinm(cpu->r[11], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C11F8 */ _t107 = cpu->r[8] + cpu->r[10]; /* 027C11F8 */ rbrew_write16(cpu->mem, _t107, (uint16_t)cpu->r[23]); /* 027C11F8 */ cpu->r[8] = _t107; /* 027C11FC */ _t108 = cpu->r[8] + 0x00000002u; /* 027C11FC */ rbrew_write16(cpu->mem, _t108, (uint16_t)cpu->r[31]); L_027C1200: ; // 0x27c1200 /* 027C1200 */ _t109 = cpu->r[27] + 0x00000004u; /* 027C1200 */ cpu->r[9] = rbrew_read32(cpu->mem, _t109); /* 027C1204 */ _t110 = cpu->r[9] + 0x000000ACu; /* 027C1204 */ cpu->r[0] = rbrew_read32(cpu->mem, _t110); /* 027C1208 */ cpu->ctr = cpu->r[0]; /* 027C120C */ cpu->r[3] = cpu->r[27]; /* 027C1210 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1214 */ cpu->r[7] = 0x10110000u; /* 027C1218 */ cpu->r[9] = 0x43300000u; /* 027C121C */ cpu->r[8] = (uint32_t)(-(int32_t)cpu->r[3]); /* 027C1220 */ _t111 = cpu->r[7] + 0xFFFFBF38u; /* 027C1220 */ cpu->f[0] = rbrew_read_f64(cpu->mem, _t111); /* 027C1224 */ cpu->r[0] = cpu->r[8] ^ 0x80000000u; /* 027C1228 */ _t112 = cpu->r[1] + 0x00000010u; /* 027C1228 */ rbrew_write32(cpu->mem, _t112, cpu->r[9]); /* 027C122C */ _t113 = cpu->r[1] + 0x00000014u; /* 027C122C */ rbrew_write32(cpu->mem, _t113, cpu->r[0]); /* 027C1230 */ _t114 = cpu->r[1] + 0x00000010u; /* 027C1230 */ cpu->f[7] = rbrew_read_f64(cpu->mem, _t114); /* 027C1234 */ cpu->f[9] = cpu->f[7] - cpu->f[0]; /* 027C1238 */ cpu->f[9] = (double)(float)cpu->f[9]; /* 027C123C */ _t115 = cpu->r[1] + 0x00000074u; /* 027C123C */ cpu->f[10] = rbrew_read_f32(cpu->mem, _t115); /* 027C1240 */ cpu->f[11] = fma(cpu->f[9], cpu->f[30], cpu->f[10]); /* 027C1244 */ cpu->f[11] = cpu->f[11] - cpu->f[31]; /* 027C1248 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027C124C */ _t116 = cpu->r[1] + 0x00000074u; /* 027C124C */ rbrew_write_f32(cpu->mem, _t116, cpu->f[11]); /* 027C1250 */ _t117 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1250 */ _t118 = _t117 & 0x00000001u; /* 027C1250 */ if (_t118) goto L_027C1254; else goto L_027C12BC; L_027C1254: ; // 0x27c1254 /* 027C1254 */ cpu->r[4] = cpu->r[23]; /* 027C1258 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu; /* 027C125C */ Gambit_fn_02854AD8(cpu); /* 027C1260 */ _t119 = cpu->r[29] + 0x00000000u; /* 027C1260 */ cpu->r[6] = rbrew_read32(cpu->mem, _t119); /* 027C1264 */ _t120 = cpu->r[6] + 0x00000014u; /* 027C1264 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t120); /* 027C1268 */ cpu->f[9] = cpu->f[9] + cpu->f[1]; /* 027C126C */ _t121 = cpu->r[6] + 0x00000014u; /* 027C126C */ rbrew_write_f32(cpu->mem, _t121, cpu->f[9]); /* 027C1270 */ _t122 = cpu->r[29] + 0x00000000u; /* 027C1270 */ cpu->r[7] = rbrew_read32(cpu->mem, _t122); /* 027C1274 */ _t123 = cpu->r[7] + 0x00000028u; /* 027C1274 */ rbrew_write32(cpu->mem, _t123, cpu->r[25]); /* 027C1278 */ _t124 = cpu->r[29] + 0x00000000u; /* 027C1278 */ cpu->r[5] = rbrew_read32(cpu->mem, _t124); /* 027C127C */ _t125 = cpu->r[5] + 0x00000044u; /* 027C127C */ rbrew_write32(cpu->mem, _t125, cpu->r[26]); /* 027C1280 */ _t126 = cpu->r[29] + 0x00000000u; /* 027C1280 */ cpu->r[9] = rbrew_read32(cpu->mem, _t126); /* 027C1284 */ cpu->r[8] = cpu->r[1] + 0x0000004Cu; /* 027C1288 */ _t127 = cpu->r[1] + 0x0000004Cu; /* 027C1288 */ rbrew_write32(cpu->mem, _t127, cpu->r[24]); /* 027C128C */ /* nop */ /* 027C1290 */ cpu->r[11] = cpu->r[1] + 0x00000050u; /* 027C1294 */ /* nop */ /* 027C1298 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu; /* 027C129C */ _t128 = cpu->r[1] + 0x00000050u; /* 027C129C */ rbrew_write32(cpu->mem, _t128, cpu->r[30]); /* 027C12A0 */ /* nop */ /* 027C12A4 */ cpu->r[12] = cpu->r[9] + 0x00000004u; /* 027C12A8 */ cpu->r[4] = 0x00000002u; /* 027C12AC */ /* nop */ /* 027C12B0 */ Gambit_fn_02858758(cpu); /* 027C12B4 */ cpu->r[3] = 0x00000000u; /* 027C12B8 */ goto L_027C1398; L_027C12BC: ; // 0x27c12bc /* 027C12BC */ cpu->r[12] = 0x10110000u; /* 027C12C0 */ _t129 = cpu->r[12] + 0xFFFFBF40u; /* 027C12C0 */ cpu->f[12] = rbrew_read_f32(cpu->mem, _t129); /* 027C12C4 */ _t130 = cpu->r[1] + 0x0000001Cu; /* 027C12C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t130); /* 027C12C8 */ _t131 = cpu->r[1] + 0x00000030u; /* 027C12C8 */ rbrew_write_f32(cpu->mem, _t131, cpu->f[12]); /* 027C12CC */ _t132 = cpu->r[1] + 0x00000034u; /* 027C12CC */ rbrew_write_f32(cpu->mem, _t132, cpu->f[12]); /* 027C12D0 */ _t133 = cpu->r[1] + 0x0000002Cu; /* 027C12D0 */ rbrew_write_f32(cpu->mem, _t133, cpu->f[12]); /* 027C12D4 */ _t134 = cpu->r[1] + 0x00000038u; /* 027C12D4 */ rbrew_write_f32(cpu->mem, _t134, cpu->f[12]); /* 027C12D8 */ _t135 = cpu->r[12] + 0x00000014u; /* 027C12D8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t135); /* 027C12DC */ cpu->ctr = cpu->r[5]; /* 027C12E0 */ cpu->r[3] = cpu->r[1] + 0x00000018u; /* 027C12E4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C12E8 */ _t136 = cpu->r[1] + 0x00000018u; /* 027C12E8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t136); /* 027C12EC */ cpu->r[3] = cpu->r[1] + 0x0000005Cu; /* 027C12F0 */ cpu->r[4] = cpu->r[1] + 0x0000002Cu; /* 027C12F4 */ cpu->r[6] = 0x00000001u; /* 027C12F8 */ Gambit_fn_02858F0C(cpu); /* 027C12FC */ _t137 = cpu->r[1] + 0x0000002Cu; /* 027C12FC */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t137); /* 027C1300 */ _t138 = cpu->r[1] + 0x00000034u; /* 027C1300 */ cpu->f[13] = rbrew_read_f32(cpu->mem, _t138); /* 027C1304 */ _t139 = cpu->r[29] + 0x00000000u; /* 027C1304 */ cpu->r[9] = rbrew_read32(cpu->mem, _t139); /* 027C1308 */ cpu->f[1] = cpu->f[13] - cpu->f[0]; /* 027C130C */ _t140 = cpu->r[9] + 0x00000014u; /* 027C130C */ cpu->f[7] = rbrew_read_f32(cpu->mem, _t140); /* 027C1310 */ _t141 = cpu->r[28] + 0x00000000u; /* 027C1310 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t141); /* 027C1314 */ cpu->f[12] = cpu->f[7] + cpu->f[1]; /* 027C1318 */ _t142 = cpu->r[28] + 0x00000008u; /* 027C1318 */ cpu->f[11] = rbrew_read_f32(cpu->mem, _t142); /* 027C131C */ cpu->f[9] = cpu->f[12] - cpu->f[8]; /* 027C1320 */ cpu->f[13] = cpu->f[12] - cpu->f[11]; /* 027C1324 */ /* nop */ /* 027C1328 */ _t143 = cpu->r[28] + 0x00000004u; /* 027C1328 */ cpu->f[8] = rbrew_read_f32(cpu->mem, _t143); /* 027C132C */ /* nop */ /* 027C1330 */ cpu->f[7] = cpu->f[8] + cpu->f[29]; /* 027C1334 */ _t144 = cpu->r[28] + 0x00000000u; /* 027C1334 */ rbrew_write_f32(cpu->mem, _t144, cpu->f[10]); /* 027C1338 */ _t145 = cpu->r[28] + 0x00000008u; /* 027C1338 */ rbrew_write_f32(cpu->mem, _t145, cpu->f[0]); /* 027C133C */ _t146 = cpu->r[28] + 0x0000000Cu; /* 027C133C */ rbrew_write_f32(cpu->mem, _t146, cpu->f[7]); /* 027C1340 */ _t147 = cpu->r[29] + 0x00000000u; /* 027C1340 */ cpu->r[6] = rbrew_read32(cpu->mem, _t147); /* 027C1344 */ _t148 = cpu->r[6] + 0x00000014u; /* 027C1344 */ cpu->f[9] = rbrew_read_f32(cpu->mem, _t148); /* 027C1348 */ cpu->f[9] = cpu->f[9] + cpu->f[1]; /* 027C134C */ _t149 = cpu->r[6] + 0x00000014u; /* 027C134C */ rbrew_write_f32(cpu->mem, _t149, cpu->f[9]); /* 027C1350 */ _t150 = cpu->r[29] + 0x00000000u; /* 027C1350 */ cpu->r[7] = rbrew_read32(cpu->mem, _t150); /* 027C1354 */ _t151 = cpu->r[7] + 0x00000028u; /* 027C1354 */ rbrew_write32(cpu->mem, _t151, cpu->r[25]); /* 027C1358 */ _t152 = cpu->r[29] + 0x00000000u; /* 027C1358 */ cpu->r[5] = rbrew_read32(cpu->mem, _t152); /* 027C135C */ _t153 = cpu->r[5] + 0x00000044u; /* 027C135C */ rbrew_write32(cpu->mem, _t153, cpu->r[26]); /* 027C1360 */ _t154 = cpu->r[29] + 0x00000000u; /* 027C1360 */ cpu->r[9] = rbrew_read32(cpu->mem, _t154); /* 027C1364 */ cpu->r[8] = cpu->r[1] + 0x0000004Cu; /* 027C1368 */ _t155 = cpu->r[1] + 0x0000004Cu; /* 027C1368 */ rbrew_write32(cpu->mem, _t155, cpu->r[24]); /* 027C136C */ /* nop */ /* 027C1370 */ cpu->r[11] = cpu->r[1] + 0x00000050u; /* 027C1374 */ /* nop */ /* 027C1378 */ cpu->r[3] = cpu->r[1] + 0x0000005Cu; /* 027C137C */ _t156 = cpu->r[1] + 0x00000050u; /* 027C137C */ rbrew_write32(cpu->mem, _t156, cpu->r[30]); /* 027C1380 */ /* nop */ /* 027C1384 */ cpu->r[12] = cpu->r[9] + 0x00000004u; /* 027C1388 */ cpu->r[4] = 0x00000002u; /* 027C138C */ /* nop */ /* 027C1390 */ Gambit_fn_02858758(cpu); /* 027C1394 */ cpu->r[3] = 0x00000000u; L_027C1398: ; // 0x27c1398 /* 027C1398 */ /* nop */ /* 027C139C */ _t157 = cpu->r[1] + 0x000000F0u; /* 027C139C */ cpu->f[28] = rbrew_read_f32(cpu->mem, _t157); /* 027C13A0 */ _t158 = cpu->r[1] + 0x00000110u; /* 027C13A0 */ cpu->f[30] = rbrew_read_f32(cpu->mem, _t158); /* 027C13A4 */ _t159 = cpu->r[1] + 0x000000E8u; /* 027C13A4 */ cpu->f[28] = rbrew_read_f64(cpu->mem, _t159); /* 027C13A8 */ _t160 = cpu->r[1] + 0x00000100u; /* 027C13A8 */ cpu->f[29] = rbrew_read_f32(cpu->mem, _t160); /* 027C13AC */ _t161 = cpu->r[1] + 0x00000108u; /* 027C13AC */ cpu->f[30] = rbrew_read_f64(cpu->mem, _t161); /* 027C13B0 */ _t162 = cpu->r[1] + 0x000000F8u; /* 027C13B0 */ cpu->f[29] = rbrew_read_f64(cpu->mem, _t162); /* 027C13B4 */ _t163 = cpu->r[1] + 0x000000E0u; /* 027C13B4 */ cpu->f[27] = rbrew_read_f32(cpu->mem, _t163); /* 027C13B8 */ _t164 = cpu->r[1] + 0x00000120u; /* 027C13B8 */ cpu->f[31] = rbrew_read_f32(cpu->mem, _t164); /* 027C13BC */ _t165 = cpu->r[1] + 0x000000D8u; /* 027C13BC */ cpu->f[27] = rbrew_read_f64(cpu->mem, _t165); /* 027C13C0 */ _t166 = cpu->r[1] + 0x00000118u; /* 027C13C0 */ cpu->f[31] = rbrew_read_f64(cpu->mem, _t166); /* 027C13C4 */ _t167 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C13C4 */ _t168 = _t167 & 0x00000001u; /* 027C13C4 */ if (_t168) goto L_027C13C8; // else: addr-0 trap, fall-through L_027C13C8: ; // 0x27c13c8 /* 027C13C8 */ _t169 = cpu->r[1] + 0x0000012Cu; /* 027C13C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t169); /* 027C13CC */ cpu->lr = cpu->r[0]; /* 027C13D0 */ cpu->r[1] = cpu->r[1] + 0x00000128u; /* 027C13D4 */ return; } // fn_027C13D8 @ 0x27c13d8 void Gambit_fn_027C13D8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5; L_027C13D8: ; // 0x27c13d8 /* 027C13D8 */ _t0 = cpu->r[4] + 0x00000002u; /* 027C13D8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t0); /* 027C13DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C13E0 */ cpu->r[12] = 0x00000000u; /* 027C13E4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C13E4 */ _t2 = _t1 & 0x00000001u; /* 027C13E4 */ if (_t2) goto L_027C13E8; else goto L_027C13F8; L_027C13E8: ; // 0x27c13e8 /* 027C13E8 */ _t3 = cpu->r[4] + 0x00000004u; /* 027C13E8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t3); /* 027C13EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000004u); /* 027C13F0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C13F0 */ _t5 = _t4 & 0x00000001u; /* 027C13F0 */ if (_t5) goto L_027C13F4; else goto L_027C13F8; L_027C13F4: ; // 0x27c13f4 /* 027C13F4 */ cpu->r[12] = 0x00000001u; L_027C13F8: ; // 0x27c13f8 /* 027C13F8 */ cpu->r[3] = rbrew_rlwinm(cpu->r[12], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C13FC */ return; } // fn_027C1400 @ 0x27c1400 void Gambit_fn_027C1400(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; L_027C1400: ; // 0x27c1400 /* 027C1400 */ cpu->r[0] = cpu->lr; /* 027C1404 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C1404 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C1404 */ cpu->r[1] = _t0; /* 027C1408 */ _t1 = cpu->r[1] + 0x00000010u; /* 027C1408 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C140C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C140C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027C1410 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C1410 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C1414 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027C1414 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027C1418 */ cpu->r[29] = cpu->r[4]; /* 027C141C */ _t5 = cpu->r[29] + 0x00000004u; /* 027C141C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5); /* 027C1420 */ _t6 = cpu->r[8] + 0x00000014u; /* 027C1420 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027C1424 */ cpu->r[30] = cpu->r[3]; /* 027C1428 */ cpu->ctr = cpu->r[9]; /* 027C142C */ cpu->r[3] = cpu->r[29]; /* 027C1430 */ cpu->r[31] = 0x00000000u; /* 027C1434 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1438 */ _t7 = cpu->r[29] + 0x00000000u; /* 027C1438 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027C143C */ cpu->r[12] = 0x10110000u; /* 027C1440 */ _t8 = cpu->r[12] + 0x0000739Au; /* 027C1440 */ cpu->r[12] = rbrew_read16(cpu->mem, _t8); /* 027C1444 */ _t9 = cpu->r[8] + 0x00000000u; /* 027C1444 */ cpu->r[10] = rbrew_read16(cpu->mem, _t9); /* 027C1448 */ cpu->r[5] = cpu->r[31]; /* 027C144C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]); /* 027C1450 */ cpu->r[0] = 0x00080000u; /* 027C1454 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1454 */ _t11 = _t10 & 0x00000001u; /* 027C1454 */ if (_t11) goto L_027C1474; else goto L_027C1458; L_027C1458: ; // 0x27c1458 /* 027C1458 */ cpu->r[5] = cpu->r[5] + 0x00000001u; /* 027C145C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]); /* 027C1460 */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027C1464 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1464 */ _t13 = _t12 & 0x00000001u; /* 027C1464 */ if (_t13) goto L_027C1474; else goto L_027C1468; L_027C1468: ; // 0x27c1468 /* 027C1468 */ _t14 = cpu->r[8] + 0x00000000u; /* 027C1468 */ cpu->r[11] = rbrew_read16(cpu->mem, _t14); /* 027C146C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]); /* 027C1470 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1470 */ _t16 = _t15 & 0x00000001u; /* 027C1470 */ if (_t16) goto L_027C1474; else goto L_027C1458; L_027C1474: ; // 0x27c1474 /* 027C1474 */ _t17 = cpu->r[29] + 0x00000004u; /* 027C1474 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17); /* 027C1478 */ _t18 = cpu->r[12] + 0x00000014u; /* 027C1478 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027C147C */ cpu->ctr = cpu->r[0]; /* 027C1480 */ cpu->r[3] = cpu->r[29]; /* 027C1484 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1488 */ _t19 = cpu->r[29] + 0x00000000u; /* 027C1488 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19); /* 027C148C */ _t20 = cpu->r[4] + 0x00000000u; /* 027C148C */ cpu->r[0] = rbrew_read16(cpu->mem, _t20); /* 027C1490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1494 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1494 */ _t22 = _t21 & 0x00000001u; /* 027C1494 */ if (_t22) goto L_027C1510; else goto L_027C1498; L_027C1498: ; // 0x27c1498 /* 027C1498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C149C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C149C */ _t24 = _t23 & 0x00000001u; /* 027C149C */ if (_t24) goto L_027C14A8; else goto L_027C14A0; L_027C14A0: ; // 0x27c14a0 /* 027C14A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C14A4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14A4 */ _t26 = _t25 & 0x00000001u; /* 027C14A4 */ if (_t26) goto L_027C14A8; else goto L_027C1504; L_027C14A8: ; // 0x27c14a8 /* 027C14A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C14AC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14AC */ _t28 = _t27 & 0x00000001u; /* 027C14AC */ if (_t28) goto L_027C14B0; else goto L_027C14C8; L_027C14B0: ; // 0x27c14b0 /* 027C14B0 */ _t29 = cpu->r[4] + 0x00000006u; /* 027C14B0 */ cpu->r[7] = rbrew_read16(cpu->mem, _t29); /* 027C14B4 */ cpu->r[6] = cpu->r[4] + cpu->r[7]; /* 027C14B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C14BC */ cpu->r[7] = cpu->r[6] + 0x00000008u; /* 027C14C0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14C0 */ _t31 = _t30 & 0x00000001u; /* 027C14C0 */ if (_t31) goto L_027C1504; else goto L_027C14C4; L_027C14C4: ; // 0x27c14c4 /* 027C14C4 */ goto L_027C14DC; L_027C14C8: ; // 0x27c14c8 /* 027C14C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C14CC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14CC */ _t33 = _t32 & 0x00000001u; /* 027C14CC */ if (_t33) goto L_027C14D0; else goto L_027C1504; L_027C14D0: ; // 0x27c14d0 /* 027C14D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C14D4 */ cpu->r[7] = cpu->r[4] + 0x00000006u; /* 027C14D8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14D8 */ _t35 = _t34 & 0x00000001u; /* 027C14D8 */ if (_t35) goto L_027C1504; else goto L_027C14DC; L_027C14DC: ; // 0x27c14dc /* 027C14DC */ cpu->r[3] = cpu->r[30]; /* 027C14E0 */ Gambit_fn_027C13D8(cpu); /* 027C14E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C14E8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14E8 */ _t37 = _t36 & 0x00000001u; /* 027C14E8 */ if (_t37) goto L_027C14F0; else goto L_027C14EC; L_027C14EC: ; // 0x27c14ec /* 027C14EC */ cpu->r[31] = cpu->r[31] + 0x00000001u; L_027C14F0: ; // 0x27c14f0 /* 027C14F0 */ cpu->r[4] = cpu->r[7]; /* 027C14F4 */ _t38 = cpu->r[4] + 0x00000000u; /* 027C14F4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t38); /* 027C14F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C14FC */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14FC */ _t40 = _t39 & 0x00000001u; /* 027C14FC */ if (_t40) goto L_027C1500; else goto L_027C1498; L_027C1500: ; // 0x27c1500 /* 027C1500 */ goto L_027C1510; L_027C1504: ; // 0x27c1504 /* 027C1504 */ _t41 = cpu->r[4] + 0x00000002u; /* 027C1504 */ cpu->r[0] = rbrew_read16(cpu->mem, _t41); /* 027C1504 */ cpu->r[4] = _t41; /* 027C1508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C150C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C150C */ _t43 = _t42 & 0x00000001u; /* 027C150C */ if (_t43) goto L_027C1510; else goto L_027C1498; L_027C1510: ; // 0x27c1510 /* 027C1510 */ _t44 = cpu->r[1] + 0x0000000Cu; /* 027C1510 */ cpu->r[29] = rbrew_read32(cpu->mem, _t44); /* 027C1514 */ _t45 = cpu->r[1] + 0x0000001Cu; /* 027C1514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45); /* 027C1518 */ cpu->r[3] = cpu->r[31]; /* 027C151C */ _t46 = cpu->r[1] + 0x00000010u; /* 027C151C */ cpu->r[30] = rbrew_read32(cpu->mem, _t46); /* 027C1520 */ cpu->lr = cpu->r[0]; /* 027C1524 */ _t47 = cpu->r[1] + 0x00000014u; /* 027C1524 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47); /* 027C1528 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C152C */ return; } // fn_027C1404 @ 0x27c1404 void Gambit_fn_027C1404(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; L_027C1404: ; // 0x27c1404 /* 027C1404 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C1404 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C1404 */ cpu->r[1] = _t0; /* 027C1408 */ _t1 = cpu->r[1] + 0x00000010u; /* 027C1408 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C140C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C140C */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027C1410 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C1410 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C1414 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027C1414 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027C1418 */ cpu->r[29] = cpu->r[4]; /* 027C141C */ _t5 = cpu->r[29] + 0x00000004u; /* 027C141C */ cpu->r[8] = rbrew_read32(cpu->mem, _t5); /* 027C1420 */ _t6 = cpu->r[8] + 0x00000014u; /* 027C1420 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027C1424 */ cpu->r[30] = cpu->r[3]; /* 027C1428 */ cpu->ctr = cpu->r[9]; /* 027C142C */ cpu->r[3] = cpu->r[29]; /* 027C1430 */ cpu->r[31] = 0x00000000u; /* 027C1434 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1438 */ _t7 = cpu->r[29] + 0x00000000u; /* 027C1438 */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027C143C */ cpu->r[12] = 0x10110000u; /* 027C1440 */ _t8 = cpu->r[12] + 0x0000739Au; /* 027C1440 */ cpu->r[12] = rbrew_read16(cpu->mem, _t8); /* 027C1444 */ _t9 = cpu->r[8] + 0x00000000u; /* 027C1444 */ cpu->r[10] = rbrew_read16(cpu->mem, _t9); /* 027C1448 */ cpu->r[5] = cpu->r[31]; /* 027C144C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]); /* 027C1450 */ cpu->r[0] = 0x00080000u; /* 027C1454 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1454 */ _t11 = _t10 & 0x00000001u; /* 027C1454 */ if (_t11) goto L_027C1474; else goto L_027C1458; L_027C1458: ; // 0x27c1458 /* 027C1458 */ cpu->r[5] = cpu->r[5] + 0x00000001u; /* 027C145C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[5], cpu->r[0]); /* 027C1460 */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027C1464 */ _t12 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1464 */ _t13 = _t12 & 0x00000001u; /* 027C1464 */ if (_t13) goto L_027C1474; else goto L_027C1468; L_027C1468: ; // 0x27c1468 /* 027C1468 */ _t14 = cpu->r[8] + 0x00000000u; /* 027C1468 */ cpu->r[11] = rbrew_read16(cpu->mem, _t14); /* 027C146C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[12]); /* 027C1470 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1470 */ _t16 = _t15 & 0x00000001u; /* 027C1470 */ if (_t16) goto L_027C1474; else goto L_027C1458; L_027C1474: ; // 0x27c1474 /* 027C1474 */ _t17 = cpu->r[29] + 0x00000004u; /* 027C1474 */ cpu->r[12] = rbrew_read32(cpu->mem, _t17); /* 027C1478 */ _t18 = cpu->r[12] + 0x00000014u; /* 027C1478 */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027C147C */ cpu->ctr = cpu->r[0]; /* 027C1480 */ cpu->r[3] = cpu->r[29]; /* 027C1484 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1488 */ _t19 = cpu->r[29] + 0x00000000u; /* 027C1488 */ cpu->r[4] = rbrew_read32(cpu->mem, _t19); /* 027C148C */ _t20 = cpu->r[4] + 0x00000000u; /* 027C148C */ cpu->r[0] = rbrew_read16(cpu->mem, _t20); /* 027C1490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1494 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1494 */ _t22 = _t21 & 0x00000001u; /* 027C1494 */ if (_t22) goto L_027C1510; else goto L_027C1498; L_027C1498: ; // 0x27c1498 /* 027C1498 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C149C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C149C */ _t24 = _t23 & 0x00000001u; /* 027C149C */ if (_t24) goto L_027C14A8; else goto L_027C14A0; L_027C14A0: ; // 0x27c14a0 /* 027C14A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C14A4 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14A4 */ _t26 = _t25 & 0x00000001u; /* 027C14A4 */ if (_t26) goto L_027C14A8; else goto L_027C1504; L_027C14A8: ; // 0x27c14a8 /* 027C14A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C14AC */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14AC */ _t28 = _t27 & 0x00000001u; /* 027C14AC */ if (_t28) goto L_027C14B0; else goto L_027C14C8; L_027C14B0: ; // 0x27c14b0 /* 027C14B0 */ _t29 = cpu->r[4] + 0x00000006u; /* 027C14B0 */ cpu->r[7] = rbrew_read16(cpu->mem, _t29); /* 027C14B4 */ cpu->r[6] = cpu->r[4] + cpu->r[7]; /* 027C14B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C14BC */ cpu->r[7] = cpu->r[6] + 0x00000008u; /* 027C14C0 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14C0 */ _t31 = _t30 & 0x00000001u; /* 027C14C0 */ if (_t31) goto L_027C1504; else goto L_027C14C4; L_027C14C4: ; // 0x27c14c4 /* 027C14C4 */ goto L_027C14DC; L_027C14C8: ; // 0x27c14c8 /* 027C14C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C14CC */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14CC */ _t33 = _t32 & 0x00000001u; /* 027C14CC */ if (_t33) goto L_027C14D0; else goto L_027C1504; L_027C14D0: ; // 0x27c14d0 /* 027C14D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], 0x00000000u); /* 027C14D4 */ cpu->r[7] = cpu->r[4] + 0x00000006u; /* 027C14D8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14D8 */ _t35 = _t34 & 0x00000001u; /* 027C14D8 */ if (_t35) goto L_027C1504; else goto L_027C14DC; L_027C14DC: ; // 0x27c14dc /* 027C14DC */ cpu->r[3] = cpu->r[30]; /* 027C14E0 */ Gambit_fn_027C13D8(cpu); /* 027C14E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C14E8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14E8 */ _t37 = _t36 & 0x00000001u; /* 027C14E8 */ if (_t37) goto L_027C14F0; else goto L_027C14EC; L_027C14EC: ; // 0x27c14ec /* 027C14EC */ cpu->r[31] = cpu->r[31] + 0x00000001u; L_027C14F0: ; // 0x27c14f0 /* 027C14F0 */ cpu->r[4] = cpu->r[7]; /* 027C14F4 */ _t38 = cpu->r[4] + 0x00000000u; /* 027C14F4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t38); /* 027C14F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C14FC */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C14FC */ _t40 = _t39 & 0x00000001u; /* 027C14FC */ if (_t40) goto L_027C1500; else goto L_027C1498; L_027C1500: ; // 0x27c1500 /* 027C1500 */ goto L_027C1510; L_027C1504: ; // 0x27c1504 /* 027C1504 */ _t41 = cpu->r[4] + 0x00000002u; /* 027C1504 */ cpu->r[0] = rbrew_read16(cpu->mem, _t41); /* 027C1504 */ cpu->r[4] = _t41; /* 027C1508 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C150C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C150C */ _t43 = _t42 & 0x00000001u; /* 027C150C */ if (_t43) goto L_027C1510; else goto L_027C1498; L_027C1510: ; // 0x27c1510 /* 027C1510 */ _t44 = cpu->r[1] + 0x0000000Cu; /* 027C1510 */ cpu->r[29] = rbrew_read32(cpu->mem, _t44); /* 027C1514 */ _t45 = cpu->r[1] + 0x0000001Cu; /* 027C1514 */ cpu->r[0] = rbrew_read32(cpu->mem, _t45); /* 027C1518 */ cpu->r[3] = cpu->r[31]; /* 027C151C */ _t46 = cpu->r[1] + 0x00000010u; /* 027C151C */ cpu->r[30] = rbrew_read32(cpu->mem, _t46); /* 027C1520 */ cpu->lr = cpu->r[0]; /* 027C1524 */ _t47 = cpu->r[1] + 0x00000014u; /* 027C1524 */ cpu->r[31] = rbrew_read32(cpu->mem, _t47); /* 027C1528 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C152C */ return; } // fn_027C1530 @ 0x27c1530 void Gambit_fn_027C1530(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; L_027C1530: ; // 0x27c1530 /* 027C1530 */ _t0 = cpu->r[1] + 0xFFFFFFB0u; /* 027C1530 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C1530 */ cpu->r[1] = _t0; /* 027C1534 */ /* nop */ /* 027C1538 */ cpu->r[0] = cpu->lr; /* 027C153C */ _t1 = cpu->r[1] + 0x00000054u; /* 027C153C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027C1540 */ cpu->r[31] = cpu->r[5]; /* 027C1544 */ cpu->r[28] = cpu->r[6]; /* 027C1548 */ _t2 = cpu->r[31] + 0x00000004u; /* 027C1548 */ cpu->r[6] = rbrew_read32(cpu->mem, _t2); /* 027C154C */ cpu->r[29] = 0x00000000u; /* 027C1550 */ _t3 = cpu->r[6] + 0x00000014u; /* 027C1550 */ cpu->r[7] = rbrew_read32(cpu->mem, _t3); /* 027C1554 */ cpu->r[0] = rbrew_clz32(cpu->r[28]); /* 027C1558 */ cpu->r[26] = cpu->r[3]; /* 027C155C */ cpu->ctr = cpu->r[7]; /* 027C1560 */ cpu->r[23] = cpu->r[29]; /* 027C1564 */ cpu->r[24] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu); /* 027C1568 */ cpu->r[3] = cpu->r[31]; /* 027C156C */ cpu->r[27] = cpu->r[4]; /* 027C1570 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1574 */ cpu->r[30] = 0x10110000u; /* 027C1578 */ _t4 = cpu->r[31] + 0x00000000u; /* 027C1578 */ cpu->r[7] = rbrew_read32(cpu->mem, _t4); /* 027C157C */ _t5 = cpu->r[30] + 0x0000739Au; /* 027C157C */ cpu->r[30] = rbrew_read16(cpu->mem, _t5); /* 027C1580 */ _t6 = cpu->r[7] + 0x00000000u; /* 027C1580 */ cpu->r[8] = rbrew_read16(cpu->mem, _t6); /* 027C1584 */ cpu->r[12] = cpu->r[23]; /* 027C1588 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027C158C */ cpu->r[8] = 0x00080000u; /* 027C1590 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1590 */ _t8 = _t7 & 0x00000001u; /* 027C1590 */ if (_t8) goto L_027C15B0; else goto L_027C1594; L_027C1594: ; // 0x27c1594 /* 027C1594 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027C1598 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[8]); /* 027C159C */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027C15A0 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C15A0 */ _t10 = _t9 & 0x00000001u; /* 027C15A0 */ if (_t10) goto L_027C15B0; else goto L_027C15A4; L_027C15A4: ; // 0x27c15a4 /* 027C15A4 */ _t11 = cpu->r[7] + 0x00000000u; /* 027C15A4 */ cpu->r[9] = rbrew_read16(cpu->mem, _t11); /* 027C15A8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]); /* 027C15AC */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C15AC */ _t13 = _t12 & 0x00000001u; /* 027C15AC */ if (_t13) goto L_027C15B0; else goto L_027C1594; L_027C15B0: ; // 0x27c15b0 /* 027C15B0 */ _t14 = cpu->r[31] + 0x00000004u; /* 027C15B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14); /* 027C15B4 */ _t15 = cpu->r[10] + 0x00000014u; /* 027C15B4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027C15B8 */ cpu->ctr = cpu->r[0]; /* 027C15BC */ cpu->r[3] = cpu->r[31]; /* 027C15C0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C15C4 */ _t16 = cpu->r[31] + 0x00000000u; /* 027C15C4 */ cpu->r[25] = rbrew_read32(cpu->mem, _t16); /* 027C15C8 */ _t17 = cpu->r[25] + 0x00000000u; /* 027C15C8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t17); /* 027C15CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C15D0 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C15D0 */ _t19 = _t18 & 0x00000001u; /* 027C15D0 */ if (_t19) goto L_027C18F8; else goto L_027C15D4; L_027C15D4: ; // 0x27c15d4 /* 027C15D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C15D8 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C15D8 */ _t21 = _t20 & 0x00000001u; /* 027C15D8 */ if (_t21) goto L_027C15DC; else goto L_027C15F8; L_027C15DC: ; // 0x27c15dc /* 027C15DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[28]); /* 027C15E0 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C15E0 */ _t23 = _t22 & 0x00000001u; /* 027C15E0 */ if (_t23) goto L_027C15E4; else goto L_027C15F8; L_027C15E4: ; // 0x27c15e4 /* 027C15E4 */ cpu->r[5] = 0x10110000u; /* 027C15E8 */ _t24 = cpu->r[5] + 0x0000739Cu; /* 027C15E8 */ cpu->r[12] = rbrew_read16(cpu->mem, _t24); /* 027C15EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]); /* 027C15F0 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C15F0 */ _t26 = _t25 & 0x00000001u; /* 027C15F0 */ if (_t26) goto L_027C15F8; else goto L_027C15F4; L_027C15F4: ; // 0x27c15f4 /* 027C15F4 */ cpu->r[24] = 0x00000001u; L_027C15F8: ; // 0x27c15f8 /* 027C15F8 */ cpu->r[31] = 0x10110000u; /* 027C15FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1600 */ cpu->r[31] = cpu->r[31] + 0xFFFFBCDCu; /* 027C1604 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1604 */ _t28 = _t27 & 0x00000001u; /* 027C1604 */ if (_t28) goto L_027C1610; else goto L_027C1608; L_027C1608: ; // 0x27c1608 /* 027C1608 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C160C */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C160C */ _t30 = _t29 & 0x00000001u; /* 027C160C */ if (_t30) goto L_027C1610; else goto L_027C1808; L_027C1610: ; // 0x27c1610 /* 027C1610 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1614 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1614 */ _t32 = _t31 & 0x00000001u; /* 027C1614 */ if (_t32) goto L_027C1618; else goto L_027C1630; L_027C1618: ; // 0x27c1618 /* 027C1618 */ _t33 = cpu->r[25] + 0x00000006u; /* 027C1618 */ cpu->r[6] = rbrew_read16(cpu->mem, _t33); /* 027C161C */ cpu->r[5] = cpu->r[25] + cpu->r[6]; /* 027C1620 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027C1624 */ cpu->r[22] = cpu->r[5] + 0x00000008u; /* 027C1628 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1628 */ _t35 = _t34 & 0x00000001u; /* 027C1628 */ if (_t35) goto L_027C17F4; else goto L_027C162C; L_027C162C: ; // 0x27c162c /* 027C162C */ goto L_027C1658; L_027C1630: ; // 0x27c1630 /* 027C1630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C1634 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1634 */ _t37 = _t36 & 0x00000001u; /* 027C1634 */ if (_t37) goto L_027C1638; else goto L_027C1648; L_027C1638: ; // 0x27c1638 /* 027C1638 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], 0x00000000u); /* 027C163C */ cpu->r[22] = cpu->r[25] + 0x00000006u; /* 027C1640 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1640 */ _t39 = _t38 & 0x00000001u; /* 027C1640 */ if (_t39) goto L_027C17F4; else goto L_027C1644; L_027C1644: ; // 0x27c1644 /* 027C1644 */ goto L_027C1658; L_027C1648: ; // 0x27c1648 /* 027C1648 */ _t40 = cpu->r[25] + 0x00000000u; /* 027C1648 */ cpu->r[0] = rbrew_read16(cpu->mem, _t40); /* 027C164C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1650 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1650 */ _t42 = _t41 & 0x00000001u; /* 027C1650 */ if (_t42) goto L_027C1654; else goto L_027C15D4; L_027C1654: ; // 0x27c1654 /* 027C1654 */ goto L_027C18F8; L_027C1658: ; // 0x27c1658 /* 027C1658 */ _t43 = cpu->r[26] + 0x00000000u; /* 027C1658 */ cpu->r[7] = rbrew_read32(cpu->mem, _t43); /* 027C165C */ _t44 = cpu->r[7] + 0x0000007Cu; /* 027C165C */ cpu->r[0] = rbrew_read32(cpu->mem, _t44); /* 027C1660 */ cpu->ctr = cpu->r[0]; /* 027C1664 */ _t45 = cpu->r[25] + 0x00000002u; /* 027C1664 */ cpu->r[4] = rbrew_read16(cpu->mem, _t45); /* 027C1668 */ cpu->r[3] = cpu->r[26]; /* 027C166C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1670 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C1674 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1674 */ _t47 = _t46 & 0x00000001u; /* 027C1674 */ if (_t47) goto L_027C1678; else goto L_027C17F4; L_027C1678: ; // 0x27c1678 /* 027C1678 */ cpu->r[3] = cpu->r[26]; /* 027C167C */ cpu->r[4] = cpu->r[25]; /* 027C1680 */ Gambit_fn_027C13D8(cpu); /* 027C1684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C1688 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1688 */ _t49 = _t48 & 0x00000001u; /* 027C1688 */ if (_t49) goto L_027C16AC; else goto L_027C168C; L_027C168C: ; // 0x27c168c /* 027C168C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C1690 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1690 */ _t51 = _t50 & 0x00000001u; /* 027C1690 */ if (_t51) goto L_027C1694; else goto L_027C18F8; L_027C1694: ; // 0x27c1694 /* 027C1694 */ cpu->r[25] = cpu->r[22]; /* 027C1698 */ _t52 = cpu->r[25] + 0x00000000u; /* 027C1698 */ cpu->r[0] = rbrew_read16(cpu->mem, _t52); /* 027C169C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C16A0 */ cpu->r[23] = cpu->r[23] + 0x00000001u; /* 027C16A4 */ _t53 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C16A4 */ _t54 = _t53 & 0x00000001u; /* 027C16A4 */ if (_t54) goto L_027C16A8; else goto L_027C15D4; L_027C16A8: ; // 0x27c16a8 /* 027C16A8 */ goto L_027C18F8; L_027C16AC: ; // 0x27c16ac /* 027C16AC */ cpu->r[9] = cpu->r[22] - cpu->r[25]; /* 027C16B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C16B4 */ /* nop */ /* 027C16B8 */ _t55 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C16B8 */ _t56 = _t55 & 0x00000001u; /* 027C16B8 */ if (_t56) goto L_027C17F4; else goto L_027C16BC; L_027C16BC: ; // 0x27c16bc /* 027C16BC */ _t57 = cpu->r[27] + 0x00000004u; /* 027C16BC */ cpu->r[10] = rbrew_read32(cpu->mem, _t57); /* 027C16C0 */ _t58 = cpu->r[1] + 0x00000008u; /* 027C16C0 */ rbrew_write32(cpu->mem, _t58, cpu->r[25]); /* 027C16C4 */ _t59 = cpu->r[1] + 0x0000000Cu; /* 027C16C4 */ rbrew_write32(cpu->mem, _t59, cpu->r[31]); /* 027C16C8 */ _t60 = cpu->r[10] + 0x00000014u; /* 027C16C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60); /* 027C16CC */ cpu->ctr = cpu->r[0]; /* 027C16D0 */ _t61 = cpu->r[27] + 0x00000000u; /* 027C16D0 */ cpu->r[21] = rbrew_read32(cpu->mem, _t61); /* 027C16D4 */ cpu->r[31] = cpu->r[20]; /* 027C16D8 */ cpu->r[19] = cpu->r[29]; /* 027C16DC */ cpu->r[3] = cpu->r[27]; /* 027C16E0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C16E4 */ _t62 = cpu->r[27] + 0x00000000u; /* 027C16E4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t62); /* 027C16E8 */ _t63 = cpu->r[5] + 0x00000000u; /* 027C16E8 */ cpu->r[12] = rbrew_read16(cpu->mem, _t63); /* 027C16EC */ cpu->r[25] = 0x00000000u; /* 027C16F0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[30]); /* 027C16F4 */ cpu->r[6] = 0x00080000u; /* 027C16F8 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C16F8 */ _t65 = _t64 & 0x00000001u; /* 027C16F8 */ if (_t65) goto L_027C1720; else goto L_027C16FC; L_027C16FC: ; // 0x27c16fc /* 027C16FC */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027C1700 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[25], cpu->r[6]); /* 027C1704 */ cpu->r[5] = cpu->r[5] + 0x00000002u; /* 027C1708 */ _t66 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1708 */ _t67 = _t66 & 0x00000001u; /* 027C1708 */ if (_t67) goto L_027C171C; else goto L_027C170C; L_027C170C: ; // 0x27c170c /* 027C170C */ _t68 = cpu->r[5] + 0x00000000u; /* 027C170C */ cpu->r[0] = rbrew_read16(cpu->mem, _t68); /* 027C1710 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C1714 */ _t69 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1714 */ _t70 = _t69 & 0x00000001u; /* 027C1714 */ if (_t70) goto L_027C1718; else goto L_027C16FC; L_027C1718: ; // 0x27c1718 /* 027C1718 */ goto L_027C1720; L_027C171C: ; // 0x27c171c /* 027C171C */ cpu->r[25] = 0x00000000u; L_027C1720: ; // 0x27c1720 /* 027C1720 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C1724 */ _t71 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C1724 */ _t72 = _t71 & 0x00000001u; /* 027C1724 */ if (_t72) goto L_027C1728; else goto L_027C1738; L_027C1728: ; // 0x27c1728 /* 027C1728 */ cpu->r[5] = cpu->r[25] + cpu->r[19]; /* 027C172C */ cpu->r[19] = cpu->r[5] + 0x00000001u; /* 027C172C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C1730 */ _t73 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C1730 */ _t74 = _t73 & 0x00000001u; /* 027C1730 */ if (_t74) goto L_027C1734; else goto L_027C1738; L_027C1734: ; // 0x27c1734 /* 027C1734 */ cpu->r[19] = 0x00000000u; L_027C1738: ; // 0x27c1738 /* 027C1738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C173C */ _t75 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C173C */ _t76 = _t75 & 0x00000001u; /* 027C173C */ if (_t76) goto L_027C1740; else goto L_027C1790; L_027C1740: ; // 0x27c1740 /* 027C1740 */ _t77 = cpu->r[1] + 0x0000000Cu; /* 027C1740 */ cpu->r[6] = rbrew_read32(cpu->mem, _t77); /* 027C1744 */ _t78 = cpu->r[6] + 0x00000014u; /* 027C1744 */ cpu->r[7] = rbrew_read32(cpu->mem, _t78); /* 027C1748 */ cpu->ctr = cpu->r[7]; /* 027C174C */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C1750 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1754 */ _t79 = cpu->r[1] + 0x00000008u; /* 027C1754 */ cpu->r[7] = rbrew_read32(cpu->mem, _t79); /* 027C1758 */ _t80 = cpu->r[7] + 0x00000000u; /* 027C1758 */ cpu->r[8] = rbrew_read16(cpu->mem, _t80); /* 027C175C */ cpu->r[31] = 0x00000000u; /* 027C1760 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027C1764 */ cpu->r[10] = 0x00080000u; /* 027C1768 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1768 */ _t82 = _t81 & 0x00000001u; /* 027C1768 */ if (_t82) goto L_027C1790; else goto L_027C176C; L_027C176C: ; // 0x27c176c /* 027C176C */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C1770 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]); /* 027C1774 */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027C1778 */ _t83 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1778 */ _t84 = _t83 & 0x00000001u; /* 027C1778 */ if (_t84) goto L_027C178C; else goto L_027C177C; L_027C177C: ; // 0x27c177c /* 027C177C */ _t85 = cpu->r[7] + 0x00000000u; /* 027C177C */ cpu->r[0] = rbrew_read16(cpu->mem, _t85); /* 027C1780 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C1784 */ _t86 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1784 */ _t87 = _t86 & 0x00000001u; /* 027C1784 */ if (_t87) goto L_027C1788; else goto L_027C176C; L_027C1788: ; // 0x27c1788 /* 027C1788 */ goto L_027C1790; L_027C178C: ; // 0x27c178c /* 027C178C */ cpu->r[31] = 0x00000000u; L_027C1790: ; // 0x27c1790 /* 027C1790 */ _t88 = cpu->r[27] + 0x00000008u; /* 027C1790 */ cpu->r[9] = rbrew_read32(cpu->mem, _t88); /* 027C1794 */ cpu->r[10] = cpu->r[9] - cpu->r[19]; /* 027C1798 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]); /* 027C179C */ _t89 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C179C */ _t90 = _t89 & 0x00000001u; /* 027C179C */ if (_t90) goto L_027C17A4; else goto L_027C17A0; L_027C17A0: ; // 0x27c17a0 /* 027C17A0 */ cpu->r[31] = cpu->r[10] + 0xFFFFFFFFu; L_027C17A4: ; // 0x27c17a4 /* 027C17A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C17A8 */ _t91 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C17A8 */ _t92 = _t91 & 0x00000001u; /* 027C17A8 */ if (_t92) goto L_027C17AC; else goto L_027C17F0; L_027C17AC: ; // 0x27c17ac /* 027C17AC */ _t93 = cpu->r[1] + 0x0000000Cu; /* 027C17AC */ cpu->r[11] = rbrew_read32(cpu->mem, _t93); /* 027C17B0 */ _t94 = cpu->r[11] + 0x00000014u; /* 027C17B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t94); /* 027C17B4 */ cpu->r[10] = rbrew_rlwinm(cpu->r[19], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C17B8 */ cpu->ctr = cpu->r[0]; /* 027C17BC */ cpu->r[18] = cpu->r[21] + cpu->r[10]; /* 027C17C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C17C4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C17C8 */ _t95 = cpu->r[1] + 0x00000008u; /* 027C17C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t95); /* 027C17CC */ cpu->r[6] = 0x00000000u; /* 027C17D0 */ cpu->r[5] = rbrew_rlwinm(cpu->r[31], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C17D4 */ cpu->r[3] = cpu->r[18]; /* 027C17D8 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C17DC */ cpu->r[12] = cpu->r[19] + cpu->r[31]; /* 027C17E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[25]); /* 027C17E4 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C17E4 */ _t97 = _t96 & 0x00000001u; /* 027C17E4 */ if (_t97) goto L_027C17E8; else goto L_027C17F0; L_027C17E8: ; // 0x27c17e8 /* 027C17E8 */ cpu->r[6] = rbrew_rlwinm(cpu->r[12], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C17EC */ _t98 = cpu->r[6] + cpu->r[21]; /* 027C17EC */ rbrew_write16(cpu->mem, _t98, (uint16_t)cpu->r[30]); L_027C17F0: ; // 0x27c17f0 /* 027C17F0 */ cpu->r[29] = cpu->r[29] + cpu->r[20]; L_027C17F4: ; // 0x27c17f4 /* 027C17F4 */ cpu->r[25] = cpu->r[22]; /* 027C17F8 */ _t99 = cpu->r[25] + 0x00000000u; /* 027C17F8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t99); /* 027C17FC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1800 */ _t100 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1800 */ _t101 = _t100 & 0x00000001u; /* 027C1800 */ if (_t101) goto L_027C1804; else goto L_027C15D4; L_027C1804: ; // 0x27c1804 /* 027C1804 */ goto L_027C18F8; L_027C1808: ; // 0x27c1808 /* 027C1808 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C180C */ _t102 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C180C */ _t103 = _t102 & 0x00000001u; /* 027C180C */ if (_t103) goto L_027C18EC; else goto L_027C1810; L_027C1810: ; // 0x27c1810 /* 027C1810 */ _t104 = cpu->r[27] + 0x00000004u; /* 027C1810 */ cpu->r[7] = rbrew_read32(cpu->mem, _t104); /* 027C1814 */ _t105 = cpu->r[1] + 0x00000010u; /* 027C1814 */ rbrew_write32(cpu->mem, _t105, cpu->r[25]); /* 027C1818 */ _t106 = cpu->r[1] + 0x00000014u; /* 027C1818 */ rbrew_write32(cpu->mem, _t106, cpu->r[31]); /* 027C181C */ _t107 = cpu->r[7] + 0x00000014u; /* 027C181C */ cpu->r[8] = rbrew_read32(cpu->mem, _t107); /* 027C1820 */ cpu->ctr = cpu->r[8]; /* 027C1824 */ _t108 = cpu->r[27] + 0x00000000u; /* 027C1824 */ cpu->r[22] = rbrew_read32(cpu->mem, _t108); /* 027C1828 */ cpu->r[20] = 0x00000001u; /* 027C182C */ cpu->r[19] = cpu->r[29]; /* 027C1830 */ cpu->r[3] = cpu->r[27]; /* 027C1834 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1838 */ _t109 = cpu->r[27] + 0x00000000u; /* 027C1838 */ cpu->r[10] = rbrew_read32(cpu->mem, _t109); /* 027C183C */ _t110 = cpu->r[10] + 0x00000000u; /* 027C183C */ cpu->r[9] = rbrew_read16(cpu->mem, _t110); /* 027C1840 */ cpu->r[31] = 0x00000000u; /* 027C1844 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]); /* 027C1848 */ cpu->r[5] = 0x00080000u; /* 027C184C */ _t111 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C184C */ _t112 = _t111 & 0x00000001u; /* 027C184C */ if (_t112) goto L_027C1874; else goto L_027C1850; L_027C1850: ; // 0x27c1850 /* 027C1850 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C1854 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]); /* 027C1858 */ cpu->r[10] = cpu->r[10] + 0x00000002u; /* 027C185C */ _t113 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C185C */ _t114 = _t113 & 0x00000001u; /* 027C185C */ if (_t114) goto L_027C1870; else goto L_027C1860; L_027C1860: ; // 0x27c1860 /* 027C1860 */ _t115 = cpu->r[10] + 0x00000000u; /* 027C1860 */ cpu->r[0] = rbrew_read16(cpu->mem, _t115); /* 027C1864 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C1868 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1868 */ _t117 = _t116 & 0x00000001u; /* 027C1868 */ if (_t117) goto L_027C186C; else goto L_027C1850; L_027C186C: ; // 0x27c186c /* 027C186C */ goto L_027C1874; L_027C1870: ; // 0x27c1870 /* 027C1870 */ cpu->r[31] = 0x00000000u; L_027C1874: ; // 0x27c1874 /* 027C1874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C1878 */ _t118 = cpu->r[27] + 0x00000008u; /* 027C1878 */ cpu->r[9] = rbrew_read32(cpu->mem, _t118); /* 027C187C */ _t119 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C187C */ _t120 = _t119 & 0x00000001u; /* 027C187C */ if (_t120) goto L_027C1880; else goto L_027C1890; L_027C1880: ; // 0x27c1880 /* 027C1880 */ cpu->r[12] = cpu->r[31] + cpu->r[19]; /* 027C1884 */ cpu->r[19] = cpu->r[12] + 0x00000001u; /* 027C1884 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C1888 */ _t121 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C1888 */ _t122 = _t121 & 0x00000001u; /* 027C1888 */ if (_t122) goto L_027C188C; else goto L_027C1890; L_027C188C: ; // 0x27c188c /* 027C188C */ cpu->r[19] = 0x00000000u; L_027C1890: ; // 0x27c1890 /* 027C1890 */ cpu->r[11] = cpu->r[9] - cpu->r[19]; /* 027C1894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000001u); /* 027C1898 */ _t123 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1898 */ _t124 = _t123 & 0x00000001u; /* 027C1898 */ if (_t124) goto L_027C18A4; else goto L_027C189C; L_027C189C: ; // 0x27c189c /* 027C189C */ cpu->r[20] = cpu->r[11] + 0xFFFFFFFFu; /* 027C189C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u); /* 027C18A0 */ _t125 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C18A0 */ _t126 = _t125 & 0x00000001u; /* 027C18A0 */ if (_t126) goto L_027C18A4; else goto L_027C18E8; L_027C18A4: ; // 0x27c18a4 /* 027C18A4 */ _t127 = cpu->r[1] + 0x00000014u; /* 027C18A4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t127); /* 027C18A8 */ _t128 = cpu->r[8] + 0x00000014u; /* 027C18A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t128); /* 027C18AC */ cpu->r[6] = rbrew_rlwinm(cpu->r[19], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C18B0 */ cpu->ctr = cpu->r[0]; /* 027C18B4 */ cpu->r[21] = cpu->r[22] + cpu->r[6]; /* 027C18B8 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027C18BC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C18C0 */ _t129 = cpu->r[1] + 0x00000010u; /* 027C18C0 */ cpu->r[4] = rbrew_read32(cpu->mem, _t129); /* 027C18C4 */ cpu->r[6] = 0x00000000u; /* 027C18C8 */ cpu->r[5] = rbrew_rlwinm(cpu->r[20], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C18CC */ cpu->r[3] = cpu->r[21]; /* 027C18D0 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C18D4 */ cpu->r[0] = cpu->r[19] + cpu->r[20]; /* 027C18D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[31]); /* 027C18DC */ _t130 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C18DC */ _t131 = _t130 & 0x00000001u; /* 027C18DC */ if (_t131) goto L_027C18E0; else goto L_027C18E8; L_027C18E0: ; // 0x27c18e0 /* 027C18E0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C18E4 */ _t132 = cpu->r[11] + cpu->r[22]; /* 027C18E4 */ rbrew_write16(cpu->mem, _t132, (uint16_t)cpu->r[30]); L_027C18E8: ; // 0x27c18e8 /* 027C18E8 */ cpu->r[29] = cpu->r[29] + 0x00000001u; L_027C18EC: ; // 0x27c18ec /* 027C18EC */ _t133 = cpu->r[25] + 0x00000002u; /* 027C18EC */ cpu->r[0] = rbrew_read16(cpu->mem, _t133); /* 027C18EC */ cpu->r[25] = _t133; /* 027C18F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C18F4 */ _t134 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C18F4 */ _t135 = _t134 & 0x00000001u; /* 027C18F4 */ if (_t135) goto L_027C18F8; else goto L_027C15D4; L_027C18F8: ; // 0x27c18f8 /* 027C18F8 */ cpu->r[3] = cpu->r[29]; /* 027C18FC */ /* nop */ /* 027C1900 */ _t136 = cpu->r[1] + 0x00000054u; /* 027C1900 */ cpu->r[0] = rbrew_read32(cpu->mem, _t136); /* 027C1904 */ cpu->lr = cpu->r[0]; /* 027C1908 */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027C190C */ return; } // fn_027C1910 @ 0x27c1910 void Gambit_fn_027C1910(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_027C1910: ; // 0x27c1910 /* 027C1910 */ cpu->r[0] = cpu->lr; /* 027C1914 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C1914 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C1914 */ cpu->r[1] = _t0; /* 027C1918 */ _t1 = cpu->r[1] + 0x00000008u; /* 027C1918 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C191C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C191C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C1920 */ cpu->r[30] = cpu->r[4]; /* 027C1924 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C1924 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C1928 */ _t4 = cpu->r[30] + 0x00000004u; /* 027C1928 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4); /* 027C192C */ _t5 = cpu->r[9] + 0x00000014u; /* 027C192C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5); /* 027C1930 */ cpu->ctr = cpu->r[10]; /* 027C1934 */ cpu->r[31] = 0x00000000u; /* 027C1938 */ cpu->r[3] = cpu->r[30]; /* 027C193C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1940 */ _t6 = cpu->r[30] + 0x00000000u; /* 027C1940 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6); /* 027C1944 */ cpu->r[12] = 0x10110000u; /* 027C1948 */ _t7 = cpu->r[12] + 0x0000739Au; /* 027C1948 */ cpu->r[12] = rbrew_read16(cpu->mem, _t7); /* 027C194C */ _t8 = cpu->r[7] + 0x00000000u; /* 027C194C */ cpu->r[0] = rbrew_read16(cpu->mem, _t8); /* 027C1950 */ cpu->r[9] = cpu->r[31]; /* 027C1954 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]); /* 027C1958 */ cpu->r[10] = 0x00080000u; /* 027C195C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C195C */ _t10 = _t9 & 0x00000001u; /* 027C195C */ if (_t10) goto L_027C197C; else goto L_027C1960; L_027C1960: ; // 0x27c1960 /* 027C1960 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027C1964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]); /* 027C1968 */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027C196C */ _t11 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C196C */ _t12 = _t11 & 0x00000001u; /* 027C196C */ if (_t12) goto L_027C197C; else goto L_027C1970; L_027C1970: ; // 0x27c1970 /* 027C1970 */ _t13 = cpu->r[7] + 0x00000000u; /* 027C1970 */ cpu->r[6] = rbrew_read16(cpu->mem, _t13); /* 027C1974 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[12]); /* 027C1978 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1978 */ _t15 = _t14 & 0x00000001u; /* 027C1978 */ if (_t15) goto L_027C197C; else goto L_027C1960; L_027C197C: ; // 0x27c197c /* 027C197C */ _t16 = cpu->r[30] + 0x00000004u; /* 027C197C */ cpu->r[8] = rbrew_read32(cpu->mem, _t16); /* 027C1980 */ _t17 = cpu->r[8] + 0x00000014u; /* 027C1980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C1984 */ cpu->ctr = cpu->r[0]; /* 027C1988 */ cpu->r[3] = cpu->r[30]; /* 027C198C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1990 */ _t18 = cpu->r[30] + 0x00000000u; /* 027C1990 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18); /* 027C1994 */ _t19 = cpu->r[11] + 0x00000000u; /* 027C1994 */ cpu->r[0] = rbrew_read16(cpu->mem, _t19); /* 027C1998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C199C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C199C */ _t21 = _t20 & 0x00000001u; /* 027C199C */ if (_t21) goto L_027C1A30; else goto L_027C19A0; L_027C19A0: ; // 0x27c19a0 /* 027C19A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C19A4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19A4 */ _t23 = _t22 & 0x00000001u; /* 027C19A4 */ if (_t23) goto L_027C19B0; else goto L_027C19A8; L_027C19A8: ; // 0x27c19a8 /* 027C19A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C19AC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19AC */ _t25 = _t24 & 0x00000001u; /* 027C19AC */ if (_t25) goto L_027C19B0; else goto L_027C1A20; L_027C19B0: ; // 0x27c19b0 /* 027C19B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C19B4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19B4 */ _t27 = _t26 & 0x00000001u; /* 027C19B4 */ if (_t27) goto L_027C19B8; else goto L_027C19E4; L_027C19B8: ; // 0x27c19b8 /* 027C19B8 */ _t28 = cpu->r[11] + 0x00000006u; /* 027C19B8 */ cpu->r[6] = rbrew_read16(cpu->mem, _t28); /* 027C19BC */ cpu->r[12] = cpu->r[11] + cpu->r[6]; /* 027C19C0 */ cpu->r[0] = cpu->r[12] + 0x00000008u; /* 027C19C4 */ cpu->r[8] = cpu->r[0] - cpu->r[11]; /* 027C19C8 */ cpu->r[11] = cpu->r[0]; /* 027C19CC */ _t29 = cpu->r[11] + 0x00000000u; /* 027C19CC */ cpu->r[0] = rbrew_read16(cpu->mem, _t29); /* 027C19D0 */ /* nop */ /* 027C19D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C19D8 */ cpu->r[31] = cpu->r[31] + cpu->r[9]; /* 027C19DC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19DC */ _t31 = _t30 & 0x00000001u; /* 027C19DC */ if (_t31) goto L_027C19E0; else goto L_027C19A0; L_027C19E0: ; // 0x27c19e0 /* 027C19E0 */ goto L_027C1A30; L_027C19E4: ; // 0x27c19e4 /* 027C19E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C19E8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19E8 */ _t33 = _t32 & 0x00000001u; /* 027C19E8 */ if (_t33) goto L_027C19EC; else goto L_027C1A10; L_027C19EC: ; // 0x27c19ec /* 027C19EC */ cpu->r[0] = cpu->r[11] + 0x00000006u; /* 027C19F0 */ cpu->r[8] = cpu->r[0] - cpu->r[11]; /* 027C19F4 */ cpu->r[11] = cpu->r[0]; /* 027C19F8 */ _t34 = cpu->r[11] + 0x00000000u; /* 027C19F8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t34); /* 027C19FC */ /* nop */ /* 027C1A00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1A04 */ cpu->r[31] = cpu->r[31] + cpu->r[9]; /* 027C1A08 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1A08 */ _t36 = _t35 & 0x00000001u; /* 027C1A08 */ if (_t36) goto L_027C1A0C; else goto L_027C19A0; L_027C1A0C: ; // 0x27c1a0c /* 027C1A0C */ goto L_027C1A30; L_027C1A10: ; // 0x27c1a10 /* 027C1A10 */ _t37 = cpu->r[11] + 0x00000000u; /* 027C1A10 */ cpu->r[0] = rbrew_read16(cpu->mem, _t37); /* 027C1A14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1A18 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1A18 */ _t39 = _t38 & 0x00000001u; /* 027C1A18 */ if (_t39) goto L_027C1A1C; else goto L_027C19A0; L_027C1A1C: ; // 0x27c1a1c /* 027C1A1C */ goto L_027C1A30; L_027C1A20: ; // 0x27c1a20 /* 027C1A20 */ _t40 = cpu->r[11] + 0x00000002u; /* 027C1A20 */ cpu->r[0] = rbrew_read16(cpu->mem, _t40); /* 027C1A20 */ cpu->r[11] = _t40; /* 027C1A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1A28 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C1A2C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1A2C */ _t42 = _t41 & 0x00000001u; /* 027C1A2C */ if (_t42) goto L_027C1A30; else goto L_027C19A0; L_027C1A30: ; // 0x27c1a30 /* 027C1A30 */ _t43 = cpu->r[1] + 0x00000014u; /* 027C1A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43); /* 027C1A34 */ cpu->r[3] = cpu->r[31]; /* 027C1A38 */ _t44 = cpu->r[1] + 0x0000000Cu; /* 027C1A38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44); /* 027C1A3C */ cpu->lr = cpu->r[0]; /* 027C1A40 */ _t45 = cpu->r[1] + 0x00000008u; /* 027C1A40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45); /* 027C1A44 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C1A48 */ return; } // fn_027C1914 @ 0x27c1914 void Gambit_fn_027C1914(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_027C1914: ; // 0x27c1914 /* 027C1914 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C1914 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C1914 */ cpu->r[1] = _t0; /* 027C1918 */ _t1 = cpu->r[1] + 0x00000008u; /* 027C1918 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C191C */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C191C */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C1920 */ cpu->r[30] = cpu->r[4]; /* 027C1924 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C1924 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C1928 */ _t4 = cpu->r[30] + 0x00000004u; /* 027C1928 */ cpu->r[9] = rbrew_read32(cpu->mem, _t4); /* 027C192C */ _t5 = cpu->r[9] + 0x00000014u; /* 027C192C */ cpu->r[10] = rbrew_read32(cpu->mem, _t5); /* 027C1930 */ cpu->ctr = cpu->r[10]; /* 027C1934 */ cpu->r[31] = 0x00000000u; /* 027C1938 */ cpu->r[3] = cpu->r[30]; /* 027C193C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1940 */ _t6 = cpu->r[30] + 0x00000000u; /* 027C1940 */ cpu->r[7] = rbrew_read32(cpu->mem, _t6); /* 027C1944 */ cpu->r[12] = 0x10110000u; /* 027C1948 */ _t7 = cpu->r[12] + 0x0000739Au; /* 027C1948 */ cpu->r[12] = rbrew_read16(cpu->mem, _t7); /* 027C194C */ _t8 = cpu->r[7] + 0x00000000u; /* 027C194C */ cpu->r[0] = rbrew_read16(cpu->mem, _t8); /* 027C1950 */ cpu->r[9] = cpu->r[31]; /* 027C1954 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]); /* 027C1958 */ cpu->r[10] = 0x00080000u; /* 027C195C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C195C */ _t10 = _t9 & 0x00000001u; /* 027C195C */ if (_t10) goto L_027C197C; else goto L_027C1960; L_027C1960: ; // 0x27c1960 /* 027C1960 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027C1964 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[10]); /* 027C1968 */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027C196C */ _t11 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C196C */ _t12 = _t11 & 0x00000001u; /* 027C196C */ if (_t12) goto L_027C197C; else goto L_027C1970; L_027C1970: ; // 0x27c1970 /* 027C1970 */ _t13 = cpu->r[7] + 0x00000000u; /* 027C1970 */ cpu->r[6] = rbrew_read16(cpu->mem, _t13); /* 027C1974 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[12]); /* 027C1978 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1978 */ _t15 = _t14 & 0x00000001u; /* 027C1978 */ if (_t15) goto L_027C197C; else goto L_027C1960; L_027C197C: ; // 0x27c197c /* 027C197C */ _t16 = cpu->r[30] + 0x00000004u; /* 027C197C */ cpu->r[8] = rbrew_read32(cpu->mem, _t16); /* 027C1980 */ _t17 = cpu->r[8] + 0x00000014u; /* 027C1980 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C1984 */ cpu->ctr = cpu->r[0]; /* 027C1988 */ cpu->r[3] = cpu->r[30]; /* 027C198C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1990 */ _t18 = cpu->r[30] + 0x00000000u; /* 027C1990 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18); /* 027C1994 */ _t19 = cpu->r[11] + 0x00000000u; /* 027C1994 */ cpu->r[0] = rbrew_read16(cpu->mem, _t19); /* 027C1998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C199C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C199C */ _t21 = _t20 & 0x00000001u; /* 027C199C */ if (_t21) goto L_027C1A30; else goto L_027C19A0; L_027C19A0: ; // 0x27c19a0 /* 027C19A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C19A4 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19A4 */ _t23 = _t22 & 0x00000001u; /* 027C19A4 */ if (_t23) goto L_027C19B0; else goto L_027C19A8; L_027C19A8: ; // 0x27c19a8 /* 027C19A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C19AC */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19AC */ _t25 = _t24 & 0x00000001u; /* 027C19AC */ if (_t25) goto L_027C19B0; else goto L_027C1A20; L_027C19B0: ; // 0x27c19b0 /* 027C19B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C19B4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19B4 */ _t27 = _t26 & 0x00000001u; /* 027C19B4 */ if (_t27) goto L_027C19B8; else goto L_027C19E4; L_027C19B8: ; // 0x27c19b8 /* 027C19B8 */ _t28 = cpu->r[11] + 0x00000006u; /* 027C19B8 */ cpu->r[6] = rbrew_read16(cpu->mem, _t28); /* 027C19BC */ cpu->r[12] = cpu->r[11] + cpu->r[6]; /* 027C19C0 */ cpu->r[0] = cpu->r[12] + 0x00000008u; /* 027C19C4 */ cpu->r[8] = cpu->r[0] - cpu->r[11]; /* 027C19C8 */ cpu->r[11] = cpu->r[0]; /* 027C19CC */ _t29 = cpu->r[11] + 0x00000000u; /* 027C19CC */ cpu->r[0] = rbrew_read16(cpu->mem, _t29); /* 027C19D0 */ /* nop */ /* 027C19D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C19D8 */ cpu->r[31] = cpu->r[31] + cpu->r[9]; /* 027C19DC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19DC */ _t31 = _t30 & 0x00000001u; /* 027C19DC */ if (_t31) goto L_027C19E0; else goto L_027C19A0; L_027C19E0: ; // 0x27c19e0 /* 027C19E0 */ goto L_027C1A30; L_027C19E4: ; // 0x27c19e4 /* 027C19E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C19E8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C19E8 */ _t33 = _t32 & 0x00000001u; /* 027C19E8 */ if (_t33) goto L_027C19EC; else goto L_027C1A10; L_027C19EC: ; // 0x27c19ec /* 027C19EC */ cpu->r[0] = cpu->r[11] + 0x00000006u; /* 027C19F0 */ cpu->r[8] = cpu->r[0] - cpu->r[11]; /* 027C19F4 */ cpu->r[11] = cpu->r[0]; /* 027C19F8 */ _t34 = cpu->r[11] + 0x00000000u; /* 027C19F8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t34); /* 027C19FC */ /* nop */ /* 027C1A00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1A04 */ cpu->r[31] = cpu->r[31] + cpu->r[9]; /* 027C1A08 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1A08 */ _t36 = _t35 & 0x00000001u; /* 027C1A08 */ if (_t36) goto L_027C1A0C; else goto L_027C19A0; L_027C1A0C: ; // 0x27c1a0c /* 027C1A0C */ goto L_027C1A30; L_027C1A10: ; // 0x27c1a10 /* 027C1A10 */ _t37 = cpu->r[11] + 0x00000000u; /* 027C1A10 */ cpu->r[0] = rbrew_read16(cpu->mem, _t37); /* 027C1A14 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1A18 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1A18 */ _t39 = _t38 & 0x00000001u; /* 027C1A18 */ if (_t39) goto L_027C1A1C; else goto L_027C19A0; L_027C1A1C: ; // 0x27c1a1c /* 027C1A1C */ goto L_027C1A30; L_027C1A20: ; // 0x27c1a20 /* 027C1A20 */ _t40 = cpu->r[11] + 0x00000002u; /* 027C1A20 */ cpu->r[0] = rbrew_read16(cpu->mem, _t40); /* 027C1A20 */ cpu->r[11] = _t40; /* 027C1A24 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1A28 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C1A2C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1A2C */ _t42 = _t41 & 0x00000001u; /* 027C1A2C */ if (_t42) goto L_027C1A30; else goto L_027C19A0; L_027C1A30: ; // 0x27c1a30 /* 027C1A30 */ _t43 = cpu->r[1] + 0x00000014u; /* 027C1A30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43); /* 027C1A34 */ cpu->r[3] = cpu->r[31]; /* 027C1A38 */ _t44 = cpu->r[1] + 0x0000000Cu; /* 027C1A38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t44); /* 027C1A3C */ cpu->lr = cpu->r[0]; /* 027C1A40 */ _t45 = cpu->r[1] + 0x00000008u; /* 027C1A40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45); /* 027C1A44 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C1A48 */ return; } // fn_027C1A4C @ 0x27c1a4c void Gambit_fn_027C1A4C(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; L_027C1A4C: ; // 0x27c1a4c /* 027C1A4C */ _t0 = cpu->r[1] + 0xFFFFFFC8u; /* 027C1A4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C1A4C */ cpu->r[1] = _t0; /* 027C1A50 */ /* nop */ /* 027C1A54 */ cpu->r[0] = cpu->lr; /* 027C1A58 */ _t1 = cpu->r[1] + 0x0000003Cu; /* 027C1A58 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027C1A5C */ cpu->r[29] = cpu->r[5]; /* 027C1A60 */ _t2 = cpu->r[29] + 0x00000004u; /* 027C1A60 */ cpu->r[11] = rbrew_read32(cpu->mem, _t2); /* 027C1A64 */ _t3 = cpu->r[11] + 0x00000014u; /* 027C1A64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027C1A68 */ cpu->ctr = cpu->r[0]; /* 027C1A6C */ cpu->r[3] = cpu->r[29]; /* 027C1A70 */ cpu->r[25] = cpu->r[4]; /* 027C1A74 */ cpu->r[30] = 0x00000000u; /* 027C1A78 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1A7C */ cpu->r[31] = 0x10110000u; /* 027C1A80 */ _t4 = cpu->r[29] + 0x00000000u; /* 027C1A80 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4); /* 027C1A84 */ _t5 = cpu->r[31] + 0x0000739Au; /* 027C1A84 */ cpu->r[31] = rbrew_read16(cpu->mem, _t5); /* 027C1A88 */ _t6 = cpu->r[6] + 0x00000000u; /* 027C1A88 */ cpu->r[0] = rbrew_read16(cpu->mem, _t6); /* 027C1A8C */ cpu->r[4] = cpu->r[30]; /* 027C1A90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027C1A94 */ cpu->r[0] = 0x00080000u; /* 027C1A98 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1A98 */ _t8 = _t7 & 0x00000001u; /* 027C1A98 */ if (_t8) goto L_027C1AB8; else goto L_027C1A9C; L_027C1A9C: ; // 0x27c1a9c /* 027C1A9C */ cpu->r[4] = cpu->r[4] + 0x00000001u; /* 027C1AA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[4], cpu->r[0]); /* 027C1AA4 */ cpu->r[6] = cpu->r[6] + 0x00000002u; /* 027C1AA8 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1AA8 */ _t10 = _t9 & 0x00000001u; /* 027C1AA8 */ if (_t10) goto L_027C1AB8; else goto L_027C1AAC; L_027C1AAC: ; // 0x27c1aac /* 027C1AAC */ _t11 = cpu->r[6] + 0x00000000u; /* 027C1AAC */ cpu->r[5] = rbrew_read16(cpu->mem, _t11); /* 027C1AB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027C1AB4 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1AB4 */ _t13 = _t12 & 0x00000001u; /* 027C1AB4 */ if (_t13) goto L_027C1AB8; else goto L_027C1A9C; L_027C1AB8: ; // 0x27c1ab8 /* 027C1AB8 */ _t14 = cpu->r[29] + 0x00000004u; /* 027C1AB8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t14); /* 027C1ABC */ _t15 = cpu->r[7] + 0x00000014u; /* 027C1ABC */ cpu->r[8] = rbrew_read32(cpu->mem, _t15); /* 027C1AC0 */ cpu->ctr = cpu->r[8]; /* 027C1AC4 */ cpu->r[3] = cpu->r[29]; /* 027C1AC8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1ACC */ _t16 = cpu->r[29] + 0x00000000u; /* 027C1ACC */ cpu->r[28] = rbrew_read32(cpu->mem, _t16); /* 027C1AD0 */ _t17 = cpu->r[28] + 0x00000000u; /* 027C1AD0 */ cpu->r[0] = rbrew_read16(cpu->mem, _t17); /* 027C1AD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1AD8 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1AD8 */ _t19 = _t18 & 0x00000001u; /* 027C1AD8 */ if (_t19) goto L_027C1C1C; else goto L_027C1ADC; L_027C1ADC: ; // 0x27c1adc /* 027C1ADC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1AE0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1AE0 */ _t21 = _t20 & 0x00000001u; /* 027C1AE0 */ if (_t21) goto L_027C1AEC; else goto L_027C1AE4; L_027C1AE4: ; // 0x27c1ae4 /* 027C1AE4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C1AE8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1AE8 */ _t23 = _t22 & 0x00000001u; /* 027C1AE8 */ if (_t23) goto L_027C1AEC; else goto L_027C1B2C; L_027C1AEC: ; // 0x27c1aec /* 027C1AEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1AF0 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1AF0 */ _t25 = _t24 & 0x00000001u; /* 027C1AF0 */ if (_t25) goto L_027C1AF4; else goto L_027C1B10; L_027C1AF4: ; // 0x27c1af4 /* 027C1AF4 */ _t26 = cpu->r[28] + 0x00000006u; /* 027C1AF4 */ cpu->r[10] = rbrew_read16(cpu->mem, _t26); /* 027C1AF8 */ cpu->r[9] = cpu->r[28] + cpu->r[10]; /* 027C1AFC */ _t27 = cpu->r[9] + 0x00000008u; /* 027C1AFC */ cpu->r[0] = rbrew_read16(cpu->mem, _t27); /* 027C1B00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1B04 */ cpu->r[28] = cpu->r[9] + 0x00000008u; /* 027C1B08 */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1B08 */ _t29 = _t28 & 0x00000001u; /* 027C1B08 */ if (_t29) goto L_027C1B0C; else goto L_027C1ADC; L_027C1B0C: ; // 0x27c1b0c /* 027C1B0C */ goto L_027C1C1C; L_027C1B10: ; // 0x27c1b10 /* 027C1B10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C1B14 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1B14 */ _t31 = _t30 & 0x00000001u; /* 027C1B14 */ if (_t31) goto L_027C1B18; else goto L_027C1B1C; L_027C1B18: ; // 0x27c1b18 /* 027C1B18 */ cpu->r[28] = cpu->r[28] + 0x00000006u; L_027C1B1C: ; // 0x27c1b1c /* 027C1B1C */ _t32 = cpu->r[28] + 0x00000000u; /* 027C1B1C */ cpu->r[0] = rbrew_read16(cpu->mem, _t32); /* 027C1B20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1B24 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1B24 */ _t34 = _t33 & 0x00000001u; /* 027C1B24 */ if (_t34) goto L_027C1B28; else goto L_027C1ADC; L_027C1B28: ; // 0x27c1b28 /* 027C1B28 */ goto L_027C1C1C; L_027C1B2C: ; // 0x27c1b2c /* 027C1B2C */ cpu->r[11] = 0x10110000u; /* 027C1B30 */ _t35 = cpu->r[25] + 0x00000004u; /* 027C1B30 */ cpu->r[12] = rbrew_read32(cpu->mem, _t35); /* 027C1B34 */ cpu->r[11] = cpu->r[11] + 0xFFFFBCDCu; /* 027C1B38 */ _t36 = cpu->r[1] + 0x00000008u; /* 027C1B38 */ rbrew_write32(cpu->mem, _t36, cpu->r[28]); /* 027C1B3C */ _t37 = cpu->r[1] + 0x0000000Cu; /* 027C1B3C */ rbrew_write32(cpu->mem, _t37, cpu->r[11]); /* 027C1B40 */ _t38 = cpu->r[12] + 0x00000014u; /* 027C1B40 */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027C1B44 */ cpu->ctr = cpu->r[0]; /* 027C1B48 */ _t39 = cpu->r[25] + 0x00000000u; /* 027C1B48 */ cpu->r[27] = rbrew_read32(cpu->mem, _t39); /* 027C1B4C */ cpu->r[3] = cpu->r[25]; /* 027C1B50 */ cpu->r[23] = cpu->r[30]; /* 027C1B54 */ cpu->r[24] = 0x00000001u; /* 027C1B58 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1B5C */ _t40 = cpu->r[25] + 0x00000000u; /* 027C1B5C */ cpu->r[11] = rbrew_read32(cpu->mem, _t40); /* 027C1B60 */ _t41 = cpu->r[11] + 0x00000000u; /* 027C1B60 */ cpu->r[5] = rbrew_read16(cpu->mem, _t41); /* 027C1B64 */ cpu->r[29] = 0x00000000u; /* 027C1B68 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[31]); /* 027C1B6C */ cpu->r[5] = 0x00080000u; /* 027C1B70 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1B70 */ _t43 = _t42 & 0x00000001u; /* 027C1B70 */ if (_t43) goto L_027C1B98; else goto L_027C1B74; L_027C1B74: ; // 0x27c1b74 /* 027C1B74 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027C1B78 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[5]); /* 027C1B7C */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027C1B80 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1B80 */ _t45 = _t44 & 0x00000001u; /* 027C1B80 */ if (_t45) goto L_027C1B94; else goto L_027C1B84; L_027C1B84: ; // 0x27c1b84 /* 027C1B84 */ _t46 = cpu->r[11] + 0x00000000u; /* 027C1B84 */ cpu->r[6] = rbrew_read16(cpu->mem, _t46); /* 027C1B88 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[6], cpu->r[31]); /* 027C1B8C */ _t47 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1B8C */ _t48 = _t47 & 0x00000001u; /* 027C1B8C */ if (_t48) goto L_027C1B90; else goto L_027C1B74; L_027C1B90: ; // 0x27c1b90 /* 027C1B90 */ goto L_027C1B98; L_027C1B94: ; // 0x27c1b94 /* 027C1B94 */ cpu->r[29] = 0x00000000u; L_027C1B98: ; // 0x27c1b98 /* 027C1B98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u); /* 027C1B9C */ _t49 = cpu->r[25] + 0x00000008u; /* 027C1B9C */ cpu->r[8] = rbrew_read32(cpu->mem, _t49); /* 027C1BA0 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C1BA0 */ _t51 = _t50 & 0x00000001u; /* 027C1BA0 */ if (_t51) goto L_027C1BA4; else goto L_027C1BB4; L_027C1BA4: ; // 0x27c1ba4 /* 027C1BA4 */ cpu->r[7] = cpu->r[29] + cpu->r[23]; /* 027C1BA8 */ cpu->r[23] = cpu->r[7] + 0x00000001u; /* 027C1BA8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u); /* 027C1BAC */ _t52 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C1BAC */ _t53 = _t52 & 0x00000001u; /* 027C1BAC */ if (_t53) goto L_027C1BB0; else goto L_027C1BB4; L_027C1BB0: ; // 0x27c1bb0 /* 027C1BB0 */ cpu->r[23] = 0x00000000u; L_027C1BB4: ; // 0x27c1bb4 /* 027C1BB4 */ cpu->r[9] = cpu->r[8] - cpu->r[23]; /* 027C1BB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u); /* 027C1BBC */ _t54 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1BBC */ _t55 = _t54 & 0x00000001u; /* 027C1BBC */ if (_t55) goto L_027C1BC8; else goto L_027C1BC0; L_027C1BC0: ; // 0x27c1bc0 /* 027C1BC0 */ cpu->r[24] = cpu->r[9] + 0xFFFFFFFFu; /* 027C1BC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C1BC4 */ _t56 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1BC4 */ _t57 = _t56 & 0x00000001u; /* 027C1BC4 */ if (_t57) goto L_027C1BC8; else goto L_027C1C0C; L_027C1BC8: ; // 0x27c1bc8 /* 027C1BC8 */ _t58 = cpu->r[1] + 0x0000000Cu; /* 027C1BC8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t58); /* 027C1BCC */ _t59 = cpu->r[12] + 0x00000014u; /* 027C1BCC */ cpu->r[4] = rbrew_read32(cpu->mem, _t59); /* 027C1BD0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[23], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C1BD4 */ cpu->ctr = cpu->r[4]; /* 027C1BD8 */ cpu->r[26] = cpu->r[27] + cpu->r[0]; /* 027C1BDC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C1BE0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1BE4 */ _t60 = cpu->r[1] + 0x00000008u; /* 027C1BE4 */ cpu->r[4] = rbrew_read32(cpu->mem, _t60); /* 027C1BE8 */ cpu->r[6] = 0x00000000u; /* 027C1BEC */ cpu->r[5] = rbrew_rlwinm(cpu->r[24], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C1BF0 */ cpu->r[3] = cpu->r[26]; /* 027C1BF4 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C1BF8 */ cpu->r[0] = cpu->r[23] + cpu->r[24]; /* 027C1BFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[29]); /* 027C1C00 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1C00 */ _t62 = _t61 & 0x00000001u; /* 027C1C00 */ if (_t62) goto L_027C1C04; else goto L_027C1C0C; L_027C1C04: ; // 0x27c1c04 /* 027C1C04 */ cpu->r[8] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C1C08 */ _t63 = cpu->r[8] + cpu->r[27]; /* 027C1C08 */ rbrew_write16(cpu->mem, _t63, (uint16_t)cpu->r[31]); L_027C1C0C: ; // 0x27c1c0c /* 027C1C0C */ _t64 = cpu->r[28] + 0x00000002u; /* 027C1C0C */ cpu->r[0] = rbrew_read16(cpu->mem, _t64); /* 027C1C0C */ cpu->r[28] = _t64; /* 027C1C10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1C14 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027C1C18 */ _t65 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1C18 */ _t66 = _t65 & 0x00000001u; /* 027C1C18 */ if (_t66) goto L_027C1C1C; else goto L_027C1ADC; L_027C1C1C: ; // 0x27c1c1c /* 027C1C1C */ cpu->r[3] = cpu->r[30]; /* 027C1C20 */ /* nop */ /* 027C1C24 */ _t67 = cpu->r[1] + 0x0000003Cu; /* 027C1C24 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67); /* 027C1C28 */ cpu->lr = cpu->r[0]; /* 027C1C2C */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027C1C30 */ return; } // fn_027C1C34 @ 0x27c1c34 void Gambit_fn_027C1C34(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_027C1C34: ; // 0x27c1c34 /* 027C1C34 */ cpu->r[0] = cpu->lr; /* 027C1C38 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C1C38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C1C38 */ cpu->r[1] = _t0; /* 027C1C3C */ _t1 = cpu->r[1] + 0x00000008u; /* 027C1C3C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C1C40 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C1C40 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C1C44 */ cpu->r[30] = cpu->r[4]; /* 027C1C48 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C1C48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C1C4C */ _t4 = cpu->r[30] + 0x00000004u; /* 027C1C4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4); /* 027C1C50 */ _t5 = cpu->r[12] + 0x00000014u; /* 027C1C50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5); /* 027C1C54 */ cpu->ctr = cpu->r[8]; /* 027C1C58 */ cpu->r[31] = 0x00000001u; /* 027C1C5C */ cpu->r[3] = cpu->r[30]; /* 027C1C60 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1C64 */ _t6 = cpu->r[30] + 0x00000000u; /* 027C1C64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027C1C68 */ cpu->r[12] = 0x10110000u; /* 027C1C6C */ _t7 = cpu->r[12] + 0x0000739Au; /* 027C1C6C */ cpu->r[12] = rbrew_read16(cpu->mem, _t7); /* 027C1C70 */ _t8 = cpu->r[11] + 0x00000000u; /* 027C1C70 */ cpu->r[9] = rbrew_read16(cpu->mem, _t8); /* 027C1C74 */ cpu->r[10] = 0x00000000u; /* 027C1C78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]); /* 027C1C7C */ cpu->r[8] = 0x00080000u; /* 027C1C80 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1C80 */ _t10 = _t9 & 0x00000001u; /* 027C1C80 */ if (_t10) goto L_027C1CA0; else goto L_027C1C84; L_027C1C84: ; // 0x27c1c84 /* 027C1C84 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027C1C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[8]); /* 027C1C8C */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027C1C90 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1C90 */ _t12 = _t11 & 0x00000001u; /* 027C1C90 */ if (_t12) goto L_027C1CA0; else goto L_027C1C94; L_027C1C94: ; // 0x27c1c94 /* 027C1C94 */ _t13 = cpu->r[11] + 0x00000000u; /* 027C1C94 */ cpu->r[0] = rbrew_read16(cpu->mem, _t13); /* 027C1C98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]); /* 027C1C9C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1C9C */ _t15 = _t14 & 0x00000001u; /* 027C1C9C */ if (_t15) goto L_027C1CA0; else goto L_027C1C84; L_027C1CA0: ; // 0x27c1ca0 /* 027C1CA0 */ _t16 = cpu->r[30] + 0x00000004u; /* 027C1CA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16); /* 027C1CA4 */ _t17 = cpu->r[9] + 0x00000014u; /* 027C1CA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C1CA8 */ cpu->ctr = cpu->r[0]; /* 027C1CAC */ cpu->r[3] = cpu->r[30]; /* 027C1CB0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1CB4 */ _t18 = cpu->r[30] + 0x00000000u; /* 027C1CB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18); /* 027C1CB8 */ _t19 = cpu->r[9] + 0x00000000u; /* 027C1CB8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t19); /* 027C1CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1CC0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CC0 */ _t21 = _t20 & 0x00000001u; /* 027C1CC0 */ if (_t21) goto L_027C1D34; else goto L_027C1CC4; L_027C1CC4: ; // 0x27c1cc4 /* 027C1CC4 */ cpu->r[11] = 0x10110000u; /* 027C1CC8 */ _t22 = cpu->r[11] + 0x0000739Cu; /* 027C1CC8 */ cpu->r[11] = rbrew_read16(cpu->mem, _t22); L_027C1CCC: ; // 0x27c1ccc /* 027C1CCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1CD0 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CD0 */ _t24 = _t23 & 0x00000001u; /* 027C1CD0 */ if (_t24) goto L_027C1CDC; else goto L_027C1CD4; L_027C1CD4: ; // 0x27c1cd4 /* 027C1CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C1CD8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CD8 */ _t26 = _t25 & 0x00000001u; /* 027C1CD8 */ if (_t26) goto L_027C1CDC; else goto L_027C1D1C; L_027C1CDC: ; // 0x27c1cdc /* 027C1CDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1CE0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CE0 */ _t28 = _t27 & 0x00000001u; /* 027C1CE0 */ if (_t28) goto L_027C1CE4; else goto L_027C1D00; L_027C1CE4: ; // 0x27c1ce4 /* 027C1CE4 */ _t29 = cpu->r[9] + 0x00000006u; /* 027C1CE4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t29); /* 027C1CE8 */ cpu->r[8] = cpu->r[9] + cpu->r[0]; /* 027C1CEC */ _t30 = cpu->r[8] + 0x00000008u; /* 027C1CEC */ cpu->r[0] = rbrew_read16(cpu->mem, _t30); /* 027C1CF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1CF4 */ cpu->r[9] = cpu->r[8] + 0x00000008u; /* 027C1CF8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CF8 */ _t32 = _t31 & 0x00000001u; /* 027C1CF8 */ if (_t32) goto L_027C1CFC; else goto L_027C1CCC; L_027C1CFC: ; // 0x27c1cfc /* 027C1CFC */ goto L_027C1D34; L_027C1D00: ; // 0x27c1d00 /* 027C1D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C1D04 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1D04 */ _t34 = _t33 & 0x00000001u; /* 027C1D04 */ if (_t34) goto L_027C1D08; else goto L_027C1D0C; L_027C1D08: ; // 0x27c1d08 /* 027C1D08 */ cpu->r[9] = cpu->r[9] + 0x00000006u; L_027C1D0C: ; // 0x27c1d0c /* 027C1D0C */ _t35 = cpu->r[9] + 0x00000000u; /* 027C1D0C */ cpu->r[0] = rbrew_read16(cpu->mem, _t35); /* 027C1D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1D14 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1D14 */ _t37 = _t36 & 0x00000001u; /* 027C1D14 */ if (_t37) goto L_027C1D18; else goto L_027C1CCC; L_027C1D18: ; // 0x27c1d18 /* 027C1D18 */ goto L_027C1D34; L_027C1D1C: ; // 0x27c1d1c /* 027C1D1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]); /* 027C1D20 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1D20 */ _t39 = _t38 & 0x00000001u; /* 027C1D20 */ if (_t39) goto L_027C1D24; else goto L_027C1D28; L_027C1D24: ; // 0x27c1d24 /* 027C1D24 */ cpu->r[31] = cpu->r[31] + 0x00000001u; L_027C1D28: ; // 0x27c1d28 /* 027C1D28 */ _t40 = cpu->r[9] + 0x00000002u; /* 027C1D28 */ cpu->r[0] = rbrew_read16(cpu->mem, _t40); /* 027C1D28 */ cpu->r[9] = _t40; /* 027C1D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1D30 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1D30 */ _t42 = _t41 & 0x00000001u; /* 027C1D30 */ if (_t42) goto L_027C1D34; else goto L_027C1CCC; L_027C1D34: ; // 0x27c1d34 /* 027C1D34 */ _t43 = cpu->r[1] + 0x00000014u; /* 027C1D34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43); /* 027C1D38 */ cpu->r[3] = cpu->r[31]; /* 027C1D3C */ _t44 = cpu->r[1] + 0x0000000Cu; /* 027C1D3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44); /* 027C1D40 */ cpu->lr = cpu->r[0]; /* 027C1D44 */ _t45 = cpu->r[1] + 0x00000008u; /* 027C1D44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45); /* 027C1D48 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C1D4C */ return; } // fn_027C1C38 @ 0x27c1c38 void Gambit_fn_027C1C38(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_027C1C38: ; // 0x27c1c38 /* 027C1C38 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C1C38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C1C38 */ cpu->r[1] = _t0; /* 027C1C3C */ _t1 = cpu->r[1] + 0x00000008u; /* 027C1C3C */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C1C40 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C1C40 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C1C44 */ cpu->r[30] = cpu->r[4]; /* 027C1C48 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C1C48 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C1C4C */ _t4 = cpu->r[30] + 0x00000004u; /* 027C1C4C */ cpu->r[12] = rbrew_read32(cpu->mem, _t4); /* 027C1C50 */ _t5 = cpu->r[12] + 0x00000014u; /* 027C1C50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t5); /* 027C1C54 */ cpu->ctr = cpu->r[8]; /* 027C1C58 */ cpu->r[31] = 0x00000001u; /* 027C1C5C */ cpu->r[3] = cpu->r[30]; /* 027C1C60 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1C64 */ _t6 = cpu->r[30] + 0x00000000u; /* 027C1C64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027C1C68 */ cpu->r[12] = 0x10110000u; /* 027C1C6C */ _t7 = cpu->r[12] + 0x0000739Au; /* 027C1C6C */ cpu->r[12] = rbrew_read16(cpu->mem, _t7); /* 027C1C70 */ _t8 = cpu->r[11] + 0x00000000u; /* 027C1C70 */ cpu->r[9] = rbrew_read16(cpu->mem, _t8); /* 027C1C74 */ cpu->r[10] = 0x00000000u; /* 027C1C78 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[12]); /* 027C1C7C */ cpu->r[8] = 0x00080000u; /* 027C1C80 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1C80 */ _t10 = _t9 & 0x00000001u; /* 027C1C80 */ if (_t10) goto L_027C1CA0; else goto L_027C1C84; L_027C1C84: ; // 0x27c1c84 /* 027C1C84 */ cpu->r[10] = cpu->r[10] + 0x00000001u; /* 027C1C88 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], cpu->r[8]); /* 027C1C8C */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027C1C90 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1C90 */ _t12 = _t11 & 0x00000001u; /* 027C1C90 */ if (_t12) goto L_027C1CA0; else goto L_027C1C94; L_027C1C94: ; // 0x27c1c94 /* 027C1C94 */ _t13 = cpu->r[11] + 0x00000000u; /* 027C1C94 */ cpu->r[0] = rbrew_read16(cpu->mem, _t13); /* 027C1C98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]); /* 027C1C9C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1C9C */ _t15 = _t14 & 0x00000001u; /* 027C1C9C */ if (_t15) goto L_027C1CA0; else goto L_027C1C84; L_027C1CA0: ; // 0x27c1ca0 /* 027C1CA0 */ _t16 = cpu->r[30] + 0x00000004u; /* 027C1CA0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t16); /* 027C1CA4 */ _t17 = cpu->r[9] + 0x00000014u; /* 027C1CA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C1CA8 */ cpu->ctr = cpu->r[0]; /* 027C1CAC */ cpu->r[3] = cpu->r[30]; /* 027C1CB0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1CB4 */ _t18 = cpu->r[30] + 0x00000000u; /* 027C1CB4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18); /* 027C1CB8 */ _t19 = cpu->r[9] + 0x00000000u; /* 027C1CB8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t19); /* 027C1CBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1CC0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CC0 */ _t21 = _t20 & 0x00000001u; /* 027C1CC0 */ if (_t21) goto L_027C1D34; else goto L_027C1CC4; L_027C1CC4: ; // 0x27c1cc4 /* 027C1CC4 */ cpu->r[11] = 0x10110000u; /* 027C1CC8 */ _t22 = cpu->r[11] + 0x0000739Cu; /* 027C1CC8 */ cpu->r[11] = rbrew_read16(cpu->mem, _t22); L_027C1CCC: ; // 0x27c1ccc /* 027C1CCC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1CD0 */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CD0 */ _t24 = _t23 & 0x00000001u; /* 027C1CD0 */ if (_t24) goto L_027C1CDC; else goto L_027C1CD4; L_027C1CD4: ; // 0x27c1cd4 /* 027C1CD4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C1CD8 */ _t25 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CD8 */ _t26 = _t25 & 0x00000001u; /* 027C1CD8 */ if (_t26) goto L_027C1CDC; else goto L_027C1D1C; L_027C1CDC: ; // 0x27c1cdc /* 027C1CDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1CE0 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CE0 */ _t28 = _t27 & 0x00000001u; /* 027C1CE0 */ if (_t28) goto L_027C1CE4; else goto L_027C1D00; L_027C1CE4: ; // 0x27c1ce4 /* 027C1CE4 */ _t29 = cpu->r[9] + 0x00000006u; /* 027C1CE4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t29); /* 027C1CE8 */ cpu->r[8] = cpu->r[9] + cpu->r[0]; /* 027C1CEC */ _t30 = cpu->r[8] + 0x00000008u; /* 027C1CEC */ cpu->r[0] = rbrew_read16(cpu->mem, _t30); /* 027C1CF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1CF4 */ cpu->r[9] = cpu->r[8] + 0x00000008u; /* 027C1CF8 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1CF8 */ _t32 = _t31 & 0x00000001u; /* 027C1CF8 */ if (_t32) goto L_027C1CFC; else goto L_027C1CCC; L_027C1CFC: ; // 0x27c1cfc /* 027C1CFC */ goto L_027C1D34; L_027C1D00: ; // 0x27c1d00 /* 027C1D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C1D04 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1D04 */ _t34 = _t33 & 0x00000001u; /* 027C1D04 */ if (_t34) goto L_027C1D08; else goto L_027C1D0C; L_027C1D08: ; // 0x27c1d08 /* 027C1D08 */ cpu->r[9] = cpu->r[9] + 0x00000006u; L_027C1D0C: ; // 0x27c1d0c /* 027C1D0C */ _t35 = cpu->r[9] + 0x00000000u; /* 027C1D0C */ cpu->r[0] = rbrew_read16(cpu->mem, _t35); /* 027C1D10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1D14 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1D14 */ _t37 = _t36 & 0x00000001u; /* 027C1D14 */ if (_t37) goto L_027C1D18; else goto L_027C1CCC; L_027C1D18: ; // 0x27c1d18 /* 027C1D18 */ goto L_027C1D34; L_027C1D1C: ; // 0x27c1d1c /* 027C1D1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]); /* 027C1D20 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1D20 */ _t39 = _t38 & 0x00000001u; /* 027C1D20 */ if (_t39) goto L_027C1D24; else goto L_027C1D28; L_027C1D24: ; // 0x27c1d24 /* 027C1D24 */ cpu->r[31] = cpu->r[31] + 0x00000001u; L_027C1D28: ; // 0x27c1d28 /* 027C1D28 */ _t40 = cpu->r[9] + 0x00000002u; /* 027C1D28 */ cpu->r[0] = rbrew_read16(cpu->mem, _t40); /* 027C1D28 */ cpu->r[9] = _t40; /* 027C1D2C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1D30 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1D30 */ _t42 = _t41 & 0x00000001u; /* 027C1D30 */ if (_t42) goto L_027C1D34; else goto L_027C1CCC; L_027C1D34: ; // 0x27c1d34 /* 027C1D34 */ _t43 = cpu->r[1] + 0x00000014u; /* 027C1D34 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43); /* 027C1D38 */ cpu->r[3] = cpu->r[31]; /* 027C1D3C */ _t44 = cpu->r[1] + 0x0000000Cu; /* 027C1D3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t44); /* 027C1D40 */ cpu->lr = cpu->r[0]; /* 027C1D44 */ _t45 = cpu->r[1] + 0x00000008u; /* 027C1D44 */ cpu->r[30] = rbrew_read32(cpu->mem, _t45); /* 027C1D48 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C1D4C */ return; } // fn_027C1D50 @ 0x27c1d50 void Gambit_fn_027C1D50(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; L_027C1D50: ; // 0x27c1d50 /* 027C1D50 */ _t0 = cpu->r[1] + 0xFFFFFFB0u; /* 027C1D50 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C1D50 */ cpu->r[1] = _t0; /* 027C1D54 */ /* nop */ /* 027C1D58 */ cpu->r[0] = cpu->lr; /* 027C1D5C */ _t1 = cpu->r[1] + 0x00000054u; /* 027C1D5C */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027C1D60 */ cpu->r[28] = cpu->r[6]; /* 027C1D64 */ cpu->r[31] = cpu->r[5]; /* 027C1D68 */ _t2 = cpu->r[31] + 0x00000004u; /* 027C1D68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t2); /* 027C1D6C */ cpu->r[12] = cpu->r[28] + cpu->r[7]; /* 027C1D70 */ _t3 = cpu->r[6] + 0x00000014u; /* 027C1D70 */ cpu->r[7] = rbrew_read32(cpu->mem, _t3); /* 027C1D74 */ cpu->r[5] = rbrew_clz32(cpu->r[28]); /* 027C1D78 */ cpu->r[25] = 0x00000000u; /* 027C1D7C */ cpu->ctr = cpu->r[7]; /* 027C1D80 */ cpu->r[29] = rbrew_rlwinm(cpu->r[5], 0x0000001Bu, 0x00000005u, 0x0000001Fu); /* 027C1D84 */ cpu->r[24] = cpu->r[12] + 0xFFFFFFFFu; /* 027C1D88 */ cpu->r[27] = cpu->r[4]; /* 027C1D8C */ cpu->r[26] = cpu->r[25]; /* 027C1D90 */ cpu->r[3] = cpu->r[31]; /* 027C1D94 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1D98 */ cpu->r[30] = 0x10110000u; /* 027C1D9C */ _t4 = cpu->r[31] + 0x00000000u; /* 027C1D9C */ cpu->r[11] = rbrew_read32(cpu->mem, _t4); /* 027C1DA0 */ _t5 = cpu->r[30] + 0x0000739Au; /* 027C1DA0 */ cpu->r[30] = rbrew_read16(cpu->mem, _t5); /* 027C1DA4 */ _t6 = cpu->r[11] + 0x00000000u; /* 027C1DA4 */ cpu->r[8] = rbrew_read16(cpu->mem, _t6); /* 027C1DA8 */ cpu->r[7] = cpu->r[26]; /* 027C1DAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027C1DB0 */ cpu->r[12] = 0x00080000u; /* 027C1DB4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1DB4 */ _t8 = _t7 & 0x00000001u; /* 027C1DB4 */ if (_t8) goto L_027C1DD4; else goto L_027C1DB8; L_027C1DB8: ; // 0x27c1db8 /* 027C1DB8 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027C1DBC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[12]); /* 027C1DC0 */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027C1DC4 */ _t9 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1DC4 */ _t10 = _t9 & 0x00000001u; /* 027C1DC4 */ if (_t10) goto L_027C1DD4; else goto L_027C1DC8; L_027C1DC8: ; // 0x27c1dc8 /* 027C1DC8 */ _t11 = cpu->r[11] + 0x00000000u; /* 027C1DC8 */ cpu->r[9] = rbrew_read16(cpu->mem, _t11); /* 027C1DCC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[30]); /* 027C1DD0 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1DD0 */ _t13 = _t12 & 0x00000001u; /* 027C1DD0 */ if (_t13) goto L_027C1DD4; else goto L_027C1DB8; L_027C1DD4: ; // 0x27c1dd4 /* 027C1DD4 */ _t14 = cpu->r[31] + 0x00000004u; /* 027C1DD4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14); /* 027C1DD8 */ _t15 = cpu->r[10] + 0x00000014u; /* 027C1DD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t15); /* 027C1DDC */ cpu->ctr = cpu->r[11]; /* 027C1DE0 */ cpu->r[3] = cpu->r[31]; /* 027C1DE4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1DE8 */ _t16 = cpu->r[31] + 0x00000000u; /* 027C1DE8 */ cpu->r[23] = rbrew_read32(cpu->mem, _t16); /* 027C1DEC */ _t17 = cpu->r[23] + 0x00000000u; /* 027C1DEC */ cpu->r[0] = rbrew_read16(cpu->mem, _t17); /* 027C1DF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1DF4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1DF4 */ _t19 = _t18 & 0x00000001u; /* 027C1DF4 */ if (_t19) goto L_027C20E8; else goto L_027C1DF8; L_027C1DF8: ; // 0x27c1df8 /* 027C1DF8 */ cpu->r[9] = 0x10110000u; /* 027C1DFC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1E00 */ cpu->r[9] = cpu->r[9] + 0xFFFFBCDCu; /* 027C1E04 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1E04 */ _t21 = _t20 & 0x00000001u; /* 027C1E04 */ if (_t21) goto L_027C1E10; else goto L_027C1E08; L_027C1E08: ; // 0x27c1e08 /* 027C1E08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C1E0C */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1E0C */ _t23 = _t22 & 0x00000001u; /* 027C1E0C */ if (_t23) goto L_027C1E10; else goto L_027C1FA8; L_027C1E10: ; // 0x27c1e10 /* 027C1E10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C1E14 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1E14 */ _t25 = _t24 & 0x00000001u; /* 027C1E14 */ if (_t25) goto L_027C1E18; else goto L_027C1E30; L_027C1E18: ; // 0x27c1e18 /* 027C1E18 */ _t26 = cpu->r[23] + 0x00000006u; /* 027C1E18 */ cpu->r[0] = rbrew_read16(cpu->mem, _t26); /* 027C1E1C */ cpu->r[12] = cpu->r[23] + cpu->r[0]; /* 027C1E20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C1E24 */ cpu->r[21] = cpu->r[12] + 0x00000008u; /* 027C1E28 */ _t27 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1E28 */ _t28 = _t27 & 0x00000001u; /* 027C1E28 */ if (_t28) goto L_027C1F94; else goto L_027C1E2C; L_027C1E2C: ; // 0x27c1e2c /* 027C1E2C */ goto L_027C1E54; L_027C1E30: ; // 0x27c1e30 /* 027C1E30 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C1E34 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1E34 */ _t30 = _t29 & 0x00000001u; /* 027C1E34 */ if (_t30) goto L_027C1E38; else goto L_027C1E48; L_027C1E38: ; // 0x27c1e38 /* 027C1E38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C1E3C */ cpu->r[21] = cpu->r[23] + 0x00000006u; /* 027C1E40 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1E40 */ _t32 = _t31 & 0x00000001u; /* 027C1E40 */ if (_t32) goto L_027C1F94; else goto L_027C1E44; L_027C1E44: ; // 0x27c1e44 /* 027C1E44 */ goto L_027C1E54; L_027C1E48: ; // 0x27c1e48 /* 027C1E48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C1E4C */ cpu->r[21] = cpu->r[23]; /* 027C1E50 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1E50 */ _t34 = _t33 & 0x00000001u; /* 027C1E50 */ if (_t34) goto L_027C1F94; else goto L_027C1E54; L_027C1E54: ; // 0x27c1e54 /* 027C1E54 */ _t35 = cpu->r[27] + 0x00000004u; /* 027C1E54 */ cpu->r[6] = rbrew_read32(cpu->mem, _t35); /* 027C1E58 */ _t36 = cpu->r[1] + 0x00000008u; /* 027C1E58 */ rbrew_write32(cpu->mem, _t36, cpu->r[23]); /* 027C1E5C */ cpu->r[0] = cpu->r[21] - cpu->r[23]; /* 027C1E60 */ _t37 = cpu->r[1] + 0x0000000Cu; /* 027C1E60 */ rbrew_write32(cpu->mem, _t37, cpu->r[9]); /* 027C1E64 */ _t38 = cpu->r[6] + 0x00000014u; /* 027C1E64 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38); /* 027C1E68 */ /* nop */ /* 027C1E6C */ cpu->ctr = cpu->r[7]; /* 027C1E70 */ cpu->r[3] = cpu->r[27]; /* 027C1E74 */ _t39 = cpu->r[27] + 0x00000000u; /* 027C1E74 */ cpu->r[20] = rbrew_read32(cpu->mem, _t39); /* 027C1E78 */ cpu->r[31] = cpu->r[22]; /* 027C1E7C */ cpu->r[19] = cpu->r[25]; /* 027C1E80 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1E84 */ _t40 = cpu->r[27] + 0x00000000u; /* 027C1E84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t40); /* 027C1E88 */ _t41 = cpu->r[6] + 0x00000000u; /* 027C1E88 */ cpu->r[8] = rbrew_read16(cpu->mem, _t41); /* 027C1E8C */ cpu->r[23] = 0x00000000u; /* 027C1E90 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[30]); /* 027C1E94 */ cpu->r[10] = 0x00080000u; /* 027C1E98 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1E98 */ _t43 = _t42 & 0x00000001u; /* 027C1E98 */ if (_t43) goto L_027C1EC0; else goto L_027C1E9C; L_027C1E9C: ; // 0x27c1e9c /* 027C1E9C */ cpu->r[23] = cpu->r[23] + 0x00000001u; /* 027C1EA0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], cpu->r[10]); /* 027C1EA4 */ cpu->r[6] = cpu->r[6] + 0x00000002u; /* 027C1EA8 */ _t44 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1EA8 */ _t45 = _t44 & 0x00000001u; /* 027C1EA8 */ if (_t45) goto L_027C1EBC; else goto L_027C1EAC; L_027C1EAC: ; // 0x27c1eac /* 027C1EAC */ _t46 = cpu->r[6] + 0x00000000u; /* 027C1EAC */ cpu->r[0] = rbrew_read16(cpu->mem, _t46); /* 027C1EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C1EB4 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1EB4 */ _t48 = _t47 & 0x00000001u; /* 027C1EB4 */ if (_t48) goto L_027C1EB8; else goto L_027C1E9C; L_027C1EB8: ; // 0x27c1eb8 /* 027C1EB8 */ goto L_027C1EC0; L_027C1EBC: ; // 0x27c1ebc /* 027C1EBC */ cpu->r[23] = 0x00000000u; L_027C1EC0: ; // 0x27c1ec0 /* 027C1EC0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C1EC4 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C1EC4 */ _t50 = _t49 & 0x00000001u; /* 027C1EC4 */ if (_t50) goto L_027C1EC8; else goto L_027C1ED8; L_027C1EC8: ; // 0x27c1ec8 /* 027C1EC8 */ cpu->r[10] = cpu->r[23] + cpu->r[19]; /* 027C1ECC */ cpu->r[19] = cpu->r[10] + 0x00000001u; /* 027C1ECC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C1ED0 */ _t51 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C1ED0 */ _t52 = _t51 & 0x00000001u; /* 027C1ED0 */ if (_t52) goto L_027C1ED4; else goto L_027C1ED8; L_027C1ED4: ; // 0x27c1ed4 /* 027C1ED4 */ cpu->r[19] = 0x00000000u; L_027C1ED8: ; // 0x27c1ed8 /* 027C1ED8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C1EDC */ _t53 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C1EDC */ _t54 = _t53 & 0x00000001u; /* 027C1EDC */ if (_t54) goto L_027C1EE0; else goto L_027C1F30; L_027C1EE0: ; // 0x27c1ee0 /* 027C1EE0 */ _t55 = cpu->r[1] + 0x0000000Cu; /* 027C1EE0 */ cpu->r[11] = rbrew_read32(cpu->mem, _t55); /* 027C1EE4 */ _t56 = cpu->r[11] + 0x00000014u; /* 027C1EE4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t56); /* 027C1EE8 */ cpu->ctr = cpu->r[0]; /* 027C1EEC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C1EF0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1EF4 */ _t57 = cpu->r[1] + 0x00000008u; /* 027C1EF4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t57); /* 027C1EF8 */ _t58 = cpu->r[12] + 0x00000000u; /* 027C1EF8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t58); /* 027C1EFC */ cpu->r[31] = 0x00000000u; /* 027C1F00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C1F04 */ cpu->r[0] = 0x00080000u; /* 027C1F08 */ _t59 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1F08 */ _t60 = _t59 & 0x00000001u; /* 027C1F08 */ if (_t60) goto L_027C1F30; else goto L_027C1F0C; L_027C1F0C: ; // 0x27c1f0c /* 027C1F0C */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C1F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027C1F14 */ cpu->r[12] = cpu->r[12] + 0x00000002u; /* 027C1F18 */ _t61 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1F18 */ _t62 = _t61 & 0x00000001u; /* 027C1F18 */ if (_t62) goto L_027C1F2C; else goto L_027C1F1C; L_027C1F1C: ; // 0x27c1f1c /* 027C1F1C */ _t63 = cpu->r[12] + 0x00000000u; /* 027C1F1C */ cpu->r[5] = rbrew_read16(cpu->mem, _t63); /* 027C1F20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[30]); /* 027C1F24 */ _t64 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1F24 */ _t65 = _t64 & 0x00000001u; /* 027C1F24 */ if (_t65) goto L_027C1F28; else goto L_027C1F0C; L_027C1F28: ; // 0x27c1f28 /* 027C1F28 */ goto L_027C1F30; L_027C1F2C: ; // 0x27c1f2c /* 027C1F2C */ cpu->r[31] = 0x00000000u; L_027C1F30: ; // 0x27c1f30 /* 027C1F30 */ _t66 = cpu->r[27] + 0x00000008u; /* 027C1F30 */ cpu->r[0] = rbrew_read32(cpu->mem, _t66); /* 027C1F34 */ cpu->r[5] = cpu->r[0] - cpu->r[19]; /* 027C1F38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[5]); /* 027C1F3C */ _t67 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C1F3C */ _t68 = _t67 & 0x00000001u; /* 027C1F3C */ if (_t68) goto L_027C1F44; else goto L_027C1F40; L_027C1F40: ; // 0x27c1f40 /* 027C1F40 */ cpu->r[31] = cpu->r[5] + 0xFFFFFFFFu; L_027C1F44: ; // 0x27c1f44 /* 027C1F44 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C1F48 */ _t69 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1F48 */ _t70 = _t69 & 0x00000001u; /* 027C1F48 */ if (_t70) goto L_027C1F4C; else goto L_027C1F90; L_027C1F4C: ; // 0x27c1f4c /* 027C1F4C */ _t71 = cpu->r[1] + 0x0000000Cu; /* 027C1F4C */ cpu->r[7] = rbrew_read32(cpu->mem, _t71); /* 027C1F50 */ _t72 = cpu->r[7] + 0x00000014u; /* 027C1F50 */ cpu->r[8] = rbrew_read32(cpu->mem, _t72); /* 027C1F54 */ cpu->r[0] = rbrew_rlwinm(cpu->r[19], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C1F58 */ cpu->ctr = cpu->r[8]; /* 027C1F5C */ cpu->r[18] = cpu->r[20] + cpu->r[0]; /* 027C1F60 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C1F64 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1F68 */ _t73 = cpu->r[1] + 0x00000008u; /* 027C1F68 */ cpu->r[4] = rbrew_read32(cpu->mem, _t73); /* 027C1F6C */ cpu->r[6] = 0x00000000u; /* 027C1F70 */ cpu->r[5] = rbrew_rlwinm(cpu->r[31], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C1F74 */ cpu->r[3] = cpu->r[18]; /* 027C1F78 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C1F7C */ cpu->r[7] = cpu->r[19] + cpu->r[31]; /* 027C1F80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[7], cpu->r[23]); /* 027C1F84 */ _t74 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1F84 */ _t75 = _t74 & 0x00000001u; /* 027C1F84 */ if (_t75) goto L_027C1F88; else goto L_027C1F90; L_027C1F88: ; // 0x27c1f88 /* 027C1F88 */ cpu->r[9] = rbrew_rlwinm(cpu->r[7], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C1F8C */ _t76 = cpu->r[9] + cpu->r[20]; /* 027C1F8C */ rbrew_write16(cpu->mem, _t76, (uint16_t)cpu->r[30]); L_027C1F90: ; // 0x27c1f90 /* 027C1F90 */ cpu->r[25] = cpu->r[25] + cpu->r[22]; L_027C1F94: ; // 0x27c1f94 /* 027C1F94 */ cpu->r[23] = cpu->r[21]; /* 027C1F98 */ _t77 = cpu->r[23] + 0x00000000u; /* 027C1F98 */ cpu->r[0] = rbrew_read16(cpu->mem, _t77); /* 027C1F9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C1FA0 */ _t78 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1FA0 */ _t79 = _t78 & 0x00000001u; /* 027C1FA0 */ if (_t79) goto L_027C1FA4; else goto L_027C1DF8; L_027C1FA4: ; // 0x27c1fa4 /* 027C1FA4 */ goto L_027C20E8; L_027C1FA8: ; // 0x27c1fa8 /* 027C1FA8 */ cpu->r[11] = 0x10110000u; /* 027C1FAC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C1FB0 */ _t80 = cpu->r[11] + 0x0000739Cu; /* 027C1FB0 */ cpu->r[11] = rbrew_read16(cpu->mem, _t80); /* 027C1FB4 */ _t81 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1FB4 */ _t82 = _t81 & 0x00000001u; /* 027C1FB4 */ if (_t82) goto L_027C20B0; else goto L_027C1FB8; L_027C1FB8: ; // 0x27c1fb8 /* 027C1FB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]); /* 027C1FBC */ _t83 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C1FBC */ _t84 = _t83 & 0x00000001u; /* 027C1FBC */ if (_t84) goto L_027C1FC0; else goto L_027C1FCC; L_027C1FC0: ; // 0x27c1fc0 /* 027C1FC0 */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027C1FC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[24]); /* 027C1FC8 */ _t85 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C1FC8 */ _t86 = _t85 & 0x00000001u; /* 027C1FC8 */ if (_t86) goto L_027C20E8; else goto L_027C1FCC; L_027C1FCC: ; // 0x27c1fcc /* 027C1FCC */ _t87 = cpu->r[27] + 0x00000004u; /* 027C1FCC */ cpu->r[10] = rbrew_read32(cpu->mem, _t87); /* 027C1FD0 */ _t88 = cpu->r[1] + 0x00000010u; /* 027C1FD0 */ rbrew_write32(cpu->mem, _t88, cpu->r[23]); /* 027C1FD4 */ _t89 = cpu->r[1] + 0x00000014u; /* 027C1FD4 */ rbrew_write32(cpu->mem, _t89, cpu->r[9]); /* 027C1FD8 */ _t90 = cpu->r[10] + 0x00000014u; /* 027C1FD8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t90); /* 027C1FDC */ cpu->ctr = cpu->r[11]; /* 027C1FE0 */ _t91 = cpu->r[27] + 0x00000000u; /* 027C1FE0 */ cpu->r[22] = rbrew_read32(cpu->mem, _t91); /* 027C1FE4 */ cpu->r[20] = 0x00000001u; /* 027C1FE8 */ cpu->r[19] = cpu->r[25]; /* 027C1FEC */ cpu->r[3] = cpu->r[27]; /* 027C1FF0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C1FF4 */ _t92 = cpu->r[27] + 0x00000000u; /* 027C1FF4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t92); /* 027C1FF8 */ _t93 = cpu->r[7] + 0x00000000u; /* 027C1FF8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t93); /* 027C1FFC */ cpu->r[31] = 0x00000000u; /* 027C2000 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C2004 */ cpu->r[10] = 0x00080000u; /* 027C2008 */ _t94 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2008 */ _t95 = _t94 & 0x00000001u; /* 027C2008 */ if (_t95) goto L_027C2030; else goto L_027C200C; L_027C200C: ; // 0x27c200c /* 027C200C */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C2010 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[10]); /* 027C2014 */ cpu->r[7] = cpu->r[7] + 0x00000002u; /* 027C2018 */ _t96 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C2018 */ _t97 = _t96 & 0x00000001u; /* 027C2018 */ if (_t97) goto L_027C202C; else goto L_027C201C; L_027C201C: ; // 0x27c201c /* 027C201C */ _t98 = cpu->r[7] + 0x00000000u; /* 027C201C */ cpu->r[0] = rbrew_read16(cpu->mem, _t98); /* 027C2020 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[30]); /* 027C2024 */ _t99 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2024 */ _t100 = _t99 & 0x00000001u; /* 027C2024 */ if (_t100) goto L_027C2028; else goto L_027C200C; L_027C2028: ; // 0x27c2028 /* 027C2028 */ goto L_027C2030; L_027C202C: ; // 0x27c202c /* 027C202C */ cpu->r[31] = 0x00000000u; L_027C2030: ; // 0x27c2030 /* 027C2030 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C2034 */ _t101 = cpu->r[27] + 0x00000008u; /* 027C2034 */ cpu->r[0] = rbrew_read32(cpu->mem, _t101); /* 027C2038 */ _t102 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2038 */ _t103 = _t102 & 0x00000001u; /* 027C2038 */ if (_t103) goto L_027C203C; else goto L_027C204C; L_027C203C: ; // 0x27c203c /* 027C203C */ cpu->r[12] = cpu->r[31] + cpu->r[19]; /* 027C2040 */ cpu->r[19] = cpu->r[12] + 0x00000001u; /* 027C2040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C2044 */ _t104 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2044 */ _t105 = _t104 & 0x00000001u; /* 027C2044 */ if (_t105) goto L_027C2048; else goto L_027C204C; L_027C2048: ; // 0x27c2048 /* 027C2048 */ cpu->r[19] = 0x00000000u; L_027C204C: ; // 0x27c204c /* 027C204C */ cpu->r[6] = cpu->r[0] - cpu->r[19]; /* 027C2050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[6], 0x00000001u); /* 027C2054 */ _t106 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C2054 */ _t107 = _t106 & 0x00000001u; /* 027C2054 */ if (_t107) goto L_027C2060; else goto L_027C2058; L_027C2058: ; // 0x27c2058 /* 027C2058 */ cpu->r[20] = cpu->r[6] + 0xFFFFFFFFu; /* 027C2058 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[20], 0x00000000u); /* 027C205C */ _t108 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C205C */ _t109 = _t108 & 0x00000001u; /* 027C205C */ if (_t109) goto L_027C2060; else goto L_027C20A4; L_027C2060: ; // 0x27c2060 /* 027C2060 */ _t110 = cpu->r[1] + 0x00000014u; /* 027C2060 */ cpu->r[6] = rbrew_read32(cpu->mem, _t110); /* 027C2064 */ _t111 = cpu->r[6] + 0x00000014u; /* 027C2064 */ cpu->r[8] = rbrew_read32(cpu->mem, _t111); /* 027C2068 */ cpu->r[5] = rbrew_rlwinm(cpu->r[19], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C206C */ cpu->ctr = cpu->r[8]; /* 027C2070 */ cpu->r[21] = cpu->r[22] + cpu->r[5]; /* 027C2074 */ cpu->r[3] = cpu->r[1] + 0x00000010u; /* 027C2078 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C207C */ _t112 = cpu->r[1] + 0x00000010u; /* 027C207C */ cpu->r[4] = rbrew_read32(cpu->mem, _t112); /* 027C2080 */ cpu->r[6] = 0x00000000u; /* 027C2084 */ cpu->r[5] = rbrew_rlwinm(cpu->r[20], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C2088 */ cpu->r[3] = cpu->r[21]; /* 027C208C */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C2090 */ cpu->r[0] = cpu->r[19] + cpu->r[20]; /* 027C2094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], cpu->r[31]); /* 027C2098 */ _t113 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C2098 */ _t114 = _t113 & 0x00000001u; /* 027C2098 */ if (_t114) goto L_027C209C; else goto L_027C20A4; L_027C209C: ; // 0x27c209c /* 027C209C */ cpu->r[9] = rbrew_rlwinm(cpu->r[0], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C20A0 */ _t115 = cpu->r[9] + cpu->r[22]; /* 027C20A0 */ rbrew_write16(cpu->mem, _t115, (uint16_t)cpu->r[30]); L_027C20A4: ; // 0x27c20a4 /* 027C20A4 */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027C20A8 */ cpu->r[23] = cpu->r[23] + 0x00000002u; /* 027C20AC */ goto L_027C20DC; L_027C20B0: ; // 0x27c20b0 /* 027C20B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]); /* 027C20B4 */ _t116 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C20B4 */ _t117 = _t116 & 0x00000001u; /* 027C20B4 */ if (_t117) goto L_027C20B8; else goto L_027C20D8; L_027C20B8: ; // 0x27c20b8 /* 027C20B8 */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027C20BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[28]); /* 027C20C0 */ cpu->r[29] = 0x00000000u; /* 027C20C4 */ _t118 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C20C4 */ _t119 = _t118 & 0x00000001u; /* 027C20C4 */ if (_t119) goto L_027C20D4; else goto L_027C20C8; L_027C20C8: ; // 0x27c20c8 /* 027C20C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[24]); /* 027C20CC */ _t120 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C20CC */ _t121 = _t120 & 0x00000001u; /* 027C20CC */ if (_t121) goto L_027C20D4; else goto L_027C20D0; L_027C20D0: ; // 0x27c20d0 /* 027C20D0 */ cpu->r[29] = 0x00000001u; L_027C20D4: ; // 0x27c20d4 /* 027C20D4 */ cpu->r[29] = rbrew_rlwinm(cpu->r[29], 0x00000000u, 0x00000018u, 0x0000001Fu); L_027C20D8: ; // 0x27c20d8 /* 027C20D8 */ cpu->r[23] = cpu->r[23] + 0x00000002u; L_027C20DC: ; // 0x27c20dc /* 027C20DC */ _t122 = cpu->r[23] + 0x00000000u; /* 027C20DC */ cpu->r[0] = rbrew_read16(cpu->mem, _t122); /* 027C20E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C20E4 */ _t123 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C20E4 */ _t124 = _t123 & 0x00000001u; /* 027C20E4 */ if (_t124) goto L_027C20E8; else goto L_027C1DF8; L_027C20E8: ; // 0x27c20e8 /* 027C20E8 */ cpu->r[3] = cpu->r[25]; /* 027C20EC */ /* nop */ /* 027C20F0 */ _t125 = cpu->r[1] + 0x00000054u; /* 027C20F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t125); /* 027C20F4 */ cpu->lr = cpu->r[0]; /* 027C20F8 */ cpu->r[1] = cpu->r[1] + 0x00000050u; /* 027C20FC */ return; } // fn_027C2100 @ 0x27c2100 void Gambit_fn_027C2100(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54; L_027C2100: ; // 0x27c2100 /* 027C2100 */ cpu->r[0] = cpu->lr; /* 027C2104 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C2104 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2104 */ cpu->r[1] = _t0; /* 027C2108 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C2108 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C210C */ _t2 = cpu->r[1] + 0x00000008u; /* 027C210C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C2110 */ cpu->r[31] = cpu->r[4]; /* 027C2114 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C2114 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C2118 */ _t4 = cpu->r[31] + 0x00000004u; /* 027C2118 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4); /* 027C211C */ _t5 = cpu->r[10] + 0x00000014u; /* 027C211C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027C2120 */ cpu->r[30] = cpu->r[3]; /* 027C2124 */ cpu->ctr = cpu->r[0]; /* 027C2128 */ cpu->r[3] = cpu->r[31]; /* 027C212C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C2130 */ _t6 = cpu->r[31] + 0x00000000u; /* 027C2130 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027C2134 */ cpu->r[12] = 0x10110000u; /* 027C2138 */ _t7 = cpu->r[12] + 0x0000739Au; /* 027C2138 */ cpu->r[12] = rbrew_read16(cpu->mem, _t7); /* 027C213C */ _t8 = cpu->r[11] + 0x00000000u; /* 027C213C */ cpu->r[0] = rbrew_read16(cpu->mem, _t8); /* 027C2140 */ cpu->r[9] = 0x00000000u; /* 027C2144 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]); /* 027C2148 */ cpu->r[0] = 0x00080000u; /* 027C214C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C214C */ _t10 = _t9 & 0x00000001u; /* 027C214C */ if (_t10) goto L_027C216C; else goto L_027C2150; L_027C2150: ; // 0x27c2150 /* 027C2150 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027C2154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]); /* 027C2158 */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027C215C */ _t11 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C215C */ _t12 = _t11 & 0x00000001u; /* 027C215C */ if (_t12) goto L_027C216C; else goto L_027C2160; L_027C2160: ; // 0x27c2160 /* 027C2160 */ _t13 = cpu->r[11] + 0x00000000u; /* 027C2160 */ cpu->r[10] = rbrew_read16(cpu->mem, _t13); /* 027C2164 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]); /* 027C2168 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2168 */ _t15 = _t14 & 0x00000001u; /* 027C2168 */ if (_t15) goto L_027C216C; else goto L_027C2150; L_027C216C: ; // 0x27c216c /* 027C216C */ _t16 = cpu->r[31] + 0x00000004u; /* 027C216C */ cpu->r[12] = rbrew_read32(cpu->mem, _t16); /* 027C2170 */ _t17 = cpu->r[12] + 0x00000014u; /* 027C2170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C2174 */ cpu->ctr = cpu->r[0]; /* 027C2178 */ cpu->r[3] = cpu->r[31]; /* 027C217C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C2180 */ _t18 = cpu->r[31] + 0x00000000u; /* 027C2180 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027C2184 */ _t19 = cpu->r[31] + 0x00000000u; /* 027C2184 */ cpu->r[0] = rbrew_read16(cpu->mem, _t19); /* 027C2188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C218C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C218C */ _t21 = _t20 & 0x00000001u; /* 027C218C */ if (_t21) goto L_027C225C; else goto L_027C2190; L_027C2190: ; // 0x27c2190 /* 027C2190 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C2194 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2194 */ _t23 = _t22 & 0x00000001u; /* 027C2194 */ if (_t23) goto L_027C21A0; else goto L_027C2198; L_027C2198: ; // 0x27c2198 /* 027C2198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C219C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C219C */ _t25 = _t24 & 0x00000001u; /* 027C219C */ if (_t25) goto L_027C21A0; else goto L_027C2250; L_027C21A0: ; // 0x27c21a0 /* 027C21A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C21A4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C21A4 */ _t27 = _t26 & 0x00000001u; /* 027C21A4 */ if (_t27) goto L_027C21A8; else goto L_027C21E4; L_027C21A8: ; // 0x27c21a8 /* 027C21A8 */ _t28 = cpu->r[31] + 0x00000006u; /* 027C21A8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t28); /* 027C21AC */ cpu->r[9] = cpu->r[31] + cpu->r[0]; /* 027C21B0 */ cpu->r[4] = cpu->r[31]; /* 027C21B4 */ cpu->r[31] = cpu->r[9] + 0x00000008u; /* 027C21B8 */ _t29 = cpu->r[30] + 0x00000000u; /* 027C21B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29); /* 027C21BC */ _t30 = cpu->r[9] + 0x00000094u; /* 027C21BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027C21C0 */ cpu->ctr = cpu->r[0]; /* 027C21C4 */ cpu->r[3] = cpu->r[30]; /* 027C21C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C21CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C21D0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C21D0 */ _t32 = _t31 & 0x00000001u; /* 027C21D0 */ if (_t32) goto L_027C21D4; else goto L_027C2234; L_027C21D4: ; // 0x27c21d4 /* 027C21D4 */ _t33 = cpu->r[31] + 0x00000000u; /* 027C21D4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t33); /* 027C21D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C21DC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C21DC */ _t35 = _t34 & 0x00000001u; /* 027C21DC */ if (_t35) goto L_027C21E0; else goto L_027C2190; L_027C21E0: ; // 0x27c21e0 /* 027C21E0 */ goto L_027C225C; L_027C21E4: ; // 0x27c21e4 /* 027C21E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C21E8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C21E8 */ _t37 = _t36 & 0x00000001u; /* 027C21E8 */ if (_t37) goto L_027C21EC; else goto L_027C2214; L_027C21EC: ; // 0x27c21ec /* 027C21EC */ _t38 = cpu->r[30] + 0x00000000u; /* 027C21EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t38); /* 027C21F0 */ _t39 = cpu->r[9] + 0x00000094u; /* 027C21F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027C21F4 */ cpu->r[4] = cpu->r[31]; /* 027C21F8 */ cpu->ctr = cpu->r[0]; /* 027C21FC */ cpu->r[31] = cpu->r[31] + 0x00000006u; /* 027C2200 */ cpu->r[3] = cpu->r[30]; /* 027C2204 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C2208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C220C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C220C */ _t41 = _t40 & 0x00000001u; /* 027C220C */ if (_t41) goto L_027C21D4; else goto L_027C2210; L_027C2210: ; // 0x27c2210 /* 027C2210 */ goto L_027C2234; L_027C2214: ; // 0x27c2214 /* 027C2214 */ _t42 = cpu->r[30] + 0x00000000u; /* 027C2214 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42); /* 027C2218 */ _t43 = cpu->r[9] + 0x00000094u; /* 027C2218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43); /* 027C221C */ cpu->ctr = cpu->r[0]; /* 027C2220 */ cpu->r[3] = cpu->r[30]; /* 027C2224 */ cpu->r[4] = 0x00000000u; /* 027C2228 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C222C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2230 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2230 */ _t45 = _t44 & 0x00000001u; /* 027C2230 */ if (_t45) goto L_027C21D4; else goto L_027C2234; L_027C2234: ; // 0x27c2234 /* 027C2234 */ _t46 = cpu->r[1] + 0x00000014u; /* 027C2234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46); /* 027C2238 */ _t47 = cpu->r[1] + 0x00000008u; /* 027C2238 */ cpu->r[30] = rbrew_read32(cpu->mem, _t47); /* 027C223C */ cpu->lr = cpu->r[0]; /* 027C2240 */ _t48 = cpu->r[1] + 0x0000000Cu; /* 027C2240 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48); /* 027C2244 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C2248 */ cpu->r[3] = 0x00000001u; /* 027C224C */ return; L_027C2250: ; // 0x27c2250 /* 027C2250 */ _t49 = cpu->r[31] + 0x00000002u; /* 027C2250 */ cpu->r[0] = rbrew_read16(cpu->mem, _t49); /* 027C2250 */ cpu->r[31] = _t49; /* 027C2254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C2258 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2258 */ _t51 = _t50 & 0x00000001u; /* 027C2258 */ if (_t51) goto L_027C225C; else goto L_027C2190; L_027C225C: ; // 0x27c225c /* 027C225C */ _t52 = cpu->r[1] + 0x00000014u; /* 027C225C */ cpu->r[0] = rbrew_read32(cpu->mem, _t52); /* 027C2260 */ _t53 = cpu->r[1] + 0x00000008u; /* 027C2260 */ cpu->r[30] = rbrew_read32(cpu->mem, _t53); /* 027C2264 */ cpu->lr = cpu->r[0]; /* 027C2268 */ _t54 = cpu->r[1] + 0x0000000Cu; /* 027C2268 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54); /* 027C226C */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C2270 */ cpu->r[3] = 0x00000000u; /* 027C2274 */ return; } // fn_027C2104 @ 0x27c2104 void Gambit_fn_027C2104(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54; L_027C2104: ; // 0x27c2104 /* 027C2104 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C2104 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2104 */ cpu->r[1] = _t0; /* 027C2108 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C2108 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C210C */ _t2 = cpu->r[1] + 0x00000008u; /* 027C210C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C2110 */ cpu->r[31] = cpu->r[4]; /* 027C2114 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C2114 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C2118 */ _t4 = cpu->r[31] + 0x00000004u; /* 027C2118 */ cpu->r[10] = rbrew_read32(cpu->mem, _t4); /* 027C211C */ _t5 = cpu->r[10] + 0x00000014u; /* 027C211C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027C2120 */ cpu->r[30] = cpu->r[3]; /* 027C2124 */ cpu->ctr = cpu->r[0]; /* 027C2128 */ cpu->r[3] = cpu->r[31]; /* 027C212C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C2130 */ _t6 = cpu->r[31] + 0x00000000u; /* 027C2130 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027C2134 */ cpu->r[12] = 0x10110000u; /* 027C2138 */ _t7 = cpu->r[12] + 0x0000739Au; /* 027C2138 */ cpu->r[12] = rbrew_read16(cpu->mem, _t7); /* 027C213C */ _t8 = cpu->r[11] + 0x00000000u; /* 027C213C */ cpu->r[0] = rbrew_read16(cpu->mem, _t8); /* 027C2140 */ cpu->r[9] = 0x00000000u; /* 027C2144 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[12]); /* 027C2148 */ cpu->r[0] = 0x00080000u; /* 027C214C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C214C */ _t10 = _t9 & 0x00000001u; /* 027C214C */ if (_t10) goto L_027C216C; else goto L_027C2150; L_027C2150: ; // 0x27c2150 /* 027C2150 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027C2154 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]); /* 027C2158 */ cpu->r[11] = cpu->r[11] + 0x00000002u; /* 027C215C */ _t11 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C215C */ _t12 = _t11 & 0x00000001u; /* 027C215C */ if (_t12) goto L_027C216C; else goto L_027C2160; L_027C2160: ; // 0x27c2160 /* 027C2160 */ _t13 = cpu->r[11] + 0x00000000u; /* 027C2160 */ cpu->r[10] = rbrew_read16(cpu->mem, _t13); /* 027C2164 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[10], cpu->r[12]); /* 027C2168 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2168 */ _t15 = _t14 & 0x00000001u; /* 027C2168 */ if (_t15) goto L_027C216C; else goto L_027C2150; L_027C216C: ; // 0x27c216c /* 027C216C */ _t16 = cpu->r[31] + 0x00000004u; /* 027C216C */ cpu->r[12] = rbrew_read32(cpu->mem, _t16); /* 027C2170 */ _t17 = cpu->r[12] + 0x00000014u; /* 027C2170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C2174 */ cpu->ctr = cpu->r[0]; /* 027C2178 */ cpu->r[3] = cpu->r[31]; /* 027C217C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C2180 */ _t18 = cpu->r[31] + 0x00000000u; /* 027C2180 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027C2184 */ _t19 = cpu->r[31] + 0x00000000u; /* 027C2184 */ cpu->r[0] = rbrew_read16(cpu->mem, _t19); /* 027C2188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C218C */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C218C */ _t21 = _t20 & 0x00000001u; /* 027C218C */ if (_t21) goto L_027C225C; else goto L_027C2190; L_027C2190: ; // 0x27c2190 /* 027C2190 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C2194 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2194 */ _t23 = _t22 & 0x00000001u; /* 027C2194 */ if (_t23) goto L_027C21A0; else goto L_027C2198; L_027C2198: ; // 0x27c2198 /* 027C2198 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C219C */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C219C */ _t25 = _t24 & 0x00000001u; /* 027C219C */ if (_t25) goto L_027C21A0; else goto L_027C2250; L_027C21A0: ; // 0x27c21a0 /* 027C21A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Eu); /* 027C21A4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C21A4 */ _t27 = _t26 & 0x00000001u; /* 027C21A4 */ if (_t27) goto L_027C21A8; else goto L_027C21E4; L_027C21A8: ; // 0x27c21a8 /* 027C21A8 */ _t28 = cpu->r[31] + 0x00000006u; /* 027C21A8 */ cpu->r[0] = rbrew_read16(cpu->mem, _t28); /* 027C21AC */ cpu->r[9] = cpu->r[31] + cpu->r[0]; /* 027C21B0 */ cpu->r[4] = cpu->r[31]; /* 027C21B4 */ cpu->r[31] = cpu->r[9] + 0x00000008u; /* 027C21B8 */ _t29 = cpu->r[30] + 0x00000000u; /* 027C21B8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t29); /* 027C21BC */ _t30 = cpu->r[9] + 0x00000094u; /* 027C21BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t30); /* 027C21C0 */ cpu->ctr = cpu->r[0]; /* 027C21C4 */ cpu->r[3] = cpu->r[30]; /* 027C21C8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C21CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C21D0 */ _t31 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C21D0 */ _t32 = _t31 & 0x00000001u; /* 027C21D0 */ if (_t32) goto L_027C21D4; else goto L_027C2234; L_027C21D4: ; // 0x27c21d4 /* 027C21D4 */ _t33 = cpu->r[31] + 0x00000000u; /* 027C21D4 */ cpu->r[0] = rbrew_read16(cpu->mem, _t33); /* 027C21D8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C21DC */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C21DC */ _t35 = _t34 & 0x00000001u; /* 027C21DC */ if (_t35) goto L_027C21E0; else goto L_027C2190; L_027C21E0: ; // 0x27c21e0 /* 027C21E0 */ goto L_027C225C; L_027C21E4: ; // 0x27c21e4 /* 027C21E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x0000000Fu); /* 027C21E8 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C21E8 */ _t37 = _t36 & 0x00000001u; /* 027C21E8 */ if (_t37) goto L_027C21EC; else goto L_027C2214; L_027C21EC: ; // 0x27c21ec /* 027C21EC */ _t38 = cpu->r[30] + 0x00000000u; /* 027C21EC */ cpu->r[9] = rbrew_read32(cpu->mem, _t38); /* 027C21F0 */ _t39 = cpu->r[9] + 0x00000094u; /* 027C21F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t39); /* 027C21F4 */ cpu->r[4] = cpu->r[31]; /* 027C21F8 */ cpu->ctr = cpu->r[0]; /* 027C21FC */ cpu->r[31] = cpu->r[31] + 0x00000006u; /* 027C2200 */ cpu->r[3] = cpu->r[30]; /* 027C2204 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C2208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C220C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C220C */ _t41 = _t40 & 0x00000001u; /* 027C220C */ if (_t41) goto L_027C21D4; else goto L_027C2210; L_027C2210: ; // 0x27c2210 /* 027C2210 */ goto L_027C2234; L_027C2214: ; // 0x27c2214 /* 027C2214 */ _t42 = cpu->r[30] + 0x00000000u; /* 027C2214 */ cpu->r[9] = rbrew_read32(cpu->mem, _t42); /* 027C2218 */ _t43 = cpu->r[9] + 0x00000094u; /* 027C2218 */ cpu->r[0] = rbrew_read32(cpu->mem, _t43); /* 027C221C */ cpu->ctr = cpu->r[0]; /* 027C2220 */ cpu->r[3] = cpu->r[30]; /* 027C2224 */ cpu->r[4] = 0x00000000u; /* 027C2228 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C222C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2230 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2230 */ _t45 = _t44 & 0x00000001u; /* 027C2230 */ if (_t45) goto L_027C21D4; else goto L_027C2234; L_027C2234: ; // 0x27c2234 /* 027C2234 */ _t46 = cpu->r[1] + 0x00000014u; /* 027C2234 */ cpu->r[0] = rbrew_read32(cpu->mem, _t46); /* 027C2238 */ _t47 = cpu->r[1] + 0x00000008u; /* 027C2238 */ cpu->r[30] = rbrew_read32(cpu->mem, _t47); /* 027C223C */ cpu->lr = cpu->r[0]; /* 027C2240 */ _t48 = cpu->r[1] + 0x0000000Cu; /* 027C2240 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48); /* 027C2244 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C2248 */ cpu->r[3] = 0x00000001u; /* 027C224C */ return; L_027C2250: ; // 0x27c2250 /* 027C2250 */ _t49 = cpu->r[31] + 0x00000002u; /* 027C2250 */ cpu->r[0] = rbrew_read16(cpu->mem, _t49); /* 027C2250 */ cpu->r[31] = _t49; /* 027C2254 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C2258 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2258 */ _t51 = _t50 & 0x00000001u; /* 027C2258 */ if (_t51) goto L_027C225C; else goto L_027C2190; L_027C225C: ; // 0x27c225c /* 027C225C */ _t52 = cpu->r[1] + 0x00000014u; /* 027C225C */ cpu->r[0] = rbrew_read32(cpu->mem, _t52); /* 027C2260 */ _t53 = cpu->r[1] + 0x00000008u; /* 027C2260 */ cpu->r[30] = rbrew_read32(cpu->mem, _t53); /* 027C2264 */ cpu->lr = cpu->r[0]; /* 027C2268 */ _t54 = cpu->r[1] + 0x0000000Cu; /* 027C2268 */ cpu->r[31] = rbrew_read32(cpu->mem, _t54); /* 027C226C */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C2270 */ cpu->r[3] = 0x00000000u; /* 027C2274 */ return; } // fn_027C2278 @ 0x27c2278 void Gambit_fn_027C2278(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; L_027C2278: ; // 0x27c2278 /* 027C2278 */ cpu->r[0] = cpu->lr; /* 027C227C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C227C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C227C */ cpu->r[1] = _t0; /* 027C2280 */ _t1 = cpu->r[1] + 0x00000008u; /* 027C2280 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C2284 */ cpu->r[30] = 0x101F0000u; /* 027C2288 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C2288 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C228C */ cpu->r[7] = 0x00000080u; /* 027C2290 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C2290 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C2294 */ _t4 = cpu->r[30] + 0x00002BECu; /* 027C2294 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[7]); /* 027C2294 */ cpu->r[30] = _t4; /* 027C2298 */ cpu->r[31] = 0x00000000u; /* 027C229C */ _t5 = cpu->r[30] + 0x00000001u; /* 027C229C */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[7]); /* 027C22A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFFCu); /* 027C22A4 */ _t6 = cpu->r[30] + 0x00000002u; /* 027C22A4 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[7]); /* 027C22A8 */ cpu->r[3] = cpu->r[30] + 0x00000004u; /* 027C22AC */ _t7 = cpu->r[30] + 0x00000003u; /* 027C22AC */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[31]); /* 027C22B0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C22B0 */ _t9 = _t8 & 0x00000001u; /* 027C22B0 */ if (_t9) goto L_027C22B4; else goto L_027C22C4; L_027C22B4: ; // 0x27c22b4 /* 027C22B4 */ cpu->r[3] = 0x00000004u; /* 027C22B8 */ Gambit_fn_02801A78(cpu); /* 027C22BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C22C0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C22C0 */ _t11 = _t10 & 0x00000001u; /* 027C22C0 */ if (_t11) goto L_027C22DC; else goto L_027C22C4; L_027C22C4: ; // 0x27c22c4 /* 027C22C4 */ _t12 = cpu->r[3] + 0x00000000u; /* 027C22C4 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[31]); /* 027C22C8 */ cpu->r[11] = 0x000000CAu; /* 027C22CC */ _t13 = cpu->r[3] + 0x00000003u; /* 027C22CC */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]); /* 027C22D0 */ cpu->r[10] = 0x000000ACu; /* 027C22D4 */ _t14 = cpu->r[3] + 0x00000002u; /* 027C22D4 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[11]); /* 027C22D8 */ _t15 = cpu->r[3] + 0x00000001u; /* 027C22D8 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[10]); L_027C22DC: ; // 0x27c22dc /* 027C22DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFF8u); /* 027C22E0 */ cpu->r[3] = cpu->r[30] + 0x00000008u; /* 027C22E4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C22E4 */ _t17 = _t16 & 0x00000001u; /* 027C22E4 */ if (_t17) goto L_027C22E8; else goto L_027C22F8; L_027C22E8: ; // 0x27c22e8 /* 027C22E8 */ cpu->r[3] = 0x00000004u; /* 027C22EC */ Gambit_fn_02801A78(cpu); /* 027C22F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C22F4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C22F4 */ _t19 = _t18 & 0x00000001u; /* 027C22F4 */ if (_t19) goto L_027C2310; else goto L_027C22F8; L_027C22F8: ; // 0x27c22f8 /* 027C22F8 */ _t20 = cpu->r[3] + 0x00000002u; /* 027C22F8 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[31]); /* 027C22FC */ cpu->r[0] = 0x0000008Cu; /* 027C2300 */ _t21 = cpu->r[3] + 0x00000003u; /* 027C2300 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[31]); /* 027C2304 */ cpu->r[12] = 0x000000FFu; /* 027C2308 */ _t22 = cpu->r[3] + 0x00000001u; /* 027C2308 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]); /* 027C230C */ _t23 = cpu->r[3] + 0x00000000u; /* 027C230C */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[12]); L_027C2310: ; // 0x27c2310 /* 027C2310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFF4u); /* 027C2314 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu; /* 027C2318 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2318 */ _t25 = _t24 & 0x00000001u; /* 027C2318 */ if (_t25) goto L_027C231C; else goto L_027C232C; L_027C231C: ; // 0x27c231c /* 027C231C */ cpu->r[3] = 0x00000004u; /* 027C2320 */ Gambit_fn_02801A78(cpu); /* 027C2324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2328 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2328 */ _t27 = _t26 & 0x00000001u; /* 027C2328 */ if (_t27) goto L_027C2344; else goto L_027C232C; L_027C232C: ; // 0x27c232c /* 027C232C */ _t28 = cpu->r[3] + 0x00000000u; /* 027C232C */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[31]); /* 027C2330 */ cpu->r[6] = 0x000000FFu; /* 027C2334 */ _t29 = cpu->r[3] + 0x00000003u; /* 027C2334 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[31]); /* 027C2338 */ cpu->r[5] = 0x000000DAu; /* 027C233C */ _t30 = cpu->r[3] + 0x00000002u; /* 027C233C */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[6]); /* 027C2340 */ _t31 = cpu->r[3] + 0x00000001u; /* 027C2340 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[5]); L_027C2344: ; // 0x27c2344 /* 027C2344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFF0u); /* 027C2348 */ cpu->r[3] = cpu->r[30] + 0x00000010u; /* 027C234C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C234C */ _t33 = _t32 & 0x00000001u; /* 027C234C */ if (_t33) goto L_027C2350; else goto L_027C2360; L_027C2350: ; // 0x27c2350 /* 027C2350 */ cpu->r[3] = 0x00000004u; /* 027C2354 */ Gambit_fn_02801A78(cpu); /* 027C2358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C235C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C235C */ _t35 = _t34 & 0x00000001u; /* 027C235C */ if (_t35) goto L_027C2378; else goto L_027C2360; L_027C2360: ; // 0x27c2360 /* 027C2360 */ _t36 = cpu->r[3] + 0x00000000u; /* 027C2360 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[31]); /* 027C2364 */ cpu->r[8] = 0x0000009Eu; /* 027C2368 */ _t37 = cpu->r[3] + 0x00000003u; /* 027C2368 */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[31]); /* 027C236C */ cpu->r[7] = 0x000000FFu; /* 027C2370 */ _t38 = cpu->r[3] + 0x00000002u; /* 027C2370 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[8]); /* 027C2374 */ _t39 = cpu->r[3] + 0x00000001u; /* 027C2374 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[7]); L_027C2378: ; // 0x27c2378 /* 027C2378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFECu); /* 027C237C */ cpu->r[3] = cpu->r[30] + 0x00000014u; /* 027C2380 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2380 */ _t41 = _t40 & 0x00000001u; /* 027C2380 */ if (_t41) goto L_027C2384; else goto L_027C2394; L_027C2384: ; // 0x27c2384 /* 027C2384 */ cpu->r[3] = 0x00000004u; /* 027C2388 */ Gambit_fn_02801A78(cpu); /* 027C238C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2390 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2390 */ _t43 = _t42 & 0x00000001u; /* 027C2390 */ if (_t43) goto L_027C23B4; else goto L_027C2394; L_027C2394: ; // 0x27c2394 /* 027C2394 */ cpu->r[9] = 0x000000E6u; /* 027C2398 */ cpu->r[10] = 0x00000055u; /* 027C239C */ _t44 = cpu->r[3] + 0x00000000u; /* 027C239C */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[9]); /* 027C23A0 */ cpu->r[11] = 0x00000032u; /* 027C23A4 */ _t45 = cpu->r[3] + 0x00000001u; /* 027C23A4 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[10]); /* 027C23A8 */ cpu->r[12] = 0x000000FFu; /* 027C23AC */ _t46 = cpu->r[3] + 0x00000002u; /* 027C23AC */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[11]); /* 027C23B0 */ _t47 = cpu->r[3] + 0x00000003u; /* 027C23B0 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[12]); L_027C23B4: ; // 0x27c23b4 /* 027C23B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFE8u); /* 027C23B8 */ cpu->r[3] = cpu->r[30] + 0x00000018u; /* 027C23BC */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C23BC */ _t49 = _t48 & 0x00000001u; /* 027C23BC */ if (_t49) goto L_027C23C0; else goto L_027C23D0; L_027C23C0: ; // 0x27c23c0 /* 027C23C0 */ cpu->r[3] = 0x00000004u; /* 027C23C4 */ Gambit_fn_02801A78(cpu); /* 027C23C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C23CC */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C23CC */ _t51 = _t50 & 0x00000001u; /* 027C23CC */ if (_t51) goto L_027C23EC; else goto L_027C23D0; L_027C23D0: ; // 0x27c23d0 /* 027C23D0 */ cpu->r[0] = 0x0000008Cu; /* 027C23D4 */ _t52 = cpu->r[3] + 0x00000002u; /* 027C23D4 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[31]); /* 027C23D8 */ cpu->r[5] = 0x000000DCu; /* 027C23DC */ _t53 = cpu->r[3] + 0x00000000u; /* 027C23DC */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[0]); /* 027C23E0 */ cpu->r[6] = 0x000000FFu; /* 027C23E4 */ _t54 = cpu->r[3] + 0x00000001u; /* 027C23E4 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[5]); /* 027C23E8 */ _t55 = cpu->r[3] + 0x00000003u; /* 027C23E8 */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[6]); L_027C23EC: ; // 0x27c23ec /* 027C23EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFE4u); /* 027C23F0 */ cpu->r[3] = cpu->r[30] + 0x0000001Cu; /* 027C23F4 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C23F4 */ _t57 = _t56 & 0x00000001u; /* 027C23F4 */ if (_t57) goto L_027C23F8; else goto L_027C2408; L_027C23F8: ; // 0x27c23f8 /* 027C23F8 */ cpu->r[3] = 0x00000004u; /* 027C23FC */ Gambit_fn_02801A78(cpu); /* 027C2400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2404 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2404 */ _t59 = _t58 & 0x00000001u; /* 027C2404 */ if (_t59) goto L_027C2424; else goto L_027C2408; L_027C2408: ; // 0x27c2408 /* 027C2408 */ cpu->r[7] = 0x00000078u; /* 027C240C */ _t60 = cpu->r[3] + 0x00000000u; /* 027C240C */ rbrew_write8(cpu->mem, _t60, (uint8_t)cpu->r[31]); /* 027C2410 */ cpu->r[8] = 0x000000F0u; /* 027C2414 */ _t61 = cpu->r[3] + 0x00000001u; /* 027C2414 */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[7]); /* 027C2418 */ cpu->r[9] = 0x000000FFu; /* 027C241C */ _t62 = cpu->r[3] + 0x00000002u; /* 027C241C */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[8]); /* 027C2420 */ _t63 = cpu->r[3] + 0x00000003u; /* 027C2420 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[9]); L_027C2424: ; // 0x27c2424 /* 027C2424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFE0u); /* 027C2428 */ cpu->r[3] = cpu->r[30] + 0x00000020u; /* 027C242C */ _t64 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C242C */ _t65 = _t64 & 0x00000001u; /* 027C242C */ if (_t65) goto L_027C2430; else goto L_027C2440; L_027C2430: ; // 0x27c2430 /* 027C2430 */ cpu->r[3] = 0x00000004u; /* 027C2434 */ Gambit_fn_02801A78(cpu); /* 027C2438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C243C */ _t66 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C243C */ _t67 = _t66 & 0x00000001u; /* 027C243C */ if (_t67) goto L_027C2458; else goto L_027C2440; L_027C2440: ; // 0x27c2440 /* 027C2440 */ cpu->r[10] = 0x000000F5u; /* 027C2444 */ cpu->r[0] = 0x000000FFu; /* 027C2448 */ _t68 = cpu->r[3] + 0x00000000u; /* 027C2448 */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[10]); /* 027C244C */ _t69 = cpu->r[3] + 0x00000003u; /* 027C244C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]); /* 027C2450 */ _t70 = cpu->r[3] + 0x00000002u; /* 027C2450 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[10]); /* 027C2454 */ _t71 = cpu->r[3] + 0x00000001u; /* 027C2454 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[10]); L_027C2458: ; // 0x27c2458 /* 027C2458 */ _t72 = cpu->r[1] + 0x00000014u; /* 027C2458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72); /* 027C245C */ _t73 = cpu->r[1] + 0x00000008u; /* 027C245C */ cpu->r[30] = rbrew_read32(cpu->mem, _t73); /* 027C2460 */ cpu->lr = cpu->r[0]; /* 027C2464 */ _t74 = cpu->r[1] + 0x0000000Cu; /* 027C2464 */ cpu->r[31] = rbrew_read32(cpu->mem, _t74); /* 027C2468 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C246C */ return; } // fn_027C227C @ 0x27c227c void Gambit_fn_027C227C(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; L_027C227C: ; // 0x27c227c /* 027C227C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C227C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C227C */ cpu->r[1] = _t0; /* 027C2280 */ _t1 = cpu->r[1] + 0x00000008u; /* 027C2280 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C2284 */ cpu->r[30] = 0x101F0000u; /* 027C2288 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C2288 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C228C */ cpu->r[7] = 0x00000080u; /* 027C2290 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C2290 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C2294 */ _t4 = cpu->r[30] + 0x00002BECu; /* 027C2294 */ rbrew_write8(cpu->mem, _t4, (uint8_t)cpu->r[7]); /* 027C2294 */ cpu->r[30] = _t4; /* 027C2298 */ cpu->r[31] = 0x00000000u; /* 027C229C */ _t5 = cpu->r[30] + 0x00000001u; /* 027C229C */ rbrew_write8(cpu->mem, _t5, (uint8_t)cpu->r[7]); /* 027C22A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFFCu); /* 027C22A4 */ _t6 = cpu->r[30] + 0x00000002u; /* 027C22A4 */ rbrew_write8(cpu->mem, _t6, (uint8_t)cpu->r[7]); /* 027C22A8 */ cpu->r[3] = cpu->r[30] + 0x00000004u; /* 027C22AC */ _t7 = cpu->r[30] + 0x00000003u; /* 027C22AC */ rbrew_write8(cpu->mem, _t7, (uint8_t)cpu->r[31]); /* 027C22B0 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C22B0 */ _t9 = _t8 & 0x00000001u; /* 027C22B0 */ if (_t9) goto L_027C22B4; else goto L_027C22C4; L_027C22B4: ; // 0x27c22b4 /* 027C22B4 */ cpu->r[3] = 0x00000004u; /* 027C22B8 */ Gambit_fn_02801A78(cpu); /* 027C22BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C22C0 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C22C0 */ _t11 = _t10 & 0x00000001u; /* 027C22C0 */ if (_t11) goto L_027C22DC; else goto L_027C22C4; L_027C22C4: ; // 0x27c22c4 /* 027C22C4 */ _t12 = cpu->r[3] + 0x00000000u; /* 027C22C4 */ rbrew_write8(cpu->mem, _t12, (uint8_t)cpu->r[31]); /* 027C22C8 */ cpu->r[11] = 0x000000CAu; /* 027C22CC */ _t13 = cpu->r[3] + 0x00000003u; /* 027C22CC */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[31]); /* 027C22D0 */ cpu->r[10] = 0x000000ACu; /* 027C22D4 */ _t14 = cpu->r[3] + 0x00000002u; /* 027C22D4 */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[11]); /* 027C22D8 */ _t15 = cpu->r[3] + 0x00000001u; /* 027C22D8 */ rbrew_write8(cpu->mem, _t15, (uint8_t)cpu->r[10]); L_027C22DC: ; // 0x27c22dc /* 027C22DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFF8u); /* 027C22E0 */ cpu->r[3] = cpu->r[30] + 0x00000008u; /* 027C22E4 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C22E4 */ _t17 = _t16 & 0x00000001u; /* 027C22E4 */ if (_t17) goto L_027C22E8; else goto L_027C22F8; L_027C22E8: ; // 0x27c22e8 /* 027C22E8 */ cpu->r[3] = 0x00000004u; /* 027C22EC */ Gambit_fn_02801A78(cpu); /* 027C22F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C22F4 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C22F4 */ _t19 = _t18 & 0x00000001u; /* 027C22F4 */ if (_t19) goto L_027C2310; else goto L_027C22F8; L_027C22F8: ; // 0x27c22f8 /* 027C22F8 */ _t20 = cpu->r[3] + 0x00000002u; /* 027C22F8 */ rbrew_write8(cpu->mem, _t20, (uint8_t)cpu->r[31]); /* 027C22FC */ cpu->r[0] = 0x0000008Cu; /* 027C2300 */ _t21 = cpu->r[3] + 0x00000003u; /* 027C2300 */ rbrew_write8(cpu->mem, _t21, (uint8_t)cpu->r[31]); /* 027C2304 */ cpu->r[12] = 0x000000FFu; /* 027C2308 */ _t22 = cpu->r[3] + 0x00000001u; /* 027C2308 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[0]); /* 027C230C */ _t23 = cpu->r[3] + 0x00000000u; /* 027C230C */ rbrew_write8(cpu->mem, _t23, (uint8_t)cpu->r[12]); L_027C2310: ; // 0x27c2310 /* 027C2310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFF4u); /* 027C2314 */ cpu->r[3] = cpu->r[30] + 0x0000000Cu; /* 027C2318 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2318 */ _t25 = _t24 & 0x00000001u; /* 027C2318 */ if (_t25) goto L_027C231C; else goto L_027C232C; L_027C231C: ; // 0x27c231c /* 027C231C */ cpu->r[3] = 0x00000004u; /* 027C2320 */ Gambit_fn_02801A78(cpu); /* 027C2324 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2328 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2328 */ _t27 = _t26 & 0x00000001u; /* 027C2328 */ if (_t27) goto L_027C2344; else goto L_027C232C; L_027C232C: ; // 0x27c232c /* 027C232C */ _t28 = cpu->r[3] + 0x00000000u; /* 027C232C */ rbrew_write8(cpu->mem, _t28, (uint8_t)cpu->r[31]); /* 027C2330 */ cpu->r[6] = 0x000000FFu; /* 027C2334 */ _t29 = cpu->r[3] + 0x00000003u; /* 027C2334 */ rbrew_write8(cpu->mem, _t29, (uint8_t)cpu->r[31]); /* 027C2338 */ cpu->r[5] = 0x000000DAu; /* 027C233C */ _t30 = cpu->r[3] + 0x00000002u; /* 027C233C */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[6]); /* 027C2340 */ _t31 = cpu->r[3] + 0x00000001u; /* 027C2340 */ rbrew_write8(cpu->mem, _t31, (uint8_t)cpu->r[5]); L_027C2344: ; // 0x27c2344 /* 027C2344 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFF0u); /* 027C2348 */ cpu->r[3] = cpu->r[30] + 0x00000010u; /* 027C234C */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C234C */ _t33 = _t32 & 0x00000001u; /* 027C234C */ if (_t33) goto L_027C2350; else goto L_027C2360; L_027C2350: ; // 0x27c2350 /* 027C2350 */ cpu->r[3] = 0x00000004u; /* 027C2354 */ Gambit_fn_02801A78(cpu); /* 027C2358 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C235C */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C235C */ _t35 = _t34 & 0x00000001u; /* 027C235C */ if (_t35) goto L_027C2378; else goto L_027C2360; L_027C2360: ; // 0x27c2360 /* 027C2360 */ _t36 = cpu->r[3] + 0x00000000u; /* 027C2360 */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[31]); /* 027C2364 */ cpu->r[8] = 0x0000009Eu; /* 027C2368 */ _t37 = cpu->r[3] + 0x00000003u; /* 027C2368 */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[31]); /* 027C236C */ cpu->r[7] = 0x000000FFu; /* 027C2370 */ _t38 = cpu->r[3] + 0x00000002u; /* 027C2370 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[8]); /* 027C2374 */ _t39 = cpu->r[3] + 0x00000001u; /* 027C2374 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[7]); L_027C2378: ; // 0x27c2378 /* 027C2378 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFECu); /* 027C237C */ cpu->r[3] = cpu->r[30] + 0x00000014u; /* 027C2380 */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2380 */ _t41 = _t40 & 0x00000001u; /* 027C2380 */ if (_t41) goto L_027C2384; else goto L_027C2394; L_027C2384: ; // 0x27c2384 /* 027C2384 */ cpu->r[3] = 0x00000004u; /* 027C2388 */ Gambit_fn_02801A78(cpu); /* 027C238C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2390 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2390 */ _t43 = _t42 & 0x00000001u; /* 027C2390 */ if (_t43) goto L_027C23B4; else goto L_027C2394; L_027C2394: ; // 0x27c2394 /* 027C2394 */ cpu->r[9] = 0x000000E6u; /* 027C2398 */ cpu->r[10] = 0x00000055u; /* 027C239C */ _t44 = cpu->r[3] + 0x00000000u; /* 027C239C */ rbrew_write8(cpu->mem, _t44, (uint8_t)cpu->r[9]); /* 027C23A0 */ cpu->r[11] = 0x00000032u; /* 027C23A4 */ _t45 = cpu->r[3] + 0x00000001u; /* 027C23A4 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[10]); /* 027C23A8 */ cpu->r[12] = 0x000000FFu; /* 027C23AC */ _t46 = cpu->r[3] + 0x00000002u; /* 027C23AC */ rbrew_write8(cpu->mem, _t46, (uint8_t)cpu->r[11]); /* 027C23B0 */ _t47 = cpu->r[3] + 0x00000003u; /* 027C23B0 */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[12]); L_027C23B4: ; // 0x27c23b4 /* 027C23B4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFE8u); /* 027C23B8 */ cpu->r[3] = cpu->r[30] + 0x00000018u; /* 027C23BC */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C23BC */ _t49 = _t48 & 0x00000001u; /* 027C23BC */ if (_t49) goto L_027C23C0; else goto L_027C23D0; L_027C23C0: ; // 0x27c23c0 /* 027C23C0 */ cpu->r[3] = 0x00000004u; /* 027C23C4 */ Gambit_fn_02801A78(cpu); /* 027C23C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C23CC */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C23CC */ _t51 = _t50 & 0x00000001u; /* 027C23CC */ if (_t51) goto L_027C23EC; else goto L_027C23D0; L_027C23D0: ; // 0x27c23d0 /* 027C23D0 */ cpu->r[0] = 0x0000008Cu; /* 027C23D4 */ _t52 = cpu->r[3] + 0x00000002u; /* 027C23D4 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[31]); /* 027C23D8 */ cpu->r[5] = 0x000000DCu; /* 027C23DC */ _t53 = cpu->r[3] + 0x00000000u; /* 027C23DC */ rbrew_write8(cpu->mem, _t53, (uint8_t)cpu->r[0]); /* 027C23E0 */ cpu->r[6] = 0x000000FFu; /* 027C23E4 */ _t54 = cpu->r[3] + 0x00000001u; /* 027C23E4 */ rbrew_write8(cpu->mem, _t54, (uint8_t)cpu->r[5]); /* 027C23E8 */ _t55 = cpu->r[3] + 0x00000003u; /* 027C23E8 */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[6]); L_027C23EC: ; // 0x27c23ec /* 027C23EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFE4u); /* 027C23F0 */ cpu->r[3] = cpu->r[30] + 0x0000001Cu; /* 027C23F4 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C23F4 */ _t57 = _t56 & 0x00000001u; /* 027C23F4 */ if (_t57) goto L_027C23F8; else goto L_027C2408; L_027C23F8: ; // 0x27c23f8 /* 027C23F8 */ cpu->r[3] = 0x00000004u; /* 027C23FC */ Gambit_fn_02801A78(cpu); /* 027C2400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2404 */ _t58 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2404 */ _t59 = _t58 & 0x00000001u; /* 027C2404 */ if (_t59) goto L_027C2424; else goto L_027C2408; L_027C2408: ; // 0x27c2408 /* 027C2408 */ cpu->r[7] = 0x00000078u; /* 027C240C */ _t60 = cpu->r[3] + 0x00000000u; /* 027C240C */ rbrew_write8(cpu->mem, _t60, (uint8_t)cpu->r[31]); /* 027C2410 */ cpu->r[8] = 0x000000F0u; /* 027C2414 */ _t61 = cpu->r[3] + 0x00000001u; /* 027C2414 */ rbrew_write8(cpu->mem, _t61, (uint8_t)cpu->r[7]); /* 027C2418 */ cpu->r[9] = 0x000000FFu; /* 027C241C */ _t62 = cpu->r[3] + 0x00000002u; /* 027C241C */ rbrew_write8(cpu->mem, _t62, (uint8_t)cpu->r[8]); /* 027C2420 */ _t63 = cpu->r[3] + 0x00000003u; /* 027C2420 */ rbrew_write8(cpu->mem, _t63, (uint8_t)cpu->r[9]); L_027C2424: ; // 0x27c2424 /* 027C2424 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0xFFFFFFE0u); /* 027C2428 */ cpu->r[3] = cpu->r[30] + 0x00000020u; /* 027C242C */ _t64 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C242C */ _t65 = _t64 & 0x00000001u; /* 027C242C */ if (_t65) goto L_027C2430; else goto L_027C2440; L_027C2430: ; // 0x27c2430 /* 027C2430 */ cpu->r[3] = 0x00000004u; /* 027C2434 */ Gambit_fn_02801A78(cpu); /* 027C2438 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C243C */ _t66 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C243C */ _t67 = _t66 & 0x00000001u; /* 027C243C */ if (_t67) goto L_027C2458; else goto L_027C2440; L_027C2440: ; // 0x27c2440 /* 027C2440 */ cpu->r[10] = 0x000000F5u; /* 027C2444 */ cpu->r[0] = 0x000000FFu; /* 027C2448 */ _t68 = cpu->r[3] + 0x00000000u; /* 027C2448 */ rbrew_write8(cpu->mem, _t68, (uint8_t)cpu->r[10]); /* 027C244C */ _t69 = cpu->r[3] + 0x00000003u; /* 027C244C */ rbrew_write8(cpu->mem, _t69, (uint8_t)cpu->r[0]); /* 027C2450 */ _t70 = cpu->r[3] + 0x00000002u; /* 027C2450 */ rbrew_write8(cpu->mem, _t70, (uint8_t)cpu->r[10]); /* 027C2454 */ _t71 = cpu->r[3] + 0x00000001u; /* 027C2454 */ rbrew_write8(cpu->mem, _t71, (uint8_t)cpu->r[10]); L_027C2458: ; // 0x27c2458 /* 027C2458 */ _t72 = cpu->r[1] + 0x00000014u; /* 027C2458 */ cpu->r[0] = rbrew_read32(cpu->mem, _t72); /* 027C245C */ _t73 = cpu->r[1] + 0x00000008u; /* 027C245C */ cpu->r[30] = rbrew_read32(cpu->mem, _t73); /* 027C2460 */ cpu->lr = cpu->r[0]; /* 027C2464 */ _t74 = cpu->r[1] + 0x0000000Cu; /* 027C2464 */ cpu->r[31] = rbrew_read32(cpu->mem, _t74); /* 027C2468 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C246C */ return; } // fn_027C2470 @ 0x27c2470 void Gambit_fn_027C2470(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_027C2470: ; // 0x27c2470 /* 027C2470 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2474 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2474 */ _t1 = _t0 & 0x00000001u; /* 027C2474 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C2474 */ goto L_027C2478; L_027C2478: ; // 0x27c2478 /* 027C2478 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C2478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C247C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C247C */ _t3 = _t2 & 0x00000001u; /* 027C247C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C247C */ goto L_027C2480; L_027C2480: ; // 0x27c2480 /* 027C2480 */ 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_027C2484 @ 0x27c2484 void Gambit_fn_027C2484(CPUState* cpu) { L_027C2484: ; // 0x27c2484 /* 027C2484 */ return; } // fn_027C2488 @ 0x27c2488 void Gambit_fn_027C2488(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_027C2488: ; // 0x27c2488 /* 027C2488 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C248C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C248C */ _t1 = _t0 & 0x00000001u; /* 027C248C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C248C */ goto L_027C2490; L_027C2490: ; // 0x27c2490 /* 027C2490 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C2490 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C2494 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2494 */ _t3 = _t2 & 0x00000001u; /* 027C2494 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C2494 */ goto L_027C2498; L_027C2498: ; // 0x27c2498 /* 027C2498 */ 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_027C249C @ 0x27c249c void Gambit_fn_027C249C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027C249C: ; // 0x27c249c /* 027C249C */ _t0 = cpu->r[3] + 0x00000000u; /* 027C249C */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027C24A0 */ _t1 = cpu->r[3] + 0x00000008u; /* 027C24A0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027C24A4 */ cpu->r[12] = cpu->r[11] + cpu->r[12]; /* 027C24A8 */ cpu->r[11] = 0x10110000u; /* 027C24AC */ _t2 = cpu->r[11] + 0x00007399u; /* 027C24AC */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027C24B0 */ _t3 = cpu->r[12] + 0xFFFFFFFFu; /* 027C24B0 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]); /* 027C24B4 */ return; } // fn_027C24B8 @ 0x27c24b8 void Gambit_fn_027C24B8(CPUState* cpu) { L_027C24B8: ; // 0x27c24b8 /* 027C24B8 */ return; } // fn_027C24BC @ 0x27c24bc void Gambit_fn_027C24BC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027C24BC: ; // 0x27c24bc /* 027C24BC */ _t0 = cpu->r[3] + 0x00000008u; /* 027C24BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027C24C0 */ cpu->r[9] = 0x10110000u; /* 027C24C4 */ _t1 = cpu->r[3] + 0x00000000u; /* 027C24C4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027C24C8 */ cpu->r[10] = rbrew_rlwinm(cpu->r[11], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C24CC */ _t2 = cpu->r[9] + 0x0000739Au; /* 027C24CC */ cpu->r[0] = rbrew_read16(cpu->mem, _t2); /* 027C24D0 */ cpu->r[12] = cpu->r[12] + cpu->r[10]; /* 027C24D4 */ _t3 = cpu->r[12] + 0xFFFFFFFEu; /* 027C24D4 */ rbrew_write16(cpu->mem, _t3, (uint16_t)cpu->r[0]); /* 027C24D8 */ return; } // fn_027C24DC @ 0x27c24dc void Gambit_fn_027C24DC(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_027C24DC: ; // 0x27c24dc /* 027C24DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C24E0 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C24E0 */ _t1 = _t0 & 0x00000001u; /* 027C24E0 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C24E0 */ goto L_027C24E4; L_027C24E4: ; // 0x27c24e4 /* 027C24E4 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C24E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C24E8 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C24E8 */ _t3 = _t2 & 0x00000001u; /* 027C24E8 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C24E8 */ goto L_027C24EC; L_027C24EC: ; // 0x27c24ec /* 027C24EC */ 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_027C24F0 @ 0x27c24f0 void Gambit_fn_027C24F0(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_027C24F0: ; // 0x27c24f0 /* 027C24F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C24F4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C24F4 */ _t1 = _t0 & 0x00000001u; /* 027C24F4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C24F4 */ goto L_027C24F8; L_027C24F8: ; // 0x27c24f8 /* 027C24F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C24F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C24FC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C24FC */ _t3 = _t2 & 0x00000001u; /* 027C24FC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C24FC */ goto L_027C2500; L_027C2500: ; // 0x27c2500 /* 027C2500 */ 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_027C2504 @ 0x27c2504 void Gambit_fn_027C2504(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_027C2504: ; // 0x27c2504 /* 027C2504 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2508 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2508 */ _t1 = _t0 & 0x00000001u; /* 027C2508 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C2508 */ goto L_027C250C; L_027C250C: ; // 0x27c250c /* 027C250C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C250C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C2510 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2510 */ _t3 = _t2 & 0x00000001u; /* 027C2510 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C2510 */ goto L_027C2514; L_027C2514: ; // 0x27c2514 /* 027C2514 */ 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_027C2518 @ 0x27c2518 void Gambit_fn_027C2518(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_027C2518: ; // 0x27c2518 /* 027C2518 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C251C */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C251C */ _t1 = _t0 & 0x00000001u; /* 027C251C */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C251C */ goto L_027C2520; L_027C2520: ; // 0x27c2520 /* 027C2520 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C2520 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C2524 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2524 */ _t3 = _t2 & 0x00000001u; /* 027C2524 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C2524 */ goto L_027C2528; L_027C2528: ; // 0x27c2528 /* 027C2528 */ 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_027C252C @ 0x27c252c void Gambit_fn_027C252C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57; L_027C252C: ; // 0x27c252c /* 027C252C */ cpu->r[0] = cpu->lr; /* 027C2530 */ _t0 = cpu->r[1] + 0xFFFFFF78u; /* 027C2530 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2530 */ cpu->r[1] = _t0; /* 027C2534 */ _t1 = cpu->r[1] + 0x00000034u; /* 027C2534 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]); /* 027C2538 */ _t2 = cpu->r[1] + 0x00000084u; /* 027C2538 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C253C */ _t3 = cpu->r[1] + 0x0000002Cu; /* 027C253C */ rbrew_write32(cpu->mem, _t3, cpu->r[8]); /* 027C2540 */ _t4 = cpu->r[1] + 0x00000020u; /* 027C2540 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]); /* 027C2544 */ _t5 = cpu->r[1] + 0x00000018u; /* 027C2544 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]); /* 027C2548 */ _t6 = cpu->r[1] + 0x0000008Cu; /* 027C2548 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027C254C */ _t7 = cpu->r[1] + 0x00000078u; /* 027C254C */ rbrew_write32(cpu->mem, _t7, cpu->r[28]); /* 027C2550 */ _t8 = cpu->r[1] + 0x00000080u; /* 027C2550 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027C2554 */ _t9 = cpu->r[1] + 0x00000024u; /* 027C2554 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]); /* 027C2558 */ _t10 = cpu->r[1] + 0x00000030u; /* 027C2558 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027C255C */ _t11 = cpu->r[1] + 0x0000007Cu; /* 027C255C */ rbrew_write32(cpu->mem, _t11, cpu->r[29]); /* 027C2560 */ _t12 = cpu->r[1] + 0x0000001Cu; /* 027C2560 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]); /* 027C2564 */ _t13 = cpu->r[1] + 0x00000028u; /* 027C2564 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]); /* 027C2568 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u); /* 027C2568 */ _t15 = _t14 & 0x00000001u; /* 027C2568 */ if (_t15) goto L_027C256C; else goto L_027C258C; L_027C256C: ; // 0x27c256c /* 027C256C */ _t16 = cpu->r[1] + 0x00000048u; /* 027C256C */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]); /* 027C2570 */ _t17 = cpu->r[1] + 0x00000068u; /* 027C2570 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]); /* 027C2574 */ _t18 = cpu->r[1] + 0x00000060u; /* 027C2574 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]); /* 027C2578 */ _t19 = cpu->r[1] + 0x00000040u; /* 027C2578 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]); /* 027C257C */ _t20 = cpu->r[1] + 0x00000050u; /* 027C257C */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]); /* 027C2580 */ _t21 = cpu->r[1] + 0x00000070u; /* 027C2580 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]); /* 027C2584 */ _t22 = cpu->r[1] + 0x00000058u; /* 027C2584 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]); /* 027C2588 */ _t23 = cpu->r[1] + 0x00000038u; /* 027C2588 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]); L_027C258C: ; // 0x27c258c /* 027C258C */ cpu->r[31] = cpu->r[3]; /* 027C258C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C2590 */ cpu->r[30] = cpu->r[4]; /* 027C2594 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2594 */ _t25 = _t24 & 0x00000001u; /* 027C2594 */ if (_t25) goto L_027C2598; else goto L_027C25A8; L_027C2598: ; // 0x27c2598 /* 027C2598 */ cpu->r[3] = 0x0000001Cu; /* 027C259C */ Gambit_fn_02801A78(cpu); /* 027C25A0 */ cpu->r[31] = cpu->r[3]; /* 027C25A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C25A4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25A4 */ _t27 = _t26 & 0x00000001u; /* 027C25A4 */ if (_t27) goto L_027C266C; else goto L_027C25A8; L_027C25A8: ; // 0x27c25a8 /* 027C25A8 */ cpu->r[29] = cpu->r[31]; /* 027C25A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C25AC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25AC */ _t29 = _t28 & 0x00000001u; /* 027C25AC */ if (_t29) goto L_027C25B0; else goto L_027C25C0; L_027C25B0: ; // 0x27c25b0 /* 027C25B0 */ cpu->r[3] = 0x0000001Cu; /* 027C25B4 */ Gambit_fn_02801A78(cpu); /* 027C25B8 */ cpu->r[29] = cpu->r[3]; /* 027C25B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C25BC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25BC */ _t31 = _t30 & 0x00000001u; /* 027C25BC */ if (_t31) goto L_027C2630; else goto L_027C25C0; L_027C25C0: ; // 0x27c25c0 /* 027C25C0 */ cpu->r[3] = cpu->r[29]; /* 027C25C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C25C4 */ cpu->r[28] = 0x10110000u; /* 027C25C8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25C8 */ _t33 = _t32 & 0x00000001u; /* 027C25C8 */ if (_t33) goto L_027C25CC; else goto L_027C25F8; L_027C25CC: ; // 0x27c25cc /* 027C25CC */ cpu->r[3] = 0x0000000Cu; /* 027C25D0 */ Gambit_fn_02801A78(cpu); /* 027C25D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C25D8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25D8 */ _t35 = _t34 & 0x00000001u; /* 027C25D8 */ if (_t35) goto L_027C25DC; else goto L_027C25F8; L_027C25DC: ; // 0x27c25dc /* 027C25DC */ cpu->r[7] = 0x10110000u; /* 027C25E0 */ _t36 = cpu->r[28] + 0x00007399u; /* 027C25E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36); /* 027C25E4 */ cpu->r[7] = cpu->r[7] + 0xFFFFBDCCu; /* 027C25E8 */ _t37 = cpu->r[29] + 0x00000000u; /* 027C25E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37); /* 027C25EC */ _t38 = cpu->r[29] + 0x00000004u; /* 027C25EC */ rbrew_write32(cpu->mem, _t38, cpu->r[7]); /* 027C25F0 */ _t39 = cpu->r[8] + 0x00000000u; /* 027C25F0 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]); /* 027C25F4 */ goto L_027C2630; L_027C25F8: ; // 0x27c25f8 /* 027C25F8 */ cpu->r[5] = 0x10110000u; /* 027C25FC */ cpu->r[0] = cpu->r[29] + 0x0000000Cu; /* 027C2600 */ cpu->r[5] = cpu->r[5] + 0xFFFFBCF4u; /* 027C2604 */ _t40 = cpu->r[3] + 0x00000000u; /* 027C2604 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]); /* 027C2608 */ cpu->r[6] = 0x00000010u; /* 027C260C */ _t41 = cpu->r[3] + 0x00000004u; /* 027C260C */ rbrew_write32(cpu->mem, _t41, cpu->r[5]); /* 027C2610 */ _t42 = cpu->r[3] + 0x00000008u; /* 027C2610 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]); /* 027C2614 */ _t43 = cpu->r[28] + 0x00007399u; /* 027C2614 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43); /* 027C2618 */ cpu->r[7] = 0x10110000u; /* 027C261C */ _t44 = cpu->r[29] + 0x00000000u; /* 027C261C */ cpu->r[8] = rbrew_read32(cpu->mem, _t44); /* 027C2620 */ cpu->r[7] = cpu->r[7] + 0xFFFFBDCCu; /* 027C2624 */ _t45 = cpu->r[29] + 0x0000001Bu; /* 027C2624 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]); /* 027C2628 */ _t46 = cpu->r[29] + 0x00000004u; /* 027C2628 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]); /* 027C262C */ _t47 = cpu->r[8] + 0x00000000u; /* 027C262C */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]); L_027C2630: ; // 0x27c2630 /* 027C2630 */ cpu->r[9] = 0x10110000u; /* 027C2634 */ cpu->r[12] = 0x00000002u; /* 027C2638 */ cpu->r[9] = cpu->r[9] + 0xFFFFBDFCu; /* 027C263C */ cpu->r[0] = cpu->r[1] + 0x00000090u; /* 027C2640 */ _t48 = cpu->r[31] + 0x00000004u; /* 027C2640 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]); /* 027C2644 */ cpu->r[11] = cpu->r[1] + 0x00000018u; /* 027C2648 */ _t49 = cpu->r[1] + 0x0000000Cu; /* 027C2648 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]); /* 027C264C */ cpu->r[0] = 0x00000000u; /* 027C2650 */ _t50 = cpu->r[1] + 0x00000010u; /* 027C2650 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]); /* 027C2654 */ cpu->r[3] = cpu->r[31]; /* 027C2658 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027C265C */ _t51 = cpu->r[1] + 0x00000009u; /* 027C265C */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]); /* 027C2660 */ cpu->r[4] = cpu->r[30]; /* 027C2664 */ _t52 = cpu->r[1] + 0x00000008u; /* 027C2664 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]); /* 027C2668 */ Gambit_fn_0282A5DC(cpu); L_027C266C: ; // 0x27c266c /* 027C266C */ _t53 = cpu->r[1] + 0x00000078u; /* 027C266C */ cpu->r[28] = rbrew_read32(cpu->mem, _t53); /* 027C2670 */ _t54 = cpu->r[1] + 0x0000007Cu; /* 027C2670 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54); /* 027C2674 */ _t55 = cpu->r[1] + 0x0000008Cu; /* 027C2674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55); /* 027C2678 */ cpu->r[3] = cpu->r[31]; /* 027C267C */ _t56 = cpu->r[1] + 0x00000080u; /* 027C267C */ cpu->r[30] = rbrew_read32(cpu->mem, _t56); /* 027C2680 */ cpu->lr = cpu->r[0]; /* 027C2684 */ _t57 = cpu->r[1] + 0x00000084u; /* 027C2684 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57); /* 027C2688 */ cpu->r[1] = cpu->r[1] + 0x00000088u; /* 027C268C */ return; } // fn_027C2530 @ 0x27c2530 void Gambit_fn_027C2530(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54, _t55, _t56, _t57; L_027C2530: ; // 0x27c2530 /* 027C2530 */ _t0 = cpu->r[1] + 0xFFFFFF78u; /* 027C2530 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2530 */ cpu->r[1] = _t0; /* 027C2534 */ _t1 = cpu->r[1] + 0x00000034u; /* 027C2534 */ rbrew_write32(cpu->mem, _t1, cpu->r[10]); /* 027C2538 */ _t2 = cpu->r[1] + 0x00000084u; /* 027C2538 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C253C */ _t3 = cpu->r[1] + 0x0000002Cu; /* 027C253C */ rbrew_write32(cpu->mem, _t3, cpu->r[8]); /* 027C2540 */ _t4 = cpu->r[1] + 0x00000020u; /* 027C2540 */ rbrew_write32(cpu->mem, _t4, cpu->r[5]); /* 027C2544 */ _t5 = cpu->r[1] + 0x00000018u; /* 027C2544 */ rbrew_write32(cpu->mem, _t5, cpu->r[3]); /* 027C2548 */ _t6 = cpu->r[1] + 0x0000008Cu; /* 027C2548 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027C254C */ _t7 = cpu->r[1] + 0x00000078u; /* 027C254C */ rbrew_write32(cpu->mem, _t7, cpu->r[28]); /* 027C2550 */ _t8 = cpu->r[1] + 0x00000080u; /* 027C2550 */ rbrew_write32(cpu->mem, _t8, cpu->r[30]); /* 027C2554 */ _t9 = cpu->r[1] + 0x00000024u; /* 027C2554 */ rbrew_write32(cpu->mem, _t9, cpu->r[6]); /* 027C2558 */ _t10 = cpu->r[1] + 0x00000030u; /* 027C2558 */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027C255C */ _t11 = cpu->r[1] + 0x0000007Cu; /* 027C255C */ rbrew_write32(cpu->mem, _t11, cpu->r[29]); /* 027C2560 */ _t12 = cpu->r[1] + 0x0000001Cu; /* 027C2560 */ rbrew_write32(cpu->mem, _t12, cpu->r[4]); /* 027C2564 */ _t13 = cpu->r[1] + 0x00000028u; /* 027C2564 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]); /* 027C2568 */ _t14 = cpu->cr[1] >> (0x00000001u & 31u); /* 027C2568 */ _t15 = _t14 & 0x00000001u; /* 027C2568 */ if (_t15) goto L_027C256C; else goto L_027C258C; L_027C256C: ; // 0x27c256c /* 027C256C */ _t16 = cpu->r[1] + 0x00000048u; /* 027C256C */ rbrew_write_f64(cpu->mem, _t16, cpu->f[3]); /* 027C2570 */ _t17 = cpu->r[1] + 0x00000068u; /* 027C2570 */ rbrew_write_f64(cpu->mem, _t17, cpu->f[7]); /* 027C2574 */ _t18 = cpu->r[1] + 0x00000060u; /* 027C2574 */ rbrew_write_f64(cpu->mem, _t18, cpu->f[6]); /* 027C2578 */ _t19 = cpu->r[1] + 0x00000040u; /* 027C2578 */ rbrew_write_f64(cpu->mem, _t19, cpu->f[2]); /* 027C257C */ _t20 = cpu->r[1] + 0x00000050u; /* 027C257C */ rbrew_write_f64(cpu->mem, _t20, cpu->f[4]); /* 027C2580 */ _t21 = cpu->r[1] + 0x00000070u; /* 027C2580 */ rbrew_write_f64(cpu->mem, _t21, cpu->f[8]); /* 027C2584 */ _t22 = cpu->r[1] + 0x00000058u; /* 027C2584 */ rbrew_write_f64(cpu->mem, _t22, cpu->f[5]); /* 027C2588 */ _t23 = cpu->r[1] + 0x00000038u; /* 027C2588 */ rbrew_write_f64(cpu->mem, _t23, cpu->f[1]); L_027C258C: ; // 0x27c258c /* 027C258C */ cpu->r[31] = cpu->r[3]; /* 027C258C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C2590 */ cpu->r[30] = cpu->r[4]; /* 027C2594 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2594 */ _t25 = _t24 & 0x00000001u; /* 027C2594 */ if (_t25) goto L_027C2598; else goto L_027C25A8; L_027C2598: ; // 0x27c2598 /* 027C2598 */ cpu->r[3] = 0x0000001Cu; /* 027C259C */ Gambit_fn_02801A78(cpu); /* 027C25A0 */ cpu->r[31] = cpu->r[3]; /* 027C25A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C25A4 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25A4 */ _t27 = _t26 & 0x00000001u; /* 027C25A4 */ if (_t27) goto L_027C266C; else goto L_027C25A8; L_027C25A8: ; // 0x27c25a8 /* 027C25A8 */ cpu->r[29] = cpu->r[31]; /* 027C25A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C25AC */ _t28 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25AC */ _t29 = _t28 & 0x00000001u; /* 027C25AC */ if (_t29) goto L_027C25B0; else goto L_027C25C0; L_027C25B0: ; // 0x27c25b0 /* 027C25B0 */ cpu->r[3] = 0x0000001Cu; /* 027C25B4 */ Gambit_fn_02801A78(cpu); /* 027C25B8 */ cpu->r[29] = cpu->r[3]; /* 027C25B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C25BC */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25BC */ _t31 = _t30 & 0x00000001u; /* 027C25BC */ if (_t31) goto L_027C2630; else goto L_027C25C0; L_027C25C0: ; // 0x27c25c0 /* 027C25C0 */ cpu->r[3] = cpu->r[29]; /* 027C25C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C25C4 */ cpu->r[28] = 0x10110000u; /* 027C25C8 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25C8 */ _t33 = _t32 & 0x00000001u; /* 027C25C8 */ if (_t33) goto L_027C25CC; else goto L_027C25F8; L_027C25CC: ; // 0x27c25cc /* 027C25CC */ cpu->r[3] = 0x0000000Cu; /* 027C25D0 */ Gambit_fn_02801A78(cpu); /* 027C25D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C25D8 */ _t34 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C25D8 */ _t35 = _t34 & 0x00000001u; /* 027C25D8 */ if (_t35) goto L_027C25DC; else goto L_027C25F8; L_027C25DC: ; // 0x27c25dc /* 027C25DC */ cpu->r[7] = 0x10110000u; /* 027C25E0 */ _t36 = cpu->r[28] + 0x00007399u; /* 027C25E0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t36); /* 027C25E4 */ cpu->r[7] = cpu->r[7] + 0xFFFFBDCCu; /* 027C25E8 */ _t37 = cpu->r[29] + 0x00000000u; /* 027C25E8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t37); /* 027C25EC */ _t38 = cpu->r[29] + 0x00000004u; /* 027C25EC */ rbrew_write32(cpu->mem, _t38, cpu->r[7]); /* 027C25F0 */ _t39 = cpu->r[8] + 0x00000000u; /* 027C25F0 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]); /* 027C25F4 */ goto L_027C2630; L_027C25F8: ; // 0x27c25f8 /* 027C25F8 */ cpu->r[5] = 0x10110000u; /* 027C25FC */ cpu->r[0] = cpu->r[29] + 0x0000000Cu; /* 027C2600 */ cpu->r[5] = cpu->r[5] + 0xFFFFBCF4u; /* 027C2604 */ _t40 = cpu->r[3] + 0x00000000u; /* 027C2604 */ rbrew_write32(cpu->mem, _t40, cpu->r[0]); /* 027C2608 */ cpu->r[6] = 0x00000010u; /* 027C260C */ _t41 = cpu->r[3] + 0x00000004u; /* 027C260C */ rbrew_write32(cpu->mem, _t41, cpu->r[5]); /* 027C2610 */ _t42 = cpu->r[3] + 0x00000008u; /* 027C2610 */ rbrew_write32(cpu->mem, _t42, cpu->r[6]); /* 027C2614 */ _t43 = cpu->r[28] + 0x00007399u; /* 027C2614 */ cpu->r[0] = rbrew_read8(cpu->mem, _t43); /* 027C2618 */ cpu->r[7] = 0x10110000u; /* 027C261C */ _t44 = cpu->r[29] + 0x00000000u; /* 027C261C */ cpu->r[8] = rbrew_read32(cpu->mem, _t44); /* 027C2620 */ cpu->r[7] = cpu->r[7] + 0xFFFFBDCCu; /* 027C2624 */ _t45 = cpu->r[29] + 0x0000001Bu; /* 027C2624 */ rbrew_write8(cpu->mem, _t45, (uint8_t)cpu->r[0]); /* 027C2628 */ _t46 = cpu->r[29] + 0x00000004u; /* 027C2628 */ rbrew_write32(cpu->mem, _t46, cpu->r[7]); /* 027C262C */ _t47 = cpu->r[8] + 0x00000000u; /* 027C262C */ rbrew_write8(cpu->mem, _t47, (uint8_t)cpu->r[0]); L_027C2630: ; // 0x27c2630 /* 027C2630 */ cpu->r[9] = 0x10110000u; /* 027C2634 */ cpu->r[12] = 0x00000002u; /* 027C2638 */ cpu->r[9] = cpu->r[9] + 0xFFFFBDFCu; /* 027C263C */ cpu->r[0] = cpu->r[1] + 0x00000090u; /* 027C2640 */ _t48 = cpu->r[31] + 0x00000004u; /* 027C2640 */ rbrew_write32(cpu->mem, _t48, cpu->r[9]); /* 027C2644 */ cpu->r[11] = cpu->r[1] + 0x00000018u; /* 027C2648 */ _t49 = cpu->r[1] + 0x0000000Cu; /* 027C2648 */ rbrew_write32(cpu->mem, _t49, cpu->r[0]); /* 027C264C */ cpu->r[0] = 0x00000000u; /* 027C2650 */ _t50 = cpu->r[1] + 0x00000010u; /* 027C2650 */ rbrew_write32(cpu->mem, _t50, cpu->r[11]); /* 027C2654 */ cpu->r[3] = cpu->r[31]; /* 027C2658 */ cpu->r[5] = cpu->r[1] + 0x00000008u; /* 027C265C */ _t51 = cpu->r[1] + 0x00000009u; /* 027C265C */ rbrew_write8(cpu->mem, _t51, (uint8_t)cpu->r[0]); /* 027C2660 */ cpu->r[4] = cpu->r[30]; /* 027C2664 */ _t52 = cpu->r[1] + 0x00000008u; /* 027C2664 */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[12]); /* 027C2668 */ Gambit_fn_0282A5DC(cpu); L_027C266C: ; // 0x27c266c /* 027C266C */ _t53 = cpu->r[1] + 0x00000078u; /* 027C266C */ cpu->r[28] = rbrew_read32(cpu->mem, _t53); /* 027C2670 */ _t54 = cpu->r[1] + 0x0000007Cu; /* 027C2670 */ cpu->r[29] = rbrew_read32(cpu->mem, _t54); /* 027C2674 */ _t55 = cpu->r[1] + 0x0000008Cu; /* 027C2674 */ cpu->r[0] = rbrew_read32(cpu->mem, _t55); /* 027C2678 */ cpu->r[3] = cpu->r[31]; /* 027C267C */ _t56 = cpu->r[1] + 0x00000080u; /* 027C267C */ cpu->r[30] = rbrew_read32(cpu->mem, _t56); /* 027C2680 */ cpu->lr = cpu->r[0]; /* 027C2684 */ _t57 = cpu->r[1] + 0x00000084u; /* 027C2684 */ cpu->r[31] = rbrew_read32(cpu->mem, _t57); /* 027C2688 */ cpu->r[1] = cpu->r[1] + 0x00000088u; /* 027C268C */ return; } // fn_027C2690 @ 0x27c2690 void Gambit_fn_027C2690(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_027C2690: ; // 0x27c2690 /* 027C2690 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2694 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2694 */ _t1 = _t0 & 0x00000001u; /* 027C2694 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C2694 */ goto L_027C2698; L_027C2698: ; // 0x27c2698 /* 027C2698 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C2698 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C269C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C269C */ _t3 = _t2 & 0x00000001u; /* 027C269C */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C269C */ goto L_027C26A0; L_027C26A0: ; // 0x27c26a0 /* 027C26A0 */ 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_027C26A4 @ 0x27c26a4 void Gambit_fn_027C26A4(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_027C26A4: ; // 0x27c26a4 /* 027C26A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C26A8 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C26A8 */ _t1 = _t0 & 0x00000001u; /* 027C26A8 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C26A8 */ goto L_027C26AC; L_027C26AC: ; // 0x27c26ac /* 027C26AC */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C26AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C26B0 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C26B0 */ _t3 = _t2 & 0x00000001u; /* 027C26B0 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C26B0 */ goto L_027C26B4; L_027C26B4: ; // 0x27c26b4 /* 027C26B4 */ 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_027C26B8 @ 0x27c26b8 void Gambit_fn_027C26B8(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_027C26B8: ; // 0x27c26b8 /* 027C26B8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C26BC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C26BC */ _t1 = _t0 & 0x00000001u; /* 027C26BC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C26BC */ goto L_027C26C0; L_027C26C0: ; // 0x27c26c0 /* 027C26C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C26C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C26C4 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C26C4 */ _t3 = _t2 & 0x00000001u; /* 027C26C4 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C26C4 */ goto L_027C26C8; L_027C26C8: ; // 0x27c26c8 /* 027C26C8 */ 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_027C26CC @ 0x27c26cc void Gambit_fn_027C26CC(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10; L_027C26CC: ; // 0x27c26cc /* 027C26CC */ cpu->r[0] = cpu->lr; /* 027C26D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C26D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C26D0 */ cpu->r[1] = _t0; /* 027C26D4 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C26D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C26D8 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C26D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C26DC */ cpu->r[30] = cpu->r[3]; /* 027C26DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C26E0 */ cpu->r[31] = cpu->r[4]; /* 027C26E4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C26E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C26E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C26E8 */ _t5 = _t4 & 0x00000001u; /* 027C26E8 */ if (_t5) goto L_027C2708; else goto L_027C26EC; L_027C26EC: ; // 0x27c26ec /* 027C26EC */ cpu->r[3] = cpu->r[30]; /* 027C26F0 */ cpu->r[4] = 0x00000000u; /* 027C26F4 */ Gambit_fn_028582BC(cpu); /* 027C26F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C26F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C26FC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C26FC */ _t7 = _t6 & 0x00000001u; /* 027C26FC */ if (_t7) goto L_027C2708; else goto L_027C2700; L_027C2700: ; // 0x27c2700 /* 027C2700 */ cpu->r[3] = cpu->r[30]; /* 027C2704 */ Gambit_fn_02801BB0(cpu); L_027C2708: ; // 0x27c2708 /* 027C2708 */ _t8 = cpu->r[1] + 0x00000014u; /* 027C2708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027C270C */ _t9 = cpu->r[1] + 0x00000008u; /* 027C270C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9); /* 027C2710 */ cpu->lr = cpu->r[0]; /* 027C2714 */ _t10 = cpu->r[1] + 0x0000000Cu; /* 027C2714 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10); /* 027C2718 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C271C */ return; } // fn_027C26D0 @ 0x27c26d0 void Gambit_fn_027C26D0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10; L_027C26D0: ; // 0x27c26d0 /* 027C26D0 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C26D0 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C26D0 */ cpu->r[1] = _t0; /* 027C26D4 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C26D4 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C26D8 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C26D8 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C26DC */ cpu->r[30] = cpu->r[3]; /* 027C26DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C26E0 */ cpu->r[31] = cpu->r[4]; /* 027C26E4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C26E4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C26E8 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C26E8 */ _t5 = _t4 & 0x00000001u; /* 027C26E8 */ if (_t5) goto L_027C2708; else goto L_027C26EC; L_027C26EC: ; // 0x27c26ec /* 027C26EC */ cpu->r[3] = cpu->r[30]; /* 027C26F0 */ cpu->r[4] = 0x00000000u; /* 027C26F4 */ Gambit_fn_028582BC(cpu); /* 027C26F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C26F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C26FC */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C26FC */ _t7 = _t6 & 0x00000001u; /* 027C26FC */ if (_t7) goto L_027C2708; else goto L_027C2700; L_027C2700: ; // 0x27c2700 /* 027C2700 */ cpu->r[3] = cpu->r[30]; /* 027C2704 */ Gambit_fn_02801BB0(cpu); L_027C2708: ; // 0x27c2708 /* 027C2708 */ _t8 = cpu->r[1] + 0x00000014u; /* 027C2708 */ cpu->r[0] = rbrew_read32(cpu->mem, _t8); /* 027C270C */ _t9 = cpu->r[1] + 0x00000008u; /* 027C270C */ cpu->r[30] = rbrew_read32(cpu->mem, _t9); /* 027C2710 */ cpu->lr = cpu->r[0]; /* 027C2714 */ _t10 = cpu->r[1] + 0x0000000Cu; /* 027C2714 */ cpu->r[31] = rbrew_read32(cpu->mem, _t10); /* 027C2718 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C271C */ return; } // fn_027C2720 @ 0x27c2720 void Gambit_fn_027C2720(CPUState* cpu) { L_027C2720: ; // 0x27c2720 /* 027C2720 */ cpu->r[3] = 0x00000000u; /* 027C2724 */ return; } // fn_027C2728 @ 0x27c2728 void Gambit_fn_027C2728(CPUState* cpu) { L_027C2728: ; // 0x27c2728 /* 027C2728 */ cpu->r[3] = 0x00000000u; /* 027C272C */ return; } // fn_027C2730 @ 0x27c2730 void Gambit_fn_027C2730(CPUState* cpu) { L_027C2730: ; // 0x27c2730 /* 027C2730 */ cpu->r[3] = 0x00000000u; /* 027C2734 */ return; } // fn_027C2738 @ 0x27c2738 void Gambit_fn_027C2738(CPUState* cpu) { L_027C2738: ; // 0x27c2738 /* 027C2738 */ cpu->r[3] = 0x00000001u; /* 027C273C */ return; } // fn_027C2740 @ 0x27c2740 void Gambit_fn_027C2740(CPUState* cpu) { uint32_t _t0; L_027C2740: ; // 0x27c2740 /* 027C2740 */ cpu->r[0] = 0x00000000u; /* 027C2744 */ _t0 = cpu->r[3] + 0x0000000Cu; /* 027C2744 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]); /* 027C2748 */ return; } // fn_027C274C @ 0x27c274c void Gambit_fn_027C274C(CPUState* cpu) { L_027C274C: ; // 0x27c274c /* 027C274C */ cpu->r[3] = cpu->r[3] + 0x00000008u; /* 027C2750 */ return; } // fn_027C2754 @ 0x27c2754 void Gambit_fn_027C2754(CPUState* cpu) { L_027C2754: ; // 0x27c2754 /* 027C2754 */ cpu->r[3] = cpu->r[3] + 0x00000008u; /* 027C2758 */ return; } // fn_027C275C @ 0x27c275c void Gambit_fn_027C275C(CPUState* cpu) { L_027C275C: ; // 0x27c275c /* 027C275C */ cpu->r[3] = cpu->r[3] + 0x00000008u; /* 027C2760 */ return; } // fn_027C2764 @ 0x27c2764 void Gambit_fn_027C2764(CPUState* cpu) { L_027C2764: ; // 0x27c2764 /* 027C2764 */ cpu->r[3] = cpu->r[3] + 0x00000008u; /* 027C2768 */ return; } // fn_027C276C @ 0x27c276c void Gambit_fn_027C276C(CPUState* cpu) { L_027C276C: ; // 0x27c276c /* 027C276C */ cpu->r[3] = cpu->r[3] + 0x00000008u; /* 027C2770 */ return; } // fn_027C2774 @ 0x27c2774 void Gambit_fn_027C2774(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; L_027C2774: ; // 0x27c2774 /* 027C2774 */ _t0 = cpu->r[1] + 0xFFFFFF58u; /* 027C2774 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2774 */ cpu->r[1] = _t0; /* 027C2778 */ cpu->r[0] = cpu->lr; /* 027C277C */ /* nop */ /* 027C2780 */ cpu->r[31] = cpu->r[3]; /* 027C2780 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C2784 */ cpu->r[26] = cpu->r[4]; /* 027C2788 */ cpu->r[27] = cpu->r[5]; /* 027C278C */ cpu->r[28] = cpu->r[6]; /* 027C2790 */ cpu->r[30] = cpu->r[8]; /* 027C2794 */ _t1 = cpu->r[1] + 0x000000ACu; /* 027C2794 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027C2798 */ cpu->r[29] = cpu->r[7]; /* 027C279C */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C279C */ _t3 = _t2 & 0x00000001u; /* 027C279C */ if (_t3) goto L_027C27A0; else goto L_027C27B0; L_027C27A0: ; // 0x27c27a0 /* 027C27A0 */ cpu->r[3] = 0x00000104u; /* 027C27A4 */ Gambit_fn_02801A78(cpu); /* 027C27A8 */ cpu->r[31] = cpu->r[3]; /* 027C27A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C27AC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C27AC */ _t5 = _t4 & 0x00000001u; /* 027C27AC */ if (_t5) goto L_027C2920; else goto L_027C27B0; L_027C27B0: ; // 0x27c27b0 /* 027C27B0 */ cpu->r[24] = cpu->r[31] + 0x00000014u; /* 027C27B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C27B4 */ cpu->r[25] = 0x00000000u; /* 027C27B8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C27B8 */ _t7 = _t6 & 0x00000001u; /* 027C27B8 */ if (_t7) goto L_027C27BC; else goto L_027C27CC; L_027C27BC: ; // 0x27c27bc /* 027C27BC */ cpu->r[3] = 0x000000F0u; /* 027C27C0 */ Gambit_fn_02801A78(cpu); /* 027C27C4 */ cpu->r[24] = cpu->r[3]; /* 027C27C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C27C8 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C27C8 */ _t9 = _t8 & 0x00000001u; /* 027C27C8 */ if (_t9) goto L_027C2850; else goto L_027C27CC; L_027C27CC: ; // 0x27c27cc /* 027C27CC */ cpu->r[9] = 0x10110000u; /* 027C27D0 */ _t10 = cpu->r[24] + 0x00000008u; /* 027C27D0 */ rbrew_write32(cpu->mem, _t10, cpu->r[25]); /* 027C27D4 */ cpu->r[10] = 0x0000001Au; /* 027C27D8 */ _t11 = cpu->r[9] + 0xFFFFC014u; /* 027C27D8 */ cpu->f[0] = rbrew_read_f32(cpu->mem, _t11); /* 027C27DC */ cpu->r[0] = 0x40000000u; /* 027C27E0 */ _t12 = cpu->r[24] + 0x00000030u; /* 027C27E0 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]); /* 027C27E4 */ cpu->r[0] = cpu->r[0] | 0x00000100u; /* 027C27E8 */ _t13 = cpu->r[24] + 0x00000020u; /* 027C27E8 */ rbrew_write_f32(cpu->mem, _t13, cpu->f[0]); /* 027C27EC */ cpu->r[11] = 0xFFFFFFFFu; /* 027C27F0 */ _t14 = cpu->r[24] + 0x00000014u; /* 027C27F0 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027C27F4 */ cpu->r[12] = 0x00000001u; /* 027C27F8 */ _t15 = cpu->r[24] + 0x00000000u; /* 027C27F8 */ rbrew_write32(cpu->mem, _t15, cpu->r[11]); /* 027C27FC */ cpu->r[7] = 0x00000080u; /* 027C2800 */ _t16 = cpu->r[24] + 0x0000000Cu; /* 027C2800 */ rbrew_write32(cpu->mem, _t16, cpu->r[12]); /* 027C2804 */ cpu->r[3] = cpu->r[24] + 0x00000040u; /* 027C2808 */ _t17 = cpu->r[24] + 0x00000018u; /* 027C2808 */ rbrew_write16(cpu->mem, _t17, (uint16_t)cpu->r[7]); /* 027C280C */ _t18 = cpu->r[24] + 0x0000003Cu; /* 027C280C */ rbrew_write8(cpu->mem, _t18, (uint8_t)cpu->r[25]); /* 027C2810 */ cpu->r[4] = 0x00000000u; /* 027C2814 */ _t19 = cpu->r[24] + 0x00000028u; /* 027C2814 */ rbrew_write_f32(cpu->mem, _t19, cpu->f[0]); /* 027C2818 */ cpu->r[5] = 0x00000060u; /* 027C281C */ _t20 = cpu->r[24] + 0x0000001Cu; /* 027C281C */ rbrew_write32(cpu->mem, _t20, cpu->r[12]); /* 027C2820 */ _t21 = cpu->r[24] + 0x0000001Au; /* 027C2820 */ rbrew_write16(cpu->mem, _t21, (uint16_t)cpu->r[7]); /* 027C2824 */ _t22 = cpu->r[24] + 0x00000034u; /* 027C2824 */ rbrew_write32(cpu->mem, _t22, cpu->r[25]); /* 027C2828 */ _t23 = cpu->r[24] + 0x00000010u; /* 027C2828 */ rbrew_write32(cpu->mem, _t23, cpu->r[12]); /* 027C282C */ _t24 = cpu->r[24] + 0x00000024u; /* 027C282C */ rbrew_write_f32(cpu->mem, _t24, cpu->f[0]); /* 027C2830 */ _t25 = cpu->r[24] + 0x00000004u; /* 027C2830 */ rbrew_write32(cpu->mem, _t25, cpu->r[12]); /* 027C2834 */ _t26 = cpu->r[24] + 0x00000038u; /* 027C2834 */ rbrew_write32(cpu->mem, _t26, cpu->r[25]); /* 027C2838 */ _t27 = cpu->r[24] + 0x0000002Cu; /* 027C2838 */ rbrew_write_f32(cpu->mem, _t27, cpu->f[0]); /* 027C283C */ rbrew_dispatch(cpu, 0x02d0a6f0u); /* 027C2840 */ cpu->r[3] = cpu->r[24] + 0x000000A0u; /* 027C2844 */ cpu->r[4] = 0x00000000u; /* 027C2848 */ cpu->r[5] = 0x00000050u; /* 027C284C */ rbrew_dispatch(cpu, 0x02d0a6f0u); L_027C2850: ; // 0x27c2850 /* 027C2850 */ cpu->r[0] = 0x0000000Fu; /* 027C2854 */ cpu->r[11] = cpu->r[26] + 0xFFFFFFFCu; /* 027C2858 */ cpu->ctr = cpu->r[0]; /* 027C285C */ cpu->r[12] = cpu->r[31] + 0x00000010u; L_027C2860: ; // 0x27c2860 /* 027C2860 */ _t28 = cpu->r[11] + 0x00000004u; /* 027C2860 */ cpu->r[5] = rbrew_read32(cpu->mem, _t28); /* 027C2864 */ _t29 = cpu->r[12] + 0x00000004u; /* 027C2864 */ rbrew_write32(cpu->mem, _t29, cpu->r[5]); /* 027C2868 */ _t30 = cpu->r[11] + 0x00000008u; /* 027C2868 */ cpu->r[6] = rbrew_read32(cpu->mem, _t30); /* 027C286C */ _t31 = cpu->r[12] + 0x00000008u; /* 027C286C */ rbrew_write32(cpu->mem, _t31, cpu->r[6]); /* 027C2870 */ _t32 = cpu->r[11] + 0x0000000Cu; /* 027C2870 */ cpu->r[7] = rbrew_read32(cpu->mem, _t32); /* 027C2874 */ _t33 = cpu->r[12] + 0x0000000Cu; /* 027C2874 */ rbrew_write32(cpu->mem, _t33, cpu->r[7]); /* 027C2878 */ _t34 = cpu->r[11] + 0x00000010u; /* 027C2878 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027C2878 */ cpu->r[11] = _t34; /* 027C287C */ _t35 = cpu->r[12] + 0x00000010u; /* 027C287C */ rbrew_write32(cpu->mem, _t35, cpu->r[0]); /* 027C287C */ cpu->r[12] = _t35; /* 027C2880 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C2880 */ _t36 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C2880 */ _t37 = _t36 >> (0x00000002u & 31u); /* 027C2880 */ _t38 = _t37 & 0x00000001u; /* 027C2880 */ if (_t38) goto L_027C2860; else goto L_027C2884; L_027C2884: ; // 0x27c2884 /* 027C2884 */ cpu->r[4] = cpu->r[26]; /* 027C2888 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C288C */ Gambit_fn_027C2B08(cpu); /* 027C2890 */ cpu->r[0] = cpu->r[29] ^ 0x00000001u; /* 027C2894 */ cpu->r[3] = 0x0000036Cu; /* 027C2898 */ _t39 = cpu->r[1] + 0x00000027u; /* 027C2898 */ rbrew_write8(cpu->mem, _t39, (uint8_t)cpu->r[0]); /* 027C289C */ cpu->r[5] = 0x00000004u; /* 027C28A0 */ cpu->r[4] = cpu->r[27]; /* 027C28A4 */ _t40 = cpu->r[31] + 0x00000000u; /* 027C28A4 */ rbrew_write32(cpu->mem, _t40, cpu->r[25]); /* 027C28A8 */ Gambit_fn_02801AC8(cpu); /* 027C28AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C28B0 */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C28B0 */ _t42 = _t41 & 0x00000001u; /* 027C28B0 */ if (_t42) goto L_027C28B8; else goto L_027C28B4; L_027C28B4: ; // 0x27c28b4 /* 027C28B4 */ Gambit_fn_02800E08(cpu); L_027C28B8: ; // 0x27c28b8 /* 027C28B8 */ _t43 = cpu->r[31] + 0x00000004u; /* 027C28B8 */ rbrew_write32(cpu->mem, _t43, cpu->r[3]); /* 027C28BC */ _t44 = cpu->r[26] + 0x00000004u; /* 027C28BC */ cpu->r[11] = rbrew_read32(cpu->mem, _t44); /* 027C28C0 */ cpu->r[0] = cpu->r[11] | 0x00000002u; /* 027C28C4 */ cpu->r[4] = cpu->r[28]; /* 027C28C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u); /* 027C28CC */ cpu->r[5] = cpu->r[30]; /* 027C28D0 */ _t45 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C28D0 */ _t46 = _t45 & 0x00000001u; /* 027C28D0 */ if (_t46) goto L_027C28D4; else goto L_027C28EC; L_027C28D4: ; // 0x27c28d4 /* 027C28D4 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C28D8 */ Gambit_fn_0296FF4C(cpu); /* 027C28DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C28E0 */ _t47 = cpu->r[31] + 0x00000000u; /* 027C28E0 */ rbrew_write32(cpu->mem, _t47, cpu->r[3]); /* 027C28E4 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C28E4 */ _t49 = _t48 & 0x00000001u; /* 027C28E4 */ if (_t49) goto L_027C2918; else goto L_027C28E8; L_027C28E8: ; // 0x27c28e8 /* 027C28E8 */ goto L_027C2900; L_027C28EC: ; // 0x27c28ec /* 027C28EC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C28F0 */ Gambit_fn_0296FE04(cpu); /* 027C28F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], 0x00000000u); /* 027C28F8 */ _t50 = cpu->r[31] + 0x00000000u; /* 027C28F8 */ rbrew_write32(cpu->mem, _t50, cpu->r[3]); /* 027C28FC */ _t51 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C28FC */ _t52 = _t51 & 0x00000001u; /* 027C28FC */ if (_t52) goto L_027C2918; else goto L_027C2900; L_027C2900: ; // 0x27c2900 /* 027C2900 */ _t53 = cpu->r[3] + 0x00000020u; /* 027C2900 */ cpu->r[12] = rbrew_read32(cpu->mem, _t53); /* 027C2904 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C2908 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2908 */ _t55 = _t54 & 0x00000001u; /* 027C2908 */ if (_t55) goto L_027C2918; else goto L_027C290C; L_027C290C: ; // 0x27c290c /* 027C290C */ _t56 = cpu->r[3] + 0x00000020u; /* 027C290C */ cpu->r[4] = rbrew_read32(cpu->mem, _t56); /* 027C2910 */ _t57 = cpu->r[31] + 0x00000004u; /* 027C2910 */ cpu->r[3] = rbrew_read32(cpu->mem, _t57); /* 027C2914 */ Gambit_fn_02800EE4(cpu); L_027C2918: ; // 0x27c2918 /* 027C2918 */ _t58 = cpu->r[31] + 0x0000000Cu; /* 027C2918 */ rbrew_write8(cpu->mem, _t58, (uint8_t)cpu->r[25]); /* 027C291C */ _t59 = cpu->r[31] + 0x00000008u; /* 027C291C */ rbrew_write32(cpu->mem, _t59, cpu->r[29]); L_027C2920: ; // 0x27c2920 /* 027C2920 */ cpu->r[3] = cpu->r[31]; /* 027C2924 */ /* nop */ /* 027C2928 */ _t60 = cpu->r[1] + 0x000000ACu; /* 027C2928 */ cpu->r[0] = rbrew_read32(cpu->mem, _t60); /* 027C292C */ cpu->lr = cpu->r[0]; /* 027C2930 */ cpu->r[1] = cpu->r[1] + 0x000000A8u; /* 027C2934 */ return; } // fn_027C2938 @ 0x27c2938 void Gambit_fn_027C2938(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39; L_027C2938: ; // 0x27c2938 /* 027C2938 */ cpu->r[0] = cpu->lr; /* 027C293C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C293C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C293C */ cpu->r[1] = _t0; /* 027C2940 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C2940 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C2944 */ cpu->r[31] = cpu->r[3]; /* 027C2948 */ _t2 = cpu->r[1] + 0x00000014u; /* 027C2948 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027C294C */ _t3 = cpu->r[31] + 0x00000008u; /* 027C294C */ cpu->r[9] = rbrew_read32(cpu->mem, _t3); /* 027C2950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027C2954 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2954 */ _t5 = _t4 & 0x00000001u; /* 027C2954 */ if (_t5) goto L_027C2958; else goto L_027C2998; L_027C2958: ; // 0x27c2958 /* 027C2958 */ _t6 = cpu->r[31] + 0x00000000u; /* 027C2958 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6); /* 027C295C */ _t7 = cpu->r[10] + 0x00000004u; /* 027C295C */ cpu->r[11] = rbrew_read8(cpu->mem, _t7); /* 027C2960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027C2964 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2964 */ _t9 = _t8 & 0x00000001u; /* 027C2964 */ if (_t9) goto L_027C2998; else goto L_027C2968; L_027C2968: ; // 0x27c2968 /* 027C2968 */ _t10 = cpu->r[10] + 0x00000020u; /* 027C2968 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027C296C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C2970 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2970 */ _t12 = _t11 & 0x00000001u; /* 027C2970 */ if (_t12) goto L_027C2980; else goto L_027C2974; L_027C2974: ; // 0x27c2974 /* 027C2974 */ _t13 = cpu->r[31] + 0x00000004u; /* 027C2974 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13); /* 027C2978 */ _t14 = cpu->r[10] + 0x00000020u; /* 027C2978 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14); /* 027C297C */ Gambit_fn_02800EE4(cpu); L_027C2980: ; // 0x27c2980 /* 027C2980 */ _t15 = cpu->r[31] + 0x0000000Cu; /* 027C2980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15); /* 027C2984 */ cpu->r[9] = 0x00000001u; /* 027C2988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C298C */ _t16 = cpu->r[31] + 0x00000008u; /* 027C298C */ rbrew_write32(cpu->mem, _t16, cpu->r[9]); /* 027C2990 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2990 */ _t18 = _t17 & 0x00000001u; /* 027C2990 */ if (_t18) goto L_027C29D4; else goto L_027C2994; L_027C2994: ; // 0x27c2994 /* 027C2994 */ goto L_027C29AC; L_027C2998: ; // 0x27c2998 /* 027C2998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u); /* 027C299C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C299C */ _t20 = _t19 & 0x00000001u; /* 027C299C */ if (_t20) goto L_027C29A0; else goto L_027C29D4; L_027C29A0: ; // 0x27c29a0 /* 027C29A0 */ _t21 = cpu->r[31] + 0x0000000Cu; /* 027C29A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t21); /* 027C29A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C29A8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C29A8 */ _t23 = _t22 & 0x00000001u; /* 027C29A8 */ if (_t23) goto L_027C29D4; else goto L_027C29AC; L_027C29AC: ; // 0x27c29ac /* 027C29AC */ cpu->r[10] = 0x00000002u; /* 027C29B0 */ _t24 = cpu->r[31] + 0x00000008u; /* 027C29B0 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]); /* 027C29B4 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu; /* 027C29B8 */ _t25 = cpu->r[31] + 0x00000010u; /* 027C29B8 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]); /* 027C29BC */ _t26 = cpu->r[31] + 0x00000010u; /* 027C29BC */ rbrew_write32(cpu->mem, _t26, cpu->r[0]); /* 027C29C0 */ _t27 = cpu->r[1] + 0x00000014u; /* 027C29C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27); /* 027C29C4 */ cpu->lr = cpu->r[0]; /* 027C29C8 */ _t28 = cpu->r[1] + 0x0000000Cu; /* 027C29C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28); /* 027C29CC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C29D0 */ return; L_027C29D4: ; // 0x27c29d4 /* 027C29D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u); /* 027C29D8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C29D8 */ _t30 = _t29 & 0x00000001u; /* 027C29D8 */ if (_t30) goto L_027C29DC; else goto L_027C2A0C; L_027C29DC: ; // 0x27c29dc /* 027C29DC */ _t31 = cpu->r[31] + 0x00000010u; /* 027C29DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t31); /* 027C29E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027C29E4 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C29E4 */ _t33 = _t32 & 0x00000001u; /* 027C29E4 */ if (_t33) goto L_027C29E8; else goto L_027C2A04; L_027C29E8: ; // 0x27c29e8 /* 027C29E8 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu; /* 027C29EC */ _t34 = cpu->r[31] + 0x00000010u; /* 027C29EC */ rbrew_write32(cpu->mem, _t34, cpu->r[0]); /* 027C29F0 */ _t35 = cpu->r[1] + 0x00000014u; /* 027C29F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35); /* 027C29F4 */ _t36 = cpu->r[1] + 0x0000000Cu; /* 027C29F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36); /* 027C29F8 */ cpu->lr = cpu->r[0]; /* 027C29FC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C2A00 */ return; L_027C2A04: ; // 0x27c2a04 /* 027C2A04 */ cpu->r[0] = 0x00000003u; /* 027C2A08 */ _t37 = cpu->r[31] + 0x00000008u; /* 027C2A08 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]); L_027C2A0C: ; // 0x27c2a0c /* 027C2A0C */ _t38 = cpu->r[1] + 0x00000014u; /* 027C2A0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027C2A10 */ _t39 = cpu->r[1] + 0x0000000Cu; /* 027C2A10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39); /* 027C2A14 */ cpu->lr = cpu->r[0]; /* 027C2A18 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C2A1C */ return; } // fn_027C293C @ 0x27c293c void Gambit_fn_027C293C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39; L_027C293C: ; // 0x27c293c /* 027C293C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C293C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C293C */ cpu->r[1] = _t0; /* 027C2940 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C2940 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C2944 */ cpu->r[31] = cpu->r[3]; /* 027C2948 */ _t2 = cpu->r[1] + 0x00000014u; /* 027C2948 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027C294C */ _t3 = cpu->r[31] + 0x00000008u; /* 027C294C */ cpu->r[9] = rbrew_read32(cpu->mem, _t3); /* 027C2950 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027C2954 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2954 */ _t5 = _t4 & 0x00000001u; /* 027C2954 */ if (_t5) goto L_027C2958; else goto L_027C2998; L_027C2958: ; // 0x27c2958 /* 027C2958 */ _t6 = cpu->r[31] + 0x00000000u; /* 027C2958 */ cpu->r[10] = rbrew_read32(cpu->mem, _t6); /* 027C295C */ _t7 = cpu->r[10] + 0x00000004u; /* 027C295C */ cpu->r[11] = rbrew_read8(cpu->mem, _t7); /* 027C2960 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027C2964 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2964 */ _t9 = _t8 & 0x00000001u; /* 027C2964 */ if (_t9) goto L_027C2998; else goto L_027C2968; L_027C2968: ; // 0x27c2968 /* 027C2968 */ _t10 = cpu->r[10] + 0x00000020u; /* 027C2968 */ cpu->r[12] = rbrew_read32(cpu->mem, _t10); /* 027C296C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C2970 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2970 */ _t12 = _t11 & 0x00000001u; /* 027C2970 */ if (_t12) goto L_027C2980; else goto L_027C2974; L_027C2974: ; // 0x27c2974 /* 027C2974 */ _t13 = cpu->r[31] + 0x00000004u; /* 027C2974 */ cpu->r[3] = rbrew_read32(cpu->mem, _t13); /* 027C2978 */ _t14 = cpu->r[10] + 0x00000020u; /* 027C2978 */ cpu->r[4] = rbrew_read32(cpu->mem, _t14); /* 027C297C */ Gambit_fn_02800EE4(cpu); L_027C2980: ; // 0x27c2980 /* 027C2980 */ _t15 = cpu->r[31] + 0x0000000Cu; /* 027C2980 */ cpu->r[0] = rbrew_read8(cpu->mem, _t15); /* 027C2984 */ cpu->r[9] = 0x00000001u; /* 027C2988 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C298C */ _t16 = cpu->r[31] + 0x00000008u; /* 027C298C */ rbrew_write32(cpu->mem, _t16, cpu->r[9]); /* 027C2990 */ _t17 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2990 */ _t18 = _t17 & 0x00000001u; /* 027C2990 */ if (_t18) goto L_027C29D4; else goto L_027C2994; L_027C2994: ; // 0x27c2994 /* 027C2994 */ goto L_027C29AC; L_027C2998: ; // 0x27c2998 /* 027C2998 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000001u); /* 027C299C */ _t19 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C299C */ _t20 = _t19 & 0x00000001u; /* 027C299C */ if (_t20) goto L_027C29A0; else goto L_027C29D4; L_027C29A0: ; // 0x27c29a0 /* 027C29A0 */ _t21 = cpu->r[31] + 0x0000000Cu; /* 027C29A0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t21); /* 027C29A4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C29A8 */ _t22 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C29A8 */ _t23 = _t22 & 0x00000001u; /* 027C29A8 */ if (_t23) goto L_027C29D4; else goto L_027C29AC; L_027C29AC: ; // 0x27c29ac /* 027C29AC */ cpu->r[10] = 0x00000002u; /* 027C29B0 */ _t24 = cpu->r[31] + 0x00000008u; /* 027C29B0 */ rbrew_write32(cpu->mem, _t24, cpu->r[10]); /* 027C29B4 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu; /* 027C29B8 */ _t25 = cpu->r[31] + 0x00000010u; /* 027C29B8 */ rbrew_write32(cpu->mem, _t25, cpu->r[10]); /* 027C29BC */ _t26 = cpu->r[31] + 0x00000010u; /* 027C29BC */ rbrew_write32(cpu->mem, _t26, cpu->r[0]); /* 027C29C0 */ _t27 = cpu->r[1] + 0x00000014u; /* 027C29C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t27); /* 027C29C4 */ cpu->lr = cpu->r[0]; /* 027C29C8 */ _t28 = cpu->r[1] + 0x0000000Cu; /* 027C29C8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t28); /* 027C29CC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C29D0 */ return; L_027C29D4: ; // 0x27c29d4 /* 027C29D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000002u); /* 027C29D8 */ _t29 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C29D8 */ _t30 = _t29 & 0x00000001u; /* 027C29D8 */ if (_t30) goto L_027C29DC; else goto L_027C2A0C; L_027C29DC: ; // 0x27c29dc /* 027C29DC */ _t31 = cpu->r[31] + 0x00000010u; /* 027C29DC */ cpu->r[10] = rbrew_read32(cpu->mem, _t31); /* 027C29E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027C29E4 */ _t32 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C29E4 */ _t33 = _t32 & 0x00000001u; /* 027C29E4 */ if (_t33) goto L_027C29E8; else goto L_027C2A04; L_027C29E8: ; // 0x27c29e8 /* 027C29E8 */ cpu->r[0] = cpu->r[10] + 0xFFFFFFFFu; /* 027C29EC */ _t34 = cpu->r[31] + 0x00000010u; /* 027C29EC */ rbrew_write32(cpu->mem, _t34, cpu->r[0]); /* 027C29F0 */ _t35 = cpu->r[1] + 0x00000014u; /* 027C29F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t35); /* 027C29F4 */ _t36 = cpu->r[1] + 0x0000000Cu; /* 027C29F4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36); /* 027C29F8 */ cpu->lr = cpu->r[0]; /* 027C29FC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C2A00 */ return; L_027C2A04: ; // 0x27c2a04 /* 027C2A04 */ cpu->r[0] = 0x00000003u; /* 027C2A08 */ _t37 = cpu->r[31] + 0x00000008u; /* 027C2A08 */ rbrew_write32(cpu->mem, _t37, cpu->r[0]); L_027C2A0C: ; // 0x27c2a0c /* 027C2A0C */ _t38 = cpu->r[1] + 0x00000014u; /* 027C2A0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t38); /* 027C2A10 */ _t39 = cpu->r[1] + 0x0000000Cu; /* 027C2A10 */ cpu->r[31] = rbrew_read32(cpu->mem, _t39); /* 027C2A14 */ cpu->lr = cpu->r[0]; /* 027C2A18 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C2A1C */ return; } // fn_027C2A20 @ 0x27c2a20 void Gambit_fn_027C2A20(CPUState* cpu) { uint32_t _t0; L_027C2A20: ; // 0x27c2a20 /* 027C2A20 */ cpu->r[0] = 0x00000003u; /* 027C2A24 */ _t0 = cpu->r[3] + 0x00000008u; /* 027C2A24 */ rbrew_write32(cpu->mem, _t0, cpu->r[0]); /* 027C2A28 */ return; } // fn_027C2A38 @ 0x27c2a38 void Gambit_fn_027C2A38(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; L_027C2A38: ; // 0x27c2a38 /* 027C2A38 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027C2A38 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2A38 */ cpu->r[1] = _t0; /* 027C2A3C */ /* nop */ /* 027C2A40 */ cpu->r[0] = cpu->lr; /* 027C2A44 */ _t1 = cpu->r[1] + 0x00000024u; /* 027C2A44 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027C2A48 */ cpu->r[31] = 0x101D0000u; /* 027C2A4C */ _t2 = cpu->r[31] + 0xFFFF957Cu; /* 027C2A4C */ cpu->r[31] = rbrew_read32(cpu->mem, _t2); /* 027C2A50 */ cpu->r[29] = cpu->r[3]; /* 027C2A54 */ _t3 = cpu->r[31] + 0x00000094u; /* 027C2A54 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027C2A58 */ _t4 = cpu->r[12] + 0x00000014u; /* 027C2A58 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027C2A5C */ cpu->r[27] = cpu->r[31] + 0x00000090u; /* 027C2A60 */ _t5 = cpu->r[29] + 0x00000000u; /* 027C2A60 */ cpu->r[28] = rbrew_read32(cpu->mem, _t5); /* 027C2A64 */ cpu->ctr = cpu->r[0]; /* 027C2A68 */ cpu->r[3] = cpu->r[27]; /* 027C2A6C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C2A70 */ _t6 = cpu->r[31] + 0x00000090u; /* 027C2A70 */ cpu->r[8] = rbrew_read32(cpu->mem, _t6); /* 027C2A74 */ cpu->r[31] = 0x10110000u; /* 027C2A78 */ _t7 = cpu->r[31] + 0x0000739Au; /* 027C2A78 */ cpu->r[31] = rbrew_read16(cpu->mem, _t7); /* 027C2A7C */ _t8 = cpu->r[8] + 0x00000000u; /* 027C2A7C */ cpu->r[0] = rbrew_read16(cpu->mem, _t8); /* 027C2A80 */ cpu->r[30] = 0x00000000u; /* 027C2A84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[31]); /* 027C2A88 */ cpu->r[0] = 0x00080000u; /* 027C2A8C */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2A8C */ _t10 = _t9 & 0x00000001u; /* 027C2A8C */ if (_t10) goto L_027C2AB4; else goto L_027C2A90; L_027C2A90: ; // 0x27c2a90 /* 027C2A90 */ cpu->r[30] = cpu->r[30] + 0x00000001u; /* 027C2A94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[0]); /* 027C2A98 */ cpu->r[8] = cpu->r[8] + 0x00000002u; /* 027C2A9C */ _t11 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C2A9C */ _t12 = _t11 & 0x00000001u; /* 027C2A9C */ if (_t12) goto L_027C2AB0; else goto L_027C2AA0; L_027C2AA0: ; // 0x27c2aa0 /* 027C2AA0 */ _t13 = cpu->r[8] + 0x00000000u; /* 027C2AA0 */ cpu->r[12] = rbrew_read16(cpu->mem, _t13); /* 027C2AA4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[31]); /* 027C2AA8 */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2AA8 */ _t15 = _t14 & 0x00000001u; /* 027C2AA8 */ if (_t15) goto L_027C2AAC; else goto L_027C2A90; L_027C2AAC: ; // 0x27c2aac /* 027C2AAC */ goto L_027C2AB4; L_027C2AB0: ; // 0x27c2ab0 /* 027C2AB0 */ cpu->r[30] = 0x00000000u; L_027C2AB4: ; // 0x27c2ab4 /* 027C2AB4 */ _t16 = cpu->r[29] + 0x00000008u; /* 027C2AB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t16); /* 027C2AB8 */ _t17 = cpu->r[27] + 0x00000004u; /* 027C2AB8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t17); /* 027C2ABC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], cpu->r[11]); /* 027C2AC0 */ _t18 = cpu->r[6] + 0x00000014u; /* 027C2AC0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t18); /* 027C2AC4 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2AC4 */ _t20 = _t19 & 0x00000001u; /* 027C2AC4 */ if (_t20) goto L_027C2ACC; else goto L_027C2AC8; L_027C2AC8: ; // 0x27c2ac8 /* 027C2AC8 */ cpu->r[30] = cpu->r[11] + 0xFFFFFFFFu; L_027C2ACC: ; // 0x27c2acc /* 027C2ACC */ cpu->ctr = cpu->r[7]; /* 027C2AD0 */ cpu->r[3] = cpu->r[27]; /* 027C2AD4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C2AD8 */ _t21 = cpu->r[27] + 0x00000000u; /* 027C2AD8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t21); /* 027C2ADC */ cpu->r[6] = 0x00000000u; /* 027C2AE0 */ cpu->r[5] = rbrew_rlwinm(cpu->r[30], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C2AE4 */ cpu->r[3] = cpu->r[28]; /* 027C2AE8 */ rbrew_dispatch(cpu, 0x02d0a6e8u); /* 027C2AEC */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000001u, 0x00000000u, 0x0000001Eu); /* 027C2AF0 */ _t22 = cpu->r[10] + cpu->r[28]; /* 027C2AF0 */ rbrew_write16(cpu->mem, _t22, (uint16_t)cpu->r[31]); /* 027C2AF4 */ /* nop */ /* 027C2AF8 */ _t23 = cpu->r[1] + 0x00000024u; /* 027C2AF8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027C2AFC */ cpu->lr = cpu->r[0]; /* 027C2B00 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027C2B04 */ return; } // fn_027C2B08 @ 0x27c2b08 void Gambit_fn_027C2B08(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_027C2B08: ; // 0x27c2b08 /* 027C2B08 */ cpu->r[0] = cpu->lr; /* 027C2B0C */ _t0 = cpu->r[1] + 0xFFFFFF68u; /* 027C2B0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2B0C */ cpu->r[1] = _t0; /* 027C2B10 */ _t1 = cpu->r[1] + 0x00000094u; /* 027C2B10 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C2B14 */ cpu->r[31] = cpu->r[3]; /* 027C2B18 */ _t2 = cpu->r[1] + 0x00000090u; /* 027C2B18 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C2B1C */ cpu->r[3] = 0x101F0000u; /* 027C2B20 */ cpu->r[3] = cpu->r[3] + 0x00005E30u; /* 027C2B24 */ _t3 = cpu->r[1] + 0x0000008Cu; /* 027C2B24 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027C2B28 */ cpu->r[12] = cpu->r[1] + 0x0000004Cu; /* 027C2B2C */ _t4 = cpu->r[1] + 0x0000009Cu; /* 027C2B2C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027C2B30 */ cpu->r[0] = 0x00000003u; /* 027C2B34 */ cpu->r[11] = cpu->r[3] + 0xFFFFFFFCu; /* 027C2B38 */ cpu->ctr = cpu->r[0]; /* 027C2B3C */ _t5 = cpu->r[1] + 0x00000088u; /* 027C2B3C */ rbrew_write32(cpu->mem, _t5, cpu->r[28]); L_027C2B40: ; // 0x27c2b40 /* 027C2B40 */ _t6 = cpu->r[11] + 0x00000004u; /* 027C2B40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6); /* 027C2B44 */ _t7 = cpu->r[12] + 0x00000004u; /* 027C2B44 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]); /* 027C2B48 */ _t8 = cpu->r[11] + 0x00000008u; /* 027C2B48 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8); /* 027C2B4C */ _t9 = cpu->r[12] + 0x00000008u; /* 027C2B4C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]); /* 027C2B50 */ _t10 = cpu->r[11] + 0x0000000Cu; /* 027C2B50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10); /* 027C2B54 */ _t11 = cpu->r[12] + 0x0000000Cu; /* 027C2B54 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]); /* 027C2B58 */ _t12 = cpu->r[11] + 0x00000010u; /* 027C2B58 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12); /* 027C2B58 */ cpu->r[11] = _t12; /* 027C2B5C */ _t13 = cpu->r[12] + 0x00000010u; /* 027C2B5C */ rbrew_write32(cpu->mem, _t13, cpu->r[8]); /* 027C2B5C */ cpu->r[12] = _t13; /* 027C2B60 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C2B60 */ _t14 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C2B60 */ _t15 = _t14 >> (0x00000002u & 31u); /* 027C2B60 */ _t16 = _t15 & 0x00000001u; /* 027C2B60 */ if (_t16) goto L_027C2B40; else goto L_027C2B64; L_027C2B64: ; // 0x27c2b64 /* 027C2B64 */ _t17 = cpu->r[4] + 0x00000004u; /* 027C2B64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17); /* 027C2B68 */ cpu->r[12] = 0x00000001u; /* 027C2B6C */ _t18 = cpu->r[4] + 0x00000010u; /* 027C2B6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027C2B70 */ _t19 = cpu->r[1] + 0x00000018u; /* 027C2B70 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[12]); /* 027C2B74 */ _t20 = cpu->r[4] + 0x00000008u; /* 027C2B74 */ cpu->r[5] = rbrew_read32(cpu->mem, _t20); /* 027C2B78 */ _t21 = cpu->r[1] + 0x00000008u; /* 027C2B78 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]); /* 027C2B7C */ cpu->r[9] = 0x00000000u; /* 027C2B80 */ _t22 = cpu->r[1] + 0x00000014u; /* 027C2B80 */ rbrew_write32(cpu->mem, _t22, cpu->r[5]); /* 027C2B84 */ cpu->r[10] = 0x00000080u; /* 027C2B88 */ _t23 = cpu->r[1] + 0x00000024u; /* 027C2B88 */ rbrew_write16(cpu->mem, _t23, (uint16_t)cpu->r[9]); /* 027C2B8C */ _t24 = cpu->r[1] + 0x0000002Eu; /* 027C2B8C */ rbrew_write16(cpu->mem, _t24, (uint16_t)cpu->r[10]); /* 027C2B90 */ _t25 = cpu->r[4] + 0x0000000Cu; /* 027C2B90 */ cpu->r[28] = rbrew_read32(cpu->mem, _t25); /* 027C2B94 */ _t26 = cpu->r[4] + 0x00000014u; /* 027C2B94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26); /* 027C2B98 */ _t27 = cpu->r[4] + 0x0000001Cu; /* 027C2B98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27); /* 027C2B9C */ _t28 = cpu->r[4] + 0x0000003Cu; /* 027C2B9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t28); /* 027C2BA0 */ _t29 = cpu->r[1] + 0x00000030u; /* 027C2BA0 */ rbrew_write32(cpu->mem, _t29, cpu->r[8]); /* 027C2BA4 */ _t30 = cpu->r[1] + 0x00000080u; /* 027C2BA4 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]); /* 027C2BA8 */ _t31 = cpu->r[4] + 0x00000020u; /* 027C2BA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31); /* 027C2BAC */ _t32 = cpu->r[4] + 0x00000034u; /* 027C2BAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027C2BB0 */ _t33 = cpu->r[4] + 0x00000018u; /* 027C2BB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33); /* 027C2BB4 */ _t34 = cpu->r[1] + 0x00000048u; /* 027C2BB4 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]); /* 027C2BB8 */ _t35 = cpu->r[1] + 0x00000027u; /* 027C2BB8 */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[9]); /* 027C2BBC */ _t36 = cpu->r[1] + 0x00000026u; /* 027C2BBC */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[9]); /* 027C2BC0 */ _t37 = cpu->r[1] + 0x0000002Cu; /* 027C2BC0 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]); /* 027C2BC4 */ cpu->r[0] = cpu->r[4] + 0x00000040u; /* 027C2BC8 */ _t38 = cpu->r[4] + 0x00000030u; /* 027C2BC8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38); /* 027C2BCC */ _t39 = cpu->r[1] + 0x00000020u; /* 027C2BCC */ rbrew_write32(cpu->mem, _t39, cpu->r[0]); /* 027C2BD0 */ _t40 = cpu->r[4] + 0x00000024u; /* 027C2BD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027C2BD4 */ _t41 = cpu->r[4] + 0x00000038u; /* 027C2BD4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41); /* 027C2BD8 */ _t42 = cpu->r[4] + 0x0000002Cu; /* 027C2BD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t42); /* 027C2BDC */ _t43 = cpu->r[4] + 0x00000028u; /* 027C2BDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t43); /* 027C2BE0 */ cpu->r[4] = cpu->r[1] + 0x00000050u; /* 027C2BE4 */ _t44 = cpu->r[1] + 0x0000000Cu; /* 027C2BE4 */ rbrew_write32(cpu->mem, _t44, cpu->r[28]); /* 027C2BE8 */ _t45 = cpu->r[1] + 0x0000003Cu; /* 027C2BE8 */ rbrew_write32(cpu->mem, _t45, cpu->r[12]); /* 027C2BEC */ _t46 = cpu->r[1] + 0x00000010u; /* 027C2BEC */ rbrew_write32(cpu->mem, _t46, cpu->r[29]); /* 027C2BF0 */ cpu->r[8] = 0x00000004u; /* 027C2BF4 */ _t47 = cpu->r[1] + 0x00000044u; /* 027C2BF4 */ rbrew_write32(cpu->mem, _t47, cpu->r[7]); /* 027C2BF8 */ _t48 = cpu->r[1] + 0x0000001Cu; /* 027C2BF8 */ rbrew_write32(cpu->mem, _t48, cpu->r[8]); /* 027C2BFC */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu); /* 027C2C00 */ _t49 = cpu->r[1] + 0x00000040u; /* 027C2C00 */ rbrew_write32(cpu->mem, _t49, cpu->r[5]); /* 027C2C04 */ _t50 = cpu->r[1] + 0x00000034u; /* 027C2C04 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]); /* 027C2C08 */ _t51 = cpu->r[1] + 0x00000038u; /* 027C2C08 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]); /* 027C2C0C */ _t52 = cpu->r[1] + 0x00000028u; /* 027C2C0C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[11]); /* 027C2C10 */ _t53 = cpu->r[1] + 0x0000004Cu; /* 027C2C10 */ rbrew_write32(cpu->mem, _t53, cpu->r[9]); /* 027C2C14 */ Gambit_fn_02C69510(cpu); /* 027C2C18 */ cpu->r[7] = 0x0000001Fu; /* 027C2C1C */ cpu->r[12] = cpu->r[1] + 0x00000004u; /* 027C2C20 */ cpu->ctr = cpu->r[7]; /* 027C2C24 */ cpu->r[5] = cpu->r[31] + 0xFFFFFFFCu; L_027C2C28: ; // 0x27c2c28 /* 027C2C28 */ _t54 = cpu->r[12] + 0x00000004u; /* 027C2C28 */ cpu->r[8] = rbrew_read32(cpu->mem, _t54); /* 027C2C28 */ cpu->r[12] = _t54; /* 027C2C2C */ _t55 = cpu->r[5] + 0x00000004u; /* 027C2C2C */ rbrew_write32(cpu->mem, _t55, cpu->r[8]); /* 027C2C2C */ cpu->r[5] = _t55; /* 027C2C30 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C2C30 */ _t56 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C2C30 */ _t57 = _t56 >> (0x00000002u & 31u); /* 027C2C30 */ _t58 = _t57 & 0x00000001u; /* 027C2C30 */ if (_t58) goto L_027C2C28; else goto L_027C2C34; L_027C2C34: ; // 0x27c2c34 /* 027C2C34 */ _t59 = cpu->r[1] + 0x00000088u; /* 027C2C34 */ cpu->r[28] = rbrew_read32(cpu->mem, _t59); /* 027C2C38 */ _t60 = cpu->r[1] + 0x0000008Cu; /* 027C2C38 */ cpu->r[29] = rbrew_read32(cpu->mem, _t60); /* 027C2C3C */ _t61 = cpu->r[1] + 0x0000009Cu; /* 027C2C3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t61); /* 027C2C40 */ _t62 = cpu->r[1] + 0x00000090u; /* 027C2C40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t62); /* 027C2C44 */ cpu->lr = cpu->r[0]; /* 027C2C48 */ _t63 = cpu->r[1] + 0x00000094u; /* 027C2C48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63); /* 027C2C4C */ cpu->r[1] = cpu->r[1] + 0x00000098u; /* 027C2C50 */ return; } // fn_027C2B0C @ 0x27c2b0c void Gambit_fn_027C2B0C(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_027C2B0C: ; // 0x27c2b0c /* 027C2B0C */ _t0 = cpu->r[1] + 0xFFFFFF68u; /* 027C2B0C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2B0C */ cpu->r[1] = _t0; /* 027C2B10 */ _t1 = cpu->r[1] + 0x00000094u; /* 027C2B10 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C2B14 */ cpu->r[31] = cpu->r[3]; /* 027C2B18 */ _t2 = cpu->r[1] + 0x00000090u; /* 027C2B18 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C2B1C */ cpu->r[3] = 0x101F0000u; /* 027C2B20 */ cpu->r[3] = cpu->r[3] + 0x00005E30u; /* 027C2B24 */ _t3 = cpu->r[1] + 0x0000008Cu; /* 027C2B24 */ rbrew_write32(cpu->mem, _t3, cpu->r[29]); /* 027C2B28 */ cpu->r[12] = cpu->r[1] + 0x0000004Cu; /* 027C2B2C */ _t4 = cpu->r[1] + 0x0000009Cu; /* 027C2B2C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027C2B30 */ cpu->r[0] = 0x00000003u; /* 027C2B34 */ cpu->r[11] = cpu->r[3] + 0xFFFFFFFCu; /* 027C2B38 */ cpu->ctr = cpu->r[0]; /* 027C2B3C */ _t5 = cpu->r[1] + 0x00000088u; /* 027C2B3C */ rbrew_write32(cpu->mem, _t5, cpu->r[28]); L_027C2B40: ; // 0x27c2b40 /* 027C2B40 */ _t6 = cpu->r[11] + 0x00000004u; /* 027C2B40 */ cpu->r[5] = rbrew_read32(cpu->mem, _t6); /* 027C2B44 */ _t7 = cpu->r[12] + 0x00000004u; /* 027C2B44 */ rbrew_write32(cpu->mem, _t7, cpu->r[5]); /* 027C2B48 */ _t8 = cpu->r[11] + 0x00000008u; /* 027C2B48 */ cpu->r[6] = rbrew_read32(cpu->mem, _t8); /* 027C2B4C */ _t9 = cpu->r[12] + 0x00000008u; /* 027C2B4C */ rbrew_write32(cpu->mem, _t9, cpu->r[6]); /* 027C2B50 */ _t10 = cpu->r[11] + 0x0000000Cu; /* 027C2B50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t10); /* 027C2B54 */ _t11 = cpu->r[12] + 0x0000000Cu; /* 027C2B54 */ rbrew_write32(cpu->mem, _t11, cpu->r[7]); /* 027C2B58 */ _t12 = cpu->r[11] + 0x00000010u; /* 027C2B58 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12); /* 027C2B58 */ cpu->r[11] = _t12; /* 027C2B5C */ _t13 = cpu->r[12] + 0x00000010u; /* 027C2B5C */ rbrew_write32(cpu->mem, _t13, cpu->r[8]); /* 027C2B5C */ cpu->r[12] = _t13; /* 027C2B60 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C2B60 */ _t14 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C2B60 */ _t15 = _t14 >> (0x00000002u & 31u); /* 027C2B60 */ _t16 = _t15 & 0x00000001u; /* 027C2B60 */ if (_t16) goto L_027C2B40; else goto L_027C2B64; L_027C2B64: ; // 0x27c2b64 /* 027C2B64 */ _t17 = cpu->r[4] + 0x00000004u; /* 027C2B64 */ cpu->r[11] = rbrew_read32(cpu->mem, _t17); /* 027C2B68 */ cpu->r[12] = 0x00000001u; /* 027C2B6C */ _t18 = cpu->r[4] + 0x00000010u; /* 027C2B6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t18); /* 027C2B70 */ _t19 = cpu->r[1] + 0x00000018u; /* 027C2B70 */ rbrew_write8(cpu->mem, _t19, (uint8_t)cpu->r[12]); /* 027C2B74 */ _t20 = cpu->r[4] + 0x00000008u; /* 027C2B74 */ cpu->r[5] = rbrew_read32(cpu->mem, _t20); /* 027C2B78 */ _t21 = cpu->r[1] + 0x00000008u; /* 027C2B78 */ rbrew_write32(cpu->mem, _t21, cpu->r[0]); /* 027C2B7C */ cpu->r[9] = 0x00000000u; /* 027C2B80 */ _t22 = cpu->r[1] + 0x00000014u; /* 027C2B80 */ rbrew_write32(cpu->mem, _t22, cpu->r[5]); /* 027C2B84 */ cpu->r[10] = 0x00000080u; /* 027C2B88 */ _t23 = cpu->r[1] + 0x00000024u; /* 027C2B88 */ rbrew_write16(cpu->mem, _t23, (uint16_t)cpu->r[9]); /* 027C2B8C */ _t24 = cpu->r[1] + 0x0000002Eu; /* 027C2B8C */ rbrew_write16(cpu->mem, _t24, (uint16_t)cpu->r[10]); /* 027C2B90 */ _t25 = cpu->r[4] + 0x0000000Cu; /* 027C2B90 */ cpu->r[28] = rbrew_read32(cpu->mem, _t25); /* 027C2B94 */ _t26 = cpu->r[4] + 0x00000014u; /* 027C2B94 */ cpu->r[29] = rbrew_read32(cpu->mem, _t26); /* 027C2B98 */ _t27 = cpu->r[4] + 0x0000001Cu; /* 027C2B98 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27); /* 027C2B9C */ _t28 = cpu->r[4] + 0x0000003Cu; /* 027C2B9C */ cpu->r[0] = rbrew_read8(cpu->mem, _t28); /* 027C2BA0 */ _t29 = cpu->r[1] + 0x00000030u; /* 027C2BA0 */ rbrew_write32(cpu->mem, _t29, cpu->r[8]); /* 027C2BA4 */ _t30 = cpu->r[1] + 0x00000080u; /* 027C2BA4 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[0]); /* 027C2BA8 */ _t31 = cpu->r[4] + 0x00000020u; /* 027C2BA8 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31); /* 027C2BAC */ _t32 = cpu->r[4] + 0x00000034u; /* 027C2BAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027C2BB0 */ _t33 = cpu->r[4] + 0x00000018u; /* 027C2BB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t33); /* 027C2BB4 */ _t34 = cpu->r[1] + 0x00000048u; /* 027C2BB4 */ rbrew_write32(cpu->mem, _t34, cpu->r[0]); /* 027C2BB8 */ _t35 = cpu->r[1] + 0x00000027u; /* 027C2BB8 */ rbrew_write8(cpu->mem, _t35, (uint8_t)cpu->r[9]); /* 027C2BBC */ _t36 = cpu->r[1] + 0x00000026u; /* 027C2BBC */ rbrew_write8(cpu->mem, _t36, (uint8_t)cpu->r[9]); /* 027C2BC0 */ _t37 = cpu->r[1] + 0x0000002Cu; /* 027C2BC0 */ rbrew_write32(cpu->mem, _t37, cpu->r[7]); /* 027C2BC4 */ cpu->r[0] = cpu->r[4] + 0x00000040u; /* 027C2BC8 */ _t38 = cpu->r[4] + 0x00000030u; /* 027C2BC8 */ cpu->r[7] = rbrew_read32(cpu->mem, _t38); /* 027C2BCC */ _t39 = cpu->r[1] + 0x00000020u; /* 027C2BCC */ rbrew_write32(cpu->mem, _t39, cpu->r[0]); /* 027C2BD0 */ _t40 = cpu->r[4] + 0x00000024u; /* 027C2BD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027C2BD4 */ _t41 = cpu->r[4] + 0x00000038u; /* 027C2BD4 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41); /* 027C2BD8 */ _t42 = cpu->r[4] + 0x0000002Cu; /* 027C2BD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t42); /* 027C2BDC */ _t43 = cpu->r[4] + 0x00000028u; /* 027C2BDC */ cpu->r[12] = rbrew_read32(cpu->mem, _t43); /* 027C2BE0 */ cpu->r[4] = cpu->r[1] + 0x00000050u; /* 027C2BE4 */ _t44 = cpu->r[1] + 0x0000000Cu; /* 027C2BE4 */ rbrew_write32(cpu->mem, _t44, cpu->r[28]); /* 027C2BE8 */ _t45 = cpu->r[1] + 0x0000003Cu; /* 027C2BE8 */ rbrew_write32(cpu->mem, _t45, cpu->r[12]); /* 027C2BEC */ _t46 = cpu->r[1] + 0x00000010u; /* 027C2BEC */ rbrew_write32(cpu->mem, _t46, cpu->r[29]); /* 027C2BF0 */ cpu->r[8] = 0x00000004u; /* 027C2BF4 */ _t47 = cpu->r[1] + 0x00000044u; /* 027C2BF4 */ rbrew_write32(cpu->mem, _t47, cpu->r[7]); /* 027C2BF8 */ _t48 = cpu->r[1] + 0x0000001Cu; /* 027C2BF8 */ rbrew_write32(cpu->mem, _t48, cpu->r[8]); /* 027C2BFC */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x0000001Fu, 0x0000001Fu, 0x0000001Fu); /* 027C2C00 */ _t49 = cpu->r[1] + 0x00000040u; /* 027C2C00 */ rbrew_write32(cpu->mem, _t49, cpu->r[5]); /* 027C2C04 */ _t50 = cpu->r[1] + 0x00000034u; /* 027C2C04 */ rbrew_write32(cpu->mem, _t50, cpu->r[10]); /* 027C2C08 */ _t51 = cpu->r[1] + 0x00000038u; /* 027C2C08 */ rbrew_write32(cpu->mem, _t51, cpu->r[0]); /* 027C2C0C */ _t52 = cpu->r[1] + 0x00000028u; /* 027C2C0C */ rbrew_write8(cpu->mem, _t52, (uint8_t)cpu->r[11]); /* 027C2C10 */ _t53 = cpu->r[1] + 0x0000004Cu; /* 027C2C10 */ rbrew_write32(cpu->mem, _t53, cpu->r[9]); /* 027C2C14 */ Gambit_fn_02C69510(cpu); /* 027C2C18 */ cpu->r[7] = 0x0000001Fu; /* 027C2C1C */ cpu->r[12] = cpu->r[1] + 0x00000004u; /* 027C2C20 */ cpu->ctr = cpu->r[7]; /* 027C2C24 */ cpu->r[5] = cpu->r[31] + 0xFFFFFFFCu; L_027C2C28: ; // 0x27c2c28 /* 027C2C28 */ _t54 = cpu->r[12] + 0x00000004u; /* 027C2C28 */ cpu->r[8] = rbrew_read32(cpu->mem, _t54); /* 027C2C28 */ cpu->r[12] = _t54; /* 027C2C2C */ _t55 = cpu->r[5] + 0x00000004u; /* 027C2C2C */ rbrew_write32(cpu->mem, _t55, cpu->r[8]); /* 027C2C2C */ cpu->r[5] = _t55; /* 027C2C30 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C2C30 */ _t56 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C2C30 */ _t57 = _t56 >> (0x00000002u & 31u); /* 027C2C30 */ _t58 = _t57 & 0x00000001u; /* 027C2C30 */ if (_t58) goto L_027C2C28; else goto L_027C2C34; L_027C2C34: ; // 0x27c2c34 /* 027C2C34 */ _t59 = cpu->r[1] + 0x00000088u; /* 027C2C34 */ cpu->r[28] = rbrew_read32(cpu->mem, _t59); /* 027C2C38 */ _t60 = cpu->r[1] + 0x0000008Cu; /* 027C2C38 */ cpu->r[29] = rbrew_read32(cpu->mem, _t60); /* 027C2C3C */ _t61 = cpu->r[1] + 0x0000009Cu; /* 027C2C3C */ cpu->r[0] = rbrew_read32(cpu->mem, _t61); /* 027C2C40 */ _t62 = cpu->r[1] + 0x00000090u; /* 027C2C40 */ cpu->r[30] = rbrew_read32(cpu->mem, _t62); /* 027C2C44 */ cpu->lr = cpu->r[0]; /* 027C2C48 */ _t63 = cpu->r[1] + 0x00000094u; /* 027C2C48 */ cpu->r[31] = rbrew_read32(cpu->mem, _t63); /* 027C2C4C */ cpu->r[1] = cpu->r[1] + 0x00000098u; /* 027C2C50 */ return; } // fn_027C2C54 @ 0x27c2c54 void Gambit_fn_027C2C54(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027C2C54: ; // 0x27c2c54 /* 027C2C54 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFECu; /* 027C2C58 */ goto L_027C3FA0; L_027C3FA0: ; // 0x27c3fa0 /* 027C3FA0 */ cpu->r[0] = cpu->lr; /* 027C3FA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C3FA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C3FA4 */ cpu->r[1] = _t0; /* 027C3FA8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C3FA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C3FAC */ _t2 = cpu->r[1] + 0x00000008u; /* 027C3FAC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C3FB0 */ cpu->r[30] = cpu->r[3]; /* 027C3FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C3FB4 */ cpu->r[31] = cpu->r[4]; /* 027C3FB8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C3FB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C3FBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3FBC */ _t5 = _t4 & 0x00000001u; /* 027C3FBC */ if (_t5) goto L_027C4000; else goto L_027C3FC0; L_027C3FC0: ; // 0x27c3fc0 /* 027C3FC0 */ cpu->r[0] = 0x10110000u; /* 027C3FC4 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu; /* 027C3FC8 */ cpu->r[0] = cpu->r[0] + 0xFFFFC078u; /* 027C3FCC */ cpu->r[4] = 0x00000002u; /* 027C3FD0 */ _t6 = cpu->r[30] + 0x00000020u; /* 027C3FD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027C3FD4 */ Gambit_fn_02928E8C(cpu); /* 027C3FD8 */ cpu->r[3] = cpu->r[30] + 0x000000C8u; /* 027C3FDC */ cpu->r[4] = 0x00000002u; /* 027C3FE0 */ Gambit_fn_02928E8C(cpu); /* 027C3FE4 */ cpu->r[3] = cpu->r[30]; /* 027C3FE8 */ cpu->r[4] = 0x00000000u; /* 027C3FEC */ Gambit_fn_028136EC(cpu); /* 027C3FF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C3FF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C3FF4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3FF4 */ _t8 = _t7 & 0x00000001u; /* 027C3FF4 */ if (_t8) goto L_027C4000; else goto L_027C3FF8; L_027C3FF8: ; // 0x27c3ff8 /* 027C3FF8 */ cpu->r[3] = cpu->r[30]; /* 027C3FFC */ Gambit_fn_02801BB0(cpu); L_027C4000: ; // 0x27c4000 /* 027C4000 */ _t9 = cpu->r[1] + 0x00000014u; /* 027C4000 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027C4004 */ _t10 = cpu->r[1] + 0x00000008u; /* 027C4004 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10); /* 027C4008 */ cpu->lr = cpu->r[0]; /* 027C400C */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027C400C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027C4010 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C4014 */ return; } // fn_027C2C5C @ 0x27c2c5c void Gambit_fn_027C2C5C(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; L_027C2C5C: ; // 0x27c2c5c /* 027C2C5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2C60 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2C60 */ _t1 = _t0 & 0x00000001u; /* 027C2C60 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C2C60 */ goto L_027C2C64; L_027C2C64: ; // 0x27c2c64 /* 027C2C64 */ _t2 = cpu->r[3] + 0x00000000u; /* 027C2C64 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027C2C68 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C2C6C */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2C6C */ _t4 = _t3 & 0x00000001u; /* 027C2C6C */ if (_t4) goto L_027C2C7C; else goto L_027C2C70; L_027C2C70: ; // 0x27c2c70 /* 027C2C70 */ cpu->r[12] = 0x101D0000u; /* 027C2C74 */ cpu->r[10] = 0x00000000u; /* 027C2C78 */ _t5 = cpu->r[12] + 0xFFFF93DCu; /* 027C2C78 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]); L_027C2C7C: ; // 0x27c2c7c /* 027C2C7C */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C2C7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027C2C80 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2C80 */ _t7 = _t6 & 0x00000001u; /* 027C2C80 */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C2C80 */ goto L_027C2C84; L_027C2C84: ; // 0x27c2c84 /* 027C2C84 */ goto L_02801BB0; L_02801B30: ; // 0x2801b30 /* 02801B30 */ cpu->r[0] = cpu->lr; /* 02801B34 */ _t8 = cpu->r[1] + 0xFFFFFFF0u; /* 02801B34 */ rbrew_write32(cpu->mem, _t8, cpu->r[1]); /* 02801B34 */ cpu->r[1] = _t8; /* 02801B38 */ _t9 = cpu->r[1] + 0x0000000Cu; /* 02801B38 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]); /* 02801B3C */ cpu->r[31] = cpu->r[3]; /* 02801B40 */ cpu->r[3] = 0x101D0000u; /* 02801B44 */ _t10 = cpu->r[1] + 0x00000014u; /* 02801B44 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 02801B48 */ _t11 = cpu->r[3] + 0xFFFF98F0u; /* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); /* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 02801B50 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 02801B50 */ _t13 = _t12 & 0x00000001u; /* 02801B50 */ if (_t13) goto L_02801B54; else goto L_02801B70; L_02801B54: ; // 0x2801b54 /* 02801B54 */ cpu->r[3] = cpu->r[31]; /* 02801B58 */ Gambit_fn_02801B20(cpu); /* 02801B5C */ _t14 = cpu->r[1] + 0x00000014u; /* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 02801B60 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 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 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 02801B74 */ _t17 = _t16 & 0x00000001u; /* 02801B74 */ if (_t17) 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 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 02801B84 */ _t19 = _t18 & 0x00000001u; /* 02801B84 */ if (_t19) goto L_02801B9C; else goto L_02801B88; L_02801B88: ; // 0x2801b88 /* 02801B88 */ _t20 = cpu->r[3] + 0x0000000Cu; /* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20); /* 02801B8C */ _t21 = cpu->r[12] + 0x0000003Cu; /* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 02801B90 */ cpu->ctr = cpu->r[0]; /* 02801B94 */ cpu->r[4] = cpu->r[31]; /* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr); L_02801B9C: ; // 0x2801b9c /* 02801B9C */ _t22 = cpu->r[1] + 0x00000014u; /* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 02801BA0 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 02801BA4 */ cpu->lr = cpu->r[0]; /* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 02801BAC */ return; L_02801BB0: ; // 0x2801bb0 /* 02801BB0 */ goto L_02801B30; } // fn_027C2C88 @ 0x27c2c88 void Gambit_fn_027C2C88(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15; L_027C2C88: ; // 0x27c2c88 /* 027C2C88 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFECu; /* 027C2C8C */ goto L_027C4018; L_027C4018: ; // 0x27c4018 /* 027C4018 */ cpu->r[0] = cpu->lr; /* 027C401C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C401C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C401C */ cpu->r[1] = _t0; /* 027C4020 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C4020 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C4024 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C4024 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C4028 */ cpu->r[30] = cpu->r[3]; /* 027C4028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C402C */ cpu->r[31] = cpu->r[4]; /* 027C4030 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C4030 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C4034 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4034 */ _t5 = _t4 & 0x00000001u; /* 027C4034 */ if (_t5) goto L_027C40A4; else goto L_027C4038; L_027C4038: ; // 0x27c4038 /* 027C4038 */ cpu->r[12] = 0x10110000u; /* 027C403C */ cpu->r[3] = cpu->r[30] + 0x00000158u; /* 027C4040 */ cpu->r[12] = cpu->r[12] + 0xFFFFC1C0u; /* 027C4044 */ cpu->r[0] = 0x10110000u; /* 027C4048 */ _t6 = cpu->r[30] + 0x00000020u; /* 027C4048 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]); /* 027C404C */ cpu->r[0] = cpu->r[0] + 0xFFFFC1D0u; /* 027C4050 */ cpu->r[4] = 0x00000002u; /* 027C4054 */ _t7 = cpu->r[30] + 0x00000154u; /* 027C4054 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027C4058 */ Gambit_fn_027C2C5C(cpu); /* 027C405C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C4060 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4060 */ _t9 = _t8 & 0x00000001u; /* 027C4060 */ if (_t9) goto L_027C4094; else goto L_027C4064; L_027C4064: ; // 0x27c4064 /* 027C4064 */ cpu->r[0] = 0x10110000u; /* 027C4068 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu; /* 027C406C */ cpu->r[0] = cpu->r[0] + 0xFFFFC078u; /* 027C4070 */ cpu->r[4] = 0x00000002u; /* 027C4074 */ _t10 = cpu->r[30] + 0x00000020u; /* 027C4074 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027C4078 */ Gambit_fn_02928E8C(cpu); /* 027C407C */ cpu->r[3] = cpu->r[30] + 0x000000C8u; /* 027C4080 */ cpu->r[4] = 0x00000002u; /* 027C4084 */ Gambit_fn_02928E8C(cpu); /* 027C4088 */ cpu->r[3] = cpu->r[30]; /* 027C408C */ cpu->r[4] = 0x00000000u; /* 027C4090 */ Gambit_fn_028136EC(cpu); L_027C4094: ; // 0x27c4094 /* 027C4094 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C4094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027C4098 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4098 */ _t12 = _t11 & 0x00000001u; /* 027C4098 */ if (_t12) goto L_027C40A4; else goto L_027C409C; L_027C409C: ; // 0x27c409c /* 027C409C */ cpu->r[3] = cpu->r[30]; /* 027C40A0 */ Gambit_fn_02801BB0(cpu); L_027C40A4: ; // 0x27c40a4 /* 027C40A4 */ _t13 = cpu->r[1] + 0x00000014u; /* 027C40A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027C40A8 */ _t14 = cpu->r[1] + 0x00000008u; /* 027C40A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14); /* 027C40AC */ cpu->lr = cpu->r[0]; /* 027C40B0 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027C40B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 027C40B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C40B8 */ return; } // fn_027C2CB0 @ 0x27c2cb0 void Gambit_fn_027C2CB0(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; L_027C2CB0: ; // 0x27c2cb0 /* 027C2CB0 */ cpu->r[0] = cpu->lr; /* 027C2CB4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C2CB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2CB4 */ cpu->r[1] = _t0; /* 027C2CB8 */ _t1 = cpu->r[1] + 0x00000010u; /* 027C2CB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C2CBC */ cpu->r[30] = cpu->r[3]; /* 027C2CC0 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C2CC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027C2CC4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C2CC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C2CC8 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027C2CC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027C2CCC */ cpu->r[29] = cpu->r[4]; /* 027C2CD0 */ _t5 = cpu->r[30] + 0x000001A4u; /* 027C2CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027C2CD4 */ cpu->r[31] = 0x00000000u; /* 027C2CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027C2CDC */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2CDC */ _t7 = _t6 & 0x00000001u; /* 027C2CDC */ if (_t7) goto L_027C2CE0; else goto L_027C2E28; L_027C2CE0: ; // 0x27c2ce0 /* 027C2CE0 */ _t8 = cpu->r[30] + 0x000001A8u; /* 027C2CE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8); /* 027C2CE4 */ cpu->r[8] = 0x00000000u; L_027C2CE8: ; // 0x27c2ce8 /* 027C2CE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027C2CEC */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2CEC */ _t10 = _t9 & 0x00000001u; /* 027C2CEC */ if (_t10) goto L_027C2CF0; else goto L_027C2D00; L_027C2CF0: ; // 0x27c2cf0 /* 027C2CF0 */ _t11 = cpu->r[10] + cpu->r[8]; /* 027C2CF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11); /* 027C2CF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027C2CF8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2CF8 */ _t13 = _t12 & 0x00000001u; /* 027C2CF8 */ if (_t13) goto L_027C2D0C; else goto L_027C2CFC; L_027C2CFC: ; // 0x27c2cfc /* 027C2CFC */ goto L_027C2E18; L_027C2D00: ; // 0x27c2d00 /* 027C2D00 */ _t14 = cpu->r[10] + 0x00000000u; /* 027C2D00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14); /* 027C2D04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027C2D08 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2D08 */ _t16 = _t15 & 0x00000001u; /* 027C2D08 */ if (_t16) goto L_027C2D0C; else goto L_027C2E18; L_027C2D0C: ; // 0x27c2d0c /* 027C2D0C */ _t17 = cpu->r[29] + 0x00000000u; /* 027C2D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C2D10 */ _t18 = cpu->r[30] + 0x00000164u; /* 027C2D10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18); /* 027C2D14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]); /* 027C2D18 */ _t19 = cpu->r[30] + 0x00000168u; /* 027C2D18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19); /* 027C2D1C */ _t20 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2D1C */ _t21 = _t20 & 0x00000001u; /* 027C2D1C */ if (_t21) goto L_027C2D20; else goto L_027C2D28; L_027C2D20: ; // 0x27c2d20 /* 027C2D20 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2D24 */ cpu->r[7] = cpu->r[7] + cpu->r[12]; L_027C2D28: ; // 0x27c2d28 /* 027C2D28 */ _t22 = cpu->r[7] + 0x00000000u; /* 027C2D28 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22); /* 027C2D2C */ cpu->r[3] = 0x00000104u; /* 027C2D30 */ cpu->r[5] = 0x00000004u; /* 027C2D34 */ Gambit_fn_02801AC8(cpu); /* 027C2D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2D3C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2D3C */ _t24 = _t23 & 0x00000001u; /* 027C2D3C */ if (_t24) goto L_027C2DBC; else goto L_027C2D40; L_027C2D40: ; // 0x27c2d40 /* 027C2D40 */ _t25 = cpu->r[30] + 0x00000164u; /* 027C2D40 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25); /* 027C2D44 */ _t26 = cpu->r[29] + 0x00000000u; /* 027C2D44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26); /* 027C2D48 */ _t27 = cpu->r[30] + 0x00000168u; /* 027C2D48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27); /* 027C2D4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[6]); /* 027C2D50 */ _t28 = cpu->r[30] + 0x0000016Cu; /* 027C2D50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28); /* 027C2D54 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2D54 */ _t30 = _t29 & 0x00000001u; /* 027C2D54 */ if (_t30) goto L_027C2D58; else goto L_027C2D60; L_027C2D58: ; // 0x27c2d58 /* 027C2D58 */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2D5C */ cpu->r[8] = cpu->r[8] + cpu->r[7]; L_027C2D60: ; // 0x27c2d60 /* 027C2D60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]); /* 027C2D64 */ _t31 = cpu->r[30] + 0x00000170u; /* 027C2D64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31); /* 027C2D68 */ _t32 = cpu->r[30] + 0x0000019Cu; /* 027C2D68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t32); /* 027C2D6C */ _t33 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2D6C */ _t34 = _t33 & 0x00000001u; /* 027C2D6C */ if (_t34) goto L_027C2D70; else goto L_027C2D78; L_027C2D70: ; // 0x27c2d70 /* 027C2D70 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2D74 */ cpu->r[10] = cpu->r[10] + cpu->r[0]; L_027C2D78: ; // 0x27c2d78 /* 027C2D78 */ _t35 = cpu->r[8] + 0x00000000u; /* 027C2D78 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35); /* 027C2D7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[6]); /* 027C2D80 */ _t36 = cpu->r[30] + 0x000001A0u; /* 027C2D80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36); /* 027C2D84 */ _t37 = cpu->r[10] + 0x00000000u; /* 027C2D84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37); /* 027C2D88 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2D88 */ _t39 = _t38 & 0x00000001u; /* 027C2D88 */ if (_t39) goto L_027C2D8C; else goto L_027C2D94; L_027C2D8C: ; // 0x27c2d8c /* 027C2D8C */ cpu->r[7] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2D90 */ cpu->r[11] = cpu->r[11] + cpu->r[7]; L_027C2D94: ; // 0x27c2d94 /* 027C2D94 */ _t40 = cpu->r[11] + 0x00000000u; /* 027C2D94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40); /* 027C2D98 */ cpu->r[7] = 0x00000000u; /* 027C2D9C */ cpu->r[4] = cpu->r[29]; /* 027C2DA0 */ Gambit_fn_027C2774(cpu); /* 027C2DA4 */ _t41 = cpu->r[30] + 0x0000015Cu; /* 027C2DA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41); /* 027C2DA8 */ _t42 = cpu->r[29] + 0x00000000u; /* 027C2DA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42); /* 027C2DAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]); /* 027C2DB0 */ _t43 = cpu->r[30] + 0x00000160u; /* 027C2DB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43); /* 027C2DB4 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2DB4 */ _t45 = _t44 & 0x00000001u; /* 027C2DB4 */ if (_t45) goto L_027C2DD4; else goto L_027C2DB8; L_027C2DB8: ; // 0x27c2db8 /* 027C2DB8 */ goto L_027C2DDC; L_027C2DBC: ; // 0x27c2dbc /* 027C2DBC */ _t46 = cpu->r[29] + 0x00000000u; /* 027C2DBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t46); /* 027C2DC0 */ cpu->r[3] = 0x00000000u; /* 027C2DC4 */ _t47 = cpu->r[30] + 0x0000015Cu; /* 027C2DC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47); /* 027C2DC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]); /* 027C2DCC */ _t48 = cpu->r[30] + 0x00000160u; /* 027C2DCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t48); /* 027C2DD0 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2DD0 */ _t50 = _t49 & 0x00000001u; /* 027C2DD0 */ if (_t50) goto L_027C2DD4; else goto L_027C2DB8; L_027C2DD4: ; // 0x27c2dd4 /* 027C2DD4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2DD8 */ cpu->r[12] = cpu->r[12] + cpu->r[11]; L_027C2DDC: ; // 0x27c2ddc /* 027C2DDC */ _t51 = cpu->r[12] + 0x00000000u; /* 027C2DDC */ rbrew_write32(cpu->mem, _t51, cpu->r[3]); /* 027C2DE0 */ _t52 = cpu->r[30] + 0x000001A4u; /* 027C2DE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52); /* 027C2DE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027C2DE8 */ _t53 = cpu->r[30] + 0x000001A8u; /* 027C2DE8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53); /* 027C2DEC */ _t54 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2DEC */ _t55 = _t54 & 0x00000001u; /* 027C2DEC */ if (_t55) goto L_027C2DF0; else goto L_027C2DF8; L_027C2DF0: ; // 0x27c2df0 /* 027C2DF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2DF4 */ cpu->r[6] = cpu->r[6] + cpu->r[0]; L_027C2DF8: ; // 0x27c2df8 /* 027C2DF8 */ _t56 = cpu->r[6] + 0x00000000u; /* 027C2DF8 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]); /* 027C2DFC */ _t57 = cpu->r[1] + 0x0000000Cu; /* 027C2DFC */ cpu->r[29] = rbrew_read32(cpu->mem, _t57); /* 027C2E00 */ _t58 = cpu->r[1] + 0x0000001Cu; /* 027C2E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58); /* 027C2E04 */ _t59 = cpu->r[1] + 0x00000010u; /* 027C2E04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59); /* 027C2E08 */ cpu->lr = cpu->r[0]; /* 027C2E0C */ _t60 = cpu->r[1] + 0x00000014u; /* 027C2E0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t60); /* 027C2E10 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C2E14 */ return; L_027C2E18: ; // 0x27c2e18 /* 027C2E18 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C2E1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027C2E20 */ cpu->r[8] = cpu->r[8] + 0x00000004u; /* 027C2E24 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2E24 */ _t62 = _t61 & 0x00000001u; /* 027C2E24 */ if (_t62) goto L_027C2CE8; else goto L_027C2E28; L_027C2E28: ; // 0x27c2e28 /* 027C2E28 */ _t63 = cpu->r[1] + 0x0000000Cu; /* 027C2E28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t63); /* 027C2E2C */ _t64 = cpu->r[1] + 0x0000001Cu; /* 027C2E2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t64); /* 027C2E30 */ _t65 = cpu->r[1] + 0x00000010u; /* 027C2E30 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65); /* 027C2E34 */ cpu->lr = cpu->r[0]; /* 027C2E38 */ _t66 = cpu->r[1] + 0x00000014u; /* 027C2E38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66); /* 027C2E3C */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C2E40 */ cpu->r[3] = 0x00000000u; /* 027C2E44 */ return; } // fn_027C2CB4 @ 0x27c2cb4 void Gambit_fn_027C2CB4(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; L_027C2CB4: ; // 0x27c2cb4 /* 027C2CB4 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C2CB4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2CB4 */ cpu->r[1] = _t0; /* 027C2CB8 */ _t1 = cpu->r[1] + 0x00000010u; /* 027C2CB8 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C2CBC */ cpu->r[30] = cpu->r[3]; /* 027C2CC0 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C2CC0 */ rbrew_write32(cpu->mem, _t2, cpu->r[29]); /* 027C2CC4 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C2CC4 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C2CC8 */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027C2CC8 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027C2CCC */ cpu->r[29] = cpu->r[4]; /* 027C2CD0 */ _t5 = cpu->r[30] + 0x000001A4u; /* 027C2CD0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027C2CD4 */ cpu->r[31] = 0x00000000u; /* 027C2CD8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027C2CDC */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2CDC */ _t7 = _t6 & 0x00000001u; /* 027C2CDC */ if (_t7) goto L_027C2CE0; else goto L_027C2E28; L_027C2CE0: ; // 0x27c2ce0 /* 027C2CE0 */ _t8 = cpu->r[30] + 0x000001A8u; /* 027C2CE0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t8); /* 027C2CE4 */ cpu->r[8] = 0x00000000u; L_027C2CE8: ; // 0x27c2ce8 /* 027C2CE8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027C2CEC */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2CEC */ _t10 = _t9 & 0x00000001u; /* 027C2CEC */ if (_t10) goto L_027C2CF0; else goto L_027C2D00; L_027C2CF0: ; // 0x27c2cf0 /* 027C2CF0 */ _t11 = cpu->r[10] + cpu->r[8]; /* 027C2CF0 */ cpu->r[9] = rbrew_read32(cpu->mem, _t11); /* 027C2CF4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027C2CF8 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2CF8 */ _t13 = _t12 & 0x00000001u; /* 027C2CF8 */ if (_t13) goto L_027C2D0C; else goto L_027C2CFC; L_027C2CFC: ; // 0x27c2cfc /* 027C2CFC */ goto L_027C2E18; L_027C2D00: ; // 0x27c2d00 /* 027C2D00 */ _t14 = cpu->r[10] + 0x00000000u; /* 027C2D00 */ cpu->r[9] = rbrew_read32(cpu->mem, _t14); /* 027C2D04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027C2D08 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2D08 */ _t16 = _t15 & 0x00000001u; /* 027C2D08 */ if (_t16) goto L_027C2D0C; else goto L_027C2E18; L_027C2D0C: ; // 0x27c2d0c /* 027C2D0C */ _t17 = cpu->r[29] + 0x00000000u; /* 027C2D0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C2D10 */ _t18 = cpu->r[30] + 0x00000164u; /* 027C2D10 */ cpu->r[11] = rbrew_read32(cpu->mem, _t18); /* 027C2D14 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[0], cpu->r[11]); /* 027C2D18 */ _t19 = cpu->r[30] + 0x00000168u; /* 027C2D18 */ cpu->r[7] = rbrew_read32(cpu->mem, _t19); /* 027C2D1C */ _t20 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2D1C */ _t21 = _t20 & 0x00000001u; /* 027C2D1C */ if (_t21) goto L_027C2D20; else goto L_027C2D28; L_027C2D20: ; // 0x27c2d20 /* 027C2D20 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2D24 */ cpu->r[7] = cpu->r[7] + cpu->r[12]; L_027C2D28: ; // 0x27c2d28 /* 027C2D28 */ _t22 = cpu->r[7] + 0x00000000u; /* 027C2D28 */ cpu->r[4] = rbrew_read32(cpu->mem, _t22); /* 027C2D2C */ cpu->r[3] = 0x00000104u; /* 027C2D30 */ cpu->r[5] = 0x00000004u; /* 027C2D34 */ Gambit_fn_02801AC8(cpu); /* 027C2D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C2D3C */ _t23 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2D3C */ _t24 = _t23 & 0x00000001u; /* 027C2D3C */ if (_t24) goto L_027C2DBC; else goto L_027C2D40; L_027C2D40: ; // 0x27c2d40 /* 027C2D40 */ _t25 = cpu->r[30] + 0x00000164u; /* 027C2D40 */ cpu->r[6] = rbrew_read32(cpu->mem, _t25); /* 027C2D44 */ _t26 = cpu->r[29] + 0x00000000u; /* 027C2D44 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26); /* 027C2D48 */ _t27 = cpu->r[30] + 0x00000168u; /* 027C2D48 */ cpu->r[8] = rbrew_read32(cpu->mem, _t27); /* 027C2D4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[6]); /* 027C2D50 */ _t28 = cpu->r[30] + 0x0000016Cu; /* 027C2D50 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28); /* 027C2D54 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2D54 */ _t30 = _t29 & 0x00000001u; /* 027C2D54 */ if (_t30) goto L_027C2D58; else goto L_027C2D60; L_027C2D58: ; // 0x27c2d58 /* 027C2D58 */ cpu->r[7] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2D5C */ cpu->r[8] = cpu->r[8] + cpu->r[7]; L_027C2D60: ; // 0x27c2d60 /* 027C2D60 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[10]); /* 027C2D64 */ _t31 = cpu->r[30] + 0x00000170u; /* 027C2D64 */ cpu->r[10] = rbrew_read32(cpu->mem, _t31); /* 027C2D68 */ _t32 = cpu->r[30] + 0x0000019Cu; /* 027C2D68 */ cpu->r[6] = rbrew_read32(cpu->mem, _t32); /* 027C2D6C */ _t33 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2D6C */ _t34 = _t33 & 0x00000001u; /* 027C2D6C */ if (_t34) goto L_027C2D70; else goto L_027C2D78; L_027C2D70: ; // 0x27c2d70 /* 027C2D70 */ cpu->r[0] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2D74 */ cpu->r[10] = cpu->r[10] + cpu->r[0]; L_027C2D78: ; // 0x27c2d78 /* 027C2D78 */ _t35 = cpu->r[8] + 0x00000000u; /* 027C2D78 */ cpu->r[5] = rbrew_read32(cpu->mem, _t35); /* 027C2D7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[6]); /* 027C2D80 */ _t36 = cpu->r[30] + 0x000001A0u; /* 027C2D80 */ cpu->r[11] = rbrew_read32(cpu->mem, _t36); /* 027C2D84 */ _t37 = cpu->r[10] + 0x00000000u; /* 027C2D84 */ cpu->r[6] = rbrew_read32(cpu->mem, _t37); /* 027C2D88 */ _t38 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2D88 */ _t39 = _t38 & 0x00000001u; /* 027C2D88 */ if (_t39) goto L_027C2D8C; else goto L_027C2D94; L_027C2D8C: ; // 0x27c2d8c /* 027C2D8C */ cpu->r[7] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2D90 */ cpu->r[11] = cpu->r[11] + cpu->r[7]; L_027C2D94: ; // 0x27c2d94 /* 027C2D94 */ _t40 = cpu->r[11] + 0x00000000u; /* 027C2D94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t40); /* 027C2D98 */ cpu->r[7] = 0x00000000u; /* 027C2D9C */ cpu->r[4] = cpu->r[29]; /* 027C2DA0 */ Gambit_fn_027C2774(cpu); /* 027C2DA4 */ _t41 = cpu->r[30] + 0x0000015Cu; /* 027C2DA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t41); /* 027C2DA8 */ _t42 = cpu->r[29] + 0x00000000u; /* 027C2DA8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t42); /* 027C2DAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]); /* 027C2DB0 */ _t43 = cpu->r[30] + 0x00000160u; /* 027C2DB0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t43); /* 027C2DB4 */ _t44 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2DB4 */ _t45 = _t44 & 0x00000001u; /* 027C2DB4 */ if (_t45) goto L_027C2DD4; else goto L_027C2DB8; L_027C2DB8: ; // 0x27c2db8 /* 027C2DB8 */ goto L_027C2DDC; L_027C2DBC: ; // 0x27c2dbc /* 027C2DBC */ _t46 = cpu->r[29] + 0x00000000u; /* 027C2DBC */ cpu->r[11] = rbrew_read32(cpu->mem, _t46); /* 027C2DC0 */ cpu->r[3] = 0x00000000u; /* 027C2DC4 */ _t47 = cpu->r[30] + 0x0000015Cu; /* 027C2DC4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t47); /* 027C2DC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[0]); /* 027C2DCC */ _t48 = cpu->r[30] + 0x00000160u; /* 027C2DCC */ cpu->r[12] = rbrew_read32(cpu->mem, _t48); /* 027C2DD0 */ _t49 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2DD0 */ _t50 = _t49 & 0x00000001u; /* 027C2DD0 */ if (_t50) goto L_027C2DD4; else goto L_027C2DB8; L_027C2DD4: ; // 0x27c2dd4 /* 027C2DD4 */ cpu->r[11] = rbrew_rlwinm(cpu->r[11], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2DD8 */ cpu->r[12] = cpu->r[12] + cpu->r[11]; L_027C2DDC: ; // 0x27c2ddc /* 027C2DDC */ _t51 = cpu->r[12] + 0x00000000u; /* 027C2DDC */ rbrew_write32(cpu->mem, _t51, cpu->r[3]); /* 027C2DE0 */ _t52 = cpu->r[30] + 0x000001A4u; /* 027C2DE0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t52); /* 027C2DE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027C2DE8 */ _t53 = cpu->r[30] + 0x000001A8u; /* 027C2DE8 */ cpu->r[6] = rbrew_read32(cpu->mem, _t53); /* 027C2DEC */ _t54 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2DEC */ _t55 = _t54 & 0x00000001u; /* 027C2DEC */ if (_t55) goto L_027C2DF0; else goto L_027C2DF8; L_027C2DF0: ; // 0x27c2df0 /* 027C2DF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2DF4 */ cpu->r[6] = cpu->r[6] + cpu->r[0]; L_027C2DF8: ; // 0x27c2df8 /* 027C2DF8 */ _t56 = cpu->r[6] + 0x00000000u; /* 027C2DF8 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]); /* 027C2DFC */ _t57 = cpu->r[1] + 0x0000000Cu; /* 027C2DFC */ cpu->r[29] = rbrew_read32(cpu->mem, _t57); /* 027C2E00 */ _t58 = cpu->r[1] + 0x0000001Cu; /* 027C2E00 */ cpu->r[0] = rbrew_read32(cpu->mem, _t58); /* 027C2E04 */ _t59 = cpu->r[1] + 0x00000010u; /* 027C2E04 */ cpu->r[30] = rbrew_read32(cpu->mem, _t59); /* 027C2E08 */ cpu->lr = cpu->r[0]; /* 027C2E0C */ _t60 = cpu->r[1] + 0x00000014u; /* 027C2E0C */ cpu->r[31] = rbrew_read32(cpu->mem, _t60); /* 027C2E10 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C2E14 */ return; L_027C2E18: ; // 0x27c2e18 /* 027C2E18 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C2E1C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[0]); /* 027C2E20 */ cpu->r[8] = cpu->r[8] + 0x00000004u; /* 027C2E24 */ _t61 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2E24 */ _t62 = _t61 & 0x00000001u; /* 027C2E24 */ if (_t62) goto L_027C2CE8; else goto L_027C2E28; L_027C2E28: ; // 0x27c2e28 /* 027C2E28 */ _t63 = cpu->r[1] + 0x0000000Cu; /* 027C2E28 */ cpu->r[29] = rbrew_read32(cpu->mem, _t63); /* 027C2E2C */ _t64 = cpu->r[1] + 0x0000001Cu; /* 027C2E2C */ cpu->r[0] = rbrew_read32(cpu->mem, _t64); /* 027C2E30 */ _t65 = cpu->r[1] + 0x00000010u; /* 027C2E30 */ cpu->r[30] = rbrew_read32(cpu->mem, _t65); /* 027C2E34 */ cpu->lr = cpu->r[0]; /* 027C2E38 */ _t66 = cpu->r[1] + 0x00000014u; /* 027C2E38 */ cpu->r[31] = rbrew_read32(cpu->mem, _t66); /* 027C2E3C */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C2E40 */ cpu->r[3] = 0x00000000u; /* 027C2E44 */ return; } // fn_027C2E48 @ 0x27c2e48 void Gambit_fn_027C2E48(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; L_027C2E48: ; // 0x27c2e48 /* 027C2E48 */ cpu->r[0] = cpu->lr; /* 027C2E4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C2E4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2E4C */ cpu->r[1] = _t0; /* 027C2E50 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C2E50 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027C2E54 */ _t2 = cpu->r[1] + 0x00000010u; /* 027C2E54 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C2E58 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C2E58 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C2E5C */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027C2E5C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027C2E60 */ cpu->r[29] = cpu->r[3]; /* 027C2E64 */ _t5 = cpu->r[29] + 0x00000164u; /* 027C2E64 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5); /* 027C2E68 */ cpu->r[30] = cpu->r[4]; /* 027C2E6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[6]); /* 027C2E70 */ _t6 = cpu->r[29] + 0x00000168u; /* 027C2E70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027C2E74 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2E74 */ _t8 = _t7 & 0x00000001u; /* 027C2E74 */ if (_t8) goto L_027C2E78; else goto L_027C2E8C; L_027C2E78: ; // 0x27c2e78 /* 027C2E78 */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2E7C */ _t9 = cpu->r[9] + cpu->r[10]; /* 027C2E7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027C2E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C2E84 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2E84 */ _t11 = _t10 & 0x00000001u; /* 027C2E84 */ if (_t11) goto L_027C2EBC; else goto L_027C2E88; L_027C2E88: ; // 0x27c2e88 /* 027C2E88 */ goto L_027C2E98; L_027C2E8C: ; // 0x27c2e8c /* 027C2E8C */ _t12 = cpu->r[9] + 0x00000000u; /* 027C2E8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027C2E90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C2E94 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2E94 */ _t14 = _t13 & 0x00000001u; /* 027C2E94 */ if (_t14) goto L_027C2EBC; else goto L_027C2E98; L_027C2E98: ; // 0x27c2e98 /* 027C2E98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[6]); /* 027C2E9C */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2E9C */ _t16 = _t15 & 0x00000001u; /* 027C2E9C */ if (_t16) goto L_027C2EA0; else goto L_027C2EA8; L_027C2EA0: ; // 0x27c2ea0 /* 027C2EA0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2EA4 */ cpu->r[9] = cpu->r[9] + cpu->r[7]; L_027C2EA8: ; // 0x27c2ea8 /* 027C2EA8 */ _t17 = cpu->r[9] + 0x00000000u; /* 027C2EA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17); /* 027C2EAC */ _t18 = cpu->r[3] + 0x0000000Cu; /* 027C2EAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t18); /* 027C2EB0 */ _t19 = cpu->r[8] + 0x00000024u; /* 027C2EB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19); /* 027C2EB4 */ cpu->ctr = cpu->r[10]; /* 027C2EB8 */ rbrew_call_indirect(cpu, cpu->ctr); L_027C2EBC: ; // 0x27c2ebc /* 027C2EBC */ _t20 = cpu->r[29] + 0x00000174u; /* 027C2EBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20); /* 027C2EC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[12]); /* 027C2EC4 */ _t21 = cpu->r[29] + 0x00000178u; /* 027C2EC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21); /* 027C2EC8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2EC8 */ _t23 = _t22 & 0x00000001u; /* 027C2EC8 */ if (_t23) goto L_027C2ECC; else goto L_027C2ED4; L_027C2ECC: ; // 0x27c2ecc /* 027C2ECC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000001Cu); /* 027C2ED0 */ cpu->r[3] = cpu->r[3] + cpu->r[0]; L_027C2ED4: ; // 0x27c2ed4 /* 027C2ED4 */ cpu->r[4] = 0x10110000u; /* 027C2ED8 */ cpu->r[5] = cpu->r[30]; /* 027C2EDC */ cpu->r[4] = cpu->r[4] + 0xFFFFC0D8u; /* 027C2EE0 */ _t24 = cpu->cr[1] >> (0x00000001u & 31u); /* 027C2EE0 */ _t25 = _t24 & 0x00000001u; /* 027C2EE0 */ if (_t25) goto L_027C2EE4; // else: addr-0 trap, fall-through L_027C2EE4: ; // 0x27c2ee4 /* 027C2EE4 */ Gambit_fn_0282A5F4(cpu); /* 027C2EE8 */ _t26 = cpu->r[29] + 0x00000164u; /* 027C2EE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26); /* 027C2EEC */ _t27 = cpu->r[29] + 0x00000168u; /* 027C2EEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t27); /* 027C2EF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]); /* 027C2EF4 */ _t28 = cpu->r[29] + 0x00000184u; /* 027C2EF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28); /* 027C2EF8 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2EF8 */ _t30 = _t29 & 0x00000001u; /* 027C2EF8 */ if (_t30) goto L_027C2EFC; else goto L_027C2F04; L_027C2EFC: ; // 0x27c2efc /* 027C2EFC */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2F00 */ cpu->r[31] = cpu->r[31] + cpu->r[10]; L_027C2F04: ; // 0x27c2f04 /* 027C2F04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027C2F08 */ _t31 = cpu->r[29] + 0x00000188u; /* 027C2F08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31); /* 027C2F0C */ _t32 = cpu->r[29] + 0x00000174u; /* 027C2F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027C2F10 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F10 */ _t34 = _t33 & 0x00000001u; /* 027C2F10 */ if (_t34) goto L_027C2F14; else goto L_027C2F1C; L_027C2F14: ; // 0x27c2f14 /* 027C2F14 */ cpu->r[12] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2F18 */ cpu->r[11] = cpu->r[11] + cpu->r[12]; L_027C2F1C: ; // 0x27c2f1c /* 027C2F1C */ _t35 = cpu->r[29] + 0x00000178u; /* 027C2F1C */ cpu->r[4] = rbrew_read32(cpu->mem, _t35); /* 027C2F20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027C2F24 */ _t36 = cpu->r[11] + 0x00000000u; /* 027C2F24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36); /* 027C2F28 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F28 */ _t38 = _t37 & 0x00000001u; /* 027C2F28 */ if (_t38) goto L_027C2F2C; else goto L_027C2F34; L_027C2F2C: ; // 0x27c2f2c /* 027C2F2C */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000001Cu); /* 027C2F30 */ cpu->r[4] = cpu->r[4] + cpu->r[5]; L_027C2F34: ; // 0x27c2f34 /* 027C2F34 */ _t39 = cpu->r[29] + 0x00000194u; /* 027C2F34 */ cpu->r[5] = rbrew_read32(cpu->mem, _t39); /* 027C2F38 */ cpu->r[7] = 0x00000000u; /* 027C2F3C */ cpu->r[6] = 0x00000001u; /* 027C2F40 */ Gambit_fn_028249F8(cpu); /* 027C2F44 */ _t40 = cpu->r[31] + 0x00000000u; /* 027C2F44 */ rbrew_write32(cpu->mem, _t40, cpu->r[3]); /* 027C2F48 */ _t41 = cpu->r[29] + 0x0000017Cu; /* 027C2F48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41); /* 027C2F4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[7]); /* 027C2F50 */ _t42 = cpu->r[29] + 0x00000180u; /* 027C2F50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42); /* 027C2F54 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F54 */ _t44 = _t43 & 0x00000001u; /* 027C2F54 */ if (_t44) goto L_027C2F58; else goto L_027C2F60; L_027C2F58: ; // 0x27c2f58 /* 027C2F58 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000001Cu); /* 027C2F5C */ cpu->r[3] = cpu->r[3] + cpu->r[0]; L_027C2F60: ; // 0x27c2f60 /* 027C2F60 */ cpu->r[4] = 0x10110000u; /* 027C2F64 */ cpu->r[5] = cpu->r[30]; /* 027C2F68 */ cpu->r[4] = cpu->r[4] + 0xFFFFC0C8u; /* 027C2F6C */ _t45 = cpu->cr[1] >> (0x00000001u & 31u); /* 027C2F6C */ _t46 = _t45 & 0x00000001u; /* 027C2F6C */ if (_t46) goto L_027C2F70; // else: addr-0 trap, fall-through L_027C2F70: ; // 0x27c2f70 /* 027C2F70 */ Gambit_fn_0282A5F4(cpu); /* 027C2F74 */ _t47 = cpu->r[29] + 0x0000016Cu; /* 027C2F74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47); /* 027C2F78 */ _t48 = cpu->r[29] + 0x00000170u; /* 027C2F78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48); /* 027C2F7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027C2F80 */ _t49 = cpu->r[29] + 0x0000018Cu; /* 027C2F80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49); /* 027C2F84 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F84 */ _t51 = _t50 & 0x00000001u; /* 027C2F84 */ if (_t51) goto L_027C2F88; else goto L_027C2F90; L_027C2F88: ; // 0x27c2f88 /* 027C2F88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2F8C */ cpu->r[31] = cpu->r[31] + cpu->r[0]; L_027C2F90: ; // 0x27c2f90 /* 027C2F90 */ _t52 = cpu->r[29] + 0x00000190u; /* 027C2F90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t52); /* 027C2F94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]); /* 027C2F98 */ _t53 = cpu->r[29] + 0x0000017Cu; /* 027C2F98 */ cpu->r[5] = rbrew_read32(cpu->mem, _t53); /* 027C2F9C */ _t54 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F9C */ _t55 = _t54 & 0x00000001u; /* 027C2F9C */ if (_t55) goto L_027C2FA0; else goto L_027C2FA8; L_027C2FA0: ; // 0x27c2fa0 /* 027C2FA0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2FA4 */ cpu->r[10] = cpu->r[10] + cpu->r[11]; L_027C2FA8: ; // 0x27c2fa8 /* 027C2FA8 */ _t56 = cpu->r[29] + 0x00000180u; /* 027C2FA8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t56); /* 027C2FAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[5]); /* 027C2FB0 */ _t57 = cpu->r[29] + 0x00000164u; /* 027C2FB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57); /* 027C2FB4 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2FB4 */ _t59 = _t58 & 0x00000001u; /* 027C2FB4 */ if (_t59) goto L_027C2FB8; else goto L_027C2FC0; L_027C2FB8: ; // 0x27c2fb8 /* 027C2FB8 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000001Cu); /* 027C2FBC */ cpu->r[4] = cpu->r[4] + cpu->r[6]; L_027C2FC0: ; // 0x27c2fc0 /* 027C2FC0 */ _t60 = cpu->r[29] + 0x00000168u; /* 027C2FC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60); /* 027C2FC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[7]); /* 027C2FC8 */ _t61 = cpu->r[10] + 0x00000000u; /* 027C2FC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61); /* 027C2FCC */ _t62 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2FCC */ _t63 = _t62 & 0x00000001u; /* 027C2FCC */ if (_t63) goto L_027C2FD0; else goto L_027C2FD8; L_027C2FD0: ; // 0x27c2fd0 /* 027C2FD0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2FD4 */ cpu->r[12] = cpu->r[12] + cpu->r[8]; L_027C2FD8: ; // 0x27c2fd8 /* 027C2FD8 */ _t64 = cpu->r[12] + 0x00000000u; /* 027C2FD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t64); /* 027C2FDC */ cpu->r[7] = 0x00000000u; /* 027C2FE0 */ cpu->r[6] = 0x00000001u; /* 027C2FE4 */ Gambit_fn_028249F8(cpu); /* 027C2FE8 */ _t65 = cpu->r[31] + 0x00000000u; /* 027C2FE8 */ rbrew_write32(cpu->mem, _t65, cpu->r[3]); /* 027C2FEC */ _t66 = cpu->r[1] + 0x0000000Cu; /* 027C2FEC */ cpu->r[29] = rbrew_read32(cpu->mem, _t66); /* 027C2FF0 */ _t67 = cpu->r[1] + 0x0000001Cu; /* 027C2FF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67); /* 027C2FF4 */ _t68 = cpu->r[1] + 0x00000010u; /* 027C2FF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t68); /* 027C2FF8 */ cpu->lr = cpu->r[0]; /* 027C2FFC */ _t69 = cpu->r[1] + 0x00000014u; /* 027C2FFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t69); /* 027C3000 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C3004 */ return; } // fn_027C2E4C @ 0x27c2e4c void Gambit_fn_027C2E4C(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; L_027C2E4C: ; // 0x27c2e4c /* 027C2E4C */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C2E4C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C2E4C */ cpu->r[1] = _t0; /* 027C2E50 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C2E50 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027C2E54 */ _t2 = cpu->r[1] + 0x00000010u; /* 027C2E54 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C2E58 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C2E58 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C2E5C */ _t4 = cpu->r[1] + 0x0000001Cu; /* 027C2E5C */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); /* 027C2E60 */ cpu->r[29] = cpu->r[3]; /* 027C2E64 */ _t5 = cpu->r[29] + 0x00000164u; /* 027C2E64 */ cpu->r[6] = rbrew_read32(cpu->mem, _t5); /* 027C2E68 */ cpu->r[30] = cpu->r[4]; /* 027C2E6C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[6]); /* 027C2E70 */ _t6 = cpu->r[29] + 0x00000168u; /* 027C2E70 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027C2E74 */ _t7 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2E74 */ _t8 = _t7 & 0x00000001u; /* 027C2E74 */ if (_t8) goto L_027C2E78; else goto L_027C2E8C; L_027C2E78: ; // 0x27c2e78 /* 027C2E78 */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2E7C */ _t9 = cpu->r[9] + cpu->r[10]; /* 027C2E7C */ cpu->r[12] = rbrew_read32(cpu->mem, _t9); /* 027C2E80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C2E84 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2E84 */ _t11 = _t10 & 0x00000001u; /* 027C2E84 */ if (_t11) goto L_027C2EBC; else goto L_027C2E88; L_027C2E88: ; // 0x27c2e88 /* 027C2E88 */ goto L_027C2E98; L_027C2E8C: ; // 0x27c2e8c /* 027C2E8C */ _t12 = cpu->r[9] + 0x00000000u; /* 027C2E8C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027C2E90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C2E94 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C2E94 */ _t14 = _t13 & 0x00000001u; /* 027C2E94 */ if (_t14) goto L_027C2EBC; else goto L_027C2E98; L_027C2E98: ; // 0x27c2e98 /* 027C2E98 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[6]); /* 027C2E9C */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2E9C */ _t16 = _t15 & 0x00000001u; /* 027C2E9C */ if (_t16) goto L_027C2EA0; else goto L_027C2EA8; L_027C2EA0: ; // 0x27c2ea0 /* 027C2EA0 */ cpu->r[7] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2EA4 */ cpu->r[9] = cpu->r[9] + cpu->r[7]; L_027C2EA8: ; // 0x27c2ea8 /* 027C2EA8 */ _t17 = cpu->r[9] + 0x00000000u; /* 027C2EA8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t17); /* 027C2EAC */ _t18 = cpu->r[3] + 0x0000000Cu; /* 027C2EAC */ cpu->r[8] = rbrew_read32(cpu->mem, _t18); /* 027C2EB0 */ _t19 = cpu->r[8] + 0x00000024u; /* 027C2EB0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t19); /* 027C2EB4 */ cpu->ctr = cpu->r[10]; /* 027C2EB8 */ rbrew_call_indirect(cpu, cpu->ctr); L_027C2EBC: ; // 0x27c2ebc /* 027C2EBC */ _t20 = cpu->r[29] + 0x00000174u; /* 027C2EBC */ cpu->r[12] = rbrew_read32(cpu->mem, _t20); /* 027C2EC0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[12]); /* 027C2EC4 */ _t21 = cpu->r[29] + 0x00000178u; /* 027C2EC4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21); /* 027C2EC8 */ _t22 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2EC8 */ _t23 = _t22 & 0x00000001u; /* 027C2EC8 */ if (_t23) goto L_027C2ECC; else goto L_027C2ED4; L_027C2ECC: ; // 0x27c2ecc /* 027C2ECC */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000001Cu); /* 027C2ED0 */ cpu->r[3] = cpu->r[3] + cpu->r[0]; L_027C2ED4: ; // 0x27c2ed4 /* 027C2ED4 */ cpu->r[4] = 0x10110000u; /* 027C2ED8 */ cpu->r[5] = cpu->r[30]; /* 027C2EDC */ cpu->r[4] = cpu->r[4] + 0xFFFFC0D8u; /* 027C2EE0 */ _t24 = cpu->cr[1] >> (0x00000001u & 31u); /* 027C2EE0 */ _t25 = _t24 & 0x00000001u; /* 027C2EE0 */ if (_t25) goto L_027C2EE4; // else: addr-0 trap, fall-through L_027C2EE4: ; // 0x27c2ee4 /* 027C2EE4 */ Gambit_fn_0282A5F4(cpu); /* 027C2EE8 */ _t26 = cpu->r[29] + 0x00000164u; /* 027C2EE8 */ cpu->r[9] = rbrew_read32(cpu->mem, _t26); /* 027C2EEC */ _t27 = cpu->r[29] + 0x00000168u; /* 027C2EEC */ cpu->r[31] = rbrew_read32(cpu->mem, _t27); /* 027C2EF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]); /* 027C2EF4 */ _t28 = cpu->r[29] + 0x00000184u; /* 027C2EF4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t28); /* 027C2EF8 */ _t29 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2EF8 */ _t30 = _t29 & 0x00000001u; /* 027C2EF8 */ if (_t30) goto L_027C2EFC; else goto L_027C2F04; L_027C2EFC: ; // 0x27c2efc /* 027C2EFC */ cpu->r[10] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2F00 */ cpu->r[31] = cpu->r[31] + cpu->r[10]; L_027C2F04: ; // 0x27c2f04 /* 027C2F04 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027C2F08 */ _t31 = cpu->r[29] + 0x00000188u; /* 027C2F08 */ cpu->r[11] = rbrew_read32(cpu->mem, _t31); /* 027C2F0C */ _t32 = cpu->r[29] + 0x00000174u; /* 027C2F0C */ cpu->r[0] = rbrew_read32(cpu->mem, _t32); /* 027C2F10 */ _t33 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F10 */ _t34 = _t33 & 0x00000001u; /* 027C2F10 */ if (_t34) goto L_027C2F14; else goto L_027C2F1C; L_027C2F14: ; // 0x27c2f14 /* 027C2F14 */ cpu->r[12] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2F18 */ cpu->r[11] = cpu->r[11] + cpu->r[12]; L_027C2F1C: ; // 0x27c2f1c /* 027C2F1C */ _t35 = cpu->r[29] + 0x00000178u; /* 027C2F1C */ cpu->r[4] = rbrew_read32(cpu->mem, _t35); /* 027C2F20 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[0]); /* 027C2F24 */ _t36 = cpu->r[11] + 0x00000000u; /* 027C2F24 */ cpu->r[3] = rbrew_read32(cpu->mem, _t36); /* 027C2F28 */ _t37 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F28 */ _t38 = _t37 & 0x00000001u; /* 027C2F28 */ if (_t38) goto L_027C2F2C; else goto L_027C2F34; L_027C2F2C: ; // 0x27c2f2c /* 027C2F2C */ cpu->r[5] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000001Cu); /* 027C2F30 */ cpu->r[4] = cpu->r[4] + cpu->r[5]; L_027C2F34: ; // 0x27c2f34 /* 027C2F34 */ _t39 = cpu->r[29] + 0x00000194u; /* 027C2F34 */ cpu->r[5] = rbrew_read32(cpu->mem, _t39); /* 027C2F38 */ cpu->r[7] = 0x00000000u; /* 027C2F3C */ cpu->r[6] = 0x00000001u; /* 027C2F40 */ Gambit_fn_028249F8(cpu); /* 027C2F44 */ _t40 = cpu->r[31] + 0x00000000u; /* 027C2F44 */ rbrew_write32(cpu->mem, _t40, cpu->r[3]); /* 027C2F48 */ _t41 = cpu->r[29] + 0x0000017Cu; /* 027C2F48 */ cpu->r[7] = rbrew_read32(cpu->mem, _t41); /* 027C2F4C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[7]); /* 027C2F50 */ _t42 = cpu->r[29] + 0x00000180u; /* 027C2F50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t42); /* 027C2F54 */ _t43 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F54 */ _t44 = _t43 & 0x00000001u; /* 027C2F54 */ if (_t44) goto L_027C2F58; else goto L_027C2F60; L_027C2F58: ; // 0x27c2f58 /* 027C2F58 */ cpu->r[0] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000001Cu); /* 027C2F5C */ cpu->r[3] = cpu->r[3] + cpu->r[0]; L_027C2F60: ; // 0x27c2f60 /* 027C2F60 */ cpu->r[4] = 0x10110000u; /* 027C2F64 */ cpu->r[5] = cpu->r[30]; /* 027C2F68 */ cpu->r[4] = cpu->r[4] + 0xFFFFC0C8u; /* 027C2F6C */ _t45 = cpu->cr[1] >> (0x00000001u & 31u); /* 027C2F6C */ _t46 = _t45 & 0x00000001u; /* 027C2F6C */ if (_t46) goto L_027C2F70; // else: addr-0 trap, fall-through L_027C2F70: ; // 0x27c2f70 /* 027C2F70 */ Gambit_fn_0282A5F4(cpu); /* 027C2F74 */ _t47 = cpu->r[29] + 0x0000016Cu; /* 027C2F74 */ cpu->r[11] = rbrew_read32(cpu->mem, _t47); /* 027C2F78 */ _t48 = cpu->r[29] + 0x00000170u; /* 027C2F78 */ cpu->r[31] = rbrew_read32(cpu->mem, _t48); /* 027C2F7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[11]); /* 027C2F80 */ _t49 = cpu->r[29] + 0x0000018Cu; /* 027C2F80 */ cpu->r[9] = rbrew_read32(cpu->mem, _t49); /* 027C2F84 */ _t50 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F84 */ _t51 = _t50 & 0x00000001u; /* 027C2F84 */ if (_t51) goto L_027C2F88; else goto L_027C2F90; L_027C2F88: ; // 0x27c2f88 /* 027C2F88 */ cpu->r[0] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2F8C */ cpu->r[31] = cpu->r[31] + cpu->r[0]; L_027C2F90: ; // 0x27c2f90 /* 027C2F90 */ _t52 = cpu->r[29] + 0x00000190u; /* 027C2F90 */ cpu->r[10] = rbrew_read32(cpu->mem, _t52); /* 027C2F94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[9]); /* 027C2F98 */ _t53 = cpu->r[29] + 0x0000017Cu; /* 027C2F98 */ cpu->r[5] = rbrew_read32(cpu->mem, _t53); /* 027C2F9C */ _t54 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2F9C */ _t55 = _t54 & 0x00000001u; /* 027C2F9C */ if (_t55) goto L_027C2FA0; else goto L_027C2FA8; L_027C2FA0: ; // 0x27c2fa0 /* 027C2FA0 */ cpu->r[11] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2FA4 */ cpu->r[10] = cpu->r[10] + cpu->r[11]; L_027C2FA8: ; // 0x27c2fa8 /* 027C2FA8 */ _t56 = cpu->r[29] + 0x00000180u; /* 027C2FA8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t56); /* 027C2FAC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[5]); /* 027C2FB0 */ _t57 = cpu->r[29] + 0x00000164u; /* 027C2FB0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t57); /* 027C2FB4 */ _t58 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2FB4 */ _t59 = _t58 & 0x00000001u; /* 027C2FB4 */ if (_t59) goto L_027C2FB8; else goto L_027C2FC0; L_027C2FB8: ; // 0x27c2fb8 /* 027C2FB8 */ cpu->r[6] = (uint32_t)((int32_t)cpu->r[30] * (int32_t)0x0000001Cu); /* 027C2FBC */ cpu->r[4] = cpu->r[4] + cpu->r[6]; L_027C2FC0: ; // 0x27c2fc0 /* 027C2FC0 */ _t60 = cpu->r[29] + 0x00000168u; /* 027C2FC0 */ cpu->r[12] = rbrew_read32(cpu->mem, _t60); /* 027C2FC4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[30], cpu->r[7]); /* 027C2FC8 */ _t61 = cpu->r[10] + 0x00000000u; /* 027C2FC8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t61); /* 027C2FCC */ _t62 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C2FCC */ _t63 = _t62 & 0x00000001u; /* 027C2FCC */ if (_t63) goto L_027C2FD0; else goto L_027C2FD8; L_027C2FD0: ; // 0x27c2fd0 /* 027C2FD0 */ cpu->r[8] = rbrew_rlwinm(cpu->r[30], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C2FD4 */ cpu->r[12] = cpu->r[12] + cpu->r[8]; L_027C2FD8: ; // 0x27c2fd8 /* 027C2FD8 */ _t64 = cpu->r[12] + 0x00000000u; /* 027C2FD8 */ cpu->r[5] = rbrew_read32(cpu->mem, _t64); /* 027C2FDC */ cpu->r[7] = 0x00000000u; /* 027C2FE0 */ cpu->r[6] = 0x00000001u; /* 027C2FE4 */ Gambit_fn_028249F8(cpu); /* 027C2FE8 */ _t65 = cpu->r[31] + 0x00000000u; /* 027C2FE8 */ rbrew_write32(cpu->mem, _t65, cpu->r[3]); /* 027C2FEC */ _t66 = cpu->r[1] + 0x0000000Cu; /* 027C2FEC */ cpu->r[29] = rbrew_read32(cpu->mem, _t66); /* 027C2FF0 */ _t67 = cpu->r[1] + 0x0000001Cu; /* 027C2FF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t67); /* 027C2FF4 */ _t68 = cpu->r[1] + 0x00000010u; /* 027C2FF4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t68); /* 027C2FF8 */ cpu->lr = cpu->r[0]; /* 027C2FFC */ _t69 = cpu->r[1] + 0x00000014u; /* 027C2FFC */ cpu->r[31] = rbrew_read32(cpu->mem, _t69); /* 027C3000 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C3004 */ return; } // fn_027C3008 @ 0x27c3008 void Gambit_fn_027C3008(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36; L_027C3008: ; // 0x27c3008 /* 027C3008 */ cpu->r[0] = cpu->lr; /* 027C300C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C300C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C300C */ cpu->r[1] = _t0; /* 027C3010 */ _t1 = cpu->r[1] + 0x00000008u; /* 027C3010 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C3014 */ cpu->r[30] = cpu->r[3]; /* 027C3018 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C3018 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C301C */ _t3 = cpu->r[1] + 0x00000014u; /* 027C301C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C3020 */ _t4 = cpu->r[30] + 0x0000015Cu; /* 027C3020 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4); /* 027C3024 */ cpu->r[31] = cpu->r[4]; /* 027C3028 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[6]); /* 027C302C */ _t5 = cpu->r[30] + 0x00000160u; /* 027C302C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027C3030 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3030 */ _t7 = _t6 & 0x00000001u; /* 027C3030 */ if (_t7) goto L_027C3034; else goto L_027C303C; L_027C3034: ; // 0x27c3034 /* 027C3034 */ cpu->r[7] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C3038 */ cpu->r[12] = cpu->r[12] + cpu->r[7]; L_027C303C: ; // 0x27c303c /* 027C303C */ _t8 = cpu->r[12] + 0x00000000u; /* 027C303C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8); /* 027C3040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3044 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3044 */ _t10 = _t9 & 0x00000001u; /* 027C3044 */ if (_t10) goto L_027C30DC; else goto L_027C3048; L_027C3048: ; // 0x27c3048 /* 027C3048 */ _t11 = cpu->r[30] + 0x000001A4u; /* 027C3048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027C304C */ cpu->r[12] = 0x00000000u; /* 027C3050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027C3054 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3054 */ _t13 = _t12 & 0x00000001u; /* 027C3054 */ if (_t13) goto L_027C3058; else goto L_027C30AC; L_027C3058: ; // 0x27c3058 /* 027C3058 */ cpu->r[9] = 0x00000000u; /* 027C305C */ cpu->r[11] = cpu->r[9]; L_027C3060: ; // 0x27c3060 /* 027C3060 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]); /* 027C3064 */ _t14 = cpu->r[30] + 0x000001A8u; /* 027C3064 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14); /* 027C3068 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3068 */ _t16 = _t15 & 0x00000001u; /* 027C3068 */ if (_t16) goto L_027C306C; else goto L_027C307C; L_027C306C: ; // 0x27c306c /* 027C306C */ _t17 = cpu->r[10] + cpu->r[9]; /* 027C306C */ cpu->r[8] = rbrew_read32(cpu->mem, _t17); /* 027C3070 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]); /* 027C3074 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3074 */ _t19 = _t18 & 0x00000001u; /* 027C3074 */ if (_t19) goto L_027C3078; else goto L_027C309C; L_027C3078: ; // 0x27c3078 /* 027C3078 */ goto L_027C3088; L_027C307C: ; // 0x27c307c /* 027C307C */ _t20 = cpu->r[10] + 0x00000000u; /* 027C307C */ cpu->r[8] = rbrew_read32(cpu->mem, _t20); /* 027C3080 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]); /* 027C3084 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3084 */ _t22 = _t21 & 0x00000001u; /* 027C3084 */ if (_t22) goto L_027C3088; else goto L_027C309C; L_027C3088: ; // 0x27c3088 /* 027C3088 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]); /* 027C308C */ _t23 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C308C */ _t24 = _t23 & 0x00000001u; /* 027C308C */ if (_t24) goto L_027C3090; else goto L_027C3094; L_027C3090: ; // 0x27c3090 /* 027C3090 */ cpu->r[10] = cpu->r[10] + cpu->r[9]; L_027C3094: ; // 0x27c3094 /* 027C3094 */ _t25 = cpu->r[10] + 0x00000000u; /* 027C3094 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]); /* 027C3098 */ _t26 = cpu->r[30] + 0x000001A4u; /* 027C3098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); L_027C309C: ; // 0x27c309c /* 027C309C */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027C30A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027C30A4 */ cpu->r[9] = cpu->r[9] + 0x00000004u; /* 027C30A8 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C30A8 */ _t28 = _t27 & 0x00000001u; /* 027C30A8 */ if (_t28) goto L_027C3060; else goto L_027C30AC; L_027C30AC: ; // 0x27c30ac /* 027C30AC */ Gambit_fn_027C2A20(cpu); /* 027C30B0 */ cpu->r[3] = cpu->r[30]; /* 027C30B4 */ cpu->r[4] = cpu->r[31]; /* 027C30B8 */ Gambit_fn_027C2E48(cpu); /* 027C30BC */ _t29 = cpu->r[30] + 0x0000015Cu; /* 027C30BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027C30C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027C30C4 */ _t30 = cpu->r[30] + 0x00000160u; /* 027C30C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30); /* 027C30C8 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C30C8 */ _t32 = _t31 & 0x00000001u; /* 027C30C8 */ if (_t32) goto L_027C30CC; else goto L_027C30D4; L_027C30CC: ; // 0x27c30cc /* 027C30CC */ cpu->r[8] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C30D0 */ cpu->r[11] = cpu->r[11] + cpu->r[8]; L_027C30D4: ; // 0x27c30d4 /* 027C30D4 */ cpu->r[10] = 0x00000000u; /* 027C30D8 */ _t33 = cpu->r[11] + 0x00000000u; /* 027C30D8 */ rbrew_write32(cpu->mem, _t33, cpu->r[10]); L_027C30DC: ; // 0x27c30dc /* 027C30DC */ _t34 = cpu->r[1] + 0x00000014u; /* 027C30DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027C30E0 */ _t35 = cpu->r[1] + 0x00000008u; /* 027C30E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35); /* 027C30E4 */ cpu->lr = cpu->r[0]; /* 027C30E8 */ _t36 = cpu->r[1] + 0x0000000Cu; /* 027C30E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36); /* 027C30EC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C30F0 */ return; } // fn_027C300C @ 0x27c300c void Gambit_fn_027C300C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36; L_027C300C: ; // 0x27c300c /* 027C300C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C300C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C300C */ cpu->r[1] = _t0; /* 027C3010 */ _t1 = cpu->r[1] + 0x00000008u; /* 027C3010 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C3014 */ cpu->r[30] = cpu->r[3]; /* 027C3018 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C3018 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C301C */ _t3 = cpu->r[1] + 0x00000014u; /* 027C301C */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C3020 */ _t4 = cpu->r[30] + 0x0000015Cu; /* 027C3020 */ cpu->r[6] = rbrew_read32(cpu->mem, _t4); /* 027C3024 */ cpu->r[31] = cpu->r[4]; /* 027C3028 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[6]); /* 027C302C */ _t5 = cpu->r[30] + 0x00000160u; /* 027C302C */ cpu->r[12] = rbrew_read32(cpu->mem, _t5); /* 027C3030 */ _t6 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3030 */ _t7 = _t6 & 0x00000001u; /* 027C3030 */ if (_t7) goto L_027C3034; else goto L_027C303C; L_027C3034: ; // 0x27c3034 /* 027C3034 */ cpu->r[7] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C3038 */ cpu->r[12] = cpu->r[12] + cpu->r[7]; L_027C303C: ; // 0x27c303c /* 027C303C */ _t8 = cpu->r[12] + 0x00000000u; /* 027C303C */ cpu->r[3] = rbrew_read32(cpu->mem, _t8); /* 027C3040 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3044 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3044 */ _t10 = _t9 & 0x00000001u; /* 027C3044 */ if (_t10) goto L_027C30DC; else goto L_027C3048; L_027C3048: ; // 0x27c3048 /* 027C3048 */ _t11 = cpu->r[30] + 0x000001A4u; /* 027C3048 */ cpu->r[0] = rbrew_read32(cpu->mem, _t11); /* 027C304C */ cpu->r[12] = 0x00000000u; /* 027C3050 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027C3054 */ _t12 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3054 */ _t13 = _t12 & 0x00000001u; /* 027C3054 */ if (_t13) goto L_027C3058; else goto L_027C30AC; L_027C3058: ; // 0x27c3058 /* 027C3058 */ cpu->r[9] = 0x00000000u; /* 027C305C */ cpu->r[11] = cpu->r[9]; L_027C3060: ; // 0x27c3060 /* 027C3060 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]); /* 027C3064 */ _t14 = cpu->r[30] + 0x000001A8u; /* 027C3064 */ cpu->r[10] = rbrew_read32(cpu->mem, _t14); /* 027C3068 */ _t15 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3068 */ _t16 = _t15 & 0x00000001u; /* 027C3068 */ if (_t16) goto L_027C306C; else goto L_027C307C; L_027C306C: ; // 0x27c306c /* 027C306C */ _t17 = cpu->r[10] + cpu->r[9]; /* 027C306C */ cpu->r[8] = rbrew_read32(cpu->mem, _t17); /* 027C3070 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]); /* 027C3074 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3074 */ _t19 = _t18 & 0x00000001u; /* 027C3074 */ if (_t19) goto L_027C3078; else goto L_027C309C; L_027C3078: ; // 0x27c3078 /* 027C3078 */ goto L_027C3088; L_027C307C: ; // 0x27c307c /* 027C307C */ _t20 = cpu->r[10] + 0x00000000u; /* 027C307C */ cpu->r[8] = rbrew_read32(cpu->mem, _t20); /* 027C3080 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[3], cpu->r[8]); /* 027C3084 */ _t21 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3084 */ _t22 = _t21 & 0x00000001u; /* 027C3084 */ if (_t22) goto L_027C3088; else goto L_027C309C; L_027C3088: ; // 0x27c3088 /* 027C3088 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[0]); /* 027C308C */ _t23 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C308C */ _t24 = _t23 & 0x00000001u; /* 027C308C */ if (_t24) goto L_027C3090; else goto L_027C3094; L_027C3090: ; // 0x27c3090 /* 027C3090 */ cpu->r[10] = cpu->r[10] + cpu->r[9]; L_027C3094: ; // 0x27c3094 /* 027C3094 */ _t25 = cpu->r[10] + 0x00000000u; /* 027C3094 */ rbrew_write32(cpu->mem, _t25, cpu->r[11]); /* 027C3098 */ _t26 = cpu->r[30] + 0x000001A4u; /* 027C3098 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); L_027C309C: ; // 0x27c309c /* 027C309C */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027C30A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], cpu->r[0]); /* 027C30A4 */ cpu->r[9] = cpu->r[9] + 0x00000004u; /* 027C30A8 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C30A8 */ _t28 = _t27 & 0x00000001u; /* 027C30A8 */ if (_t28) goto L_027C3060; else goto L_027C30AC; L_027C30AC: ; // 0x27c30ac /* 027C30AC */ Gambit_fn_027C2A20(cpu); /* 027C30B0 */ cpu->r[3] = cpu->r[30]; /* 027C30B4 */ cpu->r[4] = cpu->r[31]; /* 027C30B8 */ Gambit_fn_027C2E48(cpu); /* 027C30BC */ _t29 = cpu->r[30] + 0x0000015Cu; /* 027C30BC */ cpu->r[0] = rbrew_read32(cpu->mem, _t29); /* 027C30C0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[0]); /* 027C30C4 */ _t30 = cpu->r[30] + 0x00000160u; /* 027C30C4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30); /* 027C30C8 */ _t31 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C30C8 */ _t32 = _t31 & 0x00000001u; /* 027C30C8 */ if (_t32) goto L_027C30CC; else goto L_027C30D4; L_027C30CC: ; // 0x27c30cc /* 027C30CC */ cpu->r[8] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C30D0 */ cpu->r[11] = cpu->r[11] + cpu->r[8]; L_027C30D4: ; // 0x27c30d4 /* 027C30D4 */ cpu->r[10] = 0x00000000u; /* 027C30D8 */ _t33 = cpu->r[11] + 0x00000000u; /* 027C30D8 */ rbrew_write32(cpu->mem, _t33, cpu->r[10]); L_027C30DC: ; // 0x27c30dc /* 027C30DC */ _t34 = cpu->r[1] + 0x00000014u; /* 027C30DC */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027C30E0 */ _t35 = cpu->r[1] + 0x00000008u; /* 027C30E0 */ cpu->r[30] = rbrew_read32(cpu->mem, _t35); /* 027C30E4 */ cpu->lr = cpu->r[0]; /* 027C30E8 */ _t36 = cpu->r[1] + 0x0000000Cu; /* 027C30E8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t36); /* 027C30EC */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C30F0 */ return; } // fn_027C30F8 @ 0x27c30f8 void Gambit_fn_027C30F8(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_027C30F8: ; // 0x27c30f8 /* 027C30F8 */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C30F8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C30F8 */ cpu->r[1] = _t0; /* 027C30FC */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C30FC */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027C3100 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C3100 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027C3104 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C3104 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C3108 */ _t4 = cpu->r[1] + 0x00000010u; /* 027C3108 */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027C310C */ cpu->r[31] = 0x101D0000u; /* 027C3110 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027C3110 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027C3114 */ _t6 = cpu->r[31] + 0xFFFF93D8u; /* 027C3114 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6); /* 027C3118 */ _t7 = cpu->r[31] + 0x00000000u; /* 027C3118 */ cpu->r[10] = rbrew_read32(cpu->mem, _t7); /* 027C311C */ _t8 = cpu->r[10] + 0x00000024u; /* 027C311C */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027C3120 */ cpu->r[28] = cpu->r[3]; /* 027C3124 */ cpu->ctr = cpu->r[11]; /* 027C3128 */ cpu->r[29] = 0x00000000u; /* 027C312C */ cpu->r[3] = cpu->r[31]; /* 027C3130 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3134 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[3]); /* 027C3138 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3138 */ _t10 = _t9 & 0x00000001u; /* 027C3138 */ if (_t10) goto L_027C313C; else goto L_027C3190; L_027C313C: ; // 0x27c313c /* 027C313C */ cpu->r[30] = 0x00000000u; L_027C3140: ; // 0x27c3140 /* 027C3140 */ _t11 = cpu->r[28] + 0x0000015Cu; /* 027C3140 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11); /* 027C3144 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[12]); /* 027C3148 */ _t12 = cpu->r[28] + 0x00000160u; /* 027C3148 */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027C314C */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C314C */ _t14 = _t13 & 0x00000001u; /* 027C314C */ if (_t14) goto L_027C3150; else goto L_027C3154; L_027C3150: ; // 0x27c3150 /* 027C3150 */ cpu->r[12] = cpu->r[12] + cpu->r[30]; L_027C3154: ; // 0x27c3154 /* 027C3154 */ _t15 = cpu->r[12] + 0x00000000u; /* 027C3154 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027C3158 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C315C */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C315C */ _t17 = _t16 & 0x00000001u; /* 027C315C */ if (_t17) goto L_027C316C; else goto L_027C3160; L_027C3160: ; // 0x27c3160 /* 027C3160 */ cpu->r[3] = cpu->r[28]; /* 027C3164 */ cpu->r[4] = cpu->r[29]; /* 027C3168 */ Gambit_fn_027C3008(cpu); L_027C316C: ; // 0x27c316c /* 027C316C */ _t18 = cpu->r[31] + 0x00000000u; /* 027C316C */ cpu->r[10] = rbrew_read32(cpu->mem, _t18); /* 027C3170 */ _t19 = cpu->r[10] + 0x00000024u; /* 027C3170 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027C3174 */ cpu->ctr = cpu->r[0]; /* 027C3178 */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027C317C */ cpu->r[30] = cpu->r[30] + 0x00000004u; /* 027C3180 */ cpu->r[3] = cpu->r[31]; /* 027C3184 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3188 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[3]); /* 027C318C */ _t20 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C318C */ _t21 = _t20 & 0x00000001u; /* 027C318C */ if (_t21) goto L_027C3140; else goto L_027C3190; L_027C3190: ; // 0x27c3190 /* 027C3190 */ _t22 = cpu->r[1] + 0x00000008u; /* 027C3190 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22); /* 027C3194 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027C3194 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23); /* 027C3198 */ _t24 = cpu->r[1] + 0x0000001Cu; /* 027C3198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027C319C */ _t25 = cpu->r[1] + 0x00000010u; /* 027C319C */ cpu->r[30] = rbrew_read32(cpu->mem, _t25); /* 027C31A0 */ cpu->lr = cpu->r[0]; /* 027C31A4 */ _t26 = cpu->r[1] + 0x00000014u; /* 027C31A4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027C31A8 */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C31AC */ return; } // fn_027C31B0 @ 0x27c31b0 void Gambit_fn_027C31B0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7; L_027C2A2C: ; // 0x27c2a2c /* 027C2A2C */ cpu->r[0] = 0x00000001u; /* 027C2A30 */ _t0 = cpu->r[3] + 0x0000000Cu; /* 027C2A30 */ rbrew_write8(cpu->mem, _t0, (uint8_t)cpu->r[0]); /* 027C2A34 */ return; L_027C31B0: ; // 0x27c31b0 /* 027C31B0 */ _t1 = cpu->r[3] + 0x0000015Cu; /* 027C31B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t1); /* 027C31B4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[0]); /* 027C31B8 */ _t2 = cpu->r[3] + 0x00000160u; /* 027C31B8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t2); /* 027C31BC */ _t3 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C31BC */ _t4 = _t3 & 0x00000001u; /* 027C31BC */ if (_t4) goto L_027C31C0; else goto L_027C31C8; L_027C31C0: ; // 0x27c31c0 /* 027C31C0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C31C4 */ cpu->r[12] = cpu->r[12] + cpu->r[0]; L_027C31C8: ; // 0x27c31c8 /* 027C31C8 */ _t5 = cpu->r[12] + 0x00000000u; /* 027C31C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t5); /* 027C31CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C31D0 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C31D0 */ _t7 = _t6 & 0x00000001u; /* 027C31D0 */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C31D0 */ goto L_027C31D4; L_027C31D4: ; // 0x27c31d4 /* 027C31D4 */ goto L_027C2A2C; } // fn_027C31D8 @ 0x27c31d8 void Gambit_fn_027C31D8(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_027C31D8: ; // 0x27c31d8 /* 027C31D8 */ cpu->r[0] = cpu->lr; /* 027C31DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C31DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C31DC */ cpu->r[1] = _t0; /* 027C31E0 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C31E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027C31E4 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C31E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027C31E8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C31E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C31EC */ _t4 = cpu->r[1] + 0x00000010u; /* 027C31EC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027C31F0 */ cpu->r[31] = 0x101D0000u; /* 027C31F4 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027C31F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027C31F8 */ _t6 = cpu->r[31] + 0xFFFF93D8u; /* 027C31F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6); /* 027C31FC */ _t7 = cpu->r[31] + 0x00000000u; /* 027C31FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t7); /* 027C3200 */ _t8 = cpu->r[10] + 0x00000024u; /* 027C3200 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027C3204 */ cpu->r[28] = cpu->r[3]; /* 027C3208 */ cpu->ctr = cpu->r[11]; /* 027C320C */ cpu->r[29] = 0x00000000u; /* 027C3210 */ cpu->r[3] = cpu->r[31]; /* 027C3214 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[3]); /* 027C321C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C321C */ _t10 = _t9 & 0x00000001u; /* 027C321C */ if (_t10) goto L_027C3220; else goto L_027C3274; L_027C3220: ; // 0x27c3220 /* 027C3220 */ cpu->r[30] = 0x00000000u; L_027C3224: ; // 0x27c3224 /* 027C3224 */ _t11 = cpu->r[28] + 0x0000015Cu; /* 027C3224 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11); /* 027C3228 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[12]); /* 027C322C */ _t12 = cpu->r[28] + 0x00000160u; /* 027C322C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027C3230 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3230 */ _t14 = _t13 & 0x00000001u; /* 027C3230 */ if (_t14) goto L_027C3234; else goto L_027C3238; L_027C3234: ; // 0x27c3234 /* 027C3234 */ cpu->r[12] = cpu->r[12] + cpu->r[30]; L_027C3238: ; // 0x27c3238 /* 027C3238 */ _t15 = cpu->r[12] + 0x00000000u; /* 027C3238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027C323C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C3240 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3240 */ _t17 = _t16 & 0x00000001u; /* 027C3240 */ if (_t17) goto L_027C3250; else goto L_027C3244; L_027C3244: ; // 0x27c3244 /* 027C3244 */ cpu->r[3] = cpu->r[28]; /* 027C3248 */ cpu->r[4] = cpu->r[29]; /* 027C324C */ Gambit_fn_027C31B0(cpu); L_027C3250: ; // 0x27c3250 /* 027C3250 */ _t18 = cpu->r[31] + 0x00000000u; /* 027C3250 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18); /* 027C3254 */ _t19 = cpu->r[10] + 0x00000024u; /* 027C3254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027C3258 */ cpu->ctr = cpu->r[0]; /* 027C325C */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027C3260 */ cpu->r[30] = cpu->r[30] + 0x00000004u; /* 027C3264 */ cpu->r[3] = cpu->r[31]; /* 027C3268 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C326C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[3]); /* 027C3270 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3270 */ _t21 = _t20 & 0x00000001u; /* 027C3270 */ if (_t21) goto L_027C3224; else goto L_027C3274; L_027C3274: ; // 0x27c3274 /* 027C3274 */ _t22 = cpu->r[1] + 0x00000008u; /* 027C3274 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22); /* 027C3278 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027C3278 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23); /* 027C327C */ _t24 = cpu->r[1] + 0x0000001Cu; /* 027C327C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027C3280 */ _t25 = cpu->r[1] + 0x00000010u; /* 027C3280 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25); /* 027C3284 */ cpu->lr = cpu->r[0]; /* 027C3288 */ _t26 = cpu->r[1] + 0x00000014u; /* 027C3288 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027C328C */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C3290 */ return; } // fn_027C31DC @ 0x27c31dc void Gambit_fn_027C31DC(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_027C31DC: ; // 0x27c31dc /* 027C31DC */ _t0 = cpu->r[1] + 0xFFFFFFE8u; /* 027C31DC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C31DC */ cpu->r[1] = _t0; /* 027C31E0 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C31E0 */ rbrew_write32(cpu->mem, _t1, cpu->r[29]); /* 027C31E4 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C31E4 */ rbrew_write32(cpu->mem, _t2, cpu->r[28]); /* 027C31E8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C31E8 */ rbrew_write32(cpu->mem, _t3, cpu->r[31]); /* 027C31EC */ _t4 = cpu->r[1] + 0x00000010u; /* 027C31EC */ rbrew_write32(cpu->mem, _t4, cpu->r[30]); /* 027C31F0 */ cpu->r[31] = 0x101D0000u; /* 027C31F4 */ _t5 = cpu->r[1] + 0x0000001Cu; /* 027C31F4 */ rbrew_write32(cpu->mem, _t5, cpu->r[0]); /* 027C31F8 */ _t6 = cpu->r[31] + 0xFFFF93D8u; /* 027C31F8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t6); /* 027C31FC */ _t7 = cpu->r[31] + 0x00000000u; /* 027C31FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t7); /* 027C3200 */ _t8 = cpu->r[10] + 0x00000024u; /* 027C3200 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027C3204 */ cpu->r[28] = cpu->r[3]; /* 027C3208 */ cpu->ctr = cpu->r[11]; /* 027C320C */ cpu->r[29] = 0x00000000u; /* 027C3210 */ cpu->r[3] = cpu->r[31]; /* 027C3214 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3218 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[3]); /* 027C321C */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C321C */ _t10 = _t9 & 0x00000001u; /* 027C321C */ if (_t10) goto L_027C3220; else goto L_027C3274; L_027C3220: ; // 0x27c3220 /* 027C3220 */ cpu->r[30] = 0x00000000u; L_027C3224: ; // 0x27c3224 /* 027C3224 */ _t11 = cpu->r[28] + 0x0000015Cu; /* 027C3224 */ cpu->r[12] = rbrew_read32(cpu->mem, _t11); /* 027C3228 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[29], cpu->r[12]); /* 027C322C */ _t12 = cpu->r[28] + 0x00000160u; /* 027C322C */ cpu->r[12] = rbrew_read32(cpu->mem, _t12); /* 027C3230 */ _t13 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3230 */ _t14 = _t13 & 0x00000001u; /* 027C3230 */ if (_t14) goto L_027C3234; else goto L_027C3238; L_027C3234: ; // 0x27c3234 /* 027C3234 */ cpu->r[12] = cpu->r[12] + cpu->r[30]; L_027C3238: ; // 0x27c3238 /* 027C3238 */ _t15 = cpu->r[12] + 0x00000000u; /* 027C3238 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027C323C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C3240 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3240 */ _t17 = _t16 & 0x00000001u; /* 027C3240 */ if (_t17) goto L_027C3250; else goto L_027C3244; L_027C3244: ; // 0x27c3244 /* 027C3244 */ cpu->r[3] = cpu->r[28]; /* 027C3248 */ cpu->r[4] = cpu->r[29]; /* 027C324C */ Gambit_fn_027C31B0(cpu); L_027C3250: ; // 0x27c3250 /* 027C3250 */ _t18 = cpu->r[31] + 0x00000000u; /* 027C3250 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18); /* 027C3254 */ _t19 = cpu->r[10] + 0x00000024u; /* 027C3254 */ cpu->r[0] = rbrew_read32(cpu->mem, _t19); /* 027C3258 */ cpu->ctr = cpu->r[0]; /* 027C325C */ cpu->r[29] = cpu->r[29] + 0x00000001u; /* 027C3260 */ cpu->r[30] = cpu->r[30] + 0x00000004u; /* 027C3264 */ cpu->r[3] = cpu->r[31]; /* 027C3268 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C326C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[29], cpu->r[3]); /* 027C3270 */ _t20 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3270 */ _t21 = _t20 & 0x00000001u; /* 027C3270 */ if (_t21) goto L_027C3224; else goto L_027C3274; L_027C3274: ; // 0x27c3274 /* 027C3274 */ _t22 = cpu->r[1] + 0x00000008u; /* 027C3274 */ cpu->r[28] = rbrew_read32(cpu->mem, _t22); /* 027C3278 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 027C3278 */ cpu->r[29] = rbrew_read32(cpu->mem, _t23); /* 027C327C */ _t24 = cpu->r[1] + 0x0000001Cu; /* 027C327C */ cpu->r[0] = rbrew_read32(cpu->mem, _t24); /* 027C3280 */ _t25 = cpu->r[1] + 0x00000010u; /* 027C3280 */ cpu->r[30] = rbrew_read32(cpu->mem, _t25); /* 027C3284 */ cpu->lr = cpu->r[0]; /* 027C3288 */ _t26 = cpu->r[1] + 0x00000014u; /* 027C3288 */ cpu->r[31] = rbrew_read32(cpu->mem, _t26); /* 027C328C */ cpu->r[1] = cpu->r[1] + 0x00000018u; /* 027C3290 */ return; } // fn_027C3294 @ 0x27c3294 void Gambit_fn_027C3294(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4; L_027C3294: ; // 0x27c3294 /* 027C3294 */ goto L_02C6DE84; L_02C6DE84: ; // 0x2c6de84 /* 02C6DE84 */ cpu->r[0] = cpu->lr; /* 02C6DE88 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 02C6DE88 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 02C6DE88 */ cpu->r[1] = _t0; /* 02C6DE8C */ _t1 = cpu->r[1] + 0x0000000Cu; /* 02C6DE8C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 02C6DE90 */ _t2 = cpu->r[1] + 0x00000014u; /* 02C6DE90 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 02C6DE94 */ cpu->r[0] = cpu->r[3] + 0xFFFFFFFFu; /* 02C6DE98 */ cpu->r[31] = cpu->r[3] - cpu->r[0]; /* 02C6DE9C */ cpu->r[3] = cpu->r[31]; /* 02C6DEA0 */ Gambit_fn_02C6FA1C(cpu); /* 02C6DEA4 */ cpu->r[3] = cpu->r[31]; /* 02C6DEA8 */ Gambit_fn_02C6FA28(cpu); /* 02C6DEAC */ _t3 = cpu->r[1] + 0x00000014u; /* 02C6DEAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 02C6DEB0 */ _t4 = cpu->r[1] + 0x0000000Cu; /* 02C6DEB0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t4); /* 02C6DEB4 */ cpu->lr = cpu->r[0]; /* 02C6DEB8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 02C6DEBC */ return; } // fn_027C3298 @ 0x27c3298 void Gambit_fn_027C3298(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; L_027C3298: ; // 0x27c3298 /* 027C3298 */ cpu->r[0] = cpu->lr; /* 027C329C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C329C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C329C */ cpu->r[1] = _t0; /* 027C32A0 */ _t1 = cpu->r[1] + 0x00000008u; /* 027C32A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C32A4 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C32A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C32A8 */ cpu->r[31] = cpu->r[3]; /* 027C32A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C32AC */ cpu->r[30] = cpu->r[4]; /* 027C32B0 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C32B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C32B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C32B4 */ _t5 = _t4 & 0x00000001u; /* 027C32B4 */ if (_t5) goto L_027C32B8; else goto L_027C32C8; L_027C32B8: ; // 0x27c32b8 /* 027C32B8 */ cpu->r[3] = 0x000001ACu; /* 027C32BC */ Gambit_fn_02801A78(cpu); /* 027C32C0 */ cpu->r[31] = cpu->r[3]; /* 027C32C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C32C4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C32C4 */ _t7 = _t6 & 0x00000001u; /* 027C32C4 */ if (_t7) goto L_027C3470; else goto L_027C32C8; L_027C32C8: ; // 0x27c32c8 /* 027C32C8 */ cpu->r[5] = 0x10110000u; /* 027C32CC */ cpu->r[4] = cpu->r[30]; /* 027C32D0 */ cpu->r[5] = cpu->r[5] + 0xFFFFC0E4u; /* 027C32D4 */ cpu->r[3] = cpu->r[31]; /* 027C32D8 */ Gambit_fn_02798BA4(cpu); /* 027C32DC */ cpu->r[3] = cpu->r[31] + 0x00000150u; /* 027C32DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C32E0 */ cpu->r[30] = 0x00000000u; /* 027C32E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C32E4 */ _t9 = _t8 & 0x00000001u; /* 027C32E4 */ if (_t9) goto L_027C32E8; else goto L_027C32F8; L_027C32E8: ; // 0x27c32e8 /* 027C32E8 */ cpu->r[3] = 0x00000008u; /* 027C32EC */ Gambit_fn_02801A78(cpu); /* 027C32F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C32F4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C32F4 */ _t11 = _t10 & 0x00000001u; /* 027C32F4 */ if (_t11) goto L_027C3308; else goto L_027C32F8; L_027C32F8: ; // 0x27c32f8 /* 027C32F8 */ cpu->r[11] = 0x10110000u; /* 027C32FC */ _t12 = cpu->r[3] + 0x00000000u; /* 027C32FC */ rbrew_write32(cpu->mem, _t12, cpu->r[30]); /* 027C3300 */ cpu->r[11] = cpu->r[11] + 0xFFFFC068u; /* 027C3304 */ _t13 = cpu->r[3] + 0x00000004u; /* 027C3304 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]); L_027C3308: ; // 0x27c3308 /* 027C3308 */ cpu->r[12] = 0x10110000u; /* 027C330C */ _t14 = cpu->r[31] + 0x00000158u; /* 027C330C */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[30]); /* 027C3310 */ cpu->r[0] = 0x10110000u; /* 027C3314 */ cpu->r[12] = cpu->r[12] + 0xFFFFC0F8u; /* 027C3318 */ cpu->r[0] = cpu->r[0] + 0xFFFFC1C0u; /* 027C331C */ _t15 = cpu->r[31] + 0x00000070u; /* 027C331C */ rbrew_write32(cpu->mem, _t15, cpu->r[12]); /* 027C3320 */ cpu->r[12] = 0x10110000u; /* 027C3324 */ _t16 = cpu->r[31] + 0x00000020u; /* 027C3324 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027C3328 */ cpu->r[12] = cpu->r[12] + 0xFFFFC1D0u; /* 027C332C */ cpu->r[3] = cpu->r[31] + 0x0000015Cu; /* 027C332C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3330 */ _t17 = cpu->r[31] + 0x00000154u; /* 027C3330 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]); /* 027C3334 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3334 */ _t19 = _t18 & 0x00000001u; /* 027C3334 */ if (_t19) goto L_027C3338; else goto L_027C3348; L_027C3338: ; // 0x27c3338 /* 027C3338 */ cpu->r[3] = 0x00000008u; /* 027C333C */ Gambit_fn_02801A78(cpu); /* 027C3340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3344 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3344 */ _t21 = _t20 & 0x00000001u; /* 027C3344 */ if (_t21) goto L_027C3350; else goto L_027C3348; L_027C3348: ; // 0x27c3348 /* 027C3348 */ _t22 = cpu->r[3] + 0x00000004u; /* 027C3348 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]); /* 027C334C */ _t23 = cpu->r[3] + 0x00000000u; /* 027C334C */ rbrew_write32(cpu->mem, _t23, cpu->r[30]); L_027C3350: ; // 0x27c3350 /* 027C3350 */ cpu->r[3] = cpu->r[31] + 0x00000164u; /* 027C3350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3354 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3354 */ _t25 = _t24 & 0x00000001u; /* 027C3354 */ if (_t25) goto L_027C3358; else goto L_027C3368; L_027C3358: ; // 0x27c3358 /* 027C3358 */ cpu->r[3] = 0x00000008u; /* 027C335C */ Gambit_fn_02801A78(cpu); /* 027C3360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3364 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3364 */ _t27 = _t26 & 0x00000001u; /* 027C3364 */ if (_t27) goto L_027C3370; else goto L_027C3368; L_027C3368: ; // 0x27c3368 /* 027C3368 */ _t28 = cpu->r[3] + 0x00000004u; /* 027C3368 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]); /* 027C336C */ _t29 = cpu->r[3] + 0x00000000u; /* 027C336C */ rbrew_write32(cpu->mem, _t29, cpu->r[30]); L_027C3370: ; // 0x27c3370 /* 027C3370 */ cpu->r[3] = cpu->r[31] + 0x0000016Cu; /* 027C3370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3374 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3374 */ _t31 = _t30 & 0x00000001u; /* 027C3374 */ if (_t31) goto L_027C3378; else goto L_027C3388; L_027C3378: ; // 0x27c3378 /* 027C3378 */ cpu->r[3] = 0x00000008u; /* 027C337C */ Gambit_fn_02801A78(cpu); /* 027C3380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3384 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3384 */ _t33 = _t32 & 0x00000001u; /* 027C3384 */ if (_t33) goto L_027C3390; else goto L_027C3388; L_027C3388: ; // 0x27c3388 /* 027C3388 */ _t34 = cpu->r[3] + 0x00000004u; /* 027C3388 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]); /* 027C338C */ _t35 = cpu->r[3] + 0x00000000u; /* 027C338C */ rbrew_write32(cpu->mem, _t35, cpu->r[30]); L_027C3390: ; // 0x27c3390 /* 027C3390 */ cpu->r[3] = cpu->r[31] + 0x00000174u; /* 027C3390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3394 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3394 */ _t37 = _t36 & 0x00000001u; /* 027C3394 */ if (_t37) goto L_027C3398; else goto L_027C33A8; L_027C3398: ; // 0x27c3398 /* 027C3398 */ cpu->r[3] = 0x00000008u; /* 027C339C */ Gambit_fn_02801A78(cpu); /* 027C33A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33A4 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33A4 */ _t39 = _t38 & 0x00000001u; /* 027C33A4 */ if (_t39) goto L_027C33B0; else goto L_027C33A8; L_027C33A8: ; // 0x27c33a8 /* 027C33A8 */ _t40 = cpu->r[3] + 0x00000004u; /* 027C33A8 */ rbrew_write32(cpu->mem, _t40, cpu->r[30]); /* 027C33AC */ _t41 = cpu->r[3] + 0x00000000u; /* 027C33AC */ rbrew_write32(cpu->mem, _t41, cpu->r[30]); L_027C33B0: ; // 0x27c33b0 /* 027C33B0 */ cpu->r[3] = cpu->r[31] + 0x0000017Cu; /* 027C33B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33B4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33B4 */ _t43 = _t42 & 0x00000001u; /* 027C33B4 */ if (_t43) goto L_027C33B8; else goto L_027C33C8; L_027C33B8: ; // 0x27c33b8 /* 027C33B8 */ cpu->r[3] = 0x00000008u; /* 027C33BC */ Gambit_fn_02801A78(cpu); /* 027C33C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33C4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33C4 */ _t45 = _t44 & 0x00000001u; /* 027C33C4 */ if (_t45) goto L_027C33D0; else goto L_027C33C8; L_027C33C8: ; // 0x27c33c8 /* 027C33C8 */ _t46 = cpu->r[3] + 0x00000004u; /* 027C33C8 */ rbrew_write32(cpu->mem, _t46, cpu->r[30]); /* 027C33CC */ _t47 = cpu->r[3] + 0x00000000u; /* 027C33CC */ rbrew_write32(cpu->mem, _t47, cpu->r[30]); L_027C33D0: ; // 0x27c33d0 /* 027C33D0 */ cpu->r[3] = cpu->r[31] + 0x00000184u; /* 027C33D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33D4 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33D4 */ _t49 = _t48 & 0x00000001u; /* 027C33D4 */ if (_t49) goto L_027C33D8; else goto L_027C33E8; L_027C33D8: ; // 0x27c33d8 /* 027C33D8 */ cpu->r[3] = 0x00000008u; /* 027C33DC */ Gambit_fn_02801A78(cpu); /* 027C33E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33E4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33E4 */ _t51 = _t50 & 0x00000001u; /* 027C33E4 */ if (_t51) goto L_027C33F0; else goto L_027C33E8; L_027C33E8: ; // 0x27c33e8 /* 027C33E8 */ _t52 = cpu->r[3] + 0x00000004u; /* 027C33E8 */ rbrew_write32(cpu->mem, _t52, cpu->r[30]); /* 027C33EC */ _t53 = cpu->r[3] + 0x00000000u; /* 027C33EC */ rbrew_write32(cpu->mem, _t53, cpu->r[30]); L_027C33F0: ; // 0x27c33f0 /* 027C33F0 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu; /* 027C33F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33F4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33F4 */ _t55 = _t54 & 0x00000001u; /* 027C33F4 */ if (_t55) goto L_027C33F8; else goto L_027C3408; L_027C33F8: ; // 0x27c33f8 /* 027C33F8 */ cpu->r[3] = 0x00000008u; /* 027C33FC */ Gambit_fn_02801A78(cpu); /* 027C3400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3404 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3404 */ _t57 = _t56 & 0x00000001u; /* 027C3404 */ if (_t57) goto L_027C3410; else goto L_027C3408; L_027C3408: ; // 0x27c3408 /* 027C3408 */ _t58 = cpu->r[3] + 0x00000004u; /* 027C3408 */ rbrew_write32(cpu->mem, _t58, cpu->r[30]); /* 027C340C */ _t59 = cpu->r[3] + 0x00000000u; /* 027C340C */ rbrew_write32(cpu->mem, _t59, cpu->r[30]); L_027C3410: ; // 0x27c3410 /* 027C3410 */ cpu->r[3] = cpu->r[31] + 0x0000019Cu; /* 027C3410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3414 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3414 */ _t61 = _t60 & 0x00000001u; /* 027C3414 */ if (_t61) goto L_027C3418; else goto L_027C3428; L_027C3418: ; // 0x27c3418 /* 027C3418 */ cpu->r[3] = 0x00000008u; /* 027C341C */ Gambit_fn_02801A78(cpu); /* 027C3420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3424 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3424 */ _t63 = _t62 & 0x00000001u; /* 027C3424 */ if (_t63) goto L_027C3430; else goto L_027C3428; L_027C3428: ; // 0x27c3428 /* 027C3428 */ _t64 = cpu->r[3] + 0x00000004u; /* 027C3428 */ rbrew_write32(cpu->mem, _t64, cpu->r[30]); /* 027C342C */ _t65 = cpu->r[3] + 0x00000000u; /* 027C342C */ rbrew_write32(cpu->mem, _t65, cpu->r[30]); L_027C3430: ; // 0x27c3430 /* 027C3430 */ cpu->r[3] = cpu->r[31] + 0x000001A4u; /* 027C3430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3434 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3434 */ _t67 = _t66 & 0x00000001u; /* 027C3434 */ if (_t67) goto L_027C3438; else goto L_027C3448; L_027C3438: ; // 0x27c3438 /* 027C3438 */ cpu->r[3] = 0x00000008u; /* 027C343C */ Gambit_fn_02801A78(cpu); /* 027C3440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3444 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3444 */ _t69 = _t68 & 0x00000001u; /* 027C3444 */ if (_t69) goto L_027C3450; else goto L_027C3448; L_027C3448: ; // 0x27c3448 /* 027C3448 */ _t70 = cpu->r[3] + 0x00000004u; /* 027C3448 */ rbrew_write32(cpu->mem, _t70, cpu->r[30]); /* 027C344C */ _t71 = cpu->r[3] + 0x00000000u; /* 027C344C */ rbrew_write32(cpu->mem, _t71, cpu->r[30]); L_027C3450: ; // 0x27c3450 /* 027C3450 */ cpu->r[3] = 0x101D0000u; /* 027C3454 */ _t72 = cpu->r[31] + 0x00000198u; /* 027C3454 */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[30]); /* 027C3458 */ _t73 = cpu->r[3] + 0xFFFF93D8u; /* 027C3458 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73); /* 027C345C */ _t74 = cpu->r[3] + 0x00000000u; /* 027C345C */ cpu->r[9] = rbrew_read32(cpu->mem, _t74); /* 027C3460 */ _t75 = cpu->r[9] + 0x0000001Cu; /* 027C3460 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75); /* 027C3464 */ cpu->ctr = cpu->r[10]; /* 027C3468 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C346C */ Gambit_fn_0296EF20(cpu); L_027C3470: ; // 0x27c3470 /* 027C3470 */ _t76 = cpu->r[1] + 0x00000014u; /* 027C3470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76); /* 027C3474 */ cpu->r[3] = cpu->r[31]; /* 027C3478 */ _t77 = cpu->r[1] + 0x0000000Cu; /* 027C3478 */ cpu->r[31] = rbrew_read32(cpu->mem, _t77); /* 027C347C */ cpu->lr = cpu->r[0]; /* 027C3480 */ _t78 = cpu->r[1] + 0x00000008u; /* 027C3480 */ cpu->r[30] = rbrew_read32(cpu->mem, _t78); /* 027C3484 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C3488 */ return; } // fn_027C329C @ 0x27c329c void Gambit_fn_027C329C(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; L_027C329C: ; // 0x27c329c /* 027C329C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C329C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C329C */ cpu->r[1] = _t0; /* 027C32A0 */ _t1 = cpu->r[1] + 0x00000008u; /* 027C32A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C32A4 */ _t2 = cpu->r[1] + 0x0000000Cu; /* 027C32A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C32A8 */ cpu->r[31] = cpu->r[3]; /* 027C32A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C32AC */ cpu->r[30] = cpu->r[4]; /* 027C32B0 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C32B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C32B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C32B4 */ _t5 = _t4 & 0x00000001u; /* 027C32B4 */ if (_t5) goto L_027C32B8; else goto L_027C32C8; L_027C32B8: ; // 0x27c32b8 /* 027C32B8 */ cpu->r[3] = 0x000001ACu; /* 027C32BC */ Gambit_fn_02801A78(cpu); /* 027C32C0 */ cpu->r[31] = cpu->r[3]; /* 027C32C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C32C4 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C32C4 */ _t7 = _t6 & 0x00000001u; /* 027C32C4 */ if (_t7) goto L_027C3470; else goto L_027C32C8; L_027C32C8: ; // 0x27c32c8 /* 027C32C8 */ cpu->r[5] = 0x10110000u; /* 027C32CC */ cpu->r[4] = cpu->r[30]; /* 027C32D0 */ cpu->r[5] = cpu->r[5] + 0xFFFFC0E4u; /* 027C32D4 */ cpu->r[3] = cpu->r[31]; /* 027C32D8 */ Gambit_fn_02798BA4(cpu); /* 027C32DC */ cpu->r[3] = cpu->r[31] + 0x00000150u; /* 027C32DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C32E0 */ cpu->r[30] = 0x00000000u; /* 027C32E4 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C32E4 */ _t9 = _t8 & 0x00000001u; /* 027C32E4 */ if (_t9) goto L_027C32E8; else goto L_027C32F8; L_027C32E8: ; // 0x27c32e8 /* 027C32E8 */ cpu->r[3] = 0x00000008u; /* 027C32EC */ Gambit_fn_02801A78(cpu); /* 027C32F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C32F4 */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C32F4 */ _t11 = _t10 & 0x00000001u; /* 027C32F4 */ if (_t11) goto L_027C3308; else goto L_027C32F8; L_027C32F8: ; // 0x27c32f8 /* 027C32F8 */ cpu->r[11] = 0x10110000u; /* 027C32FC */ _t12 = cpu->r[3] + 0x00000000u; /* 027C32FC */ rbrew_write32(cpu->mem, _t12, cpu->r[30]); /* 027C3300 */ cpu->r[11] = cpu->r[11] + 0xFFFFC068u; /* 027C3304 */ _t13 = cpu->r[3] + 0x00000004u; /* 027C3304 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]); L_027C3308: ; // 0x27c3308 /* 027C3308 */ cpu->r[12] = 0x10110000u; /* 027C330C */ _t14 = cpu->r[31] + 0x00000158u; /* 027C330C */ rbrew_write8(cpu->mem, _t14, (uint8_t)cpu->r[30]); /* 027C3310 */ cpu->r[0] = 0x10110000u; /* 027C3314 */ cpu->r[12] = cpu->r[12] + 0xFFFFC0F8u; /* 027C3318 */ cpu->r[0] = cpu->r[0] + 0xFFFFC1C0u; /* 027C331C */ _t15 = cpu->r[31] + 0x00000070u; /* 027C331C */ rbrew_write32(cpu->mem, _t15, cpu->r[12]); /* 027C3320 */ cpu->r[12] = 0x10110000u; /* 027C3324 */ _t16 = cpu->r[31] + 0x00000020u; /* 027C3324 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027C3328 */ cpu->r[12] = cpu->r[12] + 0xFFFFC1D0u; /* 027C332C */ cpu->r[3] = cpu->r[31] + 0x0000015Cu; /* 027C332C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3330 */ _t17 = cpu->r[31] + 0x00000154u; /* 027C3330 */ rbrew_write32(cpu->mem, _t17, cpu->r[12]); /* 027C3334 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3334 */ _t19 = _t18 & 0x00000001u; /* 027C3334 */ if (_t19) goto L_027C3338; else goto L_027C3348; L_027C3338: ; // 0x27c3338 /* 027C3338 */ cpu->r[3] = 0x00000008u; /* 027C333C */ Gambit_fn_02801A78(cpu); /* 027C3340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3344 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3344 */ _t21 = _t20 & 0x00000001u; /* 027C3344 */ if (_t21) goto L_027C3350; else goto L_027C3348; L_027C3348: ; // 0x27c3348 /* 027C3348 */ _t22 = cpu->r[3] + 0x00000004u; /* 027C3348 */ rbrew_write32(cpu->mem, _t22, cpu->r[30]); /* 027C334C */ _t23 = cpu->r[3] + 0x00000000u; /* 027C334C */ rbrew_write32(cpu->mem, _t23, cpu->r[30]); L_027C3350: ; // 0x27c3350 /* 027C3350 */ cpu->r[3] = cpu->r[31] + 0x00000164u; /* 027C3350 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3354 */ _t24 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3354 */ _t25 = _t24 & 0x00000001u; /* 027C3354 */ if (_t25) goto L_027C3358; else goto L_027C3368; L_027C3358: ; // 0x27c3358 /* 027C3358 */ cpu->r[3] = 0x00000008u; /* 027C335C */ Gambit_fn_02801A78(cpu); /* 027C3360 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3364 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3364 */ _t27 = _t26 & 0x00000001u; /* 027C3364 */ if (_t27) goto L_027C3370; else goto L_027C3368; L_027C3368: ; // 0x27c3368 /* 027C3368 */ _t28 = cpu->r[3] + 0x00000004u; /* 027C3368 */ rbrew_write32(cpu->mem, _t28, cpu->r[30]); /* 027C336C */ _t29 = cpu->r[3] + 0x00000000u; /* 027C336C */ rbrew_write32(cpu->mem, _t29, cpu->r[30]); L_027C3370: ; // 0x27c3370 /* 027C3370 */ cpu->r[3] = cpu->r[31] + 0x0000016Cu; /* 027C3370 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3374 */ _t30 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3374 */ _t31 = _t30 & 0x00000001u; /* 027C3374 */ if (_t31) goto L_027C3378; else goto L_027C3388; L_027C3378: ; // 0x27c3378 /* 027C3378 */ cpu->r[3] = 0x00000008u; /* 027C337C */ Gambit_fn_02801A78(cpu); /* 027C3380 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3384 */ _t32 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3384 */ _t33 = _t32 & 0x00000001u; /* 027C3384 */ if (_t33) goto L_027C3390; else goto L_027C3388; L_027C3388: ; // 0x27c3388 /* 027C3388 */ _t34 = cpu->r[3] + 0x00000004u; /* 027C3388 */ rbrew_write32(cpu->mem, _t34, cpu->r[30]); /* 027C338C */ _t35 = cpu->r[3] + 0x00000000u; /* 027C338C */ rbrew_write32(cpu->mem, _t35, cpu->r[30]); L_027C3390: ; // 0x27c3390 /* 027C3390 */ cpu->r[3] = cpu->r[31] + 0x00000174u; /* 027C3390 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3394 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3394 */ _t37 = _t36 & 0x00000001u; /* 027C3394 */ if (_t37) goto L_027C3398; else goto L_027C33A8; L_027C3398: ; // 0x27c3398 /* 027C3398 */ cpu->r[3] = 0x00000008u; /* 027C339C */ Gambit_fn_02801A78(cpu); /* 027C33A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33A4 */ _t38 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33A4 */ _t39 = _t38 & 0x00000001u; /* 027C33A4 */ if (_t39) goto L_027C33B0; else goto L_027C33A8; L_027C33A8: ; // 0x27c33a8 /* 027C33A8 */ _t40 = cpu->r[3] + 0x00000004u; /* 027C33A8 */ rbrew_write32(cpu->mem, _t40, cpu->r[30]); /* 027C33AC */ _t41 = cpu->r[3] + 0x00000000u; /* 027C33AC */ rbrew_write32(cpu->mem, _t41, cpu->r[30]); L_027C33B0: ; // 0x27c33b0 /* 027C33B0 */ cpu->r[3] = cpu->r[31] + 0x0000017Cu; /* 027C33B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33B4 */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33B4 */ _t43 = _t42 & 0x00000001u; /* 027C33B4 */ if (_t43) goto L_027C33B8; else goto L_027C33C8; L_027C33B8: ; // 0x27c33b8 /* 027C33B8 */ cpu->r[3] = 0x00000008u; /* 027C33BC */ Gambit_fn_02801A78(cpu); /* 027C33C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33C4 */ _t44 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33C4 */ _t45 = _t44 & 0x00000001u; /* 027C33C4 */ if (_t45) goto L_027C33D0; else goto L_027C33C8; L_027C33C8: ; // 0x27c33c8 /* 027C33C8 */ _t46 = cpu->r[3] + 0x00000004u; /* 027C33C8 */ rbrew_write32(cpu->mem, _t46, cpu->r[30]); /* 027C33CC */ _t47 = cpu->r[3] + 0x00000000u; /* 027C33CC */ rbrew_write32(cpu->mem, _t47, cpu->r[30]); L_027C33D0: ; // 0x27c33d0 /* 027C33D0 */ cpu->r[3] = cpu->r[31] + 0x00000184u; /* 027C33D0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33D4 */ _t48 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33D4 */ _t49 = _t48 & 0x00000001u; /* 027C33D4 */ if (_t49) goto L_027C33D8; else goto L_027C33E8; L_027C33D8: ; // 0x27c33d8 /* 027C33D8 */ cpu->r[3] = 0x00000008u; /* 027C33DC */ Gambit_fn_02801A78(cpu); /* 027C33E0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33E4 */ _t50 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33E4 */ _t51 = _t50 & 0x00000001u; /* 027C33E4 */ if (_t51) goto L_027C33F0; else goto L_027C33E8; L_027C33E8: ; // 0x27c33e8 /* 027C33E8 */ _t52 = cpu->r[3] + 0x00000004u; /* 027C33E8 */ rbrew_write32(cpu->mem, _t52, cpu->r[30]); /* 027C33EC */ _t53 = cpu->r[3] + 0x00000000u; /* 027C33EC */ rbrew_write32(cpu->mem, _t53, cpu->r[30]); L_027C33F0: ; // 0x27c33f0 /* 027C33F0 */ cpu->r[3] = cpu->r[31] + 0x0000018Cu; /* 027C33F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C33F4 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C33F4 */ _t55 = _t54 & 0x00000001u; /* 027C33F4 */ if (_t55) goto L_027C33F8; else goto L_027C3408; L_027C33F8: ; // 0x27c33f8 /* 027C33F8 */ cpu->r[3] = 0x00000008u; /* 027C33FC */ Gambit_fn_02801A78(cpu); /* 027C3400 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3404 */ _t56 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3404 */ _t57 = _t56 & 0x00000001u; /* 027C3404 */ if (_t57) goto L_027C3410; else goto L_027C3408; L_027C3408: ; // 0x27c3408 /* 027C3408 */ _t58 = cpu->r[3] + 0x00000004u; /* 027C3408 */ rbrew_write32(cpu->mem, _t58, cpu->r[30]); /* 027C340C */ _t59 = cpu->r[3] + 0x00000000u; /* 027C340C */ rbrew_write32(cpu->mem, _t59, cpu->r[30]); L_027C3410: ; // 0x27c3410 /* 027C3410 */ cpu->r[3] = cpu->r[31] + 0x0000019Cu; /* 027C3410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3414 */ _t60 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3414 */ _t61 = _t60 & 0x00000001u; /* 027C3414 */ if (_t61) goto L_027C3418; else goto L_027C3428; L_027C3418: ; // 0x27c3418 /* 027C3418 */ cpu->r[3] = 0x00000008u; /* 027C341C */ Gambit_fn_02801A78(cpu); /* 027C3420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3424 */ _t62 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3424 */ _t63 = _t62 & 0x00000001u; /* 027C3424 */ if (_t63) goto L_027C3430; else goto L_027C3428; L_027C3428: ; // 0x27c3428 /* 027C3428 */ _t64 = cpu->r[3] + 0x00000004u; /* 027C3428 */ rbrew_write32(cpu->mem, _t64, cpu->r[30]); /* 027C342C */ _t65 = cpu->r[3] + 0x00000000u; /* 027C342C */ rbrew_write32(cpu->mem, _t65, cpu->r[30]); L_027C3430: ; // 0x27c3430 /* 027C3430 */ cpu->r[3] = cpu->r[31] + 0x000001A4u; /* 027C3430 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3434 */ _t66 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3434 */ _t67 = _t66 & 0x00000001u; /* 027C3434 */ if (_t67) goto L_027C3438; else goto L_027C3448; L_027C3438: ; // 0x27c3438 /* 027C3438 */ cpu->r[3] = 0x00000008u; /* 027C343C */ Gambit_fn_02801A78(cpu); /* 027C3440 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3444 */ _t68 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3444 */ _t69 = _t68 & 0x00000001u; /* 027C3444 */ if (_t69) goto L_027C3450; else goto L_027C3448; L_027C3448: ; // 0x27c3448 /* 027C3448 */ _t70 = cpu->r[3] + 0x00000004u; /* 027C3448 */ rbrew_write32(cpu->mem, _t70, cpu->r[30]); /* 027C344C */ _t71 = cpu->r[3] + 0x00000000u; /* 027C344C */ rbrew_write32(cpu->mem, _t71, cpu->r[30]); L_027C3450: ; // 0x27c3450 /* 027C3450 */ cpu->r[3] = 0x101D0000u; /* 027C3454 */ _t72 = cpu->r[31] + 0x00000198u; /* 027C3454 */ rbrew_write8(cpu->mem, _t72, (uint8_t)cpu->r[30]); /* 027C3458 */ _t73 = cpu->r[3] + 0xFFFF93D8u; /* 027C3458 */ cpu->r[3] = rbrew_read32(cpu->mem, _t73); /* 027C345C */ _t74 = cpu->r[3] + 0x00000000u; /* 027C345C */ cpu->r[9] = rbrew_read32(cpu->mem, _t74); /* 027C3460 */ _t75 = cpu->r[9] + 0x0000001Cu; /* 027C3460 */ cpu->r[10] = rbrew_read32(cpu->mem, _t75); /* 027C3464 */ cpu->ctr = cpu->r[10]; /* 027C3468 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C346C */ Gambit_fn_0296EF20(cpu); L_027C3470: ; // 0x27c3470 /* 027C3470 */ _t76 = cpu->r[1] + 0x00000014u; /* 027C3470 */ cpu->r[0] = rbrew_read32(cpu->mem, _t76); /* 027C3474 */ cpu->r[3] = cpu->r[31]; /* 027C3478 */ _t77 = cpu->r[1] + 0x0000000Cu; /* 027C3478 */ cpu->r[31] = rbrew_read32(cpu->mem, _t77); /* 027C347C */ cpu->lr = cpu->r[0]; /* 027C3480 */ _t78 = cpu->r[1] + 0x00000008u; /* 027C3480 */ cpu->r[30] = rbrew_read32(cpu->mem, _t78); /* 027C3484 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C3488 */ return; } // fn_027C348C @ 0x27c348c void Gambit_fn_027C348C(CPUState* cpu) { uint32_t _t0, _t1, _t2; L_027C348C: ; // 0x27c348c /* 027C348C */ cpu->r[3] = 0x101D0000u; /* 027C3490 */ _t0 = cpu->r[3] + 0xFFFF93D8u; /* 027C3490 */ cpu->r[3] = rbrew_read32(cpu->mem, _t0); /* 027C3494 */ _t1 = cpu->r[3] + 0x00000000u; /* 027C3494 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027C3498 */ _t2 = cpu->r[12] + 0x0000003Cu; /* 027C3498 */ cpu->r[0] = rbrew_read32(cpu->mem, _t2); /* 027C349C */ cpu->ctr = cpu->r[0]; /* 027C34A0 */ rbrew_dispatch(cpu, cpu->ctr); return; } // fn_027C34A4 @ 0x27c34a4 void Gambit_fn_027C34A4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027C34A4: ; // 0x27c34a4 /* 027C34A4 */ cpu->r[0] = cpu->lr; /* 027C34A8 */ _t0 = cpu->r[1] + 0xFFFFFF70u; /* 027C34A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C34A8 */ cpu->r[1] = _t0; /* 027C34AC */ _t1 = cpu->r[1] + 0x00000088u; /* 027C34AC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C34B0 */ cpu->r[30] = cpu->r[5]; /* 027C34B4 */ _t2 = cpu->r[1] + 0x0000008Cu; /* 027C34B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C34B8 */ cpu->r[31] = cpu->r[4]; /* 027C34BC */ cpu->r[4] = cpu->r[30]; /* 027C34C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C34C4 */ _t3 = cpu->r[1] + 0x00000094u; /* 027C34C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C34C8 */ Gambit_fn_027C2B08(cpu); /* 027C34CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000001u); /* 027C34D0 */ cpu->r[3] = 0x00000000u; /* 027C34D4 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C34D4 */ _t5 = _t4 & 0x00000001u; /* 027C34D4 */ if (_t5) goto L_027C34E0; else goto L_027C34D8; L_027C34D8: ; // 0x27c34d8 /* 027C34D8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C34D8 */ _t7 = _t6 & 0x00000001u; /* 027C34D8 */ if (_t7) goto L_027C3508; else goto L_027C34DC; L_027C34DC: ; // 0x27c34dc /* 027C34DC */ goto L_027C3534; L_027C34E0: ; // 0x27c34e0 /* 027C34E0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C34E4 */ Gambit_fn_0296F050(cpu); /* 027C34E8 */ cpu->r[31] = cpu->r[3]; /* 027C34EC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C34F0 */ Gambit_fn_0296EFD8(cpu); /* 027C34F4 */ _t8 = cpu->r[30] + 0x00000004u; /* 027C34F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027C34F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C34F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C34FC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C34FC */ _t10 = _t9 & 0x00000001u; /* 027C34FC */ if (_t10) goto L_027C3534; else goto L_027C3500; L_027C3500: ; // 0x27c3500 /* 027C3500 */ cpu->r[3] = cpu->r[31]; /* 027C3504 */ goto L_027C3534; L_027C3508: ; // 0x27c3508 /* 027C3508 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C350C */ Gambit_fn_0296F0B4(cpu); /* 027C3510 */ cpu->r[31] = cpu->r[3]; /* 027C3514 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C3518 */ Gambit_fn_0296F148(cpu); /* 027C351C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]); /* 027C3520 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3520 */ _t12 = _t11 & 0x00000001u; /* 027C3520 */ if (_t12) goto L_027C3524; else goto L_027C3534; L_027C3524: ; // 0x27c3524 /* 027C3524 */ _t13 = cpu->r[30] + 0x00000004u; /* 027C3524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027C3528 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C3528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C352C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C352C */ _t15 = _t14 & 0x00000001u; /* 027C352C */ if (_t15) goto L_027C3534; else goto L_027C3530; L_027C3530: ; // 0x27c3530 /* 027C3530 */ cpu->r[3] = cpu->r[31]; L_027C3534: ; // 0x27c3534 /* 027C3534 */ _t16 = cpu->r[1] + 0x00000094u; /* 027C3534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027C3538 */ _t17 = cpu->r[1] + 0x00000088u; /* 027C3538 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027C353C */ cpu->lr = cpu->r[0]; /* 027C3540 */ _t18 = cpu->r[1] + 0x0000008Cu; /* 027C3540 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027C3544 */ cpu->r[1] = cpu->r[1] + 0x00000090u; /* 027C3548 */ return; } // fn_027C34A8 @ 0x27c34a8 void Gambit_fn_027C34A8(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027C34A8: ; // 0x27c34a8 /* 027C34A8 */ _t0 = cpu->r[1] + 0xFFFFFF70u; /* 027C34A8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C34A8 */ cpu->r[1] = _t0; /* 027C34AC */ _t1 = cpu->r[1] + 0x00000088u; /* 027C34AC */ rbrew_write32(cpu->mem, _t1, cpu->r[30]); /* 027C34B0 */ cpu->r[30] = cpu->r[5]; /* 027C34B4 */ _t2 = cpu->r[1] + 0x0000008Cu; /* 027C34B4 */ rbrew_write32(cpu->mem, _t2, cpu->r[31]); /* 027C34B8 */ cpu->r[31] = cpu->r[4]; /* 027C34BC */ cpu->r[4] = cpu->r[30]; /* 027C34C0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C34C4 */ _t3 = cpu->r[1] + 0x00000094u; /* 027C34C4 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C34C8 */ Gambit_fn_027C2B08(cpu); /* 027C34CC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], 0x00000001u); /* 027C34D0 */ cpu->r[3] = 0x00000000u; /* 027C34D4 */ _t4 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C34D4 */ _t5 = _t4 & 0x00000001u; /* 027C34D4 */ if (_t5) goto L_027C34E0; else goto L_027C34D8; L_027C34D8: ; // 0x27c34d8 /* 027C34D8 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C34D8 */ _t7 = _t6 & 0x00000001u; /* 027C34D8 */ if (_t7) goto L_027C3508; else goto L_027C34DC; L_027C34DC: ; // 0x27c34dc /* 027C34DC */ goto L_027C3534; L_027C34E0: ; // 0x27c34e0 /* 027C34E0 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C34E4 */ Gambit_fn_0296F050(cpu); /* 027C34E8 */ cpu->r[31] = cpu->r[3]; /* 027C34EC */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C34F0 */ Gambit_fn_0296EFD8(cpu); /* 027C34F4 */ _t8 = cpu->r[30] + 0x00000004u; /* 027C34F4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t8); /* 027C34F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[11], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C34F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C34FC */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C34FC */ _t10 = _t9 & 0x00000001u; /* 027C34FC */ if (_t10) goto L_027C3534; else goto L_027C3500; L_027C3500: ; // 0x27c3500 /* 027C3500 */ cpu->r[3] = cpu->r[31]; /* 027C3504 */ goto L_027C3534; L_027C3508: ; // 0x27c3508 /* 027C3508 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C350C */ Gambit_fn_0296F0B4(cpu); /* 027C3510 */ cpu->r[31] = cpu->r[3]; /* 027C3514 */ cpu->r[3] = cpu->r[1] + 0x00000008u; /* 027C3518 */ Gambit_fn_0296F148(cpu); /* 027C351C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[3]); /* 027C3520 */ _t11 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3520 */ _t12 = _t11 & 0x00000001u; /* 027C3520 */ if (_t12) goto L_027C3524; else goto L_027C3534; L_027C3524: ; // 0x27c3524 /* 027C3524 */ _t13 = cpu->r[30] + 0x00000004u; /* 027C3524 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027C3528 */ cpu->r[12] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C3528 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C352C */ _t14 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C352C */ _t15 = _t14 & 0x00000001u; /* 027C352C */ if (_t15) goto L_027C3534; else goto L_027C3530; L_027C3530: ; // 0x27c3530 /* 027C3530 */ cpu->r[3] = cpu->r[31]; L_027C3534: ; // 0x27c3534 /* 027C3534 */ _t16 = cpu->r[1] + 0x00000094u; /* 027C3534 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027C3538 */ _t17 = cpu->r[1] + 0x00000088u; /* 027C3538 */ cpu->r[30] = rbrew_read32(cpu->mem, _t17); /* 027C353C */ cpu->lr = cpu->r[0]; /* 027C3540 */ _t18 = cpu->r[1] + 0x0000008Cu; /* 027C3540 */ cpu->r[31] = rbrew_read32(cpu->mem, _t18); /* 027C3544 */ cpu->r[1] = cpu->r[1] + 0x00000090u; /* 027C3548 */ return; } // fn_027C354C @ 0x27c354c void Gambit_fn_027C354C(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, _t254, _t255, _t256, _t257, _t258, _t259, _t260, _t261, _t262, _t263, _t264, _t265, _t266, _t267, _t268, _t269, _t270, _t271, _t272, _t273, _t274, _t275, _t276, _t277, _t278, _t279, _t280, _t281, _t282, _t283, _t284, _t285, _t286, _t287, _t288, _t289, _t290, _t291, _t292, _t293, _t294, _t295, _t296, _t297, _t298, _t299, _t300, _t301, _t302, _t303, _t304, _t305, _t306, _t307, _t308, _t309, _t310, _t311, _t312, _t313, _t314, _t315, _t316, _t317, _t318, _t319, _t320, _t321, _t322, _t323, _t324; L_027C354C: ; // 0x27c354c /* 027C354C */ _t0 = cpu->r[1] + 0xFFFFFCE8u; /* 027C354C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C354C */ cpu->r[1] = _t0; /* 027C3550 */ /* nop */ /* 027C3554 */ cpu->r[0] = cpu->lr; /* 027C3558 */ _t1 = cpu->r[1] + 0x0000031Cu; /* 027C3558 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027C355C */ cpu->r[30] = 0x101D0000u; /* 027C3560 */ _t2 = cpu->r[30] + 0xFFFF93D8u; /* 027C3560 */ cpu->r[30] = rbrew_read32(cpu->mem, _t2); /* 027C3564 */ cpu->r[29] = cpu->r[3]; /* 027C3568 */ _t3 = cpu->r[30] + 0x00000000u; /* 027C3568 */ cpu->r[12] = rbrew_read32(cpu->mem, _t3); /* 027C356C */ _t4 = cpu->r[12] + 0x00000024u; /* 027C356C */ cpu->r[5] = rbrew_read32(cpu->mem, _t4); /* 027C3570 */ cpu->ctr = cpu->r[5]; /* 027C3574 */ cpu->r[3] = cpu->r[30]; /* 027C3578 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C357C */ _t5 = cpu->r[29] + 0x00000058u; /* 027C357C */ cpu->r[0] = rbrew_read32(cpu->mem, _t5); /* 027C3580 */ cpu->r[6] = rbrew_rlwinm(cpu->r[0], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C3584 */ cpu->r[8] = cpu->r[29] + cpu->r[6]; /* 027C3588 */ _t6 = cpu->r[8] + 0x00000044u; /* 027C3588 */ cpu->r[9] = rbrew_read32(cpu->mem, _t6); /* 027C358C */ cpu->r[27] = cpu->r[3]; /* 027C358C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3590 */ cpu->r[28] = 0x101D0000u; /* 027C3594 */ _t7 = cpu->r[29] + 0x00000194u; /* 027C3594 */ rbrew_write32(cpu->mem, _t7, cpu->r[9]); /* 027C3598 */ _t8 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3598 */ _t9 = _t8 & 0x00000001u; /* 027C3598 */ if (_t9) goto L_027C359C; else goto L_027C3624; L_027C359C: ; // 0x27c359c /* 027C359C */ _t10 = cpu->r[28] + 0xFFFF98F0u; /* 027C359C */ cpu->r[3] = rbrew_read32(cpu->mem, _t10); /* 027C35A0 */ Gambit_fn_02826F20(cpu); /* 027C35A4 */ _t11 = cpu->r[3] + 0x0000000Cu; /* 027C35A4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t11); /* 027C35A8 */ _t12 = cpu->r[10] + 0x00000034u; /* 027C35A8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12); /* 027C35AC */ cpu->ctr = cpu->r[11]; /* 027C35B0 */ cpu->r[5] = 0x00000004u; /* 027C35B4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C35B8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C35BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C35C0 */ cpu->r[0] = cpu->r[27]; /* 027C35C4 */ _t13 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C35C4 */ _t14 = _t13 & 0x00000001u; /* 027C35C4 */ if (_t14) goto L_027C35CC; else goto L_027C35C8; L_027C35C8: ; // 0x27c35c8 /* 027C35C8 */ cpu->r[0] = 0x00000001u; L_027C35CC: ; // 0x27c35cc /* 027C35CC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C35D0 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C35D0 */ _t16 = _t15 & 0x00000001u; /* 027C35D0 */ if (_t16) goto L_027C35DC; else goto L_027C35D4; L_027C35D4: ; // 0x27c35d4 /* 027C35D4 */ _t17 = cpu->r[29] + 0x00000188u; /* 027C35D4 */ rbrew_write32(cpu->mem, _t17, cpu->r[3]); /* 027C35D8 */ _t18 = cpu->r[29] + 0x00000184u; /* 027C35D8 */ rbrew_write32(cpu->mem, _t18, cpu->r[27]); L_027C35DC: ; // 0x27c35dc /* 027C35DC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C35E0 */ _t19 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C35E0 */ _t20 = _t19 & 0x00000001u; /* 027C35E0 */ if (_t20) goto L_027C35E4; else goto L_027C3624; L_027C35E4: ; // 0x27c35e4 /* 027C35E4 */ _t21 = cpu->r[28] + 0xFFFF98F0u; /* 027C35E4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t21); /* 027C35E8 */ Gambit_fn_02826F20(cpu); /* 027C35EC */ _t22 = cpu->r[3] + 0x0000000Cu; /* 027C35EC */ cpu->r[12] = rbrew_read32(cpu->mem, _t22); /* 027C35F0 */ _t23 = cpu->r[12] + 0x00000034u; /* 027C35F0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027C35F4 */ cpu->ctr = cpu->r[0]; /* 027C35F8 */ cpu->r[5] = 0x00000004u; /* 027C35FC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C3600 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3604 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3608 */ cpu->r[12] = cpu->r[27]; /* 027C360C */ _t24 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C360C */ _t25 = _t24 & 0x00000001u; /* 027C360C */ if (_t25) goto L_027C3614; else goto L_027C3610; L_027C3610: ; // 0x27c3610 /* 027C3610 */ cpu->r[12] = 0x00000001u; L_027C3614: ; // 0x27c3614 /* 027C3614 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3618 */ _t26 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3618 */ _t27 = _t26 & 0x00000001u; /* 027C3618 */ if (_t27) goto L_027C3624; else goto L_027C361C; L_027C361C: ; // 0x27c361c /* 027C361C */ _t28 = cpu->r[29] + 0x00000190u; /* 027C361C */ rbrew_write32(cpu->mem, _t28, cpu->r[3]); /* 027C3620 */ _t29 = cpu->r[29] + 0x0000018Cu; /* 027C3620 */ rbrew_write32(cpu->mem, _t29, cpu->r[27]); L_027C3624: ; // 0x27c3624 /* 027C3624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3628 */ _t30 = cpu->r[29] + 0x00000194u; /* 027C3628 */ cpu->r[3] = rbrew_read32(cpu->mem, _t30); /* 027C362C */ _t31 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C362C */ _t32 = _t31 & 0x00000001u; /* 027C362C */ if (_t32) goto L_027C3630; else goto L_027C367C; L_027C3630: ; // 0x27c3630 /* 027C3630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3634 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3634 */ _t34 = _t33 & 0x00000001u; /* 027C3634 */ if (_t34) goto L_027C3638; else goto L_027C3640; L_027C3638: ; // 0x27c3638 /* 027C3638 */ _t35 = cpu->r[28] + 0xFFFF98F0u; /* 027C3638 */ cpu->r[3] = rbrew_read32(cpu->mem, _t35); /* 027C363C */ Gambit_fn_02826F20(cpu); L_027C3640: ; // 0x27c3640 /* 027C3640 */ _t36 = cpu->r[3] + 0x0000000Cu; /* 027C3640 */ cpu->r[6] = rbrew_read32(cpu->mem, _t36); /* 027C3644 */ _t37 = cpu->r[6] + 0x00000034u; /* 027C3644 */ cpu->r[7] = rbrew_read32(cpu->mem, _t37); /* 027C3648 */ cpu->ctr = cpu->r[7]; /* 027C364C */ cpu->r[5] = 0x00000004u; /* 027C3650 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C3654 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3658 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C365C */ cpu->r[11] = cpu->r[27]; /* 027C3660 */ _t38 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3660 */ _t39 = _t38 & 0x00000001u; /* 027C3660 */ if (_t39) goto L_027C3668; else goto L_027C3664; L_027C3664: ; // 0x27c3664 /* 027C3664 */ cpu->r[11] = 0x00000001u; L_027C3668: ; // 0x27c3668 /* 027C3668 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C366C */ _t40 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C366C */ _t41 = _t40 & 0x00000001u; /* 027C366C */ if (_t41) goto L_027C3678; else goto L_027C3670; L_027C3670: ; // 0x27c3670 /* 027C3670 */ _t42 = cpu->r[29] + 0x00000168u; /* 027C3670 */ rbrew_write32(cpu->mem, _t42, cpu->r[3]); /* 027C3674 */ _t43 = cpu->r[29] + 0x00000164u; /* 027C3674 */ rbrew_write32(cpu->mem, _t43, cpu->r[27]); L_027C3678: ; // 0x27c3678 /* 027C3678 */ _t44 = cpu->r[29] + 0x00000194u; /* 027C3678 */ cpu->r[3] = rbrew_read32(cpu->mem, _t44); L_027C367C: ; // 0x27c367c /* 027C367C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3680 */ _t45 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3680 */ _t46 = _t45 & 0x00000001u; /* 027C3680 */ if (_t46) goto L_027C3684; else goto L_027C36D0; L_027C3684: ; // 0x27c3684 /* 027C3684 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3688 */ _t47 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3688 */ _t48 = _t47 & 0x00000001u; /* 027C3688 */ if (_t48) goto L_027C368C; else goto L_027C3694; L_027C368C: ; // 0x27c368c /* 027C368C */ _t49 = cpu->r[28] + 0xFFFF98F0u; /* 027C368C */ cpu->r[3] = rbrew_read32(cpu->mem, _t49); /* 027C3690 */ Gambit_fn_02826F20(cpu); L_027C3694: ; // 0x27c3694 /* 027C3694 */ _t50 = cpu->r[3] + 0x0000000Cu; /* 027C3694 */ cpu->r[8] = rbrew_read32(cpu->mem, _t50); /* 027C3698 */ _t51 = cpu->r[8] + 0x00000034u; /* 027C3698 */ cpu->r[9] = rbrew_read32(cpu->mem, _t51); /* 027C369C */ cpu->ctr = cpu->r[9]; /* 027C36A0 */ cpu->r[5] = 0x00000004u; /* 027C36A4 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C36A8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C36AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C36B0 */ cpu->r[10] = cpu->r[27]; /* 027C36B4 */ _t52 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C36B4 */ _t53 = _t52 & 0x00000001u; /* 027C36B4 */ if (_t53) goto L_027C36BC; else goto L_027C36B8; L_027C36B8: ; // 0x27c36b8 /* 027C36B8 */ cpu->r[10] = 0x00000001u; L_027C36BC: ; // 0x27c36bc /* 027C36BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C36C0 */ _t54 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C36C0 */ _t55 = _t54 & 0x00000001u; /* 027C36C0 */ if (_t55) goto L_027C36CC; else goto L_027C36C4; L_027C36C4: ; // 0x27c36c4 /* 027C36C4 */ _t56 = cpu->r[29] + 0x00000170u; /* 027C36C4 */ rbrew_write32(cpu->mem, _t56, cpu->r[3]); /* 027C36C8 */ _t57 = cpu->r[29] + 0x0000016Cu; /* 027C36C8 */ rbrew_write32(cpu->mem, _t57, cpu->r[27]); L_027C36CC: ; // 0x27c36cc /* 027C36CC */ _t58 = cpu->r[29] + 0x00000194u; /* 027C36CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t58); L_027C36D0: ; // 0x27c36d0 /* 027C36D0 */ cpu->r[25] = 0x10110000u; /* 027C36D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C36D8 */ cpu->r[24] = 0x10110000u; /* 027C36DC */ cpu->r[25] = cpu->r[25] + 0xFFFFC098u; /* 027C36E0 */ cpu->r[23] = 0x10110000u; /* 027C36E4 */ cpu->r[24] = cpu->r[24] + 0xFFFFC0B0u; /* 027C36E8 */ _t59 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C36E8 */ _t60 = _t59 & 0x00000001u; /* 027C36E8 */ if (_t60) goto L_027C36EC; else goto L_027C37BC; L_027C36EC: ; // 0x27c36ec /* 027C36EC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C36F0 */ _t61 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C36F0 */ _t62 = _t61 & 0x00000001u; /* 027C36F0 */ if (_t62) goto L_027C36F4; else goto L_027C36FC; L_027C36F4: ; // 0x27c36f4 /* 027C36F4 */ _t63 = cpu->r[28] + 0xFFFF98F0u; /* 027C36F4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t63); /* 027C36F8 */ Gambit_fn_02826F20(cpu); L_027C36FC: ; // 0x27c36fc /* 027C36FC */ _t64 = cpu->r[3] + 0x0000000Cu; /* 027C36FC */ cpu->r[10] = rbrew_read32(cpu->mem, _t64); /* 027C3700 */ _t65 = cpu->r[10] + 0x00000034u; /* 027C3700 */ cpu->r[0] = rbrew_read32(cpu->mem, _t65); /* 027C3704 */ cpu->ctr = cpu->r[0]; /* 027C3708 */ cpu->r[5] = 0x00000004u; /* 027C370C */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[27] * (int32_t)0x0000001Cu); /* 027C3710 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3714 */ cpu->r[18] = cpu->r[3]; /* 027C3718 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C371C */ cpu->r[31] = cpu->r[27]; /* 027C3720 */ cpu->r[0] = 0x00000000u; /* 027C3724 */ _t66 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3724 */ _t67 = _t66 & 0x00000001u; /* 027C3724 */ if (_t67) goto L_027C372C; else goto L_027C3728; L_027C3728: ; // 0x27c3728 /* 027C3728 */ cpu->r[31] = 0x00000001u; L_027C372C: ; // 0x27c372c /* 027C372C */ cpu->r[20] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu); /* 027C3730 */ _t68 = cpu->r[23] + 0x00007399u; /* 027C3730 */ cpu->r[21] = rbrew_read8(cpu->mem, _t68); /* 027C3734 */ cpu->r[22] = 0x00000010u; L_027C3738: ; // 0x27c3738 /* 027C3738 */ cpu->r[26] = cpu->r[18] + cpu->r[20]; /* 027C3738 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027C373C */ _t69 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C373C */ _t70 = _t69 & 0x00000001u; /* 027C373C */ if (_t70) goto L_027C379C; else goto L_027C3740; L_027C3740: ; // 0x27c3740 /* 027C3740 */ cpu->r[19] = cpu->r[26]; /* 027C3740 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C3744 */ _t71 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3744 */ _t72 = _t71 & 0x00000001u; /* 027C3744 */ if (_t72) goto L_027C3748; else goto L_027C3758; L_027C3748: ; // 0x27c3748 /* 027C3748 */ cpu->r[3] = 0x0000001Cu; /* 027C374C */ Gambit_fn_02801A78(cpu); /* 027C3750 */ cpu->r[19] = cpu->r[3]; /* 027C3750 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C3754 */ _t73 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3754 */ _t74 = _t73 & 0x00000001u; /* 027C3754 */ if (_t74) goto L_027C3798; else goto L_027C3758; L_027C3758: ; // 0x27c3758 /* 027C3758 */ cpu->r[9] = cpu->r[19]; /* 027C3758 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027C375C */ _t75 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C375C */ _t76 = _t75 & 0x00000001u; /* 027C375C */ if (_t76) goto L_027C3760; else goto L_027C3770; L_027C3760: ; // 0x27c3760 /* 027C3760 */ cpu->r[3] = 0x0000000Cu; /* 027C3764 */ Gambit_fn_02801A78(cpu); /* 027C3768 */ cpu->r[9] = cpu->r[3]; /* 027C3768 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], 0x00000000u); /* 027C376C */ _t77 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C376C */ _t78 = _t77 & 0x00000001u; /* 027C376C */ if (_t78) goto L_027C378C; else goto L_027C3770; L_027C3770: ; // 0x27c3770 /* 027C3770 */ cpu->r[0] = 0x10110000u; /* 027C3774 */ _t79 = cpu->r[9] + 0x00000008u; /* 027C3774 */ rbrew_write32(cpu->mem, _t79, cpu->r[22]); /* 027C3778 */ cpu->r[12] = cpu->r[19] + 0x0000000Cu; /* 027C377C */ cpu->r[0] = cpu->r[0] + 0xFFFFC040u; /* 027C3780 */ _t80 = cpu->r[9] + 0x00000000u; /* 027C3780 */ rbrew_write32(cpu->mem, _t80, cpu->r[12]); /* 027C3784 */ _t81 = cpu->r[9] + 0x00000004u; /* 027C3784 */ rbrew_write32(cpu->mem, _t81, cpu->r[0]); /* 027C3788 */ _t82 = cpu->r[19] + 0x0000001Bu; /* 027C3788 */ rbrew_write8(cpu->mem, _t82, (uint8_t)cpu->r[21]); L_027C378C: ; // 0x27c378c /* 027C378C */ _t83 = cpu->r[19] + 0x00000000u; /* 027C378C */ cpu->r[5] = rbrew_read32(cpu->mem, _t83); /* 027C3790 */ _t84 = cpu->r[19] + 0x00000004u; /* 027C3790 */ rbrew_write32(cpu->mem, _t84, cpu->r[25]); /* 027C3794 */ _t85 = cpu->r[5] + 0x00000000u; /* 027C3794 */ rbrew_write8(cpu->mem, _t85, (uint8_t)cpu->r[21]); L_027C3798: ; // 0x27c3798 /* 027C3798 */ _t86 = cpu->r[26] + 0x00000004u; /* 027C3798 */ rbrew_write32(cpu->mem, _t86, cpu->r[24]); L_027C379C: ; // 0x27c379c /* 027C379C */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu; /* 027C379C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C37A0 */ cpu->r[20] = cpu->r[20] + 0x0000001Cu; /* 027C37A4 */ _t87 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C37A4 */ _t88 = _t87 & 0x00000001u; /* 027C37A4 */ if (_t88) goto L_027C37A8; else goto L_027C3738; L_027C37A8: ; // 0x27c37a8 /* 027C37A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[18], 0x00000000u); /* 027C37AC */ _t89 = cpu->r[29] + 0x00000194u; /* 027C37AC */ cpu->r[3] = rbrew_read32(cpu->mem, _t89); /* 027C37B0 */ _t90 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C37B0 */ _t91 = _t90 & 0x00000001u; /* 027C37B0 */ if (_t91) goto L_027C37BC; else goto L_027C37B4; L_027C37B4: ; // 0x27c37b4 /* 027C37B4 */ _t92 = cpu->r[29] + 0x00000178u; /* 027C37B4 */ rbrew_write32(cpu->mem, _t92, cpu->r[18]); /* 027C37B8 */ _t93 = cpu->r[29] + 0x00000174u; /* 027C37B8 */ rbrew_write32(cpu->mem, _t93, cpu->r[27]); L_027C37BC: ; // 0x27c37bc /* 027C37BC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C37C0 */ _t94 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C37C0 */ _t95 = _t94 & 0x00000001u; /* 027C37C0 */ if (_t95) goto L_027C37C4; else goto L_027C3894; L_027C37C4: ; // 0x27c37c4 /* 027C37C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C37C8 */ _t96 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C37C8 */ _t97 = _t96 & 0x00000001u; /* 027C37C8 */ if (_t97) goto L_027C37CC; else goto L_027C37D4; L_027C37CC: ; // 0x27c37cc /* 027C37CC */ _t98 = cpu->r[28] + 0xFFFF98F0u; /* 027C37CC */ cpu->r[3] = rbrew_read32(cpu->mem, _t98); /* 027C37D0 */ Gambit_fn_02826F20(cpu); L_027C37D4: ; // 0x27c37d4 /* 027C37D4 */ _t99 = cpu->r[3] + 0x0000000Cu; /* 027C37D4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t99); /* 027C37D8 */ _t100 = cpu->r[7] + 0x00000034u; /* 027C37D8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t100); /* 027C37DC */ cpu->ctr = cpu->r[0]; /* 027C37E0 */ cpu->r[5] = 0x00000004u; /* 027C37E4 */ cpu->r[4] = (uint32_t)((int32_t)cpu->r[27] * (int32_t)0x0000001Cu); /* 027C37E8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C37EC */ cpu->r[19] = cpu->r[3]; /* 027C37F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C37F4 */ cpu->r[31] = cpu->r[27]; /* 027C37F8 */ cpu->r[0] = 0x00000000u; /* 027C37FC */ _t101 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C37FC */ _t102 = _t101 & 0x00000001u; /* 027C37FC */ if (_t102) goto L_027C3804; else goto L_027C3800; L_027C3800: ; // 0x27c3800 /* 027C3800 */ cpu->r[31] = 0x00000001u; L_027C3804: ; // 0x27c3804 /* 027C3804 */ cpu->r[20] = (uint32_t)((int32_t)cpu->r[0] * (int32_t)0x0000001Cu); /* 027C3808 */ _t103 = cpu->r[23] + 0x00007399u; /* 027C3808 */ cpu->r[21] = rbrew_read8(cpu->mem, _t103); /* 027C380C */ cpu->r[22] = 0x00000010u; L_027C3810: ; // 0x27c3810 /* 027C3810 */ cpu->r[26] = cpu->r[19] + cpu->r[20]; /* 027C3810 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], 0x00000000u); /* 027C3814 */ _t104 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3814 */ _t105 = _t104 & 0x00000001u; /* 027C3814 */ if (_t105) goto L_027C3874; else goto L_027C3818; L_027C3818: ; // 0x27c3818 /* 027C3818 */ cpu->r[23] = cpu->r[26]; /* 027C3818 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u); /* 027C381C */ _t106 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C381C */ _t107 = _t106 & 0x00000001u; /* 027C381C */ if (_t107) goto L_027C3820; else goto L_027C3830; L_027C3820: ; // 0x27c3820 /* 027C3820 */ cpu->r[3] = 0x0000001Cu; /* 027C3824 */ Gambit_fn_02801A78(cpu); /* 027C3828 */ cpu->r[23] = cpu->r[3]; /* 027C3828 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[23], 0x00000000u); /* 027C382C */ _t108 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C382C */ _t109 = _t108 & 0x00000001u; /* 027C382C */ if (_t109) goto L_027C3870; else goto L_027C3830; L_027C3830: ; // 0x27c3830 /* 027C3830 */ cpu->r[10] = cpu->r[23]; /* 027C3830 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027C3834 */ _t110 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3834 */ _t111 = _t110 & 0x00000001u; /* 027C3834 */ if (_t111) goto L_027C3838; else goto L_027C3848; L_027C3838: ; // 0x27c3838 /* 027C3838 */ cpu->r[3] = 0x0000000Cu; /* 027C383C */ Gambit_fn_02801A78(cpu); /* 027C3840 */ cpu->r[10] = cpu->r[3]; /* 027C3840 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027C3844 */ _t112 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3844 */ _t113 = _t112 & 0x00000001u; /* 027C3844 */ if (_t113) goto L_027C3864; else goto L_027C3848; L_027C3848: ; // 0x27c3848 /* 027C3848 */ cpu->r[0] = 0x10110000u; /* 027C384C */ _t114 = cpu->r[10] + 0x00000008u; /* 027C384C */ rbrew_write32(cpu->mem, _t114, cpu->r[22]); /* 027C3850 */ cpu->r[12] = cpu->r[23] + 0x0000000Cu; /* 027C3854 */ cpu->r[0] = cpu->r[0] + 0xFFFFC040u; /* 027C3858 */ _t115 = cpu->r[10] + 0x00000000u; /* 027C3858 */ rbrew_write32(cpu->mem, _t115, cpu->r[12]); /* 027C385C */ _t116 = cpu->r[10] + 0x00000004u; /* 027C385C */ rbrew_write32(cpu->mem, _t116, cpu->r[0]); /* 027C3860 */ _t117 = cpu->r[23] + 0x0000001Bu; /* 027C3860 */ rbrew_write8(cpu->mem, _t117, (uint8_t)cpu->r[21]); L_027C3864: ; // 0x27c3864 /* 027C3864 */ _t118 = cpu->r[23] + 0x00000000u; /* 027C3864 */ cpu->r[11] = rbrew_read32(cpu->mem, _t118); /* 027C3868 */ _t119 = cpu->r[23] + 0x00000004u; /* 027C3868 */ rbrew_write32(cpu->mem, _t119, cpu->r[25]); /* 027C386C */ _t120 = cpu->r[11] + 0x00000000u; /* 027C386C */ rbrew_write8(cpu->mem, _t120, (uint8_t)cpu->r[21]); L_027C3870: ; // 0x27c3870 /* 027C3870 */ _t121 = cpu->r[26] + 0x00000004u; /* 027C3870 */ rbrew_write32(cpu->mem, _t121, cpu->r[24]); L_027C3874: ; // 0x27c3874 /* 027C3874 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu; /* 027C3874 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C3878 */ cpu->r[20] = cpu->r[20] + 0x0000001Cu; /* 027C387C */ _t122 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C387C */ _t123 = _t122 & 0x00000001u; /* 027C387C */ if (_t123) goto L_027C3880; else goto L_027C3810; L_027C3880: ; // 0x27c3880 /* 027C3880 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[19], 0x00000000u); /* 027C3884 */ _t124 = cpu->r[29] + 0x00000194u; /* 027C3884 */ cpu->r[3] = rbrew_read32(cpu->mem, _t124); /* 027C3888 */ _t125 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3888 */ _t126 = _t125 & 0x00000001u; /* 027C3888 */ if (_t126) goto L_027C3894; else goto L_027C388C; L_027C388C: ; // 0x27c388c /* 027C388C */ _t127 = cpu->r[29] + 0x00000180u; /* 027C388C */ rbrew_write32(cpu->mem, _t127, cpu->r[19]); /* 027C3890 */ _t128 = cpu->r[29] + 0x0000017Cu; /* 027C3890 */ rbrew_write32(cpu->mem, _t128, cpu->r[27]); L_027C3894: ; // 0x27c3894 /* 027C3894 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3898 */ _t129 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3898 */ _t130 = _t129 & 0x00000001u; /* 027C3898 */ if (_t130) goto L_027C389C; else goto L_027C38E4; L_027C389C: ; // 0x27c389c /* 027C389C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C38A0 */ _t131 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C38A0 */ _t132 = _t131 & 0x00000001u; /* 027C38A0 */ if (_t132) goto L_027C38A4; else goto L_027C38AC; L_027C38A4: ; // 0x27c38a4 /* 027C38A4 */ _t133 = cpu->r[28] + 0xFFFF98F0u; /* 027C38A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t133); /* 027C38A8 */ Gambit_fn_02826F20(cpu); L_027C38AC: ; // 0x27c38ac /* 027C38AC */ _t134 = cpu->r[3] + 0x0000000Cu; /* 027C38AC */ cpu->r[12] = rbrew_read32(cpu->mem, _t134); /* 027C38B0 */ _t135 = cpu->r[12] + 0x00000034u; /* 027C38B0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t135); /* 027C38B4 */ cpu->ctr = cpu->r[0]; /* 027C38B8 */ cpu->r[5] = 0x00000004u; /* 027C38BC */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C38C0 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C38C4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C38C8 */ cpu->r[0] = cpu->r[27]; /* 027C38CC */ _t136 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C38CC */ _t137 = _t136 & 0x00000001u; /* 027C38CC */ if (_t137) goto L_027C38D4; else goto L_027C38D0; L_027C38D0: ; // 0x27c38d0 /* 027C38D0 */ cpu->r[0] = 0x00000001u; L_027C38D4: ; // 0x27c38d4 /* 027C38D4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C38D8 */ _t138 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C38D8 */ _t139 = _t138 & 0x00000001u; /* 027C38D8 */ if (_t139) goto L_027C38E4; else goto L_027C38DC; L_027C38DC: ; // 0x27c38dc /* 027C38DC */ _t140 = cpu->r[29] + 0x00000160u; /* 027C38DC */ rbrew_write32(cpu->mem, _t140, cpu->r[3]); /* 027C38E0 */ _t141 = cpu->r[29] + 0x0000015Cu; /* 027C38E0 */ rbrew_write32(cpu->mem, _t141, cpu->r[27]); L_027C38E4: ; // 0x27c38e4 /* 027C38E4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C38E8 */ cpu->r[11] = 0x00000000u; /* 027C38EC */ _t142 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C38EC */ _t143 = _t142 & 0x00000001u; /* 027C38EC */ if (_t143) goto L_027C38F0; else goto L_027C3920; L_027C38F0: ; // 0x27c38f0 /* 027C38F0 */ cpu->r[4] = 0x00000000u; /* 027C38F4 */ cpu->ctr = cpu->r[27]; /* 027C38F8 */ cpu->r[0] = cpu->r[4]; L_027C38FC: ; // 0x27c38fc /* 027C38FC */ _t144 = cpu->r[29] + 0x0000015Cu; /* 027C38FC */ cpu->r[5] = rbrew_read32(cpu->mem, _t144); /* 027C3900 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[11], cpu->r[5]); /* 027C3904 */ _t145 = cpu->r[29] + 0x00000160u; /* 027C3904 */ cpu->r[10] = rbrew_read32(cpu->mem, _t145); /* 027C3908 */ _t146 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3908 */ _t147 = _t146 & 0x00000001u; /* 027C3908 */ if (_t147) goto L_027C390C; else goto L_027C3910; L_027C390C: ; // 0x27c390c /* 027C390C */ cpu->r[10] = cpu->r[10] + cpu->r[4]; L_027C3910: ; // 0x27c3910 /* 027C3910 */ _t148 = cpu->r[10] + 0x00000000u; /* 027C3910 */ rbrew_write32(cpu->mem, _t148, cpu->r[0]); /* 027C3914 */ cpu->r[4] = cpu->r[4] + 0x00000004u; /* 027C3918 */ cpu->r[11] = cpu->r[11] + 0x00000001u; /* 027C391C */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C391C */ _t149 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C391C */ _t150 = _t149 >> (0x00000002u & 31u); /* 027C391C */ _t151 = _t150 & 0x00000001u; /* 027C391C */ if (_t151) goto L_027C38FC; else goto L_027C3920; L_027C3920: ; // 0x27c3920 /* 027C3920 */ cpu->r[22] = cpu->r[27]; /* 027C3920 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u); /* 027C3924 */ cpu->r[25] = 0x00000000u; /* 027C3928 */ _t152 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3928 */ _t153 = _t152 & 0x00000001u; /* 027C3928 */ if (_t153) goto L_027C392C; else goto L_027C3A48; L_027C392C: ; // 0x27c392c /* 027C392C */ cpu->r[23] = 0x00000000u; /* 027C3930 */ cpu->r[24] = cpu->r[23]; L_027C3934: ; // 0x27c3934 /* 027C3934 */ _t154 = cpu->r[29] + 0x0000018Cu; /* 027C3934 */ cpu->r[0] = rbrew_read32(cpu->mem, _t154); /* 027C3938 */ _t155 = cpu->r[30] + 0x00000000u; /* 027C3938 */ cpu->r[9] = rbrew_read32(cpu->mem, _t155); /* 027C393C */ _t156 = cpu->r[29] + 0x00000190u; /* 027C393C */ cpu->r[31] = rbrew_read32(cpu->mem, _t156); /* 027C3940 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[0]); /* 027C3944 */ _t157 = cpu->r[9] + 0x00000034u; /* 027C3944 */ cpu->r[0] = rbrew_read32(cpu->mem, _t157); /* 027C3948 */ _t158 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3948 */ _t159 = _t158 & 0x00000001u; /* 027C3948 */ if (_t159) goto L_027C394C; else goto L_027C3950; L_027C394C: ; // 0x27c394c /* 027C394C */ cpu->r[31] = cpu->r[31] + cpu->r[23]; L_027C3950: ; // 0x27c3950 /* 027C3950 */ cpu->ctr = cpu->r[0]; /* 027C3954 */ cpu->r[5] = cpu->r[25]; /* 027C3958 */ cpu->r[3] = cpu->r[1] + 0x00000100u; /* 027C395C */ cpu->r[4] = cpu->r[30]; /* 027C3960 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3964 */ cpu->r[5] = 0x0000000Fu; /* 027C3968 */ cpu->r[12] = cpu->r[1] + 0x000000FCu; /* 027C396C */ cpu->ctr = cpu->r[5]; /* 027C3970 */ cpu->r[4] = cpu->r[1] + 0x0000000Cu; L_027C3974: ; // 0x27c3974 /* 027C3974 */ _t160 = cpu->r[12] + 0x00000004u; /* 027C3974 */ cpu->r[6] = rbrew_read32(cpu->mem, _t160); /* 027C3978 */ _t161 = cpu->r[4] + 0x00000004u; /* 027C3978 */ rbrew_write32(cpu->mem, _t161, cpu->r[6]); /* 027C397C */ _t162 = cpu->r[12] + 0x00000008u; /* 027C397C */ cpu->r[8] = rbrew_read32(cpu->mem, _t162); /* 027C3980 */ _t163 = cpu->r[4] + 0x00000008u; /* 027C3980 */ rbrew_write32(cpu->mem, _t163, cpu->r[8]); /* 027C3984 */ _t164 = cpu->r[12] + 0x0000000Cu; /* 027C3984 */ cpu->r[0] = rbrew_read32(cpu->mem, _t164); /* 027C3988 */ _t165 = cpu->r[4] + 0x0000000Cu; /* 027C3988 */ rbrew_write32(cpu->mem, _t165, cpu->r[0]); /* 027C398C */ _t166 = cpu->r[12] + 0x00000010u; /* 027C398C */ cpu->r[0] = rbrew_read32(cpu->mem, _t166); /* 027C398C */ cpu->r[12] = _t166; /* 027C3990 */ _t167 = cpu->r[4] + 0x00000010u; /* 027C3990 */ rbrew_write32(cpu->mem, _t167, cpu->r[0]); /* 027C3990 */ cpu->r[4] = _t167; /* 027C3994 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C3994 */ _t168 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C3994 */ _t169 = _t168 >> (0x00000002u & 31u); /* 027C3994 */ _t170 = _t169 & 0x00000001u; /* 027C3994 */ if (_t170) goto L_027C3974; else goto L_027C3998; L_027C3998: ; // 0x27c3998 /* 027C3998 */ cpu->r[5] = cpu->r[1] + 0x00000010u; /* 027C399C */ cpu->r[4] = 0x00000000u; /* 027C39A0 */ cpu->r[3] = cpu->r[29]; /* 027C39A4 */ Gambit_fn_027C34A4(cpu); /* 027C39A8 */ _t171 = cpu->r[31] + 0x00000000u; /* 027C39A8 */ rbrew_write32(cpu->mem, _t171, cpu->r[3]); /* 027C39AC */ _t172 = cpu->r[29] + 0x0000018Cu; /* 027C39AC */ cpu->r[0] = rbrew_read32(cpu->mem, _t172); /* 027C39B0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[0]); /* 027C39B4 */ _t173 = cpu->r[29] + 0x00000190u; /* 027C39B4 */ cpu->r[31] = rbrew_read32(cpu->mem, _t173); /* 027C39B8 */ _t174 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C39B8 */ _t175 = _t174 & 0x00000001u; /* 027C39B8 */ if (_t175) goto L_027C39BC; else goto L_027C39C0; L_027C39BC: ; // 0x27c39bc /* 027C39BC */ cpu->r[31] = cpu->r[31] + cpu->r[23]; L_027C39C0: ; // 0x27c39c0 /* 027C39C0 */ cpu->r[3] = 0x00000004u; /* 027C39C4 */ Gambit_fn_028249FC(cpu); /* 027C39C8 */ _t176 = cpu->r[31] + 0x00000000u; /* 027C39C8 */ cpu->r[4] = rbrew_read32(cpu->mem, _t176); /* 027C39CC */ cpu->r[4] = cpu->r[4] + cpu->r[3]; /* 027C39D0 */ _t177 = cpu->r[31] + 0x00000000u; /* 027C39D0 */ rbrew_write32(cpu->mem, _t177, cpu->r[4]); /* 027C39D4 */ _t178 = cpu->r[29] + 0x00000184u; /* 027C39D4 */ cpu->r[6] = rbrew_read32(cpu->mem, _t178); /* 027C39D8 */ _t179 = cpu->r[29] + 0x00000188u; /* 027C39D8 */ cpu->r[26] = rbrew_read32(cpu->mem, _t179); /* 027C39DC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[6]); /* 027C39E0 */ _t180 = cpu->r[29] + 0x0000018Cu; /* 027C39E0 */ cpu->r[7] = rbrew_read32(cpu->mem, _t180); /* 027C39E4 */ _t181 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C39E4 */ _t182 = _t181 & 0x00000001u; /* 027C39E4 */ if (_t182) goto L_027C39E8; else goto L_027C39EC; L_027C39E8: ; // 0x27c39e8 /* 027C39E8 */ cpu->r[26] = cpu->r[26] + cpu->r[23]; L_027C39EC: ; // 0x27c39ec /* 027C39EC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[7]); /* 027C39F0 */ _t183 = cpu->r[29] + 0x00000190u; /* 027C39F0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t183); /* 027C39F4 */ _t184 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C39F4 */ _t185 = _t184 & 0x00000001u; /* 027C39F4 */ if (_t185) goto L_027C39F8; else goto L_027C39FC; L_027C39F8: ; // 0x27c39f8 /* 027C39F8 */ cpu->r[31] = cpu->r[31] + cpu->r[23]; L_027C39FC: ; // 0x27c39fc /* 027C39FC */ cpu->r[3] = 0x00000004u; /* 027C3A00 */ Gambit_fn_028249FC(cpu); /* 027C3A04 */ _t186 = cpu->r[31] + 0x00000000u; /* 027C3A04 */ cpu->r[9] = rbrew_read32(cpu->mem, _t186); /* 027C3A08 */ cpu->r[8] = cpu->r[9] + cpu->r[3]; /* 027C3A0C */ cpu->r[10] = cpu->r[8] + 0x00000800u; /* 027C3A10 */ _t187 = cpu->r[26] + 0x00000000u; /* 027C3A10 */ rbrew_write32(cpu->mem, _t187, cpu->r[10]); /* 027C3A14 */ _t188 = cpu->r[29] + 0x00000164u; /* 027C3A14 */ cpu->r[0] = rbrew_read32(cpu->mem, _t188); /* 027C3A18 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[25], cpu->r[0]); /* 027C3A1C */ _t189 = cpu->r[29] + 0x00000168u; /* 027C3A1C */ cpu->r[12] = rbrew_read32(cpu->mem, _t189); /* 027C3A20 */ _t190 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3A20 */ _t191 = _t190 & 0x00000001u; /* 027C3A20 */ if (_t191) goto L_027C3A24; else goto L_027C3A28; L_027C3A24: ; // 0x27c3a24 /* 027C3A24 */ cpu->r[12] = cpu->r[12] + cpu->r[23]; L_027C3A28: ; // 0x27c3a28 /* 027C3A28 */ cpu->r[4] = cpu->r[25]; /* 027C3A2C */ cpu->r[3] = cpu->r[29]; /* 027C3A30 */ _t192 = cpu->r[12] + 0x00000000u; /* 027C3A30 */ rbrew_write32(cpu->mem, _t192, cpu->r[24]); /* 027C3A34 */ Gambit_fn_027C2E48(cpu); /* 027C3A38 */ cpu->r[22] = cpu->r[22] + 0xFFFFFFFFu; /* 027C3A38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[22], 0x00000000u); /* 027C3A3C */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027C3A40 */ cpu->r[23] = cpu->r[23] + 0x00000004u; /* 027C3A44 */ _t193 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3A44 */ _t194 = _t193 & 0x00000001u; /* 027C3A44 */ if (_t194) goto L_027C3A48; else goto L_027C3934; L_027C3A48: ; // 0x27c3a48 /* 027C3A48 */ cpu->r[31] = 0x00000000u; /* 027C3A4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3A50 */ cpu->r[26] = cpu->r[31]; /* 027C3A54 */ cpu->r[25] = cpu->r[31]; /* 027C3A58 */ _t195 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3A58 */ _t196 = _t195 & 0x00000001u; /* 027C3A58 */ if (_t196) goto L_027C3A5C; else goto L_027C3A9C; L_027C3A5C: ; // 0x27c3a5c /* 027C3A5C */ _t197 = cpu->r[28] + 0xFFFF98F0u; /* 027C3A5C */ cpu->r[3] = rbrew_read32(cpu->mem, _t197); /* 027C3A60 */ Gambit_fn_02826F20(cpu); /* 027C3A64 */ _t198 = cpu->r[3] + 0x0000000Cu; /* 027C3A64 */ cpu->r[12] = rbrew_read32(cpu->mem, _t198); /* 027C3A68 */ _t199 = cpu->r[12] + 0x00000034u; /* 027C3A68 */ cpu->r[0] = rbrew_read32(cpu->mem, _t199); /* 027C3A6C */ cpu->ctr = cpu->r[0]; /* 027C3A70 */ cpu->r[5] = 0x00000004u; /* 027C3A74 */ cpu->r[4] = rbrew_rlwinm(cpu->r[27], 0x00000003u, 0x00000000u, 0x0000001Cu); /* 027C3A78 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3A7C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3A80 */ cpu->r[8] = cpu->r[27]; /* 027C3A84 */ _t200 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3A84 */ _t201 = _t200 & 0x00000001u; /* 027C3A84 */ if (_t201) goto L_027C3A8C; else goto L_027C3A88; L_027C3A88: ; // 0x27c3a88 /* 027C3A88 */ cpu->r[8] = 0x00000001u; L_027C3A8C: ; // 0x27c3a8c /* 027C3A8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3A90 */ _t202 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3A90 */ _t203 = _t202 & 0x00000001u; /* 027C3A90 */ if (_t203) goto L_027C3A9C; else goto L_027C3A94; L_027C3A94: ; // 0x27c3a94 /* 027C3A94 */ cpu->r[25] = cpu->r[3]; /* 027C3A98 */ cpu->r[26] = cpu->r[27]; L_027C3A9C: ; // 0x27c3a9c /* 027C3A9C */ cpu->r[24] = cpu->r[27]; /* 027C3A9C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C3AA0 */ cpu->r[8] = 0x00000000u; /* 027C3AA4 */ _t204 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3AA4 */ _t205 = _t204 & 0x00000001u; /* 027C3AA4 */ if (_t205) goto L_027C3AA8; else goto L_027C3C00; L_027C3AA8: ; // 0x27c3aa8 /* 027C3AA8 */ cpu->r[4] = 0x00000001u; /* 027C3AAC */ cpu->r[9] = 0x00000000u; /* 027C3AB0 */ cpu->r[3] = rbrew_rlwinm(cpu->r[31], 0x00000003u, 0x00000000u, 0x0000001Cu); L_027C3AB4: ; // 0x27c3ab4 /* 027C3AB4 */ _t206 = cpu->r[29] + 0x00000188u; /* 027C3AB4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t206); /* 027C3AB8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C3ABC */ cpu->r[12] = 0x00000000u; /* 027C3AC0 */ _t207 = cpu->r[29] + 0x00000184u; /* 027C3AC0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t207); /* 027C3AC4 */ _t208 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3AC4 */ _t209 = _t208 & 0x00000001u; /* 027C3AC4 */ if (_t209) goto L_027C3AD4; else goto L_027C3AC8; L_027C3AC8: ; // 0x27c3ac8 /* 027C3AC8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[26]); /* 027C3ACC */ _t210 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3ACC */ _t211 = _t210 & 0x00000001u; /* 027C3ACC */ if (_t211) goto L_027C3B84; else goto L_027C3AD0; L_027C3AD0: ; // 0x27c3ad0 /* 027C3AD0 */ goto L_027C3B94; L_027C3AD4: ; // 0x27c3ad4 /* 027C3AD4 */ cpu->ctr = cpu->r[31]; /* 027C3AD8 */ cpu->r[10] = 0x00000000u; L_027C3ADC: ; // 0x27c3adc /* 027C3ADC */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]); /* 027C3AE0 */ _t212 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3AE0 */ _t213 = _t212 & 0x00000001u; /* 027C3AE0 */ if (_t213) goto L_027C3AE4; else goto L_027C3AF4; L_027C3AE4: ; // 0x27c3ae4 /* 027C3AE4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[26]); /* 027C3AE8 */ cpu->r[5] = cpu->r[11] + cpu->r[9]; /* 027C3AEC */ _t214 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3AEC */ _t215 = _t214 & 0x00000001u; /* 027C3AEC */ if (_t215) goto L_027C3B00; else goto L_027C3AF0; L_027C3AF0: ; // 0x27c3af0 /* 027C3AF0 */ goto L_027C3B14; L_027C3AF4: ; // 0x27c3af4 /* 027C3AF4 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[26]); /* 027C3AF8 */ cpu->r[5] = cpu->r[11]; /* 027C3AFC */ _t216 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3AFC */ _t217 = _t216 & 0x00000001u; /* 027C3AFC */ if (_t217) goto L_027C3B00; else goto L_027C3B14; L_027C3B00: ; // 0x27c3b00 /* 027C3B00 */ _t218 = cpu->r[5] + 0x00000000u; /* 027C3B00 */ cpu->r[5] = rbrew_read32(cpu->mem, _t218); /* 027C3B04 */ _t219 = cpu->r[25] + cpu->r[10]; /* 027C3B04 */ cpu->r[6] = rbrew_read32(cpu->mem, _t219); /* 027C3B08 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]); /* 027C3B0C */ _t220 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3B0C */ _t221 = _t220 & 0x00000001u; /* 027C3B0C */ if (_t221) goto L_027C3B10; else goto L_027C3B70; L_027C3B10: ; // 0x27c3b10 /* 027C3B10 */ goto L_027C3B24; L_027C3B14: ; // 0x27c3b14 /* 027C3B14 */ _t222 = cpu->r[5] + 0x00000000u; /* 027C3B14 */ cpu->r[5] = rbrew_read32(cpu->mem, _t222); /* 027C3B18 */ _t223 = cpu->r[25] + 0x00000000u; /* 027C3B18 */ cpu->r[6] = rbrew_read32(cpu->mem, _t223); /* 027C3B1C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[5], cpu->r[6]); /* 027C3B20 */ _t224 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3B20 */ _t225 = _t224 & 0x00000001u; /* 027C3B20 */ if (_t225) goto L_027C3B24; else goto L_027C3B70; L_027C3B24: ; // 0x27c3b24 /* 027C3B24 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[12], cpu->r[26]); /* 027C3B28 */ _t226 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3B28 */ _t227 = _t226 & 0x00000001u; /* 027C3B28 */ if (_t227) goto L_027C3B2C; else goto L_027C3B50; L_027C3B2C: ; // 0x27c3b2c /* 027C3B2C */ cpu->r[5] = cpu->r[25] + cpu->r[10]; /* 027C3B30 */ _t228 = cpu->r[5] + 0x00000004u; /* 027C3B30 */ cpu->r[7] = rbrew_read32(cpu->mem, _t228); /* 027C3B34 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu; /* 027C3B34 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C3B38 */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027C3B3C */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027C3B40 */ cpu->r[9] = cpu->r[9] + 0x00000004u; /* 027C3B44 */ _t229 = cpu->r[5] + 0x00000004u; /* 027C3B44 */ rbrew_write32(cpu->mem, _t229, cpu->r[7]); /* 027C3B48 */ _t230 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3B48 */ _t231 = _t230 & 0x00000001u; /* 027C3B48 */ if (_t231) goto L_027C3B4C; else goto L_027C3AB4; L_027C3B4C: ; // 0x27c3b4c /* 027C3B4C */ goto L_027C3C00; L_027C3B50: ; // 0x27c3b50 /* 027C3B50 */ _t232 = cpu->r[25] + 0x00000004u; /* 027C3B50 */ cpu->r[7] = rbrew_read32(cpu->mem, _t232); /* 027C3B54 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu; /* 027C3B54 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C3B58 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027C3B5C */ cpu->r[7] = cpu->r[7] + 0x00000001u; /* 027C3B60 */ cpu->r[9] = cpu->r[9] + 0x00000004u; /* 027C3B64 */ _t233 = cpu->r[25] + 0x00000004u; /* 027C3B64 */ rbrew_write32(cpu->mem, _t233, cpu->r[7]); /* 027C3B68 */ _t234 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3B68 */ _t235 = _t234 & 0x00000001u; /* 027C3B68 */ if (_t235) goto L_027C3B6C; else goto L_027C3AB4; L_027C3B6C: ; // 0x27c3b6c /* 027C3B6C */ goto L_027C3C00; L_027C3B70: ; // 0x27c3b70 /* 027C3B70 */ cpu->r[10] = cpu->r[10] + 0x00000008u; /* 027C3B74 */ cpu->r[12] = cpu->r[12] + 0x00000001u; /* 027C3B78 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C3B78 */ _t236 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C3B78 */ _t237 = _t236 >> (0x00000002u & 31u); /* 027C3B78 */ _t238 = _t237 & 0x00000001u; /* 027C3B78 */ if (_t238) goto L_027C3ADC; else goto L_027C3B7C; L_027C3B7C: ; // 0x27c3b7c /* 027C3B7C */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[26]); /* 027C3B80 */ _t239 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3B80 */ _t240 = _t239 & 0x00000001u; /* 027C3B80 */ if (_t240) goto L_027C3B84; else goto L_027C3B94; L_027C3B84: ; // 0x27c3b84 /* 027C3B84 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]); /* 027C3B88 */ cpu->r[10] = cpu->r[25] + cpu->r[3]; /* 027C3B8C */ _t241 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3B8C */ _t242 = _t241 & 0x00000001u; /* 027C3B8C */ if (_t242) goto L_027C3BA0; else goto L_027C3B90; L_027C3B90: ; // 0x27c3b90 /* 027C3B90 */ goto L_027C3BA4; L_027C3B94: ; // 0x27c3b94 /* 027C3B94 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[8], cpu->r[0]); /* 027C3B98 */ cpu->r[10] = cpu->r[25]; /* 027C3B9C */ _t243 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3B9C */ _t244 = _t243 & 0x00000001u; /* 027C3B9C */ if (_t244) goto L_027C3BA0; else goto L_027C3B90; L_027C3BA0: ; // 0x27c3ba0 /* 027C3BA0 */ cpu->r[11] = cpu->r[11] + cpu->r[9]; L_027C3BA4: ; // 0x27c3ba4 /* 027C3BA4 */ _t245 = cpu->r[11] + 0x00000000u; /* 027C3BA4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t245); /* 027C3BA8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[31], cpu->r[26]); /* 027C3BAC */ _t246 = cpu->r[10] + 0x00000000u; /* 027C3BAC */ rbrew_write32(cpu->mem, _t246, cpu->r[0]); /* 027C3BB0 */ _t247 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3BB0 */ _t248 = _t247 & 0x00000001u; /* 027C3BB0 */ if (_t248) goto L_027C3BB4; else goto L_027C3BDC; L_027C3BB4: ; // 0x27c3bb4 /* 027C3BB4 */ cpu->r[5] = cpu->r[25] + cpu->r[3]; /* 027C3BB8 */ cpu->r[3] = cpu->r[3] + 0x00000008u; /* 027C3BBC */ cpu->r[7] = cpu->r[4]; /* 027C3BC0 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C3BC4 */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu; /* 027C3BC4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C3BC8 */ _t249 = cpu->r[5] + 0x00000004u; /* 027C3BC8 */ rbrew_write32(cpu->mem, _t249, cpu->r[7]); /* 027C3BCC */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027C3BD0 */ cpu->r[9] = cpu->r[9] + 0x00000004u; /* 027C3BD4 */ _t250 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3BD4 */ _t251 = _t250 & 0x00000001u; /* 027C3BD4 */ if (_t251) goto L_027C3BD8; else goto L_027C3AB4; L_027C3BD8: ; // 0x27c3bd8 /* 027C3BD8 */ goto L_027C3C00; L_027C3BDC: ; // 0x27c3bdc /* 027C3BDC */ cpu->r[3] = cpu->r[3] + 0x00000008u; /* 027C3BE0 */ cpu->r[5] = cpu->r[25]; /* 027C3BE4 */ cpu->r[7] = cpu->r[4]; /* 027C3BE8 */ cpu->r[31] = cpu->r[31] + 0x00000001u; /* 027C3BEC */ cpu->r[24] = cpu->r[24] + 0xFFFFFFFFu; /* 027C3BEC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[24], 0x00000000u); /* 027C3BF0 */ _t252 = cpu->r[5] + 0x00000004u; /* 027C3BF0 */ rbrew_write32(cpu->mem, _t252, cpu->r[7]); /* 027C3BF4 */ cpu->r[8] = cpu->r[8] + 0x00000001u; /* 027C3BF8 */ cpu->r[9] = cpu->r[9] + 0x00000004u; /* 027C3BFC */ _t253 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3BFC */ _t254 = _t253 & 0x00000001u; /* 027C3BFC */ if (_t254) goto L_027C3C00; else goto L_027C3AB4; L_027C3C00: ; // 0x27c3c00 /* 027C3C00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C3C04 */ cpu->r[26] = 0x00000000u; /* 027C3C08 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3C0C */ cpu->r[25] = cpu->r[26]; /* 027C3C10 */ _t255 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3C10 */ _t256 = _t255 & 0x00000001u; /* 027C3C10 */ if (_t256) goto L_027C3C14; else goto L_027C3C9C; L_027C3C14: ; // 0x27c3c14 /* 027C3C14 */ _t257 = cpu->r[30] + 0x00000000u; /* 027C3C14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t257); /* 027C3C18 */ _t258 = cpu->r[11] + 0x00000034u; /* 027C3C18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t258); /* 027C3C1C */ cpu->ctr = cpu->r[0]; /* 027C3C20 */ cpu->r[5] = cpu->r[25]; /* 027C3C24 */ cpu->r[3] = cpu->r[1] + 0x000001F0u; /* 027C3C28 */ cpu->r[4] = cpu->r[30]; /* 027C3C2C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3C30 */ cpu->r[9] = 0x0000000Fu; /* 027C3C34 */ cpu->r[6] = cpu->r[1] + 0x000001ECu; /* 027C3C38 */ cpu->ctr = cpu->r[9]; /* 027C3C3C */ cpu->r[8] = cpu->r[1] + 0x0000000Cu; L_027C3C40: ; // 0x27c3c40 /* 027C3C40 */ _t259 = cpu->r[6] + 0x00000004u; /* 027C3C40 */ cpu->r[12] = rbrew_read32(cpu->mem, _t259); /* 027C3C44 */ _t260 = cpu->r[8] + 0x00000004u; /* 027C3C44 */ rbrew_write32(cpu->mem, _t260, cpu->r[12]); /* 027C3C48 */ _t261 = cpu->r[6] + 0x00000008u; /* 027C3C48 */ cpu->r[0] = rbrew_read32(cpu->mem, _t261); /* 027C3C4C */ _t262 = cpu->r[8] + 0x00000008u; /* 027C3C4C */ rbrew_write32(cpu->mem, _t262, cpu->r[0]); /* 027C3C50 */ _t263 = cpu->r[6] + 0x0000000Cu; /* 027C3C50 */ cpu->r[4] = rbrew_read32(cpu->mem, _t263); /* 027C3C54 */ _t264 = cpu->r[8] + 0x0000000Cu; /* 027C3C54 */ rbrew_write32(cpu->mem, _t264, cpu->r[4]); /* 027C3C58 */ _t265 = cpu->r[6] + 0x00000010u; /* 027C3C58 */ cpu->r[5] = rbrew_read32(cpu->mem, _t265); /* 027C3C58 */ cpu->r[6] = _t265; /* 027C3C5C */ _t266 = cpu->r[8] + 0x00000010u; /* 027C3C5C */ rbrew_write32(cpu->mem, _t266, cpu->r[5]); /* 027C3C5C */ cpu->r[8] = _t266; /* 027C3C60 */ cpu->ctr = cpu->ctr - 0x00000001u; /* 027C3C60 */ _t267 = rbrew_cmp_u32(cpu->ctr, 0x00000000u); /* 027C3C60 */ _t268 = _t267 >> (0x00000002u & 31u); /* 027C3C60 */ _t269 = _t268 & 0x00000001u; /* 027C3C60 */ if (_t269) goto L_027C3C40; else goto L_027C3C64; L_027C3C64: ; // 0x27c3c64 /* 027C3C64 */ cpu->r[5] = cpu->r[1] + 0x00000010u; /* 027C3C68 */ cpu->r[4] = 0x00000001u; /* 027C3C6C */ cpu->r[3] = cpu->r[29]; /* 027C3C70 */ Gambit_fn_027C34A4(cpu); /* 027C3C74 */ cpu->r[31] = cpu->r[3]; /* 027C3C78 */ cpu->r[3] = 0x00000004u; /* 027C3C7C */ Gambit_fn_0282268C(cpu); /* 027C3C80 */ cpu->r[31] = cpu->r[31] + cpu->r[3]; /* 027C3C84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], cpu->r[26]); /* 027C3C88 */ _t270 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3C88 */ _t271 = _t270 & 0x00000001u; /* 027C3C88 */ if (_t271) goto L_027C3C8C; else goto L_027C3C90; L_027C3C8C: ; // 0x27c3c8c /* 027C3C8C */ cpu->r[26] = cpu->r[31]; L_027C3C90: ; // 0x27c3c90 /* 027C3C90 */ cpu->r[27] = cpu->r[27] + 0xFFFFFFFFu; /* 027C3C90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3C94 */ cpu->r[25] = cpu->r[25] + 0x00000001u; /* 027C3C98 */ _t272 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3C98 */ _t273 = _t272 & 0x00000001u; /* 027C3C98 */ if (_t273) goto L_027C3C9C; else goto L_027C3C14; L_027C3C9C: ; // 0x27c3c9c /* 027C3C9C */ _t274 = cpu->r[30] + 0x00000000u; /* 027C3C9C */ cpu->r[6] = rbrew_read32(cpu->mem, _t274); /* 027C3CA0 */ _t275 = cpu->r[6] + 0x0000002Cu; /* 027C3CA0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t275); /* 027C3CA4 */ cpu->ctr = cpu->r[0]; /* 027C3CA8 */ cpu->r[3] = cpu->r[30]; /* 027C3CAC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3CB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3CB4 */ _t276 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3CB4 */ _t277 = _t276 & 0x00000001u; /* 027C3CB4 */ if (_t277) goto L_027C3CEC; else goto L_027C3CB8; L_027C3CB8: ; // 0x27c3cb8 /* 027C3CB8 */ _t278 = cpu->r[28] + 0xFFFF98F0u; /* 027C3CB8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t278); /* 027C3CBC */ cpu->r[31] = 0x00000001u; /* 027C3CC0 */ Gambit_fn_02826F20(cpu); /* 027C3CC4 */ _t279 = cpu->r[3] + 0x0000000Cu; /* 027C3CC4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t279); /* 027C3CC8 */ _t280 = cpu->r[10] + 0x00000034u; /* 027C3CC8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t280); /* 027C3CCC */ cpu->r[4] = 0x00000004u; /* 027C3CD0 */ cpu->ctr = cpu->r[11]; /* 027C3CD4 */ cpu->r[5] = cpu->r[4]; /* 027C3CD8 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3CDC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3CE0 */ cpu->r[7] = cpu->r[31]; /* 027C3CE4 */ _t281 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3CE4 */ _t282 = _t281 & 0x00000001u; /* 027C3CE4 */ if (_t282) goto L_027C3D48; else goto L_027C3CE8; L_027C3CE8: ; // 0x27c3ce8 /* 027C3CE8 */ goto L_027C3D40; L_027C3CEC: ; // 0x27c3cec /* 027C3CEC */ _t283 = cpu->r[30] + 0x00000000u; /* 027C3CEC */ cpu->r[8] = rbrew_read32(cpu->mem, _t283); /* 027C3CF0 */ _t284 = cpu->r[8] + 0x0000002Cu; /* 027C3CF0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t284); /* 027C3CF4 */ cpu->ctr = cpu->r[0]; /* 027C3CF8 */ cpu->r[3] = cpu->r[30]; /* 027C3CFC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3D00 */ cpu->r[31] = cpu->r[3]; /* 027C3D00 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C3D04 */ _t285 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3D04 */ _t286 = _t285 & 0x00000001u; /* 027C3D04 */ if (_t286) goto L_027C3D08; else goto L_027C3D90; L_027C3D08: ; // 0x27c3d08 /* 027C3D08 */ _t287 = cpu->r[28] + 0xFFFF98F0u; /* 027C3D08 */ cpu->r[3] = rbrew_read32(cpu->mem, _t287); /* 027C3D0C */ Gambit_fn_02826F20(cpu); /* 027C3D10 */ _t288 = cpu->r[3] + 0x0000000Cu; /* 027C3D10 */ cpu->r[10] = rbrew_read32(cpu->mem, _t288); /* 027C3D14 */ _t289 = cpu->r[10] + 0x00000034u; /* 027C3D14 */ cpu->r[11] = rbrew_read32(cpu->mem, _t289); /* 027C3D18 */ cpu->ctr = cpu->r[11]; /* 027C3D1C */ cpu->r[5] = 0x00000004u; /* 027C3D20 */ cpu->r[4] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C3D24 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3D28 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C3D2C */ cpu->r[7] = cpu->r[31]; /* 027C3D30 */ _t290 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3D30 */ _t291 = _t290 & 0x00000001u; /* 027C3D30 */ if (_t291) goto L_027C3D38; else goto L_027C3D34; L_027C3D34: ; // 0x27c3d34 /* 027C3D34 */ cpu->r[7] = 0x00000001u; L_027C3D38: ; // 0x27c3d38 /* 027C3D38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3D3C */ _t292 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3D3C */ _t293 = _t292 & 0x00000001u; /* 027C3D3C */ if (_t293) goto L_027C3D48; else goto L_027C3D40; L_027C3D40: ; // 0x27c3d40 /* 027C3D40 */ _t294 = cpu->r[29] + 0x000001A0u; /* 027C3D40 */ rbrew_write32(cpu->mem, _t294, cpu->r[3]); /* 027C3D44 */ _t295 = cpu->r[29] + 0x0000019Cu; /* 027C3D44 */ rbrew_write32(cpu->mem, _t295, cpu->r[31]); L_027C3D48: ; // 0x27c3d48 /* 027C3D48 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C3D4C */ _t296 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3D4C */ _t297 = _t296 & 0x00000001u; /* 027C3D4C */ if (_t297) goto L_027C3D50; else goto L_027C3D90; L_027C3D50: ; // 0x27c3d50 /* 027C3D50 */ _t298 = cpu->r[28] + 0xFFFF98F0u; /* 027C3D50 */ cpu->r[3] = rbrew_read32(cpu->mem, _t298); /* 027C3D54 */ Gambit_fn_02826F20(cpu); /* 027C3D58 */ _t299 = cpu->r[3] + 0x0000000Cu; /* 027C3D58 */ cpu->r[12] = rbrew_read32(cpu->mem, _t299); /* 027C3D5C */ _t300 = cpu->r[12] + 0x00000034u; /* 027C3D5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t300); /* 027C3D60 */ cpu->ctr = cpu->r[0]; /* 027C3D64 */ cpu->r[5] = 0x00000004u; /* 027C3D68 */ cpu->r[4] = rbrew_rlwinm(cpu->r[31], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C3D6C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3D70 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C3D74 */ cpu->r[6] = cpu->r[31]; /* 027C3D78 */ _t301 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3D78 */ _t302 = _t301 & 0x00000001u; /* 027C3D78 */ if (_t302) goto L_027C3D80; else goto L_027C3D7C; L_027C3D7C: ; // 0x27c3d7c /* 027C3D7C */ cpu->r[6] = 0x00000001u; L_027C3D80: ; // 0x27c3d80 /* 027C3D80 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3D84 */ _t303 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3D84 */ _t304 = _t303 & 0x00000001u; /* 027C3D84 */ if (_t304) goto L_027C3D90; else goto L_027C3D88; L_027C3D88: ; // 0x27c3d88 /* 027C3D88 */ _t305 = cpu->r[29] + 0x000001A8u; /* 027C3D88 */ rbrew_write32(cpu->mem, _t305, cpu->r[3]); /* 027C3D8C */ _t306 = cpu->r[29] + 0x000001A4u; /* 027C3D8C */ rbrew_write32(cpu->mem, _t306, cpu->r[31]); L_027C3D90: ; // 0x27c3d90 /* 027C3D90 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C3D94 */ cpu->r[23] = 0x00000000u; /* 027C3D98 */ _t307 = cpu->cr[0] >> (0x00000002u & 31u); /* 027C3D98 */ _t308 = _t307 & 0x00000001u; /* 027C3D98 */ if (_t308) goto L_027C3D9C; else goto L_027C3E14; L_027C3D9C: ; // 0x27c3d9c /* 027C3D9C */ cpu->r[28] = 0x10110000u; /* 027C3DA0 */ cpu->r[27] = 0x10110000u; /* 027C3DA4 */ cpu->r[24] = 0x00000000u; /* 027C3DA8 */ cpu->r[28] = cpu->r[28] + 0xFFFFC028u; /* 027C3DAC */ cpu->r[27] = cpu->r[27] + 0xFFFFC0ECu; /* 027C3DB0 */ cpu->r[25] = cpu->r[24]; L_027C3DB4: ; // 0x27c3db4 /* 027C3DB4 */ _t309 = cpu->r[29] + 0x0000019Cu; /* 027C3DB4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t309); /* 027C3DB8 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[0]); /* 027C3DBC */ _t310 = cpu->r[29] + 0x000001A0u; /* 027C3DBC */ cpu->r[30] = rbrew_read32(cpu->mem, _t310); /* 027C3DC0 */ _t311 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3DC0 */ _t312 = _t311 & 0x00000001u; /* 027C3DC0 */ if (_t312) goto L_027C3DC4; else goto L_027C3DC8; L_027C3DC4: ; // 0x27c3dc4 /* 027C3DC4 */ cpu->r[30] = cpu->r[30] + cpu->r[24]; L_027C3DC8: ; // 0x27c3dc8 /* 027C3DC8 */ _t313 = cpu->r[1] + 0x0000000Cu; /* 027C3DC8 */ rbrew_write32(cpu->mem, _t313, cpu->r[28]); /* 027C3DCC */ cpu->r[3] = cpu->r[26]; /* 027C3DD0 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027C3DD4 */ _t314 = cpu->r[29] + 0x00000194u; /* 027C3DD4 */ cpu->r[5] = rbrew_read32(cpu->mem, _t314); /* 027C3DD8 */ cpu->r[6] = 0x00000001u; /* 027C3DDC */ cpu->r[7] = 0x00000000u; /* 027C3DE0 */ _t315 = cpu->r[1] + 0x00000008u; /* 027C3DE0 */ rbrew_write32(cpu->mem, _t315, cpu->r[27]); /* 027C3DE4 */ Gambit_fn_02822600(cpu); /* 027C3DE8 */ _t316 = cpu->r[30] + 0x00000000u; /* 027C3DE8 */ rbrew_write32(cpu->mem, _t316, cpu->r[3]); /* 027C3DEC */ _t317 = cpu->r[29] + 0x000001A4u; /* 027C3DEC */ cpu->r[0] = rbrew_read32(cpu->mem, _t317); /* 027C3DF0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[23], cpu->r[0]); /* 027C3DF4 */ _t318 = cpu->r[29] + 0x000001A8u; /* 027C3DF4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t318); /* 027C3DF8 */ _t319 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3DF8 */ _t320 = _t319 & 0x00000001u; /* 027C3DF8 */ if (_t320) goto L_027C3DFC; else goto L_027C3E00; L_027C3DFC: ; // 0x27c3dfc /* 027C3DFC */ cpu->r[8] = cpu->r[8] + cpu->r[24]; L_027C3E00: ; // 0x27c3e00 /* 027C3E00 */ _t321 = cpu->r[8] + 0x00000000u; /* 027C3E00 */ rbrew_write32(cpu->mem, _t321, cpu->r[25]); /* 027C3E04 */ cpu->r[31] = cpu->r[31] + 0xFFFFFFFFu; /* 027C3E04 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C3E08 */ cpu->r[23] = cpu->r[23] + 0x00000001u; /* 027C3E0C */ cpu->r[24] = cpu->r[24] + 0x00000004u; /* 027C3E10 */ _t322 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3E10 */ _t323 = _t322 & 0x00000001u; /* 027C3E10 */ if (_t323) goto L_027C3E14; else goto L_027C3DB4; L_027C3E14: ; // 0x27c3e14 /* 027C3E14 */ /* nop */ /* 027C3E18 */ _t324 = cpu->r[1] + 0x0000031Cu; /* 027C3E18 */ cpu->r[0] = rbrew_read32(cpu->mem, _t324); /* 027C3E1C */ cpu->lr = cpu->r[0]; /* 027C3E20 */ cpu->r[1] = cpu->r[1] + 0x00000318u; /* 027C3E24 */ return; } // fn_027C3E28 @ 0x27c3e28 void Gambit_fn_027C3E28(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18, _t19, _t20, _t21, _t22, _t23, _t24, _t25, _t26, _t27, _t28, _t29, _t30, _t31, _t32, _t33, _t34, _t35, _t36, _t37, _t38, _t39, _t40, _t41, _t42, _t43, _t44, _t45, _t46, _t47, _t48, _t49, _t50, _t51, _t52, _t53, _t54; L_027C3E28: ; // 0x27c3e28 /* 027C3E28 */ _t0 = cpu->r[1] + 0xFFFFFFE0u; /* 027C3E28 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C3E28 */ cpu->r[1] = _t0; /* 027C3E2C */ /* nop */ /* 027C3E30 */ cpu->r[0] = cpu->lr; /* 027C3E34 */ _t1 = cpu->r[1] + 0x00000024u; /* 027C3E34 */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027C3E38 */ cpu->r[31] = 0x101D0000u; /* 027C3E3C */ _t2 = cpu->r[31] + 0xFFFF93D8u; /* 027C3E3C */ cpu->r[31] = rbrew_read32(cpu->mem, _t2); /* 027C3E40 */ _t3 = cpu->r[31] + 0x00000000u; /* 027C3E40 */ cpu->r[9] = rbrew_read32(cpu->mem, _t3); /* 027C3E44 */ _t4 = cpu->r[9] + 0x00000024u; /* 027C3E44 */ cpu->r[0] = rbrew_read32(cpu->mem, _t4); /* 027C3E48 */ cpu->r[30] = cpu->r[3]; /* 027C3E4C */ cpu->ctr = cpu->r[0]; /* 027C3E50 */ cpu->r[3] = cpu->r[31]; /* 027C3E54 */ cpu->r[26] = 0x00000000u; /* 027C3E58 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3E5C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[3]); /* 027C3E60 */ _t5 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3E60 */ _t6 = _t5 & 0x00000001u; /* 027C3E60 */ if (_t6) goto L_027C3E64; else goto L_027C3EE8; L_027C3E64: ; // 0x27c3e64 /* 027C3E64 */ cpu->r[28] = 0x00000000u; /* 027C3E68 */ cpu->r[29] = cpu->r[28]; L_027C3E6C: ; // 0x27c3e6c /* 027C3E6C */ _t7 = cpu->r[30] + 0x0000015Cu; /* 027C3E6C */ cpu->r[0] = rbrew_read32(cpu->mem, _t7); /* 027C3E70 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]); /* 027C3E74 */ _t8 = cpu->r[30] + 0x00000160u; /* 027C3E74 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027C3E78 */ _t9 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3E78 */ _t10 = _t9 & 0x00000001u; /* 027C3E78 */ if (_t10) goto L_027C3E7C; else goto L_027C3E80; L_027C3E7C: ; // 0x27c3e7c /* 027C3E7C */ cpu->r[12] = cpu->r[12] + cpu->r[28]; L_027C3E80: ; // 0x27c3e80 /* 027C3E80 */ _t11 = cpu->r[12] + 0x00000000u; /* 027C3E80 */ cpu->r[27] = rbrew_read32(cpu->mem, _t11); /* 027C3E84 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C3E88 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3E88 */ _t13 = _t12 & 0x00000001u; /* 027C3E88 */ if (_t13) goto L_027C3EC4; else goto L_027C3E8C; L_027C3E8C: ; // 0x27c3e8c /* 027C3E8C */ cpu->r[3] = cpu->r[27]; /* 027C3E90 */ Gambit_fn_027C2938(cpu); /* 027C3E94 */ _t14 = cpu->r[27] + 0x00000008u; /* 027C3E94 */ cpu->r[8] = rbrew_read32(cpu->mem, _t14); /* 027C3E98 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000003u); /* 027C3E9C */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3E9C */ _t16 = _t15 & 0x00000001u; /* 027C3E9C */ if (_t16) goto L_027C3EA0; else goto L_027C3EC4; L_027C3EA0: ; // 0x27c3ea0 /* 027C3EA0 */ cpu->r[3] = cpu->r[30]; /* 027C3EA4 */ cpu->r[4] = cpu->r[26]; /* 027C3EA8 */ Gambit_fn_027C2E48(cpu); /* 027C3EAC */ _t17 = cpu->r[30] + 0x0000015Cu; /* 027C3EAC */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C3EB0 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[26], cpu->r[0]); /* 027C3EB4 */ _t18 = cpu->r[30] + 0x00000160u; /* 027C3EB4 */ cpu->r[10] = rbrew_read32(cpu->mem, _t18); /* 027C3EB8 */ _t19 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3EB8 */ _t20 = _t19 & 0x00000001u; /* 027C3EB8 */ if (_t20) goto L_027C3EBC; else goto L_027C3EC0; L_027C3EBC: ; // 0x27c3ebc /* 027C3EBC */ cpu->r[10] = cpu->r[10] + cpu->r[28]; L_027C3EC0: ; // 0x27c3ec0 /* 027C3EC0 */ _t21 = cpu->r[10] + 0x00000000u; /* 027C3EC0 */ rbrew_write32(cpu->mem, _t21, cpu->r[29]); L_027C3EC4: ; // 0x27c3ec4 /* 027C3EC4 */ _t22 = cpu->r[31] + 0x00000000u; /* 027C3EC4 */ cpu->r[7] = rbrew_read32(cpu->mem, _t22); /* 027C3EC8 */ _t23 = cpu->r[7] + 0x00000024u; /* 027C3EC8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027C3ECC */ cpu->ctr = cpu->r[0]; /* 027C3ED0 */ cpu->r[28] = cpu->r[28] + 0x00000004u; /* 027C3ED4 */ cpu->r[3] = cpu->r[31]; /* 027C3ED8 */ cpu->r[26] = cpu->r[26] + 0x00000001u; /* 027C3EDC */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C3EE0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[26], cpu->r[3]); /* 027C3EE4 */ _t24 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3EE4 */ _t25 = _t24 & 0x00000001u; /* 027C3EE4 */ if (_t25) goto L_027C3E6C; else goto L_027C3EE8; L_027C3EE8: ; // 0x27c3ee8 /* 027C3EE8 */ _t26 = cpu->r[30] + 0x000001A4u; /* 027C3EE8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t26); /* 027C3EEC */ cpu->r[9] = 0x00000000u; /* 027C3EF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]); /* 027C3EF4 */ _t27 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3EF4 */ _t28 = _t27 & 0x00000001u; /* 027C3EF4 */ if (_t28) goto L_027C3EF8; else goto L_027C3F78; L_027C3EF8: ; // 0x27c3ef8 /* 027C3EF8 */ cpu->r[6] = 0x00000000u; /* 027C3EFC */ cpu->r[7] = cpu->r[6]; L_027C3F00: ; // 0x27c3f00 /* 027C3F00 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]); /* 027C3F04 */ _t29 = cpu->r[30] + 0x000001A8u; /* 027C3F04 */ cpu->r[11] = rbrew_read32(cpu->mem, _t29); /* 027C3F08 */ _t30 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3F08 */ _t31 = _t30 & 0x00000001u; /* 027C3F08 */ if (_t31) goto L_027C3F0C; else goto L_027C3F1C; L_027C3F0C: ; // 0x27c3f0c /* 027C3F0C */ _t32 = cpu->r[11] + cpu->r[6]; /* 027C3F0C */ cpu->r[10] = rbrew_read32(cpu->mem, _t32); /* 027C3F10 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027C3F14 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3F14 */ _t34 = _t33 & 0x00000001u; /* 027C3F14 */ if (_t34) goto L_027C3F68; else goto L_027C3F18; L_027C3F18: ; // 0x27c3f18 /* 027C3F18 */ goto L_027C3F28; L_027C3F1C: ; // 0x27c3f1c /* 027C3F1C */ _t35 = cpu->r[11] + 0x00000000u; /* 027C3F1C */ cpu->r[10] = rbrew_read32(cpu->mem, _t35); /* 027C3F20 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[10], 0x00000000u); /* 027C3F24 */ _t36 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3F24 */ _t37 = _t36 & 0x00000001u; /* 027C3F24 */ if (_t37) goto L_027C3F68; else goto L_027C3F28; L_027C3F28: ; // 0x27c3f28 /* 027C3F28 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]); /* 027C3F2C */ _t38 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3F2C */ _t39 = _t38 & 0x00000001u; /* 027C3F2C */ if (_t39) goto L_027C3F30; else goto L_027C3F44; L_027C3F30: ; // 0x27c3f30 /* 027C3F30 */ _t40 = cpu->r[11] + cpu->r[6]; /* 027C3F30 */ cpu->r[10] = rbrew_read32(cpu->mem, _t40); /* 027C3F34 */ _t41 = cpu->r[10] + 0x00000008u; /* 027C3F34 */ cpu->r[12] = rbrew_read32(cpu->mem, _t41); /* 027C3F38 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C3F3C */ _t42 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3F3C */ _t43 = _t42 & 0x00000001u; /* 027C3F3C */ if (_t43) goto L_027C3F40; else goto L_027C3F54; L_027C3F40: ; // 0x27c3f40 /* 027C3F40 */ goto L_027C3F68; L_027C3F44: ; // 0x27c3f44 /* 027C3F44 */ _t44 = cpu->r[11] + 0x00000000u; /* 027C3F44 */ cpu->r[10] = rbrew_read32(cpu->mem, _t44); /* 027C3F48 */ _t45 = cpu->r[10] + 0x00000008u; /* 027C3F48 */ cpu->r[12] = rbrew_read32(cpu->mem, _t45); /* 027C3F4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C3F50 */ _t46 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3F50 */ _t47 = _t46 & 0x00000001u; /* 027C3F50 */ if (_t47) goto L_027C3F68; else goto L_027C3F54; L_027C3F54: ; // 0x27c3f54 /* 027C3F54 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[9], cpu->r[0]); /* 027C3F58 */ _t48 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3F58 */ _t49 = _t48 & 0x00000001u; /* 027C3F58 */ if (_t49) goto L_027C3F5C; else goto L_027C3F60; L_027C3F5C: ; // 0x27c3f5c /* 027C3F5C */ cpu->r[11] = cpu->r[11] + cpu->r[6]; L_027C3F60: ; // 0x27c3f60 /* 027C3F60 */ _t50 = cpu->r[11] + 0x00000000u; /* 027C3F60 */ rbrew_write32(cpu->mem, _t50, cpu->r[7]); /* 027C3F64 */ _t51 = cpu->r[30] + 0x000001A4u; /* 027C3F64 */ cpu->r[0] = rbrew_read32(cpu->mem, _t51); L_027C3F68: ; // 0x27c3f68 /* 027C3F68 */ cpu->r[9] = cpu->r[9] + 0x00000001u; /* 027C3F6C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[9], cpu->r[0]); /* 027C3F70 */ cpu->r[6] = cpu->r[6] + 0x00000004u; /* 027C3F74 */ _t52 = cpu->cr[0] >> (0x00000003u & 31u); /* 027C3F74 */ _t53 = _t52 & 0x00000001u; /* 027C3F74 */ if (_t53) goto L_027C3F00; else goto L_027C3F78; L_027C3F78: ; // 0x27c3f78 /* 027C3F78 */ /* nop */ /* 027C3F7C */ _t54 = cpu->r[1] + 0x00000024u; /* 027C3F7C */ cpu->r[0] = rbrew_read32(cpu->mem, _t54); /* 027C3F80 */ cpu->lr = cpu->r[0]; /* 027C3F84 */ cpu->r[1] = cpu->r[1] + 0x00000020u; /* 027C3F88 */ return; } // fn_027C3F8C @ 0x27c3f8c void Gambit_fn_027C3F8C(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_027C3F8C: ; // 0x27c3f8c /* 027C3F8C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C3F90 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3F90 */ _t1 = _t0 & 0x00000001u; /* 027C3F90 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C3F90 */ goto L_027C3F94; L_027C3F94: ; // 0x27c3f94 /* 027C3F94 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C3F94 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C3F98 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3F98 */ _t3 = _t2 & 0x00000001u; /* 027C3F98 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C3F98 */ goto L_027C3F9C; L_027C3F9C: ; // 0x27c3f9c /* 027C3F9C */ 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_027C3FA4 @ 0x27c3fa4 void Gambit_fn_027C3FA4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027C3FA4: ; // 0x27c3fa4 /* 027C3FA4 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C3FA4 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C3FA4 */ cpu->r[1] = _t0; /* 027C3FA8 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C3FA8 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C3FAC */ _t2 = cpu->r[1] + 0x00000008u; /* 027C3FAC */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C3FB0 */ cpu->r[30] = cpu->r[3]; /* 027C3FB0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C3FB4 */ cpu->r[31] = cpu->r[4]; /* 027C3FB8 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C3FB8 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C3FBC */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3FBC */ _t5 = _t4 & 0x00000001u; /* 027C3FBC */ if (_t5) goto L_027C4000; else goto L_027C3FC0; L_027C3FC0: ; // 0x27c3fc0 /* 027C3FC0 */ cpu->r[0] = 0x10110000u; /* 027C3FC4 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu; /* 027C3FC8 */ cpu->r[0] = cpu->r[0] + 0xFFFFC078u; /* 027C3FCC */ cpu->r[4] = 0x00000002u; /* 027C3FD0 */ _t6 = cpu->r[30] + 0x00000020u; /* 027C3FD0 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027C3FD4 */ Gambit_fn_02928E8C(cpu); /* 027C3FD8 */ cpu->r[3] = cpu->r[30] + 0x000000C8u; /* 027C3FDC */ cpu->r[4] = 0x00000002u; /* 027C3FE0 */ Gambit_fn_02928E8C(cpu); /* 027C3FE4 */ cpu->r[3] = cpu->r[30]; /* 027C3FE8 */ cpu->r[4] = 0x00000000u; /* 027C3FEC */ Gambit_fn_028136EC(cpu); /* 027C3FF0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C3FF0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C3FF4 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C3FF4 */ _t8 = _t7 & 0x00000001u; /* 027C3FF4 */ if (_t8) goto L_027C4000; else goto L_027C3FF8; L_027C3FF8: ; // 0x27c3ff8 /* 027C3FF8 */ cpu->r[3] = cpu->r[30]; /* 027C3FFC */ Gambit_fn_02801BB0(cpu); L_027C4000: ; // 0x27c4000 /* 027C4000 */ _t9 = cpu->r[1] + 0x00000014u; /* 027C4000 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027C4004 */ _t10 = cpu->r[1] + 0x00000008u; /* 027C4004 */ cpu->r[30] = rbrew_read32(cpu->mem, _t10); /* 027C4008 */ cpu->lr = cpu->r[0]; /* 027C400C */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027C400C */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027C4010 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C4014 */ return; } // fn_027C4018 @ 0x27c4018 void Gambit_fn_027C4018(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15; L_027C4018: ; // 0x27c4018 /* 027C4018 */ cpu->r[0] = cpu->lr; /* 027C401C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C401C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C401C */ cpu->r[1] = _t0; /* 027C4020 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C4020 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C4024 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C4024 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C4028 */ cpu->r[30] = cpu->r[3]; /* 027C4028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C402C */ cpu->r[31] = cpu->r[4]; /* 027C4030 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C4030 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C4034 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4034 */ _t5 = _t4 & 0x00000001u; /* 027C4034 */ if (_t5) goto L_027C40A4; else goto L_027C4038; L_027C4038: ; // 0x27c4038 /* 027C4038 */ cpu->r[12] = 0x10110000u; /* 027C403C */ cpu->r[3] = cpu->r[30] + 0x00000158u; /* 027C4040 */ cpu->r[12] = cpu->r[12] + 0xFFFFC1C0u; /* 027C4044 */ cpu->r[0] = 0x10110000u; /* 027C4048 */ _t6 = cpu->r[30] + 0x00000020u; /* 027C4048 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]); /* 027C404C */ cpu->r[0] = cpu->r[0] + 0xFFFFC1D0u; /* 027C4050 */ cpu->r[4] = 0x00000002u; /* 027C4054 */ _t7 = cpu->r[30] + 0x00000154u; /* 027C4054 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027C4058 */ Gambit_fn_027C2C5C(cpu); /* 027C405C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C4060 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4060 */ _t9 = _t8 & 0x00000001u; /* 027C4060 */ if (_t9) goto L_027C4094; else goto L_027C4064; L_027C4064: ; // 0x27c4064 /* 027C4064 */ cpu->r[0] = 0x10110000u; /* 027C4068 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu; /* 027C406C */ cpu->r[0] = cpu->r[0] + 0xFFFFC078u; /* 027C4070 */ cpu->r[4] = 0x00000002u; /* 027C4074 */ _t10 = cpu->r[30] + 0x00000020u; /* 027C4074 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027C4078 */ Gambit_fn_02928E8C(cpu); /* 027C407C */ cpu->r[3] = cpu->r[30] + 0x000000C8u; /* 027C4080 */ cpu->r[4] = 0x00000002u; /* 027C4084 */ Gambit_fn_02928E8C(cpu); /* 027C4088 */ cpu->r[3] = cpu->r[30]; /* 027C408C */ cpu->r[4] = 0x00000000u; /* 027C4090 */ Gambit_fn_028136EC(cpu); L_027C4094: ; // 0x27c4094 /* 027C4094 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C4094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027C4098 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4098 */ _t12 = _t11 & 0x00000001u; /* 027C4098 */ if (_t12) goto L_027C40A4; else goto L_027C409C; L_027C409C: ; // 0x27c409c /* 027C409C */ cpu->r[3] = cpu->r[30]; /* 027C40A0 */ Gambit_fn_02801BB0(cpu); L_027C40A4: ; // 0x27c40a4 /* 027C40A4 */ _t13 = cpu->r[1] + 0x00000014u; /* 027C40A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027C40A8 */ _t14 = cpu->r[1] + 0x00000008u; /* 027C40A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14); /* 027C40AC */ cpu->lr = cpu->r[0]; /* 027C40B0 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027C40B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 027C40B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C40B8 */ return; } // fn_027C401C @ 0x27c401c void Gambit_fn_027C401C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15; L_027C401C: ; // 0x27c401c /* 027C401C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C401C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C401C */ cpu->r[1] = _t0; /* 027C4020 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C4020 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C4024 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C4024 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C4028 */ cpu->r[30] = cpu->r[3]; /* 027C4028 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C402C */ cpu->r[31] = cpu->r[4]; /* 027C4030 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C4030 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C4034 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4034 */ _t5 = _t4 & 0x00000001u; /* 027C4034 */ if (_t5) goto L_027C40A4; else goto L_027C4038; L_027C4038: ; // 0x27c4038 /* 027C4038 */ cpu->r[12] = 0x10110000u; /* 027C403C */ cpu->r[3] = cpu->r[30] + 0x00000158u; /* 027C4040 */ cpu->r[12] = cpu->r[12] + 0xFFFFC1C0u; /* 027C4044 */ cpu->r[0] = 0x10110000u; /* 027C4048 */ _t6 = cpu->r[30] + 0x00000020u; /* 027C4048 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]); /* 027C404C */ cpu->r[0] = cpu->r[0] + 0xFFFFC1D0u; /* 027C4050 */ cpu->r[4] = 0x00000002u; /* 027C4054 */ _t7 = cpu->r[30] + 0x00000154u; /* 027C4054 */ rbrew_write32(cpu->mem, _t7, cpu->r[0]); /* 027C4058 */ Gambit_fn_027C2C5C(cpu); /* 027C405C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C4060 */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4060 */ _t9 = _t8 & 0x00000001u; /* 027C4060 */ if (_t9) goto L_027C4094; else goto L_027C4064; L_027C4064: ; // 0x27c4064 /* 027C4064 */ cpu->r[0] = 0x10110000u; /* 027C4068 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu; /* 027C406C */ cpu->r[0] = cpu->r[0] + 0xFFFFC078u; /* 027C4070 */ cpu->r[4] = 0x00000002u; /* 027C4074 */ _t10 = cpu->r[30] + 0x00000020u; /* 027C4074 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 027C4078 */ Gambit_fn_02928E8C(cpu); /* 027C407C */ cpu->r[3] = cpu->r[30] + 0x000000C8u; /* 027C4080 */ cpu->r[4] = 0x00000002u; /* 027C4084 */ Gambit_fn_02928E8C(cpu); /* 027C4088 */ cpu->r[3] = cpu->r[30]; /* 027C408C */ cpu->r[4] = 0x00000000u; /* 027C4090 */ Gambit_fn_028136EC(cpu); L_027C4094: ; // 0x27c4094 /* 027C4094 */ cpu->r[11] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C4094 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027C4098 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4098 */ _t12 = _t11 & 0x00000001u; /* 027C4098 */ if (_t12) goto L_027C40A4; else goto L_027C409C; L_027C409C: ; // 0x27c409c /* 027C409C */ cpu->r[3] = cpu->r[30]; /* 027C40A0 */ Gambit_fn_02801BB0(cpu); L_027C40A4: ; // 0x27c40a4 /* 027C40A4 */ _t13 = cpu->r[1] + 0x00000014u; /* 027C40A4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t13); /* 027C40A8 */ _t14 = cpu->r[1] + 0x00000008u; /* 027C40A8 */ cpu->r[30] = rbrew_read32(cpu->mem, _t14); /* 027C40AC */ cpu->lr = cpu->r[0]; /* 027C40B0 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 027C40B0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 027C40B4 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C40B8 */ return; } // fn_027C40BC @ 0x27c40bc void Gambit_fn_027C40BC(CPUState* cpu) { L_027C40BC: ; // 0x27c40bc /* 027C40BC */ return; } // fn_027C40C0 @ 0x27c40c0 void Gambit_fn_027C40C0(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_027C40C0: ; // 0x27c40c0 /* 027C40C0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C40C4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C40C4 */ _t1 = _t0 & 0x00000001u; /* 027C40C4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C40C4 */ goto L_027C40C8; L_027C40C8: ; // 0x27c40c8 /* 027C40C8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C40C8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C40CC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C40CC */ _t3 = _t2 & 0x00000001u; /* 027C40CC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C40CC */ goto L_027C40D0; L_027C40D0: ; // 0x27c40d0 /* 027C40D0 */ 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_027C40D4 @ 0x27c40d4 void Gambit_fn_027C40D4(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3; L_027C40D4: ; // 0x27c40d4 /* 027C40D4 */ _t0 = cpu->r[3] + 0x00000000u; /* 027C40D4 */ cpu->r[11] = rbrew_read32(cpu->mem, _t0); /* 027C40D8 */ _t1 = cpu->r[3] + 0x00000008u; /* 027C40D8 */ cpu->r[12] = rbrew_read32(cpu->mem, _t1); /* 027C40DC */ cpu->r[12] = cpu->r[11] + cpu->r[12]; /* 027C40E0 */ cpu->r[11] = 0x10110000u; /* 027C40E4 */ _t2 = cpu->r[11] + 0x00007399u; /* 027C40E4 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027C40E8 */ _t3 = cpu->r[12] + 0xFFFFFFFFu; /* 027C40E8 */ rbrew_write8(cpu->mem, _t3, (uint8_t)cpu->r[0]); /* 027C40EC */ return; } // fn_027C40F0 @ 0x27c40f0 void Gambit_fn_027C40F0(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_027C40F0: ; // 0x27c40f0 /* 027C40F0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C40F4 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C40F4 */ _t1 = _t0 & 0x00000001u; /* 027C40F4 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C40F4 */ goto L_027C40F8; L_027C40F8: ; // 0x27c40f8 /* 027C40F8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C40F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C40FC */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C40FC */ _t3 = _t2 & 0x00000001u; /* 027C40FC */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C40FC */ goto L_027C4100; L_027C4100: ; // 0x27c4100 /* 027C4100 */ 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_027C4104 @ 0x27c4104 void Gambit_fn_027C4104(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_027C4104: ; // 0x27c4104 /* 027C4104 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C4108 */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4108 */ _t1 = _t0 & 0x00000001u; /* 027C4108 */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C4108 */ goto L_027C410C; L_027C410C: ; // 0x27c410c /* 027C410C */ cpu->r[0] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C410C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C4110 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4110 */ _t3 = _t2 & 0x00000001u; /* 027C4110 */ if (_t3) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C4110 */ goto L_027C4114; L_027C4114: ; // 0x27c4114 /* 027C4114 */ 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_027C4118 @ 0x27c4118 void Gambit_fn_027C4118(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17, _t18; L_027C4118: ; // 0x27c4118 /* 027C4118 */ cpu->r[12] = 0x101D0000u; /* 027C411C */ _t0 = cpu->r[12] + 0xFFFFDAE4u; /* 027C411C */ cpu->r[12] = rbrew_read32(cpu->mem, _t0); /* 027C4120 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C4124 */ cpu->r[12] = 0x101D0000u; /* 027C4128 */ cpu->r[12] = cpu->r[12] + 0xFFFFDD7Cu; /* 027C412C */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C412C */ _t2 = _t1 & 0x00000001u; /* 027C412C */ if (_t2) goto L_027C4130; else goto L_027C4148; L_027C4130: ; // 0x27c4130 /* 027C4130 */ cpu->r[0] = 0x10110000u; /* 027C4134 */ cpu->r[9] = 0x00000001u; /* 027C4138 */ cpu->r[8] = 0x101D0000u; /* 027C413C */ cpu->r[0] = cpu->r[0] + 0xFFFFC088u; /* 027C4140 */ _t3 = cpu->r[8] + 0xFFFFDAE4u; /* 027C4140 */ rbrew_write32(cpu->mem, _t3, cpu->r[9]); /* 027C4144 */ _t4 = cpu->r[12] + 0x00000000u; /* 027C4144 */ rbrew_write32(cpu->mem, _t4, cpu->r[0]); L_027C4148: ; // 0x27c4148 /* 027C4148 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[12]); /* 027C414C */ _t5 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C414C */ _t6 = _t5 & 0x00000001u; /* 027C414C */ if (_t6) goto L_027C4150; else goto L_027C4158; L_027C4150: ; // 0x27c4150 /* 027C4150 */ cpu->r[3] = 0x00000001u; /* 027C4154 */ return; L_027C4158: ; // 0x27c4158 /* 027C4158 */ cpu->r[11] = 0x101D0000u; /* 027C415C */ _t7 = cpu->r[11] + 0xFFFFD868u; /* 027C415C */ cpu->r[8] = rbrew_read32(cpu->mem, _t7); /* 027C415C */ cpu->r[11] = _t7; /* 027C4160 */ cpu->r[10] = 0x101D0000u; /* 027C4164 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[8], 0x00000000u); /* 027C4168 */ cpu->r[10] = cpu->r[10] + 0xFFFFDD70u; /* 027C416C */ _t8 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C416C */ _t9 = _t8 & 0x00000001u; /* 027C416C */ if (_t9) goto L_027C4170; else goto L_027C4184; L_027C4170: ; // 0x27c4170 /* 027C4170 */ cpu->r[12] = 0x10110000u; /* 027C4174 */ cpu->r[9] = 0x00000001u; /* 027C4178 */ cpu->r[12] = cpu->r[12] + 0xFFFFC058u; /* 027C417C */ _t10 = cpu->r[11] + 0x00000000u; /* 027C417C */ rbrew_write32(cpu->mem, _t10, cpu->r[9]); /* 027C4180 */ _t11 = cpu->r[10] + 0x00000000u; /* 027C4180 */ rbrew_write32(cpu->mem, _t11, cpu->r[12]); L_027C4184: ; // 0x27c4184 /* 027C4184 */ cpu->cr[0] = rbrew_cmp_u32(cpu->r[4], cpu->r[10]); /* 027C4188 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4188 */ _t13 = _t12 & 0x00000001u; /* 027C4188 */ if (_t13) goto L_027C418C; else goto L_027C4194; L_027C418C: ; // 0x27c418c /* 027C418C */ cpu->r[0] = 0x00000001u; /* 027C4190 */ goto L_027C41CC; L_027C4194: ; // 0x27c4194 /* 027C4194 */ cpu->r[8] = 0x101D0000u; /* 027C4198 */ _t14 = cpu->r[8] + 0xFFFFD4FCu; /* 027C4198 */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 027C4198 */ cpu->r[8] = _t14; /* 027C419C */ cpu->r[11] = 0x101D0000u; /* 027C41A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C41A4 */ cpu->r[11] = cpu->r[11] + 0xFFFFDD6Cu; /* 027C41A8 */ _t15 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C41A8 */ _t16 = _t15 & 0x00000001u; /* 027C41A8 */ if (_t16) goto L_027C41AC; else goto L_027C41C0; L_027C41AC: ; // 0x27c41ac /* 027C41AC */ cpu->r[10] = 0x10110000u; /* 027C41B0 */ cpu->r[9] = 0x00000001u; /* 027C41B4 */ cpu->r[10] = cpu->r[10] + 0xFFFFC018u; /* 027C41B8 */ _t17 = cpu->r[8] + 0x00000000u; /* 027C41B8 */ rbrew_write32(cpu->mem, _t17, cpu->r[9]); /* 027C41BC */ _t18 = cpu->r[11] + 0x00000000u; /* 027C41BC */ rbrew_write32(cpu->mem, _t18, cpu->r[10]); L_027C41C0: ; // 0x27c41c0 /* 027C41C0 */ cpu->r[12] = cpu->r[4] ^ cpu->r[11]; /* 027C41C4 */ cpu->r[0] = rbrew_clz32(cpu->r[12]); /* 027C41C8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000018u, 0x0000001Fu); L_027C41CC: ; // 0x27c41cc /* 027C41CC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x00000000u, 0x00000018u, 0x0000001Fu); /* 027C41D0 */ return; } // fn_027C41D4 @ 0x27c41d4 void Gambit_fn_027C41D4(CPUState* cpu) { L_027C41D4: ; // 0x27c41d4 /* 027C41D4 */ return; } // fn_027C41D8 @ 0x27c41d8 void Gambit_fn_027C41D8(CPUState* cpu) { L_027C41D8: ; // 0x27c41d8 /* 027C41D8 */ return; } // fn_027C41DC @ 0x27c41dc void Gambit_fn_027C41DC(CPUState* cpu) { L_027C41DC: ; // 0x27c41dc /* 027C41DC */ return; } // fn_027C41E0 @ 0x27c41e0 void Gambit_fn_027C41E0(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11; L_027C41E0: ; // 0x27c41e0 /* 027C41E0 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFECu; /* 027C41E4 */ goto L_027C5398; L_027C5398: ; // 0x27c5398 /* 027C5398 */ cpu->r[0] = cpu->lr; /* 027C539C */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C539C */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C539C */ cpu->r[1] = _t0; /* 027C53A0 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C53A0 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C53A4 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C53A4 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C53A8 */ cpu->r[30] = cpu->r[3]; /* 027C53A8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C53AC */ cpu->r[31] = cpu->r[4]; /* 027C53B0 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C53B0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C53B4 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C53B4 */ _t5 = _t4 & 0x00000001u; /* 027C53B4 */ if (_t5) goto L_027C53F8; else goto L_027C53B8; L_027C53B8: ; // 0x27c53b8 /* 027C53B8 */ cpu->r[0] = 0x10110000u; /* 027C53BC */ cpu->r[3] = cpu->r[30] + 0x0000010Cu; /* 027C53C0 */ cpu->r[0] = cpu->r[0] + 0xFFFFC250u; /* 027C53C4 */ cpu->r[4] = 0x00000002u; /* 027C53C8 */ _t6 = cpu->r[30] + 0x00000020u; /* 027C53C8 */ rbrew_write32(cpu->mem, _t6, cpu->r[0]); /* 027C53CC */ Gambit_fn_02928E8C(cpu); /* 027C53D0 */ cpu->r[3] = cpu->r[30] + 0x000000C8u; /* 027C53D4 */ cpu->r[4] = 0x00000002u; /* 027C53D8 */ Gambit_fn_02928E8C(cpu); /* 027C53DC */ cpu->r[3] = cpu->r[30]; /* 027C53E0 */ cpu->r[4] = 0x00000000u; /* 027C53E4 */ Gambit_fn_028136EC(cpu); /* 027C53E8 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C53E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C53EC */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C53EC */ _t8 = _t7 & 0x00000001u; /* 027C53EC */ if (_t8) goto L_027C53F8; else goto L_027C53F0; L_027C53F0: ; // 0x27c53f0 /* 027C53F0 */ cpu->r[3] = cpu->r[30]; /* 027C53F4 */ Gambit_fn_02801BB0(cpu); L_027C53F8: ; // 0x27c53f8 /* 027C53F8 */ _t9 = cpu->r[1] + 0x00000014u; /* 027C53F8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t9); /* 027C53FC */ _t10 = cpu->r[1] + 0x00000008u; /* 027C53FC */ cpu->r[30] = rbrew_read32(cpu->mem, _t10); /* 027C5400 */ cpu->lr = cpu->r[0]; /* 027C5404 */ _t11 = cpu->r[1] + 0x0000000Cu; /* 027C5404 */ cpu->r[31] = rbrew_read32(cpu->mem, _t11); /* 027C5408 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C540C */ return; } // fn_027C41E8 @ 0x27c41e8 void Gambit_fn_027C41E8(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; L_027C41E8: ; // 0x27c41e8 /* 027C41E8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C41EC */ _t0 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C41EC */ _t1 = _t0 & 0x00000001u; /* 027C41EC */ if (_t1) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C41EC */ goto L_027C41F0; L_027C41F0: ; // 0x27c41f0 /* 027C41F0 */ _t2 = cpu->r[3] + 0x00000000u; /* 027C41F0 */ cpu->r[0] = rbrew_read8(cpu->mem, _t2); /* 027C41F4 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C41F8 */ _t3 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C41F8 */ _t4 = _t3 & 0x00000001u; /* 027C41F8 */ if (_t4) goto L_027C4208; else goto L_027C41FC; L_027C41FC: ; // 0x27c41fc /* 027C41FC */ cpu->r[12] = 0x101D0000u; /* 027C4200 */ cpu->r[10] = 0x00000000u; /* 027C4204 */ _t5 = cpu->r[12] + 0xFFFF93E4u; /* 027C4204 */ rbrew_write32(cpu->mem, _t5, cpu->r[10]); L_027C4208: ; // 0x27c4208 /* 027C4208 */ cpu->r[11] = rbrew_rlwinm(cpu->r[4], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C4208 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[11], 0x00000000u); /* 027C420C */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C420C */ _t7 = _t6 & 0x00000001u; /* 027C420C */ if (_t7) { rbrew_dispatch(cpu, cpu->lr); return; } /* 027C420C */ goto L_027C4210; L_027C4210: ; // 0x27c4210 /* 027C4210 */ goto L_02801BB0; L_02801B30: ; // 0x2801b30 /* 02801B30 */ cpu->r[0] = cpu->lr; /* 02801B34 */ _t8 = cpu->r[1] + 0xFFFFFFF0u; /* 02801B34 */ rbrew_write32(cpu->mem, _t8, cpu->r[1]); /* 02801B34 */ cpu->r[1] = _t8; /* 02801B38 */ _t9 = cpu->r[1] + 0x0000000Cu; /* 02801B38 */ rbrew_write32(cpu->mem, _t9, cpu->r[31]); /* 02801B3C */ cpu->r[31] = cpu->r[3]; /* 02801B40 */ cpu->r[3] = 0x101D0000u; /* 02801B44 */ _t10 = cpu->r[1] + 0x00000014u; /* 02801B44 */ rbrew_write32(cpu->mem, _t10, cpu->r[0]); /* 02801B48 */ _t11 = cpu->r[3] + 0xFFFF98F0u; /* 02801B48 */ cpu->r[3] = rbrew_read32(cpu->mem, _t11); /* 02801B4C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 02801B50 */ _t12 = cpu->cr[0] >> (0x00000001u & 31u); /* 02801B50 */ _t13 = _t12 & 0x00000001u; /* 02801B50 */ if (_t13) goto L_02801B54; else goto L_02801B70; L_02801B54: ; // 0x2801b54 /* 02801B54 */ cpu->r[3] = cpu->r[31]; /* 02801B58 */ Gambit_fn_02801B20(cpu); /* 02801B5C */ _t14 = cpu->r[1] + 0x00000014u; /* 02801B5C */ cpu->r[0] = rbrew_read32(cpu->mem, _t14); /* 02801B60 */ _t15 = cpu->r[1] + 0x0000000Cu; /* 02801B60 */ cpu->r[31] = rbrew_read32(cpu->mem, _t15); /* 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 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 02801B74 */ _t17 = _t16 & 0x00000001u; /* 02801B74 */ if (_t17) 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 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 02801B84 */ _t19 = _t18 & 0x00000001u; /* 02801B84 */ if (_t19) goto L_02801B9C; else goto L_02801B88; L_02801B88: ; // 0x2801b88 /* 02801B88 */ _t20 = cpu->r[3] + 0x0000000Cu; /* 02801B88 */ cpu->r[12] = rbrew_read32(cpu->mem, _t20); /* 02801B8C */ _t21 = cpu->r[12] + 0x0000003Cu; /* 02801B8C */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 02801B90 */ cpu->ctr = cpu->r[0]; /* 02801B94 */ cpu->r[4] = cpu->r[31]; /* 02801B98 */ rbrew_call_indirect(cpu, cpu->ctr); L_02801B9C: ; // 0x2801b9c /* 02801B9C */ _t22 = cpu->r[1] + 0x00000014u; /* 02801B9C */ cpu->r[0] = rbrew_read32(cpu->mem, _t22); /* 02801BA0 */ _t23 = cpu->r[1] + 0x0000000Cu; /* 02801BA0 */ cpu->r[31] = rbrew_read32(cpu->mem, _t23); /* 02801BA4 */ cpu->lr = cpu->r[0]; /* 02801BA8 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 02801BAC */ return; L_02801BB0: ; // 0x2801bb0 /* 02801BB0 */ goto L_02801B30; } // fn_027C4214 @ 0x27c4214 void Gambit_fn_027C4214(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5, _t6, _t7, _t8, _t9, _t10, _t11, _t12, _t13, _t14, _t15, _t16, _t17; L_027C4214: ; // 0x27c4214 /* 027C4214 */ cpu->r[3] = cpu->r[3] + 0xFFFFFFECu; /* 027C4218 */ goto L_027C5410; L_027C5410: ; // 0x27c5410 /* 027C5410 */ cpu->r[0] = cpu->lr; /* 027C5414 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C5414 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C5414 */ cpu->r[1] = _t0; /* 027C5418 */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C5418 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C541C */ _t2 = cpu->r[1] + 0x00000008u; /* 027C541C */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C5420 */ cpu->r[30] = cpu->r[3]; /* 027C5420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C5424 */ cpu->r[31] = cpu->r[4]; /* 027C5428 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C5428 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C542C */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C542C */ _t5 = _t4 & 0x00000001u; /* 027C542C */ if (_t5) goto L_027C54C0; else goto L_027C5430; L_027C5430: ; // 0x27c5430 /* 027C5430 */ cpu->r[12] = 0x10110000u; /* 027C5434 */ cpu->r[8] = 0x10110000u; /* 027C5438 */ cpu->r[0] = 0x10110000u; /* 027C543C */ cpu->r[12] = cpu->r[12] + 0xFFFFC40Cu; /* 027C5440 */ cpu->r[8] = cpu->r[8] + 0xFFFFC41Cu; /* 027C5444 */ _t6 = cpu->r[30] + 0x00000020u; /* 027C5444 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]); /* 027C5448 */ cpu->r[0] = cpu->r[0] + 0xFFFFC44Cu; /* 027C544C */ cpu->r[11] = 0x10110000u; /* 027C5450 */ _t7 = cpu->r[30] + 0x00000150u; /* 027C5450 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027C5454 */ cpu->r[3] = cpu->r[30] + 0x00000188u; /* 027C5458 */ cpu->r[11] = cpu->r[11] + 0xFFFFC46Cu; /* 027C545C */ _t8 = cpu->r[30] + 0x0000015Cu; /* 027C545C */ rbrew_write32(cpu->mem, _t8, cpu->r[0]); /* 027C5460 */ cpu->r[4] = 0x00000002u; /* 027C5464 */ _t9 = cpu->r[30] + 0x00000164u; /* 027C5464 */ rbrew_write32(cpu->mem, _t9, cpu->r[11]); /* 027C5468 */ rbrew_dispatch(cpu, 0x02d0d008u); /* 027C546C */ cpu->r[3] = cpu->r[30] + 0x00000168u; /* 027C5470 */ cpu->r[4] = 0x00000002u; /* 027C5474 */ Gambit_fn_027C41E8(cpu); /* 027C5478 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[30], 0x00000000u); /* 027C547C */ _t10 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C547C */ _t11 = _t10 & 0x00000001u; /* 027C547C */ if (_t11) goto L_027C54B0; else goto L_027C5480; L_027C5480: ; // 0x27c5480 /* 027C5480 */ cpu->r[10] = 0x10110000u; /* 027C5484 */ cpu->r[3] = cpu->r[30] + 0x0000010Cu; /* 027C5488 */ cpu->r[10] = cpu->r[10] + 0xFFFFC250u; /* 027C548C */ cpu->r[4] = 0x00000002u; /* 027C5490 */ _t12 = cpu->r[30] + 0x00000020u; /* 027C5490 */ rbrew_write32(cpu->mem, _t12, cpu->r[10]); /* 027C5494 */ Gambit_fn_02928E8C(cpu); /* 027C5498 */ cpu->r[3] = cpu->r[30] + 0x000000C8u; /* 027C549C */ cpu->r[4] = 0x00000002u; /* 027C54A0 */ Gambit_fn_02928E8C(cpu); /* 027C54A4 */ cpu->r[3] = cpu->r[30]; /* 027C54A8 */ cpu->r[4] = 0x00000000u; /* 027C54AC */ Gambit_fn_028136EC(cpu); L_027C54B0: ; // 0x27c54b0 /* 027C54B0 */ cpu->r[0] = rbrew_rlwinm(cpu->r[31], 0x00000000u, 0x0000001Fu, 0x0000001Fu); /* 027C54B0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C54B4 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C54B4 */ _t14 = _t13 & 0x00000001u; /* 027C54B4 */ if (_t14) goto L_027C54C0; else goto L_027C54B8; L_027C54B8: ; // 0x27c54b8 /* 027C54B8 */ cpu->r[3] = cpu->r[30]; /* 027C54BC */ Gambit_fn_02801BB0(cpu); L_027C54C0: ; // 0x27c54c0 /* 027C54C0 */ _t15 = cpu->r[1] + 0x00000014u; /* 027C54C0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027C54C4 */ _t16 = cpu->r[1] + 0x00000008u; /* 027C54C4 */ cpu->r[30] = rbrew_read32(cpu->mem, _t16); /* 027C54C8 */ cpu->lr = cpu->r[0]; /* 027C54CC */ _t17 = cpu->r[1] + 0x0000000Cu; /* 027C54CC */ cpu->r[31] = rbrew_read32(cpu->mem, _t17); /* 027C54D0 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C54D4 */ return; } // fn_027C421C @ 0x27c421c void Gambit_fn_027C421C(CPUState* cpu) { L_027C421C: ; // 0x27c421c /* 027C421C */ cpu->r[3] = cpu->r[3] + 0xFFFFFEB0u; /* 027C4220 */ goto L_027C54D8; L_027C54D8: ; // 0x27c54d8 /* 027C54D8 */ cpu->r[3] = 0x00000002u; /* 027C54DC */ return; } // fn_027C4224 @ 0x27c4224 void Gambit_fn_027C4224(CPUState* cpu) { uint32_t _t0; L_027C4224: ; // 0x27c4224 /* 027C4224 */ cpu->r[3] = cpu->r[3] + 0xFFFFFEB0u; /* 027C4228 */ goto L_027C54E0; L_027C54E0: ; // 0x27c54e0 /* 027C54E0 */ _t0 = cpu->r[3] + 0x00000178u; /* 027C54E0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0); /* 027C54E4 */ cpu->r[0] = cpu->r[0] ^ 0x00000004u; /* 027C54E8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]); /* 027C54EC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu); /* 027C54F0 */ return; } // fn_027C422C @ 0x27c422c void Gambit_fn_027C422C(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_027C422C: ; // 0x27c422c /* 027C422C */ cpu->r[0] = cpu->lr; /* 027C4230 */ _t0 = cpu->r[1] + 0xFFFFFFC8u; /* 027C4230 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C4230 */ cpu->r[1] = _t0; /* 027C4234 */ _t1 = cpu->r[1] + 0x00000034u; /* 027C4234 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C4238 */ cpu->r[31] = cpu->r[3]; /* 027C423C */ cpu->r[3] = 0x101D0000u; /* 027C4240 */ _t2 = cpu->r[1] + 0x0000003Cu; /* 027C4240 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027C4244 */ _t3 = cpu->r[3] + 0xFFFF92F8u; /* 027C4244 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3); /* 027C4248 */ cpu->r[4] = cpu->r[31] + 0x00000150u; /* 027C424C */ Gambit_fn_027ADFF0(cpu); /* 027C4250 */ _t4 = cpu->r[31] + 0x0000017Cu; /* 027C4250 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4); /* 027C4254 */ cpu->r[7] = 0x00000000u; /* 027C4258 */ cpu->r[8] = 0x00000002u; /* 027C425C */ _t5 = cpu->r[1] + 0x00000010u; /* 027C425C */ rbrew_write32(cpu->mem, _t5, cpu->r[7]); /* 027C4260 */ _t6 = cpu->r[1] + 0x00000018u; /* 027C4260 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]); /* 027C4264 */ cpu->r[0] = 0x00000001u; /* 027C4268 */ _t7 = cpu->r[1] + 0x0000000Cu; /* 027C4268 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027C426C */ _t8 = cpu->r[1] + 0x00000024u; /* 027C426C */ rbrew_write32(cpu->mem, _t8, cpu->r[7]); /* 027C4270 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027C4274 */ _t9 = cpu->r[1] + 0x00000028u; /* 027C4274 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]); /* 027C4278 */ _t10 = cpu->r[1] + 0x00000014u; /* 027C4278 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]); /* 027C427C */ _t11 = cpu->r[1] + 0x00000030u; /* 027C427C */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]); /* 027C4280 */ _t12 = cpu->r[1] + 0x00000020u; /* 027C4280 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]); /* 027C4284 */ _t13 = cpu->r[1] + 0x00000008u; /* 027C4284 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]); /* 027C4288 */ _t14 = cpu->r[1] + 0x0000001Cu; /* 027C4288 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027C428C */ _t15 = cpu->r[1] + 0x0000002Cu; /* 027C428C */ rbrew_write32(cpu->mem, _t15, cpu->r[7]); /* 027C4290 */ Gambit_fn_027AD9F4(cpu); /* 027C4294 */ cpu->r[0] = 0x00000005u; /* 027C4298 */ _t16 = cpu->r[31] + 0x00000178u; /* 027C4298 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027C429C */ _t17 = cpu->r[1] + 0x0000003Cu; /* 027C429C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C42A0 */ _t18 = cpu->r[31] + 0x00000178u; /* 027C42A0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18); /* 027C42A4 */ cpu->lr = cpu->r[0]; /* 027C42A8 */ _t19 = cpu->r[1] + 0x00000034u; /* 027C42A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19); /* 027C42AC */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027C42B0 */ return; } // fn_027C4230 @ 0x27c4230 void Gambit_fn_027C4230(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_027C4230: ; // 0x27c4230 /* 027C4230 */ _t0 = cpu->r[1] + 0xFFFFFFC8u; /* 027C4230 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C4230 */ cpu->r[1] = _t0; /* 027C4234 */ _t1 = cpu->r[1] + 0x00000034u; /* 027C4234 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C4238 */ cpu->r[31] = cpu->r[3]; /* 027C423C */ cpu->r[3] = 0x101D0000u; /* 027C4240 */ _t2 = cpu->r[1] + 0x0000003Cu; /* 027C4240 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027C4244 */ _t3 = cpu->r[3] + 0xFFFF92F8u; /* 027C4244 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3); /* 027C4248 */ cpu->r[4] = cpu->r[31] + 0x00000150u; /* 027C424C */ Gambit_fn_027ADFF0(cpu); /* 027C4250 */ _t4 = cpu->r[31] + 0x0000017Cu; /* 027C4250 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4); /* 027C4254 */ cpu->r[7] = 0x00000000u; /* 027C4258 */ cpu->r[8] = 0x00000002u; /* 027C425C */ _t5 = cpu->r[1] + 0x00000010u; /* 027C425C */ rbrew_write32(cpu->mem, _t5, cpu->r[7]); /* 027C4260 */ _t6 = cpu->r[1] + 0x00000018u; /* 027C4260 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]); /* 027C4264 */ cpu->r[0] = 0x00000001u; /* 027C4268 */ _t7 = cpu->r[1] + 0x0000000Cu; /* 027C4268 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027C426C */ _t8 = cpu->r[1] + 0x00000024u; /* 027C426C */ rbrew_write32(cpu->mem, _t8, cpu->r[7]); /* 027C4270 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027C4274 */ _t9 = cpu->r[1] + 0x00000028u; /* 027C4274 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]); /* 027C4278 */ _t10 = cpu->r[1] + 0x00000014u; /* 027C4278 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]); /* 027C427C */ _t11 = cpu->r[1] + 0x00000030u; /* 027C427C */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]); /* 027C4280 */ _t12 = cpu->r[1] + 0x00000020u; /* 027C4280 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]); /* 027C4284 */ _t13 = cpu->r[1] + 0x00000008u; /* 027C4284 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]); /* 027C4288 */ _t14 = cpu->r[1] + 0x0000001Cu; /* 027C4288 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027C428C */ _t15 = cpu->r[1] + 0x0000002Cu; /* 027C428C */ rbrew_write32(cpu->mem, _t15, cpu->r[7]); /* 027C4290 */ Gambit_fn_027AD9F4(cpu); /* 027C4294 */ cpu->r[0] = 0x00000005u; /* 027C4298 */ _t16 = cpu->r[31] + 0x00000178u; /* 027C4298 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027C429C */ _t17 = cpu->r[1] + 0x0000003Cu; /* 027C429C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C42A0 */ _t18 = cpu->r[31] + 0x00000178u; /* 027C42A0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18); /* 027C42A4 */ cpu->lr = cpu->r[0]; /* 027C42A8 */ _t19 = cpu->r[1] + 0x00000034u; /* 027C42A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19); /* 027C42AC */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027C42B0 */ return; } // fn_027C42B4 @ 0x27c42b4 void Gambit_fn_027C42B4(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_027C422C: ; // 0x27c422c /* 027C422C */ cpu->r[0] = cpu->lr; /* 027C4230 */ _t0 = cpu->r[1] + 0xFFFFFFC8u; /* 027C4230 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C4230 */ cpu->r[1] = _t0; /* 027C4234 */ _t1 = cpu->r[1] + 0x00000034u; /* 027C4234 */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C4238 */ cpu->r[31] = cpu->r[3]; /* 027C423C */ cpu->r[3] = 0x101D0000u; /* 027C4240 */ _t2 = cpu->r[1] + 0x0000003Cu; /* 027C4240 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027C4244 */ _t3 = cpu->r[3] + 0xFFFF92F8u; /* 027C4244 */ cpu->r[3] = rbrew_read32(cpu->mem, _t3); /* 027C4248 */ cpu->r[4] = cpu->r[31] + 0x00000150u; /* 027C424C */ Gambit_fn_027ADFF0(cpu); /* 027C4250 */ _t4 = cpu->r[31] + 0x0000017Cu; /* 027C4250 */ cpu->r[12] = rbrew_read32(cpu->mem, _t4); /* 027C4254 */ cpu->r[7] = 0x00000000u; /* 027C4258 */ cpu->r[8] = 0x00000002u; /* 027C425C */ _t5 = cpu->r[1] + 0x00000010u; /* 027C425C */ rbrew_write32(cpu->mem, _t5, cpu->r[7]); /* 027C4260 */ _t6 = cpu->r[1] + 0x00000018u; /* 027C4260 */ rbrew_write32(cpu->mem, _t6, cpu->r[12]); /* 027C4264 */ cpu->r[0] = 0x00000001u; /* 027C4268 */ _t7 = cpu->r[1] + 0x0000000Cu; /* 027C4268 */ rbrew_write32(cpu->mem, _t7, cpu->r[8]); /* 027C426C */ _t8 = cpu->r[1] + 0x00000024u; /* 027C426C */ rbrew_write32(cpu->mem, _t8, cpu->r[7]); /* 027C4270 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027C4274 */ _t9 = cpu->r[1] + 0x00000028u; /* 027C4274 */ rbrew_write32(cpu->mem, _t9, cpu->r[7]); /* 027C4278 */ _t10 = cpu->r[1] + 0x00000014u; /* 027C4278 */ rbrew_write32(cpu->mem, _t10, cpu->r[7]); /* 027C427C */ _t11 = cpu->r[1] + 0x00000030u; /* 027C427C */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]); /* 027C4280 */ _t12 = cpu->r[1] + 0x00000020u; /* 027C4280 */ rbrew_write32(cpu->mem, _t12, cpu->r[7]); /* 027C4284 */ _t13 = cpu->r[1] + 0x00000008u; /* 027C4284 */ rbrew_write32(cpu->mem, _t13, cpu->r[7]); /* 027C4288 */ _t14 = cpu->r[1] + 0x0000001Cu; /* 027C4288 */ rbrew_write32(cpu->mem, _t14, cpu->r[0]); /* 027C428C */ _t15 = cpu->r[1] + 0x0000002Cu; /* 027C428C */ rbrew_write32(cpu->mem, _t15, cpu->r[7]); /* 027C4290 */ Gambit_fn_027AD9F4(cpu); /* 027C4294 */ cpu->r[0] = 0x00000005u; /* 027C4298 */ _t16 = cpu->r[31] + 0x00000178u; /* 027C4298 */ rbrew_write32(cpu->mem, _t16, cpu->r[0]); /* 027C429C */ _t17 = cpu->r[1] + 0x0000003Cu; /* 027C429C */ cpu->r[0] = rbrew_read32(cpu->mem, _t17); /* 027C42A0 */ _t18 = cpu->r[31] + 0x00000178u; /* 027C42A0 */ cpu->r[6] = rbrew_read32(cpu->mem, _t18); /* 027C42A4 */ cpu->lr = cpu->r[0]; /* 027C42A8 */ _t19 = cpu->r[1] + 0x00000034u; /* 027C42A8 */ cpu->r[31] = rbrew_read32(cpu->mem, _t19); /* 027C42AC */ cpu->r[1] = cpu->r[1] + 0x00000038u; /* 027C42B0 */ return; L_027C42B4: ; // 0x27c42b4 /* 027C42B4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFEB0u; /* 027C42B8 */ goto L_027C422C; } // fn_027C42BC @ 0x27c42bc void Gambit_fn_027C42BC(CPUState* cpu) { uint32_t _t0; L_027C42BC: ; // 0x27c42bc /* 027C42BC */ cpu->r[3] = cpu->r[3] + 0xFFFFFEB0u; /* 027C42C0 */ goto L_027C54F4; L_027C54F4: ; // 0x27c54f4 /* 027C54F4 */ _t0 = cpu->r[3] + 0x00000178u; /* 027C54F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t0); /* 027C54F8 */ cpu->r[0] = rbrew_clz32(cpu->r[0]); /* 027C54FC */ cpu->r[3] = rbrew_rlwinm(cpu->r[0], 0x0000001Bu, 0x00000005u, 0x0000001Fu); /* 027C5500 */ return; } // fn_027C42C4 @ 0x27c42c4 void Gambit_fn_027C42C4(CPUState* cpu) { uint32_t _t0; L_027C42C4: ; // 0x27c42c4 /* 027C42C4 */ cpu->r[3] = cpu->r[3] + 0xFFFFFEACu; /* 027C42C8 */ goto L_027C5504; L_027C5504: ; // 0x27c5504 /* 027C5504 */ _t0 = cpu->r[3] + 0x000025B4u; /* 027C5504 */ cpu->r[3] = rbrew_read8(cpu->mem, _t0); /* 027C5508 */ return; } // fn_027C42EC @ 0x27c42ec void Gambit_fn_027C42EC(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; L_027C42EC: ; // 0x27c42ec /* 027C42EC */ _t0 = cpu->r[1] + 0xFFFFFFD0u; /* 027C42EC */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C42EC */ cpu->r[1] = _t0; /* 027C42F0 */ cpu->r[0] = cpu->lr; /* 027C42F4 */ /* nop */ /* 027C42F8 */ cpu->r[31] = cpu->r[3]; /* 027C42F8 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C42FC */ _t1 = cpu->r[1] + 0x00000034u; /* 027C42FC */ rbrew_write32(cpu->mem, _t1, cpu->r[0]); /* 027C4300 */ cpu->r[29] = cpu->r[4]; /* 027C4304 */ _t2 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4304 */ _t3 = _t2 & 0x00000001u; /* 027C4304 */ if (_t3) goto L_027C4308; else goto L_027C4318; L_027C4308: ; // 0x27c4308 /* 027C4308 */ cpu->r[3] = 0x000025B8u; /* 027C430C */ Gambit_fn_02801A78(cpu); /* 027C4310 */ cpu->r[31] = cpu->r[3]; /* 027C4310 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[31], 0x00000000u); /* 027C4314 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4314 */ _t5 = _t4 & 0x00000001u; /* 027C4314 */ if (_t5) goto L_027C45EC; else goto L_027C4318; L_027C4318: ; // 0x27c4318 /* 027C4318 */ cpu->r[30] = 0x10110000u; /* 027C431C */ cpu->r[4] = cpu->r[29]; /* 027C4320 */ cpu->r[30] = cpu->r[30] + 0xFFFFC2F8u; /* 027C4324 */ cpu->r[3] = cpu->r[31]; /* 027C4328 */ cpu->r[5] = cpu->r[30]; /* 027C432C */ Gambit_fn_02798BA4(cpu); /* 027C4330 */ cpu->r[7] = 0x10110000u; /* 027C4334 */ cpu->r[7] = cpu->r[7] + 0xFFFFC270u; /* 027C4338 */ _t6 = cpu->r[31] + 0x00000150u; /* 027C4338 */ rbrew_write32(cpu->mem, _t6, cpu->r[7]); /* 027C433C */ cpu->r[29] = 0x10110000u; /* 027C4340 */ cpu->r[28] = cpu->r[31] + 0x00000154u; /* 027C4340 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027C4344 */ cpu->r[29] = cpu->r[29] + 0xFFFFC1F0u; /* 027C4348 */ _t7 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4348 */ _t8 = _t7 & 0x00000001u; /* 027C4348 */ if (_t8) goto L_027C434C; else goto L_027C435C; L_027C434C: ; // 0x27c434c /* 027C434C */ cpu->r[3] = 0x0000000Cu; /* 027C4350 */ Gambit_fn_02801A78(cpu); /* 027C4354 */ cpu->r[28] = cpu->r[3]; /* 027C4354 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[28], 0x00000000u); /* 027C4358 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4358 */ _t10 = _t9 & 0x00000001u; /* 027C4358 */ if (_t10) goto L_027C4388; else goto L_027C435C; L_027C435C: ; // 0x27c435c /* 027C435C */ cpu->r[3] = cpu->r[28]; /* 027C435C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C4360 */ _t11 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4360 */ _t12 = _t11 & 0x00000001u; /* 027C4360 */ if (_t12) goto L_027C4364; else goto L_027C4374; L_027C4364: ; // 0x27c4364 /* 027C4364 */ cpu->r[3] = 0x00000008u; /* 027C4368 */ Gambit_fn_02801A78(cpu); /* 027C436C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C4370 */ _t13 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4370 */ _t14 = _t13 & 0x00000001u; /* 027C4370 */ if (_t14) goto L_027C437C; else goto L_027C4374; L_027C4374: ; // 0x27c4374 /* 027C4374 */ _t15 = cpu->r[3] + 0x00000004u; /* 027C4374 */ rbrew_write32(cpu->mem, _t15, cpu->r[29]); /* 027C4378 */ _t16 = cpu->r[3] + 0x00000000u; /* 027C4378 */ rbrew_write32(cpu->mem, _t16, cpu->r[30]); L_027C437C: ; // 0x27c437c /* 027C437C */ cpu->r[8] = 0x10110000u; /* 027C4380 */ cpu->r[8] = cpu->r[8] + 0xFFFFC2A0u; /* 027C4384 */ _t17 = cpu->r[28] + 0x00000008u; /* 027C4384 */ rbrew_write32(cpu->mem, _t17, cpu->r[8]); L_027C4388: ; // 0x27c4388 /* 027C4388 */ cpu->r[3] = cpu->r[31] + 0x00000160u; /* 027C4388 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C438C */ cpu->r[28] = 0x00000000u; /* 027C4390 */ _t18 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4390 */ _t19 = _t18 & 0x00000001u; /* 027C4390 */ if (_t19) goto L_027C4394; else goto L_027C43A4; L_027C4394: ; // 0x27c4394 /* 027C4394 */ cpu->r[3] = 0x00000008u; /* 027C4398 */ Gambit_fn_02801A78(cpu); /* 027C439C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C43A0 */ _t20 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C43A0 */ _t21 = _t20 & 0x00000001u; /* 027C43A0 */ if (_t21) goto L_027C43B4; else goto L_027C43A4; L_027C43A4: ; // 0x27c43a4 /* 027C43A4 */ cpu->r[9] = 0x10110000u; /* 027C43A8 */ _t22 = cpu->r[3] + 0x00000000u; /* 027C43A8 */ rbrew_write32(cpu->mem, _t22, cpu->r[28]); /* 027C43AC */ cpu->r[9] = cpu->r[9] + 0xFFFFC240u; /* 027C43B0 */ _t23 = cpu->r[3] + 0x00000004u; /* 027C43B0 */ rbrew_write32(cpu->mem, _t23, cpu->r[9]); L_027C43B4: ; // 0x27c43b4 /* 027C43B4 */ cpu->r[6] = 0x10110000u; /* 027C43B8 */ _t24 = cpu->r[31] + 0x0000016Cu; /* 027C43B8 */ rbrew_write32(cpu->mem, _t24, cpu->r[28]); /* 027C43BC */ cpu->r[12] = 0x10110000u; /* 027C43C0 */ cpu->r[6] = cpu->r[6] + 0xFFFFC46Cu; /* 027C43C4 */ _t25 = cpu->r[31] + 0x00000178u; /* 027C43C4 */ rbrew_write32(cpu->mem, _t25, cpu->r[28]); /* 027C43C8 */ cpu->r[12] = cpu->r[12] + 0xFFFFC41Cu; /* 027C43CC */ cpu->r[0] = 0x10110000u; /* 027C43D0 */ _t26 = cpu->r[31] + 0x00000164u; /* 027C43D0 */ rbrew_write32(cpu->mem, _t26, cpu->r[6]); /* 027C43D4 */ cpu->r[10] = 0x10110000u; /* 027C43D8 */ cpu->r[0] = cpu->r[0] + 0xFFFFC44Cu; /* 027C43DC */ _t27 = cpu->r[31] + 0x00000150u; /* 027C43DC */ rbrew_write32(cpu->mem, _t27, cpu->r[12]); /* 027C43E0 */ cpu->r[10] = cpu->r[10] + 0xFFFFC31Cu; /* 027C43E4 */ _t28 = cpu->r[31] + 0x0000015Cu; /* 027C43E4 */ rbrew_write32(cpu->mem, _t28, cpu->r[0]); /* 027C43E8 */ cpu->r[0] = 0x10110000u; /* 027C43EC */ _t29 = cpu->r[31] + 0x00000070u; /* 027C43EC */ rbrew_write32(cpu->mem, _t29, cpu->r[10]); /* 027C43F0 */ cpu->r[0] = cpu->r[0] + 0xFFFFC40Cu; /* 027C43F4 */ _t30 = cpu->r[31] + 0x00000168u; /* 027C43F4 */ rbrew_write8(cpu->mem, _t30, (uint8_t)cpu->r[28]); /* 027C43F8 */ cpu->r[3] = cpu->r[31] + 0x00000188u; /* 027C43FC */ _t31 = cpu->r[31] + 0x00000180u; /* 027C43FC */ rbrew_write32(cpu->mem, _t31, cpu->r[28]); /* 027C4400 */ _t32 = cpu->r[31] + 0x00000020u; /* 027C4400 */ rbrew_write32(cpu->mem, _t32, cpu->r[0]); /* 027C4404 */ rbrew_dispatch(cpu, 0x02d0cf40u); /* 027C4408 */ cpu->r[3] = cpu->r[31] + 0x00001588u; /* 027C440C */ rbrew_dispatch(cpu, 0x02d0ceb8u); /* 027C4410 */ cpu->r[27] = cpu->r[31] + 0x0000258Cu; /* 027C4410 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C4414 */ _t33 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4414 */ _t34 = _t33 & 0x00000001u; /* 027C4414 */ if (_t34) goto L_027C4418; else goto L_027C4428; L_027C4418: ; // 0x27c4418 /* 027C4418 */ cpu->r[3] = 0x00000018u; /* 027C441C */ Gambit_fn_02801A78(cpu); /* 027C4420 */ cpu->r[27] = cpu->r[3]; /* 027C4420 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[27], 0x00000000u); /* 027C4424 */ _t35 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4424 */ _t36 = _t35 & 0x00000001u; /* 027C4424 */ if (_t36) goto L_027C4478; else goto L_027C4428; L_027C4428: ; // 0x27c4428 /* 027C4428 */ cpu->r[7] = 0x10110000u; /* 027C442C */ _t37 = cpu->r[27] + 0x00000000u; /* 027C442C */ rbrew_write8(cpu->mem, _t37, (uint8_t)cpu->r[28]); /* 027C4430 */ cpu->r[7] = cpu->r[7] + 0xFFFFC2C0u; /* 027C4434 */ cpu->r[3] = cpu->r[27] + 0x00000008u; /* 027C4434 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C4438 */ _t38 = cpu->r[27] + 0x00000004u; /* 027C4438 */ rbrew_write32(cpu->mem, _t38, cpu->r[7]); /* 027C443C */ _t39 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C443C */ _t40 = _t39 & 0x00000001u; /* 027C443C */ if (_t40) goto L_027C4440; else goto L_027C4450; L_027C4440: ; // 0x27c4440 /* 027C4440 */ cpu->r[3] = 0x00000010u; /* 027C4444 */ Gambit_fn_02801A78(cpu); /* 027C4448 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C444C */ _t41 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C444C */ _t42 = _t41 & 0x00000001u; /* 027C444C */ if (_t42) goto L_027C446C; else goto L_027C4450; L_027C4450: ; // 0x27c4450 /* 027C4450 */ cpu->r[8] = 0x10110000u; /* 027C4454 */ _t43 = cpu->r[3] + 0x0000000Cu; /* 027C4454 */ rbrew_write32(cpu->mem, _t43, cpu->r[28]); /* 027C4458 */ cpu->r[8] = cpu->r[8] + 0xFFFFC208u; /* 027C445C */ _t44 = cpu->r[3] + 0x00000008u; /* 027C445C */ rbrew_write16(cpu->mem, _t44, (uint16_t)cpu->r[28]); /* 027C4460 */ _t45 = cpu->r[3] + 0x00000000u; /* 027C4460 */ rbrew_write32(cpu->mem, _t45, cpu->r[8]); /* 027C4464 */ _t46 = cpu->r[3] + 0x0000000Au; /* 027C4464 */ rbrew_write16(cpu->mem, _t46, (uint16_t)cpu->r[28]); /* 027C4468 */ _t47 = cpu->r[3] + 0x00000004u; /* 027C4468 */ rbrew_write32(cpu->mem, _t47, cpu->r[28]); L_027C446C: ; // 0x27c446c /* 027C446C */ cpu->r[0] = 0x10110000u; /* 027C4470 */ cpu->r[0] = cpu->r[0] + 0xFFFFC2D8u; /* 027C4474 */ _t48 = cpu->r[27] + 0x00000008u; /* 027C4474 */ rbrew_write32(cpu->mem, _t48, cpu->r[0]); L_027C4478: ; // 0x27c4478 /* 027C4478 */ cpu->r[12] = 0x101D0000u; /* 027C447C */ _t49 = cpu->r[1] + 0x0000000Cu; /* 027C447C */ rbrew_write32(cpu->mem, _t49, cpu->r[29]); /* 027C4480 */ _t50 = cpu->r[12] + 0xFFFF964Cu; /* 027C4480 */ cpu->r[12] = rbrew_read32(cpu->mem, _t50); /* 027C4484 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027C4488 */ _t51 = cpu->r[1] + 0x00000008u; /* 027C4488 */ rbrew_write32(cpu->mem, _t51, cpu->r[30]); /* 027C448C */ _t52 = cpu->r[12] + 0x00000160u; /* 027C448C */ cpu->r[3] = rbrew_read32(cpu->mem, _t52); /* 027C4490 */ cpu->r[5] = 0x00000000u; /* 027C4494 */ Gambit_fn_027D90F4(cpu); /* 027C4498 */ _t53 = cpu->r[31] + 0x00000178u; /* 027C4498 */ rbrew_write32(cpu->mem, _t53, cpu->r[28]); /* 027C449C */ cpu->r[26] = 0x00000001u; /* 027C44A0 */ _t54 = cpu->r[31] + 0x00002588u; /* 027C44A0 */ rbrew_write32(cpu->mem, _t54, cpu->r[3]); /* 027C44A4 */ cpu->r[30] = 0x101D0000u; /* 027C44A8 */ _t55 = cpu->r[31] + 0x0000258Cu; /* 027C44A8 */ rbrew_write8(cpu->mem, _t55, (uint8_t)cpu->r[26]); /* 027C44AC */ _t56 = cpu->r[30] + 0xFFFF93E0u; /* 027C44AC */ cpu->r[30] = rbrew_read32(cpu->mem, _t56); /* 027C44B0 */ _t57 = cpu->r[31] + 0x00000178u; /* 027C44B0 */ cpu->r[10] = rbrew_read32(cpu->mem, _t57); /* 027C44B4 */ cpu->r[12] = 0x10110000u; /* 027C44B8 */ _t58 = cpu->r[30] + 0x00000000u; /* 027C44B8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t58); /* 027C44BC */ cpu->r[12] = cpu->r[12] + 0xFFFFC2F0u; /* 027C44C0 */ _t59 = cpu->r[1] + 0x0000000Cu; /* 027C44C0 */ rbrew_write32(cpu->mem, _t59, cpu->r[29]); /* 027C44C4 */ _t60 = cpu->r[1] + 0x00000008u; /* 027C44C4 */ rbrew_write32(cpu->mem, _t60, cpu->r[12]); /* 027C44C8 */ _t61 = cpu->r[11] + 0x00000024u; /* 027C44C8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t61); /* 027C44CC */ cpu->ctr = cpu->r[0]; /* 027C44D0 */ cpu->r[3] = cpu->r[30]; /* 027C44D4 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C44D8 */ _t62 = cpu->r[31] + 0x00000058u; /* 027C44D8 */ cpu->r[8] = rbrew_read32(cpu->mem, _t62); /* 027C44DC */ cpu->r[27] = cpu->r[31] + 0x00000044u; /* 027C44E0 */ cpu->r[4] = cpu->r[1] + 0x00000008u; /* 027C44E4 */ cpu->r[5] = rbrew_rlwinm(cpu->r[8], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C44E8 */ cpu->r[6] = cpu->r[26]; /* 027C44EC */ _t63 = cpu->r[5] + cpu->r[27]; /* 027C44EC */ cpu->r[5] = rbrew_read32(cpu->mem, _t63); /* 027C44F0 */ cpu->r[7] = 0x00000000u; /* 027C44F4 */ Gambit_fn_02822600(cpu); /* 027C44F8 */ _t64 = cpu->r[31] + 0x000025A4u; /* 027C44F8 */ rbrew_write32(cpu->mem, _t64, cpu->r[3]); /* 027C44FC */ _t65 = cpu->r[3] + 0x0000000Cu; /* 027C44FC */ cpu->r[9] = rbrew_read32(cpu->mem, _t65); /* 027C4500 */ _t66 = cpu->r[9] + 0x00000084u; /* 027C4500 */ cpu->r[10] = rbrew_read32(cpu->mem, _t66); /* 027C4504 */ cpu->ctr = cpu->r[10]; /* 027C4508 */ cpu->r[4] = 0x00000004u; /* 027C450C */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C4510 */ _t67 = cpu->r[31] + 0x000025A4u; /* 027C4510 */ cpu->r[4] = rbrew_read32(cpu->mem, _t67); /* 027C4514 */ cpu->r[5] = 0x00000004u; /* 027C4518 */ _t68 = cpu->r[31] + 0x000025ACu; /* 027C4518 */ rbrew_write32(cpu->mem, _t68, cpu->r[3]); /* 027C451C */ Gambit_fn_02801ADC(cpu); /* 027C4520 */ _t69 = cpu->r[31] + 0x000025A8u; /* 027C4520 */ rbrew_write32(cpu->mem, _t69, cpu->r[3]); /* 027C4524 */ _t70 = cpu->r[30] + 0x00000000u; /* 027C4524 */ cpu->r[11] = rbrew_read32(cpu->mem, _t70); /* 027C4528 */ _t71 = cpu->r[11] + 0x0000002Cu; /* 027C4528 */ cpu->r[12] = rbrew_read32(cpu->mem, _t71); /* 027C452C */ cpu->ctr = cpu->r[12]; /* 027C4530 */ cpu->r[3] = cpu->r[30]; /* 027C4534 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C4538 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[3], 0x00000000u); /* 027C453C */ _t72 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C453C */ _t73 = _t72 & 0x00000001u; /* 027C453C */ if (_t73) goto L_027C45B4; else goto L_027C4540; L_027C4540: ; // 0x27c4540 /* 027C4540 */ _t74 = cpu->r[31] + 0x0000016Cu; /* 027C4540 */ rbrew_write32(cpu->mem, _t74, cpu->r[28]); /* 027C4544 */ _t75 = cpu->r[31] + 0x0000016Cu; /* 027C4544 */ cpu->r[0] = rbrew_read32(cpu->mem, _t75); /* 027C4548 */ cpu->r[6] = 0x10110000u; /* 027C454C */ _t76 = cpu->r[30] + 0x00000000u; /* 027C454C */ cpu->r[5] = rbrew_read32(cpu->mem, _t76); /* 027C4550 */ cpu->r[6] = cpu->r[6] + 0xFFFFC304u; /* 027C4554 */ _t77 = cpu->r[1] + 0x00000014u; /* 027C4554 */ rbrew_write32(cpu->mem, _t77, cpu->r[29]); /* 027C4558 */ _t78 = cpu->r[1] + 0x00000010u; /* 027C4558 */ rbrew_write32(cpu->mem, _t78, cpu->r[6]); /* 027C455C */ _t79 = cpu->r[5] + 0x00000034u; /* 027C455C */ cpu->r[0] = rbrew_read32(cpu->mem, _t79); /* 027C4560 */ cpu->ctr = cpu->r[0]; /* 027C4564 */ cpu->r[3] = cpu->r[30]; /* 027C4568 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C456C */ _t80 = cpu->r[27] + 0x00000014u; /* 027C456C */ cpu->r[9] = rbrew_read32(cpu->mem, _t80); /* 027C4570 */ cpu->r[4] = cpu->r[1] + 0x00000010u; /* 027C4574 */ cpu->r[8] = rbrew_rlwinm(cpu->r[9], 0x00000002u, 0x00000000u, 0x0000001Du); /* 027C4578 */ cpu->r[6] = 0x00000001u; /* 027C457C */ _t81 = cpu->r[8] + cpu->r[27]; /* 027C457C */ cpu->r[5] = rbrew_read32(cpu->mem, _t81); /* 027C4580 */ cpu->r[7] = 0x00000000u; /* 027C4584 */ Gambit_fn_02822600(cpu); /* 027C4588 */ _t82 = cpu->r[31] + 0x000025B0u; /* 027C4588 */ rbrew_write32(cpu->mem, _t82, cpu->r[3]); /* 027C458C */ cpu->r[3] = 0x101D0000u; /* 027C4590 */ _t83 = cpu->r[3] + 0xFFFF92F8u; /* 027C4590 */ cpu->r[3] = rbrew_read32(cpu->mem, _t83); /* 027C4594 */ cpu->r[4] = cpu->r[31] + 0x00000150u; /* 027C4598 */ Gambit_fn_027ADF90(cpu); /* 027C459C */ cpu->r[3] = 0x101D0000u; /* 027C45A0 */ _t84 = cpu->r[31] + 0x000025B4u; /* 027C45A0 */ rbrew_write8(cpu->mem, _t84, (uint8_t)cpu->r[28]); /* 027C45A4 */ _t85 = cpu->r[3] + 0xFFFF93FCu; /* 027C45A4 */ cpu->r[3] = rbrew_read32(cpu->mem, _t85); /* 027C45A8 */ cpu->r[4] = cpu->r[31] + 0x00000154u; /* 027C45AC */ Gambit_fn_027C9D98(cpu); /* 027C45B0 */ goto L_027C45EC; L_027C45B4: ; // 0x27c45b4 /* 027C45B4 */ cpu->r[3] = 0x00000000u; /* 027C45B8 */ cpu->r[0] = 0x00000004u; /* 027C45BC */ _t86 = cpu->r[31] + 0x000025B0u; /* 027C45BC */ rbrew_write32(cpu->mem, _t86, cpu->r[3]); /* 027C45C0 */ cpu->r[3] = 0x101D0000u; /* 027C45C4 */ _t87 = cpu->r[31] + 0x0000016Cu; /* 027C45C4 */ rbrew_write32(cpu->mem, _t87, cpu->r[0]); /* 027C45C8 */ _t88 = cpu->r[3] + 0xFFFF92F8u; /* 027C45C8 */ cpu->r[3] = rbrew_read32(cpu->mem, _t88); /* 027C45CC */ cpu->r[4] = cpu->r[31] + 0x00000150u; /* 027C45D0 */ _t89 = cpu->r[31] + 0x0000016Cu; /* 027C45D0 */ cpu->r[0] = rbrew_read32(cpu->mem, _t89); /* 027C45D4 */ Gambit_fn_027ADF90(cpu); /* 027C45D8 */ cpu->r[3] = 0x101D0000u; /* 027C45DC */ _t90 = cpu->r[31] + 0x000025B4u; /* 027C45DC */ rbrew_write8(cpu->mem, _t90, (uint8_t)cpu->r[28]); /* 027C45E0 */ _t91 = cpu->r[3] + 0xFFFF93FCu; /* 027C45E0 */ cpu->r[3] = rbrew_read32(cpu->mem, _t91); /* 027C45E4 */ cpu->r[4] = cpu->r[31] + 0x00000154u; /* 027C45E8 */ Gambit_fn_027C9D98(cpu); L_027C45EC: ; // 0x27c45ec /* 027C45EC */ cpu->r[3] = cpu->r[31]; /* 027C45F0 */ /* nop */ /* 027C45F4 */ _t92 = cpu->r[1] + 0x00000034u; /* 027C45F4 */ cpu->r[0] = rbrew_read32(cpu->mem, _t92); /* 027C45F8 */ cpu->lr = cpu->r[0]; /* 027C45FC */ cpu->r[1] = cpu->r[1] + 0x00000030u; /* 027C4600 */ return; } // fn_027C4604 @ 0x27c4604 void Gambit_fn_027C4604(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_027C4604: ; // 0x27c4604 /* 027C4604 */ cpu->r[0] = cpu->lr; /* 027C4608 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C4608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C4608 */ cpu->r[1] = _t0; /* 027C460C */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C460C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C4610 */ cpu->r[31] = cpu->r[3]; /* 027C4614 */ _t2 = cpu->r[1] + 0x00000014u; /* 027C4614 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027C4618 */ _t3 = cpu->r[31] + 0x00000178u; /* 027C4618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027C461C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u); /* 027C4620 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4620 */ _t5 = _t4 & 0x00000001u; /* 027C4620 */ if (_t5) goto L_027C462C; else goto L_027C4624; L_027C4624: ; // 0x27c4624 /* 027C4624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u); /* 027C4628 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4628 */ _t7 = _t6 & 0x00000001u; /* 027C4628 */ if (_t7) goto L_027C462C; else goto L_027C4688; L_027C462C: ; // 0x27c462c /* 027C462C */ cpu->r[3] = 0x101D0000u; /* 027C4630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u); /* 027C4634 */ _t8 = cpu->r[3] + 0xFFFF93E0u; /* 027C4634 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8); /* 027C4638 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4638 */ _t10 = _t9 & 0x00000001u; /* 027C4638 */ if (_t10) goto L_027C463C; else goto L_027C4660; L_027C463C: ; // 0x27c463c /* 027C463C */ _t11 = cpu->r[3] + 0x00000000u; /* 027C463C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11); /* 027C4640 */ _t12 = cpu->r[7] + 0x00000054u; /* 027C4640 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12); /* 027C4644 */ cpu->ctr = cpu->r[8]; /* 027C4648 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C464C */ cpu->r[11] = 0x00000000u; /* 027C4650 */ _t13 = cpu->r[31] + 0x000025B4u; /* 027C4650 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[11]); /* 027C4654 */ _t14 = cpu->r[31] + 0x00000178u; /* 027C4654 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]); /* 027C4658 */ _t15 = cpu->r[31] + 0x00000178u; /* 027C4658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027C465C */ goto L_027C4688; L_027C4660: ; // 0x27c4660 /* 027C4660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u); /* 027C4664 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4664 */ _t17 = _t16 & 0x00000001u; /* 027C4664 */ if (_t17) goto L_027C4668; else goto L_027C4678; L_027C4668: ; // 0x27c4668 /* 027C4668 */ _t18 = cpu->r[3] + 0x00000000u; /* 027C4668 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18); /* 027C466C */ _t19 = cpu->r[9] + 0x0000005Cu; /* 027C466C */ cpu->r[10] = rbrew_read32(cpu->mem, _t19); /* 027C4670 */ cpu->ctr = cpu->r[10]; /* 027C4674 */ rbrew_call_indirect(cpu, cpu->ctr); L_027C4678: ; // 0x27c4678 /* 027C4678 */ cpu->r[11] = 0x00000000u; /* 027C467C */ _t20 = cpu->r[31] + 0x00000178u; /* 027C467C */ rbrew_write32(cpu->mem, _t20, cpu->r[11]); /* 027C4680 */ _t21 = cpu->r[31] + 0x00000178u; /* 027C4680 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027C4684 */ _t22 = cpu->r[31] + 0x000025B4u; /* 027C4684 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[11]); L_027C4688: ; // 0x27c4688 /* 027C4688 */ _t23 = cpu->r[1] + 0x00000014u; /* 027C4688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027C468C */ _t24 = cpu->r[1] + 0x0000000Cu; /* 027C468C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24); /* 027C4690 */ cpu->lr = cpu->r[0]; /* 027C4694 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C4698 */ return; } // fn_027C4608 @ 0x27c4608 void Gambit_fn_027C4608(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_027C4608: ; // 0x27c4608 /* 027C4608 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C4608 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C4608 */ cpu->r[1] = _t0; /* 027C460C */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C460C */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C4610 */ cpu->r[31] = cpu->r[3]; /* 027C4614 */ _t2 = cpu->r[1] + 0x00000014u; /* 027C4614 */ rbrew_write32(cpu->mem, _t2, cpu->r[0]); /* 027C4618 */ _t3 = cpu->r[31] + 0x00000178u; /* 027C4618 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027C461C */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u); /* 027C4620 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4620 */ _t5 = _t4 & 0x00000001u; /* 027C4620 */ if (_t5) goto L_027C462C; else goto L_027C4624; L_027C4624: ; // 0x27c4624 /* 027C4624 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u); /* 027C4628 */ _t6 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4628 */ _t7 = _t6 & 0x00000001u; /* 027C4628 */ if (_t7) goto L_027C462C; else goto L_027C4688; L_027C462C: ; // 0x27c462c /* 027C462C */ cpu->r[3] = 0x101D0000u; /* 027C4630 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000002u); /* 027C4634 */ _t8 = cpu->r[3] + 0xFFFF93E0u; /* 027C4634 */ cpu->r[3] = rbrew_read32(cpu->mem, _t8); /* 027C4638 */ _t9 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4638 */ _t10 = _t9 & 0x00000001u; /* 027C4638 */ if (_t10) goto L_027C463C; else goto L_027C4660; L_027C463C: ; // 0x27c463c /* 027C463C */ _t11 = cpu->r[3] + 0x00000000u; /* 027C463C */ cpu->r[7] = rbrew_read32(cpu->mem, _t11); /* 027C4640 */ _t12 = cpu->r[7] + 0x00000054u; /* 027C4640 */ cpu->r[8] = rbrew_read32(cpu->mem, _t12); /* 027C4644 */ cpu->ctr = cpu->r[8]; /* 027C4648 */ rbrew_call_indirect(cpu, cpu->ctr); /* 027C464C */ cpu->r[11] = 0x00000000u; /* 027C4650 */ _t13 = cpu->r[31] + 0x000025B4u; /* 027C4650 */ rbrew_write8(cpu->mem, _t13, (uint8_t)cpu->r[11]); /* 027C4654 */ _t14 = cpu->r[31] + 0x00000178u; /* 027C4654 */ rbrew_write32(cpu->mem, _t14, cpu->r[11]); /* 027C4658 */ _t15 = cpu->r[31] + 0x00000178u; /* 027C4658 */ cpu->r[0] = rbrew_read32(cpu->mem, _t15); /* 027C465C */ goto L_027C4688; L_027C4660: ; // 0x27c4660 /* 027C4660 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000003u); /* 027C4664 */ _t16 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C4664 */ _t17 = _t16 & 0x00000001u; /* 027C4664 */ if (_t17) goto L_027C4668; else goto L_027C4678; L_027C4668: ; // 0x27c4668 /* 027C4668 */ _t18 = cpu->r[3] + 0x00000000u; /* 027C4668 */ cpu->r[9] = rbrew_read32(cpu->mem, _t18); /* 027C466C */ _t19 = cpu->r[9] + 0x0000005Cu; /* 027C466C */ cpu->r[10] = rbrew_read32(cpu->mem, _t19); /* 027C4670 */ cpu->ctr = cpu->r[10]; /* 027C4674 */ rbrew_call_indirect(cpu, cpu->ctr); L_027C4678: ; // 0x27c4678 /* 027C4678 */ cpu->r[11] = 0x00000000u; /* 027C467C */ _t20 = cpu->r[31] + 0x00000178u; /* 027C467C */ rbrew_write32(cpu->mem, _t20, cpu->r[11]); /* 027C4680 */ _t21 = cpu->r[31] + 0x00000178u; /* 027C4680 */ cpu->r[0] = rbrew_read32(cpu->mem, _t21); /* 027C4684 */ _t22 = cpu->r[31] + 0x000025B4u; /* 027C4684 */ rbrew_write8(cpu->mem, _t22, (uint8_t)cpu->r[11]); L_027C4688: ; // 0x27c4688 /* 027C4688 */ _t23 = cpu->r[1] + 0x00000014u; /* 027C4688 */ cpu->r[0] = rbrew_read32(cpu->mem, _t23); /* 027C468C */ _t24 = cpu->r[1] + 0x0000000Cu; /* 027C468C */ cpu->r[31] = rbrew_read32(cpu->mem, _t24); /* 027C4690 */ cpu->lr = cpu->r[0]; /* 027C4694 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C4698 */ return; } // fn_027C469C @ 0x27c469c void Gambit_fn_027C469C(CPUState* cpu) { uint32_t _t0, _t1, _t2, _t3, _t4, _t5; L_027C469C: ; // 0x27c469c /* 027C469C */ _t0 = cpu->r[3] + 0x0000258Cu; /* 027C469C */ cpu->r[12] = rbrew_read8(cpu->mem, _t0); /* 027C46A0 */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[12], 0x00000000u); /* 027C46A4 */ _t1 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C46A4 */ _t2 = _t1 & 0x00000001u; /* 027C46A4 */ if (_t2) goto L_027C46B4; else goto L_027C46A8; L_027C46A8: ; // 0x27c46a8 /* 027C46A8 */ _t3 = cpu->r[3] + 0x00000178u; /* 027C46A8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t3); /* 027C46AC */ cpu->cr[0] = rbrew_cmp_s32(cpu->r[0], 0x00000000u); /* 027C46B0 */ _t4 = cpu->cr[0] >> (0x00000001u & 31u); /* 027C46B0 */ _t5 = _t4 & 0x00000001u; /* 027C46B0 */ if (_t5) goto L_027C46BC; else goto L_027C46B4; L_027C46B4: ; // 0x27c46b4 /* 027C46B4 */ cpu->r[3] = 0x00000000u; /* 027C46B8 */ return; L_027C46BC: ; // 0x27c46bc /* 027C46BC */ cpu->r[3] = 0x00000001u; /* 027C46C0 */ return; } // fn_027C46C4 @ 0x27c46c4 void Gambit_fn_027C46C4(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; L_027C46C4: ; // 0x27c46c4 /* 027C46C4 */ cpu->r[0] = cpu->lr; /* 027C46C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C46C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C46C8 */ cpu->r[1] = _t0; /* 027C46CC */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C46CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C46D0 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C46D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C46D4 */ cpu->r[30] = cpu->r[3]; /* 027C46D8 */ cpu->r[31] = cpu->r[4]; /* 027C46DC */ cpu->r[5] = 0x00000200u; /* 027C46E0 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C46E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C46E4 */ _t4 = cpu->r[31] + 0x00000000u; /* 027C46E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4); /* 027C46E8 */ cpu->r[3] = cpu->r[30] + 0x0000018Cu; /* 027C46EC */ cpu->r[4] = cpu->r[31] + 0x00000004u; /* 027C46F0 */ _t5 = cpu->r[30] + 0x00000188u; /* 027C46F0 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]); /* 027C46F4 */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C46F8 */ _t6 = cpu->r[31] + 0x00000204u; /* 027C46F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027C46FC */ _t7 = cpu->r[30] + 0x0000038Cu; /* 027C46FC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]); /* 027C4700 */ _t8 = cpu->r[31] + 0x00000208u; /* 027C4700 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027C4704 */ _t9 = cpu->r[30] + 0x00000390u; /* 027C4704 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]); /* 027C4708 */ _t10 = cpu->r[31] + 0x0000020Cu; /* 027C4708 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10); /* 027C470C */ cpu->r[3] = cpu->r[30] + 0x00000395u; /* 027C4710 */ cpu->r[4] = cpu->r[31] + 0x0000020Du; /* 027C4714 */ cpu->r[5] = 0x00000003u; /* 027C4718 */ _t11 = cpu->r[30] + 0x00000394u; /* 027C4718 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]); /* 027C471C */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C4720 */ cpu->r[3] = cpu->r[30] + 0x00000398u; /* 027C4724 */ cpu->r[4] = cpu->r[31] + 0x00000210u; /* 027C4728 */ cpu->r[5] = 0x00000130u; /* 027C472C */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C4730 */ _t12 = cpu->r[31] + 0x00000340u; /* 027C4730 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12); /* 027C4734 */ cpu->r[3] = cpu->r[30] + 0x000004D0u; /* 027C4738 */ _t13 = cpu->r[30] + 0x000004C8u; /* 027C4738 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]); /* 027C473C */ _t14 = cpu->r[31] + 0x00000344u; /* 027C473C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14); /* 027C4740 */ cpu->r[5] = 0x000005F0u; /* 027C4744 */ cpu->r[4] = cpu->r[31] + 0x00000348u; /* 027C4748 */ _t15 = cpu->r[30] + 0x000004CCu; /* 027C4748 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]); /* 027C474C */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C4750 */ _t16 = cpu->r[31] + 0x00000938u; /* 027C4750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027C4754 */ _t17 = cpu->r[30] + 0x00000AC0u; /* 027C4754 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]); /* 027C4758 */ _t18 = cpu->r[31] + 0x0000093Cu; /* 027C4758 */ cpu->r[5] = rbrew_read32(cpu->mem, _t18); /* 027C475C */ _t19 = cpu->r[30] + 0x00000AC4u; /* 027C475C */ rbrew_write32(cpu->mem, _t19, cpu->r[5]); /* 027C4760 */ _t20 = cpu->r[31] + 0x00000940u; /* 027C4760 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20); /* 027C4764 */ cpu->r[4] = cpu->r[31] + 0x00000948u; /* 027C4768 */ _t21 = cpu->r[30] + 0x00000AC8u; /* 027C4768 */ rbrew_write32(cpu->mem, _t21, cpu->r[6]); /* 027C476C */ _t22 = cpu->r[31] + 0x00000944u; /* 027C476C */ cpu->r[7] = rbrew_read32(cpu->mem, _t22); /* 027C4770 */ cpu->r[5] = 0x00000100u; /* 027C4774 */ cpu->r[3] = cpu->r[30] + 0x00000AD0u; /* 027C4778 */ _t23 = cpu->r[30] + 0x00000ACCu; /* 027C4778 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]); /* 027C477C */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C4780 */ _t24 = cpu->r[31] + 0x00000A48u; /* 027C4780 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24); /* 027C4784 */ _t25 = cpu->r[31] + 0x00000A4Cu; /* 027C4784 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25); /* 027C4788 */ _t26 = cpu->r[30] + 0x00000BD0u; /* 027C4788 */ rbrew_write32(cpu->mem, _t26, cpu->r[8]); /* 027C478C */ _t27 = cpu->r[30] + 0x00000BD4u; /* 027C478C */ rbrew_write32(cpu->mem, _t27, cpu->r[9]); /* 027C4790 */ _t28 = cpu->r[31] + 0x00000A50u; /* 027C4790 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28); /* 027C4794 */ _t29 = cpu->r[30] + 0x00000BD8u; /* 027C4794 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]); /* 027C4798 */ _t30 = cpu->r[31] + 0x00000A54u; /* 027C4798 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30); /* 027C479C */ cpu->r[3] = cpu->r[30] + 0x00000BE4u; /* 027C47A0 */ _t31 = cpu->r[30] + 0x00000BDCu; /* 027C47A0 */ rbrew_write32(cpu->mem, _t31, cpu->r[11]); /* 027C47A4 */ _t32 = cpu->r[31] + 0x00000A58u; /* 027C47A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32); /* 027C47A8 */ cpu->r[5] = 0x00000599u; /* 027C47AC */ cpu->r[4] = cpu->r[31] + 0x00000A5Cu; /* 027C47B0 */ _t33 = cpu->r[30] + 0x00000BE0u; /* 027C47B0 */ rbrew_write32(cpu->mem, _t33, cpu->r[12]); /* 027C47B4 */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C47B8 */ _t34 = cpu->r[31] + 0x00001000u; /* 027C47B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027C47BC */ cpu->r[5] = 0x00000020u; /* 027C47C0 */ cpu->r[4] = cpu->r[31] + 0x00001004u; /* 027C47C4 */ cpu->r[3] = cpu->r[30] + 0x0000118Cu; /* 027C47C8 */ _t35 = cpu->r[30] + 0x00001188u; /* 027C47C8 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]); /* 027C47CC */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C47D0 */ cpu->r[3] = cpu->r[30] + 0x000011ACu; /* 027C47D4 */ cpu->r[4] = cpu->r[31] + 0x00001024u; /* 027C47D8 */ cpu->r[5] = 0x000001D5u; /* 027C47DC */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C47E0 */ cpu->r[3] = cpu->r[30] + 0x00001388u; /* 027C47E4 */ cpu->r[4] = cpu->r[31] + 0x00001200u; /* 027C47E8 */ cpu->r[5] = 0x000001FCu; /* 027C47EC */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C47F0 */ cpu->r[0] = 0x00000002u; /* 027C47F4 */ cpu->r[10] = 0x00000001u; /* 027C47F8 */ _t36 = cpu->r[30] + 0x00000178u; /* 027C47F8 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]); /* 027C47FC */ _t37 = cpu->r[30] + 0x00000178u; /* 027C47FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t37); /* 027C4800 */ cpu->r[7] = 0x00000000u; /* 027C4804 */ _t38 = cpu->r[30] + 0x000025B4u; /* 027C4804 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[10]); /* 027C4808 */ _t39 = cpu->r[30] + 0x00000180u; /* 027C4808 */ rbrew_write32(cpu->mem, _t39, cpu->r[7]); /* 027C480C */ _t40 = cpu->r[1] + 0x00000014u; /* 027C480C */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027C4810 */ _t41 = cpu->r[30] + 0x00000180u; /* 027C4810 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41); /* 027C4814 */ cpu->lr = cpu->r[0]; /* 027C4818 */ _t42 = cpu->r[1] + 0x0000000Cu; /* 027C4818 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42); /* 027C481C */ _t43 = cpu->r[1] + 0x00000008u; /* 027C481C */ cpu->r[30] = rbrew_read32(cpu->mem, _t43); /* 027C4820 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C4824 */ return; } // fn_027C46C8 @ 0x27c46c8 void Gambit_fn_027C46C8(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; L_027C46C8: ; // 0x27c46c8 /* 027C46C8 */ _t0 = cpu->r[1] + 0xFFFFFFF0u; /* 027C46C8 */ rbrew_write32(cpu->mem, _t0, cpu->r[1]); /* 027C46C8 */ cpu->r[1] = _t0; /* 027C46CC */ _t1 = cpu->r[1] + 0x0000000Cu; /* 027C46CC */ rbrew_write32(cpu->mem, _t1, cpu->r[31]); /* 027C46D0 */ _t2 = cpu->r[1] + 0x00000008u; /* 027C46D0 */ rbrew_write32(cpu->mem, _t2, cpu->r[30]); /* 027C46D4 */ cpu->r[30] = cpu->r[3]; /* 027C46D8 */ cpu->r[31] = cpu->r[4]; /* 027C46DC */ cpu->r[5] = 0x00000200u; /* 027C46E0 */ _t3 = cpu->r[1] + 0x00000014u; /* 027C46E0 */ rbrew_write32(cpu->mem, _t3, cpu->r[0]); /* 027C46E4 */ _t4 = cpu->r[31] + 0x00000000u; /* 027C46E4 */ cpu->r[8] = rbrew_read32(cpu->mem, _t4); /* 027C46E8 */ cpu->r[3] = cpu->r[30] + 0x0000018Cu; /* 027C46EC */ cpu->r[4] = cpu->r[31] + 0x00000004u; /* 027C46F0 */ _t5 = cpu->r[30] + 0x00000188u; /* 027C46F0 */ rbrew_write32(cpu->mem, _t5, cpu->r[8]); /* 027C46F4 */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C46F8 */ _t6 = cpu->r[31] + 0x00000204u; /* 027C46F8 */ cpu->r[11] = rbrew_read32(cpu->mem, _t6); /* 027C46FC */ _t7 = cpu->r[30] + 0x0000038Cu; /* 027C46FC */ rbrew_write32(cpu->mem, _t7, cpu->r[11]); /* 027C4700 */ _t8 = cpu->r[31] + 0x00000208u; /* 027C4700 */ cpu->r[12] = rbrew_read32(cpu->mem, _t8); /* 027C4704 */ _t9 = cpu->r[30] + 0x00000390u; /* 027C4704 */ rbrew_write32(cpu->mem, _t9, cpu->r[12]); /* 027C4708 */ _t10 = cpu->r[31] + 0x0000020Cu; /* 027C4708 */ cpu->r[0] = rbrew_read8(cpu->mem, _t10); /* 027C470C */ cpu->r[3] = cpu->r[30] + 0x00000395u; /* 027C4710 */ cpu->r[4] = cpu->r[31] + 0x0000020Du; /* 027C4714 */ cpu->r[5] = 0x00000003u; /* 027C4718 */ _t11 = cpu->r[30] + 0x00000394u; /* 027C4718 */ rbrew_write8(cpu->mem, _t11, (uint8_t)cpu->r[0]); /* 027C471C */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C4720 */ cpu->r[3] = cpu->r[30] + 0x00000398u; /* 027C4724 */ cpu->r[4] = cpu->r[31] + 0x00000210u; /* 027C4728 */ cpu->r[5] = 0x00000130u; /* 027C472C */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C4730 */ _t12 = cpu->r[31] + 0x00000340u; /* 027C4730 */ cpu->r[11] = rbrew_read32(cpu->mem, _t12); /* 027C4734 */ cpu->r[3] = cpu->r[30] + 0x000004D0u; /* 027C4738 */ _t13 = cpu->r[30] + 0x000004C8u; /* 027C4738 */ rbrew_write32(cpu->mem, _t13, cpu->r[11]); /* 027C473C */ _t14 = cpu->r[31] + 0x00000344u; /* 027C473C */ cpu->r[12] = rbrew_read32(cpu->mem, _t14); /* 027C4740 */ cpu->r[5] = 0x000005F0u; /* 027C4744 */ cpu->r[4] = cpu->r[31] + 0x00000348u; /* 027C4748 */ _t15 = cpu->r[30] + 0x000004CCu; /* 027C4748 */ rbrew_write32(cpu->mem, _t15, cpu->r[12]); /* 027C474C */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C4750 */ _t16 = cpu->r[31] + 0x00000938u; /* 027C4750 */ cpu->r[0] = rbrew_read32(cpu->mem, _t16); /* 027C4754 */ _t17 = cpu->r[30] + 0x00000AC0u; /* 027C4754 */ rbrew_write32(cpu->mem, _t17, cpu->r[0]); /* 027C4758 */ _t18 = cpu->r[31] + 0x0000093Cu; /* 027C4758 */ cpu->r[5] = rbrew_read32(cpu->mem, _t18); /* 027C475C */ _t19 = cpu->r[30] + 0x00000AC4u; /* 027C475C */ rbrew_write32(cpu->mem, _t19, cpu->r[5]); /* 027C4760 */ _t20 = cpu->r[31] + 0x00000940u; /* 027C4760 */ cpu->r[6] = rbrew_read32(cpu->mem, _t20); /* 027C4764 */ cpu->r[4] = cpu->r[31] + 0x00000948u; /* 027C4768 */ _t21 = cpu->r[30] + 0x00000AC8u; /* 027C4768 */ rbrew_write32(cpu->mem, _t21, cpu->r[6]); /* 027C476C */ _t22 = cpu->r[31] + 0x00000944u; /* 027C476C */ cpu->r[7] = rbrew_read32(cpu->mem, _t22); /* 027C4770 */ cpu->r[5] = 0x00000100u; /* 027C4774 */ cpu->r[3] = cpu->r[30] + 0x00000AD0u; /* 027C4778 */ _t23 = cpu->r[30] + 0x00000ACCu; /* 027C4778 */ rbrew_write32(cpu->mem, _t23, cpu->r[7]); /* 027C477C */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C4780 */ _t24 = cpu->r[31] + 0x00000A48u; /* 027C4780 */ cpu->r[8] = rbrew_read32(cpu->mem, _t24); /* 027C4784 */ _t25 = cpu->r[31] + 0x00000A4Cu; /* 027C4784 */ cpu->r[9] = rbrew_read32(cpu->mem, _t25); /* 027C4788 */ _t26 = cpu->r[30] + 0x00000BD0u; /* 027C4788 */ rbrew_write32(cpu->mem, _t26, cpu->r[8]); /* 027C478C */ _t27 = cpu->r[30] + 0x00000BD4u; /* 027C478C */ rbrew_write32(cpu->mem, _t27, cpu->r[9]); /* 027C4790 */ _t28 = cpu->r[31] + 0x00000A50u; /* 027C4790 */ cpu->r[10] = rbrew_read32(cpu->mem, _t28); /* 027C4794 */ _t29 = cpu->r[30] + 0x00000BD8u; /* 027C4794 */ rbrew_write32(cpu->mem, _t29, cpu->r[10]); /* 027C4798 */ _t30 = cpu->r[31] + 0x00000A54u; /* 027C4798 */ cpu->r[11] = rbrew_read32(cpu->mem, _t30); /* 027C479C */ cpu->r[3] = cpu->r[30] + 0x00000BE4u; /* 027C47A0 */ _t31 = cpu->r[30] + 0x00000BDCu; /* 027C47A0 */ rbrew_write32(cpu->mem, _t31, cpu->r[11]); /* 027C47A4 */ _t32 = cpu->r[31] + 0x00000A58u; /* 027C47A4 */ cpu->r[12] = rbrew_read32(cpu->mem, _t32); /* 027C47A8 */ cpu->r[5] = 0x00000599u; /* 027C47AC */ cpu->r[4] = cpu->r[31] + 0x00000A5Cu; /* 027C47B0 */ _t33 = cpu->r[30] + 0x00000BE0u; /* 027C47B0 */ rbrew_write32(cpu->mem, _t33, cpu->r[12]); /* 027C47B4 */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C47B8 */ _t34 = cpu->r[31] + 0x00001000u; /* 027C47B8 */ cpu->r[0] = rbrew_read32(cpu->mem, _t34); /* 027C47BC */ cpu->r[5] = 0x00000020u; /* 027C47C0 */ cpu->r[4] = cpu->r[31] + 0x00001004u; /* 027C47C4 */ cpu->r[3] = cpu->r[30] + 0x0000118Cu; /* 027C47C8 */ _t35 = cpu->r[30] + 0x00001188u; /* 027C47C8 */ rbrew_write32(cpu->mem, _t35, cpu->r[0]); /* 027C47CC */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C47D0 */ cpu->r[3] = cpu->r[30] + 0x000011ACu; /* 027C47D4 */ cpu->r[4] = cpu->r[31] + 0x00001024u; /* 027C47D8 */ cpu->r[5] = 0x000001D5u; /* 027C47DC */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C47E0 */ cpu->r[3] = cpu->r[30] + 0x00001388u; /* 027C47E4 */ cpu->r[4] = cpu->r[31] + 0x00001200u; /* 027C47E8 */ cpu->r[5] = 0x000001FCu; /* 027C47EC */ rbrew_dispatch(cpu, 0x02d0b870u); /* 027C47F0 */ cpu->r[0] = 0x00000002u; /* 027C47F4 */ cpu->r[10] = 0x00000001u; /* 027C47F8 */ _t36 = cpu->r[30] + 0x00000178u; /* 027C47F8 */ rbrew_write32(cpu->mem, _t36, cpu->r[0]); /* 027C47FC */ _t37 = cpu->r[30] + 0x00000178u; /* 027C47FC */ cpu->r[0] = rbrew_read32(cpu->mem, _t37); /* 027C4800 */ cpu->r[7] = 0x00000000u; /* 027C4804 */ _t38 = cpu->r[30] + 0x000025B4u; /* 027C4804 */ rbrew_write8(cpu->mem, _t38, (uint8_t)cpu->r[10]); /* 027C4808 */ _t39 = cpu->r[30] + 0x00000180u; /* 027C4808 */ rbrew_write32(cpu->mem, _t39, cpu->r[7]); /* 027C480C */ _t40 = cpu->r[1] + 0x00000014u; /* 027C480C */ cpu->r[0] = rbrew_read32(cpu->mem, _t40); /* 027C4810 */ _t41 = cpu->r[30] + 0x00000180u; /* 027C4810 */ cpu->r[9] = rbrew_read32(cpu->mem, _t41); /* 027C4814 */ cpu->lr = cpu->r[0]; /* 027C4818 */ _t42 = cpu->r[1] + 0x0000000Cu; /* 027C4818 */ cpu->r[31] = rbrew_read32(cpu->mem, _t42); /* 027C481C */ _t43 = cpu->r[1] + 0x00000008u; /* 027C481C */ cpu->r[30] = rbrew_read32(cpu->mem, _t43); /* 027C4820 */ cpu->r[1] = cpu->r[1] + 0x00000010u; /* 027C4824 */ return; }