.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global func_80220DC4 func_80220DC4: /* 80220DC4 0021CA24 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80220DC8 0021CA28 3C E0 43 30 */ lis r7, 0x4330 /* 80220DCC 0021CA2C A0 04 00 00 */ lhz r0, 0(r4) /* 80220DD0 0021CA30 90 E1 00 08 */ stw r7, 8(r1) /* 80220DD4 0021CA34 2C 00 00 01 */ cmpwi r0, 1 /* 80220DD8 0021CA38 A1 44 00 02 */ lhz r10, 2(r4) /* 80220DDC 0021CA3C 90 E1 00 10 */ stw r7, 0x10(r1) /* 80220DE0 0021CA40 41 82 00 18 */ beq lbl_80220DF8 /* 80220DE4 0021CA44 40 80 00 08 */ bge lbl_80220DEC /* 80220DE8 0021CA48 48 00 01 C4 */ b lbl_80220FAC lbl_80220DEC: /* 80220DEC 0021CA4C 2C 00 00 03 */ cmpwi r0, 3 /* 80220DF0 0021CA50 40 80 01 BC */ bge lbl_80220FAC /* 80220DF4 0021CA54 48 00 00 B8 */ b lbl_80220EAC lbl_80220DF8: /* 80220DF8 0021CA58 81 03 00 00 */ lwz r8, 0(r3) /* 80220DFC 0021CA5C 38 00 00 01 */ li r0, 1 /* 80220E00 0021CA60 7C 06 30 30 */ slw r6, r0, r6 /* 80220E04 0021CA64 A0 05 00 02 */ lhz r0, 2(r5) /* 80220E08 0021CA68 7C E8 50 AE */ lbzx r7, r8, r10 /* 80220E0C 0021CA6C 6C C6 80 00 */ xoris r6, r6, 0x8000 /* 80220E10 0021CA70 90 C1 00 14 */ stw r6, 0x14(r1) /* 80220E14 0021CA74 7C E7 07 74 */ extsb r7, r7 /* 80220E18 0021CA78 7C 08 00 AE */ lbzx r0, r8, r0 /* 80220E1C 0021CA7C 6C E7 80 00 */ xoris r7, r7, 0x8000 /* 80220E20 0021CA80 C8 01 00 10 */ lfd f0, 0x10(r1) /* 80220E24 0021CA84 90 E1 00 0C */ stw r7, 0xc(r1) /* 80220E28 0021CA88 7C 00 07 74 */ extsb r0, r0 /* 80220E2C 0021CA8C C0 84 00 08 */ lfs f4, 8(r4) /* 80220E30 0021CA90 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80220E34 0021CA94 C8 61 00 08 */ lfd f3, 8(r1) /* 80220E38 0021CA98 C0 45 00 08 */ lfs f2, 8(r5) /* 80220E3C 0021CA9C ED 01 20 28 */ fsubs f8, f1, f4 /* 80220E40 0021CAA0 90 C1 00 14 */ stw r6, 0x14(r1) /* 80220E44 0021CAA4 EC E2 20 28 */ fsubs f7, f2, f4 /* 80220E48 0021CAA8 C8 C2 9C 00 */ lfd f6, lbl_80642200-_SDA2_BASE_(r2) /* 80220E4C 0021CAAC 90 01 00 0C */ stw r0, 0xc(r1) /* 80220E50 0021CAB0 C8 21 00 10 */ lfd f1, 0x10(r1) /* 80220E54 0021CAB4 EC A3 30 28 */ fsubs f5, f3, f6 /* 80220E58 0021CAB8 C8 41 00 08 */ lfd f2, 8(r1) /* 80220E5C 0021CABC EC 80 30 28 */ fsubs f4, f0, f6 /* 80220E60 0021CAC0 C0 62 9B F8 */ lfs f3, lbl_806421F8-_SDA2_BASE_(r2) /* 80220E64 0021CAC4 EC E8 38 24 */ fdivs f7, f8, f7 /* 80220E68 0021CAC8 90 C1 00 0C */ stw r6, 0xc(r1) /* 80220E6C 0021CACC C8 01 00 08 */ lfd f0, 8(r1) /* 80220E70 0021CAD0 EC 42 30 28 */ fsubs f2, f2, f6 /* 80220E74 0021CAD4 EC 21 30 28 */ fsubs f1, f1, f6 /* 80220E78 0021CAD8 EC 85 20 24 */ fdivs f4, f5, f4 /* 80220E7C 0021CADC EC 22 08 24 */ fdivs f1, f2, f1 /* 80220E80 0021CAE0 EC 43 38 28 */ fsubs f2, f3, f7 /* 80220E84 0021CAE4 EC 27 00 72 */ fmuls f1, f7, f1 /* 80220E88 0021CAE8 EC 00 30 28 */ fsubs f0, f0, f6 /* 80220E8C 0021CAEC EC 42 01 32 */ fmuls f2, f2, f4 /* 80220E90 0021CAF0 EC 42 08 2A */ fadds f2, f2, f1 /* 80220E94 0021CAF4 EC 02 00 32 */ fmuls f0, f2, f0 /* 80220E98 0021CAF8 FC 00 00 1E */ fctiwz f0, f0 /* 80220E9C 0021CAFC D8 01 00 18 */ stfd f0, 0x18(r1) /* 80220EA0 0021CB00 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80220EA4 0021CB04 98 03 00 1C */ stb r0, 0x1c(r3) /* 80220EA8 0021CB08 48 00 01 10 */ b lbl_80220FB8 lbl_80220EAC: /* 80220EAC 0021CB0C C0 44 00 08 */ lfs f2, 8(r4) /* 80220EB0 0021CB10 38 00 00 01 */ li r0, 1 /* 80220EB4 0021CB14 C0 05 00 08 */ lfs f0, 8(r5) /* 80220EB8 0021CB18 7C 06 30 30 */ slw r6, r0, r6 /* 80220EBC 0021CB1C EC 21 10 28 */ fsubs f1, f1, f2 /* 80220EC0 0021CB20 81 03 00 00 */ lwz r8, 0(r3) /* 80220EC4 0021CB24 EC 00 10 28 */ fsubs f0, f0, f2 /* 80220EC8 0021CB28 6C C6 80 00 */ xoris r6, r6, 0x8000 /* 80220ECC 0021CB2C 7C 08 50 AE */ lbzx r0, r8, r10 /* 80220ED0 0021CB30 A1 25 00 02 */ lhz r9, 2(r5) /* 80220ED4 0021CB34 ED 21 00 24 */ fdivs f9, f1, f0 /* 80220ED8 0021CB38 7C 00 07 74 */ extsb r0, r0 /* 80220EDC 0021CB3C 6C 07 80 00 */ xoris r7, r0, 0x8000 /* 80220EE0 0021CB40 90 C1 00 0C */ stw r6, 0xc(r1) /* 80220EE4 0021CB44 7C 08 48 AE */ lbzx r0, r8, r9 /* 80220EE8 0021CB48 90 E1 00 14 */ stw r7, 0x14(r1) /* 80220EEC 0021CB4C ED 09 02 72 */ fmuls f8, f9, f9 /* 80220EF0 0021CB50 7C 00 07 74 */ extsb r0, r0 /* 80220EF4 0021CB54 C8 01 00 08 */ lfd f0, 8(r1) /* 80220EF8 0021CB58 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80220EFC 0021CB5C C8 41 00 10 */ lfd f2, 0x10(r1) /* 80220F00 0021CB60 C8 A2 9C 00 */ lfd f5, lbl_80642200-_SDA2_BASE_(r2) /* 80220F04 0021CB64 90 01 00 14 */ stw r0, 0x14(r1) /* 80220F08 0021CB68 EC E8 02 72 */ fmuls f7, f8, f9 /* 80220F0C 0021CB6C EC 60 28 28 */ fsubs f3, f0, f5 /* 80220F10 0021CB70 A0 04 00 06 */ lhz r0, 6(r4) /* 80220F14 0021CB74 C8 21 00 10 */ lfd f1, 0x10(r1) /* 80220F18 0021CB78 EC 82 28 28 */ fsubs f4, f2, f5 /* 80220F1C 0021CB7C 90 C1 00 0C */ stw r6, 0xc(r1) /* 80220F20 0021CB80 EC C8 40 2A */ fadds f6, f8, f8 /* 80220F24 0021CB84 C8 01 00 08 */ lfd f0, 8(r1) /* 80220F28 0021CB88 ED 47 40 28 */ fsubs f10, f7, f8 /* 80220F2C 0021CB8C EC 21 28 28 */ fsubs f1, f1, f5 /* 80220F30 0021CB90 54 04 10 3A */ slwi r4, r0, 2 /* 80220F34 0021CB94 EC 46 38 28 */ fsubs f2, f6, f7 /* 80220F38 0021CB98 EC CA 40 28 */ fsubs f6, f10, f8 /* 80220F3C 0021CB9C A0 05 00 04 */ lhz r0, 4(r5) /* 80220F40 0021CBA0 EC 00 28 28 */ fsubs f0, f0, f5 /* 80220F44 0021CBA4 EC 84 18 24 */ fdivs f4, f4, f3 /* 80220F48 0021CBA8 C0 E2 9B F8 */ lfs f7, lbl_806421F8-_SDA2_BASE_(r2) /* 80220F4C 0021CBAC 80 E3 00 04 */ lwz r7, 4(r3) /* 80220F50 0021CBB0 54 00 10 3A */ slwi r0, r0, 2 /* 80220F54 0021CBB4 90 C1 00 14 */ stw r6, 0x14(r1) /* 80220F58 0021CBB8 ED 01 00 24 */ fdivs f8, f1, f0 /* 80220F5C 0021CBBC 7C 27 04 2E */ lfsx f1, r7, r0 /* 80220F60 0021CBC0 C8 01 00 10 */ lfd f0, 0x10(r1) /* 80220F64 0021CBC4 ED 62 50 28 */ fsubs f11, f2, f10 /* 80220F68 0021CBC8 7C 47 24 2E */ lfsx f2, r7, r4 /* 80220F6C 0021CBCC ED 29 30 2A */ fadds f9, f9, f6 /* 80220F70 0021CBD0 EC 2A 00 72 */ fmuls f1, f10, f1 /* 80220F74 0021CBD4 EC C7 58 28 */ fsubs f6, f7, f11 /* 80220F78 0021CBD8 EC 6B 02 32 */ fmuls f3, f11, f8 /* 80220F7C 0021CBDC EC 49 00 B2 */ fmuls f2, f9, f2 /* 80220F80 0021CBE0 EC 86 01 32 */ fmuls f4, f6, f4 /* 80220F84 0021CBE4 EC 00 28 28 */ fsubs f0, f0, f5 /* 80220F88 0021CBE8 EC 84 18 2A */ fadds f4, f4, f3 /* 80220F8C 0021CBEC EC 84 10 2A */ fadds f4, f4, f2 /* 80220F90 0021CBF0 EC 84 08 2A */ fadds f4, f4, f1 /* 80220F94 0021CBF4 EC 04 00 32 */ fmuls f0, f4, f0 /* 80220F98 0021CBF8 FC 00 00 1E */ fctiwz f0, f0 /* 80220F9C 0021CBFC D8 01 00 18 */ stfd f0, 0x18(r1) /* 80220FA0 0021CC00 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80220FA4 0021CC04 98 03 00 1C */ stb r0, 0x1c(r3) /* 80220FA8 0021CC08 48 00 00 10 */ b lbl_80220FB8 lbl_80220FAC: /* 80220FAC 0021CC0C 80 83 00 00 */ lwz r4, 0(r3) /* 80220FB0 0021CC10 7C 04 50 AE */ lbzx r0, r4, r10 /* 80220FB4 0021CC14 98 03 00 1C */ stb r0, 0x1c(r3) lbl_80220FB8: /* 80220FB8 0021CC18 38 21 00 20 */ addi r1, r1, 0x20 /* 80220FBC 0021CC1C 4E 80 00 20 */ blr .global func_80220FC0 func_80220FC0: /* 80220FC0 0021CC20 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80220FC4 0021CC24 3C E0 43 30 */ lis r7, 0x4330 /* 80220FC8 0021CC28 A0 04 00 00 */ lhz r0, 0(r4) /* 80220FCC 0021CC2C 90 E1 00 08 */ stw r7, 8(r1) /* 80220FD0 0021CC30 2C 00 00 01 */ cmpwi r0, 1 /* 80220FD4 0021CC34 A1 24 00 02 */ lhz r9, 2(r4) /* 80220FD8 0021CC38 90 E1 00 10 */ stw r7, 0x10(r1) /* 80220FDC 0021CC3C 41 82 00 18 */ beq lbl_80220FF4 /* 80220FE0 0021CC40 40 80 00 08 */ bge lbl_80220FE8 /* 80220FE4 0021CC44 48 00 01 AC */ b lbl_80221190 lbl_80220FE8: /* 80220FE8 0021CC48 2C 00 00 03 */ cmpwi r0, 3 /* 80220FEC 0021CC4C 40 80 01 A4 */ bge lbl_80221190 /* 80220FF0 0021CC50 48 00 00 AC */ b lbl_8022109C lbl_80220FF4: /* 80220FF4 0021CC54 81 03 00 00 */ lwz r8, 0(r3) /* 80220FF8 0021CC58 38 00 00 01 */ li r0, 1 /* 80220FFC 0021CC5C 7C 06 30 30 */ slw r6, r0, r6 /* 80221000 0021CC60 A0 05 00 02 */ lhz r0, 2(r5) /* 80221004 0021CC64 7C E8 48 AE */ lbzx r7, r8, r9 /* 80221008 0021CC68 6C C6 80 00 */ xoris r6, r6, 0x8000 /* 8022100C 0021CC6C 90 C1 00 14 */ stw r6, 0x14(r1) /* 80221010 0021CC70 C0 64 00 08 */ lfs f3, 8(r4) /* 80221014 0021CC74 90 E1 00 0C */ stw r7, 0xc(r1) /* 80221018 0021CC78 C8 81 00 10 */ lfd f4, 0x10(r1) /* 8022101C 0021CC7C EC 41 18 28 */ fsubs f2, f1, f3 /* 80221020 0021CC80 C0 05 00 08 */ lfs f0, 8(r5) /* 80221024 0021CC84 7C 08 00 AE */ lbzx r0, r8, r0 /* 80221028 0021CC88 EC 20 18 28 */ fsubs f1, f0, f3 /* 8022102C 0021CC8C C8 01 00 08 */ lfd f0, 8(r1) /* 80221030 0021CC90 C8 E2 9C 08 */ lfd f7, lbl_80642208-_SDA2_BASE_(r2) /* 80221034 0021CC94 C8 A2 9C 00 */ lfd f5, lbl_80642200-_SDA2_BASE_(r2) /* 80221038 0021CC98 90 C1 00 14 */ stw r6, 0x14(r1) /* 8022103C 0021CC9C ED 02 08 24 */ fdivs f8, f2, f1 /* 80221040 0021CCA0 C0 62 9B F8 */ lfs f3, lbl_806421F8-_SDA2_BASE_(r2) /* 80221044 0021CCA4 90 01 00 0C */ stw r0, 0xc(r1) /* 80221048 0021CCA8 C8 21 00 10 */ lfd f1, 0x10(r1) /* 8022104C 0021CCAC C8 41 00 08 */ lfd f2, 8(r1) /* 80221050 0021CCB0 90 C1 00 0C */ stw r6, 0xc(r1) /* 80221054 0021CCB4 EC C0 38 28 */ fsubs f6, f0, f7 /* 80221058 0021CCB8 C8 01 00 08 */ lfd f0, 8(r1) /* 8022105C 0021CCBC EC 84 28 28 */ fsubs f4, f4, f5 /* 80221060 0021CCC0 EC 42 38 28 */ fsubs f2, f2, f7 /* 80221064 0021CCC4 EC 21 28 28 */ fsubs f1, f1, f5 /* 80221068 0021CCC8 EC 86 20 24 */ fdivs f4, f6, f4 /* 8022106C 0021CCCC EC 22 08 24 */ fdivs f1, f2, f1 /* 80221070 0021CCD0 EC 43 40 28 */ fsubs f2, f3, f8 /* 80221074 0021CCD4 EC 28 00 72 */ fmuls f1, f8, f1 /* 80221078 0021CCD8 EC 00 28 28 */ fsubs f0, f0, f5 /* 8022107C 0021CCDC EC 42 01 32 */ fmuls f2, f2, f4 /* 80221080 0021CCE0 EC 42 08 2A */ fadds f2, f2, f1 /* 80221084 0021CCE4 EC 02 00 32 */ fmuls f0, f2, f0 /* 80221088 0021CCE8 FC 00 00 1E */ fctiwz f0, f0 /* 8022108C 0021CCEC D8 01 00 18 */ stfd f0, 0x18(r1) /* 80221090 0021CCF0 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80221094 0021CCF4 98 03 00 1C */ stb r0, 0x1c(r3) /* 80221098 0021CCF8 48 00 01 04 */ b lbl_8022119C lbl_8022109C: /* 8022109C 0021CCFC C0 44 00 08 */ lfs f2, 8(r4) /* 802210A0 0021CD00 38 00 00 01 */ li r0, 1 /* 802210A4 0021CD04 C0 05 00 08 */ lfs f0, 8(r5) /* 802210A8 0021CD08 7C 00 30 30 */ slw r0, r0, r6 /* 802210AC 0021CD0C EC 21 10 28 */ fsubs f1, f1, f2 /* 802210B0 0021CD10 6C 06 80 00 */ xoris r6, r0, 0x8000 /* 802210B4 0021CD14 EC 00 10 28 */ fsubs f0, f0, f2 /* 802210B8 0021CD18 80 E3 00 00 */ lwz r7, 0(r3) /* 802210BC 0021CD1C A0 84 00 06 */ lhz r4, 6(r4) /* 802210C0 0021CD20 7C 07 48 AE */ lbzx r0, r7, r9 /* 802210C4 0021CD24 ED 41 00 24 */ fdivs f10, f1, f0 /* 802210C8 0021CD28 90 C1 00 0C */ stw r6, 0xc(r1) /* 802210CC 0021CD2C A1 05 00 02 */ lhz r8, 2(r5) /* 802210D0 0021CD30 54 84 10 3A */ slwi r4, r4, 2 /* 802210D4 0021CD34 90 01 00 14 */ stw r0, 0x14(r1) /* 802210D8 0021CD38 C8 21 00 08 */ lfd f1, 8(r1) /* 802210DC 0021CD3C ED 2A 02 B2 */ fmuls f9, f10, f10 /* 802210E0 0021CD40 90 C1 00 0C */ stw r6, 0xc(r1) /* 802210E4 0021CD44 C8 A2 9C 00 */ lfd f5, lbl_80642200-_SDA2_BASE_(r2) /* 802210E8 0021CD48 C8 01 00 08 */ lfd f0, 8(r1) /* 802210EC 0021CD4C ED 09 02 B2 */ fmuls f8, f9, f10 /* 802210F0 0021CD50 C8 41 00 10 */ lfd f2, 0x10(r1) /* 802210F4 0021CD54 7C 07 40 AE */ lbzx r0, r7, r8 /* 802210F8 0021CD58 EC 60 28 28 */ fsubs f3, f0, f5 /* 802210FC 0021CD5C C8 82 9C 08 */ lfd f4, lbl_80642208-_SDA2_BASE_(r2) /* 80221100 0021CD60 EC 21 28 28 */ fsubs f1, f1, f5 /* 80221104 0021CD64 90 01 00 14 */ stw r0, 0x14(r1) /* 80221108 0021CD68 EC C9 48 2A */ fadds f6, f9, f9 /* 8022110C 0021CD6C ED 68 48 28 */ fsubs f11, f8, f9 /* 80221110 0021CD70 A0 05 00 04 */ lhz r0, 4(r5) /* 80221114 0021CD74 C8 01 00 10 */ lfd f0, 0x10(r1) /* 80221118 0021CD78 EC 42 20 28 */ fsubs f2, f2, f4 /* 8022111C 0021CD7C ED 06 40 28 */ fsubs f8, f6, f8 /* 80221120 0021CD80 EC CB 48 28 */ fsubs f6, f11, f9 /* 80221124 0021CD84 EC 80 20 28 */ fsubs f4, f0, f4 /* 80221128 0021CD88 90 C1 00 14 */ stw r6, 0x14(r1) /* 8022112C 0021CD8C ED 22 08 24 */ fdivs f9, f2, f1 /* 80221130 0021CD90 80 A3 00 04 */ lwz r5, 4(r3) /* 80221134 0021CD94 54 00 10 3A */ slwi r0, r0, 2 /* 80221138 0021CD98 7C 25 04 2E */ lfsx f1, r5, r0 /* 8022113C 0021CD9C C8 01 00 10 */ lfd f0, 0x10(r1) /* 80221140 0021CDA0 C0 E2 9B F8 */ lfs f7, lbl_806421F8-_SDA2_BASE_(r2) /* 80221144 0021CDA4 EC 64 18 24 */ fdivs f3, f4, f3 /* 80221148 0021CDA8 7C 45 24 2E */ lfsx f2, r5, r4 /* 8022114C 0021CDAC ED 08 58 28 */ fsubs f8, f8, f11 /* 80221150 0021CDB0 EC CA 30 2A */ fadds f6, f10, f6 /* 80221154 0021CDB4 EC 2B 00 72 */ fmuls f1, f11, f1 /* 80221158 0021CDB8 EC 87 40 28 */ fsubs f4, f7, f8 /* 8022115C 0021CDBC EC 68 00 F2 */ fmuls f3, f8, f3 /* 80221160 0021CDC0 EC 46 00 B2 */ fmuls f2, f6, f2 /* 80221164 0021CDC4 EC 84 02 72 */ fmuls f4, f4, f9 /* 80221168 0021CDC8 EC 00 28 28 */ fsubs f0, f0, f5 /* 8022116C 0021CDCC EC 84 18 2A */ fadds f4, f4, f3 /* 80221170 0021CDD0 EC 84 10 2A */ fadds f4, f4, f2 /* 80221174 0021CDD4 EC 84 08 2A */ fadds f4, f4, f1 /* 80221178 0021CDD8 EC 04 00 32 */ fmuls f0, f4, f0 /* 8022117C 0021CDDC FC 00 00 1E */ fctiwz f0, f0 /* 80221180 0021CDE0 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80221184 0021CDE4 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80221188 0021CDE8 98 03 00 1C */ stb r0, 0x1c(r3) /* 8022118C 0021CDEC 48 00 00 10 */ b lbl_8022119C lbl_80221190: /* 80221190 0021CDF0 80 83 00 00 */ lwz r4, 0(r3) /* 80221194 0021CDF4 7C 04 48 AE */ lbzx r0, r4, r9 /* 80221198 0021CDF8 98 03 00 1C */ stb r0, 0x1c(r3) lbl_8022119C: /* 8022119C 0021CDFC 38 21 00 20 */ addi r1, r1, 0x20 /* 802211A0 0021CE00 4E 80 00 20 */ blr .global func_802211A4 func_802211A4: /* 802211A4 0021CE04 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802211A8 0021CE08 3C E0 43 30 */ lis r7, 0x4330 /* 802211AC 0021CE0C A0 04 00 00 */ lhz r0, 0(r4) /* 802211B0 0021CE10 90 E1 00 08 */ stw r7, 8(r1) /* 802211B4 0021CE14 2C 00 00 01 */ cmpwi r0, 1 /* 802211B8 0021CE18 A1 44 00 02 */ lhz r10, 2(r4) /* 802211BC 0021CE1C 90 E1 00 10 */ stw r7, 0x10(r1) /* 802211C0 0021CE20 41 82 00 18 */ beq lbl_802211D8 /* 802211C4 0021CE24 40 80 00 08 */ bge lbl_802211CC /* 802211C8 0021CE28 48 00 01 C4 */ b lbl_8022138C lbl_802211CC: /* 802211CC 0021CE2C 2C 00 00 03 */ cmpwi r0, 3 /* 802211D0 0021CE30 40 80 01 BC */ bge lbl_8022138C /* 802211D4 0021CE34 48 00 00 B8 */ b lbl_8022128C lbl_802211D8: /* 802211D8 0021CE38 81 23 00 00 */ lwz r9, 0(r3) /* 802211DC 0021CE3C 55 47 0B FC */ rlwinm r7, r10, 1, 0xf, 0x1e /* 802211E0 0021CE40 39 00 00 01 */ li r8, 1 /* 802211E4 0021CE44 A0 05 00 02 */ lhz r0, 2(r5) /* 802211E8 0021CE48 7C E9 3A AE */ lhax r7, r9, r7 /* 802211EC 0021CE4C 7D 06 30 30 */ slw r6, r8, r6 /* 802211F0 0021CE50 6C C6 80 00 */ xoris r6, r6, 0x8000 /* 802211F4 0021CE54 54 00 08 3C */ slwi r0, r0, 1 /* 802211F8 0021CE58 6C E7 80 00 */ xoris r7, r7, 0x8000 /* 802211FC 0021CE5C 90 C1 00 14 */ stw r6, 0x14(r1) /* 80221200 0021CE60 7C 09 02 AE */ lhax r0, r9, r0 /* 80221204 0021CE64 90 E1 00 0C */ stw r7, 0xc(r1) /* 80221208 0021CE68 C0 64 00 08 */ lfs f3, 8(r4) /* 8022120C 0021CE6C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80221210 0021CE70 C8 81 00 10 */ lfd f4, 0x10(r1) /* 80221214 0021CE74 C8 01 00 08 */ lfd f0, 8(r1) /* 80221218 0021CE78 EC E1 18 28 */ fsubs f7, f1, f3 /* 8022121C 0021CE7C C0 45 00 08 */ lfs f2, 8(r5) /* 80221220 0021CE80 C8 C2 9C 00 */ lfd f6, lbl_80642200-_SDA2_BASE_(r2) /* 80221224 0021CE84 EC 22 18 28 */ fsubs f1, f2, f3 /* 80221228 0021CE88 90 01 00 0C */ stw r0, 0xc(r1) /* 8022122C 0021CE8C EC A0 30 28 */ fsubs f5, f0, f6 /* 80221230 0021CE90 C0 62 9B F8 */ lfs f3, lbl_806421F8-_SDA2_BASE_(r2) /* 80221234 0021CE94 C8 41 00 08 */ lfd f2, 8(r1) /* 80221238 0021CE98 EC 84 30 28 */ fsubs f4, f4, f6 /* 8022123C 0021CE9C 90 C1 00 14 */ stw r6, 0x14(r1) /* 80221240 0021CEA0 EC E7 08 24 */ fdivs f7, f7, f1 /* 80221244 0021CEA4 C8 21 00 10 */ lfd f1, 0x10(r1) /* 80221248 0021CEA8 90 C1 00 0C */ stw r6, 0xc(r1) /* 8022124C 0021CEAC C8 01 00 08 */ lfd f0, 8(r1) /* 80221250 0021CEB0 EC 42 30 28 */ fsubs f2, f2, f6 /* 80221254 0021CEB4 EC 21 30 28 */ fsubs f1, f1, f6 /* 80221258 0021CEB8 EC 85 20 24 */ fdivs f4, f5, f4 /* 8022125C 0021CEBC EC 22 08 24 */ fdivs f1, f2, f1 /* 80221260 0021CEC0 EC 43 38 28 */ fsubs f2, f3, f7 /* 80221264 0021CEC4 EC 27 00 72 */ fmuls f1, f7, f1 /* 80221268 0021CEC8 EC 00 30 28 */ fsubs f0, f0, f6 /* 8022126C 0021CECC EC 42 01 32 */ fmuls f2, f2, f4 /* 80221270 0021CED0 EC 42 08 2A */ fadds f2, f2, f1 /* 80221274 0021CED4 EC 02 00 32 */ fmuls f0, f2, f0 /* 80221278 0021CED8 FC 00 00 1E */ fctiwz f0, f0 /* 8022127C 0021CEDC D8 01 00 18 */ stfd f0, 0x18(r1) /* 80221280 0021CEE0 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80221284 0021CEE4 B0 03 00 1C */ sth r0, 0x1c(r3) /* 80221288 0021CEE8 48 00 01 14 */ b lbl_8022139C lbl_8022128C: /* 8022128C 0021CEEC C0 44 00 08 */ lfs f2, 8(r4) /* 80221290 0021CEF0 38 00 00 01 */ li r0, 1 /* 80221294 0021CEF4 C0 05 00 08 */ lfs f0, 8(r5) /* 80221298 0021CEF8 7C 00 30 30 */ slw r0, r0, r6 /* 8022129C 0021CEFC EC 21 10 28 */ fsubs f1, f1, f2 /* 802212A0 0021CF00 6C 06 80 00 */ xoris r6, r0, 0x8000 /* 802212A4 0021CF04 EC 00 10 28 */ fsubs f0, f0, f2 /* 802212A8 0021CF08 81 03 00 00 */ lwz r8, 0(r3) /* 802212AC 0021CF0C 55 40 0B FC */ rlwinm r0, r10, 1, 0xf, 0x1e /* 802212B0 0021CF10 A1 25 00 02 */ lhz r9, 2(r5) /* 802212B4 0021CF14 ED 21 00 24 */ fdivs f9, f1, f0 /* 802212B8 0021CF18 7C E8 02 AE */ lhax r7, r8, r0 /* 802212BC 0021CF1C 90 C1 00 0C */ stw r6, 0xc(r1) /* 802212C0 0021CF20 55 20 08 3C */ slwi r0, r9, 1 /* 802212C4 0021CF24 6C E7 80 00 */ xoris r7, r7, 0x8000 /* 802212C8 0021CF28 7C 08 02 AE */ lhax r0, r8, r0 /* 802212CC 0021CF2C 90 E1 00 14 */ stw r7, 0x14(r1) /* 802212D0 0021CF30 ED 09 02 72 */ fmuls f8, f9, f9 /* 802212D4 0021CF34 C8 01 00 08 */ lfd f0, 8(r1) /* 802212D8 0021CF38 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802212DC 0021CF3C C8 41 00 10 */ lfd f2, 0x10(r1) /* 802212E0 0021CF40 C8 A2 9C 00 */ lfd f5, lbl_80642200-_SDA2_BASE_(r2) /* 802212E4 0021CF44 EC E8 02 72 */ fmuls f7, f8, f9 /* 802212E8 0021CF48 90 01 00 14 */ stw r0, 0x14(r1) /* 802212EC 0021CF4C EC C8 40 2A */ fadds f6, f8, f8 /* 802212F0 0021CF50 EC 82 28 28 */ fsubs f4, f2, f5 /* 802212F4 0021CF54 A0 04 00 06 */ lhz r0, 6(r4) /* 802212F8 0021CF58 C8 21 00 10 */ lfd f1, 0x10(r1) /* 802212FC 0021CF5C EC 60 28 28 */ fsubs f3, f0, f5 /* 80221300 0021CF60 90 C1 00 0C */ stw r6, 0xc(r1) /* 80221304 0021CF64 ED 47 40 28 */ fsubs f10, f7, f8 /* 80221308 0021CF68 EC 46 38 28 */ fsubs f2, f6, f7 /* 8022130C 0021CF6C C8 01 00 08 */ lfd f0, 8(r1) /* 80221310 0021CF70 EC 21 28 28 */ fsubs f1, f1, f5 /* 80221314 0021CF74 EC CA 40 28 */ fsubs f6, f10, f8 /* 80221318 0021CF78 54 04 10 3A */ slwi r4, r0, 2 /* 8022131C 0021CF7C EC 00 28 28 */ fsubs f0, f0, f5 /* 80221320 0021CF80 EC 84 18 24 */ fdivs f4, f4, f3 /* 80221324 0021CF84 A0 05 00 04 */ lhz r0, 4(r5) /* 80221328 0021CF88 C0 E2 9B F8 */ lfs f7, lbl_806421F8-_SDA2_BASE_(r2) /* 8022132C 0021CF8C 80 E3 00 04 */ lwz r7, 4(r3) /* 80221330 0021CF90 54 00 10 3A */ slwi r0, r0, 2 /* 80221334 0021CF94 90 C1 00 14 */ stw r6, 0x14(r1) /* 80221338 0021CF98 ED 01 00 24 */ fdivs f8, f1, f0 /* 8022133C 0021CF9C 7C 27 04 2E */ lfsx f1, r7, r0 /* 80221340 0021CFA0 C8 01 00 10 */ lfd f0, 0x10(r1) /* 80221344 0021CFA4 ED 62 50 28 */ fsubs f11, f2, f10 /* 80221348 0021CFA8 7C 47 24 2E */ lfsx f2, r7, r4 /* 8022134C 0021CFAC ED 29 30 2A */ fadds f9, f9, f6 /* 80221350 0021CFB0 EC 2A 00 72 */ fmuls f1, f10, f1 /* 80221354 0021CFB4 EC C7 58 28 */ fsubs f6, f7, f11 /* 80221358 0021CFB8 EC 6B 02 32 */ fmuls f3, f11, f8 /* 8022135C 0021CFBC EC 49 00 B2 */ fmuls f2, f9, f2 /* 80221360 0021CFC0 EC 86 01 32 */ fmuls f4, f6, f4 /* 80221364 0021CFC4 EC 00 28 28 */ fsubs f0, f0, f5 /* 80221368 0021CFC8 EC 84 18 2A */ fadds f4, f4, f3 /* 8022136C 0021CFCC EC 84 10 2A */ fadds f4, f4, f2 /* 80221370 0021CFD0 EC 84 08 2A */ fadds f4, f4, f1 /* 80221374 0021CFD4 EC 04 00 32 */ fmuls f0, f4, f0 /* 80221378 0021CFD8 FC 00 00 1E */ fctiwz f0, f0 /* 8022137C 0021CFDC D8 01 00 18 */ stfd f0, 0x18(r1) /* 80221380 0021CFE0 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80221384 0021CFE4 B0 03 00 1C */ sth r0, 0x1c(r3) /* 80221388 0021CFE8 48 00 00 14 */ b lbl_8022139C lbl_8022138C: /* 8022138C 0021CFEC 80 83 00 00 */ lwz r4, 0(r3) /* 80221390 0021CFF0 55 40 0B FC */ rlwinm r0, r10, 1, 0xf, 0x1e /* 80221394 0021CFF4 7C 04 02 AE */ lhax r0, r4, r0 /* 80221398 0021CFF8 B0 03 00 1C */ sth r0, 0x1c(r3) lbl_8022139C: /* 8022139C 0021CFFC 38 21 00 20 */ addi r1, r1, 0x20 /* 802213A0 0021D000 4E 80 00 20 */ blr .global func_802213A4 func_802213A4: /* 802213A4 0021D004 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802213A8 0021D008 3C E0 43 30 */ lis r7, 0x4330 /* 802213AC 0021D00C A0 04 00 00 */ lhz r0, 0(r4) /* 802213B0 0021D010 90 E1 00 08 */ stw r7, 8(r1) /* 802213B4 0021D014 2C 00 00 01 */ cmpwi r0, 1 /* 802213B8 0021D018 A1 04 00 02 */ lhz r8, 2(r4) /* 802213BC 0021D01C 90 E1 00 10 */ stw r7, 0x10(r1) /* 802213C0 0021D020 41 82 00 18 */ beq lbl_802213D8 /* 802213C4 0021D024 40 80 00 08 */ bge lbl_802213CC /* 802213C8 0021D028 48 00 01 BC */ b lbl_80221584 lbl_802213CC: /* 802213CC 0021D02C 2C 00 00 03 */ cmpwi r0, 3 /* 802213D0 0021D030 40 80 01 B4 */ bge lbl_80221584 /* 802213D4 0021D034 48 00 00 B4 */ b lbl_80221488 lbl_802213D8: /* 802213D8 0021D038 81 23 00 00 */ lwz r9, 0(r3) /* 802213DC 0021D03C 55 07 0B FC */ rlwinm r7, r8, 1, 0xf, 0x1e /* 802213E0 0021D040 39 00 00 01 */ li r8, 1 /* 802213E4 0021D044 A0 05 00 02 */ lhz r0, 2(r5) /* 802213E8 0021D048 7D 06 30 30 */ slw r6, r8, r6 /* 802213EC 0021D04C 7C E9 3A 2E */ lhzx r7, r9, r7 /* 802213F0 0021D050 6C C6 80 00 */ xoris r6, r6, 0x8000 /* 802213F4 0021D054 54 00 08 3C */ slwi r0, r0, 1 /* 802213F8 0021D058 90 E1 00 0C */ stw r7, 0xc(r1) /* 802213FC 0021D05C C0 64 00 08 */ lfs f3, 8(r4) /* 80221400 0021D060 90 C1 00 14 */ stw r6, 0x14(r1) /* 80221404 0021D064 C0 05 00 08 */ lfs f0, 8(r5) /* 80221408 0021D068 EC 21 18 28 */ fsubs f1, f1, f3 /* 8022140C 0021D06C C8 41 00 10 */ lfd f2, 0x10(r1) /* 80221410 0021D070 EC 00 18 28 */ fsubs f0, f0, f3 /* 80221414 0021D074 C8 81 00 08 */ lfd f4, 8(r1) /* 80221418 0021D078 7C 09 02 2E */ lhzx r0, r9, r0 /* 8022141C 0021D07C C8 E2 9C 08 */ lfd f7, lbl_80642208-_SDA2_BASE_(r2) /* 80221420 0021D080 90 C1 00 14 */ stw r6, 0x14(r1) /* 80221424 0021D084 ED 01 00 24 */ fdivs f8, f1, f0 /* 80221428 0021D088 C8 A2 9C 00 */ lfd f5, lbl_80642200-_SDA2_BASE_(r2) /* 8022142C 0021D08C 90 01 00 0C */ stw r0, 0xc(r1) /* 80221430 0021D090 C8 21 00 10 */ lfd f1, 0x10(r1) /* 80221434 0021D094 C8 01 00 08 */ lfd f0, 8(r1) /* 80221438 0021D098 C0 62 9B F8 */ lfs f3, lbl_806421F8-_SDA2_BASE_(r2) /* 8022143C 0021D09C EC C4 38 28 */ fsubs f6, f4, f7 /* 80221440 0021D0A0 90 C1 00 0C */ stw r6, 0xc(r1) /* 80221444 0021D0A4 EC 82 28 28 */ fsubs f4, f2, f5 /* 80221448 0021D0A8 EC 40 38 28 */ fsubs f2, f0, f7 /* 8022144C 0021D0AC C8 01 00 08 */ lfd f0, 8(r1) /* 80221450 0021D0B0 EC 21 28 28 */ fsubs f1, f1, f5 /* 80221454 0021D0B4 EC 86 20 24 */ fdivs f4, f6, f4 /* 80221458 0021D0B8 EC 22 08 24 */ fdivs f1, f2, f1 /* 8022145C 0021D0BC EC 43 40 28 */ fsubs f2, f3, f8 /* 80221460 0021D0C0 EC 28 00 72 */ fmuls f1, f8, f1 /* 80221464 0021D0C4 EC 00 28 28 */ fsubs f0, f0, f5 /* 80221468 0021D0C8 EC 42 01 32 */ fmuls f2, f2, f4 /* 8022146C 0021D0CC EC 42 08 2A */ fadds f2, f2, f1 /* 80221470 0021D0D0 EC 02 00 32 */ fmuls f0, f2, f0 /* 80221474 0021D0D4 FC 00 00 1E */ fctiwz f0, f0 /* 80221478 0021D0D8 D8 01 00 18 */ stfd f0, 0x18(r1) /* 8022147C 0021D0DC 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80221480 0021D0E0 B0 03 00 1C */ sth r0, 0x1c(r3) /* 80221484 0021D0E4 48 00 01 10 */ b lbl_80221594 lbl_80221488: /* 80221488 0021D0E8 C0 44 00 08 */ lfs f2, 8(r4) /* 8022148C 0021D0EC 55 07 0B FC */ rlwinm r7, r8, 1, 0xf, 0x1e /* 80221490 0021D0F0 C0 05 00 08 */ lfs f0, 8(r5) /* 80221494 0021D0F4 38 00 00 01 */ li r0, 1 /* 80221498 0021D0F8 EC 21 10 28 */ fsubs f1, f1, f2 /* 8022149C 0021D0FC 81 03 00 00 */ lwz r8, 0(r3) /* 802214A0 0021D100 EC 00 10 28 */ fsubs f0, f0, f2 /* 802214A4 0021D104 7C 00 30 30 */ slw r0, r0, r6 /* 802214A8 0021D108 6C 06 80 00 */ xoris r6, r0, 0x8000 /* 802214AC 0021D10C 7C E8 3A 2E */ lhzx r7, r8, r7 /* 802214B0 0021D110 ED 21 00 24 */ fdivs f9, f1, f0 /* 802214B4 0021D114 90 E1 00 14 */ stw r7, 0x14(r1) /* 802214B8 0021D118 A0 05 00 02 */ lhz r0, 2(r5) /* 802214BC 0021D11C 90 C1 00 0C */ stw r6, 0xc(r1) /* 802214C0 0021D120 54 00 08 3C */ slwi r0, r0, 1 /* 802214C4 0021D124 C8 41 00 10 */ lfd f2, 0x10(r1) /* 802214C8 0021D128 ED 49 02 72 */ fmuls f10, f9, f9 /* 802214CC 0021D12C C8 21 00 08 */ lfd f1, 8(r1) /* 802214D0 0021D130 7C 08 02 2E */ lhzx r0, r8, r0 /* 802214D4 0021D134 90 C1 00 0C */ stw r6, 0xc(r1) /* 802214D8 0021D138 C8 82 9C 00 */ lfd f4, lbl_80642200-_SDA2_BASE_(r2) /* 802214DC 0021D13C ED 6A 02 72 */ fmuls f11, f10, f9 /* 802214E0 0021D140 90 01 00 14 */ stw r0, 0x14(r1) /* 802214E4 0021D144 ED 0A 50 2A */ fadds f8, f10, f10 /* 802214E8 0021D148 C8 01 00 08 */ lfd f0, 8(r1) /* 802214EC 0021D14C EC 61 20 28 */ fsubs f3, f1, f4 /* 802214F0 0021D150 C8 C2 9C 08 */ lfd f6, lbl_80642208-_SDA2_BASE_(r2) /* 802214F4 0021D154 C8 21 00 10 */ lfd f1, 0x10(r1) /* 802214F8 0021D158 EC 00 20 28 */ fsubs f0, f0, f4 /* 802214FC 0021D15C EC A2 30 28 */ fsubs f5, f2, f6 /* 80221500 0021D160 A0 04 00 06 */ lhz r0, 6(r4) /* 80221504 0021D164 EC 21 30 28 */ fsubs f1, f1, f6 /* 80221508 0021D168 C0 E2 9B F8 */ lfs f7, lbl_806421F8-_SDA2_BASE_(r2) /* 8022150C 0021D16C EC 48 58 28 */ fsubs f2, f8, f11 /* 80221510 0021D170 EC A5 18 24 */ fdivs f5, f5, f3 /* 80221514 0021D174 54 04 10 3A */ slwi r4, r0, 2 /* 80221518 0021D178 A0 05 00 04 */ lhz r0, 4(r5) /* 8022151C 0021D17C 80 E3 00 04 */ lwz r7, 4(r3) /* 80221520 0021D180 54 00 10 3A */ slwi r0, r0, 2 /* 80221524 0021D184 90 C1 00 14 */ stw r6, 0x14(r1) /* 80221528 0021D188 ED 01 00 24 */ fdivs f8, f1, f0 /* 8022152C 0021D18C C8 01 00 10 */ lfd f0, 0x10(r1) /* 80221530 0021D190 7C 27 04 2E */ lfsx f1, r7, r0 /* 80221534 0021D194 ED 8B 50 28 */ fsubs f12, f11, f10 /* 80221538 0021D198 EC 00 20 28 */ fsubs f0, f0, f4 /* 8022153C 0021D19C ED 62 60 28 */ fsubs f11, f2, f12 /* 80221540 0021D1A0 7C 47 24 2E */ lfsx f2, r7, r4 /* 80221544 0021D1A4 EC CC 50 28 */ fsubs f6, f12, f10 /* 80221548 0021D1A8 EC 2C 00 72 */ fmuls f1, f12, f1 /* 8022154C 0021D1AC EC 6B 02 32 */ fmuls f3, f11, f8 /* 80221550 0021D1B0 ED 29 30 2A */ fadds f9, f9, f6 /* 80221554 0021D1B4 EC C7 58 28 */ fsubs f6, f7, f11 /* 80221558 0021D1B8 EC 49 00 B2 */ fmuls f2, f9, f2 /* 8022155C 0021D1BC EC A6 01 72 */ fmuls f5, f6, f5 /* 80221560 0021D1C0 EC A5 18 2A */ fadds f5, f5, f3 /* 80221564 0021D1C4 EC A5 10 2A */ fadds f5, f5, f2 /* 80221568 0021D1C8 EC A5 08 2A */ fadds f5, f5, f1 /* 8022156C 0021D1CC EC 05 00 32 */ fmuls f0, f5, f0 /* 80221570 0021D1D0 FC 00 00 1E */ fctiwz f0, f0 /* 80221574 0021D1D4 D8 01 00 18 */ stfd f0, 0x18(r1) /* 80221578 0021D1D8 80 01 00 1C */ lwz r0, 0x1c(r1) /* 8022157C 0021D1DC B0 03 00 1C */ sth r0, 0x1c(r3) /* 80221580 0021D1E0 48 00 00 14 */ b lbl_80221594 lbl_80221584: /* 80221584 0021D1E4 80 83 00 00 */ lwz r4, 0(r3) /* 80221588 0021D1E8 55 00 0B FC */ rlwinm r0, r8, 1, 0xf, 0x1e /* 8022158C 0021D1EC 7C 04 02 2E */ lhzx r0, r4, r0 /* 80221590 0021D1F0 B0 03 00 1C */ sth r0, 0x1c(r3) lbl_80221594: /* 80221594 0021D1F4 38 21 00 20 */ addi r1, r1, 0x20 /* 80221598 0021D1F8 4E 80 00 20 */ blr .global func_8022159C func_8022159C: /* 8022159C 0021D1FC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802215A0 0021D200 7C 08 02 A6 */ mflr r0 /* 802215A4 0021D204 90 01 00 34 */ stw r0, 0x34(r1) /* 802215A8 0021D208 93 E1 00 2C */ stw r31, 0x2c(r1) /* 802215AC 0021D20C 7C 7F 1B 78 */ mr r31, r3 /* 802215B0 0021D210 A0 04 00 00 */ lhz r0, 0(r4) /* 802215B4 0021D214 A0 C4 00 02 */ lhz r6, 2(r4) /* 802215B8 0021D218 2C 00 00 01 */ cmpwi r0, 1 /* 802215BC 0021D21C 41 82 00 18 */ beq lbl_802215D4 /* 802215C0 0021D220 40 80 00 08 */ bge lbl_802215C8 /* 802215C4 0021D224 48 00 00 D8 */ b lbl_8022169C lbl_802215C8: /* 802215C8 0021D228 2C 00 00 03 */ cmpwi r0, 3 /* 802215CC 0021D22C 40 80 00 D0 */ bge lbl_8022169C /* 802215D0 0021D230 48 00 00 5C */ b lbl_8022162C lbl_802215D4: /* 802215D4 0021D234 C0 44 00 08 */ lfs f2, 8(r4) /* 802215D8 0021D238 54 C4 23 36 */ rlwinm r4, r6, 4, 0xc, 0x1b /* 802215DC 0021D23C C0 05 00 08 */ lfs f0, 8(r5) /* 802215E0 0021D240 EC 21 10 28 */ fsubs f1, f1, f2 /* 802215E4 0021D244 A0 05 00 02 */ lhz r0, 2(r5) /* 802215E8 0021D248 EC 00 10 28 */ fsubs f0, f0, f2 /* 802215EC 0021D24C 80 C3 00 00 */ lwz r6, 0(r3) /* 802215F0 0021D250 54 00 20 36 */ slwi r0, r0, 4 /* 802215F4 0021D254 38 A1 00 18 */ addi r5, r1, 0x18 /* 802215F8 0021D258 EC 21 00 24 */ fdivs f1, f1, f0 /* 802215FC 0021D25C 7C 66 22 14 */ add r3, r6, r4 /* 80221600 0021D260 7C 86 02 14 */ add r4, r6, r0 /* 80221604 0021D264 48 05 BD 8D */ bl C_QUATSlerp /* 80221608 0021D268 C0 01 00 18 */ lfs f0, 0x18(r1) /* 8022160C 0021D26C D0 1F 00 1C */ stfs f0, 0x1c(r31) /* 80221610 0021D270 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 80221614 0021D274 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 80221618 0021D278 C0 01 00 20 */ lfs f0, 0x20(r1) /* 8022161C 0021D27C D0 1F 00 24 */ stfs f0, 0x24(r31) /* 80221620 0021D280 C0 01 00 24 */ lfs f0, 0x24(r1) /* 80221624 0021D284 D0 1F 00 28 */ stfs f0, 0x28(r31) /* 80221628 0021D288 48 00 00 9C */ b lbl_802216C4 lbl_8022162C: /* 8022162C 0021D28C C0 44 00 08 */ lfs f2, 8(r4) /* 80221630 0021D290 54 C8 23 36 */ rlwinm r8, r6, 4, 0xc, 0x1b /* 80221634 0021D294 C0 05 00 08 */ lfs f0, 8(r5) /* 80221638 0021D298 38 E1 00 08 */ addi r7, r1, 8 /* 8022163C 0021D29C EC 21 10 28 */ fsubs f1, f1, f2 /* 80221640 0021D2A0 A0 C5 00 02 */ lhz r6, 2(r5) /* 80221644 0021D2A4 EC 00 10 28 */ fsubs f0, f0, f2 /* 80221648 0021D2A8 A0 05 00 04 */ lhz r0, 4(r5) /* 8022164C 0021D2AC A0 84 00 06 */ lhz r4, 6(r4) /* 80221650 0021D2B0 54 C6 20 36 */ slwi r6, r6, 4 /* 80221654 0021D2B4 EC 21 00 24 */ fdivs f1, f1, f0 /* 80221658 0021D2B8 81 23 00 00 */ lwz r9, 0(r3) /* 8022165C 0021D2BC 54 85 20 36 */ slwi r5, r4, 4 /* 80221660 0021D2C0 54 00 20 36 */ slwi r0, r0, 4 /* 80221664 0021D2C4 7C 89 32 14 */ add r4, r9, r6 /* 80221668 0021D2C8 7C 69 42 14 */ add r3, r9, r8 /* 8022166C 0021D2CC 7C A9 2A 14 */ add r5, r9, r5 /* 80221670 0021D2D0 7C C9 02 14 */ add r6, r9, r0 /* 80221674 0021D2D4 48 05 BE B9 */ bl C_QUATSquad /* 80221678 0021D2D8 C0 01 00 08 */ lfs f0, 8(r1) /* 8022167C 0021D2DC D0 1F 00 1C */ stfs f0, 0x1c(r31) /* 80221680 0021D2E0 C0 01 00 0C */ lfs f0, 0xc(r1) /* 80221684 0021D2E4 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 80221688 0021D2E8 C0 01 00 10 */ lfs f0, 0x10(r1) /* 8022168C 0021D2EC D0 1F 00 24 */ stfs f0, 0x24(r31) /* 80221690 0021D2F0 C0 01 00 14 */ lfs f0, 0x14(r1) /* 80221694 0021D2F4 D0 1F 00 28 */ stfs f0, 0x28(r31) /* 80221698 0021D2F8 48 00 00 2C */ b lbl_802216C4 lbl_8022169C: /* 8022169C 0021D2FC 54 C0 23 36 */ rlwinm r0, r6, 4, 0xc, 0x1b /* 802216A0 0021D300 80 83 00 00 */ lwz r4, 0(r3) /* 802216A4 0021D304 7C 04 04 6E */ lfsux f0, r4, r0 /* 802216A8 0021D308 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 802216AC 0021D30C C0 04 00 04 */ lfs f0, 4(r4) /* 802216B0 0021D310 D0 03 00 20 */ stfs f0, 0x20(r3) /* 802216B4 0021D314 C0 04 00 08 */ lfs f0, 8(r4) /* 802216B8 0021D318 D0 03 00 24 */ stfs f0, 0x24(r3) /* 802216BC 0021D31C C0 04 00 0C */ lfs f0, 0xc(r4) /* 802216C0 0021D320 D0 03 00 28 */ stfs f0, 0x28(r3) lbl_802216C4: /* 802216C4 0021D324 80 01 00 34 */ lwz r0, 0x34(r1) /* 802216C8 0021D328 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 802216CC 0021D32C 7C 08 03 A6 */ mtlr r0 /* 802216D0 0021D330 38 21 00 30 */ addi r1, r1, 0x30 /* 802216D4 0021D334 4E 80 00 20 */ blr .global func_802216D8 func_802216D8: /* 802216D8 0021D338 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802216DC 0021D33C 3C C0 43 30 */ lis r6, 0x4330 /* 802216E0 0021D340 A0 04 00 00 */ lhz r0, 0(r4) /* 802216E4 0021D344 90 C1 00 30 */ stw r6, 0x30(r1) /* 802216E8 0021D348 2C 00 00 01 */ cmpwi r0, 1 /* 802216EC 0021D34C A0 E4 00 02 */ lhz r7, 2(r4) /* 802216F0 0021D350 90 C1 00 38 */ stw r6, 0x38(r1) /* 802216F4 0021D354 41 82 00 18 */ beq lbl_8022170C /* 802216F8 0021D358 40 80 00 08 */ bge lbl_80221700 /* 802216FC 0021D35C 48 00 02 DC */ b lbl_802219D8 lbl_80221700: /* 80221700 0021D360 2C 00 00 03 */ cmpwi r0, 3 /* 80221704 0021D364 40 80 02 D4 */ bge lbl_802219D8 /* 80221708 0021D368 48 00 01 0C */ b lbl_80221814 lbl_8022170C: /* 8022170C 0021D36C C0 44 00 08 */ lfs f2, 8(r4) /* 80221710 0021D370 54 E0 13 BA */ rlwinm r0, r7, 2, 0xe, 0x1d /* 80221714 0021D374 C0 05 00 08 */ lfs f0, 8(r5) /* 80221718 0021D378 EC 21 10 28 */ fsubs f1, f1, f2 /* 8022171C 0021D37C A0 85 00 02 */ lhz r4, 2(r5) /* 80221720 0021D380 EC 00 10 28 */ fsubs f0, f0, f2 /* 80221724 0021D384 80 C3 00 00 */ lwz r6, 0(r3) /* 80221728 0021D388 54 84 10 3A */ slwi r4, r4, 2 /* 8022172C 0021D38C 7C A6 02 14 */ add r5, r6, r0 /* 80221730 0021D390 EC 81 00 24 */ fdivs f4, f1, f0 /* 80221734 0021D394 7C 06 00 AE */ lbzx r0, r6, r0 /* 80221738 0021D398 98 01 00 0F */ stb r0, 0xf(r1) /* 8022173C 0021D39C E0 21 A0 0F */ psq_l f1, 15(r1), 1, qr2 /* 80221740 0021D3A0 C0 02 9B F8 */ lfs f0, lbl_806421F8-_SDA2_BASE_(r2) /* 80221744 0021D3A4 7C 04 30 EE */ lbzux r0, r4, r6 /* 80221748 0021D3A8 EC 40 20 28 */ fsubs f2, f0, f4 /* 8022174C 0021D3AC 98 01 00 0E */ stb r0, 0xe(r1) /* 80221750 0021D3B0 EC 62 00 72 */ fmuls f3, f2, f1 /* 80221754 0021D3B4 E0 01 A0 0E */ psq_l f0, 14(r1), 1, qr2 /* 80221758 0021D3B8 C0 22 9C 10 */ lfs f1, lbl_80642210-_SDA2_BASE_(r2) /* 8022175C 0021D3BC EC 04 00 32 */ fmuls f0, f4, f0 /* 80221760 0021D3C0 EC 63 00 2A */ fadds f3, f3, f0 /* 80221764 0021D3C4 EC 01 18 2A */ fadds f0, f1, f3 /* 80221768 0021D3C8 F0 01 A0 2C */ psq_st f0, 44(r1), 1, qr2 /* 8022176C 0021D3CC 88 01 00 2C */ lbz r0, 0x2c(r1) /* 80221770 0021D3D0 98 03 00 1C */ stb r0, 0x1c(r3) /* 80221774 0021D3D4 88 05 00 01 */ lbz r0, 1(r5) /* 80221778 0021D3D8 98 01 00 0D */ stb r0, 0xd(r1) /* 8022177C 0021D3DC E0 01 A0 0D */ psq_l f0, 13(r1), 1, qr2 /* 80221780 0021D3E0 88 04 00 01 */ lbz r0, 1(r4) /* 80221784 0021D3E4 EC 62 00 32 */ fmuls f3, f2, f0 /* 80221788 0021D3E8 98 01 00 0C */ stb r0, 0xc(r1) /* 8022178C 0021D3EC E0 01 A0 0C */ psq_l f0, 12(r1), 1, qr2 /* 80221790 0021D3F0 EC 04 00 32 */ fmuls f0, f4, f0 /* 80221794 0021D3F4 EC 63 00 2A */ fadds f3, f3, f0 /* 80221798 0021D3F8 EC 01 18 2A */ fadds f0, f1, f3 /* 8022179C 0021D3FC F0 01 A0 28 */ psq_st f0, 40(r1), 1, qr2 /* 802217A0 0021D400 88 01 00 28 */ lbz r0, 0x28(r1) /* 802217A4 0021D404 98 03 00 1D */ stb r0, 0x1d(r3) /* 802217A8 0021D408 88 05 00 02 */ lbz r0, 2(r5) /* 802217AC 0021D40C 98 01 00 0B */ stb r0, 0xb(r1) /* 802217B0 0021D410 E0 01 A0 0B */ psq_l f0, 11(r1), 1, qr2 /* 802217B4 0021D414 88 04 00 02 */ lbz r0, 2(r4) /* 802217B8 0021D418 EC 62 00 32 */ fmuls f3, f2, f0 /* 802217BC 0021D41C 98 01 00 0A */ stb r0, 0xa(r1) /* 802217C0 0021D420 E0 01 A0 0A */ psq_l f0, 10(r1), 1, qr2 /* 802217C4 0021D424 EC 04 00 32 */ fmuls f0, f4, f0 /* 802217C8 0021D428 EC 63 00 2A */ fadds f3, f3, f0 /* 802217CC 0021D42C EC 01 18 2A */ fadds f0, f1, f3 /* 802217D0 0021D430 F0 01 A0 24 */ psq_st f0, 36(r1), 1, qr2 /* 802217D4 0021D434 88 01 00 24 */ lbz r0, 0x24(r1) /* 802217D8 0021D438 98 03 00 1E */ stb r0, 0x1e(r3) /* 802217DC 0021D43C 88 05 00 03 */ lbz r0, 3(r5) /* 802217E0 0021D440 98 01 00 09 */ stb r0, 9(r1) /* 802217E4 0021D444 E0 01 A0 09 */ psq_l f0, 9(r1), 1, qr2 /* 802217E8 0021D448 88 04 00 03 */ lbz r0, 3(r4) /* 802217EC 0021D44C EC 42 00 32 */ fmuls f2, f2, f0 /* 802217F0 0021D450 98 01 00 08 */ stb r0, 8(r1) /* 802217F4 0021D454 E0 01 A0 08 */ psq_l f0, 8(r1), 1, qr2 /* 802217F8 0021D458 EC 04 00 32 */ fmuls f0, f4, f0 /* 802217FC 0021D45C EC 42 00 2A */ fadds f2, f2, f0 /* 80221800 0021D460 EC 01 10 2A */ fadds f0, f1, f2 /* 80221804 0021D464 F0 01 A0 20 */ psq_st f0, 32(r1), 1, qr2 /* 80221808 0021D468 88 01 00 20 */ lbz r0, 0x20(r1) /* 8022180C 0021D46C 98 03 00 1F */ stb r0, 0x1f(r3) /* 80221810 0021D470 48 00 01 F0 */ b lbl_80221A00 lbl_80221814: /* 80221814 0021D474 C0 44 00 08 */ lfs f2, 8(r4) /* 80221818 0021D478 54 E6 13 BA */ rlwinm r6, r7, 2, 0xe, 0x1d /* 8022181C 0021D47C C0 05 00 08 */ lfs f0, 8(r5) /* 80221820 0021D480 EC 21 10 28 */ fsubs f1, f1, f2 /* 80221824 0021D484 A0 05 00 02 */ lhz r0, 2(r5) /* 80221828 0021D488 EC 00 10 28 */ fsubs f0, f0, f2 /* 8022182C 0021D48C 80 E3 00 00 */ lwz r7, 0(r3) /* 80221830 0021D490 A1 04 00 06 */ lhz r8, 6(r4) /* 80221834 0021D494 54 00 10 3A */ slwi r0, r0, 2 /* 80221838 0021D498 ED 41 00 24 */ fdivs f10, f1, f0 /* 8022183C 0021D49C 7C 87 30 AE */ lbzx r4, r7, r6 /* 80221840 0021D4A0 7D 27 32 14 */ add r9, r7, r6 /* 80221844 0021D4A4 7C 07 00 EE */ lbzux r0, r7, r0 /* 80221848 0021D4A8 90 81 00 34 */ stw r4, 0x34(r1) /* 8022184C 0021D4AC 55 06 20 36 */ slwi r6, r8, 4 /* 80221850 0021D4B0 EC AA 02 B2 */ fmuls f5, f10, f10 /* 80221854 0021D4B4 90 01 00 3C */ stw r0, 0x3c(r1) /* 80221858 0021D4B8 80 83 00 04 */ lwz r4, 4(r3) /* 8022185C 0021D4BC A0 05 00 04 */ lhz r0, 4(r5) /* 80221860 0021D4C0 EC 25 02 B2 */ fmuls f1, f5, f10 /* 80221864 0021D4C4 C0 C2 9B F8 */ lfs f6, lbl_806421F8-_SDA2_BASE_(r2) /* 80221868 0021D4C8 EC 05 28 2A */ fadds f0, f5, f5 /* 8022186C 0021D4CC 54 00 20 36 */ slwi r0, r0, 4 /* 80221870 0021D4D0 C8 81 00 30 */ lfd f4, 0x30(r1) /* 80221874 0021D4D4 7C A4 02 14 */ add r5, r4, r0 /* 80221878 0021D4D8 EC 41 28 28 */ fsubs f2, f1, f5 /* 8022187C 0021D4DC 7D 24 04 2E */ lfsx f9, r4, r0 /* 80221880 0021D4E0 EC 00 08 28 */ fsubs f0, f0, f1 /* 80221884 0021D4E4 C8 22 9C 08 */ lfd f1, lbl_80642208-_SDA2_BASE_(r2) /* 80221888 0021D4E8 7D 06 24 6E */ lfsux f8, r6, r4 /* 8022188C 0021D4EC EC A2 28 28 */ fsubs f5, f2, f5 /* 80221890 0021D4F0 EC 60 10 28 */ fsubs f3, f0, f2 /* 80221894 0021D4F4 C8 01 00 38 */ lfd f0, 0x38(r1) /* 80221898 0021D4F8 EC E4 08 28 */ fsubs f7, f4, f1 /* 8022189C 0021D4FC EC AA 28 2A */ fadds f5, f10, f5 /* 802218A0 0021D500 EC 86 18 28 */ fsubs f4, f6, f3 /* 802218A4 0021D504 EC C0 08 28 */ fsubs f6, f0, f1 /* 802218A8 0021D508 C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 802218AC 0021D50C ED 08 01 72 */ fmuls f8, f8, f5 /* 802218B0 0021D510 EC E7 01 32 */ fmuls f7, f7, f4 /* 802218B4 0021D514 EC C6 00 F2 */ fmuls f6, f6, f3 /* 802218B8 0021D518 ED 29 00 B2 */ fmuls f9, f9, f2 /* 802218BC 0021D51C EC C7 30 2A */ fadds f6, f7, f6 /* 802218C0 0021D520 EC C8 30 2A */ fadds f6, f8, f6 /* 802218C4 0021D524 EC C9 30 2A */ fadds f6, f9, f6 /* 802218C8 0021D528 EC C0 30 2A */ fadds f6, f0, f6 /* 802218CC 0021D52C F0 C1 A0 1C */ psq_st f6, 28(r1), 1, qr2 /* 802218D0 0021D530 88 01 00 1C */ lbz r0, 0x1c(r1) /* 802218D4 0021D534 98 03 00 1C */ stb r0, 0x1c(r3) /* 802218D8 0021D538 88 89 00 01 */ lbz r4, 1(r9) /* 802218DC 0021D53C 88 07 00 01 */ lbz r0, 1(r7) /* 802218E0 0021D540 90 81 00 34 */ stw r4, 0x34(r1) /* 802218E4 0021D544 C0 C6 00 04 */ lfs f6, 4(r6) /* 802218E8 0021D548 C8 E1 00 30 */ lfd f7, 0x30(r1) /* 802218EC 0021D54C 90 01 00 3C */ stw r0, 0x3c(r1) /* 802218F0 0021D550 ED 06 01 72 */ fmuls f8, f6, f5 /* 802218F4 0021D554 EC E7 08 28 */ fsubs f7, f7, f1 /* 802218F8 0021D558 C1 25 00 04 */ lfs f9, 4(r5) /* 802218FC 0021D55C C8 C1 00 38 */ lfd f6, 0x38(r1) /* 80221900 0021D560 ED 29 00 B2 */ fmuls f9, f9, f2 /* 80221904 0021D564 EC C6 08 28 */ fsubs f6, f6, f1 /* 80221908 0021D568 EC E7 01 32 */ fmuls f7, f7, f4 /* 8022190C 0021D56C EC C6 00 F2 */ fmuls f6, f6, f3 /* 80221910 0021D570 EC C7 30 2A */ fadds f6, f7, f6 /* 80221914 0021D574 EC C8 30 2A */ fadds f6, f8, f6 /* 80221918 0021D578 EC C9 30 2A */ fadds f6, f9, f6 /* 8022191C 0021D57C EC C0 30 2A */ fadds f6, f0, f6 /* 80221920 0021D580 F0 C1 A0 18 */ psq_st f6, 24(r1), 1, qr2 /* 80221924 0021D584 88 01 00 18 */ lbz r0, 0x18(r1) /* 80221928 0021D588 98 03 00 1D */ stb r0, 0x1d(r3) /* 8022192C 0021D58C 88 89 00 02 */ lbz r4, 2(r9) /* 80221930 0021D590 88 07 00 02 */ lbz r0, 2(r7) /* 80221934 0021D594 90 81 00 34 */ stw r4, 0x34(r1) /* 80221938 0021D598 C0 C6 00 08 */ lfs f6, 8(r6) /* 8022193C 0021D59C C8 E1 00 30 */ lfd f7, 0x30(r1) /* 80221940 0021D5A0 C1 25 00 08 */ lfs f9, 8(r5) /* 80221944 0021D5A4 ED 06 01 72 */ fmuls f8, f6, f5 /* 80221948 0021D5A8 90 01 00 3C */ stw r0, 0x3c(r1) /* 8022194C 0021D5AC EC E7 08 28 */ fsubs f7, f7, f1 /* 80221950 0021D5B0 ED 29 00 B2 */ fmuls f9, f9, f2 /* 80221954 0021D5B4 C8 C1 00 38 */ lfd f6, 0x38(r1) /* 80221958 0021D5B8 EC E7 01 32 */ fmuls f7, f7, f4 /* 8022195C 0021D5BC EC C6 08 28 */ fsubs f6, f6, f1 /* 80221960 0021D5C0 EC C6 00 F2 */ fmuls f6, f6, f3 /* 80221964 0021D5C4 EC C7 30 2A */ fadds f6, f7, f6 /* 80221968 0021D5C8 EC C8 30 2A */ fadds f6, f8, f6 /* 8022196C 0021D5CC EC C9 30 2A */ fadds f6, f9, f6 /* 80221970 0021D5D0 EC C0 30 2A */ fadds f6, f0, f6 /* 80221974 0021D5D4 F0 C1 A0 14 */ psq_st f6, 20(r1), 1, qr2 /* 80221978 0021D5D8 88 01 00 14 */ lbz r0, 0x14(r1) /* 8022197C 0021D5DC 98 03 00 1E */ stb r0, 0x1e(r3) /* 80221980 0021D5E0 88 89 00 03 */ lbz r4, 3(r9) /* 80221984 0021D5E4 88 07 00 03 */ lbz r0, 3(r7) /* 80221988 0021D5E8 90 81 00 34 */ stw r4, 0x34(r1) /* 8022198C 0021D5EC C0 E6 00 0C */ lfs f7, 0xc(r6) /* 80221990 0021D5F0 C8 C1 00 30 */ lfd f6, 0x30(r1) /* 80221994 0021D5F4 90 01 00 3C */ stw r0, 0x3c(r1) /* 80221998 0021D5F8 EC E7 01 72 */ fmuls f7, f7, f5 /* 8022199C 0021D5FC EC C6 08 28 */ fsubs f6, f6, f1 /* 802219A0 0021D600 C1 05 00 0C */ lfs f8, 0xc(r5) /* 802219A4 0021D604 C8 A1 00 38 */ lfd f5, 0x38(r1) /* 802219A8 0021D608 EC 25 08 28 */ fsubs f1, f5, f1 /* 802219AC 0021D60C EC A8 00 B2 */ fmuls f5, f8, f2 /* 802219B0 0021D610 EC 46 01 32 */ fmuls f2, f6, f4 /* 802219B4 0021D614 EC 21 00 F2 */ fmuls f1, f1, f3 /* 802219B8 0021D618 EC 22 08 2A */ fadds f1, f2, f1 /* 802219BC 0021D61C EC 27 08 2A */ fadds f1, f7, f1 /* 802219C0 0021D620 EC 25 08 2A */ fadds f1, f5, f1 /* 802219C4 0021D624 EC 00 08 2A */ fadds f0, f0, f1 /* 802219C8 0021D628 F0 01 A0 10 */ psq_st f0, 16(r1), 1, qr2 /* 802219CC 0021D62C 88 01 00 10 */ lbz r0, 0x10(r1) /* 802219D0 0021D630 98 03 00 1F */ stb r0, 0x1f(r3) /* 802219D4 0021D634 48 00 00 2C */ b lbl_80221A00 lbl_802219D8: /* 802219D8 0021D638 54 E0 13 BA */ rlwinm r0, r7, 2, 0xe, 0x1d /* 802219DC 0021D63C 80 83 00 00 */ lwz r4, 0(r3) /* 802219E0 0021D640 7C 04 00 EE */ lbzux r0, r4, r0 /* 802219E4 0021D644 98 03 00 1C */ stb r0, 0x1c(r3) /* 802219E8 0021D648 88 04 00 01 */ lbz r0, 1(r4) /* 802219EC 0021D64C 98 03 00 1D */ stb r0, 0x1d(r3) /* 802219F0 0021D650 88 04 00 02 */ lbz r0, 2(r4) /* 802219F4 0021D654 98 03 00 1E */ stb r0, 0x1e(r3) /* 802219F8 0021D658 88 04 00 03 */ lbz r0, 3(r4) /* 802219FC 0021D65C 98 03 00 1F */ stb r0, 0x1f(r3) lbl_80221A00: /* 80221A00 0021D660 38 21 00 40 */ addi r1, r1, 0x40 /* 80221A04 0021D664 4E 80 00 20 */ blr .global func_80221A08 func_80221A08: /* 80221A08 0021D668 A0 04 00 00 */ lhz r0, 0(r4) /* 80221A0C 0021D66C A0 C4 00 02 */ lhz r6, 2(r4) /* 80221A10 0021D670 2C 00 00 01 */ cmpwi r0, 1 /* 80221A14 0021D674 41 82 00 18 */ beq lbl_80221A2C /* 80221A18 0021D678 40 80 00 08 */ bge lbl_80221A20 /* 80221A1C 0021D67C 48 00 00 FC */ b lbl_80221B18 lbl_80221A20: /* 80221A20 0021D680 2C 00 00 03 */ cmpwi r0, 3 /* 80221A24 0021D684 40 80 00 F4 */ bge lbl_80221B18 /* 80221A28 0021D688 48 00 00 50 */ b lbl_80221A78 lbl_80221A2C: /* 80221A2C 0021D68C C0 44 00 08 */ lfs f2, 8(r4) /* 80221A30 0021D690 54 C0 13 BA */ rlwinm r0, r6, 2, 0xe, 0x1d /* 80221A34 0021D694 C0 05 00 08 */ lfs f0, 8(r5) /* 80221A38 0021D698 EC 61 10 28 */ fsubs f3, f1, f2 /* 80221A3C 0021D69C C0 22 9B F8 */ lfs f1, lbl_806421F8-_SDA2_BASE_(r2) /* 80221A40 0021D6A0 EC 40 10 28 */ fsubs f2, f0, f2 /* 80221A44 0021D6A4 80 83 00 00 */ lwz r4, 0(r3) /* 80221A48 0021D6A8 7C 04 04 2E */ lfsx f0, r4, r0 /* 80221A4C 0021D6AC EC 43 10 24 */ fdivs f2, f3, f2 /* 80221A50 0021D6B0 EC 21 10 28 */ fsubs f1, f1, f2 /* 80221A54 0021D6B4 EC 21 00 32 */ fmuls f1, f1, f0 /* 80221A58 0021D6B8 D0 23 00 1C */ stfs f1, 0x1c(r3) /* 80221A5C 0021D6BC A0 05 00 02 */ lhz r0, 2(r5) /* 80221A60 0021D6C0 54 00 10 3A */ slwi r0, r0, 2 /* 80221A64 0021D6C4 7C 04 04 2E */ lfsx f0, r4, r0 /* 80221A68 0021D6C8 EC 02 00 32 */ fmuls f0, f2, f0 /* 80221A6C 0021D6CC EC 01 00 2A */ fadds f0, f1, f0 /* 80221A70 0021D6D0 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80221A74 0021D6D4 4E 80 00 20 */ blr lbl_80221A78: /* 80221A78 0021D6D8 C0 44 00 08 */ lfs f2, 8(r4) /* 80221A7C 0021D6DC 54 C0 13 BA */ rlwinm r0, r6, 2, 0xe, 0x1d /* 80221A80 0021D6E0 C0 05 00 08 */ lfs f0, 8(r5) /* 80221A84 0021D6E4 EC 61 10 28 */ fsubs f3, f1, f2 /* 80221A88 0021D6E8 80 E3 00 00 */ lwz r7, 0(r3) /* 80221A8C 0021D6EC EC 20 10 28 */ fsubs f1, f0, f2 /* 80221A90 0021D6F0 C0 42 9B F8 */ lfs f2, lbl_806421F8-_SDA2_BASE_(r2) /* 80221A94 0021D6F4 7C 07 04 2E */ lfsx f0, r7, r0 /* 80221A98 0021D6F8 80 C3 00 04 */ lwz r6, 4(r3) /* 80221A9C 0021D6FC EC 83 08 24 */ fdivs f4, f3, f1 /* 80221AA0 0021D700 EC A4 01 32 */ fmuls f5, f4, f4 /* 80221AA4 0021D704 EC 65 01 32 */ fmuls f3, f5, f4 /* 80221AA8 0021D708 EC 25 28 2A */ fadds f1, f5, f5 /* 80221AAC 0021D70C EC C3 28 28 */ fsubs f6, f3, f5 /* 80221AB0 0021D710 EC 61 18 28 */ fsubs f3, f1, f3 /* 80221AB4 0021D714 EC 26 28 28 */ fsubs f1, f6, f5 /* 80221AB8 0021D718 EC 63 30 28 */ fsubs f3, f3, f6 /* 80221ABC 0021D71C EC 84 08 2A */ fadds f4, f4, f1 /* 80221AC0 0021D720 EC 22 18 28 */ fsubs f1, f2, f3 /* 80221AC4 0021D724 EC 21 00 32 */ fmuls f1, f1, f0 /* 80221AC8 0021D728 D0 23 00 1C */ stfs f1, 0x1c(r3) /* 80221ACC 0021D72C A0 05 00 02 */ lhz r0, 2(r5) /* 80221AD0 0021D730 54 00 10 3A */ slwi r0, r0, 2 /* 80221AD4 0021D734 7C 07 04 2E */ lfsx f0, r7, r0 /* 80221AD8 0021D738 EC 03 00 32 */ fmuls f0, f3, f0 /* 80221ADC 0021D73C EC 21 00 2A */ fadds f1, f1, f0 /* 80221AE0 0021D740 D0 23 00 1C */ stfs f1, 0x1c(r3) /* 80221AE4 0021D744 A0 04 00 06 */ lhz r0, 6(r4) /* 80221AE8 0021D748 54 00 10 3A */ slwi r0, r0, 2 /* 80221AEC 0021D74C 7C 06 04 2E */ lfsx f0, r6, r0 /* 80221AF0 0021D750 EC 04 00 32 */ fmuls f0, f4, f0 /* 80221AF4 0021D754 EC 21 00 2A */ fadds f1, f1, f0 /* 80221AF8 0021D758 D0 23 00 1C */ stfs f1, 0x1c(r3) /* 80221AFC 0021D75C A0 05 00 04 */ lhz r0, 4(r5) /* 80221B00 0021D760 54 00 10 3A */ slwi r0, r0, 2 /* 80221B04 0021D764 7C 06 04 2E */ lfsx f0, r6, r0 /* 80221B08 0021D768 EC 06 00 32 */ fmuls f0, f6, f0 /* 80221B0C 0021D76C EC 01 00 2A */ fadds f0, f1, f0 /* 80221B10 0021D770 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80221B14 0021D774 4E 80 00 20 */ blr lbl_80221B18: /* 80221B18 0021D778 80 83 00 00 */ lwz r4, 0(r3) /* 80221B1C 0021D77C 54 C0 13 BA */ rlwinm r0, r6, 2, 0xe, 0x1d /* 80221B20 0021D780 7C 04 04 2E */ lfsx f0, r4, r0 /* 80221B24 0021D784 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80221B28 0021D788 4E 80 00 20 */ blr .global func_80221B2C func_80221B2C: /* 80221B2C 0021D78C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80221B30 0021D790 7C 08 02 A6 */ mflr r0 /* 80221B34 0021D794 90 01 00 34 */ stw r0, 0x34(r1) /* 80221B38 0021D798 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80221B3C 0021D79C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80221B40 0021D7A0 FF E0 08 90 */ fmr f31, f1 /* 80221B44 0021D7A4 7C 86 23 78 */ mr r6, r4 /* 80221B48 0021D7A8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80221B4C 0021D7AC 7C 7F 1B 78 */ mr r31, r3 /* 80221B50 0021D7B0 80 E3 00 10 */ lwz r7, 0x10(r3) /* 80221B54 0021D7B4 2C 07 00 00 */ cmpwi r7, 0 /* 80221B58 0021D7B8 40 82 00 A8 */ bne lbl_80221C00 /* 80221B5C 0021D7BC C0 03 00 18 */ lfs f0, 0x18(r3) /* 80221B60 0021D7C0 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 80221B64 0021D7C4 40 82 00 0C */ bne lbl_80221B70 /* 80221B68 0021D7C8 C0 23 00 1C */ lfs f1, 0x1c(r3) /* 80221B6C 0021D7CC 48 00 01 A0 */ b lbl_80221D0C lbl_80221B70: /* 80221B70 0021D7D0 A0 83 00 16 */ lhz r4, 0x16(r3) /* 80221B74 0021D7D4 3C 00 43 30 */ lis r0, 0x4330 /* 80221B78 0021D7D8 90 01 00 08 */ stw r0, 8(r1) /* 80221B7C 0021D7DC 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80221B80 0021D7E0 C8 62 9C 00 */ lfd f3, lbl_80642200-_SDA2_BASE_(r2) /* 80221B84 0021D7E4 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80221B88 0021D7E8 C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 80221B8C 0021D7EC 90 01 00 0C */ stw r0, 0xc(r1) /* 80221B90 0021D7F0 C8 41 00 08 */ lfd f2, 8(r1) /* 80221B94 0021D7F4 EC 42 18 28 */ fsubs f2, f2, f3 /* 80221B98 0021D7F8 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80221B9C 0021D7FC EC 00 08 2A */ fadds f0, f0, f1 /* 80221BA0 0021D800 FC 00 00 1E */ fctiwz f0, f0 /* 80221BA4 0021D804 D8 01 00 10 */ stfd f0, 0x10(r1) /* 80221BA8 0021D808 80 01 00 14 */ lwz r0, 0x14(r1) /* 80221BAC 0021D80C 2C 00 00 00 */ cmpwi r0, 0 /* 80221BB0 0021D810 41 81 00 14 */ bgt lbl_80221BC4 /* 80221BB4 0021D814 80 83 00 00 */ lwz r4, 0(r3) /* 80221BB8 0021D818 C0 04 00 00 */ lfs f0, 0(r4) /* 80221BBC 0021D81C D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80221BC0 0021D820 48 00 00 38 */ b lbl_80221BF8 lbl_80221BC4: /* 80221BC4 0021D824 A0 83 00 08 */ lhz r4, 8(r3) /* 80221BC8 0021D828 7C 00 20 00 */ cmpw r0, r4 /* 80221BCC 0021D82C 41 80 00 1C */ blt lbl_80221BE8 /* 80221BD0 0021D830 38 04 FF FF */ addi r0, r4, -1 /* 80221BD4 0021D834 80 83 00 00 */ lwz r4, 0(r3) /* 80221BD8 0021D838 54 00 10 3A */ slwi r0, r0, 2 /* 80221BDC 0021D83C 7C 04 04 2E */ lfsx f0, r4, r0 /* 80221BE0 0021D840 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80221BE4 0021D844 48 00 00 14 */ b lbl_80221BF8 lbl_80221BE8: /* 80221BE8 0021D848 80 83 00 00 */ lwz r4, 0(r3) /* 80221BEC 0021D84C 54 00 10 3A */ slwi r0, r0, 2 /* 80221BF0 0021D850 7C 04 04 2E */ lfsx f0, r4, r0 /* 80221BF4 0021D854 D0 03 00 1C */ stfs f0, 0x1c(r3) lbl_80221BF8: /* 80221BF8 0021D858 C0 23 00 1C */ lfs f1, 0x1c(r3) /* 80221BFC 0021D85C 48 00 01 10 */ b lbl_80221D0C lbl_80221C00: /* 80221C00 0021D860 C0 02 9C 14 */ lfs f0, lbl_80642214-_SDA2_BASE_(r2) /* 80221C04 0021D864 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80221C08 0021D868 4C 40 13 82 */ cror 2, 0, 2 /* 80221C0C 0021D86C 40 82 00 24 */ bne lbl_80221C30 /* 80221C10 0021D870 A0 07 00 00 */ lhz r0, 0(r7) /* 80221C14 0021D874 2C 00 00 00 */ cmpwi r0, 0 /* 80221C18 0021D878 40 82 00 18 */ bne lbl_80221C30 /* 80221C1C 0021D87C A0 07 00 02 */ lhz r0, 2(r7) /* 80221C20 0021D880 80 63 00 00 */ lwz r3, 0(r3) /* 80221C24 0021D884 54 00 10 3A */ slwi r0, r0, 2 /* 80221C28 0021D888 7C 23 04 2E */ lfsx f1, r3, r0 /* 80221C2C 0021D88C 48 00 00 E0 */ b lbl_80221D0C lbl_80221C30: /* 80221C30 0021D890 C0 03 00 0C */ lfs f0, 0xc(r3) /* 80221C34 0021D894 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80221C38 0021D898 4C 41 13 82 */ cror 2, 1, 2 /* 80221C3C 0021D89C 40 82 00 28 */ bne lbl_80221C64 /* 80221C40 0021D8A0 A0 83 00 14 */ lhz r4, 0x14(r3) /* 80221C44 0021D8A4 80 A3 00 00 */ lwz r5, 0(r3) /* 80221C48 0021D8A8 38 04 FF FF */ addi r0, r4, -1 /* 80221C4C 0021D8AC 1C 00 00 0C */ mulli r0, r0, 0xc /* 80221C50 0021D8B0 7C 67 02 14 */ add r3, r7, r0 /* 80221C54 0021D8B4 A0 03 00 02 */ lhz r0, 2(r3) /* 80221C58 0021D8B8 54 00 10 3A */ slwi r0, r0, 2 /* 80221C5C 0021D8BC 7C 25 04 2E */ lfsx f1, r5, r0 /* 80221C60 0021D8C0 48 00 00 AC */ b lbl_80221D0C lbl_80221C64: /* 80221C64 0021D8C4 C0 43 00 18 */ lfs f2, 0x18(r3) /* 80221C68 0021D8C8 C0 02 9C 18 */ lfs f0, lbl_80642218-_SDA2_BASE_(r2) /* 80221C6C 0021D8CC EC 41 10 28 */ fsubs f2, f1, f2 /* 80221C70 0021D8D0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80221C74 0021D8D4 40 80 00 18 */ bge lbl_80221C8C /* 80221C78 0021D8D8 C0 02 9C 1C */ lfs f0, lbl_8064221C-_SDA2_BASE_(r2) /* 80221C7C 0021D8DC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80221C80 0021D8E0 40 81 00 0C */ ble lbl_80221C8C /* 80221C84 0021D8E4 C0 23 00 1C */ lfs f1, 0x1c(r3) /* 80221C88 0021D8E8 48 00 00 84 */ b lbl_80221D0C lbl_80221C8C: /* 80221C8C 0021D8EC A0 03 00 16 */ lhz r0, 0x16(r3) /* 80221C90 0021D8F0 2C 00 00 00 */ cmpwi r0, 0 /* 80221C94 0021D8F4 41 82 00 20 */ beq lbl_80221CB4 /* 80221C98 0021D8F8 1C 00 00 0C */ mulli r0, r0, 0xc /* 80221C9C 0021D8FC 7C 87 02 14 */ add r4, r7, r0 /* 80221CA0 0021D900 C0 04 00 08 */ lfs f0, 8(r4) /* 80221CA4 0021D904 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80221CA8 0021D908 40 80 00 0C */ bge lbl_80221CB4 /* 80221CAC 0021D90C 38 00 00 00 */ li r0, 0 /* 80221CB0 0021D910 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80221CB4: /* 80221CB4 0021D914 A0 03 00 16 */ lhz r0, 0x16(r3) /* 80221CB8 0021D918 80 83 00 10 */ lwz r4, 0x10(r3) /* 80221CBC 0021D91C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80221CC0 0021D920 7C 84 02 14 */ add r4, r4, r0 /* 80221CC4 0021D924 C0 04 00 14 */ lfs f0, 0x14(r4) /* 80221CC8 0021D928 38 A4 00 0C */ addi r5, r4, 0xc /* 80221CCC 0021D92C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80221CD0 0021D930 40 80 00 28 */ bge lbl_80221CF8 /* 80221CD4 0021D934 48 00 00 14 */ b lbl_80221CE8 lbl_80221CD8: /* 80221CD8 0021D938 A0 83 00 16 */ lhz r4, 0x16(r3) /* 80221CDC 0021D93C 38 A5 00 0C */ addi r5, r5, 0xc /* 80221CE0 0021D940 38 04 00 01 */ addi r0, r4, 1 /* 80221CE4 0021D944 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80221CE8: /* 80221CE8 0021D948 C0 05 00 08 */ lfs f0, 8(r5) /* 80221CEC 0021D94C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80221CF0 0021D950 41 80 FF E8 */ blt lbl_80221CD8 /* 80221CF4 0021D954 38 85 FF F4 */ addi r4, r5, -12 lbl_80221CF8: /* 80221CF8 0021D958 FC 20 F8 90 */ fmr f1, f31 /* 80221CFC 0021D95C 7F E3 FB 78 */ mr r3, r31 /* 80221D00 0021D960 4B FF FD 09 */ bl func_80221A08 /* 80221D04 0021D964 D3 FF 00 18 */ stfs f31, 0x18(r31) /* 80221D08 0021D968 C0 3F 00 1C */ lfs f1, 0x1c(r31) lbl_80221D0C: /* 80221D0C 0021D96C E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80221D10 0021D970 80 01 00 34 */ lwz r0, 0x34(r1) /* 80221D14 0021D974 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80221D18 0021D978 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80221D1C 0021D97C 7C 08 03 A6 */ mtlr r0 /* 80221D20 0021D980 38 21 00 30 */ addi r1, r1, 0x30 /* 80221D24 0021D984 4E 80 00 20 */ blr .global func_80221D28 func_80221D28: /* 80221D28 0021D988 94 21 FF 90 */ stwu r1, -0x70(r1) /* 80221D2C 0021D98C A0 04 00 00 */ lhz r0, 0(r4) /* 80221D30 0021D990 A0 C4 00 02 */ lhz r6, 2(r4) /* 80221D34 0021D994 2C 00 00 01 */ cmpwi r0, 1 /* 80221D38 0021D998 41 82 00 18 */ beq lbl_80221D50 /* 80221D3C 0021D99C 40 80 00 08 */ bge lbl_80221D44 /* 80221D40 0021D9A0 48 00 02 2C */ b lbl_80221F6C lbl_80221D44: /* 80221D44 0021D9A4 2C 00 00 03 */ cmpwi r0, 3 /* 80221D48 0021D9A8 40 80 02 24 */ bge lbl_80221F6C /* 80221D4C 0021D9AC 48 00 00 B4 */ b lbl_80221E00 lbl_80221D50: /* 80221D50 0021D9B0 C0 44 00 08 */ lfs f2, 8(r4) /* 80221D54 0021D9B4 54 C0 1B 78 */ rlwinm r0, r6, 3, 0xd, 0x1c /* 80221D58 0021D9B8 C0 05 00 08 */ lfs f0, 8(r5) /* 80221D5C 0021D9BC EC 61 10 28 */ fsubs f3, f1, f2 /* 80221D60 0021D9C0 80 C3 00 00 */ lwz r6, 0(r3) /* 80221D64 0021D9C4 EC 00 10 28 */ fsubs f0, f0, f2 /* 80221D68 0021D9C8 C0 42 9B F8 */ lfs f2, lbl_806421F8-_SDA2_BASE_(r2) /* 80221D6C 0021D9CC 7C 86 02 14 */ add r4, r6, r0 /* 80221D70 0021D9D0 C0 24 00 04 */ lfs f1, 4(r4) /* 80221D74 0021D9D4 EC 83 00 24 */ fdivs f4, f3, f0 /* 80221D78 0021D9D8 7C 06 04 2E */ lfsx f0, r6, r0 /* 80221D7C 0021D9DC EC 42 20 28 */ fsubs f2, f2, f4 /* 80221D80 0021D9E0 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80221D84 0021D9E4 EC 00 00 B2 */ fmuls f0, f0, f2 /* 80221D88 0021D9E8 D0 21 00 34 */ stfs f1, 0x34(r1) /* 80221D8C 0021D9EC D0 01 00 30 */ stfs f0, 0x30(r1) /* 80221D90 0021D9F0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80221D94 0021D9F4 80 81 00 30 */ lwz r4, 0x30(r1) /* 80221D98 0021D9F8 90 01 00 64 */ stw r0, 0x64(r1) /* 80221D9C 0021D9FC 90 81 00 60 */ stw r4, 0x60(r1) /* 80221DA0 0021DA00 C0 41 00 64 */ lfs f2, 0x64(r1) /* 80221DA4 0021DA04 C0 61 00 60 */ lfs f3, 0x60(r1) /* 80221DA8 0021DA08 D0 43 00 20 */ stfs f2, 0x20(r3) /* 80221DAC 0021DA0C D0 63 00 1C */ stfs f3, 0x1c(r3) /* 80221DB0 0021DA10 A0 05 00 02 */ lhz r0, 2(r5) /* 80221DB4 0021DA14 54 00 18 38 */ slwi r0, r0, 3 /* 80221DB8 0021DA18 7C 86 02 14 */ add r4, r6, r0 /* 80221DBC 0021DA1C 7C 06 04 2E */ lfsx f0, r6, r0 /* 80221DC0 0021DA20 C0 24 00 04 */ lfs f1, 4(r4) /* 80221DC4 0021DA24 EC 00 01 32 */ fmuls f0, f0, f4 /* 80221DC8 0021DA28 EC 21 01 32 */ fmuls f1, f1, f4 /* 80221DCC 0021DA2C D0 01 00 28 */ stfs f0, 0x28(r1) /* 80221DD0 0021DA30 D0 21 00 2C */ stfs f1, 0x2c(r1) /* 80221DD4 0021DA34 80 81 00 28 */ lwz r4, 0x28(r1) /* 80221DD8 0021DA38 80 01 00 2C */ lwz r0, 0x2c(r1) /* 80221DDC 0021DA3C 90 81 00 58 */ stw r4, 0x58(r1) /* 80221DE0 0021DA40 90 01 00 5C */ stw r0, 0x5c(r1) /* 80221DE4 0021DA44 C0 21 00 58 */ lfs f1, 0x58(r1) /* 80221DE8 0021DA48 C0 01 00 5C */ lfs f0, 0x5c(r1) /* 80221DEC 0021DA4C EC 23 08 2A */ fadds f1, f3, f1 /* 80221DF0 0021DA50 EC 02 00 2A */ fadds f0, f2, f0 /* 80221DF4 0021DA54 D0 23 00 1C */ stfs f1, 0x1c(r3) /* 80221DF8 0021DA58 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80221DFC 0021DA5C 48 00 01 88 */ b lbl_80221F84 lbl_80221E00: /* 80221E00 0021DA60 C0 44 00 08 */ lfs f2, 8(r4) /* 80221E04 0021DA64 54 C0 1B 78 */ rlwinm r0, r6, 3, 0xd, 0x1c /* 80221E08 0021DA68 C0 05 00 08 */ lfs f0, 8(r5) /* 80221E0C 0021DA6C EC 21 10 28 */ fsubs f1, f1, f2 /* 80221E10 0021DA70 81 03 00 00 */ lwz r8, 0(r3) /* 80221E14 0021DA74 EC 00 10 28 */ fsubs f0, f0, f2 /* 80221E18 0021DA78 C0 82 9B F8 */ lfs f4, lbl_806421F8-_SDA2_BASE_(r2) /* 80221E1C 0021DA7C 7C E8 02 14 */ add r7, r8, r0 /* 80221E20 0021DA80 80 C3 00 04 */ lwz r6, 4(r3) /* 80221E24 0021DA84 EC C1 00 24 */ fdivs f6, f1, f0 /* 80221E28 0021DA88 C0 47 00 04 */ lfs f2, 4(r7) /* 80221E2C 0021DA8C 7C 28 04 2E */ lfsx f1, r8, r0 /* 80221E30 0021DA90 EC E6 01 B2 */ fmuls f7, f6, f6 /* 80221E34 0021DA94 EC A7 01 B2 */ fmuls f5, f7, f6 /* 80221E38 0021DA98 EC 67 38 2A */ fadds f3, f7, f7 /* 80221E3C 0021DA9C EC 05 38 28 */ fsubs f0, f5, f7 /* 80221E40 0021DAA0 EC A3 28 28 */ fsubs f5, f3, f5 /* 80221E44 0021DAA4 EC 60 38 28 */ fsubs f3, f0, f7 /* 80221E48 0021DAA8 EC A5 00 28 */ fsubs f5, f5, f0 /* 80221E4C 0021DAAC EC C6 18 2A */ fadds f6, f6, f3 /* 80221E50 0021DAB0 EC 64 28 28 */ fsubs f3, f4, f5 /* 80221E54 0021DAB4 EC 42 00 F2 */ fmuls f2, f2, f3 /* 80221E58 0021DAB8 EC 21 00 F2 */ fmuls f1, f1, f3 /* 80221E5C 0021DABC D0 41 00 24 */ stfs f2, 0x24(r1) /* 80221E60 0021DAC0 D0 21 00 20 */ stfs f1, 0x20(r1) /* 80221E64 0021DAC4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80221E68 0021DAC8 80 E1 00 20 */ lwz r7, 0x20(r1) /* 80221E6C 0021DACC 90 01 00 54 */ stw r0, 0x54(r1) /* 80221E70 0021DAD0 90 E1 00 50 */ stw r7, 0x50(r1) /* 80221E74 0021DAD4 C0 61 00 54 */ lfs f3, 0x54(r1) /* 80221E78 0021DAD8 C0 81 00 50 */ lfs f4, 0x50(r1) /* 80221E7C 0021DADC D0 63 00 20 */ stfs f3, 0x20(r3) /* 80221E80 0021DAE0 D0 83 00 1C */ stfs f4, 0x1c(r3) /* 80221E84 0021DAE4 A0 05 00 02 */ lhz r0, 2(r5) /* 80221E88 0021DAE8 54 00 18 38 */ slwi r0, r0, 3 /* 80221E8C 0021DAEC 7C E8 02 14 */ add r7, r8, r0 /* 80221E90 0021DAF0 7C 28 04 2E */ lfsx f1, r8, r0 /* 80221E94 0021DAF4 C0 47 00 04 */ lfs f2, 4(r7) /* 80221E98 0021DAF8 EC 21 01 72 */ fmuls f1, f1, f5 /* 80221E9C 0021DAFC EC 42 01 72 */ fmuls f2, f2, f5 /* 80221EA0 0021DB00 D0 21 00 18 */ stfs f1, 0x18(r1) /* 80221EA4 0021DB04 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 80221EA8 0021DB08 80 E1 00 18 */ lwz r7, 0x18(r1) /* 80221EAC 0021DB0C 80 01 00 1C */ lwz r0, 0x1c(r1) /* 80221EB0 0021DB10 90 E1 00 48 */ stw r7, 0x48(r1) /* 80221EB4 0021DB14 90 01 00 4C */ stw r0, 0x4c(r1) /* 80221EB8 0021DB18 C0 41 00 48 */ lfs f2, 0x48(r1) /* 80221EBC 0021DB1C C0 21 00 4C */ lfs f1, 0x4c(r1) /* 80221EC0 0021DB20 EC 84 10 2A */ fadds f4, f4, f2 /* 80221EC4 0021DB24 EC 63 08 2A */ fadds f3, f3, f1 /* 80221EC8 0021DB28 D0 83 00 1C */ stfs f4, 0x1c(r3) /* 80221ECC 0021DB2C D0 63 00 20 */ stfs f3, 0x20(r3) /* 80221ED0 0021DB30 A0 04 00 06 */ lhz r0, 6(r4) /* 80221ED4 0021DB34 54 00 18 38 */ slwi r0, r0, 3 /* 80221ED8 0021DB38 7C 86 02 14 */ add r4, r6, r0 /* 80221EDC 0021DB3C 7C 26 04 2E */ lfsx f1, r6, r0 /* 80221EE0 0021DB40 C0 44 00 04 */ lfs f2, 4(r4) /* 80221EE4 0021DB44 EC 21 01 B2 */ fmuls f1, f1, f6 /* 80221EE8 0021DB48 EC 42 01 B2 */ fmuls f2, f2, f6 /* 80221EEC 0021DB4C D0 21 00 10 */ stfs f1, 0x10(r1) /* 80221EF0 0021DB50 D0 41 00 14 */ stfs f2, 0x14(r1) /* 80221EF4 0021DB54 80 81 00 10 */ lwz r4, 0x10(r1) /* 80221EF8 0021DB58 80 01 00 14 */ lwz r0, 0x14(r1) /* 80221EFC 0021DB5C 90 81 00 40 */ stw r4, 0x40(r1) /* 80221F00 0021DB60 90 01 00 44 */ stw r0, 0x44(r1) /* 80221F04 0021DB64 C0 41 00 40 */ lfs f2, 0x40(r1) /* 80221F08 0021DB68 C0 21 00 44 */ lfs f1, 0x44(r1) /* 80221F0C 0021DB6C EC 84 10 2A */ fadds f4, f4, f2 /* 80221F10 0021DB70 EC 63 08 2A */ fadds f3, f3, f1 /* 80221F14 0021DB74 D0 83 00 1C */ stfs f4, 0x1c(r3) /* 80221F18 0021DB78 D0 63 00 20 */ stfs f3, 0x20(r3) /* 80221F1C 0021DB7C A0 05 00 04 */ lhz r0, 4(r5) /* 80221F20 0021DB80 54 00 18 38 */ slwi r0, r0, 3 /* 80221F24 0021DB84 7C 86 02 14 */ add r4, r6, r0 /* 80221F28 0021DB88 7C 26 04 2E */ lfsx f1, r6, r0 /* 80221F2C 0021DB8C C0 44 00 04 */ lfs f2, 4(r4) /* 80221F30 0021DB90 EC 42 00 32 */ fmuls f2, f2, f0 /* 80221F34 0021DB94 EC 01 00 32 */ fmuls f0, f1, f0 /* 80221F38 0021DB98 D0 41 00 0C */ stfs f2, 0xc(r1) /* 80221F3C 0021DB9C D0 01 00 08 */ stfs f0, 8(r1) /* 80221F40 0021DBA0 80 01 00 0C */ lwz r0, 0xc(r1) /* 80221F44 0021DBA4 80 81 00 08 */ lwz r4, 8(r1) /* 80221F48 0021DBA8 90 01 00 3C */ stw r0, 0x3c(r1) /* 80221F4C 0021DBAC 90 81 00 38 */ stw r4, 0x38(r1) /* 80221F50 0021DBB0 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 80221F54 0021DBB4 C0 21 00 38 */ lfs f1, 0x38(r1) /* 80221F58 0021DBB8 EC 03 00 2A */ fadds f0, f3, f0 /* 80221F5C 0021DBBC EC 24 08 2A */ fadds f1, f4, f1 /* 80221F60 0021DBC0 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80221F64 0021DBC4 D0 23 00 1C */ stfs f1, 0x1c(r3) /* 80221F68 0021DBC8 48 00 00 1C */ b lbl_80221F84 lbl_80221F6C: /* 80221F6C 0021DBCC 54 C0 1B 78 */ rlwinm r0, r6, 3, 0xd, 0x1c /* 80221F70 0021DBD0 80 83 00 00 */ lwz r4, 0(r3) /* 80221F74 0021DBD4 7C 04 04 6E */ lfsux f0, r4, r0 /* 80221F78 0021DBD8 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80221F7C 0021DBDC C0 04 00 04 */ lfs f0, 4(r4) /* 80221F80 0021DBE0 D0 03 00 20 */ stfs f0, 0x20(r3) lbl_80221F84: /* 80221F84 0021DBE4 38 21 00 70 */ addi r1, r1, 0x70 /* 80221F88 0021DBE8 4E 80 00 20 */ blr .global func_80221F8C func_80221F8C: /* 80221F8C 0021DBEC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80221F90 0021DBF0 7C 08 02 A6 */ mflr r0 /* 80221F94 0021DBF4 90 01 00 34 */ stw r0, 0x34(r1) /* 80221F98 0021DBF8 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80221F9C 0021DBFC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80221FA0 0021DC00 FF E0 08 90 */ fmr f31, f1 /* 80221FA4 0021DC04 7C 86 23 78 */ mr r6, r4 /* 80221FA8 0021DC08 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80221FAC 0021DC0C 7C 7F 1B 78 */ mr r31, r3 /* 80221FB0 0021DC10 80 E3 00 10 */ lwz r7, 0x10(r3) /* 80221FB4 0021DC14 2C 07 00 00 */ cmpwi r7, 0 /* 80221FB8 0021DC18 40 82 00 C8 */ bne lbl_80222080 /* 80221FBC 0021DC1C C0 03 00 18 */ lfs f0, 0x18(r3) /* 80221FC0 0021DC20 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 80221FC4 0021DC24 40 82 00 10 */ bne lbl_80221FD4 /* 80221FC8 0021DC28 80 63 00 1C */ lwz r3, 0x1c(r3) /* 80221FCC 0021DC2C 80 9F 00 20 */ lwz r4, 0x20(r31) /* 80221FD0 0021DC30 48 00 01 D4 */ b lbl_802221A4 lbl_80221FD4: /* 80221FD4 0021DC34 A0 83 00 16 */ lhz r4, 0x16(r3) /* 80221FD8 0021DC38 3C 00 43 30 */ lis r0, 0x4330 /* 80221FDC 0021DC3C 90 01 00 08 */ stw r0, 8(r1) /* 80221FE0 0021DC40 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80221FE4 0021DC44 C8 62 9C 00 */ lfd f3, lbl_80642200-_SDA2_BASE_(r2) /* 80221FE8 0021DC48 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80221FEC 0021DC4C C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 80221FF0 0021DC50 90 01 00 0C */ stw r0, 0xc(r1) /* 80221FF4 0021DC54 C8 41 00 08 */ lfd f2, 8(r1) /* 80221FF8 0021DC58 EC 42 18 28 */ fsubs f2, f2, f3 /* 80221FFC 0021DC5C EC 21 00 B2 */ fmuls f1, f1, f2 /* 80222000 0021DC60 EC 00 08 2A */ fadds f0, f0, f1 /* 80222004 0021DC64 FC 00 00 1E */ fctiwz f0, f0 /* 80222008 0021DC68 D8 01 00 10 */ stfd f0, 0x10(r1) /* 8022200C 0021DC6C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80222010 0021DC70 2C 00 00 00 */ cmpwi r0, 0 /* 80222014 0021DC74 41 81 00 1C */ bgt lbl_80222030 /* 80222018 0021DC78 80 83 00 00 */ lwz r4, 0(r3) /* 8022201C 0021DC7C C0 04 00 00 */ lfs f0, 0(r4) /* 80222020 0021DC80 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80222024 0021DC84 C0 04 00 04 */ lfs f0, 4(r4) /* 80222028 0021DC88 D0 03 00 20 */ stfs f0, 0x20(r3) /* 8022202C 0021DC8C 48 00 00 48 */ b lbl_80222074 lbl_80222030: /* 80222030 0021DC90 A0 83 00 08 */ lhz r4, 8(r3) /* 80222034 0021DC94 7C 00 20 00 */ cmpw r0, r4 /* 80222038 0021DC98 41 80 00 24 */ blt lbl_8022205C /* 8022203C 0021DC9C 38 04 FF FF */ addi r0, r4, -1 /* 80222040 0021DCA0 80 83 00 00 */ lwz r4, 0(r3) /* 80222044 0021DCA4 54 00 18 38 */ slwi r0, r0, 3 /* 80222048 0021DCA8 7C 04 04 6E */ lfsux f0, r4, r0 /* 8022204C 0021DCAC D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80222050 0021DCB0 C0 04 00 04 */ lfs f0, 4(r4) /* 80222054 0021DCB4 D0 03 00 20 */ stfs f0, 0x20(r3) /* 80222058 0021DCB8 48 00 00 1C */ b lbl_80222074 lbl_8022205C: /* 8022205C 0021DCBC 54 00 18 38 */ slwi r0, r0, 3 /* 80222060 0021DCC0 80 83 00 00 */ lwz r4, 0(r3) /* 80222064 0021DCC4 7C 04 04 6E */ lfsux f0, r4, r0 /* 80222068 0021DCC8 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 8022206C 0021DCCC C0 04 00 04 */ lfs f0, 4(r4) /* 80222070 0021DCD0 D0 03 00 20 */ stfs f0, 0x20(r3) lbl_80222074: /* 80222074 0021DCD4 80 63 00 1C */ lwz r3, 0x1c(r3) /* 80222078 0021DCD8 80 9F 00 20 */ lwz r4, 0x20(r31) /* 8022207C 0021DCDC 48 00 01 28 */ b lbl_802221A4 lbl_80222080: /* 80222080 0021DCE0 C0 02 9C 14 */ lfs f0, lbl_80642214-_SDA2_BASE_(r2) /* 80222084 0021DCE4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222088 0021DCE8 4C 40 13 82 */ cror 2, 0, 2 /* 8022208C 0021DCEC 40 82 00 2C */ bne lbl_802220B8 /* 80222090 0021DCF0 A0 07 00 00 */ lhz r0, 0(r7) /* 80222094 0021DCF4 2C 00 00 00 */ cmpwi r0, 0 /* 80222098 0021DCF8 40 82 00 20 */ bne lbl_802220B8 /* 8022209C 0021DCFC A0 07 00 02 */ lhz r0, 2(r7) /* 802220A0 0021DD00 80 63 00 00 */ lwz r3, 0(r3) /* 802220A4 0021DD04 54 00 18 38 */ slwi r0, r0, 3 /* 802220A8 0021DD08 7C 83 02 14 */ add r4, r3, r0 /* 802220AC 0021DD0C 7C 63 00 2E */ lwzx r3, r3, r0 /* 802220B0 0021DD10 80 84 00 04 */ lwz r4, 4(r4) /* 802220B4 0021DD14 48 00 00 F0 */ b lbl_802221A4 lbl_802220B8: /* 802220B8 0021DD18 C0 03 00 0C */ lfs f0, 0xc(r3) /* 802220BC 0021DD1C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802220C0 0021DD20 4C 41 13 82 */ cror 2, 1, 2 /* 802220C4 0021DD24 40 82 00 30 */ bne lbl_802220F4 /* 802220C8 0021DD28 A0 83 00 14 */ lhz r4, 0x14(r3) /* 802220CC 0021DD2C 80 A3 00 00 */ lwz r5, 0(r3) /* 802220D0 0021DD30 38 04 FF FF */ addi r0, r4, -1 /* 802220D4 0021DD34 1C 00 00 0C */ mulli r0, r0, 0xc /* 802220D8 0021DD38 7C 67 02 14 */ add r3, r7, r0 /* 802220DC 0021DD3C A0 03 00 02 */ lhz r0, 2(r3) /* 802220E0 0021DD40 54 00 18 38 */ slwi r0, r0, 3 /* 802220E4 0021DD44 7C 85 02 14 */ add r4, r5, r0 /* 802220E8 0021DD48 7C 65 00 2E */ lwzx r3, r5, r0 /* 802220EC 0021DD4C 80 84 00 04 */ lwz r4, 4(r4) /* 802220F0 0021DD50 48 00 00 B4 */ b lbl_802221A4 lbl_802220F4: /* 802220F4 0021DD54 C0 43 00 18 */ lfs f2, 0x18(r3) /* 802220F8 0021DD58 C0 02 9C 18 */ lfs f0, lbl_80642218-_SDA2_BASE_(r2) /* 802220FC 0021DD5C EC 41 10 28 */ fsubs f2, f1, f2 /* 80222100 0021DD60 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80222104 0021DD64 40 80 00 1C */ bge lbl_80222120 /* 80222108 0021DD68 C0 02 9C 1C */ lfs f0, lbl_8064221C-_SDA2_BASE_(r2) /* 8022210C 0021DD6C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80222110 0021DD70 40 81 00 10 */ ble lbl_80222120 /* 80222114 0021DD74 80 63 00 1C */ lwz r3, 0x1c(r3) /* 80222118 0021DD78 80 9F 00 20 */ lwz r4, 0x20(r31) /* 8022211C 0021DD7C 48 00 00 88 */ b lbl_802221A4 lbl_80222120: /* 80222120 0021DD80 A0 03 00 16 */ lhz r0, 0x16(r3) /* 80222124 0021DD84 2C 00 00 00 */ cmpwi r0, 0 /* 80222128 0021DD88 41 82 00 20 */ beq lbl_80222148 /* 8022212C 0021DD8C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222130 0021DD90 7C 87 02 14 */ add r4, r7, r0 /* 80222134 0021DD94 C0 04 00 08 */ lfs f0, 8(r4) /* 80222138 0021DD98 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8022213C 0021DD9C 40 80 00 0C */ bge lbl_80222148 /* 80222140 0021DDA0 38 00 00 00 */ li r0, 0 /* 80222144 0021DDA4 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80222148: /* 80222148 0021DDA8 A0 03 00 16 */ lhz r0, 0x16(r3) /* 8022214C 0021DDAC 80 83 00 10 */ lwz r4, 0x10(r3) /* 80222150 0021DDB0 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222154 0021DDB4 7C 84 02 14 */ add r4, r4, r0 /* 80222158 0021DDB8 C0 04 00 14 */ lfs f0, 0x14(r4) /* 8022215C 0021DDBC 38 A4 00 0C */ addi r5, r4, 0xc /* 80222160 0021DDC0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222164 0021DDC4 40 80 00 28 */ bge lbl_8022218C /* 80222168 0021DDC8 48 00 00 14 */ b lbl_8022217C lbl_8022216C: /* 8022216C 0021DDCC A0 83 00 16 */ lhz r4, 0x16(r3) /* 80222170 0021DDD0 38 A5 00 0C */ addi r5, r5, 0xc /* 80222174 0021DDD4 38 04 00 01 */ addi r0, r4, 1 /* 80222178 0021DDD8 B0 03 00 16 */ sth r0, 0x16(r3) lbl_8022217C: /* 8022217C 0021DDDC C0 05 00 08 */ lfs f0, 8(r5) /* 80222180 0021DDE0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222184 0021DDE4 41 80 FF E8 */ blt lbl_8022216C /* 80222188 0021DDE8 38 85 FF F4 */ addi r4, r5, -12 lbl_8022218C: /* 8022218C 0021DDEC FC 20 F8 90 */ fmr f1, f31 /* 80222190 0021DDF0 7F E3 FB 78 */ mr r3, r31 /* 80222194 0021DDF4 4B FF FB 95 */ bl func_80221D28 /* 80222198 0021DDF8 D3 FF 00 18 */ stfs f31, 0x18(r31) /* 8022219C 0021DDFC 80 7F 00 1C */ lwz r3, 0x1c(r31) /* 802221A0 0021DE00 80 9F 00 20 */ lwz r4, 0x20(r31) lbl_802221A4: /* 802221A4 0021DE04 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 802221A8 0021DE08 80 01 00 34 */ lwz r0, 0x34(r1) /* 802221AC 0021DE0C CB E1 00 20 */ lfd f31, 0x20(r1) /* 802221B0 0021DE10 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802221B4 0021DE14 7C 08 03 A6 */ mtlr r0 /* 802221B8 0021DE18 38 21 00 30 */ addi r1, r1, 0x30 /* 802221BC 0021DE1C 4E 80 00 20 */ blr .global func_802221C0 func_802221C0: /* 802221C0 0021DE20 94 21 FF 70 */ stwu r1, -0x90(r1) /* 802221C4 0021DE24 7C 08 02 A6 */ mflr r0 /* 802221C8 0021DE28 90 01 00 94 */ stw r0, 0x94(r1) /* 802221CC 0021DE2C DB E1 00 80 */ stfd f31, 0x80(r1) /* 802221D0 0021DE30 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 /* 802221D4 0021DE34 DB C1 00 70 */ stfd f30, 0x70(r1) /* 802221D8 0021DE38 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 /* 802221DC 0021DE3C DB A1 00 60 */ stfd f29, 0x60(r1) /* 802221E0 0021DE40 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 /* 802221E4 0021DE44 93 E1 00 5C */ stw r31, 0x5c(r1) /* 802221E8 0021DE48 7C 7F 1B 78 */ mr r31, r3 /* 802221EC 0021DE4C 93 C1 00 58 */ stw r30, 0x58(r1) /* 802221F0 0021DE50 7C BE 2B 78 */ mr r30, r5 /* 802221F4 0021DE54 93 A1 00 54 */ stw r29, 0x54(r1) /* 802221F8 0021DE58 7C 9D 23 78 */ mr r29, r4 /* 802221FC 0021DE5C A0 04 00 00 */ lhz r0, 0(r4) /* 80222200 0021DE60 A0 C4 00 02 */ lhz r6, 2(r4) /* 80222204 0021DE64 2C 00 00 01 */ cmpwi r0, 1 /* 80222208 0021DE68 41 82 00 18 */ beq lbl_80222220 /* 8022220C 0021DE6C 40 80 00 08 */ bge lbl_80222214 /* 80222210 0021DE70 48 00 01 78 */ b lbl_80222388 lbl_80222214: /* 80222214 0021DE74 2C 00 00 03 */ cmpwi r0, 3 /* 80222218 0021DE78 40 80 01 70 */ bge lbl_80222388 /* 8022221C 0021DE7C 48 00 00 7C */ b lbl_80222298 lbl_80222220: /* 80222220 0021DE80 C0 64 00 08 */ lfs f3, 8(r4) /* 80222224 0021DE84 1C 06 00 0C */ mulli r0, r6, 0xc /* 80222228 0021DE88 C0 05 00 08 */ lfs f0, 8(r5) /* 8022222C 0021DE8C 38 81 00 44 */ addi r4, r1, 0x44 /* 80222230 0021DE90 EC 41 18 28 */ fsubs f2, f1, f3 /* 80222234 0021DE94 80 63 00 00 */ lwz r3, 0(r3) /* 80222238 0021DE98 EC 20 18 28 */ fsubs f1, f0, f3 /* 8022223C 0021DE9C C0 02 9B F8 */ lfs f0, lbl_806421F8-_SDA2_BASE_(r2) /* 80222240 0021DEA0 7C 63 02 14 */ add r3, r3, r0 /* 80222244 0021DEA4 EF E2 08 24 */ fdivs f31, f2, f1 /* 80222248 0021DEA8 EC 20 F8 28 */ fsubs f1, f0, f31 /* 8022224C 0021DEAC 48 05 AA C1 */ bl PSVECScale /* 80222250 0021DEB0 C0 01 00 44 */ lfs f0, 0x44(r1) /* 80222254 0021DEB4 FC 20 F8 90 */ fmr f1, f31 /* 80222258 0021DEB8 80 7F 00 00 */ lwz r3, 0(r31) /* 8022225C 0021DEBC 38 81 00 38 */ addi r4, r1, 0x38 /* 80222260 0021DEC0 D0 1F 00 1C */ stfs f0, 0x1c(r31) /* 80222264 0021DEC4 C0 01 00 48 */ lfs f0, 0x48(r1) /* 80222268 0021DEC8 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 8022226C 0021DECC C0 01 00 4C */ lfs f0, 0x4c(r1) /* 80222270 0021DED0 D0 1F 00 24 */ stfs f0, 0x24(r31) /* 80222274 0021DED4 A0 1E 00 02 */ lhz r0, 2(r30) /* 80222278 0021DED8 1C 00 00 0C */ mulli r0, r0, 0xc /* 8022227C 0021DEDC 7C 63 02 14 */ add r3, r3, r0 /* 80222280 0021DEE0 48 05 AA 8D */ bl PSVECScale /* 80222284 0021DEE4 38 7F 00 1C */ addi r3, r31, 0x1c /* 80222288 0021DEE8 38 81 00 38 */ addi r4, r1, 0x38 /* 8022228C 0021DEEC 7C 65 1B 78 */ mr r5, r3 /* 80222290 0021DEF0 48 05 AA 35 */ bl PSVECAdd /* 80222294 0021DEF4 48 00 01 14 */ b lbl_802223A8 lbl_80222298: /* 80222298 0021DEF8 C0 64 00 08 */ lfs f3, 8(r4) /* 8022229C 0021DEFC 1C 06 00 0C */ mulli r0, r6, 0xc /* 802222A0 0021DF00 C0 05 00 08 */ lfs f0, 8(r5) /* 802222A4 0021DF04 38 81 00 2C */ addi r4, r1, 0x2c /* 802222A8 0021DF08 EC 41 18 28 */ fsubs f2, f1, f3 /* 802222AC 0021DF0C 80 63 00 00 */ lwz r3, 0(r3) /* 802222B0 0021DF10 EC 00 18 28 */ fsubs f0, f0, f3 /* 802222B4 0021DF14 C0 22 9B F8 */ lfs f1, lbl_806421F8-_SDA2_BASE_(r2) /* 802222B8 0021DF18 7C 63 02 14 */ add r3, r3, r0 /* 802222BC 0021DF1C EC 62 00 24 */ fdivs f3, f2, f0 /* 802222C0 0021DF20 EC 83 00 F2 */ fmuls f4, f3, f3 /* 802222C4 0021DF24 EC 44 00 F2 */ fmuls f2, f4, f3 /* 802222C8 0021DF28 EC 04 20 2A */ fadds f0, f4, f4 /* 802222CC 0021DF2C EF E2 20 28 */ fsubs f31, f2, f4 /* 802222D0 0021DF30 EC 40 10 28 */ fsubs f2, f0, f2 /* 802222D4 0021DF34 EC 1F 20 28 */ fsubs f0, f31, f4 /* 802222D8 0021DF38 EF C2 F8 28 */ fsubs f30, f2, f31 /* 802222DC 0021DF3C EF A3 00 2A */ fadds f29, f3, f0 /* 802222E0 0021DF40 EC 21 F0 28 */ fsubs f1, f1, f30 /* 802222E4 0021DF44 48 05 AA 29 */ bl PSVECScale /* 802222E8 0021DF48 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 802222EC 0021DF4C FC 20 F0 90 */ fmr f1, f30 /* 802222F0 0021DF50 80 7F 00 00 */ lwz r3, 0(r31) /* 802222F4 0021DF54 38 81 00 20 */ addi r4, r1, 0x20 /* 802222F8 0021DF58 D0 1F 00 1C */ stfs f0, 0x1c(r31) /* 802222FC 0021DF5C C0 01 00 30 */ lfs f0, 0x30(r1) /* 80222300 0021DF60 D0 1F 00 20 */ stfs f0, 0x20(r31) /* 80222304 0021DF64 C0 01 00 34 */ lfs f0, 0x34(r1) /* 80222308 0021DF68 D0 1F 00 24 */ stfs f0, 0x24(r31) /* 8022230C 0021DF6C A0 1E 00 02 */ lhz r0, 2(r30) /* 80222310 0021DF70 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222314 0021DF74 7C 63 02 14 */ add r3, r3, r0 /* 80222318 0021DF78 48 05 A9 F5 */ bl PSVECScale /* 8022231C 0021DF7C 38 7F 00 1C */ addi r3, r31, 0x1c /* 80222320 0021DF80 38 81 00 20 */ addi r4, r1, 0x20 /* 80222324 0021DF84 7C 65 1B 78 */ mr r5, r3 /* 80222328 0021DF88 48 05 A9 9D */ bl PSVECAdd /* 8022232C 0021DF8C A0 1D 00 06 */ lhz r0, 6(r29) /* 80222330 0021DF90 FC 20 E8 90 */ fmr f1, f29 /* 80222334 0021DF94 80 7F 00 04 */ lwz r3, 4(r31) /* 80222338 0021DF98 38 81 00 14 */ addi r4, r1, 0x14 /* 8022233C 0021DF9C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222340 0021DFA0 7C 63 02 14 */ add r3, r3, r0 /* 80222344 0021DFA4 48 05 A9 C9 */ bl PSVECScale /* 80222348 0021DFA8 38 7F 00 1C */ addi r3, r31, 0x1c /* 8022234C 0021DFAC 38 81 00 14 */ addi r4, r1, 0x14 /* 80222350 0021DFB0 7C 65 1B 78 */ mr r5, r3 /* 80222354 0021DFB4 48 05 A9 71 */ bl PSVECAdd /* 80222358 0021DFB8 A0 1E 00 04 */ lhz r0, 4(r30) /* 8022235C 0021DFBC FC 20 F8 90 */ fmr f1, f31 /* 80222360 0021DFC0 80 7F 00 04 */ lwz r3, 4(r31) /* 80222364 0021DFC4 38 81 00 08 */ addi r4, r1, 8 /* 80222368 0021DFC8 1C 00 00 0C */ mulli r0, r0, 0xc /* 8022236C 0021DFCC 7C 63 02 14 */ add r3, r3, r0 /* 80222370 0021DFD0 48 05 A9 9D */ bl PSVECScale /* 80222374 0021DFD4 38 7F 00 1C */ addi r3, r31, 0x1c /* 80222378 0021DFD8 38 81 00 08 */ addi r4, r1, 8 /* 8022237C 0021DFDC 7C 65 1B 78 */ mr r5, r3 /* 80222380 0021DFE0 48 05 A9 45 */ bl PSVECAdd /* 80222384 0021DFE4 48 00 00 24 */ b lbl_802223A8 lbl_80222388: /* 80222388 0021DFE8 1C 06 00 0C */ mulli r0, r6, 0xc /* 8022238C 0021DFEC 80 83 00 00 */ lwz r4, 0(r3) /* 80222390 0021DFF0 7C 04 04 6E */ lfsux f0, r4, r0 /* 80222394 0021DFF4 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 80222398 0021DFF8 C0 04 00 04 */ lfs f0, 4(r4) /* 8022239C 0021DFFC D0 03 00 20 */ stfs f0, 0x20(r3) /* 802223A0 0021E000 C0 04 00 08 */ lfs f0, 8(r4) /* 802223A4 0021E004 D0 03 00 24 */ stfs f0, 0x24(r3) lbl_802223A8: /* 802223A8 0021E008 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 /* 802223AC 0021E00C CB E1 00 80 */ lfd f31, 0x80(r1) /* 802223B0 0021E010 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 /* 802223B4 0021E014 CB C1 00 70 */ lfd f30, 0x70(r1) /* 802223B8 0021E018 E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 /* 802223BC 0021E01C CB A1 00 60 */ lfd f29, 0x60(r1) /* 802223C0 0021E020 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 802223C4 0021E024 83 C1 00 58 */ lwz r30, 0x58(r1) /* 802223C8 0021E028 80 01 00 94 */ lwz r0, 0x94(r1) /* 802223CC 0021E02C 83 A1 00 54 */ lwz r29, 0x54(r1) /* 802223D0 0021E030 7C 08 03 A6 */ mtlr r0 /* 802223D4 0021E034 38 21 00 90 */ addi r1, r1, 0x90 /* 802223D8 0021E038 4E 80 00 20 */ blr .global func_802223DC func_802223DC: /* 802223DC 0021E03C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802223E0 0021E040 7C 08 02 A6 */ mflr r0 /* 802223E4 0021E044 90 01 00 34 */ stw r0, 0x34(r1) /* 802223E8 0021E048 DB E1 00 20 */ stfd f31, 0x20(r1) /* 802223EC 0021E04C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 802223F0 0021E050 FF E0 08 90 */ fmr f31, f1 /* 802223F4 0021E054 7C A6 2B 78 */ mr r6, r5 /* 802223F8 0021E058 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802223FC 0021E05C 7C 9F 23 78 */ mr r31, r4 /* 80222400 0021E060 93 C1 00 18 */ stw r30, 0x18(r1) /* 80222404 0021E064 7C 7E 1B 78 */ mr r30, r3 /* 80222408 0021E068 80 E4 00 10 */ lwz r7, 0x10(r4) /* 8022240C 0021E06C 2C 07 00 00 */ cmpwi r7, 0 /* 80222410 0021E070 40 82 01 00 */ bne lbl_80222510 /* 80222414 0021E074 C0 04 00 18 */ lfs f0, 0x18(r4) /* 80222418 0021E078 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 8022241C 0021E07C 40 82 00 20 */ bne lbl_8022243C /* 80222420 0021E080 C0 04 00 1C */ lfs f0, 0x1c(r4) /* 80222424 0021E084 D0 03 00 00 */ stfs f0, 0(r3) /* 80222428 0021E088 C0 04 00 20 */ lfs f0, 0x20(r4) /* 8022242C 0021E08C D0 03 00 04 */ stfs f0, 4(r3) /* 80222430 0021E090 C0 04 00 24 */ lfs f0, 0x24(r4) /* 80222434 0021E094 D0 03 00 08 */ stfs f0, 8(r3) /* 80222438 0021E098 48 00 02 3C */ b lbl_80222674 lbl_8022243C: /* 8022243C 0021E09C A0 A4 00 16 */ lhz r5, 0x16(r4) /* 80222440 0021E0A0 3C 00 43 30 */ lis r0, 0x4330 /* 80222444 0021E0A4 90 01 00 08 */ stw r0, 8(r1) /* 80222448 0021E0A8 54 A0 06 3E */ clrlwi r0, r5, 0x18 /* 8022244C 0021E0AC C8 62 9C 00 */ lfd f3, lbl_80642200-_SDA2_BASE_(r2) /* 80222450 0021E0B0 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80222454 0021E0B4 C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 80222458 0021E0B8 90 01 00 0C */ stw r0, 0xc(r1) /* 8022245C 0021E0BC C8 41 00 08 */ lfd f2, 8(r1) /* 80222460 0021E0C0 EC 42 18 28 */ fsubs f2, f2, f3 /* 80222464 0021E0C4 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80222468 0021E0C8 EC 00 08 2A */ fadds f0, f0, f1 /* 8022246C 0021E0CC FC 00 00 1E */ fctiwz f0, f0 /* 80222470 0021E0D0 D8 01 00 10 */ stfd f0, 0x10(r1) /* 80222474 0021E0D4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80222478 0021E0D8 2C 00 00 00 */ cmpwi r0, 0 /* 8022247C 0021E0DC 41 81 00 24 */ bgt lbl_802224A0 /* 80222480 0021E0E0 80 A4 00 00 */ lwz r5, 0(r4) /* 80222484 0021E0E4 C0 05 00 00 */ lfs f0, 0(r5) /* 80222488 0021E0E8 D0 04 00 1C */ stfs f0, 0x1c(r4) /* 8022248C 0021E0EC C0 05 00 04 */ lfs f0, 4(r5) /* 80222490 0021E0F0 D0 04 00 20 */ stfs f0, 0x20(r4) /* 80222494 0021E0F4 C0 05 00 08 */ lfs f0, 8(r5) /* 80222498 0021E0F8 D0 04 00 24 */ stfs f0, 0x24(r4) /* 8022249C 0021E0FC 48 00 00 58 */ b lbl_802224F4 lbl_802224A0: /* 802224A0 0021E100 A0 A4 00 08 */ lhz r5, 8(r4) /* 802224A4 0021E104 7C 00 28 00 */ cmpw r0, r5 /* 802224A8 0021E108 41 80 00 2C */ blt lbl_802224D4 /* 802224AC 0021E10C 38 05 FF FF */ addi r0, r5, -1 /* 802224B0 0021E110 80 A4 00 00 */ lwz r5, 0(r4) /* 802224B4 0021E114 1C 00 00 0C */ mulli r0, r0, 0xc /* 802224B8 0021E118 7C 05 04 6E */ lfsux f0, r5, r0 /* 802224BC 0021E11C D0 04 00 1C */ stfs f0, 0x1c(r4) /* 802224C0 0021E120 C0 05 00 04 */ lfs f0, 4(r5) /* 802224C4 0021E124 D0 04 00 20 */ stfs f0, 0x20(r4) /* 802224C8 0021E128 C0 05 00 08 */ lfs f0, 8(r5) /* 802224CC 0021E12C D0 04 00 24 */ stfs f0, 0x24(r4) /* 802224D0 0021E130 48 00 00 24 */ b lbl_802224F4 lbl_802224D4: /* 802224D4 0021E134 1C 00 00 0C */ mulli r0, r0, 0xc /* 802224D8 0021E138 80 A4 00 00 */ lwz r5, 0(r4) /* 802224DC 0021E13C 7C 05 04 6E */ lfsux f0, r5, r0 /* 802224E0 0021E140 D0 04 00 1C */ stfs f0, 0x1c(r4) /* 802224E4 0021E144 C0 05 00 04 */ lfs f0, 4(r5) /* 802224E8 0021E148 D0 04 00 20 */ stfs f0, 0x20(r4) /* 802224EC 0021E14C C0 05 00 08 */ lfs f0, 8(r5) /* 802224F0 0021E150 D0 04 00 24 */ stfs f0, 0x24(r4) lbl_802224F4: /* 802224F4 0021E154 C0 04 00 1C */ lfs f0, 0x1c(r4) /* 802224F8 0021E158 D0 03 00 00 */ stfs f0, 0(r3) /* 802224FC 0021E15C C0 04 00 20 */ lfs f0, 0x20(r4) /* 80222500 0021E160 D0 03 00 04 */ stfs f0, 4(r3) /* 80222504 0021E164 C0 04 00 24 */ lfs f0, 0x24(r4) /* 80222508 0021E168 D0 03 00 08 */ stfs f0, 8(r3) /* 8022250C 0021E16C 48 00 01 68 */ b lbl_80222674 lbl_80222510: /* 80222510 0021E170 C0 02 9C 14 */ lfs f0, lbl_80642214-_SDA2_BASE_(r2) /* 80222514 0021E174 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222518 0021E178 4C 40 13 82 */ cror 2, 0, 2 /* 8022251C 0021E17C 40 82 00 38 */ bne lbl_80222554 /* 80222520 0021E180 A0 07 00 00 */ lhz r0, 0(r7) /* 80222524 0021E184 2C 00 00 00 */ cmpwi r0, 0 /* 80222528 0021E188 40 82 00 2C */ bne lbl_80222554 /* 8022252C 0021E18C A0 07 00 02 */ lhz r0, 2(r7) /* 80222530 0021E190 80 84 00 00 */ lwz r4, 0(r4) /* 80222534 0021E194 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222538 0021E198 7C 04 04 6E */ lfsux f0, r4, r0 /* 8022253C 0021E19C D0 03 00 00 */ stfs f0, 0(r3) /* 80222540 0021E1A0 C0 04 00 04 */ lfs f0, 4(r4) /* 80222544 0021E1A4 D0 03 00 04 */ stfs f0, 4(r3) /* 80222548 0021E1A8 C0 04 00 08 */ lfs f0, 8(r4) /* 8022254C 0021E1AC D0 03 00 08 */ stfs f0, 8(r3) /* 80222550 0021E1B0 48 00 01 24 */ b lbl_80222674 lbl_80222554: /* 80222554 0021E1B4 C0 04 00 0C */ lfs f0, 0xc(r4) /* 80222558 0021E1B8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8022255C 0021E1BC 4C 41 13 82 */ cror 2, 1, 2 /* 80222560 0021E1C0 40 82 00 40 */ bne lbl_802225A0 /* 80222564 0021E1C4 A0 A4 00 14 */ lhz r5, 0x14(r4) /* 80222568 0021E1C8 80 C4 00 00 */ lwz r6, 0(r4) /* 8022256C 0021E1CC 38 05 FF FF */ addi r0, r5, -1 /* 80222570 0021E1D0 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222574 0021E1D4 7C 87 02 14 */ add r4, r7, r0 /* 80222578 0021E1D8 A0 04 00 02 */ lhz r0, 2(r4) /* 8022257C 0021E1DC 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222580 0021E1E0 7C 06 04 2E */ lfsx f0, r6, r0 /* 80222584 0021E1E4 7C 86 02 14 */ add r4, r6, r0 /* 80222588 0021E1E8 D0 03 00 00 */ stfs f0, 0(r3) /* 8022258C 0021E1EC C0 04 00 04 */ lfs f0, 4(r4) /* 80222590 0021E1F0 D0 03 00 04 */ stfs f0, 4(r3) /* 80222594 0021E1F4 C0 04 00 08 */ lfs f0, 8(r4) /* 80222598 0021E1F8 D0 03 00 08 */ stfs f0, 8(r3) /* 8022259C 0021E1FC 48 00 00 D8 */ b lbl_80222674 lbl_802225A0: /* 802225A0 0021E200 C0 44 00 18 */ lfs f2, 0x18(r4) /* 802225A4 0021E204 C0 02 9C 18 */ lfs f0, lbl_80642218-_SDA2_BASE_(r2) /* 802225A8 0021E208 EC 41 10 28 */ fsubs f2, f1, f2 /* 802225AC 0021E20C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802225B0 0021E210 40 80 00 2C */ bge lbl_802225DC /* 802225B4 0021E214 C0 02 9C 1C */ lfs f0, lbl_8064221C-_SDA2_BASE_(r2) /* 802225B8 0021E218 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802225BC 0021E21C 40 81 00 20 */ ble lbl_802225DC /* 802225C0 0021E220 C0 04 00 1C */ lfs f0, 0x1c(r4) /* 802225C4 0021E224 D0 03 00 00 */ stfs f0, 0(r3) /* 802225C8 0021E228 C0 04 00 20 */ lfs f0, 0x20(r4) /* 802225CC 0021E22C D0 03 00 04 */ stfs f0, 4(r3) /* 802225D0 0021E230 C0 04 00 24 */ lfs f0, 0x24(r4) /* 802225D4 0021E234 D0 03 00 08 */ stfs f0, 8(r3) /* 802225D8 0021E238 48 00 00 9C */ b lbl_80222674 lbl_802225DC: /* 802225DC 0021E23C A0 04 00 16 */ lhz r0, 0x16(r4) /* 802225E0 0021E240 2C 00 00 00 */ cmpwi r0, 0 /* 802225E4 0021E244 41 82 00 20 */ beq lbl_80222604 /* 802225E8 0021E248 1C 00 00 0C */ mulli r0, r0, 0xc /* 802225EC 0021E24C 7C 67 02 14 */ add r3, r7, r0 /* 802225F0 0021E250 C0 03 00 08 */ lfs f0, 8(r3) /* 802225F4 0021E254 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802225F8 0021E258 40 80 00 0C */ bge lbl_80222604 /* 802225FC 0021E25C 38 00 00 00 */ li r0, 0 /* 80222600 0021E260 B0 04 00 16 */ sth r0, 0x16(r4) lbl_80222604: /* 80222604 0021E264 A0 04 00 16 */ lhz r0, 0x16(r4) /* 80222608 0021E268 80 64 00 10 */ lwz r3, 0x10(r4) /* 8022260C 0021E26C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222610 0021E270 7C E3 02 14 */ add r7, r3, r0 /* 80222614 0021E274 C0 07 00 14 */ lfs f0, 0x14(r7) /* 80222618 0021E278 38 A7 00 0C */ addi r5, r7, 0xc /* 8022261C 0021E27C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222620 0021E280 40 80 00 28 */ bge lbl_80222648 /* 80222624 0021E284 48 00 00 14 */ b lbl_80222638 lbl_80222628: /* 80222628 0021E288 A0 64 00 16 */ lhz r3, 0x16(r4) /* 8022262C 0021E28C 38 A5 00 0C */ addi r5, r5, 0xc /* 80222630 0021E290 38 03 00 01 */ addi r0, r3, 1 /* 80222634 0021E294 B0 04 00 16 */ sth r0, 0x16(r4) lbl_80222638: /* 80222638 0021E298 C0 05 00 08 */ lfs f0, 8(r5) /* 8022263C 0021E29C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222640 0021E2A0 41 80 FF E8 */ blt lbl_80222628 /* 80222644 0021E2A4 38 E5 FF F4 */ addi r7, r5, -12 lbl_80222648: /* 80222648 0021E2A8 FC 20 F8 90 */ fmr f1, f31 /* 8022264C 0021E2AC 7F E3 FB 78 */ mr r3, r31 /* 80222650 0021E2B0 7C E4 3B 78 */ mr r4, r7 /* 80222654 0021E2B4 4B FF FB 6D */ bl func_802221C0 /* 80222658 0021E2B8 D3 FF 00 18 */ stfs f31, 0x18(r31) /* 8022265C 0021E2BC C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 80222660 0021E2C0 D0 1E 00 00 */ stfs f0, 0(r30) /* 80222664 0021E2C4 C0 1F 00 20 */ lfs f0, 0x20(r31) /* 80222668 0021E2C8 D0 1E 00 04 */ stfs f0, 4(r30) /* 8022266C 0021E2CC C0 1F 00 24 */ lfs f0, 0x24(r31) /* 80222670 0021E2D0 D0 1E 00 08 */ stfs f0, 8(r30) lbl_80222674: /* 80222674 0021E2D4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80222678 0021E2D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8022267C 0021E2DC CB E1 00 20 */ lfd f31, 0x20(r1) /* 80222680 0021E2E0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80222684 0021E2E4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80222688 0021E2E8 7C 08 03 A6 */ mtlr r0 /* 8022268C 0021E2EC 38 21 00 30 */ addi r1, r1, 0x30 /* 80222690 0021E2F0 4E 80 00 20 */ blr .global func_80222694 func_80222694: /* 80222694 0021E2F4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80222698 0021E2F8 7C 08 02 A6 */ mflr r0 /* 8022269C 0021E2FC 90 01 00 34 */ stw r0, 0x34(r1) /* 802226A0 0021E300 DB E1 00 20 */ stfd f31, 0x20(r1) /* 802226A4 0021E304 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 802226A8 0021E308 FF E0 08 90 */ fmr f31, f1 /* 802226AC 0021E30C 7C A6 2B 78 */ mr r6, r5 /* 802226B0 0021E310 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802226B4 0021E314 7C 9F 23 78 */ mr r31, r4 /* 802226B8 0021E318 93 C1 00 18 */ stw r30, 0x18(r1) /* 802226BC 0021E31C 7C 7E 1B 78 */ mr r30, r3 /* 802226C0 0021E320 80 E4 00 10 */ lwz r7, 0x10(r4) /* 802226C4 0021E324 2C 07 00 00 */ cmpwi r7, 0 /* 802226C8 0021E328 40 82 01 28 */ bne lbl_802227F0 /* 802226CC 0021E32C C0 04 00 18 */ lfs f0, 0x18(r4) /* 802226D0 0021E330 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 802226D4 0021E334 40 82 00 28 */ bne lbl_802226FC /* 802226D8 0021E338 C0 04 00 1C */ lfs f0, 0x1c(r4) /* 802226DC 0021E33C D0 03 00 00 */ stfs f0, 0(r3) /* 802226E0 0021E340 C0 04 00 20 */ lfs f0, 0x20(r4) /* 802226E4 0021E344 D0 03 00 04 */ stfs f0, 4(r3) /* 802226E8 0021E348 C0 04 00 24 */ lfs f0, 0x24(r4) /* 802226EC 0021E34C D0 03 00 08 */ stfs f0, 8(r3) /* 802226F0 0021E350 C0 04 00 28 */ lfs f0, 0x28(r4) /* 802226F4 0021E354 D0 03 00 0C */ stfs f0, 0xc(r3) /* 802226F8 0021E358 48 00 02 7C */ b lbl_80222974 lbl_802226FC: /* 802226FC 0021E35C A0 A4 00 16 */ lhz r5, 0x16(r4) /* 80222700 0021E360 3C 00 43 30 */ lis r0, 0x4330 /* 80222704 0021E364 90 01 00 08 */ stw r0, 8(r1) /* 80222708 0021E368 54 A0 06 3E */ clrlwi r0, r5, 0x18 /* 8022270C 0021E36C C8 62 9C 00 */ lfd f3, lbl_80642200-_SDA2_BASE_(r2) /* 80222710 0021E370 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80222714 0021E374 C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 80222718 0021E378 90 01 00 0C */ stw r0, 0xc(r1) /* 8022271C 0021E37C C8 41 00 08 */ lfd f2, 8(r1) /* 80222720 0021E380 EC 42 18 28 */ fsubs f2, f2, f3 /* 80222724 0021E384 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80222728 0021E388 EC 00 08 2A */ fadds f0, f0, f1 /* 8022272C 0021E38C FC 00 00 1E */ fctiwz f0, f0 /* 80222730 0021E390 D8 01 00 10 */ stfd f0, 0x10(r1) /* 80222734 0021E394 80 01 00 14 */ lwz r0, 0x14(r1) /* 80222738 0021E398 2C 00 00 00 */ cmpwi r0, 0 /* 8022273C 0021E39C 41 81 00 2C */ bgt lbl_80222768 /* 80222740 0021E3A0 80 A4 00 00 */ lwz r5, 0(r4) /* 80222744 0021E3A4 C0 05 00 00 */ lfs f0, 0(r5) /* 80222748 0021E3A8 D0 04 00 1C */ stfs f0, 0x1c(r4) /* 8022274C 0021E3AC C0 05 00 04 */ lfs f0, 4(r5) /* 80222750 0021E3B0 D0 04 00 20 */ stfs f0, 0x20(r4) /* 80222754 0021E3B4 C0 05 00 08 */ lfs f0, 8(r5) /* 80222758 0021E3B8 D0 04 00 24 */ stfs f0, 0x24(r4) /* 8022275C 0021E3BC C0 05 00 0C */ lfs f0, 0xc(r5) /* 80222760 0021E3C0 D0 04 00 28 */ stfs f0, 0x28(r4) /* 80222764 0021E3C4 48 00 00 68 */ b lbl_802227CC lbl_80222768: /* 80222768 0021E3C8 A0 A4 00 08 */ lhz r5, 8(r4) /* 8022276C 0021E3CC 7C 00 28 00 */ cmpw r0, r5 /* 80222770 0021E3D0 41 80 00 34 */ blt lbl_802227A4 /* 80222774 0021E3D4 38 05 FF FF */ addi r0, r5, -1 /* 80222778 0021E3D8 80 A4 00 00 */ lwz r5, 0(r4) /* 8022277C 0021E3DC 54 00 20 36 */ slwi r0, r0, 4 /* 80222780 0021E3E0 7C 05 04 6E */ lfsux f0, r5, r0 /* 80222784 0021E3E4 D0 04 00 1C */ stfs f0, 0x1c(r4) /* 80222788 0021E3E8 C0 05 00 04 */ lfs f0, 4(r5) /* 8022278C 0021E3EC D0 04 00 20 */ stfs f0, 0x20(r4) /* 80222790 0021E3F0 C0 05 00 08 */ lfs f0, 8(r5) /* 80222794 0021E3F4 D0 04 00 24 */ stfs f0, 0x24(r4) /* 80222798 0021E3F8 C0 05 00 0C */ lfs f0, 0xc(r5) /* 8022279C 0021E3FC D0 04 00 28 */ stfs f0, 0x28(r4) /* 802227A0 0021E400 48 00 00 2C */ b lbl_802227CC lbl_802227A4: /* 802227A4 0021E404 54 00 20 36 */ slwi r0, r0, 4 /* 802227A8 0021E408 80 A4 00 00 */ lwz r5, 0(r4) /* 802227AC 0021E40C 7C 05 04 6E */ lfsux f0, r5, r0 /* 802227B0 0021E410 D0 04 00 1C */ stfs f0, 0x1c(r4) /* 802227B4 0021E414 C0 05 00 04 */ lfs f0, 4(r5) /* 802227B8 0021E418 D0 04 00 20 */ stfs f0, 0x20(r4) /* 802227BC 0021E41C C0 05 00 08 */ lfs f0, 8(r5) /* 802227C0 0021E420 D0 04 00 24 */ stfs f0, 0x24(r4) /* 802227C4 0021E424 C0 05 00 0C */ lfs f0, 0xc(r5) /* 802227C8 0021E428 D0 04 00 28 */ stfs f0, 0x28(r4) lbl_802227CC: /* 802227CC 0021E42C C0 04 00 1C */ lfs f0, 0x1c(r4) /* 802227D0 0021E430 D0 03 00 00 */ stfs f0, 0(r3) /* 802227D4 0021E434 C0 04 00 20 */ lfs f0, 0x20(r4) /* 802227D8 0021E438 D0 03 00 04 */ stfs f0, 4(r3) /* 802227DC 0021E43C C0 04 00 24 */ lfs f0, 0x24(r4) /* 802227E0 0021E440 D0 03 00 08 */ stfs f0, 8(r3) /* 802227E4 0021E444 C0 04 00 28 */ lfs f0, 0x28(r4) /* 802227E8 0021E448 D0 03 00 0C */ stfs f0, 0xc(r3) /* 802227EC 0021E44C 48 00 01 88 */ b lbl_80222974 lbl_802227F0: /* 802227F0 0021E450 C0 02 9C 14 */ lfs f0, lbl_80642214-_SDA2_BASE_(r2) /* 802227F4 0021E454 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802227F8 0021E458 4C 40 13 82 */ cror 2, 0, 2 /* 802227FC 0021E45C 40 82 00 40 */ bne lbl_8022283C /* 80222800 0021E460 A0 07 00 00 */ lhz r0, 0(r7) /* 80222804 0021E464 2C 00 00 00 */ cmpwi r0, 0 /* 80222808 0021E468 40 82 00 34 */ bne lbl_8022283C /* 8022280C 0021E46C A0 07 00 02 */ lhz r0, 2(r7) /* 80222810 0021E470 80 84 00 00 */ lwz r4, 0(r4) /* 80222814 0021E474 54 00 20 36 */ slwi r0, r0, 4 /* 80222818 0021E478 7C 04 04 6E */ lfsux f0, r4, r0 /* 8022281C 0021E47C D0 03 00 00 */ stfs f0, 0(r3) /* 80222820 0021E480 C0 04 00 04 */ lfs f0, 4(r4) /* 80222824 0021E484 D0 03 00 04 */ stfs f0, 4(r3) /* 80222828 0021E488 C0 04 00 08 */ lfs f0, 8(r4) /* 8022282C 0021E48C D0 03 00 08 */ stfs f0, 8(r3) /* 80222830 0021E490 C0 04 00 0C */ lfs f0, 0xc(r4) /* 80222834 0021E494 D0 03 00 0C */ stfs f0, 0xc(r3) /* 80222838 0021E498 48 00 01 3C */ b lbl_80222974 lbl_8022283C: /* 8022283C 0021E49C C0 04 00 0C */ lfs f0, 0xc(r4) /* 80222840 0021E4A0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222844 0021E4A4 4C 41 13 82 */ cror 2, 1, 2 /* 80222848 0021E4A8 40 82 00 48 */ bne lbl_80222890 /* 8022284C 0021E4AC A0 A4 00 14 */ lhz r5, 0x14(r4) /* 80222850 0021E4B0 80 C4 00 00 */ lwz r6, 0(r4) /* 80222854 0021E4B4 38 05 FF FF */ addi r0, r5, -1 /* 80222858 0021E4B8 1C 00 00 0C */ mulli r0, r0, 0xc /* 8022285C 0021E4BC 7C 87 02 14 */ add r4, r7, r0 /* 80222860 0021E4C0 A0 04 00 02 */ lhz r0, 2(r4) /* 80222864 0021E4C4 54 00 20 36 */ slwi r0, r0, 4 /* 80222868 0021E4C8 7C 06 04 2E */ lfsx f0, r6, r0 /* 8022286C 0021E4CC 7C 86 02 14 */ add r4, r6, r0 /* 80222870 0021E4D0 D0 03 00 00 */ stfs f0, 0(r3) /* 80222874 0021E4D4 C0 04 00 04 */ lfs f0, 4(r4) /* 80222878 0021E4D8 D0 03 00 04 */ stfs f0, 4(r3) /* 8022287C 0021E4DC C0 04 00 08 */ lfs f0, 8(r4) /* 80222880 0021E4E0 D0 03 00 08 */ stfs f0, 8(r3) /* 80222884 0021E4E4 C0 04 00 0C */ lfs f0, 0xc(r4) /* 80222888 0021E4E8 D0 03 00 0C */ stfs f0, 0xc(r3) /* 8022288C 0021E4EC 48 00 00 E8 */ b lbl_80222974 lbl_80222890: /* 80222890 0021E4F0 C0 44 00 18 */ lfs f2, 0x18(r4) /* 80222894 0021E4F4 C0 02 9C 18 */ lfs f0, lbl_80642218-_SDA2_BASE_(r2) /* 80222898 0021E4F8 EC 41 10 28 */ fsubs f2, f1, f2 /* 8022289C 0021E4FC FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802228A0 0021E500 40 80 00 34 */ bge lbl_802228D4 /* 802228A4 0021E504 C0 02 9C 1C */ lfs f0, lbl_8064221C-_SDA2_BASE_(r2) /* 802228A8 0021E508 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802228AC 0021E50C 40 81 00 28 */ ble lbl_802228D4 /* 802228B0 0021E510 C0 04 00 1C */ lfs f0, 0x1c(r4) /* 802228B4 0021E514 D0 03 00 00 */ stfs f0, 0(r3) /* 802228B8 0021E518 C0 04 00 20 */ lfs f0, 0x20(r4) /* 802228BC 0021E51C D0 03 00 04 */ stfs f0, 4(r3) /* 802228C0 0021E520 C0 04 00 24 */ lfs f0, 0x24(r4) /* 802228C4 0021E524 D0 03 00 08 */ stfs f0, 8(r3) /* 802228C8 0021E528 C0 04 00 28 */ lfs f0, 0x28(r4) /* 802228CC 0021E52C D0 03 00 0C */ stfs f0, 0xc(r3) /* 802228D0 0021E530 48 00 00 A4 */ b lbl_80222974 lbl_802228D4: /* 802228D4 0021E534 A0 04 00 16 */ lhz r0, 0x16(r4) /* 802228D8 0021E538 2C 00 00 00 */ cmpwi r0, 0 /* 802228DC 0021E53C 41 82 00 20 */ beq lbl_802228FC /* 802228E0 0021E540 1C 00 00 0C */ mulli r0, r0, 0xc /* 802228E4 0021E544 7C 67 02 14 */ add r3, r7, r0 /* 802228E8 0021E548 C0 03 00 08 */ lfs f0, 8(r3) /* 802228EC 0021E54C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802228F0 0021E550 40 80 00 0C */ bge lbl_802228FC /* 802228F4 0021E554 38 00 00 00 */ li r0, 0 /* 802228F8 0021E558 B0 04 00 16 */ sth r0, 0x16(r4) lbl_802228FC: /* 802228FC 0021E55C A0 04 00 16 */ lhz r0, 0x16(r4) /* 80222900 0021E560 80 64 00 10 */ lwz r3, 0x10(r4) /* 80222904 0021E564 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222908 0021E568 7C E3 02 14 */ add r7, r3, r0 /* 8022290C 0021E56C C0 07 00 14 */ lfs f0, 0x14(r7) /* 80222910 0021E570 38 A7 00 0C */ addi r5, r7, 0xc /* 80222914 0021E574 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222918 0021E578 40 80 00 28 */ bge lbl_80222940 /* 8022291C 0021E57C 48 00 00 14 */ b lbl_80222930 lbl_80222920: /* 80222920 0021E580 A0 64 00 16 */ lhz r3, 0x16(r4) /* 80222924 0021E584 38 A5 00 0C */ addi r5, r5, 0xc /* 80222928 0021E588 38 03 00 01 */ addi r0, r3, 1 /* 8022292C 0021E58C B0 04 00 16 */ sth r0, 0x16(r4) lbl_80222930: /* 80222930 0021E590 C0 05 00 08 */ lfs f0, 8(r5) /* 80222934 0021E594 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222938 0021E598 41 80 FF E8 */ blt lbl_80222920 /* 8022293C 0021E59C 38 E5 FF F4 */ addi r7, r5, -12 lbl_80222940: /* 80222940 0021E5A0 FC 20 F8 90 */ fmr f1, f31 /* 80222944 0021E5A4 7F E3 FB 78 */ mr r3, r31 /* 80222948 0021E5A8 7C E4 3B 78 */ mr r4, r7 /* 8022294C 0021E5AC 4B FF EC 51 */ bl func_8022159C /* 80222950 0021E5B0 D3 FF 00 18 */ stfs f31, 0x18(r31) /* 80222954 0021E5B4 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 80222958 0021E5B8 D0 1E 00 00 */ stfs f0, 0(r30) /* 8022295C 0021E5BC C0 1F 00 20 */ lfs f0, 0x20(r31) /* 80222960 0021E5C0 D0 1E 00 04 */ stfs f0, 4(r30) /* 80222964 0021E5C4 C0 1F 00 24 */ lfs f0, 0x24(r31) /* 80222968 0021E5C8 D0 1E 00 08 */ stfs f0, 8(r30) /* 8022296C 0021E5CC C0 1F 00 28 */ lfs f0, 0x28(r31) /* 80222970 0021E5D0 D0 1E 00 0C */ stfs f0, 0xc(r30) lbl_80222974: /* 80222974 0021E5D4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80222978 0021E5D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8022297C 0021E5DC CB E1 00 20 */ lfd f31, 0x20(r1) /* 80222980 0021E5E0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80222984 0021E5E4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80222988 0021E5E8 7C 08 03 A6 */ mtlr r0 /* 8022298C 0021E5EC 38 21 00 30 */ addi r1, r1, 0x30 /* 80222990 0021E5F0 4E 80 00 20 */ blr .global func_80222994 func_80222994: /* 80222994 0021E5F4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80222998 0021E5F8 7C 08 02 A6 */ mflr r0 /* 8022299C 0021E5FC 90 01 00 34 */ stw r0, 0x34(r1) /* 802229A0 0021E600 DB E1 00 20 */ stfd f31, 0x20(r1) /* 802229A4 0021E604 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 802229A8 0021E608 FF E0 08 90 */ fmr f31, f1 /* 802229AC 0021E60C 7C 86 23 78 */ mr r6, r4 /* 802229B0 0021E610 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802229B4 0021E614 7C 7F 1B 78 */ mr r31, r3 /* 802229B8 0021E618 80 E3 00 10 */ lwz r7, 0x10(r3) /* 802229BC 0021E61C 2C 07 00 00 */ cmpwi r7, 0 /* 802229C0 0021E620 40 82 00 A0 */ bne lbl_80222A60 /* 802229C4 0021E624 C0 03 00 18 */ lfs f0, 0x18(r3) /* 802229C8 0021E628 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 802229CC 0021E62C 40 82 00 0C */ bne lbl_802229D8 /* 802229D0 0021E630 88 63 00 1C */ lbz r3, 0x1c(r3) /* 802229D4 0021E634 48 00 01 90 */ b lbl_80222B64 lbl_802229D8: /* 802229D8 0021E638 A0 83 00 16 */ lhz r4, 0x16(r3) /* 802229DC 0021E63C 3C 00 43 30 */ lis r0, 0x4330 /* 802229E0 0021E640 90 01 00 08 */ stw r0, 8(r1) /* 802229E4 0021E644 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 802229E8 0021E648 C8 62 9C 00 */ lfd f3, lbl_80642200-_SDA2_BASE_(r2) /* 802229EC 0021E64C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802229F0 0021E650 C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 802229F4 0021E654 90 01 00 0C */ stw r0, 0xc(r1) /* 802229F8 0021E658 C8 41 00 08 */ lfd f2, 8(r1) /* 802229FC 0021E65C EC 42 18 28 */ fsubs f2, f2, f3 /* 80222A00 0021E660 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80222A04 0021E664 EC 00 08 2A */ fadds f0, f0, f1 /* 80222A08 0021E668 FC 00 00 1E */ fctiwz f0, f0 /* 80222A0C 0021E66C D8 01 00 10 */ stfd f0, 0x10(r1) /* 80222A10 0021E670 80 01 00 14 */ lwz r0, 0x14(r1) /* 80222A14 0021E674 2C 00 00 00 */ cmpwi r0, 0 /* 80222A18 0021E678 41 81 00 14 */ bgt lbl_80222A2C /* 80222A1C 0021E67C 80 83 00 00 */ lwz r4, 0(r3) /* 80222A20 0021E680 88 04 00 00 */ lbz r0, 0(r4) /* 80222A24 0021E684 98 03 00 1C */ stb r0, 0x1c(r3) /* 80222A28 0021E688 48 00 00 30 */ b lbl_80222A58 lbl_80222A2C: /* 80222A2C 0021E68C A0 83 00 08 */ lhz r4, 8(r3) /* 80222A30 0021E690 7C 00 20 00 */ cmpw r0, r4 /* 80222A34 0021E694 41 80 00 18 */ blt lbl_80222A4C /* 80222A38 0021E698 80 03 00 00 */ lwz r0, 0(r3) /* 80222A3C 0021E69C 7C 84 02 14 */ add r4, r4, r0 /* 80222A40 0021E6A0 88 04 FF FF */ lbz r0, -1(r4) /* 80222A44 0021E6A4 98 03 00 1C */ stb r0, 0x1c(r3) /* 80222A48 0021E6A8 48 00 00 10 */ b lbl_80222A58 lbl_80222A4C: /* 80222A4C 0021E6AC 80 83 00 00 */ lwz r4, 0(r3) /* 80222A50 0021E6B0 7C 04 00 AE */ lbzx r0, r4, r0 /* 80222A54 0021E6B4 98 03 00 1C */ stb r0, 0x1c(r3) lbl_80222A58: /* 80222A58 0021E6B8 88 63 00 1C */ lbz r3, 0x1c(r3) /* 80222A5C 0021E6BC 48 00 01 08 */ b lbl_80222B64 lbl_80222A60: /* 80222A60 0021E6C0 C0 02 9C 14 */ lfs f0, lbl_80642214-_SDA2_BASE_(r2) /* 80222A64 0021E6C4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222A68 0021E6C8 4C 40 13 82 */ cror 2, 0, 2 /* 80222A6C 0021E6CC 40 82 00 20 */ bne lbl_80222A8C /* 80222A70 0021E6D0 A0 07 00 00 */ lhz r0, 0(r7) /* 80222A74 0021E6D4 2C 00 00 00 */ cmpwi r0, 0 /* 80222A78 0021E6D8 40 82 00 14 */ bne lbl_80222A8C /* 80222A7C 0021E6DC 80 63 00 00 */ lwz r3, 0(r3) /* 80222A80 0021E6E0 A0 07 00 02 */ lhz r0, 2(r7) /* 80222A84 0021E6E4 7C 63 00 AE */ lbzx r3, r3, r0 /* 80222A88 0021E6E8 48 00 00 DC */ b lbl_80222B64 lbl_80222A8C: /* 80222A8C 0021E6EC C0 03 00 0C */ lfs f0, 0xc(r3) /* 80222A90 0021E6F0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222A94 0021E6F4 4C 41 13 82 */ cror 2, 1, 2 /* 80222A98 0021E6F8 40 82 00 24 */ bne lbl_80222ABC /* 80222A9C 0021E6FC A0 83 00 14 */ lhz r4, 0x14(r3) /* 80222AA0 0021E700 80 A3 00 00 */ lwz r5, 0(r3) /* 80222AA4 0021E704 38 04 FF FF */ addi r0, r4, -1 /* 80222AA8 0021E708 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222AAC 0021E70C 7C 67 02 14 */ add r3, r7, r0 /* 80222AB0 0021E710 A0 03 00 02 */ lhz r0, 2(r3) /* 80222AB4 0021E714 7C 65 00 AE */ lbzx r3, r5, r0 /* 80222AB8 0021E718 48 00 00 AC */ b lbl_80222B64 lbl_80222ABC: /* 80222ABC 0021E71C C0 43 00 18 */ lfs f2, 0x18(r3) /* 80222AC0 0021E720 C0 02 9C 18 */ lfs f0, lbl_80642218-_SDA2_BASE_(r2) /* 80222AC4 0021E724 EC 41 10 28 */ fsubs f2, f1, f2 /* 80222AC8 0021E728 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80222ACC 0021E72C 40 80 00 18 */ bge lbl_80222AE4 /* 80222AD0 0021E730 C0 02 9C 1C */ lfs f0, lbl_8064221C-_SDA2_BASE_(r2) /* 80222AD4 0021E734 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80222AD8 0021E738 40 81 00 0C */ ble lbl_80222AE4 /* 80222ADC 0021E73C 88 63 00 1C */ lbz r3, 0x1c(r3) /* 80222AE0 0021E740 48 00 00 84 */ b lbl_80222B64 lbl_80222AE4: /* 80222AE4 0021E744 A0 03 00 16 */ lhz r0, 0x16(r3) /* 80222AE8 0021E748 2C 00 00 00 */ cmpwi r0, 0 /* 80222AEC 0021E74C 41 82 00 20 */ beq lbl_80222B0C /* 80222AF0 0021E750 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222AF4 0021E754 7C 87 02 14 */ add r4, r7, r0 /* 80222AF8 0021E758 C0 04 00 08 */ lfs f0, 8(r4) /* 80222AFC 0021E75C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222B00 0021E760 40 80 00 0C */ bge lbl_80222B0C /* 80222B04 0021E764 38 00 00 00 */ li r0, 0 /* 80222B08 0021E768 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80222B0C: /* 80222B0C 0021E76C A0 03 00 16 */ lhz r0, 0x16(r3) /* 80222B10 0021E770 80 83 00 10 */ lwz r4, 0x10(r3) /* 80222B14 0021E774 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222B18 0021E778 7C 84 02 14 */ add r4, r4, r0 /* 80222B1C 0021E77C C0 04 00 14 */ lfs f0, 0x14(r4) /* 80222B20 0021E780 38 A4 00 0C */ addi r5, r4, 0xc /* 80222B24 0021E784 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222B28 0021E788 40 80 00 28 */ bge lbl_80222B50 /* 80222B2C 0021E78C 48 00 00 14 */ b lbl_80222B40 lbl_80222B30: /* 80222B30 0021E790 A0 83 00 16 */ lhz r4, 0x16(r3) /* 80222B34 0021E794 38 A5 00 0C */ addi r5, r5, 0xc /* 80222B38 0021E798 38 04 00 01 */ addi r0, r4, 1 /* 80222B3C 0021E79C B0 03 00 16 */ sth r0, 0x16(r3) lbl_80222B40: /* 80222B40 0021E7A0 C0 05 00 08 */ lfs f0, 8(r5) /* 80222B44 0021E7A4 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222B48 0021E7A8 41 80 FF E8 */ blt lbl_80222B30 /* 80222B4C 0021E7AC 38 85 FF F4 */ addi r4, r5, -12 lbl_80222B50: /* 80222B50 0021E7B0 FC 20 F8 90 */ fmr f1, f31 /* 80222B54 0021E7B4 7F E3 FB 78 */ mr r3, r31 /* 80222B58 0021E7B8 4B FF E2 6D */ bl func_80220DC4 /* 80222B5C 0021E7BC D3 FF 00 18 */ stfs f31, 0x18(r31) /* 80222B60 0021E7C0 88 7F 00 1C */ lbz r3, 0x1c(r31) lbl_80222B64: /* 80222B64 0021E7C4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80222B68 0021E7C8 80 01 00 34 */ lwz r0, 0x34(r1) /* 80222B6C 0021E7CC CB E1 00 20 */ lfd f31, 0x20(r1) /* 80222B70 0021E7D0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80222B74 0021E7D4 7C 08 03 A6 */ mtlr r0 /* 80222B78 0021E7D8 38 21 00 30 */ addi r1, r1, 0x30 /* 80222B7C 0021E7DC 4E 80 00 20 */ blr .global func_80222B80 func_80222B80: /* 80222B80 0021E7E0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80222B84 0021E7E4 7C 08 02 A6 */ mflr r0 /* 80222B88 0021E7E8 90 01 00 34 */ stw r0, 0x34(r1) /* 80222B8C 0021E7EC DB E1 00 20 */ stfd f31, 0x20(r1) /* 80222B90 0021E7F0 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80222B94 0021E7F4 FF E0 08 90 */ fmr f31, f1 /* 80222B98 0021E7F8 7C 86 23 78 */ mr r6, r4 /* 80222B9C 0021E7FC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80222BA0 0021E800 7C 7F 1B 78 */ mr r31, r3 /* 80222BA4 0021E804 80 E3 00 10 */ lwz r7, 0x10(r3) /* 80222BA8 0021E808 2C 07 00 00 */ cmpwi r7, 0 /* 80222BAC 0021E80C 40 82 00 A0 */ bne lbl_80222C4C /* 80222BB0 0021E810 C0 03 00 18 */ lfs f0, 0x18(r3) /* 80222BB4 0021E814 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 80222BB8 0021E818 40 82 00 0C */ bne lbl_80222BC4 /* 80222BBC 0021E81C 88 63 00 1C */ lbz r3, 0x1c(r3) /* 80222BC0 0021E820 48 00 01 90 */ b lbl_80222D50 lbl_80222BC4: /* 80222BC4 0021E824 A0 83 00 16 */ lhz r4, 0x16(r3) /* 80222BC8 0021E828 3C 00 43 30 */ lis r0, 0x4330 /* 80222BCC 0021E82C 90 01 00 08 */ stw r0, 8(r1) /* 80222BD0 0021E830 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80222BD4 0021E834 C8 62 9C 00 */ lfd f3, lbl_80642200-_SDA2_BASE_(r2) /* 80222BD8 0021E838 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80222BDC 0021E83C C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 80222BE0 0021E840 90 01 00 0C */ stw r0, 0xc(r1) /* 80222BE4 0021E844 C8 41 00 08 */ lfd f2, 8(r1) /* 80222BE8 0021E848 EC 42 18 28 */ fsubs f2, f2, f3 /* 80222BEC 0021E84C EC 21 00 B2 */ fmuls f1, f1, f2 /* 80222BF0 0021E850 EC 00 08 2A */ fadds f0, f0, f1 /* 80222BF4 0021E854 FC 00 00 1E */ fctiwz f0, f0 /* 80222BF8 0021E858 D8 01 00 10 */ stfd f0, 0x10(r1) /* 80222BFC 0021E85C 80 01 00 14 */ lwz r0, 0x14(r1) /* 80222C00 0021E860 2C 00 00 00 */ cmpwi r0, 0 /* 80222C04 0021E864 41 81 00 14 */ bgt lbl_80222C18 /* 80222C08 0021E868 80 83 00 00 */ lwz r4, 0(r3) /* 80222C0C 0021E86C 88 04 00 00 */ lbz r0, 0(r4) /* 80222C10 0021E870 98 03 00 1C */ stb r0, 0x1c(r3) /* 80222C14 0021E874 48 00 00 30 */ b lbl_80222C44 lbl_80222C18: /* 80222C18 0021E878 A0 83 00 08 */ lhz r4, 8(r3) /* 80222C1C 0021E87C 7C 00 20 00 */ cmpw r0, r4 /* 80222C20 0021E880 41 80 00 18 */ blt lbl_80222C38 /* 80222C24 0021E884 80 03 00 00 */ lwz r0, 0(r3) /* 80222C28 0021E888 7C 84 02 14 */ add r4, r4, r0 /* 80222C2C 0021E88C 88 04 FF FF */ lbz r0, -1(r4) /* 80222C30 0021E890 98 03 00 1C */ stb r0, 0x1c(r3) /* 80222C34 0021E894 48 00 00 10 */ b lbl_80222C44 lbl_80222C38: /* 80222C38 0021E898 80 83 00 00 */ lwz r4, 0(r3) /* 80222C3C 0021E89C 7C 04 00 AE */ lbzx r0, r4, r0 /* 80222C40 0021E8A0 98 03 00 1C */ stb r0, 0x1c(r3) lbl_80222C44: /* 80222C44 0021E8A4 88 63 00 1C */ lbz r3, 0x1c(r3) /* 80222C48 0021E8A8 48 00 01 08 */ b lbl_80222D50 lbl_80222C4C: /* 80222C4C 0021E8AC C0 02 9C 14 */ lfs f0, lbl_80642214-_SDA2_BASE_(r2) /* 80222C50 0021E8B0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222C54 0021E8B4 4C 40 13 82 */ cror 2, 0, 2 /* 80222C58 0021E8B8 40 82 00 20 */ bne lbl_80222C78 /* 80222C5C 0021E8BC A0 07 00 00 */ lhz r0, 0(r7) /* 80222C60 0021E8C0 2C 00 00 00 */ cmpwi r0, 0 /* 80222C64 0021E8C4 40 82 00 14 */ bne lbl_80222C78 /* 80222C68 0021E8C8 80 63 00 00 */ lwz r3, 0(r3) /* 80222C6C 0021E8CC A0 07 00 02 */ lhz r0, 2(r7) /* 80222C70 0021E8D0 7C 63 00 AE */ lbzx r3, r3, r0 /* 80222C74 0021E8D4 48 00 00 DC */ b lbl_80222D50 lbl_80222C78: /* 80222C78 0021E8D8 C0 03 00 0C */ lfs f0, 0xc(r3) /* 80222C7C 0021E8DC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222C80 0021E8E0 4C 41 13 82 */ cror 2, 1, 2 /* 80222C84 0021E8E4 40 82 00 24 */ bne lbl_80222CA8 /* 80222C88 0021E8E8 A0 83 00 14 */ lhz r4, 0x14(r3) /* 80222C8C 0021E8EC 80 A3 00 00 */ lwz r5, 0(r3) /* 80222C90 0021E8F0 38 04 FF FF */ addi r0, r4, -1 /* 80222C94 0021E8F4 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222C98 0021E8F8 7C 67 02 14 */ add r3, r7, r0 /* 80222C9C 0021E8FC A0 03 00 02 */ lhz r0, 2(r3) /* 80222CA0 0021E900 7C 65 00 AE */ lbzx r3, r5, r0 /* 80222CA4 0021E904 48 00 00 AC */ b lbl_80222D50 lbl_80222CA8: /* 80222CA8 0021E908 C0 43 00 18 */ lfs f2, 0x18(r3) /* 80222CAC 0021E90C C0 02 9C 18 */ lfs f0, lbl_80642218-_SDA2_BASE_(r2) /* 80222CB0 0021E910 EC 41 10 28 */ fsubs f2, f1, f2 /* 80222CB4 0021E914 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80222CB8 0021E918 40 80 00 18 */ bge lbl_80222CD0 /* 80222CBC 0021E91C C0 02 9C 1C */ lfs f0, lbl_8064221C-_SDA2_BASE_(r2) /* 80222CC0 0021E920 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80222CC4 0021E924 40 81 00 0C */ ble lbl_80222CD0 /* 80222CC8 0021E928 88 63 00 1C */ lbz r3, 0x1c(r3) /* 80222CCC 0021E92C 48 00 00 84 */ b lbl_80222D50 lbl_80222CD0: /* 80222CD0 0021E930 A0 03 00 16 */ lhz r0, 0x16(r3) /* 80222CD4 0021E934 2C 00 00 00 */ cmpwi r0, 0 /* 80222CD8 0021E938 41 82 00 20 */ beq lbl_80222CF8 /* 80222CDC 0021E93C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222CE0 0021E940 7C 87 02 14 */ add r4, r7, r0 /* 80222CE4 0021E944 C0 04 00 08 */ lfs f0, 8(r4) /* 80222CE8 0021E948 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222CEC 0021E94C 40 80 00 0C */ bge lbl_80222CF8 /* 80222CF0 0021E950 38 00 00 00 */ li r0, 0 /* 80222CF4 0021E954 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80222CF8: /* 80222CF8 0021E958 A0 03 00 16 */ lhz r0, 0x16(r3) /* 80222CFC 0021E95C 80 83 00 10 */ lwz r4, 0x10(r3) /* 80222D00 0021E960 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222D04 0021E964 7C 84 02 14 */ add r4, r4, r0 /* 80222D08 0021E968 C0 04 00 14 */ lfs f0, 0x14(r4) /* 80222D0C 0021E96C 38 A4 00 0C */ addi r5, r4, 0xc /* 80222D10 0021E970 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222D14 0021E974 40 80 00 28 */ bge lbl_80222D3C /* 80222D18 0021E978 48 00 00 14 */ b lbl_80222D2C lbl_80222D1C: /* 80222D1C 0021E97C A0 83 00 16 */ lhz r4, 0x16(r3) /* 80222D20 0021E980 38 A5 00 0C */ addi r5, r5, 0xc /* 80222D24 0021E984 38 04 00 01 */ addi r0, r4, 1 /* 80222D28 0021E988 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80222D2C: /* 80222D2C 0021E98C C0 05 00 08 */ lfs f0, 8(r5) /* 80222D30 0021E990 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222D34 0021E994 41 80 FF E8 */ blt lbl_80222D1C /* 80222D38 0021E998 38 85 FF F4 */ addi r4, r5, -12 lbl_80222D3C: /* 80222D3C 0021E99C FC 20 F8 90 */ fmr f1, f31 /* 80222D40 0021E9A0 7F E3 FB 78 */ mr r3, r31 /* 80222D44 0021E9A4 4B FF E2 7D */ bl func_80220FC0 /* 80222D48 0021E9A8 D3 FF 00 18 */ stfs f31, 0x18(r31) /* 80222D4C 0021E9AC 88 7F 00 1C */ lbz r3, 0x1c(r31) lbl_80222D50: /* 80222D50 0021E9B0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80222D54 0021E9B4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80222D58 0021E9B8 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80222D5C 0021E9BC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80222D60 0021E9C0 7C 08 03 A6 */ mtlr r0 /* 80222D64 0021E9C4 38 21 00 30 */ addi r1, r1, 0x30 /* 80222D68 0021E9C8 4E 80 00 20 */ blr .global func_80222D6C func_80222D6C: /* 80222D6C 0021E9CC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80222D70 0021E9D0 7C 08 02 A6 */ mflr r0 /* 80222D74 0021E9D4 90 01 00 34 */ stw r0, 0x34(r1) /* 80222D78 0021E9D8 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80222D7C 0021E9DC F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80222D80 0021E9E0 FF E0 08 90 */ fmr f31, f1 /* 80222D84 0021E9E4 7C 86 23 78 */ mr r6, r4 /* 80222D88 0021E9E8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80222D8C 0021E9EC 7C 7F 1B 78 */ mr r31, r3 /* 80222D90 0021E9F0 80 E3 00 10 */ lwz r7, 0x10(r3) /* 80222D94 0021E9F4 2C 07 00 00 */ cmpwi r7, 0 /* 80222D98 0021E9F8 40 82 00 A8 */ bne lbl_80222E40 /* 80222D9C 0021E9FC C0 03 00 18 */ lfs f0, 0x18(r3) /* 80222DA0 0021EA00 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 80222DA4 0021EA04 40 82 00 0C */ bne lbl_80222DB0 /* 80222DA8 0021EA08 A8 63 00 1C */ lha r3, 0x1c(r3) /* 80222DAC 0021EA0C 48 00 01 A0 */ b lbl_80222F4C lbl_80222DB0: /* 80222DB0 0021EA10 A0 83 00 16 */ lhz r4, 0x16(r3) /* 80222DB4 0021EA14 3C 00 43 30 */ lis r0, 0x4330 /* 80222DB8 0021EA18 90 01 00 08 */ stw r0, 8(r1) /* 80222DBC 0021EA1C 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80222DC0 0021EA20 C8 62 9C 00 */ lfd f3, lbl_80642200-_SDA2_BASE_(r2) /* 80222DC4 0021EA24 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80222DC8 0021EA28 C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 80222DCC 0021EA2C 90 01 00 0C */ stw r0, 0xc(r1) /* 80222DD0 0021EA30 C8 41 00 08 */ lfd f2, 8(r1) /* 80222DD4 0021EA34 EC 42 18 28 */ fsubs f2, f2, f3 /* 80222DD8 0021EA38 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80222DDC 0021EA3C EC 00 08 2A */ fadds f0, f0, f1 /* 80222DE0 0021EA40 FC 00 00 1E */ fctiwz f0, f0 /* 80222DE4 0021EA44 D8 01 00 10 */ stfd f0, 0x10(r1) /* 80222DE8 0021EA48 80 01 00 14 */ lwz r0, 0x14(r1) /* 80222DEC 0021EA4C 2C 00 00 00 */ cmpwi r0, 0 /* 80222DF0 0021EA50 41 81 00 14 */ bgt lbl_80222E04 /* 80222DF4 0021EA54 80 83 00 00 */ lwz r4, 0(r3) /* 80222DF8 0021EA58 A8 04 00 00 */ lha r0, 0(r4) /* 80222DFC 0021EA5C B0 03 00 1C */ sth r0, 0x1c(r3) /* 80222E00 0021EA60 48 00 00 38 */ b lbl_80222E38 lbl_80222E04: /* 80222E04 0021EA64 A0 83 00 08 */ lhz r4, 8(r3) /* 80222E08 0021EA68 7C 00 20 00 */ cmpw r0, r4 /* 80222E0C 0021EA6C 41 80 00 1C */ blt lbl_80222E28 /* 80222E10 0021EA70 38 04 FF FF */ addi r0, r4, -1 /* 80222E14 0021EA74 80 83 00 00 */ lwz r4, 0(r3) /* 80222E18 0021EA78 54 00 08 3C */ slwi r0, r0, 1 /* 80222E1C 0021EA7C 7C 04 02 AE */ lhax r0, r4, r0 /* 80222E20 0021EA80 B0 03 00 1C */ sth r0, 0x1c(r3) /* 80222E24 0021EA84 48 00 00 14 */ b lbl_80222E38 lbl_80222E28: /* 80222E28 0021EA88 80 83 00 00 */ lwz r4, 0(r3) /* 80222E2C 0021EA8C 54 00 08 3C */ slwi r0, r0, 1 /* 80222E30 0021EA90 7C 04 02 AE */ lhax r0, r4, r0 /* 80222E34 0021EA94 B0 03 00 1C */ sth r0, 0x1c(r3) lbl_80222E38: /* 80222E38 0021EA98 A8 63 00 1C */ lha r3, 0x1c(r3) /* 80222E3C 0021EA9C 48 00 01 10 */ b lbl_80222F4C lbl_80222E40: /* 80222E40 0021EAA0 C0 02 9C 14 */ lfs f0, lbl_80642214-_SDA2_BASE_(r2) /* 80222E44 0021EAA4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222E48 0021EAA8 4C 40 13 82 */ cror 2, 0, 2 /* 80222E4C 0021EAAC 40 82 00 24 */ bne lbl_80222E70 /* 80222E50 0021EAB0 A0 07 00 00 */ lhz r0, 0(r7) /* 80222E54 0021EAB4 2C 00 00 00 */ cmpwi r0, 0 /* 80222E58 0021EAB8 40 82 00 18 */ bne lbl_80222E70 /* 80222E5C 0021EABC A0 07 00 02 */ lhz r0, 2(r7) /* 80222E60 0021EAC0 80 63 00 00 */ lwz r3, 0(r3) /* 80222E64 0021EAC4 54 00 08 3C */ slwi r0, r0, 1 /* 80222E68 0021EAC8 7C 63 02 AE */ lhax r3, r3, r0 /* 80222E6C 0021EACC 48 00 00 E0 */ b lbl_80222F4C lbl_80222E70: /* 80222E70 0021EAD0 C0 03 00 0C */ lfs f0, 0xc(r3) /* 80222E74 0021EAD4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222E78 0021EAD8 4C 41 13 82 */ cror 2, 1, 2 /* 80222E7C 0021EADC 40 82 00 28 */ bne lbl_80222EA4 /* 80222E80 0021EAE0 A0 83 00 14 */ lhz r4, 0x14(r3) /* 80222E84 0021EAE4 80 A3 00 00 */ lwz r5, 0(r3) /* 80222E88 0021EAE8 38 04 FF FF */ addi r0, r4, -1 /* 80222E8C 0021EAEC 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222E90 0021EAF0 7C 67 02 14 */ add r3, r7, r0 /* 80222E94 0021EAF4 A0 03 00 02 */ lhz r0, 2(r3) /* 80222E98 0021EAF8 54 00 08 3C */ slwi r0, r0, 1 /* 80222E9C 0021EAFC 7C 65 02 AE */ lhax r3, r5, r0 /* 80222EA0 0021EB00 48 00 00 AC */ b lbl_80222F4C lbl_80222EA4: /* 80222EA4 0021EB04 C0 43 00 18 */ lfs f2, 0x18(r3) /* 80222EA8 0021EB08 C0 02 9C 18 */ lfs f0, lbl_80642218-_SDA2_BASE_(r2) /* 80222EAC 0021EB0C EC 41 10 28 */ fsubs f2, f1, f2 /* 80222EB0 0021EB10 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80222EB4 0021EB14 40 80 00 18 */ bge lbl_80222ECC /* 80222EB8 0021EB18 C0 02 9C 1C */ lfs f0, lbl_8064221C-_SDA2_BASE_(r2) /* 80222EBC 0021EB1C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80222EC0 0021EB20 40 81 00 0C */ ble lbl_80222ECC /* 80222EC4 0021EB24 A8 63 00 1C */ lha r3, 0x1c(r3) /* 80222EC8 0021EB28 48 00 00 84 */ b lbl_80222F4C lbl_80222ECC: /* 80222ECC 0021EB2C A0 03 00 16 */ lhz r0, 0x16(r3) /* 80222ED0 0021EB30 2C 00 00 00 */ cmpwi r0, 0 /* 80222ED4 0021EB34 41 82 00 20 */ beq lbl_80222EF4 /* 80222ED8 0021EB38 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222EDC 0021EB3C 7C 87 02 14 */ add r4, r7, r0 /* 80222EE0 0021EB40 C0 04 00 08 */ lfs f0, 8(r4) /* 80222EE4 0021EB44 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80222EE8 0021EB48 40 80 00 0C */ bge lbl_80222EF4 /* 80222EEC 0021EB4C 38 00 00 00 */ li r0, 0 /* 80222EF0 0021EB50 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80222EF4: /* 80222EF4 0021EB54 A0 03 00 16 */ lhz r0, 0x16(r3) /* 80222EF8 0021EB58 80 83 00 10 */ lwz r4, 0x10(r3) /* 80222EFC 0021EB5C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80222F00 0021EB60 7C 84 02 14 */ add r4, r4, r0 /* 80222F04 0021EB64 C0 04 00 14 */ lfs f0, 0x14(r4) /* 80222F08 0021EB68 38 A4 00 0C */ addi r5, r4, 0xc /* 80222F0C 0021EB6C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222F10 0021EB70 40 80 00 28 */ bge lbl_80222F38 /* 80222F14 0021EB74 48 00 00 14 */ b lbl_80222F28 lbl_80222F18: /* 80222F18 0021EB78 A0 83 00 16 */ lhz r4, 0x16(r3) /* 80222F1C 0021EB7C 38 A5 00 0C */ addi r5, r5, 0xc /* 80222F20 0021EB80 38 04 00 01 */ addi r0, r4, 1 /* 80222F24 0021EB84 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80222F28: /* 80222F28 0021EB88 C0 05 00 08 */ lfs f0, 8(r5) /* 80222F2C 0021EB8C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80222F30 0021EB90 41 80 FF E8 */ blt lbl_80222F18 /* 80222F34 0021EB94 38 85 FF F4 */ addi r4, r5, -12 lbl_80222F38: /* 80222F38 0021EB98 FC 20 F8 90 */ fmr f1, f31 /* 80222F3C 0021EB9C 7F E3 FB 78 */ mr r3, r31 /* 80222F40 0021EBA0 4B FF E2 65 */ bl func_802211A4 /* 80222F44 0021EBA4 D3 FF 00 18 */ stfs f31, 0x18(r31) /* 80222F48 0021EBA8 A8 7F 00 1C */ lha r3, 0x1c(r31) lbl_80222F4C: /* 80222F4C 0021EBAC E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80222F50 0021EBB0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80222F54 0021EBB4 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80222F58 0021EBB8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80222F5C 0021EBBC 7C 08 03 A6 */ mtlr r0 /* 80222F60 0021EBC0 38 21 00 30 */ addi r1, r1, 0x30 /* 80222F64 0021EBC4 4E 80 00 20 */ blr .global func_80222F68 func_80222F68: /* 80222F68 0021EBC8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80222F6C 0021EBCC 7C 08 02 A6 */ mflr r0 /* 80222F70 0021EBD0 90 01 00 34 */ stw r0, 0x34(r1) /* 80222F74 0021EBD4 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80222F78 0021EBD8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80222F7C 0021EBDC FF E0 08 90 */ fmr f31, f1 /* 80222F80 0021EBE0 7C 86 23 78 */ mr r6, r4 /* 80222F84 0021EBE4 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80222F88 0021EBE8 7C 7F 1B 78 */ mr r31, r3 /* 80222F8C 0021EBEC 80 E3 00 10 */ lwz r7, 0x10(r3) /* 80222F90 0021EBF0 2C 07 00 00 */ cmpwi r7, 0 /* 80222F94 0021EBF4 40 82 00 A8 */ bne lbl_8022303C /* 80222F98 0021EBF8 C0 03 00 18 */ lfs f0, 0x18(r3) /* 80222F9C 0021EBFC FC 00 08 00 */ fcmpu cr0, f0, f1 /* 80222FA0 0021EC00 40 82 00 0C */ bne lbl_80222FAC /* 80222FA4 0021EC04 A0 63 00 1C */ lhz r3, 0x1c(r3) /* 80222FA8 0021EC08 48 00 01 A0 */ b lbl_80223148 lbl_80222FAC: /* 80222FAC 0021EC0C A0 83 00 16 */ lhz r4, 0x16(r3) /* 80222FB0 0021EC10 3C 00 43 30 */ lis r0, 0x4330 /* 80222FB4 0021EC14 90 01 00 08 */ stw r0, 8(r1) /* 80222FB8 0021EC18 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 80222FBC 0021EC1C C8 62 9C 00 */ lfd f3, lbl_80642200-_SDA2_BASE_(r2) /* 80222FC0 0021EC20 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 80222FC4 0021EC24 C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 80222FC8 0021EC28 90 01 00 0C */ stw r0, 0xc(r1) /* 80222FCC 0021EC2C C8 41 00 08 */ lfd f2, 8(r1) /* 80222FD0 0021EC30 EC 42 18 28 */ fsubs f2, f2, f3 /* 80222FD4 0021EC34 EC 21 00 B2 */ fmuls f1, f1, f2 /* 80222FD8 0021EC38 EC 00 08 2A */ fadds f0, f0, f1 /* 80222FDC 0021EC3C FC 00 00 1E */ fctiwz f0, f0 /* 80222FE0 0021EC40 D8 01 00 10 */ stfd f0, 0x10(r1) /* 80222FE4 0021EC44 80 01 00 14 */ lwz r0, 0x14(r1) /* 80222FE8 0021EC48 2C 00 00 00 */ cmpwi r0, 0 /* 80222FEC 0021EC4C 41 81 00 14 */ bgt lbl_80223000 /* 80222FF0 0021EC50 80 83 00 00 */ lwz r4, 0(r3) /* 80222FF4 0021EC54 A0 04 00 00 */ lhz r0, 0(r4) /* 80222FF8 0021EC58 B0 03 00 1C */ sth r0, 0x1c(r3) /* 80222FFC 0021EC5C 48 00 00 38 */ b lbl_80223034 lbl_80223000: /* 80223000 0021EC60 A0 83 00 08 */ lhz r4, 8(r3) /* 80223004 0021EC64 7C 00 20 00 */ cmpw r0, r4 /* 80223008 0021EC68 41 80 00 1C */ blt lbl_80223024 /* 8022300C 0021EC6C 38 04 FF FF */ addi r0, r4, -1 /* 80223010 0021EC70 80 83 00 00 */ lwz r4, 0(r3) /* 80223014 0021EC74 54 00 08 3C */ slwi r0, r0, 1 /* 80223018 0021EC78 7C 04 02 2E */ lhzx r0, r4, r0 /* 8022301C 0021EC7C B0 03 00 1C */ sth r0, 0x1c(r3) /* 80223020 0021EC80 48 00 00 14 */ b lbl_80223034 lbl_80223024: /* 80223024 0021EC84 80 83 00 00 */ lwz r4, 0(r3) /* 80223028 0021EC88 54 00 08 3C */ slwi r0, r0, 1 /* 8022302C 0021EC8C 7C 04 02 2E */ lhzx r0, r4, r0 /* 80223030 0021EC90 B0 03 00 1C */ sth r0, 0x1c(r3) lbl_80223034: /* 80223034 0021EC94 A0 63 00 1C */ lhz r3, 0x1c(r3) /* 80223038 0021EC98 48 00 01 10 */ b lbl_80223148 lbl_8022303C: /* 8022303C 0021EC9C C0 02 9C 14 */ lfs f0, lbl_80642214-_SDA2_BASE_(r2) /* 80223040 0021ECA0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80223044 0021ECA4 4C 40 13 82 */ cror 2, 0, 2 /* 80223048 0021ECA8 40 82 00 24 */ bne lbl_8022306C /* 8022304C 0021ECAC A0 07 00 00 */ lhz r0, 0(r7) /* 80223050 0021ECB0 2C 00 00 00 */ cmpwi r0, 0 /* 80223054 0021ECB4 40 82 00 18 */ bne lbl_8022306C /* 80223058 0021ECB8 A0 07 00 02 */ lhz r0, 2(r7) /* 8022305C 0021ECBC 80 63 00 00 */ lwz r3, 0(r3) /* 80223060 0021ECC0 54 00 08 3C */ slwi r0, r0, 1 /* 80223064 0021ECC4 7C 63 02 2E */ lhzx r3, r3, r0 /* 80223068 0021ECC8 48 00 00 E0 */ b lbl_80223148 lbl_8022306C: /* 8022306C 0021ECCC C0 03 00 0C */ lfs f0, 0xc(r3) /* 80223070 0021ECD0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80223074 0021ECD4 4C 41 13 82 */ cror 2, 1, 2 /* 80223078 0021ECD8 40 82 00 28 */ bne lbl_802230A0 /* 8022307C 0021ECDC A0 83 00 14 */ lhz r4, 0x14(r3) /* 80223080 0021ECE0 80 A3 00 00 */ lwz r5, 0(r3) /* 80223084 0021ECE4 38 04 FF FF */ addi r0, r4, -1 /* 80223088 0021ECE8 1C 00 00 0C */ mulli r0, r0, 0xc /* 8022308C 0021ECEC 7C 67 02 14 */ add r3, r7, r0 /* 80223090 0021ECF0 A0 03 00 02 */ lhz r0, 2(r3) /* 80223094 0021ECF4 54 00 08 3C */ slwi r0, r0, 1 /* 80223098 0021ECF8 7C 65 02 2E */ lhzx r3, r5, r0 /* 8022309C 0021ECFC 48 00 00 AC */ b lbl_80223148 lbl_802230A0: /* 802230A0 0021ED00 C0 43 00 18 */ lfs f2, 0x18(r3) /* 802230A4 0021ED04 C0 02 9C 18 */ lfs f0, lbl_80642218-_SDA2_BASE_(r2) /* 802230A8 0021ED08 EC 41 10 28 */ fsubs f2, f1, f2 /* 802230AC 0021ED0C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802230B0 0021ED10 40 80 00 18 */ bge lbl_802230C8 /* 802230B4 0021ED14 C0 02 9C 1C */ lfs f0, lbl_8064221C-_SDA2_BASE_(r2) /* 802230B8 0021ED18 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802230BC 0021ED1C 40 81 00 0C */ ble lbl_802230C8 /* 802230C0 0021ED20 A0 63 00 1C */ lhz r3, 0x1c(r3) /* 802230C4 0021ED24 48 00 00 84 */ b lbl_80223148 lbl_802230C8: /* 802230C8 0021ED28 A0 03 00 16 */ lhz r0, 0x16(r3) /* 802230CC 0021ED2C 2C 00 00 00 */ cmpwi r0, 0 /* 802230D0 0021ED30 41 82 00 20 */ beq lbl_802230F0 /* 802230D4 0021ED34 1C 00 00 0C */ mulli r0, r0, 0xc /* 802230D8 0021ED38 7C 87 02 14 */ add r4, r7, r0 /* 802230DC 0021ED3C C0 04 00 08 */ lfs f0, 8(r4) /* 802230E0 0021ED40 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802230E4 0021ED44 40 80 00 0C */ bge lbl_802230F0 /* 802230E8 0021ED48 38 00 00 00 */ li r0, 0 /* 802230EC 0021ED4C B0 03 00 16 */ sth r0, 0x16(r3) lbl_802230F0: /* 802230F0 0021ED50 A0 03 00 16 */ lhz r0, 0x16(r3) /* 802230F4 0021ED54 80 83 00 10 */ lwz r4, 0x10(r3) /* 802230F8 0021ED58 1C 00 00 0C */ mulli r0, r0, 0xc /* 802230FC 0021ED5C 7C 84 02 14 */ add r4, r4, r0 /* 80223100 0021ED60 C0 04 00 14 */ lfs f0, 0x14(r4) /* 80223104 0021ED64 38 A4 00 0C */ addi r5, r4, 0xc /* 80223108 0021ED68 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8022310C 0021ED6C 40 80 00 28 */ bge lbl_80223134 /* 80223110 0021ED70 48 00 00 14 */ b lbl_80223124 lbl_80223114: /* 80223114 0021ED74 A0 83 00 16 */ lhz r4, 0x16(r3) /* 80223118 0021ED78 38 A5 00 0C */ addi r5, r5, 0xc /* 8022311C 0021ED7C 38 04 00 01 */ addi r0, r4, 1 /* 80223120 0021ED80 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80223124: /* 80223124 0021ED84 C0 05 00 08 */ lfs f0, 8(r5) /* 80223128 0021ED88 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 8022312C 0021ED8C 41 80 FF E8 */ blt lbl_80223114 /* 80223130 0021ED90 38 85 FF F4 */ addi r4, r5, -12 lbl_80223134: /* 80223134 0021ED94 FC 20 F8 90 */ fmr f1, f31 /* 80223138 0021ED98 7F E3 FB 78 */ mr r3, r31 /* 8022313C 0021ED9C 4B FF E2 69 */ bl func_802213A4 /* 80223140 0021EDA0 D3 FF 00 18 */ stfs f31, 0x18(r31) /* 80223144 0021EDA4 A0 7F 00 1C */ lhz r3, 0x1c(r31) lbl_80223148: /* 80223148 0021EDA8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8022314C 0021EDAC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80223150 0021EDB0 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80223154 0021EDB4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80223158 0021EDB8 7C 08 03 A6 */ mtlr r0 /* 8022315C 0021EDBC 38 21 00 30 */ addi r1, r1, 0x30 /* 80223160 0021EDC0 4E 80 00 20 */ blr .global func_80223164 func_80223164: /* 80223164 0021EDC4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80223168 0021EDC8 7C 08 02 A6 */ mflr r0 /* 8022316C 0021EDCC 90 01 00 34 */ stw r0, 0x34(r1) /* 80223170 0021EDD0 DB E1 00 20 */ stfd f31, 0x20(r1) /* 80223174 0021EDD4 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 80223178 0021EDD8 FF E0 08 90 */ fmr f31, f1 /* 8022317C 0021EDDC 7C 86 23 78 */ mr r6, r4 /* 80223180 0021EDE0 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80223184 0021EDE4 7C 7F 1B 78 */ mr r31, r3 /* 80223188 0021EDE8 80 E3 00 10 */ lwz r7, 0x10(r3) /* 8022318C 0021EDEC 2C 07 00 00 */ cmpwi r7, 0 /* 80223190 0021EDF0 40 82 00 F0 */ bne lbl_80223280 /* 80223194 0021EDF4 C0 03 00 18 */ lfs f0, 0x18(r3) /* 80223198 0021EDF8 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 8022319C 0021EDFC 40 82 00 0C */ bne lbl_802231A8 /* 802231A0 0021EE00 80 63 00 1C */ lwz r3, 0x1c(r3) /* 802231A4 0021EE04 48 00 01 E8 */ b lbl_8022338C lbl_802231A8: /* 802231A8 0021EE08 A0 83 00 16 */ lhz r4, 0x16(r3) /* 802231AC 0021EE0C 3C 00 43 30 */ lis r0, 0x4330 /* 802231B0 0021EE10 90 01 00 08 */ stw r0, 8(r1) /* 802231B4 0021EE14 54 80 06 3E */ clrlwi r0, r4, 0x18 /* 802231B8 0021EE18 C8 62 9C 00 */ lfd f3, lbl_80642200-_SDA2_BASE_(r2) /* 802231BC 0021EE1C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802231C0 0021EE20 C0 02 9C 10 */ lfs f0, lbl_80642210-_SDA2_BASE_(r2) /* 802231C4 0021EE24 90 01 00 0C */ stw r0, 0xc(r1) /* 802231C8 0021EE28 C8 41 00 08 */ lfd f2, 8(r1) /* 802231CC 0021EE2C EC 42 18 28 */ fsubs f2, f2, f3 /* 802231D0 0021EE30 EC 21 00 B2 */ fmuls f1, f1, f2 /* 802231D4 0021EE34 EC 00 08 2A */ fadds f0, f0, f1 /* 802231D8 0021EE38 FC 00 00 1E */ fctiwz f0, f0 /* 802231DC 0021EE3C D8 01 00 10 */ stfd f0, 0x10(r1) /* 802231E0 0021EE40 80 01 00 14 */ lwz r0, 0x14(r1) /* 802231E4 0021EE44 2C 00 00 00 */ cmpwi r0, 0 /* 802231E8 0021EE48 41 81 00 2C */ bgt lbl_80223214 /* 802231EC 0021EE4C 80 83 00 00 */ lwz r4, 0(r3) /* 802231F0 0021EE50 88 04 00 00 */ lbz r0, 0(r4) /* 802231F4 0021EE54 98 03 00 1C */ stb r0, 0x1c(r3) /* 802231F8 0021EE58 88 04 00 01 */ lbz r0, 1(r4) /* 802231FC 0021EE5C 98 03 00 1D */ stb r0, 0x1d(r3) /* 80223200 0021EE60 88 04 00 02 */ lbz r0, 2(r4) /* 80223204 0021EE64 98 03 00 1E */ stb r0, 0x1e(r3) /* 80223208 0021EE68 88 04 00 03 */ lbz r0, 3(r4) /* 8022320C 0021EE6C 98 03 00 1F */ stb r0, 0x1f(r3) /* 80223210 0021EE70 48 00 00 68 */ b lbl_80223278 lbl_80223214: /* 80223214 0021EE74 A0 83 00 08 */ lhz r4, 8(r3) /* 80223218 0021EE78 7C 00 20 00 */ cmpw r0, r4 /* 8022321C 0021EE7C 41 80 00 34 */ blt lbl_80223250 /* 80223220 0021EE80 38 04 FF FF */ addi r0, r4, -1 /* 80223224 0021EE84 80 83 00 00 */ lwz r4, 0(r3) /* 80223228 0021EE88 54 00 10 3A */ slwi r0, r0, 2 /* 8022322C 0021EE8C 7C 04 00 EE */ lbzux r0, r4, r0 /* 80223230 0021EE90 98 03 00 1C */ stb r0, 0x1c(r3) /* 80223234 0021EE94 88 04 00 01 */ lbz r0, 1(r4) /* 80223238 0021EE98 98 03 00 1D */ stb r0, 0x1d(r3) /* 8022323C 0021EE9C 88 04 00 02 */ lbz r0, 2(r4) /* 80223240 0021EEA0 98 03 00 1E */ stb r0, 0x1e(r3) /* 80223244 0021EEA4 88 04 00 03 */ lbz r0, 3(r4) /* 80223248 0021EEA8 98 03 00 1F */ stb r0, 0x1f(r3) /* 8022324C 0021EEAC 48 00 00 2C */ b lbl_80223278 lbl_80223250: /* 80223250 0021EEB0 54 00 10 3A */ slwi r0, r0, 2 /* 80223254 0021EEB4 80 83 00 00 */ lwz r4, 0(r3) /* 80223258 0021EEB8 7C 04 00 EE */ lbzux r0, r4, r0 /* 8022325C 0021EEBC 98 03 00 1C */ stb r0, 0x1c(r3) /* 80223260 0021EEC0 88 04 00 01 */ lbz r0, 1(r4) /* 80223264 0021EEC4 98 03 00 1D */ stb r0, 0x1d(r3) /* 80223268 0021EEC8 88 04 00 02 */ lbz r0, 2(r4) /* 8022326C 0021EECC 98 03 00 1E */ stb r0, 0x1e(r3) /* 80223270 0021EED0 88 04 00 03 */ lbz r0, 3(r4) /* 80223274 0021EED4 98 03 00 1F */ stb r0, 0x1f(r3) lbl_80223278: /* 80223278 0021EED8 80 63 00 1C */ lwz r3, 0x1c(r3) /* 8022327C 0021EEDC 48 00 01 10 */ b lbl_8022338C lbl_80223280: /* 80223280 0021EEE0 C0 02 9C 14 */ lfs f0, lbl_80642214-_SDA2_BASE_(r2) /* 80223284 0021EEE4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80223288 0021EEE8 4C 40 13 82 */ cror 2, 0, 2 /* 8022328C 0021EEEC 40 82 00 24 */ bne lbl_802232B0 /* 80223290 0021EEF0 A0 07 00 00 */ lhz r0, 0(r7) /* 80223294 0021EEF4 2C 00 00 00 */ cmpwi r0, 0 /* 80223298 0021EEF8 40 82 00 18 */ bne lbl_802232B0 /* 8022329C 0021EEFC A0 07 00 02 */ lhz r0, 2(r7) /* 802232A0 0021EF00 80 63 00 00 */ lwz r3, 0(r3) /* 802232A4 0021EF04 54 00 10 3A */ slwi r0, r0, 2 /* 802232A8 0021EF08 7C 63 00 2E */ lwzx r3, r3, r0 /* 802232AC 0021EF0C 48 00 00 E0 */ b lbl_8022338C lbl_802232B0: /* 802232B0 0021EF10 C0 03 00 0C */ lfs f0, 0xc(r3) /* 802232B4 0021EF14 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802232B8 0021EF18 4C 41 13 82 */ cror 2, 1, 2 /* 802232BC 0021EF1C 40 82 00 28 */ bne lbl_802232E4 /* 802232C0 0021EF20 A0 83 00 14 */ lhz r4, 0x14(r3) /* 802232C4 0021EF24 80 A3 00 00 */ lwz r5, 0(r3) /* 802232C8 0021EF28 38 04 FF FF */ addi r0, r4, -1 /* 802232CC 0021EF2C 1C 00 00 0C */ mulli r0, r0, 0xc /* 802232D0 0021EF30 7C 67 02 14 */ add r3, r7, r0 /* 802232D4 0021EF34 A0 03 00 02 */ lhz r0, 2(r3) /* 802232D8 0021EF38 54 00 10 3A */ slwi r0, r0, 2 /* 802232DC 0021EF3C 7C 65 00 2E */ lwzx r3, r5, r0 /* 802232E0 0021EF40 48 00 00 AC */ b lbl_8022338C lbl_802232E4: /* 802232E4 0021EF44 C0 43 00 18 */ lfs f2, 0x18(r3) /* 802232E8 0021EF48 C0 02 9C 18 */ lfs f0, lbl_80642218-_SDA2_BASE_(r2) /* 802232EC 0021EF4C EC 41 10 28 */ fsubs f2, f1, f2 /* 802232F0 0021EF50 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802232F4 0021EF54 40 80 00 18 */ bge lbl_8022330C /* 802232F8 0021EF58 C0 02 9C 1C */ lfs f0, lbl_8064221C-_SDA2_BASE_(r2) /* 802232FC 0021EF5C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 80223300 0021EF60 40 81 00 0C */ ble lbl_8022330C /* 80223304 0021EF64 80 63 00 1C */ lwz r3, 0x1c(r3) /* 80223308 0021EF68 48 00 00 84 */ b lbl_8022338C lbl_8022330C: /* 8022330C 0021EF6C A0 03 00 16 */ lhz r0, 0x16(r3) /* 80223310 0021EF70 2C 00 00 00 */ cmpwi r0, 0 /* 80223314 0021EF74 41 82 00 20 */ beq lbl_80223334 /* 80223318 0021EF78 1C 00 00 0C */ mulli r0, r0, 0xc /* 8022331C 0021EF7C 7C 87 02 14 */ add r4, r7, r0 /* 80223320 0021EF80 C0 04 00 08 */ lfs f0, 8(r4) /* 80223324 0021EF84 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 80223328 0021EF88 40 80 00 0C */ bge lbl_80223334 /* 8022332C 0021EF8C 38 00 00 00 */ li r0, 0 /* 80223330 0021EF90 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80223334: /* 80223334 0021EF94 A0 03 00 16 */ lhz r0, 0x16(r3) /* 80223338 0021EF98 80 83 00 10 */ lwz r4, 0x10(r3) /* 8022333C 0021EF9C 1C 00 00 0C */ mulli r0, r0, 0xc /* 80223340 0021EFA0 7C 84 02 14 */ add r4, r4, r0 /* 80223344 0021EFA4 C0 04 00 14 */ lfs f0, 0x14(r4) /* 80223348 0021EFA8 38 A4 00 0C */ addi r5, r4, 0xc /* 8022334C 0021EFAC FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80223350 0021EFB0 40 80 00 28 */ bge lbl_80223378 /* 80223354 0021EFB4 48 00 00 14 */ b lbl_80223368 lbl_80223358: /* 80223358 0021EFB8 A0 83 00 16 */ lhz r4, 0x16(r3) /* 8022335C 0021EFBC 38 A5 00 0C */ addi r5, r5, 0xc /* 80223360 0021EFC0 38 04 00 01 */ addi r0, r4, 1 /* 80223364 0021EFC4 B0 03 00 16 */ sth r0, 0x16(r3) lbl_80223368: /* 80223368 0021EFC8 C0 05 00 08 */ lfs f0, 8(r5) /* 8022336C 0021EFCC FC 00 08 40 */ fcmpo cr0, f0, f1 /* 80223370 0021EFD0 41 80 FF E8 */ blt lbl_80223358 /* 80223374 0021EFD4 38 85 FF F4 */ addi r4, r5, -12 lbl_80223378: /* 80223378 0021EFD8 FC 20 F8 90 */ fmr f1, f31 /* 8022337C 0021EFDC 7F E3 FB 78 */ mr r3, r31 /* 80223380 0021EFE0 4B FF E3 59 */ bl func_802216D8 /* 80223384 0021EFE4 D3 FF 00 18 */ stfs f31, 0x18(r31) /* 80223388 0021EFE8 80 7F 00 1C */ lwz r3, 0x1c(r31) lbl_8022338C: /* 8022338C 0021EFEC E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 80223390 0021EFF0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80223394 0021EFF4 CB E1 00 20 */ lfd f31, 0x20(r1) /* 80223398 0021EFF8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8022339C 0021EFFC 7C 08 03 A6 */ mtlr r0 /* 802233A0 0021F000 38 21 00 30 */ addi r1, r1, 0x30 /* 802233A4 0021F004 4E 80 00 20 */ blr .global func_802233A8 func_802233A8: /* 802233A8 0021F008 38 A0 00 01 */ li r5, 1 /* 802233AC 0021F00C 38 6D A2 B8 */ addi r3, r13, lbl_8063F578-_SDA_BASE_ /* 802233B0 0021F010 38 80 00 04 */ li r4, 4 /* 802233B4 0021F014 38 00 00 00 */ li r0, 0 /* 802233B8 0021F018 98 AD A2 B8 */ stb r5, lbl_8063F578-_SDA_BASE_(r13) /* 802233BC 0021F01C B0 83 00 02 */ sth r4, 2(r3) /* 802233C0 0021F020 98 03 00 04 */ stb r0, 4(r3) /* 802233C4 0021F024 4E 80 00 20 */ blr