.include "macros.inc" .section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860 .global AnimCurveExecuteU8__Q24nw4r2efFPUcPUcUlUsUl AnimCurveExecuteU8__Q24nw4r2efFPUcPUcUlUsUl: /* 800A6EF0 000A2D30 94 21 FF 70 */ stwu r1, -0x90(r1) /* 800A6EF4 000A2D34 7C 08 02 A6 */ mflr r0 /* 800A6EF8 000A2D38 90 01 00 94 */ stw r0, 0x94(r1) /* 800A6EFC 000A2D3C 39 61 00 80 */ addi r11, r1, 0x80 /* 800A6F00 000A2D40 DB E1 00 80 */ stfd f31, 0x80(r1) /* 800A6F04 000A2D44 F3 E1 00 88 */ psq_st f31, 0x88(r1), 0, qr0 /* 800A6F08 000A2D48 4B F6 04 09 */ bl lbl_80007310 /* 800A6F0C 000A2D4C 88 03 00 00 */ lbz r0, 0x0(r3) /* 800A6F10 000A2D50 3D 00 43 30 */ lis r8, 0x4330 /* 800A6F14 000A2D54 91 01 00 20 */ stw r8, 0x20(r1) /* 800A6F18 000A2D58 7C 7D 1B 78 */ mr r29, r3 /* 800A6F1C 000A2D5C 28 00 00 AB */ cmplwi r0, 0xab /* 800A6F20 000A2D60 7C 9E 23 78 */ mr r30, r4 /* 800A6F24 000A2D64 91 01 00 28 */ stw r8, 0x28(r1) /* 800A6F28 000A2D68 7C B0 2B 78 */ mr r16, r5 /* 800A6F2C 000A2D6C 7C DF 33 78 */ mr r31, r6 /* 800A6F30 000A2D70 40 82 00 10 */ bne lbl_800A6F40 /* 800A6F34 000A2D74 7C E6 3B 78 */ mr r6, r7 /* 800A6F38 000A2D78 48 00 48 29 */ bl AnimBakedExecuteU8__Q24nw4r2efFPUcPUcUlUl /* 800A6F3C 000A2D7C 48 00 12 74 */ b lbl_800A81B0 .global lbl_800A6F40 lbl_800A6F40: /* 800A6F40 000A2D80 3C 80 80 44 */ lis r4, gCountStandBit__Q24nw4r2ef@ha /* 800A6F44 000A2D84 8B 23 00 03 */ lbz r25, 0x3(r3) /* 800A6F48 000A2D88 38 84 01 08 */ addi r4, r4, gCountStandBit__Q24nw4r2ef@l /* 800A6F4C 000A2D8C 3C C0 80 44 */ lis r6, gMSB__Q24nw4r2ef@ha /* 800A6F50 000A2D90 7D 24 C8 AE */ lbzx r9, r4, r25 /* 800A6F54 000A2D94 38 C6 02 08 */ addi r6, r6, gMSB__Q24nw4r2ef@l /* 800A6F58 000A2D98 7F 06 C8 AE */ lbzx r24, r6, r25 /* 800A6F5C 000A2D9C 2C 09 00 00 */ cmpwi r9, 0x0 /* 800A6F60 000A2DA0 41 82 12 50 */ beq lbl_800A81B0 /* 800A6F64 000A2DA4 A0 83 00 08 */ lhz r4, 0x8(r3) /* 800A6F68 000A2DA8 39 09 00 0D */ addi r8, r9, 0xd /* 800A6F6C 000A2DAC 80 C3 00 0C */ lwz r6, 0xc(r3) /* 800A6F70 000A2DB0 3A C3 00 20 */ addi r22, r3, 0x20 /* 800A6F74 000A2DB4 28 04 00 01 */ cmplwi r4, 0x1 /* 800A6F78 000A2DB8 80 03 00 10 */ lwz r0, 0x10(r3) /* 800A6F7C 000A2DBC 7E B6 32 14 */ add r21, r22, r6 /* 800A6F80 000A2DC0 55 17 00 3C */ clrrwi r23, r8, 1 /* 800A6F84 000A2DC4 7E 95 02 14 */ add r20, r21, r0 /* 800A6F88 000A2DC8 55 3C 08 3C */ slwi r28, r9, 1 /* 800A6F8C 000A2DCC 3A 60 00 00 */ li r19, 0x0 /* 800A6F90 000A2DD0 41 81 00 14 */ bgt lbl_800A6FA4 /* 800A6F94 000A2DD4 C0 82 8A 38 */ lfs f4, "@11024"@sda21(r2) /* 800A6F98 000A2DD8 7E 13 83 78 */ mr r19, r16 /* 800A6F9C 000A2DDC 38 80 00 00 */ li r4, 0x0 /* 800A6FA0 000A2DE0 48 00 02 D8 */ b lbl_800A7278 .global lbl_800A6FA4 lbl_800A6FA4: /* 800A6FA4 000A2DE4 8B 63 00 04 */ lbz r27, 0x4(r3) /* 800A6FA8 000A2DE8 57 66 06 B5 */ rlwinm. r6, r27, 0, 26, 26 /* 800A6FAC 000A2DEC 40 82 00 D4 */ bne lbl_800A7080 /* 800A6FB0 000A2DF0 88 03 00 05 */ lbz r0, 0x5(r3) /* 800A6FB4 000A2DF4 28 00 00 01 */ cmplwi r0, 0x1 /* 800A6FB8 000A2DF8 41 81 00 C8 */ bgt lbl_800A7080 /* 800A6FBC 000A2DFC 57 60 06 31 */ rlwinm. r0, r27, 0, 24, 24 /* 800A6FC0 000A2E00 40 82 00 2C */ bne lbl_800A6FEC /* 800A6FC4 000A2E04 38 04 FF FF */ addi r0, r4, -0x1 /* 800A6FC8 000A2E08 54 A4 04 3E */ clrlwi r4, r5, 16 /* 800A6FCC 000A2E0C 7C 05 00 40 */ cmplw r5, r0 /* 800A6FD0 000A2E10 41 80 00 08 */ blt lbl_800A6FD8 /* 800A6FD4 000A2E14 54 04 04 3E */ clrlwi r4, r0, 16 .global lbl_800A6FD8 lbl_800A6FD8: /* 800A6FD8 000A2E18 90 81 00 24 */ stw r4, 0x24(r1) /* 800A6FDC 000A2E1C C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A6FE0 000A2E20 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A6FE4 000A2E24 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A6FE8 000A2E28 48 00 02 90 */ b lbl_800A7278 .global lbl_800A6FEC lbl_800A6FEC: /* 800A6FEC 000A2E2C 28 07 00 01 */ cmplwi r7, 0x1 /* 800A6FF0 000A2E30 40 82 00 20 */ bne lbl_800A7010 /* 800A6FF4 000A2E34 38 04 FF FF */ addi r0, r4, -0x1 /* 800A6FF8 000A2E38 C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800A6FFC 000A2E3C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800A7000 000A2E40 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A7004 000A2E44 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A7008 000A2E48 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A700C 000A2E4C 48 00 00 64 */ b lbl_800A7070 .global lbl_800A7010 lbl_800A7010: /* 800A7010 000A2E50 90 A1 00 24 */ stw r5, 0x24(r1) /* 800A7014 000A2E54 38 04 FF FF */ addi r0, r4, -0x1 /* 800A7018 000A2E58 6C 03 80 00 */ xoris r3, r0, 0x8000 /* 800A701C 000A2E5C C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800A7020 000A2E60 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A7024 000A2E64 38 07 FF FF */ addi r0, r7, -0x1 /* 800A7028 000A2E68 90 61 00 2C */ stw r3, 0x2c(r1) /* 800A702C 000A2E6C EC 80 28 28 */ fsubs f4, f0, f5 /* 800A7030 000A2E70 C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800A7034 000A2E74 90 01 00 24 */ stw r0, 0x24(r1) /* 800A7038 000A2E78 C8 21 00 28 */ lfd f1, 0x28(r1) /* 800A703C 000A2E7C C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A7040 000A2E80 EC 41 18 28 */ fsubs f2, f1, f3 /* 800A7044 000A2E84 90 61 00 2C */ stw r3, 0x2c(r1) /* 800A7048 000A2E88 EC 20 28 28 */ fsubs f1, f0, f5 /* 800A704C 000A2E8C C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A7050 000A2E90 EC 22 08 24 */ fdivs f1, f2, f1 /* 800A7054 000A2E94 EC 84 00 72 */ fmuls f4, f4, f1 /* 800A7058 000A2E98 EC 00 18 28 */ fsubs f0, f0, f3 /* 800A705C 000A2E9C FC 04 00 40 */ fcmpo cr0, f4, f0 /* 800A7060 000A2EA0 40 81 00 10 */ ble lbl_800A7070 /* 800A7064 000A2EA4 90 61 00 24 */ stw r3, 0x24(r1) /* 800A7068 000A2EA8 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A706C 000A2EAC EC 80 18 28 */ fsubs f4, f0, f3 .global lbl_800A7070 lbl_800A7070: /* 800A7070 000A2EB0 FC 00 20 1E */ fctiwz f0, f4 /* 800A7074 000A2EB4 D8 01 00 30 */ stfd f0, 0x30(r1) /* 800A7078 000A2EB8 80 81 00 34 */ lwz r4, 0x34(r1) /* 800A707C 000A2EBC 48 00 01 FC */ b lbl_800A7278 .global lbl_800A7080 lbl_800A7080: /* 800A7080 000A2EC0 57 60 06 31 */ rlwinm. r0, r27, 0, 24, 24 /* 800A7084 000A2EC4 40 82 00 CC */ bne lbl_800A7150 /* 800A7088 000A2EC8 38 E4 FF FF */ addi r7, r4, -0x1 /* 800A708C 000A2ECC 57 60 06 73 */ rlwinm. r0, r27, 0, 25, 25 /* 800A7090 000A2ED0 7E 65 3B 96 */ divwu r19, r5, r7 /* 800A7094 000A2ED4 40 82 00 38 */ bne lbl_800A70CC /* 800A7098 000A2ED8 2C 06 00 00 */ cmpwi r6, 0x0 /* 800A709C 000A2EDC 40 82 00 20 */ bne lbl_800A70BC /* 800A70A0 000A2EE0 88 63 00 05 */ lbz r3, 0x5(r3) /* 800A70A4 000A2EE4 7C 13 18 40 */ cmplw r19, r3 /* 800A70A8 000A2EE8 41 80 00 14 */ blt lbl_800A70BC /* 800A70AC 000A2EEC 38 03 FF FF */ addi r0, r3, -0x1 /* 800A70B0 000A2EF0 54 E4 04 3E */ clrlwi r4, r7, 16 /* 800A70B4 000A2EF4 54 13 06 3E */ clrlwi r19, r0, 24 /* 800A70B8 000A2EF8 48 00 00 80 */ b lbl_800A7138 .global lbl_800A70BC lbl_800A70BC: /* 800A70BC 000A2EFC 7C 13 39 D6 */ mullw r0, r19, r7 /* 800A70C0 000A2F00 7C 00 28 50 */ subf r0, r0, r5 /* 800A70C4 000A2F04 54 04 04 3E */ clrlwi r4, r0, 16 /* 800A70C8 000A2F08 48 00 00 70 */ b lbl_800A7138 .global lbl_800A70CC lbl_800A70CC: /* 800A70CC 000A2F0C 2C 06 00 00 */ cmpwi r6, 0x0 /* 800A70D0 000A2F10 40 82 00 40 */ bne lbl_800A7110 /* 800A70D4 000A2F14 88 C3 00 05 */ lbz r6, 0x5(r3) /* 800A70D8 000A2F18 7C 13 30 40 */ cmplw r19, r6 /* 800A70DC 000A2F1C 41 80 00 34 */ blt lbl_800A7110 /* 800A70E0 000A2F20 54 C4 0F FE */ srwi r4, r6, 31 /* 800A70E4 000A2F24 54 C0 07 FE */ clrlwi r0, r6, 31 /* 800A70E8 000A2F28 7C 03 22 78 */ xor r3, r0, r4 /* 800A70EC 000A2F2C 7C 84 18 50 */ subf r4, r4, r3 /* 800A70F0 000A2F30 38 06 FF FF */ addi r0, r6, -0x1 /* 800A70F4 000A2F34 7C 84 00 34 */ cntlzw r4, r4 /* 800A70F8 000A2F38 54 E3 04 3E */ clrlwi r3, r7, 16 /* 800A70FC 000A2F3C 54 13 06 3E */ clrlwi r19, r0, 24 /* 800A7100 000A2F40 54 80 DF FE */ extrwi r0, r4, 1, 26 /* 800A7104 000A2F44 7C 00 00 D0 */ neg r0, r0 /* 800A7108 000A2F48 7C 64 00 78 */ andc r4, r3, r0 /* 800A710C 000A2F4C 48 00 00 2C */ b lbl_800A7138 .global lbl_800A7110 lbl_800A7110: /* 800A7110 000A2F50 56 60 07 FF */ clrlwi. r0, r19, 31 /* 800A7114 000A2F54 40 82 00 14 */ bne lbl_800A7128 /* 800A7118 000A2F58 7C 13 39 D6 */ mullw r0, r19, r7 /* 800A711C 000A2F5C 7C 00 28 50 */ subf r0, r0, r5 /* 800A7120 000A2F60 54 04 04 3E */ clrlwi r4, r0, 16 /* 800A7124 000A2F64 48 00 00 14 */ b lbl_800A7138 .global lbl_800A7128 lbl_800A7128: /* 800A7128 000A2F68 38 13 00 01 */ addi r0, r19, 0x1 /* 800A712C 000A2F6C 7C 07 01 D6 */ mullw r0, r7, r0 /* 800A7130 000A2F70 7C 05 00 50 */ subf r0, r5, r0 /* 800A7134 000A2F74 54 04 04 3E */ clrlwi r4, r0, 16 .global lbl_800A7138 lbl_800A7138: /* 800A7138 000A2F78 54 80 04 3E */ clrlwi r0, r4, 16 /* 800A713C 000A2F7C 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A7140 000A2F80 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A7144 000A2F84 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A7148 000A2F88 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A714C 000A2F8C 48 00 01 2C */ b lbl_800A7278 .global lbl_800A7150 lbl_800A7150: /* 800A7150 000A2F90 38 C7 FF FF */ addi r6, r7, -0x1 /* 800A7154 000A2F94 7C 05 30 40 */ cmplw r5, r6 /* 800A7158 000A2F98 41 80 00 54 */ blt lbl_800A71AC /* 800A715C 000A2F9C 57 60 06 73 */ rlwinm. r0, r27, 0, 25, 25 /* 800A7160 000A2FA0 41 82 00 1C */ beq lbl_800A717C /* 800A7164 000A2FA4 88 03 00 05 */ lbz r0, 0x5(r3) /* 800A7168 000A2FA8 54 05 0F FE */ srwi r5, r0, 31 /* 800A716C 000A2FAC 54 00 07 FE */ clrlwi r0, r0, 31 /* 800A7170 000A2FB0 7C 00 2A 78 */ xor r0, r0, r5 /* 800A7174 000A2FB4 7C 05 00 51 */ subf. r0, r5, r0 /* 800A7178 000A2FB8 41 82 00 10 */ beq lbl_800A7188 .global lbl_800A717C lbl_800A717C: /* 800A717C 000A2FBC 38 04 FF FF */ addi r0, r4, -0x1 /* 800A7180 000A2FC0 54 04 04 3E */ clrlwi r4, r0, 16 /* 800A7184 000A2FC4 48 00 00 08 */ b lbl_800A718C .global lbl_800A7188 lbl_800A7188: /* 800A7188 000A2FC8 38 80 00 00 */ li r4, 0x0 .global lbl_800A718C lbl_800A718C: /* 800A718C 000A2FCC 90 81 00 24 */ stw r4, 0x24(r1) /* 800A7190 000A2FD0 88 63 00 05 */ lbz r3, 0x5(r3) /* 800A7194 000A2FD4 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A7198 000A2FD8 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A719C 000A2FDC 38 03 FF FF */ addi r0, r3, -0x1 /* 800A71A0 000A2FE0 54 13 06 3E */ clrlwi r19, r0, 24 /* 800A71A4 000A2FE4 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A71A8 000A2FE8 48 00 00 D0 */ b lbl_800A7278 .global lbl_800A71AC lbl_800A71AC: /* 800A71AC 000A2FEC 88 03 00 05 */ lbz r0, 0x5(r3) /* 800A71B0 000A2FF0 3B 44 FF FF */ addi r26, r4, -0x1 /* 800A71B4 000A2FF4 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A71B8 000A2FF8 6F 40 80 00 */ xoris r0, r26, 0x8000 /* 800A71BC 000A2FFC C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800A71C0 000A3000 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A71C4 000A3004 90 01 00 24 */ stw r0, 0x24(r1) /* 800A71C8 000A3008 C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800A71CC 000A300C EC 80 28 28 */ fsubs f4, f0, f5 /* 800A71D0 000A3010 90 C1 00 2C */ stw r6, 0x2c(r1) /* 800A71D4 000A3014 C8 21 00 20 */ lfd f1, 0x20(r1) /* 800A71D8 000A3018 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A71DC 000A301C EC 41 18 28 */ fsubs f2, f1, f3 /* 800A71E0 000A3020 90 A1 00 24 */ stw r5, 0x24(r1) /* 800A71E4 000A3024 EC 00 28 28 */ fsubs f0, f0, f5 /* 800A71E8 000A3028 C8 21 00 20 */ lfd f1, 0x20(r1) /* 800A71EC 000A302C 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A71F0 000A3030 EC 42 00 24 */ fdivs f2, f2, f0 /* 800A71F4 000A3034 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A71F8 000A3038 EF E4 00 B2 */ fmuls f31, f4, f2 /* 800A71FC 000A303C EC 21 28 28 */ fsubs f1, f1, f5 /* 800A7200 000A3040 EC 00 18 28 */ fsubs f0, f0, f3 /* 800A7204 000A3044 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800A7208 000A3048 EC 21 00 24 */ fdivs f1, f1, f0 /* 800A720C 000A304C 4B F6 00 09 */ bl __cvt_fp2unsigned /* 800A7210 000A3050 7C 83 D1 D6 */ mullw r4, r3, r26 /* 800A7214 000A3054 92 01 00 24 */ stw r16, 0x24(r1) /* 800A7218 000A3058 C8 42 8A 40 */ lfd f2, "@11031"@sda21(r2) /* 800A721C 000A305C 57 60 06 73 */ rlwinm. r0, r27, 0, 25, 25 /* 800A7220 000A3060 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A7224 000A3064 7C 73 1B 78 */ mr r19, r3 /* 800A7228 000A3068 EC 20 10 28 */ fsubs f1, f0, f2 /* 800A722C 000A306C 90 81 00 2C */ stw r4, 0x2c(r1) /* 800A7230 000A3070 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A7234 000A3074 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800A7238 000A3078 EC 00 10 28 */ fsubs f0, f0, f2 /* 800A723C 000A307C EC 81 00 28 */ fsubs f4, f1, f0 /* 800A7240 000A3080 40 82 00 08 */ bne lbl_800A7248 /* 800A7244 000A3084 48 00 00 28 */ b lbl_800A726C .global lbl_800A7248 lbl_800A7248: /* 800A7248 000A3088 54 60 07 FF */ clrlwi. r0, r3, 31 /* 800A724C 000A308C 40 82 00 08 */ bne lbl_800A7254 /* 800A7250 000A3090 48 00 00 1C */ b lbl_800A726C .global lbl_800A7254 lbl_800A7254: /* 800A7254 000A3094 6F 40 80 00 */ xoris r0, r26, 0x8000 /* 800A7258 000A3098 90 01 00 24 */ stw r0, 0x24(r1) /* 800A725C 000A309C C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800A7260 000A30A0 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A7264 000A30A4 EC 00 08 28 */ fsubs f0, f0, f1 /* 800A7268 000A30A8 EC 80 20 28 */ fsubs f4, f0, f4 .global lbl_800A726C lbl_800A726C: /* 800A726C 000A30AC FC 00 20 1E */ fctiwz f0, f4 /* 800A7270 000A30B0 D8 01 00 30 */ stfd f0, 0x30(r1) /* 800A7274 000A30B4 80 81 00 34 */ lwz r4, 0x34(r1) .global lbl_800A7278 lbl_800A7278: /* 800A7278 000A30B8 54 84 04 3E */ clrlwi r4, r4, 16 /* 800A727C 000A30BC A0 76 00 00 */ lhz r3, 0x0(r22) /* 800A7280 000A30C0 6C 80 80 00 */ xoris r0, r4, 0x8000 /* 800A7284 000A30C4 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A7288 000A30C8 3A 43 FF FF */ addi r18, r3, -0x1 /* 800A728C 000A30CC C8 42 8A 48 */ lfd f2, "@11032_8055E9C8"@sda21(r2) /* 800A7290 000A30D0 C8 21 00 28 */ lfd f1, 0x28(r1) /* 800A7294 000A30D4 56 40 0F FE */ srwi r0, r18, 31 /* 800A7298 000A30D8 7C 00 92 14 */ add r0, r0, r18 /* 800A729C 000A30DC C0 02 8A 54 */ lfs f0, "@11364"@sda21(r2) /* 800A72A0 000A30E0 EC 21 10 28 */ fsubs f1, f1, f2 /* 800A72A4 000A30E4 3B 76 00 04 */ addi r27, r22, 0x4 /* 800A72A8 000A30E8 7C 05 0E 70 */ srawi r5, r0, 1 /* 800A72AC 000A30EC 38 C0 00 00 */ li r6, 0x0 /* 800A72B0 000A30F0 EC 21 20 28 */ fsubs f1, f1, f4 /* 800A72B4 000A30F4 FC 20 0A 10 */ fabs f1, f1 /* 800A72B8 000A30F8 FC 20 08 18 */ frsp f1, f1 /* 800A72BC 000A30FC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800A72C0 000A3100 7C E0 00 26 */ mfcr r7 /* 800A72C4 000A3104 A2 36 00 04 */ lhz r17, 0x4(r22) /* 800A72C8 000A3108 54 E7 0F FE */ srwi r7, r7, 31 /* 800A72CC 000A310C 7C 04 88 00 */ cmpw r4, r17 /* 800A72D0 000A3110 40 80 00 10 */ bge lbl_800A72E0 /* 800A72D4 000A3114 3A 40 00 00 */ li r18, 0x0 /* 800A72D8 000A3118 38 E0 00 01 */ li r7, 0x1 /* 800A72DC 000A311C 48 00 00 C0 */ b lbl_800A739C .global lbl_800A72E0 lbl_800A72E0: /* 800A72E0 000A3120 40 82 00 28 */ bne lbl_800A7308 /* 800A72E4 000A3124 2C 12 00 00 */ cmpwi r18, 0x0 /* 800A72E8 000A3128 3A 40 00 00 */ li r18, 0x0 /* 800A72EC 000A312C 40 82 00 0C */ bne lbl_800A72F8 /* 800A72F0 000A3130 38 E0 00 01 */ li r7, 0x1 /* 800A72F4 000A3134 48 00 00 A8 */ b lbl_800A739C .global lbl_800A72F8 lbl_800A72F8: /* 800A72F8 000A3138 2C 07 00 00 */ cmpwi r7, 0x0 /* 800A72FC 000A313C 40 82 00 A0 */ bne lbl_800A739C /* 800A7300 000A3140 7E 1B BA 2E */ lhzx r16, r27, r23 /* 800A7304 000A3144 48 00 00 98 */ b lbl_800A739C .global lbl_800A7308 lbl_800A7308: /* 800A7308 000A3148 7C 12 B9 D6 */ mullw r0, r18, r23 /* 800A730C 000A314C 7E 1B 02 2E */ lhzx r16, r27, r0 /* 800A7310 000A3150 7C 10 20 00 */ cmpw r16, r4 /* 800A7314 000A3154 41 81 00 0C */ bgt lbl_800A7320 /* 800A7318 000A3158 38 E0 00 01 */ li r7, 0x1 /* 800A731C 000A315C 48 00 00 80 */ b lbl_800A739C .global lbl_800A7320 lbl_800A7320: /* 800A7320 000A3160 7C 05 B9 D6 */ mullw r0, r5, r23 /* 800A7324 000A3164 7C 7B 02 2E */ lhzx r3, r27, r0 /* 800A7328 000A3168 48 00 00 64 */ b lbl_800A738C /* 800A732C 000A316C 60 00 00 00 */ nop .global lbl_800A7330 lbl_800A7330: /* 800A7330 000A3170 7C 04 18 00 */ cmpw r4, r3 /* 800A7334 000A3174 40 82 00 24 */ bne lbl_800A7358 /* 800A7338 000A3178 2C 07 00 00 */ cmpwi r7, 0x0 /* 800A733C 000A317C 7C B2 2B 78 */ mr r18, r5 /* 800A7340 000A3180 40 82 00 5C */ bne lbl_800A739C /* 800A7344 000A3184 38 05 00 01 */ addi r0, r5, 0x1 /* 800A7348 000A3188 7C 71 1B 78 */ mr r17, r3 /* 800A734C 000A318C 7C 00 B9 D6 */ mullw r0, r0, r23 /* 800A7350 000A3190 7E 1B 02 2E */ lhzx r16, r27, r0 /* 800A7354 000A3194 48 00 00 48 */ b lbl_800A739C .global lbl_800A7358 lbl_800A7358: /* 800A7358 000A3198 7C 03 20 00 */ cmpw r3, r4 /* 800A735C 000A319C 40 80 00 10 */ bge lbl_800A736C /* 800A7360 000A31A0 7C A6 2B 78 */ mr r6, r5 /* 800A7364 000A31A4 7C 71 1B 78 */ mr r17, r3 /* 800A7368 000A31A8 48 00 00 0C */ b lbl_800A7374 .global lbl_800A736C lbl_800A736C: /* 800A736C 000A31AC 7C B2 2B 78 */ mr r18, r5 /* 800A7370 000A31B0 7C 70 1B 78 */ mr r16, r3 .global lbl_800A7374 lbl_800A7374: /* 800A7374 000A31B4 7C 66 92 14 */ add r3, r6, r18 /* 800A7378 000A31B8 54 60 0F FE */ srwi r0, r3, 31 /* 800A737C 000A31BC 7C 00 1A 14 */ add r0, r0, r3 /* 800A7380 000A31C0 7C 05 0E 70 */ srawi r5, r0, 1 /* 800A7384 000A31C4 7C 05 B9 D6 */ mullw r0, r5, r23 /* 800A7388 000A31C8 7C 7B 02 2E */ lhzx r3, r27, r0 .global lbl_800A738C lbl_800A738C: /* 800A738C 000A31CC 7C 06 28 00 */ cmpw r6, r5 /* 800A7390 000A31D0 41 80 FF A0 */ blt lbl_800A7330 /* 800A7394 000A31D4 7C D2 33 78 */ mr r18, r6 /* 800A7398 000A31D8 38 E0 00 00 */ li r7, 0x0 .global lbl_800A739C lbl_800A739C: /* 800A739C 000A31DC 2C 07 00 00 */ cmpwi r7, 0x0 /* 800A73A0 000A31E0 41 82 01 9C */ beq lbl_800A753C /* 800A73A4 000A31E4 7C 12 B9 D6 */ mullw r0, r18, r23 /* 800A73A8 000A31E8 7C 9B 02 14 */ add r4, r27, r0 /* 800A73AC 000A31EC 89 24 00 02 */ lbz r9, 0x2(r4) /* 800A73B0 000A31F0 38 84 00 0C */ addi r4, r4, 0xc /* 800A73B4 000A31F4 2C 09 00 00 */ cmpwi r9, 0x0 /* 800A73B8 000A31F8 40 82 00 38 */ bne lbl_800A73F0 /* 800A73BC 000A31FC 38 60 00 01 */ li r3, 0x1 /* 800A73C0 000A3200 48 00 00 24 */ b lbl_800A73E4 /* 800A73C4 000A3204 60 00 00 00 */ nop .global lbl_800A73C8 lbl_800A73C8: /* 800A73C8 000A3208 7F 20 18 39 */ and. r0, r25, r3 /* 800A73CC 000A320C 41 82 00 10 */ beq lbl_800A73DC /* 800A73D0 000A3210 88 04 00 00 */ lbz r0, 0x0(r4) /* 800A73D4 000A3214 38 84 00 01 */ addi r4, r4, 0x1 /* 800A73D8 000A3218 98 1E 00 00 */ stb r0, 0x0(r30) .global lbl_800A73DC lbl_800A73DC: /* 800A73DC 000A321C 54 63 0C 3C */ rlwinm r3, r3, 1, 16, 30 /* 800A73E0 000A3220 3B DE 00 01 */ addi r30, r30, 0x1 .global lbl_800A73E4 lbl_800A73E4: /* 800A73E4 000A3224 7C 03 C0 00 */ cmpw r3, r24 /* 800A73E8 000A3228 40 81 FF E0 */ ble lbl_800A73C8 /* 800A73EC 000A322C 48 00 0D C4 */ b lbl_800A81B0 .global lbl_800A73F0 lbl_800A73F0: /* 800A73F0 000A3230 3C 60 37 11 */ lis r3, 0x3711 /* 800A73F4 000A3234 A0 04 00 00 */ lhz r0, 0x0(r4) /* 800A73F8 000A3238 38 63 97 E7 */ addi r3, r3, -0x6819 /* 800A73FC 000A323C 3C C0 3F 82 */ lis r6, 0x3f82 /* 800A7400 000A3240 7C 60 19 D6 */ mullw r3, r0, r3 /* 800A7404 000A3244 3C A0 30 A7 */ lis r5, 0x30a7 /* 800A7408 000A3248 39 06 F6 35 */ addi r8, r6, -0x9cb /* 800A740C 000A324C A0 FD 00 06 */ lhz r7, 0x6(r29) /* 800A7410 000A3250 3C 80 00 08 */ lis r4, 0x8 /* 800A7414 000A3254 38 C5 41 93 */ addi r6, r5, 0x4193 /* 800A7418 000A3258 38 A4 B9 29 */ addi r5, r4, -0x46d7 /* 800A741C 000A325C 3C 83 00 05 */ addis r4, r3, 0x5 /* 800A7420 000A3260 55 23 07 BD */ rlwinm. r3, r9, 0, 30, 30 /* 800A7424 000A3264 38 64 BF 53 */ addi r3, r4, -0x40ad /* 800A7428 000A3268 7C B3 29 D6 */ mullw r5, r19, r5 /* 800A742C 000A326C 7D 1F 41 D6 */ mullw r8, r31, r8 /* 800A7430 000A3270 7C 65 1A 14 */ add r3, r5, r3 /* 800A7434 000A3274 7C 87 31 D6 */ mullw r4, r7, r6 /* 800A7438 000A3278 7C 88 22 14 */ add r4, r8, r4 /* 800A743C 000A327C 7C 64 1A 14 */ add r3, r4, r3 /* 800A7440 000A3280 90 61 00 18 */ stw r3, 0x18(r1) /* 800A7444 000A3284 88 A1 00 1A */ lbz r5, 0x1a(r1) /* 800A7448 000A3288 88 61 00 1B */ lbz r3, 0x1b(r1) /* 800A744C 000A328C 88 81 00 19 */ lbz r4, 0x19(r1) /* 800A7450 000A3290 7C A5 1A 78 */ xor r5, r5, r3 /* 800A7454 000A3294 88 61 00 18 */ lbz r3, 0x18(r1) /* 800A7458 000A3298 7C 84 2A 78 */ xor r4, r4, r5 /* 800A745C 000A329C 98 A1 00 1A */ stb r5, 0x1a(r1) /* 800A7460 000A32A0 7C 63 22 78 */ xor r3, r3, r4 /* 800A7464 000A32A4 98 81 00 19 */ stb r4, 0x19(r1) /* 800A7468 000A32A8 98 61 00 18 */ stb r3, 0x18(r1) /* 800A746C 000A32AC 80 61 00 18 */ lwz r3, 0x18(r1) /* 800A7470 000A32B0 40 82 00 14 */ bne lbl_800A7484 /* 800A7474 000A32B4 7C 00 E1 D6 */ mullw r0, r0, r28 /* 800A7478 000A32B8 7C 95 02 14 */ add r4, r21, r0 /* 800A747C 000A32BC 38 E4 00 04 */ addi r7, r4, 0x4 /* 800A7480 000A32C0 48 00 00 38 */ b lbl_800A74B8 .global lbl_800A7484 lbl_800A7484: /* 800A7484 000A32C4 A0 D4 00 00 */ lhz r6, 0x0(r20) /* 800A7488 000A32C8 54 67 84 3E */ srwi r7, r3, 16 /* 800A748C 000A32CC 3C 80 00 03 */ lis r4, 0x3 /* 800A7490 000A32D0 7C A7 33 96 */ divwu r5, r7, r6 /* 800A7494 000A32D4 38 04 43 FD */ addi r0, r4, 0x43fd /* 800A7498 000A32D8 7C 85 31 D6 */ mullw r4, r5, r6 /* 800A749C 000A32DC 7C 84 38 50 */ subf r4, r4, r7 /* 800A74A0 000A32E0 7C 9C 21 D6 */ mullw r4, r28, r4 /* 800A74A4 000A32E4 7C 63 01 D6 */ mullw r3, r3, r0 /* 800A74A8 000A32E8 7C 94 22 14 */ add r4, r20, r4 /* 800A74AC 000A32EC 38 E4 00 04 */ addi r7, r4, 0x4 /* 800A74B0 000A32F0 3C 63 00 27 */ addis r3, r3, 0x27 /* 800A74B4 000A32F4 38 63 9E C3 */ addi r3, r3, -0x613d .global lbl_800A74B8 lbl_800A74B8: /* 800A74B8 000A32F8 39 00 00 01 */ li r8, 0x1 /* 800A74BC 000A32FC 3C 80 00 03 */ lis r4, 0x3 /* 800A74C0 000A3300 48 00 00 70 */ b lbl_800A7530 /* 800A74C4 000A3304 60 00 00 00 */ nop .global lbl_800A74C8 lbl_800A74C8: /* 800A74C8 000A3308 7F 20 40 39 */ and. r0, r25, r8 /* 800A74CC 000A330C 41 82 00 40 */ beq lbl_800A750C /* 800A74D0 000A3310 54 60 84 3E */ srwi r0, r3, 16 /* 800A74D4 000A3314 88 A7 00 01 */ lbz r5, 0x1(r7) /* 800A74D8 000A3318 7C 00 07 34 */ extsh r0, r0 /* 800A74DC 000A331C 88 C7 00 00 */ lbz r6, 0x0(r7) /* 800A74E0 000A3320 7C 05 01 D6 */ mullw r0, r5, r0 /* 800A74E4 000A3324 38 E7 00 02 */ addi r7, r7, 0x2 /* 800A74E8 000A3328 7C 00 7E 70 */ srawi r0, r0, 15 /* 800A74EC 000A332C 7C 00 01 94 */ addze r0, r0 /* 800A74F0 000A3330 7C 06 02 15 */ add. r0, r6, r0 /* 800A74F4 000A3334 40 80 00 08 */ bge lbl_800A74FC /* 800A74F8 000A3338 38 00 00 00 */ li r0, 0x0 .global lbl_800A74FC lbl_800A74FC: /* 800A74FC 000A333C 2C 00 00 FF */ cmpwi r0, 0xff /* 800A7500 000A3340 40 81 00 08 */ ble lbl_800A7508 /* 800A7504 000A3344 38 00 00 FF */ li r0, 0xff .global lbl_800A7508 lbl_800A7508: /* 800A7508 000A3348 98 1E 00 00 */ stb r0, 0x0(r30) .global lbl_800A750C lbl_800A750C: /* 800A750C 000A334C 88 1D 00 04 */ lbz r0, 0x4(r29) /* 800A7510 000A3350 54 00 07 7B */ rlwinm. r0, r0, 0, 29, 29 /* 800A7514 000A3354 40 82 00 14 */ bne lbl_800A7528 /* 800A7518 000A3358 38 04 43 FD */ addi r0, r4, 0x43fd /* 800A751C 000A335C 7C 63 01 D6 */ mullw r3, r3, r0 /* 800A7520 000A3360 3C 63 00 27 */ addis r3, r3, 0x27 /* 800A7524 000A3364 38 63 9E C3 */ addi r3, r3, -0x613d .global lbl_800A7528 lbl_800A7528: /* 800A7528 000A3368 55 08 0C 3C */ rlwinm r8, r8, 1, 16, 30 /* 800A752C 000A336C 3B DE 00 01 */ addi r30, r30, 0x1 .global lbl_800A7530 lbl_800A7530: /* 800A7530 000A3370 7C 08 C0 00 */ cmpw r8, r24 /* 800A7534 000A3374 40 81 FF 94 */ ble lbl_800A74C8 /* 800A7538 000A3378 48 00 0C 78 */ b lbl_800A81B0 .global lbl_800A753C lbl_800A753C: /* 800A753C 000A337C 88 7D 00 04 */ lbz r3, 0x4(r29) /* 800A7540 000A3380 7E 7A 9B 78 */ mr r26, r19 /* 800A7544 000A3384 54 60 06 73 */ rlwinm. r0, r3, 0, 25, 25 /* 800A7548 000A3388 41 82 00 6C */ beq lbl_800A75B4 /* 800A754C 000A338C 54 65 06 B5 */ rlwinm. r5, r3, 0, 26, 26 /* 800A7550 000A3390 40 82 00 10 */ bne lbl_800A7560 /* 800A7554 000A3394 88 1D 00 05 */ lbz r0, 0x5(r29) /* 800A7558 000A3398 28 00 00 01 */ cmplwi r0, 0x1 /* 800A755C 000A339C 40 81 00 58 */ ble lbl_800A75B4 .global lbl_800A7560 lbl_800A7560: /* 800A7560 000A33A0 56 66 07 FF */ clrlwi. r6, r19, 31 /* 800A7564 000A33A4 40 82 00 34 */ bne lbl_800A7598 /* 800A7568 000A33A8 A0 76 00 00 */ lhz r3, 0x0(r22) /* 800A756C 000A33AC 38 92 00 01 */ addi r4, r18, 0x1 /* 800A7570 000A33B0 38 03 FF FF */ addi r0, r3, -0x1 /* 800A7574 000A33B4 7C 04 00 00 */ cmpw r4, r0 /* 800A7578 000A33B8 41 80 00 20 */ blt lbl_800A7598 /* 800A757C 000A33BC 2C 05 00 00 */ cmpwi r5, 0x0 /* 800A7580 000A33C0 40 82 00 14 */ bne lbl_800A7594 /* 800A7584 000A33C4 88 7D 00 05 */ lbz r3, 0x5(r29) /* 800A7588 000A33C8 38 03 FF FF */ addi r0, r3, -0x1 /* 800A758C 000A33CC 7C 13 00 40 */ cmplw r19, r0 /* 800A7590 000A33D0 40 80 00 08 */ bge lbl_800A7598 .global lbl_800A7594 lbl_800A7594: /* 800A7594 000A33D4 3B 53 00 01 */ addi r26, r19, 0x1 .global lbl_800A7598 lbl_800A7598: /* 800A7598 000A33D8 2C 06 00 00 */ cmpwi r6, 0x0 /* 800A759C 000A33DC 41 82 00 18 */ beq lbl_800A75B4 /* 800A75A0 000A33E0 2C 12 00 00 */ cmpwi r18, 0x0 /* 800A75A4 000A33E4 40 82 00 10 */ bne lbl_800A75B4 /* 800A75A8 000A33E8 2C 13 00 00 */ cmpwi r19, 0x0 /* 800A75AC 000A33EC 41 82 00 08 */ beq lbl_800A75B4 /* 800A75B0 000A33F0 3A 73 00 01 */ addi r19, r19, 0x1 .global lbl_800A75B4 lbl_800A75B4: /* 800A75B4 000A33F4 56 20 04 3E */ clrlwi r0, r17, 16 /* 800A75B8 000A33F8 90 01 00 24 */ stw r0, 0x24(r1) /* 800A75BC 000A33FC C8 42 8A 40 */ lfd f2, "@11031"@sda21(r2) /* 800A75C0 000A3400 C8 21 00 20 */ lfd f1, 0x20(r1) /* 800A75C4 000A3404 C0 02 8A 58 */ lfs f0, "@11365"@sda21(r2) /* 800A75C8 000A3408 EC 21 10 28 */ fsubs f1, f1, f2 /* 800A75CC 000A340C EC 24 08 28 */ fsubs f1, f4, f1 /* 800A75D0 000A3410 EC 20 00 72 */ fmuls f1, f0, f1 /* 800A75D4 000A3414 4B F5 FC 41 */ bl __cvt_fp2unsigned /* 800A75D8 000A3418 56 24 04 3E */ clrlwi r4, r17, 16 /* 800A75DC 000A341C 56 00 04 3E */ clrlwi r0, r16, 16 /* 800A75E0 000A3420 7C 84 00 50 */ subf r4, r4, r0 /* 800A75E4 000A3424 7C A3 23 96 */ divwu r5, r3, r4 /* 800A75E8 000A3428 38 12 00 01 */ addi r0, r18, 0x1 /* 800A75EC 000A342C 7C 72 B9 D6 */ mullw r3, r18, r23 /* 800A75F0 000A3430 7C DB 1A 14 */ add r6, r27, r3 /* 800A75F4 000A3434 7C 60 B9 D6 */ mullw r3, r0, r23 /* 800A75F8 000A3438 88 06 00 02 */ lbz r0, 0x2(r6) /* 800A75FC 000A343C 38 86 00 0C */ addi r4, r6, 0xc /* 800A7600 000A3440 38 E6 00 04 */ addi r7, r6, 0x4 /* 800A7604 000A3444 7D 00 00 D0 */ neg r8, r0 /* 800A7608 000A3448 7C DB 1A 14 */ add r6, r27, r3 /* 800A760C 000A344C 88 66 00 02 */ lbz r3, 0x2(r6) /* 800A7610 000A3450 7D 08 03 78 */ or r8, r8, r0 /* 800A7614 000A3454 55 09 0F FF */ srwi. r9, r8, 31 /* 800A7618 000A3458 38 C6 00 0C */ addi r6, r6, 0xc /* 800A761C 000A345C 7D 03 00 D0 */ neg r8, r3 /* 800A7620 000A3460 7D 08 1B 78 */ or r8, r8, r3 /* 800A7624 000A3464 55 08 0F FE */ srwi r8, r8, 31 /* 800A7628 000A3468 40 82 01 C4 */ bne lbl_800A77EC /* 800A762C 000A346C 2C 08 00 00 */ cmpwi r8, 0x0 /* 800A7630 000A3470 40 82 01 BC */ bne lbl_800A77EC /* 800A7634 000A3474 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A7638 000A3478 39 40 00 01 */ li r10, 0x1 /* 800A763C 000A347C C0 02 8A 58 */ lfs f0, "@11365"@sda21(r2) /* 800A7640 000A3480 C9 42 8A 48 */ lfd f10, "@11032_8055E9C8"@sda21(r2) /* 800A7644 000A3484 C1 02 8A 60 */ lfs f8, "@11367"@sda21(r2) /* 800A7648 000A3488 C0 C2 8A 68 */ lfs f6, "@11369"@sda21(r2) /* 800A764C 000A348C C0 A2 8A 5C */ lfs f5, "@11366"@sda21(r2) /* 800A7650 000A3490 C0 82 8A 38 */ lfs f4, "@11024"@sda21(r2) /* 800A7654 000A3494 C0 62 8A 6C */ lfs f3, "@11370"@sda21(r2) /* 800A7658 000A3498 48 00 01 88 */ b lbl_800A77E0 /* 800A765C 000A349C 60 00 00 00 */ nop .global lbl_800A7660 lbl_800A7660: /* 800A7660 000A34A0 7F 20 50 39 */ and. r0, r25, r10 /* 800A7664 000A34A4 41 82 01 70 */ beq lbl_800A77D4 /* 800A7668 000A34A8 89 06 00 00 */ lbz r8, 0x0(r6) /* 800A766C 000A34AC 88 64 00 00 */ lbz r3, 0x0(r4) /* 800A7670 000A34B0 89 27 00 00 */ lbz r9, 0x0(r7) /* 800A7674 000A34B4 7C 03 40 40 */ cmplw r3, r8 /* 800A7678 000A34B8 40 82 00 08 */ bne lbl_800A7680 /* 800A767C 000A34BC 48 00 01 4C */ b lbl_800A77C8 .global lbl_800A7680 lbl_800A7680: /* 800A7680 000A34C0 55 20 07 BF */ clrlwi. r0, r9, 30 /* 800A7684 000A34C4 41 82 00 18 */ beq lbl_800A769C /* 800A7688 000A34C8 2C 00 00 01 */ cmpwi r0, 0x1 /* 800A768C 000A34CC 41 82 00 28 */ beq lbl_800A76B4 /* 800A7690 000A34D0 2C 00 00 02 */ cmpwi r0, 0x2 /* 800A7694 000A34D4 41 82 01 34 */ beq lbl_800A77C8 /* 800A7698 000A34D8 48 00 01 2C */ b lbl_800A77C4 .global lbl_800A769C lbl_800A769C: /* 800A769C 000A34DC 7C 03 40 50 */ subf r0, r3, r8 /* 800A76A0 000A34E0 7C 05 01 D6 */ mullw r0, r5, r0 /* 800A76A4 000A34E4 54 00 84 3E */ srwi r0, r0, 16 /* 800A76A8 000A34E8 7C 03 02 14 */ add r0, r3, r0 /* 800A76AC 000A34EC 54 03 06 3E */ clrlwi r3, r0, 24 /* 800A76B0 000A34F0 48 00 01 18 */ b lbl_800A77C8 .global lbl_800A76B4 lbl_800A76B4: /* 800A76B4 000A34F4 90 A1 00 2C */ stw r5, 0x2c(r1) /* 800A76B8 000A34F8 28 09 00 01 */ cmplwi r9, 0x1 /* 800A76BC 000A34FC C8 41 00 28 */ lfd f2, 0x28(r1) /* 800A76C0 000A3500 EC 42 08 28 */ fsubs f2, f2, f1 /* 800A76C4 000A3504 ED A2 00 24 */ fdivs f13, f2, f0 /* 800A76C8 000A3508 40 82 00 4C */ bne lbl_800A7714 /* 800A76CC 000A350C 7C 03 40 50 */ subf r0, r3, r8 /* 800A76D0 000A3510 EC E8 03 72 */ fmuls f7, f8, f13 /* 800A76D4 000A3514 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800A76D8 000A3518 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A76DC 000A351C C8 41 00 28 */ lfd f2, 0x28(r1) /* 800A76E0 000A3520 EC E5 38 28 */ fsubs f7, f5, f7 /* 800A76E4 000A3524 90 61 00 24 */ stw r3, 0x24(r1) /* 800A76E8 000A3528 EC 42 50 28 */ fsubs f2, f2, f10 /* 800A76EC 000A352C C9 21 00 20 */ lfd f9, 0x20(r1) /* 800A76F0 000A3530 EC 47 00 B2 */ fmuls f2, f7, f2 /* 800A76F4 000A3534 EC E9 08 28 */ fsubs f7, f9, f1 /* 800A76F8 000A3538 EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A76FC 000A353C EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A7700 000A3540 EC 47 10 2A */ fadds f2, f7, f2 /* 800A7704 000A3544 FC 40 10 1E */ fctiwz f2, f2 /* 800A7708 000A3548 D8 41 00 30 */ stfd f2, 0x30(r1) /* 800A770C 000A354C 80 61 00 34 */ lwz r3, 0x34(r1) /* 800A7710 000A3550 48 00 00 B8 */ b lbl_800A77C8 .global lbl_800A7714 lbl_800A7714: /* 800A7714 000A3554 55 20 F7 FF */ extrwi. r0, r9, 1, 29 /* 800A7718 000A3558 40 82 00 0C */ bne lbl_800A7724 /* 800A771C 000A355C C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800A7720 000A3560 48 00 00 08 */ b lbl_800A7728 .global lbl_800A7724 lbl_800A7724: /* 800A7724 000A3564 C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800A7728 lbl_800A7728: /* 800A7728 000A3568 55 20 EF FF */ extrwi. r0, r9, 1, 28 /* 800A772C 000A356C 40 82 00 0C */ bne lbl_800A7738 /* 800A7730 000A3570 C1 82 8A 38 */ lfs f12, "@11024"@sda21(r2) /* 800A7734 000A3574 48 00 00 08 */ b lbl_800A773C .global lbl_800A7738 lbl_800A7738: /* 800A7738 000A3578 C1 82 8A 64 */ lfs f12, "@11368"@sda21(r2) .global lbl_800A773C lbl_800A773C: /* 800A773C 000A357C EC EC 48 2A */ fadds f7, f12, f9 /* 800A7740 000A3580 7C 03 40 50 */ subf r0, r3, r8 /* 800A7744 000A3584 EC 46 03 32 */ fmuls f2, f6, f12 /* 800A7748 000A3588 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800A774C 000A358C 90 61 00 24 */ stw r3, 0x24(r1) /* 800A7750 000A3590 EC E7 40 28 */ fsubs f7, f7, f8 /* 800A7754 000A3594 EC 42 48 28 */ fsubs f2, f2, f9 /* 800A7758 000A3598 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A775C 000A359C C9 61 00 20 */ lfd f11, 0x20(r1) /* 800A7760 000A35A0 EC ED 01 F2 */ fmuls f7, f13, f7 /* 800A7764 000A35A4 C9 21 00 28 */ lfd f9, 0x28(r1) /* 800A7768 000A35A8 EC 45 10 2A */ fadds f2, f5, f2 /* 800A776C 000A35AC ED 29 50 28 */ fsubs f9, f9, f10 /* 800A7770 000A35B0 EC ED 01 F2 */ fmuls f7, f13, f7 /* 800A7774 000A35B4 EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A7778 000A35B8 ED 2D 02 72 */ fmuls f9, f13, f9 /* 800A777C 000A35BC ED 6B 08 28 */ fsubs f11, f11, f1 /* 800A7780 000A35C0 EC 47 10 2A */ fadds f2, f7, f2 /* 800A7784 000A35C4 EC 4C 10 2A */ fadds f2, f12, f2 /* 800A7788 000A35C8 EC 49 00 B2 */ fmuls f2, f9, f2 /* 800A778C 000A35CC EC 4B 10 2A */ fadds f2, f11, f2 /* 800A7790 000A35D0 FC 02 20 40 */ fcmpo cr0, f2, f4 /* 800A7794 000A35D4 40 80 00 0C */ bge lbl_800A77A0 /* 800A7798 000A35D8 38 60 00 00 */ li r3, 0x0 /* 800A779C 000A35DC 48 00 00 2C */ b lbl_800A77C8 .global lbl_800A77A0 lbl_800A77A0: /* 800A77A0 000A35E0 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 800A77A4 000A35E4 40 81 00 0C */ ble lbl_800A77B0 /* 800A77A8 000A35E8 38 60 00 FF */ li r3, 0xff /* 800A77AC 000A35EC 48 00 00 1C */ b lbl_800A77C8 .global lbl_800A77B0 lbl_800A77B0: /* 800A77B0 000A35F0 FC 40 10 1E */ fctiwz f2, f2 /* 800A77B4 000A35F4 D8 41 00 30 */ stfd f2, 0x30(r1) /* 800A77B8 000A35F8 80 61 00 34 */ lwz r3, 0x34(r1) /* 800A77BC 000A35FC 48 00 00 0C */ b lbl_800A77C8 /* 800A77C0 000A3600 48 00 00 08 */ b lbl_800A77C8 .global lbl_800A77C4 lbl_800A77C4: /* 800A77C4 000A3604 38 60 00 00 */ li r3, 0x0 .global lbl_800A77C8 lbl_800A77C8: /* 800A77C8 000A3608 98 7E 00 00 */ stb r3, 0x0(r30) /* 800A77CC 000A360C 38 84 00 01 */ addi r4, r4, 0x1 /* 800A77D0 000A3610 38 C6 00 01 */ addi r6, r6, 0x1 .global lbl_800A77D4 lbl_800A77D4: /* 800A77D4 000A3614 55 4A 0C 3C */ rlwinm r10, r10, 1, 16, 30 /* 800A77D8 000A3618 38 E7 00 01 */ addi r7, r7, 0x1 /* 800A77DC 000A361C 3B DE 00 01 */ addi r30, r30, 0x1 .global lbl_800A77E0 lbl_800A77E0: /* 800A77E0 000A3620 7C 0A C0 00 */ cmpw r10, r24 /* 800A77E4 000A3624 40 81 FE 7C */ ble lbl_800A7660 /* 800A77E8 000A3628 48 00 09 C8 */ b lbl_800A81B0 .global lbl_800A77EC lbl_800A77EC: /* 800A77EC 000A362C 2C 09 00 00 */ cmpwi r9, 0x0 /* 800A77F0 000A3630 41 82 02 E0 */ beq lbl_800A7AD0 /* 800A77F4 000A3634 2C 08 00 00 */ cmpwi r8, 0x0 /* 800A77F8 000A3638 40 82 02 D8 */ bne lbl_800A7AD0 /* 800A77FC 000A363C 3D 00 37 11 */ lis r8, 0x3711 /* 800A7800 000A3640 A0 64 00 00 */ lhz r3, 0x0(r4) /* 800A7804 000A3644 38 88 97 E7 */ addi r4, r8, -0x6819 /* 800A7808 000A3648 3D 60 3F 82 */ lis r11, 0x3f82 /* 800A780C 000A364C 7C 83 21 D6 */ mullw r4, r3, r4 /* 800A7810 000A3650 3D 20 30 A7 */ lis r9, 0x30a7 /* 800A7814 000A3654 3D 00 00 08 */ lis r8, 0x8 /* 800A7818 000A3658 A1 5D 00 06 */ lhz r10, 0x6(r29) /* 800A781C 000A365C 39 6B F6 35 */ addi r11, r11, -0x9cb /* 800A7820 000A3660 39 08 B9 29 */ addi r8, r8, -0x46d7 /* 800A7824 000A3664 39 29 41 93 */ addi r9, r9, 0x4193 /* 800A7828 000A3668 3C 84 00 05 */ addis r4, r4, 0x5 /* 800A782C 000A366C 54 00 07 BD */ rlwinm. r0, r0, 0, 30, 30 /* 800A7830 000A3670 38 04 BF 53 */ addi r0, r4, -0x40ad /* 800A7834 000A3674 7D 13 41 D6 */ mullw r8, r19, r8 /* 800A7838 000A3678 7D 7F 59 D6 */ mullw r11, r31, r11 /* 800A783C 000A367C 7C 08 02 14 */ add r0, r8, r0 /* 800A7840 000A3680 7C 8A 49 D6 */ mullw r4, r10, r9 /* 800A7844 000A3684 7C 8B 22 14 */ add r4, r11, r4 /* 800A7848 000A3688 7C 04 02 14 */ add r0, r4, r0 /* 800A784C 000A368C 90 01 00 14 */ stw r0, 0x14(r1) /* 800A7850 000A3690 89 01 00 16 */ lbz r8, 0x16(r1) /* 800A7854 000A3694 88 01 00 17 */ lbz r0, 0x17(r1) /* 800A7858 000A3698 88 81 00 15 */ lbz r4, 0x15(r1) /* 800A785C 000A369C 7D 08 02 78 */ xor r8, r8, r0 /* 800A7860 000A36A0 88 01 00 14 */ lbz r0, 0x14(r1) /* 800A7864 000A36A4 7C 84 42 78 */ xor r4, r4, r8 /* 800A7868 000A36A8 99 01 00 16 */ stb r8, 0x16(r1) /* 800A786C 000A36AC 7C 00 22 78 */ xor r0, r0, r4 /* 800A7870 000A36B0 98 81 00 15 */ stb r4, 0x15(r1) /* 800A7874 000A36B4 98 01 00 14 */ stb r0, 0x14(r1) /* 800A7878 000A36B8 80 81 00 14 */ lwz r4, 0x14(r1) /* 800A787C 000A36BC 40 82 00 14 */ bne lbl_800A7890 /* 800A7880 000A36C0 7C 03 E1 D6 */ mullw r0, r3, r28 /* 800A7884 000A36C4 7C 75 02 14 */ add r3, r21, r0 /* 800A7888 000A36C8 38 63 00 04 */ addi r3, r3, 0x4 /* 800A788C 000A36CC 48 00 00 38 */ b lbl_800A78C4 .global lbl_800A7890 lbl_800A7890: /* 800A7890 000A36D0 A1 34 00 00 */ lhz r9, 0x0(r20) /* 800A7894 000A36D4 54 8A 84 3E */ srwi r10, r4, 16 /* 800A7898 000A36D8 3C 60 00 03 */ lis r3, 0x3 /* 800A789C 000A36DC 7D 0A 4B 96 */ divwu r8, r10, r9 /* 800A78A0 000A36E0 38 03 43 FD */ addi r0, r3, 0x43fd /* 800A78A4 000A36E4 7C 68 49 D6 */ mullw r3, r8, r9 /* 800A78A8 000A36E8 7C 63 50 50 */ subf r3, r3, r10 /* 800A78AC 000A36EC 7C 7C 19 D6 */ mullw r3, r28, r3 /* 800A78B0 000A36F0 7C 84 01 D6 */ mullw r4, r4, r0 /* 800A78B4 000A36F4 7C 74 1A 14 */ add r3, r20, r3 /* 800A78B8 000A36F8 38 63 00 04 */ addi r3, r3, 0x4 /* 800A78BC 000A36FC 3C 84 00 27 */ addis r4, r4, 0x27 /* 800A78C0 000A3700 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A78C4 lbl_800A78C4: /* 800A78C4 000A3704 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A78C8 000A3708 38 00 00 01 */ li r0, 0x1 /* 800A78CC 000A370C C0 02 8A 58 */ lfs f0, "@11365"@sda21(r2) /* 800A78D0 000A3710 3D 00 00 03 */ lis r8, 0x3 /* 800A78D4 000A3714 C9 42 8A 48 */ lfd f10, "@11032_8055E9C8"@sda21(r2) /* 800A78D8 000A3718 C1 02 8A 60 */ lfs f8, "@11367"@sda21(r2) /* 800A78DC 000A371C C0 C2 8A 68 */ lfs f6, "@11369"@sda21(r2) /* 800A78E0 000A3720 C0 A2 8A 5C */ lfs f5, "@11366"@sda21(r2) /* 800A78E4 000A3724 C0 82 8A 38 */ lfs f4, "@11024"@sda21(r2) /* 800A78E8 000A3728 C0 62 8A 6C */ lfs f3, "@11370"@sda21(r2) /* 800A78EC 000A372C 48 00 01 D8 */ b lbl_800A7AC4 .global lbl_800A78F0 lbl_800A78F0: /* 800A78F0 000A3730 7F 29 00 39 */ and. r9, r25, r0 /* 800A78F4 000A3734 41 82 01 A8 */ beq lbl_800A7A9C /* 800A78F8 000A3738 54 89 84 3E */ srwi r9, r4, 16 /* 800A78FC 000A373C 89 43 00 01 */ lbz r10, 0x1(r3) /* 800A7900 000A3740 7D 29 07 34 */ extsh r9, r9 /* 800A7904 000A3744 89 63 00 00 */ lbz r11, 0x0(r3) /* 800A7908 000A3748 7D 2A 49 D6 */ mullw r9, r10, r9 /* 800A790C 000A374C 38 63 00 02 */ addi r3, r3, 0x2 /* 800A7910 000A3750 7D 29 7E 70 */ srawi r9, r9, 15 /* 800A7914 000A3754 7D 29 01 94 */ addze r9, r9 /* 800A7918 000A3758 7E 0B 4A 15 */ add. r16, r11, r9 /* 800A791C 000A375C 40 80 00 08 */ bge lbl_800A7924 /* 800A7920 000A3760 3A 00 00 00 */ li r16, 0x0 .global lbl_800A7924 lbl_800A7924: /* 800A7924 000A3764 2C 10 00 FF */ cmpwi r16, 0xff /* 800A7928 000A3768 40 81 00 08 */ ble lbl_800A7930 /* 800A792C 000A376C 3A 00 00 FF */ li r16, 0xff .global lbl_800A7930 lbl_800A7930: /* 800A7930 000A3770 89 66 00 00 */ lbz r11, 0x0(r6) /* 800A7934 000A3774 56 0A 06 3E */ clrlwi r10, r16, 24 /* 800A7938 000A3778 89 87 00 00 */ lbz r12, 0x0(r7) /* 800A793C 000A377C 7C 0A 58 40 */ cmplw r10, r11 /* 800A7940 000A3780 40 82 00 08 */ bne lbl_800A7948 /* 800A7944 000A3784 48 00 01 50 */ b lbl_800A7A94 .global lbl_800A7948 lbl_800A7948: /* 800A7948 000A3788 55 89 07 BF */ clrlwi. r9, r12, 30 /* 800A794C 000A378C 41 82 00 18 */ beq lbl_800A7964 /* 800A7950 000A3790 2C 09 00 01 */ cmpwi r9, 0x1 /* 800A7954 000A3794 41 82 00 28 */ beq lbl_800A797C /* 800A7958 000A3798 2C 09 00 02 */ cmpwi r9, 0x2 /* 800A795C 000A379C 41 82 01 38 */ beq lbl_800A7A94 /* 800A7960 000A37A0 48 00 01 30 */ b lbl_800A7A90 .global lbl_800A7964 lbl_800A7964: /* 800A7964 000A37A4 7D 2A 58 50 */ subf r9, r10, r11 /* 800A7968 000A37A8 7D 25 49 D6 */ mullw r9, r5, r9 /* 800A796C 000A37AC 55 29 84 3E */ srwi r9, r9, 16 /* 800A7970 000A37B0 7D 2A 4A 14 */ add r9, r10, r9 /* 800A7974 000A37B4 55 2A 06 3E */ clrlwi r10, r9, 24 /* 800A7978 000A37B8 48 00 01 1C */ b lbl_800A7A94 .global lbl_800A797C lbl_800A797C: /* 800A797C 000A37BC 90 A1 00 24 */ stw r5, 0x24(r1) /* 800A7980 000A37C0 28 0C 00 01 */ cmplwi r12, 0x1 /* 800A7984 000A37C4 C8 41 00 20 */ lfd f2, 0x20(r1) /* 800A7988 000A37C8 EC 42 08 28 */ fsubs f2, f2, f1 /* 800A798C 000A37CC ED A2 00 24 */ fdivs f13, f2, f0 /* 800A7990 000A37D0 40 82 00 4C */ bne lbl_800A79DC /* 800A7994 000A37D4 7D 2A 58 50 */ subf r9, r10, r11 /* 800A7998 000A37D8 EC E8 03 72 */ fmuls f7, f8, f13 /* 800A799C 000A37DC 6D 29 80 00 */ xoris r9, r9, 0x8000 /* 800A79A0 000A37E0 91 21 00 24 */ stw r9, 0x24(r1) /* 800A79A4 000A37E4 C8 41 00 20 */ lfd f2, 0x20(r1) /* 800A79A8 000A37E8 EC E5 38 28 */ fsubs f7, f5, f7 /* 800A79AC 000A37EC 91 41 00 2C */ stw r10, 0x2c(r1) /* 800A79B0 000A37F0 EC 42 50 28 */ fsubs f2, f2, f10 /* 800A79B4 000A37F4 C9 21 00 28 */ lfd f9, 0x28(r1) /* 800A79B8 000A37F8 EC 47 00 B2 */ fmuls f2, f7, f2 /* 800A79BC 000A37FC EC E9 08 28 */ fsubs f7, f9, f1 /* 800A79C0 000A3800 EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A79C4 000A3804 EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A79C8 000A3808 EC 47 10 2A */ fadds f2, f7, f2 /* 800A79CC 000A380C FC 40 10 1E */ fctiwz f2, f2 /* 800A79D0 000A3810 D8 41 00 30 */ stfd f2, 0x30(r1) /* 800A79D4 000A3814 81 41 00 34 */ lwz r10, 0x34(r1) /* 800A79D8 000A3818 48 00 00 BC */ b lbl_800A7A94 .global lbl_800A79DC lbl_800A79DC: /* 800A79DC 000A381C 55 89 F7 FF */ extrwi. r9, r12, 1, 29 /* 800A79E0 000A3820 40 82 00 0C */ bne lbl_800A79EC /* 800A79E4 000A3824 C1 62 8A 38 */ lfs f11, "@11024"@sda21(r2) /* 800A79E8 000A3828 48 00 00 08 */ b lbl_800A79F0 .global lbl_800A79EC lbl_800A79EC: /* 800A79EC 000A382C C1 62 8A 64 */ lfs f11, "@11368"@sda21(r2) .global lbl_800A79F0 lbl_800A79F0: /* 800A79F0 000A3830 55 89 EF FF */ extrwi. r9, r12, 1, 28 /* 800A79F4 000A3834 40 82 00 0C */ bne lbl_800A7A00 /* 800A79F8 000A3838 C1 82 8A 38 */ lfs f12, "@11024"@sda21(r2) /* 800A79FC 000A383C 48 00 00 08 */ b lbl_800A7A04 .global lbl_800A7A00 lbl_800A7A00: /* 800A7A00 000A3840 C1 82 8A 64 */ lfs f12, "@11368"@sda21(r2) .global lbl_800A7A04 lbl_800A7A04: /* 800A7A04 000A3844 EC EC 58 2A */ fadds f7, f12, f11 /* 800A7A08 000A3848 56 0A 06 3E */ clrlwi r10, r16, 24 /* 800A7A0C 000A384C EC 46 03 32 */ fmuls f2, f6, f12 /* 800A7A10 000A3850 7D 2A 58 50 */ subf r9, r10, r11 /* 800A7A14 000A3854 6D 29 80 00 */ xoris r9, r9, 0x8000 /* 800A7A18 000A3858 91 21 00 24 */ stw r9, 0x24(r1) /* 800A7A1C 000A385C EC E7 40 28 */ fsubs f7, f7, f8 /* 800A7A20 000A3860 C9 21 00 20 */ lfd f9, 0x20(r1) /* 800A7A24 000A3864 EC 42 58 28 */ fsubs f2, f2, f11 /* 800A7A28 000A3868 91 41 00 2C */ stw r10, 0x2c(r1) /* 800A7A2C 000A386C ED 29 50 28 */ fsubs f9, f9, f10 /* 800A7A30 000A3870 EC ED 01 F2 */ fmuls f7, f13, f7 /* 800A7A34 000A3874 EC 45 10 2A */ fadds f2, f5, f2 /* 800A7A38 000A3878 C9 61 00 28 */ lfd f11, 0x28(r1) /* 800A7A3C 000A387C ED 2D 02 72 */ fmuls f9, f13, f9 /* 800A7A40 000A3880 EC ED 01 F2 */ fmuls f7, f13, f7 /* 800A7A44 000A3884 EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A7A48 000A3888 ED 6B 08 28 */ fsubs f11, f11, f1 /* 800A7A4C 000A388C EC 47 10 2A */ fadds f2, f7, f2 /* 800A7A50 000A3890 EC 4C 10 2A */ fadds f2, f12, f2 /* 800A7A54 000A3894 EC 49 00 B2 */ fmuls f2, f9, f2 /* 800A7A58 000A3898 EC 4B 10 2A */ fadds f2, f11, f2 /* 800A7A5C 000A389C FC 02 20 40 */ fcmpo cr0, f2, f4 /* 800A7A60 000A38A0 40 80 00 0C */ bge lbl_800A7A6C /* 800A7A64 000A38A4 39 40 00 00 */ li r10, 0x0 /* 800A7A68 000A38A8 48 00 00 2C */ b lbl_800A7A94 .global lbl_800A7A6C lbl_800A7A6C: /* 800A7A6C 000A38AC FC 02 18 40 */ fcmpo cr0, f2, f3 /* 800A7A70 000A38B0 40 81 00 0C */ ble lbl_800A7A7C /* 800A7A74 000A38B4 39 40 00 FF */ li r10, 0xff /* 800A7A78 000A38B8 48 00 00 1C */ b lbl_800A7A94 .global lbl_800A7A7C lbl_800A7A7C: /* 800A7A7C 000A38BC FC 40 10 1E */ fctiwz f2, f2 /* 800A7A80 000A38C0 D8 41 00 30 */ stfd f2, 0x30(r1) /* 800A7A84 000A38C4 81 41 00 34 */ lwz r10, 0x34(r1) /* 800A7A88 000A38C8 48 00 00 0C */ b lbl_800A7A94 /* 800A7A8C 000A38CC 48 00 00 08 */ b lbl_800A7A94 .global lbl_800A7A90 lbl_800A7A90: /* 800A7A90 000A38D0 39 40 00 00 */ li r10, 0x0 .global lbl_800A7A94 lbl_800A7A94: /* 800A7A94 000A38D4 99 5E 00 00 */ stb r10, 0x0(r30) /* 800A7A98 000A38D8 38 C6 00 01 */ addi r6, r6, 0x1 .global lbl_800A7A9C lbl_800A7A9C: /* 800A7A9C 000A38DC 89 3D 00 04 */ lbz r9, 0x4(r29) /* 800A7AA0 000A38E0 55 29 07 7B */ rlwinm. r9, r9, 0, 29, 29 /* 800A7AA4 000A38E4 40 82 00 14 */ bne lbl_800A7AB8 /* 800A7AA8 000A38E8 39 28 43 FD */ addi r9, r8, 0x43fd /* 800A7AAC 000A38EC 7C 84 49 D6 */ mullw r4, r4, r9 /* 800A7AB0 000A38F0 3C 84 00 27 */ addis r4, r4, 0x27 /* 800A7AB4 000A38F4 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A7AB8 lbl_800A7AB8: /* 800A7AB8 000A38F8 54 00 0C 3C */ rlwinm r0, r0, 1, 16, 30 /* 800A7ABC 000A38FC 38 E7 00 01 */ addi r7, r7, 0x1 /* 800A7AC0 000A3900 3B DE 00 01 */ addi r30, r30, 0x1 .global lbl_800A7AC4 lbl_800A7AC4: /* 800A7AC4 000A3904 7C 00 C0 00 */ cmpw r0, r24 /* 800A7AC8 000A3908 40 81 FE 28 */ ble lbl_800A78F0 /* 800A7ACC 000A390C 48 00 06 E4 */ b lbl_800A81B0 .global lbl_800A7AD0 lbl_800A7AD0: /* 800A7AD0 000A3910 2C 09 00 00 */ cmpwi r9, 0x0 /* 800A7AD4 000A3914 40 82 02 E4 */ bne lbl_800A7DB8 /* 800A7AD8 000A3918 2C 08 00 00 */ cmpwi r8, 0x0 /* 800A7ADC 000A391C 41 82 02 DC */ beq lbl_800A7DB8 /* 800A7AE0 000A3920 3D 00 37 11 */ lis r8, 0x3711 /* 800A7AE4 000A3924 A0 06 00 00 */ lhz r0, 0x0(r6) /* 800A7AE8 000A3928 38 C8 97 E7 */ addi r6, r8, -0x6819 /* 800A7AEC 000A392C 3D 60 3F 82 */ lis r11, 0x3f82 /* 800A7AF0 000A3930 7C C0 31 D6 */ mullw r6, r0, r6 /* 800A7AF4 000A3934 3D 20 30 A7 */ lis r9, 0x30a7 /* 800A7AF8 000A3938 3D 00 00 08 */ lis r8, 0x8 /* 800A7AFC 000A393C A1 5D 00 06 */ lhz r10, 0x6(r29) /* 800A7B00 000A3940 39 6B F6 35 */ addi r11, r11, -0x9cb /* 800A7B04 000A3944 39 08 B9 29 */ addi r8, r8, -0x46d7 /* 800A7B08 000A3948 39 29 41 93 */ addi r9, r9, 0x4193 /* 800A7B0C 000A394C 3C C6 00 05 */ addis r6, r6, 0x5 /* 800A7B10 000A3950 54 63 07 BD */ rlwinm. r3, r3, 0, 30, 30 /* 800A7B14 000A3954 38 66 BF 53 */ addi r3, r6, -0x40ad /* 800A7B18 000A3958 7D 1A 41 D6 */ mullw r8, r26, r8 /* 800A7B1C 000A395C 7D 7F 59 D6 */ mullw r11, r31, r11 /* 800A7B20 000A3960 7C 68 1A 14 */ add r3, r8, r3 /* 800A7B24 000A3964 7C CA 49 D6 */ mullw r6, r10, r9 /* 800A7B28 000A3968 7C CB 32 14 */ add r6, r11, r6 /* 800A7B2C 000A396C 7C 66 1A 14 */ add r3, r6, r3 /* 800A7B30 000A3970 90 61 00 10 */ stw r3, 0x10(r1) /* 800A7B34 000A3974 89 01 00 12 */ lbz r8, 0x12(r1) /* 800A7B38 000A3978 88 61 00 13 */ lbz r3, 0x13(r1) /* 800A7B3C 000A397C 88 C1 00 11 */ lbz r6, 0x11(r1) /* 800A7B40 000A3980 7D 08 1A 78 */ xor r8, r8, r3 /* 800A7B44 000A3984 88 61 00 10 */ lbz r3, 0x10(r1) /* 800A7B48 000A3988 7C C6 42 78 */ xor r6, r6, r8 /* 800A7B4C 000A398C 99 01 00 12 */ stb r8, 0x12(r1) /* 800A7B50 000A3990 7C 63 32 78 */ xor r3, r3, r6 /* 800A7B54 000A3994 98 C1 00 11 */ stb r6, 0x11(r1) /* 800A7B58 000A3998 98 61 00 10 */ stb r3, 0x10(r1) /* 800A7B5C 000A399C 80 61 00 10 */ lwz r3, 0x10(r1) /* 800A7B60 000A39A0 40 82 00 14 */ bne lbl_800A7B74 /* 800A7B64 000A39A4 7C 00 E1 D6 */ mullw r0, r0, r28 /* 800A7B68 000A39A8 7C D5 02 14 */ add r6, r21, r0 /* 800A7B6C 000A39AC 38 C6 00 04 */ addi r6, r6, 0x4 /* 800A7B70 000A39B0 48 00 00 38 */ b lbl_800A7BA8 .global lbl_800A7B74 lbl_800A7B74: /* 800A7B74 000A39B4 A1 34 00 00 */ lhz r9, 0x0(r20) /* 800A7B78 000A39B8 54 6A 84 3E */ srwi r10, r3, 16 /* 800A7B7C 000A39BC 3C C0 00 03 */ lis r6, 0x3 /* 800A7B80 000A39C0 7D 0A 4B 96 */ divwu r8, r10, r9 /* 800A7B84 000A39C4 38 06 43 FD */ addi r0, r6, 0x43fd /* 800A7B88 000A39C8 7C C8 49 D6 */ mullw r6, r8, r9 /* 800A7B8C 000A39CC 7C C6 50 50 */ subf r6, r6, r10 /* 800A7B90 000A39D0 7C DC 31 D6 */ mullw r6, r28, r6 /* 800A7B94 000A39D4 7C 63 01 D6 */ mullw r3, r3, r0 /* 800A7B98 000A39D8 7C D4 32 14 */ add r6, r20, r6 /* 800A7B9C 000A39DC 38 C6 00 04 */ addi r6, r6, 0x4 /* 800A7BA0 000A39E0 3C 63 00 27 */ addis r3, r3, 0x27 /* 800A7BA4 000A39E4 38 63 9E C3 */ addi r3, r3, -0x613d .global lbl_800A7BA8 lbl_800A7BA8: /* 800A7BA8 000A39E8 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A7BAC 000A39EC 38 00 00 01 */ li r0, 0x1 /* 800A7BB0 000A39F0 C0 02 8A 58 */ lfs f0, "@11365"@sda21(r2) /* 800A7BB4 000A39F4 3D 00 00 03 */ lis r8, 0x3 /* 800A7BB8 000A39F8 C9 42 8A 48 */ lfd f10, "@11032_8055E9C8"@sda21(r2) /* 800A7BBC 000A39FC C1 02 8A 60 */ lfs f8, "@11367"@sda21(r2) /* 800A7BC0 000A3A00 C0 C2 8A 68 */ lfs f6, "@11369"@sda21(r2) /* 800A7BC4 000A3A04 C0 A2 8A 5C */ lfs f5, "@11366"@sda21(r2) /* 800A7BC8 000A3A08 C0 82 8A 38 */ lfs f4, "@11024"@sda21(r2) /* 800A7BCC 000A3A0C C0 62 8A 6C */ lfs f3, "@11370"@sda21(r2) /* 800A7BD0 000A3A10 48 00 01 DC */ b lbl_800A7DAC /* 800A7BD4 000A3A14 60 00 00 00 */ nop .global lbl_800A7BD8 lbl_800A7BD8: /* 800A7BD8 000A3A18 7F 29 00 39 */ and. r9, r25, r0 /* 800A7BDC 000A3A1C 41 82 01 A8 */ beq lbl_800A7D84 /* 800A7BE0 000A3A20 54 69 84 3E */ srwi r9, r3, 16 /* 800A7BE4 000A3A24 89 46 00 01 */ lbz r10, 0x1(r6) /* 800A7BE8 000A3A28 7D 29 07 34 */ extsh r9, r9 /* 800A7BEC 000A3A2C 89 66 00 00 */ lbz r11, 0x0(r6) /* 800A7BF0 000A3A30 7D 2A 49 D6 */ mullw r9, r10, r9 /* 800A7BF4 000A3A34 38 C6 00 02 */ addi r6, r6, 0x2 /* 800A7BF8 000A3A38 7D 29 7E 70 */ srawi r9, r9, 15 /* 800A7BFC 000A3A3C 7D 29 01 94 */ addze r9, r9 /* 800A7C00 000A3A40 7E 0B 4A 15 */ add. r16, r11, r9 /* 800A7C04 000A3A44 40 80 00 08 */ bge lbl_800A7C0C /* 800A7C08 000A3A48 3A 00 00 00 */ li r16, 0x0 .global lbl_800A7C0C lbl_800A7C0C: /* 800A7C0C 000A3A4C 2C 10 00 FF */ cmpwi r16, 0xff /* 800A7C10 000A3A50 40 81 00 08 */ ble lbl_800A7C18 /* 800A7C14 000A3A54 3A 00 00 FF */ li r16, 0xff .global lbl_800A7C18 lbl_800A7C18: /* 800A7C18 000A3A58 89 44 00 00 */ lbz r10, 0x0(r4) /* 800A7C1C 000A3A5C 56 09 06 3E */ clrlwi r9, r16, 24 /* 800A7C20 000A3A60 89 67 00 00 */ lbz r11, 0x0(r7) /* 800A7C24 000A3A64 7C 0A 48 40 */ cmplw r10, r9 /* 800A7C28 000A3A68 40 82 00 08 */ bne lbl_800A7C30 /* 800A7C2C 000A3A6C 48 00 01 50 */ b lbl_800A7D7C .global lbl_800A7C30 lbl_800A7C30: /* 800A7C30 000A3A70 55 6C 07 BF */ clrlwi. r12, r11, 30 /* 800A7C34 000A3A74 41 82 00 18 */ beq lbl_800A7C4C /* 800A7C38 000A3A78 2C 0C 00 01 */ cmpwi r12, 0x1 /* 800A7C3C 000A3A7C 41 82 00 28 */ beq lbl_800A7C64 /* 800A7C40 000A3A80 2C 0C 00 02 */ cmpwi r12, 0x2 /* 800A7C44 000A3A84 41 82 01 38 */ beq lbl_800A7D7C /* 800A7C48 000A3A88 48 00 01 30 */ b lbl_800A7D78 .global lbl_800A7C4C lbl_800A7C4C: /* 800A7C4C 000A3A8C 7D 2A 48 50 */ subf r9, r10, r9 /* 800A7C50 000A3A90 7D 25 49 D6 */ mullw r9, r5, r9 /* 800A7C54 000A3A94 55 29 84 3E */ srwi r9, r9, 16 /* 800A7C58 000A3A98 7D 2A 4A 14 */ add r9, r10, r9 /* 800A7C5C 000A3A9C 55 2A 06 3E */ clrlwi r10, r9, 24 /* 800A7C60 000A3AA0 48 00 01 1C */ b lbl_800A7D7C .global lbl_800A7C64 lbl_800A7C64: /* 800A7C64 000A3AA4 90 A1 00 2C */ stw r5, 0x2c(r1) /* 800A7C68 000A3AA8 28 0B 00 01 */ cmplwi r11, 0x1 /* 800A7C6C 000A3AAC C8 41 00 28 */ lfd f2, 0x28(r1) /* 800A7C70 000A3AB0 EC 42 08 28 */ fsubs f2, f2, f1 /* 800A7C74 000A3AB4 ED A2 00 24 */ fdivs f13, f2, f0 /* 800A7C78 000A3AB8 40 82 00 4C */ bne lbl_800A7CC4 /* 800A7C7C 000A3ABC 7D 2A 48 50 */ subf r9, r10, r9 /* 800A7C80 000A3AC0 EC E8 03 72 */ fmuls f7, f8, f13 /* 800A7C84 000A3AC4 6D 29 80 00 */ xoris r9, r9, 0x8000 /* 800A7C88 000A3AC8 91 21 00 2C */ stw r9, 0x2c(r1) /* 800A7C8C 000A3ACC C8 41 00 28 */ lfd f2, 0x28(r1) /* 800A7C90 000A3AD0 EC E5 38 28 */ fsubs f7, f5, f7 /* 800A7C94 000A3AD4 91 41 00 24 */ stw r10, 0x24(r1) /* 800A7C98 000A3AD8 EC 42 50 28 */ fsubs f2, f2, f10 /* 800A7C9C 000A3ADC C9 21 00 20 */ lfd f9, 0x20(r1) /* 800A7CA0 000A3AE0 EC 47 00 B2 */ fmuls f2, f7, f2 /* 800A7CA4 000A3AE4 EC E9 08 28 */ fsubs f7, f9, f1 /* 800A7CA8 000A3AE8 EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A7CAC 000A3AEC EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A7CB0 000A3AF0 EC 47 10 2A */ fadds f2, f7, f2 /* 800A7CB4 000A3AF4 FC 40 10 1E */ fctiwz f2, f2 /* 800A7CB8 000A3AF8 D8 41 00 30 */ stfd f2, 0x30(r1) /* 800A7CBC 000A3AFC 81 41 00 34 */ lwz r10, 0x34(r1) /* 800A7CC0 000A3B00 48 00 00 BC */ b lbl_800A7D7C .global lbl_800A7CC4 lbl_800A7CC4: /* 800A7CC4 000A3B04 55 69 F7 FF */ extrwi. r9, r11, 1, 29 /* 800A7CC8 000A3B08 40 82 00 0C */ bne lbl_800A7CD4 /* 800A7CCC 000A3B0C C1 62 8A 38 */ lfs f11, "@11024"@sda21(r2) /* 800A7CD0 000A3B10 48 00 00 08 */ b lbl_800A7CD8 .global lbl_800A7CD4 lbl_800A7CD4: /* 800A7CD4 000A3B14 C1 62 8A 64 */ lfs f11, "@11368"@sda21(r2) .global lbl_800A7CD8 lbl_800A7CD8: /* 800A7CD8 000A3B18 55 69 EF FF */ extrwi. r9, r11, 1, 28 /* 800A7CDC 000A3B1C 40 82 00 0C */ bne lbl_800A7CE8 /* 800A7CE0 000A3B20 C1 82 8A 38 */ lfs f12, "@11024"@sda21(r2) /* 800A7CE4 000A3B24 48 00 00 08 */ b lbl_800A7CEC .global lbl_800A7CE8 lbl_800A7CE8: /* 800A7CE8 000A3B28 C1 82 8A 64 */ lfs f12, "@11368"@sda21(r2) .global lbl_800A7CEC lbl_800A7CEC: /* 800A7CEC 000A3B2C EC EC 58 2A */ fadds f7, f12, f11 /* 800A7CF0 000A3B30 56 09 06 3E */ clrlwi r9, r16, 24 /* 800A7CF4 000A3B34 EC 46 03 32 */ fmuls f2, f6, f12 /* 800A7CF8 000A3B38 7D 2A 48 50 */ subf r9, r10, r9 /* 800A7CFC 000A3B3C 6D 29 80 00 */ xoris r9, r9, 0x8000 /* 800A7D00 000A3B40 91 21 00 2C */ stw r9, 0x2c(r1) /* 800A7D04 000A3B44 EC E7 40 28 */ fsubs f7, f7, f8 /* 800A7D08 000A3B48 C9 21 00 28 */ lfd f9, 0x28(r1) /* 800A7D0C 000A3B4C EC 42 58 28 */ fsubs f2, f2, f11 /* 800A7D10 000A3B50 91 41 00 24 */ stw r10, 0x24(r1) /* 800A7D14 000A3B54 ED 29 50 28 */ fsubs f9, f9, f10 /* 800A7D18 000A3B58 EC ED 01 F2 */ fmuls f7, f13, f7 /* 800A7D1C 000A3B5C EC 45 10 2A */ fadds f2, f5, f2 /* 800A7D20 000A3B60 C9 61 00 20 */ lfd f11, 0x20(r1) /* 800A7D24 000A3B64 ED 2D 02 72 */ fmuls f9, f13, f9 /* 800A7D28 000A3B68 EC ED 01 F2 */ fmuls f7, f13, f7 /* 800A7D2C 000A3B6C EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A7D30 000A3B70 ED 6B 08 28 */ fsubs f11, f11, f1 /* 800A7D34 000A3B74 EC 47 10 2A */ fadds f2, f7, f2 /* 800A7D38 000A3B78 EC 4C 10 2A */ fadds f2, f12, f2 /* 800A7D3C 000A3B7C EC 49 00 B2 */ fmuls f2, f9, f2 /* 800A7D40 000A3B80 EC 4B 10 2A */ fadds f2, f11, f2 /* 800A7D44 000A3B84 FC 02 20 40 */ fcmpo cr0, f2, f4 /* 800A7D48 000A3B88 40 80 00 0C */ bge lbl_800A7D54 /* 800A7D4C 000A3B8C 39 40 00 00 */ li r10, 0x0 /* 800A7D50 000A3B90 48 00 00 2C */ b lbl_800A7D7C .global lbl_800A7D54 lbl_800A7D54: /* 800A7D54 000A3B94 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 800A7D58 000A3B98 40 81 00 0C */ ble lbl_800A7D64 /* 800A7D5C 000A3B9C 39 40 00 FF */ li r10, 0xff /* 800A7D60 000A3BA0 48 00 00 1C */ b lbl_800A7D7C .global lbl_800A7D64 lbl_800A7D64: /* 800A7D64 000A3BA4 FC 40 10 1E */ fctiwz f2, f2 /* 800A7D68 000A3BA8 D8 41 00 30 */ stfd f2, 0x30(r1) /* 800A7D6C 000A3BAC 81 41 00 34 */ lwz r10, 0x34(r1) /* 800A7D70 000A3BB0 48 00 00 0C */ b lbl_800A7D7C /* 800A7D74 000A3BB4 48 00 00 08 */ b lbl_800A7D7C .global lbl_800A7D78 lbl_800A7D78: /* 800A7D78 000A3BB8 39 40 00 00 */ li r10, 0x0 .global lbl_800A7D7C lbl_800A7D7C: /* 800A7D7C 000A3BBC 99 5E 00 00 */ stb r10, 0x0(r30) /* 800A7D80 000A3BC0 38 84 00 01 */ addi r4, r4, 0x1 .global lbl_800A7D84 lbl_800A7D84: /* 800A7D84 000A3BC4 89 3D 00 04 */ lbz r9, 0x4(r29) /* 800A7D88 000A3BC8 55 29 07 7B */ rlwinm. r9, r9, 0, 29, 29 /* 800A7D8C 000A3BCC 40 82 00 14 */ bne lbl_800A7DA0 /* 800A7D90 000A3BD0 39 28 43 FD */ addi r9, r8, 0x43fd /* 800A7D94 000A3BD4 7C 63 49 D6 */ mullw r3, r3, r9 /* 800A7D98 000A3BD8 3C 63 00 27 */ addis r3, r3, 0x27 /* 800A7D9C 000A3BDC 38 63 9E C3 */ addi r3, r3, -0x613d .global lbl_800A7DA0 lbl_800A7DA0: /* 800A7DA0 000A3BE0 54 00 0C 3C */ rlwinm r0, r0, 1, 16, 30 /* 800A7DA4 000A3BE4 38 E7 00 01 */ addi r7, r7, 0x1 /* 800A7DA8 000A3BE8 3B DE 00 01 */ addi r30, r30, 0x1 .global lbl_800A7DAC lbl_800A7DAC: /* 800A7DAC 000A3BEC 7C 00 C0 00 */ cmpw r0, r24 /* 800A7DB0 000A3BF0 40 81 FE 28 */ ble lbl_800A7BD8 /* 800A7DB4 000A3BF4 48 00 03 FC */ b lbl_800A81B0 .global lbl_800A7DB8 lbl_800A7DB8: /* 800A7DB8 000A3BF8 3D 00 3F 82 */ lis r8, 0x3f82 /* 800A7DBC 000A3BFC 3D 40 30 A7 */ lis r10, 0x30a7 /* 800A7DC0 000A3C00 39 88 F6 35 */ addi r12, r8, -0x9cb /* 800A7DC4 000A3C04 3D 20 00 08 */ lis r9, 0x8 /* 800A7DC8 000A3C08 3D 00 37 11 */ lis r8, 0x3711 /* 800A7DCC 000A3C0C A1 7D 00 06 */ lhz r11, 0x6(r29) /* 800A7DD0 000A3C10 39 4A 41 93 */ addi r10, r10, 0x4193 /* 800A7DD4 000A3C14 54 00 07 BD */ rlwinm. r0, r0, 0, 30, 30 /* 800A7DD8 000A3C18 A0 84 00 00 */ lhz r4, 0x0(r4) /* 800A7DDC 000A3C1C 39 08 97 E7 */ addi r8, r8, -0x6819 /* 800A7DE0 000A3C20 39 29 B9 29 */ addi r9, r9, -0x46d7 /* 800A7DE4 000A3C24 7C 0B 51 D6 */ mullw r0, r11, r10 /* 800A7DE8 000A3C28 7D 9F 61 D6 */ mullw r12, r31, r12 /* 800A7DEC 000A3C2C 7D 04 41 D6 */ mullw r8, r4, r8 /* 800A7DF0 000A3C30 7C 0C 02 14 */ add r0, r12, r0 /* 800A7DF4 000A3C34 7D 53 49 D6 */ mullw r10, r19, r9 /* 800A7DF8 000A3C38 3D 28 00 05 */ addis r9, r8, 0x5 /* 800A7DFC 000A3C3C 7D 0A 02 14 */ add r8, r10, r0 /* 800A7E00 000A3C40 7D 08 4A 14 */ add r8, r8, r9 /* 800A7E04 000A3C44 39 08 BF 53 */ addi r8, r8, -0x40ad /* 800A7E08 000A3C48 91 01 00 0C */ stw r8, 0xc(r1) /* 800A7E0C 000A3C4C 89 41 00 0E */ lbz r10, 0xe(r1) /* 800A7E10 000A3C50 89 01 00 0F */ lbz r8, 0xf(r1) /* 800A7E14 000A3C54 89 21 00 0D */ lbz r9, 0xd(r1) /* 800A7E18 000A3C58 7D 4A 42 78 */ xor r10, r10, r8 /* 800A7E1C 000A3C5C 89 01 00 0C */ lbz r8, 0xc(r1) /* 800A7E20 000A3C60 7D 29 52 78 */ xor r9, r9, r10 /* 800A7E24 000A3C64 99 41 00 0E */ stb r10, 0xe(r1) /* 800A7E28 000A3C68 7D 08 4A 78 */ xor r8, r8, r9 /* 800A7E2C 000A3C6C 99 21 00 0D */ stb r9, 0xd(r1) /* 800A7E30 000A3C70 99 01 00 0C */ stb r8, 0xc(r1) /* 800A7E34 000A3C74 81 01 00 0C */ lwz r8, 0xc(r1) /* 800A7E38 000A3C78 40 82 00 14 */ bne lbl_800A7E4C /* 800A7E3C 000A3C7C 7C 84 E1 D6 */ mullw r4, r4, r28 /* 800A7E40 000A3C80 7C 95 22 14 */ add r4, r21, r4 /* 800A7E44 000A3C84 39 24 00 04 */ addi r9, r4, 0x4 /* 800A7E48 000A3C88 48 00 00 38 */ b lbl_800A7E80 .global lbl_800A7E4C lbl_800A7E4C: /* 800A7E4C 000A3C8C A1 54 00 00 */ lhz r10, 0x0(r20) /* 800A7E50 000A3C90 55 0B 84 3E */ srwi r11, r8, 16 /* 800A7E54 000A3C94 3C 80 00 03 */ lis r4, 0x3 /* 800A7E58 000A3C98 7D 2B 53 96 */ divwu r9, r11, r10 /* 800A7E5C 000A3C9C 38 84 43 FD */ addi r4, r4, 0x43fd /* 800A7E60 000A3CA0 7D 29 51 D6 */ mullw r9, r9, r10 /* 800A7E64 000A3CA4 7D 29 58 50 */ subf r9, r9, r11 /* 800A7E68 000A3CA8 7D 3C 49 D6 */ mullw r9, r28, r9 /* 800A7E6C 000A3CAC 7C 88 21 D6 */ mullw r4, r8, r4 /* 800A7E70 000A3CB0 7D 14 4A 14 */ add r8, r20, r9 /* 800A7E74 000A3CB4 39 28 00 04 */ addi r9, r8, 0x4 /* 800A7E78 000A3CB8 3D 04 00 27 */ addis r8, r4, 0x27 /* 800A7E7C 000A3CBC 39 08 9E C3 */ addi r8, r8, -0x613d .global lbl_800A7E80 lbl_800A7E80: /* 800A7E80 000A3CC0 3C 80 00 08 */ lis r4, 0x8 /* 800A7E84 000A3CC4 3D 40 37 11 */ lis r10, 0x3711 /* 800A7E88 000A3CC8 39 64 B9 29 */ addi r11, r4, -0x46d7 /* 800A7E8C 000A3CCC A0 86 00 00 */ lhz r4, 0x0(r6) /* 800A7E90 000A3CD0 38 CA 97 E7 */ addi r6, r10, -0x6819 /* 800A7E94 000A3CD4 54 63 07 BD */ rlwinm. r3, r3, 0, 30, 30 /* 800A7E98 000A3CD8 7D 5A 59 D6 */ mullw r10, r26, r11 /* 800A7E9C 000A3CDC 7C 64 31 D6 */ mullw r3, r4, r6 /* 800A7EA0 000A3CE0 7C 0A 02 14 */ add r0, r10, r0 /* 800A7EA4 000A3CE4 3C 63 00 05 */ addis r3, r3, 0x5 /* 800A7EA8 000A3CE8 7C 60 1A 14 */ add r3, r0, r3 /* 800A7EAC 000A3CEC 38 03 BF 53 */ addi r0, r3, -0x40ad /* 800A7EB0 000A3CF0 90 01 00 08 */ stw r0, 0x8(r1) /* 800A7EB4 000A3CF4 88 C1 00 0A */ lbz r6, 0xa(r1) /* 800A7EB8 000A3CF8 88 01 00 0B */ lbz r0, 0xb(r1) /* 800A7EBC 000A3CFC 88 61 00 09 */ lbz r3, 0x9(r1) /* 800A7EC0 000A3D00 7C C6 02 78 */ xor r6, r6, r0 /* 800A7EC4 000A3D04 88 01 00 08 */ lbz r0, 0x8(r1) /* 800A7EC8 000A3D08 7C 63 32 78 */ xor r3, r3, r6 /* 800A7ECC 000A3D0C 98 C1 00 0A */ stb r6, 0xa(r1) /* 800A7ED0 000A3D10 7C 00 1A 78 */ xor r0, r0, r3 /* 800A7ED4 000A3D14 98 61 00 09 */ stb r3, 0x9(r1) /* 800A7ED8 000A3D18 98 01 00 08 */ stb r0, 0x8(r1) /* 800A7EDC 000A3D1C 80 C1 00 08 */ lwz r6, 0x8(r1) /* 800A7EE0 000A3D20 40 82 00 14 */ bne lbl_800A7EF4 /* 800A7EE4 000A3D24 7C 04 E1 D6 */ mullw r0, r4, r28 /* 800A7EE8 000A3D28 7C 75 02 14 */ add r3, r21, r0 /* 800A7EEC 000A3D2C 38 83 00 04 */ addi r4, r3, 0x4 /* 800A7EF0 000A3D30 48 00 00 38 */ b lbl_800A7F28 .global lbl_800A7EF4 lbl_800A7EF4: /* 800A7EF4 000A3D34 A1 54 00 00 */ lhz r10, 0x0(r20) /* 800A7EF8 000A3D38 54 CB 84 3E */ srwi r11, r6, 16 /* 800A7EFC 000A3D3C 3C 60 00 03 */ lis r3, 0x3 /* 800A7F00 000A3D40 7C 8B 53 96 */ divwu r4, r11, r10 /* 800A7F04 000A3D44 38 03 43 FD */ addi r0, r3, 0x43fd /* 800A7F08 000A3D48 7C 64 51 D6 */ mullw r3, r4, r10 /* 800A7F0C 000A3D4C 7C 63 58 50 */ subf r3, r3, r11 /* 800A7F10 000A3D50 7C 9C 19 D6 */ mullw r4, r28, r3 /* 800A7F14 000A3D54 7C 66 01 D6 */ mullw r3, r6, r0 /* 800A7F18 000A3D58 7C 94 22 14 */ add r4, r20, r4 /* 800A7F1C 000A3D5C 38 84 00 04 */ addi r4, r4, 0x4 /* 800A7F20 000A3D60 3C C3 00 27 */ addis r6, r3, 0x27 /* 800A7F24 000A3D64 38 C6 9E C3 */ addi r6, r6, -0x613d .global lbl_800A7F28 lbl_800A7F28: /* 800A7F28 000A3D68 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A7F2C 000A3D6C 39 40 00 01 */ li r10, 0x1 /* 800A7F30 000A3D70 C0 02 8A 58 */ lfs f0, "@11365"@sda21(r2) /* 800A7F34 000A3D74 3C 60 00 03 */ lis r3, 0x3 /* 800A7F38 000A3D78 C9 42 8A 48 */ lfd f10, "@11032_8055E9C8"@sda21(r2) /* 800A7F3C 000A3D7C C1 02 8A 60 */ lfs f8, "@11367"@sda21(r2) /* 800A7F40 000A3D80 C0 C2 8A 68 */ lfs f6, "@11369"@sda21(r2) /* 800A7F44 000A3D84 C0 A2 8A 5C */ lfs f5, "@11366"@sda21(r2) /* 800A7F48 000A3D88 C0 82 8A 38 */ lfs f4, "@11024"@sda21(r2) /* 800A7F4C 000A3D8C C0 62 8A 6C */ lfs f3, "@11370"@sda21(r2) /* 800A7F50 000A3D90 48 00 02 58 */ b lbl_800A81A8 /* 800A7F54 000A3D94 60 00 00 00 */ nop .global lbl_800A7F58 lbl_800A7F58: /* 800A7F58 000A3D98 7F 20 50 39 */ and. r0, r25, r10 /* 800A7F5C 000A3D9C 41 82 02 18 */ beq lbl_800A8174 /* 800A7F60 000A3DA0 55 00 84 3E */ srwi r0, r8, 16 /* 800A7F64 000A3DA4 89 69 00 01 */ lbz r11, 0x1(r9) /* 800A7F68 000A3DA8 7C 00 07 34 */ extsh r0, r0 /* 800A7F6C 000A3DAC 89 89 00 00 */ lbz r12, 0x0(r9) /* 800A7F70 000A3DB0 7C 0B 01 D6 */ mullw r0, r11, r0 /* 800A7F74 000A3DB4 39 29 00 02 */ addi r9, r9, 0x2 /* 800A7F78 000A3DB8 7C 00 7E 70 */ srawi r0, r0, 15 /* 800A7F7C 000A3DBC 7C 00 01 94 */ addze r0, r0 /* 800A7F80 000A3DC0 7C 0C 02 15 */ add. r0, r12, r0 /* 800A7F84 000A3DC4 40 80 00 08 */ bge lbl_800A7F8C /* 800A7F88 000A3DC8 38 00 00 00 */ li r0, 0x0 .global lbl_800A7F8C lbl_800A7F8C: /* 800A7F8C 000A3DCC 2C 00 00 FF */ cmpwi r0, 0xff /* 800A7F90 000A3DD0 40 81 00 08 */ ble lbl_800A7F98 /* 800A7F94 000A3DD4 38 00 00 FF */ li r0, 0xff .global lbl_800A7F98 lbl_800A7F98: /* 800A7F98 000A3DD8 89 7D 00 04 */ lbz r11, 0x4(r29) /* 800A7F9C 000A3DDC 55 71 07 7B */ rlwinm. r17, r11, 0, 29, 29 /* 800A7FA0 000A3DE0 40 82 00 14 */ bne lbl_800A7FB4 /* 800A7FA4 000A3DE4 39 63 43 FD */ addi r11, r3, 0x43fd /* 800A7FA8 000A3DE8 7D 08 59 D6 */ mullw r8, r8, r11 /* 800A7FAC 000A3DEC 3D 08 00 27 */ addis r8, r8, 0x27 /* 800A7FB0 000A3DF0 39 08 9E C3 */ addi r8, r8, -0x613d .global lbl_800A7FB4 lbl_800A7FB4: /* 800A7FB4 000A3DF4 54 CB 84 3E */ srwi r11, r6, 16 /* 800A7FB8 000A3DF8 89 84 00 01 */ lbz r12, 0x1(r4) /* 800A7FBC 000A3DFC 7D 6B 07 34 */ extsh r11, r11 /* 800A7FC0 000A3E00 8A 04 00 00 */ lbz r16, 0x0(r4) /* 800A7FC4 000A3E04 7D 6C 59 D6 */ mullw r11, r12, r11 /* 800A7FC8 000A3E08 38 84 00 02 */ addi r4, r4, 0x2 /* 800A7FCC 000A3E0C 7D 6B 7E 70 */ srawi r11, r11, 15 /* 800A7FD0 000A3E10 7D 6B 01 94 */ addze r11, r11 /* 800A7FD4 000A3E14 7E 50 5A 15 */ add. r18, r16, r11 /* 800A7FD8 000A3E18 40 80 00 08 */ bge lbl_800A7FE0 /* 800A7FDC 000A3E1C 3A 40 00 00 */ li r18, 0x0 .global lbl_800A7FE0 lbl_800A7FE0: /* 800A7FE0 000A3E20 2C 12 00 FF */ cmpwi r18, 0xff /* 800A7FE4 000A3E24 40 81 00 08 */ ble lbl_800A7FEC /* 800A7FE8 000A3E28 3A 40 00 FF */ li r18, 0xff .global lbl_800A7FEC lbl_800A7FEC: /* 800A7FEC 000A3E2C 2C 11 00 00 */ cmpwi r17, 0x0 /* 800A7FF0 000A3E30 40 82 00 14 */ bne lbl_800A8004 /* 800A7FF4 000A3E34 39 63 43 FD */ addi r11, r3, 0x43fd /* 800A7FF8 000A3E38 7C C6 59 D6 */ mullw r6, r6, r11 /* 800A7FFC 000A3E3C 3C C6 00 27 */ addis r6, r6, 0x27 /* 800A8000 000A3E40 38 C6 9E C3 */ addi r6, r6, -0x613d .global lbl_800A8004 lbl_800A8004: /* 800A8004 000A3E44 54 0C 06 3E */ clrlwi r12, r0, 24 /* 800A8008 000A3E48 56 4B 06 3E */ clrlwi r11, r18, 24 /* 800A800C 000A3E4C 7C 0C 58 40 */ cmplw r12, r11 /* 800A8010 000A3E50 8A 07 00 00 */ lbz r16, 0x0(r7) /* 800A8014 000A3E54 40 82 00 08 */ bne lbl_800A801C /* 800A8018 000A3E58 48 00 01 54 */ b lbl_800A816C .global lbl_800A801C lbl_800A801C: /* 800A801C 000A3E5C 56 11 07 BF */ clrlwi. r17, r16, 30 /* 800A8020 000A3E60 41 82 00 18 */ beq lbl_800A8038 /* 800A8024 000A3E64 2C 11 00 01 */ cmpwi r17, 0x1 /* 800A8028 000A3E68 41 82 00 28 */ beq lbl_800A8050 /* 800A802C 000A3E6C 2C 11 00 02 */ cmpwi r17, 0x2 /* 800A8030 000A3E70 41 82 01 3C */ beq lbl_800A816C /* 800A8034 000A3E74 48 00 01 34 */ b lbl_800A8168 .global lbl_800A8038 lbl_800A8038: /* 800A8038 000A3E78 7C 0C 58 50 */ subf r0, r12, r11 /* 800A803C 000A3E7C 7C 05 01 D6 */ mullw r0, r5, r0 /* 800A8040 000A3E80 54 00 84 3E */ srwi r0, r0, 16 /* 800A8044 000A3E84 7C 0C 02 14 */ add r0, r12, r0 /* 800A8048 000A3E88 54 0C 06 3E */ clrlwi r12, r0, 24 /* 800A804C 000A3E8C 48 00 01 20 */ b lbl_800A816C .global lbl_800A8050 lbl_800A8050: /* 800A8050 000A3E90 90 A1 00 24 */ stw r5, 0x24(r1) /* 800A8054 000A3E94 28 10 00 01 */ cmplwi r16, 0x1 /* 800A8058 000A3E98 C8 41 00 20 */ lfd f2, 0x20(r1) /* 800A805C 000A3E9C EC 42 08 28 */ fsubs f2, f2, f1 /* 800A8060 000A3EA0 ED A2 00 24 */ fdivs f13, f2, f0 /* 800A8064 000A3EA4 40 82 00 4C */ bne lbl_800A80B0 /* 800A8068 000A3EA8 7C 0C 58 50 */ subf r0, r12, r11 /* 800A806C 000A3EAC EC E8 03 72 */ fmuls f7, f8, f13 /* 800A8070 000A3EB0 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800A8074 000A3EB4 90 01 00 24 */ stw r0, 0x24(r1) /* 800A8078 000A3EB8 C8 41 00 20 */ lfd f2, 0x20(r1) /* 800A807C 000A3EBC EC E5 38 28 */ fsubs f7, f5, f7 /* 800A8080 000A3EC0 91 81 00 2C */ stw r12, 0x2c(r1) /* 800A8084 000A3EC4 EC 42 50 28 */ fsubs f2, f2, f10 /* 800A8088 000A3EC8 C9 21 00 28 */ lfd f9, 0x28(r1) /* 800A808C 000A3ECC EC 47 00 B2 */ fmuls f2, f7, f2 /* 800A8090 000A3ED0 EC E9 08 28 */ fsubs f7, f9, f1 /* 800A8094 000A3ED4 EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A8098 000A3ED8 EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A809C 000A3EDC EC 47 10 2A */ fadds f2, f7, f2 /* 800A80A0 000A3EE0 FC 40 10 1E */ fctiwz f2, f2 /* 800A80A4 000A3EE4 D8 41 00 30 */ stfd f2, 0x30(r1) /* 800A80A8 000A3EE8 81 81 00 34 */ lwz r12, 0x34(r1) /* 800A80AC 000A3EEC 48 00 00 C0 */ b lbl_800A816C .global lbl_800A80B0 lbl_800A80B0: /* 800A80B0 000A3EF0 56 0B F7 FF */ extrwi. r11, r16, 1, 29 /* 800A80B4 000A3EF4 40 82 00 0C */ bne lbl_800A80C0 /* 800A80B8 000A3EF8 C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800A80BC 000A3EFC 48 00 00 08 */ b lbl_800A80C4 .global lbl_800A80C0 lbl_800A80C0: /* 800A80C0 000A3F00 C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800A80C4 lbl_800A80C4: /* 800A80C4 000A3F04 56 0B EF FF */ extrwi. r11, r16, 1, 28 /* 800A80C8 000A3F08 40 82 00 0C */ bne lbl_800A80D4 /* 800A80CC 000A3F0C C1 82 8A 38 */ lfs f12, "@11024"@sda21(r2) /* 800A80D0 000A3F10 48 00 00 08 */ b lbl_800A80D8 .global lbl_800A80D4 lbl_800A80D4: /* 800A80D4 000A3F14 C1 82 8A 64 */ lfs f12, "@11368"@sda21(r2) .global lbl_800A80D8 lbl_800A80D8: /* 800A80D8 000A3F18 EC EC 48 2A */ fadds f7, f12, f9 /* 800A80DC 000A3F1C 54 0B 06 3E */ clrlwi r11, r0, 24 /* 800A80E0 000A3F20 EC 46 03 32 */ fmuls f2, f6, f12 /* 800A80E4 000A3F24 56 40 06 3E */ clrlwi r0, r18, 24 /* 800A80E8 000A3F28 7C 0B 00 50 */ subf r0, r11, r0 /* 800A80EC 000A3F2C 91 61 00 2C */ stw r11, 0x2c(r1) /* 800A80F0 000A3F30 EC E7 40 28 */ fsubs f7, f7, f8 /* 800A80F4 000A3F34 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800A80F8 000A3F38 EC 42 48 28 */ fsubs f2, f2, f9 /* 800A80FC 000A3F3C 90 01 00 24 */ stw r0, 0x24(r1) /* 800A8100 000A3F40 C9 61 00 28 */ lfd f11, 0x28(r1) /* 800A8104 000A3F44 EC ED 01 F2 */ fmuls f7, f13, f7 /* 800A8108 000A3F48 EC 45 10 2A */ fadds f2, f5, f2 /* 800A810C 000A3F4C C9 21 00 20 */ lfd f9, 0x20(r1) /* 800A8110 000A3F50 ED 6B 08 28 */ fsubs f11, f11, f1 /* 800A8114 000A3F54 EC ED 01 F2 */ fmuls f7, f13, f7 /* 800A8118 000A3F58 EC 4D 00 B2 */ fmuls f2, f13, f2 /* 800A811C 000A3F5C ED 29 50 28 */ fsubs f9, f9, f10 /* 800A8120 000A3F60 EC 47 10 2A */ fadds f2, f7, f2 /* 800A8124 000A3F64 EC ED 02 72 */ fmuls f7, f13, f9 /* 800A8128 000A3F68 EC 4C 10 2A */ fadds f2, f12, f2 /* 800A812C 000A3F6C EC 47 00 B2 */ fmuls f2, f7, f2 /* 800A8130 000A3F70 EC 4B 10 2A */ fadds f2, f11, f2 /* 800A8134 000A3F74 FC 02 20 40 */ fcmpo cr0, f2, f4 /* 800A8138 000A3F78 40 80 00 0C */ bge lbl_800A8144 /* 800A813C 000A3F7C 39 80 00 00 */ li r12, 0x0 /* 800A8140 000A3F80 48 00 00 2C */ b lbl_800A816C .global lbl_800A8144 lbl_800A8144: /* 800A8144 000A3F84 FC 02 18 40 */ fcmpo cr0, f2, f3 /* 800A8148 000A3F88 40 81 00 0C */ ble lbl_800A8154 /* 800A814C 000A3F8C 39 80 00 FF */ li r12, 0xff /* 800A8150 000A3F90 48 00 00 1C */ b lbl_800A816C .global lbl_800A8154 lbl_800A8154: /* 800A8154 000A3F94 FC 40 10 1E */ fctiwz f2, f2 /* 800A8158 000A3F98 D8 41 00 30 */ stfd f2, 0x30(r1) /* 800A815C 000A3F9C 81 81 00 34 */ lwz r12, 0x34(r1) /* 800A8160 000A3FA0 48 00 00 0C */ b lbl_800A816C /* 800A8164 000A3FA4 48 00 00 08 */ b lbl_800A816C .global lbl_800A8168 lbl_800A8168: /* 800A8168 000A3FA8 39 80 00 00 */ li r12, 0x0 .global lbl_800A816C lbl_800A816C: /* 800A816C 000A3FAC 99 9E 00 00 */ stb r12, 0x0(r30) /* 800A8170 000A3FB0 48 00 00 2C */ b lbl_800A819C .global lbl_800A8174 lbl_800A8174: /* 800A8174 000A3FB4 88 1D 00 04 */ lbz r0, 0x4(r29) /* 800A8178 000A3FB8 54 00 07 7B */ rlwinm. r0, r0, 0, 29, 29 /* 800A817C 000A3FBC 40 82 00 20 */ bne lbl_800A819C /* 800A8180 000A3FC0 38 03 43 FD */ addi r0, r3, 0x43fd /* 800A8184 000A3FC4 7D 08 01 D6 */ mullw r8, r8, r0 /* 800A8188 000A3FC8 7C C6 01 D6 */ mullw r6, r6, r0 /* 800A818C 000A3FCC 3D 08 00 27 */ addis r8, r8, 0x27 /* 800A8190 000A3FD0 39 08 9E C3 */ addi r8, r8, -0x613d /* 800A8194 000A3FD4 3C C6 00 27 */ addis r6, r6, 0x27 /* 800A8198 000A3FD8 38 C6 9E C3 */ addi r6, r6, -0x613d .global lbl_800A819C lbl_800A819C: /* 800A819C 000A3FDC 55 4A 0C 3C */ rlwinm r10, r10, 1, 16, 30 /* 800A81A0 000A3FE0 38 E7 00 01 */ addi r7, r7, 0x1 /* 800A81A4 000A3FE4 3B DE 00 01 */ addi r30, r30, 0x1 .global lbl_800A81A8 lbl_800A81A8: /* 800A81A8 000A3FE8 7C 0A C0 00 */ cmpw r10, r24 /* 800A81AC 000A3FEC 40 81 FD AC */ ble lbl_800A7F58 .global lbl_800A81B0 lbl_800A81B0: /* 800A81B0 000A3FF0 39 61 00 80 */ addi r11, r1, 0x80 /* 800A81B4 000A3FF4 E3 E1 00 88 */ psq_l f31, 0x88(r1), 0, qr0 /* 800A81B8 000A3FF8 CB E1 00 80 */ lfd f31, 0x80(r1) /* 800A81BC 000A3FFC 4B F5 F1 A1 */ bl lbl_8000735C /* 800A81C0 000A4000 80 01 00 94 */ lwz r0, 0x94(r1) /* 800A81C4 000A4004 7C 08 03 A6 */ mtlr r0 /* 800A81C8 000A4008 38 21 00 90 */ addi r1, r1, 0x90 /* 800A81CC 000A400C 4E 80 00 20 */ blr .global AnimCurveExecuteF32__Q24nw4r2efFPUcPfUlUsUl AnimCurveExecuteF32__Q24nw4r2efFPUcPfUlUsUl: /* 800A81D0 000A4010 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800A81D4 000A4014 7C 08 02 A6 */ mflr r0 /* 800A81D8 000A4018 90 01 00 74 */ stw r0, 0x74(r1) /* 800A81DC 000A401C 39 61 00 60 */ addi r11, r1, 0x60 /* 800A81E0 000A4020 DB E1 00 60 */ stfd f31, 0x60(r1) /* 800A81E4 000A4024 F3 E1 00 68 */ psq_st f31, 0x68(r1), 0, qr0 /* 800A81E8 000A4028 4B F5 F1 41 */ bl lbl_80007328 /* 800A81EC 000A402C 88 03 00 00 */ lbz r0, 0x0(r3) /* 800A81F0 000A4030 3D 00 43 30 */ lis r8, 0x4330 /* 800A81F4 000A4034 91 01 00 20 */ stw r8, 0x20(r1) /* 800A81F8 000A4038 7C 7D 1B 78 */ mr r29, r3 /* 800A81FC 000A403C 28 00 00 AB */ cmplwi r0, 0xab /* 800A8200 000A4040 7C 9E 23 78 */ mr r30, r4 /* 800A8204 000A4044 91 01 00 28 */ stw r8, 0x28(r1) /* 800A8208 000A4048 7C B7 2B 78 */ mr r23, r5 /* 800A820C 000A404C 7C DF 33 78 */ mr r31, r6 /* 800A8210 000A4050 40 82 00 10 */ bne lbl_800A8220 /* 800A8214 000A4054 7C E6 3B 78 */ mr r6, r7 /* 800A8218 000A4058 48 00 38 99 */ bl AnimBakedExecuteF32__Q24nw4r2efFPUcPfUlUl /* 800A821C 000A405C 48 00 0F 60 */ b lbl_800A917C .global lbl_800A8220 lbl_800A8220: /* 800A8220 000A4060 A0 83 00 08 */ lhz r4, 0x8(r3) /* 800A8224 000A4064 3B 43 00 20 */ addi r26, r3, 0x20 /* 800A8228 000A4068 81 03 00 0C */ lwz r8, 0xc(r3) /* 800A822C 000A406C 38 C0 00 00 */ li r6, 0x0 /* 800A8230 000A4070 28 04 00 01 */ cmplwi r4, 0x1 /* 800A8234 000A4074 80 03 00 10 */ lwz r0, 0x10(r3) /* 800A8238 000A4078 7F 3A 42 14 */ add r25, r26, r8 /* 800A823C 000A407C 8B 63 00 03 */ lbz r27, 0x3(r3) /* 800A8240 000A4080 7F 19 02 14 */ add r24, r25, r0 /* 800A8244 000A4084 41 81 00 14 */ bgt lbl_800A8258 /* 800A8248 000A4088 C0 82 8A 38 */ lfs f4, "@11024"@sda21(r2) /* 800A824C 000A408C 7E E6 BB 78 */ mr r6, r23 /* 800A8250 000A4090 38 E0 00 00 */ li r7, 0x0 /* 800A8254 000A4094 48 00 02 D8 */ b lbl_800A852C .global lbl_800A8258 lbl_800A8258: /* 800A8258 000A4098 8A C3 00 04 */ lbz r22, 0x4(r3) /* 800A825C 000A409C 56 C8 06 B5 */ rlwinm. r8, r22, 0, 26, 26 /* 800A8260 000A40A0 40 82 00 D4 */ bne lbl_800A8334 /* 800A8264 000A40A4 88 03 00 05 */ lbz r0, 0x5(r3) /* 800A8268 000A40A8 28 00 00 01 */ cmplwi r0, 0x1 /* 800A826C 000A40AC 41 81 00 C8 */ bgt lbl_800A8334 /* 800A8270 000A40B0 56 C0 06 31 */ rlwinm. r0, r22, 0, 24, 24 /* 800A8274 000A40B4 40 82 00 2C */ bne lbl_800A82A0 /* 800A8278 000A40B8 38 04 FF FF */ addi r0, r4, -0x1 /* 800A827C 000A40BC 54 A7 04 3E */ clrlwi r7, r5, 16 /* 800A8280 000A40C0 7C 05 00 40 */ cmplw r5, r0 /* 800A8284 000A40C4 41 80 00 08 */ blt lbl_800A828C /* 800A8288 000A40C8 54 07 04 3E */ clrlwi r7, r0, 16 .global lbl_800A828C lbl_800A828C: /* 800A828C 000A40CC 90 E1 00 24 */ stw r7, 0x24(r1) /* 800A8290 000A40D0 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A8294 000A40D4 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A8298 000A40D8 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A829C 000A40DC 48 00 02 90 */ b lbl_800A852C .global lbl_800A82A0 lbl_800A82A0: /* 800A82A0 000A40E0 28 07 00 01 */ cmplwi r7, 0x1 /* 800A82A4 000A40E4 40 82 00 20 */ bne lbl_800A82C4 /* 800A82A8 000A40E8 38 04 FF FF */ addi r0, r4, -0x1 /* 800A82AC 000A40EC C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800A82B0 000A40F0 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800A82B4 000A40F4 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A82B8 000A40F8 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A82BC 000A40FC EC 80 08 28 */ fsubs f4, f0, f1 /* 800A82C0 000A4100 48 00 00 64 */ b lbl_800A8324 .global lbl_800A82C4 lbl_800A82C4: /* 800A82C4 000A4104 90 A1 00 24 */ stw r5, 0x24(r1) /* 800A82C8 000A4108 38 04 FF FF */ addi r0, r4, -0x1 /* 800A82CC 000A410C 6C 03 80 00 */ xoris r3, r0, 0x8000 /* 800A82D0 000A4110 C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800A82D4 000A4114 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A82D8 000A4118 38 07 FF FF */ addi r0, r7, -0x1 /* 800A82DC 000A411C 90 61 00 2C */ stw r3, 0x2c(r1) /* 800A82E0 000A4120 EC 80 28 28 */ fsubs f4, f0, f5 /* 800A82E4 000A4124 C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800A82E8 000A4128 90 01 00 24 */ stw r0, 0x24(r1) /* 800A82EC 000A412C C8 21 00 28 */ lfd f1, 0x28(r1) /* 800A82F0 000A4130 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A82F4 000A4134 EC 41 18 28 */ fsubs f2, f1, f3 /* 800A82F8 000A4138 90 61 00 2C */ stw r3, 0x2c(r1) /* 800A82FC 000A413C EC 20 28 28 */ fsubs f1, f0, f5 /* 800A8300 000A4140 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A8304 000A4144 EC 22 08 24 */ fdivs f1, f2, f1 /* 800A8308 000A4148 EC 84 00 72 */ fmuls f4, f4, f1 /* 800A830C 000A414C EC 00 18 28 */ fsubs f0, f0, f3 /* 800A8310 000A4150 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 800A8314 000A4154 40 81 00 10 */ ble lbl_800A8324 /* 800A8318 000A4158 90 61 00 24 */ stw r3, 0x24(r1) /* 800A831C 000A415C C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A8320 000A4160 EC 80 18 28 */ fsubs f4, f0, f3 .global lbl_800A8324 lbl_800A8324: /* 800A8324 000A4164 FC 00 20 1E */ fctiwz f0, f4 /* 800A8328 000A4168 D8 01 00 30 */ stfd f0, 0x30(r1) /* 800A832C 000A416C 80 E1 00 34 */ lwz r7, 0x34(r1) /* 800A8330 000A4170 48 00 01 FC */ b lbl_800A852C .global lbl_800A8334 lbl_800A8334: /* 800A8334 000A4174 56 C0 06 31 */ rlwinm. r0, r22, 0, 24, 24 /* 800A8338 000A4178 40 82 00 CC */ bne lbl_800A8404 /* 800A833C 000A417C 38 E4 FF FF */ addi r7, r4, -0x1 /* 800A8340 000A4180 56 C0 06 73 */ rlwinm. r0, r22, 0, 25, 25 /* 800A8344 000A4184 7C C5 3B 96 */ divwu r6, r5, r7 /* 800A8348 000A4188 40 82 00 38 */ bne lbl_800A8380 /* 800A834C 000A418C 2C 08 00 00 */ cmpwi r8, 0x0 /* 800A8350 000A4190 40 82 00 20 */ bne lbl_800A8370 /* 800A8354 000A4194 88 63 00 05 */ lbz r3, 0x5(r3) /* 800A8358 000A4198 7C 06 18 40 */ cmplw r6, r3 /* 800A835C 000A419C 41 80 00 14 */ blt lbl_800A8370 /* 800A8360 000A41A0 38 03 FF FF */ addi r0, r3, -0x1 /* 800A8364 000A41A4 54 E7 04 3E */ clrlwi r7, r7, 16 /* 800A8368 000A41A8 54 06 06 3E */ clrlwi r6, r0, 24 /* 800A836C 000A41AC 48 00 00 80 */ b lbl_800A83EC .global lbl_800A8370 lbl_800A8370: /* 800A8370 000A41B0 7C 06 39 D6 */ mullw r0, r6, r7 /* 800A8374 000A41B4 7C 00 28 50 */ subf r0, r0, r5 /* 800A8378 000A41B8 54 07 04 3E */ clrlwi r7, r0, 16 /* 800A837C 000A41BC 48 00 00 70 */ b lbl_800A83EC .global lbl_800A8380 lbl_800A8380: /* 800A8380 000A41C0 2C 08 00 00 */ cmpwi r8, 0x0 /* 800A8384 000A41C4 40 82 00 40 */ bne lbl_800A83C4 /* 800A8388 000A41C8 89 03 00 05 */ lbz r8, 0x5(r3) /* 800A838C 000A41CC 7C 06 40 40 */ cmplw r6, r8 /* 800A8390 000A41D0 41 80 00 34 */ blt lbl_800A83C4 /* 800A8394 000A41D4 55 04 0F FE */ srwi r4, r8, 31 /* 800A8398 000A41D8 55 00 07 FE */ clrlwi r0, r8, 31 /* 800A839C 000A41DC 7C 03 22 78 */ xor r3, r0, r4 /* 800A83A0 000A41E0 7C 84 18 50 */ subf r4, r4, r3 /* 800A83A4 000A41E4 38 08 FF FF */ addi r0, r8, -0x1 /* 800A83A8 000A41E8 7C 84 00 34 */ cntlzw r4, r4 /* 800A83AC 000A41EC 54 E3 04 3E */ clrlwi r3, r7, 16 /* 800A83B0 000A41F0 54 06 06 3E */ clrlwi r6, r0, 24 /* 800A83B4 000A41F4 54 80 DF FE */ extrwi r0, r4, 1, 26 /* 800A83B8 000A41F8 7C 00 00 D0 */ neg r0, r0 /* 800A83BC 000A41FC 7C 67 00 78 */ andc r7, r3, r0 /* 800A83C0 000A4200 48 00 00 2C */ b lbl_800A83EC .global lbl_800A83C4 lbl_800A83C4: /* 800A83C4 000A4204 54 C0 07 FF */ clrlwi. r0, r6, 31 /* 800A83C8 000A4208 40 82 00 14 */ bne lbl_800A83DC /* 800A83CC 000A420C 7C 06 39 D6 */ mullw r0, r6, r7 /* 800A83D0 000A4210 7C 00 28 50 */ subf r0, r0, r5 /* 800A83D4 000A4214 54 07 04 3E */ clrlwi r7, r0, 16 /* 800A83D8 000A4218 48 00 00 14 */ b lbl_800A83EC .global lbl_800A83DC lbl_800A83DC: /* 800A83DC 000A421C 38 06 00 01 */ addi r0, r6, 0x1 /* 800A83E0 000A4220 7C 07 01 D6 */ mullw r0, r7, r0 /* 800A83E4 000A4224 7C 05 00 50 */ subf r0, r5, r0 /* 800A83E8 000A4228 54 07 04 3E */ clrlwi r7, r0, 16 .global lbl_800A83EC lbl_800A83EC: /* 800A83EC 000A422C 54 E0 04 3E */ clrlwi r0, r7, 16 /* 800A83F0 000A4230 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A83F4 000A4234 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A83F8 000A4238 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A83FC 000A423C EC 80 08 28 */ fsubs f4, f0, f1 /* 800A8400 000A4240 48 00 01 2C */ b lbl_800A852C .global lbl_800A8404 lbl_800A8404: /* 800A8404 000A4244 38 C7 FF FF */ addi r6, r7, -0x1 /* 800A8408 000A4248 7C 05 30 40 */ cmplw r5, r6 /* 800A840C 000A424C 41 80 00 54 */ blt lbl_800A8460 /* 800A8410 000A4250 56 C0 06 73 */ rlwinm. r0, r22, 0, 25, 25 /* 800A8414 000A4254 41 82 00 1C */ beq lbl_800A8430 /* 800A8418 000A4258 88 03 00 05 */ lbz r0, 0x5(r3) /* 800A841C 000A425C 54 05 0F FE */ srwi r5, r0, 31 /* 800A8420 000A4260 54 00 07 FE */ clrlwi r0, r0, 31 /* 800A8424 000A4264 7C 00 2A 78 */ xor r0, r0, r5 /* 800A8428 000A4268 7C 05 00 51 */ subf. r0, r5, r0 /* 800A842C 000A426C 41 82 00 10 */ beq lbl_800A843C .global lbl_800A8430 lbl_800A8430: /* 800A8430 000A4270 38 04 FF FF */ addi r0, r4, -0x1 /* 800A8434 000A4274 54 07 04 3E */ clrlwi r7, r0, 16 /* 800A8438 000A4278 48 00 00 08 */ b lbl_800A8440 .global lbl_800A843C lbl_800A843C: /* 800A843C 000A427C 38 E0 00 00 */ li r7, 0x0 .global lbl_800A8440 lbl_800A8440: /* 800A8440 000A4280 90 E1 00 24 */ stw r7, 0x24(r1) /* 800A8444 000A4284 88 63 00 05 */ lbz r3, 0x5(r3) /* 800A8448 000A4288 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A844C 000A428C C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A8450 000A4290 38 03 FF FF */ addi r0, r3, -0x1 /* 800A8454 000A4294 54 06 06 3E */ clrlwi r6, r0, 24 /* 800A8458 000A4298 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A845C 000A429C 48 00 00 D0 */ b lbl_800A852C .global lbl_800A8460 lbl_800A8460: /* 800A8460 000A42A0 88 03 00 05 */ lbz r0, 0x5(r3) /* 800A8464 000A42A4 3B 84 FF FF */ addi r28, r4, -0x1 /* 800A8468 000A42A8 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A846C 000A42AC 6F 80 80 00 */ xoris r0, r28, 0x8000 /* 800A8470 000A42B0 C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800A8474 000A42B4 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A8478 000A42B8 90 01 00 24 */ stw r0, 0x24(r1) /* 800A847C 000A42BC C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800A8480 000A42C0 EC 80 28 28 */ fsubs f4, f0, f5 /* 800A8484 000A42C4 90 C1 00 2C */ stw r6, 0x2c(r1) /* 800A8488 000A42C8 C8 21 00 20 */ lfd f1, 0x20(r1) /* 800A848C 000A42CC C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A8490 000A42D0 EC 41 18 28 */ fsubs f2, f1, f3 /* 800A8494 000A42D4 90 A1 00 24 */ stw r5, 0x24(r1) /* 800A8498 000A42D8 EC 00 28 28 */ fsubs f0, f0, f5 /* 800A849C 000A42DC C8 21 00 20 */ lfd f1, 0x20(r1) /* 800A84A0 000A42E0 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A84A4 000A42E4 EC 42 00 24 */ fdivs f2, f2, f0 /* 800A84A8 000A42E8 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A84AC 000A42EC EF E4 00 B2 */ fmuls f31, f4, f2 /* 800A84B0 000A42F0 EC 21 28 28 */ fsubs f1, f1, f5 /* 800A84B4 000A42F4 EC 00 18 28 */ fsubs f0, f0, f3 /* 800A84B8 000A42F8 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800A84BC 000A42FC EC 21 00 24 */ fdivs f1, f1, f0 /* 800A84C0 000A4300 4B F5 ED 55 */ bl __cvt_fp2unsigned /* 800A84C4 000A4304 7C 83 E1 D6 */ mullw r4, r3, r28 /* 800A84C8 000A4308 92 E1 00 24 */ stw r23, 0x24(r1) /* 800A84CC 000A430C C8 42 8A 40 */ lfd f2, "@11031"@sda21(r2) /* 800A84D0 000A4310 56 C0 06 73 */ rlwinm. r0, r22, 0, 25, 25 /* 800A84D4 000A4314 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A84D8 000A4318 7C 66 1B 78 */ mr r6, r3 /* 800A84DC 000A431C EC 20 10 28 */ fsubs f1, f0, f2 /* 800A84E0 000A4320 90 81 00 2C */ stw r4, 0x2c(r1) /* 800A84E4 000A4324 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A84E8 000A4328 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800A84EC 000A432C EC 00 10 28 */ fsubs f0, f0, f2 /* 800A84F0 000A4330 EC 81 00 28 */ fsubs f4, f1, f0 /* 800A84F4 000A4334 40 82 00 08 */ bne lbl_800A84FC /* 800A84F8 000A4338 48 00 00 28 */ b lbl_800A8520 .global lbl_800A84FC lbl_800A84FC: /* 800A84FC 000A433C 54 60 07 FF */ clrlwi. r0, r3, 31 /* 800A8500 000A4340 40 82 00 08 */ bne lbl_800A8508 /* 800A8504 000A4344 48 00 00 1C */ b lbl_800A8520 .global lbl_800A8508 lbl_800A8508: /* 800A8508 000A4348 6F 80 80 00 */ xoris r0, r28, 0x8000 /* 800A850C 000A434C 90 01 00 24 */ stw r0, 0x24(r1) /* 800A8510 000A4350 C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800A8514 000A4354 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A8518 000A4358 EC 00 08 28 */ fsubs f0, f0, f1 /* 800A851C 000A435C EC 80 20 28 */ fsubs f4, f0, f4 .global lbl_800A8520 lbl_800A8520: /* 800A8520 000A4360 FC 00 20 1E */ fctiwz f0, f4 /* 800A8524 000A4364 D8 01 00 30 */ stfd f0, 0x30(r1) /* 800A8528 000A4368 80 E1 00 34 */ lwz r7, 0x34(r1) .global lbl_800A852C lbl_800A852C: /* 800A852C 000A436C 3C 60 80 44 */ lis r3, gCountStandBit__Q24nw4r2ef@ha /* 800A8530 000A4370 3C 80 80 44 */ lis r4, gMSB__Q24nw4r2ef@ha /* 800A8534 000A4374 38 63 01 08 */ addi r3, r3, gCountStandBit__Q24nw4r2ef@l /* 800A8538 000A4378 7D 23 D8 AE */ lbzx r9, r3, r27 /* 800A853C 000A437C 38 84 02 08 */ addi r4, r4, gMSB__Q24nw4r2ef@l /* 800A8540 000A4380 7D 04 D8 AE */ lbzx r8, r4, r27 /* 800A8544 000A4384 2C 09 00 00 */ cmpwi r9, 0x0 /* 800A8548 000A4388 41 82 0C 34 */ beq lbl_800A917C /* 800A854C 000A438C 54 EB 04 3E */ clrlwi r11, r7, 16 /* 800A8550 000A4390 A0 7A 00 00 */ lhz r3, 0x0(r26) /* 800A8554 000A4394 6D 60 80 00 */ xoris r0, r11, 0x8000 /* 800A8558 000A4398 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A855C 000A439C 38 A3 FF FF */ addi r5, r3, -0x1 /* 800A8560 000A43A0 55 23 10 3A */ slwi r3, r9, 2 /* 800A8564 000A43A4 C8 42 8A 48 */ lfd f2, "@11032_8055E9C8"@sda21(r2) /* 800A8568 000A43A8 54 A0 0F FE */ srwi r0, r5, 31 /* 800A856C 000A43AC C8 21 00 28 */ lfd f1, 0x28(r1) /* 800A8570 000A43B0 7C E0 2A 14 */ add r7, r0, r5 /* 800A8574 000A43B4 C0 02 8A 54 */ lfs f0, "@11364"@sda21(r2) /* 800A8578 000A43B8 38 9A 00 04 */ addi r4, r26, 0x4 /* 800A857C 000A43BC EC 21 10 28 */ fsubs f1, f1, f2 /* 800A8580 000A43C0 38 63 00 0C */ addi r3, r3, 0xc /* 800A8584 000A43C4 55 20 18 38 */ slwi r0, r9, 3 /* 800A8588 000A43C8 7C EC 0E 70 */ srawi r12, r7, 1 /* 800A858C 000A43CC 3B 80 00 00 */ li r28, 0x0 /* 800A8590 000A43D0 EC 21 20 28 */ fsubs f1, f1, f4 /* 800A8594 000A43D4 FC 20 0A 10 */ fabs f1, f1 /* 800A8598 000A43D8 FC 20 08 18 */ frsp f1, f1 /* 800A859C 000A43DC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800A85A0 000A43E0 7E C0 00 26 */ mfcr r22 /* 800A85A4 000A43E4 A1 3A 00 04 */ lhz r9, 0x4(r26) /* 800A85A8 000A43E8 56 D6 0F FE */ srwi r22, r22, 31 /* 800A85AC 000A43EC 7C 0B 48 00 */ cmpw r11, r9 /* 800A85B0 000A43F0 40 80 00 10 */ bge lbl_800A85C0 /* 800A85B4 000A43F4 38 A0 00 00 */ li r5, 0x0 /* 800A85B8 000A43F8 3A C0 00 01 */ li r22, 0x1 /* 800A85BC 000A43FC 48 00 00 C0 */ b lbl_800A867C .global lbl_800A85C0 lbl_800A85C0: /* 800A85C0 000A4400 40 82 00 28 */ bne lbl_800A85E8 /* 800A85C4 000A4404 2C 05 00 00 */ cmpwi r5, 0x0 /* 800A85C8 000A4408 38 A0 00 00 */ li r5, 0x0 /* 800A85CC 000A440C 40 82 00 0C */ bne lbl_800A85D8 /* 800A85D0 000A4410 3A C0 00 01 */ li r22, 0x1 /* 800A85D4 000A4414 48 00 00 A8 */ b lbl_800A867C .global lbl_800A85D8 lbl_800A85D8: /* 800A85D8 000A4418 2C 16 00 00 */ cmpwi r22, 0x0 /* 800A85DC 000A441C 40 82 00 A0 */ bne lbl_800A867C /* 800A85E0 000A4420 7E E4 1A 2E */ lhzx r23, r4, r3 /* 800A85E4 000A4424 48 00 00 98 */ b lbl_800A867C .global lbl_800A85E8 lbl_800A85E8: /* 800A85E8 000A4428 7C E5 19 D6 */ mullw r7, r5, r3 /* 800A85EC 000A442C 7E E4 3A 2E */ lhzx r23, r4, r7 /* 800A85F0 000A4430 7C 17 58 00 */ cmpw r23, r11 /* 800A85F4 000A4434 41 81 00 0C */ bgt lbl_800A8600 /* 800A85F8 000A4438 3A C0 00 01 */ li r22, 0x1 /* 800A85FC 000A443C 48 00 00 80 */ b lbl_800A867C .global lbl_800A8600 lbl_800A8600: /* 800A8600 000A4440 7C EC 19 D6 */ mullw r7, r12, r3 /* 800A8604 000A4444 7D 44 3A 2E */ lhzx r10, r4, r7 /* 800A8608 000A4448 48 00 00 64 */ b lbl_800A866C /* 800A860C 000A444C 60 00 00 00 */ nop .global lbl_800A8610 lbl_800A8610: /* 800A8610 000A4450 7C 0B 50 00 */ cmpw r11, r10 /* 800A8614 000A4454 40 82 00 24 */ bne lbl_800A8638 /* 800A8618 000A4458 2C 16 00 00 */ cmpwi r22, 0x0 /* 800A861C 000A445C 7D 85 63 78 */ mr r5, r12 /* 800A8620 000A4460 40 82 00 5C */ bne lbl_800A867C /* 800A8624 000A4464 38 EC 00 01 */ addi r7, r12, 0x1 /* 800A8628 000A4468 7D 49 53 78 */ mr r9, r10 /* 800A862C 000A446C 7C E7 19 D6 */ mullw r7, r7, r3 /* 800A8630 000A4470 7E E4 3A 2E */ lhzx r23, r4, r7 /* 800A8634 000A4474 48 00 00 48 */ b lbl_800A867C .global lbl_800A8638 lbl_800A8638: /* 800A8638 000A4478 7C 0A 58 00 */ cmpw r10, r11 /* 800A863C 000A447C 40 80 00 10 */ bge lbl_800A864C /* 800A8640 000A4480 7D 9C 63 78 */ mr r28, r12 /* 800A8644 000A4484 7D 49 53 78 */ mr r9, r10 /* 800A8648 000A4488 48 00 00 0C */ b lbl_800A8654 .global lbl_800A864C lbl_800A864C: /* 800A864C 000A448C 7D 85 63 78 */ mr r5, r12 /* 800A8650 000A4490 7D 57 53 78 */ mr r23, r10 .global lbl_800A8654 lbl_800A8654: /* 800A8654 000A4494 7D 5C 2A 14 */ add r10, r28, r5 /* 800A8658 000A4498 55 47 0F FE */ srwi r7, r10, 31 /* 800A865C 000A449C 7C E7 52 14 */ add r7, r7, r10 /* 800A8660 000A44A0 7C EC 0E 70 */ srawi r12, r7, 1 /* 800A8664 000A44A4 7C EC 19 D6 */ mullw r7, r12, r3 /* 800A8668 000A44A8 7D 44 3A 2E */ lhzx r10, r4, r7 .global lbl_800A866C lbl_800A866C: /* 800A866C 000A44AC 7C 1C 60 00 */ cmpw r28, r12 /* 800A8670 000A44B0 41 80 FF A0 */ blt lbl_800A8610 /* 800A8674 000A44B4 7F 85 E3 78 */ mr r5, r28 /* 800A8678 000A44B8 3A C0 00 00 */ li r22, 0x0 .global lbl_800A867C lbl_800A867C: /* 800A867C 000A44BC 2C 16 00 00 */ cmpwi r22, 0x0 /* 800A8680 000A44C0 41 82 01 8C */ beq lbl_800A880C /* 800A8684 000A44C4 7C 65 19 D6 */ mullw r3, r5, r3 /* 800A8688 000A44C8 7C 64 1A 14 */ add r3, r4, r3 /* 800A868C 000A44CC 89 83 00 02 */ lbz r12, 0x2(r3) /* 800A8690 000A44D0 38 63 00 0C */ addi r3, r3, 0xc /* 800A8694 000A44D4 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800A8698 000A44D8 40 82 00 38 */ bne lbl_800A86D0 /* 800A869C 000A44DC 38 80 00 01 */ li r4, 0x1 /* 800A86A0 000A44E0 48 00 00 24 */ b lbl_800A86C4 /* 800A86A4 000A44E4 60 00 00 00 */ nop .global lbl_800A86A8 lbl_800A86A8: /* 800A86A8 000A44E8 7F 60 20 39 */ and. r0, r27, r4 /* 800A86AC 000A44EC 41 82 00 10 */ beq lbl_800A86BC /* 800A86B0 000A44F0 C0 03 00 00 */ lfs f0, 0x0(r3) /* 800A86B4 000A44F4 38 63 00 04 */ addi r3, r3, 0x4 /* 800A86B8 000A44F8 D0 1E 00 00 */ stfs f0, 0x0(r30) .global lbl_800A86BC lbl_800A86BC: /* 800A86BC 000A44FC 54 84 0C 3C */ rlwinm r4, r4, 1, 16, 30 /* 800A86C0 000A4500 3B DE 00 04 */ addi r30, r30, 0x4 .global lbl_800A86C4 lbl_800A86C4: /* 800A86C4 000A4504 7C 04 40 00 */ cmpw r4, r8 /* 800A86C8 000A4508 40 81 FF E0 */ ble lbl_800A86A8 /* 800A86CC 000A450C 48 00 0A B0 */ b lbl_800A917C .global lbl_800A86D0 lbl_800A86D0: /* 800A86D0 000A4510 3C 80 37 11 */ lis r4, 0x3711 /* 800A86D4 000A4514 A0 63 00 00 */ lhz r3, 0x0(r3) /* 800A86D8 000A4518 38 84 97 E7 */ addi r4, r4, -0x6819 /* 800A86DC 000A451C 3D 20 3F 82 */ lis r9, 0x3f82 /* 800A86E0 000A4520 7C 83 21 D6 */ mullw r4, r3, r4 /* 800A86E4 000A4524 3C E0 30 A7 */ lis r7, 0x30a7 /* 800A86E8 000A4528 39 69 F6 35 */ addi r11, r9, -0x9cb /* 800A86EC 000A452C A1 5D 00 06 */ lhz r10, 0x6(r29) /* 800A86F0 000A4530 3C A0 00 08 */ lis r5, 0x8 /* 800A86F4 000A4534 39 27 41 93 */ addi r9, r7, 0x4193 /* 800A86F8 000A4538 38 E5 B9 29 */ addi r7, r5, -0x46d7 /* 800A86FC 000A453C 3C A4 00 05 */ addis r5, r4, 0x5 /* 800A8700 000A4540 55 84 07 BD */ rlwinm. r4, r12, 0, 30, 30 /* 800A8704 000A4544 38 85 BF 53 */ addi r4, r5, -0x40ad /* 800A8708 000A4548 7C C6 39 D6 */ mullw r6, r6, r7 /* 800A870C 000A454C 7D 7F 59 D6 */ mullw r11, r31, r11 /* 800A8710 000A4550 7C 86 22 14 */ add r4, r6, r4 /* 800A8714 000A4554 7C AA 49 D6 */ mullw r5, r10, r9 /* 800A8718 000A4558 7C AB 2A 14 */ add r5, r11, r5 /* 800A871C 000A455C 7C 85 22 14 */ add r4, r5, r4 /* 800A8720 000A4560 90 81 00 18 */ stw r4, 0x18(r1) /* 800A8724 000A4564 88 C1 00 1A */ lbz r6, 0x1a(r1) /* 800A8728 000A4568 88 81 00 1B */ lbz r4, 0x1b(r1) /* 800A872C 000A456C 88 A1 00 19 */ lbz r5, 0x19(r1) /* 800A8730 000A4570 7C C6 22 78 */ xor r6, r6, r4 /* 800A8734 000A4574 88 81 00 18 */ lbz r4, 0x18(r1) /* 800A8738 000A4578 7C A5 32 78 */ xor r5, r5, r6 /* 800A873C 000A457C 98 C1 00 1A */ stb r6, 0x1a(r1) /* 800A8740 000A4580 7C 84 2A 78 */ xor r4, r4, r5 /* 800A8744 000A4584 98 A1 00 19 */ stb r5, 0x19(r1) /* 800A8748 000A4588 98 81 00 18 */ stb r4, 0x18(r1) /* 800A874C 000A458C 80 E1 00 18 */ lwz r7, 0x18(r1) /* 800A8750 000A4590 40 82 00 14 */ bne lbl_800A8764 /* 800A8754 000A4594 7C 03 01 D6 */ mullw r0, r3, r0 /* 800A8758 000A4598 7C 79 02 14 */ add r3, r25, r0 /* 800A875C 000A459C 38 83 00 04 */ addi r4, r3, 0x4 /* 800A8760 000A45A0 48 00 00 38 */ b lbl_800A8798 .global lbl_800A8764 lbl_800A8764: /* 800A8764 000A45A4 A0 B8 00 00 */ lhz r5, 0x0(r24) /* 800A8768 000A45A8 54 E6 84 3E */ srwi r6, r7, 16 /* 800A876C 000A45AC 3C 60 00 03 */ lis r3, 0x3 /* 800A8770 000A45B0 7C 86 2B 96 */ divwu r4, r6, r5 /* 800A8774 000A45B4 38 63 43 FD */ addi r3, r3, 0x43fd /* 800A8778 000A45B8 7C 84 29 D6 */ mullw r4, r4, r5 /* 800A877C 000A45BC 7C 84 30 50 */ subf r4, r4, r6 /* 800A8780 000A45C0 7C 00 21 D6 */ mullw r0, r0, r4 /* 800A8784 000A45C4 7C 67 19 D6 */ mullw r3, r7, r3 /* 800A8788 000A45C8 7C 98 02 14 */ add r4, r24, r0 /* 800A878C 000A45CC 38 84 00 04 */ addi r4, r4, 0x4 /* 800A8790 000A45D0 3C E3 00 27 */ addis r7, r3, 0x27 /* 800A8794 000A45D4 38 E7 9E C3 */ addi r7, r7, -0x613d .global lbl_800A8798 lbl_800A8798: /* 800A8798 000A45D8 3C 60 00 03 */ lis r3, 0x3 /* 800A879C 000A45DC C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A87A0 000A45E0 38 03 43 FD */ addi r0, r3, 0x43fd /* 800A87A4 000A45E4 38 A0 00 01 */ li r5, 0x1 /* 800A87A8 000A45E8 48 00 00 58 */ b lbl_800A8800 /* 800A87AC 000A45EC 60 00 00 00 */ nop .global lbl_800A87B0 lbl_800A87B0: /* 800A87B0 000A45F0 7F 63 28 39 */ and. r3, r27, r5 /* 800A87B4 000A45F4 41 82 00 44 */ beq lbl_800A87F8 /* 800A87B8 000A45F8 54 E3 84 3E */ srwi r3, r7, 16 /* 800A87BC 000A45FC 90 61 00 24 */ stw r3, 0x24(r1) /* 800A87C0 000A4600 C0 44 00 04 */ lfs f2, 0x4(r4) /* 800A87C4 000A4604 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A87C8 000A4608 C0 64 00 00 */ lfs f3, 0x0(r4) /* 800A87CC 000A460C 38 84 00 08 */ addi r4, r4, 0x8 /* 800A87D0 000A4610 EC 00 08 28 */ fsubs f0, f0, f1 /* 800A87D4 000A4614 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A87D8 000A4618 EC 03 00 2A */ fadds f0, f3, f0 /* 800A87DC 000A461C D0 1E 00 00 */ stfs f0, 0x0(r30) /* 800A87E0 000A4620 88 7D 00 04 */ lbz r3, 0x4(r29) /* 800A87E4 000A4624 54 63 07 7B */ rlwinm. r3, r3, 0, 29, 29 /* 800A87E8 000A4628 40 82 00 10 */ bne lbl_800A87F8 /* 800A87EC 000A462C 7C 67 01 D6 */ mullw r3, r7, r0 /* 800A87F0 000A4630 3C E3 00 27 */ addis r7, r3, 0x27 /* 800A87F4 000A4634 38 E7 9E C3 */ addi r7, r7, -0x613d .global lbl_800A87F8 lbl_800A87F8: /* 800A87F8 000A4638 54 A5 0C 3C */ rlwinm r5, r5, 1, 16, 30 /* 800A87FC 000A463C 3B DE 00 04 */ addi r30, r30, 0x4 .global lbl_800A8800 lbl_800A8800: /* 800A8800 000A4640 7C 05 40 00 */ cmpw r5, r8 /* 800A8804 000A4644 40 81 FF AC */ ble lbl_800A87B0 /* 800A8808 000A4648 48 00 09 74 */ b lbl_800A917C .global lbl_800A880C lbl_800A880C: /* 800A880C 000A464C 89 7D 00 04 */ lbz r11, 0x4(r29) /* 800A8810 000A4650 7C C7 33 78 */ mr r7, r6 /* 800A8814 000A4654 55 6A 06 73 */ rlwinm. r10, r11, 0, 25, 25 /* 800A8818 000A4658 41 82 00 6C */ beq lbl_800A8884 /* 800A881C 000A465C 55 6C 06 B5 */ rlwinm. r12, r11, 0, 26, 26 /* 800A8820 000A4660 40 82 00 10 */ bne lbl_800A8830 /* 800A8824 000A4664 89 5D 00 05 */ lbz r10, 0x5(r29) /* 800A8828 000A4668 28 0A 00 01 */ cmplwi r10, 0x1 /* 800A882C 000A466C 40 81 00 58 */ ble lbl_800A8884 .global lbl_800A8830 lbl_800A8830: /* 800A8830 000A4670 54 D6 07 FF */ clrlwi. r22, r6, 31 /* 800A8834 000A4674 40 82 00 34 */ bne lbl_800A8868 /* 800A8838 000A4678 A1 5A 00 00 */ lhz r10, 0x0(r26) /* 800A883C 000A467C 39 65 00 01 */ addi r11, r5, 0x1 /* 800A8840 000A4680 39 4A FF FF */ addi r10, r10, -0x1 /* 800A8844 000A4684 7C 0B 50 00 */ cmpw r11, r10 /* 800A8848 000A4688 41 80 00 20 */ blt lbl_800A8868 /* 800A884C 000A468C 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800A8850 000A4690 40 82 00 14 */ bne lbl_800A8864 /* 800A8854 000A4694 89 5D 00 05 */ lbz r10, 0x5(r29) /* 800A8858 000A4698 39 4A FF FF */ addi r10, r10, -0x1 /* 800A885C 000A469C 7C 06 50 40 */ cmplw r6, r10 /* 800A8860 000A46A0 40 80 00 08 */ bge lbl_800A8868 .global lbl_800A8864 lbl_800A8864: /* 800A8864 000A46A4 38 E6 00 01 */ addi r7, r6, 0x1 .global lbl_800A8868 lbl_800A8868: /* 800A8868 000A46A8 2C 16 00 00 */ cmpwi r22, 0x0 /* 800A886C 000A46AC 41 82 00 18 */ beq lbl_800A8884 /* 800A8870 000A46B0 2C 05 00 00 */ cmpwi r5, 0x0 /* 800A8874 000A46B4 40 82 00 10 */ bne lbl_800A8884 /* 800A8878 000A46B8 2C 06 00 00 */ cmpwi r6, 0x0 /* 800A887C 000A46BC 41 82 00 08 */ beq lbl_800A8884 /* 800A8880 000A46C0 38 C6 00 01 */ addi r6, r6, 0x1 .global lbl_800A8884 lbl_800A8884: /* 800A8884 000A46C4 55 2B 04 3E */ clrlwi r11, r9, 16 /* 800A8888 000A46C8 91 61 00 2C */ stw r11, 0x2c(r1) /* 800A888C 000A46CC 56 EA 04 3E */ clrlwi r10, r23, 16 /* 800A8890 000A46D0 39 25 00 01 */ addi r9, r5, 0x1 /* 800A8894 000A46D4 7D 4B 50 50 */ subf r10, r11, r10 /* 800A8898 000A46D8 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A889C 000A46DC C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A88A0 000A46E0 6D 4A 80 00 */ xoris r10, r10, 0x8000 /* 800A88A4 000A46E4 91 41 00 24 */ stw r10, 0x24(r1) /* 800A88A8 000A46E8 7C A5 19 D6 */ mullw r5, r5, r3 /* 800A88AC 000A46EC EC 40 08 28 */ fsubs f2, f0, f1 /* 800A88B0 000A46F0 C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800A88B4 000A46F4 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A88B8 000A46F8 EC 44 10 28 */ fsubs f2, f4, f2 /* 800A88BC 000A46FC EC 00 08 28 */ fsubs f0, f0, f1 /* 800A88C0 000A4700 7D 29 19 D6 */ mullw r9, r9, r3 /* 800A88C4 000A4704 7D 44 2A 14 */ add r10, r4, r5 /* 800A88C8 000A4708 88 6A 00 02 */ lbz r3, 0x2(r10) /* 800A88CC 000A470C EC 42 00 24 */ fdivs f2, f2, f0 /* 800A88D0 000A4710 38 AA 00 0C */ addi r5, r10, 0xc /* 800A88D4 000A4714 7D 63 00 D0 */ neg r11, r3 /* 800A88D8 000A4718 7D 24 4A 14 */ add r9, r4, r9 /* 800A88DC 000A471C 7D 6B 1B 78 */ or r11, r11, r3 /* 800A88E0 000A4720 88 89 00 02 */ lbz r4, 0x2(r9) /* 800A88E4 000A4724 55 6C 0F FF */ srwi. r12, r11, 31 /* 800A88E8 000A4728 7D 64 00 D0 */ neg r11, r4 /* 800A88EC 000A472C 7D 6B 23 78 */ or r11, r11, r4 /* 800A88F0 000A4730 39 4A 00 04 */ addi r10, r10, 0x4 /* 800A88F4 000A4734 39 29 00 0C */ addi r9, r9, 0xc /* 800A88F8 000A4738 55 6B 0F FE */ srwi r11, r11, 31 /* 800A88FC 000A473C 40 82 01 28 */ bne lbl_800A8A24 /* 800A8900 000A4740 2C 0B 00 00 */ cmpwi r11, 0x0 /* 800A8904 000A4744 40 82 01 20 */ bne lbl_800A8A24 /* 800A8908 000A4748 C0 A2 8A 60 */ lfs f5, "@11367"@sda21(r2) /* 800A890C 000A474C 38 80 00 01 */ li r4, 0x1 /* 800A8910 000A4750 C0 62 8A 68 */ lfs f3, "@11369"@sda21(r2) /* 800A8914 000A4754 C0 22 8A 5C */ lfs f1, "@11366"@sda21(r2) /* 800A8918 000A4758 48 00 01 00 */ b lbl_800A8A18 /* 800A891C 000A475C 60 00 00 00 */ nop .global lbl_800A8920 lbl_800A8920: /* 800A8920 000A4760 7F 60 20 39 */ and. r0, r27, r4 /* 800A8924 000A4764 41 82 00 E8 */ beq lbl_800A8A0C /* 800A8928 000A4768 C0 C9 00 00 */ lfs f6, 0x0(r9) /* 800A892C 000A476C C0 E5 00 00 */ lfs f7, 0x0(r5) /* 800A8930 000A4770 88 6A 00 00 */ lbz r3, 0x0(r10) /* 800A8934 000A4774 FC 07 30 00 */ fcmpu cr0, f7, f6 /* 800A8938 000A4778 40 82 00 08 */ bne lbl_800A8940 /* 800A893C 000A477C 48 00 00 C4 */ b lbl_800A8A00 .global lbl_800A8940 lbl_800A8940: /* 800A8940 000A4780 54 60 07 BF */ clrlwi. r0, r3, 30 /* 800A8944 000A4784 41 82 00 18 */ beq lbl_800A895C /* 800A8948 000A4788 2C 00 00 01 */ cmpwi r0, 0x1 /* 800A894C 000A478C 41 82 00 20 */ beq lbl_800A896C /* 800A8950 000A4790 2C 00 00 02 */ cmpwi r0, 0x2 /* 800A8954 000A4794 41 82 00 AC */ beq lbl_800A8A00 /* 800A8958 000A4798 48 00 00 A4 */ b lbl_800A89FC .global lbl_800A895C lbl_800A895C: /* 800A895C 000A479C EC 06 38 28 */ fsubs f0, f6, f7 /* 800A8960 000A47A0 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8964 000A47A4 EC E7 00 2A */ fadds f7, f7, f0 /* 800A8968 000A47A8 48 00 00 98 */ b lbl_800A8A00 .global lbl_800A896C lbl_800A896C: /* 800A896C 000A47AC 28 03 00 01 */ cmplwi r3, 0x1 /* 800A8970 000A47B0 40 82 00 24 */ bne lbl_800A8994 /* 800A8974 000A47B4 EC 85 00 B2 */ fmuls f4, f5, f2 /* 800A8978 000A47B8 EC 06 38 28 */ fsubs f0, f6, f7 /* 800A897C 000A47BC EC 81 20 28 */ fsubs f4, f1, f4 /* 800A8980 000A47C0 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A8984 000A47C4 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8988 000A47C8 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A898C 000A47CC EC E7 00 2A */ fadds f7, f7, f0 /* 800A8990 000A47D0 48 00 00 70 */ b lbl_800A8A00 .global lbl_800A8994 lbl_800A8994: /* 800A8994 000A47D4 54 60 EF FF */ extrwi. r0, r3, 1, 28 /* 800A8998 000A47D8 40 82 00 0C */ bne lbl_800A89A4 /* 800A899C 000A47DC C1 02 8A 38 */ lfs f8, "@11024"@sda21(r2) /* 800A89A0 000A47E0 48 00 00 08 */ b lbl_800A89A8 .global lbl_800A89A4 lbl_800A89A4: /* 800A89A4 000A47E4 C1 02 8A 64 */ lfs f8, "@11368"@sda21(r2) .global lbl_800A89A8 lbl_800A89A8: /* 800A89A8 000A47E8 54 60 F7 FF */ extrwi. r0, r3, 1, 29 /* 800A89AC 000A47EC 40 82 00 0C */ bne lbl_800A89B8 /* 800A89B0 000A47F0 C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800A89B4 000A47F4 48 00 00 08 */ b lbl_800A89BC .global lbl_800A89B8 lbl_800A89B8: /* 800A89B8 000A47F8 C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800A89BC lbl_800A89BC: /* 800A89BC 000A47FC EC 88 48 2A */ fadds f4, f8, f9 /* 800A89C0 000A4800 EC 03 02 32 */ fmuls f0, f3, f8 /* 800A89C4 000A4804 EC C6 38 28 */ fsubs f6, f6, f7 /* 800A89C8 000A4808 EC 84 28 28 */ fsubs f4, f4, f5 /* 800A89CC 000A480C EC 00 48 28 */ fsubs f0, f0, f9 /* 800A89D0 000A4810 EC C2 01 B2 */ fmuls f6, f2, f6 /* 800A89D4 000A4814 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A89D8 000A4818 EC 01 00 2A */ fadds f0, f1, f0 /* 800A89DC 000A481C EC 82 01 32 */ fmuls f4, f2, f4 /* 800A89E0 000A4820 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A89E4 000A4824 EC 04 00 2A */ fadds f0, f4, f0 /* 800A89E8 000A4828 EC 08 00 2A */ fadds f0, f8, f0 /* 800A89EC 000A482C EC 06 00 32 */ fmuls f0, f6, f0 /* 800A89F0 000A4830 EC E7 00 2A */ fadds f7, f7, f0 /* 800A89F4 000A4834 48 00 00 0C */ b lbl_800A8A00 /* 800A89F8 000A4838 48 00 00 08 */ b lbl_800A8A00 .global lbl_800A89FC lbl_800A89FC: /* 800A89FC 000A483C C0 E2 8A 38 */ lfs f7, "@11024"@sda21(r2) .global lbl_800A8A00 lbl_800A8A00: /* 800A8A00 000A4840 D0 FE 00 00 */ stfs f7, 0x0(r30) /* 800A8A04 000A4844 38 A5 00 04 */ addi r5, r5, 0x4 /* 800A8A08 000A4848 39 29 00 04 */ addi r9, r9, 0x4 .global lbl_800A8A0C lbl_800A8A0C: /* 800A8A0C 000A484C 54 84 0C 3C */ rlwinm r4, r4, 1, 16, 30 /* 800A8A10 000A4850 39 4A 00 01 */ addi r10, r10, 0x1 /* 800A8A14 000A4854 3B DE 00 04 */ addi r30, r30, 0x4 .global lbl_800A8A18 lbl_800A8A18: /* 800A8A18 000A4858 7C 04 40 00 */ cmpw r4, r8 /* 800A8A1C 000A485C 40 81 FF 04 */ ble lbl_800A8920 /* 800A8A20 000A4860 48 00 07 5C */ b lbl_800A917C .global lbl_800A8A24 lbl_800A8A24: /* 800A8A24 000A4864 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800A8A28 000A4868 41 82 02 2C */ beq lbl_800A8C54 /* 800A8A2C 000A486C 2C 0B 00 00 */ cmpwi r11, 0x0 /* 800A8A30 000A4870 40 82 02 24 */ bne lbl_800A8C54 /* 800A8A34 000A4874 3C E0 37 11 */ lis r7, 0x3711 /* 800A8A38 000A4878 A0 85 00 00 */ lhz r4, 0x0(r5) /* 800A8A3C 000A487C 38 A7 97 E7 */ addi r5, r7, -0x6819 /* 800A8A40 000A4880 3E E0 3F 82 */ lis r23, 0x3f82 /* 800A8A44 000A4884 7C A4 29 D6 */ mullw r5, r4, r5 /* 800A8A48 000A4888 3D 60 30 A7 */ lis r11, 0x30a7 /* 800A8A4C 000A488C 3C E0 00 08 */ lis r7, 0x8 /* 800A8A50 000A4890 A1 9D 00 06 */ lhz r12, 0x6(r29) /* 800A8A54 000A4894 3A F7 F6 35 */ addi r23, r23, -0x9cb /* 800A8A58 000A4898 38 E7 B9 29 */ addi r7, r7, -0x46d7 /* 800A8A5C 000A489C 39 6B 41 93 */ addi r11, r11, 0x4193 /* 800A8A60 000A48A0 3C A5 00 05 */ addis r5, r5, 0x5 /* 800A8A64 000A48A4 54 63 07 BD */ rlwinm. r3, r3, 0, 30, 30 /* 800A8A68 000A48A8 38 65 BF 53 */ addi r3, r5, -0x40ad /* 800A8A6C 000A48AC 7C C6 39 D6 */ mullw r6, r6, r7 /* 800A8A70 000A48B0 7E FF B9 D6 */ mullw r23, r31, r23 /* 800A8A74 000A48B4 7C 66 1A 14 */ add r3, r6, r3 /* 800A8A78 000A48B8 7C AC 59 D6 */ mullw r5, r12, r11 /* 800A8A7C 000A48BC 7C B7 2A 14 */ add r5, r23, r5 /* 800A8A80 000A48C0 7C 65 1A 14 */ add r3, r5, r3 /* 800A8A84 000A48C4 90 61 00 14 */ stw r3, 0x14(r1) /* 800A8A88 000A48C8 88 C1 00 16 */ lbz r6, 0x16(r1) /* 800A8A8C 000A48CC 88 61 00 17 */ lbz r3, 0x17(r1) /* 800A8A90 000A48D0 88 A1 00 15 */ lbz r5, 0x15(r1) /* 800A8A94 000A48D4 7C C6 1A 78 */ xor r6, r6, r3 /* 800A8A98 000A48D8 88 61 00 14 */ lbz r3, 0x14(r1) /* 800A8A9C 000A48DC 7C A5 32 78 */ xor r5, r5, r6 /* 800A8AA0 000A48E0 98 C1 00 16 */ stb r6, 0x16(r1) /* 800A8AA4 000A48E4 7C 63 2A 78 */ xor r3, r3, r5 /* 800A8AA8 000A48E8 98 A1 00 15 */ stb r5, 0x15(r1) /* 800A8AAC 000A48EC 98 61 00 14 */ stb r3, 0x14(r1) /* 800A8AB0 000A48F0 80 61 00 14 */ lwz r3, 0x14(r1) /* 800A8AB4 000A48F4 40 82 00 14 */ bne lbl_800A8AC8 /* 800A8AB8 000A48F8 7C 04 01 D6 */ mullw r0, r4, r0 /* 800A8ABC 000A48FC 7C 99 02 14 */ add r4, r25, r0 /* 800A8AC0 000A4900 38 C4 00 04 */ addi r6, r4, 0x4 /* 800A8AC4 000A4904 48 00 00 38 */ b lbl_800A8AFC .global lbl_800A8AC8 lbl_800A8AC8: /* 800A8AC8 000A4908 A0 D8 00 00 */ lhz r6, 0x0(r24) /* 800A8ACC 000A490C 54 67 84 3E */ srwi r7, r3, 16 /* 800A8AD0 000A4910 3C 80 00 03 */ lis r4, 0x3 /* 800A8AD4 000A4914 7C A7 33 96 */ divwu r5, r7, r6 /* 800A8AD8 000A4918 38 84 43 FD */ addi r4, r4, 0x43fd /* 800A8ADC 000A491C 7C A5 31 D6 */ mullw r5, r5, r6 /* 800A8AE0 000A4920 7C A5 38 50 */ subf r5, r5, r7 /* 800A8AE4 000A4924 7C 63 21 D6 */ mullw r3, r3, r4 /* 800A8AE8 000A4928 7C 00 29 D6 */ mullw r0, r0, r5 /* 800A8AEC 000A492C 3C 63 00 27 */ addis r3, r3, 0x27 /* 800A8AF0 000A4930 38 63 9E C3 */ addi r3, r3, -0x613d /* 800A8AF4 000A4934 7C 98 02 14 */ add r4, r24, r0 /* 800A8AF8 000A4938 38 C4 00 04 */ addi r6, r4, 0x4 .global lbl_800A8AFC lbl_800A8AFC: /* 800A8AFC 000A493C C8 E2 8A 40 */ lfd f7, "@11031"@sda21(r2) /* 800A8B00 000A4940 38 E0 00 01 */ li r7, 0x1 /* 800A8B04 000A4944 C0 A2 8A 60 */ lfs f5, "@11367"@sda21(r2) /* 800A8B08 000A4948 3C 80 00 03 */ lis r4, 0x3 /* 800A8B0C 000A494C C0 62 8A 68 */ lfs f3, "@11369"@sda21(r2) /* 800A8B10 000A4950 C0 22 8A 5C */ lfs f1, "@11366"@sda21(r2) /* 800A8B14 000A4954 48 00 01 34 */ b lbl_800A8C48 .global lbl_800A8B18 lbl_800A8B18: /* 800A8B18 000A4958 7F 60 38 39 */ and. r0, r27, r7 /* 800A8B1C 000A495C 41 82 01 20 */ beq lbl_800A8C3C /* 800A8B20 000A4960 54 60 84 3E */ srwi r0, r3, 16 /* 800A8B24 000A4964 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A8B28 000A4968 88 1D 00 04 */ lbz r0, 0x4(r29) /* 800A8B2C 000A496C C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A8B30 000A4970 C0 86 00 04 */ lfs f4, 0x4(r6) /* 800A8B34 000A4974 54 00 07 7B */ rlwinm. r0, r0, 0, 29, 29 /* 800A8B38 000A4978 EC 00 38 28 */ fsubs f0, f0, f7 /* 800A8B3C 000A497C C0 C6 00 00 */ lfs f6, 0x0(r6) /* 800A8B40 000A4980 38 C6 00 08 */ addi r6, r6, 0x8 /* 800A8B44 000A4984 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A8B48 000A4988 ED 46 00 2A */ fadds f10, f6, f0 /* 800A8B4C 000A498C 40 82 00 14 */ bne lbl_800A8B60 /* 800A8B50 000A4990 38 04 43 FD */ addi r0, r4, 0x43fd /* 800A8B54 000A4994 7C 63 01 D6 */ mullw r3, r3, r0 /* 800A8B58 000A4998 3C 63 00 27 */ addis r3, r3, 0x27 /* 800A8B5C 000A499C 38 63 9E C3 */ addi r3, r3, -0x613d .global lbl_800A8B60 lbl_800A8B60: /* 800A8B60 000A49A0 C0 C9 00 00 */ lfs f6, 0x0(r9) /* 800A8B64 000A49A4 88 AA 00 00 */ lbz r5, 0x0(r10) /* 800A8B68 000A49A8 FC 0A 30 00 */ fcmpu cr0, f10, f6 /* 800A8B6C 000A49AC 40 82 00 08 */ bne lbl_800A8B74 /* 800A8B70 000A49B0 48 00 00 C4 */ b lbl_800A8C34 .global lbl_800A8B74 lbl_800A8B74: /* 800A8B74 000A49B4 54 A0 07 BF */ clrlwi. r0, r5, 30 /* 800A8B78 000A49B8 41 82 00 18 */ beq lbl_800A8B90 /* 800A8B7C 000A49BC 2C 00 00 01 */ cmpwi r0, 0x1 /* 800A8B80 000A49C0 41 82 00 20 */ beq lbl_800A8BA0 /* 800A8B84 000A49C4 2C 00 00 02 */ cmpwi r0, 0x2 /* 800A8B88 000A49C8 41 82 00 AC */ beq lbl_800A8C34 /* 800A8B8C 000A49CC 48 00 00 A4 */ b lbl_800A8C30 .global lbl_800A8B90 lbl_800A8B90: /* 800A8B90 000A49D0 EC 06 50 28 */ fsubs f0, f6, f10 /* 800A8B94 000A49D4 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8B98 000A49D8 ED 4A 00 2A */ fadds f10, f10, f0 /* 800A8B9C 000A49DC 48 00 00 98 */ b lbl_800A8C34 .global lbl_800A8BA0 lbl_800A8BA0: /* 800A8BA0 000A49E0 28 05 00 01 */ cmplwi r5, 0x1 /* 800A8BA4 000A49E4 40 82 00 24 */ bne lbl_800A8BC8 /* 800A8BA8 000A49E8 EC 85 00 B2 */ fmuls f4, f5, f2 /* 800A8BAC 000A49EC EC 06 50 28 */ fsubs f0, f6, f10 /* 800A8BB0 000A49F0 EC 81 20 28 */ fsubs f4, f1, f4 /* 800A8BB4 000A49F4 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A8BB8 000A49F8 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8BBC 000A49FC EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8BC0 000A4A00 ED 4A 00 2A */ fadds f10, f10, f0 /* 800A8BC4 000A4A04 48 00 00 70 */ b lbl_800A8C34 .global lbl_800A8BC8 lbl_800A8BC8: /* 800A8BC8 000A4A08 54 A0 EF FF */ extrwi. r0, r5, 1, 28 /* 800A8BCC 000A4A0C 40 82 00 0C */ bne lbl_800A8BD8 /* 800A8BD0 000A4A10 C1 02 8A 38 */ lfs f8, "@11024"@sda21(r2) /* 800A8BD4 000A4A14 48 00 00 08 */ b lbl_800A8BDC .global lbl_800A8BD8 lbl_800A8BD8: /* 800A8BD8 000A4A18 C1 02 8A 64 */ lfs f8, "@11368"@sda21(r2) .global lbl_800A8BDC lbl_800A8BDC: /* 800A8BDC 000A4A1C 54 A0 F7 FF */ extrwi. r0, r5, 1, 29 /* 800A8BE0 000A4A20 40 82 00 0C */ bne lbl_800A8BEC /* 800A8BE4 000A4A24 C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800A8BE8 000A4A28 48 00 00 08 */ b lbl_800A8BF0 .global lbl_800A8BEC lbl_800A8BEC: /* 800A8BEC 000A4A2C C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800A8BF0 lbl_800A8BF0: /* 800A8BF0 000A4A30 EC 88 48 2A */ fadds f4, f8, f9 /* 800A8BF4 000A4A34 EC 03 02 32 */ fmuls f0, f3, f8 /* 800A8BF8 000A4A38 EC C6 50 28 */ fsubs f6, f6, f10 /* 800A8BFC 000A4A3C EC 84 28 28 */ fsubs f4, f4, f5 /* 800A8C00 000A4A40 EC 00 48 28 */ fsubs f0, f0, f9 /* 800A8C04 000A4A44 EC C2 01 B2 */ fmuls f6, f2, f6 /* 800A8C08 000A4A48 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A8C0C 000A4A4C EC 01 00 2A */ fadds f0, f1, f0 /* 800A8C10 000A4A50 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A8C14 000A4A54 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8C18 000A4A58 EC 04 00 2A */ fadds f0, f4, f0 /* 800A8C1C 000A4A5C EC 08 00 2A */ fadds f0, f8, f0 /* 800A8C20 000A4A60 EC 06 00 32 */ fmuls f0, f6, f0 /* 800A8C24 000A4A64 ED 4A 00 2A */ fadds f10, f10, f0 /* 800A8C28 000A4A68 48 00 00 0C */ b lbl_800A8C34 /* 800A8C2C 000A4A6C 48 00 00 08 */ b lbl_800A8C34 .global lbl_800A8C30 lbl_800A8C30: /* 800A8C30 000A4A70 C1 42 8A 38 */ lfs f10, "@11024"@sda21(r2) .global lbl_800A8C34 lbl_800A8C34: /* 800A8C34 000A4A74 D1 5E 00 00 */ stfs f10, 0x0(r30) /* 800A8C38 000A4A78 39 29 00 04 */ addi r9, r9, 0x4 .global lbl_800A8C3C lbl_800A8C3C: /* 800A8C3C 000A4A7C 54 E7 0C 3C */ rlwinm r7, r7, 1, 16, 30 /* 800A8C40 000A4A80 39 4A 00 01 */ addi r10, r10, 0x1 /* 800A8C44 000A4A84 3B DE 00 04 */ addi r30, r30, 0x4 .global lbl_800A8C48 lbl_800A8C48: /* 800A8C48 000A4A88 7C 07 40 00 */ cmpw r7, r8 /* 800A8C4C 000A4A8C 40 81 FE CC */ ble lbl_800A8B18 /* 800A8C50 000A4A90 48 00 05 2C */ b lbl_800A917C .global lbl_800A8C54 lbl_800A8C54: /* 800A8C54 000A4A94 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800A8C58 000A4A98 40 82 02 2C */ bne lbl_800A8E84 /* 800A8C5C 000A4A9C 2C 0B 00 00 */ cmpwi r11, 0x0 /* 800A8C60 000A4AA0 41 82 02 24 */ beq lbl_800A8E84 /* 800A8C64 000A4AA4 3C C0 37 11 */ lis r6, 0x3711 /* 800A8C68 000A4AA8 A0 69 00 00 */ lhz r3, 0x0(r9) /* 800A8C6C 000A4AAC 38 C6 97 E7 */ addi r6, r6, -0x6819 /* 800A8C70 000A4AB0 3E E0 3F 82 */ lis r23, 0x3f82 /* 800A8C74 000A4AB4 7C C3 31 D6 */ mullw r6, r3, r6 /* 800A8C78 000A4AB8 3D 60 30 A7 */ lis r11, 0x30a7 /* 800A8C7C 000A4ABC 3D 20 00 08 */ lis r9, 0x8 /* 800A8C80 000A4AC0 A1 9D 00 06 */ lhz r12, 0x6(r29) /* 800A8C84 000A4AC4 3A F7 F6 35 */ addi r23, r23, -0x9cb /* 800A8C88 000A4AC8 39 29 B9 29 */ addi r9, r9, -0x46d7 /* 800A8C8C 000A4ACC 39 6B 41 93 */ addi r11, r11, 0x4193 /* 800A8C90 000A4AD0 3C C6 00 05 */ addis r6, r6, 0x5 /* 800A8C94 000A4AD4 54 84 07 BD */ rlwinm. r4, r4, 0, 30, 30 /* 800A8C98 000A4AD8 38 86 BF 53 */ addi r4, r6, -0x40ad /* 800A8C9C 000A4ADC 7C E7 49 D6 */ mullw r7, r7, r9 /* 800A8CA0 000A4AE0 7E FF B9 D6 */ mullw r23, r31, r23 /* 800A8CA4 000A4AE4 7C 87 22 14 */ add r4, r7, r4 /* 800A8CA8 000A4AE8 7C CC 59 D6 */ mullw r6, r12, r11 /* 800A8CAC 000A4AEC 7C D7 32 14 */ add r6, r23, r6 /* 800A8CB0 000A4AF0 7C 86 22 14 */ add r4, r6, r4 /* 800A8CB4 000A4AF4 90 81 00 10 */ stw r4, 0x10(r1) /* 800A8CB8 000A4AF8 88 E1 00 12 */ lbz r7, 0x12(r1) /* 800A8CBC 000A4AFC 88 81 00 13 */ lbz r4, 0x13(r1) /* 800A8CC0 000A4B00 88 C1 00 11 */ lbz r6, 0x11(r1) /* 800A8CC4 000A4B04 7C E7 22 78 */ xor r7, r7, r4 /* 800A8CC8 000A4B08 88 81 00 10 */ lbz r4, 0x10(r1) /* 800A8CCC 000A4B0C 7C C6 3A 78 */ xor r6, r6, r7 /* 800A8CD0 000A4B10 98 E1 00 12 */ stb r7, 0x12(r1) /* 800A8CD4 000A4B14 7C 84 32 78 */ xor r4, r4, r6 /* 800A8CD8 000A4B18 98 C1 00 11 */ stb r6, 0x11(r1) /* 800A8CDC 000A4B1C 98 81 00 10 */ stb r4, 0x10(r1) /* 800A8CE0 000A4B20 80 81 00 10 */ lwz r4, 0x10(r1) /* 800A8CE4 000A4B24 40 82 00 14 */ bne lbl_800A8CF8 /* 800A8CE8 000A4B28 7C 03 01 D6 */ mullw r0, r3, r0 /* 800A8CEC 000A4B2C 7C 79 02 14 */ add r3, r25, r0 /* 800A8CF0 000A4B30 38 E3 00 04 */ addi r7, r3, 0x4 /* 800A8CF4 000A4B34 48 00 00 38 */ b lbl_800A8D2C .global lbl_800A8CF8 lbl_800A8CF8: /* 800A8CF8 000A4B38 A0 F8 00 00 */ lhz r7, 0x0(r24) /* 800A8CFC 000A4B3C 54 89 84 3E */ srwi r9, r4, 16 /* 800A8D00 000A4B40 3C 60 00 03 */ lis r3, 0x3 /* 800A8D04 000A4B44 7C C9 3B 96 */ divwu r6, r9, r7 /* 800A8D08 000A4B48 38 63 43 FD */ addi r3, r3, 0x43fd /* 800A8D0C 000A4B4C 7C C6 39 D6 */ mullw r6, r6, r7 /* 800A8D10 000A4B50 7C C6 48 50 */ subf r6, r6, r9 /* 800A8D14 000A4B54 7C 00 31 D6 */ mullw r0, r0, r6 /* 800A8D18 000A4B58 7C 64 19 D6 */ mullw r3, r4, r3 /* 800A8D1C 000A4B5C 7C 98 02 14 */ add r4, r24, r0 /* 800A8D20 000A4B60 38 E4 00 04 */ addi r7, r4, 0x4 /* 800A8D24 000A4B64 3C 83 00 27 */ addis r4, r3, 0x27 /* 800A8D28 000A4B68 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A8D2C lbl_800A8D2C: /* 800A8D2C 000A4B6C C8 E2 8A 40 */ lfd f7, "@11031"@sda21(r2) /* 800A8D30 000A4B70 39 20 00 01 */ li r9, 0x1 /* 800A8D34 000A4B74 C0 A2 8A 60 */ lfs f5, "@11367"@sda21(r2) /* 800A8D38 000A4B78 3C C0 00 03 */ lis r6, 0x3 /* 800A8D3C 000A4B7C C0 62 8A 68 */ lfs f3, "@11369"@sda21(r2) /* 800A8D40 000A4B80 C0 22 8A 5C */ lfs f1, "@11366"@sda21(r2) /* 800A8D44 000A4B84 48 00 01 34 */ b lbl_800A8E78 .global lbl_800A8D48 lbl_800A8D48: /* 800A8D48 000A4B88 7F 60 48 39 */ and. r0, r27, r9 /* 800A8D4C 000A4B8C 41 82 01 20 */ beq lbl_800A8E6C /* 800A8D50 000A4B90 54 80 84 3E */ srwi r0, r4, 16 /* 800A8D54 000A4B94 90 01 00 24 */ stw r0, 0x24(r1) /* 800A8D58 000A4B98 88 1D 00 04 */ lbz r0, 0x4(r29) /* 800A8D5C 000A4B9C C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A8D60 000A4BA0 C0 87 00 04 */ lfs f4, 0x4(r7) /* 800A8D64 000A4BA4 54 00 07 7B */ rlwinm. r0, r0, 0, 29, 29 /* 800A8D68 000A4BA8 EC 00 38 28 */ fsubs f0, f0, f7 /* 800A8D6C 000A4BAC C0 C7 00 00 */ lfs f6, 0x0(r7) /* 800A8D70 000A4BB0 38 E7 00 08 */ addi r7, r7, 0x8 /* 800A8D74 000A4BB4 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A8D78 000A4BB8 EC C6 00 2A */ fadds f6, f6, f0 /* 800A8D7C 000A4BBC 40 82 00 14 */ bne lbl_800A8D90 /* 800A8D80 000A4BC0 38 06 43 FD */ addi r0, r6, 0x43fd /* 800A8D84 000A4BC4 7C 64 01 D6 */ mullw r3, r4, r0 /* 800A8D88 000A4BC8 3C 83 00 27 */ addis r4, r3, 0x27 /* 800A8D8C 000A4BCC 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A8D90 lbl_800A8D90: /* 800A8D90 000A4BD0 C1 05 00 00 */ lfs f8, 0x0(r5) /* 800A8D94 000A4BD4 88 6A 00 00 */ lbz r3, 0x0(r10) /* 800A8D98 000A4BD8 FC 08 30 00 */ fcmpu cr0, f8, f6 /* 800A8D9C 000A4BDC 40 82 00 08 */ bne lbl_800A8DA4 /* 800A8DA0 000A4BE0 48 00 00 C4 */ b lbl_800A8E64 .global lbl_800A8DA4 lbl_800A8DA4: /* 800A8DA4 000A4BE4 54 60 07 BF */ clrlwi. r0, r3, 30 /* 800A8DA8 000A4BE8 41 82 00 18 */ beq lbl_800A8DC0 /* 800A8DAC 000A4BEC 2C 00 00 01 */ cmpwi r0, 0x1 /* 800A8DB0 000A4BF0 41 82 00 20 */ beq lbl_800A8DD0 /* 800A8DB4 000A4BF4 2C 00 00 02 */ cmpwi r0, 0x2 /* 800A8DB8 000A4BF8 41 82 00 AC */ beq lbl_800A8E64 /* 800A8DBC 000A4BFC 48 00 00 A4 */ b lbl_800A8E60 .global lbl_800A8DC0 lbl_800A8DC0: /* 800A8DC0 000A4C00 EC 06 40 28 */ fsubs f0, f6, f8 /* 800A8DC4 000A4C04 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8DC8 000A4C08 ED 08 00 2A */ fadds f8, f8, f0 /* 800A8DCC 000A4C0C 48 00 00 98 */ b lbl_800A8E64 .global lbl_800A8DD0 lbl_800A8DD0: /* 800A8DD0 000A4C10 28 03 00 01 */ cmplwi r3, 0x1 /* 800A8DD4 000A4C14 40 82 00 24 */ bne lbl_800A8DF8 /* 800A8DD8 000A4C18 EC 85 00 B2 */ fmuls f4, f5, f2 /* 800A8DDC 000A4C1C EC 06 40 28 */ fsubs f0, f6, f8 /* 800A8DE0 000A4C20 EC 81 20 28 */ fsubs f4, f1, f4 /* 800A8DE4 000A4C24 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A8DE8 000A4C28 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8DEC 000A4C2C EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8DF0 000A4C30 ED 08 00 2A */ fadds f8, f8, f0 /* 800A8DF4 000A4C34 48 00 00 70 */ b lbl_800A8E64 .global lbl_800A8DF8 lbl_800A8DF8: /* 800A8DF8 000A4C38 54 60 EF FF */ extrwi. r0, r3, 1, 28 /* 800A8DFC 000A4C3C 40 82 00 0C */ bne lbl_800A8E08 /* 800A8E00 000A4C40 C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800A8E04 000A4C44 48 00 00 08 */ b lbl_800A8E0C .global lbl_800A8E08 lbl_800A8E08: /* 800A8E08 000A4C48 C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800A8E0C lbl_800A8E0C: /* 800A8E0C 000A4C4C 54 60 F7 FF */ extrwi. r0, r3, 1, 29 /* 800A8E10 000A4C50 40 82 00 0C */ bne lbl_800A8E1C /* 800A8E14 000A4C54 C1 42 8A 38 */ lfs f10, "@11024"@sda21(r2) /* 800A8E18 000A4C58 48 00 00 08 */ b lbl_800A8E20 .global lbl_800A8E1C lbl_800A8E1C: /* 800A8E1C 000A4C5C C1 42 8A 64 */ lfs f10, "@11368"@sda21(r2) .global lbl_800A8E20 lbl_800A8E20: /* 800A8E20 000A4C60 EC 89 50 2A */ fadds f4, f9, f10 /* 800A8E24 000A4C64 EC 03 02 72 */ fmuls f0, f3, f9 /* 800A8E28 000A4C68 EC C6 40 28 */ fsubs f6, f6, f8 /* 800A8E2C 000A4C6C EC 84 28 28 */ fsubs f4, f4, f5 /* 800A8E30 000A4C70 EC 00 50 28 */ fsubs f0, f0, f10 /* 800A8E34 000A4C74 EC C2 01 B2 */ fmuls f6, f2, f6 /* 800A8E38 000A4C78 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A8E3C 000A4C7C EC 01 00 2A */ fadds f0, f1, f0 /* 800A8E40 000A4C80 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A8E44 000A4C84 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A8E48 000A4C88 EC 04 00 2A */ fadds f0, f4, f0 /* 800A8E4C 000A4C8C EC 09 00 2A */ fadds f0, f9, f0 /* 800A8E50 000A4C90 EC 06 00 32 */ fmuls f0, f6, f0 /* 800A8E54 000A4C94 ED 08 00 2A */ fadds f8, f8, f0 /* 800A8E58 000A4C98 48 00 00 0C */ b lbl_800A8E64 /* 800A8E5C 000A4C9C 48 00 00 08 */ b lbl_800A8E64 .global lbl_800A8E60 lbl_800A8E60: /* 800A8E60 000A4CA0 C1 02 8A 38 */ lfs f8, "@11024"@sda21(r2) .global lbl_800A8E64 lbl_800A8E64: /* 800A8E64 000A4CA4 D1 1E 00 00 */ stfs f8, 0x0(r30) /* 800A8E68 000A4CA8 38 A5 00 04 */ addi r5, r5, 0x4 .global lbl_800A8E6C lbl_800A8E6C: /* 800A8E6C 000A4CAC 55 29 0C 3C */ rlwinm r9, r9, 1, 16, 30 /* 800A8E70 000A4CB0 39 4A 00 01 */ addi r10, r10, 0x1 /* 800A8E74 000A4CB4 3B DE 00 04 */ addi r30, r30, 0x4 .global lbl_800A8E78 lbl_800A8E78: /* 800A8E78 000A4CB8 7C 09 40 00 */ cmpw r9, r8 /* 800A8E7C 000A4CBC 40 81 FE CC */ ble lbl_800A8D48 /* 800A8E80 000A4CC0 48 00 02 FC */ b lbl_800A917C .global lbl_800A8E84 lbl_800A8E84: /* 800A8E84 000A4CC4 3D 60 3F 82 */ lis r11, 0x3f82 /* 800A8E88 000A4CC8 3E E0 30 A7 */ lis r23, 0x30a7 /* 800A8E8C 000A4CCC 3B 8B F6 35 */ addi r28, r11, -0x9cb /* 800A8E90 000A4CD0 3D 80 00 08 */ lis r12, 0x8 /* 800A8E94 000A4CD4 3D 60 37 11 */ lis r11, 0x3711 /* 800A8E98 000A4CD8 A3 5D 00 06 */ lhz r26, 0x6(r29) /* 800A8E9C 000A4CDC 39 8C B9 29 */ addi r12, r12, -0x46d7 /* 800A8EA0 000A4CE0 3A F7 41 93 */ addi r23, r23, 0x4193 /* 800A8EA4 000A4CE4 54 63 07 BD */ rlwinm. r3, r3, 0, 30, 30 /* 800A8EA8 000A4CE8 A0 A5 00 00 */ lhz r5, 0x0(r5) /* 800A8EAC 000A4CEC 39 6B 97 E7 */ addi r11, r11, -0x6819 /* 800A8EB0 000A4CF0 7D 65 59 D6 */ mullw r11, r5, r11 /* 800A8EB4 000A4CF4 7F 9F E1 D6 */ mullw r28, r31, r28 /* 800A8EB8 000A4CF8 3D 6B 00 05 */ addis r11, r11, 0x5 /* 800A8EBC 000A4CFC 7C 7A B9 D6 */ mullw r3, r26, r23 /* 800A8EC0 000A4D00 7C C6 61 D6 */ mullw r6, r6, r12 /* 800A8EC4 000A4D04 7C 7C 1A 14 */ add r3, r28, r3 /* 800A8EC8 000A4D08 7C C6 1A 14 */ add r6, r6, r3 /* 800A8ECC 000A4D0C 7C C6 5A 14 */ add r6, r6, r11 /* 800A8ED0 000A4D10 38 C6 BF 53 */ addi r6, r6, -0x40ad /* 800A8ED4 000A4D14 90 C1 00 0C */ stw r6, 0xc(r1) /* 800A8ED8 000A4D18 89 81 00 0E */ lbz r12, 0xe(r1) /* 800A8EDC 000A4D1C 88 C1 00 0F */ lbz r6, 0xf(r1) /* 800A8EE0 000A4D20 89 61 00 0D */ lbz r11, 0xd(r1) /* 800A8EE4 000A4D24 7D 8C 32 78 */ xor r12, r12, r6 /* 800A8EE8 000A4D28 88 C1 00 0C */ lbz r6, 0xc(r1) /* 800A8EEC 000A4D2C 7D 6B 62 78 */ xor r11, r11, r12 /* 800A8EF0 000A4D30 99 81 00 0E */ stb r12, 0xe(r1) /* 800A8EF4 000A4D34 7C C6 5A 78 */ xor r6, r6, r11 /* 800A8EF8 000A4D38 99 61 00 0D */ stb r11, 0xd(r1) /* 800A8EFC 000A4D3C 98 C1 00 0C */ stb r6, 0xc(r1) /* 800A8F00 000A4D40 80 C1 00 0C */ lwz r6, 0xc(r1) /* 800A8F04 000A4D44 40 82 00 14 */ bne lbl_800A8F18 /* 800A8F08 000A4D48 7C A5 01 D6 */ mullw r5, r5, r0 /* 800A8F0C 000A4D4C 7C B9 2A 14 */ add r5, r25, r5 /* 800A8F10 000A4D50 39 65 00 04 */ addi r11, r5, 0x4 /* 800A8F14 000A4D54 48 00 00 38 */ b lbl_800A8F4C .global lbl_800A8F18 lbl_800A8F18: /* 800A8F18 000A4D58 A1 98 00 00 */ lhz r12, 0x0(r24) /* 800A8F1C 000A4D5C 54 D7 84 3E */ srwi r23, r6, 16 /* 800A8F20 000A4D60 3C A0 00 03 */ lis r5, 0x3 /* 800A8F24 000A4D64 7D 77 63 96 */ divwu r11, r23, r12 /* 800A8F28 000A4D68 38 A5 43 FD */ addi r5, r5, 0x43fd /* 800A8F2C 000A4D6C 7D 6B 61 D6 */ mullw r11, r11, r12 /* 800A8F30 000A4D70 7D 6B B8 50 */ subf r11, r11, r23 /* 800A8F34 000A4D74 7D 60 59 D6 */ mullw r11, r0, r11 /* 800A8F38 000A4D78 7C A6 29 D6 */ mullw r5, r6, r5 /* 800A8F3C 000A4D7C 7C D8 5A 14 */ add r6, r24, r11 /* 800A8F40 000A4D80 39 66 00 04 */ addi r11, r6, 0x4 /* 800A8F44 000A4D84 3C C5 00 27 */ addis r6, r5, 0x27 /* 800A8F48 000A4D88 38 C6 9E C3 */ addi r6, r6, -0x613d .global lbl_800A8F4C lbl_800A8F4C: /* 800A8F4C 000A4D8C 3C A0 00 08 */ lis r5, 0x8 /* 800A8F50 000A4D90 3D 80 37 11 */ lis r12, 0x3711 /* 800A8F54 000A4D94 3A E5 B9 29 */ addi r23, r5, -0x46d7 /* 800A8F58 000A4D98 A0 A9 00 00 */ lhz r5, 0x0(r9) /* 800A8F5C 000A4D9C 39 2C 97 E7 */ addi r9, r12, -0x6819 /* 800A8F60 000A4DA0 54 84 07 BD */ rlwinm. r4, r4, 0, 30, 30 /* 800A8F64 000A4DA4 7C E7 B9 D6 */ mullw r7, r7, r23 /* 800A8F68 000A4DA8 7C 85 49 D6 */ mullw r4, r5, r9 /* 800A8F6C 000A4DAC 7C 67 1A 14 */ add r3, r7, r3 /* 800A8F70 000A4DB0 3C 84 00 05 */ addis r4, r4, 0x5 /* 800A8F74 000A4DB4 7C 63 22 14 */ add r3, r3, r4 /* 800A8F78 000A4DB8 38 63 BF 53 */ addi r3, r3, -0x40ad /* 800A8F7C 000A4DBC 90 61 00 08 */ stw r3, 0x8(r1) /* 800A8F80 000A4DC0 88 E1 00 0A */ lbz r7, 0xa(r1) /* 800A8F84 000A4DC4 88 61 00 0B */ lbz r3, 0xb(r1) /* 800A8F88 000A4DC8 88 81 00 09 */ lbz r4, 0x9(r1) /* 800A8F8C 000A4DCC 7C E7 1A 78 */ xor r7, r7, r3 /* 800A8F90 000A4DD0 88 61 00 08 */ lbz r3, 0x8(r1) /* 800A8F94 000A4DD4 7C 84 3A 78 */ xor r4, r4, r7 /* 800A8F98 000A4DD8 98 E1 00 0A */ stb r7, 0xa(r1) /* 800A8F9C 000A4DDC 7C 63 22 78 */ xor r3, r3, r4 /* 800A8FA0 000A4DE0 98 81 00 09 */ stb r4, 0x9(r1) /* 800A8FA4 000A4DE4 98 61 00 08 */ stb r3, 0x8(r1) /* 800A8FA8 000A4DE8 80 61 00 08 */ lwz r3, 0x8(r1) /* 800A8FAC 000A4DEC 40 82 00 14 */ bne lbl_800A8FC0 /* 800A8FB0 000A4DF0 7C 05 01 D6 */ mullw r0, r5, r0 /* 800A8FB4 000A4DF4 7C 99 02 14 */ add r4, r25, r0 /* 800A8FB8 000A4DF8 39 24 00 04 */ addi r9, r4, 0x4 /* 800A8FBC 000A4DFC 48 00 00 38 */ b lbl_800A8FF4 .global lbl_800A8FC0 lbl_800A8FC0: /* 800A8FC0 000A4E00 A0 F8 00 00 */ lhz r7, 0x0(r24) /* 800A8FC4 000A4E04 54 69 84 3E */ srwi r9, r3, 16 /* 800A8FC8 000A4E08 3C 80 00 03 */ lis r4, 0x3 /* 800A8FCC 000A4E0C 7C A9 3B 96 */ divwu r5, r9, r7 /* 800A8FD0 000A4E10 38 84 43 FD */ addi r4, r4, 0x43fd /* 800A8FD4 000A4E14 7C A5 39 D6 */ mullw r5, r5, r7 /* 800A8FD8 000A4E18 7C A5 48 50 */ subf r5, r5, r9 /* 800A8FDC 000A4E1C 7C 63 21 D6 */ mullw r3, r3, r4 /* 800A8FE0 000A4E20 7C 00 29 D6 */ mullw r0, r0, r5 /* 800A8FE4 000A4E24 3C 63 00 27 */ addis r3, r3, 0x27 /* 800A8FE8 000A4E28 38 63 9E C3 */ addi r3, r3, -0x613d /* 800A8FEC 000A4E2C 7C 98 02 14 */ add r4, r24, r0 /* 800A8FF0 000A4E30 39 24 00 04 */ addi r9, r4, 0x4 .global lbl_800A8FF4 lbl_800A8FF4: /* 800A8FF4 000A4E34 C8 02 8A 40 */ lfd f0, "@11031"@sda21(r2) /* 800A8FF8 000A4E38 39 80 00 01 */ li r12, 0x1 /* 800A8FFC 000A4E3C C0 E2 8A 60 */ lfs f7, "@11367"@sda21(r2) /* 800A9000 000A4E40 3C A0 00 03 */ lis r5, 0x3 /* 800A9004 000A4E44 C0 A2 8A 68 */ lfs f5, "@11369"@sda21(r2) /* 800A9008 000A4E48 C0 82 8A 5C */ lfs f4, "@11366"@sda21(r2) /* 800A900C 000A4E4C 48 00 01 68 */ b lbl_800A9174 .global lbl_800A9010 lbl_800A9010: /* 800A9010 000A4E50 7F 60 60 39 */ and. r0, r27, r12 /* 800A9014 000A4E54 41 82 01 54 */ beq lbl_800A9168 /* 800A9018 000A4E58 54 C0 84 3E */ srwi r0, r6, 16 /* 800A901C 000A4E5C 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A9020 000A4E60 88 1D 00 04 */ lbz r0, 0x4(r29) /* 800A9024 000A4E64 C8 21 00 28 */ lfd f1, 0x28(r1) /* 800A9028 000A4E68 C0 6B 00 04 */ lfs f3, 0x4(r11) /* 800A902C 000A4E6C 54 07 07 7B */ rlwinm. r7, r0, 0, 29, 29 /* 800A9030 000A4E70 EC 21 00 28 */ fsubs f1, f1, f0 /* 800A9034 000A4E74 C0 CB 00 00 */ lfs f6, 0x0(r11) /* 800A9038 000A4E78 39 6B 00 08 */ addi r11, r11, 0x8 /* 800A903C 000A4E7C EC 23 00 72 */ fmuls f1, f3, f1 /* 800A9040 000A4E80 EC 26 08 2A */ fadds f1, f6, f1 /* 800A9044 000A4E84 40 82 00 14 */ bne lbl_800A9058 /* 800A9048 000A4E88 38 05 43 FD */ addi r0, r5, 0x43fd /* 800A904C 000A4E8C 7C 86 01 D6 */ mullw r4, r6, r0 /* 800A9050 000A4E90 3C C4 00 27 */ addis r6, r4, 0x27 /* 800A9054 000A4E94 38 C6 9E C3 */ addi r6, r6, -0x613d .global lbl_800A9058 lbl_800A9058: /* 800A9058 000A4E98 54 60 84 3E */ srwi r0, r3, 16 /* 800A905C 000A4E9C 90 01 00 24 */ stw r0, 0x24(r1) /* 800A9060 000A4EA0 C0 C9 00 04 */ lfs f6, 0x4(r9) /* 800A9064 000A4EA4 2C 07 00 00 */ cmpwi r7, 0x0 /* 800A9068 000A4EA8 C8 61 00 20 */ lfd f3, 0x20(r1) /* 800A906C 000A4EAC C1 09 00 00 */ lfs f8, 0x0(r9) /* 800A9070 000A4EB0 39 29 00 08 */ addi r9, r9, 0x8 /* 800A9074 000A4EB4 EC 63 00 28 */ fsubs f3, f3, f0 /* 800A9078 000A4EB8 EC 66 00 F2 */ fmuls f3, f6, f3 /* 800A907C 000A4EBC ED 08 18 2A */ fadds f8, f8, f3 /* 800A9080 000A4EC0 40 82 00 14 */ bne lbl_800A9094 /* 800A9084 000A4EC4 38 05 43 FD */ addi r0, r5, 0x43fd /* 800A9088 000A4EC8 7C 63 01 D6 */ mullw r3, r3, r0 /* 800A908C 000A4ECC 3C 63 00 27 */ addis r3, r3, 0x27 /* 800A9090 000A4ED0 38 63 9E C3 */ addi r3, r3, -0x613d .global lbl_800A9094 lbl_800A9094: /* 800A9094 000A4ED4 FC 01 40 00 */ fcmpu cr0, f1, f8 /* 800A9098 000A4ED8 88 8A 00 00 */ lbz r4, 0x0(r10) /* 800A909C 000A4EDC 40 82 00 08 */ bne lbl_800A90A4 /* 800A90A0 000A4EE0 48 00 00 C4 */ b lbl_800A9164 .global lbl_800A90A4 lbl_800A90A4: /* 800A90A4 000A4EE4 54 80 07 BF */ clrlwi. r0, r4, 30 /* 800A90A8 000A4EE8 41 82 00 18 */ beq lbl_800A90C0 /* 800A90AC 000A4EEC 2C 00 00 01 */ cmpwi r0, 0x1 /* 800A90B0 000A4EF0 41 82 00 20 */ beq lbl_800A90D0 /* 800A90B4 000A4EF4 2C 00 00 02 */ cmpwi r0, 0x2 /* 800A90B8 000A4EF8 41 82 00 AC */ beq lbl_800A9164 /* 800A90BC 000A4EFC 48 00 00 A4 */ b lbl_800A9160 .global lbl_800A90C0 lbl_800A90C0: /* 800A90C0 000A4F00 EC 68 08 28 */ fsubs f3, f8, f1 /* 800A90C4 000A4F04 EC 62 00 F2 */ fmuls f3, f2, f3 /* 800A90C8 000A4F08 EC 21 18 2A */ fadds f1, f1, f3 /* 800A90CC 000A4F0C 48 00 00 98 */ b lbl_800A9164 .global lbl_800A90D0 lbl_800A90D0: /* 800A90D0 000A4F10 28 04 00 01 */ cmplwi r4, 0x1 /* 800A90D4 000A4F14 40 82 00 24 */ bne lbl_800A90F8 /* 800A90D8 000A4F18 EC C7 00 B2 */ fmuls f6, f7, f2 /* 800A90DC 000A4F1C EC 68 08 28 */ fsubs f3, f8, f1 /* 800A90E0 000A4F20 EC C4 30 28 */ fsubs f6, f4, f6 /* 800A90E4 000A4F24 EC 66 00 F2 */ fmuls f3, f6, f3 /* 800A90E8 000A4F28 EC 62 00 F2 */ fmuls f3, f2, f3 /* 800A90EC 000A4F2C EC 62 00 F2 */ fmuls f3, f2, f3 /* 800A90F0 000A4F30 EC 21 18 2A */ fadds f1, f1, f3 /* 800A90F4 000A4F34 48 00 00 70 */ b lbl_800A9164 .global lbl_800A90F8 lbl_800A90F8: /* 800A90F8 000A4F38 54 80 EF FF */ extrwi. r0, r4, 1, 28 /* 800A90FC 000A4F3C 40 82 00 0C */ bne lbl_800A9108 /* 800A9100 000A4F40 C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800A9104 000A4F44 48 00 00 08 */ b lbl_800A910C .global lbl_800A9108 lbl_800A9108: /* 800A9108 000A4F48 C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800A910C lbl_800A910C: /* 800A910C 000A4F4C 54 80 F7 FF */ extrwi. r0, r4, 1, 29 /* 800A9110 000A4F50 40 82 00 0C */ bne lbl_800A911C /* 800A9114 000A4F54 C1 42 8A 38 */ lfs f10, "@11024"@sda21(r2) /* 800A9118 000A4F58 48 00 00 08 */ b lbl_800A9120 .global lbl_800A911C lbl_800A911C: /* 800A911C 000A4F5C C1 42 8A 64 */ lfs f10, "@11368"@sda21(r2) .global lbl_800A9120 lbl_800A9120: /* 800A9120 000A4F60 EC C9 50 2A */ fadds f6, f9, f10 /* 800A9124 000A4F64 EC 65 02 72 */ fmuls f3, f5, f9 /* 800A9128 000A4F68 ED 08 08 28 */ fsubs f8, f8, f1 /* 800A912C 000A4F6C EC C6 38 28 */ fsubs f6, f6, f7 /* 800A9130 000A4F70 EC 63 50 28 */ fsubs f3, f3, f10 /* 800A9134 000A4F74 ED 02 02 32 */ fmuls f8, f2, f8 /* 800A9138 000A4F78 EC C2 01 B2 */ fmuls f6, f2, f6 /* 800A913C 000A4F7C EC 64 18 2A */ fadds f3, f4, f3 /* 800A9140 000A4F80 EC C2 01 B2 */ fmuls f6, f2, f6 /* 800A9144 000A4F84 EC 62 00 F2 */ fmuls f3, f2, f3 /* 800A9148 000A4F88 EC 66 18 2A */ fadds f3, f6, f3 /* 800A914C 000A4F8C EC 69 18 2A */ fadds f3, f9, f3 /* 800A9150 000A4F90 EC 68 00 F2 */ fmuls f3, f8, f3 /* 800A9154 000A4F94 EC 21 18 2A */ fadds f1, f1, f3 /* 800A9158 000A4F98 48 00 00 0C */ b lbl_800A9164 /* 800A915C 000A4F9C 48 00 00 08 */ b lbl_800A9164 .global lbl_800A9160 lbl_800A9160: /* 800A9160 000A4FA0 C0 22 8A 38 */ lfs f1, "@11024"@sda21(r2) .global lbl_800A9164 lbl_800A9164: /* 800A9164 000A4FA4 D0 3E 00 00 */ stfs f1, 0x0(r30) .global lbl_800A9168 lbl_800A9168: /* 800A9168 000A4FA8 55 8C 0C 3C */ rlwinm r12, r12, 1, 16, 30 /* 800A916C 000A4FAC 39 4A 00 01 */ addi r10, r10, 0x1 /* 800A9170 000A4FB0 3B DE 00 04 */ addi r30, r30, 0x4 .global lbl_800A9174 lbl_800A9174: /* 800A9174 000A4FB4 7C 0C 40 00 */ cmpw r12, r8 /* 800A9178 000A4FB8 40 81 FE 98 */ ble lbl_800A9010 .global lbl_800A917C lbl_800A917C: /* 800A917C 000A4FBC 39 61 00 60 */ addi r11, r1, 0x60 /* 800A9180 000A4FC0 E3 E1 00 68 */ psq_l f31, 0x68(r1), 0, qr0 /* 800A9184 000A4FC4 CB E1 00 60 */ lfd f31, 0x60(r1) /* 800A9188 000A4FC8 4B F5 E1 ED */ bl lbl_80007374 /* 800A918C 000A4FCC 80 01 00 74 */ lwz r0, 0x74(r1) /* 800A9190 000A4FD0 7C 08 03 A6 */ mtlr r0 /* 800A9194 000A4FD4 38 21 00 70 */ addi r1, r1, 0x70 /* 800A9198 000A4FD8 4E 80 00 20 */ blr /* 800A919C 000A4FDC 00 00 00 00 */ .4byte 0x00000000 .global AnimCurveExecuteRotate__Q24nw4r2efFPUcPfUlUsUl AnimCurveExecuteRotate__Q24nw4r2efFPUcPfUlUsUl: /* 800A91A0 000A4FE0 94 21 FF 80 */ stwu r1, -0x80(r1) /* 800A91A4 000A4FE4 7C 08 02 A6 */ mflr r0 /* 800A91A8 000A4FE8 90 01 00 84 */ stw r0, 0x84(r1) /* 800A91AC 000A4FEC 39 61 00 70 */ addi r11, r1, 0x70 /* 800A91B0 000A4FF0 DB E1 00 70 */ stfd f31, 0x70(r1) /* 800A91B4 000A4FF4 F3 E1 00 78 */ psq_st f31, 0x78(r1), 0, qr0 /* 800A91B8 000A4FF8 4B F5 E1 6D */ bl lbl_80007324 /* 800A91BC 000A4FFC A1 03 00 08 */ lhz r8, 0x8(r3) /* 800A91C0 000A5000 3D 40 43 30 */ lis r10, 0x4330 /* 800A91C4 000A5004 81 23 00 0C */ lwz r9, 0xc(r3) /* 800A91C8 000A5008 3B 23 00 20 */ addi r25, r3, 0x20 /* 800A91CC 000A500C 28 08 00 01 */ cmplwi r8, 0x1 /* 800A91D0 000A5010 80 03 00 10 */ lwz r0, 0x10(r3) /* 800A91D4 000A5014 7F 19 4A 14 */ add r24, r25, r9 /* 800A91D8 000A5018 91 41 00 20 */ stw r10, 0x20(r1) /* 800A91DC 000A501C 7C DE 33 78 */ mr r30, r6 /* 800A91E0 000A5020 8B 43 00 03 */ lbz r26, 0x3(r3) /* 800A91E4 000A5024 91 41 00 28 */ stw r10, 0x28(r1) /* 800A91E8 000A5028 7C 7C 1B 78 */ mr r28, r3 /* 800A91EC 000A502C 7C 9D 23 78 */ mr r29, r4 /* 800A91F0 000A5030 7C BF 2B 78 */ mr r31, r5 /* 800A91F4 000A5034 7E F8 02 14 */ add r23, r24, r0 /* 800A91F8 000A5038 38 C0 00 00 */ li r6, 0x0 /* 800A91FC 000A503C 41 81 00 14 */ bgt lbl_800A9210 /* 800A9200 000A5040 C0 82 8A 38 */ lfs f4, "@11024"@sda21(r2) /* 800A9204 000A5044 7F E6 FB 78 */ mr r6, r31 /* 800A9208 000A5048 38 E0 00 00 */ li r7, 0x0 /* 800A920C 000A504C 48 00 02 D8 */ b lbl_800A94E4 .global lbl_800A9210 lbl_800A9210: /* 800A9210 000A5050 8A C3 00 04 */ lbz r22, 0x4(r3) /* 800A9214 000A5054 56 C4 06 B5 */ rlwinm. r4, r22, 0, 26, 26 /* 800A9218 000A5058 40 82 00 D4 */ bne lbl_800A92EC /* 800A921C 000A505C 88 03 00 05 */ lbz r0, 0x5(r3) /* 800A9220 000A5060 28 00 00 01 */ cmplwi r0, 0x1 /* 800A9224 000A5064 41 81 00 C8 */ bgt lbl_800A92EC /* 800A9228 000A5068 56 C0 06 31 */ rlwinm. r0, r22, 0, 24, 24 /* 800A922C 000A506C 40 82 00 2C */ bne lbl_800A9258 /* 800A9230 000A5070 38 08 FF FF */ addi r0, r8, -0x1 /* 800A9234 000A5074 54 A7 04 3E */ clrlwi r7, r5, 16 /* 800A9238 000A5078 7C 05 00 40 */ cmplw r5, r0 /* 800A923C 000A507C 41 80 00 08 */ blt lbl_800A9244 /* 800A9240 000A5080 54 07 04 3E */ clrlwi r7, r0, 16 .global lbl_800A9244 lbl_800A9244: /* 800A9244 000A5084 90 E1 00 24 */ stw r7, 0x24(r1) /* 800A9248 000A5088 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A924C 000A508C C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A9250 000A5090 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A9254 000A5094 48 00 02 90 */ b lbl_800A94E4 .global lbl_800A9258 lbl_800A9258: /* 800A9258 000A5098 28 07 00 01 */ cmplwi r7, 0x1 /* 800A925C 000A509C 40 82 00 20 */ bne lbl_800A927C /* 800A9260 000A50A0 38 08 FF FF */ addi r0, r8, -0x1 /* 800A9264 000A50A4 C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800A9268 000A50A8 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800A926C 000A50AC 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A9270 000A50B0 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A9274 000A50B4 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A9278 000A50B8 48 00 00 64 */ b lbl_800A92DC .global lbl_800A927C lbl_800A927C: /* 800A927C 000A50BC 90 A1 00 24 */ stw r5, 0x24(r1) /* 800A9280 000A50C0 38 08 FF FF */ addi r0, r8, -0x1 /* 800A9284 000A50C4 6C 03 80 00 */ xoris r3, r0, 0x8000 /* 800A9288 000A50C8 C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800A928C 000A50CC C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A9290 000A50D0 38 07 FF FF */ addi r0, r7, -0x1 /* 800A9294 000A50D4 90 61 00 2C */ stw r3, 0x2c(r1) /* 800A9298 000A50D8 EC 80 28 28 */ fsubs f4, f0, f5 /* 800A929C 000A50DC C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800A92A0 000A50E0 90 01 00 24 */ stw r0, 0x24(r1) /* 800A92A4 000A50E4 C8 21 00 28 */ lfd f1, 0x28(r1) /* 800A92A8 000A50E8 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A92AC 000A50EC EC 41 18 28 */ fsubs f2, f1, f3 /* 800A92B0 000A50F0 90 61 00 2C */ stw r3, 0x2c(r1) /* 800A92B4 000A50F4 EC 20 28 28 */ fsubs f1, f0, f5 /* 800A92B8 000A50F8 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A92BC 000A50FC EC 22 08 24 */ fdivs f1, f2, f1 /* 800A92C0 000A5100 EC 84 00 72 */ fmuls f4, f4, f1 /* 800A92C4 000A5104 EC 00 18 28 */ fsubs f0, f0, f3 /* 800A92C8 000A5108 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 800A92CC 000A510C 40 81 00 10 */ ble lbl_800A92DC /* 800A92D0 000A5110 90 61 00 24 */ stw r3, 0x24(r1) /* 800A92D4 000A5114 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A92D8 000A5118 EC 80 18 28 */ fsubs f4, f0, f3 .global lbl_800A92DC lbl_800A92DC: /* 800A92DC 000A511C FC 00 20 1E */ fctiwz f0, f4 /* 800A92E0 000A5120 D8 01 00 30 */ stfd f0, 0x30(r1) /* 800A92E4 000A5124 80 E1 00 34 */ lwz r7, 0x34(r1) /* 800A92E8 000A5128 48 00 01 FC */ b lbl_800A94E4 .global lbl_800A92EC lbl_800A92EC: /* 800A92EC 000A512C 56 C0 06 31 */ rlwinm. r0, r22, 0, 24, 24 /* 800A92F0 000A5130 40 82 00 CC */ bne lbl_800A93BC /* 800A92F4 000A5134 38 E8 FF FF */ addi r7, r8, -0x1 /* 800A92F8 000A5138 56 C0 06 73 */ rlwinm. r0, r22, 0, 25, 25 /* 800A92FC 000A513C 7C C5 3B 96 */ divwu r6, r5, r7 /* 800A9300 000A5140 40 82 00 38 */ bne lbl_800A9338 /* 800A9304 000A5144 2C 04 00 00 */ cmpwi r4, 0x0 /* 800A9308 000A5148 40 82 00 20 */ bne lbl_800A9328 /* 800A930C 000A514C 88 63 00 05 */ lbz r3, 0x5(r3) /* 800A9310 000A5150 7C 06 18 40 */ cmplw r6, r3 /* 800A9314 000A5154 41 80 00 14 */ blt lbl_800A9328 /* 800A9318 000A5158 38 03 FF FF */ addi r0, r3, -0x1 /* 800A931C 000A515C 54 E7 04 3E */ clrlwi r7, r7, 16 /* 800A9320 000A5160 54 06 06 3E */ clrlwi r6, r0, 24 /* 800A9324 000A5164 48 00 00 80 */ b lbl_800A93A4 .global lbl_800A9328 lbl_800A9328: /* 800A9328 000A5168 7C 06 39 D6 */ mullw r0, r6, r7 /* 800A932C 000A516C 7C 00 28 50 */ subf r0, r0, r5 /* 800A9330 000A5170 54 07 04 3E */ clrlwi r7, r0, 16 /* 800A9334 000A5174 48 00 00 70 */ b lbl_800A93A4 .global lbl_800A9338 lbl_800A9338: /* 800A9338 000A5178 2C 04 00 00 */ cmpwi r4, 0x0 /* 800A933C 000A517C 40 82 00 40 */ bne lbl_800A937C /* 800A9340 000A5180 89 03 00 05 */ lbz r8, 0x5(r3) /* 800A9344 000A5184 7C 06 40 40 */ cmplw r6, r8 /* 800A9348 000A5188 41 80 00 34 */ blt lbl_800A937C /* 800A934C 000A518C 55 04 0F FE */ srwi r4, r8, 31 /* 800A9350 000A5190 55 00 07 FE */ clrlwi r0, r8, 31 /* 800A9354 000A5194 7C 03 22 78 */ xor r3, r0, r4 /* 800A9358 000A5198 7C 84 18 50 */ subf r4, r4, r3 /* 800A935C 000A519C 38 08 FF FF */ addi r0, r8, -0x1 /* 800A9360 000A51A0 7C 84 00 34 */ cntlzw r4, r4 /* 800A9364 000A51A4 54 E3 04 3E */ clrlwi r3, r7, 16 /* 800A9368 000A51A8 54 06 06 3E */ clrlwi r6, r0, 24 /* 800A936C 000A51AC 54 80 DF FE */ extrwi r0, r4, 1, 26 /* 800A9370 000A51B0 7C 00 00 D0 */ neg r0, r0 /* 800A9374 000A51B4 7C 67 00 78 */ andc r7, r3, r0 /* 800A9378 000A51B8 48 00 00 2C */ b lbl_800A93A4 .global lbl_800A937C lbl_800A937C: /* 800A937C 000A51BC 54 C0 07 FF */ clrlwi. r0, r6, 31 /* 800A9380 000A51C0 40 82 00 14 */ bne lbl_800A9394 /* 800A9384 000A51C4 7C 06 39 D6 */ mullw r0, r6, r7 /* 800A9388 000A51C8 7C 00 28 50 */ subf r0, r0, r5 /* 800A938C 000A51CC 54 07 04 3E */ clrlwi r7, r0, 16 /* 800A9390 000A51D0 48 00 00 14 */ b lbl_800A93A4 .global lbl_800A9394 lbl_800A9394: /* 800A9394 000A51D4 38 06 00 01 */ addi r0, r6, 0x1 /* 800A9398 000A51D8 7C 07 01 D6 */ mullw r0, r7, r0 /* 800A939C 000A51DC 7C 05 00 50 */ subf r0, r5, r0 /* 800A93A0 000A51E0 54 07 04 3E */ clrlwi r7, r0, 16 .global lbl_800A93A4 lbl_800A93A4: /* 800A93A4 000A51E4 54 E0 04 3E */ clrlwi r0, r7, 16 /* 800A93A8 000A51E8 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A93AC 000A51EC C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A93B0 000A51F0 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A93B4 000A51F4 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A93B8 000A51F8 48 00 01 2C */ b lbl_800A94E4 .global lbl_800A93BC lbl_800A93BC: /* 800A93BC 000A51FC 38 87 FF FF */ addi r4, r7, -0x1 /* 800A93C0 000A5200 7C 05 20 40 */ cmplw r5, r4 /* 800A93C4 000A5204 41 80 00 54 */ blt lbl_800A9418 /* 800A93C8 000A5208 56 C0 06 73 */ rlwinm. r0, r22, 0, 25, 25 /* 800A93CC 000A520C 41 82 00 1C */ beq lbl_800A93E8 /* 800A93D0 000A5210 88 03 00 05 */ lbz r0, 0x5(r3) /* 800A93D4 000A5214 54 04 0F FE */ srwi r4, r0, 31 /* 800A93D8 000A5218 54 00 07 FE */ clrlwi r0, r0, 31 /* 800A93DC 000A521C 7C 00 22 78 */ xor r0, r0, r4 /* 800A93E0 000A5220 7C 04 00 51 */ subf. r0, r4, r0 /* 800A93E4 000A5224 41 82 00 10 */ beq lbl_800A93F4 .global lbl_800A93E8 lbl_800A93E8: /* 800A93E8 000A5228 38 08 FF FF */ addi r0, r8, -0x1 /* 800A93EC 000A522C 54 07 04 3E */ clrlwi r7, r0, 16 /* 800A93F0 000A5230 48 00 00 08 */ b lbl_800A93F8 .global lbl_800A93F4 lbl_800A93F4: /* 800A93F4 000A5234 38 E0 00 00 */ li r7, 0x0 .global lbl_800A93F8 lbl_800A93F8: /* 800A93F8 000A5238 90 E1 00 24 */ stw r7, 0x24(r1) /* 800A93FC 000A523C 88 63 00 05 */ lbz r3, 0x5(r3) /* 800A9400 000A5240 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A9404 000A5244 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A9408 000A5248 38 03 FF FF */ addi r0, r3, -0x1 /* 800A940C 000A524C 54 06 06 3E */ clrlwi r6, r0, 24 /* 800A9410 000A5250 EC 80 08 28 */ fsubs f4, f0, f1 /* 800A9414 000A5254 48 00 00 D0 */ b lbl_800A94E4 .global lbl_800A9418 lbl_800A9418: /* 800A9418 000A5258 88 03 00 05 */ lbz r0, 0x5(r3) /* 800A941C 000A525C 3B 68 FF FF */ addi r27, r8, -0x1 /* 800A9420 000A5260 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A9424 000A5264 6F 60 80 00 */ xoris r0, r27, 0x8000 /* 800A9428 000A5268 C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800A942C 000A526C C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A9430 000A5270 90 01 00 24 */ stw r0, 0x24(r1) /* 800A9434 000A5274 C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800A9438 000A5278 EC 80 28 28 */ fsubs f4, f0, f5 /* 800A943C 000A527C 90 81 00 2C */ stw r4, 0x2c(r1) /* 800A9440 000A5280 C8 21 00 20 */ lfd f1, 0x20(r1) /* 800A9444 000A5284 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A9448 000A5288 EC 41 18 28 */ fsubs f2, f1, f3 /* 800A944C 000A528C 90 A1 00 24 */ stw r5, 0x24(r1) /* 800A9450 000A5290 EC 00 28 28 */ fsubs f0, f0, f5 /* 800A9454 000A5294 C8 21 00 20 */ lfd f1, 0x20(r1) /* 800A9458 000A5298 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A945C 000A529C EC 42 00 24 */ fdivs f2, f2, f0 /* 800A9460 000A52A0 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A9464 000A52A4 EF E4 00 B2 */ fmuls f31, f4, f2 /* 800A9468 000A52A8 EC 21 28 28 */ fsubs f1, f1, f5 /* 800A946C 000A52AC EC 00 18 28 */ fsubs f0, f0, f3 /* 800A9470 000A52B0 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800A9474 000A52B4 EC 21 00 24 */ fdivs f1, f1, f0 /* 800A9478 000A52B8 4B F5 DD 9D */ bl __cvt_fp2unsigned /* 800A947C 000A52BC 7C 83 D9 D6 */ mullw r4, r3, r27 /* 800A9480 000A52C0 93 E1 00 24 */ stw r31, 0x24(r1) /* 800A9484 000A52C4 C8 42 8A 40 */ lfd f2, "@11031"@sda21(r2) /* 800A9488 000A52C8 56 C0 06 73 */ rlwinm. r0, r22, 0, 25, 25 /* 800A948C 000A52CC C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A9490 000A52D0 7C 66 1B 78 */ mr r6, r3 /* 800A9494 000A52D4 EC 20 10 28 */ fsubs f1, f0, f2 /* 800A9498 000A52D8 90 81 00 2C */ stw r4, 0x2c(r1) /* 800A949C 000A52DC C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A94A0 000A52E0 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800A94A4 000A52E4 EC 00 10 28 */ fsubs f0, f0, f2 /* 800A94A8 000A52E8 EC 81 00 28 */ fsubs f4, f1, f0 /* 800A94AC 000A52EC 40 82 00 08 */ bne lbl_800A94B4 /* 800A94B0 000A52F0 48 00 00 28 */ b lbl_800A94D8 .global lbl_800A94B4 lbl_800A94B4: /* 800A94B4 000A52F4 54 60 07 FF */ clrlwi. r0, r3, 31 /* 800A94B8 000A52F8 40 82 00 08 */ bne lbl_800A94C0 /* 800A94BC 000A52FC 48 00 00 1C */ b lbl_800A94D8 .global lbl_800A94C0 lbl_800A94C0: /* 800A94C0 000A5300 6F 60 80 00 */ xoris r0, r27, 0x8000 /* 800A94C4 000A5304 90 01 00 24 */ stw r0, 0x24(r1) /* 800A94C8 000A5308 C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800A94CC 000A530C C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A94D0 000A5310 EC 00 08 28 */ fsubs f0, f0, f1 /* 800A94D4 000A5314 EC 80 20 28 */ fsubs f4, f0, f4 .global lbl_800A94D8 lbl_800A94D8: /* 800A94D8 000A5318 FC 00 20 1E */ fctiwz f0, f4 /* 800A94DC 000A531C D8 01 00 30 */ stfd f0, 0x30(r1) /* 800A94E0 000A5320 80 E1 00 34 */ lwz r7, 0x34(r1) .global lbl_800A94E4 lbl_800A94E4: /* 800A94E4 000A5324 3C 60 80 44 */ lis r3, gCountStandBit__Q24nw4r2ef@ha /* 800A94E8 000A5328 3C 80 80 44 */ lis r4, gMSB__Q24nw4r2ef@ha /* 800A94EC 000A532C 38 63 01 08 */ addi r3, r3, gCountStandBit__Q24nw4r2ef@l /* 800A94F0 000A5330 7C A3 D0 AE */ lbzx r5, r3, r26 /* 800A94F4 000A5334 38 84 02 08 */ addi r4, r4, gMSB__Q24nw4r2ef@l /* 800A94F8 000A5338 7D 04 D0 AE */ lbzx r8, r4, r26 /* 800A94FC 000A533C 2C 05 00 00 */ cmpwi r5, 0x0 /* 800A9500 000A5340 41 82 0D 58 */ beq lbl_800AA258 /* 800A9504 000A5344 54 E0 04 3E */ clrlwi r0, r7, 16 /* 800A9508 000A5348 A0 99 00 00 */ lhz r4, 0x0(r25) /* 800A950C 000A534C 6C 03 80 00 */ xoris r3, r0, 0x8000 /* 800A9510 000A5350 90 61 00 2C */ stw r3, 0x2c(r1) /* 800A9514 000A5354 39 44 FF FF */ addi r10, r4, -0x1 /* 800A9518 000A5358 54 A4 10 3A */ slwi r4, r5, 2 /* 800A951C 000A535C C8 42 8A 48 */ lfd f2, "@11032_8055E9C8"@sda21(r2) /* 800A9520 000A5360 55 43 0F FE */ srwi r3, r10, 31 /* 800A9524 000A5364 C8 21 00 28 */ lfd f1, 0x28(r1) /* 800A9528 000A5368 54 A9 18 38 */ slwi r9, r5, 3 /* 800A952C 000A536C 7C E3 52 14 */ add r7, r3, r10 /* 800A9530 000A5370 C0 02 8A 54 */ lfs f0, "@11364"@sda21(r2) /* 800A9534 000A5374 EC 21 10 28 */ fsubs f1, f1, f2 /* 800A9538 000A5378 38 B9 00 04 */ addi r5, r25, 0x4 /* 800A953C 000A537C 38 84 00 0C */ addi r4, r4, 0xc /* 800A9540 000A5380 38 69 00 04 */ addi r3, r9, 0x4 /* 800A9544 000A5384 7C F6 0E 70 */ srawi r22, r7, 1 /* 800A9548 000A5388 3B 60 00 00 */ li r27, 0x0 /* 800A954C 000A538C EC 21 20 28 */ fsubs f1, f1, f4 /* 800A9550 000A5390 FC 20 0A 10 */ fabs f1, f1 /* 800A9554 000A5394 FC 20 08 18 */ frsp f1, f1 /* 800A9558 000A5398 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800A955C 000A539C 7C E0 00 26 */ mfcr r7 /* 800A9560 000A53A0 A1 79 00 04 */ lhz r11, 0x4(r25) /* 800A9564 000A53A4 54 E7 0F FE */ srwi r7, r7, 31 /* 800A9568 000A53A8 7C 00 58 00 */ cmpw r0, r11 /* 800A956C 000A53AC 40 80 00 10 */ bge lbl_800A957C /* 800A9570 000A53B0 39 40 00 00 */ li r10, 0x0 /* 800A9574 000A53B4 38 E0 00 01 */ li r7, 0x1 /* 800A9578 000A53B8 48 00 00 BC */ b lbl_800A9634 .global lbl_800A957C lbl_800A957C: /* 800A957C 000A53BC 40 82 00 28 */ bne lbl_800A95A4 /* 800A9580 000A53C0 2C 0A 00 00 */ cmpwi r10, 0x0 /* 800A9584 000A53C4 39 40 00 00 */ li r10, 0x0 /* 800A9588 000A53C8 40 82 00 0C */ bne lbl_800A9594 /* 800A958C 000A53CC 38 E0 00 01 */ li r7, 0x1 /* 800A9590 000A53D0 48 00 00 A4 */ b lbl_800A9634 .global lbl_800A9594 lbl_800A9594: /* 800A9594 000A53D4 2C 07 00 00 */ cmpwi r7, 0x0 /* 800A9598 000A53D8 40 82 00 9C */ bne lbl_800A9634 /* 800A959C 000A53DC 7F E5 22 2E */ lhzx r31, r5, r4 /* 800A95A0 000A53E0 48 00 00 94 */ b lbl_800A9634 .global lbl_800A95A4 lbl_800A95A4: /* 800A95A4 000A53E4 7D 8A 21 D6 */ mullw r12, r10, r4 /* 800A95A8 000A53E8 7F E5 62 2E */ lhzx r31, r5, r12 /* 800A95AC 000A53EC 7C 1F 00 00 */ cmpw r31, r0 /* 800A95B0 000A53F0 41 81 00 0C */ bgt lbl_800A95BC /* 800A95B4 000A53F4 38 E0 00 01 */ li r7, 0x1 /* 800A95B8 000A53F8 48 00 00 7C */ b lbl_800A9634 .global lbl_800A95BC lbl_800A95BC: /* 800A95BC 000A53FC 7D 96 21 D6 */ mullw r12, r22, r4 /* 800A95C0 000A5400 7D 85 62 2E */ lhzx r12, r5, r12 /* 800A95C4 000A5404 48 00 00 60 */ b lbl_800A9624 .global lbl_800A95C8 lbl_800A95C8: /* 800A95C8 000A5408 7C 00 60 00 */ cmpw r0, r12 /* 800A95CC 000A540C 40 82 00 24 */ bne lbl_800A95F0 /* 800A95D0 000A5410 2C 07 00 00 */ cmpwi r7, 0x0 /* 800A95D4 000A5414 7E CA B3 78 */ mr r10, r22 /* 800A95D8 000A5418 40 82 00 5C */ bne lbl_800A9634 /* 800A95DC 000A541C 38 16 00 01 */ addi r0, r22, 0x1 /* 800A95E0 000A5420 7D 8B 63 78 */ mr r11, r12 /* 800A95E4 000A5424 7C 00 21 D6 */ mullw r0, r0, r4 /* 800A95E8 000A5428 7F E5 02 2E */ lhzx r31, r5, r0 /* 800A95EC 000A542C 48 00 00 48 */ b lbl_800A9634 .global lbl_800A95F0 lbl_800A95F0: /* 800A95F0 000A5430 7C 0C 00 00 */ cmpw r12, r0 /* 800A95F4 000A5434 40 80 00 10 */ bge lbl_800A9604 /* 800A95F8 000A5438 7E DB B3 78 */ mr r27, r22 /* 800A95FC 000A543C 7D 8B 63 78 */ mr r11, r12 /* 800A9600 000A5440 48 00 00 0C */ b lbl_800A960C .global lbl_800A9604 lbl_800A9604: /* 800A9604 000A5444 7E CA B3 78 */ mr r10, r22 /* 800A9608 000A5448 7D 9F 63 78 */ mr r31, r12 .global lbl_800A960C lbl_800A960C: /* 800A960C 000A544C 7E DB 52 14 */ add r22, r27, r10 /* 800A9610 000A5450 56 CC 0F FE */ srwi r12, r22, 31 /* 800A9614 000A5454 7D 8C B2 14 */ add r12, r12, r22 /* 800A9618 000A5458 7D 96 0E 70 */ srawi r22, r12, 1 /* 800A961C 000A545C 7D 96 21 D6 */ mullw r12, r22, r4 /* 800A9620 000A5460 7D 85 62 2E */ lhzx r12, r5, r12 .global lbl_800A9624 lbl_800A9624: /* 800A9624 000A5464 7C 1B B0 00 */ cmpw r27, r22 /* 800A9628 000A5468 41 80 FF A0 */ blt lbl_800A95C8 /* 800A962C 000A546C 7F 6A DB 78 */ mr r10, r27 /* 800A9630 000A5470 38 E0 00 00 */ li r7, 0x0 .global lbl_800A9634 lbl_800A9634: /* 800A9634 000A5474 2C 07 00 00 */ cmpwi r7, 0x0 /* 800A9638 000A5478 41 82 01 C4 */ beq lbl_800A97FC /* 800A963C 000A547C 7C 0A 21 D6 */ mullw r0, r10, r4 /* 800A9640 000A5480 7C A5 02 14 */ add r5, r5, r0 /* 800A9644 000A5484 8A C5 00 02 */ lbz r22, 0x2(r5) /* 800A9648 000A5488 38 A5 00 0C */ addi r5, r5, 0xc /* 800A964C 000A548C 2C 16 00 00 */ cmpwi r22, 0x0 /* 800A9650 000A5490 40 82 00 38 */ bne lbl_800A9688 /* 800A9654 000A5494 38 60 00 01 */ li r3, 0x1 /* 800A9658 000A5498 48 00 00 24 */ b lbl_800A967C /* 800A965C 000A549C 60 00 00 00 */ nop .global lbl_800A9660 lbl_800A9660: /* 800A9660 000A54A0 7F 40 18 39 */ and. r0, r26, r3 /* 800A9664 000A54A4 41 82 00 10 */ beq lbl_800A9674 /* 800A9668 000A54A8 C0 05 00 00 */ lfs f0, 0x0(r5) /* 800A966C 000A54AC 38 A5 00 04 */ addi r5, r5, 0x4 /* 800A9670 000A54B0 D0 1D 00 00 */ stfs f0, 0x0(r29) .global lbl_800A9674 lbl_800A9674: /* 800A9674 000A54B4 54 63 0C 3C */ rlwinm r3, r3, 1, 16, 30 /* 800A9678 000A54B8 3B BD 00 04 */ addi r29, r29, 0x4 .global lbl_800A967C lbl_800A967C: /* 800A967C 000A54BC 7C 03 40 00 */ cmpw r3, r8 /* 800A9680 000A54C0 40 81 FF E0 */ ble lbl_800A9660 /* 800A9684 000A54C4 48 00 0B D4 */ b lbl_800AA258 .global lbl_800A9688 lbl_800A9688: /* 800A9688 000A54C8 3C 80 37 11 */ lis r4, 0x3711 /* 800A968C 000A54CC A0 05 00 00 */ lhz r0, 0x0(r5) /* 800A9690 000A54D0 38 84 97 E7 */ addi r4, r4, -0x6819 /* 800A9694 000A54D4 3D 40 3F 82 */ lis r10, 0x3f82 /* 800A9698 000A54D8 7C 80 21 D6 */ mullw r4, r0, r4 /* 800A969C 000A54DC 3C E0 30 A7 */ lis r7, 0x30a7 /* 800A96A0 000A54E0 39 8A F6 35 */ addi r12, r10, -0x9cb /* 800A96A4 000A54E4 A1 7C 00 06 */ lhz r11, 0x6(r28) /* 800A96A8 000A54E8 3C A0 00 08 */ lis r5, 0x8 /* 800A96AC 000A54EC 39 47 41 93 */ addi r10, r7, 0x4193 /* 800A96B0 000A54F0 38 E5 B9 29 */ addi r7, r5, -0x46d7 /* 800A96B4 000A54F4 3C A4 00 05 */ addis r5, r4, 0x5 /* 800A96B8 000A54F8 56 C4 07 BD */ rlwinm. r4, r22, 0, 30, 30 /* 800A96BC 000A54FC 38 85 BF 53 */ addi r4, r5, -0x40ad /* 800A96C0 000A5500 7C C6 39 D6 */ mullw r6, r6, r7 /* 800A96C4 000A5504 7D 9E 61 D6 */ mullw r12, r30, r12 /* 800A96C8 000A5508 7C 86 22 14 */ add r4, r6, r4 /* 800A96CC 000A550C 7C AB 51 D6 */ mullw r5, r11, r10 /* 800A96D0 000A5510 7C AC 2A 14 */ add r5, r12, r5 /* 800A96D4 000A5514 7C 85 22 14 */ add r4, r5, r4 /* 800A96D8 000A5518 90 81 00 18 */ stw r4, 0x18(r1) /* 800A96DC 000A551C 88 C1 00 1A */ lbz r6, 0x1a(r1) /* 800A96E0 000A5520 88 81 00 1B */ lbz r4, 0x1b(r1) /* 800A96E4 000A5524 88 A1 00 19 */ lbz r5, 0x19(r1) /* 800A96E8 000A5528 7C C6 22 78 */ xor r6, r6, r4 /* 800A96EC 000A552C 88 81 00 18 */ lbz r4, 0x18(r1) /* 800A96F0 000A5530 7C A5 32 78 */ xor r5, r5, r6 /* 800A96F4 000A5534 98 C1 00 1A */ stb r6, 0x1a(r1) /* 800A96F8 000A5538 7C 84 2A 78 */ xor r4, r4, r5 /* 800A96FC 000A553C 98 A1 00 19 */ stb r5, 0x19(r1) /* 800A9700 000A5540 98 81 00 18 */ stb r4, 0x18(r1) /* 800A9704 000A5544 80 81 00 18 */ lwz r4, 0x18(r1) /* 800A9708 000A5548 40 82 00 14 */ bne lbl_800A971C /* 800A970C 000A554C 7C 00 19 D6 */ mullw r0, r0, r3 /* 800A9710 000A5550 7C 78 02 14 */ add r3, r24, r0 /* 800A9714 000A5554 38 C3 00 04 */ addi r6, r3, 0x4 /* 800A9718 000A5558 48 00 00 38 */ b lbl_800A9750 .global lbl_800A971C lbl_800A971C: /* 800A971C 000A555C A0 F7 00 00 */ lhz r7, 0x0(r23) /* 800A9720 000A5560 54 8A 84 3E */ srwi r10, r4, 16 /* 800A9724 000A5564 3C A0 00 03 */ lis r5, 0x3 /* 800A9728 000A5568 7C CA 3B 96 */ divwu r6, r10, r7 /* 800A972C 000A556C 38 05 43 FD */ addi r0, r5, 0x43fd /* 800A9730 000A5570 7C A6 39 D6 */ mullw r5, r6, r7 /* 800A9734 000A5574 7C A5 50 50 */ subf r5, r5, r10 /* 800A9738 000A5578 7C A3 29 D6 */ mullw r5, r3, r5 /* 800A973C 000A557C 7C 64 01 D6 */ mullw r3, r4, r0 /* 800A9740 000A5580 7C 97 2A 14 */ add r4, r23, r5 /* 800A9744 000A5584 38 C4 00 04 */ addi r6, r4, 0x4 /* 800A9748 000A5588 3C 83 00 27 */ addis r4, r3, 0x27 /* 800A974C 000A558C 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A9750 lbl_800A9750: /* 800A9750 000A5590 7C 06 48 AE */ lbzx r0, r6, r9 /* 800A9754 000A5594 38 E0 00 00 */ li r7, 0x0 /* 800A9758 000A5598 2C 00 00 00 */ cmpwi r0, 0x0 /* 800A975C 000A559C 41 82 00 24 */ beq lbl_800A9780 /* 800A9760 000A55A0 54 80 03 DF */ rlwinm. r0, r4, 0, 15, 15 /* 800A9764 000A55A4 40 82 00 08 */ bne lbl_800A976C /* 800A9768 000A55A8 38 E0 00 01 */ li r7, 0x1 .global lbl_800A976C lbl_800A976C: /* 800A976C 000A55AC 3C 60 00 03 */ lis r3, 0x3 /* 800A9770 000A55B0 38 03 43 FD */ addi r0, r3, 0x43fd /* 800A9774 000A55B4 7C 64 01 D6 */ mullw r3, r4, r0 /* 800A9778 000A55B8 3C 83 00 27 */ addis r4, r3, 0x27 /* 800A977C 000A55BC 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A9780 lbl_800A9780: /* 800A9780 000A55C0 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A9784 000A55C4 39 20 00 01 */ li r9, 0x1 /* 800A9788 000A55C8 3C A0 00 03 */ lis r5, 0x3 /* 800A978C 000A55CC 48 00 00 64 */ b lbl_800A97F0 .global lbl_800A9790 lbl_800A9790: /* 800A9790 000A55D0 7F 40 48 39 */ and. r0, r26, r9 /* 800A9794 000A55D4 41 82 00 38 */ beq lbl_800A97CC /* 800A9798 000A55D8 54 80 84 3E */ srwi r0, r4, 16 /* 800A979C 000A55DC 90 01 00 24 */ stw r0, 0x24(r1) /* 800A97A0 000A55E0 C0 46 00 04 */ lfs f2, 0x4(r6) /* 800A97A4 000A55E4 2C 07 00 00 */ cmpwi r7, 0x0 /* 800A97A8 000A55E8 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A97AC 000A55EC C0 66 00 00 */ lfs f3, 0x0(r6) /* 800A97B0 000A55F0 38 C6 00 08 */ addi r6, r6, 0x8 /* 800A97B4 000A55F4 EC 00 08 28 */ fsubs f0, f0, f1 /* 800A97B8 000A55F8 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A97BC 000A55FC EC 03 00 2A */ fadds f0, f3, f0 /* 800A97C0 000A5600 41 82 00 08 */ beq lbl_800A97C8 /* 800A97C4 000A5604 FC 00 00 50 */ fneg f0, f0 .global lbl_800A97C8 lbl_800A97C8: /* 800A97C8 000A5608 D0 1D 00 00 */ stfs f0, 0x0(r29) .global lbl_800A97CC lbl_800A97CC: /* 800A97CC 000A560C 88 1C 00 04 */ lbz r0, 0x4(r28) /* 800A97D0 000A5610 3B BD 00 04 */ addi r29, r29, 0x4 /* 800A97D4 000A5614 54 00 07 7B */ rlwinm. r0, r0, 0, 29, 29 /* 800A97D8 000A5618 40 82 00 14 */ bne lbl_800A97EC /* 800A97DC 000A561C 38 05 43 FD */ addi r0, r5, 0x43fd /* 800A97E0 000A5620 7C 64 01 D6 */ mullw r3, r4, r0 /* 800A97E4 000A5624 3C 83 00 27 */ addis r4, r3, 0x27 /* 800A97E8 000A5628 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A97EC lbl_800A97EC: /* 800A97EC 000A562C 55 29 0C 3C */ rlwinm r9, r9, 1, 16, 30 .global lbl_800A97F0 lbl_800A97F0: /* 800A97F0 000A5630 7C 09 40 00 */ cmpw r9, r8 /* 800A97F4 000A5634 40 81 FF 9C */ ble lbl_800A9790 /* 800A97F8 000A5638 48 00 0A 60 */ b lbl_800AA258 .global lbl_800A97FC lbl_800A97FC: /* 800A97FC 000A563C 89 9C 00 04 */ lbz r12, 0x4(r28) /* 800A9800 000A5640 7C C7 33 78 */ mr r7, r6 /* 800A9804 000A5644 55 80 06 73 */ rlwinm. r0, r12, 0, 25, 25 /* 800A9808 000A5648 41 82 00 6C */ beq lbl_800A9874 /* 800A980C 000A564C 55 9B 06 B5 */ rlwinm. r27, r12, 0, 26, 26 /* 800A9810 000A5650 40 82 00 10 */ bne lbl_800A9820 /* 800A9814 000A5654 88 1C 00 05 */ lbz r0, 0x5(r28) /* 800A9818 000A5658 28 00 00 01 */ cmplwi r0, 0x1 /* 800A981C 000A565C 40 81 00 58 */ ble lbl_800A9874 .global lbl_800A9820 lbl_800A9820: /* 800A9820 000A5660 54 D5 07 FF */ clrlwi. r21, r6, 31 /* 800A9824 000A5664 40 82 00 34 */ bne lbl_800A9858 /* 800A9828 000A5668 A1 99 00 00 */ lhz r12, 0x0(r25) /* 800A982C 000A566C 3A CA 00 01 */ addi r22, r10, 0x1 /* 800A9830 000A5670 38 0C FF FF */ addi r0, r12, -0x1 /* 800A9834 000A5674 7C 16 00 00 */ cmpw r22, r0 /* 800A9838 000A5678 41 80 00 20 */ blt lbl_800A9858 /* 800A983C 000A567C 2C 1B 00 00 */ cmpwi r27, 0x0 /* 800A9840 000A5680 40 82 00 14 */ bne lbl_800A9854 /* 800A9844 000A5684 89 9C 00 05 */ lbz r12, 0x5(r28) /* 800A9848 000A5688 38 0C FF FF */ addi r0, r12, -0x1 /* 800A984C 000A568C 7C 06 00 40 */ cmplw r6, r0 /* 800A9850 000A5690 40 80 00 08 */ bge lbl_800A9858 .global lbl_800A9854 lbl_800A9854: /* 800A9854 000A5694 38 E6 00 01 */ addi r7, r6, 0x1 .global lbl_800A9858 lbl_800A9858: /* 800A9858 000A5698 2C 15 00 00 */ cmpwi r21, 0x0 /* 800A985C 000A569C 41 82 00 18 */ beq lbl_800A9874 /* 800A9860 000A56A0 2C 0A 00 00 */ cmpwi r10, 0x0 /* 800A9864 000A56A4 40 82 00 10 */ bne lbl_800A9874 /* 800A9868 000A56A8 2C 06 00 00 */ cmpwi r6, 0x0 /* 800A986C 000A56AC 41 82 00 08 */ beq lbl_800A9874 /* 800A9870 000A56B0 38 C6 00 01 */ addi r6, r6, 0x1 .global lbl_800A9874 lbl_800A9874: /* 800A9874 000A56B4 55 6C 04 3E */ clrlwi r12, r11, 16 /* 800A9878 000A56B8 91 81 00 2C */ stw r12, 0x2c(r1) /* 800A987C 000A56BC 57 EB 04 3E */ clrlwi r11, r31, 16 /* 800A9880 000A56C0 38 0A 00 01 */ addi r0, r10, 0x1 /* 800A9884 000A56C4 7D 6C 58 50 */ subf r11, r12, r11 /* 800A9888 000A56C8 C8 22 8A 40 */ lfd f1, "@11031"@sda21(r2) /* 800A988C 000A56CC C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A9890 000A56D0 6D 6B 80 00 */ xoris r11, r11, 0x8000 /* 800A9894 000A56D4 91 61 00 24 */ stw r11, 0x24(r1) /* 800A9898 000A56D8 7D 4A 21 D6 */ mullw r10, r10, r4 /* 800A989C 000A56DC EC 40 08 28 */ fsubs f2, f0, f1 /* 800A98A0 000A56E0 C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800A98A4 000A56E4 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A98A8 000A56E8 EC 44 10 28 */ fsubs f2, f4, f2 /* 800A98AC 000A56EC EC 00 08 28 */ fsubs f0, f0, f1 /* 800A98B0 000A56F0 7D 65 52 14 */ add r11, r5, r10 /* 800A98B4 000A56F4 7D 80 21 D6 */ mullw r12, r0, r4 /* 800A98B8 000A56F8 88 0B 00 02 */ lbz r0, 0x2(r11) /* 800A98BC 000A56FC EC 42 00 24 */ fdivs f2, f2, f0 /* 800A98C0 000A5700 39 4B 00 0C */ addi r10, r11, 0xc /* 800A98C4 000A5704 7C 80 00 D0 */ neg r4, r0 /* 800A98C8 000A5708 39 6B 00 04 */ addi r11, r11, 0x4 /* 800A98CC 000A570C 7C A5 62 14 */ add r5, r5, r12 /* 800A98D0 000A5710 7C 8C 03 78 */ or r12, r4, r0 /* 800A98D4 000A5714 88 85 00 02 */ lbz r4, 0x2(r5) /* 800A98D8 000A5718 55 95 0F FF */ srwi. r21, r12, 31 /* 800A98DC 000A571C 38 A5 00 0C */ addi r5, r5, 0xc /* 800A98E0 000A5720 7D 84 00 D0 */ neg r12, r4 /* 800A98E4 000A5724 7D 8C 23 78 */ or r12, r12, r4 /* 800A98E8 000A5728 55 8C 0F FE */ srwi r12, r12, 31 /* 800A98EC 000A572C 40 82 01 28 */ bne lbl_800A9A14 /* 800A98F0 000A5730 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800A98F4 000A5734 40 82 01 20 */ bne lbl_800A9A14 /* 800A98F8 000A5738 C0 A2 8A 60 */ lfs f5, "@11367"@sda21(r2) /* 800A98FC 000A573C 38 80 00 01 */ li r4, 0x1 /* 800A9900 000A5740 C0 62 8A 68 */ lfs f3, "@11369"@sda21(r2) /* 800A9904 000A5744 C0 22 8A 5C */ lfs f1, "@11366"@sda21(r2) /* 800A9908 000A5748 48 00 01 00 */ b lbl_800A9A08 /* 800A990C 000A574C 60 00 00 00 */ nop .global lbl_800A9910 lbl_800A9910: /* 800A9910 000A5750 7F 40 20 39 */ and. r0, r26, r4 /* 800A9914 000A5754 41 82 00 E8 */ beq lbl_800A99FC /* 800A9918 000A5758 C0 C5 00 00 */ lfs f6, 0x0(r5) /* 800A991C 000A575C C0 EA 00 00 */ lfs f7, 0x0(r10) /* 800A9920 000A5760 88 6B 00 00 */ lbz r3, 0x0(r11) /* 800A9924 000A5764 FC 07 30 00 */ fcmpu cr0, f7, f6 /* 800A9928 000A5768 40 82 00 08 */ bne lbl_800A9930 /* 800A992C 000A576C 48 00 00 C4 */ b lbl_800A99F0 .global lbl_800A9930 lbl_800A9930: /* 800A9930 000A5770 54 60 07 BF */ clrlwi. r0, r3, 30 /* 800A9934 000A5774 41 82 00 18 */ beq lbl_800A994C /* 800A9938 000A5778 2C 00 00 01 */ cmpwi r0, 0x1 /* 800A993C 000A577C 41 82 00 20 */ beq lbl_800A995C /* 800A9940 000A5780 2C 00 00 02 */ cmpwi r0, 0x2 /* 800A9944 000A5784 41 82 00 AC */ beq lbl_800A99F0 /* 800A9948 000A5788 48 00 00 A4 */ b lbl_800A99EC .global lbl_800A994C lbl_800A994C: /* 800A994C 000A578C EC 06 38 28 */ fsubs f0, f6, f7 /* 800A9950 000A5790 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9954 000A5794 EC E7 00 2A */ fadds f7, f7, f0 /* 800A9958 000A5798 48 00 00 98 */ b lbl_800A99F0 .global lbl_800A995C lbl_800A995C: /* 800A995C 000A579C 28 03 00 01 */ cmplwi r3, 0x1 /* 800A9960 000A57A0 40 82 00 24 */ bne lbl_800A9984 /* 800A9964 000A57A4 EC 85 00 B2 */ fmuls f4, f5, f2 /* 800A9968 000A57A8 EC 06 38 28 */ fsubs f0, f6, f7 /* 800A996C 000A57AC EC 81 20 28 */ fsubs f4, f1, f4 /* 800A9970 000A57B0 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A9974 000A57B4 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9978 000A57B8 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A997C 000A57BC EC E7 00 2A */ fadds f7, f7, f0 /* 800A9980 000A57C0 48 00 00 70 */ b lbl_800A99F0 .global lbl_800A9984 lbl_800A9984: /* 800A9984 000A57C4 54 60 EF FF */ extrwi. r0, r3, 1, 28 /* 800A9988 000A57C8 40 82 00 0C */ bne lbl_800A9994 /* 800A998C 000A57CC C1 02 8A 38 */ lfs f8, "@11024"@sda21(r2) /* 800A9990 000A57D0 48 00 00 08 */ b lbl_800A9998 .global lbl_800A9994 lbl_800A9994: /* 800A9994 000A57D4 C1 02 8A 64 */ lfs f8, "@11368"@sda21(r2) .global lbl_800A9998 lbl_800A9998: /* 800A9998 000A57D8 54 60 F7 FF */ extrwi. r0, r3, 1, 29 /* 800A999C 000A57DC 40 82 00 0C */ bne lbl_800A99A8 /* 800A99A0 000A57E0 C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800A99A4 000A57E4 48 00 00 08 */ b lbl_800A99AC .global lbl_800A99A8 lbl_800A99A8: /* 800A99A8 000A57E8 C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800A99AC lbl_800A99AC: /* 800A99AC 000A57EC EC 88 48 2A */ fadds f4, f8, f9 /* 800A99B0 000A57F0 EC 03 02 32 */ fmuls f0, f3, f8 /* 800A99B4 000A57F4 EC C6 38 28 */ fsubs f6, f6, f7 /* 800A99B8 000A57F8 EC 84 28 28 */ fsubs f4, f4, f5 /* 800A99BC 000A57FC EC 00 48 28 */ fsubs f0, f0, f9 /* 800A99C0 000A5800 EC C2 01 B2 */ fmuls f6, f2, f6 /* 800A99C4 000A5804 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A99C8 000A5808 EC 01 00 2A */ fadds f0, f1, f0 /* 800A99CC 000A580C EC 82 01 32 */ fmuls f4, f2, f4 /* 800A99D0 000A5810 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A99D4 000A5814 EC 04 00 2A */ fadds f0, f4, f0 /* 800A99D8 000A5818 EC 08 00 2A */ fadds f0, f8, f0 /* 800A99DC 000A581C EC 06 00 32 */ fmuls f0, f6, f0 /* 800A99E0 000A5820 EC E7 00 2A */ fadds f7, f7, f0 /* 800A99E4 000A5824 48 00 00 0C */ b lbl_800A99F0 /* 800A99E8 000A5828 48 00 00 08 */ b lbl_800A99F0 .global lbl_800A99EC lbl_800A99EC: /* 800A99EC 000A582C C0 E2 8A 38 */ lfs f7, "@11024"@sda21(r2) .global lbl_800A99F0 lbl_800A99F0: /* 800A99F0 000A5830 D0 FD 00 00 */ stfs f7, 0x0(r29) /* 800A99F4 000A5834 39 4A 00 04 */ addi r10, r10, 0x4 /* 800A99F8 000A5838 38 A5 00 04 */ addi r5, r5, 0x4 .global lbl_800A99FC lbl_800A99FC: /* 800A99FC 000A583C 54 84 0C 3C */ rlwinm r4, r4, 1, 16, 30 /* 800A9A00 000A5840 39 6B 00 01 */ addi r11, r11, 0x1 /* 800A9A04 000A5844 3B BD 00 04 */ addi r29, r29, 0x4 .global lbl_800A9A08 lbl_800A9A08: /* 800A9A08 000A5848 7C 04 40 00 */ cmpw r4, r8 /* 800A9A0C 000A584C 40 81 FF 04 */ ble lbl_800A9910 /* 800A9A10 000A5850 48 00 08 48 */ b lbl_800AA258 .global lbl_800A9A14 lbl_800A9A14: /* 800A9A14 000A5854 2C 15 00 00 */ cmpwi r21, 0x0 /* 800A9A18 000A5858 41 82 02 68 */ beq lbl_800A9C80 /* 800A9A1C 000A585C 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800A9A20 000A5860 40 82 02 60 */ bne lbl_800A9C80 /* 800A9A24 000A5864 3C E0 37 11 */ lis r7, 0x3711 /* 800A9A28 000A5868 A0 8A 00 00 */ lhz r4, 0x0(r10) /* 800A9A2C 000A586C 38 E7 97 E7 */ addi r7, r7, -0x6819 /* 800A9A30 000A5870 3F 20 3F 82 */ lis r25, 0x3f82 /* 800A9A34 000A5874 7C E4 39 D6 */ mullw r7, r4, r7 /* 800A9A38 000A5878 3D 80 30 A7 */ lis r12, 0x30a7 /* 800A9A3C 000A587C 3D 40 00 08 */ lis r10, 0x8 /* 800A9A40 000A5880 A2 DC 00 06 */ lhz r22, 0x6(r28) /* 800A9A44 000A5884 3B 39 F6 35 */ addi r25, r25, -0x9cb /* 800A9A48 000A5888 39 8C 41 93 */ addi r12, r12, 0x4193 /* 800A9A4C 000A588C 39 4A B9 29 */ addi r10, r10, -0x46d7 /* 800A9A50 000A5890 3C E7 00 05 */ addis r7, r7, 0x5 /* 800A9A54 000A5894 54 00 07 BD */ rlwinm. r0, r0, 0, 30, 30 /* 800A9A58 000A5898 38 07 BF 53 */ addi r0, r7, -0x40ad /* 800A9A5C 000A589C 7C E6 51 D6 */ mullw r7, r6, r10 /* 800A9A60 000A58A0 7F 3E C9 D6 */ mullw r25, r30, r25 /* 800A9A64 000A58A4 7C 07 02 14 */ add r0, r7, r0 /* 800A9A68 000A58A8 7D 96 61 D6 */ mullw r12, r22, r12 /* 800A9A6C 000A58AC 7C D9 62 14 */ add r6, r25, r12 /* 800A9A70 000A58B0 7C 06 02 14 */ add r0, r6, r0 /* 800A9A74 000A58B4 90 01 00 14 */ stw r0, 0x14(r1) /* 800A9A78 000A58B8 88 E1 00 16 */ lbz r7, 0x16(r1) /* 800A9A7C 000A58BC 88 01 00 17 */ lbz r0, 0x17(r1) /* 800A9A80 000A58C0 88 C1 00 15 */ lbz r6, 0x15(r1) /* 800A9A84 000A58C4 7C E7 02 78 */ xor r7, r7, r0 /* 800A9A88 000A58C8 88 01 00 14 */ lbz r0, 0x14(r1) /* 800A9A8C 000A58CC 7C C6 3A 78 */ xor r6, r6, r7 /* 800A9A90 000A58D0 98 E1 00 16 */ stb r7, 0x16(r1) /* 800A9A94 000A58D4 7C 00 32 78 */ xor r0, r0, r6 /* 800A9A98 000A58D8 98 C1 00 15 */ stb r6, 0x15(r1) /* 800A9A9C 000A58DC 98 01 00 14 */ stb r0, 0x14(r1) /* 800A9AA0 000A58E0 80 C1 00 14 */ lwz r6, 0x14(r1) /* 800A9AA4 000A58E4 40 82 00 14 */ bne lbl_800A9AB8 /* 800A9AA8 000A58E8 7C 04 19 D6 */ mullw r0, r4, r3 /* 800A9AAC 000A58EC 7C 78 02 14 */ add r3, r24, r0 /* 800A9AB0 000A58F0 38 E3 00 04 */ addi r7, r3, 0x4 /* 800A9AB4 000A58F4 48 00 00 38 */ b lbl_800A9AEC .global lbl_800A9AB8 lbl_800A9AB8: /* 800A9AB8 000A58F8 A1 57 00 00 */ lhz r10, 0x0(r23) /* 800A9ABC 000A58FC 54 CC 84 3E */ srwi r12, r6, 16 /* 800A9AC0 000A5900 3C 80 00 03 */ lis r4, 0x3 /* 800A9AC4 000A5904 7C EC 53 96 */ divwu r7, r12, r10 /* 800A9AC8 000A5908 38 04 43 FD */ addi r0, r4, 0x43fd /* 800A9ACC 000A590C 7C 87 51 D6 */ mullw r4, r7, r10 /* 800A9AD0 000A5910 7C 84 60 50 */ subf r4, r4, r12 /* 800A9AD4 000A5914 7C 83 21 D6 */ mullw r4, r3, r4 /* 800A9AD8 000A5918 7C 66 01 D6 */ mullw r3, r6, r0 /* 800A9ADC 000A591C 7C 97 22 14 */ add r4, r23, r4 /* 800A9AE0 000A5920 38 E4 00 04 */ addi r7, r4, 0x4 /* 800A9AE4 000A5924 3C C3 00 27 */ addis r6, r3, 0x27 /* 800A9AE8 000A5928 38 C6 9E C3 */ addi r6, r6, -0x613d .global lbl_800A9AEC lbl_800A9AEC: /* 800A9AEC 000A592C 7C 07 48 AE */ lbzx r0, r7, r9 /* 800A9AF0 000A5930 39 20 00 00 */ li r9, 0x0 /* 800A9AF4 000A5934 2C 00 00 00 */ cmpwi r0, 0x0 /* 800A9AF8 000A5938 41 82 00 24 */ beq lbl_800A9B1C /* 800A9AFC 000A593C 54 C0 03 DF */ rlwinm. r0, r6, 0, 15, 15 /* 800A9B00 000A5940 40 82 00 08 */ bne lbl_800A9B08 /* 800A9B04 000A5944 39 20 00 01 */ li r9, 0x1 .global lbl_800A9B08 lbl_800A9B08: /* 800A9B08 000A5948 3C 60 00 03 */ lis r3, 0x3 /* 800A9B0C 000A594C 38 03 43 FD */ addi r0, r3, 0x43fd /* 800A9B10 000A5950 7C 66 01 D6 */ mullw r3, r6, r0 /* 800A9B14 000A5954 3C C3 00 27 */ addis r6, r3, 0x27 /* 800A9B18 000A5958 38 C6 9E C3 */ addi r6, r6, -0x613d .global lbl_800A9B1C lbl_800A9B1C: /* 800A9B1C 000A595C C8 E2 8A 40 */ lfd f7, "@11031"@sda21(r2) /* 800A9B20 000A5960 39 40 00 01 */ li r10, 0x1 /* 800A9B24 000A5964 C0 A2 8A 60 */ lfs f5, "@11367"@sda21(r2) /* 800A9B28 000A5968 3C 80 00 03 */ lis r4, 0x3 /* 800A9B2C 000A596C C0 62 8A 68 */ lfs f3, "@11369"@sda21(r2) /* 800A9B30 000A5970 C0 22 8A 5C */ lfs f1, "@11366"@sda21(r2) /* 800A9B34 000A5974 48 00 01 40 */ b lbl_800A9C74 .global lbl_800A9B38 lbl_800A9B38: /* 800A9B38 000A5978 7F 40 50 39 */ and. r0, r26, r10 /* 800A9B3C 000A597C 41 82 01 10 */ beq lbl_800A9C4C /* 800A9B40 000A5980 54 C0 84 3E */ srwi r0, r6, 16 /* 800A9B44 000A5984 90 01 00 2C */ stw r0, 0x2c(r1) /* 800A9B48 000A5988 C0 87 00 04 */ lfs f4, 0x4(r7) /* 800A9B4C 000A598C 2C 09 00 00 */ cmpwi r9, 0x0 /* 800A9B50 000A5990 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800A9B54 000A5994 C0 C7 00 00 */ lfs f6, 0x0(r7) /* 800A9B58 000A5998 38 E7 00 08 */ addi r7, r7, 0x8 /* 800A9B5C 000A599C EC 00 38 28 */ fsubs f0, f0, f7 /* 800A9B60 000A59A0 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A9B64 000A59A4 ED 46 00 2A */ fadds f10, f6, f0 /* 800A9B68 000A59A8 41 82 00 08 */ beq lbl_800A9B70 /* 800A9B6C 000A59AC FD 40 50 50 */ fneg f10, f10 .global lbl_800A9B70 lbl_800A9B70: /* 800A9B70 000A59B0 C0 C5 00 00 */ lfs f6, 0x0(r5) /* 800A9B74 000A59B4 88 6B 00 00 */ lbz r3, 0x0(r11) /* 800A9B78 000A59B8 FC 0A 30 00 */ fcmpu cr0, f10, f6 /* 800A9B7C 000A59BC 40 82 00 08 */ bne lbl_800A9B84 /* 800A9B80 000A59C0 48 00 00 C4 */ b lbl_800A9C44 .global lbl_800A9B84 lbl_800A9B84: /* 800A9B84 000A59C4 54 60 07 BF */ clrlwi. r0, r3, 30 /* 800A9B88 000A59C8 41 82 00 18 */ beq lbl_800A9BA0 /* 800A9B8C 000A59CC 2C 00 00 01 */ cmpwi r0, 0x1 /* 800A9B90 000A59D0 41 82 00 20 */ beq lbl_800A9BB0 /* 800A9B94 000A59D4 2C 00 00 02 */ cmpwi r0, 0x2 /* 800A9B98 000A59D8 41 82 00 AC */ beq lbl_800A9C44 /* 800A9B9C 000A59DC 48 00 00 A4 */ b lbl_800A9C40 .global lbl_800A9BA0 lbl_800A9BA0: /* 800A9BA0 000A59E0 EC 06 50 28 */ fsubs f0, f6, f10 /* 800A9BA4 000A59E4 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9BA8 000A59E8 ED 4A 00 2A */ fadds f10, f10, f0 /* 800A9BAC 000A59EC 48 00 00 98 */ b lbl_800A9C44 .global lbl_800A9BB0 lbl_800A9BB0: /* 800A9BB0 000A59F0 28 03 00 01 */ cmplwi r3, 0x1 /* 800A9BB4 000A59F4 40 82 00 24 */ bne lbl_800A9BD8 /* 800A9BB8 000A59F8 EC 85 00 B2 */ fmuls f4, f5, f2 /* 800A9BBC 000A59FC EC 06 50 28 */ fsubs f0, f6, f10 /* 800A9BC0 000A5A00 EC 81 20 28 */ fsubs f4, f1, f4 /* 800A9BC4 000A5A04 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A9BC8 000A5A08 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9BCC 000A5A0C EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9BD0 000A5A10 ED 4A 00 2A */ fadds f10, f10, f0 /* 800A9BD4 000A5A14 48 00 00 70 */ b lbl_800A9C44 .global lbl_800A9BD8 lbl_800A9BD8: /* 800A9BD8 000A5A18 54 60 EF FF */ extrwi. r0, r3, 1, 28 /* 800A9BDC 000A5A1C 40 82 00 0C */ bne lbl_800A9BE8 /* 800A9BE0 000A5A20 C1 02 8A 38 */ lfs f8, "@11024"@sda21(r2) /* 800A9BE4 000A5A24 48 00 00 08 */ b lbl_800A9BEC .global lbl_800A9BE8 lbl_800A9BE8: /* 800A9BE8 000A5A28 C1 02 8A 64 */ lfs f8, "@11368"@sda21(r2) .global lbl_800A9BEC lbl_800A9BEC: /* 800A9BEC 000A5A2C 54 60 F7 FF */ extrwi. r0, r3, 1, 29 /* 800A9BF0 000A5A30 40 82 00 0C */ bne lbl_800A9BFC /* 800A9BF4 000A5A34 C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800A9BF8 000A5A38 48 00 00 08 */ b lbl_800A9C00 .global lbl_800A9BFC lbl_800A9BFC: /* 800A9BFC 000A5A3C C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800A9C00 lbl_800A9C00: /* 800A9C00 000A5A40 EC 88 48 2A */ fadds f4, f8, f9 /* 800A9C04 000A5A44 EC 03 02 32 */ fmuls f0, f3, f8 /* 800A9C08 000A5A48 EC C6 50 28 */ fsubs f6, f6, f10 /* 800A9C0C 000A5A4C EC 84 28 28 */ fsubs f4, f4, f5 /* 800A9C10 000A5A50 EC 00 48 28 */ fsubs f0, f0, f9 /* 800A9C14 000A5A54 EC C2 01 B2 */ fmuls f6, f2, f6 /* 800A9C18 000A5A58 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A9C1C 000A5A5C EC 01 00 2A */ fadds f0, f1, f0 /* 800A9C20 000A5A60 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A9C24 000A5A64 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9C28 000A5A68 EC 04 00 2A */ fadds f0, f4, f0 /* 800A9C2C 000A5A6C EC 08 00 2A */ fadds f0, f8, f0 /* 800A9C30 000A5A70 EC 06 00 32 */ fmuls f0, f6, f0 /* 800A9C34 000A5A74 ED 4A 00 2A */ fadds f10, f10, f0 /* 800A9C38 000A5A78 48 00 00 0C */ b lbl_800A9C44 /* 800A9C3C 000A5A7C 48 00 00 08 */ b lbl_800A9C44 .global lbl_800A9C40 lbl_800A9C40: /* 800A9C40 000A5A80 C1 42 8A 38 */ lfs f10, "@11024"@sda21(r2) .global lbl_800A9C44 lbl_800A9C44: /* 800A9C44 000A5A84 D1 5D 00 00 */ stfs f10, 0x0(r29) /* 800A9C48 000A5A88 38 A5 00 04 */ addi r5, r5, 0x4 .global lbl_800A9C4C lbl_800A9C4C: /* 800A9C4C 000A5A8C 88 1C 00 04 */ lbz r0, 0x4(r28) /* 800A9C50 000A5A90 39 6B 00 01 */ addi r11, r11, 0x1 /* 800A9C54 000A5A94 3B BD 00 04 */ addi r29, r29, 0x4 /* 800A9C58 000A5A98 54 00 07 7B */ rlwinm. r0, r0, 0, 29, 29 /* 800A9C5C 000A5A9C 40 82 00 14 */ bne lbl_800A9C70 /* 800A9C60 000A5AA0 38 04 43 FD */ addi r0, r4, 0x43fd /* 800A9C64 000A5AA4 7C 66 01 D6 */ mullw r3, r6, r0 /* 800A9C68 000A5AA8 3C C3 00 27 */ addis r6, r3, 0x27 /* 800A9C6C 000A5AAC 38 C6 9E C3 */ addi r6, r6, -0x613d .global lbl_800A9C70 lbl_800A9C70: /* 800A9C70 000A5AB0 55 4A 0C 3C */ rlwinm r10, r10, 1, 16, 30 .global lbl_800A9C74 lbl_800A9C74: /* 800A9C74 000A5AB4 7C 0A 40 00 */ cmpw r10, r8 /* 800A9C78 000A5AB8 40 81 FE C0 */ ble lbl_800A9B38 /* 800A9C7C 000A5ABC 48 00 05 DC */ b lbl_800AA258 .global lbl_800A9C80 lbl_800A9C80: /* 800A9C80 000A5AC0 2C 15 00 00 */ cmpwi r21, 0x0 /* 800A9C84 000A5AC4 40 82 02 6C */ bne lbl_800A9EF0 /* 800A9C88 000A5AC8 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800A9C8C 000A5ACC 41 82 02 64 */ beq lbl_800A9EF0 /* 800A9C90 000A5AD0 3C C0 37 11 */ lis r6, 0x3711 /* 800A9C94 000A5AD4 A0 05 00 00 */ lhz r0, 0x0(r5) /* 800A9C98 000A5AD8 38 A6 97 E7 */ addi r5, r6, -0x6819 /* 800A9C9C 000A5ADC 3F 20 3F 82 */ lis r25, 0x3f82 /* 800A9CA0 000A5AE0 7C A0 29 D6 */ mullw r5, r0, r5 /* 800A9CA4 000A5AE4 3D 80 30 A7 */ lis r12, 0x30a7 /* 800A9CA8 000A5AE8 3C C0 00 08 */ lis r6, 0x8 /* 800A9CAC 000A5AEC A2 DC 00 06 */ lhz r22, 0x6(r28) /* 800A9CB0 000A5AF0 3B 39 F6 35 */ addi r25, r25, -0x9cb /* 800A9CB4 000A5AF4 38 C6 B9 29 */ addi r6, r6, -0x46d7 /* 800A9CB8 000A5AF8 39 8C 41 93 */ addi r12, r12, 0x4193 /* 800A9CBC 000A5AFC 3C A5 00 05 */ addis r5, r5, 0x5 /* 800A9CC0 000A5B00 54 84 07 BD */ rlwinm. r4, r4, 0, 30, 30 /* 800A9CC4 000A5B04 38 85 BF 53 */ addi r4, r5, -0x40ad /* 800A9CC8 000A5B08 7C C7 31 D6 */ mullw r6, r7, r6 /* 800A9CCC 000A5B0C 7F 3E C9 D6 */ mullw r25, r30, r25 /* 800A9CD0 000A5B10 7C 86 22 14 */ add r4, r6, r4 /* 800A9CD4 000A5B14 7C B6 61 D6 */ mullw r5, r22, r12 /* 800A9CD8 000A5B18 7C B9 2A 14 */ add r5, r25, r5 /* 800A9CDC 000A5B1C 7C 85 22 14 */ add r4, r5, r4 /* 800A9CE0 000A5B20 90 81 00 10 */ stw r4, 0x10(r1) /* 800A9CE4 000A5B24 88 C1 00 12 */ lbz r6, 0x12(r1) /* 800A9CE8 000A5B28 88 81 00 13 */ lbz r4, 0x13(r1) /* 800A9CEC 000A5B2C 88 A1 00 11 */ lbz r5, 0x11(r1) /* 800A9CF0 000A5B30 7C C6 22 78 */ xor r6, r6, r4 /* 800A9CF4 000A5B34 88 81 00 10 */ lbz r4, 0x10(r1) /* 800A9CF8 000A5B38 7C A5 32 78 */ xor r5, r5, r6 /* 800A9CFC 000A5B3C 98 C1 00 12 */ stb r6, 0x12(r1) /* 800A9D00 000A5B40 7C 84 2A 78 */ xor r4, r4, r5 /* 800A9D04 000A5B44 98 A1 00 11 */ stb r5, 0x11(r1) /* 800A9D08 000A5B48 98 81 00 10 */ stb r4, 0x10(r1) /* 800A9D0C 000A5B4C 80 81 00 10 */ lwz r4, 0x10(r1) /* 800A9D10 000A5B50 40 82 00 14 */ bne lbl_800A9D24 /* 800A9D14 000A5B54 7C 00 19 D6 */ mullw r0, r0, r3 /* 800A9D18 000A5B58 7C 78 02 14 */ add r3, r24, r0 /* 800A9D1C 000A5B5C 38 C3 00 04 */ addi r6, r3, 0x4 /* 800A9D20 000A5B60 48 00 00 38 */ b lbl_800A9D58 .global lbl_800A9D24 lbl_800A9D24: /* 800A9D24 000A5B64 A0 F7 00 00 */ lhz r7, 0x0(r23) /* 800A9D28 000A5B68 54 8C 84 3E */ srwi r12, r4, 16 /* 800A9D2C 000A5B6C 3C A0 00 03 */ lis r5, 0x3 /* 800A9D30 000A5B70 7C CC 3B 96 */ divwu r6, r12, r7 /* 800A9D34 000A5B74 38 05 43 FD */ addi r0, r5, 0x43fd /* 800A9D38 000A5B78 7C A6 39 D6 */ mullw r5, r6, r7 /* 800A9D3C 000A5B7C 7C A5 60 50 */ subf r5, r5, r12 /* 800A9D40 000A5B80 7C A3 29 D6 */ mullw r5, r3, r5 /* 800A9D44 000A5B84 7C 64 01 D6 */ mullw r3, r4, r0 /* 800A9D48 000A5B88 7C 97 2A 14 */ add r4, r23, r5 /* 800A9D4C 000A5B8C 38 C4 00 04 */ addi r6, r4, 0x4 /* 800A9D50 000A5B90 3C 83 00 27 */ addis r4, r3, 0x27 /* 800A9D54 000A5B94 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A9D58 lbl_800A9D58: /* 800A9D58 000A5B98 7C 06 48 AE */ lbzx r0, r6, r9 /* 800A9D5C 000A5B9C 38 E0 00 00 */ li r7, 0x0 /* 800A9D60 000A5BA0 2C 00 00 00 */ cmpwi r0, 0x0 /* 800A9D64 000A5BA4 41 82 00 24 */ beq lbl_800A9D88 /* 800A9D68 000A5BA8 54 80 03 DF */ rlwinm. r0, r4, 0, 15, 15 /* 800A9D6C 000A5BAC 40 82 00 08 */ bne lbl_800A9D74 /* 800A9D70 000A5BB0 38 E0 00 01 */ li r7, 0x1 .global lbl_800A9D74 lbl_800A9D74: /* 800A9D74 000A5BB4 3C 60 00 03 */ lis r3, 0x3 /* 800A9D78 000A5BB8 38 03 43 FD */ addi r0, r3, 0x43fd /* 800A9D7C 000A5BBC 7C 64 01 D6 */ mullw r3, r4, r0 /* 800A9D80 000A5BC0 3C 83 00 27 */ addis r4, r3, 0x27 /* 800A9D84 000A5BC4 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A9D88 lbl_800A9D88: /* 800A9D88 000A5BC8 C8 E2 8A 40 */ lfd f7, "@11031"@sda21(r2) /* 800A9D8C 000A5BCC 39 20 00 01 */ li r9, 0x1 /* 800A9D90 000A5BD0 C0 A2 8A 60 */ lfs f5, "@11367"@sda21(r2) /* 800A9D94 000A5BD4 3C A0 00 03 */ lis r5, 0x3 /* 800A9D98 000A5BD8 C0 62 8A 68 */ lfs f3, "@11369"@sda21(r2) /* 800A9D9C 000A5BDC C0 22 8A 5C */ lfs f1, "@11366"@sda21(r2) /* 800A9DA0 000A5BE0 48 00 01 44 */ b lbl_800A9EE4 /* 800A9DA4 000A5BE4 60 00 00 00 */ nop .global lbl_800A9DA8 lbl_800A9DA8: /* 800A9DA8 000A5BE8 7F 40 48 39 */ and. r0, r26, r9 /* 800A9DAC 000A5BEC 41 82 01 10 */ beq lbl_800A9EBC /* 800A9DB0 000A5BF0 54 80 84 3E */ srwi r0, r4, 16 /* 800A9DB4 000A5BF4 90 01 00 24 */ stw r0, 0x24(r1) /* 800A9DB8 000A5BF8 C0 86 00 04 */ lfs f4, 0x4(r6) /* 800A9DBC 000A5BFC 2C 07 00 00 */ cmpwi r7, 0x0 /* 800A9DC0 000A5C00 C8 01 00 20 */ lfd f0, 0x20(r1) /* 800A9DC4 000A5C04 C0 C6 00 00 */ lfs f6, 0x0(r6) /* 800A9DC8 000A5C08 38 C6 00 08 */ addi r6, r6, 0x8 /* 800A9DCC 000A5C0C EC 00 38 28 */ fsubs f0, f0, f7 /* 800A9DD0 000A5C10 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A9DD4 000A5C14 EC C6 00 2A */ fadds f6, f6, f0 /* 800A9DD8 000A5C18 41 82 00 08 */ beq lbl_800A9DE0 /* 800A9DDC 000A5C1C FC C0 30 50 */ fneg f6, f6 .global lbl_800A9DE0 lbl_800A9DE0: /* 800A9DE0 000A5C20 C1 0A 00 00 */ lfs f8, 0x0(r10) /* 800A9DE4 000A5C24 88 6B 00 00 */ lbz r3, 0x0(r11) /* 800A9DE8 000A5C28 FC 08 30 00 */ fcmpu cr0, f8, f6 /* 800A9DEC 000A5C2C 40 82 00 08 */ bne lbl_800A9DF4 /* 800A9DF0 000A5C30 48 00 00 C4 */ b lbl_800A9EB4 .global lbl_800A9DF4 lbl_800A9DF4: /* 800A9DF4 000A5C34 54 60 07 BF */ clrlwi. r0, r3, 30 /* 800A9DF8 000A5C38 41 82 00 18 */ beq lbl_800A9E10 /* 800A9DFC 000A5C3C 2C 00 00 01 */ cmpwi r0, 0x1 /* 800A9E00 000A5C40 41 82 00 20 */ beq lbl_800A9E20 /* 800A9E04 000A5C44 2C 00 00 02 */ cmpwi r0, 0x2 /* 800A9E08 000A5C48 41 82 00 AC */ beq lbl_800A9EB4 /* 800A9E0C 000A5C4C 48 00 00 A4 */ b lbl_800A9EB0 .global lbl_800A9E10 lbl_800A9E10: /* 800A9E10 000A5C50 EC 06 40 28 */ fsubs f0, f6, f8 /* 800A9E14 000A5C54 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9E18 000A5C58 ED 08 00 2A */ fadds f8, f8, f0 /* 800A9E1C 000A5C5C 48 00 00 98 */ b lbl_800A9EB4 .global lbl_800A9E20 lbl_800A9E20: /* 800A9E20 000A5C60 28 03 00 01 */ cmplwi r3, 0x1 /* 800A9E24 000A5C64 40 82 00 24 */ bne lbl_800A9E48 /* 800A9E28 000A5C68 EC 85 00 B2 */ fmuls f4, f5, f2 /* 800A9E2C 000A5C6C EC 06 40 28 */ fsubs f0, f6, f8 /* 800A9E30 000A5C70 EC 81 20 28 */ fsubs f4, f1, f4 /* 800A9E34 000A5C74 EC 04 00 32 */ fmuls f0, f4, f0 /* 800A9E38 000A5C78 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9E3C 000A5C7C EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9E40 000A5C80 ED 08 00 2A */ fadds f8, f8, f0 /* 800A9E44 000A5C84 48 00 00 70 */ b lbl_800A9EB4 .global lbl_800A9E48 lbl_800A9E48: /* 800A9E48 000A5C88 54 60 EF FF */ extrwi. r0, r3, 1, 28 /* 800A9E4C 000A5C8C 40 82 00 0C */ bne lbl_800A9E58 /* 800A9E50 000A5C90 C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800A9E54 000A5C94 48 00 00 08 */ b lbl_800A9E5C .global lbl_800A9E58 lbl_800A9E58: /* 800A9E58 000A5C98 C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800A9E5C lbl_800A9E5C: /* 800A9E5C 000A5C9C 54 60 F7 FF */ extrwi. r0, r3, 1, 29 /* 800A9E60 000A5CA0 40 82 00 0C */ bne lbl_800A9E6C /* 800A9E64 000A5CA4 C1 42 8A 38 */ lfs f10, "@11024"@sda21(r2) /* 800A9E68 000A5CA8 48 00 00 08 */ b lbl_800A9E70 .global lbl_800A9E6C lbl_800A9E6C: /* 800A9E6C 000A5CAC C1 42 8A 64 */ lfs f10, "@11368"@sda21(r2) .global lbl_800A9E70 lbl_800A9E70: /* 800A9E70 000A5CB0 EC 89 50 2A */ fadds f4, f9, f10 /* 800A9E74 000A5CB4 EC 03 02 72 */ fmuls f0, f3, f9 /* 800A9E78 000A5CB8 EC C6 40 28 */ fsubs f6, f6, f8 /* 800A9E7C 000A5CBC EC 84 28 28 */ fsubs f4, f4, f5 /* 800A9E80 000A5CC0 EC 00 50 28 */ fsubs f0, f0, f10 /* 800A9E84 000A5CC4 EC C2 01 B2 */ fmuls f6, f2, f6 /* 800A9E88 000A5CC8 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A9E8C 000A5CCC EC 01 00 2A */ fadds f0, f1, f0 /* 800A9E90 000A5CD0 EC 82 01 32 */ fmuls f4, f2, f4 /* 800A9E94 000A5CD4 EC 02 00 32 */ fmuls f0, f2, f0 /* 800A9E98 000A5CD8 EC 04 00 2A */ fadds f0, f4, f0 /* 800A9E9C 000A5CDC EC 09 00 2A */ fadds f0, f9, f0 /* 800A9EA0 000A5CE0 EC 06 00 32 */ fmuls f0, f6, f0 /* 800A9EA4 000A5CE4 ED 08 00 2A */ fadds f8, f8, f0 /* 800A9EA8 000A5CE8 48 00 00 0C */ b lbl_800A9EB4 /* 800A9EAC 000A5CEC 48 00 00 08 */ b lbl_800A9EB4 .global lbl_800A9EB0 lbl_800A9EB0: /* 800A9EB0 000A5CF0 C1 02 8A 38 */ lfs f8, "@11024"@sda21(r2) .global lbl_800A9EB4 lbl_800A9EB4: /* 800A9EB4 000A5CF4 D1 1D 00 00 */ stfs f8, 0x0(r29) /* 800A9EB8 000A5CF8 39 4A 00 04 */ addi r10, r10, 0x4 .global lbl_800A9EBC lbl_800A9EBC: /* 800A9EBC 000A5CFC 88 1C 00 04 */ lbz r0, 0x4(r28) /* 800A9EC0 000A5D00 39 6B 00 01 */ addi r11, r11, 0x1 /* 800A9EC4 000A5D04 3B BD 00 04 */ addi r29, r29, 0x4 /* 800A9EC8 000A5D08 54 00 07 7B */ rlwinm. r0, r0, 0, 29, 29 /* 800A9ECC 000A5D0C 40 82 00 14 */ bne lbl_800A9EE0 /* 800A9ED0 000A5D10 38 05 43 FD */ addi r0, r5, 0x43fd /* 800A9ED4 000A5D14 7C 64 01 D6 */ mullw r3, r4, r0 /* 800A9ED8 000A5D18 3C 83 00 27 */ addis r4, r3, 0x27 /* 800A9EDC 000A5D1C 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800A9EE0 lbl_800A9EE0: /* 800A9EE0 000A5D20 55 29 0C 3C */ rlwinm r9, r9, 1, 16, 30 .global lbl_800A9EE4 lbl_800A9EE4: /* 800A9EE4 000A5D24 7C 09 40 00 */ cmpw r9, r8 /* 800A9EE8 000A5D28 40 81 FE C0 */ ble lbl_800A9DA8 /* 800A9EEC 000A5D2C 48 00 03 6C */ b lbl_800AA258 .global lbl_800A9EF0 lbl_800A9EF0: /* 800A9EF0 000A5D30 3D 80 3F 82 */ lis r12, 0x3f82 /* 800A9EF4 000A5D34 3F 60 30 A7 */ lis r27, 0x30a7 /* 800A9EF8 000A5D38 3A CC F6 35 */ addi r22, r12, -0x9cb /* 800A9EFC 000A5D3C 3F 20 00 08 */ lis r25, 0x8 /* 800A9F00 000A5D40 3D 80 37 11 */ lis r12, 0x3711 /* 800A9F04 000A5D44 A3 FC 00 06 */ lhz r31, 0x6(r28) /* 800A9F08 000A5D48 3B 39 B9 29 */ addi r25, r25, -0x46d7 /* 800A9F0C 000A5D4C 3B 7B 41 93 */ addi r27, r27, 0x4193 /* 800A9F10 000A5D50 54 00 07 BD */ rlwinm. r0, r0, 0, 30, 30 /* 800A9F14 000A5D54 A1 4A 00 00 */ lhz r10, 0x0(r10) /* 800A9F18 000A5D58 39 8C 97 E7 */ addi r12, r12, -0x6819 /* 800A9F1C 000A5D5C 7D 8A 61 D6 */ mullw r12, r10, r12 /* 800A9F20 000A5D60 7F DE B1 D6 */ mullw r30, r30, r22 /* 800A9F24 000A5D64 3D 8C 00 05 */ addis r12, r12, 0x5 /* 800A9F28 000A5D68 7C 1F D9 D6 */ mullw r0, r31, r27 /* 800A9F2C 000A5D6C 7C C6 C9 D6 */ mullw r6, r6, r25 /* 800A9F30 000A5D70 7C 1E 02 14 */ add r0, r30, r0 /* 800A9F34 000A5D74 7C C6 02 14 */ add r6, r6, r0 /* 800A9F38 000A5D78 7C C6 62 14 */ add r6, r6, r12 /* 800A9F3C 000A5D7C 38 C6 BF 53 */ addi r6, r6, -0x40ad /* 800A9F40 000A5D80 90 C1 00 0C */ stw r6, 0xc(r1) /* 800A9F44 000A5D84 8B 21 00 0E */ lbz r25, 0xe(r1) /* 800A9F48 000A5D88 88 C1 00 0F */ lbz r6, 0xf(r1) /* 800A9F4C 000A5D8C 89 81 00 0D */ lbz r12, 0xd(r1) /* 800A9F50 000A5D90 7F 39 32 78 */ xor r25, r25, r6 /* 800A9F54 000A5D94 88 C1 00 0C */ lbz r6, 0xc(r1) /* 800A9F58 000A5D98 7D 8C CA 78 */ xor r12, r12, r25 /* 800A9F5C 000A5D9C 9B 21 00 0E */ stb r25, 0xe(r1) /* 800A9F60 000A5DA0 7C C6 62 78 */ xor r6, r6, r12 /* 800A9F64 000A5DA4 99 81 00 0D */ stb r12, 0xd(r1) /* 800A9F68 000A5DA8 98 C1 00 0C */ stb r6, 0xc(r1) /* 800A9F6C 000A5DAC 80 C1 00 0C */ lwz r6, 0xc(r1) /* 800A9F70 000A5DB0 40 82 00 14 */ bne lbl_800A9F84 /* 800A9F74 000A5DB4 7D 4A 19 D6 */ mullw r10, r10, r3 /* 800A9F78 000A5DB8 7D 58 52 14 */ add r10, r24, r10 /* 800A9F7C 000A5DBC 39 4A 00 04 */ addi r10, r10, 0x4 /* 800A9F80 000A5DC0 48 00 00 38 */ b lbl_800A9FB8 .global lbl_800A9F84 lbl_800A9F84: /* 800A9F84 000A5DC4 A3 37 00 00 */ lhz r25, 0x0(r23) /* 800A9F88 000A5DC8 54 DB 84 3E */ srwi r27, r6, 16 /* 800A9F8C 000A5DCC 3D 40 00 03 */ lis r10, 0x3 /* 800A9F90 000A5DD0 7D 9B CB 96 */ divwu r12, r27, r25 /* 800A9F94 000A5DD4 39 4A 43 FD */ addi r10, r10, 0x43fd /* 800A9F98 000A5DD8 7D 8C C9 D6 */ mullw r12, r12, r25 /* 800A9F9C 000A5DDC 7D 8C D8 50 */ subf r12, r12, r27 /* 800A9FA0 000A5DE0 7C C6 51 D6 */ mullw r6, r6, r10 /* 800A9FA4 000A5DE4 7D 83 61 D6 */ mullw r12, r3, r12 /* 800A9FA8 000A5DE8 3C C6 00 27 */ addis r6, r6, 0x27 /* 800A9FAC 000A5DEC 38 C6 9E C3 */ addi r6, r6, -0x613d /* 800A9FB0 000A5DF0 7D 57 62 14 */ add r10, r23, r12 /* 800A9FB4 000A5DF4 39 4A 00 04 */ addi r10, r10, 0x4 .global lbl_800A9FB8 lbl_800A9FB8: /* 800A9FB8 000A5DF8 3F 20 00 08 */ lis r25, 0x8 /* 800A9FBC 000A5DFC 3D 80 37 11 */ lis r12, 0x3711 /* 800A9FC0 000A5E00 3B 39 B9 29 */ addi r25, r25, -0x46d7 /* 800A9FC4 000A5E04 A0 A5 00 00 */ lhz r5, 0x0(r5) /* 800A9FC8 000A5E08 7C E7 C9 D6 */ mullw r7, r7, r25 /* 800A9FCC 000A5E0C 39 8C 97 E7 */ addi r12, r12, -0x6819 /* 800A9FD0 000A5E10 54 84 07 BD */ rlwinm. r4, r4, 0, 30, 30 /* 800A9FD4 000A5E14 7C 85 61 D6 */ mullw r4, r5, r12 /* 800A9FD8 000A5E18 7C 07 02 14 */ add r0, r7, r0 /* 800A9FDC 000A5E1C 3C 84 00 05 */ addis r4, r4, 0x5 /* 800A9FE0 000A5E20 7C 80 22 14 */ add r4, r0, r4 /* 800A9FE4 000A5E24 38 04 BF 53 */ addi r0, r4, -0x40ad /* 800A9FE8 000A5E28 90 01 00 08 */ stw r0, 0x8(r1) /* 800A9FEC 000A5E2C 88 E1 00 0A */ lbz r7, 0xa(r1) /* 800A9FF0 000A5E30 88 01 00 0B */ lbz r0, 0xb(r1) /* 800A9FF4 000A5E34 88 81 00 09 */ lbz r4, 0x9(r1) /* 800A9FF8 000A5E38 7C E7 02 78 */ xor r7, r7, r0 /* 800A9FFC 000A5E3C 88 01 00 08 */ lbz r0, 0x8(r1) /* 800AA000 000A5E40 7C 84 3A 78 */ xor r4, r4, r7 /* 800AA004 000A5E44 98 E1 00 0A */ stb r7, 0xa(r1) /* 800AA008 000A5E48 7C 00 22 78 */ xor r0, r0, r4 /* 800AA00C 000A5E4C 98 81 00 09 */ stb r4, 0x9(r1) /* 800AA010 000A5E50 98 01 00 08 */ stb r0, 0x8(r1) /* 800AA014 000A5E54 80 81 00 08 */ lwz r4, 0x8(r1) /* 800AA018 000A5E58 40 82 00 14 */ bne lbl_800AA02C /* 800AA01C 000A5E5C 7C 05 19 D6 */ mullw r0, r5, r3 /* 800AA020 000A5E60 7C 78 02 14 */ add r3, r24, r0 /* 800AA024 000A5E64 38 63 00 04 */ addi r3, r3, 0x4 /* 800AA028 000A5E68 48 00 00 38 */ b lbl_800AA060 .global lbl_800AA02C lbl_800AA02C: /* 800AA02C 000A5E6C A1 97 00 00 */ lhz r12, 0x0(r23) /* 800AA030 000A5E70 54 98 84 3E */ srwi r24, r4, 16 /* 800AA034 000A5E74 3C A0 00 03 */ lis r5, 0x3 /* 800AA038 000A5E78 7C F8 63 96 */ divwu r7, r24, r12 /* 800AA03C 000A5E7C 38 05 43 FD */ addi r0, r5, 0x43fd /* 800AA040 000A5E80 7C A7 61 D6 */ mullw r5, r7, r12 /* 800AA044 000A5E84 7C A5 C0 50 */ subf r5, r5, r24 /* 800AA048 000A5E88 7C 63 29 D6 */ mullw r3, r3, r5 /* 800AA04C 000A5E8C 7C 84 01 D6 */ mullw r4, r4, r0 /* 800AA050 000A5E90 7C 77 1A 14 */ add r3, r23, r3 /* 800AA054 000A5E94 38 63 00 04 */ addi r3, r3, 0x4 /* 800AA058 000A5E98 3C 84 00 27 */ addis r4, r4, 0x27 /* 800AA05C 000A5E9C 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800AA060 lbl_800AA060: /* 800AA060 000A5EA0 7C AA 48 AE */ lbzx r5, r10, r9 /* 800AA064 000A5EA4 38 00 00 00 */ li r0, 0x0 /* 800AA068 000A5EA8 2C 05 00 00 */ cmpwi r5, 0x0 /* 800AA06C 000A5EAC 41 82 00 24 */ beq lbl_800AA090 /* 800AA070 000A5EB0 54 C5 03 DF */ rlwinm. r5, r6, 0, 15, 15 /* 800AA074 000A5EB4 40 82 00 08 */ bne lbl_800AA07C /* 800AA078 000A5EB8 38 00 00 01 */ li r0, 0x1 .global lbl_800AA07C lbl_800AA07C: /* 800AA07C 000A5EBC 3C A0 00 03 */ lis r5, 0x3 /* 800AA080 000A5EC0 38 A5 43 FD */ addi r5, r5, 0x43fd /* 800AA084 000A5EC4 7C A6 29 D6 */ mullw r5, r6, r5 /* 800AA088 000A5EC8 3C C5 00 27 */ addis r6, r5, 0x27 /* 800AA08C 000A5ECC 38 C6 9E C3 */ addi r6, r6, -0x613d .global lbl_800AA090 lbl_800AA090: /* 800AA090 000A5ED0 7C E3 48 AE */ lbzx r7, r3, r9 /* 800AA094 000A5ED4 38 A0 00 00 */ li r5, 0x0 /* 800AA098 000A5ED8 2C 07 00 00 */ cmpwi r7, 0x0 /* 800AA09C 000A5EDC 41 82 00 24 */ beq lbl_800AA0C0 /* 800AA0A0 000A5EE0 54 87 03 DF */ rlwinm. r7, r4, 0, 15, 15 /* 800AA0A4 000A5EE4 40 82 00 08 */ bne lbl_800AA0AC /* 800AA0A8 000A5EE8 38 A0 00 01 */ li r5, 0x1 .global lbl_800AA0AC lbl_800AA0AC: /* 800AA0AC 000A5EEC 3C E0 00 03 */ lis r7, 0x3 /* 800AA0B0 000A5EF0 38 E7 43 FD */ addi r7, r7, 0x43fd /* 800AA0B4 000A5EF4 7C 84 39 D6 */ mullw r4, r4, r7 /* 800AA0B8 000A5EF8 3C 84 00 27 */ addis r4, r4, 0x27 /* 800AA0BC 000A5EFC 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800AA0C0 lbl_800AA0C0: /* 800AA0C0 000A5F00 C8 02 8A 40 */ lfd f0, "@11031"@sda21(r2) /* 800AA0C4 000A5F04 3A A0 00 01 */ li r21, 0x1 /* 800AA0C8 000A5F08 C0 E2 8A 60 */ lfs f7, "@11367"@sda21(r2) /* 800AA0CC 000A5F0C 3C E0 00 03 */ lis r7, 0x3 /* 800AA0D0 000A5F10 C0 A2 8A 68 */ lfs f5, "@11369"@sda21(r2) /* 800AA0D4 000A5F14 C0 82 8A 5C */ lfs f4, "@11366"@sda21(r2) /* 800AA0D8 000A5F18 48 00 01 78 */ b lbl_800AA250 /* 800AA0DC 000A5F1C 60 00 00 00 */ nop .global lbl_800AA0E0 lbl_800AA0E0: /* 800AA0E0 000A5F20 7F 49 A8 39 */ and. r9, r26, r21 /* 800AA0E4 000A5F24 41 82 01 38 */ beq lbl_800AA21C /* 800AA0E8 000A5F28 54 C9 84 3E */ srwi r9, r6, 16 /* 800AA0EC 000A5F2C 91 21 00 2C */ stw r9, 0x2c(r1) /* 800AA0F0 000A5F30 C0 6A 00 04 */ lfs f3, 0x4(r10) /* 800AA0F4 000A5F34 2C 00 00 00 */ cmpwi r0, 0x0 /* 800AA0F8 000A5F38 C8 21 00 28 */ lfd f1, 0x28(r1) /* 800AA0FC 000A5F3C C0 CA 00 00 */ lfs f6, 0x0(r10) /* 800AA100 000A5F40 39 4A 00 08 */ addi r10, r10, 0x8 /* 800AA104 000A5F44 EC 21 00 28 */ fsubs f1, f1, f0 /* 800AA108 000A5F48 EC 23 00 72 */ fmuls f1, f3, f1 /* 800AA10C 000A5F4C EC 26 08 2A */ fadds f1, f6, f1 /* 800AA110 000A5F50 41 82 00 08 */ beq lbl_800AA118 /* 800AA114 000A5F54 FC 20 08 50 */ fneg f1, f1 .global lbl_800AA118 lbl_800AA118: /* 800AA118 000A5F58 54 89 84 3E */ srwi r9, r4, 16 /* 800AA11C 000A5F5C 91 21 00 24 */ stw r9, 0x24(r1) /* 800AA120 000A5F60 C0 C3 00 04 */ lfs f6, 0x4(r3) /* 800AA124 000A5F64 2C 05 00 00 */ cmpwi r5, 0x0 /* 800AA128 000A5F68 C8 61 00 20 */ lfd f3, 0x20(r1) /* 800AA12C 000A5F6C C1 03 00 00 */ lfs f8, 0x0(r3) /* 800AA130 000A5F70 38 63 00 08 */ addi r3, r3, 0x8 /* 800AA134 000A5F74 EC 63 00 28 */ fsubs f3, f3, f0 /* 800AA138 000A5F78 EC 66 00 F2 */ fmuls f3, f6, f3 /* 800AA13C 000A5F7C ED 08 18 2A */ fadds f8, f8, f3 /* 800AA140 000A5F80 41 82 00 08 */ beq lbl_800AA148 /* 800AA144 000A5F84 FD 00 40 50 */ fneg f8, f8 .global lbl_800AA148 lbl_800AA148: /* 800AA148 000A5F88 FC 01 40 00 */ fcmpu cr0, f1, f8 /* 800AA14C 000A5F8C 89 8B 00 00 */ lbz r12, 0x0(r11) /* 800AA150 000A5F90 40 82 00 08 */ bne lbl_800AA158 /* 800AA154 000A5F94 48 00 00 C4 */ b lbl_800AA218 .global lbl_800AA158 lbl_800AA158: /* 800AA158 000A5F98 55 89 07 BF */ clrlwi. r9, r12, 30 /* 800AA15C 000A5F9C 41 82 00 18 */ beq lbl_800AA174 /* 800AA160 000A5FA0 2C 09 00 01 */ cmpwi r9, 0x1 /* 800AA164 000A5FA4 41 82 00 20 */ beq lbl_800AA184 /* 800AA168 000A5FA8 2C 09 00 02 */ cmpwi r9, 0x2 /* 800AA16C 000A5FAC 41 82 00 AC */ beq lbl_800AA218 /* 800AA170 000A5FB0 48 00 00 A4 */ b lbl_800AA214 .global lbl_800AA174 lbl_800AA174: /* 800AA174 000A5FB4 EC 68 08 28 */ fsubs f3, f8, f1 /* 800AA178 000A5FB8 EC 62 00 F2 */ fmuls f3, f2, f3 /* 800AA17C 000A5FBC EC 21 18 2A */ fadds f1, f1, f3 /* 800AA180 000A5FC0 48 00 00 98 */ b lbl_800AA218 .global lbl_800AA184 lbl_800AA184: /* 800AA184 000A5FC4 28 0C 00 01 */ cmplwi r12, 0x1 /* 800AA188 000A5FC8 40 82 00 24 */ bne lbl_800AA1AC /* 800AA18C 000A5FCC EC C7 00 B2 */ fmuls f6, f7, f2 /* 800AA190 000A5FD0 EC 68 08 28 */ fsubs f3, f8, f1 /* 800AA194 000A5FD4 EC C4 30 28 */ fsubs f6, f4, f6 /* 800AA198 000A5FD8 EC 66 00 F2 */ fmuls f3, f6, f3 /* 800AA19C 000A5FDC EC 62 00 F2 */ fmuls f3, f2, f3 /* 800AA1A0 000A5FE0 EC 62 00 F2 */ fmuls f3, f2, f3 /* 800AA1A4 000A5FE4 EC 21 18 2A */ fadds f1, f1, f3 /* 800AA1A8 000A5FE8 48 00 00 70 */ b lbl_800AA218 .global lbl_800AA1AC lbl_800AA1AC: /* 800AA1AC 000A5FEC 55 89 EF FF */ extrwi. r9, r12, 1, 28 /* 800AA1B0 000A5FF0 40 82 00 0C */ bne lbl_800AA1BC /* 800AA1B4 000A5FF4 C1 22 8A 38 */ lfs f9, "@11024"@sda21(r2) /* 800AA1B8 000A5FF8 48 00 00 08 */ b lbl_800AA1C0 .global lbl_800AA1BC lbl_800AA1BC: /* 800AA1BC 000A5FFC C1 22 8A 64 */ lfs f9, "@11368"@sda21(r2) .global lbl_800AA1C0 lbl_800AA1C0: /* 800AA1C0 000A6000 55 89 F7 FF */ extrwi. r9, r12, 1, 29 /* 800AA1C4 000A6004 40 82 00 0C */ bne lbl_800AA1D0 /* 800AA1C8 000A6008 C1 42 8A 38 */ lfs f10, "@11024"@sda21(r2) /* 800AA1CC 000A600C 48 00 00 08 */ b lbl_800AA1D4 .global lbl_800AA1D0 lbl_800AA1D0: /* 800AA1D0 000A6010 C1 42 8A 64 */ lfs f10, "@11368"@sda21(r2) .global lbl_800AA1D4 lbl_800AA1D4: /* 800AA1D4 000A6014 EC C9 50 2A */ fadds f6, f9, f10 /* 800AA1D8 000A6018 EC 65 02 72 */ fmuls f3, f5, f9 /* 800AA1DC 000A601C ED 08 08 28 */ fsubs f8, f8, f1 /* 800AA1E0 000A6020 EC C6 38 28 */ fsubs f6, f6, f7 /* 800AA1E4 000A6024 EC 63 50 28 */ fsubs f3, f3, f10 /* 800AA1E8 000A6028 ED 02 02 32 */ fmuls f8, f2, f8 /* 800AA1EC 000A602C EC C2 01 B2 */ fmuls f6, f2, f6 /* 800AA1F0 000A6030 EC 64 18 2A */ fadds f3, f4, f3 /* 800AA1F4 000A6034 EC C2 01 B2 */ fmuls f6, f2, f6 /* 800AA1F8 000A6038 EC 62 00 F2 */ fmuls f3, f2, f3 /* 800AA1FC 000A603C EC 66 18 2A */ fadds f3, f6, f3 /* 800AA200 000A6040 EC 69 18 2A */ fadds f3, f9, f3 /* 800AA204 000A6044 EC 68 00 F2 */ fmuls f3, f8, f3 /* 800AA208 000A6048 EC 21 18 2A */ fadds f1, f1, f3 /* 800AA20C 000A604C 48 00 00 0C */ b lbl_800AA218 /* 800AA210 000A6050 48 00 00 08 */ b lbl_800AA218 .global lbl_800AA214 lbl_800AA214: /* 800AA214 000A6054 C0 22 8A 38 */ lfs f1, "@11024"@sda21(r2) .global lbl_800AA218 lbl_800AA218: /* 800AA218 000A6058 D0 3D 00 00 */ stfs f1, 0x0(r29) .global lbl_800AA21C lbl_800AA21C: /* 800AA21C 000A605C 89 3C 00 04 */ lbz r9, 0x4(r28) /* 800AA220 000A6060 39 6B 00 01 */ addi r11, r11, 0x1 /* 800AA224 000A6064 3B BD 00 04 */ addi r29, r29, 0x4 /* 800AA228 000A6068 55 29 07 7B */ rlwinm. r9, r9, 0, 29, 29 /* 800AA22C 000A606C 40 82 00 20 */ bne lbl_800AA24C /* 800AA230 000A6070 39 27 43 FD */ addi r9, r7, 0x43fd /* 800AA234 000A6074 7C C6 49 D6 */ mullw r6, r6, r9 /* 800AA238 000A6078 7C 84 49 D6 */ mullw r4, r4, r9 /* 800AA23C 000A607C 3C C6 00 27 */ addis r6, r6, 0x27 /* 800AA240 000A6080 38 C6 9E C3 */ addi r6, r6, -0x613d /* 800AA244 000A6084 3C 84 00 27 */ addis r4, r4, 0x27 /* 800AA248 000A6088 38 84 9E C3 */ addi r4, r4, -0x613d .global lbl_800AA24C lbl_800AA24C: /* 800AA24C 000A608C 56 B5 0C 3C */ rlwinm r21, r21, 1, 16, 30 .global lbl_800AA250 lbl_800AA250: /* 800AA250 000A6090 7C 15 40 00 */ cmpw r21, r8 /* 800AA254 000A6094 40 81 FE 8C */ ble lbl_800AA0E0 .global lbl_800AA258 lbl_800AA258: /* 800AA258 000A6098 39 61 00 70 */ addi r11, r1, 0x70 /* 800AA25C 000A609C E3 E1 00 78 */ psq_l f31, 0x78(r1), 0, qr0 /* 800AA260 000A60A0 CB E1 00 70 */ lfd f31, 0x70(r1) /* 800AA264 000A60A4 4B F5 D1 0D */ bl lbl_80007370 /* 800AA268 000A60A8 80 01 00 84 */ lwz r0, 0x84(r1) /* 800AA26C 000A60AC 7C 08 03 A6 */ mtlr r0 /* 800AA270 000A60B0 38 21 00 80 */ addi r1, r1, 0x80 /* 800AA274 000A60B4 4E 80 00 20 */ blr /* 800AA278 000A60B8 00 00 00 00 */ .4byte 0x00000000 /* 800AA27C 000A60BC 00 00 00 00 */ .4byte 0x00000000 .global AnimCurveExecuteTexture__Q24nw4r2efFPUcPQ34nw4r2ef8ParticleUlUsUl AnimCurveExecuteTexture__Q24nw4r2efFPUcPQ34nw4r2ef8ParticleUlUsUl: /* 800AA280 000A60C0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 800AA284 000A60C4 7C 08 02 A6 */ mflr r0 /* 800AA288 000A60C8 90 01 00 64 */ stw r0, 0x64(r1) /* 800AA28C 000A60CC 39 61 00 50 */ addi r11, r1, 0x50 /* 800AA290 000A60D0 DB E1 00 50 */ stfd f31, 0x50(r1) /* 800AA294 000A60D4 F3 E1 00 58 */ psq_st f31, 0x58(r1), 0, qr0 /* 800AA298 000A60D8 4B F5 D0 95 */ bl lbl_8000732C /* 800AA29C 000A60DC 89 43 00 04 */ lbz r10, 0x4(r3) /* 800AA2A0 000A60E0 3D 20 43 30 */ lis r9, 0x4330 /* 800AA2A4 000A60E4 80 03 00 0C */ lwz r0, 0xc(r3) /* 800AA2A8 000A60E8 3B C3 00 20 */ addi r30, r3, 0x20 /* 800AA2AC 000A60EC 81 03 00 10 */ lwz r8, 0x10(r3) /* 800AA2B0 000A60F0 55 4B 06 B5 */ rlwinm. r11, r10, 0, 26, 26 /* 800AA2B4 000A60F4 7F BE 02 14 */ add r29, r30, r0 /* 800AA2B8 000A60F8 80 03 00 14 */ lwz r0, 0x14(r3) /* 800AA2BC 000A60FC 7F 9D 42 14 */ add r28, r29, r8 /* 800AA2C0 000A6100 7C 98 23 78 */ mr r24, r4 /* 800AA2C4 000A6104 91 21 00 10 */ stw r9, 0x10(r1) /* 800AA2C8 000A6108 7C 7F 1B 78 */ mr r31, r3 /* 800AA2CC 000A610C 7C B9 2B 78 */ mr r25, r5 /* 800AA2D0 000A6110 7C DA 33 78 */ mr r26, r6 /* 800AA2D4 000A6114 91 21 00 18 */ stw r9, 0x18(r1) /* 800AA2D8 000A6118 7F 7C 02 14 */ add r27, r28, r0 /* 800AA2DC 000A611C 38 80 00 00 */ li r4, 0x0 /* 800AA2E0 000A6120 40 82 00 44 */ bne lbl_800AA324 /* 800AA2E4 000A6124 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AA2E8 000A6128 28 00 00 01 */ cmplwi r0, 0x1 /* 800AA2EC 000A612C 41 81 00 38 */ bgt lbl_800AA324 /* 800AA2F0 000A6130 55 40 06 31 */ rlwinm. r0, r10, 0, 24, 24 /* 800AA2F4 000A6134 40 82 00 1C */ bne lbl_800AA310 /* 800AA2F8 000A6138 A1 03 00 08 */ lhz r8, 0x8(r3) /* 800AA2FC 000A613C 7C 05 40 40 */ cmplw r5, r8 /* 800AA300 000A6140 41 80 00 08 */ blt lbl_800AA308 /* 800AA304 000A6144 48 00 02 94 */ b lbl_800AA598 .global lbl_800AA308 lbl_800AA308: /* 800AA308 000A6148 54 A8 04 3E */ clrlwi r8, r5, 16 /* 800AA30C 000A614C 48 00 02 8C */ b lbl_800AA598 .global lbl_800AA310 lbl_800AA310: /* 800AA310 000A6150 A0 03 00 08 */ lhz r0, 0x8(r3) /* 800AA314 000A6154 7C 00 29 D6 */ mullw r0, r0, r5 /* 800AA318 000A6158 7C 00 3B 96 */ divwu r0, r0, r7 /* 800AA31C 000A615C 54 08 04 3E */ clrlwi r8, r0, 16 /* 800AA320 000A6160 48 00 02 78 */ b lbl_800AA598 .global lbl_800AA324 lbl_800AA324: /* 800AA324 000A6164 55 40 06 31 */ rlwinm. r0, r10, 0, 24, 24 /* 800AA328 000A6168 40 82 00 C4 */ bne lbl_800AA3EC /* 800AA32C 000A616C A1 03 00 08 */ lhz r8, 0x8(r3) /* 800AA330 000A6170 28 08 00 01 */ cmplwi r8, 0x1 /* 800AA334 000A6174 40 81 00 0C */ ble lbl_800AA340 /* 800AA338 000A6178 55 40 06 73 */ rlwinm. r0, r10, 0, 25, 25 /* 800AA33C 000A617C 40 82 00 38 */ bne lbl_800AA374 .global lbl_800AA340 lbl_800AA340: /* 800AA340 000A6180 7C 85 43 96 */ divwu r4, r5, r8 /* 800AA344 000A6184 2C 0B 00 00 */ cmpwi r11, 0x0 /* 800AA348 000A6188 40 82 00 1C */ bne lbl_800AA364 /* 800AA34C 000A618C 88 63 00 05 */ lbz r3, 0x5(r3) /* 800AA350 000A6190 7C 04 18 40 */ cmplw r4, r3 /* 800AA354 000A6194 41 80 00 10 */ blt lbl_800AA364 /* 800AA358 000A6198 38 03 FF FF */ addi r0, r3, -0x1 /* 800AA35C 000A619C 54 04 06 3E */ clrlwi r4, r0, 24 /* 800AA360 000A61A0 48 00 02 38 */ b lbl_800AA598 .global lbl_800AA364 lbl_800AA364: /* 800AA364 000A61A4 7C 04 41 D6 */ mullw r0, r4, r8 /* 800AA368 000A61A8 7C 00 28 50 */ subf r0, r0, r5 /* 800AA36C 000A61AC 54 08 04 3E */ clrlwi r8, r0, 16 /* 800AA370 000A61B0 48 00 02 28 */ b lbl_800AA598 .global lbl_800AA374 lbl_800AA374: /* 800AA374 000A61B4 38 E8 FF FF */ addi r7, r8, -0x1 /* 800AA378 000A61B8 2C 0B 00 00 */ cmpwi r11, 0x0 /* 800AA37C 000A61BC 7C 85 3B 96 */ divwu r4, r5, r7 /* 800AA380 000A61C0 40 82 00 40 */ bne lbl_800AA3C0 /* 800AA384 000A61C4 88 C3 00 05 */ lbz r6, 0x5(r3) /* 800AA388 000A61C8 7C 04 30 40 */ cmplw r4, r6 /* 800AA38C 000A61CC 41 80 00 34 */ blt lbl_800AA3C0 /* 800AA390 000A61D0 54 C4 0F FE */ srwi r4, r6, 31 /* 800AA394 000A61D4 54 C0 07 FE */ clrlwi r0, r6, 31 /* 800AA398 000A61D8 7C 03 22 78 */ xor r3, r0, r4 /* 800AA39C 000A61DC 7C 84 18 50 */ subf r4, r4, r3 /* 800AA3A0 000A61E0 38 06 FF FF */ addi r0, r6, -0x1 /* 800AA3A4 000A61E4 7C 85 00 34 */ cntlzw r5, r4 /* 800AA3A8 000A61E8 54 E3 04 3E */ clrlwi r3, r7, 16 /* 800AA3AC 000A61EC 54 04 06 3E */ clrlwi r4, r0, 24 /* 800AA3B0 000A61F0 54 A0 DF FE */ extrwi r0, r5, 1, 26 /* 800AA3B4 000A61F4 7C 00 00 D0 */ neg r0, r0 /* 800AA3B8 000A61F8 7C 68 00 78 */ andc r8, r3, r0 /* 800AA3BC 000A61FC 48 00 01 DC */ b lbl_800AA598 .global lbl_800AA3C0 lbl_800AA3C0: /* 800AA3C0 000A6200 54 80 07 FF */ clrlwi. r0, r4, 31 /* 800AA3C4 000A6204 40 82 00 14 */ bne lbl_800AA3D8 /* 800AA3C8 000A6208 7C 04 39 D6 */ mullw r0, r4, r7 /* 800AA3CC 000A620C 7C 00 28 50 */ subf r0, r0, r5 /* 800AA3D0 000A6210 54 08 04 3E */ clrlwi r8, r0, 16 /* 800AA3D4 000A6214 48 00 01 C4 */ b lbl_800AA598 .global lbl_800AA3D8 lbl_800AA3D8: /* 800AA3D8 000A6218 38 04 00 01 */ addi r0, r4, 0x1 /* 800AA3DC 000A621C 7C 07 01 D6 */ mullw r0, r7, r0 /* 800AA3E0 000A6220 7C 05 00 50 */ subf r0, r5, r0 /* 800AA3E4 000A6224 54 08 04 3E */ clrlwi r8, r0, 16 /* 800AA3E8 000A6228 48 00 01 B0 */ b lbl_800AA598 .global lbl_800AA3EC lbl_800AA3EC: /* 800AA3EC 000A622C 7C 05 38 40 */ cmplw r5, r7 /* 800AA3F0 000A6230 41 80 00 40 */ blt lbl_800AA430 /* 800AA3F4 000A6234 55 40 06 73 */ rlwinm. r0, r10, 0, 25, 25 /* 800AA3F8 000A6238 41 82 00 1C */ beq lbl_800AA414 /* 800AA3FC 000A623C 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AA400 000A6240 54 04 0F FE */ srwi r4, r0, 31 /* 800AA404 000A6244 54 00 07 FE */ clrlwi r0, r0, 31 /* 800AA408 000A6248 7C 00 22 78 */ xor r0, r0, r4 /* 800AA40C 000A624C 7C 04 00 51 */ subf. r0, r4, r0 /* 800AA410 000A6250 41 82 00 0C */ beq lbl_800AA41C .global lbl_800AA414 lbl_800AA414: /* 800AA414 000A6254 A1 03 00 08 */ lhz r8, 0x8(r3) /* 800AA418 000A6258 48 00 00 08 */ b lbl_800AA420 .global lbl_800AA41C lbl_800AA41C: /* 800AA41C 000A625C 39 00 00 00 */ li r8, 0x0 .global lbl_800AA420 lbl_800AA420: /* 800AA420 000A6260 88 63 00 05 */ lbz r3, 0x5(r3) /* 800AA424 000A6264 38 03 FF FF */ addi r0, r3, -0x1 /* 800AA428 000A6268 54 04 06 3E */ clrlwi r4, r0, 24 /* 800AA42C 000A626C 48 00 01 6C */ b lbl_800AA598 .global lbl_800AA430 lbl_800AA430: /* 800AA430 000A6270 A2 E3 00 08 */ lhz r23, 0x8(r3) /* 800AA434 000A6274 28 17 00 01 */ cmplwi r23, 0x1 /* 800AA438 000A6278 40 81 00 0C */ ble lbl_800AA444 /* 800AA43C 000A627C 55 40 06 73 */ rlwinm. r0, r10, 0, 25, 25 /* 800AA440 000A6280 40 82 00 98 */ bne lbl_800AA4D8 .global lbl_800AA444 lbl_800AA444: /* 800AA444 000A6284 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AA448 000A6288 90 01 00 14 */ stw r0, 0x14(r1) /* 800AA44C 000A628C C8 82 8A 40 */ lfd f4, "@11031"@sda21(r2) /* 800AA450 000A6290 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AA454 000A6294 92 E1 00 1C */ stw r23, 0x1c(r1) /* 800AA458 000A6298 EC 60 20 28 */ fsubs f3, f0, f4 /* 800AA45C 000A629C 90 E1 00 14 */ stw r7, 0x14(r1) /* 800AA460 000A62A0 C8 21 00 18 */ lfd f1, 0x18(r1) /* 800AA464 000A62A4 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AA468 000A62A8 EC 41 20 28 */ fsubs f2, f1, f4 /* 800AA46C 000A62AC 90 A1 00 1C */ stw r5, 0x1c(r1) /* 800AA470 000A62B0 EC 00 20 28 */ fsubs f0, f0, f4 /* 800AA474 000A62B4 C8 21 00 18 */ lfd f1, 0x18(r1) /* 800AA478 000A62B8 92 E1 00 14 */ stw r23, 0x14(r1) /* 800AA47C 000A62BC EC 42 00 24 */ fdivs f2, f2, f0 /* 800AA480 000A62C0 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AA484 000A62C4 EF E3 00 B2 */ fmuls f31, f3, f2 /* 800AA488 000A62C8 EC 21 20 28 */ fsubs f1, f1, f4 /* 800AA48C 000A62CC EC 00 20 28 */ fsubs f0, f0, f4 /* 800AA490 000A62D0 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800AA494 000A62D4 EC 21 00 24 */ fdivs f1, f1, f0 /* 800AA498 000A62D8 4B F5 CD 7D */ bl __cvt_fp2unsigned /* 800AA49C 000A62DC 7C 03 B9 D6 */ mullw r0, r3, r23 /* 800AA4A0 000A62E0 93 21 00 1C */ stw r25, 0x1c(r1) /* 800AA4A4 000A62E4 C8 42 8A 40 */ lfd f2, "@11031"@sda21(r2) /* 800AA4A8 000A62E8 7C 64 1B 78 */ mr r4, r3 /* 800AA4AC 000A62EC C8 01 00 18 */ lfd f0, 0x18(r1) /* 800AA4B0 000A62F0 90 01 00 14 */ stw r0, 0x14(r1) /* 800AA4B4 000A62F4 EC 20 10 28 */ fsubs f1, f0, f2 /* 800AA4B8 000A62F8 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AA4BC 000A62FC EC 00 10 28 */ fsubs f0, f0, f2 /* 800AA4C0 000A6300 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800AA4C4 000A6304 EC 01 00 28 */ fsubs f0, f1, f0 /* 800AA4C8 000A6308 FC 00 00 1E */ fctiwz f0, f0 /* 800AA4CC 000A630C D8 01 00 20 */ stfd f0, 0x20(r1) /* 800AA4D0 000A6310 81 01 00 24 */ lwz r8, 0x24(r1) /* 800AA4D4 000A6314 48 00 00 C4 */ b lbl_800AA598 .global lbl_800AA4D8 lbl_800AA4D8: /* 800AA4D8 000A6318 3B 37 FF FF */ addi r25, r23, -0x1 /* 800AA4DC 000A631C 8A E3 00 05 */ lbz r23, 0x5(r3) /* 800AA4E0 000A6320 92 E1 00 14 */ stw r23, 0x14(r1) /* 800AA4E4 000A6324 6F 20 80 00 */ xoris r0, r25, 0x8000 /* 800AA4E8 000A6328 C8 42 8A 48 */ lfd f2, "@11032_8055E9C8"@sda21(r2) /* 800AA4EC 000A632C 90 01 00 1C */ stw r0, 0x1c(r1) /* 800AA4F0 000A6330 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AA4F4 000A6334 C8 21 00 18 */ lfd f1, 0x18(r1) /* 800AA4F8 000A6338 C8 82 8A 40 */ lfd f4, "@11031"@sda21(r2) /* 800AA4FC 000A633C EC 61 10 28 */ fsubs f3, f1, f2 /* 800AA500 000A6340 90 E1 00 1C */ stw r7, 0x1c(r1) /* 800AA504 000A6344 EC 20 20 28 */ fsubs f1, f0, f4 /* 800AA508 000A6348 C0 42 8A 50 */ lfs f2, "@11089"@sda21(r2) /* 800AA50C 000A634C C8 01 00 18 */ lfd f0, 0x18(r1) /* 800AA510 000A6350 90 A1 00 14 */ stw r5, 0x14(r1) /* 800AA514 000A6354 EC 63 00 72 */ fmuls f3, f3, f1 /* 800AA518 000A6358 EC 20 20 28 */ fsubs f1, f0, f4 /* 800AA51C 000A635C C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AA520 000A6360 EC 42 18 2A */ fadds f2, f2, f3 /* 800AA524 000A6364 EC 00 20 28 */ fsubs f0, f0, f4 /* 800AA528 000A6368 EC 22 08 24 */ fdivs f1, f2, f1 /* 800AA52C 000A636C EC 20 00 72 */ fmuls f1, f0, f1 /* 800AA530 000A6370 4B F5 CC E5 */ bl __cvt_fp2unsigned /* 800AA534 000A6374 7C 83 CB 96 */ divwu r4, r3, r25 /* 800AA538 000A6378 7C 04 B8 40 */ cmplw r4, r23 /* 800AA53C 000A637C 41 80 00 34 */ blt lbl_800AA570 /* 800AA540 000A6380 56 E4 0F FE */ srwi r4, r23, 31 /* 800AA544 000A6384 56 E0 07 FE */ clrlwi r0, r23, 31 /* 800AA548 000A6388 7C 03 22 78 */ xor r3, r0, r4 /* 800AA54C 000A638C 7C 84 18 50 */ subf r4, r4, r3 /* 800AA550 000A6390 38 17 FF FF */ addi r0, r23, -0x1 /* 800AA554 000A6394 7C 85 00 34 */ cntlzw r5, r4 /* 800AA558 000A6398 57 23 04 3E */ clrlwi r3, r25, 16 /* 800AA55C 000A639C 54 04 06 3E */ clrlwi r4, r0, 24 /* 800AA560 000A63A0 54 A0 DF FE */ extrwi r0, r5, 1, 26 /* 800AA564 000A63A4 7C 00 00 D0 */ neg r0, r0 /* 800AA568 000A63A8 7C 68 00 78 */ andc r8, r3, r0 /* 800AA56C 000A63AC 48 00 00 2C */ b lbl_800AA598 .global lbl_800AA570 lbl_800AA570: /* 800AA570 000A63B0 54 80 07 FF */ clrlwi. r0, r4, 31 /* 800AA574 000A63B4 40 82 00 14 */ bne lbl_800AA588 /* 800AA578 000A63B8 7C 04 C9 D6 */ mullw r0, r4, r25 /* 800AA57C 000A63BC 7C 00 18 50 */ subf r0, r0, r3 /* 800AA580 000A63C0 54 08 04 3E */ clrlwi r8, r0, 16 /* 800AA584 000A63C4 48 00 00 14 */ b lbl_800AA598 .global lbl_800AA588 lbl_800AA588: /* 800AA588 000A63C8 38 04 00 01 */ addi r0, r4, 0x1 /* 800AA58C 000A63CC 7C 19 01 D6 */ mullw r0, r25, r0 /* 800AA590 000A63D0 7C 03 00 50 */ subf r0, r3, r0 /* 800AA594 000A63D4 54 08 04 3E */ clrlwi r8, r0, 16 .global lbl_800AA598 lbl_800AA598: /* 800AA598 000A63D8 88 1F 00 01 */ lbz r0, 0x1(r31) /* 800AA59C 000A63DC 2C 00 00 68 */ cmpwi r0, 0x68 /* 800AA5A0 000A63E0 41 82 00 18 */ beq lbl_800AA5B8 /* 800AA5A4 000A63E4 2C 00 00 6C */ cmpwi r0, 0x6c /* 800AA5A8 000A63E8 41 82 00 1C */ beq lbl_800AA5C4 /* 800AA5AC 000A63EC 2C 00 00 70 */ cmpwi r0, 0x70 /* 800AA5B0 000A63F0 41 82 00 20 */ beq lbl_800AA5D0 /* 800AA5B4 000A63F4 48 00 02 80 */ b lbl_800AA834 .global lbl_800AA5B8 lbl_800AA5B8: /* 800AA5B8 000A63F8 38 78 00 88 */ addi r3, r24, 0x88 /* 800AA5BC 000A63FC 38 00 00 00 */ li r0, 0x0 /* 800AA5C0 000A6400 48 00 00 20 */ b lbl_800AA5E0 .global lbl_800AA5C4 lbl_800AA5C4: /* 800AA5C4 000A6404 38 78 00 8C */ addi r3, r24, 0x8c /* 800AA5C8 000A6408 38 00 00 01 */ li r0, 0x1 /* 800AA5CC 000A640C 48 00 00 14 */ b lbl_800AA5E0 .global lbl_800AA5D0 lbl_800AA5D0: /* 800AA5D0 000A6410 38 78 00 90 */ addi r3, r24, 0x90 /* 800AA5D4 000A6414 38 00 00 02 */ li r0, 0x2 /* 800AA5D8 000A6418 48 00 00 08 */ b lbl_800AA5E0 /* 800AA5DC 000A641C 48 00 02 58 */ b lbl_800AA834 .global lbl_800AA5E0 lbl_800AA5E0: /* 800AA5E0 000A6420 A0 FE 00 00 */ lhz r7, 0x0(r30) /* 800AA5E4 000A6424 55 08 04 3E */ clrlwi r8, r8, 16 /* 800AA5E8 000A6428 A0 DE 00 04 */ lhz r6, 0x4(r30) /* 800AA5EC 000A642C 38 BE 00 04 */ addi r5, r30, 0x4 /* 800AA5F0 000A6430 39 47 FF FF */ addi r10, r7, -0x1 /* 800AA5F4 000A6434 39 20 00 00 */ li r9, 0x0 /* 800AA5F8 000A6438 55 47 0F FE */ srwi r7, r10, 31 /* 800AA5FC 000A643C 7C 08 30 00 */ cmpw r8, r6 /* 800AA600 000A6440 7C C7 52 14 */ add r6, r7, r10 /* 800AA604 000A6444 7C C7 0E 70 */ srawi r7, r6, 1 /* 800AA608 000A6448 40 80 00 0C */ bge lbl_800AA614 /* 800AA60C 000A644C 39 40 00 00 */ li r10, 0x0 /* 800AA610 000A6450 48 00 00 7C */ b lbl_800AA68C .global lbl_800AA614 lbl_800AA614: /* 800AA614 000A6454 55 46 20 36 */ slwi r6, r10, 4 /* 800AA618 000A6458 7C C5 32 2E */ lhzx r6, r5, r6 /* 800AA61C 000A645C 7C 06 40 00 */ cmpw r6, r8 /* 800AA620 000A6460 41 80 00 6C */ blt lbl_800AA68C /* 800AA624 000A6464 7C 08 30 00 */ cmpw r8, r6 /* 800AA628 000A6468 40 82 00 08 */ bne lbl_800AA630 /* 800AA62C 000A646C 48 00 00 60 */ b lbl_800AA68C .global lbl_800AA630 lbl_800AA630: /* 800AA630 000A6470 54 E6 20 36 */ slwi r6, r7, 4 /* 800AA634 000A6474 7C C5 32 2E */ lhzx r6, r5, r6 /* 800AA638 000A6478 48 00 00 48 */ b lbl_800AA680 /* 800AA63C 000A647C 60 00 00 00 */ nop .global lbl_800AA640 lbl_800AA640: /* 800AA640 000A6480 7C 08 30 00 */ cmpw r8, r6 /* 800AA644 000A6484 40 82 00 0C */ bne lbl_800AA650 /* 800AA648 000A6488 7C E9 3B 78 */ mr r9, r7 /* 800AA64C 000A648C 48 00 00 1C */ b lbl_800AA668 .global lbl_800AA650 lbl_800AA650: /* 800AA650 000A6490 7C 06 40 00 */ cmpw r6, r8 /* 800AA654 000A6494 40 80 00 08 */ bge lbl_800AA65C /* 800AA658 000A6498 7C E9 3B 78 */ mr r9, r7 .global lbl_800AA65C lbl_800AA65C: /* 800AA65C 000A649C 7C 06 40 00 */ cmpw r6, r8 /* 800AA660 000A64A0 41 80 00 08 */ blt lbl_800AA668 /* 800AA664 000A64A4 7C EA 3B 78 */ mr r10, r7 .global lbl_800AA668 lbl_800AA668: /* 800AA668 000A64A8 7C E9 52 14 */ add r7, r9, r10 /* 800AA66C 000A64AC 54 E6 0F FE */ srwi r6, r7, 31 /* 800AA670 000A64B0 7C E6 3A 14 */ add r7, r6, r7 /* 800AA674 000A64B4 54 E6 18 36 */ extlwi r6, r7, 28, 3 /* 800AA678 000A64B8 7C C5 32 2E */ lhzx r6, r5, r6 /* 800AA67C 000A64BC 7C E7 0E 70 */ srawi r7, r7, 1 .global lbl_800AA680 lbl_800AA680: /* 800AA680 000A64C0 7C 09 38 00 */ cmpw r9, r7 /* 800AA684 000A64C4 41 80 FF BC */ blt lbl_800AA640 /* 800AA688 000A64C8 7D 2A 4B 78 */ mr r10, r9 .global lbl_800AA68C lbl_800AA68C: /* 800AA68C 000A64CC 55 46 20 36 */ slwi r6, r10, 4 /* 800AA690 000A64D0 7C A5 32 14 */ add r5, r5, r6 /* 800AA694 000A64D4 89 85 00 02 */ lbz r12, 0x2(r5) /* 800AA698 000A64D8 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800AA69C 000A64DC 40 82 00 14 */ bne lbl_800AA6B0 /* 800AA6A0 000A64E0 88 E5 00 0C */ lbz r7, 0xc(r5) /* 800AA6A4 000A64E4 89 05 00 0D */ lbz r8, 0xd(r5) /* 800AA6A8 000A64E8 A0 A5 00 0E */ lhz r5, 0xe(r5) /* 800AA6AC 000A64EC 48 00 01 18 */ b lbl_800AA7C4 .global lbl_800AA6B0 lbl_800AA6B0: /* 800AA6B0 000A64F0 3C C0 37 11 */ lis r6, 0x3711 /* 800AA6B4 000A64F4 A0 A5 00 0C */ lhz r5, 0xc(r5) /* 800AA6B8 000A64F8 38 C6 97 E7 */ addi r6, r6, -0x6819 /* 800AA6BC 000A64FC 3D 20 3F 82 */ lis r9, 0x3f82 /* 800AA6C0 000A6500 7C C5 31 D6 */ mullw r6, r5, r6 /* 800AA6C4 000A6504 3D 00 30 A7 */ lis r8, 0x30a7 /* 800AA6C8 000A6508 39 69 F6 35 */ addi r11, r9, -0x9cb /* 800AA6CC 000A650C A1 5F 00 06 */ lhz r10, 0x6(r31) /* 800AA6D0 000A6510 3C E0 00 08 */ lis r7, 0x8 /* 800AA6D4 000A6514 39 28 41 93 */ addi r9, r8, 0x4193 /* 800AA6D8 000A6518 39 07 B9 29 */ addi r8, r7, -0x46d7 /* 800AA6DC 000A651C 3C E6 00 05 */ addis r7, r6, 0x5 /* 800AA6E0 000A6520 55 86 07 BD */ rlwinm. r6, r12, 0, 30, 30 /* 800AA6E4 000A6524 7D 7A 59 D6 */ mullw r11, r26, r11 /* 800AA6E8 000A6528 38 E7 BF 53 */ addi r7, r7, -0x40ad /* 800AA6EC 000A652C 7C CA 49 D6 */ mullw r6, r10, r9 /* 800AA6F0 000A6530 7C 84 41 D6 */ mullw r4, r4, r8 /* 800AA6F4 000A6534 7C CB 32 14 */ add r6, r11, r6 /* 800AA6F8 000A6538 7C 84 3A 14 */ add r4, r4, r7 /* 800AA6FC 000A653C 7C 86 22 14 */ add r4, r6, r4 /* 800AA700 000A6540 90 81 00 08 */ stw r4, 0x8(r1) /* 800AA704 000A6544 88 E1 00 0A */ lbz r7, 0xa(r1) /* 800AA708 000A6548 88 81 00 0B */ lbz r4, 0xb(r1) /* 800AA70C 000A654C 88 C1 00 09 */ lbz r6, 0x9(r1) /* 800AA710 000A6550 7C E7 22 78 */ xor r7, r7, r4 /* 800AA714 000A6554 88 81 00 08 */ lbz r4, 0x8(r1) /* 800AA718 000A6558 7C C6 3A 78 */ xor r6, r6, r7 /* 800AA71C 000A655C 98 E1 00 0A */ stb r7, 0xa(r1) /* 800AA720 000A6560 7C 84 32 78 */ xor r4, r4, r6 /* 800AA724 000A6564 98 C1 00 09 */ stb r6, 0x9(r1) /* 800AA728 000A6568 98 81 00 08 */ stb r4, 0x8(r1) /* 800AA72C 000A656C 40 82 00 6C */ bne lbl_800AA798 /* 800AA730 000A6570 54 A4 1B 78 */ rlwinm r4, r5, 3, 13, 28 /* 800AA734 000A6574 7C 9D 22 14 */ add r4, r29, r4 /* 800AA738 000A6578 88 C4 00 08 */ lbz r6, 0x8(r4) /* 800AA73C 000A657C 88 E4 00 04 */ lbz r7, 0x4(r4) /* 800AA740 000A6580 2C 06 00 01 */ cmpwi r6, 0x1 /* 800AA744 000A6584 89 04 00 05 */ lbz r8, 0x5(r4) /* 800AA748 000A6588 A0 A4 00 06 */ lhz r5, 0x6(r4) /* 800AA74C 000A658C 41 82 00 18 */ beq lbl_800AA764 /* 800AA750 000A6590 2C 06 00 02 */ cmpwi r6, 0x2 /* 800AA754 000A6594 41 82 00 24 */ beq lbl_800AA778 /* 800AA758 000A6598 2C 06 00 03 */ cmpwi r6, 0x3 /* 800AA75C 000A659C 41 82 00 30 */ beq lbl_800AA78C /* 800AA760 000A65A0 48 00 00 64 */ b lbl_800AA7C4 .global lbl_800AA764 lbl_800AA764: /* 800AA764 000A65A4 80 81 00 08 */ lwz r4, 0x8(r1) /* 800AA768 000A65A8 54 84 87 FE */ extrwi r4, r4, 1, 15 /* 800AA76C 000A65AC 51 04 07 BC */ rlwimi r4, r8, 0, 30, 30 /* 800AA770 000A65B0 7C 88 23 78 */ mr r8, r4 /* 800AA774 000A65B4 48 00 00 50 */ b lbl_800AA7C4 .global lbl_800AA778 lbl_800AA778: /* 800AA778 000A65B8 80 81 00 08 */ lwz r4, 0x8(r1) /* 800AA77C 000A65BC 54 84 87 BC */ rlwinm r4, r4, 16, 30, 30 /* 800AA780 000A65C0 51 04 07 FE */ rlwimi r4, r8, 0, 31, 31 /* 800AA784 000A65C4 7C 88 23 78 */ mr r8, r4 /* 800AA788 000A65C8 48 00 00 3C */ b lbl_800AA7C4 .global lbl_800AA78C lbl_800AA78C: /* 800AA78C 000A65CC 80 81 00 08 */ lwz r4, 0x8(r1) /* 800AA790 000A65D0 54 88 87 BE */ extrwi r8, r4, 2, 14 /* 800AA794 000A65D4 48 00 00 30 */ b lbl_800AA7C4 .global lbl_800AA798 lbl_800AA798: /* 800AA798 000A65D8 80 81 00 08 */ lwz r4, 0x8(r1) /* 800AA79C 000A65DC A0 BC 00 00 */ lhz r5, 0x0(r28) /* 800AA7A0 000A65E0 54 86 84 3E */ srwi r6, r4, 16 /* 800AA7A4 000A65E4 7C 86 2B 96 */ divwu r4, r6, r5 /* 800AA7A8 000A65E8 7C 84 29 D6 */ mullw r4, r4, r5 /* 800AA7AC 000A65EC 7C 84 30 50 */ subf r4, r4, r6 /* 800AA7B0 000A65F0 54 84 10 3A */ slwi r4, r4, 2 /* 800AA7B4 000A65F4 7C 9C 22 14 */ add r4, r28, r4 /* 800AA7B8 000A65F8 88 E4 00 04 */ lbz r7, 0x4(r4) /* 800AA7BC 000A65FC 89 04 00 05 */ lbz r8, 0x5(r4) /* 800AA7C0 000A6600 A0 A4 00 06 */ lhz r5, 0x6(r4) .global lbl_800AA7C4 lbl_800AA7C4: /* 800AA7C4 000A6604 54 A4 13 BA */ rlwinm r4, r5, 2, 14, 29 /* 800AA7C8 000A6608 54 09 10 3A */ slwi r9, r0, 2 /* 800AA7CC 000A660C 7C BB 22 14 */ add r5, r27, r4 /* 800AA7D0 000A6610 54 0A 08 3C */ slwi r10, r0, 1 /* 800AA7D4 000A6614 38 80 00 0F */ li r4, 0xf /* 800AA7D8 000A6618 80 A5 00 04 */ lwz r5, 0x4(r5) /* 800AA7DC 000A661C 7C 84 48 30 */ slw r4, r4, r9 /* 800AA7E0 000A6620 38 00 00 03 */ li r0, 0x3 /* 800AA7E4 000A6624 7C 86 20 F8 */ nor r6, r4, r4 /* 800AA7E8 000A6628 90 A3 00 00 */ stw r5, 0x0(r3) /* 800AA7EC 000A662C 54 E4 07 3E */ clrlwi r4, r7, 28 /* 800AA7F0 000A6630 7C 00 50 30 */ slw r0, r0, r10 /* 800AA7F4 000A6634 7C 03 00 F8 */ nor r3, r0, r0 /* 800AA7F8 000A6638 A0 F8 00 94 */ lhz r7, 0x94(r24) /* 800AA7FC 000A663C 7C 85 48 30 */ slw r5, r4, r9 /* 800AA800 000A6640 55 00 07 BE */ clrlwi r0, r8, 30 /* 800AA804 000A6644 54 C6 04 3E */ clrlwi r6, r6, 16 /* 800AA808 000A6648 88 98 00 96 */ lbz r4, 0x96(r24) /* 800AA80C 000A664C 7C 00 50 30 */ slw r0, r0, r10 /* 800AA810 000A6650 54 63 06 3E */ clrlwi r3, r3, 24 /* 800AA814 000A6654 7C E6 30 38 */ and r6, r7, r6 /* 800AA818 000A6658 54 A5 04 3E */ clrlwi r5, r5, 16 /* 800AA81C 000A665C 7C C5 2B 78 */ or r5, r6, r5 /* 800AA820 000A6660 7C 83 18 38 */ and r3, r4, r3 /* 800AA824 000A6664 54 00 06 3E */ clrlwi r0, r0, 24 /* 800AA828 000A6668 B0 B8 00 94 */ sth r5, 0x94(r24) /* 800AA82C 000A666C 7C 60 03 78 */ or r0, r3, r0 /* 800AA830 000A6670 98 18 00 96 */ stb r0, 0x96(r24) .global lbl_800AA834 lbl_800AA834: /* 800AA834 000A6674 39 61 00 50 */ addi r11, r1, 0x50 /* 800AA838 000A6678 E3 E1 00 58 */ psq_l f31, 0x58(r1), 0, qr0 /* 800AA83C 000A667C CB E1 00 50 */ lfd f31, 0x50(r1) /* 800AA840 000A6680 4B F5 CB 39 */ bl lbl_80007378 /* 800AA844 000A6684 80 01 00 64 */ lwz r0, 0x64(r1) /* 800AA848 000A6688 7C 08 03 A6 */ mtlr r0 /* 800AA84C 000A668C 38 21 00 60 */ addi r1, r1, 0x60 /* 800AA850 000A6690 4E 80 00 20 */ blr /* 800AA854 000A6694 00 00 00 00 */ .4byte 0x00000000 /* 800AA858 000A6698 00 00 00 00 */ .4byte 0x00000000 /* 800AA85C 000A669C 00 00 00 00 */ .4byte 0x00000000 .global createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl: /* 800AA860 000A66A0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800AA864 000A66A4 7C 08 02 A6 */ mflr r0 /* 800AA868 000A66A8 90 01 00 24 */ stw r0, 0x24(r1) /* 800AA86C 000A66AC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800AA870 000A66B0 93 C1 00 18 */ stw r30, 0x18(r1) /* 800AA874 000A66B4 88 03 00 02 */ lbz r0, 0x2(r3) /* 800AA878 000A66B8 2C 00 00 00 */ cmpwi r0, 0x0 /* 800AA87C 000A66BC 40 82 00 0C */ bne lbl_800AA888 /* 800AA880 000A66C0 38 83 00 0C */ addi r4, r3, 0xc /* 800AA884 000A66C4 48 00 00 B0 */ b lbl_800AA934 .global lbl_800AA888 lbl_800AA888: /* 800AA888 000A66C8 3D 60 3F 82 */ lis r11, 0x3f82 /* 800AA88C 000A66CC 3F C0 00 08 */ lis r30, 0x8 /* 800AA890 000A66D0 39 8B F6 35 */ addi r12, r11, -0x9cb /* 800AA894 000A66D4 3D 40 30 A7 */ lis r10, 0x30a7 /* 800AA898 000A66D8 A1 65 00 06 */ lhz r11, 0x6(r5) /* 800AA89C 000A66DC 38 AA 41 93 */ addi r5, r10, 0x4193 /* 800AA8A0 000A66E0 A3 E3 00 0C */ lhz r31, 0xc(r3) /* 800AA8A4 000A66E4 54 00 07 BD */ rlwinm. r0, r0, 0, 30, 30 /* 800AA8A8 000A66E8 7C 64 61 D6 */ mullw r3, r4, r12 /* 800AA8AC 000A66EC 3D 40 37 11 */ lis r10, 0x3711 /* 800AA8B0 000A66F0 3B DE B9 29 */ addi r30, r30, -0x46d7 /* 800AA8B4 000A66F4 39 4A 97 E7 */ addi r10, r10, -0x6819 /* 800AA8B8 000A66F8 7C 0B 29 D6 */ mullw r0, r11, r5 /* 800AA8BC 000A66FC 7C 63 02 14 */ add r3, r3, r0 /* 800AA8C0 000A6700 3C 63 00 05 */ addis r3, r3, 0x5 /* 800AA8C4 000A6704 38 03 BF 53 */ addi r0, r3, -0x40ad /* 800AA8C8 000A6708 7C A9 F1 D6 */ mullw r5, r9, r30 /* 800AA8CC 000A670C 7C 7F 51 D6 */ mullw r3, r31, r10 /* 800AA8D0 000A6710 7C 65 1A 14 */ add r3, r5, r3 /* 800AA8D4 000A6714 7C 03 02 14 */ add r0, r3, r0 /* 800AA8D8 000A6718 90 01 00 08 */ stw r0, 0x8(r1) /* 800AA8DC 000A671C 88 A1 00 0A */ lbz r5, 0xa(r1) /* 800AA8E0 000A6720 88 01 00 0B */ lbz r0, 0xb(r1) /* 800AA8E4 000A6724 88 61 00 09 */ lbz r3, 0x9(r1) /* 800AA8E8 000A6728 7C A5 02 78 */ xor r5, r5, r0 /* 800AA8EC 000A672C 88 01 00 08 */ lbz r0, 0x8(r1) /* 800AA8F0 000A6730 7C 63 2A 78 */ xor r3, r3, r5 /* 800AA8F4 000A6734 98 A1 00 0A */ stb r5, 0xa(r1) /* 800AA8F8 000A6738 7C 00 1A 78 */ xor r0, r0, r3 /* 800AA8FC 000A673C 98 61 00 09 */ stb r3, 0x9(r1) /* 800AA900 000A6740 98 01 00 08 */ stb r0, 0x8(r1) /* 800AA904 000A6744 41 82 00 30 */ beq lbl_800AA934 /* 800AA908 000A6748 A0 87 00 00 */ lhz r4, 0x0(r7) /* 800AA90C 000A674C 2C 04 00 00 */ cmpwi r4, 0x0 /* 800AA910 000A6750 41 82 00 9C */ beq lbl_800AA9AC /* 800AA914 000A6754 80 01 00 08 */ lwz r0, 0x8(r1) /* 800AA918 000A6758 54 03 84 3E */ srwi r3, r0, 16 /* 800AA91C 000A675C 7C 03 23 96 */ divwu r0, r3, r4 /* 800AA920 000A6760 7C 00 21 D6 */ mullw r0, r0, r4 /* 800AA924 000A6764 7C 00 18 50 */ subf r0, r0, r3 /* 800AA928 000A6768 1C 00 00 0C */ mulli r0, r0, 0xc /* 800AA92C 000A676C 7C 67 02 14 */ add r3, r7, r0 /* 800AA930 000A6770 38 83 00 04 */ addi r4, r3, 0x4 .global lbl_800AA934 lbl_800AA934: /* 800AA934 000A6774 A0 04 00 0A */ lhz r0, 0xa(r4) /* 800AA938 000A6778 54 00 10 3A */ slwi r0, r0, 2 /* 800AA93C 000A677C 7C 66 02 14 */ add r3, r6, r0 /* 800AA940 000A6780 80 C3 00 04 */ lwz r6, 0x4(r3) /* 800AA944 000A6784 2C 06 00 00 */ cmpwi r6, 0x0 /* 800AA948 000A6788 41 82 00 64 */ beq lbl_800AA9AC /* 800AA94C 000A678C 88 04 00 06 */ lbz r0, 0x6(r4) /* 800AA950 000A6790 2C 00 00 00 */ cmpwi r0, 0x0 /* 800AA954 000A6794 40 82 00 30 */ bne lbl_800AA984 /* 800AA958 000A6798 80 68 00 C8 */ lwz r3, 0xc8(r8) /* 800AA95C 000A679C 7D 05 43 78 */ mr r5, r8 /* 800AA960 000A67A0 A0 E8 00 E2 */ lhz r7, 0xe2(r8) /* 800AA964 000A67A4 39 00 00 00 */ li r8, 0x0 /* 800AA968 000A67A8 80 63 00 20 */ lwz r3, 0x20(r3) /* 800AA96C 000A67AC 39 20 00 00 */ li r9, 0x0 /* 800AA970 000A67B0 80 63 00 BC */ lwz r3, 0xbc(r3) /* 800AA974 000A67B4 80 63 00 20 */ lwz r3, 0x20(r3) /* 800AA978 000A67B8 38 63 00 10 */ addi r3, r3, 0x10 /* 800AA97C 000A67BC 48 00 9D 15 */ bl AddParticleCreation__Q34nw4r2ef13CreationQueueFPCQ34nw4r2ef21EmitterInheritSettingPQ34nw4r2ef8ParticlePQ34nw4r2ef15EmitterResourceUsPCQ34nw4r4math4VEC3PCQ34nw4r4math4VEC3 /* 800AA980 000A67C0 48 00 00 2C */ b lbl_800AA9AC .global lbl_800AA984 lbl_800AA984: /* 800AA984 000A67C4 80 68 00 C8 */ lwz r3, 0xc8(r8) /* 800AA988 000A67C8 7D 05 43 78 */ mr r5, r8 /* 800AA98C 000A67CC A0 E8 00 E2 */ lhz r7, 0xe2(r8) /* 800AA990 000A67D0 39 00 00 00 */ li r8, 0x0 /* 800AA994 000A67D4 80 63 00 20 */ lwz r3, 0x20(r3) /* 800AA998 000A67D8 39 20 00 00 */ li r9, 0x0 /* 800AA99C 000A67DC 80 63 00 BC */ lwz r3, 0xbc(r3) /* 800AA9A0 000A67E0 80 63 00 20 */ lwz r3, 0x20(r3) /* 800AA9A4 000A67E4 38 63 00 10 */ addi r3, r3, 0x10 /* 800AA9A8 000A67E8 48 00 9E 69 */ bl AddEmitterCreation__Q34nw4r2ef13CreationQueueFPCQ34nw4r2ef21EmitterInheritSettingPQ34nw4r2ef8ParticlePQ34nw4r2ef15EmitterResourceUsPCQ34nw4r4math4VEC3PCQ34nw4r4math4VEC3 .global lbl_800AA9AC lbl_800AA9AC: /* 800AA9AC 000A67EC 80 01 00 24 */ lwz r0, 0x24(r1) /* 800AA9B0 000A67F0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800AA9B4 000A67F4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800AA9B8 000A67F8 7C 08 03 A6 */ mtlr r0 /* 800AA9BC 000A67FC 38 21 00 20 */ addi r1, r1, 0x20 /* 800AA9C0 000A6800 4E 80 00 20 */ blr /* 800AA9C4 000A6804 00 00 00 00 */ .4byte 0x00000000 /* 800AA9C8 000A6808 00 00 00 00 */ .4byte 0x00000000 /* 800AA9CC 000A680C 00 00 00 00 */ .4byte 0x00000000 .global AnimCurveExecuteChild__Q24nw4r2efFPUcPQ34nw4r2ef8ParticleUlUsUl AnimCurveExecuteChild__Q24nw4r2efFPUcPQ34nw4r2ef8ParticleUlUsUl: /* 800AA9D0 000A6810 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800AA9D4 000A6814 7C 08 02 A6 */ mflr r0 /* 800AA9D8 000A6818 90 01 00 74 */ stw r0, 0x74(r1) /* 800AA9DC 000A681C 39 61 00 60 */ addi r11, r1, 0x60 /* 800AA9E0 000A6820 DB E1 00 60 */ stfd f31, 0x60(r1) /* 800AA9E4 000A6824 F3 E1 00 68 */ psq_st f31, 0x68(r1), 0, qr0 /* 800AA9E8 000A6828 4B F5 C9 31 */ bl lbl_80007318 /* 800AA9EC 000A682C 89 63 00 04 */ lbz r11, 0x4(r3) /* 800AA9F0 000A6830 3D 40 43 30 */ lis r10, 0x4330 /* 800AA9F4 000A6834 80 03 00 0C */ lwz r0, 0xc(r3) /* 800AA9F8 000A6838 3B C3 00 20 */ addi r30, r3, 0x20 /* 800AA9FC 000A683C 81 23 00 10 */ lwz r9, 0x10(r3) /* 800AAA00 000A6840 55 6C 06 B5 */ rlwinm. r12, r11, 0, 26, 26 /* 800AAA04 000A6844 7D 1E 02 14 */ add r8, r30, r0 /* 800AAA08 000A6848 80 03 00 14 */ lwz r0, 0x14(r3) /* 800AAA0C 000A684C 7F A9 42 14 */ add r29, r9, r8 /* 800AAA10 000A6850 91 41 00 08 */ stw r10, 0x8(r1) /* 800AAA14 000A6854 7C 7F 1B 78 */ mr r31, r3 /* 800AAA18 000A6858 7C 95 23 78 */ mr r21, r4 /* 800AAA1C 000A685C 91 41 00 10 */ stw r10, 0x10(r1) /* 800AAA20 000A6860 7C B4 2B 78 */ mr r20, r5 /* 800AAA24 000A6864 7C D6 33 78 */ mr r22, r6 /* 800AAA28 000A6868 7C F2 3B 78 */ mr r18, r7 /* 800AAA2C 000A686C 7F 9D 02 14 */ add r28, r29, r0 /* 800AAA30 000A6870 3B 40 00 00 */ li r26, 0x0 /* 800AAA34 000A6874 3A 60 00 00 */ li r19, 0x0 /* 800AAA38 000A6878 40 82 00 44 */ bne lbl_800AAA7C /* 800AAA3C 000A687C 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AAA40 000A6880 28 00 00 01 */ cmplwi r0, 0x1 /* 800AAA44 000A6884 41 81 00 38 */ bgt lbl_800AAA7C /* 800AAA48 000A6888 55 60 06 31 */ rlwinm. r0, r11, 0, 24, 24 /* 800AAA4C 000A688C 40 82 00 1C */ bne lbl_800AAA68 /* 800AAA50 000A6890 A3 63 00 08 */ lhz r27, 0x8(r3) /* 800AAA54 000A6894 7C 05 D8 40 */ cmplw r5, r27 /* 800AAA58 000A6898 41 80 00 08 */ blt lbl_800AAA60 /* 800AAA5C 000A689C 48 00 02 B0 */ b lbl_800AAD0C .global lbl_800AAA60 lbl_800AAA60: /* 800AAA60 000A68A0 54 BB 04 3E */ clrlwi r27, r5, 16 /* 800AAA64 000A68A4 48 00 02 A8 */ b lbl_800AAD0C .global lbl_800AAA68 lbl_800AAA68: /* 800AAA68 000A68A8 A0 03 00 08 */ lhz r0, 0x8(r3) /* 800AAA6C 000A68AC 7C 00 29 D6 */ mullw r0, r0, r5 /* 800AAA70 000A68B0 7C 00 3B 96 */ divwu r0, r0, r7 /* 800AAA74 000A68B4 54 1B 04 3E */ clrlwi r27, r0, 16 /* 800AAA78 000A68B8 48 00 02 94 */ b lbl_800AAD0C .global lbl_800AAA7C lbl_800AAA7C: /* 800AAA7C 000A68BC 55 60 06 31 */ rlwinm. r0, r11, 0, 24, 24 /* 800AAA80 000A68C0 40 82 00 D4 */ bne lbl_800AAB54 /* 800AAA84 000A68C4 A3 63 00 08 */ lhz r27, 0x8(r3) /* 800AAA88 000A68C8 28 1B 00 01 */ cmplwi r27, 0x1 /* 800AAA8C 000A68CC 40 81 00 0C */ ble lbl_800AAA98 /* 800AAA90 000A68D0 55 60 06 73 */ rlwinm. r0, r11, 0, 25, 25 /* 800AAA94 000A68D4 40 82 00 38 */ bne lbl_800AAACC .global lbl_800AAA98 lbl_800AAA98: /* 800AAA98 000A68D8 7F 45 DB 96 */ divwu r26, r5, r27 /* 800AAA9C 000A68DC 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800AAAA0 000A68E0 40 82 00 1C */ bne lbl_800AAABC /* 800AAAA4 000A68E4 88 63 00 05 */ lbz r3, 0x5(r3) /* 800AAAA8 000A68E8 7C 1A 18 40 */ cmplw r26, r3 /* 800AAAAC 000A68EC 41 80 00 10 */ blt lbl_800AAABC /* 800AAAB0 000A68F0 38 03 FF FF */ addi r0, r3, -0x1 /* 800AAAB4 000A68F4 54 1A 06 3E */ clrlwi r26, r0, 24 /* 800AAAB8 000A68F8 48 00 02 54 */ b lbl_800AAD0C .global lbl_800AAABC lbl_800AAABC: /* 800AAABC 000A68FC 7C 1A D9 D6 */ mullw r0, r26, r27 /* 800AAAC0 000A6900 7C 00 28 50 */ subf r0, r0, r5 /* 800AAAC4 000A6904 54 1B 04 3E */ clrlwi r27, r0, 16 /* 800AAAC8 000A6908 48 00 02 44 */ b lbl_800AAD0C .global lbl_800AAACC lbl_800AAACC: /* 800AAACC 000A690C 38 DB FF FF */ addi r6, r27, -0x1 /* 800AAAD0 000A6910 2C 0C 00 00 */ cmpwi r12, 0x0 /* 800AAAD4 000A6914 7F 45 33 96 */ divwu r26, r5, r6 /* 800AAAD8 000A6918 40 82 00 50 */ bne lbl_800AAB28 /* 800AAADC 000A691C 88 83 00 05 */ lbz r4, 0x5(r3) /* 800AAAE0 000A6920 7C 9A 20 40 */ cmplw cr1, r26, r4 /* 800AAAE4 000A6924 41 84 00 44 */ blt cr1, lbl_800AAB28 /* 800AAAE8 000A6928 54 83 0F FE */ srwi r3, r4, 31 /* 800AAAEC 000A692C 54 80 07 FE */ clrlwi r0, r4, 31 /* 800AAAF0 000A6930 7C 00 1A 78 */ xor r0, r0, r3 /* 800AAAF4 000A6934 7C 03 00 51 */ subf. r0, r3, r0 /* 800AAAF8 000A6938 40 82 00 20 */ bne lbl_800AAB18 /* 800AAAFC 000A693C 40 86 00 14 */ bne cr1, lbl_800AAB10 /* 800AAB00 000A6940 7C 1A 31 D6 */ mullw r0, r26, r6 /* 800AAB04 000A6944 7C 00 28 51 */ subf. r0, r0, r5 /* 800AAB08 000A6948 40 82 00 08 */ bne lbl_800AAB10 /* 800AAB0C 000A694C 3A 60 00 01 */ li r19, 0x1 .global lbl_800AAB10 lbl_800AAB10: /* 800AAB10 000A6950 3B 60 00 00 */ li r27, 0x0 /* 800AAB14 000A6954 48 00 00 08 */ b lbl_800AAB1C .global lbl_800AAB18 lbl_800AAB18: /* 800AAB18 000A6958 54 DB 04 3E */ clrlwi r27, r6, 16 .global lbl_800AAB1C lbl_800AAB1C: /* 800AAB1C 000A695C 38 04 FF FF */ addi r0, r4, -0x1 /* 800AAB20 000A6960 54 1A 06 3E */ clrlwi r26, r0, 24 /* 800AAB24 000A6964 48 00 01 E8 */ b lbl_800AAD0C .global lbl_800AAB28 lbl_800AAB28: /* 800AAB28 000A6968 57 40 07 FF */ clrlwi. r0, r26, 31 /* 800AAB2C 000A696C 40 82 00 14 */ bne lbl_800AAB40 /* 800AAB30 000A6970 7C 1A 31 D6 */ mullw r0, r26, r6 /* 800AAB34 000A6974 7C 00 28 50 */ subf r0, r0, r5 /* 800AAB38 000A6978 54 1B 04 3E */ clrlwi r27, r0, 16 /* 800AAB3C 000A697C 48 00 01 D0 */ b lbl_800AAD0C .global lbl_800AAB40 lbl_800AAB40: /* 800AAB40 000A6980 38 1A 00 01 */ addi r0, r26, 0x1 /* 800AAB44 000A6984 7C 06 01 D6 */ mullw r0, r6, r0 /* 800AAB48 000A6988 7C 05 00 50 */ subf r0, r5, r0 /* 800AAB4C 000A698C 54 1B 04 3E */ clrlwi r27, r0, 16 /* 800AAB50 000A6990 48 00 01 BC */ b lbl_800AAD0C .global lbl_800AAB54 lbl_800AAB54: /* 800AAB54 000A6994 7C 05 38 40 */ cmplw r5, r7 /* 800AAB58 000A6998 41 80 00 40 */ blt lbl_800AAB98 /* 800AAB5C 000A699C 55 60 06 73 */ rlwinm. r0, r11, 0, 25, 25 /* 800AAB60 000A69A0 41 82 00 1C */ beq lbl_800AAB7C /* 800AAB64 000A69A4 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AAB68 000A69A8 54 04 0F FE */ srwi r4, r0, 31 /* 800AAB6C 000A69AC 54 00 07 FE */ clrlwi r0, r0, 31 /* 800AAB70 000A69B0 7C 00 22 78 */ xor r0, r0, r4 /* 800AAB74 000A69B4 7C 04 00 51 */ subf. r0, r4, r0 /* 800AAB78 000A69B8 41 82 00 0C */ beq lbl_800AAB84 .global lbl_800AAB7C lbl_800AAB7C: /* 800AAB7C 000A69BC A3 63 00 08 */ lhz r27, 0x8(r3) /* 800AAB80 000A69C0 48 00 00 08 */ b lbl_800AAB88 .global lbl_800AAB84 lbl_800AAB84: /* 800AAB84 000A69C4 3B 60 00 00 */ li r27, 0x0 .global lbl_800AAB88 lbl_800AAB88: /* 800AAB88 000A69C8 88 63 00 05 */ lbz r3, 0x5(r3) /* 800AAB8C 000A69CC 38 03 FF FF */ addi r0, r3, -0x1 /* 800AAB90 000A69D0 54 1A 06 3E */ clrlwi r26, r0, 24 /* 800AAB94 000A69D4 48 00 01 78 */ b lbl_800AAD0C .global lbl_800AAB98 lbl_800AAB98: /* 800AAB98 000A69D8 A2 E3 00 08 */ lhz r23, 0x8(r3) /* 800AAB9C 000A69DC 28 17 00 01 */ cmplwi r23, 0x1 /* 800AABA0 000A69E0 40 81 00 0C */ ble lbl_800AABAC /* 800AABA4 000A69E4 55 60 06 73 */ rlwinm. r0, r11, 0, 25, 25 /* 800AABA8 000A69E8 40 82 00 98 */ bne lbl_800AAC40 .global lbl_800AABAC lbl_800AABAC: /* 800AABAC 000A69EC 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AABB0 000A69F0 90 01 00 0C */ stw r0, 0xc(r1) /* 800AABB4 000A69F4 C8 82 8A 40 */ lfd f4, "@11031"@sda21(r2) /* 800AABB8 000A69F8 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AABBC 000A69FC 92 E1 00 14 */ stw r23, 0x14(r1) /* 800AABC0 000A6A00 EC 60 20 28 */ fsubs f3, f0, f4 /* 800AABC4 000A6A04 90 E1 00 0C */ stw r7, 0xc(r1) /* 800AABC8 000A6A08 C8 21 00 10 */ lfd f1, 0x10(r1) /* 800AABCC 000A6A0C C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AABD0 000A6A10 EC 41 20 28 */ fsubs f2, f1, f4 /* 800AABD4 000A6A14 90 A1 00 14 */ stw r5, 0x14(r1) /* 800AABD8 000A6A18 EC 00 20 28 */ fsubs f0, f0, f4 /* 800AABDC 000A6A1C C8 21 00 10 */ lfd f1, 0x10(r1) /* 800AABE0 000A6A20 92 E1 00 0C */ stw r23, 0xc(r1) /* 800AABE4 000A6A24 EC 42 00 24 */ fdivs f2, f2, f0 /* 800AABE8 000A6A28 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AABEC 000A6A2C EF E3 00 B2 */ fmuls f31, f3, f2 /* 800AABF0 000A6A30 EC 21 20 28 */ fsubs f1, f1, f4 /* 800AABF4 000A6A34 EC 00 20 28 */ fsubs f0, f0, f4 /* 800AABF8 000A6A38 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800AABFC 000A6A3C EC 21 00 24 */ fdivs f1, f1, f0 /* 800AAC00 000A6A40 4B F5 C6 15 */ bl __cvt_fp2unsigned /* 800AAC04 000A6A44 7C 03 B9 D6 */ mullw r0, r3, r23 /* 800AAC08 000A6A48 92 81 00 14 */ stw r20, 0x14(r1) /* 800AAC0C 000A6A4C C8 42 8A 40 */ lfd f2, "@11031"@sda21(r2) /* 800AAC10 000A6A50 7C 7A 1B 78 */ mr r26, r3 /* 800AAC14 000A6A54 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AAC18 000A6A58 90 01 00 0C */ stw r0, 0xc(r1) /* 800AAC1C 000A6A5C EC 20 10 28 */ fsubs f1, f0, f2 /* 800AAC20 000A6A60 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AAC24 000A6A64 EC 00 10 28 */ fsubs f0, f0, f2 /* 800AAC28 000A6A68 EC 21 07 F2 */ fmuls f1, f1, f31 /* 800AAC2C 000A6A6C EC 01 00 28 */ fsubs f0, f1, f0 /* 800AAC30 000A6A70 FC 00 00 1E */ fctiwz f0, f0 /* 800AAC34 000A6A74 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800AAC38 000A6A78 83 61 00 1C */ lwz r27, 0x1c(r1) /* 800AAC3C 000A6A7C 48 00 00 D0 */ b lbl_800AAD0C .global lbl_800AAC40 lbl_800AAC40: /* 800AAC40 000A6A80 3A F7 FF FF */ addi r23, r23, -0x1 /* 800AAC44 000A6A84 8B 03 00 05 */ lbz r24, 0x5(r3) /* 800AAC48 000A6A88 93 01 00 0C */ stw r24, 0xc(r1) /* 800AAC4C 000A6A8C 6E E0 80 00 */ xoris r0, r23, 0x8000 /* 800AAC50 000A6A90 C8 42 8A 48 */ lfd f2, "@11032_8055E9C8"@sda21(r2) /* 800AAC54 000A6A94 90 01 00 14 */ stw r0, 0x14(r1) /* 800AAC58 000A6A98 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AAC5C 000A6A9C C8 21 00 10 */ lfd f1, 0x10(r1) /* 800AAC60 000A6AA0 C8 82 8A 40 */ lfd f4, "@11031"@sda21(r2) /* 800AAC64 000A6AA4 EC 61 10 28 */ fsubs f3, f1, f2 /* 800AAC68 000A6AA8 90 E1 00 14 */ stw r7, 0x14(r1) /* 800AAC6C 000A6AAC EC 20 20 28 */ fsubs f1, f0, f4 /* 800AAC70 000A6AB0 C0 42 8A 50 */ lfs f2, "@11089"@sda21(r2) /* 800AAC74 000A6AB4 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AAC78 000A6AB8 90 A1 00 0C */ stw r5, 0xc(r1) /* 800AAC7C 000A6ABC EC 63 00 72 */ fmuls f3, f3, f1 /* 800AAC80 000A6AC0 EC 20 20 28 */ fsubs f1, f0, f4 /* 800AAC84 000A6AC4 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AAC88 000A6AC8 EC 42 18 2A */ fadds f2, f2, f3 /* 800AAC8C 000A6ACC EC 00 20 28 */ fsubs f0, f0, f4 /* 800AAC90 000A6AD0 EC 22 08 24 */ fdivs f1, f2, f1 /* 800AAC94 000A6AD4 EC 20 00 72 */ fmuls f1, f0, f1 /* 800AAC98 000A6AD8 4B F5 C5 7D */ bl __cvt_fp2unsigned /* 800AAC9C 000A6ADC 7F 43 BB 96 */ divwu r26, r3, r23 /* 800AACA0 000A6AE0 7C 1A C0 40 */ cmplw r26, r24 /* 800AACA4 000A6AE4 41 80 00 40 */ blt lbl_800AACE4 /* 800AACA8 000A6AE8 57 03 0F FE */ srwi r3, r24, 31 /* 800AACAC 000A6AEC 57 00 07 FE */ clrlwi r0, r24, 31 /* 800AACB0 000A6AF0 7C 00 1A 78 */ xor r0, r0, r3 /* 800AACB4 000A6AF4 7C 03 00 51 */ subf. r0, r3, r0 /* 800AACB8 000A6AF8 40 82 00 1C */ bne lbl_800AACD4 /* 800AACBC 000A6AFC 38 12 FF FF */ addi r0, r18, -0x1 /* 800AACC0 000A6B00 7C 14 00 40 */ cmplw r20, r0 /* 800AACC4 000A6B04 40 82 00 08 */ bne lbl_800AACCC /* 800AACC8 000A6B08 3A 60 00 01 */ li r19, 0x1 .global lbl_800AACCC lbl_800AACCC: /* 800AACCC 000A6B0C 3B 60 00 00 */ li r27, 0x0 /* 800AACD0 000A6B10 48 00 00 08 */ b lbl_800AACD8 .global lbl_800AACD4 lbl_800AACD4: /* 800AACD4 000A6B14 56 FB 04 3E */ clrlwi r27, r23, 16 .global lbl_800AACD8 lbl_800AACD8: /* 800AACD8 000A6B18 38 18 FF FF */ addi r0, r24, -0x1 /* 800AACDC 000A6B1C 54 1A 06 3E */ clrlwi r26, r0, 24 /* 800AACE0 000A6B20 48 00 00 2C */ b lbl_800AAD0C .global lbl_800AACE4 lbl_800AACE4: /* 800AACE4 000A6B24 57 40 07 FF */ clrlwi. r0, r26, 31 /* 800AACE8 000A6B28 40 82 00 14 */ bne lbl_800AACFC /* 800AACEC 000A6B2C 7C 1A B9 D6 */ mullw r0, r26, r23 /* 800AACF0 000A6B30 7C 00 18 50 */ subf r0, r0, r3 /* 800AACF4 000A6B34 54 1B 04 3E */ clrlwi r27, r0, 16 /* 800AACF8 000A6B38 48 00 00 14 */ b lbl_800AAD0C .global lbl_800AACFC lbl_800AACFC: /* 800AACFC 000A6B3C 38 1A 00 01 */ addi r0, r26, 0x1 /* 800AAD00 000A6B40 7C 17 01 D6 */ mullw r0, r23, r0 /* 800AAD04 000A6B44 7C 03 00 50 */ subf r0, r3, r0 /* 800AAD08 000A6B48 54 1B 04 3E */ clrlwi r27, r0, 16 .global lbl_800AAD0C lbl_800AAD0C: /* 800AAD0C 000A6B4C 88 9F 00 04 */ lbz r4, 0x4(r31) /* 800AAD10 000A6B50 3B 00 00 00 */ li r24, 0x0 /* 800AAD14 000A6B54 54 83 06 B5 */ rlwinm. r3, r4, 0, 26, 26 /* 800AAD18 000A6B58 40 82 00 4C */ bne lbl_800AAD64 /* 800AAD1C 000A6B5C 88 1F 00 05 */ lbz r0, 0x5(r31) /* 800AAD20 000A6B60 28 00 00 01 */ cmplwi r0, 0x1 /* 800AAD24 000A6B64 41 81 00 40 */ bgt lbl_800AAD64 /* 800AAD28 000A6B68 54 80 06 31 */ rlwinm. r0, r4, 0, 24, 24 /* 800AAD2C 000A6B6C 40 82 00 20 */ bne lbl_800AAD4C /* 800AAD30 000A6B70 A3 3F 00 08 */ lhz r25, 0x8(r31) /* 800AAD34 000A6B74 38 14 00 01 */ addi r0, r20, 0x1 /* 800AAD38 000A6B78 7C 00 C8 40 */ cmplw r0, r25 /* 800AAD3C 000A6B7C 41 80 00 08 */ blt lbl_800AAD44 /* 800AAD40 000A6B80 48 00 02 B8 */ b lbl_800AAFF8 .global lbl_800AAD44 lbl_800AAD44: /* 800AAD44 000A6B84 54 19 04 3E */ clrlwi r25, r0, 16 /* 800AAD48 000A6B88 48 00 02 B0 */ b lbl_800AAFF8 .global lbl_800AAD4C lbl_800AAD4C: /* 800AAD4C 000A6B8C A0 7F 00 08 */ lhz r3, 0x8(r31) /* 800AAD50 000A6B90 38 14 00 01 */ addi r0, r20, 0x1 /* 800AAD54 000A6B94 7C 03 01 D6 */ mullw r0, r3, r0 /* 800AAD58 000A6B98 7C 00 93 96 */ divwu r0, r0, r18 /* 800AAD5C 000A6B9C 54 19 04 3E */ clrlwi r25, r0, 16 /* 800AAD60 000A6BA0 48 00 02 98 */ b lbl_800AAFF8 .global lbl_800AAD64 lbl_800AAD64: /* 800AAD64 000A6BA4 54 80 06 31 */ rlwinm. r0, r4, 0, 24, 24 /* 800AAD68 000A6BA8 40 82 00 D8 */ bne lbl_800AAE40 /* 800AAD6C 000A6BAC A3 3F 00 08 */ lhz r25, 0x8(r31) /* 800AAD70 000A6BB0 28 19 00 01 */ cmplwi r25, 0x1 /* 800AAD74 000A6BB4 40 81 00 0C */ ble lbl_800AAD80 /* 800AAD78 000A6BB8 54 80 06 73 */ rlwinm. r0, r4, 0, 25, 25 /* 800AAD7C 000A6BBC 40 82 00 40 */ bne lbl_800AADBC .global lbl_800AAD80 lbl_800AAD80: /* 800AAD80 000A6BC0 38 14 00 01 */ addi r0, r20, 0x1 /* 800AAD84 000A6BC4 2C 03 00 00 */ cmpwi r3, 0x0 /* 800AAD88 000A6BC8 7F 00 CB 96 */ divwu r24, r0, r25 /* 800AAD8C 000A6BCC 40 82 00 1C */ bne lbl_800AADA8 /* 800AAD90 000A6BD0 88 7F 00 05 */ lbz r3, 0x5(r31) /* 800AAD94 000A6BD4 7C 18 18 40 */ cmplw r24, r3 /* 800AAD98 000A6BD8 41 80 00 10 */ blt lbl_800AADA8 /* 800AAD9C 000A6BDC 38 03 FF FF */ addi r0, r3, -0x1 /* 800AADA0 000A6BE0 54 18 06 3E */ clrlwi r24, r0, 24 /* 800AADA4 000A6BE4 48 00 02 54 */ b lbl_800AAFF8 .global lbl_800AADA8 lbl_800AADA8: /* 800AADA8 000A6BE8 7C 78 C9 D6 */ mullw r3, r24, r25 /* 800AADAC 000A6BEC 38 14 00 01 */ addi r0, r20, 0x1 /* 800AADB0 000A6BF0 7C 03 00 50 */ subf r0, r3, r0 /* 800AADB4 000A6BF4 54 19 04 3E */ clrlwi r25, r0, 16 /* 800AADB8 000A6BF8 48 00 02 40 */ b lbl_800AAFF8 .global lbl_800AADBC lbl_800AADBC: /* 800AADBC 000A6BFC 38 D9 FF FF */ addi r6, r25, -0x1 /* 800AADC0 000A6C00 38 14 00 01 */ addi r0, r20, 0x1 /* 800AADC4 000A6C04 7F 00 33 96 */ divwu r24, r0, r6 /* 800AADC8 000A6C08 2C 03 00 00 */ cmpwi r3, 0x0 /* 800AADCC 000A6C0C 40 82 00 40 */ bne lbl_800AAE0C /* 800AADD0 000A6C10 88 BF 00 05 */ lbz r5, 0x5(r31) /* 800AADD4 000A6C14 7C 18 28 40 */ cmplw r24, r5 /* 800AADD8 000A6C18 41 80 00 34 */ blt lbl_800AAE0C /* 800AADDC 000A6C1C 54 A4 0F FE */ srwi r4, r5, 31 /* 800AADE0 000A6C20 54 A0 07 FE */ clrlwi r0, r5, 31 /* 800AADE4 000A6C24 7C 03 22 78 */ xor r3, r0, r4 /* 800AADE8 000A6C28 7C 84 18 50 */ subf r4, r4, r3 /* 800AADEC 000A6C2C 38 05 FF FF */ addi r0, r5, -0x1 /* 800AADF0 000A6C30 7C 84 00 34 */ cntlzw r4, r4 /* 800AADF4 000A6C34 54 C3 04 3E */ clrlwi r3, r6, 16 /* 800AADF8 000A6C38 54 18 06 3E */ clrlwi r24, r0, 24 /* 800AADFC 000A6C3C 54 80 DF FE */ extrwi r0, r4, 1, 26 /* 800AAE00 000A6C40 7C 00 00 D0 */ neg r0, r0 /* 800AAE04 000A6C44 7C 79 00 78 */ andc r25, r3, r0 /* 800AAE08 000A6C48 48 00 01 F0 */ b lbl_800AAFF8 .global lbl_800AAE0C lbl_800AAE0C: /* 800AAE0C 000A6C4C 57 00 07 FF */ clrlwi. r0, r24, 31 /* 800AAE10 000A6C50 40 82 00 18 */ bne lbl_800AAE28 /* 800AAE14 000A6C54 7C 78 31 D6 */ mullw r3, r24, r6 /* 800AAE18 000A6C58 38 14 00 01 */ addi r0, r20, 0x1 /* 800AAE1C 000A6C5C 7C 03 00 50 */ subf r0, r3, r0 /* 800AAE20 000A6C60 54 19 04 3E */ clrlwi r25, r0, 16 /* 800AAE24 000A6C64 48 00 01 D4 */ b lbl_800AAFF8 .global lbl_800AAE28 lbl_800AAE28: /* 800AAE28 000A6C68 38 18 00 01 */ addi r0, r24, 0x1 /* 800AAE2C 000A6C6C 7C 66 01 D6 */ mullw r3, r6, r0 /* 800AAE30 000A6C70 38 03 FF FF */ addi r0, r3, -0x1 /* 800AAE34 000A6C74 7C 14 00 50 */ subf r0, r20, r0 /* 800AAE38 000A6C78 54 19 04 3E */ clrlwi r25, r0, 16 /* 800AAE3C 000A6C7C 48 00 01 BC */ b lbl_800AAFF8 .global lbl_800AAE40 lbl_800AAE40: /* 800AAE40 000A6C80 38 74 00 01 */ addi r3, r20, 0x1 /* 800AAE44 000A6C84 7C 03 90 40 */ cmplw r3, r18 /* 800AAE48 000A6C88 41 80 00 40 */ blt lbl_800AAE88 /* 800AAE4C 000A6C8C 54 80 06 73 */ rlwinm. r0, r4, 0, 25, 25 /* 800AAE50 000A6C90 41 82 00 1C */ beq lbl_800AAE6C /* 800AAE54 000A6C94 88 1F 00 05 */ lbz r0, 0x5(r31) /* 800AAE58 000A6C98 54 03 0F FE */ srwi r3, r0, 31 /* 800AAE5C 000A6C9C 54 00 07 FE */ clrlwi r0, r0, 31 /* 800AAE60 000A6CA0 7C 00 1A 78 */ xor r0, r0, r3 /* 800AAE64 000A6CA4 7C 03 00 51 */ subf. r0, r3, r0 /* 800AAE68 000A6CA8 41 82 00 0C */ beq lbl_800AAE74 .global lbl_800AAE6C lbl_800AAE6C: /* 800AAE6C 000A6CAC A3 3F 00 08 */ lhz r25, 0x8(r31) /* 800AAE70 000A6CB0 48 00 00 08 */ b lbl_800AAE78 .global lbl_800AAE74 lbl_800AAE74: /* 800AAE74 000A6CB4 3B 20 00 00 */ li r25, 0x0 .global lbl_800AAE78 lbl_800AAE78: /* 800AAE78 000A6CB8 88 7F 00 05 */ lbz r3, 0x5(r31) /* 800AAE7C 000A6CBC 38 03 FF FF */ addi r0, r3, -0x1 /* 800AAE80 000A6CC0 54 18 06 3E */ clrlwi r24, r0, 24 /* 800AAE84 000A6CC4 48 00 01 74 */ b lbl_800AAFF8 .global lbl_800AAE88 lbl_800AAE88: /* 800AAE88 000A6CC8 A2 FF 00 08 */ lhz r23, 0x8(r31) /* 800AAE8C 000A6CCC 28 17 00 01 */ cmplwi r23, 0x1 /* 800AAE90 000A6CD0 40 81 00 0C */ ble lbl_800AAE9C /* 800AAE94 000A6CD4 54 80 06 73 */ rlwinm. r0, r4, 0, 25, 25 /* 800AAE98 000A6CD8 40 82 00 A0 */ bne lbl_800AAF38 .global lbl_800AAE9C lbl_800AAE9C: /* 800AAE9C 000A6CDC 88 7F 00 05 */ lbz r3, 0x5(r31) /* 800AAEA0 000A6CE0 38 14 00 01 */ addi r0, r20, 0x1 /* 800AAEA4 000A6CE4 90 61 00 0C */ stw r3, 0xc(r1) /* 800AAEA8 000A6CE8 C8 82 8A 40 */ lfd f4, "@11031"@sda21(r2) /* 800AAEAC 000A6CEC C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AAEB0 000A6CF0 92 E1 00 14 */ stw r23, 0x14(r1) /* 800AAEB4 000A6CF4 EC 60 20 28 */ fsubs f3, f0, f4 /* 800AAEB8 000A6CF8 92 41 00 0C */ stw r18, 0xc(r1) /* 800AAEBC 000A6CFC C8 21 00 10 */ lfd f1, 0x10(r1) /* 800AAEC0 000A6D00 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AAEC4 000A6D04 EC 41 20 28 */ fsubs f2, f1, f4 /* 800AAEC8 000A6D08 90 01 00 14 */ stw r0, 0x14(r1) /* 800AAECC 000A6D0C EC 00 20 28 */ fsubs f0, f0, f4 /* 800AAED0 000A6D10 C8 21 00 10 */ lfd f1, 0x10(r1) /* 800AAED4 000A6D14 92 E1 00 0C */ stw r23, 0xc(r1) /* 800AAED8 000A6D18 EC 42 00 24 */ fdivs f2, f2, f0 /* 800AAEDC 000A6D1C C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AAEE0 000A6D20 EF E3 00 B2 */ fmuls f31, f3, f2 /* 800AAEE4 000A6D24 EC 21 20 28 */ fsubs f1, f1, f4 /* 800AAEE8 000A6D28 EC 00 20 28 */ fsubs f0, f0, f4 /* 800AAEEC 000A6D2C EC 21 07 F2 */ fmuls f1, f1, f31 /* 800AAEF0 000A6D30 EC 21 00 24 */ fdivs f1, f1, f0 /* 800AAEF4 000A6D34 4B F5 C3 21 */ bl __cvt_fp2unsigned /* 800AAEF8 000A6D38 7C 03 B9 D6 */ mullw r0, r3, r23 /* 800AAEFC 000A6D3C 38 94 00 01 */ addi r4, r20, 0x1 /* 800AAF00 000A6D40 90 81 00 14 */ stw r4, 0x14(r1) /* 800AAF04 000A6D44 7C 78 1B 78 */ mr r24, r3 /* 800AAF08 000A6D48 C8 42 8A 40 */ lfd f2, "@11031"@sda21(r2) /* 800AAF0C 000A6D4C C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AAF10 000A6D50 EC 20 10 28 */ fsubs f1, f0, f2 /* 800AAF14 000A6D54 90 01 00 0C */ stw r0, 0xc(r1) /* 800AAF18 000A6D58 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AAF1C 000A6D5C EC 21 07 F2 */ fmuls f1, f1, f31 /* 800AAF20 000A6D60 EC 00 10 28 */ fsubs f0, f0, f2 /* 800AAF24 000A6D64 EC 01 00 28 */ fsubs f0, f1, f0 /* 800AAF28 000A6D68 FC 00 00 1E */ fctiwz f0, f0 /* 800AAF2C 000A6D6C D8 01 00 18 */ stfd f0, 0x18(r1) /* 800AAF30 000A6D70 83 21 00 1C */ lwz r25, 0x1c(r1) /* 800AAF34 000A6D74 48 00 00 C4 */ b lbl_800AAFF8 .global lbl_800AAF38 lbl_800AAF38: /* 800AAF38 000A6D78 3A F7 FF FF */ addi r23, r23, -0x1 /* 800AAF3C 000A6D7C 8B 3F 00 05 */ lbz r25, 0x5(r31) /* 800AAF40 000A6D80 93 21 00 0C */ stw r25, 0xc(r1) /* 800AAF44 000A6D84 6E E0 80 00 */ xoris r0, r23, 0x8000 /* 800AAF48 000A6D88 C8 42 8A 48 */ lfd f2, "@11032_8055E9C8"@sda21(r2) /* 800AAF4C 000A6D8C 90 01 00 14 */ stw r0, 0x14(r1) /* 800AAF50 000A6D90 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AAF54 000A6D94 C8 21 00 10 */ lfd f1, 0x10(r1) /* 800AAF58 000A6D98 C8 82 8A 40 */ lfd f4, "@11031"@sda21(r2) /* 800AAF5C 000A6D9C EC 61 10 28 */ fsubs f3, f1, f2 /* 800AAF60 000A6DA0 92 41 00 14 */ stw r18, 0x14(r1) /* 800AAF64 000A6DA4 EC 20 20 28 */ fsubs f1, f0, f4 /* 800AAF68 000A6DA8 C0 42 8A 50 */ lfs f2, "@11089"@sda21(r2) /* 800AAF6C 000A6DAC C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AAF70 000A6DB0 90 61 00 0C */ stw r3, 0xc(r1) /* 800AAF74 000A6DB4 EC 63 00 72 */ fmuls f3, f3, f1 /* 800AAF78 000A6DB8 EC 20 20 28 */ fsubs f1, f0, f4 /* 800AAF7C 000A6DBC C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AAF80 000A6DC0 EC 42 18 2A */ fadds f2, f2, f3 /* 800AAF84 000A6DC4 EC 00 20 28 */ fsubs f0, f0, f4 /* 800AAF88 000A6DC8 EC 22 08 24 */ fdivs f1, f2, f1 /* 800AAF8C 000A6DCC EC 20 00 72 */ fmuls f1, f0, f1 /* 800AAF90 000A6DD0 4B F5 C2 85 */ bl __cvt_fp2unsigned /* 800AAF94 000A6DD4 7F 03 BB 96 */ divwu r24, r3, r23 /* 800AAF98 000A6DD8 7C 18 C8 40 */ cmplw r24, r25 /* 800AAF9C 000A6DDC 41 80 00 34 */ blt lbl_800AAFD0 /* 800AAFA0 000A6DE0 57 24 0F FE */ srwi r4, r25, 31 /* 800AAFA4 000A6DE4 57 20 07 FE */ clrlwi r0, r25, 31 /* 800AAFA8 000A6DE8 7C 03 22 78 */ xor r3, r0, r4 /* 800AAFAC 000A6DEC 7C 84 18 50 */ subf r4, r4, r3 /* 800AAFB0 000A6DF0 38 19 FF FF */ addi r0, r25, -0x1 /* 800AAFB4 000A6DF4 7C 84 00 34 */ cntlzw r4, r4 /* 800AAFB8 000A6DF8 56 E3 04 3E */ clrlwi r3, r23, 16 /* 800AAFBC 000A6DFC 54 18 06 3E */ clrlwi r24, r0, 24 /* 800AAFC0 000A6E00 54 80 DF FE */ extrwi r0, r4, 1, 26 /* 800AAFC4 000A6E04 7C 00 00 D0 */ neg r0, r0 /* 800AAFC8 000A6E08 7C 79 00 78 */ andc r25, r3, r0 /* 800AAFCC 000A6E0C 48 00 00 2C */ b lbl_800AAFF8 .global lbl_800AAFD0 lbl_800AAFD0: /* 800AAFD0 000A6E10 57 00 07 FF */ clrlwi. r0, r24, 31 /* 800AAFD4 000A6E14 40 82 00 14 */ bne lbl_800AAFE8 /* 800AAFD8 000A6E18 7C 18 B9 D6 */ mullw r0, r24, r23 /* 800AAFDC 000A6E1C 7C 00 18 50 */ subf r0, r0, r3 /* 800AAFE0 000A6E20 54 19 04 3E */ clrlwi r25, r0, 16 /* 800AAFE4 000A6E24 48 00 00 14 */ b lbl_800AAFF8 .global lbl_800AAFE8 lbl_800AAFE8: /* 800AAFE8 000A6E28 38 18 00 01 */ addi r0, r24, 0x1 /* 800AAFEC 000A6E2C 7C 17 01 D6 */ mullw r0, r23, r0 /* 800AAFF0 000A6E30 7C 03 00 50 */ subf r0, r3, r0 /* 800AAFF4 000A6E34 54 19 04 3E */ clrlwi r25, r0, 16 .global lbl_800AAFF8 lbl_800AAFF8: /* 800AAFF8 000A6E38 7C 1A C0 40 */ cmplw r26, r24 /* 800AAFFC 000A6E3C 57 23 04 3E */ clrlwi r3, r25, 16 /* 800AB000 000A6E40 3A FE 00 04 */ addi r23, r30, 0x4 /* 800AB004 000A6E44 40 82 02 24 */ bne lbl_800AB228 /* 800AB008 000A6E48 57 60 04 3E */ clrlwi r0, r27, 16 /* 800AB00C 000A6E4C 7C 00 18 40 */ cmplw r0, r3 /* 800AB010 000A6E50 40 82 00 10 */ bne lbl_800AB020 /* 800AB014 000A6E54 2C 13 00 00 */ cmpwi r19, 0x0 /* 800AB018 000A6E58 41 82 07 24 */ beq lbl_800AB73C /* 800AB01C 000A6E5C 3B 20 00 01 */ li r25, 0x1 .global lbl_800AB020 lbl_800AB020: /* 800AB020 000A6E60 57 60 04 3E */ clrlwi r0, r27, 16 /* 800AB024 000A6E64 57 23 04 3E */ clrlwi r3, r25, 16 /* 800AB028 000A6E68 7C 00 18 40 */ cmplw r0, r3 /* 800AB02C 000A6E6C 40 80 01 00 */ bge lbl_800AB12C /* 800AB030 000A6E70 A0 7E 00 00 */ lhz r3, 0x0(r30) /* 800AB034 000A6E74 38 A0 00 00 */ li r5, 0x0 /* 800AB038 000A6E78 A0 97 00 00 */ lhz r4, 0x0(r23) /* 800AB03C 000A6E7C 3A 63 FF FF */ addi r19, r3, -0x1 /* 800AB040 000A6E80 56 63 0F FE */ srwi r3, r19, 31 /* 800AB044 000A6E84 7C 00 20 00 */ cmpw r0, r4 /* 800AB048 000A6E88 7C 63 9A 14 */ add r3, r3, r19 /* 800AB04C 000A6E8C 7C 64 0E 70 */ srawi r4, r3, 1 /* 800AB050 000A6E90 41 80 00 08 */ blt lbl_800AB058 /* 800AB054 000A6E94 40 82 00 0C */ bne lbl_800AB060 .global lbl_800AB058 lbl_800AB058: /* 800AB058 000A6E98 3A 60 00 00 */ li r19, 0x0 /* 800AB05C 000A6E9C 48 00 00 70 */ b lbl_800AB0CC .global lbl_800AB060 lbl_800AB060: /* 800AB060 000A6EA0 1C 73 00 18 */ mulli r3, r19, 0x18 /* 800AB064 000A6EA4 7C 77 1A 2E */ lhzx r3, r23, r3 /* 800AB068 000A6EA8 7C 03 00 00 */ cmpw r3, r0 /* 800AB06C 000A6EAC 40 80 00 08 */ bge lbl_800AB074 /* 800AB070 000A6EB0 48 00 00 5C */ b lbl_800AB0CC .global lbl_800AB074 lbl_800AB074: /* 800AB074 000A6EB4 1C 64 00 18 */ mulli r3, r4, 0x18 /* 800AB078 000A6EB8 7C 77 1A 2E */ lhzx r3, r23, r3 /* 800AB07C 000A6EBC 48 00 00 44 */ b lbl_800AB0C0 .global lbl_800AB080 lbl_800AB080: /* 800AB080 000A6EC0 7C 00 18 00 */ cmpw r0, r3 /* 800AB084 000A6EC4 40 82 00 0C */ bne lbl_800AB090 /* 800AB088 000A6EC8 7C 93 23 78 */ mr r19, r4 /* 800AB08C 000A6ECC 48 00 00 1C */ b lbl_800AB0A8 .global lbl_800AB090 lbl_800AB090: /* 800AB090 000A6ED0 7C 03 00 00 */ cmpw r3, r0 /* 800AB094 000A6ED4 40 80 00 08 */ bge lbl_800AB09C /* 800AB098 000A6ED8 7C 85 23 78 */ mr r5, r4 .global lbl_800AB09C lbl_800AB09C: /* 800AB09C 000A6EDC 7C 03 00 00 */ cmpw r3, r0 /* 800AB0A0 000A6EE0 41 80 00 08 */ blt lbl_800AB0A8 /* 800AB0A4 000A6EE4 7C 93 23 78 */ mr r19, r4 .global lbl_800AB0A8 lbl_800AB0A8: /* 800AB0A8 000A6EE8 7C 85 9A 14 */ add r4, r5, r19 /* 800AB0AC 000A6EEC 54 83 0F FE */ srwi r3, r4, 31 /* 800AB0B0 000A6EF0 7C 63 22 14 */ add r3, r3, r4 /* 800AB0B4 000A6EF4 7C 64 0E 70 */ srawi r4, r3, 1 /* 800AB0B8 000A6EF8 1C 64 00 18 */ mulli r3, r4, 0x18 /* 800AB0BC 000A6EFC 7C 77 1A 2E */ lhzx r3, r23, r3 .global lbl_800AB0C0 lbl_800AB0C0: /* 800AB0C0 000A6F00 7C 05 20 00 */ cmpw r5, r4 /* 800AB0C4 000A6F04 41 80 FF BC */ blt lbl_800AB080 /* 800AB0C8 000A6F08 7C B3 2B 78 */ mr r19, r5 .global lbl_800AB0CC lbl_800AB0CC: /* 800AB0CC 000A6F0C 1C 13 00 18 */ mulli r0, r19, 0x18 /* 800AB0D0 000A6F10 57 32 04 3E */ clrlwi r18, r25, 16 /* 800AB0D4 000A6F14 57 74 04 3E */ clrlwi r20, r27, 16 /* 800AB0D8 000A6F18 7E F7 02 14 */ add r23, r23, r0 /* 800AB0DC 000A6F1C 48 00 00 40 */ b lbl_800AB11C .global lbl_800AB0E0 lbl_800AB0E0: /* 800AB0E0 000A6F20 A0 17 00 00 */ lhz r0, 0x0(r23) /* 800AB0E4 000A6F24 7C 00 A0 40 */ cmplw r0, r20 /* 800AB0E8 000A6F28 41 80 00 2C */ blt lbl_800AB114 /* 800AB0EC 000A6F2C 7C 12 00 40 */ cmplw r18, r0 /* 800AB0F0 000A6F30 40 81 06 4C */ ble lbl_800AB73C /* 800AB0F4 000A6F34 7E E3 BB 78 */ mr r3, r23 /* 800AB0F8 000A6F38 7E C4 B3 78 */ mr r4, r22 /* 800AB0FC 000A6F3C 7F E5 FB 78 */ mr r5, r31 /* 800AB100 000A6F40 7F 86 E3 78 */ mr r6, r28 /* 800AB104 000A6F44 7F A7 EB 78 */ mr r7, r29 /* 800AB108 000A6F48 7E A8 AB 78 */ mr r8, r21 /* 800AB10C 000A6F4C 7F 49 D3 78 */ mr r9, r26 /* 800AB110 000A6F50 4B FF F7 51 */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl .global lbl_800AB114 lbl_800AB114: /* 800AB114 000A6F54 3A F7 00 18 */ addi r23, r23, 0x18 /* 800AB118 000A6F58 3A 73 00 01 */ addi r19, r19, 0x1 .global lbl_800AB11C lbl_800AB11C: /* 800AB11C 000A6F5C A0 1E 00 00 */ lhz r0, 0x0(r30) /* 800AB120 000A6F60 7C 13 00 00 */ cmpw r19, r0 /* 800AB124 000A6F64 41 80 FF BC */ blt lbl_800AB0E0 /* 800AB128 000A6F68 48 00 06 14 */ b lbl_800AB73C .global lbl_800AB12C lbl_800AB12C: /* 800AB12C 000A6F6C A0 9E 00 00 */ lhz r4, 0x0(r30) /* 800AB130 000A6F70 38 A0 00 00 */ li r5, 0x0 /* 800AB134 000A6F74 A0 77 00 00 */ lhz r3, 0x0(r23) /* 800AB138 000A6F78 3A 64 FF FF */ addi r19, r4, -0x1 /* 800AB13C 000A6F7C 56 64 0F FE */ srwi r4, r19, 31 /* 800AB140 000A6F80 7C 00 18 00 */ cmpw r0, r3 /* 800AB144 000A6F84 7C 64 9A 14 */ add r3, r4, r19 /* 800AB148 000A6F88 7C 64 0E 70 */ srawi r4, r3, 1 /* 800AB14C 000A6F8C 40 80 00 0C */ bge lbl_800AB158 /* 800AB150 000A6F90 3A 60 00 00 */ li r19, 0x0 /* 800AB154 000A6F94 48 00 00 78 */ b lbl_800AB1CC .global lbl_800AB158 lbl_800AB158: /* 800AB158 000A6F98 1C 73 00 18 */ mulli r3, r19, 0x18 /* 800AB15C 000A6F9C 7C 77 1A 2E */ lhzx r3, r23, r3 /* 800AB160 000A6FA0 7C 03 00 00 */ cmpw r3, r0 /* 800AB164 000A6FA4 41 80 00 68 */ blt lbl_800AB1CC /* 800AB168 000A6FA8 7C 00 18 00 */ cmpw r0, r3 /* 800AB16C 000A6FAC 40 82 00 08 */ bne lbl_800AB174 /* 800AB170 000A6FB0 48 00 00 5C */ b lbl_800AB1CC .global lbl_800AB174 lbl_800AB174: /* 800AB174 000A6FB4 1C 64 00 18 */ mulli r3, r4, 0x18 /* 800AB178 000A6FB8 7C 77 1A 2E */ lhzx r3, r23, r3 /* 800AB17C 000A6FBC 48 00 00 44 */ b lbl_800AB1C0 .global lbl_800AB180 lbl_800AB180: /* 800AB180 000A6FC0 7C 00 18 00 */ cmpw r0, r3 /* 800AB184 000A6FC4 40 82 00 0C */ bne lbl_800AB190 /* 800AB188 000A6FC8 7C 85 23 78 */ mr r5, r4 /* 800AB18C 000A6FCC 48 00 00 1C */ b lbl_800AB1A8 .global lbl_800AB190 lbl_800AB190: /* 800AB190 000A6FD0 7C 03 00 00 */ cmpw r3, r0 /* 800AB194 000A6FD4 40 80 00 08 */ bge lbl_800AB19C /* 800AB198 000A6FD8 7C 85 23 78 */ mr r5, r4 .global lbl_800AB19C lbl_800AB19C: /* 800AB19C 000A6FDC 7C 03 00 00 */ cmpw r3, r0 /* 800AB1A0 000A6FE0 41 80 00 08 */ blt lbl_800AB1A8 /* 800AB1A4 000A6FE4 7C 93 23 78 */ mr r19, r4 .global lbl_800AB1A8 lbl_800AB1A8: /* 800AB1A8 000A6FE8 7C 85 9A 14 */ add r4, r5, r19 /* 800AB1AC 000A6FEC 54 83 0F FE */ srwi r3, r4, 31 /* 800AB1B0 000A6FF0 7C 63 22 14 */ add r3, r3, r4 /* 800AB1B4 000A6FF4 7C 64 0E 70 */ srawi r4, r3, 1 /* 800AB1B8 000A6FF8 1C 64 00 18 */ mulli r3, r4, 0x18 /* 800AB1BC 000A6FFC 7C 77 1A 2E */ lhzx r3, r23, r3 .global lbl_800AB1C0 lbl_800AB1C0: /* 800AB1C0 000A7000 7C 05 20 00 */ cmpw r5, r4 /* 800AB1C4 000A7004 41 80 FF BC */ blt lbl_800AB180 /* 800AB1C8 000A7008 7C B3 2B 78 */ mr r19, r5 .global lbl_800AB1CC lbl_800AB1CC: /* 800AB1CC 000A700C 1C 13 00 18 */ mulli r0, r19, 0x18 /* 800AB1D0 000A7010 57 32 04 3E */ clrlwi r18, r25, 16 /* 800AB1D4 000A7014 57 74 04 3E */ clrlwi r20, r27, 16 /* 800AB1D8 000A7018 7E F7 02 14 */ add r23, r23, r0 /* 800AB1DC 000A701C 48 00 00 40 */ b lbl_800AB21C .global lbl_800AB1E0 lbl_800AB1E0: /* 800AB1E0 000A7020 A0 17 00 00 */ lhz r0, 0x0(r23) /* 800AB1E4 000A7024 7C 14 00 40 */ cmplw r20, r0 /* 800AB1E8 000A7028 41 80 00 2C */ blt lbl_800AB214 /* 800AB1EC 000A702C 7C 00 90 40 */ cmplw r0, r18 /* 800AB1F0 000A7030 40 81 05 4C */ ble lbl_800AB73C /* 800AB1F4 000A7034 7E E3 BB 78 */ mr r3, r23 /* 800AB1F8 000A7038 7E C4 B3 78 */ mr r4, r22 /* 800AB1FC 000A703C 7F E5 FB 78 */ mr r5, r31 /* 800AB200 000A7040 7F 86 E3 78 */ mr r6, r28 /* 800AB204 000A7044 7F A7 EB 78 */ mr r7, r29 /* 800AB208 000A7048 7E A8 AB 78 */ mr r8, r21 /* 800AB20C 000A704C 7F 49 D3 78 */ mr r9, r26 /* 800AB210 000A7050 4B FF F6 51 */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl .global lbl_800AB214 lbl_800AB214: /* 800AB214 000A7054 3A F7 FF E8 */ addi r23, r23, -0x18 /* 800AB218 000A7058 3A 73 FF FF */ addi r19, r19, -0x1 .global lbl_800AB21C lbl_800AB21C: /* 800AB21C 000A705C 2C 13 00 00 */ cmpwi r19, 0x0 /* 800AB220 000A7060 40 80 FF C0 */ bge lbl_800AB1E0 /* 800AB224 000A7064 48 00 05 18 */ b lbl_800AB73C .global lbl_800AB228 lbl_800AB228: /* 800AB228 000A7068 88 1F 00 04 */ lbz r0, 0x4(r31) /* 800AB22C 000A706C 54 00 06 73 */ rlwinm. r0, r0, 0, 25, 25 /* 800AB230 000A7070 41 82 03 7C */ beq lbl_800AB5AC /* 800AB234 000A7074 57 54 07 FF */ clrlwi. r20, r26, 31 /* 800AB238 000A7078 40 82 01 08 */ bne lbl_800AB340 /* 800AB23C 000A707C A0 7E 00 00 */ lhz r3, 0x0(r30) /* 800AB240 000A7080 57 64 04 3E */ clrlwi r4, r27, 16 /* 800AB244 000A7084 A0 B7 00 00 */ lhz r5, 0x0(r23) /* 800AB248 000A7088 38 C0 00 00 */ li r6, 0x0 /* 800AB24C 000A708C 3A 63 FF FF */ addi r19, r3, -0x1 /* 800AB250 000A7090 56 60 0F FE */ srwi r0, r19, 31 /* 800AB254 000A7094 7C 04 28 00 */ cmpw r4, r5 /* 800AB258 000A7098 7C 00 9A 14 */ add r0, r0, r19 /* 800AB25C 000A709C 7C 03 0E 70 */ srawi r3, r0, 1 /* 800AB260 000A70A0 41 80 00 08 */ blt lbl_800AB268 /* 800AB264 000A70A4 40 82 00 0C */ bne lbl_800AB270 .global lbl_800AB268 lbl_800AB268: /* 800AB268 000A70A8 3A 60 00 00 */ li r19, 0x0 /* 800AB26C 000A70AC 48 00 00 70 */ b lbl_800AB2DC .global lbl_800AB270 lbl_800AB270: /* 800AB270 000A70B0 1C 13 00 18 */ mulli r0, r19, 0x18 /* 800AB274 000A70B4 7C 17 02 2E */ lhzx r0, r23, r0 /* 800AB278 000A70B8 7C 00 20 00 */ cmpw r0, r4 /* 800AB27C 000A70BC 40 80 00 08 */ bge lbl_800AB284 /* 800AB280 000A70C0 48 00 00 5C */ b lbl_800AB2DC .global lbl_800AB284 lbl_800AB284: /* 800AB284 000A70C4 1C 03 00 18 */ mulli r0, r3, 0x18 /* 800AB288 000A70C8 7C 17 02 2E */ lhzx r0, r23, r0 /* 800AB28C 000A70CC 48 00 00 44 */ b lbl_800AB2D0 .global lbl_800AB290 lbl_800AB290: /* 800AB290 000A70D0 7C 04 00 00 */ cmpw r4, r0 /* 800AB294 000A70D4 40 82 00 0C */ bne lbl_800AB2A0 /* 800AB298 000A70D8 7C 73 1B 78 */ mr r19, r3 /* 800AB29C 000A70DC 48 00 00 1C */ b lbl_800AB2B8 .global lbl_800AB2A0 lbl_800AB2A0: /* 800AB2A0 000A70E0 7C 00 20 00 */ cmpw r0, r4 /* 800AB2A4 000A70E4 40 80 00 08 */ bge lbl_800AB2AC /* 800AB2A8 000A70E8 7C 66 1B 78 */ mr r6, r3 .global lbl_800AB2AC lbl_800AB2AC: /* 800AB2AC 000A70EC 7C 00 20 00 */ cmpw r0, r4 /* 800AB2B0 000A70F0 41 80 00 08 */ blt lbl_800AB2B8 /* 800AB2B4 000A70F4 7C 73 1B 78 */ mr r19, r3 .global lbl_800AB2B8 lbl_800AB2B8: /* 800AB2B8 000A70F8 7C 66 9A 14 */ add r3, r6, r19 /* 800AB2BC 000A70FC 54 60 0F FE */ srwi r0, r3, 31 /* 800AB2C0 000A7100 7C 00 1A 14 */ add r0, r0, r3 /* 800AB2C4 000A7104 7C 03 0E 70 */ srawi r3, r0, 1 /* 800AB2C8 000A7108 1C 03 00 18 */ mulli r0, r3, 0x18 /* 800AB2CC 000A710C 7C 17 02 2E */ lhzx r0, r23, r0 .global lbl_800AB2D0 lbl_800AB2D0: /* 800AB2D0 000A7110 7C 06 18 00 */ cmpw r6, r3 /* 800AB2D4 000A7114 41 80 FF BC */ blt lbl_800AB290 /* 800AB2D8 000A7118 7C D3 33 78 */ mr r19, r6 .global lbl_800AB2DC lbl_800AB2DC: /* 800AB2DC 000A711C 1C 13 00 18 */ mulli r0, r19, 0x18 /* 800AB2E0 000A7120 57 72 04 3E */ clrlwi r18, r27, 16 /* 800AB2E4 000A7124 7F 77 02 14 */ add r27, r23, r0 /* 800AB2E8 000A7128 48 00 00 48 */ b lbl_800AB330 .global lbl_800AB2EC lbl_800AB2EC: /* 800AB2EC 000A712C A0 9B 00 00 */ lhz r4, 0x0(r27) /* 800AB2F0 000A7130 7C 04 90 40 */ cmplw r4, r18 /* 800AB2F4 000A7134 41 80 00 34 */ blt lbl_800AB328 /* 800AB2F8 000A7138 A0 7F 00 08 */ lhz r3, 0x8(r31) /* 800AB2FC 000A713C 38 03 FF FF */ addi r0, r3, -0x1 /* 800AB300 000A7140 7C 04 00 00 */ cmpw r4, r0 /* 800AB304 000A7144 41 82 01 34 */ beq lbl_800AB438 /* 800AB308 000A7148 7F 63 DB 78 */ mr r3, r27 /* 800AB30C 000A714C 7E C4 B3 78 */ mr r4, r22 /* 800AB310 000A7150 7F E5 FB 78 */ mr r5, r31 /* 800AB314 000A7154 7F 86 E3 78 */ mr r6, r28 /* 800AB318 000A7158 7F A7 EB 78 */ mr r7, r29 /* 800AB31C 000A715C 7E A8 AB 78 */ mr r8, r21 /* 800AB320 000A7160 7F 49 D3 78 */ mr r9, r26 /* 800AB324 000A7164 4B FF F5 3D */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl .global lbl_800AB328 lbl_800AB328: /* 800AB328 000A7168 3B 7B 00 18 */ addi r27, r27, 0x18 /* 800AB32C 000A716C 3A 73 00 01 */ addi r19, r19, 0x1 .global lbl_800AB330 lbl_800AB330: /* 800AB330 000A7170 A0 1E 00 00 */ lhz r0, 0x0(r30) /* 800AB334 000A7174 7C 13 00 00 */ cmpw r19, r0 /* 800AB338 000A7178 41 80 FF B4 */ blt lbl_800AB2EC /* 800AB33C 000A717C 48 00 00 FC */ b lbl_800AB438 .global lbl_800AB340 lbl_800AB340: /* 800AB340 000A7180 A0 7E 00 00 */ lhz r3, 0x0(r30) /* 800AB344 000A7184 57 64 04 3E */ clrlwi r4, r27, 16 /* 800AB348 000A7188 A0 17 00 00 */ lhz r0, 0x0(r23) /* 800AB34C 000A718C 38 A0 00 00 */ li r5, 0x0 /* 800AB350 000A7190 3A 63 FF FF */ addi r19, r3, -0x1 /* 800AB354 000A7194 56 63 0F FE */ srwi r3, r19, 31 /* 800AB358 000A7198 7C 04 00 00 */ cmpw r4, r0 /* 800AB35C 000A719C 7C 03 9A 14 */ add r0, r3, r19 /* 800AB360 000A71A0 7C 03 0E 70 */ srawi r3, r0, 1 /* 800AB364 000A71A4 40 80 00 0C */ bge lbl_800AB370 /* 800AB368 000A71A8 3A 60 00 00 */ li r19, 0x0 /* 800AB36C 000A71AC 48 00 00 78 */ b lbl_800AB3E4 .global lbl_800AB370 lbl_800AB370: /* 800AB370 000A71B0 1C 13 00 18 */ mulli r0, r19, 0x18 /* 800AB374 000A71B4 7C 17 02 2E */ lhzx r0, r23, r0 /* 800AB378 000A71B8 7C 00 20 00 */ cmpw r0, r4 /* 800AB37C 000A71BC 41 80 00 68 */ blt lbl_800AB3E4 /* 800AB380 000A71C0 7C 04 00 00 */ cmpw r4, r0 /* 800AB384 000A71C4 40 82 00 08 */ bne lbl_800AB38C /* 800AB388 000A71C8 48 00 00 5C */ b lbl_800AB3E4 .global lbl_800AB38C lbl_800AB38C: /* 800AB38C 000A71CC 1C 03 00 18 */ mulli r0, r3, 0x18 /* 800AB390 000A71D0 7C 17 02 2E */ lhzx r0, r23, r0 /* 800AB394 000A71D4 48 00 00 44 */ b lbl_800AB3D8 .global lbl_800AB398 lbl_800AB398: /* 800AB398 000A71D8 7C 04 00 00 */ cmpw r4, r0 /* 800AB39C 000A71DC 40 82 00 0C */ bne lbl_800AB3A8 /* 800AB3A0 000A71E0 7C 65 1B 78 */ mr r5, r3 /* 800AB3A4 000A71E4 48 00 00 1C */ b lbl_800AB3C0 .global lbl_800AB3A8 lbl_800AB3A8: /* 800AB3A8 000A71E8 7C 00 20 00 */ cmpw r0, r4 /* 800AB3AC 000A71EC 40 80 00 08 */ bge lbl_800AB3B4 /* 800AB3B0 000A71F0 7C 65 1B 78 */ mr r5, r3 .global lbl_800AB3B4 lbl_800AB3B4: /* 800AB3B4 000A71F4 7C 00 20 00 */ cmpw r0, r4 /* 800AB3B8 000A71F8 41 80 00 08 */ blt lbl_800AB3C0 /* 800AB3BC 000A71FC 7C 73 1B 78 */ mr r19, r3 .global lbl_800AB3C0 lbl_800AB3C0: /* 800AB3C0 000A7200 7C 65 9A 14 */ add r3, r5, r19 /* 800AB3C4 000A7204 54 60 0F FE */ srwi r0, r3, 31 /* 800AB3C8 000A7208 7C 00 1A 14 */ add r0, r0, r3 /* 800AB3CC 000A720C 7C 03 0E 70 */ srawi r3, r0, 1 /* 800AB3D0 000A7210 1C 03 00 18 */ mulli r0, r3, 0x18 /* 800AB3D4 000A7214 7C 17 02 2E */ lhzx r0, r23, r0 .global lbl_800AB3D8 lbl_800AB3D8: /* 800AB3D8 000A7218 7C 05 18 00 */ cmpw r5, r3 /* 800AB3DC 000A721C 41 80 FF BC */ blt lbl_800AB398 /* 800AB3E0 000A7220 7C B3 2B 78 */ mr r19, r5 .global lbl_800AB3E4 lbl_800AB3E4: /* 800AB3E4 000A7224 1C 13 00 18 */ mulli r0, r19, 0x18 /* 800AB3E8 000A7228 57 72 04 3E */ clrlwi r18, r27, 16 /* 800AB3EC 000A722C 7F 77 02 14 */ add r27, r23, r0 /* 800AB3F0 000A7230 48 00 00 40 */ b lbl_800AB430 .global lbl_800AB3F4 lbl_800AB3F4: /* 800AB3F4 000A7234 A0 1B 00 00 */ lhz r0, 0x0(r27) /* 800AB3F8 000A7238 7C 12 00 40 */ cmplw r18, r0 /* 800AB3FC 000A723C 41 80 00 2C */ blt lbl_800AB428 /* 800AB400 000A7240 2C 00 00 00 */ cmpwi r0, 0x0 /* 800AB404 000A7244 41 82 00 34 */ beq lbl_800AB438 /* 800AB408 000A7248 7F 63 DB 78 */ mr r3, r27 /* 800AB40C 000A724C 7E C4 B3 78 */ mr r4, r22 /* 800AB410 000A7250 7F E5 FB 78 */ mr r5, r31 /* 800AB414 000A7254 7F 86 E3 78 */ mr r6, r28 /* 800AB418 000A7258 7F A7 EB 78 */ mr r7, r29 /* 800AB41C 000A725C 7E A8 AB 78 */ mr r8, r21 /* 800AB420 000A7260 7F 49 D3 78 */ mr r9, r26 /* 800AB424 000A7264 4B FF F4 3D */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl .global lbl_800AB428 lbl_800AB428: /* 800AB428 000A7268 3B 7B FF E8 */ addi r27, r27, -0x18 /* 800AB42C 000A726C 3A 73 FF FF */ addi r19, r19, -0x1 .global lbl_800AB430 lbl_800AB430: /* 800AB430 000A7270 2C 13 00 00 */ cmpwi r19, 0x0 /* 800AB434 000A7274 40 80 FF C0 */ bge lbl_800AB3F4 .global lbl_800AB438 lbl_800AB438: /* 800AB438 000A7278 3A 5A 00 01 */ addi r18, r26, 0x1 /* 800AB43C 000A727C 48 00 00 B8 */ b lbl_800AB4F4 .global lbl_800AB440 lbl_800AB440: /* 800AB440 000A7280 2C 14 00 00 */ cmpwi r20, 0x0 /* 800AB444 000A7284 40 82 00 5C */ bne lbl_800AB4A0 /* 800AB448 000A7288 7E F3 BB 78 */ mr r19, r23 /* 800AB44C 000A728C 3B 60 00 00 */ li r27, 0x0 /* 800AB450 000A7290 48 00 00 40 */ b lbl_800AB490 .global lbl_800AB454 lbl_800AB454: /* 800AB454 000A7294 A0 7F 00 08 */ lhz r3, 0x8(r31) /* 800AB458 000A7298 A0 93 00 00 */ lhz r4, 0x0(r19) /* 800AB45C 000A729C 38 03 FF FF */ addi r0, r3, -0x1 /* 800AB460 000A72A0 7C 04 00 00 */ cmpw r4, r0 /* 800AB464 000A72A4 41 82 00 8C */ beq lbl_800AB4F0 /* 800AB468 000A72A8 7E 63 9B 78 */ mr r3, r19 /* 800AB46C 000A72AC 7E C4 B3 78 */ mr r4, r22 /* 800AB470 000A72B0 7F E5 FB 78 */ mr r5, r31 /* 800AB474 000A72B4 7F 86 E3 78 */ mr r6, r28 /* 800AB478 000A72B8 7F A7 EB 78 */ mr r7, r29 /* 800AB47C 000A72BC 7E A8 AB 78 */ mr r8, r21 /* 800AB480 000A72C0 7F 49 D3 78 */ mr r9, r26 /* 800AB484 000A72C4 4B FF F3 DD */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl /* 800AB488 000A72C8 3A 73 00 18 */ addi r19, r19, 0x18 /* 800AB48C 000A72CC 3B 7B 00 01 */ addi r27, r27, 0x1 .global lbl_800AB490 lbl_800AB490: /* 800AB490 000A72D0 A0 1E 00 00 */ lhz r0, 0x0(r30) /* 800AB494 000A72D4 7C 1B 00 00 */ cmpw r27, r0 /* 800AB498 000A72D8 41 80 FF BC */ blt lbl_800AB454 /* 800AB49C 000A72DC 48 00 00 54 */ b lbl_800AB4F0 .global lbl_800AB4A0 lbl_800AB4A0: /* 800AB4A0 000A72E0 A0 7E 00 00 */ lhz r3, 0x0(r30) /* 800AB4A4 000A72E4 3A 63 FF FF */ addi r19, r3, -0x1 /* 800AB4A8 000A72E8 1C 13 00 18 */ mulli r0, r19, 0x18 /* 800AB4AC 000A72EC 7F 77 02 14 */ add r27, r23, r0 /* 800AB4B0 000A72F0 48 00 00 38 */ b lbl_800AB4E8 .global lbl_800AB4B4 lbl_800AB4B4: /* 800AB4B4 000A72F4 A0 1B 00 00 */ lhz r0, 0x0(r27) /* 800AB4B8 000A72F8 2C 00 00 00 */ cmpwi r0, 0x0 /* 800AB4BC 000A72FC 41 82 00 34 */ beq lbl_800AB4F0 /* 800AB4C0 000A7300 7F 63 DB 78 */ mr r3, r27 /* 800AB4C4 000A7304 7E C4 B3 78 */ mr r4, r22 /* 800AB4C8 000A7308 7F E5 FB 78 */ mr r5, r31 /* 800AB4CC 000A730C 7F 86 E3 78 */ mr r6, r28 /* 800AB4D0 000A7310 7F A7 EB 78 */ mr r7, r29 /* 800AB4D4 000A7314 7E A8 AB 78 */ mr r8, r21 /* 800AB4D8 000A7318 7F 49 D3 78 */ mr r9, r26 /* 800AB4DC 000A731C 4B FF F3 85 */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl /* 800AB4E0 000A7320 3B 7B FF E8 */ addi r27, r27, -0x18 /* 800AB4E4 000A7324 3A 73 FF FF */ addi r19, r19, -0x1 .global lbl_800AB4E8 lbl_800AB4E8: /* 800AB4E8 000A7328 2C 13 00 00 */ cmpwi r19, 0x0 /* 800AB4EC 000A732C 40 80 FF C8 */ bge lbl_800AB4B4 .global lbl_800AB4F0 lbl_800AB4F0: /* 800AB4F0 000A7330 3A 52 00 01 */ addi r18, r18, 0x1 .global lbl_800AB4F4 lbl_800AB4F4: /* 800AB4F4 000A7334 7C 12 C0 40 */ cmplw r18, r24 /* 800AB4F8 000A7338 41 80 FF 48 */ blt lbl_800AB440 /* 800AB4FC 000A733C 57 00 07 FF */ clrlwi. r0, r24, 31 /* 800AB500 000A7340 40 82 00 54 */ bne lbl_800AB554 /* 800AB504 000A7344 57 32 04 3E */ clrlwi r18, r25, 16 /* 800AB508 000A7348 3A 60 00 00 */ li r19, 0x0 /* 800AB50C 000A734C 48 00 00 38 */ b lbl_800AB544 .global lbl_800AB510 lbl_800AB510: /* 800AB510 000A7350 A0 17 00 00 */ lhz r0, 0x0(r23) /* 800AB514 000A7354 7C 12 00 40 */ cmplw r18, r0 /* 800AB518 000A7358 40 81 02 24 */ ble lbl_800AB73C /* 800AB51C 000A735C 7E E3 BB 78 */ mr r3, r23 /* 800AB520 000A7360 7E C4 B3 78 */ mr r4, r22 /* 800AB524 000A7364 7F E5 FB 78 */ mr r5, r31 /* 800AB528 000A7368 7F 86 E3 78 */ mr r6, r28 /* 800AB52C 000A736C 7F A7 EB 78 */ mr r7, r29 /* 800AB530 000A7370 7E A8 AB 78 */ mr r8, r21 /* 800AB534 000A7374 7F 49 D3 78 */ mr r9, r26 /* 800AB538 000A7378 4B FF F3 29 */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl /* 800AB53C 000A737C 3A F7 00 18 */ addi r23, r23, 0x18 /* 800AB540 000A7380 3A 73 00 01 */ addi r19, r19, 0x1 .global lbl_800AB544 lbl_800AB544: /* 800AB544 000A7384 A0 1E 00 00 */ lhz r0, 0x0(r30) /* 800AB548 000A7388 7C 13 00 00 */ cmpw r19, r0 /* 800AB54C 000A738C 41 80 FF C4 */ blt lbl_800AB510 /* 800AB550 000A7390 48 00 01 EC */ b lbl_800AB73C .global lbl_800AB554 lbl_800AB554: /* 800AB554 000A7394 A0 7E 00 00 */ lhz r3, 0x0(r30) /* 800AB558 000A7398 57 32 04 3E */ clrlwi r18, r25, 16 /* 800AB55C 000A739C 3A 63 FF FF */ addi r19, r3, -0x1 /* 800AB560 000A73A0 1C 13 00 18 */ mulli r0, r19, 0x18 /* 800AB564 000A73A4 7E 97 02 14 */ add r20, r23, r0 /* 800AB568 000A73A8 48 00 00 38 */ b lbl_800AB5A0 .global lbl_800AB56C lbl_800AB56C: /* 800AB56C 000A73AC A0 14 00 00 */ lhz r0, 0x0(r20) /* 800AB570 000A73B0 7C 12 00 40 */ cmplw r18, r0 /* 800AB574 000A73B4 40 80 01 C8 */ bge lbl_800AB73C /* 800AB578 000A73B8 7E 83 A3 78 */ mr r3, r20 /* 800AB57C 000A73BC 7E C4 B3 78 */ mr r4, r22 /* 800AB580 000A73C0 7F E5 FB 78 */ mr r5, r31 /* 800AB584 000A73C4 7F 86 E3 78 */ mr r6, r28 /* 800AB588 000A73C8 7F A7 EB 78 */ mr r7, r29 /* 800AB58C 000A73CC 7E A8 AB 78 */ mr r8, r21 /* 800AB590 000A73D0 7F 49 D3 78 */ mr r9, r26 /* 800AB594 000A73D4 4B FF F2 CD */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl /* 800AB598 000A73D8 3A 94 FF E8 */ addi r20, r20, -0x18 /* 800AB59C 000A73DC 3A 73 FF FF */ addi r19, r19, -0x1 .global lbl_800AB5A0 lbl_800AB5A0: /* 800AB5A0 000A73E0 2C 13 00 00 */ cmpwi r19, 0x0 /* 800AB5A4 000A73E4 40 80 FF C8 */ bge lbl_800AB56C /* 800AB5A8 000A73E8 48 00 01 94 */ b lbl_800AB73C .global lbl_800AB5AC lbl_800AB5AC: /* 800AB5AC 000A73EC A0 7E 00 00 */ lhz r3, 0x0(r30) /* 800AB5B0 000A73F0 57 64 04 3E */ clrlwi r4, r27, 16 /* 800AB5B4 000A73F4 A0 B7 00 00 */ lhz r5, 0x0(r23) /* 800AB5B8 000A73F8 38 C0 00 00 */ li r6, 0x0 /* 800AB5BC 000A73FC 3A 83 FF FF */ addi r20, r3, -0x1 /* 800AB5C0 000A7400 56 80 0F FE */ srwi r0, r20, 31 /* 800AB5C4 000A7404 7C 04 28 00 */ cmpw r4, r5 /* 800AB5C8 000A7408 7C 00 A2 14 */ add r0, r0, r20 /* 800AB5CC 000A740C 7C 03 0E 70 */ srawi r3, r0, 1 /* 800AB5D0 000A7410 41 80 00 08 */ blt lbl_800AB5D8 /* 800AB5D4 000A7414 40 82 00 0C */ bne lbl_800AB5E0 .global lbl_800AB5D8 lbl_800AB5D8: /* 800AB5D8 000A7418 3A 80 00 00 */ li r20, 0x0 /* 800AB5DC 000A741C 48 00 00 70 */ b lbl_800AB64C .global lbl_800AB5E0 lbl_800AB5E0: /* 800AB5E0 000A7420 1C 14 00 18 */ mulli r0, r20, 0x18 /* 800AB5E4 000A7424 7C 17 02 2E */ lhzx r0, r23, r0 /* 800AB5E8 000A7428 7C 00 20 00 */ cmpw r0, r4 /* 800AB5EC 000A742C 40 80 00 08 */ bge lbl_800AB5F4 /* 800AB5F0 000A7430 48 00 00 5C */ b lbl_800AB64C .global lbl_800AB5F4 lbl_800AB5F4: /* 800AB5F4 000A7434 1C 03 00 18 */ mulli r0, r3, 0x18 /* 800AB5F8 000A7438 7C 17 02 2E */ lhzx r0, r23, r0 /* 800AB5FC 000A743C 48 00 00 44 */ b lbl_800AB640 .global lbl_800AB600 lbl_800AB600: /* 800AB600 000A7440 7C 04 00 00 */ cmpw r4, r0 /* 800AB604 000A7444 40 82 00 0C */ bne lbl_800AB610 /* 800AB608 000A7448 7C 74 1B 78 */ mr r20, r3 /* 800AB60C 000A744C 48 00 00 1C */ b lbl_800AB628 .global lbl_800AB610 lbl_800AB610: /* 800AB610 000A7450 7C 00 20 00 */ cmpw r0, r4 /* 800AB614 000A7454 40 80 00 08 */ bge lbl_800AB61C /* 800AB618 000A7458 7C 66 1B 78 */ mr r6, r3 .global lbl_800AB61C lbl_800AB61C: /* 800AB61C 000A745C 7C 00 20 00 */ cmpw r0, r4 /* 800AB620 000A7460 41 80 00 08 */ blt lbl_800AB628 /* 800AB624 000A7464 7C 74 1B 78 */ mr r20, r3 .global lbl_800AB628 lbl_800AB628: /* 800AB628 000A7468 7C 66 A2 14 */ add r3, r6, r20 /* 800AB62C 000A746C 54 60 0F FE */ srwi r0, r3, 31 /* 800AB630 000A7470 7C 00 1A 14 */ add r0, r0, r3 /* 800AB634 000A7474 7C 03 0E 70 */ srawi r3, r0, 1 /* 800AB638 000A7478 1C 03 00 18 */ mulli r0, r3, 0x18 /* 800AB63C 000A747C 7C 17 02 2E */ lhzx r0, r23, r0 .global lbl_800AB640 lbl_800AB640: /* 800AB640 000A7480 7C 06 18 00 */ cmpw r6, r3 /* 800AB644 000A7484 41 80 FF BC */ blt lbl_800AB600 /* 800AB648 000A7488 7C D4 33 78 */ mr r20, r6 .global lbl_800AB64C lbl_800AB64C: /* 800AB64C 000A748C 1C 14 00 18 */ mulli r0, r20, 0x18 /* 800AB650 000A7490 57 72 04 3E */ clrlwi r18, r27, 16 /* 800AB654 000A7494 7E 77 02 14 */ add r19, r23, r0 /* 800AB658 000A7498 48 00 00 38 */ b lbl_800AB690 .global lbl_800AB65C lbl_800AB65C: /* 800AB65C 000A749C A0 13 00 00 */ lhz r0, 0x0(r19) /* 800AB660 000A74A0 7C 00 90 40 */ cmplw r0, r18 /* 800AB664 000A74A4 41 80 00 24 */ blt lbl_800AB688 /* 800AB668 000A74A8 7E 63 9B 78 */ mr r3, r19 /* 800AB66C 000A74AC 7E C4 B3 78 */ mr r4, r22 /* 800AB670 000A74B0 7F E5 FB 78 */ mr r5, r31 /* 800AB674 000A74B4 7F 86 E3 78 */ mr r6, r28 /* 800AB678 000A74B8 7F A7 EB 78 */ mr r7, r29 /* 800AB67C 000A74BC 7E A8 AB 78 */ mr r8, r21 /* 800AB680 000A74C0 7F 49 D3 78 */ mr r9, r26 /* 800AB684 000A74C4 4B FF F1 DD */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl .global lbl_800AB688 lbl_800AB688: /* 800AB688 000A74C8 3A 73 00 18 */ addi r19, r19, 0x18 /* 800AB68C 000A74CC 3A 94 00 01 */ addi r20, r20, 0x1 .global lbl_800AB690 lbl_800AB690: /* 800AB690 000A74D0 A0 1E 00 00 */ lhz r0, 0x0(r30) /* 800AB694 000A74D4 7C 14 00 00 */ cmpw r20, r0 /* 800AB698 000A74D8 41 80 FF C4 */ blt lbl_800AB65C /* 800AB69C 000A74DC 3A 9A 00 01 */ addi r20, r26, 0x1 /* 800AB6A0 000A74E0 48 00 00 48 */ b lbl_800AB6E8 .global lbl_800AB6A4 lbl_800AB6A4: /* 800AB6A4 000A74E4 7E F3 BB 78 */ mr r19, r23 /* 800AB6A8 000A74E8 3A 40 00 00 */ li r18, 0x0 /* 800AB6AC 000A74EC 48 00 00 2C */ b lbl_800AB6D8 .global lbl_800AB6B0 lbl_800AB6B0: /* 800AB6B0 000A74F0 7E 63 9B 78 */ mr r3, r19 /* 800AB6B4 000A74F4 7E C4 B3 78 */ mr r4, r22 /* 800AB6B8 000A74F8 7F E5 FB 78 */ mr r5, r31 /* 800AB6BC 000A74FC 7F 86 E3 78 */ mr r6, r28 /* 800AB6C0 000A7500 7F A7 EB 78 */ mr r7, r29 /* 800AB6C4 000A7504 7E A8 AB 78 */ mr r8, r21 /* 800AB6C8 000A7508 7F 49 D3 78 */ mr r9, r26 /* 800AB6CC 000A750C 4B FF F1 95 */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl /* 800AB6D0 000A7510 3A 73 00 18 */ addi r19, r19, 0x18 /* 800AB6D4 000A7514 3A 52 00 01 */ addi r18, r18, 0x1 .global lbl_800AB6D8 lbl_800AB6D8: /* 800AB6D8 000A7518 A0 1E 00 00 */ lhz r0, 0x0(r30) /* 800AB6DC 000A751C 7C 12 00 00 */ cmpw r18, r0 /* 800AB6E0 000A7520 41 80 FF D0 */ blt lbl_800AB6B0 /* 800AB6E4 000A7524 3A 94 00 01 */ addi r20, r20, 0x1 .global lbl_800AB6E8 lbl_800AB6E8: /* 800AB6E8 000A7528 7C 14 C0 40 */ cmplw r20, r24 /* 800AB6EC 000A752C 41 80 FF B8 */ blt lbl_800AB6A4 /* 800AB6F0 000A7530 57 32 04 3E */ clrlwi r18, r25, 16 /* 800AB6F4 000A7534 3A 60 00 00 */ li r19, 0x0 /* 800AB6F8 000A7538 48 00 00 38 */ b lbl_800AB730 .global lbl_800AB6FC lbl_800AB6FC: /* 800AB6FC 000A753C A0 17 00 00 */ lhz r0, 0x0(r23) /* 800AB700 000A7540 7C 12 00 40 */ cmplw r18, r0 /* 800AB704 000A7544 40 81 00 38 */ ble lbl_800AB73C /* 800AB708 000A7548 7E E3 BB 78 */ mr r3, r23 /* 800AB70C 000A754C 7E C4 B3 78 */ mr r4, r22 /* 800AB710 000A7550 7F E5 FB 78 */ mr r5, r31 /* 800AB714 000A7554 7F 86 E3 78 */ mr r6, r28 /* 800AB718 000A7558 7F A7 EB 78 */ mr r7, r29 /* 800AB71C 000A755C 7E A8 AB 78 */ mr r8, r21 /* 800AB720 000A7560 7F 49 D3 78 */ mr r9, r26 /* 800AB724 000A7564 4B FF F1 3D */ bl createChild__Q24nw4r2efFPUcUsPQ34nw4r2ef15AnimCurveHeaderPQ34nw4r2ef18AnimCurveNameTablePQ34nw4r2ef20AnimCurveRandomTablePQ34nw4r2ef8ParticleUl /* 800AB728 000A7568 3A F7 00 18 */ addi r23, r23, 0x18 /* 800AB72C 000A756C 3A 73 00 01 */ addi r19, r19, 0x1 .global lbl_800AB730 lbl_800AB730: /* 800AB730 000A7570 A0 1E 00 00 */ lhz r0, 0x0(r30) /* 800AB734 000A7574 7C 13 00 00 */ cmpw r19, r0 /* 800AB738 000A7578 41 80 FF C4 */ blt lbl_800AB6FC .global lbl_800AB73C lbl_800AB73C: /* 800AB73C 000A757C 39 61 00 60 */ addi r11, r1, 0x60 /* 800AB740 000A7580 E3 E1 00 68 */ psq_l f31, 0x68(r1), 0, qr0 /* 800AB744 000A7584 CB E1 00 60 */ lfd f31, 0x60(r1) /* 800AB748 000A7588 4B F5 BC 1D */ bl lbl_80007364 /* 800AB74C 000A758C 80 01 00 74 */ lwz r0, 0x74(r1) /* 800AB750 000A7590 7C 08 03 A6 */ mtlr r0 /* 800AB754 000A7594 38 21 00 70 */ addi r1, r1, 0x70 /* 800AB758 000A7598 4E 80 00 20 */ blr /* 800AB75C 000A759C 00 00 00 00 */ .4byte 0x00000000 .global AnimBakedExecuteU8__Q24nw4r2efFPUcPUcUlUl AnimBakedExecuteU8__Q24nw4r2efFPUcPUcUlUl: /* 800AB760 000A75A0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 800AB764 000A75A4 7C 08 02 A6 */ mflr r0 /* 800AB768 000A75A8 90 01 00 64 */ stw r0, 0x64(r1) /* 800AB76C 000A75AC 39 61 00 50 */ addi r11, r1, 0x50 /* 800AB770 000A75B0 DB E1 00 50 */ stfd f31, 0x50(r1) /* 800AB774 000A75B4 F3 E1 00 58 */ psq_st f31, 0x58(r1), 0, qr0 /* 800AB778 000A75B8 4B F5 BB B9 */ bl lbl_80007330 /* 800AB77C 000A75BC 3C E0 80 44 */ lis r7, gCountStandBit__Q24nw4r2ef@ha /* 800AB780 000A75C0 8B E3 00 03 */ lbz r31, 0x3(r3) /* 800AB784 000A75C4 38 E7 01 08 */ addi r7, r7, gCountStandBit__Q24nw4r2ef@l /* 800AB788 000A75C8 3C 00 43 30 */ lis r0, 0x4330 /* 800AB78C 000A75CC 7F A7 F8 AE */ lbzx r29, r7, r31 /* 800AB790 000A75D0 3C E0 80 44 */ lis r7, gMSB__Q24nw4r2ef@ha /* 800AB794 000A75D4 38 E7 02 08 */ addi r7, r7, gMSB__Q24nw4r2ef@l /* 800AB798 000A75D8 90 01 00 08 */ stw r0, 0x8(r1) /* 800AB79C 000A75DC 2C 1D 00 00 */ cmpwi r29, 0x0 /* 800AB7A0 000A75E0 7F C7 F8 AE */ lbzx r30, r7, r31 /* 800AB7A4 000A75E4 90 01 00 10 */ stw r0, 0x10(r1) /* 800AB7A8 000A75E8 7C 9B 23 78 */ mr r27, r4 /* 800AB7AC 000A75EC 7C B8 2B 78 */ mr r24, r5 /* 800AB7B0 000A75F0 41 82 02 DC */ beq lbl_800ABA8C /* 800AB7B4 000A75F4 A1 03 00 08 */ lhz r8, 0x8(r3) /* 800AB7B8 000A75F8 3B 83 00 20 */ addi r28, r3, 0x20 /* 800AB7BC 000A75FC 28 08 00 01 */ cmplwi r8, 0x1 /* 800AB7C0 000A7600 41 81 00 0C */ bgt lbl_800AB7CC /* 800AB7C4 000A7604 38 00 00 00 */ li r0, 0x0 /* 800AB7C8 000A7608 48 00 02 88 */ b lbl_800ABA50 .global lbl_800AB7CC lbl_800AB7CC: /* 800AB7CC 000A760C 8B 43 00 04 */ lbz r26, 0x4(r3) /* 800AB7D0 000A7610 57 47 06 B5 */ rlwinm. r7, r26, 0, 26, 26 /* 800AB7D4 000A7614 40 82 00 B8 */ bne lbl_800AB88C /* 800AB7D8 000A7618 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AB7DC 000A761C 28 00 00 01 */ cmplwi r0, 0x1 /* 800AB7E0 000A7620 41 81 00 AC */ bgt lbl_800AB88C /* 800AB7E4 000A7624 57 40 06 31 */ rlwinm. r0, r26, 0, 24, 24 /* 800AB7E8 000A7628 40 82 00 20 */ bne lbl_800AB808 /* 800AB7EC 000A762C 38 08 FF FF */ addi r0, r8, -0x1 /* 800AB7F0 000A7630 7C 05 00 40 */ cmplw r5, r0 /* 800AB7F4 000A7634 41 80 00 0C */ blt lbl_800AB800 /* 800AB7F8 000A7638 54 00 04 3E */ clrlwi r0, r0, 16 /* 800AB7FC 000A763C 48 00 02 54 */ b lbl_800ABA50 .global lbl_800AB800 lbl_800AB800: /* 800AB800 000A7640 54 A0 04 3E */ clrlwi r0, r5, 16 /* 800AB804 000A7644 48 00 02 4C */ b lbl_800ABA50 .global lbl_800AB808 lbl_800AB808: /* 800AB808 000A7648 28 06 00 01 */ cmplwi r6, 0x1 /* 800AB80C 000A764C 40 82 00 10 */ bne lbl_800AB81C /* 800AB810 000A7650 38 08 FF FF */ addi r0, r8, -0x1 /* 800AB814 000A7654 54 00 04 3E */ clrlwi r0, r0, 16 /* 800AB818 000A7658 48 00 02 38 */ b lbl_800ABA50 .global lbl_800AB81C lbl_800AB81C: /* 800AB81C 000A765C 90 A1 00 0C */ stw r5, 0xc(r1) /* 800AB820 000A7660 38 08 FF FF */ addi r0, r8, -0x1 /* 800AB824 000A7664 6C 03 80 00 */ xoris r3, r0, 0x8000 /* 800AB828 000A7668 C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800AB82C 000A766C C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AB830 000A7670 38 06 FF FF */ addi r0, r6, -0x1 /* 800AB834 000A7674 90 61 00 14 */ stw r3, 0x14(r1) /* 800AB838 000A7678 EC 80 28 28 */ fsubs f4, f0, f5 /* 800AB83C 000A767C C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800AB840 000A7680 90 01 00 0C */ stw r0, 0xc(r1) /* 800AB844 000A7684 C8 21 00 10 */ lfd f1, 0x10(r1) /* 800AB848 000A7688 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AB84C 000A768C EC 41 18 28 */ fsubs f2, f1, f3 /* 800AB850 000A7690 90 61 00 14 */ stw r3, 0x14(r1) /* 800AB854 000A7694 EC 20 28 28 */ fsubs f1, f0, f5 /* 800AB858 000A7698 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AB85C 000A769C EC 22 08 24 */ fdivs f1, f2, f1 /* 800AB860 000A76A0 EC 24 00 72 */ fmuls f1, f4, f1 /* 800AB864 000A76A4 EC 00 18 28 */ fsubs f0, f0, f3 /* 800AB868 000A76A8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800AB86C 000A76AC 40 81 00 10 */ ble lbl_800AB87C /* 800AB870 000A76B0 90 61 00 0C */ stw r3, 0xc(r1) /* 800AB874 000A76B4 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AB878 000A76B8 EC 20 18 28 */ fsubs f1, f0, f3 .global lbl_800AB87C lbl_800AB87C: /* 800AB87C 000A76BC FC 00 08 1E */ fctiwz f0, f1 /* 800AB880 000A76C0 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800AB884 000A76C4 80 01 00 1C */ lwz r0, 0x1c(r1) /* 800AB888 000A76C8 48 00 01 C8 */ b lbl_800ABA50 .global lbl_800AB88C lbl_800AB88C: /* 800AB88C 000A76CC 57 40 06 31 */ rlwinm. r0, r26, 0, 24, 24 /* 800AB890 000A76D0 40 82 00 A4 */ bne lbl_800AB934 /* 800AB894 000A76D4 38 C8 FF FF */ addi r6, r8, -0x1 /* 800AB898 000A76D8 57 40 06 73 */ rlwinm. r0, r26, 0, 25, 25 /* 800AB89C 000A76DC 7C 85 33 96 */ divwu r4, r5, r6 /* 800AB8A0 000A76E0 40 82 00 30 */ bne lbl_800AB8D0 /* 800AB8A4 000A76E4 2C 07 00 00 */ cmpwi r7, 0x0 /* 800AB8A8 000A76E8 40 82 00 18 */ bne lbl_800AB8C0 /* 800AB8AC 000A76EC 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AB8B0 000A76F0 7C 04 00 40 */ cmplw r4, r0 /* 800AB8B4 000A76F4 41 80 00 0C */ blt lbl_800AB8C0 /* 800AB8B8 000A76F8 54 C0 04 3E */ clrlwi r0, r6, 16 /* 800AB8BC 000A76FC 48 00 01 94 */ b lbl_800ABA50 .global lbl_800AB8C0 lbl_800AB8C0: /* 800AB8C0 000A7700 7C 04 31 D6 */ mullw r0, r4, r6 /* 800AB8C4 000A7704 7C 00 28 50 */ subf r0, r0, r5 /* 800AB8C8 000A7708 54 00 04 3E */ clrlwi r0, r0, 16 /* 800AB8CC 000A770C 48 00 01 84 */ b lbl_800ABA50 .global lbl_800AB8D0 lbl_800AB8D0: /* 800AB8D0 000A7710 2C 07 00 00 */ cmpwi r7, 0x0 /* 800AB8D4 000A7714 40 82 00 34 */ bne lbl_800AB908 /* 800AB8D8 000A7718 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AB8DC 000A771C 7C 04 00 40 */ cmplw r4, r0 /* 800AB8E0 000A7720 41 80 00 28 */ blt lbl_800AB908 /* 800AB8E4 000A7724 54 03 0F FE */ srwi r3, r0, 31 /* 800AB8E8 000A7728 54 00 07 FE */ clrlwi r0, r0, 31 /* 800AB8EC 000A772C 7C 00 1A 78 */ xor r0, r0, r3 /* 800AB8F0 000A7730 7C 03 00 51 */ subf. r0, r3, r0 /* 800AB8F4 000A7734 40 82 00 0C */ bne lbl_800AB900 /* 800AB8F8 000A7738 38 00 00 00 */ li r0, 0x0 /* 800AB8FC 000A773C 48 00 01 54 */ b lbl_800ABA50 .global lbl_800AB900 lbl_800AB900: /* 800AB900 000A7740 54 C0 04 3E */ clrlwi r0, r6, 16 /* 800AB904 000A7744 48 00 01 4C */ b lbl_800ABA50 .global lbl_800AB908 lbl_800AB908: /* 800AB908 000A7748 54 80 07 FF */ clrlwi. r0, r4, 31 /* 800AB90C 000A774C 40 82 00 14 */ bne lbl_800AB920 /* 800AB910 000A7750 7C 04 31 D6 */ mullw r0, r4, r6 /* 800AB914 000A7754 7C 00 28 50 */ subf r0, r0, r5 /* 800AB918 000A7758 54 00 04 3E */ clrlwi r0, r0, 16 /* 800AB91C 000A775C 48 00 01 34 */ b lbl_800ABA50 .global lbl_800AB920 lbl_800AB920: /* 800AB920 000A7760 38 04 00 01 */ addi r0, r4, 0x1 /* 800AB924 000A7764 7C 06 01 D6 */ mullw r0, r6, r0 /* 800AB928 000A7768 7C 05 00 50 */ subf r0, r5, r0 /* 800AB92C 000A776C 54 00 04 3E */ clrlwi r0, r0, 16 /* 800AB930 000A7770 48 00 01 20 */ b lbl_800ABA50 .global lbl_800AB934 lbl_800AB934: /* 800AB934 000A7774 38 86 FF FF */ addi r4, r6, -0x1 /* 800AB938 000A7778 7C 05 20 40 */ cmplw r5, r4 /* 800AB93C 000A777C 41 80 00 38 */ blt lbl_800AB974 /* 800AB940 000A7780 57 40 06 73 */ rlwinm. r0, r26, 0, 25, 25 /* 800AB944 000A7784 41 82 00 1C */ beq lbl_800AB960 /* 800AB948 000A7788 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AB94C 000A778C 54 03 0F FE */ srwi r3, r0, 31 /* 800AB950 000A7790 54 00 07 FE */ clrlwi r0, r0, 31 /* 800AB954 000A7794 7C 00 1A 78 */ xor r0, r0, r3 /* 800AB958 000A7798 7C 03 00 51 */ subf. r0, r3, r0 /* 800AB95C 000A779C 41 82 00 10 */ beq lbl_800AB96C .global lbl_800AB960 lbl_800AB960: /* 800AB960 000A77A0 38 08 FF FF */ addi r0, r8, -0x1 /* 800AB964 000A77A4 54 00 04 3E */ clrlwi r0, r0, 16 /* 800AB968 000A77A8 48 00 00 E8 */ b lbl_800ABA50 .global lbl_800AB96C lbl_800AB96C: /* 800AB96C 000A77AC 38 00 00 00 */ li r0, 0x0 /* 800AB970 000A77B0 48 00 00 E0 */ b lbl_800ABA50 .global lbl_800AB974 lbl_800AB974: /* 800AB974 000A77B4 88 03 00 05 */ lbz r0, 0x5(r3) /* 800AB978 000A77B8 3B 28 FF FF */ addi r25, r8, -0x1 /* 800AB97C 000A77BC 90 01 00 14 */ stw r0, 0x14(r1) /* 800AB980 000A77C0 6F 20 80 00 */ xoris r0, r25, 0x8000 /* 800AB984 000A77C4 C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800AB988 000A77C8 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AB98C 000A77CC 90 01 00 0C */ stw r0, 0xc(r1) /* 800AB990 000A77D0 C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800AB994 000A77D4 EC 80 28 28 */ fsubs f4, f0, f5 /* 800AB998 000A77D8 90 81 00 14 */ stw r4, 0x14(r1) /* 800AB99C 000A77DC C8 21 00 08 */ lfd f1, 0x8(r1) /* 800AB9A0 000A77E0 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AB9A4 000A77E4 EC 41 18 28 */ fsubs f2, f1, f3 /* 800AB9A8 000A77E8 90 A1 00 0C */ stw r5, 0xc(r1) /* 800AB9AC 000A77EC EC 00 28 28 */ fsubs f0, f0, f5 /* 800AB9B0 000A77F0 C8 21 00 08 */ lfd f1, 0x8(r1) /* 800AB9B4 000A77F4 90 01 00 14 */ stw r0, 0x14(r1) /* 800AB9B8 000A77F8 EC 42 00 24 */ fdivs f2, f2, f0 /* 800AB9BC 000A77FC C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AB9C0 000A7800 EF E4 00 B2 */ fmuls f31, f4, f2 /* 800AB9C4 000A7804 EC 21 28 28 */ fsubs f1, f1, f5 /* 800AB9C8 000A7808 EC 00 18 28 */ fsubs f0, f0, f3 /* 800AB9CC 000A780C EC 21 07 F2 */ fmuls f1, f1, f31 /* 800AB9D0 000A7810 EC 21 00 24 */ fdivs f1, f1, f0 /* 800AB9D4 000A7814 4B F5 B8 41 */ bl __cvt_fp2unsigned /* 800AB9D8 000A7818 7C 83 C9 D6 */ mullw r4, r3, r25 /* 800AB9DC 000A781C 93 01 00 0C */ stw r24, 0xc(r1) /* 800AB9E0 000A7820 C8 42 8A 40 */ lfd f2, "@11031"@sda21(r2) /* 800AB9E4 000A7824 57 40 06 73 */ rlwinm. r0, r26, 0, 25, 25 /* 800AB9E8 000A7828 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800AB9EC 000A782C 90 81 00 14 */ stw r4, 0x14(r1) /* 800AB9F0 000A7830 EC 20 10 28 */ fsubs f1, f0, f2 /* 800AB9F4 000A7834 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800AB9F8 000A7838 EC 00 10 28 */ fsubs f0, f0, f2 /* 800AB9FC 000A783C EC 21 07 F2 */ fmuls f1, f1, f31 /* 800ABA00 000A7840 EC 41 00 28 */ fsubs f2, f1, f0 /* 800ABA04 000A7844 40 82 00 14 */ bne lbl_800ABA18 /* 800ABA08 000A7848 FC 00 10 1E */ fctiwz f0, f2 /* 800ABA0C 000A784C D8 01 00 18 */ stfd f0, 0x18(r1) /* 800ABA10 000A7850 80 01 00 1C */ lwz r0, 0x1c(r1) /* 800ABA14 000A7854 48 00 00 3C */ b lbl_800ABA50 .global lbl_800ABA18 lbl_800ABA18: /* 800ABA18 000A7858 6F 20 80 00 */ xoris r0, r25, 0x8000 /* 800ABA1C 000A785C 90 01 00 0C */ stw r0, 0xc(r1) /* 800ABA20 000A7860 C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800ABA24 000A7864 54 60 07 FF */ clrlwi. r0, r3, 31 /* 800ABA28 000A7868 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800ABA2C 000A786C EC 00 08 28 */ fsubs f0, f0, f1 /* 800ABA30 000A7870 EC 00 10 28 */ fsubs f0, f0, f2 /* 800ABA34 000A7874 FC 00 00 1E */ fctiwz f0, f0 /* 800ABA38 000A7878 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800ABA3C 000A787C 80 01 00 1C */ lwz r0, 0x1c(r1) /* 800ABA40 000A7880 40 82 00 10 */ bne lbl_800ABA50 /* 800ABA44 000A7884 FC 00 10 1E */ fctiwz f0, f2 /* 800ABA48 000A7888 D8 01 00 20 */ stfd f0, 0x20(r1) /* 800ABA4C 000A788C 80 01 00 24 */ lwz r0, 0x24(r1) .global lbl_800ABA50 lbl_800ABA50: /* 800ABA50 000A7890 54 00 04 3E */ clrlwi r0, r0, 16 /* 800ABA54 000A7894 38 80 00 01 */ li r4, 0x1 /* 800ABA58 000A7898 7C 1D 01 D6 */ mullw r0, r29, r0 /* 800ABA5C 000A789C 7C 7C 02 14 */ add r3, r28, r0 /* 800ABA60 000A78A0 48 00 00 24 */ b lbl_800ABA84 /* 800ABA64 000A78A4 60 00 00 00 */ nop .global lbl_800ABA68 lbl_800ABA68: /* 800ABA68 000A78A8 7F E0 20 39 */ and. r0, r31, r4 /* 800ABA6C 000A78AC 41 82 00 10 */ beq lbl_800ABA7C /* 800ABA70 000A78B0 88 03 00 00 */ lbz r0, 0x0(r3) /* 800ABA74 000A78B4 38 63 00 01 */ addi r3, r3, 0x1 /* 800ABA78 000A78B8 98 1B 00 00 */ stb r0, 0x0(r27) .global lbl_800ABA7C lbl_800ABA7C: /* 800ABA7C 000A78BC 54 84 0C 3C */ rlwinm r4, r4, 1, 16, 30 /* 800ABA80 000A78C0 3B 7B 00 01 */ addi r27, r27, 0x1 .global lbl_800ABA84 lbl_800ABA84: /* 800ABA84 000A78C4 7C 04 F0 00 */ cmpw r4, r30 /* 800ABA88 000A78C8 40 81 FF E0 */ ble lbl_800ABA68 .global lbl_800ABA8C lbl_800ABA8C: /* 800ABA8C 000A78CC 39 61 00 50 */ addi r11, r1, 0x50 /* 800ABA90 000A78D0 E3 E1 00 58 */ psq_l f31, 0x58(r1), 0, qr0 /* 800ABA94 000A78D4 CB E1 00 50 */ lfd f31, 0x50(r1) /* 800ABA98 000A78D8 4B F5 B8 E5 */ bl lbl_8000737C /* 800ABA9C 000A78DC 80 01 00 64 */ lwz r0, 0x64(r1) /* 800ABAA0 000A78E0 7C 08 03 A6 */ mtlr r0 /* 800ABAA4 000A78E4 38 21 00 60 */ addi r1, r1, 0x60 /* 800ABAA8 000A78E8 4E 80 00 20 */ blr /* 800ABAAC 000A78EC 00 00 00 00 */ .4byte 0x00000000 .global AnimBakedExecuteF32__Q24nw4r2efFPUcPfUlUl AnimBakedExecuteF32__Q24nw4r2efFPUcPfUlUl: /* 800ABAB0 000A78F0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 800ABAB4 000A78F4 7C 08 02 A6 */ mflr r0 /* 800ABAB8 000A78F8 90 01 00 64 */ stw r0, 0x64(r1) /* 800ABABC 000A78FC 39 61 00 50 */ addi r11, r1, 0x50 /* 800ABAC0 000A7900 DB E1 00 50 */ stfd f31, 0x50(r1) /* 800ABAC4 000A7904 F3 E1 00 58 */ psq_st f31, 0x58(r1), 0, qr0 /* 800ABAC8 000A7908 4B F5 B8 69 */ bl lbl_80007330 /* 800ABACC 000A790C 3C E0 80 44 */ lis r7, gCountStandBit__Q24nw4r2ef@ha /* 800ABAD0 000A7910 8B E3 00 03 */ lbz r31, 0x3(r3) /* 800ABAD4 000A7914 38 E7 01 08 */ addi r7, r7, gCountStandBit__Q24nw4r2ef@l /* 800ABAD8 000A7918 3C 00 43 30 */ lis r0, 0x4330 /* 800ABADC 000A791C 7F A7 F8 AE */ lbzx r29, r7, r31 /* 800ABAE0 000A7920 3C E0 80 44 */ lis r7, gMSB__Q24nw4r2ef@ha /* 800ABAE4 000A7924 38 E7 02 08 */ addi r7, r7, gMSB__Q24nw4r2ef@l /* 800ABAE8 000A7928 90 01 00 08 */ stw r0, 0x8(r1) /* 800ABAEC 000A792C 2C 1D 00 00 */ cmpwi r29, 0x0 /* 800ABAF0 000A7930 7F C7 F8 AE */ lbzx r30, r7, r31 /* 800ABAF4 000A7934 90 01 00 10 */ stw r0, 0x10(r1) /* 800ABAF8 000A7938 7C 9B 23 78 */ mr r27, r4 /* 800ABAFC 000A793C 7C B8 2B 78 */ mr r24, r5 /* 800ABB00 000A7940 41 82 02 DC */ beq lbl_800ABDDC /* 800ABB04 000A7944 A1 03 00 08 */ lhz r8, 0x8(r3) /* 800ABB08 000A7948 3B 83 00 20 */ addi r28, r3, 0x20 /* 800ABB0C 000A794C 28 08 00 01 */ cmplwi r8, 0x1 /* 800ABB10 000A7950 41 81 00 0C */ bgt lbl_800ABB1C /* 800ABB14 000A7954 38 00 00 00 */ li r0, 0x0 /* 800ABB18 000A7958 48 00 02 88 */ b lbl_800ABDA0 .global lbl_800ABB1C lbl_800ABB1C: /* 800ABB1C 000A795C 8B 43 00 04 */ lbz r26, 0x4(r3) /* 800ABB20 000A7960 57 47 06 B5 */ rlwinm. r7, r26, 0, 26, 26 /* 800ABB24 000A7964 40 82 00 B8 */ bne lbl_800ABBDC /* 800ABB28 000A7968 88 03 00 05 */ lbz r0, 0x5(r3) /* 800ABB2C 000A796C 28 00 00 01 */ cmplwi r0, 0x1 /* 800ABB30 000A7970 41 81 00 AC */ bgt lbl_800ABBDC /* 800ABB34 000A7974 57 40 06 31 */ rlwinm. r0, r26, 0, 24, 24 /* 800ABB38 000A7978 40 82 00 20 */ bne lbl_800ABB58 /* 800ABB3C 000A797C 38 08 FF FF */ addi r0, r8, -0x1 /* 800ABB40 000A7980 7C 05 00 40 */ cmplw r5, r0 /* 800ABB44 000A7984 41 80 00 0C */ blt lbl_800ABB50 /* 800ABB48 000A7988 54 00 04 3E */ clrlwi r0, r0, 16 /* 800ABB4C 000A798C 48 00 02 54 */ b lbl_800ABDA0 .global lbl_800ABB50 lbl_800ABB50: /* 800ABB50 000A7990 54 A0 04 3E */ clrlwi r0, r5, 16 /* 800ABB54 000A7994 48 00 02 4C */ b lbl_800ABDA0 .global lbl_800ABB58 lbl_800ABB58: /* 800ABB58 000A7998 28 06 00 01 */ cmplwi r6, 0x1 /* 800ABB5C 000A799C 40 82 00 10 */ bne lbl_800ABB6C /* 800ABB60 000A79A0 38 08 FF FF */ addi r0, r8, -0x1 /* 800ABB64 000A79A4 54 00 04 3E */ clrlwi r0, r0, 16 /* 800ABB68 000A79A8 48 00 02 38 */ b lbl_800ABDA0 .global lbl_800ABB6C lbl_800ABB6C: /* 800ABB6C 000A79AC 90 A1 00 0C */ stw r5, 0xc(r1) /* 800ABB70 000A79B0 38 08 FF FF */ addi r0, r8, -0x1 /* 800ABB74 000A79B4 6C 03 80 00 */ xoris r3, r0, 0x8000 /* 800ABB78 000A79B8 C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800ABB7C 000A79BC C8 01 00 08 */ lfd f0, 0x8(r1) /* 800ABB80 000A79C0 38 06 FF FF */ addi r0, r6, -0x1 /* 800ABB84 000A79C4 90 61 00 14 */ stw r3, 0x14(r1) /* 800ABB88 000A79C8 EC 80 28 28 */ fsubs f4, f0, f5 /* 800ABB8C 000A79CC C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800ABB90 000A79D0 90 01 00 0C */ stw r0, 0xc(r1) /* 800ABB94 000A79D4 C8 21 00 10 */ lfd f1, 0x10(r1) /* 800ABB98 000A79D8 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800ABB9C 000A79DC EC 41 18 28 */ fsubs f2, f1, f3 /* 800ABBA0 000A79E0 90 61 00 14 */ stw r3, 0x14(r1) /* 800ABBA4 000A79E4 EC 20 28 28 */ fsubs f1, f0, f5 /* 800ABBA8 000A79E8 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800ABBAC 000A79EC EC 22 08 24 */ fdivs f1, f2, f1 /* 800ABBB0 000A79F0 EC 24 00 72 */ fmuls f1, f4, f1 /* 800ABBB4 000A79F4 EC 00 18 28 */ fsubs f0, f0, f3 /* 800ABBB8 000A79F8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800ABBBC 000A79FC 40 81 00 10 */ ble lbl_800ABBCC /* 800ABBC0 000A7A00 90 61 00 0C */ stw r3, 0xc(r1) /* 800ABBC4 000A7A04 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800ABBC8 000A7A08 EC 20 18 28 */ fsubs f1, f0, f3 .global lbl_800ABBCC lbl_800ABBCC: /* 800ABBCC 000A7A0C FC 00 08 1E */ fctiwz f0, f1 /* 800ABBD0 000A7A10 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800ABBD4 000A7A14 80 01 00 1C */ lwz r0, 0x1c(r1) /* 800ABBD8 000A7A18 48 00 01 C8 */ b lbl_800ABDA0 .global lbl_800ABBDC lbl_800ABBDC: /* 800ABBDC 000A7A1C 57 40 06 31 */ rlwinm. r0, r26, 0, 24, 24 /* 800ABBE0 000A7A20 40 82 00 A4 */ bne lbl_800ABC84 /* 800ABBE4 000A7A24 38 C8 FF FF */ addi r6, r8, -0x1 /* 800ABBE8 000A7A28 57 40 06 73 */ rlwinm. r0, r26, 0, 25, 25 /* 800ABBEC 000A7A2C 7C 85 33 96 */ divwu r4, r5, r6 /* 800ABBF0 000A7A30 40 82 00 30 */ bne lbl_800ABC20 /* 800ABBF4 000A7A34 2C 07 00 00 */ cmpwi r7, 0x0 /* 800ABBF8 000A7A38 40 82 00 18 */ bne lbl_800ABC10 /* 800ABBFC 000A7A3C 88 03 00 05 */ lbz r0, 0x5(r3) /* 800ABC00 000A7A40 7C 04 00 40 */ cmplw r4, r0 /* 800ABC04 000A7A44 41 80 00 0C */ blt lbl_800ABC10 /* 800ABC08 000A7A48 54 C0 04 3E */ clrlwi r0, r6, 16 /* 800ABC0C 000A7A4C 48 00 01 94 */ b lbl_800ABDA0 .global lbl_800ABC10 lbl_800ABC10: /* 800ABC10 000A7A50 7C 04 31 D6 */ mullw r0, r4, r6 /* 800ABC14 000A7A54 7C 00 28 50 */ subf r0, r0, r5 /* 800ABC18 000A7A58 54 00 04 3E */ clrlwi r0, r0, 16 /* 800ABC1C 000A7A5C 48 00 01 84 */ b lbl_800ABDA0 .global lbl_800ABC20 lbl_800ABC20: /* 800ABC20 000A7A60 2C 07 00 00 */ cmpwi r7, 0x0 /* 800ABC24 000A7A64 40 82 00 34 */ bne lbl_800ABC58 /* 800ABC28 000A7A68 88 03 00 05 */ lbz r0, 0x5(r3) /* 800ABC2C 000A7A6C 7C 04 00 40 */ cmplw r4, r0 /* 800ABC30 000A7A70 41 80 00 28 */ blt lbl_800ABC58 /* 800ABC34 000A7A74 54 03 0F FE */ srwi r3, r0, 31 /* 800ABC38 000A7A78 54 00 07 FE */ clrlwi r0, r0, 31 /* 800ABC3C 000A7A7C 7C 00 1A 78 */ xor r0, r0, r3 /* 800ABC40 000A7A80 7C 03 00 51 */ subf. r0, r3, r0 /* 800ABC44 000A7A84 40 82 00 0C */ bne lbl_800ABC50 /* 800ABC48 000A7A88 38 00 00 00 */ li r0, 0x0 /* 800ABC4C 000A7A8C 48 00 01 54 */ b lbl_800ABDA0 .global lbl_800ABC50 lbl_800ABC50: /* 800ABC50 000A7A90 54 C0 04 3E */ clrlwi r0, r6, 16 /* 800ABC54 000A7A94 48 00 01 4C */ b lbl_800ABDA0 .global lbl_800ABC58 lbl_800ABC58: /* 800ABC58 000A7A98 54 80 07 FF */ clrlwi. r0, r4, 31 /* 800ABC5C 000A7A9C 40 82 00 14 */ bne lbl_800ABC70 /* 800ABC60 000A7AA0 7C 04 31 D6 */ mullw r0, r4, r6 /* 800ABC64 000A7AA4 7C 00 28 50 */ subf r0, r0, r5 /* 800ABC68 000A7AA8 54 00 04 3E */ clrlwi r0, r0, 16 /* 800ABC6C 000A7AAC 48 00 01 34 */ b lbl_800ABDA0 .global lbl_800ABC70 lbl_800ABC70: /* 800ABC70 000A7AB0 38 04 00 01 */ addi r0, r4, 0x1 /* 800ABC74 000A7AB4 7C 06 01 D6 */ mullw r0, r6, r0 /* 800ABC78 000A7AB8 7C 05 00 50 */ subf r0, r5, r0 /* 800ABC7C 000A7ABC 54 00 04 3E */ clrlwi r0, r0, 16 /* 800ABC80 000A7AC0 48 00 01 20 */ b lbl_800ABDA0 .global lbl_800ABC84 lbl_800ABC84: /* 800ABC84 000A7AC4 38 86 FF FF */ addi r4, r6, -0x1 /* 800ABC88 000A7AC8 7C 05 20 40 */ cmplw r5, r4 /* 800ABC8C 000A7ACC 41 80 00 38 */ blt lbl_800ABCC4 /* 800ABC90 000A7AD0 57 40 06 73 */ rlwinm. r0, r26, 0, 25, 25 /* 800ABC94 000A7AD4 41 82 00 1C */ beq lbl_800ABCB0 /* 800ABC98 000A7AD8 88 03 00 05 */ lbz r0, 0x5(r3) /* 800ABC9C 000A7ADC 54 03 0F FE */ srwi r3, r0, 31 /* 800ABCA0 000A7AE0 54 00 07 FE */ clrlwi r0, r0, 31 /* 800ABCA4 000A7AE4 7C 00 1A 78 */ xor r0, r0, r3 /* 800ABCA8 000A7AE8 7C 03 00 51 */ subf. r0, r3, r0 /* 800ABCAC 000A7AEC 41 82 00 10 */ beq lbl_800ABCBC .global lbl_800ABCB0 lbl_800ABCB0: /* 800ABCB0 000A7AF0 38 08 FF FF */ addi r0, r8, -0x1 /* 800ABCB4 000A7AF4 54 00 04 3E */ clrlwi r0, r0, 16 /* 800ABCB8 000A7AF8 48 00 00 E8 */ b lbl_800ABDA0 .global lbl_800ABCBC lbl_800ABCBC: /* 800ABCBC 000A7AFC 38 00 00 00 */ li r0, 0x0 /* 800ABCC0 000A7B00 48 00 00 E0 */ b lbl_800ABDA0 .global lbl_800ABCC4 lbl_800ABCC4: /* 800ABCC4 000A7B04 88 03 00 05 */ lbz r0, 0x5(r3) /* 800ABCC8 000A7B08 3B 28 FF FF */ addi r25, r8, -0x1 /* 800ABCCC 000A7B0C 90 01 00 14 */ stw r0, 0x14(r1) /* 800ABCD0 000A7B10 6F 20 80 00 */ xoris r0, r25, 0x8000 /* 800ABCD4 000A7B14 C8 A2 8A 40 */ lfd f5, "@11031"@sda21(r2) /* 800ABCD8 000A7B18 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800ABCDC 000A7B1C 90 01 00 0C */ stw r0, 0xc(r1) /* 800ABCE0 000A7B20 C8 62 8A 48 */ lfd f3, "@11032_8055E9C8"@sda21(r2) /* 800ABCE4 000A7B24 EC 80 28 28 */ fsubs f4, f0, f5 /* 800ABCE8 000A7B28 90 81 00 14 */ stw r4, 0x14(r1) /* 800ABCEC 000A7B2C C8 21 00 08 */ lfd f1, 0x8(r1) /* 800ABCF0 000A7B30 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800ABCF4 000A7B34 EC 41 18 28 */ fsubs f2, f1, f3 /* 800ABCF8 000A7B38 90 A1 00 0C */ stw r5, 0xc(r1) /* 800ABCFC 000A7B3C EC 00 28 28 */ fsubs f0, f0, f5 /* 800ABD00 000A7B40 C8 21 00 08 */ lfd f1, 0x8(r1) /* 800ABD04 000A7B44 90 01 00 14 */ stw r0, 0x14(r1) /* 800ABD08 000A7B48 EC 42 00 24 */ fdivs f2, f2, f0 /* 800ABD0C 000A7B4C C8 01 00 10 */ lfd f0, 0x10(r1) /* 800ABD10 000A7B50 EF E4 00 B2 */ fmuls f31, f4, f2 /* 800ABD14 000A7B54 EC 21 28 28 */ fsubs f1, f1, f5 /* 800ABD18 000A7B58 EC 00 18 28 */ fsubs f0, f0, f3 /* 800ABD1C 000A7B5C EC 21 07 F2 */ fmuls f1, f1, f31 /* 800ABD20 000A7B60 EC 21 00 24 */ fdivs f1, f1, f0 /* 800ABD24 000A7B64 4B F5 B4 F1 */ bl __cvt_fp2unsigned /* 800ABD28 000A7B68 7C 83 C9 D6 */ mullw r4, r3, r25 /* 800ABD2C 000A7B6C 93 01 00 0C */ stw r24, 0xc(r1) /* 800ABD30 000A7B70 C8 42 8A 40 */ lfd f2, "@11031"@sda21(r2) /* 800ABD34 000A7B74 57 40 06 73 */ rlwinm. r0, r26, 0, 25, 25 /* 800ABD38 000A7B78 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800ABD3C 000A7B7C 90 81 00 14 */ stw r4, 0x14(r1) /* 800ABD40 000A7B80 EC 20 10 28 */ fsubs f1, f0, f2 /* 800ABD44 000A7B84 C8 01 00 10 */ lfd f0, 0x10(r1) /* 800ABD48 000A7B88 EC 00 10 28 */ fsubs f0, f0, f2 /* 800ABD4C 000A7B8C EC 21 07 F2 */ fmuls f1, f1, f31 /* 800ABD50 000A7B90 EC 41 00 28 */ fsubs f2, f1, f0 /* 800ABD54 000A7B94 40 82 00 14 */ bne lbl_800ABD68 /* 800ABD58 000A7B98 FC 00 10 1E */ fctiwz f0, f2 /* 800ABD5C 000A7B9C D8 01 00 18 */ stfd f0, 0x18(r1) /* 800ABD60 000A7BA0 80 01 00 1C */ lwz r0, 0x1c(r1) /* 800ABD64 000A7BA4 48 00 00 3C */ b lbl_800ABDA0 .global lbl_800ABD68 lbl_800ABD68: /* 800ABD68 000A7BA8 6F 20 80 00 */ xoris r0, r25, 0x8000 /* 800ABD6C 000A7BAC 90 01 00 0C */ stw r0, 0xc(r1) /* 800ABD70 000A7BB0 C8 22 8A 48 */ lfd f1, "@11032_8055E9C8"@sda21(r2) /* 800ABD74 000A7BB4 54 60 07 FF */ clrlwi. r0, r3, 31 /* 800ABD78 000A7BB8 C8 01 00 08 */ lfd f0, 0x8(r1) /* 800ABD7C 000A7BBC EC 00 08 28 */ fsubs f0, f0, f1 /* 800ABD80 000A7BC0 EC 00 10 28 */ fsubs f0, f0, f2 /* 800ABD84 000A7BC4 FC 00 00 1E */ fctiwz f0, f0 /* 800ABD88 000A7BC8 D8 01 00 18 */ stfd f0, 0x18(r1) /* 800ABD8C 000A7BCC 80 01 00 1C */ lwz r0, 0x1c(r1) /* 800ABD90 000A7BD0 40 82 00 10 */ bne lbl_800ABDA0 /* 800ABD94 000A7BD4 FC 00 10 1E */ fctiwz f0, f2 /* 800ABD98 000A7BD8 D8 01 00 20 */ stfd f0, 0x20(r1) /* 800ABD9C 000A7BDC 80 01 00 24 */ lwz r0, 0x24(r1) .global lbl_800ABDA0 lbl_800ABDA0: /* 800ABDA0 000A7BE0 54 00 04 3E */ clrlwi r0, r0, 16 /* 800ABDA4 000A7BE4 38 80 00 01 */ li r4, 0x1 /* 800ABDA8 000A7BE8 7C 1D 01 D6 */ mullw r0, r29, r0 /* 800ABDAC 000A7BEC 54 00 10 3A */ slwi r0, r0, 2 /* 800ABDB0 000A7BF0 7C 7C 02 14 */ add r3, r28, r0 /* 800ABDB4 000A7BF4 48 00 00 20 */ b lbl_800ABDD4 .global lbl_800ABDB8 lbl_800ABDB8: /* 800ABDB8 000A7BF8 7F E0 20 39 */ and. r0, r31, r4 /* 800ABDBC 000A7BFC 41 82 00 10 */ beq lbl_800ABDCC /* 800ABDC0 000A7C00 C0 03 00 00 */ lfs f0, 0x0(r3) /* 800ABDC4 000A7C04 38 63 00 04 */ addi r3, r3, 0x4 /* 800ABDC8 000A7C08 D0 1B 00 00 */ stfs f0, 0x0(r27) .global lbl_800ABDCC lbl_800ABDCC: /* 800ABDCC 000A7C0C 54 84 0C 3C */ rlwinm r4, r4, 1, 16, 30 /* 800ABDD0 000A7C10 3B 7B 00 04 */ addi r27, r27, 0x4 .global lbl_800ABDD4 lbl_800ABDD4: /* 800ABDD4 000A7C14 7C 04 F0 00 */ cmpw r4, r30 /* 800ABDD8 000A7C18 40 81 FF E0 */ ble lbl_800ABDB8 .global lbl_800ABDDC lbl_800ABDDC: /* 800ABDDC 000A7C1C 39 61 00 50 */ addi r11, r1, 0x50 /* 800ABDE0 000A7C20 E3 E1 00 58 */ psq_l f31, 0x58(r1), 0, qr0 /* 800ABDE4 000A7C24 CB E1 00 50 */ lfd f31, 0x50(r1) /* 800ABDE8 000A7C28 4B F5 B5 95 */ bl lbl_8000737C /* 800ABDEC 000A7C2C 80 01 00 64 */ lwz r0, 0x64(r1) /* 800ABDF0 000A7C30 7C 08 03 A6 */ mtlr r0 /* 800ABDF4 000A7C34 38 21 00 60 */ addi r1, r1, 0x60 /* 800ABDF8 000A7C38 4E 80 00 20 */ blr /* 800ABDFC 000A7C3C 00 00 00 00 */ .4byte 0x00000000