.include "macros.inc" .section .ctors, "wa" lbl_ctor: .4byte __sinit_CMorphBall_cpp .section .sdata .balign 8 .global lbl_805A73E8 lbl_805A73E8: # ROM: 0x3F4D88 .4byte 0 .global lbl_805A73EC lbl_805A73EC: # ROM: 0x3F4D8C .float 1.0 .global lbl_805A73F0 lbl_805A73F0: # ROM: 0x3F4D90 .4byte 0x00000013 .global lbl_805A73F4 lbl_805A73F4: # ROM: 0x3F4D94 .4byte 0x00000020 .global lbl_805A73F8 lbl_805A73F8: # ROM: 0x3F4D98 .4byte 0x00000013 .global lbl_805A73FC lbl_805A73FC: # ROM: 0x3F4D9C .4byte 0x00000025 .global lbl_805A7400 lbl_805A7400: # ROM: 0x3F4DA0 .4byte 0 .global lbl_805A7404 lbl_805A7404: # ROM: 0x3F4DA4 .4byte 0 .global lbl_805A7408 lbl_805A7408: # ROM: 0x3F4DA8 .float -1.0 .global lbl_805A740C lbl_805A740C: # ROM: 0x3F4DAC .float 1.0 .global lbl_805A7410 lbl_805A7410: # ROM: 0x3F4DB0 .float 0.2 .global lbl_805A7414 lbl_805A7414: # ROM: 0x3F4DB4 .float -1.0 .global lbl_805A7418 lbl_805A7418: # ROM: 0x3F4DB8 .float 1.0 .global lbl_805A741C lbl_805A741C: # ROM: 0x3F4DBC .float -1.0 .global lbl_805A7420 lbl_805A7420: # ROM: 0x3F4DC0 .float 1.0 .global lbl_805A7424 lbl_805A7424: # ROM: 0x3F4DC4 .4byte 0 .global lbl_805A7428 lbl_805A7428: # ROM: 0x3F4DC8 .4byte 0 .global lbl_805A742C lbl_805A742C: # ROM: 0x3F4DCC .float 1.0 .global lbl_805A7430 lbl_805A7430: # ROM: 0x3F4DD0 .4byte 0 .global lbl_805A7434 lbl_805A7434: # ROM: 0x3F4DD4 .float 1.0 .global lbl_805A7438 lbl_805A7438: # ROM: 0x3F4DD8 .4byte 0 .global lbl_805A743C lbl_805A743C: # ROM: 0x3F4DDC .float 1.0 .global lbl_805A7440 lbl_805A7440: # ROM: 0x3F4DE0 .4byte 0x00000013 .global lbl_805A7444 lbl_805A7444: # ROM: 0x3F4DE4 .4byte 0 .global lbl_805A7448 lbl_805A7448: # ROM: 0x3F4DE8 .4byte 0 .global lbl_805A744C lbl_805A744C: # ROM: 0x3F4DEC .float 1.0 .global lbl_805A7450 lbl_805A7450: # ROM: 0x3F4DF0 .4byte 0 .global lbl_805A7454 lbl_805A7454: # ROM: 0x3F4DF4 .4byte 0 .global lbl_805A7458 lbl_805A7458: # ROM: 0x3F4DF8 .float 1.0 .global lbl_805A745C lbl_805A745C: # ROM: 0x3F4DFC .float 1.0 .global lbl_805A7460 lbl_805A7460: # ROM: 0x3F4E00 .float 1.0 .global lbl_805A7464 lbl_805A7464: # ROM: 0x3F4E04 .4byte 0 .global lbl_805A7468 lbl_805A7468: # ROM: 0x3F4E08 .4byte 0 .global lbl_805A746C lbl_805A746C: # ROM: 0x3F4E0C .4byte 0 .global lbl_805A7470 lbl_805A7470: # ROM: 0x3F4E10 .float 1.0 .global lbl_805A7474 lbl_805A7474: # ROM: 0x3F4E14 .4byte 0x00000005 .global lbl_805A7478 lbl_805A7478: # ROM: 0x3F4E18 .4byte 0 .global lbl_805A747C lbl_805A747C: # ROM: 0x3F4E1C .float 1.0 .global lbl_805A7480 lbl_805A7480: # ROM: 0x3F4E20 .4byte 0 .global lbl_805A7484 lbl_805A7484: # ROM: 0x3F4E24 .4byte 0 .global lbl_805A7488 lbl_805A7488: # ROM: 0x3F4E28 .4byte 0 .global lbl_805A748C lbl_805A748C: # ROM: 0x3F4E2C .4byte 0x00000020 .global lbl_805A7490 lbl_805A7490: # ROM: 0x3F4E30 .4byte 0x00000013 .global lbl_805A7494 lbl_805A7494: # ROM: 0x3F4E34 .4byte 0x00000013 .global lbl_805A7498 lbl_805A7498: # ROM: 0x3F4E38 .4byte 0x00000013 .global lbl_805A749C lbl_805A749C: # ROM: 0x3F4E3C .4byte 0 .global lbl_805A74A0 lbl_805A74A0: # ROM: 0x3F4E40 .4byte 0 .global lbl_805A74A4 lbl_805A74A4: # ROM: 0x3F4E44 .4byte 0x00004000 .global lbl_805A74A8 lbl_805A74A8: # ROM: 0x3F4E48 .4byte 0xFFFFFFFF .4byte 0 .section .bss .balign 8 .lcomm lbl_8046C4F8, 0xC, 4 .lcomm lbl_8046C504, 0x1C, 4 .comm lbl_8056D4F4, 0x84, 4 .section .sbss .balign 8 # CMorphBall .global lbl_805A8EE8 lbl_805A8EE8: .skip 0x4 .global lbl_805A8EEC lbl_805A8EEC: .skip 0x4 .global lbl_805A8EF0 lbl_805A8EF0: .skip 0x4 .global lbl_805A8EF4 lbl_805A8EF4: .skip 0x4 .global lbl_805A8EF8 lbl_805A8EF8: .skip 0x4 .global lbl_805A8EFC lbl_805A8EFC: .skip 0x4 .section .sdata2, "a" .balign 8 .global lbl_805AAE70 lbl_805AAE70: # ROM: 0x3F7710 .4byte 0 .global lbl_805AAE74 lbl_805AAE74: # ROM: 0x3F7714 .float 1.25 .global lbl_805AAE78 lbl_805AAE78: # ROM: 0x3F7718 .4byte 0x41200000 .global lbl_805AAE7C lbl_805AAE7C: # ROM: 0x3F771C .float 1.0 .global lbl_805AAE80 lbl_805AAE80: # ROM: 0x3F7720 .4byte 0x42BE0000 .global lbl_805AAE84 lbl_805AAE84: # ROM: 0x3F7724 .4byte 0x42FE0000 .global lbl_805AAE88 lbl_805AAE88: # ROM: 0x3F7728 .4byte 0xC0A00000 .global lbl_805AAE8C lbl_805AAE8C: # ROM: 0x3F772C .4byte 0x42BE0000 .global lbl_805AAE90 lbl_805AAE90: # ROM: 0x3F7730 .4byte 0x3FCCCCCD .global lbl_805AAE94 lbl_805AAE94: # ROM: 0x3F7734 .4byte 0x42800000 .global lbl_805AAE98 lbl_805AAE98: # ROM: 0x3F7738 .4byte 0x42FE0000 .global lbl_805AAE9C lbl_805AAE9C: # ROM: 0x3F773C .float 4.0 .global lbl_805AAEA0 lbl_805AAEA0: # ROM: 0x3F7740 .4byte 0x3F4CCCCD .global lbl_805AAEA4 lbl_805AAEA4: # ROM: 0x3F7744 .4byte 0x42800000 .global lbl_805AAEA8 lbl_805AAEA8: # ROM: 0x3F7748 .4byte 0x404CCCCD .global lbl_805AAEAC lbl_805AAEAC: # ROM: 0x3F774C .4byte 0x41A00000 .global lbl_805AAEB0 lbl_805AAEB0: # ROM: 0x3F7750 .float 0.25 .global lbl_805AAEB4 lbl_805AAEB4: # ROM: 0x3F7754 .float 5.0 .global lbl_805AAEB8 lbl_805AAEB8: # ROM: 0x3F7758 .float 0.75 .global lbl_805AAEBC lbl_805AAEBC: # ROM: 0x3F775C .float 15.0 .global lbl_805AAEC0 lbl_805AAEC0: # ROM: 0x3F7760 .4byte 0x43300000 .4byte 0 .global lbl_805AAEC8 lbl_805AAEC8: # ROM: 0x3F7768 .float -1.0 .global lbl_805AAECC lbl_805AAECC: # ROM: 0x3F776C .float 0.9 .global lbl_805AAED0 lbl_805AAED0: # ROM: 0x3F7770 .4byte 0x42200000 .global lbl_805AAED4 lbl_805AAED4: # ROM: 0x3F7774 .4byte 0x42A00000 .global lbl_805AAED8 lbl_805AAED8: # ROM: 0x3F7778 .float 0.017453292 .global lbl_805AAEDC lbl_805AAEDC: # ROM: 0x3F777C .float 90.0 .global lbl_805AAEE0 lbl_805AAEE0: # ROM: 0x3F7780 .4byte 0x3FA8F5C3 .global lbl_805AAEE4 lbl_805AAEE4: # ROM: 0x3F7784 .float 0.6 .global lbl_805AAEE8 lbl_805AAEE8: # ROM: 0x3F7788 .float 0.16666667 .4byte 0 .global lbl_805AAEF0 lbl_805AAEF0: # ROM: 0x3F7790 .4byte 0 .4byte 0 .global lbl_805AAEF8 lbl_805AAEF8: # ROM: 0x3F7798 .float 2.0 .global lbl_805AAEFC lbl_805AAEFC: # ROM: 0x3F779C .float 0.1 .global lbl_805AAF00 lbl_805AAF00: # ROM: 0x3F77A0 .float 8.0 .global lbl_805AAF04 lbl_805AAF04: # ROM: 0x3F77A4 .float 0.1 .global lbl_805AAF08 lbl_805AAF08: # ROM: 0x3F77A8 .float 0.2 .global lbl_805AAF0C lbl_805AAF0C: # ROM: 0x3F77AC .4byte 0x3E051EB8 .global lbl_805AAF10 lbl_805AAF10: # ROM: 0x3F77B0 .4byte 0x3CF5C28C .global lbl_805AAF14 lbl_805AAF14: # ROM: 0x3F77B4 .4byte 0x3F266666 .global lbl_805AAF18 lbl_805AAF18: # ROM: 0x3F77B8 .float 0.7 .global lbl_805AAF1C lbl_805AAF1C: # ROM: 0x3F77BC .4byte 0x3D4CCCCD .global lbl_805AAF20 lbl_805AAF20: # ROM: 0x3F77C0 .4byte 0x47435000 .global lbl_805AAF24 lbl_805AAF24: # ROM: 0x3F77C4 .4byte 0x42BE0000 .global lbl_805AAF28 lbl_805AAF28: # ROM: 0x3F77C8 .float 1.5 .4byte 0 .global lbl_805AAF30 lbl_805AAF30: # ROM: 0x3F77D0 .double 4.503601774854144E15 .global lbl_805AAF38 lbl_805AAF38: # ROM: 0x3F77D8 .4byte 0x463B8000 .global lbl_805AAF3C lbl_805AAF3C: # ROM: 0x3F77DC .4byte 0xBD4CCCCD .global lbl_805AAF40 lbl_805AAF40: # ROM: 0x3F77E0 .4byte 0x3FE00000 .global lbl_805AAF44 lbl_805AAF44: # ROM: 0x3F77E4 .4byte 0x3FB33333 .global lbl_805AAF48 lbl_805AAF48: # ROM: 0x3F77E8 .4byte 0x40400000 .global lbl_805AAF4C lbl_805AAF4C: # ROM: 0x3F77EC .4byte 0x471C4000 .global lbl_805AAF50 lbl_805AAF50: # ROM: 0x3F77F0 .4byte 0x447A0000 .global lbl_805AAF54 lbl_805AAF54: # ROM: 0x3F77F4 .4byte 0x3B808081 .global lbl_805AAF58 lbl_805AAF58: # ROM: 0x3F77F8 .4byte 0x40E00000 .global lbl_805AAF5C lbl_805AAF5C: # ROM: 0x3F77FC .4byte 0x3F7D70A4 .global lbl_805AAF60 lbl_805AAF60: # ROM: 0x3F7800 .4byte 0x37480000 .global lbl_805AAF64 lbl_805AAF64: # ROM: 0x3F7804 .4byte 0xBECCCCCD .global lbl_805AAF68 lbl_805AAF68: # ROM: 0x3F7808 .float 0.4 .global lbl_805AAF6C lbl_805AAF6C: # ROM: 0x3F780C .float 0.01 .global lbl_805AAF70 lbl_805AAF70: # ROM: 0x3F7810 .4byte 0xBF19999A .global lbl_805AAF74 lbl_805AAF74: # ROM: 0x3F7814 .float 0.15 .global lbl_805AAF78 lbl_805AAF78: # ROM: 0x3F7818 .float 0.5 .global lbl_805AAF7C lbl_805AAF7C: # ROM: 0x3F781C .4byte 0x41C80000 .global lbl_805AAF80 lbl_805AAF80: # ROM: 0x3F7820 .4byte 0x40900000 .global lbl_805AAF84 lbl_805AAF84: # ROM: 0x3F7824 .4byte 0x40490FDB .global lbl_805AAF88 lbl_805AAF88: # ROM: 0x3F7828 .4byte 0x41F00000 .global lbl_805AAF8C lbl_805AAF8C: # ROM: 0x3F782C .float 255.0 .global lbl_805AAF90 lbl_805AAF90: # ROM: 0x3F7830 .4byte 0x41B80000 .4byte 0 .global lbl_805AAF98 lbl_805AAF98: # ROM: 0x3F7838 .4byte 0x3FE00000 .4byte 0 .global lbl_805AAFA0 lbl_805AAFA0: # ROM: 0x3F7840 .4byte 0x41880000 .global lbl_805AAFA4 lbl_805AAFA4: # ROM: 0x3F7844 .4byte 0x3F733333 .global lbl_805AAFA8 lbl_805AAFA8: # ROM: 0x3F7848 .4byte 0xBF666666 .global lbl_805AAFAC lbl_805AAFAC: # ROM: 0x3F784C .4byte 0x41C90FDB .global lbl_805AAFB0 lbl_805AAFB0: # ROM: 0x3F7850 .4byte 0x44480000 .global lbl_805AAFB4 lbl_805AAFB4: # ROM: 0x3F7854 .float 0.3 .global lbl_805AAFB8 lbl_805AAFB8: # ROM: 0x3F7858 .4byte 0x40080000 .4byte 0 .global lbl_805AAFC0 lbl_805AAFC0: # ROM: 0x3F7860 .4byte 0x43B40000 .global lbl_805AAFC4 lbl_805AAFC4: # ROM: 0x3F7864 .4byte 0x3E22F983 .global lbl_805AAFC8 lbl_805AAFC8: # ROM: 0x3F7868 .4byte 0x3F50624D .4byte 0xE0000000 .global lbl_805AAFD0 lbl_805AAFD0: # ROM: 0x3F7870 .4byte 0x3F847AE1 .float 2.0 .global lbl_805AAFD8 lbl_805AAFD8: # ROM: 0x3F7878 .4byte 0x42480000 .global lbl_805AAFDC lbl_805AAFDC: # ROM: 0x3F787C .float 0.35 .global lbl_805AAFE0 lbl_805AAFE0: # ROM: 0x3F7880 .4byte 0x461C4000 .global lbl_805AAFE4 lbl_805AAFE4: # ROM: 0x3F7884 .4byte 0xBDCCCCCD .global lbl_805AAFE8 lbl_805AAFE8: # ROM: 0x3F7888 .4byte 0xBF266666 .global lbl_805AAFEC lbl_805AAFEC: # ROM: 0x3F788C .float 0.03 .global lbl_805AAFF0 lbl_805AAFF0: # ROM: 0x3F7890 .4byte 0x3D23D70A .global lbl_805AAFF4 lbl_805AAFF4: # ROM: 0x3F7894 .float 6.2831855 .global lbl_805AAFF8 lbl_805AAFF8: # ROM: 0x3F7898 .4byte 0xC0490FDB .global lbl_805AAFFC lbl_805AAFFC: # ROM: 0x3F789C .4byte 0x42C80000 .global lbl_805AB000 lbl_805AB000: # ROM: 0x3F78A0 .float 1.1920929E-7 .global lbl_805AB004 lbl_805AB004: # ROM: 0x3F78A4 .4byte 0xBF59999A .global lbl_805AB008 lbl_805AB008: # ROM: 0x3F78A8 .4byte 0xC0F00000 .global lbl_805AB00C lbl_805AB00C: # ROM: 0x3F78AC .4byte 0x40066666 .global lbl_805AB010 lbl_805AB010: # ROM: 0x3F78B0 .4byte 0x3F99999A .global lbl_805AB014 lbl_805AB014: # ROM: 0x3F78B4 .4byte 0x4019999A .global lbl_805AB018 lbl_805AB018: # ROM: 0x3F78B8 .4byte 0x42652EE0 .global lbl_805AB01C lbl_805AB01C: # ROM: 0x3F78BC .4byte 0xC20C0000 .global lbl_805AB020 lbl_805AB020: # ROM: 0x3F78C0 .4byte 0x42FA0000 .global lbl_805AB024 lbl_805AB024: # ROM: 0x3F78C4 .4byte 0xC25C0000 .global lbl_805AB028 lbl_805AB028: # ROM: 0x3F78C8 .4byte 0x43110000 .global lbl_805AB02C lbl_805AB02C: # ROM: 0x3F78CC .4byte 0x472FC800 .global lbl_805AB030 lbl_805AB030: # ROM: 0x3F78D0 .4byte 0x40D00000 .global lbl_805AB034 lbl_805AB034: # ROM: 0x3F78D4 .4byte 0x3F866666 .global lbl_805AB038 lbl_805AB038: # ROM: 0x3F78D8 .4byte 0x47AFC800 .global lbl_805AB03C lbl_805AB03C: # ROM: 0x3F78DC .4byte 0x3FC90FDB .global lbl_805AB040 lbl_805AB040: # ROM: 0x3F78E0 .4byte 0x47D6D800 .global lbl_805AB044 lbl_805AB044: # ROM: 0x3F78E4 .4byte 0x406CCCCD .global lbl_805AB048 lbl_805AB048: # ROM: 0x3F78E8 .4byte 0x3D75C28F .4byte 0 .global lbl_805AB050 lbl_805AB050: # ROM: 0x3F78F0 .4byte 0x3F911111 .4byte 0x20000000 .section .text, "ax" .global DeleteBallShadow__10CMorphBallFv DeleteBallShadow__10CMorphBallFv: /* 800ED7EC 000EA74C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800ED7F0 000EA750 7C 08 02 A6 */ mflr r0 /* 800ED7F4 000EA754 38 80 00 01 */ li r4, 1 /* 800ED7F8 000EA758 90 01 00 14 */ stw r0, 0x14(r1) /* 800ED7FC 000EA75C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800ED800 000EA760 7C 7F 1B 78 */ mr r31, r3 /* 800ED804 000EA764 80 63 1E 50 */ lwz r3, 0x1e50(r3) /* 800ED808 000EA768 48 1A 92 5D */ bl __dt__16CMorphBallShadowFv /* 800ED80C 000EA76C 38 00 00 00 */ li r0, 0 /* 800ED810 000EA770 90 1F 1E 50 */ stw r0, 0x1e50(r31) /* 800ED814 000EA774 80 01 00 14 */ lwz r0, 0x14(r1) /* 800ED818 000EA778 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800ED81C 000EA77C 7C 08 03 A6 */ mtlr r0 /* 800ED820 000EA780 38 21 00 10 */ addi r1, r1, 0x10 /* 800ED824 000EA784 4E 80 00 20 */ blr .global CreateBallShadow__10CMorphBallFv CreateBallShadow__10CMorphBallFv: /* 800ED828 000EA788 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800ED82C 000EA78C 7C 08 02 A6 */ mflr r0 /* 800ED830 000EA790 90 01 00 34 */ stw r0, 0x34(r1) /* 800ED834 000EA794 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800ED838 000EA798 93 C1 00 28 */ stw r30, 0x28(r1) /* 800ED83C 000EA79C 7C 7E 1B 78 */ mr r30, r3 /* 800ED840 000EA7A0 93 A1 00 24 */ stw r29, 0x24(r1) /* 800ED844 000EA7A4 93 81 00 20 */ stw r28, 0x20(r1) /* 800ED848 000EA7A8 80 03 1E 50 */ lwz r0, 0x1e50(r3) /* 800ED84C 000EA7AC 28 00 00 00 */ cmplwi r0, 0 /* 800ED850 000EA7B0 40 82 00 B4 */ bne lbl_800ED904 /* 800ED854 000EA7B4 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800ED858 000EA7B8 3B A0 00 00 */ li r29, 0 /* 800ED85C 000EA7BC 38 63 EB F4 */ addi r3, r3, lbl_803CEBF4@l /* 800ED860 000EA7C0 3B 80 00 00 */ li r28, 0 /* 800ED864 000EA7C4 38 83 00 DC */ addi r4, r3, 0xdc /* 800ED868 000EA7C8 38 60 00 D4 */ li r3, 0xd4 /* 800ED86C 000EA7CC 38 A0 00 00 */ li r5, 0 /* 800ED870 000EA7D0 48 22 7F FD */ bl __nw__FUlPCcPCc /* 800ED874 000EA7D4 7C 7F 1B 79 */ or. r31, r3, r3 /* 800ED878 000EA7D8 41 82 00 54 */ beq lbl_800ED8CC /* 800ED87C 000EA7DC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800ED880 000EA7E0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800ED884 000EA7E4 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800ED888 000EA7E8 38 61 00 10 */ addi r3, r1, 0x10 /* 800ED88C 000EA7EC 81 84 00 00 */ lwz r12, 0(r4) /* 800ED890 000EA7F0 38 A5 00 E3 */ addi r5, r5, 0xe3 /* 800ED894 000EA7F4 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800ED898 000EA7F8 7D 89 03 A6 */ mtctr r12 /* 800ED89C 000EA7FC 4E 80 04 21 */ bctrl /* 800ED8A0 000EA800 38 61 00 08 */ addi r3, r1, 8 /* 800ED8A4 000EA804 38 81 00 10 */ addi r4, r1, 0x10 /* 800ED8A8 000EA808 3B A0 00 01 */ li r29, 1 /* 800ED8AC 000EA80C 48 25 35 FD */ bl __ct__6CTokenFRC6CToken /* 800ED8B0 000EA810 7F E3 FB 78 */ mr r3, r31 /* 800ED8B4 000EA814 38 C1 00 08 */ addi r6, r1, 8 /* 800ED8B8 000EA818 3B 80 00 01 */ li r28, 1 /* 800ED8BC 000EA81C 38 80 00 40 */ li r4, 0x40 /* 800ED8C0 000EA820 38 A0 00 40 */ li r5, 0x40 /* 800ED8C4 000EA824 48 1A 92 75 */ bl "__ct__16CMorphBallShadowFiiRC17TToken<8CTexture>" /* 800ED8C8 000EA828 7C 7F 1B 78 */ mr r31, r3 lbl_800ED8CC: /* 800ED8CC 000EA82C 80 7E 1E 50 */ lwz r3, 0x1e50(r30) /* 800ED8D0 000EA830 38 80 00 01 */ li r4, 1 /* 800ED8D4 000EA834 48 1A 91 91 */ bl __dt__16CMorphBallShadowFv /* 800ED8D8 000EA838 7F 80 07 75 */ extsb. r0, r28 /* 800ED8DC 000EA83C 93 FE 1E 50 */ stw r31, 0x1e50(r30) /* 800ED8E0 000EA840 41 82 00 10 */ beq lbl_800ED8F0 /* 800ED8E4 000EA844 38 61 00 08 */ addi r3, r1, 8 /* 800ED8E8 000EA848 38 80 00 00 */ li r4, 0 /* 800ED8EC 000EA84C 48 25 35 55 */ bl __dt__6CTokenFv lbl_800ED8F0: /* 800ED8F0 000EA850 7F A0 07 75 */ extsb. r0, r29 /* 800ED8F4 000EA854 41 82 00 10 */ beq lbl_800ED904 /* 800ED8F8 000EA858 38 61 00 10 */ addi r3, r1, 0x10 /* 800ED8FC 000EA85C 38 80 FF FF */ li r4, -1 /* 800ED900 000EA860 48 25 35 41 */ bl __dt__6CTokenFv lbl_800ED904: /* 800ED904 000EA864 80 01 00 34 */ lwz r0, 0x34(r1) /* 800ED908 000EA868 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800ED90C 000EA86C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800ED910 000EA870 83 A1 00 24 */ lwz r29, 0x24(r1) /* 800ED914 000EA874 83 81 00 20 */ lwz r28, 0x20(r1) /* 800ED918 000EA878 7C 08 03 A6 */ mtlr r0 /* 800ED91C 000EA87C 38 21 00 30 */ addi r1, r1, 0x30 /* 800ED920 000EA880 4E 80 00 20 */ blr .global RenderToShadowTex__10CMorphBallFR13CStateManager RenderToShadowTex__10CMorphBallFR13CStateManager: /* 800ED924 000EA884 94 21 FF A0 */ stwu r1, -0x60(r1) /* 800ED928 000EA888 7C 08 02 A6 */ mflr r0 /* 800ED92C 000EA88C 90 01 00 64 */ stw r0, 0x64(r1) /* 800ED930 000EA890 DB E1 00 50 */ stfd f31, 0x50(r1) /* 800ED934 000EA894 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 800ED938 000EA898 93 E1 00 4C */ stw r31, 0x4c(r1) /* 800ED93C 000EA89C 93 C1 00 48 */ stw r30, 0x48(r1) /* 800ED940 000EA8A0 7C 7E 1B 78 */ mr r30, r3 /* 800ED944 000EA8A4 7C 9F 23 78 */ mr r31, r4 /* 800ED948 000EA8A8 80 03 1E 50 */ lwz r0, 0x1e50(r3) /* 800ED94C 000EA8AC 28 00 00 00 */ cmplwi r0, 0 /* 800ED950 000EA8B0 41 82 00 AC */ beq lbl_800ED9FC /* 800ED954 000EA8B4 C3 FE 00 0C */ lfs f31, 0xc(r30) /* 800ED958 000EA8B8 38 61 00 20 */ addi r3, r1, 0x20 /* 800ED95C 000EA8BC 80 9E 00 00 */ lwz r4, 0(r30) /* 800ED960 000EA8C0 48 02 CC CD */ bl GetPrimitiveOffset__13CPhysicsActorCFv /* 800ED964 000EA8C4 80 DE 00 00 */ lwz r6, 0(r30) /* 800ED968 000EA8C8 38 61 00 2C */ addi r3, r1, 0x2c /* 800ED96C 000EA8CC C0 41 00 20 */ lfs f2, 0x20(r1) /* 800ED970 000EA8D0 38 81 00 14 */ addi r4, r1, 0x14 /* 800ED974 000EA8D4 C0 66 00 40 */ lfs f3, 0x40(r6) /* 800ED978 000EA8D8 38 A1 00 08 */ addi r5, r1, 8 /* 800ED97C 000EA8DC C0 26 00 50 */ lfs f1, 0x50(r6) /* 800ED980 000EA8E0 C0 01 00 24 */ lfs f0, 0x24(r1) /* 800ED984 000EA8E4 EC 43 10 2A */ fadds f2, f3, f2 /* 800ED988 000EA8E8 C0 A2 91 50 */ lfs f5, lbl_805AAE70@sda21(r2) /* 800ED98C 000EA8EC EC 81 00 2A */ fadds f4, f1, f0 /* 800ED990 000EA8F0 C0 26 00 60 */ lfs f1, 0x60(r6) /* 800ED994 000EA8F4 C0 01 00 28 */ lfs f0, 0x28(r1) /* 800ED998 000EA8F8 EC E2 28 2A */ fadds f7, f2, f5 /* 800ED99C 000EA8FC C0 42 91 54 */ lfs f2, lbl_805AAE74@sda21(r2) /* 800ED9A0 000EA900 EC 61 00 2A */ fadds f3, f1, f0 /* 800ED9A4 000EA904 C0 3E 00 0C */ lfs f1, 0xc(r30) /* 800ED9A8 000EA908 EC C4 28 2A */ fadds f6, f4, f5 /* 800ED9AC 000EA90C C0 02 91 58 */ lfs f0, lbl_805AAE78@sda21(r2) /* 800ED9B0 000EA910 EC 22 00 72 */ fmuls f1, f2, f1 /* 800ED9B4 000EA914 EC A3 F8 2A */ fadds f5, f3, f31 /* 800ED9B8 000EA918 EC 81 38 2A */ fadds f4, f1, f7 /* 800ED9BC 000EA91C EC 61 30 2A */ fadds f3, f1, f6 /* 800ED9C0 000EA920 D0 A1 00 10 */ stfs f5, 0x10(r1) /* 800ED9C4 000EA924 EC 47 08 28 */ fsubs f2, f7, f1 /* 800ED9C8 000EA928 EC 26 08 28 */ fsubs f1, f6, f1 /* 800ED9CC 000EA92C D0 81 00 08 */ stfs f4, 8(r1) /* 800ED9D0 000EA930 EC 05 00 28 */ fsubs f0, f5, f0 /* 800ED9D4 000EA934 D0 61 00 0C */ stfs f3, 0xc(r1) /* 800ED9D8 000EA938 D0 41 00 14 */ stfs f2, 0x14(r1) /* 800ED9DC 000EA93C D0 21 00 18 */ stfs f1, 0x18(r1) /* 800ED9E0 000EA940 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800ED9E4 000EA944 48 24 AB 25 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 800ED9E8 000EA948 80 7E 1E 50 */ lwz r3, 0x1e50(r30) /* 800ED9EC 000EA94C 7F E5 FB 78 */ mr r5, r31 /* 800ED9F0 000EA950 80 DE 00 00 */ lwz r6, 0(r30) /* 800ED9F4 000EA954 38 81 00 2C */ addi r4, r1, 0x2c /* 800ED9F8 000EA958 48 1A 88 69 */ bl RenderIdBuffer__16CMorphBallShadowFRC6CAABoxR13CStateManagerR7CPlayer lbl_800ED9FC: /* 800ED9FC 000EA95C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 800EDA00 000EA960 80 01 00 64 */ lwz r0, 0x64(r1) /* 800EDA04 000EA964 CB E1 00 50 */ lfd f31, 0x50(r1) /* 800EDA08 000EA968 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 800EDA0C 000EA96C 83 C1 00 48 */ lwz r30, 0x48(r1) /* 800EDA10 000EA970 7C 08 03 A6 */ mtlr r0 /* 800EDA14 000EA974 38 21 00 60 */ addi r1, r1, 0x60 /* 800EDA18 000EA978 4E 80 00 20 */ blr .global DrawBallShadow__10CMorphBallFR13CStateManager DrawBallShadow__10CMorphBallFR13CStateManager: /* 800EDA1C 000EA97C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800EDA20 000EA980 7C 08 02 A6 */ mflr r0 /* 800EDA24 000EA984 90 01 00 24 */ stw r0, 0x24(r1) /* 800EDA28 000EA988 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800EDA2C 000EA98C 7C 9F 23 78 */ mr r31, r4 /* 800EDA30 000EA990 93 C1 00 18 */ stw r30, 0x18(r1) /* 800EDA34 000EA994 7C 7E 1B 78 */ mr r30, r3 /* 800EDA38 000EA998 80 03 1E 50 */ lwz r0, 0x1e50(r3) /* 800EDA3C 000EA99C 28 00 00 00 */ cmplwi r0, 0 /* 800EDA40 000EA9A0 41 82 00 C4 */ beq lbl_800EDB04 /* 800EDA44 000EA9A4 80 7E 00 00 */ lwz r3, 0(r30) /* 800EDA48 000EA9A8 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800EDA4C 000EA9AC 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 800EDA50 000EA9B0 2C 00 00 02 */ cmpwi r0, 2 /* 800EDA54 000EA9B4 41 82 00 6C */ beq lbl_800EDAC0 /* 800EDA58 000EA9B8 40 80 00 14 */ bge lbl_800EDA6C /* 800EDA5C 000EA9BC 2C 00 00 00 */ cmpwi r0, 0 /* 800EDA60 000EA9C0 41 82 00 A4 */ beq lbl_800EDB04 /* 800EDA64 000EA9C4 40 80 00 94 */ bge lbl_800EDAF8 /* 800EDA68 000EA9C8 48 00 00 90 */ b lbl_800EDAF8 lbl_800EDA6C: /* 800EDA6C 000EA9CC 2C 00 00 04 */ cmpwi r0, 4 /* 800EDA70 000EA9D0 40 80 00 88 */ bge lbl_800EDAF8 /* 800EDA74 000EA9D4 48 00 00 0C */ b lbl_800EDA80 /* 800EDA78 000EA9D8 48 00 00 80 */ b lbl_800EDAF8 /* 800EDA7C 000EA9DC 48 00 00 88 */ b lbl_800EDB04 lbl_800EDA80: /* 800EDA80 000EA9E0 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800EDA84 000EA9E4 C0 43 05 78 */ lfs f2, 0x578(r3) /* 800EDA88 000EA9E8 FC 01 10 00 */ fcmpu cr0, f1, f2 /* 800EDA8C 000EA9EC 40 82 00 08 */ bne lbl_800EDA94 /* 800EDA90 000EA9F0 48 00 00 24 */ b lbl_800EDAB4 lbl_800EDA94: /* 800EDA94 000EA9F4 C0 03 05 74 */ lfs f0, 0x574(r3) /* 800EDA98 000EA9F8 38 81 00 0C */ addi r4, r1, 0xc /* 800EDA9C 000EA9FC 38 6D 88 28 */ addi r3, r13, lbl_805A73E8@sda21 /* 800EDAA0 000EAA00 38 AD 88 2C */ addi r5, r13, lbl_805A73EC@sda21 /* 800EDAA4 000EAA04 EC 00 10 24 */ fdivs f0, f0, f2 /* 800EDAA8 000EAA08 D0 01 00 0C */ stfs f0, 0xc(r1) /* 800EDAAC 000EAA0C 4B F1 E8 09 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800EDAB0 000EAA10 C0 23 00 00 */ lfs f1, 0(r3) lbl_800EDAB4: /* 800EDAB4 000EAA14 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800EDAB8 000EAA18 EC 20 08 28 */ fsubs f1, f0, f1 /* 800EDABC 000EAA1C 48 00 00 3C */ b lbl_800EDAF8 lbl_800EDAC0: /* 800EDAC0 000EAA20 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800EDAC4 000EAA24 C0 23 05 78 */ lfs f1, 0x578(r3) /* 800EDAC8 000EAA28 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 800EDACC 000EAA2C 40 82 00 08 */ bne lbl_800EDAD4 /* 800EDAD0 000EAA30 48 00 00 24 */ b lbl_800EDAF4 lbl_800EDAD4: /* 800EDAD4 000EAA34 C0 03 05 74 */ lfs f0, 0x574(r3) /* 800EDAD8 000EAA38 38 81 00 08 */ addi r4, r1, 8 /* 800EDADC 000EAA3C 38 6D 88 28 */ addi r3, r13, lbl_805A73E8@sda21 /* 800EDAE0 000EAA40 38 AD 88 2C */ addi r5, r13, lbl_805A73EC@sda21 /* 800EDAE4 000EAA44 EC 00 08 24 */ fdivs f0, f0, f1 /* 800EDAE8 000EAA48 D0 01 00 08 */ stfs f0, 8(r1) /* 800EDAEC 000EAA4C 4B F1 E7 C9 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800EDAF0 000EAA50 C0 03 00 00 */ lfs f0, 0(r3) lbl_800EDAF4: /* 800EDAF4 000EAA54 FC 20 00 90 */ fmr f1, f0 lbl_800EDAF8: /* 800EDAF8 000EAA58 80 7E 1E 50 */ lwz r3, 0x1e50(r30) /* 800EDAFC 000EAA5C 7F E4 FB 78 */ mr r4, r31 /* 800EDB00 000EAA60 48 1A 81 B1 */ bl Render__16CMorphBallShadowFR13CStateManagerf lbl_800EDB04: /* 800EDB04 000EAA64 80 01 00 24 */ lwz r0, 0x24(r1) /* 800EDB08 000EAA68 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800EDB0C 000EAA6C 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800EDB10 000EAA70 7C 08 03 A6 */ mtlr r0 /* 800EDB14 000EAA74 38 21 00 20 */ addi r1, r1, 0x20 /* 800EDB18 000EAA78 4E 80 00 20 */ blr .global InitializeWakeEffects__10CMorphBallFv InitializeWakeEffects__10CMorphBallFv: /* 800EDB1C 000EAA7C 94 21 FE B0 */ stwu r1, -0x150(r1) /* 800EDB20 000EAA80 7C 08 02 A6 */ mflr r0 /* 800EDB24 000EAA84 3C 80 80 57 */ lis r4, lbl_8056D4F4@ha /* 800EDB28 000EAA88 90 01 01 54 */ stw r0, 0x154(r1) /* 800EDB2C 000EAA8C BE A1 01 24 */ stmw r21, 0x124(r1) /* 800EDB30 000EAA90 7C 7F 1B 78 */ mr r31, r3 /* 800EDB34 000EAA94 38 64 D4 F4 */ addi r3, r4, lbl_8056D4F4@l /* 800EDB38 000EAA98 80 83 00 00 */ lwz r4, 0(r3) /* 800EDB3C 000EAA9C 2C 04 00 20 */ cmpwi r4, 0x20 /* 800EDB40 000EAAA0 40 80 00 44 */ bge lbl_800EDB84 /* 800EDB44 000EAAA4 54 80 10 3A */ slwi r0, r4, 2 /* 800EDB48 000EAAA8 20 84 00 20 */ subfic r4, r4, 0x20 /* 800EDB4C 000EAAAC 7C 63 02 14 */ add r3, r3, r0 /* 800EDB50 000EAAB0 80 0D 88 E8 */ lwz r0, lbl_805A74A8@sda21(r13) /* 800EDB54 000EAAB4 7C 89 03 A6 */ mtctr r4 /* 800EDB58 000EAAB8 2C 04 00 00 */ cmpwi r4, 0 /* 800EDB5C 000EAABC 38 63 00 04 */ addi r3, r3, 4 /* 800EDB60 000EAAC0 40 81 00 18 */ ble lbl_800EDB78 lbl_800EDB64: /* 800EDB64 000EAAC4 28 03 00 00 */ cmplwi r3, 0 /* 800EDB68 000EAAC8 41 82 00 08 */ beq lbl_800EDB70 /* 800EDB6C 000EAACC 90 03 00 00 */ stw r0, 0(r3) lbl_800EDB70: /* 800EDB70 000EAAD0 38 63 00 04 */ addi r3, r3, 4 /* 800EDB74 000EAAD4 42 00 FF F0 */ bdnz lbl_800EDB64 lbl_800EDB78: /* 800EDB78 000EAAD8 3C 60 80 57 */ lis r3, lbl_8056D4F4@ha /* 800EDB7C 000EAADC 38 00 00 20 */ li r0, 0x20 /* 800EDB80 000EAAE0 90 03 D4 F4 */ stw r0, lbl_8056D4F4@l(r3) lbl_800EDB84: /* 800EDB84 000EAAE4 3C 80 80 57 */ lis r4, lbl_8056D4F4@ha /* 800EDB88 000EAAE8 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDB8C 000EAAEC 39 44 D4 F4 */ addi r10, r4, lbl_8056D4F4@l /* 800EDB90 000EAAF0 38 80 00 00 */ li r4, 0 /* 800EDB94 000EAAF4 39 20 00 02 */ li r9, 2 /* 800EDB98 000EAAF8 39 00 00 03 */ li r8, 3 /* 800EDB9C 000EAAFC 38 E0 00 04 */ li r7, 4 /* 800EDBA0 000EAB00 38 C0 00 05 */ li r6, 5 /* 800EDBA4 000EAB04 38 00 00 06 */ li r0, 6 /* 800EDBA8 000EAB08 38 63 EB F4 */ addi r3, r3, lbl_803CEBF4@l /* 800EDBAC 000EAB0C 90 8A 00 20 */ stw r4, 0x20(r10) /* 800EDBB0 000EAB10 38 83 00 DC */ addi r4, r3, 0xdc /* 800EDBB4 000EAB14 38 60 01 2C */ li r3, 0x12c /* 800EDBB8 000EAB18 38 A0 00 00 */ li r5, 0 /* 800EDBBC 000EAB1C 91 2A 00 24 */ stw r9, 0x24(r10) /* 800EDBC0 000EAB20 91 0A 00 28 */ stw r8, 0x28(r10) /* 800EDBC4 000EAB24 90 EA 00 30 */ stw r7, 0x30(r10) /* 800EDBC8 000EAB28 90 CA 00 34 */ stw r6, 0x34(r10) /* 800EDBCC 000EAB2C 90 0A 00 48 */ stw r0, 0x48(r10) /* 800EDBD0 000EAB30 48 22 7C 9D */ bl __nw__FUlPCcPCc /* 800EDBD4 000EAB34 7C 64 1B 79 */ or. r4, r3, r3 /* 800EDBD8 000EAB38 41 82 00 0C */ beq lbl_800EDBE4 /* 800EDBDC 000EAB3C 48 27 94 91 */ bl __ct__15CGenDescriptionFv /* 800EDBE0 000EAB40 7C 64 1B 78 */ mr r4, r3 lbl_800EDBE4: /* 800EDBE4 000EAB44 3A A1 01 18 */ addi r21, r1, 0x118 /* 800EDBE8 000EAB48 38 61 00 08 */ addi r3, r1, 8 /* 800EDBEC 000EAB4C 4B FA 1D 55 */ bl "GetNewDerivedObject__43TObjOwnerDerivedFromIObj<15CGenDescription>FP15CGenDescription" /* 800EDBF0 000EAB50 38 00 00 00 */ li r0, 0 /* 800EDBF4 000EAB54 80 81 00 0C */ lwz r4, 0xc(r1) /* 800EDBF8 000EAB58 98 01 00 08 */ stb r0, 8(r1) /* 800EDBFC 000EAB5C 7E A3 AB 78 */ mr r3, r21 /* 800EDC00 000EAB60 48 25 33 05 */ bl __ct__6CTokenFP4IObj /* 800EDC04 000EAB64 88 01 00 08 */ lbz r0, 8(r1) /* 800EDC08 000EAB68 28 00 00 00 */ cmplwi r0, 0 /* 800EDC0C 000EAB6C 41 82 00 24 */ beq lbl_800EDC30 /* 800EDC10 000EAB70 80 61 00 0C */ lwz r3, 0xc(r1) /* 800EDC14 000EAB74 28 03 00 00 */ cmplwi r3, 0 /* 800EDC18 000EAB78 41 82 00 18 */ beq lbl_800EDC30 /* 800EDC1C 000EAB7C 81 83 00 00 */ lwz r12, 0(r3) /* 800EDC20 000EAB80 38 80 00 01 */ li r4, 1 /* 800EDC24 000EAB84 81 8C 00 08 */ lwz r12, 8(r12) /* 800EDC28 000EAB88 7D 89 03 A6 */ mtctr r12 /* 800EDC2C 000EAB8C 4E 80 04 21 */ bctrl lbl_800EDC30: /* 800EDC30 000EAB90 80 7F 1B 84 */ lwz r3, 0x1b84(r31) /* 800EDC34 000EAB94 2C 03 00 08 */ cmpwi r3, 8 /* 800EDC38 000EAB98 40 80 00 48 */ bge lbl_800EDC80 /* 800EDC3C 000EAB9C 54 60 18 38 */ slwi r0, r3, 3 /* 800EDC40 000EABA0 23 03 00 08 */ subfic r24, r3, 8 /* 800EDC44 000EABA4 7E FF 02 14 */ add r23, r31, r0 /* 800EDC48 000EABA8 3A C0 00 00 */ li r22, 0 /* 800EDC4C 000EABAC 3A F7 1B 88 */ addi r23, r23, 0x1b88 /* 800EDC50 000EABB0 48 00 00 20 */ b lbl_800EDC70 lbl_800EDC54: /* 800EDC54 000EABB4 28 17 00 00 */ cmplwi r23, 0 /* 800EDC58 000EABB8 41 82 00 10 */ beq lbl_800EDC68 /* 800EDC5C 000EABBC 7E E3 BB 78 */ mr r3, r23 /* 800EDC60 000EABC0 38 81 01 18 */ addi r4, r1, 0x118 /* 800EDC64 000EABC4 48 25 32 45 */ bl __ct__6CTokenFRC6CToken lbl_800EDC68: /* 800EDC68 000EABC8 3A D6 00 01 */ addi r22, r22, 1 /* 800EDC6C 000EABCC 3A F7 00 08 */ addi r23, r23, 8 lbl_800EDC70: /* 800EDC70 000EABD0 7C 16 C0 00 */ cmpw r22, r24 /* 800EDC74 000EABD4 41 80 FF E0 */ blt lbl_800EDC54 /* 800EDC78 000EABD8 38 00 00 08 */ li r0, 8 /* 800EDC7C 000EABDC 90 1F 1B 84 */ stw r0, 0x1b84(r31) lbl_800EDC80: /* 800EDC80 000EABE0 38 61 01 18 */ addi r3, r1, 0x118 /* 800EDC84 000EABE4 38 80 00 00 */ li r4, 0 /* 800EDC88 000EABE8 48 25 31 B9 */ bl __dt__6CTokenFv /* 800EDC8C 000EABEC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EDC90 000EABF0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDC94 000EABF4 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800EDC98 000EABF8 38 61 01 10 */ addi r3, r1, 0x110 /* 800EDC9C 000EABFC 81 84 00 00 */ lwz r12, 0(r4) /* 800EDCA0 000EAC00 38 A5 00 F1 */ addi r5, r5, 0xf1 /* 800EDCA4 000EAC04 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EDCA8 000EAC08 7D 89 03 A6 */ mtctr r12 /* 800EDCAC 000EAC0C 4E 80 04 21 */ bctrl /* 800EDCB0 000EAC10 38 61 01 08 */ addi r3, r1, 0x108 /* 800EDCB4 000EAC14 38 81 01 10 */ addi r4, r1, 0x110 /* 800EDCB8 000EAC18 48 25 31 F1 */ bl __ct__6CTokenFRC6CToken /* 800EDCBC 000EAC1C 3A FF 1B 88 */ addi r23, r31, 0x1b88 /* 800EDCC0 000EAC20 38 81 01 08 */ addi r4, r1, 0x108 /* 800EDCC4 000EAC24 3B 17 00 10 */ addi r24, r23, 0x10 /* 800EDCC8 000EAC28 7F 03 C3 78 */ mr r3, r24 /* 800EDCCC 000EAC2C 48 25 2F F9 */ bl __as__6CTokenFRC6CToken /* 800EDCD0 000EAC30 38 61 01 08 */ addi r3, r1, 0x108 /* 800EDCD4 000EAC34 38 80 00 00 */ li r4, 0 /* 800EDCD8 000EAC38 48 25 31 69 */ bl __dt__6CTokenFv /* 800EDCDC 000EAC3C 38 61 01 10 */ addi r3, r1, 0x110 /* 800EDCE0 000EAC40 38 80 FF FF */ li r4, -1 /* 800EDCE4 000EAC44 48 25 31 5D */ bl __dt__6CTokenFv /* 800EDCE8 000EAC48 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EDCEC 000EAC4C 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDCF0 000EAC50 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800EDCF4 000EAC54 38 61 01 00 */ addi r3, r1, 0x100 /* 800EDCF8 000EAC58 81 84 00 00 */ lwz r12, 0(r4) /* 800EDCFC 000EAC5C 38 A5 00 FA */ addi r5, r5, 0xfa /* 800EDD00 000EAC60 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EDD04 000EAC64 7D 89 03 A6 */ mtctr r12 /* 800EDD08 000EAC68 4E 80 04 21 */ bctrl /* 800EDD0C 000EAC6C 38 61 00 F8 */ addi r3, r1, 0xf8 /* 800EDD10 000EAC70 38 81 01 00 */ addi r4, r1, 0x100 /* 800EDD14 000EAC74 48 25 31 95 */ bl __ct__6CTokenFRC6CToken /* 800EDD18 000EAC78 7E E3 BB 78 */ mr r3, r23 /* 800EDD1C 000EAC7C 38 81 00 F8 */ addi r4, r1, 0xf8 /* 800EDD20 000EAC80 48 25 2F A5 */ bl __as__6CTokenFRC6CToken /* 800EDD24 000EAC84 38 61 00 F8 */ addi r3, r1, 0xf8 /* 800EDD28 000EAC88 38 80 00 00 */ li r4, 0 /* 800EDD2C 000EAC8C 48 25 31 15 */ bl __dt__6CTokenFv /* 800EDD30 000EAC90 38 61 01 00 */ addi r3, r1, 0x100 /* 800EDD34 000EAC94 38 80 FF FF */ li r4, -1 /* 800EDD38 000EAC98 48 25 31 09 */ bl __dt__6CTokenFv /* 800EDD3C 000EAC9C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EDD40 000EACA0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDD44 000EACA4 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800EDD48 000EACA8 38 61 00 F0 */ addi r3, r1, 0xf0 /* 800EDD4C 000EACAC 81 84 00 00 */ lwz r12, 0(r4) /* 800EDD50 000EACB0 38 A5 01 05 */ addi r5, r5, 0x105 /* 800EDD54 000EACB4 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EDD58 000EACB8 7D 89 03 A6 */ mtctr r12 /* 800EDD5C 000EACBC 4E 80 04 21 */ bctrl /* 800EDD60 000EACC0 38 61 00 E8 */ addi r3, r1, 0xe8 /* 800EDD64 000EACC4 38 81 00 F0 */ addi r4, r1, 0xf0 /* 800EDD68 000EACC8 48 25 31 41 */ bl __ct__6CTokenFRC6CToken /* 800EDD6C 000EACCC 3B 37 00 08 */ addi r25, r23, 8 /* 800EDD70 000EACD0 38 81 00 E8 */ addi r4, r1, 0xe8 /* 800EDD74 000EACD4 7F 23 CB 78 */ mr r3, r25 /* 800EDD78 000EACD8 48 25 2F 4D */ bl __as__6CTokenFRC6CToken /* 800EDD7C 000EACDC 38 61 00 E8 */ addi r3, r1, 0xe8 /* 800EDD80 000EACE0 38 80 00 00 */ li r4, 0 /* 800EDD84 000EACE4 48 25 30 BD */ bl __dt__6CTokenFv /* 800EDD88 000EACE8 38 61 00 F0 */ addi r3, r1, 0xf0 /* 800EDD8C 000EACEC 38 80 FF FF */ li r4, -1 /* 800EDD90 000EACF0 48 25 30 B1 */ bl __dt__6CTokenFv /* 800EDD94 000EACF4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EDD98 000EACF8 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDD9C 000EACFC 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800EDDA0 000EAD00 38 61 00 E0 */ addi r3, r1, 0xe0 /* 800EDDA4 000EAD04 81 84 00 00 */ lwz r12, 0(r4) /* 800EDDA8 000EAD08 38 A5 01 16 */ addi r5, r5, 0x116 /* 800EDDAC 000EAD0C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EDDB0 000EAD10 7D 89 03 A6 */ mtctr r12 /* 800EDDB4 000EAD14 4E 80 04 21 */ bctrl /* 800EDDB8 000EAD18 38 61 00 D8 */ addi r3, r1, 0xd8 /* 800EDDBC 000EAD1C 38 81 00 E0 */ addi r4, r1, 0xe0 /* 800EDDC0 000EAD20 48 25 30 E9 */ bl __ct__6CTokenFRC6CToken /* 800EDDC4 000EAD24 3B B7 00 18 */ addi r29, r23, 0x18 /* 800EDDC8 000EAD28 38 81 00 D8 */ addi r4, r1, 0xd8 /* 800EDDCC 000EAD2C 7F A3 EB 78 */ mr r3, r29 /* 800EDDD0 000EAD30 48 25 2E F5 */ bl __as__6CTokenFRC6CToken /* 800EDDD4 000EAD34 38 61 00 D8 */ addi r3, r1, 0xd8 /* 800EDDD8 000EAD38 38 80 00 00 */ li r4, 0 /* 800EDDDC 000EAD3C 48 25 30 65 */ bl __dt__6CTokenFv /* 800EDDE0 000EAD40 38 61 00 E0 */ addi r3, r1, 0xe0 /* 800EDDE4 000EAD44 38 80 FF FF */ li r4, -1 /* 800EDDE8 000EAD48 48 25 30 59 */ bl __dt__6CTokenFv /* 800EDDEC 000EAD4C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EDDF0 000EAD50 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDDF4 000EAD54 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800EDDF8 000EAD58 38 61 00 D0 */ addi r3, r1, 0xd0 /* 800EDDFC 000EAD5C 81 84 00 00 */ lwz r12, 0(r4) /* 800EDE00 000EAD60 38 A5 01 1F */ addi r5, r5, 0x11f /* 800EDE04 000EAD64 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EDE08 000EAD68 7D 89 03 A6 */ mtctr r12 /* 800EDE0C 000EAD6C 4E 80 04 21 */ bctrl /* 800EDE10 000EAD70 38 61 00 C8 */ addi r3, r1, 0xc8 /* 800EDE14 000EAD74 38 81 00 D0 */ addi r4, r1, 0xd0 /* 800EDE18 000EAD78 48 25 30 91 */ bl __ct__6CTokenFRC6CToken /* 800EDE1C 000EAD7C 3B D7 00 20 */ addi r30, r23, 0x20 /* 800EDE20 000EAD80 38 81 00 C8 */ addi r4, r1, 0xc8 /* 800EDE24 000EAD84 7F C3 F3 78 */ mr r3, r30 /* 800EDE28 000EAD88 48 25 2E 9D */ bl __as__6CTokenFRC6CToken /* 800EDE2C 000EAD8C 38 61 00 C8 */ addi r3, r1, 0xc8 /* 800EDE30 000EAD90 38 80 00 00 */ li r4, 0 /* 800EDE34 000EAD94 48 25 30 0D */ bl __dt__6CTokenFv /* 800EDE38 000EAD98 38 61 00 D0 */ addi r3, r1, 0xd0 /* 800EDE3C 000EAD9C 38 80 FF FF */ li r4, -1 /* 800EDE40 000EADA0 48 25 30 01 */ bl __dt__6CTokenFv /* 800EDE44 000EADA4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EDE48 000EADA8 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDE4C 000EADAC 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800EDE50 000EADB0 38 61 00 C0 */ addi r3, r1, 0xc0 /* 800EDE54 000EADB4 81 84 00 00 */ lwz r12, 0(r4) /* 800EDE58 000EADB8 38 A5 01 28 */ addi r5, r5, 0x128 /* 800EDE5C 000EADBC 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EDE60 000EADC0 7D 89 03 A6 */ mtctr r12 /* 800EDE64 000EADC4 4E 80 04 21 */ bctrl /* 800EDE68 000EADC8 38 61 00 B8 */ addi r3, r1, 0xb8 /* 800EDE6C 000EADCC 38 81 00 C0 */ addi r4, r1, 0xc0 /* 800EDE70 000EADD0 48 25 30 39 */ bl __ct__6CTokenFRC6CToken /* 800EDE74 000EADD4 3B 97 00 28 */ addi r28, r23, 0x28 /* 800EDE78 000EADD8 38 81 00 B8 */ addi r4, r1, 0xb8 /* 800EDE7C 000EADDC 7F 83 E3 78 */ mr r3, r28 /* 800EDE80 000EADE0 48 25 2E 45 */ bl __as__6CTokenFRC6CToken /* 800EDE84 000EADE4 38 61 00 B8 */ addi r3, r1, 0xb8 /* 800EDE88 000EADE8 38 80 00 00 */ li r4, 0 /* 800EDE8C 000EADEC 48 25 2F B5 */ bl __dt__6CTokenFv /* 800EDE90 000EADF0 38 61 00 C0 */ addi r3, r1, 0xc0 /* 800EDE94 000EADF4 38 80 FF FF */ li r4, -1 /* 800EDE98 000EADF8 48 25 2F A9 */ bl __dt__6CTokenFv /* 800EDE9C 000EADFC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EDEA0 000EAE00 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDEA4 000EAE04 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800EDEA8 000EAE08 38 61 00 B0 */ addi r3, r1, 0xb0 /* 800EDEAC 000EAE0C 81 84 00 00 */ lwz r12, 0(r4) /* 800EDEB0 000EAE10 38 A5 01 30 */ addi r5, r5, 0x130 /* 800EDEB4 000EAE14 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EDEB8 000EAE18 7D 89 03 A6 */ mtctr r12 /* 800EDEBC 000EAE1C 4E 80 04 21 */ bctrl /* 800EDEC0 000EAE20 38 61 00 A8 */ addi r3, r1, 0xa8 /* 800EDEC4 000EAE24 38 81 00 B0 */ addi r4, r1, 0xb0 /* 800EDEC8 000EAE28 48 25 2F E1 */ bl __ct__6CTokenFRC6CToken /* 800EDECC 000EAE2C 3B 77 00 30 */ addi r27, r23, 0x30 /* 800EDED0 000EAE30 38 81 00 A8 */ addi r4, r1, 0xa8 /* 800EDED4 000EAE34 7F 63 DB 78 */ mr r3, r27 /* 800EDED8 000EAE38 48 25 2D ED */ bl __as__6CTokenFRC6CToken /* 800EDEDC 000EAE3C 38 61 00 A8 */ addi r3, r1, 0xa8 /* 800EDEE0 000EAE40 38 80 00 00 */ li r4, 0 /* 800EDEE4 000EAE44 48 25 2F 5D */ bl __dt__6CTokenFv /* 800EDEE8 000EAE48 38 61 00 B0 */ addi r3, r1, 0xb0 /* 800EDEEC 000EAE4C 38 80 FF FF */ li r4, -1 /* 800EDEF0 000EAE50 48 25 2F 51 */ bl __dt__6CTokenFv /* 800EDEF4 000EAE54 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EDEF8 000EAE58 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDEFC 000EAE5C 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800EDF00 000EAE60 38 61 00 A0 */ addi r3, r1, 0xa0 /* 800EDF04 000EAE64 81 84 00 00 */ lwz r12, 0(r4) /* 800EDF08 000EAE68 38 A5 01 39 */ addi r5, r5, 0x139 /* 800EDF0C 000EAE6C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EDF10 000EAE70 7D 89 03 A6 */ mtctr r12 /* 800EDF14 000EAE74 4E 80 04 21 */ bctrl /* 800EDF18 000EAE78 38 61 00 98 */ addi r3, r1, 0x98 /* 800EDF1C 000EAE7C 38 81 00 A0 */ addi r4, r1, 0xa0 /* 800EDF20 000EAE80 48 25 2F 89 */ bl __ct__6CTokenFRC6CToken /* 800EDF24 000EAE84 3B 57 00 38 */ addi r26, r23, 0x38 /* 800EDF28 000EAE88 38 81 00 98 */ addi r4, r1, 0x98 /* 800EDF2C 000EAE8C 7F 43 D3 78 */ mr r3, r26 /* 800EDF30 000EAE90 48 25 2D 95 */ bl __as__6CTokenFRC6CToken /* 800EDF34 000EAE94 38 61 00 98 */ addi r3, r1, 0x98 /* 800EDF38 000EAE98 38 80 00 00 */ li r4, 0 /* 800EDF3C 000EAE9C 48 25 2F 05 */ bl __dt__6CTokenFv /* 800EDF40 000EAEA0 38 61 00 A0 */ addi r3, r1, 0xa0 /* 800EDF44 000EAEA4 38 80 FF FF */ li r4, -1 /* 800EDF48 000EAEA8 48 25 2E F9 */ bl __dt__6CTokenFv /* 800EDF4C 000EAEAC 80 9F 1B C8 */ lwz r4, 0x1bc8(r31) /* 800EDF50 000EAEB0 38 60 00 00 */ li r3, 0 /* 800EDF54 000EAEB4 98 61 00 90 */ stb r3, 0x90(r1) /* 800EDF58 000EAEB8 2C 04 00 08 */ cmpwi r4, 8 /* 800EDF5C 000EAEBC 90 61 00 94 */ stw r3, 0x94(r1) /* 800EDF60 000EAEC0 40 80 00 48 */ bge lbl_800EDFA8 /* 800EDF64 000EAEC4 54 80 18 38 */ slwi r0, r4, 3 /* 800EDF68 000EAEC8 20 A4 00 08 */ subfic r5, r4, 8 /* 800EDF6C 000EAECC 7C 9F 02 14 */ add r4, r31, r0 /* 800EDF70 000EAED0 7C A9 03 A6 */ mtctr r5 /* 800EDF74 000EAED4 2C 05 00 00 */ cmpwi r5, 0 /* 800EDF78 000EAED8 38 84 1B CC */ addi r4, r4, 0x1bcc /* 800EDF7C 000EAEDC 40 81 00 24 */ ble lbl_800EDFA0 lbl_800EDF80: /* 800EDF80 000EAEE0 28 04 00 00 */ cmplwi r4, 0 /* 800EDF84 000EAEE4 41 82 00 14 */ beq lbl_800EDF98 /* 800EDF88 000EAEE8 88 01 00 90 */ lbz r0, 0x90(r1) /* 800EDF8C 000EAEEC 98 04 00 00 */ stb r0, 0(r4) /* 800EDF90 000EAEF0 90 64 00 04 */ stw r3, 4(r4) /* 800EDF94 000EAEF4 98 61 00 90 */ stb r3, 0x90(r1) lbl_800EDF98: /* 800EDF98 000EAEF8 38 84 00 08 */ addi r4, r4, 8 /* 800EDF9C 000EAEFC 42 00 FF E4 */ bdnz lbl_800EDF80 lbl_800EDFA0: /* 800EDFA0 000EAF00 38 00 00 08 */ li r0, 8 /* 800EDFA4 000EAF04 90 1F 1B C8 */ stw r0, 0x1bc8(r31) lbl_800EDFA8: /* 800EDFA8 000EAF08 88 01 00 90 */ lbz r0, 0x90(r1) /* 800EDFAC 000EAF0C 28 00 00 00 */ cmplwi r0, 0 /* 800EDFB0 000EAF10 41 82 00 24 */ beq lbl_800EDFD4 /* 800EDFB4 000EAF14 80 61 00 94 */ lwz r3, 0x94(r1) /* 800EDFB8 000EAF18 28 03 00 00 */ cmplwi r3, 0 /* 800EDFBC 000EAF1C 41 82 00 18 */ beq lbl_800EDFD4 /* 800EDFC0 000EAF20 81 83 00 00 */ lwz r12, 0(r3) /* 800EDFC4 000EAF24 38 80 00 01 */ li r4, 1 /* 800EDFC8 000EAF28 81 8C 00 08 */ lwz r12, 8(r12) /* 800EDFCC 000EAF2C 7D 89 03 A6 */ mtctr r12 /* 800EDFD0 000EAF30 4E 80 04 21 */ bctrl lbl_800EDFD4: /* 800EDFD4 000EAF34 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EDFD8 000EAF38 3A C0 00 00 */ li r22, 0 /* 800EDFDC 000EAF3C 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800EDFE0 000EAF40 38 60 03 40 */ li r3, 0x340 /* 800EDFE4 000EAF44 38 84 00 DC */ addi r4, r4, 0xdc /* 800EDFE8 000EAF48 38 A0 00 00 */ li r5, 0 /* 800EDFEC 000EAF4C 48 22 78 81 */ bl __nw__FUlPCcPCc /* 800EDFF0 000EAF50 7C 75 1B 79 */ or. r21, r3, r3 /* 800EDFF4 000EAF54 41 82 00 2C */ beq lbl_800EE020 /* 800EDFF8 000EAF58 7F 04 C3 78 */ mr r4, r24 /* 800EDFFC 000EAF5C 38 61 00 88 */ addi r3, r1, 0x88 /* 800EE000 000EAF60 48 25 2E A9 */ bl __ct__6CTokenFRC6CToken /* 800EE004 000EAF64 7E A3 AB 78 */ mr r3, r21 /* 800EE008 000EAF68 38 81 00 88 */ addi r4, r1, 0x88 /* 800EE00C 000EAF6C 3A C0 00 01 */ li r22, 1 /* 800EE010 000EAF70 38 A0 00 00 */ li r5, 0 /* 800EE014 000EAF74 38 C0 00 01 */ li r6, 1 /* 800EE018 000EAF78 48 23 13 C9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800EE01C 000EAF7C 7C 75 1B 78 */ mr r21, r3 lbl_800EE020: /* 800EE020 000EAF80 7C 15 00 D0 */ neg r0, r21 /* 800EE024 000EAF84 3B FF 1B CC */ addi r31, r31, 0x1bcc /* 800EE028 000EAF88 7C 03 AB 78 */ or r3, r0, r21 /* 800EE02C 000EAF8C 38 01 00 80 */ addi r0, r1, 0x80 /* 800EE030 000EAF90 3B 1F 00 10 */ addi r24, r31, 0x10 /* 800EE034 000EAF94 92 A1 00 84 */ stw r21, 0x84(r1) /* 800EE038 000EAF98 54 63 0F FE */ srwi r3, r3, 0x1f /* 800EE03C 000EAF9C 7C 00 C0 40 */ cmplw r0, r24 /* 800EE040 000EAFA0 98 61 00 80 */ stb r3, 0x80(r1) /* 800EE044 000EAFA4 41 82 00 48 */ beq lbl_800EE08C /* 800EE048 000EAFA8 88 18 00 00 */ lbz r0, 0(r24) /* 800EE04C 000EAFAC 28 00 00 00 */ cmplwi r0, 0 /* 800EE050 000EAFB0 41 82 00 24 */ beq lbl_800EE074 /* 800EE054 000EAFB4 80 78 00 04 */ lwz r3, 4(r24) /* 800EE058 000EAFB8 28 03 00 00 */ cmplwi r3, 0 /* 800EE05C 000EAFBC 41 82 00 18 */ beq lbl_800EE074 /* 800EE060 000EAFC0 81 83 00 00 */ lwz r12, 0(r3) /* 800EE064 000EAFC4 38 80 00 01 */ li r4, 1 /* 800EE068 000EAFC8 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE06C 000EAFCC 7D 89 03 A6 */ mtctr r12 /* 800EE070 000EAFD0 4E 80 04 21 */ bctrl lbl_800EE074: /* 800EE074 000EAFD4 88 61 00 80 */ lbz r3, 0x80(r1) /* 800EE078 000EAFD8 38 00 00 00 */ li r0, 0 /* 800EE07C 000EAFDC 98 78 00 00 */ stb r3, 0(r24) /* 800EE080 000EAFE0 80 61 00 84 */ lwz r3, 0x84(r1) /* 800EE084 000EAFE4 90 78 00 04 */ stw r3, 4(r24) /* 800EE088 000EAFE8 98 01 00 80 */ stb r0, 0x80(r1) lbl_800EE08C: /* 800EE08C 000EAFEC 88 01 00 80 */ lbz r0, 0x80(r1) /* 800EE090 000EAFF0 28 00 00 00 */ cmplwi r0, 0 /* 800EE094 000EAFF4 41 82 00 24 */ beq lbl_800EE0B8 /* 800EE098 000EAFF8 80 61 00 84 */ lwz r3, 0x84(r1) /* 800EE09C 000EAFFC 28 03 00 00 */ cmplwi r3, 0 /* 800EE0A0 000EB000 41 82 00 18 */ beq lbl_800EE0B8 /* 800EE0A4 000EB004 81 83 00 00 */ lwz r12, 0(r3) /* 800EE0A8 000EB008 38 80 00 01 */ li r4, 1 /* 800EE0AC 000EB00C 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE0B0 000EB010 7D 89 03 A6 */ mtctr r12 /* 800EE0B4 000EB014 4E 80 04 21 */ bctrl lbl_800EE0B8: /* 800EE0B8 000EB018 7E C0 07 75 */ extsb. r0, r22 /* 800EE0BC 000EB01C 41 82 00 10 */ beq lbl_800EE0CC /* 800EE0C0 000EB020 38 61 00 88 */ addi r3, r1, 0x88 /* 800EE0C4 000EB024 38 80 00 00 */ li r4, 0 /* 800EE0C8 000EB028 48 25 2D 79 */ bl __dt__6CTokenFv lbl_800EE0CC: /* 800EE0CC 000EB02C 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EE0D0 000EB030 3A C0 00 00 */ li r22, 0 /* 800EE0D4 000EB034 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800EE0D8 000EB038 38 60 03 40 */ li r3, 0x340 /* 800EE0DC 000EB03C 38 84 00 DC */ addi r4, r4, 0xdc /* 800EE0E0 000EB040 38 A0 00 00 */ li r5, 0 /* 800EE0E4 000EB044 48 22 77 89 */ bl __nw__FUlPCcPCc /* 800EE0E8 000EB048 7C 75 1B 79 */ or. r21, r3, r3 /* 800EE0EC 000EB04C 41 82 00 2C */ beq lbl_800EE118 /* 800EE0F0 000EB050 7E E4 BB 78 */ mr r4, r23 /* 800EE0F4 000EB054 38 61 00 78 */ addi r3, r1, 0x78 /* 800EE0F8 000EB058 48 25 2D B1 */ bl __ct__6CTokenFRC6CToken /* 800EE0FC 000EB05C 7E A3 AB 78 */ mr r3, r21 /* 800EE100 000EB060 38 81 00 78 */ addi r4, r1, 0x78 /* 800EE104 000EB064 3A C0 00 01 */ li r22, 1 /* 800EE108 000EB068 38 A0 00 00 */ li r5, 0 /* 800EE10C 000EB06C 38 C0 00 01 */ li r6, 1 /* 800EE110 000EB070 48 23 12 D1 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800EE114 000EB074 7C 75 1B 78 */ mr r21, r3 lbl_800EE118: /* 800EE118 000EB078 7C 75 00 D0 */ neg r3, r21 /* 800EE11C 000EB07C 38 01 00 70 */ addi r0, r1, 0x70 /* 800EE120 000EB080 7C 63 AB 78 */ or r3, r3, r21 /* 800EE124 000EB084 92 A1 00 74 */ stw r21, 0x74(r1) /* 800EE128 000EB088 54 63 0F FE */ srwi r3, r3, 0x1f /* 800EE12C 000EB08C 7C 00 F8 40 */ cmplw r0, r31 /* 800EE130 000EB090 98 61 00 70 */ stb r3, 0x70(r1) /* 800EE134 000EB094 41 82 00 48 */ beq lbl_800EE17C /* 800EE138 000EB098 88 1F 00 00 */ lbz r0, 0(r31) /* 800EE13C 000EB09C 28 00 00 00 */ cmplwi r0, 0 /* 800EE140 000EB0A0 41 82 00 24 */ beq lbl_800EE164 /* 800EE144 000EB0A4 80 7F 00 04 */ lwz r3, 4(r31) /* 800EE148 000EB0A8 28 03 00 00 */ cmplwi r3, 0 /* 800EE14C 000EB0AC 41 82 00 18 */ beq lbl_800EE164 /* 800EE150 000EB0B0 81 83 00 00 */ lwz r12, 0(r3) /* 800EE154 000EB0B4 38 80 00 01 */ li r4, 1 /* 800EE158 000EB0B8 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE15C 000EB0BC 7D 89 03 A6 */ mtctr r12 /* 800EE160 000EB0C0 4E 80 04 21 */ bctrl lbl_800EE164: /* 800EE164 000EB0C4 88 61 00 70 */ lbz r3, 0x70(r1) /* 800EE168 000EB0C8 38 00 00 00 */ li r0, 0 /* 800EE16C 000EB0CC 98 7F 00 00 */ stb r3, 0(r31) /* 800EE170 000EB0D0 80 61 00 74 */ lwz r3, 0x74(r1) /* 800EE174 000EB0D4 90 7F 00 04 */ stw r3, 4(r31) /* 800EE178 000EB0D8 98 01 00 70 */ stb r0, 0x70(r1) lbl_800EE17C: /* 800EE17C 000EB0DC 88 01 00 70 */ lbz r0, 0x70(r1) /* 800EE180 000EB0E0 28 00 00 00 */ cmplwi r0, 0 /* 800EE184 000EB0E4 41 82 00 24 */ beq lbl_800EE1A8 /* 800EE188 000EB0E8 80 61 00 74 */ lwz r3, 0x74(r1) /* 800EE18C 000EB0EC 28 03 00 00 */ cmplwi r3, 0 /* 800EE190 000EB0F0 41 82 00 18 */ beq lbl_800EE1A8 /* 800EE194 000EB0F4 81 83 00 00 */ lwz r12, 0(r3) /* 800EE198 000EB0F8 38 80 00 01 */ li r4, 1 /* 800EE19C 000EB0FC 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE1A0 000EB100 7D 89 03 A6 */ mtctr r12 /* 800EE1A4 000EB104 4E 80 04 21 */ bctrl lbl_800EE1A8: /* 800EE1A8 000EB108 7E C0 07 75 */ extsb. r0, r22 /* 800EE1AC 000EB10C 41 82 00 10 */ beq lbl_800EE1BC /* 800EE1B0 000EB110 38 61 00 78 */ addi r3, r1, 0x78 /* 800EE1B4 000EB114 38 80 00 00 */ li r4, 0 /* 800EE1B8 000EB118 48 25 2C 89 */ bl __dt__6CTokenFv lbl_800EE1BC: /* 800EE1BC 000EB11C 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EE1C0 000EB120 3A C0 00 00 */ li r22, 0 /* 800EE1C4 000EB124 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800EE1C8 000EB128 38 60 03 40 */ li r3, 0x340 /* 800EE1CC 000EB12C 38 84 00 DC */ addi r4, r4, 0xdc /* 800EE1D0 000EB130 38 A0 00 00 */ li r5, 0 /* 800EE1D4 000EB134 48 22 76 99 */ bl __nw__FUlPCcPCc /* 800EE1D8 000EB138 7C 75 1B 79 */ or. r21, r3, r3 /* 800EE1DC 000EB13C 41 82 00 2C */ beq lbl_800EE208 /* 800EE1E0 000EB140 7F 24 CB 78 */ mr r4, r25 /* 800EE1E4 000EB144 38 61 00 68 */ addi r3, r1, 0x68 /* 800EE1E8 000EB148 48 25 2C C1 */ bl __ct__6CTokenFRC6CToken /* 800EE1EC 000EB14C 7E A3 AB 78 */ mr r3, r21 /* 800EE1F0 000EB150 38 81 00 68 */ addi r4, r1, 0x68 /* 800EE1F4 000EB154 3A C0 00 01 */ li r22, 1 /* 800EE1F8 000EB158 38 A0 00 00 */ li r5, 0 /* 800EE1FC 000EB15C 38 C0 00 01 */ li r6, 1 /* 800EE200 000EB160 48 23 11 E1 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800EE204 000EB164 7C 75 1B 78 */ mr r21, r3 lbl_800EE208: /* 800EE208 000EB168 7C 15 00 D0 */ neg r0, r21 /* 800EE20C 000EB16C 3B 1F 00 08 */ addi r24, r31, 8 /* 800EE210 000EB170 7C 03 AB 78 */ or r3, r0, r21 /* 800EE214 000EB174 38 01 00 60 */ addi r0, r1, 0x60 /* 800EE218 000EB178 54 63 0F FE */ srwi r3, r3, 0x1f /* 800EE21C 000EB17C 92 A1 00 64 */ stw r21, 0x64(r1) /* 800EE220 000EB180 7C 00 C0 40 */ cmplw r0, r24 /* 800EE224 000EB184 98 61 00 60 */ stb r3, 0x60(r1) /* 800EE228 000EB188 41 82 00 48 */ beq lbl_800EE270 /* 800EE22C 000EB18C 88 18 00 00 */ lbz r0, 0(r24) /* 800EE230 000EB190 28 00 00 00 */ cmplwi r0, 0 /* 800EE234 000EB194 41 82 00 24 */ beq lbl_800EE258 /* 800EE238 000EB198 80 78 00 04 */ lwz r3, 4(r24) /* 800EE23C 000EB19C 28 03 00 00 */ cmplwi r3, 0 /* 800EE240 000EB1A0 41 82 00 18 */ beq lbl_800EE258 /* 800EE244 000EB1A4 81 83 00 00 */ lwz r12, 0(r3) /* 800EE248 000EB1A8 38 80 00 01 */ li r4, 1 /* 800EE24C 000EB1AC 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE250 000EB1B0 7D 89 03 A6 */ mtctr r12 /* 800EE254 000EB1B4 4E 80 04 21 */ bctrl lbl_800EE258: /* 800EE258 000EB1B8 88 61 00 60 */ lbz r3, 0x60(r1) /* 800EE25C 000EB1BC 38 00 00 00 */ li r0, 0 /* 800EE260 000EB1C0 98 78 00 00 */ stb r3, 0(r24) /* 800EE264 000EB1C4 80 61 00 64 */ lwz r3, 0x64(r1) /* 800EE268 000EB1C8 90 78 00 04 */ stw r3, 4(r24) /* 800EE26C 000EB1CC 98 01 00 60 */ stb r0, 0x60(r1) lbl_800EE270: /* 800EE270 000EB1D0 88 01 00 60 */ lbz r0, 0x60(r1) /* 800EE274 000EB1D4 28 00 00 00 */ cmplwi r0, 0 /* 800EE278 000EB1D8 41 82 00 24 */ beq lbl_800EE29C /* 800EE27C 000EB1DC 80 61 00 64 */ lwz r3, 0x64(r1) /* 800EE280 000EB1E0 28 03 00 00 */ cmplwi r3, 0 /* 800EE284 000EB1E4 41 82 00 18 */ beq lbl_800EE29C /* 800EE288 000EB1E8 81 83 00 00 */ lwz r12, 0(r3) /* 800EE28C 000EB1EC 38 80 00 01 */ li r4, 1 /* 800EE290 000EB1F0 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE294 000EB1F4 7D 89 03 A6 */ mtctr r12 /* 800EE298 000EB1F8 4E 80 04 21 */ bctrl lbl_800EE29C: /* 800EE29C 000EB1FC 7E C0 07 75 */ extsb. r0, r22 /* 800EE2A0 000EB200 41 82 00 10 */ beq lbl_800EE2B0 /* 800EE2A4 000EB204 38 61 00 68 */ addi r3, r1, 0x68 /* 800EE2A8 000EB208 38 80 00 00 */ li r4, 0 /* 800EE2AC 000EB20C 48 25 2B 95 */ bl __dt__6CTokenFv lbl_800EE2B0: /* 800EE2B0 000EB210 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EE2B4 000EB214 3A C0 00 00 */ li r22, 0 /* 800EE2B8 000EB218 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800EE2BC 000EB21C 38 60 03 40 */ li r3, 0x340 /* 800EE2C0 000EB220 38 84 00 DC */ addi r4, r4, 0xdc /* 800EE2C4 000EB224 38 A0 00 00 */ li r5, 0 /* 800EE2C8 000EB228 48 22 75 A5 */ bl __nw__FUlPCcPCc /* 800EE2CC 000EB22C 7C 75 1B 79 */ or. r21, r3, r3 /* 800EE2D0 000EB230 41 82 00 2C */ beq lbl_800EE2FC /* 800EE2D4 000EB234 7F A4 EB 78 */ mr r4, r29 /* 800EE2D8 000EB238 38 61 00 58 */ addi r3, r1, 0x58 /* 800EE2DC 000EB23C 48 25 2B CD */ bl __ct__6CTokenFRC6CToken /* 800EE2E0 000EB240 7E A3 AB 78 */ mr r3, r21 /* 800EE2E4 000EB244 38 81 00 58 */ addi r4, r1, 0x58 /* 800EE2E8 000EB248 3A C0 00 01 */ li r22, 1 /* 800EE2EC 000EB24C 38 A0 00 00 */ li r5, 0 /* 800EE2F0 000EB250 38 C0 00 01 */ li r6, 1 /* 800EE2F4 000EB254 48 23 10 ED */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800EE2F8 000EB258 7C 75 1B 78 */ mr r21, r3 lbl_800EE2FC: /* 800EE2FC 000EB25C 7C 15 00 D0 */ neg r0, r21 /* 800EE300 000EB260 3A FF 00 18 */ addi r23, r31, 0x18 /* 800EE304 000EB264 7C 03 AB 78 */ or r3, r0, r21 /* 800EE308 000EB268 38 01 00 50 */ addi r0, r1, 0x50 /* 800EE30C 000EB26C 54 63 0F FE */ srwi r3, r3, 0x1f /* 800EE310 000EB270 92 A1 00 54 */ stw r21, 0x54(r1) /* 800EE314 000EB274 7C 00 B8 40 */ cmplw r0, r23 /* 800EE318 000EB278 98 61 00 50 */ stb r3, 0x50(r1) /* 800EE31C 000EB27C 41 82 00 48 */ beq lbl_800EE364 /* 800EE320 000EB280 88 17 00 00 */ lbz r0, 0(r23) /* 800EE324 000EB284 28 00 00 00 */ cmplwi r0, 0 /* 800EE328 000EB288 41 82 00 24 */ beq lbl_800EE34C /* 800EE32C 000EB28C 80 77 00 04 */ lwz r3, 4(r23) /* 800EE330 000EB290 28 03 00 00 */ cmplwi r3, 0 /* 800EE334 000EB294 41 82 00 18 */ beq lbl_800EE34C /* 800EE338 000EB298 81 83 00 00 */ lwz r12, 0(r3) /* 800EE33C 000EB29C 38 80 00 01 */ li r4, 1 /* 800EE340 000EB2A0 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE344 000EB2A4 7D 89 03 A6 */ mtctr r12 /* 800EE348 000EB2A8 4E 80 04 21 */ bctrl lbl_800EE34C: /* 800EE34C 000EB2AC 88 61 00 50 */ lbz r3, 0x50(r1) /* 800EE350 000EB2B0 38 00 00 00 */ li r0, 0 /* 800EE354 000EB2B4 98 77 00 00 */ stb r3, 0(r23) /* 800EE358 000EB2B8 80 61 00 54 */ lwz r3, 0x54(r1) /* 800EE35C 000EB2BC 90 77 00 04 */ stw r3, 4(r23) /* 800EE360 000EB2C0 98 01 00 50 */ stb r0, 0x50(r1) lbl_800EE364: /* 800EE364 000EB2C4 88 01 00 50 */ lbz r0, 0x50(r1) /* 800EE368 000EB2C8 28 00 00 00 */ cmplwi r0, 0 /* 800EE36C 000EB2CC 41 82 00 24 */ beq lbl_800EE390 /* 800EE370 000EB2D0 80 61 00 54 */ lwz r3, 0x54(r1) /* 800EE374 000EB2D4 28 03 00 00 */ cmplwi r3, 0 /* 800EE378 000EB2D8 41 82 00 18 */ beq lbl_800EE390 /* 800EE37C 000EB2DC 81 83 00 00 */ lwz r12, 0(r3) /* 800EE380 000EB2E0 38 80 00 01 */ li r4, 1 /* 800EE384 000EB2E4 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE388 000EB2E8 7D 89 03 A6 */ mtctr r12 /* 800EE38C 000EB2EC 4E 80 04 21 */ bctrl lbl_800EE390: /* 800EE390 000EB2F0 7E C0 07 75 */ extsb. r0, r22 /* 800EE394 000EB2F4 41 82 00 10 */ beq lbl_800EE3A4 /* 800EE398 000EB2F8 38 61 00 58 */ addi r3, r1, 0x58 /* 800EE39C 000EB2FC 38 80 00 00 */ li r4, 0 /* 800EE3A0 000EB300 48 25 2A A1 */ bl __dt__6CTokenFv lbl_800EE3A4: /* 800EE3A4 000EB304 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EE3A8 000EB308 3A C0 00 00 */ li r22, 0 /* 800EE3AC 000EB30C 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800EE3B0 000EB310 38 60 03 40 */ li r3, 0x340 /* 800EE3B4 000EB314 38 84 00 DC */ addi r4, r4, 0xdc /* 800EE3B8 000EB318 38 A0 00 00 */ li r5, 0 /* 800EE3BC 000EB31C 48 22 74 B1 */ bl __nw__FUlPCcPCc /* 800EE3C0 000EB320 7C 75 1B 79 */ or. r21, r3, r3 /* 800EE3C4 000EB324 41 82 00 2C */ beq lbl_800EE3F0 /* 800EE3C8 000EB328 7F C4 F3 78 */ mr r4, r30 /* 800EE3CC 000EB32C 38 61 00 48 */ addi r3, r1, 0x48 /* 800EE3D0 000EB330 48 25 2A D9 */ bl __ct__6CTokenFRC6CToken /* 800EE3D4 000EB334 7E A3 AB 78 */ mr r3, r21 /* 800EE3D8 000EB338 38 81 00 48 */ addi r4, r1, 0x48 /* 800EE3DC 000EB33C 3A C0 00 01 */ li r22, 1 /* 800EE3E0 000EB340 38 A0 00 00 */ li r5, 0 /* 800EE3E4 000EB344 38 C0 00 01 */ li r6, 1 /* 800EE3E8 000EB348 48 23 0F F9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800EE3EC 000EB34C 7C 75 1B 78 */ mr r21, r3 lbl_800EE3F0: /* 800EE3F0 000EB350 7C 15 00 D0 */ neg r0, r21 /* 800EE3F4 000EB354 3A FF 00 20 */ addi r23, r31, 0x20 /* 800EE3F8 000EB358 7C 03 AB 78 */ or r3, r0, r21 /* 800EE3FC 000EB35C 38 01 00 40 */ addi r0, r1, 0x40 /* 800EE400 000EB360 54 63 0F FE */ srwi r3, r3, 0x1f /* 800EE404 000EB364 92 A1 00 44 */ stw r21, 0x44(r1) /* 800EE408 000EB368 7C 00 B8 40 */ cmplw r0, r23 /* 800EE40C 000EB36C 98 61 00 40 */ stb r3, 0x40(r1) /* 800EE410 000EB370 41 82 00 48 */ beq lbl_800EE458 /* 800EE414 000EB374 88 17 00 00 */ lbz r0, 0(r23) /* 800EE418 000EB378 28 00 00 00 */ cmplwi r0, 0 /* 800EE41C 000EB37C 41 82 00 24 */ beq lbl_800EE440 /* 800EE420 000EB380 80 77 00 04 */ lwz r3, 4(r23) /* 800EE424 000EB384 28 03 00 00 */ cmplwi r3, 0 /* 800EE428 000EB388 41 82 00 18 */ beq lbl_800EE440 /* 800EE42C 000EB38C 81 83 00 00 */ lwz r12, 0(r3) /* 800EE430 000EB390 38 80 00 01 */ li r4, 1 /* 800EE434 000EB394 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE438 000EB398 7D 89 03 A6 */ mtctr r12 /* 800EE43C 000EB39C 4E 80 04 21 */ bctrl lbl_800EE440: /* 800EE440 000EB3A0 88 61 00 40 */ lbz r3, 0x40(r1) /* 800EE444 000EB3A4 38 00 00 00 */ li r0, 0 /* 800EE448 000EB3A8 98 77 00 00 */ stb r3, 0(r23) /* 800EE44C 000EB3AC 80 61 00 44 */ lwz r3, 0x44(r1) /* 800EE450 000EB3B0 90 77 00 04 */ stw r3, 4(r23) /* 800EE454 000EB3B4 98 01 00 40 */ stb r0, 0x40(r1) lbl_800EE458: /* 800EE458 000EB3B8 88 01 00 40 */ lbz r0, 0x40(r1) /* 800EE45C 000EB3BC 28 00 00 00 */ cmplwi r0, 0 /* 800EE460 000EB3C0 41 82 00 24 */ beq lbl_800EE484 /* 800EE464 000EB3C4 80 61 00 44 */ lwz r3, 0x44(r1) /* 800EE468 000EB3C8 28 03 00 00 */ cmplwi r3, 0 /* 800EE46C 000EB3CC 41 82 00 18 */ beq lbl_800EE484 /* 800EE470 000EB3D0 81 83 00 00 */ lwz r12, 0(r3) /* 800EE474 000EB3D4 38 80 00 01 */ li r4, 1 /* 800EE478 000EB3D8 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE47C 000EB3DC 7D 89 03 A6 */ mtctr r12 /* 800EE480 000EB3E0 4E 80 04 21 */ bctrl lbl_800EE484: /* 800EE484 000EB3E4 7E C0 07 75 */ extsb. r0, r22 /* 800EE488 000EB3E8 41 82 00 10 */ beq lbl_800EE498 /* 800EE48C 000EB3EC 38 61 00 48 */ addi r3, r1, 0x48 /* 800EE490 000EB3F0 38 80 00 00 */ li r4, 0 /* 800EE494 000EB3F4 48 25 29 AD */ bl __dt__6CTokenFv lbl_800EE498: /* 800EE498 000EB3F8 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EE49C 000EB3FC 3A C0 00 00 */ li r22, 0 /* 800EE4A0 000EB400 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800EE4A4 000EB404 38 60 03 40 */ li r3, 0x340 /* 800EE4A8 000EB408 38 84 00 DC */ addi r4, r4, 0xdc /* 800EE4AC 000EB40C 38 A0 00 00 */ li r5, 0 /* 800EE4B0 000EB410 48 22 73 BD */ bl __nw__FUlPCcPCc /* 800EE4B4 000EB414 7C 75 1B 79 */ or. r21, r3, r3 /* 800EE4B8 000EB418 41 82 00 2C */ beq lbl_800EE4E4 /* 800EE4BC 000EB41C 7F 84 E3 78 */ mr r4, r28 /* 800EE4C0 000EB420 38 61 00 38 */ addi r3, r1, 0x38 /* 800EE4C4 000EB424 48 25 29 E5 */ bl __ct__6CTokenFRC6CToken /* 800EE4C8 000EB428 7E A3 AB 78 */ mr r3, r21 /* 800EE4CC 000EB42C 38 81 00 38 */ addi r4, r1, 0x38 /* 800EE4D0 000EB430 3A C0 00 01 */ li r22, 1 /* 800EE4D4 000EB434 38 A0 00 00 */ li r5, 0 /* 800EE4D8 000EB438 38 C0 00 01 */ li r6, 1 /* 800EE4DC 000EB43C 48 23 0F 05 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800EE4E0 000EB440 7C 75 1B 78 */ mr r21, r3 lbl_800EE4E4: /* 800EE4E4 000EB444 7C 15 00 D0 */ neg r0, r21 /* 800EE4E8 000EB448 3A FF 00 28 */ addi r23, r31, 0x28 /* 800EE4EC 000EB44C 7C 03 AB 78 */ or r3, r0, r21 /* 800EE4F0 000EB450 38 01 00 30 */ addi r0, r1, 0x30 /* 800EE4F4 000EB454 54 63 0F FE */ srwi r3, r3, 0x1f /* 800EE4F8 000EB458 92 A1 00 34 */ stw r21, 0x34(r1) /* 800EE4FC 000EB45C 7C 00 B8 40 */ cmplw r0, r23 /* 800EE500 000EB460 98 61 00 30 */ stb r3, 0x30(r1) /* 800EE504 000EB464 41 82 00 48 */ beq lbl_800EE54C /* 800EE508 000EB468 88 17 00 00 */ lbz r0, 0(r23) /* 800EE50C 000EB46C 28 00 00 00 */ cmplwi r0, 0 /* 800EE510 000EB470 41 82 00 24 */ beq lbl_800EE534 /* 800EE514 000EB474 80 77 00 04 */ lwz r3, 4(r23) /* 800EE518 000EB478 28 03 00 00 */ cmplwi r3, 0 /* 800EE51C 000EB47C 41 82 00 18 */ beq lbl_800EE534 /* 800EE520 000EB480 81 83 00 00 */ lwz r12, 0(r3) /* 800EE524 000EB484 38 80 00 01 */ li r4, 1 /* 800EE528 000EB488 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE52C 000EB48C 7D 89 03 A6 */ mtctr r12 /* 800EE530 000EB490 4E 80 04 21 */ bctrl lbl_800EE534: /* 800EE534 000EB494 88 61 00 30 */ lbz r3, 0x30(r1) /* 800EE538 000EB498 38 00 00 00 */ li r0, 0 /* 800EE53C 000EB49C 98 77 00 00 */ stb r3, 0(r23) /* 800EE540 000EB4A0 80 61 00 34 */ lwz r3, 0x34(r1) /* 800EE544 000EB4A4 90 77 00 04 */ stw r3, 4(r23) /* 800EE548 000EB4A8 98 01 00 30 */ stb r0, 0x30(r1) lbl_800EE54C: /* 800EE54C 000EB4AC 88 01 00 30 */ lbz r0, 0x30(r1) /* 800EE550 000EB4B0 28 00 00 00 */ cmplwi r0, 0 /* 800EE554 000EB4B4 41 82 00 24 */ beq lbl_800EE578 /* 800EE558 000EB4B8 80 61 00 34 */ lwz r3, 0x34(r1) /* 800EE55C 000EB4BC 28 03 00 00 */ cmplwi r3, 0 /* 800EE560 000EB4C0 41 82 00 18 */ beq lbl_800EE578 /* 800EE564 000EB4C4 81 83 00 00 */ lwz r12, 0(r3) /* 800EE568 000EB4C8 38 80 00 01 */ li r4, 1 /* 800EE56C 000EB4CC 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE570 000EB4D0 7D 89 03 A6 */ mtctr r12 /* 800EE574 000EB4D4 4E 80 04 21 */ bctrl lbl_800EE578: /* 800EE578 000EB4D8 7E C0 07 75 */ extsb. r0, r22 /* 800EE57C 000EB4DC 41 82 00 10 */ beq lbl_800EE58C /* 800EE580 000EB4E0 38 61 00 38 */ addi r3, r1, 0x38 /* 800EE584 000EB4E4 38 80 00 00 */ li r4, 0 /* 800EE588 000EB4E8 48 25 28 B9 */ bl __dt__6CTokenFv lbl_800EE58C: /* 800EE58C 000EB4EC 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EE590 000EB4F0 3A C0 00 00 */ li r22, 0 /* 800EE594 000EB4F4 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800EE598 000EB4F8 38 60 03 40 */ li r3, 0x340 /* 800EE59C 000EB4FC 38 84 00 DC */ addi r4, r4, 0xdc /* 800EE5A0 000EB500 38 A0 00 00 */ li r5, 0 /* 800EE5A4 000EB504 48 22 72 C9 */ bl __nw__FUlPCcPCc /* 800EE5A8 000EB508 7C 75 1B 79 */ or. r21, r3, r3 /* 800EE5AC 000EB50C 41 82 00 2C */ beq lbl_800EE5D8 /* 800EE5B0 000EB510 7F 64 DB 78 */ mr r4, r27 /* 800EE5B4 000EB514 38 61 00 28 */ addi r3, r1, 0x28 /* 800EE5B8 000EB518 48 25 28 F1 */ bl __ct__6CTokenFRC6CToken /* 800EE5BC 000EB51C 7E A3 AB 78 */ mr r3, r21 /* 800EE5C0 000EB520 38 81 00 28 */ addi r4, r1, 0x28 /* 800EE5C4 000EB524 3A C0 00 01 */ li r22, 1 /* 800EE5C8 000EB528 38 A0 00 00 */ li r5, 0 /* 800EE5CC 000EB52C 38 C0 00 01 */ li r6, 1 /* 800EE5D0 000EB530 48 23 0E 11 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800EE5D4 000EB534 7C 75 1B 78 */ mr r21, r3 lbl_800EE5D8: /* 800EE5D8 000EB538 7C 15 00 D0 */ neg r0, r21 /* 800EE5DC 000EB53C 3A FF 00 30 */ addi r23, r31, 0x30 /* 800EE5E0 000EB540 7C 03 AB 78 */ or r3, r0, r21 /* 800EE5E4 000EB544 38 01 00 20 */ addi r0, r1, 0x20 /* 800EE5E8 000EB548 54 63 0F FE */ srwi r3, r3, 0x1f /* 800EE5EC 000EB54C 92 A1 00 24 */ stw r21, 0x24(r1) /* 800EE5F0 000EB550 7C 00 B8 40 */ cmplw r0, r23 /* 800EE5F4 000EB554 98 61 00 20 */ stb r3, 0x20(r1) /* 800EE5F8 000EB558 41 82 00 48 */ beq lbl_800EE640 /* 800EE5FC 000EB55C 88 17 00 00 */ lbz r0, 0(r23) /* 800EE600 000EB560 28 00 00 00 */ cmplwi r0, 0 /* 800EE604 000EB564 41 82 00 24 */ beq lbl_800EE628 /* 800EE608 000EB568 80 77 00 04 */ lwz r3, 4(r23) /* 800EE60C 000EB56C 28 03 00 00 */ cmplwi r3, 0 /* 800EE610 000EB570 41 82 00 18 */ beq lbl_800EE628 /* 800EE614 000EB574 81 83 00 00 */ lwz r12, 0(r3) /* 800EE618 000EB578 38 80 00 01 */ li r4, 1 /* 800EE61C 000EB57C 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE620 000EB580 7D 89 03 A6 */ mtctr r12 /* 800EE624 000EB584 4E 80 04 21 */ bctrl lbl_800EE628: /* 800EE628 000EB588 88 61 00 20 */ lbz r3, 0x20(r1) /* 800EE62C 000EB58C 38 00 00 00 */ li r0, 0 /* 800EE630 000EB590 98 77 00 00 */ stb r3, 0(r23) /* 800EE634 000EB594 80 61 00 24 */ lwz r3, 0x24(r1) /* 800EE638 000EB598 90 77 00 04 */ stw r3, 4(r23) /* 800EE63C 000EB59C 98 01 00 20 */ stb r0, 0x20(r1) lbl_800EE640: /* 800EE640 000EB5A0 88 01 00 20 */ lbz r0, 0x20(r1) /* 800EE644 000EB5A4 28 00 00 00 */ cmplwi r0, 0 /* 800EE648 000EB5A8 41 82 00 24 */ beq lbl_800EE66C /* 800EE64C 000EB5AC 80 61 00 24 */ lwz r3, 0x24(r1) /* 800EE650 000EB5B0 28 03 00 00 */ cmplwi r3, 0 /* 800EE654 000EB5B4 41 82 00 18 */ beq lbl_800EE66C /* 800EE658 000EB5B8 81 83 00 00 */ lwz r12, 0(r3) /* 800EE65C 000EB5BC 38 80 00 01 */ li r4, 1 /* 800EE660 000EB5C0 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE664 000EB5C4 7D 89 03 A6 */ mtctr r12 /* 800EE668 000EB5C8 4E 80 04 21 */ bctrl lbl_800EE66C: /* 800EE66C 000EB5CC 7E C0 07 75 */ extsb. r0, r22 /* 800EE670 000EB5D0 41 82 00 10 */ beq lbl_800EE680 /* 800EE674 000EB5D4 38 61 00 28 */ addi r3, r1, 0x28 /* 800EE678 000EB5D8 38 80 00 00 */ li r4, 0 /* 800EE67C 000EB5DC 48 25 27 C5 */ bl __dt__6CTokenFv lbl_800EE680: /* 800EE680 000EB5E0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800EE684 000EB5E4 3A C0 00 00 */ li r22, 0 /* 800EE688 000EB5E8 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800EE68C 000EB5EC 38 60 03 40 */ li r3, 0x340 /* 800EE690 000EB5F0 38 84 00 DC */ addi r4, r4, 0xdc /* 800EE694 000EB5F4 38 A0 00 00 */ li r5, 0 /* 800EE698 000EB5F8 48 22 71 D5 */ bl __nw__FUlPCcPCc /* 800EE69C 000EB5FC 7C 75 1B 79 */ or. r21, r3, r3 /* 800EE6A0 000EB600 41 82 00 2C */ beq lbl_800EE6CC /* 800EE6A4 000EB604 7F 44 D3 78 */ mr r4, r26 /* 800EE6A8 000EB608 38 61 00 18 */ addi r3, r1, 0x18 /* 800EE6AC 000EB60C 48 25 27 FD */ bl __ct__6CTokenFRC6CToken /* 800EE6B0 000EB610 7E A3 AB 78 */ mr r3, r21 /* 800EE6B4 000EB614 38 81 00 18 */ addi r4, r1, 0x18 /* 800EE6B8 000EB618 3A C0 00 01 */ li r22, 1 /* 800EE6BC 000EB61C 38 A0 00 00 */ li r5, 0 /* 800EE6C0 000EB620 38 C0 00 01 */ li r6, 1 /* 800EE6C4 000EB624 48 23 0D 1D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800EE6C8 000EB628 7C 75 1B 78 */ mr r21, r3 lbl_800EE6CC: /* 800EE6CC 000EB62C 7C 15 00 D0 */ neg r0, r21 /* 800EE6D0 000EB630 3A FF 00 38 */ addi r23, r31, 0x38 /* 800EE6D4 000EB634 7C 03 AB 78 */ or r3, r0, r21 /* 800EE6D8 000EB638 38 01 00 10 */ addi r0, r1, 0x10 /* 800EE6DC 000EB63C 54 63 0F FE */ srwi r3, r3, 0x1f /* 800EE6E0 000EB640 92 A1 00 14 */ stw r21, 0x14(r1) /* 800EE6E4 000EB644 7C 00 B8 40 */ cmplw r0, r23 /* 800EE6E8 000EB648 98 61 00 10 */ stb r3, 0x10(r1) /* 800EE6EC 000EB64C 41 82 00 48 */ beq lbl_800EE734 /* 800EE6F0 000EB650 88 17 00 00 */ lbz r0, 0(r23) /* 800EE6F4 000EB654 28 00 00 00 */ cmplwi r0, 0 /* 800EE6F8 000EB658 41 82 00 24 */ beq lbl_800EE71C /* 800EE6FC 000EB65C 80 77 00 04 */ lwz r3, 4(r23) /* 800EE700 000EB660 28 03 00 00 */ cmplwi r3, 0 /* 800EE704 000EB664 41 82 00 18 */ beq lbl_800EE71C /* 800EE708 000EB668 81 83 00 00 */ lwz r12, 0(r3) /* 800EE70C 000EB66C 38 80 00 01 */ li r4, 1 /* 800EE710 000EB670 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE714 000EB674 7D 89 03 A6 */ mtctr r12 /* 800EE718 000EB678 4E 80 04 21 */ bctrl lbl_800EE71C: /* 800EE71C 000EB67C 88 61 00 10 */ lbz r3, 0x10(r1) /* 800EE720 000EB680 38 00 00 00 */ li r0, 0 /* 800EE724 000EB684 98 77 00 00 */ stb r3, 0(r23) /* 800EE728 000EB688 80 61 00 14 */ lwz r3, 0x14(r1) /* 800EE72C 000EB68C 90 77 00 04 */ stw r3, 4(r23) /* 800EE730 000EB690 98 01 00 10 */ stb r0, 0x10(r1) lbl_800EE734: /* 800EE734 000EB694 88 01 00 10 */ lbz r0, 0x10(r1) /* 800EE738 000EB698 28 00 00 00 */ cmplwi r0, 0 /* 800EE73C 000EB69C 41 82 00 24 */ beq lbl_800EE760 /* 800EE740 000EB6A0 80 61 00 14 */ lwz r3, 0x14(r1) /* 800EE744 000EB6A4 28 03 00 00 */ cmplwi r3, 0 /* 800EE748 000EB6A8 41 82 00 18 */ beq lbl_800EE760 /* 800EE74C 000EB6AC 81 83 00 00 */ lwz r12, 0(r3) /* 800EE750 000EB6B0 38 80 00 01 */ li r4, 1 /* 800EE754 000EB6B4 81 8C 00 08 */ lwz r12, 8(r12) /* 800EE758 000EB6B8 7D 89 03 A6 */ mtctr r12 /* 800EE75C 000EB6BC 4E 80 04 21 */ bctrl lbl_800EE760: /* 800EE760 000EB6C0 7E C0 07 75 */ extsb. r0, r22 /* 800EE764 000EB6C4 41 82 00 10 */ beq lbl_800EE774 /* 800EE768 000EB6C8 38 61 00 18 */ addi r3, r1, 0x18 /* 800EE76C 000EB6CC 38 80 00 00 */ li r4, 0 /* 800EE770 000EB6D0 48 25 26 D1 */ bl __dt__6CTokenFv lbl_800EE774: /* 800EE774 000EB6D4 BA A1 01 24 */ lmw r21, 0x124(r1) /* 800EE778 000EB6D8 80 01 01 54 */ lwz r0, 0x154(r1) /* 800EE77C 000EB6DC 7C 08 03 A6 */ mtlr r0 /* 800EE780 000EB6E0 38 21 01 50 */ addi r1, r1, 0x150 /* 800EE784 000EB6E4 4E 80 00 20 */ blr .global PointGenerator__10CMorphBallFPvPC9CVector3fPC9CVector3fi PointGenerator__10CMorphBallFPvPC9CVector3fPC9CVector3fi: /* 800EE788 000EB6E8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800EE78C 000EB6EC 7C 08 02 A6 */ mflr r0 /* 800EE790 000EB6F0 28 03 00 00 */ cmplwi r3, 0 /* 800EE794 000EB6F4 90 01 00 14 */ stw r0, 0x14(r1) /* 800EE798 000EB6F8 41 82 00 08 */ beq lbl_800EE7A0 /* 800EE79C 000EB6FC 48 17 BE 45 */ bl GeneratePoints__20CRainSplashGeneratorFPC9CVector3fPC9CVector3fi lbl_800EE7A0: /* 800EE7A0 000EB700 80 01 00 14 */ lwz r0, 0x14(r1) /* 800EE7A4 000EB704 7C 08 03 A6 */ mtlr r0 /* 800EE7A8 000EB708 38 21 00 10 */ addi r1, r1, 0x10 /* 800EE7AC 000EB70C 4E 80 00 20 */ blr .global StartLandingSfx__10CMorphBallFv StartLandingSfx__10CMorphBallFv: /* 800EE7B0 000EB710 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800EE7B4 000EB714 7C 08 02 A6 */ mflr r0 /* 800EE7B8 000EB718 90 01 00 34 */ stw r0, 0x34(r1) /* 800EE7BC 000EB71C DB E1 00 20 */ stfd f31, 0x20(r1) /* 800EE7C0 000EB720 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 800EE7C4 000EB724 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800EE7C8 000EB728 7C 7F 1B 78 */ mr r31, r3 /* 800EE7CC 000EB72C C0 02 91 68 */ lfs f0, lbl_805AAE88@sda21(r2) /* 800EE7D0 000EB730 80 63 00 00 */ lwz r3, 0(r3) /* 800EE7D4 000EB734 C0 23 01 40 */ lfs f1, 0x140(r3) /* 800EE7D8 000EB738 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800EE7DC 000EB73C 40 80 00 74 */ bge lbl_800EE850 /* 800EE7E0 000EB740 A0 1F 1E 36 */ lhz r0, 0x1e36(r31) /* 800EE7E4 000EB744 28 00 FF FF */ cmplwi r0, 0xffff /* 800EE7E8 000EB748 41 82 00 68 */ beq lbl_800EE850 /* 800EE7EC 000EB74C C0 42 91 70 */ lfs f2, lbl_805AAE90@sda21(r2) /* 800EE7F0 000EB750 38 81 00 14 */ addi r4, r1, 0x14 /* 800EE7F4 000EB754 C0 23 07 9C */ lfs f1, 0x79c(r3) /* 800EE7F8 000EB758 38 62 91 60 */ addi r3, r2, lbl_805AAE80@sda21 /* 800EE7FC 000EB75C C0 02 91 6C */ lfs f0, lbl_805AAE8C@sda21(r2) /* 800EE800 000EB760 38 A2 91 64 */ addi r5, r2, lbl_805AAE84@sda21 /* 800EE804 000EB764 EC 02 00 7A */ fmadds f0, f2, f1, f0 /* 800EE808 000EB768 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800EE80C 000EB76C 4B F1 DA A9 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800EE810 000EB770 C3 E3 00 00 */ lfs f31, 0(r3) /* 800EE814 000EB774 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 /* 800EE818 000EB778 38 61 00 0C */ addi r3, r1, 0xc /* 800EE81C 000EB77C A0 9F 1E 36 */ lhz r4, 0x1e36(r31) /* 800EE820 000EB780 38 C0 00 40 */ li r6, 0x40 /* 800EE824 000EB784 88 A1 00 08 */ lbz r5, 8(r1) /* 800EE828 000EB788 38 E0 00 01 */ li r7, 1 /* 800EE82C 000EB78C A9 02 C5 FA */ lha r8, kMedPriority__11CSfxManager@sda21(r2) /* 800EE830 000EB790 39 20 00 00 */ li r9, 0 /* 800EE834 000EB794 81 42 C6 00 */ lwz r10, kAllAreas__11CSfxManager@sda21(r2) /* 800EE838 000EB798 48 1F B5 3D */ bl SfxStart__11CSfxManagerFUsssbsbi /* 800EE83C 000EB79C 80 01 00 0C */ lwz r0, 0xc(r1) /* 800EE840 000EB7A0 38 81 00 10 */ addi r4, r1, 0x10 /* 800EE844 000EB7A4 90 01 00 10 */ stw r0, 0x10(r1) /* 800EE848 000EB7A8 80 7F 00 00 */ lwz r3, 0(r31) /* 800EE84C 000EB7AC 4B F2 29 41 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_800EE850: /* 800EE850 000EB7B0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 800EE854 000EB7B4 80 01 00 34 */ lwz r0, 0x34(r1) /* 800EE858 000EB7B8 CB E1 00 20 */ lfd f31, 0x20(r1) /* 800EE85C 000EB7BC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800EE860 000EB7C0 7C 08 03 A6 */ mtlr r0 /* 800EE864 000EB7C4 38 21 00 30 */ addi r1, r1, 0x30 /* 800EE868 000EB7C8 4E 80 00 20 */ blr .global StopSounds__10CMorphBallFv StopSounds__10CMorphBallFv: /* 800EE86C 000EB7CC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800EE870 000EB7D0 7C 08 02 A6 */ mflr r0 /* 800EE874 000EB7D4 90 01 00 24 */ stw r0, 0x24(r1) /* 800EE878 000EB7D8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800EE87C 000EB7DC 7C 7F 1B 78 */ mr r31, r3 /* 800EE880 000EB7E0 80 03 1E 2C */ lwz r0, 0x1e2c(r3) /* 800EE884 000EB7E4 28 00 00 00 */ cmplwi r0, 0 /* 800EE888 000EB7E8 41 82 00 1C */ beq lbl_800EE8A4 /* 800EE88C 000EB7EC 80 1F 1E 2C */ lwz r0, 0x1e2c(r31) /* 800EE890 000EB7F0 38 61 00 0C */ addi r3, r1, 0xc /* 800EE894 000EB7F4 90 01 00 0C */ stw r0, 0xc(r1) /* 800EE898 000EB7F8 48 1F B4 B1 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle /* 800EE89C 000EB7FC 38 00 00 00 */ li r0, 0 /* 800EE8A0 000EB800 90 1F 1E 2C */ stw r0, 0x1e2c(r31) lbl_800EE8A4: /* 800EE8A4 000EB804 80 1F 1E 30 */ lwz r0, 0x1e30(r31) /* 800EE8A8 000EB808 28 00 00 00 */ cmplwi r0, 0 /* 800EE8AC 000EB80C 41 82 00 1C */ beq lbl_800EE8C8 /* 800EE8B0 000EB810 80 1F 1E 30 */ lwz r0, 0x1e30(r31) /* 800EE8B4 000EB814 38 61 00 08 */ addi r3, r1, 8 /* 800EE8B8 000EB818 90 01 00 08 */ stw r0, 8(r1) /* 800EE8BC 000EB81C 48 1F B4 8D */ bl SfxStop__11CSfxManagerFRC10CSfxHandle /* 800EE8C0 000EB820 38 00 00 00 */ li r0, 0 /* 800EE8C4 000EB824 90 1F 1E 30 */ stw r0, 0x1e30(r31) lbl_800EE8C8: /* 800EE8C8 000EB828 80 01 00 24 */ lwz r0, 0x24(r1) /* 800EE8CC 000EB82C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800EE8D0 000EB830 7C 08 03 A6 */ mtlr r0 /* 800EE8D4 000EB834 38 21 00 20 */ addi r1, r1, 0x20 /* 800EE8D8 000EB838 4E 80 00 20 */ blr .global UpdateMorphBallSound__10CMorphBallFf UpdateMorphBallSound__10CMorphBallFf: /* 800EE8DC 000EB83C 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 800EE8E0 000EB840 7C 08 02 A6 */ mflr r0 /* 800EE8E4 000EB844 90 01 00 C4 */ stw r0, 0xc4(r1) /* 800EE8E8 000EB848 DB E1 00 B0 */ stfd f31, 0xb0(r1) /* 800EE8EC 000EB84C F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 /* 800EE8F0 000EB850 DB C1 00 A0 */ stfd f30, 0xa0(r1) /* 800EE8F4 000EB854 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 /* 800EE8F8 000EB858 DB A1 00 90 */ stfd f29, 0x90(r1) /* 800EE8FC 000EB85C F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 /* 800EE900 000EB860 93 E1 00 8C */ stw r31, 0x8c(r1) /* 800EE904 000EB864 7C 7F 1B 78 */ mr r31, r3 /* 800EE908 000EB868 FF A0 08 90 */ fmr f29, f1 /* 800EE90C 000EB86C 80 63 00 00 */ lwz r3, 0(r3) /* 800EE910 000EB870 C0 03 01 38 */ lfs f0, 0x138(r3) /* 800EE914 000EB874 D0 01 00 68 */ stfs f0, 0x68(r1) /* 800EE918 000EB878 C0 03 01 3C */ lfs f0, 0x13c(r3) /* 800EE91C 000EB87C D0 01 00 6C */ stfs f0, 0x6c(r1) /* 800EE920 000EB880 C0 03 01 40 */ lfs f0, 0x140(r3) /* 800EE924 000EB884 D0 01 00 70 */ stfs f0, 0x70(r1) /* 800EE928 000EB888 80 1F 18 7C */ lwz r0, 0x187c(r31) /* 800EE92C 000EB88C 2C 00 00 01 */ cmpwi r0, 1 /* 800EE930 000EB890 41 82 00 0C */ beq lbl_800EE93C /* 800EE934 000EB894 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800EE938 000EB898 D0 01 00 70 */ stfs f0, 0x70(r1) lbl_800EE93C: /* 800EE93C 000EB89C 80 7F 00 00 */ lwz r3, 0(r31) /* 800EE940 000EB8A0 80 03 02 58 */ lwz r0, 0x258(r3) /* 800EE944 000EB8A4 2C 00 00 04 */ cmpwi r0, 4 /* 800EE948 000EB8A8 41 82 00 14 */ beq lbl_800EE95C /* 800EE94C 000EB8AC 40 80 01 64 */ bge lbl_800EEAB0 /* 800EE950 000EB8B0 2C 00 00 00 */ cmpwi r0, 0 /* 800EE954 000EB8B4 41 82 00 08 */ beq lbl_800EE95C /* 800EE958 000EB8B8 48 00 01 58 */ b lbl_800EEAB0 lbl_800EE95C: /* 800EE95C 000EB8BC 38 61 00 68 */ addi r3, r1, 0x68 /* 800EE960 000EB8C0 48 22 5F 59 */ bl Magnitude__9CVector3fCFv /* 800EE964 000EB8C4 80 1F 18 7C */ lwz r0, 0x187c(r31) /* 800EE968 000EB8C8 FF C0 08 90 */ fmr f30, f1 /* 800EE96C 000EB8CC 2C 00 00 01 */ cmpwi r0, 1 /* 800EE970 000EB8D0 40 82 00 18 */ bne lbl_800EE988 /* 800EE974 000EB8D4 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800EE978 000EB8D8 C0 22 91 7C */ lfs f1, lbl_805AAE9C@sda21(r2) /* 800EE97C 000EB8DC C0 03 00 E4 */ lfs f0, 0xe4(r3) /* 800EE980 000EB8E0 EC 1D 00 32 */ fmuls f0, f29, f0 /* 800EE984 000EB8E4 EF C1 F0 3A */ fmadds f30, f1, f0, f30 lbl_800EE988: /* 800EE988 000EB8E8 C0 02 91 80 */ lfs f0, lbl_805AAEA0@sda21(r2) /* 800EE98C 000EB8EC FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 800EE990 000EB8F0 40 81 01 20 */ ble lbl_800EEAB0 /* 800EE994 000EB8F4 80 1F 1E 2C */ lwz r0, 0x1e2c(r31) /* 800EE998 000EB8F8 28 00 00 00 */ cmplwi r0, 0 /* 800EE99C 000EB8FC 40 82 00 6C */ bne lbl_800EEA08 /* 800EE9A0 000EB900 A0 9F 1E 34 */ lhz r4, 0x1e34(r31) /* 800EE9A4 000EB904 28 04 FF FF */ cmplwi r4, 0xffff /* 800EE9A8 000EB908 41 82 00 4C */ beq lbl_800EE9F4 /* 800EE9AC 000EB90C 80 BF 00 00 */ lwz r5, 0(r31) /* 800EE9B0 000EB910 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800EE9B4 000EB914 38 C3 66 A0 */ addi r6, r3, sZeroVector__9CVector3f@l /* 800EE9B8 000EB918 A9 22 C5 FA */ lha r9, kMedPriority__11CSfxManager@sda21(r2) /* 800EE9BC 000EB91C C0 45 00 60 */ lfs f2, 0x60(r5) /* 800EE9C0 000EB920 38 61 00 34 */ addi r3, r1, 0x34 /* 800EE9C4 000EB924 C0 25 00 50 */ lfs f1, 0x50(r5) /* 800EE9C8 000EB928 38 E0 00 01 */ li r7, 1 /* 800EE9CC 000EB92C C0 05 00 40 */ lfs f0, 0x40(r5) /* 800EE9D0 000EB930 38 A1 00 5C */ addi r5, r1, 0x5c /* 800EE9D4 000EB934 81 42 C6 00 */ lwz r10, kAllAreas__11CSfxManager@sda21(r2) /* 800EE9D8 000EB938 39 00 00 01 */ li r8, 1 /* 800EE9DC 000EB93C D0 01 00 5C */ stfs f0, 0x5c(r1) /* 800EE9E0 000EB940 D0 21 00 60 */ stfs f1, 0x60(r1) /* 800EE9E4 000EB944 D0 41 00 64 */ stfs f2, 0x64(r1) /* 800EE9E8 000EB948 48 1F B8 C9 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi /* 800EE9EC 000EB94C 80 01 00 34 */ lwz r0, 0x34(r1) /* 800EE9F0 000EB950 90 1F 1E 2C */ stw r0, 0x1e2c(r31) lbl_800EE9F4: /* 800EE9F4 000EB954 80 1F 1E 2C */ lwz r0, 0x1e2c(r31) /* 800EE9F8 000EB958 38 81 00 30 */ addi r4, r1, 0x30 /* 800EE9FC 000EB95C 90 01 00 30 */ stw r0, 0x30(r1) /* 800EEA00 000EB960 80 7F 00 00 */ lwz r3, 0(r31) /* 800EEA04 000EB964 4B F2 27 89 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_800EEA08: /* 800EEA08 000EB968 FC 00 F0 1E */ fctiwz f0, f30 /* 800EEA0C 000EB96C 38 81 00 28 */ addi r4, r1, 0x28 /* 800EEA10 000EB970 38 6D 88 E0 */ addi r3, r13, lbl_805A74A0@sda21 /* 800EEA14 000EB974 38 AD 88 E4 */ addi r5, r13, lbl_805A74A4@sda21 /* 800EEA18 000EB978 D8 01 00 78 */ stfd f0, 0x78(r1) /* 800EEA1C 000EB97C 80 01 00 7C */ lwz r0, 0x7c(r1) /* 800EEA20 000EB980 1C C0 01 F4 */ mulli r6, r0, 0x1f4 /* 800EEA24 000EB984 38 06 02 B4 */ addi r0, r6, 0x2b4 /* 800EEA28 000EB988 90 01 00 28 */ stw r0, 0x28(r1) /* 800EEA2C 000EB98C 80 1F 1E 2C */ lwz r0, 0x1e2c(r31) /* 800EEA30 000EB990 90 01 00 2C */ stw r0, 0x2c(r1) /* 800EEA34 000EB994 4B F6 B6 31 */ bl "Clamp__5CMathFRCiRCiRCi" /* 800EEA38 000EB998 7C 64 1B 78 */ mr r4, r3 /* 800EEA3C 000EB99C 38 61 00 2C */ addi r3, r1, 0x2c /* 800EEA40 000EB9A0 80 84 00 00 */ lwz r4, 0(r4) /* 800EEA44 000EB9A4 48 1F A4 69 */ bl PitchBend__11CSfxManagerF10CSfxHandlei /* 800EEA48 000EB9A8 C0 22 91 88 */ lfs f1, lbl_805AAEA8@sda21(r2) /* 800EEA4C 000EB9AC 38 81 00 24 */ addi r4, r1, 0x24 /* 800EEA50 000EB9B0 C0 02 91 84 */ lfs f0, lbl_805AAEA4@sda21(r2) /* 800EEA54 000EB9B4 38 62 91 74 */ addi r3, r2, lbl_805AAE94@sda21 /* 800EEA58 000EB9B8 38 A2 91 78 */ addi r5, r2, lbl_805AAE98@sda21 /* 800EEA5C 000EB9BC EC 01 07 BA */ fmadds f0, f1, f30, f0 /* 800EEA60 000EB9C0 D0 01 00 24 */ stfs f0, 0x24(r1) /* 800EEA64 000EB9C4 4B F1 D8 51 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800EEA68 000EB9C8 C3 E3 00 00 */ lfs f31, 0(r3) /* 800EEA6C 000EB9CC F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 /* 800EEA70 000EB9D0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800EEA74 000EB9D4 80 FF 00 00 */ lwz r7, 0(r31) /* 800EEA78 000EB9D8 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l /* 800EEA7C 000EB9DC 88 C1 00 08 */ lbz r6, 8(r1) /* 800EEA80 000EB9E0 38 61 00 20 */ addi r3, r1, 0x20 /* 800EEA84 000EB9E4 C0 47 00 60 */ lfs f2, 0x60(r7) /* 800EEA88 000EB9E8 38 81 00 50 */ addi r4, r1, 0x50 /* 800EEA8C 000EB9EC C0 27 00 50 */ lfs f1, 0x50(r7) /* 800EEA90 000EB9F0 C0 07 00 40 */ lfs f0, 0x40(r7) /* 800EEA94 000EB9F4 D0 01 00 50 */ stfs f0, 0x50(r1) /* 800EEA98 000EB9F8 D0 21 00 54 */ stfs f1, 0x54(r1) /* 800EEA9C 000EB9FC D0 41 00 58 */ stfs f2, 0x58(r1) /* 800EEAA0 000EBA00 80 1F 1E 2C */ lwz r0, 0x1e2c(r31) /* 800EEAA4 000EBA04 90 01 00 20 */ stw r0, 0x20(r1) /* 800EEAA8 000EBA08 48 1F B4 09 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc /* 800EEAAC 000EBA0C 48 00 00 28 */ b lbl_800EEAD4 lbl_800EEAB0: /* 800EEAB0 000EBA10 80 1F 1E 2C */ lwz r0, 0x1e2c(r31) /* 800EEAB4 000EBA14 28 00 00 00 */ cmplwi r0, 0 /* 800EEAB8 000EBA18 41 82 00 1C */ beq lbl_800EEAD4 /* 800EEABC 000EBA1C 80 1F 1E 2C */ lwz r0, 0x1e2c(r31) /* 800EEAC0 000EBA20 38 61 00 1C */ addi r3, r1, 0x1c /* 800EEAC4 000EBA24 90 01 00 1C */ stw r0, 0x1c(r1) /* 800EEAC8 000EBA28 48 1F B2 81 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle /* 800EEACC 000EBA2C 38 00 00 00 */ li r0, 0 /* 800EEAD0 000EBA30 90 1F 1E 2C */ stw r0, 0x1e2c(r31) lbl_800EEAD4: /* 800EEAD4 000EBA34 80 1F 18 7C */ lwz r0, 0x187c(r31) /* 800EEAD8 000EBA38 2C 00 00 01 */ cmpwi r0, 1 /* 800EEADC 000EBA3C 40 82 00 B0 */ bne lbl_800EEB8C /* 800EEAE0 000EBA40 80 1F 1E 30 */ lwz r0, 0x1e30(r31) /* 800EEAE4 000EBA44 28 00 00 00 */ cmplwi r0, 0 /* 800EEAE8 000EBA48 40 82 00 64 */ bne lbl_800EEB4C /* 800EEAEC 000EBA4C 80 9F 00 00 */ lwz r4, 0(r31) /* 800EEAF0 000EBA50 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800EEAF4 000EBA54 38 C3 66 A0 */ addi r6, r3, sZeroVector__9CVector3f@l /* 800EEAF8 000EBA58 81 42 C6 00 */ lwz r10, kAllAreas__11CSfxManager@sda21(r2) /* 800EEAFC 000EBA5C C0 44 00 60 */ lfs f2, 0x60(r4) /* 800EEB00 000EBA60 38 61 00 18 */ addi r3, r1, 0x18 /* 800EEB04 000EBA64 C0 24 00 50 */ lfs f1, 0x50(r4) /* 800EEB08 000EBA68 38 A1 00 44 */ addi r5, r1, 0x44 /* 800EEB0C 000EBA6C C0 04 00 40 */ lfs f0, 0x40(r4) /* 800EEB10 000EBA70 38 80 05 F3 */ li r4, 0x5f3 /* 800EEB14 000EBA74 38 E0 00 01 */ li r7, 1 /* 800EEB18 000EBA78 39 00 00 01 */ li r8, 1 /* 800EEB1C 000EBA7C D0 01 00 44 */ stfs f0, 0x44(r1) /* 800EEB20 000EBA80 39 20 00 C8 */ li r9, 0xc8 /* 800EEB24 000EBA84 D0 21 00 48 */ stfs f1, 0x48(r1) /* 800EEB28 000EBA88 D0 41 00 4C */ stfs f2, 0x4c(r1) /* 800EEB2C 000EBA8C 48 1F B7 85 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi /* 800EEB30 000EBA90 80 01 00 18 */ lwz r0, 0x18(r1) /* 800EEB34 000EBA94 38 81 00 14 */ addi r4, r1, 0x14 /* 800EEB38 000EBA98 90 1F 1E 30 */ stw r0, 0x1e30(r31) /* 800EEB3C 000EBA9C 80 1F 1E 30 */ lwz r0, 0x1e30(r31) /* 800EEB40 000EBAA0 90 01 00 14 */ stw r0, 0x14(r1) /* 800EEB44 000EBAA4 80 7F 00 00 */ lwz r3, 0(r31) /* 800EEB48 000EBAA8 4B F2 26 45 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_800EEB4C: /* 800EEB4C 000EBAAC 80 DF 00 00 */ lwz r6, 0(r31) /* 800EEB50 000EBAB0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800EEB54 000EBAB4 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l /* 800EEB58 000EBAB8 38 81 00 38 */ addi r4, r1, 0x38 /* 800EEB5C 000EBABC C0 46 00 60 */ lfs f2, 0x60(r6) /* 800EEB60 000EBAC0 38 61 00 10 */ addi r3, r1, 0x10 /* 800EEB64 000EBAC4 C0 26 00 50 */ lfs f1, 0x50(r6) /* 800EEB68 000EBAC8 C0 06 00 40 */ lfs f0, 0x40(r6) /* 800EEB6C 000EBACC 38 C0 00 7F */ li r6, 0x7f /* 800EEB70 000EBAD0 D0 01 00 38 */ stfs f0, 0x38(r1) /* 800EEB74 000EBAD4 D0 21 00 3C */ stfs f1, 0x3c(r1) /* 800EEB78 000EBAD8 D0 41 00 40 */ stfs f2, 0x40(r1) /* 800EEB7C 000EBADC 80 1F 1E 30 */ lwz r0, 0x1e30(r31) /* 800EEB80 000EBAE0 90 01 00 10 */ stw r0, 0x10(r1) /* 800EEB84 000EBAE4 48 1F B3 2D */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc /* 800EEB88 000EBAE8 48 00 00 28 */ b lbl_800EEBB0 lbl_800EEB8C: /* 800EEB8C 000EBAEC 80 1F 1E 30 */ lwz r0, 0x1e30(r31) /* 800EEB90 000EBAF0 28 00 00 00 */ cmplwi r0, 0 /* 800EEB94 000EBAF4 41 82 00 1C */ beq lbl_800EEBB0 /* 800EEB98 000EBAF8 80 1F 1E 30 */ lwz r0, 0x1e30(r31) /* 800EEB9C 000EBAFC 38 61 00 0C */ addi r3, r1, 0xc /* 800EEBA0 000EBB00 90 01 00 0C */ stw r0, 0xc(r1) /* 800EEBA4 000EBB04 48 1F B1 A5 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle /* 800EEBA8 000EBB08 38 00 00 00 */ li r0, 0 /* 800EEBAC 000EBB0C 90 1F 1E 30 */ stw r0, 0x1e30(r31) lbl_800EEBB0: /* 800EEBB0 000EBB10 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 /* 800EEBB4 000EBB14 CB E1 00 B0 */ lfd f31, 0xb0(r1) /* 800EEBB8 000EBB18 E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 /* 800EEBBC 000EBB1C CB C1 00 A0 */ lfd f30, 0xa0(r1) /* 800EEBC0 000EBB20 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 /* 800EEBC4 000EBB24 CB A1 00 90 */ lfd f29, 0x90(r1) /* 800EEBC8 000EBB28 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 800EEBCC 000EBB2C 83 E1 00 8C */ lwz r31, 0x8c(r1) /* 800EEBD0 000EBB30 7C 08 03 A6 */ mtlr r0 /* 800EEBD4 000EBB34 38 21 00 C0 */ addi r1, r1, 0xc0 /* 800EEBD8 000EBB38 4E 80 00 20 */ blr .global SelectMorphBallSounds__10CMorphBallFRC13CMaterialList SelectMorphBallSounds__10CMorphBallFRC13CMaterialList: /* 800EEBDC 000EBB3C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800EEBE0 000EBB40 7C 08 02 A6 */ mflr r0 /* 800EEBE4 000EBB44 90 01 00 24 */ stw r0, 0x24(r1) /* 800EEBE8 000EBB48 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800EEBEC 000EBB4C 7C 9F 23 78 */ mr r31, r4 /* 800EEBF0 000EBB50 93 C1 00 18 */ stw r30, 0x18(r1) /* 800EEBF4 000EBB54 7C 7E 1B 78 */ mr r30, r3 /* 800EEBF8 000EBB58 93 A1 00 14 */ stw r29, 0x14(r1) /* 800EEBFC 000EBB5C 80 63 00 00 */ lwz r3, 0(r3) /* 800EEC00 000EBB60 88 03 09 C5 */ lbz r0, 0x9c5(r3) /* 800EEC04 000EBB64 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 800EEC08 000EBB68 41 82 00 20 */ beq lbl_800EEC28 /* 800EEC0C 000EBB6C 88 03 08 2C */ lbz r0, 0x82c(r3) /* 800EEC10 000EBB70 28 00 00 00 */ cmplwi r0, 0 /* 800EEC14 000EBB74 41 82 00 0C */ beq lbl_800EEC20 /* 800EEC18 000EBB78 3B A0 08 8A */ li r29, 0x88a /* 800EEC1C 000EBB7C 48 00 00 2C */ b lbl_800EEC48 lbl_800EEC20: /* 800EEC20 000EBB80 3B A0 05 C9 */ li r29, 0x5c9 /* 800EEC24 000EBB84 48 00 00 24 */ b lbl_800EEC48 lbl_800EEC28: /* 800EEC28 000EBB88 3C 60 80 3D */ lis r3, lbl_803CEB94@ha /* 800EEC2C 000EBB8C 3C A0 00 01 */ lis r5, 0x0000FFFF@ha /* 800EEC30 000EBB90 38 83 EB 94 */ addi r4, r3, lbl_803CEB94@l /* 800EEC34 000EBB94 38 C5 FF FF */ addi r6, r5, 0x0000FFFF@l /* 800EEC38 000EBB98 7F E3 FB 78 */ mr r3, r31 /* 800EEC3C 000EBB9C 38 A0 00 18 */ li r5, 0x18 /* 800EEC40 000EBBA0 4B F2 97 65 */ bl SfxIdFromMaterial__7CPlayerFRC13CMaterialListPCUsiUs /* 800EEC44 000EBBA4 7C 7D 07 34 */ extsh r29, r3 lbl_800EEC48: /* 800EEC48 000EBBA8 80 9E 00 00 */ lwz r4, 0(r30) /* 800EEC4C 000EBBAC 7F A6 07 34 */ extsh r6, r29 /* 800EEC50 000EBBB0 3C 06 00 00 */ addis r0, r6, 0 /* 800EEC54 000EBBB4 38 A0 00 00 */ li r5, 0 /* 800EEC58 000EBBB8 88 64 09 C5 */ lbz r3, 0x9c5(r4) /* 800EEC5C 000EBBBC 50 A3 0F BC */ rlwimi r3, r5, 1, 0x1e, 0x1e /* 800EEC60 000EBBC0 28 00 FF FF */ cmplwi r0, 0xffff /* 800EEC64 000EBBC4 98 64 09 C5 */ stb r3, 0x9c5(r4) /* 800EEC68 000EBBC8 41 82 00 38 */ beq lbl_800EECA0 /* 800EEC6C 000EBBCC A0 1E 1E 34 */ lhz r0, 0x1e34(r30) /* 800EEC70 000EBBD0 7C 00 30 00 */ cmpw r0, r6 /* 800EEC74 000EBBD4 41 82 00 28 */ beq lbl_800EEC9C /* 800EEC78 000EBBD8 80 1E 1E 2C */ lwz r0, 0x1e2c(r30) /* 800EEC7C 000EBBDC 28 00 00 00 */ cmplwi r0, 0 /* 800EEC80 000EBBE0 41 82 00 1C */ beq lbl_800EEC9C /* 800EEC84 000EBBE4 80 1E 1E 2C */ lwz r0, 0x1e2c(r30) /* 800EEC88 000EBBE8 38 61 00 08 */ addi r3, r1, 8 /* 800EEC8C 000EBBEC 90 01 00 08 */ stw r0, 8(r1) /* 800EEC90 000EBBF0 48 1F B0 B9 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle /* 800EEC94 000EBBF4 38 00 00 00 */ li r0, 0 /* 800EEC98 000EBBF8 90 1E 1E 2C */ stw r0, 0x1e2c(r30) lbl_800EEC9C: /* 800EEC9C 000EBBFC B3 BE 1E 34 */ sth r29, 0x1e34(r30) lbl_800EECA0: /* 800EECA0 000EBC00 3C 60 80 3D */ lis r3, lbl_803CEBC4@ha /* 800EECA4 000EBC04 3C A0 00 01 */ lis r5, 0x0000FFFF@ha /* 800EECA8 000EBC08 38 83 EB C4 */ addi r4, r3, lbl_803CEBC4@l /* 800EECAC 000EBC0C 38 C5 FF FF */ addi r6, r5, 0x0000FFFF@l /* 800EECB0 000EBC10 7F E3 FB 78 */ mr r3, r31 /* 800EECB4 000EBC14 38 A0 00 18 */ li r5, 0x18 /* 800EECB8 000EBC18 4B F2 96 ED */ bl SfxIdFromMaterial__7CPlayerFRC13CMaterialListPCUsiUs /* 800EECBC 000EBC1C B0 7E 1E 36 */ sth r3, 0x1e36(r30) /* 800EECC0 000EBC20 80 01 00 24 */ lwz r0, 0x24(r1) /* 800EECC4 000EBC24 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800EECC8 000EBC28 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800EECCC 000EBC2C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800EECD0 000EBC30 7C 08 03 A6 */ mtlr r0 /* 800EECD4 000EBC34 38 21 00 20 */ addi r1, r1, 0x20 /* 800EECD8 000EBC38 4E 80 00 20 */ blr .global TakeDamage__10CMorphBallFf TakeDamage__10CMorphBallFf: /* 800EECDC 000EBC3C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800EECE0 000EBC40 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800EECE4 000EBC44 4C 40 13 82 */ cror 2, 0, 2 /* 800EECE8 000EBC48 40 82 00 10 */ bne lbl_800EECF8 /* 800EECEC 000EBC4C D0 03 1E 44 */ stfs f0, 0x1e44(r3) /* 800EECF0 000EBC50 D0 03 1E 48 */ stfs f0, 0x1e48(r3) /* 800EECF4 000EBC54 4E 80 00 20 */ blr lbl_800EECF8: /* 800EECF8 000EBC58 C0 02 91 8C */ lfs f0, lbl_805AAEAC@sda21(r2) /* 800EECFC 000EBC5C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800EED00 000EBC60 4C 41 13 82 */ cror 2, 1, 2 /* 800EED04 000EBC64 40 82 00 10 */ bne lbl_800EED14 /* 800EED08 000EBC68 C0 02 91 90 */ lfs f0, lbl_805AAEB0@sda21(r2) /* 800EED0C 000EBC6C D0 03 1E 48 */ stfs f0, 0x1e48(r3) /* 800EED10 000EBC70 48 00 00 38 */ b lbl_800EED48 lbl_800EED14: /* 800EED14 000EBC74 C0 02 91 94 */ lfs f0, lbl_805AAEB4@sda21(r2) /* 800EED18 000EBC78 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800EED1C 000EBC7C 40 81 00 24 */ ble lbl_800EED40 /* 800EED20 000EBC80 EC 41 00 28 */ fsubs f2, f1, f0 /* 800EED24 000EBC84 C0 22 91 9C */ lfs f1, lbl_805AAEBC@sda21(r2) /* 800EED28 000EBC88 C0 62 91 98 */ lfs f3, lbl_805AAEB8@sda21(r2) /* 800EED2C 000EBC8C C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800EED30 000EBC90 EC 22 08 24 */ fdivs f1, f2, f1 /* 800EED34 000EBC94 EC 03 00 7C */ fnmsubs f0, f3, f1, f0 /* 800EED38 000EBC98 D0 03 1E 48 */ stfs f0, 0x1e48(r3) /* 800EED3C 000EBC9C 48 00 00 0C */ b lbl_800EED48 lbl_800EED40: /* 800EED40 000EBCA0 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800EED44 000EBCA4 D0 03 1E 48 */ stfs f0, 0x1e48(r3) lbl_800EED48: /* 800EED48 000EBCA8 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800EED4C 000EBCAC D0 03 1E 44 */ stfs f0, 0x1e44(r3) /* 800EED50 000EBCB0 4E 80 00 20 */ blr .global "LoadAnimationTokens__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" "LoadAnimationTokens__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>": /* 800EED54 000EBCB4 94 21 FF 70 */ stwu r1, -0x90(r1) /* 800EED58 000EBCB8 7C 08 02 A6 */ mflr r0 /* 800EED5C 000EBCBC 3C A0 80 3D */ lis r5, lbl_803CEBF4@ha /* 800EED60 000EBCC0 90 01 00 94 */ stw r0, 0x94(r1) /* 800EED64 000EBCC4 38 A5 EB F4 */ addi r5, r5, lbl_803CEBF4@l /* 800EED68 000EBCC8 93 E1 00 8C */ stw r31, 0x8c(r1) /* 800EED6C 000EBCCC 93 C1 00 88 */ stw r30, 0x88(r1) /* 800EED70 000EBCD0 93 A1 00 84 */ stw r29, 0x84(r1) /* 800EED74 000EBCD4 7C 7D 1B 78 */ mr r29, r3 /* 800EED78 000EBCD8 38 61 00 50 */ addi r3, r1, 0x50 /* 800EED7C 000EBCDC 93 81 00 80 */ stw r28, 0x80(r1) /* 800EED80 000EBCE0 7C 9C 23 78 */ mr r28, r4 /* 800EED84 000EBCE4 38 85 01 42 */ addi r4, r5, 0x142 /* 800EED88 000EBCE8 4B F1 5F 31 */ bl string_l__4rstlFPCc /* 800EED8C 000EBCEC 7F 84 E3 78 */ mr r4, r28 /* 800EED90 000EBCF0 38 61 00 40 */ addi r3, r1, 0x40 /* 800EED94 000EBCF4 38 A1 00 50 */ addi r5, r1, 0x50 /* 800EED98 000EBCF8 4B F1 5E C5 */ bl "__pl__4rstlFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800EED9C 000EBCFC 38 61 00 6C */ addi r3, r1, 0x6c /* 800EEDA0 000EBD00 38 81 00 40 */ addi r4, r1, 0x40 /* 800EEDA4 000EBD04 48 24 F3 BD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800EEDA8 000EBD08 38 61 00 40 */ addi r3, r1, 0x40 /* 800EEDAC 000EBD0C 48 24 ED 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800EEDB0 000EBD10 38 61 00 50 */ addi r3, r1, 0x50 /* 800EEDB4 000EBD14 48 24 ED 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800EEDB8 000EBD18 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EEDBC 000EBD1C 38 61 00 20 */ addi r3, r1, 0x20 /* 800EEDC0 000EBD20 80 A1 00 6C */ lwz r5, 0x6c(r1) /* 800EEDC4 000EBD24 81 84 00 00 */ lwz r12, 0(r4) /* 800EEDC8 000EBD28 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EEDCC 000EBD2C 7D 89 03 A6 */ mtctr r12 /* 800EEDD0 000EBD30 4E 80 04 21 */ bctrl /* 800EEDD4 000EBD34 3B 81 00 60 */ addi r28, r1, 0x60 /* 800EEDD8 000EBD38 38 81 00 20 */ addi r4, r1, 0x20 /* 800EEDDC 000EBD3C 7F 83 E3 78 */ mr r3, r28 /* 800EEDE0 000EBD40 48 25 20 C9 */ bl __ct__6CTokenFRC6CToken /* 800EEDE4 000EBD44 7F 83 E3 78 */ mr r3, r28 /* 800EEDE8 000EBD48 48 25 20 25 */ bl GetObj__6CTokenFv /* 800EEDEC 000EBD4C 80 03 00 04 */ lwz r0, 4(r3) /* 800EEDF0 000EBD50 38 61 00 20 */ addi r3, r1, 0x20 /* 800EEDF4 000EBD54 38 80 FF FF */ li r4, -1 /* 800EEDF8 000EBD58 90 01 00 68 */ stw r0, 0x68(r1) /* 800EEDFC 000EBD5C 48 25 20 45 */ bl __dt__6CTokenFv /* 800EEE00 000EBD60 38 00 00 00 */ li r0, 0 /* 800EEE04 000EBD64 83 E1 00 68 */ lwz r31, 0x68(r1) /* 800EEE08 000EBD68 90 01 00 34 */ stw r0, 0x34(r1) /* 800EEE0C 000EBD6C 38 7D 19 58 */ addi r3, r29, 0x1958 /* 800EEE10 000EBD70 38 81 00 30 */ addi r4, r1, 0x30 /* 800EEE14 000EBD74 90 01 00 38 */ stw r0, 0x38(r1) /* 800EEE18 000EBD78 90 01 00 3C */ stw r0, 0x3c(r1) /* 800EEE1C 000EBD7C 4B F1 79 E9 */ bl sub_80006804 /* 800EEE20 000EBD80 80 01 00 34 */ lwz r0, 0x34(r1) /* 800EEE24 000EBD84 83 81 00 3C */ lwz r28, 0x3c(r1) /* 800EEE28 000EBD88 54 00 18 38 */ slwi r0, r0, 3 /* 800EEE2C 000EBD8C 7F DC 02 14 */ add r30, r28, r0 /* 800EEE30 000EBD90 93 81 00 0C */ stw r28, 0xc(r1) /* 800EEE34 000EBD94 93 C1 00 14 */ stw r30, 0x14(r1) /* 800EEE38 000EBD98 93 C1 00 10 */ stw r30, 0x10(r1) /* 800EEE3C 000EBD9C 93 81 00 08 */ stw r28, 8(r1) /* 800EEE40 000EBDA0 48 00 00 14 */ b lbl_800EEE54 lbl_800EEE44: /* 800EEE44 000EBDA4 7F 83 E3 78 */ mr r3, r28 /* 800EEE48 000EBDA8 38 80 FF FF */ li r4, -1 /* 800EEE4C 000EBDAC 48 25 1F F5 */ bl __dt__6CTokenFv /* 800EEE50 000EBDB0 3B 9C 00 08 */ addi r28, r28, 8 lbl_800EEE54: /* 800EEE54 000EBDB4 7C 1C F0 40 */ cmplw r28, r30 /* 800EEE58 000EBDB8 40 82 FF EC */ bne lbl_800EEE44 /* 800EEE5C 000EBDBC 80 61 00 3C */ lwz r3, 0x3c(r1) /* 800EEE60 000EBDC0 28 03 00 00 */ cmplwi r3, 0 /* 800EEE64 000EBDC4 41 82 00 08 */ beq lbl_800EEE6C /* 800EEE68 000EBDC8 48 22 6A C9 */ bl Free__7CMemoryFPCv lbl_800EEE6C: /* 800EEE6C 000EBDCC 80 9F 00 04 */ lwz r4, 4(r31) /* 800EEE70 000EBDD0 38 7D 19 58 */ addi r3, r29, 0x1958 /* 800EEE74 000EBDD4 4B F1 9A E9 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" /* 800EEE78 000EBDD8 83 DF 00 0C */ lwz r30, 0xc(r31) /* 800EEE7C 000EBDDC 48 00 00 C8 */ b lbl_800EEF44 lbl_800EEE80: /* 800EEE80 000EBDE0 80 7E 00 00 */ lwz r3, 0(r30) /* 800EEE84 000EBDE4 3C 03 BC B3 */ addis r0, r3, 0xbcb3 /* 800EEE88 000EBDE8 28 00 44 4C */ cmplwi r0, 0x444c /* 800EEE8C 000EBDEC 41 82 00 B4 */ beq lbl_800EEF40 /* 800EEE90 000EBDF0 3C 03 BC AD */ addis r0, r3, 0xbcad /* 800EEE94 000EBDF4 28 00 4B 52 */ cmplwi r0, 0x4b52 /* 800EEE98 000EBDF8 41 82 00 A8 */ beq lbl_800EEF40 /* 800EEE9C 000EBDFC 3C 03 AB A8 */ addis r0, r3, 0xaba8 /* 800EEEA0 000EBE00 28 00 54 52 */ cmplwi r0, 0x5452 /* 800EEEA4 000EBE04 41 82 00 9C */ beq lbl_800EEF40 /* 800EEEA8 000EBE08 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800EEEAC 000EBE0C 7F C5 F3 78 */ mr r5, r30 /* 800EEEB0 000EBE10 38 61 00 18 */ addi r3, r1, 0x18 /* 800EEEB4 000EBE14 81 84 00 00 */ lwz r12, 0(r4) /* 800EEEB8 000EBE18 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800EEEBC 000EBE1C 7D 89 03 A6 */ mtctr r12 /* 800EEEC0 000EBE20 4E 80 04 21 */ bctrl /* 800EEEC4 000EBE24 38 61 00 28 */ addi r3, r1, 0x28 /* 800EEEC8 000EBE28 38 81 00 18 */ addi r4, r1, 0x18 /* 800EEECC 000EBE2C 48 25 1F DD */ bl __ct__6CTokenFRC6CToken /* 800EEED0 000EBE30 38 61 00 18 */ addi r3, r1, 0x18 /* 800EEED4 000EBE34 38 80 FF FF */ li r4, -1 /* 800EEED8 000EBE38 48 25 1F 69 */ bl __dt__6CTokenFv /* 800EEEDC 000EBE3C 38 61 00 28 */ addi r3, r1, 0x28 /* 800EEEE0 000EBE40 48 25 1E A5 */ bl Lock__6CTokenFv /* 800EEEE4 000EBE44 80 1D 19 5C */ lwz r0, 0x195c(r29) /* 800EEEE8 000EBE48 80 BD 19 60 */ lwz r5, 0x1960(r29) /* 800EEEEC 000EBE4C 7C 00 28 00 */ cmpw r0, r5 /* 800EEEF0 000EBE50 41 80 00 1C */ blt lbl_800EEF0C /* 800EEEF4 000EBE54 2C 05 00 00 */ cmpwi r5, 0 /* 800EEEF8 000EBE58 38 7D 19 58 */ addi r3, r29, 0x1958 /* 800EEEFC 000EBE5C 38 80 00 04 */ li r4, 4 /* 800EEF00 000EBE60 41 82 00 08 */ beq lbl_800EEF08 /* 800EEF04 000EBE64 54 A4 08 3C */ slwi r4, r5, 1 lbl_800EEF08: /* 800EEF08 000EBE68 4B F1 9A 55 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" lbl_800EEF0C: /* 800EEF0C 000EBE6C 80 1D 19 5C */ lwz r0, 0x195c(r29) /* 800EEF10 000EBE70 80 7D 19 64 */ lwz r3, 0x1964(r29) /* 800EEF14 000EBE74 54 00 18 38 */ slwi r0, r0, 3 /* 800EEF18 000EBE78 7C 63 02 15 */ add. r3, r3, r0 /* 800EEF1C 000EBE7C 41 82 00 0C */ beq lbl_800EEF28 /* 800EEF20 000EBE80 38 81 00 28 */ addi r4, r1, 0x28 /* 800EEF24 000EBE84 48 25 1F 85 */ bl __ct__6CTokenFRC6CToken lbl_800EEF28: /* 800EEF28 000EBE88 80 BD 19 5C */ lwz r5, 0x195c(r29) /* 800EEF2C 000EBE8C 38 61 00 28 */ addi r3, r1, 0x28 /* 800EEF30 000EBE90 38 80 FF FF */ li r4, -1 /* 800EEF34 000EBE94 38 05 00 01 */ addi r0, r5, 1 /* 800EEF38 000EBE98 90 1D 19 5C */ stw r0, 0x195c(r29) /* 800EEF3C 000EBE9C 48 25 1F 05 */ bl __dt__6CTokenFv lbl_800EEF40: /* 800EEF40 000EBEA0 3B DE 00 08 */ addi r30, r30, 8 lbl_800EEF44: /* 800EEF44 000EBEA4 80 1F 00 04 */ lwz r0, 4(r31) /* 800EEF48 000EBEA8 80 7F 00 0C */ lwz r3, 0xc(r31) /* 800EEF4C 000EBEAC 54 00 18 38 */ slwi r0, r0, 3 /* 800EEF50 000EBEB0 7C 03 02 14 */ add r0, r3, r0 /* 800EEF54 000EBEB4 7C 1E 00 40 */ cmplw r30, r0 /* 800EEF58 000EBEB8 40 82 FF 28 */ bne lbl_800EEE80 /* 800EEF5C 000EBEBC 38 61 00 60 */ addi r3, r1, 0x60 /* 800EEF60 000EBEC0 38 80 00 00 */ li r4, 0 /* 800EEF64 000EBEC4 48 25 1E DD */ bl __dt__6CTokenFv /* 800EEF68 000EBEC8 38 61 00 6C */ addi r3, r1, 0x6c /* 800EEF6C 000EBECC 48 24 EB 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800EEF70 000EBED0 80 01 00 94 */ lwz r0, 0x94(r1) /* 800EEF74 000EBED4 83 E1 00 8C */ lwz r31, 0x8c(r1) /* 800EEF78 000EBED8 83 C1 00 88 */ lwz r30, 0x88(r1) /* 800EEF7C 000EBEDC 83 A1 00 84 */ lwz r29, 0x84(r1) /* 800EEF80 000EBEE0 83 81 00 80 */ lwz r28, 0x80(r1) /* 800EEF84 000EBEE4 7C 08 03 A6 */ mtlr r0 /* 800EEF88 000EBEE8 38 21 00 90 */ addi r1, r1, 0x90 /* 800EEF8C 000EBEEC 4E 80 00 20 */ blr .global SetBombJumpState__10CMorphBallFQ210CMorphBall14EBombJumpState SetBombJumpState__10CMorphBallFQ210CMorphBall14EBombJumpState: /* 800EEF90 000EBEF0 90 83 1E 40 */ stw r4, 0x1e40(r3) /* 800EEF94 000EBEF4 4E 80 00 20 */ blr .global GetBombJumpState__10CMorphBallCFv GetBombJumpState__10CMorphBallCFv: /* 800EEF98 000EBEF8 80 63 1E 40 */ lwz r3, 0x1e40(r3) /* 800EEF9C 000EBEFC 4E 80 00 20 */ blr .global SetBallBoostState__10CMorphBallFQ210CMorphBall15EBallBoostState SetBallBoostState__10CMorphBallFQ210CMorphBall15EBallBoostState: /* 800EEFA0 000EBF00 90 83 1E 3C */ stw r4, 0x1e3c(r3) /* 800EEFA4 000EBF04 4E 80 00 20 */ blr .global GetBallBoostState__10CMorphBallCFv GetBallBoostState__10CMorphBallCFv: /* 800EEFA8 000EBF08 80 63 1E 3C */ lwz r3, 0x1e3c(r3) /* 800EEFAC 000EBF0C 4E 80 00 20 */ blr .global SetAsProjectile__10CMorphBallFv SetAsProjectile__10CMorphBallFv: /* 800EEFB0 000EBF10 38 00 00 01 */ li r0, 1 /* 800EEFB4 000EBF14 98 03 19 54 */ stb r0, 0x1954(r3) /* 800EEFB8 000EBF18 4E 80 00 20 */ blr .global TouchModel__10CMorphBallCFRC13CStateManager TouchModel__10CMorphBallCFRC13CStateManager: /* 800EEFBC 000EBF1C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800EEFC0 000EBF20 7C 08 02 A6 */ mflr r0 /* 800EEFC4 000EBF24 90 01 00 14 */ stw r0, 0x14(r1) /* 800EEFC8 000EBF28 93 E1 00 0C */ stw r31, 0xc(r1) /* 800EEFCC 000EBF2C 7C 9F 23 78 */ mr r31, r4 /* 800EEFD0 000EBF30 93 C1 00 08 */ stw r30, 8(r1) /* 800EEFD4 000EBF34 7C 7E 1B 78 */ mr r30, r3 /* 800EEFD8 000EBF38 80 63 00 58 */ lwz r3, 0x58(r3) /* 800EEFDC 000EBF3C 80 BE 00 5C */ lwz r5, 0x5c(r30) /* 800EEFE0 000EBF40 48 02 6D 31 */ bl Touch__10CModelDataCFRC13CStateManageri /* 800EEFE4 000EBF44 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 800EEFE8 000EBF48 38 80 00 13 */ li r4, 0x13 /* 800EEFEC 000EBF4C 80 63 00 00 */ lwz r3, 0(r3) /* 800EEFF0 000EBF50 4B FA 2A D1 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 800EEFF4 000EBF54 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800EEFF8 000EBF58 41 82 00 1C */ beq lbl_800EF014 /* 800EEFFC 000EBF5C 80 7E 00 60 */ lwz r3, 0x60(r30) /* 800EF000 000EBF60 28 03 00 00 */ cmplwi r3, 0 /* 800EF004 000EBF64 41 82 00 10 */ beq lbl_800EF014 /* 800EF008 000EBF68 80 BE 00 64 */ lwz r5, 0x64(r30) /* 800EF00C 000EBF6C 7F E4 FB 78 */ mr r4, r31 /* 800EF010 000EBF70 48 02 6D 01 */ bl Touch__10CModelDataCFRC13CStateManageri lbl_800EF014: /* 800EF014 000EBF74 80 7E 00 68 */ lwz r3, 0x68(r30) /* 800EF018 000EBF78 7F E4 FB 78 */ mr r4, r31 /* 800EF01C 000EBF7C 80 BE 00 6C */ lwz r5, 0x6c(r30) /* 800EF020 000EBF80 48 02 6C F1 */ bl Touch__10CModelDataCFRC13CStateManageri /* 800EF024 000EBF84 80 01 00 14 */ lwz r0, 0x14(r1) /* 800EF028 000EBF88 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800EF02C 000EBF8C 83 C1 00 08 */ lwz r30, 8(r1) /* 800EF030 000EBF90 7C 08 03 A6 */ mtlr r0 /* 800EF034 000EBF94 38 21 00 10 */ addi r1, r1, 0x10 /* 800EF038 000EBF98 4E 80 00 20 */ blr .global RenderEnergyDrainEffects__10CMorphBallCFRC13CStateManager RenderEnergyDrainEffects__10CMorphBallCFRC13CStateManager: /* 800EF03C 000EBF9C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800EF040 000EBFA0 7C 08 02 A6 */ mflr r0 /* 800EF044 000EBFA4 90 01 00 34 */ stw r0, 0x34(r1) /* 800EF048 000EBFA8 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800EF04C 000EBFAC 93 C1 00 28 */ stw r30, 0x28(r1) /* 800EF050 000EBFB0 93 A1 00 24 */ stw r29, 0x24(r1) /* 800EF054 000EBFB4 7C 9D 23 78 */ mr r29, r4 /* 800EF058 000EBFB8 83 E3 00 00 */ lwz r31, 0(r3) /* 800EF05C 000EBFBC 83 DF 02 80 */ lwz r30, 0x280(r31) /* 800EF060 000EBFC0 48 00 00 40 */ b lbl_800EF0A0 lbl_800EF064: /* 800EF064 000EBFC4 A0 1E 00 00 */ lhz r0, 0(r30) /* 800EF068 000EBFC8 7F A3 EB 78 */ mr r3, r29 /* 800EF06C 000EBFCC 38 81 00 0C */ addi r4, r1, 0xc /* 800EF070 000EBFD0 B0 01 00 08 */ sth r0, 8(r1) /* 800EF074 000EBFD4 B0 01 00 0C */ sth r0, 0xc(r1) /* 800EF078 000EBFD8 4B F5 D5 2D */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 800EF07C 000EBFDC 7C 64 1B 78 */ mr r4, r3 /* 800EF080 000EBFE0 38 61 00 10 */ addi r3, r1, 0x10 /* 800EF084 000EBFE4 4B FB 64 1D */ bl sub_800a54a0 /* 800EF088 000EBFE8 4B FB 63 ED */ bl "CastTo<12CMetroidBeta>__10CPatternedFP7CEntity" /* 800EF08C 000EBFEC 28 03 00 00 */ cmplwi r3, 0 /* 800EF090 000EBFF0 41 82 00 0C */ beq lbl_800EF09C /* 800EF094 000EBFF4 48 0D 65 D5 */ bl RenderHitBallEffect__12CMetroidBetaCFv /* 800EF098 000EBFF8 48 00 00 20 */ b lbl_800EF0B8 lbl_800EF09C: /* 800EF09C 000EBFFC 3B DE 00 08 */ addi r30, r30, 8 lbl_800EF0A0: /* 800EF0A0 000EC000 80 1F 02 78 */ lwz r0, 0x278(r31) /* 800EF0A4 000EC004 80 7F 02 80 */ lwz r3, 0x280(r31) /* 800EF0A8 000EC008 54 00 18 38 */ slwi r0, r0, 3 /* 800EF0AC 000EC00C 7C 03 02 14 */ add r0, r3, r0 /* 800EF0B0 000EC010 7C 1E 00 40 */ cmplw r30, r0 /* 800EF0B4 000EC014 40 82 FF B0 */ bne lbl_800EF064 lbl_800EF0B8: /* 800EF0B8 000EC018 80 01 00 34 */ lwz r0, 0x34(r1) /* 800EF0BC 000EC01C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800EF0C0 000EC020 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800EF0C4 000EC024 83 A1 00 24 */ lwz r29, 0x24(r1) /* 800EF0C8 000EC028 7C 08 03 A6 */ mtlr r0 /* 800EF0CC 000EC02C 38 21 00 30 */ addi r1, r1, 0x30 /* 800EF0D0 000EC030 4E 80 00 20 */ blr .global RenderSpiderBallElectricalEffects__10CMorphBallCFv RenderSpiderBallElectricalEffects__10CMorphBallCFv: /* 800EF0D4 000EC034 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800EF0D8 000EC038 7C 08 02 A6 */ mflr r0 /* 800EF0DC 000EC03C 90 01 00 24 */ stw r0, 0x24(r1) /* 800EF0E0 000EC040 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800EF0E4 000EC044 93 C1 00 18 */ stw r30, 0x18(r1) /* 800EF0E8 000EC048 93 A1 00 14 */ stw r29, 0x14(r1) /* 800EF0EC 000EC04C 7C 7D 1B 78 */ mr r29, r3 /* 800EF0F0 000EC050 3B DD 19 E8 */ addi r30, r29, 0x19e8 /* 800EF0F4 000EC054 83 E3 1B 6C */ lwz r31, 0x1b6c(r3) /* 800EF0F8 000EC058 48 00 00 28 */ b lbl_800EF120 lbl_800EF0FC: /* 800EF0FC 000EC05C 80 1F 00 08 */ lwz r0, 8(r31) /* 800EF100 000EC060 1C 60 00 0C */ mulli r3, r0, 0xc /* 800EF104 000EC064 38 03 00 04 */ addi r0, r3, 4 /* 800EF108 000EC068 7C 7E 00 2E */ lwzx r3, r30, r0 /* 800EF10C 000EC06C 81 83 00 00 */ lwz r12, 0(r3) /* 800EF110 000EC070 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800EF114 000EC074 7D 89 03 A6 */ mtctr r12 /* 800EF118 000EC078 4E 80 04 21 */ bctrl /* 800EF11C 000EC07C 83 FF 00 04 */ lwz r31, 4(r31) lbl_800EF120: /* 800EF120 000EC080 80 1D 1B 70 */ lwz r0, 0x1b70(r29) /* 800EF124 000EC084 7C 1F 00 40 */ cmplw r31, r0 /* 800EF128 000EC088 40 82 FF D4 */ bne lbl_800EF0FC /* 800EF12C 000EC08C 80 01 00 24 */ lwz r0, 0x24(r1) /* 800EF130 000EC090 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800EF134 000EC094 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800EF138 000EC098 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800EF13C 000EC09C 7C 08 03 A6 */ mtlr r0 /* 800EF140 000EC0A0 38 21 00 20 */ addi r1, r1, 0x20 /* 800EF144 000EC0A4 4E 80 00 20 */ blr .global UpdateSpiderBallElectricalEffects__10CMorphBallFv UpdateSpiderBallElectricalEffects__10CMorphBallFv: /* 800EF148 000EC0A8 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 800EF14C 000EC0AC 7C 08 02 A6 */ mflr r0 /* 800EF150 000EC0B0 90 01 00 A4 */ stw r0, 0xa4(r1) /* 800EF154 000EC0B4 93 E1 00 9C */ stw r31, 0x9c(r1) /* 800EF158 000EC0B8 93 C1 00 98 */ stw r30, 0x98(r1) /* 800EF15C 000EC0BC 93 A1 00 94 */ stw r29, 0x94(r1) /* 800EF160 000EC0C0 7C 7D 1B 78 */ mr r29, r3 /* 800EF164 000EC0C4 38 61 00 18 */ addi r3, r1, 0x18 /* 800EF168 000EC0C8 93 81 00 90 */ stw r28, 0x90(r1) /* 800EF16C 000EC0CC 7F A4 EB 78 */ mr r4, r29 /* 800EF170 000EC0D0 83 FD 1B 6C */ lwz r31, 0x1b6c(r29) /* 800EF174 000EC0D4 48 00 75 81 */ bl GetBallToWorld__10CMorphBallCFv /* 800EF178 000EC0D8 38 61 00 48 */ addi r3, r1, 0x48 /* 800EF17C 000EC0DC 38 81 00 18 */ addi r4, r1, 0x18 /* 800EF180 000EC0E0 48 22 39 F5 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800EF184 000EC0E4 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800EF188 000EC0E8 C4 43 66 A0 */ lfsu f2, sZeroVector__9CVector3f@l(r3) /* 800EF18C 000EC0EC C0 61 00 54 */ lfs f3, 0x54(r1) /* 800EF190 000EC0F0 3B DD 19 E8 */ addi r30, r29, 0x19e8 /* 800EF194 000EC0F4 C0 A1 00 74 */ lfs f5, 0x74(r1) /* 800EF198 000EC0F8 C0 81 00 64 */ lfs f4, 0x64(r1) /* 800EF19C 000EC0FC C0 23 00 04 */ lfs f1, 4(r3) /* 800EF1A0 000EC100 C0 03 00 08 */ lfs f0, 8(r3) /* 800EF1A4 000EC104 D0 61 00 0C */ stfs f3, 0xc(r1) /* 800EF1A8 000EC108 D0 81 00 10 */ stfs f4, 0x10(r1) /* 800EF1AC 000EC10C D0 A1 00 14 */ stfs f5, 0x14(r1) /* 800EF1B0 000EC110 D0 41 00 54 */ stfs f2, 0x54(r1) /* 800EF1B4 000EC114 D0 21 00 64 */ stfs f1, 0x64(r1) /* 800EF1B8 000EC118 D0 01 00 74 */ stfs f0, 0x74(r1) /* 800EF1BC 000EC11C 48 00 01 00 */ b lbl_800EF2BC lbl_800EF1C0: /* 800EF1C0 000EC120 80 7F 00 10 */ lwz r3, 0x10(r31) /* 800EF1C4 000EC124 80 BF 00 0C */ lwz r5, 0xc(r31) /* 800EF1C8 000EC128 7C 03 28 40 */ cmplw r3, r5 /* 800EF1CC 000EC12C 41 80 00 2C */ blt lbl_800EF1F8 /* 800EF1D0 000EC130 80 1F 00 08 */ lwz r0, 8(r31) /* 800EF1D4 000EC134 38 C0 00 00 */ li r6, 0 /* 800EF1D8 000EC138 7F E4 FB 78 */ mr r4, r31 /* 800EF1DC 000EC13C 38 7D 1B 68 */ addi r3, r29, 0x1b68 /* 800EF1E0 000EC140 1C A0 00 0C */ mulli r5, r0, 0xc /* 800EF1E4 000EC144 38 05 00 08 */ addi r0, r5, 8 /* 800EF1E8 000EC148 7C DE 01 AE */ stbx r6, r30, r0 /* 800EF1EC 000EC14C 48 00 B2 4D */ bl sub_800fa438 /* 800EF1F0 000EC150 7C 7F 1B 78 */ mr r31, r3 /* 800EF1F4 000EC154 48 00 00 C8 */ b lbl_800EF2BC lbl_800EF1F8: /* 800EF1F8 000EC158 3C 00 43 30 */ lis r0, 0x4330 /* 800EF1FC 000EC15C C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800EF200 000EC160 90 61 00 7C */ stw r3, 0x7c(r1) /* 800EF204 000EC164 38 61 00 08 */ addi r3, r1, 8 /* 800EF208 000EC168 80 9F 00 08 */ lwz r4, 8(r31) /* 800EF20C 000EC16C FC 40 08 90 */ fmr f2, f1 /* 800EF210 000EC170 90 01 00 78 */ stw r0, 0x78(r1) /* 800EF214 000EC174 FC 60 08 90 */ fmr f3, f1 /* 800EF218 000EC178 C8 A2 91 A0 */ lfd f5, lbl_805AAEC0@sda21(r2) /* 800EF21C 000EC17C 1C 84 00 0C */ mulli r4, r4, 0xc /* 800EF220 000EC180 C8 01 00 78 */ lfd f0, 0x78(r1) /* 800EF224 000EC184 90 A1 00 84 */ stw r5, 0x84(r1) /* 800EF228 000EC188 EC 80 28 28 */ fsubs f4, f0, f5 /* 800EF22C 000EC18C 38 84 00 04 */ addi r4, r4, 4 /* 800EF230 000EC190 90 01 00 80 */ stw r0, 0x80(r1) /* 800EF234 000EC194 7F 9E 20 2E */ lwzx r28, r30, r4 /* 800EF238 000EC198 C8 01 00 80 */ lfd f0, 0x80(r1) /* 800EF23C 000EC19C EC 00 28 28 */ fsubs f0, f0, f5 /* 800EF240 000EC1A0 EC 04 00 24 */ fdivs f0, f4, f0 /* 800EF244 000EC1A4 EC 81 00 28 */ fsubs f4, f1, f0 /* 800EF248 000EC1A8 48 27 41 A5 */ bl __ct__6CColorFffff /* 800EF24C 000EC1AC 81 9C 00 00 */ lwz r12, 0(r28) /* 800EF250 000EC1B0 7C 64 1B 78 */ mr r4, r3 /* 800EF254 000EC1B4 7F 83 E3 78 */ mr r3, r28 /* 800EF258 000EC1B8 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800EF25C 000EC1BC 7D 89 03 A6 */ mtctr r12 /* 800EF260 000EC1C0 4E 80 04 21 */ bctrl /* 800EF264 000EC1C4 80 1F 00 08 */ lwz r0, 8(r31) /* 800EF268 000EC1C8 38 81 00 0C */ addi r4, r1, 0xc /* 800EF26C 000EC1CC 1C 60 00 0C */ mulli r3, r0, 0xc /* 800EF270 000EC1D0 38 03 00 04 */ addi r0, r3, 4 /* 800EF274 000EC1D4 7C 7E 00 2E */ lwzx r3, r30, r0 /* 800EF278 000EC1D8 81 83 00 00 */ lwz r12, 0(r3) /* 800EF27C 000EC1DC 81 8C 00 20 */ lwz r12, 0x20(r12) /* 800EF280 000EC1E0 7D 89 03 A6 */ mtctr r12 /* 800EF284 000EC1E4 4E 80 04 21 */ bctrl /* 800EF288 000EC1E8 80 1F 00 08 */ lwz r0, 8(r31) /* 800EF28C 000EC1EC 38 81 00 48 */ addi r4, r1, 0x48 /* 800EF290 000EC1F0 1C 60 00 0C */ mulli r3, r0, 0xc /* 800EF294 000EC1F4 38 03 00 04 */ addi r0, r3, 4 /* 800EF298 000EC1F8 7C 7E 00 2E */ lwzx r3, r30, r0 /* 800EF29C 000EC1FC 81 83 00 00 */ lwz r12, 0(r3) /* 800EF2A0 000EC200 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 800EF2A4 000EC204 7D 89 03 A6 */ mtctr r12 /* 800EF2A8 000EC208 4E 80 04 21 */ bctrl /* 800EF2AC 000EC20C 80 7F 00 10 */ lwz r3, 0x10(r31) /* 800EF2B0 000EC210 38 03 00 01 */ addi r0, r3, 1 /* 800EF2B4 000EC214 90 1F 00 10 */ stw r0, 0x10(r31) /* 800EF2B8 000EC218 83 FF 00 04 */ lwz r31, 4(r31) lbl_800EF2BC: /* 800EF2BC 000EC21C 80 1D 1B 70 */ lwz r0, 0x1b70(r29) /* 800EF2C0 000EC220 7C 1F 00 40 */ cmplw r31, r0 /* 800EF2C4 000EC224 40 82 FE FC */ bne lbl_800EF1C0 /* 800EF2C8 000EC228 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 800EF2CC 000EC22C 83 E1 00 9C */ lwz r31, 0x9c(r1) /* 800EF2D0 000EC230 83 C1 00 98 */ lwz r30, 0x98(r1) /* 800EF2D4 000EC234 83 A1 00 94 */ lwz r29, 0x94(r1) /* 800EF2D8 000EC238 83 81 00 90 */ lwz r28, 0x90(r1) /* 800EF2DC 000EC23C 7C 08 03 A6 */ mtlr r0 /* 800EF2E0 000EC240 38 21 00 A0 */ addi r1, r1, 0xa0 /* 800EF2E4 000EC244 4E 80 00 20 */ blr .global AddSpiderBallElectricalEffect__10CMorphBallFv AddSpiderBallElectricalEffect__10CMorphBallFv: /* 800EF2E8 000EC248 94 21 FF 30 */ stwu r1, -0xd0(r1) /* 800EF2EC 000EC24C 7C 08 02 A6 */ mflr r0 /* 800EF2F0 000EC250 90 01 00 D4 */ stw r0, 0xd4(r1) /* 800EF2F4 000EC254 DB E1 00 C0 */ stfd f31, 0xc0(r1) /* 800EF2F8 000EC258 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 /* 800EF2FC 000EC25C DB C1 00 B0 */ stfd f30, 0xb0(r1) /* 800EF300 000EC260 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 /* 800EF304 000EC264 DB A1 00 A0 */ stfd f29, 0xa0(r1) /* 800EF308 000EC268 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 /* 800EF30C 000EC26C DB 81 00 90 */ stfd f28, 0x90(r1) /* 800EF310 000EC270 F3 81 00 98 */ psq_st f28, 152(r1), 0, qr0 /* 800EF314 000EC274 DB 61 00 80 */ stfd f27, 0x80(r1) /* 800EF318 000EC278 F3 61 00 88 */ psq_st f27, 136(r1), 0, qr0 /* 800EF31C 000EC27C DB 41 00 70 */ stfd f26, 0x70(r1) /* 800EF320 000EC280 F3 41 00 78 */ psq_st f26, 120(r1), 0, qr0 /* 800EF324 000EC284 BF 41 00 58 */ stmw r26, 0x58(r1) /* 800EF328 000EC288 7C 7F 1B 78 */ mr r31, r3 /* 800EF32C 000EC28C 3B 40 00 00 */ li r26, 0 /* 800EF330 000EC290 80 03 19 E4 */ lwz r0, 0x19e4(r3) /* 800EF334 000EC294 38 DF 19 E8 */ addi r6, r31, 0x19e8 /* 800EF338 000EC298 7C C3 33 78 */ mr r3, r6 /* 800EF33C 000EC29C 7C 09 03 A6 */ mtctr r0 /* 800EF340 000EC2A0 2C 00 00 00 */ cmpwi r0, 0 /* 800EF344 000EC2A4 40 81 02 8C */ ble lbl_800EF5D0 lbl_800EF348: /* 800EF348 000EC2A8 88 03 00 08 */ lbz r0, 8(r3) /* 800EF34C 000EC2AC 28 00 00 00 */ cmplwi r0, 0 /* 800EF350 000EC2B0 40 82 02 74 */ bne lbl_800EF5C4 /* 800EF354 000EC2B4 1C BA 00 0C */ mulli r5, r26, 0xc /* 800EF358 000EC2B8 38 00 00 01 */ li r0, 1 /* 800EF35C 000EC2BC 38 7F 1B 80 */ addi r3, r31, 0x1b80 /* 800EF360 000EC2C0 38 80 00 04 */ li r4, 4 /* 800EF364 000EC2C4 7F 66 2A 14 */ add r27, r6, r5 /* 800EF368 000EC2C8 38 A0 00 08 */ li r5, 8 /* 800EF36C 000EC2CC 98 1B 00 08 */ stb r0, 8(r27) /* 800EF370 000EC2D0 48 22 32 25 */ bl Range__9CRandom16Fii /* 800EF374 000EC2D4 83 BF 1B 70 */ lwz r29, 0x1b70(r31) /* 800EF378 000EC2D8 3C 80 80 3D */ lis r4, lbl_803CEBF4@ha /* 800EF37C 000EC2DC 38 84 EB F4 */ addi r4, r4, lbl_803CEBF4@l /* 800EF380 000EC2E0 7C 7E 1B 78 */ mr r30, r3 /* 800EF384 000EC2E4 83 9D 00 00 */ lwz r28, 0(r29) /* 800EF388 000EC2E8 38 84 00 DC */ addi r4, r4, 0xdc /* 800EF38C 000EC2EC 38 60 00 14 */ li r3, 0x14 /* 800EF390 000EC2F0 38 A0 00 00 */ li r5, 0 /* 800EF394 000EC2F4 48 22 64 85 */ bl __nwa__FUlPCcPCc /* 800EF398 000EC2F8 7C 65 1B 79 */ or. r5, r3, r3 /* 800EF39C 000EC2FC 41 82 00 0C */ beq lbl_800EF3A8 /* 800EF3A0 000EC300 93 85 00 00 */ stw r28, 0(r5) /* 800EF3A4 000EC304 93 A5 00 04 */ stw r29, 4(r5) lbl_800EF3A8: /* 800EF3A8 000EC308 34 65 00 08 */ addic. r3, r5, 8 /* 800EF3AC 000EC30C 41 82 00 14 */ beq lbl_800EF3C0 /* 800EF3B0 000EC310 93 43 00 00 */ stw r26, 0(r3) /* 800EF3B4 000EC314 38 00 00 00 */ li r0, 0 /* 800EF3B8 000EC318 93 C3 00 04 */ stw r30, 4(r3) /* 800EF3BC 000EC31C 90 03 00 08 */ stw r0, 8(r3) lbl_800EF3C0: /* 800EF3C0 000EC320 80 1F 1B 6C */ lwz r0, 0x1b6c(r31) /* 800EF3C4 000EC324 7C 1D 00 40 */ cmplw r29, r0 /* 800EF3C8 000EC328 40 82 00 08 */ bne lbl_800EF3D0 /* 800EF3CC 000EC32C 90 BF 1B 6C */ stw r5, 0x1b6c(r31) lbl_800EF3D0: /* 800EF3D0 000EC330 80 85 00 00 */ lwz r4, 0(r5) /* 800EF3D4 000EC334 38 7F 1B 80 */ addi r3, r31, 0x1b80 /* 800EF3D8 000EC338 90 A4 00 04 */ stw r5, 4(r4) /* 800EF3DC 000EC33C 80 85 00 04 */ lwz r4, 4(r5) /* 800EF3E0 000EC340 90 A4 00 00 */ stw r5, 0(r4) /* 800EF3E4 000EC344 80 9F 1B 7C */ lwz r4, 0x1b7c(r31) /* 800EF3E8 000EC348 38 04 00 01 */ addi r0, r4, 1 /* 800EF3EC 000EC34C 90 1F 1B 7C */ stw r0, 0x1b7c(r31) /* 800EF3F0 000EC350 83 9B 00 04 */ lwz r28, 4(r27) /* 800EF3F4 000EC354 48 22 31 2D */ bl Next__9CRandom16Fv /* 800EF3F8 000EC358 54 60 05 EE */ rlwinm r0, r3, 0, 0x17, 0x17 /* 800EF3FC 000EC35C 2C 00 00 80 */ cmpwi r0, 0x80 /* 800EF400 000EC360 40 80 00 0C */ bge lbl_800EF40C /* 800EF404 000EC364 C3 E2 91 A8 */ lfs f31, lbl_805AAEC8@sda21(r2) /* 800EF408 000EC368 48 00 00 08 */ b lbl_800EF410 lbl_800EF40C: /* 800EF40C 000EC36C C3 E2 91 5C */ lfs f31, lbl_805AAE7C@sda21(r2) lbl_800EF410: /* 800EF410 000EC370 7F E3 FB 78 */ mr r3, r31 /* 800EF414 000EC374 48 00 99 F1 */ bl GetBallRadius__10CMorphBallCFv /* 800EF418 000EC378 C0 02 91 AC */ lfs f0, lbl_805AAECC@sda21(r2) /* 800EF41C 000EC37C 38 7F 1B 80 */ addi r3, r31, 0x1b80 /* 800EF420 000EC380 EC 00 00 72 */ fmuls f0, f0, f1 /* 800EF424 000EC384 EF DF 00 32 */ fmuls f30, f31, f0 /* 800EF428 000EC388 48 22 30 B5 */ bl Float__9CRandom16Fv /* 800EF42C 000EC38C C0 62 91 B4 */ lfs f3, lbl_805AAED4@sda21(r2) /* 800EF430 000EC390 38 7F 1B 80 */ addi r3, r31, 0x1b80 /* 800EF434 000EC394 C0 42 91 B0 */ lfs f2, lbl_805AAED0@sda21(r2) /* 800EF438 000EC398 C0 02 91 B8 */ lfs f0, lbl_805AAED8@sda21(r2) /* 800EF43C 000EC39C EF A3 10 7C */ fnmsubs f29, f3, f1, f2 /* 800EF440 000EC3A0 EF BD 00 32 */ fmuls f29, f29, f0 /* 800EF444 000EC3A4 48 22 30 99 */ bl Float__9CRandom16Fv /* 800EF448 000EC3A8 C0 62 91 B4 */ lfs f3, lbl_805AAED4@sda21(r2) /* 800EF44C 000EC3AC C0 02 91 B0 */ lfs f0, lbl_805AAED0@sda21(r2) /* 800EF450 000EC3B0 C0 42 91 BC */ lfs f2, lbl_805AAEDC@sda21(r2) /* 800EF454 000EC3B4 EC 23 00 7C */ fnmsubs f1, f3, f1, f0 /* 800EF458 000EC3B8 C0 02 91 B8 */ lfs f0, lbl_805AAED8@sda21(r2) /* 800EF45C 000EC3BC EF 42 08 2A */ fadds f26, f2, f1 /* 800EF460 000EC3C0 EF 5A 00 32 */ fmuls f26, f26, f0 /* 800EF464 000EC3C4 FC 20 D0 90 */ fmr f1, f26 /* 800EF468 000EC3C8 48 22 58 DD */ bl FastCosR__5CMathFf /* 800EF46C 000EC3CC FF 80 08 90 */ fmr f28, f1 /* 800EF470 000EC3D0 FC 20 E8 90 */ fmr f1, f29 /* 800EF474 000EC3D4 48 22 58 D1 */ bl FastCosR__5CMathFf /* 800EF478 000EC3D8 EF 61 07 32 */ fmuls f27, f1, f28 /* 800EF47C 000EC3DC FC 20 E8 90 */ fmr f1, f29 /* 800EF480 000EC3E0 48 22 59 71 */ bl FastSinR__5CMathFf /* 800EF484 000EC3E4 FF 80 08 90 */ fmr f28, f1 /* 800EF488 000EC3E8 FC 20 E8 90 */ fmr f1, f29 /* 800EF48C 000EC3EC 48 22 58 B9 */ bl FastCosR__5CMathFf /* 800EF490 000EC3F0 FF A0 08 90 */ fmr f29, f1 /* 800EF494 000EC3F4 FC 20 D0 90 */ fmr f1, f26 /* 800EF498 000EC3F8 48 22 59 59 */ bl FastSinR__5CMathFf /* 800EF49C 000EC3FC FC 00 08 50 */ fneg f0, f1 /* 800EF4A0 000EC400 C0 42 91 C0 */ lfs f2, lbl_805AAEE0@sda21(r2) /* 800EF4A4 000EC404 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800EF4A8 000EC408 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 800EF4AC 000EC40C EC C2 07 B2 */ fmuls f6, f2, f30 /* 800EF4B0 000EC410 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l /* 800EF4B4 000EC414 EC 60 07 72 */ fmuls f3, f0, f29 /* 800EF4B8 000EC418 C0 A2 91 C4 */ lfs f5, lbl_805AAEE4@sda21(r2) /* 800EF4BC 000EC41C EC 3F 07 32 */ fmuls f1, f31, f28 /* 800EF4C0 000EC420 C0 42 91 50 */ lfs f2, lbl_805AAE70@sda21(r2) /* 800EF4C4 000EC424 EC 1F 06 F2 */ fmuls f0, f31, f27 /* 800EF4C8 000EC428 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l /* 800EF4CC 000EC42C EC 9F 00 F2 */ fmuls f4, f31, f3 /* 800EF4D0 000EC430 C0 62 91 C8 */ lfs f3, lbl_805AAEE8@sda21(r2) /* 800EF4D4 000EC434 EC 25 00 72 */ fmuls f1, f5, f1 /* 800EF4D8 000EC438 38 61 00 20 */ addi r3, r1, 0x20 /* 800EF4DC 000EC43C EC 05 00 32 */ fmuls f0, f5, f0 /* 800EF4E0 000EC440 38 A1 00 14 */ addi r5, r1, 0x14 /* 800EF4E4 000EC444 ED 02 08 2A */ fadds f8, f2, f1 /* 800EF4E8 000EC448 EC E2 00 2A */ fadds f7, f2, f0 /* 800EF4EC 000EC44C EC 85 01 32 */ fmuls f4, f5, f4 /* 800EF4F0 000EC450 EC 22 40 28 */ fsubs f1, f2, f8 /* 800EF4F4 000EC454 D1 01 00 0C */ stfs f8, 0xc(r1) /* 800EF4F8 000EC458 EC 02 38 28 */ fsubs f0, f2, f7 /* 800EF4FC 000EC45C EC 86 20 2A */ fadds f4, f6, f4 /* 800EF500 000EC460 D0 E1 00 10 */ stfs f7, 0x10(r1) /* 800EF504 000EC464 EC 23 00 72 */ fmuls f1, f3, f1 /* 800EF508 000EC468 EC 03 00 32 */ fmuls f0, f3, f0 /* 800EF50C 000EC46C EC 5E 20 28 */ fsubs f2, f30, f4 /* 800EF510 000EC470 D0 81 00 08 */ stfs f4, 8(r1) /* 800EF514 000EC474 D0 21 00 18 */ stfs f1, 0x18(r1) /* 800EF518 000EC478 EC 23 00 B2 */ fmuls f1, f3, f2 /* 800EF51C 000EC47C D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800EF520 000EC480 D0 21 00 14 */ stfs f1, 0x14(r1) /* 800EF524 000EC484 48 22 45 ED */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 800EF528 000EC488 7F 83 E3 78 */ mr r3, r28 /* 800EF52C 000EC48C 38 81 00 20 */ addi r4, r1, 0x20 /* 800EF530 000EC490 81 9C 00 00 */ lwz r12, 0(r28) /* 800EF534 000EC494 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800EF538 000EC498 7D 89 03 A6 */ mtctr r12 /* 800EF53C 000EC49C 4E 80 04 21 */ bctrl /* 800EF540 000EC4A0 3B 40 00 00 */ li r26, 0 lbl_800EF544: /* 800EF544 000EC4A4 7F 83 E3 78 */ mr r3, r28 /* 800EF548 000EC4A8 38 81 00 08 */ addi r4, r1, 8 /* 800EF54C 000EC4AC 81 9C 00 00 */ lwz r12, 0(r28) /* 800EF550 000EC4B0 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800EF554 000EC4B4 7D 89 03 A6 */ mtctr r12 /* 800EF558 000EC4B8 4E 80 04 21 */ bctrl /* 800EF55C 000EC4BC 88 1C 01 D0 */ lbz r0, 0x1d0(r28) /* 800EF560 000EC4C0 38 60 00 01 */ li r3, 1 /* 800EF564 000EC4C4 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a /* 800EF568 000EC4C8 7F 83 E3 78 */ mr r3, r28 /* 800EF56C 000EC4CC 98 1C 01 D0 */ stb r0, 0x1d0(r28) /* 800EF570 000EC4D0 C8 22 91 D0 */ lfd f1, lbl_805AAEF0@sda21(r2) /* 800EF574 000EC4D4 81 9C 00 00 */ lwz r12, 0(r28) /* 800EF578 000EC4D8 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800EF57C 000EC4DC 7D 89 03 A6 */ mtctr r12 /* 800EF580 000EC4E0 4E 80 04 21 */ bctrl /* 800EF584 000EC4E4 C0 21 00 08 */ lfs f1, 8(r1) /* 800EF588 000EC4E8 3B 5A 00 01 */ addi r26, r26, 1 /* 800EF58C 000EC4EC C0 01 00 14 */ lfs f0, 0x14(r1) /* 800EF590 000EC4F0 28 1A 00 06 */ cmplwi r26, 6 /* 800EF594 000EC4F4 C0 61 00 0C */ lfs f3, 0xc(r1) /* 800EF598 000EC4F8 EC 81 00 2A */ fadds f4, f1, f0 /* 800EF59C 000EC4FC C0 41 00 18 */ lfs f2, 0x18(r1) /* 800EF5A0 000EC500 C0 21 00 10 */ lfs f1, 0x10(r1) /* 800EF5A4 000EC504 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800EF5A8 000EC508 EC 43 10 2A */ fadds f2, f3, f2 /* 800EF5AC 000EC50C D0 81 00 08 */ stfs f4, 8(r1) /* 800EF5B0 000EC510 EC 01 00 2A */ fadds f0, f1, f0 /* 800EF5B4 000EC514 D0 41 00 0C */ stfs f2, 0xc(r1) /* 800EF5B8 000EC518 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800EF5BC 000EC51C 41 80 FF 88 */ blt lbl_800EF544 /* 800EF5C0 000EC520 48 00 00 10 */ b lbl_800EF5D0 lbl_800EF5C4: /* 800EF5C4 000EC524 38 63 00 0C */ addi r3, r3, 0xc /* 800EF5C8 000EC528 3B 5A 00 01 */ addi r26, r26, 1 /* 800EF5CC 000EC52C 42 00 FD 7C */ bdnz lbl_800EF348 lbl_800EF5D0: /* 800EF5D0 000EC530 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 /* 800EF5D4 000EC534 CB E1 00 C0 */ lfd f31, 0xc0(r1) /* 800EF5D8 000EC538 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 /* 800EF5DC 000EC53C CB C1 00 B0 */ lfd f30, 0xb0(r1) /* 800EF5E0 000EC540 E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 /* 800EF5E4 000EC544 CB A1 00 A0 */ lfd f29, 0xa0(r1) /* 800EF5E8 000EC548 E3 81 00 98 */ psq_l f28, 152(r1), 0, qr0 /* 800EF5EC 000EC54C CB 81 00 90 */ lfd f28, 0x90(r1) /* 800EF5F0 000EC550 E3 61 00 88 */ psq_l f27, 136(r1), 0, qr0 /* 800EF5F4 000EC554 CB 61 00 80 */ lfd f27, 0x80(r1) /* 800EF5F8 000EC558 E3 41 00 78 */ psq_l f26, 120(r1), 0, qr0 /* 800EF5FC 000EC55C CB 41 00 70 */ lfd f26, 0x70(r1) /* 800EF600 000EC560 BB 41 00 58 */ lmw r26, 0x58(r1) /* 800EF604 000EC564 80 01 00 D4 */ lwz r0, 0xd4(r1) /* 800EF608 000EC568 7C 08 03 A6 */ mtlr r0 /* 800EF60C 000EC56C 38 21 00 D0 */ addi r1, r1, 0xd0 /* 800EF610 000EC570 4E 80 00 20 */ blr .global "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f": /* 800EF614 000EC574 94 21 FF B0 */ stwu r1, -0x50(r1) /* 800EF618 000EC578 7C 08 02 A6 */ mflr r0 /* 800EF61C 000EC57C 90 01 00 54 */ stw r0, 0x54(r1) /* 800EF620 000EC580 DB E1 00 40 */ stfd f31, 0x40(r1) /* 800EF624 000EC584 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 800EF628 000EC588 7C 64 1B 78 */ mr r4, r3 /* 800EF62C 000EC58C 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) /* 800EF630 000EC590 FF E0 08 90 */ fmr f31, f1 /* 800EF634 000EC594 80 84 00 00 */ lwz r4, 0(r4) /* 800EF638 000EC598 81 83 00 00 */ lwz r12, 0(r3) /* 800EF63C 000EC59C 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 800EF640 000EC5A0 7D 89 03 A6 */ mtctr r12 /* 800EF644 000EC5A4 4E 80 04 21 */ bctrl /* 800EF648 000EC5A8 80 83 00 00 */ lwz r4, 0(r3) /* 800EF64C 000EC5AC 80 63 00 04 */ lwz r3, 4(r3) /* 800EF650 000EC5B0 3C 04 BC B3 */ addis r0, r4, 0xbcb3 /* 800EF654 000EC5B4 90 81 00 08 */ stw r4, 8(r1) /* 800EF658 000EC5B8 28 00 44 4C */ cmplwi r0, 0x444c /* 800EF65C 000EC5BC 90 61 00 0C */ stw r3, 0xc(r1) /* 800EF660 000EC5C0 40 82 00 54 */ bne lbl_800EF6B4 /* 800EF664 000EC5C4 3C 80 80 3D */ lis r4, lbl_803CEBF4@ha /* 800EF668 000EC5C8 38 60 00 4C */ li r3, 0x4c /* 800EF66C 000EC5CC 38 84 EB F4 */ addi r4, r4, lbl_803CEBF4@l /* 800EF670 000EC5D0 38 A0 00 00 */ li r5, 0 /* 800EF674 000EC5D4 38 84 00 DC */ addi r4, r4, 0xdc /* 800EF678 000EC5D8 48 22 61 F5 */ bl __nw__FUlPCcPCc /* 800EF67C 000EC5DC 7C 60 1B 79 */ or. r0, r3, r3 /* 800EF680 000EC5E0 41 82 00 2C */ beq lbl_800EF6AC /* 800EF684 000EC5E4 C0 02 91 D8 */ lfs f0, lbl_805AAEF8@sda21(r2) /* 800EF688 000EC5E8 38 81 00 10 */ addi r4, r1, 0x10 /* 800EF68C 000EC5EC 80 01 00 0C */ lwz r0, 0xc(r1) /* 800EF690 000EC5F0 EC 00 07 F2 */ fmuls f0, f0, f31 /* 800EF694 000EC5F4 90 01 00 10 */ stw r0, 0x10(r1) /* 800EF698 000EC5F8 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800EF69C 000EC5FC D0 01 00 18 */ stfs f0, 0x18(r1) /* 800EF6A0 000EC600 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800EF6A4 000EC604 48 02 76 B9 */ bl __ct__10CModelDataFRC10CStaticRes /* 800EF6A8 000EC608 7C 60 1B 78 */ mr r0, r3 lbl_800EF6AC: /* 800EF6AC 000EC60C 7C 03 03 78 */ mr r3, r0 /* 800EF6B0 000EC610 48 00 00 64 */ b lbl_800EF714 lbl_800EF6B4: /* 800EF6B4 000EC614 3C 80 80 3D */ lis r4, lbl_803CEBF4@ha /* 800EF6B8 000EC618 38 60 00 4C */ li r3, 0x4c /* 800EF6BC 000EC61C 38 84 EB F4 */ addi r4, r4, lbl_803CEBF4@l /* 800EF6C0 000EC620 38 A0 00 00 */ li r5, 0 /* 800EF6C4 000EC624 38 84 00 DC */ addi r4, r4, 0xdc /* 800EF6C8 000EC628 48 22 61 A5 */ bl __nw__FUlPCcPCc /* 800EF6CC 000EC62C 7C 60 1B 79 */ or. r0, r3, r3 /* 800EF6D0 000EC630 41 82 00 40 */ beq lbl_800EF710 /* 800EF6D4 000EC634 C0 02 91 D8 */ lfs f0, lbl_805AAEF8@sda21(r2) /* 800EF6D8 000EC638 38 00 00 00 */ li r0, 0 /* 800EF6DC 000EC63C 80 C1 00 0C */ lwz r6, 0xc(r1) /* 800EF6E0 000EC640 38 81 00 20 */ addi r4, r1, 0x20 /* 800EF6E4 000EC644 EC 00 07 F2 */ fmuls f0, f0, f31 /* 800EF6E8 000EC648 80 A2 83 F0 */ lwz r5, lbl_805AA110@sda21(r2) /* 800EF6EC 000EC64C 90 C1 00 20 */ stw r6, 0x20(r1) /* 800EF6F0 000EC650 90 A1 00 24 */ stw r5, 0x24(r1) /* 800EF6F4 000EC654 D0 01 00 28 */ stfs f0, 0x28(r1) /* 800EF6F8 000EC658 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 800EF6FC 000EC65C D0 01 00 30 */ stfs f0, 0x30(r1) /* 800EF700 000EC660 98 01 00 34 */ stb r0, 0x34(r1) /* 800EF704 000EC664 90 01 00 38 */ stw r0, 0x38(r1) /* 800EF708 000EC668 48 02 74 4D */ bl __ct__10CModelDataFRC8CAnimRes /* 800EF70C 000EC66C 7C 60 1B 78 */ mr r0, r3 lbl_800EF710: /* 800EF710 000EC670 7C 03 03 78 */ mr r3, r0 lbl_800EF714: /* 800EF714 000EC674 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800EF718 000EC678 80 01 00 54 */ lwz r0, 0x54(r1) /* 800EF71C 000EC67C CB E1 00 40 */ lfd f31, 0x40(r1) /* 800EF720 000EC680 7C 08 03 A6 */ mtlr r0 /* 800EF724 000EC684 38 21 00 50 */ addi r1, r1, 0x50 /* 800EF728 000EC688 4E 80 00 20 */ blr .global LoadMorphBallModel__10CMorphBallFR13CStateManager LoadMorphBallModel__10CMorphBallFR13CStateManager: /* 800EF72C 000EC68C 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800EF730 000EC690 7C 08 02 A6 */ mflr r0 /* 800EF734 000EC694 3C C0 80 3D */ lis r6, lbl_803CE910@ha /* 800EF738 000EC698 90 01 00 74 */ stw r0, 0x74(r1) /* 800EF73C 000EC69C BF 41 00 58 */ stmw r26, 0x58(r1) /* 800EF740 000EC6A0 7C 7C 1B 78 */ mr r28, r3 /* 800EF744 000EC6A4 3B E6 E9 10 */ addi r31, r6, lbl_803CE910@l /* 800EF748 000EC6A8 80 A4 08 B8 */ lwz r5, 0x8b8(r4) /* 800EF74C 000EC6AC 38 80 00 13 */ li r4, 0x13 /* 800EF750 000EC6B0 83 C5 00 00 */ lwz r30, 0(r5) /* 800EF754 000EC6B4 7F C3 F3 78 */ mr r3, r30 /* 800EF758 000EC6B8 4B FA 23 69 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 800EF75C 000EC6BC 83 BE 00 20 */ lwz r29, 0x20(r30) /* 800EF760 000EC6C0 7C 7B 1B 78 */ mr r27, r3 /* 800EF764 000EC6C4 7F C3 F3 78 */ mr r3, r30 /* 800EF768 000EC6C8 4B FA 1D 5D */ bl GetIsFusionEnabled__12CPlayerStateCFv /* 800EF76C 000EC6CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800EF770 000EC6D0 41 82 00 08 */ beq lbl_800EF778 /* 800EF774 000EC6D4 3B BD 00 04 */ addi r29, r29, 4 lbl_800EF778: /* 800EF778 000EC6D8 57 60 06 3F */ clrlwi. r0, r27, 0x18 /* 800EF77C 000EC6DC 7F BA EB 78 */ mr r26, r29 /* 800EF780 000EC6E0 41 82 00 08 */ beq lbl_800EF788 /* 800EF784 000EC6E4 3B 5D 00 04 */ addi r26, r29, 4 lbl_800EF788: /* 800EF788 000EC6E8 7F C3 F3 78 */ mr r3, r30 /* 800EF78C 000EC6EC 4B FA 1D 39 */ bl GetIsFusionEnabled__12CPlayerStateCFv /* 800EF790 000EC6F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800EF794 000EC6F4 41 82 00 08 */ beq lbl_800EF79C /* 800EF798 000EC6F8 3B 5A 00 64 */ addi r26, r26, 0x64 lbl_800EF79C: /* 800EF79C 000EC6FC 80 1C 00 04 */ lwz r0, 4(r28) /* 800EF7A0 000EC700 7C 00 D0 00 */ cmpw r0, r26 /* 800EF7A4 000EC704 41 82 01 E8 */ beq lbl_800EF98C /* 800EF7A8 000EC708 57 60 06 3F */ clrlwi. r0, r27, 0x18 /* 800EF7AC 000EC70C 93 5C 00 04 */ stw r26, 4(r28) /* 800EF7B0 000EC710 41 82 01 18 */ beq lbl_800EF8C8 /* 800EF7B4 000EC714 57 BE 18 38 */ slwi r30, r29, 3 /* 800EF7B8 000EC718 38 7F 00 C0 */ addi r3, r31, 0xc0 /* 800EF7BC 000EC71C 7C 83 F0 2E */ lwzx r4, r3, r30 /* 800EF7C0 000EC720 38 61 00 48 */ addi r3, r1, 0x48 /* 800EF7C4 000EC724 4B F1 54 F5 */ bl string_l__4rstlFPCc /* 800EF7C8 000EC728 C0 3C 00 0C */ lfs f1, 0xc(r28) /* 800EF7CC 000EC72C 38 61 00 48 */ addi r3, r1, 0x48 /* 800EF7D0 000EC730 4B FF FE 45 */ bl "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 800EF7D4 000EC734 7C 7B 1B 78 */ mr r27, r3 /* 800EF7D8 000EC738 80 7C 00 58 */ lwz r3, 0x58(r28) /* 800EF7DC 000EC73C 38 80 00 01 */ li r4, 1 /* 800EF7E0 000EC740 48 02 72 6D */ bl __dt__10CModelDataFv /* 800EF7E4 000EC744 93 7C 00 58 */ stw r27, 0x58(r28) /* 800EF7E8 000EC748 38 61 00 48 */ addi r3, r1, 0x48 /* 800EF7EC 000EC74C 48 24 E2 F5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800EF7F0 000EC750 38 1F 00 C0 */ addi r0, r31, 0xc0 /* 800EF7F4 000EC754 38 7F 00 80 */ addi r3, r31, 0x80 /* 800EF7F8 000EC758 7C A0 F2 14 */ add r5, r0, r30 /* 800EF7FC 000EC75C 7C 83 F0 2E */ lwzx r4, r3, r30 /* 800EF800 000EC760 80 05 00 04 */ lwz r0, 4(r5) /* 800EF804 000EC764 38 61 00 38 */ addi r3, r1, 0x38 /* 800EF808 000EC768 90 1C 00 5C */ stw r0, 0x5c(r28) /* 800EF80C 000EC76C 4B F1 54 AD */ bl string_l__4rstlFPCc /* 800EF810 000EC770 C0 3C 00 0C */ lfs f1, 0xc(r28) /* 800EF814 000EC774 38 61 00 38 */ addi r3, r1, 0x38 /* 800EF818 000EC778 4B FF FD FD */ bl "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 800EF81C 000EC77C 7C 7B 1B 78 */ mr r27, r3 /* 800EF820 000EC780 80 7C 00 68 */ lwz r3, 0x68(r28) /* 800EF824 000EC784 38 80 00 01 */ li r4, 1 /* 800EF828 000EC788 48 02 72 25 */ bl __dt__10CModelDataFv /* 800EF82C 000EC78C 93 7C 00 68 */ stw r27, 0x68(r28) /* 800EF830 000EC790 38 61 00 38 */ addi r3, r1, 0x38 /* 800EF834 000EC794 48 24 E2 AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800EF838 000EC798 38 1F 00 80 */ addi r0, r31, 0x80 /* 800EF83C 000EC79C 38 7F 01 00 */ addi r3, r31, 0x100 /* 800EF840 000EC7A0 7C A0 F2 14 */ add r5, r0, r30 /* 800EF844 000EC7A4 7C 83 F0 2E */ lwzx r4, r3, r30 /* 800EF848 000EC7A8 80 05 00 04 */ lwz r0, 4(r5) /* 800EF84C 000EC7AC 28 04 00 00 */ cmplwi r4, 0 /* 800EF850 000EC7B0 90 1C 00 6C */ stw r0, 0x6c(r28) /* 800EF854 000EC7B4 41 82 00 48 */ beq lbl_800EF89C /* 800EF858 000EC7B8 38 61 00 28 */ addi r3, r1, 0x28 /* 800EF85C 000EC7BC 4B F1 54 5D */ bl string_l__4rstlFPCc /* 800EF860 000EC7C0 C0 3C 00 0C */ lfs f1, 0xc(r28) /* 800EF864 000EC7C4 38 61 00 28 */ addi r3, r1, 0x28 /* 800EF868 000EC7C8 4B FF FD AD */ bl "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 800EF86C 000EC7CC 7C 7B 1B 78 */ mr r27, r3 /* 800EF870 000EC7D0 80 7C 00 60 */ lwz r3, 0x60(r28) /* 800EF874 000EC7D4 38 80 00 01 */ li r4, 1 /* 800EF878 000EC7D8 48 02 71 D5 */ bl __dt__10CModelDataFv /* 800EF87C 000EC7DC 93 7C 00 60 */ stw r27, 0x60(r28) /* 800EF880 000EC7E0 38 61 00 28 */ addi r3, r1, 0x28 /* 800EF884 000EC7E4 48 24 E2 5D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800EF888 000EC7E8 38 1F 01 00 */ addi r0, r31, 0x100 /* 800EF88C 000EC7EC 7C 60 F2 14 */ add r3, r0, r30 /* 800EF890 000EC7F0 80 03 00 04 */ lwz r0, 4(r3) /* 800EF894 000EC7F4 90 1C 00 64 */ stw r0, 0x64(r28) /* 800EF898 000EC7F8 48 00 00 1C */ b lbl_800EF8B4 lbl_800EF89C: /* 800EF89C 000EC7FC 80 7C 00 60 */ lwz r3, 0x60(r28) /* 800EF8A0 000EC800 38 80 00 01 */ li r4, 1 /* 800EF8A4 000EC804 48 02 71 A9 */ bl __dt__10CModelDataFv /* 800EF8A8 000EC808 38 00 00 00 */ li r0, 0 /* 800EF8AC 000EC80C 90 1C 00 60 */ stw r0, 0x60(r28) /* 800EF8B0 000EC810 90 1C 00 64 */ stw r0, 0x64(r28) lbl_800EF8B4: /* 800EF8B4 000EC814 57 A0 10 3A */ slwi r0, r29, 2 /* 800EF8B8 000EC818 38 7F 01 80 */ addi r3, r31, 0x180 /* 800EF8BC 000EC81C 7C 03 00 2E */ lwzx r0, r3, r0 /* 800EF8C0 000EC820 90 1C 00 08 */ stw r0, 8(r28) /* 800EF8C4 000EC824 48 00 00 A8 */ b lbl_800EF96C lbl_800EF8C8: /* 800EF8C8 000EC828 57 BB 18 38 */ slwi r27, r29, 3 /* 800EF8CC 000EC82C 38 7F 00 00 */ addi r3, r31, 0 /* 800EF8D0 000EC830 7C 83 D8 2E */ lwzx r4, r3, r27 /* 800EF8D4 000EC834 38 61 00 18 */ addi r3, r1, 0x18 /* 800EF8D8 000EC838 4B F1 53 E1 */ bl string_l__4rstlFPCc /* 800EF8DC 000EC83C C0 3C 00 0C */ lfs f1, 0xc(r28) /* 800EF8E0 000EC840 38 61 00 18 */ addi r3, r1, 0x18 /* 800EF8E4 000EC844 4B FF FD 31 */ bl "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 800EF8E8 000EC848 7C 7E 1B 78 */ mr r30, r3 /* 800EF8EC 000EC84C 80 7C 00 58 */ lwz r3, 0x58(r28) /* 800EF8F0 000EC850 38 80 00 01 */ li r4, 1 /* 800EF8F4 000EC854 48 02 71 59 */ bl __dt__10CModelDataFv /* 800EF8F8 000EC858 93 DC 00 58 */ stw r30, 0x58(r28) /* 800EF8FC 000EC85C 38 61 00 18 */ addi r3, r1, 0x18 /* 800EF900 000EC860 48 24 E1 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800EF904 000EC864 38 1F 00 00 */ addi r0, r31, 0 /* 800EF908 000EC868 38 7F 00 40 */ addi r3, r31, 0x40 /* 800EF90C 000EC86C 7C A0 DA 14 */ add r5, r0, r27 /* 800EF910 000EC870 7C 83 D8 2E */ lwzx r4, r3, r27 /* 800EF914 000EC874 80 05 00 04 */ lwz r0, 4(r5) /* 800EF918 000EC878 38 61 00 08 */ addi r3, r1, 8 /* 800EF91C 000EC87C 90 1C 00 5C */ stw r0, 0x5c(r28) /* 800EF920 000EC880 4B F1 53 99 */ bl string_l__4rstlFPCc /* 800EF924 000EC884 C0 3C 00 0C */ lfs f1, 0xc(r28) /* 800EF928 000EC888 38 61 00 08 */ addi r3, r1, 8 /* 800EF92C 000EC88C 4B FF FC E9 */ bl "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 800EF930 000EC890 7C 7E 1B 78 */ mr r30, r3 /* 800EF934 000EC894 80 7C 00 68 */ lwz r3, 0x68(r28) /* 800EF938 000EC898 38 80 00 01 */ li r4, 1 /* 800EF93C 000EC89C 48 02 71 11 */ bl __dt__10CModelDataFv /* 800EF940 000EC8A0 93 DC 00 68 */ stw r30, 0x68(r28) /* 800EF944 000EC8A4 38 61 00 08 */ addi r3, r1, 8 /* 800EF948 000EC8A8 48 24 E1 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800EF94C 000EC8AC 38 7F 00 40 */ addi r3, r31, 0x40 /* 800EF950 000EC8B0 57 A0 10 3A */ slwi r0, r29, 2 /* 800EF954 000EC8B4 7C 83 DA 14 */ add r4, r3, r27 /* 800EF958 000EC8B8 38 7F 01 A0 */ addi r3, r31, 0x1a0 /* 800EF95C 000EC8BC 80 84 00 04 */ lwz r4, 4(r4) /* 800EF960 000EC8C0 7C 03 00 2E */ lwzx r0, r3, r0 /* 800EF964 000EC8C4 90 9C 00 6C */ stw r4, 0x6c(r28) /* 800EF968 000EC8C8 90 1C 00 08 */ stw r0, 8(r28) lbl_800EF96C: /* 800EF96C 000EC8CC 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 800EF970 000EC8D0 C0 22 91 D8 */ lfs f1, lbl_805AAEF8@sda21(r2) /* 800EF974 000EC8D4 C0 03 02 7C */ lfs f0, 0x27c(r3) /* 800EF978 000EC8D8 80 7C 00 58 */ lwz r3, 0x58(r28) /* 800EF97C 000EC8DC EC 01 00 32 */ fmuls f0, f1, f0 /* 800EF980 000EC8E0 D0 03 00 00 */ stfs f0, 0(r3) /* 800EF984 000EC8E4 D0 03 00 04 */ stfs f0, 4(r3) /* 800EF988 000EC8E8 D0 03 00 08 */ stfs f0, 8(r3) lbl_800EF98C: /* 800EF98C 000EC8EC BB 41 00 58 */ lmw r26, 0x58(r1) /* 800EF990 000EC8F0 80 01 00 74 */ lwz r0, 0x74(r1) /* 800EF994 000EC8F4 7C 08 03 A6 */ mtlr r0 /* 800EF998 000EC8F8 38 21 00 70 */ addi r1, r1, 0x70 /* 800EF99C 000EC8FC 4E 80 00 20 */ blr .global FluidFXThink__10CMorphBallFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager FluidFXThink__10CMorphBallFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager: /* 800EF9A0 000EC900 94 21 FF 70 */ stwu r1, -0x90(r1) /* 800EF9A4 000EC904 7C 08 02 A6 */ mflr r0 /* 800EF9A8 000EC908 90 01 00 94 */ stw r0, 0x94(r1) /* 800EF9AC 000EC90C DB E1 00 80 */ stfd f31, 0x80(r1) /* 800EF9B0 000EC910 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 /* 800EF9B4 000EC914 DB C1 00 70 */ stfd f30, 0x70(r1) /* 800EF9B8 000EC918 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 /* 800EF9BC 000EC91C 93 E1 00 6C */ stw r31, 0x6c(r1) /* 800EF9C0 000EC920 93 C1 00 68 */ stw r30, 0x68(r1) /* 800EF9C4 000EC924 93 A1 00 64 */ stw r29, 0x64(r1) /* 800EF9C8 000EC928 93 81 00 60 */ stw r28, 0x60(r1) /* 800EF9CC 000EC92C 7C 7C 1B 78 */ mr r28, r3 /* 800EF9D0 000EC930 7C BE 2B 78 */ mr r30, r5 /* 800EF9D4 000EC934 80 63 00 00 */ lwz r3, 0(r3) /* 800EF9D8 000EC938 7C 9D 23 78 */ mr r29, r4 /* 800EF9DC 000EC93C 7C DF 33 78 */ mr r31, r6 /* 800EF9E0 000EC940 7F C4 F3 78 */ mr r4, r30 /* 800EF9E4 000EC944 C3 E3 04 FC */ lfs f31, 0x4fc(r3) /* 800EF9E8 000EC948 38 61 00 44 */ addi r3, r1, 0x44 /* 800EF9EC 000EC94C 4B F8 6C E1 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv /* 800EF9F0 000EC950 80 7C 00 00 */ lwz r3, 0(r28) /* 800EF9F4 000EC954 C0 02 91 E0 */ lfs f0, lbl_805AAF00@sda21(r2) /* 800EF9F8 000EC958 C0 43 00 60 */ lfs f2, 0x60(r3) /* 800EF9FC 000EC95C C0 23 00 50 */ lfs f1, 0x50(r3) /* 800EFA00 000EC960 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800EFA04 000EC964 C0 03 00 40 */ lfs f0, 0x40(r3) /* 800EFA08 000EC968 C0 61 00 58 */ lfs f3, 0x58(r1) /* 800EFA0C 000EC96C D0 01 00 2C */ stfs f0, 0x2c(r1) /* 800EFA10 000EC970 D0 21 00 30 */ stfs f1, 0x30(r1) /* 800EFA14 000EC974 D0 41 00 34 */ stfs f2, 0x34(r1) /* 800EFA18 000EC978 D0 01 00 38 */ stfs f0, 0x38(r1) /* 800EFA1C 000EC97C D0 21 00 3C */ stfs f1, 0x3c(r1) /* 800EFA20 000EC980 D0 61 00 40 */ stfs f3, 0x40(r1) /* 800EFA24 000EC984 4C 41 13 82 */ cror 2, 1, 2 /* 800EFA28 000EC988 40 82 00 80 */ bne lbl_800EFAA8 /* 800EFA2C 000EC98C 48 19 5F A5 */ bl GetBallMaxVelocity__7CPlayerCFv /* 800EFA30 000EC990 80 7C 00 00 */ lwz r3, 0(r28) /* 800EFA34 000EC994 FF C0 08 90 */ fmr f30, f1 /* 800EFA38 000EC998 38 81 00 24 */ addi r4, r1, 0x24 /* 800EFA3C 000EC99C A0 03 00 08 */ lhz r0, 8(r3) /* 800EFA40 000EC9A0 B0 01 00 24 */ sth r0, 0x24(r1) /* 800EFA44 000EC9A4 B0 01 00 20 */ sth r0, 0x20(r1) /* 800EFA48 000EC9A8 80 7F 08 7C */ lwz r3, 0x87c(r31) /* 800EFA4C 000EC9AC 48 03 FB 61 */ bl GetLastSplashDeltaTime__18CFluidPlaneManagerCF9TUniqueId /* 800EFA50 000EC9B0 C0 02 91 E0 */ lfs f0, lbl_805AAF00@sda21(r2) /* 800EFA54 000EC9B4 EC 5E F8 28 */ fsubs f2, f30, f31 /* 800EFA58 000EC9B8 C0 62 91 E4 */ lfs f3, lbl_805AAF04@sda21(r2) /* 800EFA5C 000EC9BC EC 1E 00 28 */ fsubs f0, f30, f0 /* 800EFA60 000EC9C0 EC 02 00 24 */ fdivs f0, f2, f0 /* 800EFA64 000EC9C4 EC 03 00 32 */ fmuls f0, f3, f0 /* 800EFA68 000EC9C8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800EFA6C 000EC9CC 4C 41 13 82 */ cror 2, 1, 2 /* 800EFA70 000EC9D0 40 82 00 38 */ bne lbl_800EFAA8 /* 800EFA74 000EC9D4 80 7C 00 00 */ lwz r3, 0(r28) /* 800EFA78 000EC9D8 7F A0 00 34 */ cntlzw r0, r29 /* 800EFA7C 000EC9DC C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800EFA80 000EC9E0 7F E5 FB 78 */ mr r5, r31 /* 800EFA84 000EC9E4 A0 63 00 08 */ lhz r3, 8(r3) /* 800EFA88 000EC9E8 7F C6 F3 78 */ mr r6, r30 /* 800EFA8C 000EC9EC 38 81 00 1C */ addi r4, r1, 0x1c /* 800EFA90 000EC9F0 38 E1 00 38 */ addi r7, r1, 0x38 /* 800EFA94 000EC9F4 B0 61 00 1C */ sth r3, 0x1c(r1) /* 800EFA98 000EC9F8 54 08 D9 7E */ srwi r8, r0, 5 /* 800EFA9C 000EC9FC B0 61 00 18 */ sth r3, 0x18(r1) /* 800EFAA0 000ECA00 80 7F 08 7C */ lwz r3, 0x87c(r31) /* 800EFAA4 000ECA04 48 03 F8 15 */ bl CreateSplash__18CFluidPlaneManagerF9TUniqueIdR13CStateManagerRC12CScriptWaterRC9CVector3ffb lbl_800EFAA8: /* 800EFAA8 000ECA08 C0 02 91 E8 */ lfs f0, lbl_805AAF08@sda21(r2) /* 800EFAAC 000ECA0C FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800EFAB0 000ECA10 4C 41 13 82 */ cror 2, 1, 2 /* 800EFAB4 000ECA14 40 82 00 D8 */ bne lbl_800EFB8C /* 800EFAB8 000ECA18 80 7C 00 00 */ lwz r3, 0(r28) /* 800EFABC 000ECA1C 38 81 00 14 */ addi r4, r1, 0x14 /* 800EFAC0 000ECA20 A0 03 00 08 */ lhz r0, 8(r3) /* 800EFAC4 000ECA24 B0 01 00 14 */ sth r0, 0x14(r1) /* 800EFAC8 000ECA28 B0 01 00 10 */ sth r0, 0x10(r1) /* 800EFACC 000ECA2C 80 7F 08 7C */ lwz r3, 0x87c(r31) /* 800EFAD0 000ECA30 48 03 FA B1 */ bl GetLastRippleDeltaTime__18CFluidPlaneManagerCF9TUniqueId /* 800EFAD4 000ECA34 C0 02 91 9C */ lfs f0, lbl_805AAEBC@sda21(r2) /* 800EFAD8 000ECA38 FF C0 08 90 */ fmr f30, f1 /* 800EFADC 000ECA3C FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800EFAE0 000ECA40 4C 40 13 82 */ cror 2, 0, 2 /* 800EFAE4 000ECA44 40 82 00 0C */ bne lbl_800EFAF0 /* 800EFAE8 000ECA48 C0 02 91 EC */ lfs f0, lbl_805AAF0C@sda21(r2) /* 800EFAEC 000ECA4C 48 00 00 4C */ b lbl_800EFB38 lbl_800EFAF0: /* 800EFAF0 000ECA50 80 7C 00 00 */ lwz r3, 0(r28) /* 800EFAF4 000ECA54 48 19 5E DD */ bl GetBallMaxVelocity__7CPlayerCFv /* 800EFAF8 000ECA58 C0 02 91 9C */ lfs f0, lbl_805AAEBC@sda21(r2) /* 800EFAFC 000ECA5C EC 81 F8 28 */ fsubs f4, f1, f31 /* 800EFB00 000ECA60 C0 62 91 F0 */ lfs f3, lbl_805AAF10@sda21(r2) /* 800EFB04 000ECA64 EC 5F 00 28 */ fsubs f2, f31, f0 /* 800EFB08 000ECA68 C0 22 91 EC */ lfs f1, lbl_805AAF0C@sda21(r2) /* 800EFB0C 000ECA6C C0 02 91 DC */ lfs f0, lbl_805AAEFC@sda21(r2) /* 800EFB10 000ECA70 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800EFB14 000ECA74 EC 42 20 24 */ fdivs f2, f2, f4 /* 800EFB18 000ECA78 EC 21 10 28 */ fsubs f1, f1, f2 /* 800EFB1C 000ECA7C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800EFB20 000ECA80 D0 21 00 28 */ stfs f1, 0x28(r1) /* 800EFB24 000ECA84 40 80 00 0C */ bge lbl_800EFB30 /* 800EFB28 000ECA88 38 61 00 28 */ addi r3, r1, 0x28 /* 800EFB2C 000ECA8C 48 00 00 08 */ b lbl_800EFB34 lbl_800EFB30: /* 800EFB30 000ECA90 38 62 91 DC */ addi r3, r2, lbl_805AAEFC@sda21 lbl_800EFB34: /* 800EFB34 000ECA94 C0 03 00 00 */ lfs f0, 0(r3) lbl_800EFB38: /* 800EFB38 000ECA98 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 800EFB3C 000ECA9C 4C 41 13 82 */ cror 2, 1, 2 /* 800EFB40 000ECAA0 40 82 00 4C */ bne lbl_800EFB8C /* 800EFB44 000ECAA4 80 7C 00 00 */ lwz r3, 0(r28) /* 800EFB48 000ECAA8 48 19 5E 89 */ bl GetBallMaxVelocity__7CPlayerCFv /* 800EFB4C 000ECAAC C0 02 91 F4 */ lfs f0, lbl_805AAF14@sda21(r2) /* 800EFB50 000ECAB0 7F C6 F3 78 */ mr r6, r30 /* 800EFB54 000ECAB4 80 7C 00 00 */ lwz r3, 0(r28) /* 800EFB58 000ECAB8 7F E7 FB 78 */ mr r7, r31 /* 800EFB5C 000ECABC EC 00 07 F2 */ fmuls f0, f0, f31 /* 800EFB60 000ECAC0 38 81 00 0C */ addi r4, r1, 0xc /* 800EFB64 000ECAC4 A0 03 00 08 */ lhz r0, 8(r3) /* 800EFB68 000ECAC8 38 A1 00 38 */ addi r5, r1, 0x38 /* 800EFB6C 000ECACC EC 20 08 24 */ fdivs f1, f0, f1 /* 800EFB70 000ECAD0 B0 01 00 0C */ sth r0, 0xc(r1) /* 800EFB74 000ECAD4 80 7E 01 B4 */ lwz r3, 0x1b4(r30) /* 800EFB78 000ECAD8 B0 01 00 08 */ sth r0, 8(r1) /* 800EFB7C 000ECADC 81 83 00 00 */ lwz r12, 0(r3) /* 800EFB80 000ECAE0 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800EFB84 000ECAE4 7D 89 03 A6 */ mtctr r12 /* 800EFB88 000ECAE8 4E 80 04 21 */ bctrl lbl_800EFB8C: /* 800EFB8C 000ECAEC E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 /* 800EFB90 000ECAF0 CB E1 00 80 */ lfd f31, 0x80(r1) /* 800EFB94 000ECAF4 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 /* 800EFB98 000ECAF8 CB C1 00 70 */ lfd f30, 0x70(r1) /* 800EFB9C 000ECAFC 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 800EFBA0 000ECB00 83 C1 00 68 */ lwz r30, 0x68(r1) /* 800EFBA4 000ECB04 83 A1 00 64 */ lwz r29, 0x64(r1) /* 800EFBA8 000ECB08 80 01 00 94 */ lwz r0, 0x94(r1) /* 800EFBAC 000ECB0C 83 81 00 60 */ lwz r28, 0x60(r1) /* 800EFBB0 000ECB10 7C 08 03 A6 */ mtlr r0 /* 800EFBB4 000ECB14 38 21 00 90 */ addi r1, r1, 0x90 /* 800EFBB8 000ECB18 4E 80 00 20 */ blr .global IsClimbable__10CMorphBallCFRC14CCollisionInfo IsClimbable__10CMorphBallCFRC14CCollisionInfo: /* 800EFBBC 000ECB1C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 800EFBC0 000ECB20 7C 08 02 A6 */ mflr r0 /* 800EFBC4 000ECB24 90 01 00 54 */ stw r0, 0x54(r1) /* 800EFBC8 000ECB28 DB E1 00 40 */ stfd f31, 0x40(r1) /* 800EFBCC 000ECB2C F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 800EFBD0 000ECB30 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800EFBD4 000ECB34 93 C1 00 38 */ stw r30, 0x38(r1) /* 800EFBD8 000ECB38 7C 9F 23 78 */ mr r31, r4 /* 800EFBDC 000ECB3C C0 02 91 F8 */ lfs f0, lbl_805AAF18@sda21(r2) /* 800EFBE0 000ECB40 C0 24 00 50 */ lfs f1, 0x50(r4) /* 800EFBE4 000ECB44 7C 7E 1B 78 */ mr r30, r3 /* 800EFBE8 000ECB48 FC 20 0A 10 */ fabs f1, f1 /* 800EFBEC 000ECB4C FC 20 08 18 */ frsp f1, f1 /* 800EFBF0 000ECB50 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800EFBF4 000ECB54 40 80 00 48 */ bge lbl_800EFC3C /* 800EFBF8 000ECB58 7F C4 F3 78 */ mr r4, r30 /* 800EFBFC 000ECB5C 38 61 00 08 */ addi r3, r1, 8 /* 800EFC00 000ECB60 48 00 6A F5 */ bl GetBallToWorld__10CMorphBallCFv /* 800EFC04 000ECB64 C0 41 00 34 */ lfs f2, 0x34(r1) /* 800EFC08 000ECB68 C0 3F 00 08 */ lfs f1, 8(r31) /* 800EFC0C 000ECB6C C0 02 91 E4 */ lfs f0, lbl_805AAF04@sda21(r2) /* 800EFC10 000ECB70 EF E2 08 28 */ fsubs f31, f2, f1 /* 800EFC14 000ECB74 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800EFC18 000ECB78 40 81 00 24 */ ble lbl_800EFC3C /* 800EFC1C 000ECB7C 7F C3 F3 78 */ mr r3, r30 /* 800EFC20 000ECB80 48 00 91 E5 */ bl GetBallRadius__10CMorphBallCFv /* 800EFC24 000ECB84 C0 02 91 FC */ lfs f0, lbl_805AAF1C@sda21(r2) /* 800EFC28 000ECB88 EC 01 00 28 */ fsubs f0, f1, f0 /* 800EFC2C 000ECB8C FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800EFC30 000ECB90 40 80 00 0C */ bge lbl_800EFC3C /* 800EFC34 000ECB94 38 60 00 01 */ li r3, 1 /* 800EFC38 000ECB98 48 00 00 08 */ b lbl_800EFC40 lbl_800EFC3C: /* 800EFC3C 000ECB9C 38 60 00 00 */ li r3, 0 lbl_800EFC40: /* 800EFC40 000ECBA0 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800EFC44 000ECBA4 80 01 00 54 */ lwz r0, 0x54(r1) /* 800EFC48 000ECBA8 CB E1 00 40 */ lfd f31, 0x40(r1) /* 800EFC4C 000ECBAC 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800EFC50 000ECBB0 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800EFC54 000ECBB4 7C 08 03 A6 */ mtlr r0 /* 800EFC58 000ECBB8 38 21 00 50 */ addi r1, r1, 0x50 /* 800EFC5C 000ECBBC 4E 80 00 20 */ blr .global Touch__10CMorphBallFR6CActorR13CStateManager Touch__10CMorphBallFR6CActorR13CStateManager: /* 800EFC60 000ECBC0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 800EFC64 000ECBC4 7C 08 02 A6 */ mflr r0 /* 800EFC68 000ECBC8 90 01 00 64 */ stw r0, 0x64(r1) /* 800EFC6C 000ECBCC 93 E1 00 5C */ stw r31, 0x5c(r1) /* 800EFC70 000ECBD0 7C BF 2B 78 */ mr r31, r5 /* 800EFC74 000ECBD4 93 C1 00 58 */ stw r30, 0x58(r1) /* 800EFC78 000ECBD8 7C 9E 23 78 */ mr r30, r4 /* 800EFC7C 000ECBDC 93 A1 00 54 */ stw r29, 0x54(r1) /* 800EFC80 000ECBE0 7C 7D 1B 78 */ mr r29, r3 /* 800EFC84 000ECBE4 38 61 00 24 */ addi r3, r1, 0x24 /* 800EFC88 000ECBE8 4B FB CA C9 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FR7CEntity" /* 800EFC8C 000ECBEC 80 A3 00 04 */ lwz r5, 4(r3) /* 800EFC90 000ECBF0 28 05 00 00 */ cmplwi r5, 0 /* 800EFC94 000ECBF4 41 82 01 4C */ beq lbl_800EFDE0 /* 800EFC98 000ECBF8 88 1D 1D E4 */ lbz r0, 0x1de4(r29) /* 800EFC9C 000ECBFC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800EFCA0 000ECC00 41 82 01 40 */ beq lbl_800EFDE0 /* 800EFCA4 000ECC04 80 9D 00 00 */ lwz r4, 0(r29) /* 800EFCA8 000ECC08 38 61 00 2C */ addi r3, r1, 0x2c /* 800EFCAC 000ECC0C C0 25 01 3C */ lfs f1, 0x13c(r5) /* 800EFCB0 000ECC10 C0 04 01 3C */ lfs f0, 0x13c(r4) /* 800EFCB4 000ECC14 C0 65 01 40 */ lfs f3, 0x140(r5) /* 800EFCB8 000ECC18 C0 44 01 40 */ lfs f2, 0x140(r4) /* 800EFCBC 000ECC1C EC 81 00 28 */ fsubs f4, f1, f0 /* 800EFCC0 000ECC20 C0 25 01 38 */ lfs f1, 0x138(r5) /* 800EFCC4 000ECC24 C0 04 01 38 */ lfs f0, 0x138(r4) /* 800EFCC8 000ECC28 EC 43 10 28 */ fsubs f2, f3, f2 /* 800EFCCC 000ECC2C EC 01 00 28 */ fsubs f0, f1, f0 /* 800EFCD0 000ECC30 D0 81 00 30 */ stfs f4, 0x30(r1) /* 800EFCD4 000ECC34 D0 41 00 34 */ stfs f2, 0x34(r1) /* 800EFCD8 000ECC38 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 800EFCDC 000ECC3C 48 22 4B DD */ bl Magnitude__9CVector3fCFv /* 800EFCE0 000ECC40 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800EFCE4 000ECC44 C0 03 02 1C */ lfs f0, 0x21c(r3) /* 800EFCE8 000ECC48 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800EFCEC 000ECC4C 40 81 00 F4 */ ble lbl_800EFDE0 /* 800EFCF0 000ECC50 88 0D A3 3C */ lbz r0, lbl_805A8EFC@sda21(r13) /* 800EFCF4 000ECC54 7C 00 07 75 */ extsb. r0, r0 /* 800EFCF8 000ECC58 40 82 00 70 */ bne lbl_800EFD68 /* 800EFCFC 000ECC5C 88 01 00 20 */ lbz r0, 0x20(r1) /* 800EFD00 000ECC60 38 C0 00 00 */ li r6, 0 /* 800EFD04 000ECC64 50 C0 3E 30 */ rlwimi r0, r6, 7, 0x18, 0x18 /* 800EFD08 000ECC68 3C 60 80 47 */ lis r3, lbl_8046C504@ha /* 800EFD0C 000ECC6C 98 01 00 20 */ stb r0, 0x20(r1) /* 800EFD10 000ECC70 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 800EFD14 000ECC74 50 C0 36 72 */ rlwimi r0, r6, 6, 0x19, 0x19 /* 800EFD18 000ECC78 38 83 C5 04 */ addi r4, r3, lbl_8046C504@l /* 800EFD1C 000ECC7C C0 22 92 00 */ lfs f1, lbl_805AAF20@sda21(r2) /* 800EFD20 000ECC80 38 E0 00 07 */ li r7, 7 /* 800EFD24 000ECC84 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800EFD28 000ECC88 54 05 06 3E */ clrlwi r5, r0, 0x18 /* 800EFD2C 000ECC8C 98 01 00 20 */ stb r0, 0x20(r1) /* 800EFD30 000ECC90 50 C5 2E B4 */ rlwimi r5, r6, 5, 0x1a, 0x1a /* 800EFD34 000ECC94 88 64 00 18 */ lbz r3, 0x18(r4) /* 800EFD38 000ECC98 50 C3 3E 30 */ rlwimi r3, r6, 7, 0x18, 0x18 /* 800EFD3C 000ECC9C 38 00 00 01 */ li r0, 1 /* 800EFD40 000ECCA0 90 E1 00 1C */ stw r7, 0x1c(r1) /* 800EFD44 000ECCA4 98 A1 00 20 */ stb r5, 0x20(r1) /* 800EFD48 000ECCA8 90 E4 00 00 */ stw r7, 0(r4) /* 800EFD4C 000ECCAC 98 A4 00 04 */ stb r5, 4(r4) /* 800EFD50 000ECCB0 D0 24 00 08 */ stfs f1, 8(r4) /* 800EFD54 000ECCB4 D0 24 00 0C */ stfs f1, 0xc(r4) /* 800EFD58 000ECCB8 D0 04 00 10 */ stfs f0, 0x10(r4) /* 800EFD5C 000ECCBC D0 04 00 14 */ stfs f0, 0x14(r4) /* 800EFD60 000ECCC0 98 64 00 18 */ stb r3, 0x18(r4) /* 800EFD64 000ECCC4 98 0D A3 3C */ stb r0, lbl_805A8EFC@sda21(r13) lbl_800EFD68: /* 800EFD68 000ECCC8 80 DD 00 00 */ lwz r6, 0(r29) /* 800EFD6C 000ECCCC 38 60 00 00 */ li r3, 0 /* 800EFD70 000ECCD0 80 AD 88 30 */ lwz r5, lbl_805A73F0@sda21(r13) /* 800EFD74 000ECCD4 38 80 00 01 */ li r4, 1 /* 800EFD78 000ECCD8 A0 06 00 08 */ lhz r0, 8(r6) /* 800EFD7C 000ECCDC B0 01 00 18 */ sth r0, 0x18(r1) /* 800EFD80 000ECCE0 48 29 A1 75 */ bl __shl2i /* 800EFD84 000ECCE4 A1 41 00 18 */ lhz r10, 0x18(r1) /* 800EFD88 000ECCE8 38 C0 00 00 */ li r6, 0 /* 800EFD8C 000ECCEC 38 00 00 03 */ li r0, 3 /* 800EFD90 000ECCF0 90 81 00 3C */ stw r4, 0x3c(r1) /* 800EFD94 000ECCF4 3C A0 80 47 */ lis r5, lbl_8046C504@ha /* 800EFD98 000ECCF8 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800EFD9C 000ECCFC 90 61 00 38 */ stw r3, 0x38(r1) /* 800EFDA0 000ECD00 38 E5 C5 04 */ addi r7, r5, lbl_8046C504@l /* 800EFDA4 000ECD04 39 24 66 A0 */ addi r9, r4, sZeroVector__9CVector3f@l /* 800EFDA8 000ECD08 7F E3 FB 78 */ mr r3, r31 /* 800EFDAC 000ECD0C 90 C1 00 44 */ stw r6, 0x44(r1) /* 800EFDB0 000ECD10 38 81 00 14 */ addi r4, r1, 0x14 /* 800EFDB4 000ECD14 38 A1 00 10 */ addi r5, r1, 0x10 /* 800EFDB8 000ECD18 39 01 00 38 */ addi r8, r1, 0x38 /* 800EFDBC 000ECD1C 90 C1 00 40 */ stw r6, 0x40(r1) /* 800EFDC0 000ECD20 38 C1 00 08 */ addi r6, r1, 8 /* 800EFDC4 000ECD24 90 01 00 48 */ stw r0, 0x48(r1) /* 800EFDC8 000ECD28 B1 41 00 08 */ sth r10, 8(r1) /* 800EFDCC 000ECD2C A0 1E 00 08 */ lhz r0, 8(r30) /* 800EFDD0 000ECD30 B0 01 00 0C */ sth r0, 0xc(r1) /* 800EFDD4 000ECD34 B0 01 00 10 */ sth r0, 0x10(r1) /* 800EFDD8 000ECD38 B1 41 00 14 */ sth r10, 0x14(r1) /* 800EFDDC 000ECD3C 4B F5 A2 C5 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f lbl_800EFDE0: /* 800EFDE0 000ECD40 80 01 00 64 */ lwz r0, 0x64(r1) /* 800EFDE4 000ECD44 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 800EFDE8 000ECD48 83 C1 00 58 */ lwz r30, 0x58(r1) /* 800EFDEC 000ECD4C 83 A1 00 54 */ lwz r29, 0x54(r1) /* 800EFDF0 000ECD50 7C 08 03 A6 */ mtlr r0 /* 800EFDF4 000ECD54 38 21 00 60 */ addi r1, r1, 0x60 /* 800EFDF8 000ECD58 4E 80 00 20 */ blr .global ComputeMaxSpeed__10CMorphBallCFv ComputeMaxSpeed__10CMorphBallCFv: /* 800EFDFC 000ECD5C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800EFE00 000ECD60 7C 08 02 A6 */ mflr r0 /* 800EFE04 000ECD64 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800EFE08 000ECD68 90 01 00 24 */ stw r0, 0x24(r1) /* 800EFE0C 000ECD6C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800EFE10 000ECD70 7C 7F 1B 78 */ mr r31, r3 /* 800EFE14 000ECD74 D0 01 00 08 */ stfs f0, 8(r1) /* 800EFE18 000ECD78 48 00 1B B9 */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800EFE1C 000ECD7C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800EFE20 000ECD80 41 82 00 40 */ beq lbl_800EFE60 /* 800EFE24 000ECD84 80 7F 00 00 */ lwz r3, 0(r31) /* 800EFE28 000ECD88 38 63 01 38 */ addi r3, r3, 0x138 /* 800EFE2C 000ECD8C 48 22 4A 8D */ bl Magnitude__9CVector3fCFv /* 800EFE30 000ECD90 C0 42 92 08 */ lfs f2, lbl_805AAF28@sda21(r2) /* 800EFE34 000ECD94 C0 02 92 04 */ lfs f0, lbl_805AAF24@sda21(r2) /* 800EFE38 000ECD98 EC 22 00 72 */ fmuls f1, f2, f1 /* 800EFE3C 000ECD9C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800EFE40 000ECDA0 D0 21 00 08 */ stfs f1, 8(r1) /* 800EFE44 000ECDA4 40 80 00 0C */ bge lbl_800EFE50 /* 800EFE48 000ECDA8 38 61 00 08 */ addi r3, r1, 8 /* 800EFE4C 000ECDAC 48 00 00 08 */ b lbl_800EFE54 lbl_800EFE50: /* 800EFE50 000ECDB0 38 62 92 04 */ addi r3, r2, lbl_805AAF24@sda21 lbl_800EFE54: /* 800EFE54 000ECDB4 C0 03 00 00 */ lfs f0, 0(r3) /* 800EFE58 000ECDB8 D0 01 00 08 */ stfs f0, 8(r1) /* 800EFE5C 000ECDBC 48 00 00 34 */ b lbl_800EFE90 lbl_800EFE60: /* 800EFE60 000ECDC0 80 7F 00 00 */ lwz r3, 0(r31) /* 800EFE64 000ECDC4 80 03 02 B0 */ lwz r0, 0x2b0(r3) /* 800EFE68 000ECDC8 2C 00 00 02 */ cmpwi r0, 2 /* 800EFE6C 000ECDCC 40 82 00 0C */ bne lbl_800EFE78 /* 800EFE70 000ECDD0 80 03 02 AC */ lwz r0, 0x2ac(r3) /* 800EFE74 000ECDD4 48 00 00 08 */ b lbl_800EFE7C lbl_800EFE78: /* 800EFE78 000ECDD8 38 00 00 04 */ li r0, 4 lbl_800EFE7C: /* 800EFE7C 000ECDDC 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800EFE80 000ECDE0 54 00 10 3A */ slwi r0, r0, 2 /* 800EFE84 000ECDE4 7C 63 02 14 */ add r3, r3, r0 /* 800EFE88 000ECDE8 C0 03 00 44 */ lfs f0, 0x44(r3) /* 800EFE8C 000ECDEC D0 01 00 08 */ stfs f0, 8(r1) lbl_800EFE90: /* 800EFE90 000ECDF0 80 01 00 24 */ lwz r0, 0x24(r1) /* 800EFE94 000ECDF4 C0 21 00 08 */ lfs f1, 8(r1) /* 800EFE98 000ECDF8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800EFE9C 000ECDFC 7C 08 03 A6 */ mtlr r0 /* 800EFEA0 000ECE00 38 21 00 20 */ addi r1, r1, 0x20 /* 800EFEA4 000ECE04 4E 80 00 20 */ blr .global SpinToSpeed__10CMorphBallFfRC9CVector3ff SpinToSpeed__10CMorphBallFfRC9CVector3ff: /* 800EFEA8 000ECE08 94 21 FF B0 */ stwu r1, -0x50(r1) /* 800EFEAC 000ECE0C 7C 08 02 A6 */ mflr r0 /* 800EFEB0 000ECE10 90 01 00 54 */ stw r0, 0x54(r1) /* 800EFEB4 000ECE14 DB E1 00 40 */ stfd f31, 0x40(r1) /* 800EFEB8 000ECE18 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 800EFEBC 000ECE1C DB C1 00 30 */ stfd f30, 0x30(r1) /* 800EFEC0 000ECE20 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 800EFEC4 000ECE24 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800EFEC8 000ECE28 93 C1 00 28 */ stw r30, 0x28(r1) /* 800EFECC 000ECE2C 7C 7E 1B 78 */ mr r30, r3 /* 800EFED0 000ECE30 FF C0 08 90 */ fmr f30, f1 /* 800EFED4 000ECE34 80 63 00 00 */ lwz r3, 0(r3) /* 800EFED8 000ECE38 FF E0 10 90 */ fmr f31, f2 /* 800EFEDC 000ECE3C 7C 9F 23 78 */ mr r31, r4 /* 800EFEE0 000ECE40 38 63 01 44 */ addi r3, r3, 0x144 /* 800EFEE4 000ECE44 4B F2 B6 4D */ bl GetVector__10CAxisAngleCFv /* 800EFEE8 000ECE48 C0 03 00 00 */ lfs f0, 0(r3) /* 800EFEEC 000ECE4C D0 01 00 14 */ stfs f0, 0x14(r1) /* 800EFEF0 000ECE50 C0 03 00 04 */ lfs f0, 4(r3) /* 800EFEF4 000ECE54 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800EFEF8 000ECE58 C0 03 00 08 */ lfs f0, 8(r3) /* 800EFEFC 000ECE5C 38 61 00 14 */ addi r3, r1, 0x14 /* 800EFF00 000ECE60 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800EFF04 000ECE64 48 22 49 B5 */ bl Magnitude__9CVector3fCFv /* 800EFF08 000ECE68 EC 7E 08 28 */ fsubs f3, f30, f1 /* 800EFF0C 000ECE6C C0 5F 00 04 */ lfs f2, 4(r31) /* 800EFF10 000ECE70 C0 3F 00 08 */ lfs f1, 8(r31) /* 800EFF14 000ECE74 38 81 00 08 */ addi r4, r1, 8 /* 800EFF18 000ECE78 C0 1F 00 00 */ lfs f0, 0(r31) /* 800EFF1C 000ECE7C EC 7F 00 F2 */ fmuls f3, f31, f3 /* 800EFF20 000ECE80 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800EFF24 000ECE84 EC 23 00 72 */ fmuls f1, f3, f1 /* 800EFF28 000ECE88 EC 03 00 32 */ fmuls f0, f3, f0 /* 800EFF2C 000ECE8C D0 41 00 0C */ stfs f2, 0xc(r1) /* 800EFF30 000ECE90 D0 01 00 08 */ stfs f0, 8(r1) /* 800EFF34 000ECE94 D0 21 00 10 */ stfs f1, 0x10(r1) /* 800EFF38 000ECE98 80 7E 00 00 */ lwz r3, 0(r30) /* 800EFF3C 000ECE9C 48 02 C4 05 */ bl ApplyTorqueWR__13CPhysicsActorFRC9CVector3f /* 800EFF40 000ECEA0 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 800EFF44 000ECEA4 CB E1 00 40 */ lfd f31, 0x40(r1) /* 800EFF48 000ECEA8 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 800EFF4C 000ECEAC CB C1 00 30 */ lfd f30, 0x30(r1) /* 800EFF50 000ECEB0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800EFF54 000ECEB4 80 01 00 54 */ lwz r0, 0x54(r1) /* 800EFF58 000ECEB8 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800EFF5C 000ECEBC 7C 08 03 A6 */ mtlr r0 /* 800EFF60 000ECEC0 38 21 00 50 */ addi r1, r1, 0x50 /* 800EFF64 000ECEC4 4E 80 00 20 */ blr .global ApplyGravity__10CMorphBallFR13CStateManager ApplyGravity__10CMorphBallFR13CStateManager: /* 800EFF68 000ECEC8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800EFF6C 000ECECC 7C 08 02 A6 */ mflr r0 /* 800EFF70 000ECED0 90 01 00 14 */ stw r0, 0x14(r1) /* 800EFF74 000ECED4 93 E1 00 0C */ stw r31, 0xc(r1) /* 800EFF78 000ECED8 7C 9F 23 78 */ mr r31, r4 /* 800EFF7C 000ECEDC 93 C1 00 08 */ stw r30, 8(r1) /* 800EFF80 000ECEE0 7C 7E 1B 78 */ mr r30, r3 /* 800EFF84 000ECEE4 80 63 00 00 */ lwz r3, 0(r3) /* 800EFF88 000ECEE8 48 19 50 85 */ bl CheckSubmerged__7CPlayerCFv /* 800EFF8C 000ECEEC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800EFF90 000ECEF0 41 82 00 44 */ beq lbl_800EFFD4 /* 800EFF94 000ECEF4 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 800EFF98 000ECEF8 38 80 00 15 */ li r4, 0x15 /* 800EFF9C 000ECEFC 80 63 00 00 */ lwz r3, 0(r3) /* 800EFFA0 000ECF00 4B FA 1B 21 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 800EFFA4 000ECF04 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800EFFA8 000ECF08 40 82 00 2C */ bne lbl_800EFFD4 /* 800EFFAC 000ECF0C 80 9E 00 00 */ lwz r4, 0(r30) /* 800EFFB0 000ECF10 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800EFFB4 000ECF14 C0 44 00 E8 */ lfs f2, 0xe8(r4) /* 800EFFB8 000ECF18 C0 23 00 E8 */ lfs f1, 0xe8(r3) /* 800EFFBC 000ECF1C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800EFFC0 000ECF20 EC 22 00 72 */ fmuls f1, f2, f1 /* 800EFFC4 000ECF24 D0 04 01 50 */ stfs f0, 0x150(r4) /* 800EFFC8 000ECF28 D0 04 01 54 */ stfs f0, 0x154(r4) /* 800EFFCC 000ECF2C D0 24 01 58 */ stfs f1, 0x158(r4) /* 800EFFD0 000ECF30 48 00 00 28 */ b lbl_800EFFF8 lbl_800EFFD4: /* 800EFFD4 000ECF34 80 9E 00 00 */ lwz r4, 0(r30) /* 800EFFD8 000ECF38 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800EFFDC 000ECF3C C0 44 00 E8 */ lfs f2, 0xe8(r4) /* 800EFFE0 000ECF40 C0 23 00 E4 */ lfs f1, 0xe4(r3) /* 800EFFE4 000ECF44 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800EFFE8 000ECF48 EC 22 00 72 */ fmuls f1, f2, f1 /* 800EFFEC 000ECF4C D0 04 01 50 */ stfs f0, 0x150(r4) /* 800EFFF0 000ECF50 D0 04 01 54 */ stfs f0, 0x154(r4) /* 800EFFF4 000ECF54 D0 24 01 58 */ stfs f1, 0x158(r4) lbl_800EFFF8: /* 800EFFF8 000ECF58 80 01 00 14 */ lwz r0, 0x14(r1) /* 800EFFFC 000ECF5C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F0000 000ECF60 83 C1 00 08 */ lwz r30, 8(r1) /* 800F0004 000ECF64 7C 08 03 A6 */ mtlr r0 /* 800F0008 000ECF68 38 21 00 10 */ addi r1, r1, 0x10 /* 800F000C 000ECF6C 4E 80 00 20 */ blr .global CalculateSurfaceFriction__10CMorphBallCFv CalculateSurfaceFriction__10CMorphBallCFv: /* 800F0010 000ECF70 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F0014 000ECF74 80 C3 00 00 */ lwz r6, 0(r3) /* 800F0018 000ECF78 80 06 02 B0 */ lwz r0, 0x2b0(r6) /* 800F001C 000ECF7C 2C 00 00 02 */ cmpwi r0, 2 /* 800F0020 000ECF80 40 82 00 0C */ bne lbl_800F002C /* 800F0024 000ECF84 80 06 02 AC */ lwz r0, 0x2ac(r6) /* 800F0028 000ECF88 48 00 00 08 */ b lbl_800F0030 lbl_800F002C: /* 800F002C 000ECF8C 38 00 00 04 */ li r0, 4 lbl_800F0030: /* 800F0030 000ECF90 80 AD A1 1C */ lwz r5, gpTweakBall@sda21(r13) /* 800F0034 000ECF94 54 04 10 3A */ slwi r4, r0, 2 /* 800F0038 000ECF98 A0 66 02 6C */ lhz r3, 0x26c(r6) /* 800F003C 000ECF9C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800F0040 000ECFA0 7C 85 22 14 */ add r4, r5, r4 /* 800F0044 000ECFA4 C0 24 00 24 */ lfs f1, 0x24(r4) /* 800F0048 000ECFA8 7C 03 00 40 */ cmplw r3, r0 /* 800F004C 000ECFAC 41 82 00 0C */ beq lbl_800F0058 /* 800F0050 000ECFB0 C0 02 91 D8 */ lfs f0, lbl_805AAEF8@sda21(r2) /* 800F0054 000ECFB4 EC 21 00 32 */ fmuls f1, f1, f0 lbl_800F0058: /* 800F0058 000ECFB8 80 06 02 78 */ lwz r0, 0x278(r6) /* 800F005C 000ECFBC 2C 00 00 00 */ cmpwi r0, 0 /* 800F0060 000ECFC0 40 81 00 2C */ ble lbl_800F008C /* 800F0064 000ECFC4 6C 03 80 00 */ xoris r3, r0, 0x8000 /* 800F0068 000ECFC8 3C 00 43 30 */ lis r0, 0x4330 /* 800F006C 000ECFCC 90 61 00 0C */ stw r3, 0xc(r1) /* 800F0070 000ECFD0 C8 42 92 10 */ lfd f2, lbl_805AAF30@sda21(r2) /* 800F0074 000ECFD4 90 01 00 08 */ stw r0, 8(r1) /* 800F0078 000ECFD8 C0 62 92 08 */ lfs f3, lbl_805AAF28@sda21(r2) /* 800F007C 000ECFDC C8 01 00 08 */ lfd f0, 8(r1) /* 800F0080 000ECFE0 EC 00 10 28 */ fsubs f0, f0, f2 /* 800F0084 000ECFE4 EC 03 00 32 */ fmuls f0, f3, f0 /* 800F0088 000ECFE8 EC 21 00 32 */ fmuls f1, f1, f0 lbl_800F008C: /* 800F008C 000ECFEC 38 21 00 10 */ addi r1, r1, 0x10 /* 800F0090 000ECFF0 4E 80 00 20 */ blr .global ComputeLiftForces__10CMorphBallFRC9CVector3fRC9CVector3fRC13CStateManager ComputeLiftForces__10CMorphBallFRC9CVector3fRC9CVector3fRC13CStateManager: /* 800F0094 000ECFF4 94 21 FE 10 */ stwu r1, -0x1f0(r1) /* 800F0098 000ECFF8 7C 08 02 A6 */ mflr r0 /* 800F009C 000ECFFC 90 01 01 F4 */ stw r0, 0x1f4(r1) /* 800F00A0 000ED000 DB E1 01 E0 */ stfd f31, 0x1e0(r1) /* 800F00A4 000ED004 F3 E1 01 E8 */ psq_st f31, 488(r1), 0, qr0 /* 800F00A8 000ED008 DB C1 01 D0 */ stfd f30, 0x1d0(r1) /* 800F00AC 000ED00C F3 C1 01 D8 */ psq_st f30, 472(r1), 0, qr0 /* 800F00B0 000ED010 93 E1 01 CC */ stw r31, 0x1cc(r1) /* 800F00B4 000ED014 93 C1 01 C8 */ stw r30, 0x1c8(r1) /* 800F00B8 000ED018 93 A1 01 C4 */ stw r29, 0x1c4(r1) /* 800F00BC 000ED01C 7C 7D 1B 78 */ mr r29, r3 /* 800F00C0 000ED020 7C 9E 23 78 */ mr r30, r4 /* 800F00C4 000ED024 7C DF 33 78 */ mr r31, r6 /* 800F00C8 000ED028 7C A3 2B 78 */ mr r3, r5 /* 800F00CC 000ED02C 48 22 47 ED */ bl Magnitude__9CVector3fCFv /* 800F00D0 000ED030 80 1D 1C D0 */ lwz r0, 0x1cd0(r29) /* 800F00D4 000ED034 2C 00 00 0F */ cmpwi r0, 0xf /* 800F00D8 000ED038 40 80 00 24 */ bge lbl_800F00FC /* 800F00DC 000ED03C 54 00 10 3A */ slwi r0, r0, 2 /* 800F00E0 000ED040 7C 7D 02 14 */ add r3, r29, r0 /* 800F00E4 000ED044 34 63 1C D4 */ addic. r3, r3, 0x1cd4 /* 800F00E8 000ED048 41 82 00 08 */ beq lbl_800F00F0 /* 800F00EC 000ED04C D0 23 00 00 */ stfs f1, 0(r3) lbl_800F00F0: /* 800F00F0 000ED050 80 7D 1C D0 */ lwz r3, 0x1cd0(r29) /* 800F00F4 000ED054 38 03 00 01 */ addi r0, r3, 1 /* 800F00F8 000ED058 90 1D 1C D0 */ stw r0, 0x1cd0(r29) lbl_800F00FC: /* 800F00FC 000ED05C 80 7D 1C D0 */ lwz r3, 0x1cd0(r29) /* 800F0100 000ED060 38 FD 1C D4 */ addi r7, r29, 0x1cd4 /* 800F0104 000ED064 34 A3 FF FF */ addic. r5, r3, -1 /* 800F0108 000ED068 54 A0 10 3A */ slwi r0, r5, 2 /* 800F010C 000ED06C 7C A3 2B 78 */ mr r3, r5 /* 800F0110 000ED070 7C C7 02 14 */ add r6, r7, r0 /* 800F0114 000ED074 40 81 00 C4 */ ble lbl_800F01D8 /* 800F0118 000ED078 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f /* 800F011C 000ED07C 7C 09 03 A6 */ mtctr r0 /* 800F0120 000ED080 41 82 00 98 */ beq lbl_800F01B8 lbl_800F0124: /* 800F0124 000ED084 38 85 FF FF */ addi r4, r5, -1 /* 800F0128 000ED088 54 80 10 3A */ slwi r0, r4, 2 /* 800F012C 000ED08C 7C 07 04 2E */ lfsx f0, r7, r0 /* 800F0130 000ED090 38 85 FF FE */ addi r4, r5, -2 /* 800F0134 000ED094 54 80 10 3A */ slwi r0, r4, 2 /* 800F0138 000ED098 D0 06 00 00 */ stfs f0, 0(r6) /* 800F013C 000ED09C 38 85 FF FD */ addi r4, r5, -3 /* 800F0140 000ED0A0 7C 07 04 2E */ lfsx f0, r7, r0 /* 800F0144 000ED0A4 54 80 10 3A */ slwi r0, r4, 2 /* 800F0148 000ED0A8 38 85 FF FC */ addi r4, r5, -4 /* 800F014C 000ED0AC D0 06 FF FC */ stfs f0, -4(r6) /* 800F0150 000ED0B0 7C 07 04 2E */ lfsx f0, r7, r0 /* 800F0154 000ED0B4 54 80 10 3A */ slwi r0, r4, 2 /* 800F0158 000ED0B8 38 85 FF FB */ addi r4, r5, -5 /* 800F015C 000ED0BC D0 06 FF F8 */ stfs f0, -8(r6) /* 800F0160 000ED0C0 7C 07 04 2E */ lfsx f0, r7, r0 /* 800F0164 000ED0C4 54 80 10 3A */ slwi r0, r4, 2 /* 800F0168 000ED0C8 38 85 FF FA */ addi r4, r5, -6 /* 800F016C 000ED0CC D0 06 FF F4 */ stfs f0, -0xc(r6) /* 800F0170 000ED0D0 7C 07 04 2E */ lfsx f0, r7, r0 /* 800F0174 000ED0D4 54 80 10 3A */ slwi r0, r4, 2 /* 800F0178 000ED0D8 38 85 FF F9 */ addi r4, r5, -7 /* 800F017C 000ED0DC D0 06 FF F0 */ stfs f0, -0x10(r6) /* 800F0180 000ED0E0 7C 07 04 2E */ lfsx f0, r7, r0 /* 800F0184 000ED0E4 54 80 10 3A */ slwi r0, r4, 2 /* 800F0188 000ED0E8 38 85 FF F8 */ addi r4, r5, -8 /* 800F018C 000ED0EC 38 A5 FF F8 */ addi r5, r5, -8 /* 800F0190 000ED0F0 D0 06 FF EC */ stfs f0, -0x14(r6) /* 800F0194 000ED0F4 7C 07 04 2E */ lfsx f0, r7, r0 /* 800F0198 000ED0F8 54 80 10 3A */ slwi r0, r4, 2 /* 800F019C 000ED0FC D0 06 FF E8 */ stfs f0, -0x18(r6) /* 800F01A0 000ED100 7C 07 04 2E */ lfsx f0, r7, r0 /* 800F01A4 000ED104 D0 06 FF E4 */ stfs f0, -0x1c(r6) /* 800F01A8 000ED108 38 C6 FF E0 */ addi r6, r6, -32 /* 800F01AC 000ED10C 42 00 FF 78 */ bdnz lbl_800F0124 /* 800F01B0 000ED110 70 63 00 07 */ andi. r3, r3, 7 /* 800F01B4 000ED114 41 82 00 24 */ beq lbl_800F01D8 lbl_800F01B8: /* 800F01B8 000ED118 7C 69 03 A6 */ mtctr r3 lbl_800F01BC: /* 800F01BC 000ED11C 38 85 FF FF */ addi r4, r5, -1 /* 800F01C0 000ED120 38 A5 FF FF */ addi r5, r5, -1 /* 800F01C4 000ED124 54 80 10 3A */ slwi r0, r4, 2 /* 800F01C8 000ED128 7C 07 04 2E */ lfsx f0, r7, r0 /* 800F01CC 000ED12C D0 06 00 00 */ stfs f0, 0(r6) /* 800F01D0 000ED130 38 C6 FF FC */ addi r6, r6, -4 /* 800F01D4 000ED134 42 00 FF E8 */ bdnz lbl_800F01BC lbl_800F01D8: /* 800F01D8 000ED138 D0 27 00 00 */ stfs f1, 0(r7) /* 800F01DC 000ED13C 7F C4 F3 78 */ mr r4, r30 /* 800F01E0 000ED140 38 7D 1D 10 */ addi r3, r29, 0x1d10 /* 800F01E4 000ED144 48 00 04 5D */ bl sub_800f0640 /* 800F01E8 000ED148 38 61 00 68 */ addi r3, r1, 0x68 /* 800F01EC 000ED14C 38 9D 1D 10 */ addi r4, r29, 0x1d10 /* 800F01F0 000ED150 48 00 03 DD */ bl "GetAverage__31TReservedAverage<9CVector3f,15>CFv" /* 800F01F4 000ED154 C0 41 00 68 */ lfs f2, 0x68(r1) /* 800F01F8 000ED158 38 00 00 00 */ li r0, 0 /* 800F01FC 000ED15C C0 21 00 6C */ lfs f1, 0x6c(r1) /* 800F0200 000ED160 38 61 00 90 */ addi r3, r1, 0x90 /* 800F0204 000ED164 C0 01 00 70 */ lfs f0, 0x70(r1) /* 800F0208 000ED168 D0 41 00 90 */ stfs f2, 0x90(r1) /* 800F020C 000ED16C D0 21 00 94 */ stfs f1, 0x94(r1) /* 800F0210 000ED170 D0 01 00 98 */ stfs f0, 0x98(r1) /* 800F0214 000ED174 98 01 00 74 */ stb r0, 0x74(r1) /* 800F0218 000ED178 48 22 46 A1 */ bl Magnitude__9CVector3fCFv /* 800F021C 000ED17C FF E0 08 90 */ fmr f31, f1 /* 800F0220 000ED180 C0 02 92 18 */ lfs f0, lbl_805AAF38@sda21(r2) /* 800F0224 000ED184 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F0228 000ED188 40 81 03 18 */ ble lbl_800F0540 /* 800F022C 000ED18C 38 61 00 18 */ addi r3, r1, 0x18 /* 800F0230 000ED190 38 9D 1C D0 */ addi r4, r29, 0x1cd0 /* 800F0234 000ED194 48 00 03 39 */ bl "GetAverage__22TReservedAverageCFv" /* 800F0238 000ED198 C3 C1 00 18 */ lfs f30, 0x18(r1) /* 800F023C 000ED19C 38 00 00 00 */ li r0, 0 /* 800F0240 000ED1A0 C0 02 91 7C */ lfs f0, lbl_805AAE9C@sda21(r2) /* 800F0244 000ED1A4 98 01 00 1C */ stb r0, 0x1c(r1) /* 800F0248 000ED1A8 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 800F024C 000ED1AC 40 80 02 F4 */ bge lbl_800F0540 /* 800F0250 000ED1B0 80 9D 00 00 */ lwz r4, 0(r29) /* 800F0254 000ED1B4 38 61 01 58 */ addi r3, r1, 0x158 /* 800F0258 000ED1B8 81 84 00 00 */ lwz r12, 0(r4) /* 800F025C 000ED1BC 81 8C 00 70 */ lwz r12, 0x70(r12) /* 800F0260 000ED1C0 7D 89 03 A6 */ mtctr r12 /* 800F0264 000ED1C4 4E 80 04 21 */ bctrl /* 800F0268 000ED1C8 38 61 01 88 */ addi r3, r1, 0x188 /* 800F026C 000ED1CC 38 81 01 58 */ addi r4, r1, 0x158 /* 800F0270 000ED1D0 48 22 29 05 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F0274 000ED1D4 80 7D 00 00 */ lwz r3, 0(r29) /* 800F0278 000ED1D8 81 83 00 00 */ lwz r12, 0(r3) /* 800F027C 000ED1DC 81 8C 00 6C */ lwz r12, 0x6c(r12) /* 800F0280 000ED1E0 7D 89 03 A6 */ mtctr r12 /* 800F0284 000ED1E4 4E 80 04 21 */ bctrl /* 800F0288 000ED1E8 7C 64 1B 78 */ mr r4, r3 /* 800F028C 000ED1EC 38 61 00 B8 */ addi r3, r1, 0xb8 /* 800F0290 000ED1F0 81 84 00 00 */ lwz r12, 0(r4) /* 800F0294 000ED1F4 38 A1 01 88 */ addi r5, r1, 0x188 /* 800F0298 000ED1F8 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800F029C 000ED1FC 7D 89 03 A6 */ mtctr r12 /* 800F02A0 000ED200 4E 80 04 21 */ bctrl /* 800F02A4 000ED204 C0 21 00 C4 */ lfs f1, 0xc4(r1) /* 800F02A8 000ED208 38 61 00 E8 */ addi r3, r1, 0xe8 /* 800F02AC 000ED20C C0 E2 91 E4 */ lfs f7, lbl_805AAF04@sda21(r2) /* 800F02B0 000ED210 38 81 00 5C */ addi r4, r1, 0x5c /* 800F02B4 000ED214 C0 41 00 C8 */ lfs f2, 0xc8(r1) /* 800F02B8 000ED218 38 A1 00 50 */ addi r5, r1, 0x50 /* 800F02BC 000ED21C C0 01 00 B8 */ lfs f0, 0xb8(r1) /* 800F02C0 000ED220 EC C1 38 2A */ fadds f6, f1, f7 /* 800F02C4 000ED224 C0 21 00 BC */ lfs f1, 0xbc(r1) /* 800F02C8 000ED228 EC A2 38 2A */ fadds f5, f2, f7 /* 800F02CC 000ED22C EC 40 38 28 */ fsubs f2, f0, f7 /* 800F02D0 000ED230 C0 61 00 CC */ lfs f3, 0xcc(r1) /* 800F02D4 000ED234 C0 82 92 1C */ lfs f4, lbl_805AAF3C@sda21(r2) /* 800F02D8 000ED238 C0 01 00 C0 */ lfs f0, 0xc0(r1) /* 800F02DC 000ED23C EC 21 38 28 */ fsubs f1, f1, f7 /* 800F02E0 000ED240 EC 63 20 2A */ fadds f3, f3, f4 /* 800F02E4 000ED244 EC 00 20 28 */ fsubs f0, f0, f4 /* 800F02E8 000ED248 D0 C1 00 50 */ stfs f6, 0x50(r1) /* 800F02EC 000ED24C D0 A1 00 54 */ stfs f5, 0x54(r1) /* 800F02F0 000ED250 D0 61 00 58 */ stfs f3, 0x58(r1) /* 800F02F4 000ED254 D0 41 00 5C */ stfs f2, 0x5c(r1) /* 800F02F8 000ED258 D0 21 00 60 */ stfs f1, 0x60(r1) /* 800F02FC 000ED25C D0 01 00 64 */ stfs f0, 0x64(r1) /* 800F0300 000ED260 48 24 82 09 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 800F0304 000ED264 38 00 00 00 */ li r0, 0 /* 800F0308 000ED268 80 AD 88 D4 */ lwz r5, lbl_805A7494@sda21(r13) /* 800F030C 000ED26C 90 01 00 14 */ stw r0, 0x14(r1) /* 800F0310 000ED270 38 60 00 00 */ li r3, 0 /* 800F0314 000ED274 38 80 00 01 */ li r4, 1 /* 800F0318 000ED278 90 01 00 10 */ stw r0, 0x10(r1) /* 800F031C 000ED27C 48 29 9B D9 */ bl __shl2i /* 800F0320 000ED280 80 01 00 10 */ lwz r0, 0x10(r1) /* 800F0324 000ED284 80 A1 00 14 */ lwz r5, 0x14(r1) /* 800F0328 000ED288 7C 00 1B 78 */ or r0, r0, r3 /* 800F032C 000ED28C 38 61 01 30 */ addi r3, r1, 0x130 /* 800F0330 000ED290 7C A5 23 78 */ or r5, r5, r4 /* 800F0334 000ED294 90 01 00 10 */ stw r0, 0x10(r1) /* 800F0338 000ED298 38 81 00 10 */ addi r4, r1, 0x10 /* 800F033C 000ED29C 90 A1 00 14 */ stw r5, 0x14(r1) /* 800F0340 000ED2A0 48 1D F5 75 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList /* 800F0344 000ED2A4 C0 A1 00 E8 */ lfs f5, 0xe8(r1) /* 800F0348 000ED2A8 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha /* 800F034C 000ED2AC 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l /* 800F0350 000ED2B0 C0 81 00 EC */ lfs f4, 0xec(r1) /* 800F0354 000ED2B4 C0 61 00 F0 */ lfs f3, 0xf0(r1) /* 800F0358 000ED2B8 3C 80 80 5A */ lis r4, sIdentity__12CTransform4f@ha /* 800F035C 000ED2BC C0 41 00 F4 */ lfs f2, 0xf4(r1) /* 800F0360 000ED2C0 3C 60 80 5A */ lis r3, skPassEverything__15CMaterialFilter@ha /* 800F0364 000ED2C4 C0 21 00 F8 */ lfs f1, 0xf8(r1) /* 800F0368 000ED2C8 38 A4 66 70 */ addi r5, r4, sIdentity__12CTransform4f@l /* 800F036C 000ED2CC C0 01 00 FC */ lfs f0, 0xfc(r1) /* 800F0370 000ED2D0 38 C3 FD 18 */ addi r6, r3, skPassEverything__15CMaterialFilter@l /* 800F0374 000ED2D4 90 01 01 30 */ stw r0, 0x130(r1) /* 800F0378 000ED2D8 7F E3 FB 78 */ mr r3, r31 /* 800F037C 000ED2DC 38 81 01 30 */ addi r4, r1, 0x130 /* 800F0380 000ED2E0 D0 A1 01 40 */ stfs f5, 0x140(r1) /* 800F0384 000ED2E4 D0 81 01 44 */ stfs f4, 0x144(r1) /* 800F0388 000ED2E8 D0 61 01 48 */ stfs f3, 0x148(r1) /* 800F038C 000ED2EC D0 41 01 4C */ stfs f2, 0x14c(r1) /* 800F0390 000ED2F0 D0 21 01 50 */ stfs f1, 0x150(r1) /* 800F0394 000ED2F4 D0 01 01 54 */ stfs f0, 0x154(r1) /* 800F0398 000ED2F8 48 09 30 09 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter /* 800F039C 000ED2FC 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha /* 800F03A0 000ED300 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F03A4 000ED304 38 84 CA D0 */ addi r4, r4, lbl_803ECAD0@l /* 800F03A8 000ED308 3C 60 80 3E */ lis r3, __vt__19CCollisionPrimitive@ha /* 800F03AC 000ED30C 90 81 01 30 */ stw r4, 0x130(r1) /* 800F03B0 000ED310 38 63 97 E4 */ addi r3, r3, __vt__19CCollisionPrimitive@l /* 800F03B4 000ED314 90 61 01 30 */ stw r3, 0x130(r1) /* 800F03B8 000ED318 41 82 01 88 */ beq lbl_800F0540 /* 800F03BC 000ED31C 7F A3 EB 78 */ mr r3, r29 /* 800F03C0 000ED320 48 00 8A 45 */ bl GetBallRadius__10CMorphBallCFv /* 800F03C4 000ED324 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F03C8 000ED328 38 60 00 00 */ li r3, 0 /* 800F03CC 000ED32C C0 C2 92 20 */ lfs f6, lbl_805AAF40@sda21(r2) /* 800F03D0 000ED330 38 80 00 01 */ li r4, 1 /* 800F03D4 000ED334 ED 20 F8 24 */ fdivs f9, f0, f31 /* 800F03D8 000ED338 C0 61 00 90 */ lfs f3, 0x90(r1) /* 800F03DC 000ED33C C0 41 00 94 */ lfs f2, 0x94(r1) /* 800F03E0 000ED340 C0 01 00 98 */ lfs f0, 0x98(r1) /* 800F03E4 000ED344 C0 81 01 94 */ lfs f4, 0x194(r1) /* 800F03E8 000ED348 C0 A2 91 50 */ lfs f5, lbl_805AAE70@sda21(r2) /* 800F03EC 000ED34C ED 09 00 F2 */ fmuls f8, f9, f3 /* 800F03F0 000ED350 C0 61 01 A4 */ lfs f3, 0x1a4(r1) /* 800F03F4 000ED354 EC E9 00 B2 */ fmuls f7, f9, f2 /* 800F03F8 000ED358 C0 41 01 B4 */ lfs f2, 0x1b4(r1) /* 800F03FC 000ED35C EC C6 00 72 */ fmuls f6, f6, f1 /* 800F0400 000ED360 80 AD 88 D8 */ lwz r5, lbl_805A7498@sda21(r13) /* 800F0404 000ED364 EC 23 28 2A */ fadds f1, f3, f5 /* 800F0408 000ED368 D1 01 00 78 */ stfs f8, 0x78(r1) /* 800F040C 000ED36C EC 69 00 32 */ fmuls f3, f9, f0 /* 800F0410 000ED370 EC 84 28 2A */ fadds f4, f4, f5 /* 800F0414 000ED374 D0 E1 00 7C */ stfs f7, 0x7c(r1) /* 800F0418 000ED378 EC 02 30 2A */ fadds f0, f2, f6 /* 800F041C 000ED37C D0 21 00 88 */ stfs f1, 0x88(r1) /* 800F0420 000ED380 D0 81 00 84 */ stfs f4, 0x84(r1) /* 800F0424 000ED384 D0 01 00 8C */ stfs f0, 0x8c(r1) /* 800F0428 000ED388 D0 61 00 80 */ stfs f3, 0x80(r1) /* 800F042C 000ED38C 48 29 9A C9 */ bl __shl2i /* 800F0430 000ED390 39 00 00 01 */ li r8, 1 /* 800F0434 000ED394 38 00 00 00 */ li r0, 0 /* 800F0438 000ED398 90 81 00 D4 */ stw r4, 0xd4(r1) /* 800F043C 000ED39C 7F E4 FB 78 */ mr r4, r31 /* 800F0440 000ED3A0 C0 22 92 24 */ lfs f1, lbl_805AAF44@sda21(r2) /* 800F0444 000ED3A4 38 A1 00 84 */ addi r5, r1, 0x84 /* 800F0448 000ED3A8 90 61 00 D0 */ stw r3, 0xd0(r1) /* 800F044C 000ED3AC 38 61 01 00 */ addi r3, r1, 0x100 /* 800F0450 000ED3B0 38 C1 00 78 */ addi r6, r1, 0x78 /* 800F0454 000ED3B4 38 E1 00 D0 */ addi r7, r1, 0xd0 /* 800F0458 000ED3B8 91 01 00 B0 */ stw r8, 0xb0(r1) /* 800F045C 000ED3BC 90 01 00 DC */ stw r0, 0xdc(r1) /* 800F0460 000ED3C0 90 01 00 D8 */ stw r0, 0xd8(r1) /* 800F0464 000ED3C4 91 01 00 E0 */ stw r8, 0xe0(r1) /* 800F0468 000ED3C8 4B F5 CB 31 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter /* 800F046C 000ED3CC 88 01 01 20 */ lbz r0, 0x120(r1) /* 800F0470 000ED3D0 28 00 00 00 */ cmplwi r0, 0 /* 800F0474 000ED3D4 40 82 00 CC */ bne lbl_800F0540 /* 800F0478 000ED3D8 C0 22 92 28 */ lfs f1, lbl_805AAF48@sda21(r2) /* 800F047C 000ED3DC C0 0D 88 DC */ lfs f0, lbl_805A749C@sda21(r13) /* 800F0480 000ED3E0 EC 3E 08 28 */ fsubs f1, f30, f1 /* 800F0484 000ED3E4 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F0488 000ED3E8 D0 21 00 08 */ stfs f1, 8(r1) /* 800F048C 000ED3EC 40 80 00 0C */ bge lbl_800F0498 /* 800F0490 000ED3F0 38 61 00 08 */ addi r3, r1, 8 /* 800F0494 000ED3F4 48 00 00 08 */ b lbl_800F049C lbl_800F0498: /* 800F0498 000ED3F8 38 6D 88 DC */ addi r3, r13, lbl_805A749C@sda21 lbl_800F049C: /* 800F049C 000ED3FC C0 42 91 5C */ lfs f2, lbl_805AAE7C@sda21(r2) /* 800F04A0 000ED400 C0 03 00 00 */ lfs f0, 0(r3) /* 800F04A4 000ED404 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F04A8 000ED408 EF C2 00 28 */ fsubs f30, f2, f0 /* 800F04AC 000ED40C C0 02 92 2C */ lfs f0, lbl_805AAF4C@sda21(r2) /* 800F04B0 000ED410 D0 21 00 44 */ stfs f1, 0x44(r1) /* 800F04B4 000ED414 EC 00 07 B2 */ fmuls f0, f0, f30 /* 800F04B8 000ED418 D0 21 00 48 */ stfs f1, 0x48(r1) /* 800F04BC 000ED41C D0 01 00 4C */ stfs f0, 0x4c(r1) /* 800F04C0 000ED420 4B F2 B0 75 */ bl Identity__10CAxisAngleFv /* 800F04C4 000ED424 7C 65 1B 78 */ mr r5, r3 /* 800F04C8 000ED428 80 7D 00 00 */ lwz r3, 0(r29) /* 800F04CC 000ED42C 38 81 00 44 */ addi r4, r1, 0x44 /* 800F04D0 000ED430 48 02 BD F5 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 800F04D4 000ED434 C0 5D 19 34 */ lfs f2, 0x1934(r29) /* 800F04D8 000ED438 38 61 00 38 */ addi r3, r1, 0x38 /* 800F04DC 000ED43C C0 3D 19 44 */ lfs f1, 0x1944(r29) /* 800F04E0 000ED440 38 81 00 2C */ addi r4, r1, 0x2c /* 800F04E4 000ED444 C0 1D 19 24 */ lfs f0, 0x1924(r29) /* 800F04E8 000ED448 FC 40 10 50 */ fneg f2, f2 /* 800F04EC 000ED44C C0 62 92 30 */ lfs f3, lbl_805AAF50@sda21(r2) /* 800F04F0 000ED450 FC 20 08 50 */ fneg f1, f1 /* 800F04F4 000ED454 FC 00 00 50 */ fneg f0, f0 /* 800F04F8 000ED458 EC 83 00 B2 */ fmuls f4, f3, f2 /* 800F04FC 000ED45C EC 43 00 72 */ fmuls f2, f3, f1 /* 800F0500 000ED460 EC 23 00 32 */ fmuls f1, f3, f0 /* 800F0504 000ED464 EC BE 01 32 */ fmuls f5, f30, f4 /* 800F0508 000ED468 D0 81 00 24 */ stfs f4, 0x24(r1) /* 800F050C 000ED46C EC 7E 00 B2 */ fmuls f3, f30, f2 /* 800F0510 000ED470 EC 1E 00 72 */ fmuls f0, f30, f1 /* 800F0514 000ED474 D0 21 00 20 */ stfs f1, 0x20(r1) /* 800F0518 000ED478 D0 41 00 28 */ stfs f2, 0x28(r1) /* 800F051C 000ED47C D0 01 00 2C */ stfs f0, 0x2c(r1) /* 800F0520 000ED480 D0 A1 00 30 */ stfs f5, 0x30(r1) /* 800F0524 000ED484 D0 61 00 34 */ stfs f3, 0x34(r1) /* 800F0528 000ED488 4B F2 B0 19 */ bl FromVector__10CAxisAngleFRC9CVector3f /* 800F052C 000ED48C 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800F0530 000ED490 80 7D 00 00 */ lwz r3, 0(r29) /* 800F0534 000ED494 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l /* 800F0538 000ED498 38 A1 00 38 */ addi r5, r1, 0x38 /* 800F053C 000ED49C 48 02 BE 5D */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle lbl_800F0540: /* 800F0540 000ED4A0 E3 E1 01 E8 */ psq_l f31, 488(r1), 0, qr0 /* 800F0544 000ED4A4 CB E1 01 E0 */ lfd f31, 0x1e0(r1) /* 800F0548 000ED4A8 E3 C1 01 D8 */ psq_l f30, 472(r1), 0, qr0 /* 800F054C 000ED4AC CB C1 01 D0 */ lfd f30, 0x1d0(r1) /* 800F0550 000ED4B0 83 E1 01 CC */ lwz r31, 0x1cc(r1) /* 800F0554 000ED4B4 83 C1 01 C8 */ lwz r30, 0x1c8(r1) /* 800F0558 000ED4B8 80 01 01 F4 */ lwz r0, 0x1f4(r1) /* 800F055C 000ED4BC 83 A1 01 C4 */ lwz r29, 0x1c4(r1) /* 800F0560 000ED4C0 7C 08 03 A6 */ mtlr r0 /* 800F0564 000ED4C4 38 21 01 F0 */ addi r1, r1, 0x1f0 /* 800F0568 000ED4C8 4E 80 00 20 */ blr .global "GetAverage__22TReservedAverageCFv" "GetAverage__22TReservedAverageCFv": /* 800F056C 000ED4CC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F0570 000ED4D0 7C 08 02 A6 */ mflr r0 /* 800F0574 000ED4D4 90 01 00 14 */ stw r0, 0x14(r1) /* 800F0578 000ED4D8 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F057C 000ED4DC 7C 7F 1B 78 */ mr r31, r3 /* 800F0580 000ED4E0 80 04 00 00 */ lwz r0, 0(r4) /* 800F0584 000ED4E4 2C 00 00 00 */ cmpwi r0, 0 /* 800F0588 000ED4E8 40 82 00 10 */ bne lbl_800F0598 /* 800F058C 000ED4EC 38 00 00 00 */ li r0, 0 /* 800F0590 000ED4F0 98 1F 00 04 */ stb r0, 4(r31) /* 800F0594 000ED4F4 48 00 00 24 */ b lbl_800F05B8 lbl_800F0598: /* 800F0598 000ED4F8 38 64 00 04 */ addi r3, r4, 4 /* 800F059C 000ED4FC 7C 04 03 78 */ mr r4, r0 /* 800F05A0 000ED500 4B F1 82 F5 */ bl "GetAverageValue__FPCfi" /* 800F05A4 000ED504 38 00 00 01 */ li r0, 1 /* 800F05A8 000ED508 28 1F 00 00 */ cmplwi r31, 0 /* 800F05AC 000ED50C 98 1F 00 04 */ stb r0, 4(r31) /* 800F05B0 000ED510 41 82 00 08 */ beq lbl_800F05B8 /* 800F05B4 000ED514 D0 3F 00 00 */ stfs f1, 0(r31) lbl_800F05B8: /* 800F05B8 000ED518 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F05BC 000ED51C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F05C0 000ED520 7C 08 03 A6 */ mtlr r0 /* 800F05C4 000ED524 38 21 00 10 */ addi r1, r1, 0x10 /* 800F05C8 000ED528 4E 80 00 20 */ blr .global "GetAverage__31TReservedAverage<9CVector3f,15>CFv" "GetAverage__31TReservedAverage<9CVector3f,15>CFv": /* 800F05CC 000ED52C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F05D0 000ED530 7C 08 02 A6 */ mflr r0 /* 800F05D4 000ED534 90 01 00 24 */ stw r0, 0x24(r1) /* 800F05D8 000ED538 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800F05DC 000ED53C 7C 7F 1B 78 */ mr r31, r3 /* 800F05E0 000ED540 80 A4 00 00 */ lwz r5, 0(r4) /* 800F05E4 000ED544 2C 05 00 00 */ cmpwi r5, 0 /* 800F05E8 000ED548 40 82 00 10 */ bne lbl_800F05F8 /* 800F05EC 000ED54C 38 00 00 00 */ li r0, 0 /* 800F05F0 000ED550 98 1F 00 0C */ stb r0, 0xc(r31) /* 800F05F4 000ED554 48 00 00 38 */ b lbl_800F062C lbl_800F05F8: /* 800F05F8 000ED558 38 61 00 08 */ addi r3, r1, 8 /* 800F05FC 000ED55C 38 84 00 04 */ addi r4, r4, 4 /* 800F0600 000ED560 4B F2 AA 41 */ bl "GetAverageValue<9CVector3f>__FPC9CVector3fi" /* 800F0604 000ED564 38 00 00 01 */ li r0, 1 /* 800F0608 000ED568 28 1F 00 00 */ cmplwi r31, 0 /* 800F060C 000ED56C 98 1F 00 0C */ stb r0, 0xc(r31) /* 800F0610 000ED570 41 82 00 1C */ beq lbl_800F062C /* 800F0614 000ED574 C0 01 00 08 */ lfs f0, 8(r1) /* 800F0618 000ED578 D0 1F 00 00 */ stfs f0, 0(r31) /* 800F061C 000ED57C C0 01 00 0C */ lfs f0, 0xc(r1) /* 800F0620 000ED580 D0 1F 00 04 */ stfs f0, 4(r31) /* 800F0624 000ED584 C0 01 00 10 */ lfs f0, 0x10(r1) /* 800F0628 000ED588 D0 1F 00 08 */ stfs f0, 8(r31) lbl_800F062C: /* 800F062C 000ED58C 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F0630 000ED590 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800F0634 000ED594 7C 08 03 A6 */ mtlr r0 /* 800F0638 000ED598 38 21 00 20 */ addi r1, r1, 0x20 /* 800F063C 000ED59C 4E 80 00 20 */ blr .global sub_800f0640 sub_800f0640: /* 800F0640 000ED5A0 80 03 00 00 */ lwz r0, 0(r3) /* 800F0644 000ED5A4 2C 00 00 0F */ cmpwi r0, 0xf /* 800F0648 000ED5A8 40 80 00 38 */ bge lbl_800F0680 /* 800F064C 000ED5AC 1C 00 00 0C */ mulli r0, r0, 0xc /* 800F0650 000ED5B0 7C A3 02 14 */ add r5, r3, r0 /* 800F0654 000ED5B4 34 A5 00 04 */ addic. r5, r5, 4 /* 800F0658 000ED5B8 41 82 00 1C */ beq lbl_800F0674 /* 800F065C 000ED5BC C0 04 00 00 */ lfs f0, 0(r4) /* 800F0660 000ED5C0 D0 05 00 00 */ stfs f0, 0(r5) /* 800F0664 000ED5C4 C0 04 00 04 */ lfs f0, 4(r4) /* 800F0668 000ED5C8 D0 05 00 04 */ stfs f0, 4(r5) /* 800F066C 000ED5CC C0 04 00 08 */ lfs f0, 8(r4) /* 800F0670 000ED5D0 D0 05 00 08 */ stfs f0, 8(r5) lbl_800F0674: /* 800F0674 000ED5D4 80 A3 00 00 */ lwz r5, 0(r3) /* 800F0678 000ED5D8 38 05 00 01 */ addi r0, r5, 1 /* 800F067C 000ED5DC 90 03 00 00 */ stw r0, 0(r3) lbl_800F0680: /* 800F0680 000ED5E0 80 A3 00 00 */ lwz r5, 0(r3) /* 800F0684 000ED5E4 35 25 FF FF */ addic. r9, r5, -1 /* 800F0688 000ED5E8 1C 09 00 0C */ mulli r0, r9, 0xc /* 800F068C 000ED5EC 7D 25 4B 78 */ mr r5, r9 /* 800F0690 000ED5F0 7D 03 02 14 */ add r8, r3, r0 /* 800F0694 000ED5F4 39 08 00 04 */ addi r8, r8, 4 /* 800F0698 000ED5F8 40 81 00 E8 */ ble lbl_800F0780 /* 800F069C 000ED5FC 55 20 F0 BF */ rlwinm. r0, r9, 0x1e, 2, 0x1f /* 800F06A0 000ED600 7C 09 03 A6 */ mtctr r0 /* 800F06A4 000ED604 41 82 00 A8 */ beq lbl_800F074C lbl_800F06A8: /* 800F06A8 000ED608 38 C9 FF FF */ addi r6, r9, -1 /* 800F06AC 000ED60C 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F06B0 000ED610 38 C9 FF FE */ addi r6, r9, -2 /* 800F06B4 000ED614 7C E3 02 14 */ add r7, r3, r0 /* 800F06B8 000ED618 C0 07 00 04 */ lfs f0, 4(r7) /* 800F06BC 000ED61C 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F06C0 000ED620 38 C9 FF FD */ addi r6, r9, -3 /* 800F06C4 000ED624 D0 08 00 00 */ stfs f0, 0(r8) /* 800F06C8 000ED628 C0 07 00 08 */ lfs f0, 8(r7) /* 800F06CC 000ED62C D0 08 00 04 */ stfs f0, 4(r8) /* 800F06D0 000ED630 C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F06D4 000ED634 7C E3 02 14 */ add r7, r3, r0 /* 800F06D8 000ED638 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F06DC 000ED63C 38 C9 FF FC */ addi r6, r9, -4 /* 800F06E0 000ED640 D0 08 00 08 */ stfs f0, 8(r8) /* 800F06E4 000ED644 39 29 FF FC */ addi r9, r9, -4 /* 800F06E8 000ED648 C0 07 00 04 */ lfs f0, 4(r7) /* 800F06EC 000ED64C D0 08 FF F4 */ stfs f0, -0xc(r8) /* 800F06F0 000ED650 C0 07 00 08 */ lfs f0, 8(r7) /* 800F06F4 000ED654 D0 08 FF F8 */ stfs f0, -8(r8) /* 800F06F8 000ED658 C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F06FC 000ED65C 7C E3 02 14 */ add r7, r3, r0 /* 800F0700 000ED660 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F0704 000ED664 D0 08 FF FC */ stfs f0, -4(r8) /* 800F0708 000ED668 C0 07 00 04 */ lfs f0, 4(r7) /* 800F070C 000ED66C D0 08 FF E8 */ stfs f0, -0x18(r8) /* 800F0710 000ED670 C0 07 00 08 */ lfs f0, 8(r7) /* 800F0714 000ED674 D0 08 FF EC */ stfs f0, -0x14(r8) /* 800F0718 000ED678 C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F071C 000ED67C 7C E3 02 14 */ add r7, r3, r0 /* 800F0720 000ED680 D0 08 FF F0 */ stfs f0, -0x10(r8) /* 800F0724 000ED684 C0 07 00 04 */ lfs f0, 4(r7) /* 800F0728 000ED688 D0 08 FF DC */ stfs f0, -0x24(r8) /* 800F072C 000ED68C C0 07 00 08 */ lfs f0, 8(r7) /* 800F0730 000ED690 D0 08 FF E0 */ stfs f0, -0x20(r8) /* 800F0734 000ED694 C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F0738 000ED698 D0 08 FF E4 */ stfs f0, -0x1c(r8) /* 800F073C 000ED69C 39 08 FF D0 */ addi r8, r8, -48 /* 800F0740 000ED6A0 42 00 FF 68 */ bdnz lbl_800F06A8 /* 800F0744 000ED6A4 70 A5 00 03 */ andi. r5, r5, 3 /* 800F0748 000ED6A8 41 82 00 38 */ beq lbl_800F0780 lbl_800F074C: /* 800F074C 000ED6AC 7C A9 03 A6 */ mtctr r5 lbl_800F0750: /* 800F0750 000ED6B0 38 C9 FF FF */ addi r6, r9, -1 /* 800F0754 000ED6B4 39 29 FF FF */ addi r9, r9, -1 /* 800F0758 000ED6B8 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F075C 000ED6BC 7C E3 02 14 */ add r7, r3, r0 /* 800F0760 000ED6C0 C0 07 00 04 */ lfs f0, 4(r7) /* 800F0764 000ED6C4 D0 08 00 00 */ stfs f0, 0(r8) /* 800F0768 000ED6C8 C0 07 00 08 */ lfs f0, 8(r7) /* 800F076C 000ED6CC D0 08 00 04 */ stfs f0, 4(r8) /* 800F0770 000ED6D0 C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F0774 000ED6D4 D0 08 00 08 */ stfs f0, 8(r8) /* 800F0778 000ED6D8 39 08 FF F4 */ addi r8, r8, -12 /* 800F077C 000ED6DC 42 00 FF D4 */ bdnz lbl_800F0750 lbl_800F0780: /* 800F0780 000ED6E0 C0 04 00 00 */ lfs f0, 0(r4) /* 800F0784 000ED6E4 D0 03 00 04 */ stfs f0, 4(r3) /* 800F0788 000ED6E8 C0 04 00 04 */ lfs f0, 4(r4) /* 800F078C 000ED6EC D0 03 00 08 */ stfs f0, 8(r3) /* 800F0790 000ED6F0 C0 04 00 08 */ lfs f0, 8(r4) /* 800F0794 000ED6F4 D0 03 00 0C */ stfs f0, 0xc(r3) /* 800F0798 000ED6F8 4E 80 00 20 */ blr .global IsInFrustum__10CMorphBallCFRC14CFrustumPlanes IsInFrustum__10CMorphBallCFRC14CFrustumPlanes: /* 800F079C 000ED6FC 94 21 FF 80 */ stwu r1, -0x80(r1) /* 800F07A0 000ED700 7C 08 02 A6 */ mflr r0 /* 800F07A4 000ED704 90 01 00 84 */ stw r0, 0x84(r1) /* 800F07A8 000ED708 93 E1 00 7C */ stw r31, 0x7c(r1) /* 800F07AC 000ED70C 93 C1 00 78 */ stw r30, 0x78(r1) /* 800F07B0 000ED710 7C 9E 23 78 */ mr r30, r4 /* 800F07B4 000ED714 93 A1 00 74 */ stw r29, 0x74(r1) /* 800F07B8 000ED718 7C 7D 1B 78 */ mr r29, r3 /* 800F07BC 000ED71C 80 83 00 58 */ lwz r4, 0x58(r3) /* 800F07C0 000ED720 38 60 00 00 */ li r3, 0 /* 800F07C4 000ED724 80 04 00 10 */ lwz r0, 0x10(r4) /* 800F07C8 000ED728 28 00 00 00 */ cmplwi r0, 0 /* 800F07CC 000ED72C 40 82 00 14 */ bne lbl_800F07E0 /* 800F07D0 000ED730 88 04 00 28 */ lbz r0, 0x28(r4) /* 800F07D4 000ED734 28 00 00 00 */ cmplwi r0, 0 /* 800F07D8 000ED738 40 82 00 08 */ bne lbl_800F07E0 /* 800F07DC 000ED73C 38 60 00 01 */ li r3, 1 lbl_800F07E0: /* 800F07E0 000ED740 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F07E4 000ED744 40 82 01 08 */ bne lbl_800F08EC /* 800F07E8 000ED748 80 9D 19 B8 */ lwz r4, 0x19b8(r29) /* 800F07EC 000ED74C 38 61 00 08 */ addi r3, r1, 8 /* 800F07F0 000ED750 81 84 00 00 */ lwz r12, 0(r4) /* 800F07F4 000ED754 81 8C 00 5C */ lwz r12, 0x5c(r12) /* 800F07F8 000ED758 7D 89 03 A6 */ mtctr r12 /* 800F07FC 000ED75C 4E 80 04 21 */ bctrl /* 800F0800 000ED760 88 01 00 20 */ lbz r0, 0x20(r1) /* 800F0804 000ED764 28 00 00 00 */ cmplwi r0, 0 /* 800F0808 000ED768 98 01 00 3C */ stb r0, 0x3c(r1) /* 800F080C 000ED76C 41 82 00 3C */ beq lbl_800F0848 /* 800F0810 000ED770 34 61 00 24 */ addic. r3, r1, 0x24 /* 800F0814 000ED774 41 82 00 34 */ beq lbl_800F0848 /* 800F0818 000ED778 C0 01 00 08 */ lfs f0, 8(r1) /* 800F081C 000ED77C D0 03 00 00 */ stfs f0, 0(r3) /* 800F0820 000ED780 C0 01 00 0C */ lfs f0, 0xc(r1) /* 800F0824 000ED784 D0 03 00 04 */ stfs f0, 4(r3) /* 800F0828 000ED788 C0 01 00 10 */ lfs f0, 0x10(r1) /* 800F082C 000ED78C D0 03 00 08 */ stfs f0, 8(r3) /* 800F0830 000ED790 C0 01 00 14 */ lfs f0, 0x14(r1) /* 800F0834 000ED794 D0 03 00 0C */ stfs f0, 0xc(r3) /* 800F0838 000ED798 C0 01 00 18 */ lfs f0, 0x18(r1) /* 800F083C 000ED79C D0 03 00 10 */ stfs f0, 0x10(r3) /* 800F0840 000ED7A0 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800F0844 000ED7A4 D0 03 00 14 */ stfs f0, 0x14(r3) lbl_800F0848: /* 800F0848 000ED7A8 38 00 00 00 */ li r0, 0 /* 800F084C 000ED7AC 83 FD 00 58 */ lwz r31, 0x58(r29) /* 800F0850 000ED7B0 98 01 00 20 */ stb r0, 0x20(r1) /* 800F0854 000ED7B4 7F A4 EB 78 */ mr r4, r29 /* 800F0858 000ED7B8 38 61 00 40 */ addi r3, r1, 0x40 /* 800F085C 000ED7BC 48 00 5E 99 */ bl GetBallToWorld__10CMorphBallCFv /* 800F0860 000ED7C0 7F E3 FB 78 */ mr r3, r31 /* 800F0864 000ED7C4 7F C5 F3 78 */ mr r5, r30 /* 800F0868 000ED7C8 38 81 00 40 */ addi r4, r1, 0x40 /* 800F086C 000ED7CC 48 02 53 9D */ bl IsInFrustum__10CModelDataCFRC12CTransform4fRC14CFrustumPlanes /* 800F0870 000ED7D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F0874 000ED7D4 41 82 00 14 */ beq lbl_800F0888 /* 800F0878 000ED7D8 38 00 00 00 */ li r0, 0 /* 800F087C 000ED7DC 38 60 00 01 */ li r3, 1 /* 800F0880 000ED7E0 98 01 00 3C */ stb r0, 0x3c(r1) /* 800F0884 000ED7E4 48 00 00 6C */ b lbl_800F08F0 lbl_800F0888: /* 800F0888 000ED7E8 80 7D 19 B8 */ lwz r3, 0x19b8(r29) /* 800F088C 000ED7EC 81 83 00 00 */ lwz r12, 0(r3) /* 800F0890 000ED7F0 81 8C 00 50 */ lwz r12, 0x50(r12) /* 800F0894 000ED7F4 7D 89 03 A6 */ mtctr r12 /* 800F0898 000ED7F8 4E 80 04 21 */ bctrl /* 800F089C 000ED7FC E0 43 A0 03 */ psq_l f2, 3(r3), 1, qr2 /* 800F08A0 000ED800 C0 02 92 34 */ lfs f0, lbl_805AAF54@sda21(r2) /* 800F08A4 000ED804 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F08A8 000ED808 EC 00 00 B2 */ fmuls f0, f0, f2 /* 800F08AC 000ED80C FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F08B0 000ED810 41 82 00 34 */ beq lbl_800F08E4 /* 800F08B4 000ED814 88 01 00 3C */ lbz r0, 0x3c(r1) /* 800F08B8 000ED818 28 00 00 00 */ cmplwi r0, 0 /* 800F08BC 000ED81C 41 82 00 28 */ beq lbl_800F08E4 /* 800F08C0 000ED820 7F C3 F3 78 */ mr r3, r30 /* 800F08C4 000ED824 38 81 00 24 */ addi r4, r1, 0x24 /* 800F08C8 000ED828 48 25 47 D1 */ bl sub_80345098 /* 800F08CC 000ED82C 2C 03 00 00 */ cmpwi r3, 0 /* 800F08D0 000ED830 41 82 00 14 */ beq lbl_800F08E4 /* 800F08D4 000ED834 38 00 00 00 */ li r0, 0 /* 800F08D8 000ED838 38 60 00 01 */ li r3, 1 /* 800F08DC 000ED83C 98 01 00 3C */ stb r0, 0x3c(r1) /* 800F08E0 000ED840 48 00 00 10 */ b lbl_800F08F0 lbl_800F08E4: /* 800F08E4 000ED844 38 00 00 00 */ li r0, 0 /* 800F08E8 000ED848 98 01 00 3C */ stb r0, 0x3c(r1) lbl_800F08EC: /* 800F08EC 000ED84C 38 60 00 00 */ li r3, 0 lbl_800F08F0: /* 800F08F0 000ED850 80 01 00 84 */ lwz r0, 0x84(r1) /* 800F08F4 000ED854 83 E1 00 7C */ lwz r31, 0x7c(r1) /* 800F08F8 000ED858 83 C1 00 78 */ lwz r30, 0x78(r1) /* 800F08FC 000ED85C 83 A1 00 74 */ lwz r29, 0x74(r1) /* 800F0900 000ED860 7C 08 03 A6 */ mtlr r0 /* 800F0904 000ED864 38 21 00 80 */ addi r1, r1, 0x80 /* 800F0908 000ED868 4E 80 00 20 */ blr .global CollidedWith__10CMorphBallFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager CollidedWith__10CMorphBallFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager: /* 800F090C 000ED86C 94 21 FE D0 */ stwu r1, -0x130(r1) /* 800F0910 000ED870 7C 08 02 A6 */ mflr r0 /* 800F0914 000ED874 90 01 01 34 */ stw r0, 0x134(r1) /* 800F0918 000ED878 DB E1 01 20 */ stfd f31, 0x120(r1) /* 800F091C 000ED87C F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 /* 800F0920 000ED880 DB C1 01 10 */ stfd f30, 0x110(r1) /* 800F0924 000ED884 F3 C1 01 18 */ psq_st f30, 280(r1), 0, qr0 /* 800F0928 000ED888 DB A1 01 00 */ stfd f29, 0x100(r1) /* 800F092C 000ED88C F3 A1 01 08 */ psq_st f29, 264(r1), 0, qr0 /* 800F0930 000ED890 DB 81 00 F0 */ stfd f28, 0xf0(r1) /* 800F0934 000ED894 F3 81 00 F8 */ psq_st f28, 248(r1), 0, qr0 /* 800F0938 000ED898 DB 61 00 E0 */ stfd f27, 0xe0(r1) /* 800F093C 000ED89C F3 61 00 E8 */ psq_st f27, 232(r1), 0, qr0 /* 800F0940 000ED8A0 DB 41 00 D0 */ stfd f26, 0xd0(r1) /* 800F0944 000ED8A4 F3 41 00 D8 */ psq_st f26, 216(r1), 0, qr0 /* 800F0948 000ED8A8 DB 21 00 C0 */ stfd f25, 0xc0(r1) /* 800F094C 000ED8AC F3 21 00 C8 */ psq_st f25, 200(r1), 0, qr0 /* 800F0950 000ED8B0 BE 81 00 90 */ stmw r20, 0x90(r1) /* 800F0954 000ED8B4 7C 7D 1B 78 */ mr r29, r3 /* 800F0958 000ED8B8 7C BF 2B 78 */ mr r31, r5 /* 800F095C 000ED8BC 7C 9E 23 78 */ mr r30, r4 /* 800F0960 000ED8C0 7C D6 33 78 */ mr r22, r6 /* 800F0964 000ED8C4 7F E4 FB 78 */ mr r4, r31 /* 800F0968 000ED8C8 38 7D 00 74 */ addi r3, r29, 0x74 /* 800F096C 000ED8CC 48 00 09 BD */ bl __as__18CCollisionInfoListFRC18CCollisionInfoList /* 800F0970 000ED8D0 80 1F 00 00 */ lwz r0, 0(r31) /* 800F0974 000ED8D4 3B 60 00 00 */ li r27, 0 /* 800F0978 000ED8D8 7F 7C DB 78 */ mr r28, r27 /* 800F097C 000ED8DC 38 9F 00 04 */ addi r4, r31, 4 /* 800F0980 000ED8E0 1C 00 00 60 */ mulli r0, r0, 0x60 /* 800F0984 000ED8E4 7C BF 02 14 */ add r5, r31, r0 /* 800F0988 000ED8E8 38 A5 00 04 */ addi r5, r5, 4 /* 800F098C 000ED8EC 48 00 00 18 */ b lbl_800F09A4 lbl_800F0990: /* 800F0990 000ED8F0 80 04 00 38 */ lwz r0, 0x38(r4) /* 800F0994 000ED8F4 80 64 00 3C */ lwz r3, 0x3c(r4) /* 800F0998 000ED8F8 38 84 00 60 */ addi r4, r4, 0x60 /* 800F099C 000ED8FC 7F 9C 03 78 */ or r28, r28, r0 /* 800F09A0 000ED900 7F 7B 1B 78 */ or r27, r27, r3 lbl_800F09A4: /* 800F09A4 000ED904 7C 04 28 40 */ cmplw r4, r5 /* 800F09A8 000ED908 40 82 FF E8 */ bne lbl_800F0990 /* 800F09AC 000ED90C 80 9D 00 00 */ lwz r4, 0(r29) /* 800F09B0 000ED910 38 61 00 7C */ addi r3, r1, 0x7c /* 800F09B4 000ED914 C0 04 01 38 */ lfs f0, 0x138(r4) /* 800F09B8 000ED918 D0 01 00 7C */ stfs f0, 0x7c(r1) /* 800F09BC 000ED91C C0 04 01 3C */ lfs f0, 0x13c(r4) /* 800F09C0 000ED920 D0 01 00 80 */ stfs f0, 0x80(r1) /* 800F09C4 000ED924 C0 04 01 40 */ lfs f0, 0x140(r4) /* 800F09C8 000ED928 D0 01 00 84 */ stfs f0, 0x84(r1) /* 800F09CC 000ED92C 48 22 3E ED */ bl Magnitude__9CVector3fCFv /* 800F09D0 000ED930 FF E0 08 90 */ fmr f31, f1 /* 800F09D4 000ED934 C0 02 92 38 */ lfs f0, lbl_805AAF58@sda21(r2) /* 800F09D8 000ED938 3A A0 00 00 */ li r21, 0 /* 800F09DC 000ED93C FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F09E0 000ED940 40 81 03 80 */ ble lbl_800F0D60 /* 800F09E4 000ED944 80 7D 00 00 */ lwz r3, 0(r29) /* 800F09E8 000ED948 88 03 00 E6 */ lbz r0, 0xe6(r3) /* 800F09EC 000ED94C 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f /* 800F09F0 000ED950 40 82 03 70 */ bne lbl_800F0D60 /* 800F09F4 000ED954 3C 60 80 57 */ lis r3, lbl_8056D4F4@ha /* 800F09F8 000ED958 3B 1F 00 04 */ addi r24, r31, 4 /* 800F09FC 000ED95C 38 63 D4 F4 */ addi r3, r3, lbl_8056D4F4@l /* 800F0A00 000ED960 3B 3D 1B CC */ addi r25, r29, 0x1bcc /* 800F0A04 000ED964 3B 43 00 04 */ addi r26, r3, 4 /* 800F0A08 000ED968 3A E0 00 00 */ li r23, 0 /* 800F0A0C 000ED96C 48 00 02 B0 */ b lbl_800F0CBC lbl_800F0A10: /* 800F0A10 000ED970 56 E0 06 3F */ clrlwi. r0, r23, 0x18 /* 800F0A14 000ED974 40 82 00 AC */ bne lbl_800F0AC0 /* 800F0A18 000ED978 80 F8 00 38 */ lwz r7, 0x38(r24) /* 800F0A1C 000ED97C 38 A0 00 00 */ li r5, 0 /* 800F0A20 000ED980 80 18 00 3C */ lwz r0, 0x3c(r24) /* 800F0A24 000ED984 3C 80 40 00 */ lis r4, 0x4000 /* 800F0A28 000ED988 7C E3 28 38 */ and r3, r7, r5 /* 800F0A2C 000ED98C 7C 04 20 38 */ and r4, r0, r4 /* 800F0A30 000ED990 7C 84 2A 78 */ xor r4, r4, r5 /* 800F0A34 000ED994 7C 63 2A 78 */ xor r3, r3, r5 /* 800F0A38 000ED998 7C 83 1B 79 */ or. r3, r4, r3 /* 800F0A3C 000ED99C 41 82 00 08 */ beq lbl_800F0A44 /* 800F0A40 000ED9A0 38 A0 00 01 */ li r5, 1 lbl_800F0A44: /* 800F0A44 000ED9A4 54 A3 06 3F */ clrlwi. r3, r5, 0x18 /* 800F0A48 000ED9A8 41 82 00 78 */ beq lbl_800F0AC0 /* 800F0A4C 000ED9AC 38 60 00 02 */ li r3, 2 /* 800F0A50 000ED9B0 38 C0 00 00 */ li r6, 0 /* 800F0A54 000ED9B4 7C 03 18 38 */ and r3, r0, r3 /* 800F0A58 000ED9B8 3A E0 00 01 */ li r23, 1 /* 800F0A5C 000ED9BC 7C E5 30 38 */ and r5, r7, r6 /* 800F0A60 000ED9C0 7C 64 32 78 */ xor r4, r3, r6 /* 800F0A64 000ED9C4 7C A3 32 78 */ xor r3, r5, r6 /* 800F0A68 000ED9C8 7C 83 1B 79 */ or. r3, r4, r3 /* 800F0A6C 000ED9CC 40 82 00 1C */ bne lbl_800F0A88 /* 800F0A70 000ED9D0 38 80 00 04 */ li r4, 4 /* 800F0A74 000ED9D4 7C A3 32 78 */ xor r3, r5, r6 /* 800F0A78 000ED9D8 7C 00 20 38 */ and r0, r0, r4 /* 800F0A7C 000ED9DC 7C 00 32 78 */ xor r0, r0, r6 /* 800F0A80 000ED9E0 7C 03 1B 79 */ or. r3, r0, r3 /* 800F0A84 000ED9E4 41 82 00 3C */ beq lbl_800F0AC0 lbl_800F0A88: /* 800F0A88 000ED9E8 80 7D 19 CC */ lwz r3, 0x19cc(r29) /* 800F0A8C 000ED9EC 7F 04 C3 78 */ mr r4, r24 /* 800F0A90 000ED9F0 81 83 00 00 */ lwz r12, 0(r3) /* 800F0A94 000ED9F4 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800F0A98 000ED9F8 7D 89 03 A6 */ mtctr r12 /* 800F0A9C 000ED9FC 4E 80 04 21 */ bctrl /* 800F0AA0 000EDA00 80 7D 19 CC */ lwz r3, 0x19cc(r29) /* 800F0AA4 000EDA04 38 80 00 01 */ li r4, 1 /* 800F0AA8 000EDA08 81 83 00 00 */ lwz r12, 0(r3) /* 800F0AAC 000EDA0C 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F0AB0 000EDA10 7D 89 03 A6 */ mtctr r12 /* 800F0AB4 000EDA14 4E 80 04 21 */ bctrl /* 800F0AB8 000EDA18 38 00 00 07 */ li r0, 7 /* 800F0ABC 000EDA1C 90 1D 1E 38 */ stw r0, 0x1e38(r29) lbl_800F0AC0: /* 800F0AC0 000EDA20 2C 15 00 00 */ cmpwi r21, 0 /* 800F0AC4 000EDA24 40 82 01 F4 */ bne lbl_800F0CB8 /* 800F0AC8 000EDA28 80 78 00 38 */ lwz r3, 0x38(r24) /* 800F0ACC 000EDA2C 38 C0 00 00 */ li r6, 0 /* 800F0AD0 000EDA30 80 98 00 3C */ lwz r4, 0x3c(r24) /* 800F0AD4 000EDA34 3C A0 80 00 */ lis r5, 0x8000 /* 800F0AD8 000EDA38 7C 60 30 38 */ and r0, r3, r6 /* 800F0ADC 000EDA3C 7C 85 28 38 */ and r5, r4, r5 /* 800F0AE0 000EDA40 7C A5 32 78 */ xor r5, r5, r6 /* 800F0AE4 000EDA44 7C 00 32 78 */ xor r0, r0, r6 /* 800F0AE8 000EDA48 7C A0 03 79 */ or. r0, r5, r0 /* 800F0AEC 000EDA4C 41 82 00 08 */ beq lbl_800F0AF4 /* 800F0AF0 000EDA50 38 C0 00 01 */ li r6, 1 lbl_800F0AF4: /* 800F0AF4 000EDA54 54 C0 06 3F */ clrlwi. r0, r6, 0x18 /* 800F0AF8 000EDA58 41 82 01 C0 */ beq lbl_800F0CB8 /* 800F0AFC 000EDA5C 38 00 01 00 */ li r0, 0x100 /* 800F0B00 000EDA60 38 C0 00 00 */ li r6, 0 /* 800F0B04 000EDA64 7C 85 00 38 */ and r5, r4, r0 /* 800F0B08 000EDA68 7C 60 30 38 */ and r0, r3, r6 /* 800F0B0C 000EDA6C 7C A5 32 78 */ xor r5, r5, r6 /* 800F0B10 000EDA70 7C 00 32 78 */ xor r0, r0, r6 /* 800F0B14 000EDA74 7C A0 03 79 */ or. r0, r5, r0 /* 800F0B18 000EDA78 41 82 00 0C */ beq lbl_800F0B24 /* 800F0B1C 000EDA7C 38 00 00 08 */ li r0, 8 /* 800F0B20 000EDA80 48 00 00 08 */ b lbl_800F0B28 lbl_800F0B24: /* 800F0B24 000EDA84 7E A0 AB 78 */ mr r0, r21 lbl_800F0B28: /* 800F0B28 000EDA88 3C A0 00 02 */ lis r5, 2 /* 800F0B2C 000EDA8C 38 E0 00 00 */ li r7, 0 /* 800F0B30 000EDA90 7C 86 28 38 */ and r6, r4, r5 /* 800F0B34 000EDA94 7C 65 38 38 */ and r5, r3, r7 /* 800F0B38 000EDA98 7C C6 3A 78 */ xor r6, r6, r7 /* 800F0B3C 000EDA9C 7C A5 3A 78 */ xor r5, r5, r7 /* 800F0B40 000EDAA0 7C C5 2B 79 */ or. r5, r6, r5 /* 800F0B44 000EDAA4 41 82 00 08 */ beq lbl_800F0B4C /* 800F0B48 000EDAA8 38 00 00 11 */ li r0, 0x11 lbl_800F0B4C: /* 800F0B4C 000EDAAC 38 A0 02 00 */ li r5, 0x200 /* 800F0B50 000EDAB0 38 E0 00 00 */ li r7, 0 /* 800F0B54 000EDAB4 7C 86 28 38 */ and r6, r4, r5 /* 800F0B58 000EDAB8 7C 65 38 38 */ and r5, r3, r7 /* 800F0B5C 000EDABC 7C C6 3A 78 */ xor r6, r6, r7 /* 800F0B60 000EDAC0 7C A5 3A 78 */ xor r5, r5, r7 /* 800F0B64 000EDAC4 7C C5 2B 79 */ or. r5, r6, r5 /* 800F0B68 000EDAC8 41 82 00 08 */ beq lbl_800F0B70 /* 800F0B6C 000EDACC 38 00 00 09 */ li r0, 9 lbl_800F0B70: /* 800F0B70 000EDAD0 38 A0 10 00 */ li r5, 0x1000 /* 800F0B74 000EDAD4 38 E0 00 00 */ li r7, 0 /* 800F0B78 000EDAD8 7C 86 28 38 */ and r6, r4, r5 /* 800F0B7C 000EDADC 7C 65 38 38 */ and r5, r3, r7 /* 800F0B80 000EDAE0 7C C6 3A 78 */ xor r6, r6, r7 /* 800F0B84 000EDAE4 7C A5 3A 78 */ xor r5, r5, r7 /* 800F0B88 000EDAE8 7C C5 2B 79 */ or. r5, r6, r5 /* 800F0B8C 000EDAEC 41 82 00 08 */ beq lbl_800F0B94 /* 800F0B90 000EDAF0 38 00 00 0C */ li r0, 0xc lbl_800F0B94: /* 800F0B94 000EDAF4 38 A0 08 00 */ li r5, 0x800 /* 800F0B98 000EDAF8 38 E0 00 00 */ li r7, 0 /* 800F0B9C 000EDAFC 7C 86 28 38 */ and r6, r4, r5 /* 800F0BA0 000EDB00 7C 65 38 38 */ and r5, r3, r7 /* 800F0BA4 000EDB04 7C C6 3A 78 */ xor r6, r6, r7 /* 800F0BA8 000EDB08 7C A5 3A 78 */ xor r5, r5, r7 /* 800F0BAC 000EDB0C 7C C5 2B 79 */ or. r5, r6, r5 /* 800F0BB0 000EDB10 41 82 00 08 */ beq lbl_800F0BB8 /* 800F0BB4 000EDB14 38 00 00 0B */ li r0, 0xb lbl_800F0BB8: /* 800F0BB8 000EDB18 38 C0 00 80 */ li r6, 0x80 /* 800F0BBC 000EDB1C 38 A0 00 00 */ li r5, 0 /* 800F0BC0 000EDB20 7C 84 30 38 */ and r4, r4, r6 /* 800F0BC4 000EDB24 7C 63 28 38 */ and r3, r3, r5 /* 800F0BC8 000EDB28 7C 84 2A 78 */ xor r4, r4, r5 /* 800F0BCC 000EDB2C 7C 63 2A 78 */ xor r3, r3, r5 /* 800F0BD0 000EDB30 7C 83 1B 79 */ or. r3, r4, r3 /* 800F0BD4 000EDB34 41 82 00 08 */ beq lbl_800F0BDC /* 800F0BD8 000EDB38 38 00 00 07 */ li r0, 7 lbl_800F0BDC: /* 800F0BDC 000EDB3C 2C 00 00 00 */ cmpwi r0, 0 /* 800F0BE0 000EDB40 7C 15 03 78 */ mr r21, r0 /* 800F0BE4 000EDB44 41 82 00 D4 */ beq lbl_800F0CB8 /* 800F0BE8 000EDB48 54 00 10 3A */ slwi r0, r0, 2 /* 800F0BEC 000EDB4C 7E 9A 00 2E */ lwzx r20, r26, r0 /* 800F0BF0 000EDB50 2C 14 00 00 */ cmpwi r20, 0 /* 800F0BF4 000EDB54 40 82 00 44 */ bne lbl_800F0C38 /* 800F0BF8 000EDB58 80 B6 08 CC */ lwz r5, 0x8cc(r22) /* 800F0BFC 000EDB5C 80 96 08 50 */ lwz r4, 0x850(r22) /* 800F0C00 000EDB60 54 A3 18 38 */ slwi r3, r5, 3 /* 800F0C04 000EDB64 90 A1 00 14 */ stw r5, 0x14(r1) /* 800F0C08 000EDB68 80 84 00 20 */ lwz r4, 0x20(r4) /* 800F0C0C 000EDB6C 38 03 00 04 */ addi r0, r3, 4 /* 800F0C10 000EDB70 90 A1 00 18 */ stw r5, 0x18(r1) /* 800F0C14 000EDB74 7C 64 00 2E */ lwzx r3, r4, r0 /* 800F0C18 000EDB78 80 63 01 2C */ lwz r3, 0x12c(r3) /* 800F0C1C 000EDB7C 80 63 10 D8 */ lwz r3, 0x10d8(r3) /* 800F0C20 000EDB80 28 03 00 00 */ cmplwi r3, 0 /* 800F0C24 000EDB84 41 82 00 14 */ beq lbl_800F0C38 /* 800F0C28 000EDB88 80 03 00 50 */ lwz r0, 0x50(r3) /* 800F0C2C 000EDB8C 2C 00 00 02 */ cmpwi r0, 2 /* 800F0C30 000EDB90 40 82 00 08 */ bne lbl_800F0C38 /* 800F0C34 000EDB94 3A 80 00 01 */ li r20, 1 lbl_800F0C38: /* 800F0C38 000EDB98 80 1D 1C 0C */ lwz r0, 0x1c0c(r29) /* 800F0C3C 000EDB9C 7C 14 00 00 */ cmpw r20, r0 /* 800F0C40 000EDBA0 41 82 00 30 */ beq lbl_800F0C70 /* 800F0C44 000EDBA4 2C 00 FF FF */ cmpwi r0, -1 /* 800F0C48 000EDBA8 41 82 00 24 */ beq lbl_800F0C6C /* 800F0C4C 000EDBAC 54 03 18 38 */ slwi r3, r0, 3 /* 800F0C50 000EDBB0 38 80 00 00 */ li r4, 0 /* 800F0C54 000EDBB4 38 03 00 04 */ addi r0, r3, 4 /* 800F0C58 000EDBB8 7C 79 00 2E */ lwzx r3, r25, r0 /* 800F0C5C 000EDBBC 81 83 00 00 */ lwz r12, 0(r3) /* 800F0C60 000EDBC0 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F0C64 000EDBC4 7D 89 03 A6 */ mtctr r12 /* 800F0C68 000EDBC8 4E 80 04 21 */ bctrl lbl_800F0C6C: /* 800F0C6C 000EDBCC 92 9D 1C 0C */ stw r20, 0x1c0c(r29) lbl_800F0C70: /* 800F0C70 000EDBD0 80 1D 1C 0C */ lwz r0, 0x1c0c(r29) /* 800F0C74 000EDBD4 38 80 00 01 */ li r4, 1 /* 800F0C78 000EDBD8 54 03 18 38 */ slwi r3, r0, 3 /* 800F0C7C 000EDBDC 38 03 00 04 */ addi r0, r3, 4 /* 800F0C80 000EDBE0 7C 79 00 2E */ lwzx r3, r25, r0 /* 800F0C84 000EDBE4 81 83 00 00 */ lwz r12, 0(r3) /* 800F0C88 000EDBE8 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F0C8C 000EDBEC 7D 89 03 A6 */ mtctr r12 /* 800F0C90 000EDBF0 4E 80 04 21 */ bctrl /* 800F0C94 000EDBF4 80 1D 1C 0C */ lwz r0, 0x1c0c(r29) /* 800F0C98 000EDBF8 7F 04 C3 78 */ mr r4, r24 /* 800F0C9C 000EDBFC 54 03 18 38 */ slwi r3, r0, 3 /* 800F0CA0 000EDC00 38 03 00 04 */ addi r0, r3, 4 /* 800F0CA4 000EDC04 7C 79 00 2E */ lwzx r3, r25, r0 /* 800F0CA8 000EDC08 81 83 00 00 */ lwz r12, 0(r3) /* 800F0CAC 000EDC0C 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800F0CB0 000EDC10 7D 89 03 A6 */ mtctr r12 /* 800F0CB4 000EDC14 4E 80 04 21 */ bctrl lbl_800F0CB8: /* 800F0CB8 000EDC18 3B 18 00 60 */ addi r24, r24, 0x60 lbl_800F0CBC: /* 800F0CBC 000EDC1C 80 1F 00 00 */ lwz r0, 0(r31) /* 800F0CC0 000EDC20 1C 00 00 60 */ mulli r0, r0, 0x60 /* 800F0CC4 000EDC24 7C 7F 02 14 */ add r3, r31, r0 /* 800F0CC8 000EDC28 38 03 00 04 */ addi r0, r3, 4 /* 800F0CCC 000EDC2C 7C 18 00 40 */ cmplw r24, r0 /* 800F0CD0 000EDC30 40 82 FD 40 */ bne lbl_800F0A10 /* 800F0CD4 000EDC34 56 E0 06 3F */ clrlwi. r0, r23, 0x18 /* 800F0CD8 000EDC38 41 82 00 88 */ beq lbl_800F0D60 /* 800F0CDC 000EDC3C 80 1D 1E 28 */ lwz r0, 0x1e28(r29) /* 800F0CE0 000EDC40 38 61 00 10 */ addi r3, r1, 0x10 /* 800F0CE4 000EDC44 90 01 00 10 */ stw r0, 0x10(r1) /* 800F0CE8 000EDC48 48 1F 80 ED */ bl IsPlaying__11CSfxManagerF10CSfxHandle /* 800F0CEC 000EDC4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F0CF0 000EDC50 40 82 00 70 */ bne lbl_800F0D60 /* 800F0CF4 000EDC54 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F0CF8 000EDC58 38 61 00 0C */ addi r3, r1, 0xc /* 800F0CFC 000EDC5C A9 22 C5 FA */ lha r9, kMedPriority__11CSfxManager@sda21(r2) /* 800F0D00 000EDC60 38 A1 00 4C */ addi r5, r1, 0x4c /* 800F0D04 000EDC64 D0 01 00 40 */ stfs f0, 0x40(r1) /* 800F0D08 000EDC68 38 C1 00 40 */ addi r6, r1, 0x40 /* 800F0D0C 000EDC6C 81 42 C6 00 */ lwz r10, kAllAreas__11CSfxManager@sda21(r2) /* 800F0D10 000EDC70 38 80 05 F5 */ li r4, 0x5f5 /* 800F0D14 000EDC74 D0 01 00 44 */ stfs f0, 0x44(r1) /* 800F0D18 000EDC78 38 E0 00 01 */ li r7, 1 /* 800F0D1C 000EDC7C 39 00 00 00 */ li r8, 0 /* 800F0D20 000EDC80 D0 01 00 48 */ stfs f0, 0x48(r1) /* 800F0D24 000EDC84 81 7D 00 00 */ lwz r11, 0(r29) /* 800F0D28 000EDC88 C0 4B 00 60 */ lfs f2, 0x60(r11) /* 800F0D2C 000EDC8C C0 2B 00 50 */ lfs f1, 0x50(r11) /* 800F0D30 000EDC90 C0 0B 00 40 */ lfs f0, 0x40(r11) /* 800F0D34 000EDC94 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 800F0D38 000EDC98 D0 21 00 50 */ stfs f1, 0x50(r1) /* 800F0D3C 000EDC9C D0 41 00 54 */ stfs f2, 0x54(r1) /* 800F0D40 000EDCA0 48 1F 95 71 */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi /* 800F0D44 000EDCA4 80 01 00 0C */ lwz r0, 0xc(r1) /* 800F0D48 000EDCA8 38 81 00 08 */ addi r4, r1, 8 /* 800F0D4C 000EDCAC 90 1D 1E 28 */ stw r0, 0x1e28(r29) /* 800F0D50 000EDCB0 80 1D 1E 28 */ lwz r0, 0x1e28(r29) /* 800F0D54 000EDCB4 90 01 00 08 */ stw r0, 8(r1) /* 800F0D58 000EDCB8 80 7D 00 00 */ lwz r3, 0(r29) /* 800F0D5C 000EDCBC 4B F2 04 31 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle lbl_800F0D60: /* 800F0D60 000EDCC0 2C 15 00 00 */ cmpwi r21, 0 /* 800F0D64 000EDCC4 40 82 00 30 */ bne lbl_800F0D94 /* 800F0D68 000EDCC8 80 1D 1C 0C */ lwz r0, 0x1c0c(r29) /* 800F0D6C 000EDCCC 2C 00 FF FF */ cmpwi r0, -1 /* 800F0D70 000EDCD0 41 82 00 24 */ beq lbl_800F0D94 /* 800F0D74 000EDCD4 54 00 18 38 */ slwi r0, r0, 3 /* 800F0D78 000EDCD8 38 80 00 00 */ li r4, 0 /* 800F0D7C 000EDCDC 7C 7D 02 14 */ add r3, r29, r0 /* 800F0D80 000EDCE0 80 63 1B D0 */ lwz r3, 0x1bd0(r3) /* 800F0D84 000EDCE4 81 83 00 00 */ lwz r12, 0(r3) /* 800F0D88 000EDCE8 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F0D8C 000EDCEC 7D 89 03 A6 */ mtctr r12 /* 800F0D90 000EDCF0 4E 80 04 21 */ bctrl lbl_800F0D94: /* 800F0D94 000EDCF4 88 1D 19 54 */ lbz r0, 0x1954(r29) /* 800F0D98 000EDCF8 28 00 00 00 */ cmplwi r0, 0 /* 800F0D9C 000EDCFC 41 82 00 0C */ beq lbl_800F0DA8 /* 800F0DA0 000EDD00 38 00 00 00 */ li r0, 0 /* 800F0DA4 000EDD04 98 1D 19 54 */ stb r0, 0x1954(r29) lbl_800F0DA8: /* 800F0DA8 000EDD08 38 00 20 00 */ li r0, 0x2000 /* 800F0DAC 000EDD0C 38 80 00 00 */ li r4, 0 /* 800F0DB0 000EDD10 7F 63 00 38 */ and r3, r27, r0 /* 800F0DB4 000EDD14 7F 80 20 38 */ and r0, r28, r4 /* 800F0DB8 000EDD18 7C 63 22 78 */ xor r3, r3, r4 /* 800F0DBC 000EDD1C 7C 00 22 78 */ xor r0, r0, r4 /* 800F0DC0 000EDD20 7C 60 03 79 */ or. r0, r3, r0 /* 800F0DC4 000EDD24 41 82 00 E0 */ beq lbl_800F0EA4 /* 800F0DC8 000EDD28 C0 22 91 7C */ lfs f1, lbl_805AAE9C@sda21(r2) /* 800F0DCC 000EDD2C 3A DF 00 04 */ addi r22, r31, 4 /* 800F0DD0 000EDD30 C0 02 91 FC */ lfs f0, lbl_805AAF1C@sda21(r2) /* 800F0DD4 000EDD34 3A 80 00 00 */ li r20, 0 /* 800F0DD8 000EDD38 D0 3D 1D FC */ stfs f1, 0x1dfc(r29) /* 800F0DDC 000EDD3C D0 1D 1E 04 */ stfs f0, 0x1e04(r29) /* 800F0DE0 000EDD40 48 00 00 B8 */ b lbl_800F0E98 lbl_800F0DE4: /* 800F0DE4 000EDD44 80 16 00 38 */ lwz r0, 0x38(r22) /* 800F0DE8 000EDD48 38 80 00 00 */ li r4, 0 /* 800F0DEC 000EDD4C 80 B6 00 3C */ lwz r5, 0x3c(r22) /* 800F0DF0 000EDD50 38 60 20 00 */ li r3, 0x2000 /* 800F0DF4 000EDD54 7C 00 20 38 */ and r0, r0, r4 /* 800F0DF8 000EDD58 7C A3 18 38 */ and r3, r5, r3 /* 800F0DFC 000EDD5C 7C 63 22 78 */ xor r3, r3, r4 /* 800F0E00 000EDD60 7C 00 22 78 */ xor r0, r0, r4 /* 800F0E04 000EDD64 7C 60 03 79 */ or. r0, r3, r0 /* 800F0E08 000EDD68 41 82 00 88 */ beq lbl_800F0E90 /* 800F0E0C 000EDD6C C0 96 00 4C */ lfs f4, 0x4c(r22) /* 800F0E10 000EDD70 C0 1D 1E 18 */ lfs f0, 0x1e18(r29) /* 800F0E14 000EDD74 C0 76 00 48 */ lfs f3, 0x48(r22) /* 800F0E18 000EDD78 EC 04 00 32 */ fmuls f0, f4, f0 /* 800F0E1C 000EDD7C C0 DD 1E 14 */ lfs f6, 0x1e14(r29) /* 800F0E20 000EDD80 C0 B6 00 50 */ lfs f5, 0x50(r22) /* 800F0E24 000EDD84 C0 5D 1E 1C */ lfs f2, 0x1e1c(r29) /* 800F0E28 000EDD88 EC 23 01 BA */ fmadds f1, f3, f6, f0 /* 800F0E2C 000EDD8C C0 02 92 3C */ lfs f0, lbl_805AAF5C@sda21(r2) /* 800F0E30 000EDD90 EC 25 08 BA */ fmadds f1, f5, f2, f1 /* 800F0E34 000EDD94 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F0E38 000EDD98 40 80 00 58 */ bge lbl_800F0E90 /* 800F0E3C 000EDD9C D0 DD 1E 08 */ stfs f6, 0x1e08(r29) /* 800F0E40 000EDDA0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F0E44 000EDDA4 38 83 66 A0 */ addi r4, r3, sZeroVector__9CVector3f@l /* 800F0E48 000EDDA8 C0 22 92 40 */ lfs f1, lbl_805AAF60@sda21(r2) /* 800F0E4C 000EDDAC C0 1D 1E 18 */ lfs f0, 0x1e18(r29) /* 800F0E50 000EDDB0 38 7D 1E 08 */ addi r3, r29, 0x1e08 /* 800F0E54 000EDDB4 D0 1D 1E 0C */ stfs f0, 0x1e0c(r29) /* 800F0E58 000EDDB8 C0 1D 1E 1C */ lfs f0, 0x1e1c(r29) /* 800F0E5C 000EDDBC D0 1D 1E 10 */ stfs f0, 0x1e10(r29) /* 800F0E60 000EDDC0 D0 7D 1E 14 */ stfs f3, 0x1e14(r29) /* 800F0E64 000EDDC4 D0 9D 1E 18 */ stfs f4, 0x1e18(r29) /* 800F0E68 000EDDC8 D0 BD 1E 1C */ stfs f5, 0x1e1c(r29) /* 800F0E6C 000EDDCC 48 21 F0 F9 */ bl close_enough__FRC9CVector3fRC9CVector3ff /* 800F0E70 000EDDD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F0E74 000EDDD4 41 82 00 1C */ beq lbl_800F0E90 /* 800F0E78 000EDDD8 C0 1D 1E 14 */ lfs f0, 0x1e14(r29) /* 800F0E7C 000EDDDC D0 1D 1E 08 */ stfs f0, 0x1e08(r29) /* 800F0E80 000EDDE0 C0 1D 1E 18 */ lfs f0, 0x1e18(r29) /* 800F0E84 000EDDE4 D0 1D 1E 0C */ stfs f0, 0x1e0c(r29) /* 800F0E88 000EDDE8 C0 1D 1E 1C */ lfs f0, 0x1e1c(r29) /* 800F0E8C 000EDDEC D0 1D 1E 10 */ stfs f0, 0x1e10(r29) lbl_800F0E90: /* 800F0E90 000EDDF0 3A D6 00 60 */ addi r22, r22, 0x60 /* 800F0E94 000EDDF4 3A 94 00 01 */ addi r20, r20, 1 lbl_800F0E98: /* 800F0E98 000EDDF8 80 1F 00 00 */ lwz r0, 0(r31) /* 800F0E9C 000EDDFC 7C 14 00 00 */ cmpw r20, r0 /* 800F0EA0 000EDE00 41 80 FF 44 */ blt lbl_800F0DE4 lbl_800F0EA4: /* 800F0EA4 000EDE04 88 1D 00 28 */ lbz r0, 0x28(r29) /* 800F0EA8 000EDE08 28 00 00 00 */ cmplwi r0, 0 /* 800F0EAC 000EDE0C 41 82 00 44 */ beq lbl_800F0EF0 /* 800F0EB0 000EDE10 3C 00 80 00 */ lis r0, 0x8000 /* 800F0EB4 000EDE14 38 A0 00 00 */ li r5, 0 /* 800F0EB8 000EDE18 7F 60 00 38 */ and r0, r27, r0 /* 800F0EBC 000EDE1C 7F 84 28 38 */ and r4, r28, r5 /* 800F0EC0 000EDE20 7C 03 2A 78 */ xor r3, r0, r5 /* 800F0EC4 000EDE24 7C 80 2A 78 */ xor r0, r4, r5 /* 800F0EC8 000EDE28 7C 60 03 79 */ or. r0, r3, r0 /* 800F0ECC 000EDE2C 41 82 00 24 */ beq lbl_800F0EF0 /* 800F0ED0 000EDE30 3C 60 40 00 */ lis r3, 0x4000 /* 800F0ED4 000EDE34 7C 80 2A 78 */ xor r0, r4, r5 /* 800F0ED8 000EDE38 7F 63 18 38 */ and r3, r27, r3 /* 800F0EDC 000EDE3C 7C 63 2A 78 */ xor r3, r3, r5 /* 800F0EE0 000EDE40 7C 60 03 79 */ or. r0, r3, r0 /* 800F0EE4 000EDE44 41 82 00 0C */ beq lbl_800F0EF0 /* 800F0EE8 000EDE48 7F A3 EB 78 */ mr r3, r29 /* 800F0EEC 000EDE4C 48 00 4C 4D */ bl SwitchToMarble__10CMorphBallFv lbl_800F0EF0: /* 800F0EF0 000EDE50 7F A3 EB 78 */ mr r3, r29 /* 800F0EF4 000EDE54 48 00 0A DD */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F0EF8 000EDE58 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F0EFC 000EDE5C 40 82 00 B8 */ bne lbl_800F0FB4 /* 800F0F00 000EDE60 88 1D 1D E4 */ lbz r0, 0x1de4(r29) /* 800F0F04 000EDE64 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800F0F08 000EDE68 41 82 00 AC */ beq lbl_800F0FB4 /* 800F0F0C 000EDE6C C0 02 92 28 */ lfs f0, lbl_805AAF48@sda21(r2) /* 800F0F10 000EDE70 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F0F14 000EDE74 40 81 00 A0 */ ble lbl_800F0FB4 /* 800F0F18 000EDE78 38 61 00 34 */ addi r3, r1, 0x34 /* 800F0F1C 000EDE7C 38 81 00 7C */ addi r4, r1, 0x7c /* 800F0F20 000EDE80 48 22 39 31 */ bl AsNormalized__9CVector3fCFv /* 800F0F24 000EDE84 80 1F 00 00 */ lwz r0, 0(r31) /* 800F0F28 000EDE88 38 DF 00 04 */ addi r6, r31, 4 /* 800F0F2C 000EDE8C C0 81 00 34 */ lfs f4, 0x34(r1) /* 800F0F30 000EDE90 C0 A1 00 38 */ lfs f5, 0x38(r1) /* 800F0F34 000EDE94 C0 C1 00 3C */ lfs f6, 0x3c(r1) /* 800F0F38 000EDE98 7C 09 03 A6 */ mtctr r0 /* 800F0F3C 000EDE9C 2C 00 00 00 */ cmpwi r0, 0 /* 800F0F40 000EDEA0 40 81 00 74 */ ble lbl_800F0FB4 /* 800F0F44 000EDEA4 C0 02 92 44 */ lfs f0, lbl_805AAF64@sda21(r2) /* 800F0F48 000EDEA8 38 A0 20 00 */ li r5, 0x2000 /* 800F0F4C 000EDEAC 38 80 00 00 */ li r4, 0 lbl_800F0F50: /* 800F0F50 000EDEB0 80 06 00 38 */ lwz r0, 0x38(r6) /* 800F0F54 000EDEB4 80 66 00 3C */ lwz r3, 0x3c(r6) /* 800F0F58 000EDEB8 7C 00 20 38 */ and r0, r0, r4 /* 800F0F5C 000EDEBC 7C 63 28 38 */ and r3, r3, r5 /* 800F0F60 000EDEC0 7C 63 22 78 */ xor r3, r3, r4 /* 800F0F64 000EDEC4 7C 00 22 78 */ xor r0, r0, r4 /* 800F0F68 000EDEC8 7C 60 03 79 */ or. r0, r3, r0 /* 800F0F6C 000EDECC 40 82 00 40 */ bne lbl_800F0FAC /* 800F0F70 000EDED0 C0 26 00 4C */ lfs f1, 0x4c(r6) /* 800F0F74 000EDED4 C0 46 00 48 */ lfs f2, 0x48(r6) /* 800F0F78 000EDED8 EC 21 01 72 */ fmuls f1, f1, f5 /* 800F0F7C 000EDEDC C0 66 00 50 */ lfs f3, 0x50(r6) /* 800F0F80 000EDEE0 EC 22 09 3A */ fmadds f1, f2, f4, f1 /* 800F0F84 000EDEE4 EC 23 09 BA */ fmadds f1, f3, f6, f1 /* 800F0F88 000EDEE8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F0F8C 000EDEEC 40 80 00 20 */ bge lbl_800F0FAC /* 800F0F90 000EDEF0 7F A3 EB 78 */ mr r3, r29 /* 800F0F94 000EDEF4 48 00 2F 31 */ bl LeaveBoosting__10CMorphBallFv /* 800F0F98 000EDEF8 C0 22 92 48 */ lfs f1, lbl_805AAF68@sda21(r2) /* 800F0F9C 000EDEFC 7F A3 EB 78 */ mr r3, r29 /* 800F0FA0 000EDF00 C0 42 92 4C */ lfs f2, lbl_805AAF6C@sda21(r2) /* 800F0FA4 000EDF04 48 00 24 F9 */ bl DampLinearAndAngularVelocities__10CMorphBallFff /* 800F0FA8 000EDF08 48 00 00 0C */ b lbl_800F0FB4 lbl_800F0FAC: /* 800F0FAC 000EDF0C 38 C6 00 60 */ addi r6, r6, 0x60 /* 800F0FB0 000EDF10 42 00 FF A0 */ bdnz lbl_800F0F50 lbl_800F0FB4: /* 800F0FB4 000EDF14 A0 7E 00 00 */ lhz r3, 0(r30) /* 800F0FB8 000EDF18 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800F0FBC 000EDF1C 7C 03 00 40 */ cmplw r3, r0 /* 800F0FC0 000EDF20 40 82 01 EC */ bne lbl_800F11AC /* 800F0FC4 000EDF24 80 9D 00 00 */ lwz r4, 0(r29) /* 800F0FC8 000EDF28 38 61 00 70 */ addi r3, r1, 0x70 /* 800F0FCC 000EDF2C C0 04 01 38 */ lfs f0, 0x138(r4) /* 800F0FD0 000EDF30 D0 01 00 70 */ stfs f0, 0x70(r1) /* 800F0FD4 000EDF34 C0 04 01 3C */ lfs f0, 0x13c(r4) /* 800F0FD8 000EDF38 D0 01 00 74 */ stfs f0, 0x74(r1) /* 800F0FDC 000EDF3C C0 04 01 40 */ lfs f0, 0x140(r4) /* 800F0FE0 000EDF40 D0 01 00 78 */ stfs f0, 0x78(r1) /* 800F0FE4 000EDF44 C0 1D 00 1C */ lfs f0, 0x1c(r29) /* 800F0FE8 000EDF48 D0 01 00 64 */ stfs f0, 0x64(r1) /* 800F0FEC 000EDF4C C0 1D 00 20 */ lfs f0, 0x20(r29) /* 800F0FF0 000EDF50 D0 01 00 68 */ stfs f0, 0x68(r1) /* 800F0FF4 000EDF54 C0 1D 00 24 */ lfs f0, 0x24(r29) /* 800F0FF8 000EDF58 D0 01 00 6C */ stfs f0, 0x6c(r1) /* 800F0FFC 000EDF5C 48 22 38 BD */ bl Magnitude__9CVector3fCFv /* 800F1000 000EDF60 FF E0 08 90 */ fmr f31, f1 /* 800F1004 000EDF64 38 61 00 64 */ addi r3, r1, 0x64 /* 800F1008 000EDF68 48 22 38 B1 */ bl Magnitude__9CVector3fCFv /* 800F100C 000EDF6C C0 02 92 30 */ lfs f0, lbl_805AAF50@sda21(r2) /* 800F1010 000EDF70 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F1014 000EDF74 40 81 01 98 */ ble lbl_800F11AC /* 800F1018 000EDF78 C0 02 91 E0 */ lfs f0, lbl_805AAF00@sda21(r2) /* 800F101C 000EDF7C FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F1020 000EDF80 40 81 01 8C */ ble lbl_800F11AC /* 800F1024 000EDF84 38 61 00 28 */ addi r3, r1, 0x28 /* 800F1028 000EDF88 38 81 00 64 */ addi r4, r1, 0x64 /* 800F102C 000EDF8C 48 22 38 25 */ bl AsNormalized__9CVector3fCFv /* 800F1030 000EDF90 C3 C1 00 28 */ lfs f30, 0x28(r1) /* 800F1034 000EDF94 38 61 00 1C */ addi r3, r1, 0x1c /* 800F1038 000EDF98 C3 A1 00 2C */ lfs f29, 0x2c(r1) /* 800F103C 000EDF9C 38 81 00 70 */ addi r4, r1, 0x70 /* 800F1040 000EDFA0 C3 81 00 30 */ lfs f28, 0x30(r1) /* 800F1044 000EDFA4 48 22 38 0D */ bl AsNormalized__9CVector3fCFv /* 800F1048 000EDFA8 C3 61 00 1C */ lfs f27, 0x1c(r1) /* 800F104C 000EDFAC 3A 9F 00 04 */ addi r20, r31, 4 /* 800F1050 000EDFB0 C3 41 00 20 */ lfs f26, 0x20(r1) /* 800F1054 000EDFB4 C3 21 00 24 */ lfs f25, 0x24(r1) /* 800F1058 000EDFB8 48 00 01 3C */ b lbl_800F1194 lbl_800F105C: /* 800F105C 000EDFBC 7F A3 EB 78 */ mr r3, r29 /* 800F1060 000EDFC0 7E 84 A3 78 */ mr r4, r20 /* 800F1064 000EDFC4 4B FF EB 59 */ bl IsClimbable__10CMorphBallCFRC14CCollisionInfo /* 800F1068 000EDFC8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F106C 000EDFCC 41 82 01 24 */ beq lbl_800F1190 /* 800F1070 000EDFD0 C0 14 00 4C */ lfs f0, 0x4c(r20) /* 800F1074 000EDFD4 C0 74 00 48 */ lfs f3, 0x48(r20) /* 800F1078 000EDFD8 EC 3D 00 32 */ fmuls f1, f29, f0 /* 800F107C 000EDFDC C0 94 00 50 */ lfs f4, 0x50(r20) /* 800F1080 000EDFE0 EC 5A 00 32 */ fmuls f2, f26, f0 /* 800F1084 000EDFE4 C0 02 92 44 */ lfs f0, lbl_805AAF64@sda21(r2) /* 800F1088 000EDFE8 EC 3E 08 FA */ fmadds f1, f30, f3, f1 /* 800F108C 000EDFEC EC 5B 10 FA */ fmadds f2, f27, f3, f2 /* 800F1090 000EDFF0 EC 3C 09 3A */ fmadds f1, f28, f4, f1 /* 800F1094 000EDFF4 EC 59 11 3A */ fmadds f2, f25, f4, f2 /* 800F1098 000EDFF8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F109C 000EDFFC 40 80 00 F4 */ bge lbl_800F1190 /* 800F10A0 000EE000 C0 02 92 50 */ lfs f0, lbl_805AAF70@sda21(r2) /* 800F10A4 000EE004 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800F10A8 000EE008 40 80 00 E8 */ bge lbl_800F1190 /* 800F10AC 000EE00C 80 BD 00 00 */ lwz r5, 0(r29) /* 800F10B0 000EE010 C0 02 91 98 */ lfs f0, lbl_805AAEB8@sda21(r2) /* 800F10B4 000EE014 80 05 02 B0 */ lwz r0, 0x2b0(r5) /* 800F10B8 000EE018 EC 40 07 F2 */ fmuls f2, f0, f31 /* 800F10BC 000EE01C 2C 00 00 02 */ cmpwi r0, 2 /* 800F10C0 000EE020 40 82 00 0C */ bne lbl_800F10CC /* 800F10C4 000EE024 80 05 02 AC */ lwz r0, 0x2ac(r5) /* 800F10C8 000EE028 48 00 00 08 */ b lbl_800F10D0 lbl_800F10CC: /* 800F10CC 000EE02C 38 00 00 04 */ li r0, 4 lbl_800F10D0: /* 800F10D0 000EE030 80 8D A1 1C */ lwz r4, gpTweakBall@sda21(r13) /* 800F10D4 000EE034 54 03 10 3A */ slwi r3, r0, 2 /* 800F10D8 000EE038 80 05 02 B0 */ lwz r0, 0x2b0(r5) /* 800F10DC 000EE03C 38 84 00 44 */ addi r4, r4, 0x44 /* 800F10E0 000EE040 C0 22 92 54 */ lfs f1, lbl_805AAF74@sda21(r2) /* 800F10E4 000EE044 7C 04 1C 2E */ lfsx f0, r4, r3 /* 800F10E8 000EE048 2C 00 00 02 */ cmpwi r0, 2 /* 800F10EC 000EE04C EC 01 00 32 */ fmuls f0, f1, f0 /* 800F10F0 000EE050 EC 22 00 28 */ fsubs f1, f2, f0 /* 800F10F4 000EE054 FC 61 00 AE */ fsel f3, f1, f2, f0 /* 800F10F8 000EE058 40 82 00 0C */ bne lbl_800F1104 /* 800F10FC 000EE05C 80 05 02 AC */ lwz r0, 0x2ac(r5) /* 800F1100 000EE060 48 00 00 08 */ b lbl_800F1108 lbl_800F1104: /* 800F1104 000EE064 38 00 00 04 */ li r0, 4 lbl_800F1108: /* 800F1108 000EE068 54 00 10 3A */ slwi r0, r0, 2 /* 800F110C 000EE06C C0 01 00 70 */ lfs f0, 0x70(r1) /* 800F1110 000EE070 7C 24 04 2E */ lfsx f1, r4, r0 /* 800F1114 000EE074 38 81 00 58 */ addi r4, r1, 0x58 /* 800F1118 000EE078 C0 42 91 90 */ lfs f2, lbl_805AAEB0@sda21(r2) /* 800F111C 000EE07C D0 1D 1D CC */ stfs f0, 0x1dcc(r29) /* 800F1120 000EE080 EC 82 00 72 */ fmuls f4, f2, f1 /* 800F1124 000EE084 C0 42 91 50 */ lfs f2, lbl_805AAE70@sda21(r2) /* 800F1128 000EE088 C0 01 00 74 */ lfs f0, 0x74(r1) /* 800F112C 000EE08C D0 1D 1D D0 */ stfs f0, 0x1dd0(r29) /* 800F1130 000EE090 EC 23 20 28 */ fsubs f1, f3, f4 /* 800F1134 000EE094 C0 01 00 78 */ lfs f0, 0x78(r1) /* 800F1138 000EE098 FC 81 19 2E */ fsel f4, f1, f4, f3 /* 800F113C 000EE09C D0 1D 1D D4 */ stfs f0, 0x1dd4(r29) /* 800F1140 000EE0A0 C0 61 00 74 */ lfs f3, 0x74(r1) /* 800F1144 000EE0A4 C0 21 00 78 */ lfs f1, 0x78(r1) /* 800F1148 000EE0A8 C0 01 00 70 */ lfs f0, 0x70(r1) /* 800F114C 000EE0AC EC 63 10 2A */ fadds f3, f3, f2 /* 800F1150 000EE0B0 EC 21 20 2A */ fadds f1, f1, f4 /* 800F1154 000EE0B4 EC 00 10 2A */ fadds f0, f0, f2 /* 800F1158 000EE0B8 D0 61 00 5C */ stfs f3, 0x5c(r1) /* 800F115C 000EE0BC D0 01 00 58 */ stfs f0, 0x58(r1) /* 800F1160 000EE0C0 D0 21 00 60 */ stfs f1, 0x60(r1) /* 800F1164 000EE0C4 D0 1D 1D D8 */ stfs f0, 0x1dd8(r29) /* 800F1168 000EE0C8 C0 01 00 5C */ lfs f0, 0x5c(r1) /* 800F116C 000EE0CC D0 1D 1D DC */ stfs f0, 0x1ddc(r29) /* 800F1170 000EE0D0 C0 01 00 60 */ lfs f0, 0x60(r1) /* 800F1174 000EE0D4 D0 1D 1D E0 */ stfs f0, 0x1de0(r29) /* 800F1178 000EE0D8 80 7D 00 00 */ lwz r3, 0(r29) /* 800F117C 000EE0DC 48 02 9B 25 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f /* 800F1180 000EE0E0 80 7D 1D C8 */ lwz r3, 0x1dc8(r29) /* 800F1184 000EE0E4 38 03 00 01 */ addi r0, r3, 1 /* 800F1188 000EE0E8 90 1D 1D C8 */ stw r0, 0x1dc8(r29) /* 800F118C 000EE0EC 48 00 00 20 */ b lbl_800F11AC lbl_800F1190: /* 800F1190 000EE0F0 3A 94 00 60 */ addi r20, r20, 0x60 lbl_800F1194: /* 800F1194 000EE0F4 80 1F 00 00 */ lwz r0, 0(r31) /* 800F1198 000EE0F8 1C 00 00 60 */ mulli r0, r0, 0x60 /* 800F119C 000EE0FC 7C 7F 02 14 */ add r3, r31, r0 /* 800F11A0 000EE100 38 03 00 04 */ addi r0, r3, 4 /* 800F11A4 000EE104 7C 14 00 40 */ cmplw r20, r0 /* 800F11A8 000EE108 40 82 FE B4 */ bne lbl_800F105C lbl_800F11AC: /* 800F11AC 000EE10C 80 9F 00 00 */ lwz r4, 0(r31) /* 800F11B0 000EE110 2C 04 00 02 */ cmpwi r4, 2 /* 800F11B4 000EE114 40 81 01 00 */ ble lbl_800F12B4 /* 800F11B8 000EE118 C0 BF 00 54 */ lfs f5, 0x54(r31) /* 800F11BC 000EE11C C0 02 91 E8 */ lfs f0, lbl_805AAF08@sda21(r2) /* 800F11C0 000EE120 FC 05 00 40 */ fcmpo cr0, f5, f0 /* 800F11C4 000EE124 40 81 00 F0 */ ble lbl_800F12B4 /* 800F11C8 000EE128 80 7D 00 00 */ lwz r3, 0(r29) /* 800F11CC 000EE12C C0 3F 00 50 */ lfs f1, 0x50(r31) /* 800F11D0 000EE130 C0 03 01 3C */ lfs f0, 0x13c(r3) /* 800F11D4 000EE134 C0 7F 00 4C */ lfs f3, 0x4c(r31) /* 800F11D8 000EE138 EC 21 00 32 */ fmuls f1, f1, f0 /* 800F11DC 000EE13C C0 43 01 38 */ lfs f2, 0x138(r3) /* 800F11E0 000EE140 C0 83 01 40 */ lfs f4, 0x140(r3) /* 800F11E4 000EE144 C0 02 91 D8 */ lfs f0, lbl_805AAEF8@sda21(r2) /* 800F11E8 000EE148 EC 23 08 BA */ fmadds f1, f3, f2, f1 /* 800F11EC 000EE14C EC 25 09 3A */ fmadds f1, f5, f4, f1 /* 800F11F0 000EE150 FC 20 0A 10 */ fabs f1, f1 /* 800F11F4 000EE154 FC 20 08 18 */ frsp f1, f1 /* 800F11F8 000EE158 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F11FC 000EE15C 40 81 00 B8 */ ble lbl_800F12B4 /* 800F1200 000EE160 38 DF 00 64 */ addi r6, r31, 0x64 /* 800F1204 000EE164 C0 A2 91 50 */ lfs f5, lbl_805AAE70@sda21(r2) /* 800F1208 000EE168 7C C5 33 78 */ mr r5, r6 /* 800F120C 000EE16C 38 04 FF FF */ addi r0, r4, -1 /* 800F1210 000EE170 38 E0 00 00 */ li r7, 0 /* 800F1214 000EE174 39 00 00 01 */ li r8, 1 /* 800F1218 000EE178 48 00 00 60 */ b lbl_800F1278 lbl_800F121C: /* 800F121C 000EE17C 7C C3 33 78 */ mr r3, r6 /* 800F1220 000EE180 39 20 00 01 */ li r9, 1 /* 800F1224 000EE184 7C 09 03 A6 */ mtctr r0 /* 800F1228 000EE188 2C 04 00 01 */ cmpwi r4, 1 /* 800F122C 000EE18C 40 81 00 44 */ ble lbl_800F1270 lbl_800F1230: /* 800F1230 000EE190 7C 08 48 00 */ cmpw r8, r9 /* 800F1234 000EE194 41 82 00 30 */ beq lbl_800F1264 /* 800F1238 000EE198 C0 25 00 4C */ lfs f1, 0x4c(r5) /* 800F123C 000EE19C 38 E7 00 01 */ addi r7, r7, 1 /* 800F1240 000EE1A0 C0 03 00 4C */ lfs f0, 0x4c(r3) /* 800F1244 000EE1A4 C0 45 00 48 */ lfs f2, 0x48(r5) /* 800F1248 000EE1A8 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F124C 000EE1AC C0 23 00 48 */ lfs f1, 0x48(r3) /* 800F1250 000EE1B0 C0 85 00 50 */ lfs f4, 0x50(r5) /* 800F1254 000EE1B4 C0 63 00 50 */ lfs f3, 0x50(r3) /* 800F1258 000EE1B8 EC 02 00 7A */ fmadds f0, f2, f1, f0 /* 800F125C 000EE1BC EC 04 00 FA */ fmadds f0, f4, f3, f0 /* 800F1260 000EE1C0 EC A5 00 2A */ fadds f5, f5, f0 lbl_800F1264: /* 800F1264 000EE1C4 38 63 00 60 */ addi r3, r3, 0x60 /* 800F1268 000EE1C8 39 29 00 01 */ addi r9, r9, 1 /* 800F126C 000EE1CC 42 00 FF C4 */ bdnz lbl_800F1230 lbl_800F1270: /* 800F1270 000EE1D0 38 A5 00 60 */ addi r5, r5, 0x60 /* 800F1274 000EE1D4 39 08 00 01 */ addi r8, r8, 1 lbl_800F1278: /* 800F1278 000EE1D8 7C 08 20 00 */ cmpw r8, r4 /* 800F127C 000EE1DC 41 80 FF A0 */ blt lbl_800F121C /* 800F1280 000EE1E0 3C 00 43 30 */ lis r0, 0x4330 /* 800F1284 000EE1E4 90 E1 00 8C */ stw r7, 0x8c(r1) /* 800F1288 000EE1E8 C8 42 91 A0 */ lfd f2, lbl_805AAEC0@sda21(r2) /* 800F128C 000EE1EC 90 01 00 88 */ stw r0, 0x88(r1) /* 800F1290 000EE1F0 C0 02 92 58 */ lfs f0, lbl_805AAF78@sda21(r2) /* 800F1294 000EE1F4 C8 21 00 88 */ lfd f1, 0x88(r1) /* 800F1298 000EE1F8 EC 21 10 28 */ fsubs f1, f1, f2 /* 800F129C 000EE1FC EC A5 08 24 */ fdivs f5, f5, f1 /* 800F12A0 000EE200 FC 05 00 40 */ fcmpo cr0, f5, f0 /* 800F12A4 000EE204 40 80 00 10 */ bge lbl_800F12B4 /* 800F12A8 000EE208 80 7D 1D C8 */ lwz r3, 0x1dc8(r29) /* 800F12AC 000EE20C 38 03 00 01 */ addi r0, r3, 1 /* 800F12B0 000EE210 90 1D 1D C8 */ stw r0, 0x1dc8(r29) lbl_800F12B4: /* 800F12B4 000EE214 80 1F 00 00 */ lwz r0, 0(r31) /* 800F12B8 000EE218 38 9F 00 04 */ addi r4, r31, 4 /* 800F12BC 000EE21C 1C 00 00 60 */ mulli r0, r0, 0x60 /* 800F12C0 000EE220 7C 7F 02 14 */ add r3, r31, r0 /* 800F12C4 000EE224 38 03 00 04 */ addi r0, r3, 4 /* 800F12C8 000EE228 7C 04 00 40 */ cmplw r4, r0 /* 800F12CC 000EE22C 41 82 00 10 */ beq lbl_800F12DC /* 800F12D0 000EE230 7F A3 EB 78 */ mr r3, r29 /* 800F12D4 000EE234 38 84 00 38 */ addi r4, r4, 0x38 /* 800F12D8 000EE238 4B FF D9 05 */ bl SelectMorphBallSounds__10CMorphBallFRC13CMaterialList lbl_800F12DC: /* 800F12DC 000EE23C E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 /* 800F12E0 000EE240 CB E1 01 20 */ lfd f31, 0x120(r1) /* 800F12E4 000EE244 E3 C1 01 18 */ psq_l f30, 280(r1), 0, qr0 /* 800F12E8 000EE248 CB C1 01 10 */ lfd f30, 0x110(r1) /* 800F12EC 000EE24C E3 A1 01 08 */ psq_l f29, 264(r1), 0, qr0 /* 800F12F0 000EE250 CB A1 01 00 */ lfd f29, 0x100(r1) /* 800F12F4 000EE254 E3 81 00 F8 */ psq_l f28, 248(r1), 0, qr0 /* 800F12F8 000EE258 CB 81 00 F0 */ lfd f28, 0xf0(r1) /* 800F12FC 000EE25C E3 61 00 E8 */ psq_l f27, 232(r1), 0, qr0 /* 800F1300 000EE260 CB 61 00 E0 */ lfd f27, 0xe0(r1) /* 800F1304 000EE264 E3 41 00 D8 */ psq_l f26, 216(r1), 0, qr0 /* 800F1308 000EE268 CB 41 00 D0 */ lfd f26, 0xd0(r1) /* 800F130C 000EE26C E3 21 00 C8 */ psq_l f25, 200(r1), 0, qr0 /* 800F1310 000EE270 CB 21 00 C0 */ lfd f25, 0xc0(r1) /* 800F1314 000EE274 BA 81 00 90 */ lmw r20, 0x90(r1) /* 800F1318 000EE278 80 01 01 34 */ lwz r0, 0x134(r1) /* 800F131C 000EE27C 7C 08 03 A6 */ mtlr r0 /* 800F1320 000EE280 38 21 01 30 */ addi r1, r1, 0x130 /* 800F1324 000EE284 4E 80 00 20 */ blr .global __as__18CCollisionInfoListFRC18CCollisionInfoList __as__18CCollisionInfoListFRC18CCollisionInfoList: /* 800F1328 000EE288 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F132C 000EE28C 7C 08 02 A6 */ mflr r0 /* 800F1330 000EE290 90 01 00 14 */ stw r0, 0x14(r1) /* 800F1334 000EE294 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F1338 000EE298 7C 7F 1B 78 */ mr r31, r3 /* 800F133C 000EE29C 48 00 00 1D */ bl sub_800f1358 /* 800F1340 000EE2A0 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F1344 000EE2A4 7F E3 FB 78 */ mr r3, r31 /* 800F1348 000EE2A8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F134C 000EE2AC 7C 08 03 A6 */ mtlr r0 /* 800F1350 000EE2B0 38 21 00 10 */ addi r1, r1, 0x10 /* 800F1354 000EE2B4 4E 80 00 20 */ blr .global sub_800f1358 sub_800f1358: /* 800F1358 000EE2B8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F135C 000EE2BC 7C 08 02 A6 */ mflr r0 /* 800F1360 000EE2C0 90 01 00 14 */ stw r0, 0x14(r1) /* 800F1364 000EE2C4 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F1368 000EE2C8 7C 9F 23 78 */ mr r31, r4 /* 800F136C 000EE2CC 93 C1 00 08 */ stw r30, 8(r1) /* 800F1370 000EE2D0 7C 7E 1B 78 */ mr r30, r3 /* 800F1374 000EE2D4 7C 1E F8 40 */ cmplw r30, r31 /* 800F1378 000EE2D8 40 82 00 08 */ bne lbl_800F1380 /* 800F137C 000EE2DC 48 00 00 80 */ b lbl_800F13FC lbl_800F1380: /* 800F1380 000EE2E0 80 BE 00 00 */ lwz r5, 0(r30) /* 800F1384 000EE2E4 38 60 00 00 */ li r3, 0 /* 800F1388 000EE2E8 2C 05 00 00 */ cmpwi r5, 0 /* 800F138C 000EE2EC 40 81 00 40 */ ble lbl_800F13CC /* 800F1390 000EE2F0 2C 05 00 08 */ cmpwi r5, 8 /* 800F1394 000EE2F4 38 85 FF F8 */ addi r4, r5, -8 /* 800F1398 000EE2F8 40 81 00 20 */ ble lbl_800F13B8 /* 800F139C 000EE2FC 38 04 00 07 */ addi r0, r4, 7 /* 800F13A0 000EE300 54 00 E8 FE */ srwi r0, r0, 3 /* 800F13A4 000EE304 7C 09 03 A6 */ mtctr r0 /* 800F13A8 000EE308 2C 04 00 00 */ cmpwi r4, 0 /* 800F13AC 000EE30C 40 81 00 0C */ ble lbl_800F13B8 lbl_800F13B0: /* 800F13B0 000EE310 38 63 00 08 */ addi r3, r3, 8 /* 800F13B4 000EE314 42 00 FF FC */ bdnz lbl_800F13B0 lbl_800F13B8: /* 800F13B8 000EE318 7C 03 28 50 */ subf r0, r3, r5 /* 800F13BC 000EE31C 7C 09 03 A6 */ mtctr r0 /* 800F13C0 000EE320 7C 03 28 00 */ cmpw r3, r5 /* 800F13C4 000EE324 40 80 00 08 */ bge lbl_800F13CC lbl_800F13C8: /* 800F13C8 000EE328 42 00 00 00 */ bdnz lbl_800F13C8 lbl_800F13CC: /* 800F13CC 000EE32C 38 00 00 00 */ li r0, 0 /* 800F13D0 000EE330 38 7F 00 04 */ addi r3, r31, 4 /* 800F13D4 000EE334 90 1E 00 00 */ stw r0, 0(r30) /* 800F13D8 000EE338 38 BE 00 04 */ addi r5, r30, 4 /* 800F13DC 000EE33C 80 1F 00 00 */ lwz r0, 0(r31) /* 800F13E0 000EE340 1C 00 00 60 */ mulli r0, r0, 0x60 /* 800F13E4 000EE344 7C 9F 02 14 */ add r4, r31, r0 /* 800F13E8 000EE348 38 84 00 04 */ addi r4, r4, 4 /* 800F13EC 000EE34C 48 00 00 29 */ bl sub_800f1414 /* 800F13F0 000EE350 80 1F 00 00 */ lwz r0, 0(r31) /* 800F13F4 000EE354 7F C3 F3 78 */ mr r3, r30 /* 800F13F8 000EE358 90 1E 00 00 */ stw r0, 0(r30) lbl_800F13FC: /* 800F13FC 000EE35C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F1400 000EE360 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F1404 000EE364 83 C1 00 08 */ lwz r30, 8(r1) /* 800F1408 000EE368 7C 08 03 A6 */ mtlr r0 /* 800F140C 000EE36C 38 21 00 10 */ addi r1, r1, 0x10 /* 800F1410 000EE370 4E 80 00 20 */ blr .global sub_800f1414 sub_800f1414: /* 800F1414 000EE374 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F1418 000EE378 7C 08 02 A6 */ mflr r0 /* 800F141C 000EE37C 90 01 00 24 */ stw r0, 0x24(r1) /* 800F1420 000EE380 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800F1424 000EE384 7C BF 2B 78 */ mr r31, r5 /* 800F1428 000EE388 93 C1 00 18 */ stw r30, 0x18(r1) /* 800F142C 000EE38C 7C 7E 1B 78 */ mr r30, r3 /* 800F1430 000EE390 93 A1 00 14 */ stw r29, 0x14(r1) /* 800F1434 000EE394 7C 9D 23 78 */ mr r29, r4 /* 800F1438 000EE398 48 00 00 18 */ b lbl_800F1450 lbl_800F143C: /* 800F143C 000EE39C 7F E3 FB 78 */ mr r3, r31 /* 800F1440 000EE3A0 7F C4 F3 78 */ mr r4, r30 /* 800F1444 000EE3A4 48 00 00 35 */ bl sub_800f1478 /* 800F1448 000EE3A8 3B FF 00 60 */ addi r31, r31, 0x60 /* 800F144C 000EE3AC 3B DE 00 60 */ addi r30, r30, 0x60 lbl_800F1450: /* 800F1450 000EE3B0 7C 1E E8 40 */ cmplw r30, r29 /* 800F1454 000EE3B4 40 82 FF E8 */ bne lbl_800F143C /* 800F1458 000EE3B8 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F145C 000EE3BC 7F E3 FB 78 */ mr r3, r31 /* 800F1460 000EE3C0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800F1464 000EE3C4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800F1468 000EE3C8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800F146C 000EE3CC 7C 08 03 A6 */ mtlr r0 /* 800F1470 000EE3D0 38 21 00 20 */ addi r1, r1, 0x20 /* 800F1474 000EE3D4 4E 80 00 20 */ blr .global sub_800f1478 sub_800f1478: /* 800F1478 000EE3D8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F147C 000EE3DC 7C 08 02 A6 */ mflr r0 /* 800F1480 000EE3E0 28 03 00 00 */ cmplwi r3, 0 /* 800F1484 000EE3E4 90 01 00 14 */ stw r0, 0x14(r1) /* 800F1488 000EE3E8 41 82 00 08 */ beq lbl_800F1490 /* 800F148C 000EE3EC 48 00 00 15 */ bl __ct__14CCollisionInfoFRC14CCollisionInfo lbl_800F1490: /* 800F1490 000EE3F0 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F1494 000EE3F4 7C 08 03 A6 */ mtlr r0 /* 800F1498 000EE3F8 38 21 00 10 */ addi r1, r1, 0x10 /* 800F149C 000EE3FC 4E 80 00 20 */ blr .global __ct__14CCollisionInfoFRC14CCollisionInfo __ct__14CCollisionInfoFRC14CCollisionInfo: /* 800F14A0 000EE400 C0 04 00 00 */ lfs f0, 0(r4) /* 800F14A4 000EE404 D0 03 00 00 */ stfs f0, 0(r3) /* 800F14A8 000EE408 C0 04 00 04 */ lfs f0, 4(r4) /* 800F14AC 000EE40C D0 03 00 04 */ stfs f0, 4(r3) /* 800F14B0 000EE410 C0 04 00 08 */ lfs f0, 8(r4) /* 800F14B4 000EE414 D0 03 00 08 */ stfs f0, 8(r3) /* 800F14B8 000EE418 C0 04 00 0C */ lfs f0, 0xc(r4) /* 800F14BC 000EE41C D0 03 00 0C */ stfs f0, 0xc(r3) /* 800F14C0 000EE420 C0 04 00 10 */ lfs f0, 0x10(r4) /* 800F14C4 000EE424 D0 03 00 10 */ stfs f0, 0x10(r3) /* 800F14C8 000EE428 C0 04 00 14 */ lfs f0, 0x14(r4) /* 800F14CC 000EE42C D0 03 00 14 */ stfs f0, 0x14(r3) /* 800F14D0 000EE430 C0 04 00 18 */ lfs f0, 0x18(r4) /* 800F14D4 000EE434 D0 03 00 18 */ stfs f0, 0x18(r3) /* 800F14D8 000EE438 C0 04 00 1C */ lfs f0, 0x1c(r4) /* 800F14DC 000EE43C D0 03 00 1C */ stfs f0, 0x1c(r3) /* 800F14E0 000EE440 C0 04 00 20 */ lfs f0, 0x20(r4) /* 800F14E4 000EE444 D0 03 00 20 */ stfs f0, 0x20(r3) /* 800F14E8 000EE448 C0 04 00 24 */ lfs f0, 0x24(r4) /* 800F14EC 000EE44C D0 03 00 24 */ stfs f0, 0x24(r3) /* 800F14F0 000EE450 C0 04 00 28 */ lfs f0, 0x28(r4) /* 800F14F4 000EE454 D0 03 00 28 */ stfs f0, 0x28(r3) /* 800F14F8 000EE458 C0 04 00 2C */ lfs f0, 0x2c(r4) /* 800F14FC 000EE45C D0 03 00 2C */ stfs f0, 0x2c(r3) /* 800F1500 000EE460 88 04 00 30 */ lbz r0, 0x30(r4) /* 800F1504 000EE464 98 03 00 30 */ stb r0, 0x30(r3) /* 800F1508 000EE468 88 04 00 31 */ lbz r0, 0x31(r4) /* 800F150C 000EE46C 98 03 00 31 */ stb r0, 0x31(r3) /* 800F1510 000EE470 80 04 00 38 */ lwz r0, 0x38(r4) /* 800F1514 000EE474 80 A4 00 3C */ lwz r5, 0x3c(r4) /* 800F1518 000EE478 90 A3 00 3C */ stw r5, 0x3c(r3) /* 800F151C 000EE47C 90 03 00 38 */ stw r0, 0x38(r3) /* 800F1520 000EE480 80 04 00 40 */ lwz r0, 0x40(r4) /* 800F1524 000EE484 80 A4 00 44 */ lwz r5, 0x44(r4) /* 800F1528 000EE488 90 A3 00 44 */ stw r5, 0x44(r3) /* 800F152C 000EE48C 90 03 00 40 */ stw r0, 0x40(r3) /* 800F1530 000EE490 C0 04 00 48 */ lfs f0, 0x48(r4) /* 800F1534 000EE494 D0 03 00 48 */ stfs f0, 0x48(r3) /* 800F1538 000EE498 C0 04 00 4C */ lfs f0, 0x4c(r4) /* 800F153C 000EE49C D0 03 00 4C */ stfs f0, 0x4c(r3) /* 800F1540 000EE4A0 C0 04 00 50 */ lfs f0, 0x50(r4) /* 800F1544 000EE4A4 D0 03 00 50 */ stfs f0, 0x50(r3) /* 800F1548 000EE4A8 C0 04 00 54 */ lfs f0, 0x54(r4) /* 800F154C 000EE4AC D0 03 00 54 */ stfs f0, 0x54(r3) /* 800F1550 000EE4B0 C0 04 00 58 */ lfs f0, 0x58(r4) /* 800F1554 000EE4B4 D0 03 00 58 */ stfs f0, 0x58(r3) /* 800F1558 000EE4B8 C0 04 00 5C */ lfs f0, 0x5c(r4) /* 800F155C 000EE4BC D0 03 00 5C */ stfs f0, 0x5c(r3) /* 800F1560 000EE4C0 4E 80 00 20 */ blr .global BallCloseToCollision__10CMorphBallCFRC13CStateManagerfRC15CMaterialFilter BallCloseToCollision__10CMorphBallCFRC13CStateManagerfRC15CMaterialFilter: /* 800F1564 000EE4C4 94 21 F6 A0 */ stwu r1, -0x960(r1) /* 800F1568 000EE4C8 7C 08 02 A6 */ mflr r0 /* 800F156C 000EE4CC 90 01 09 64 */ stw r0, 0x964(r1) /* 800F1570 000EE4D0 DB E1 09 50 */ stfd f31, 0x950(r1) /* 800F1574 000EE4D4 F3 E1 09 58 */ psq_st f31, -1704(r1), 0, qr0 /* 800F1578 000EE4D8 DB C1 09 40 */ stfd f30, 0x940(r1) /* 800F157C 000EE4DC F3 C1 09 48 */ psq_st f30, -1720(r1), 0, qr0 /* 800F1580 000EE4E0 DB A1 09 30 */ stfd f29, 0x930(r1) /* 800F1584 000EE4E4 F3 A1 09 38 */ psq_st f29, -1736(r1), 0, qr0 /* 800F1588 000EE4E8 DB 81 09 20 */ stfd f28, 0x920(r1) /* 800F158C 000EE4EC F3 81 09 28 */ psq_st f28, -1752(r1), 0, qr0 /* 800F1590 000EE4F0 BF 21 09 04 */ stmw r25, 0x904(r1) /* 800F1594 000EE4F4 38 00 00 00 */ li r0, 0 /* 800F1598 000EE4F8 FF 80 08 90 */ fmr f28, f1 /* 800F159C 000EE4FC 80 CD 88 CC */ lwz r6, lbl_805A748C@sda21(r13) /* 800F15A0 000EE500 7C 7F 1B 78 */ mr r31, r3 /* 800F15A4 000EE504 7C 9D 23 78 */ mr r29, r4 /* 800F15A8 000EE508 7C BE 2B 78 */ mr r30, r5 /* 800F15AC 000EE50C 90 01 00 1C */ stw r0, 0x1c(r1) /* 800F15B0 000EE510 7C C5 33 78 */ mr r5, r6 /* 800F15B4 000EE514 38 60 00 00 */ li r3, 0 /* 800F15B8 000EE518 90 01 00 18 */ stw r0, 0x18(r1) /* 800F15BC 000EE51C 38 80 00 01 */ li r4, 1 /* 800F15C0 000EE520 48 29 89 35 */ bl __shl2i /* 800F15C4 000EE524 80 01 00 18 */ lwz r0, 0x18(r1) /* 800F15C8 000EE528 80 C1 00 1C */ lwz r6, 0x1c(r1) /* 800F15CC 000EE52C 7C 00 1B 78 */ or r0, r0, r3 /* 800F15D0 000EE530 80 AD 88 D0 */ lwz r5, lbl_805A7490@sda21(r13) /* 800F15D4 000EE534 7C C4 23 78 */ or r4, r6, r4 /* 800F15D8 000EE538 90 01 00 18 */ stw r0, 0x18(r1) /* 800F15DC 000EE53C 38 60 00 00 */ li r3, 0 /* 800F15E0 000EE540 90 81 00 1C */ stw r4, 0x1c(r1) /* 800F15E4 000EE544 38 80 00 01 */ li r4, 1 /* 800F15E8 000EE548 48 29 89 0D */ bl __shl2i /* 800F15EC 000EE54C 80 01 00 18 */ lwz r0, 0x18(r1) /* 800F15F0 000EE550 80 A1 00 1C */ lwz r5, 0x1c(r1) /* 800F15F4 000EE554 7C 00 1B 78 */ or r0, r0, r3 /* 800F15F8 000EE558 7F E3 FB 78 */ mr r3, r31 /* 800F15FC 000EE55C 7C A4 23 78 */ or r4, r5, r4 /* 800F1600 000EE560 90 01 00 18 */ stw r0, 0x18(r1) /* 800F1604 000EE564 90 81 00 1C */ stw r4, 0x1c(r1) /* 800F1608 000EE568 48 00 77 FD */ bl GetBallRadius__10CMorphBallCFv /* 800F160C 000EE56C 80 BF 00 00 */ lwz r5, 0(r31) /* 800F1610 000EE570 38 61 00 38 */ addi r3, r1, 0x38 /* 800F1614 000EE574 C0 62 91 50 */ lfs f3, lbl_805AAE70@sda21(r2) /* 800F1618 000EE578 38 81 00 18 */ addi r4, r1, 0x18 /* 800F161C 000EE57C C0 85 00 40 */ lfs f4, 0x40(r5) /* 800F1620 000EE580 C0 45 00 50 */ lfs f2, 0x50(r5) /* 800F1624 000EE584 C0 05 00 60 */ lfs f0, 0x60(r5) /* 800F1628 000EE588 EF A4 18 2A */ fadds f29, f4, f3 /* 800F162C 000EE58C EF C2 18 2A */ fadds f30, f2, f3 /* 800F1630 000EE590 EF E0 08 2A */ fadds f31, f0, f1 /* 800F1634 000EE594 48 1D E2 81 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList /* 800F1638 000EE598 3C 60 80 3F */ lis r3, __vt__17CCollidableSphere@ha /* 800F163C 000EE59C 38 00 00 00 */ li r0, 0 /* 800F1640 000EE5A0 38 A3 CA F8 */ addi r5, r3, __vt__17CCollidableSphere@l /* 800F1644 000EE5A4 D3 A1 00 48 */ stfs f29, 0x48(r1) /* 800F1648 000EE5A8 38 61 00 20 */ addi r3, r1, 0x20 /* 800F164C 000EE5AC 38 81 00 38 */ addi r4, r1, 0x38 /* 800F1650 000EE5B0 90 A1 00 38 */ stw r5, 0x38(r1) /* 800F1654 000EE5B4 D3 C1 00 4C */ stfs f30, 0x4c(r1) /* 800F1658 000EE5B8 D3 E1 00 50 */ stfs f31, 0x50(r1) /* 800F165C 000EE5BC D3 81 00 54 */ stfs f28, 0x54(r1) /* 800F1660 000EE5C0 90 01 00 F8 */ stw r0, 0xf8(r1) /* 800F1664 000EE5C4 48 1E 2D 69 */ bl CalculateLocalAABox__17CCollidableSphereCFv /* 800F1668 000EE5C8 80 BF 00 00 */ lwz r5, 0(r31) /* 800F166C 000EE5CC 7F A3 EB 78 */ mr r3, r29 /* 800F1670 000EE5D0 38 81 00 F8 */ addi r4, r1, 0xf8 /* 800F1674 000EE5D4 38 C1 00 20 */ addi r6, r1, 0x20 /* 800F1678 000EE5D8 4B F5 B0 85 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" /* 800F167C 000EE5DC 3C 80 80 5A */ lis r4, sIdentity__12CTransform4f@ha /* 800F1680 000EE5E0 7F A3 EB 78 */ mr r3, r29 /* 800F1684 000EE5E4 38 A4 66 70 */ addi r5, r4, sIdentity__12CTransform4f@l /* 800F1688 000EE5E8 7F C6 F3 78 */ mr r6, r30 /* 800F168C 000EE5EC 38 81 00 38 */ addi r4, r1, 0x38 /* 800F1690 000EE5F0 48 09 1D 11 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter /* 800F1694 000EE5F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F1698 000EE5F8 41 82 00 78 */ beq lbl_800F1710 /* 800F169C 000EE5FC 80 A1 00 F8 */ lwz r5, 0xf8(r1) /* 800F16A0 000EE600 38 60 00 00 */ li r3, 0 /* 800F16A4 000EE604 2C 05 00 00 */ cmpwi r5, 0 /* 800F16A8 000EE608 40 81 00 40 */ ble lbl_800F16E8 /* 800F16AC 000EE60C 2C 05 00 08 */ cmpwi r5, 8 /* 800F16B0 000EE610 38 85 FF F8 */ addi r4, r5, -8 /* 800F16B4 000EE614 40 81 00 20 */ ble lbl_800F16D4 /* 800F16B8 000EE618 38 04 00 07 */ addi r0, r4, 7 /* 800F16BC 000EE61C 54 00 E8 FE */ srwi r0, r0, 3 /* 800F16C0 000EE620 7C 09 03 A6 */ mtctr r0 /* 800F16C4 000EE624 2C 04 00 00 */ cmpwi r4, 0 /* 800F16C8 000EE628 40 81 00 0C */ ble lbl_800F16D4 lbl_800F16CC: /* 800F16CC 000EE62C 38 63 00 08 */ addi r3, r3, 8 /* 800F16D0 000EE630 42 00 FF FC */ bdnz lbl_800F16CC lbl_800F16D4: /* 800F16D4 000EE634 7C 03 28 50 */ subf r0, r3, r5 /* 800F16D8 000EE638 7C 09 03 A6 */ mtctr r0 /* 800F16DC 000EE63C 7C 03 28 00 */ cmpw r3, r5 /* 800F16E0 000EE640 40 80 00 08 */ bge lbl_800F16E8 lbl_800F16E4: /* 800F16E4 000EE644 42 00 00 00 */ bdnz lbl_800F16E4 lbl_800F16E8: /* 800F16E8 000EE648 3C 80 80 3F */ lis r4, __vt__17CCollidableSphere@ha /* 800F16EC 000EE64C 3C 60 80 3E */ lis r3, __vt__19CCollisionPrimitive@ha /* 800F16F0 000EE650 38 04 CA F8 */ addi r0, r4, __vt__17CCollidableSphere@l /* 800F16F4 000EE654 38 80 00 00 */ li r4, 0 /* 800F16F8 000EE658 90 01 00 38 */ stw r0, 0x38(r1) /* 800F16FC 000EE65C 38 03 97 E4 */ addi r0, r3, __vt__19CCollisionPrimitive@l /* 800F1700 000EE660 38 60 00 01 */ li r3, 1 /* 800F1704 000EE664 90 81 00 F8 */ stw r4, 0xf8(r1) /* 800F1708 000EE668 90 01 00 38 */ stw r0, 0x38(r1) /* 800F170C 000EE66C 48 00 01 B4 */ b lbl_800F18C0 lbl_800F1710: /* 800F1710 000EE670 3B 41 00 FC */ addi r26, r1, 0xfc /* 800F1714 000EE674 3B 81 00 90 */ addi r28, r1, 0x90 /* 800F1718 000EE678 7F 5F D3 78 */ mr r31, r26 /* 800F171C 000EE67C 3B 61 00 C8 */ addi r27, r1, 0xc8 /* 800F1720 000EE680 48 00 01 20 */ b lbl_800F1840 lbl_800F1724: /* 800F1724 000EE684 A0 1F 00 00 */ lhz r0, 0(r31) /* 800F1728 000EE688 7F A3 EB 78 */ mr r3, r29 /* 800F172C 000EE68C 38 81 00 08 */ addi r4, r1, 8 /* 800F1730 000EE690 B0 01 00 08 */ sth r0, 8(r1) /* 800F1734 000EE694 4B F5 AE 71 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 800F1738 000EE698 7C 64 1B 78 */ mr r4, r3 /* 800F173C 000EE69C 38 61 00 0C */ addi r3, r1, 0xc /* 800F1740 000EE6A0 4B FB AF A5 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" /* 800F1744 000EE6A4 83 23 00 04 */ lwz r25, 4(r3) /* 800F1748 000EE6A8 28 19 00 00 */ cmplwi r25, 0 /* 800F174C 000EE6AC 41 82 00 F0 */ beq lbl_800F183C /* 800F1750 000EE6B0 7F 24 CB 78 */ mr r4, r25 /* 800F1754 000EE6B4 38 61 00 58 */ addi r3, r1, 0x58 /* 800F1758 000EE6B8 81 99 00 00 */ lwz r12, 0(r25) /* 800F175C 000EE6BC 81 8C 00 70 */ lwz r12, 0x70(r12) /* 800F1760 000EE6C0 7D 89 03 A6 */ mtctr r12 /* 800F1764 000EE6C4 4E 80 04 21 */ bctrl /* 800F1768 000EE6C8 7F 23 CB 78 */ mr r3, r25 /* 800F176C 000EE6CC 81 99 00 00 */ lwz r12, 0(r25) /* 800F1770 000EE6D0 81 8C 00 6C */ lwz r12, 0x6c(r12) /* 800F1774 000EE6D4 7D 89 03 A6 */ mtctr r12 /* 800F1778 000EE6D8 4E 80 04 21 */ bctrl /* 800F177C 000EE6DC 3C 80 80 5A */ lis r4, skPassEverything__15CMaterialFilter@ha /* 800F1780 000EE6E0 90 61 00 88 */ stw r3, 0x88(r1) /* 800F1784 000EE6E4 38 04 FD 18 */ addi r0, r4, skPassEverything__15CMaterialFilter@l /* 800F1788 000EE6E8 7F 83 E3 78 */ mr r3, r28 /* 800F178C 000EE6EC 90 01 00 8C */ stw r0, 0x8c(r1) /* 800F1790 000EE6F0 38 81 00 58 */ addi r4, r1, 0x58 /* 800F1794 000EE6F4 48 22 13 E1 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F1798 000EE6F8 38 01 00 38 */ addi r0, r1, 0x38 /* 800F179C 000EE6FC 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha /* 800F17A0 000EE700 90 01 00 C0 */ stw r0, 0xc0(r1) /* 800F17A4 000EE704 38 83 66 70 */ addi r4, r3, sIdentity__12CTransform4f@l /* 800F17A8 000EE708 7F 63 DB 78 */ mr r3, r27 /* 800F17AC 000EE70C 93 C1 00 C4 */ stw r30, 0xc4(r1) /* 800F17B0 000EE710 48 22 13 C5 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F17B4 000EE714 38 61 00 C0 */ addi r3, r1, 0xc0 /* 800F17B8 000EE718 38 81 00 88 */ addi r4, r1, 0x88 /* 800F17BC 000EE71C 48 1D D0 71 */ bl CollideBoolean__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDesc /* 800F17C0 000EE720 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F17C4 000EE724 41 82 00 78 */ beq lbl_800F183C /* 800F17C8 000EE728 80 A1 00 F8 */ lwz r5, 0xf8(r1) /* 800F17CC 000EE72C 38 60 00 00 */ li r3, 0 /* 800F17D0 000EE730 2C 05 00 00 */ cmpwi r5, 0 /* 800F17D4 000EE734 40 81 00 40 */ ble lbl_800F1814 /* 800F17D8 000EE738 2C 05 00 08 */ cmpwi r5, 8 /* 800F17DC 000EE73C 38 85 FF F8 */ addi r4, r5, -8 /* 800F17E0 000EE740 40 81 00 20 */ ble lbl_800F1800 /* 800F17E4 000EE744 38 04 00 07 */ addi r0, r4, 7 /* 800F17E8 000EE748 54 00 E8 FE */ srwi r0, r0, 3 /* 800F17EC 000EE74C 7C 09 03 A6 */ mtctr r0 /* 800F17F0 000EE750 2C 04 00 00 */ cmpwi r4, 0 /* 800F17F4 000EE754 40 81 00 0C */ ble lbl_800F1800 lbl_800F17F8: /* 800F17F8 000EE758 38 63 00 08 */ addi r3, r3, 8 /* 800F17FC 000EE75C 42 00 FF FC */ bdnz lbl_800F17F8 lbl_800F1800: /* 800F1800 000EE760 7C 03 28 50 */ subf r0, r3, r5 /* 800F1804 000EE764 7C 09 03 A6 */ mtctr r0 /* 800F1808 000EE768 7C 03 28 00 */ cmpw r3, r5 /* 800F180C 000EE76C 40 80 00 08 */ bge lbl_800F1814 lbl_800F1810: /* 800F1810 000EE770 42 00 00 00 */ bdnz lbl_800F1810 lbl_800F1814: /* 800F1814 000EE774 3C 80 80 3F */ lis r4, __vt__17CCollidableSphere@ha /* 800F1818 000EE778 3C 60 80 3E */ lis r3, __vt__19CCollisionPrimitive@ha /* 800F181C 000EE77C 38 04 CA F8 */ addi r0, r4, __vt__17CCollidableSphere@l /* 800F1820 000EE780 38 80 00 00 */ li r4, 0 /* 800F1824 000EE784 90 01 00 38 */ stw r0, 0x38(r1) /* 800F1828 000EE788 38 03 97 E4 */ addi r0, r3, __vt__19CCollisionPrimitive@l /* 800F182C 000EE78C 38 60 00 01 */ li r3, 1 /* 800F1830 000EE790 90 81 00 F8 */ stw r4, 0xf8(r1) /* 800F1834 000EE794 90 01 00 38 */ stw r0, 0x38(r1) /* 800F1838 000EE798 48 00 00 88 */ b lbl_800F18C0 lbl_800F183C: /* 800F183C 000EE79C 3B FF 00 02 */ addi r31, r31, 2 lbl_800F1840: /* 800F1840 000EE7A0 80 A1 00 F8 */ lwz r5, 0xf8(r1) /* 800F1844 000EE7A4 54 A0 08 3C */ slwi r0, r5, 1 /* 800F1848 000EE7A8 7C 1A 02 14 */ add r0, r26, r0 /* 800F184C 000EE7AC 7C 1F 00 40 */ cmplw r31, r0 /* 800F1850 000EE7B0 40 82 FE D4 */ bne lbl_800F1724 /* 800F1854 000EE7B4 2C 05 00 00 */ cmpwi r5, 0 /* 800F1858 000EE7B8 38 60 00 00 */ li r3, 0 /* 800F185C 000EE7BC 40 81 00 40 */ ble lbl_800F189C /* 800F1860 000EE7C0 2C 05 00 08 */ cmpwi r5, 8 /* 800F1864 000EE7C4 38 85 FF F8 */ addi r4, r5, -8 /* 800F1868 000EE7C8 40 81 00 20 */ ble lbl_800F1888 /* 800F186C 000EE7CC 38 04 00 07 */ addi r0, r4, 7 /* 800F1870 000EE7D0 54 00 E8 FE */ srwi r0, r0, 3 /* 800F1874 000EE7D4 7C 09 03 A6 */ mtctr r0 /* 800F1878 000EE7D8 2C 04 00 00 */ cmpwi r4, 0 /* 800F187C 000EE7DC 40 81 00 0C */ ble lbl_800F1888 lbl_800F1880: /* 800F1880 000EE7E0 38 63 00 08 */ addi r3, r3, 8 /* 800F1884 000EE7E4 42 00 FF FC */ bdnz lbl_800F1880 lbl_800F1888: /* 800F1888 000EE7E8 7C 03 28 50 */ subf r0, r3, r5 /* 800F188C 000EE7EC 7C 09 03 A6 */ mtctr r0 /* 800F1890 000EE7F0 7C 03 28 00 */ cmpw r3, r5 /* 800F1894 000EE7F4 40 80 00 08 */ bge lbl_800F189C lbl_800F1898: /* 800F1898 000EE7F8 42 00 00 00 */ bdnz lbl_800F1898 lbl_800F189C: /* 800F189C 000EE7FC 3C 80 80 3F */ lis r4, __vt__17CCollidableSphere@ha /* 800F18A0 000EE800 3C 60 80 3E */ lis r3, __vt__19CCollisionPrimitive@ha /* 800F18A4 000EE804 38 04 CA F8 */ addi r0, r4, __vt__17CCollidableSphere@l /* 800F18A8 000EE808 38 80 00 00 */ li r4, 0 /* 800F18AC 000EE80C 90 01 00 38 */ stw r0, 0x38(r1) /* 800F18B0 000EE810 38 03 97 E4 */ addi r0, r3, __vt__19CCollisionPrimitive@l /* 800F18B4 000EE814 38 60 00 00 */ li r3, 0 /* 800F18B8 000EE818 90 81 00 F8 */ stw r4, 0xf8(r1) /* 800F18BC 000EE81C 90 01 00 38 */ stw r0, 0x38(r1) lbl_800F18C0: /* 800F18C0 000EE820 E3 E1 09 58 */ psq_l f31, -1704(r1), 0, qr0 /* 800F18C4 000EE824 CB E1 09 50 */ lfd f31, 0x950(r1) /* 800F18C8 000EE828 E3 C1 09 48 */ psq_l f30, -1720(r1), 0, qr0 /* 800F18CC 000EE82C CB C1 09 40 */ lfd f30, 0x940(r1) /* 800F18D0 000EE830 E3 A1 09 38 */ psq_l f29, -1736(r1), 0, qr0 /* 800F18D4 000EE834 CB A1 09 30 */ lfd f29, 0x930(r1) /* 800F18D8 000EE838 E3 81 09 28 */ psq_l f28, -1752(r1), 0, qr0 /* 800F18DC 000EE83C CB 81 09 20 */ lfd f28, 0x920(r1) /* 800F18E0 000EE840 BB 21 09 04 */ lmw r25, 0x904(r1) /* 800F18E4 000EE844 80 01 09 64 */ lwz r0, 0x964(r1) /* 800F18E8 000EE848 7C 08 03 A6 */ mtlr r0 /* 800F18EC 000EE84C 38 21 09 60 */ addi r1, r1, 0x960 /* 800F18F0 000EE850 4E 80 00 20 */ blr .global DisableHalfPipeStatus__10CMorphBallFv DisableHalfPipeStatus__10CMorphBallFv: /* 800F18F4 000EE854 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F18F8 000EE858 7C 08 02 A6 */ mflr r0 /* 800F18FC 000EE85C 38 80 00 00 */ li r4, 0 /* 800F1900 000EE860 90 01 00 14 */ stw r0, 0x14(r1) /* 800F1904 000EE864 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F1908 000EE868 7C 7F 1B 78 */ mr r31, r3 /* 800F190C 000EE86C 48 00 00 B5 */ bl SetIsInHalfPipeMode__10CMorphBallFb /* 800F1910 000EE870 7F E3 FB 78 */ mr r3, r31 /* 800F1914 000EE874 38 80 00 00 */ li r4, 0 /* 800F1918 000EE878 48 00 00 8D */ bl SetIsInHalfPipeModeInAir__10CMorphBallFb /* 800F191C 000EE87C 7F E3 FB 78 */ mr r3, r31 /* 800F1920 000EE880 38 80 00 00 */ li r4, 0 /* 800F1924 000EE884 48 00 00 65 */ bl SetTouchedHalfPipeRecently__10CMorphBallFb /* 800F1928 000EE888 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F192C 000EE88C C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F1930 000EE890 D0 1F 1D FC */ stfs f0, 0x1dfc(r31) /* 800F1934 000EE894 D0 1F 1E 00 */ stfs f0, 0x1e00(r31) /* 800F1938 000EE898 80 7F 00 00 */ lwz r3, 0(r31) /* 800F193C 000EE89C 48 02 8B 95 */ bl SetCollisionAccuracyModifier__13CPhysicsActorFf /* 800F1940 000EE8A0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F1944 000EE8A4 C4 03 66 A0 */ lfsu f0, sZeroVector__9CVector3f@l(r3) /* 800F1948 000EE8A8 D0 1F 1E 08 */ stfs f0, 0x1e08(r31) /* 800F194C 000EE8AC C0 03 00 04 */ lfs f0, 4(r3) /* 800F1950 000EE8B0 D0 1F 1E 0C */ stfs f0, 0x1e0c(r31) /* 800F1954 000EE8B4 C0 03 00 08 */ lfs f0, 8(r3) /* 800F1958 000EE8B8 D0 1F 1E 10 */ stfs f0, 0x1e10(r31) /* 800F195C 000EE8BC C0 03 00 00 */ lfs f0, 0(r3) /* 800F1960 000EE8C0 D0 1F 1E 14 */ stfs f0, 0x1e14(r31) /* 800F1964 000EE8C4 C0 03 00 04 */ lfs f0, 4(r3) /* 800F1968 000EE8C8 D0 1F 1E 18 */ stfs f0, 0x1e18(r31) /* 800F196C 000EE8CC C0 03 00 08 */ lfs f0, 8(r3) /* 800F1970 000EE8D0 D0 1F 1E 1C */ stfs f0, 0x1e1c(r31) /* 800F1974 000EE8D4 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F1978 000EE8D8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F197C 000EE8DC 7C 08 03 A6 */ mtlr r0 /* 800F1980 000EE8E0 38 21 00 10 */ addi r1, r1, 0x10 /* 800F1984 000EE8E4 4E 80 00 20 */ blr .global SetTouchedHalfPipeRecently__10CMorphBallFb SetTouchedHalfPipeRecently__10CMorphBallFb: /* 800F1988 000EE8E8 88 03 1D F8 */ lbz r0, 0x1df8(r3) /* 800F198C 000EE8EC 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a /* 800F1990 000EE8F0 98 03 1D F8 */ stb r0, 0x1df8(r3) /* 800F1994 000EE8F4 4E 80 00 20 */ blr .global GetTouchedHalfPipeRecently__10CMorphBallCFv GetTouchedHalfPipeRecently__10CMorphBallCFv: /* 800F1998 000EE8F8 88 03 1D F8 */ lbz r0, 0x1df8(r3) /* 800F199C 000EE8FC 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f /* 800F19A0 000EE900 4E 80 00 20 */ blr .global SetIsInHalfPipeModeInAir__10CMorphBallFb SetIsInHalfPipeModeInAir__10CMorphBallFb: /* 800F19A4 000EE904 88 03 1D F8 */ lbz r0, 0x1df8(r3) /* 800F19A8 000EE908 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 /* 800F19AC 000EE90C 98 03 1D F8 */ stb r0, 0x1df8(r3) /* 800F19B0 000EE910 4E 80 00 20 */ blr .global GetIsInHalfPipeModeInAir__10CMorphBallCFv GetIsInHalfPipeModeInAir__10CMorphBallCFv: /* 800F19B4 000EE914 88 03 1D F8 */ lbz r0, 0x1df8(r3) /* 800F19B8 000EE918 54 03 D7 FE */ rlwinm r3, r0, 0x1a, 0x1f, 0x1f /* 800F19BC 000EE91C 4E 80 00 20 */ blr .global SetIsInHalfPipeMode__10CMorphBallFb SetIsInHalfPipeMode__10CMorphBallFb: /* 800F19C0 000EE920 88 03 1D F8 */ lbz r0, 0x1df8(r3) /* 800F19C4 000EE924 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 /* 800F19C8 000EE928 98 03 1D F8 */ stb r0, 0x1df8(r3) /* 800F19CC 000EE92C 4E 80 00 20 */ blr .global GetIsInHalfPipeMode__10CMorphBallCFv GetIsInHalfPipeMode__10CMorphBallCFv: /* 800F19D0 000EE930 88 03 1D F8 */ lbz r0, 0x1df8(r3) /* 800F19D4 000EE934 54 03 CF FE */ rlwinm r3, r0, 0x19, 0x1f, 0x1f /* 800F19D8 000EE938 4E 80 00 20 */ blr .global UpdateHalfPipeStatus__10CMorphBallFR13CStateManagerf UpdateHalfPipeStatus__10CMorphBallFR13CStateManagerf: /* 800F19DC 000EE93C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800F19E0 000EE940 7C 08 02 A6 */ mflr r0 /* 800F19E4 000EE944 90 01 00 34 */ stw r0, 0x34(r1) /* 800F19E8 000EE948 DB E1 00 20 */ stfd f31, 0x20(r1) /* 800F19EC 000EE94C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 800F19F0 000EE950 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800F19F4 000EE954 7C 7F 1B 78 */ mr r31, r3 /* 800F19F8 000EE958 C0 03 1D FC */ lfs f0, 0x1dfc(r3) /* 800F19FC 000EE95C EC 00 08 28 */ fsubs f0, f0, f1 /* 800F1A00 000EE960 D0 03 1D FC */ stfs f0, 0x1dfc(r3) /* 800F1A04 000EE964 C0 4D 88 C4 */ lfs f2, lbl_805A7484@sda21(r13) /* 800F1A08 000EE968 C0 03 1D FC */ lfs f0, 0x1dfc(r3) /* 800F1A0C 000EE96C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800F1A10 000EE970 40 80 00 0C */ bge lbl_800F1A1C /* 800F1A14 000EE974 38 7F 1D FC */ addi r3, r31, 0x1dfc /* 800F1A18 000EE978 48 00 00 08 */ b lbl_800F1A20 lbl_800F1A1C: /* 800F1A1C 000EE97C 38 6D 88 C4 */ addi r3, r13, lbl_805A7484@sda21 lbl_800F1A20: /* 800F1A20 000EE980 C0 03 00 00 */ lfs f0, 0(r3) /* 800F1A24 000EE984 D0 1F 1D FC */ stfs f0, 0x1dfc(r31) /* 800F1A28 000EE988 C0 1F 1E 04 */ lfs f0, 0x1e04(r31) /* 800F1A2C 000EE98C EC 00 08 28 */ fsubs f0, f0, f1 /* 800F1A30 000EE990 D0 1F 1E 04 */ stfs f0, 0x1e04(r31) /* 800F1A34 000EE994 C0 2D 88 C8 */ lfs f1, lbl_805A7488@sda21(r13) /* 800F1A38 000EE998 C0 1F 1E 04 */ lfs f0, 0x1e04(r31) /* 800F1A3C 000EE99C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F1A40 000EE9A0 40 80 00 0C */ bge lbl_800F1A4C /* 800F1A44 000EE9A4 38 7F 1E 04 */ addi r3, r31, 0x1e04 /* 800F1A48 000EE9A8 48 00 00 08 */ b lbl_800F1A50 lbl_800F1A4C: /* 800F1A4C 000EE9AC 38 6D 88 C8 */ addi r3, r13, lbl_805A7488@sda21 lbl_800F1A50: /* 800F1A50 000EE9B0 C0 23 00 00 */ lfs f1, 0(r3) /* 800F1A54 000EE9B4 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F1A58 000EE9B8 D0 3F 1E 04 */ stfs f1, 0x1e04(r31) /* 800F1A5C 000EE9BC C0 3F 1D FC */ lfs f1, 0x1dfc(r31) /* 800F1A60 000EE9C0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F1A64 000EE9C4 40 81 00 D8 */ ble lbl_800F1B3C /* 800F1A68 000EE9C8 38 61 00 08 */ addi r3, r1, 8 /* 800F1A6C 000EE9CC 38 9F 1C D0 */ addi r4, r31, 0x1cd0 /* 800F1A70 000EE9D0 4B FF EA FD */ bl "GetAverage__22TReservedAverageCFv" /* 800F1A74 000EE9D4 C3 E1 00 08 */ lfs f31, 8(r1) /* 800F1A78 000EE9D8 38 00 00 00 */ li r0, 0 /* 800F1A7C 000EE9DC C0 02 92 5C */ lfs f0, lbl_805AAF7C@sda21(r2) /* 800F1A80 000EE9E0 98 01 00 0C */ stb r0, 0xc(r1) /* 800F1A84 000EE9E4 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F1A88 000EE9E8 41 81 00 20 */ bgt lbl_800F1AA8 /* 800F1A8C 000EE9EC 7F E3 FB 78 */ mr r3, r31 /* 800F1A90 000EE9F0 4B FF FF 41 */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F1A94 000EE9F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F1A98 000EE9F8 41 82 00 98 */ beq lbl_800F1B30 /* 800F1A9C 000EE9FC C0 02 92 60 */ lfs f0, lbl_805AAF80@sda21(r2) /* 800F1AA0 000EEA00 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F1AA4 000EEA04 40 81 00 8C */ ble lbl_800F1B30 lbl_800F1AA8: /* 800F1AA8 000EEA08 7F E3 FB 78 */ mr r3, r31 /* 800F1AAC 000EEA0C 38 80 00 01 */ li r4, 1 /* 800F1AB0 000EEA10 4B FF FF 11 */ bl SetIsInHalfPipeMode__10CMorphBallFb /* 800F1AB4 000EEA14 88 1F 1D F8 */ lbz r0, 0x1df8(r31) /* 800F1AB8 000EEA18 7F E3 FB 78 */ mr r3, r31 /* 800F1ABC 000EEA1C 54 00 E7 FE */ rlwinm r0, r0, 0x1c, 0x1f, 0x1f /* 800F1AC0 000EEA20 7C 00 00 34 */ cntlzw r0, r0 /* 800F1AC4 000EEA24 54 04 D9 7E */ srwi r4, r0, 5 /* 800F1AC8 000EEA28 4B FF FE DD */ bl SetIsInHalfPipeModeInAir__10CMorphBallFb /* 800F1ACC 000EEA2C C0 3F 1E 04 */ lfs f1, 0x1e04(r31) /* 800F1AD0 000EEA30 7F E3 FB 78 */ mr r3, r31 /* 800F1AD4 000EEA34 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F1AD8 000EEA38 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F1ADC 000EEA3C 7C 00 00 26 */ mfcr r0 /* 800F1AE0 000EEA40 54 04 17 FE */ rlwinm r4, r0, 2, 0x1f, 0x1f /* 800F1AE4 000EEA44 4B FF FE A5 */ bl SetTouchedHalfPipeRecently__10CMorphBallFb /* 800F1AE8 000EEA48 7F E3 FB 78 */ mr r3, r31 /* 800F1AEC 000EEA4C 4B FF FE C9 */ bl GetIsInHalfPipeModeInAir__10CMorphBallCFv /* 800F1AF0 000EEA50 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F1AF4 000EEA54 41 82 00 50 */ beq lbl_800F1B44 /* 800F1AF8 000EEA58 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F1AFC 000EEA5C C4 03 66 A0 */ lfsu f0, sZeroVector__9CVector3f@l(r3) /* 800F1B00 000EEA60 D0 1F 1E 08 */ stfs f0, 0x1e08(r31) /* 800F1B04 000EEA64 C0 03 00 04 */ lfs f0, 4(r3) /* 800F1B08 000EEA68 D0 1F 1E 0C */ stfs f0, 0x1e0c(r31) /* 800F1B0C 000EEA6C C0 03 00 08 */ lfs f0, 8(r3) /* 800F1B10 000EEA70 D0 1F 1E 10 */ stfs f0, 0x1e10(r31) /* 800F1B14 000EEA74 C0 03 00 00 */ lfs f0, 0(r3) /* 800F1B18 000EEA78 D0 1F 1E 14 */ stfs f0, 0x1e14(r31) /* 800F1B1C 000EEA7C C0 03 00 04 */ lfs f0, 4(r3) /* 800F1B20 000EEA80 D0 1F 1E 18 */ stfs f0, 0x1e18(r31) /* 800F1B24 000EEA84 C0 03 00 08 */ lfs f0, 8(r3) /* 800F1B28 000EEA88 D0 1F 1E 1C */ stfs f0, 0x1e1c(r31) /* 800F1B2C 000EEA8C 48 00 00 18 */ b lbl_800F1B44 lbl_800F1B30: /* 800F1B30 000EEA90 7F E3 FB 78 */ mr r3, r31 /* 800F1B34 000EEA94 4B FF FD C1 */ bl DisableHalfPipeStatus__10CMorphBallFv /* 800F1B38 000EEA98 48 00 00 0C */ b lbl_800F1B44 lbl_800F1B3C: /* 800F1B3C 000EEA9C 7F E3 FB 78 */ mr r3, r31 /* 800F1B40 000EEAA0 4B FF FD B5 */ bl DisableHalfPipeStatus__10CMorphBallFv lbl_800F1B44: /* 800F1B44 000EEAA4 7F E3 FB 78 */ mr r3, r31 /* 800F1B48 000EEAA8 4B FF FE 89 */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F1B4C 000EEAAC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F1B50 000EEAB0 41 82 00 14 */ beq lbl_800F1B64 /* 800F1B54 000EEAB4 80 7F 00 00 */ lwz r3, 0(r31) /* 800F1B58 000EEAB8 C0 22 91 58 */ lfs f1, lbl_805AAE78@sda21(r2) /* 800F1B5C 000EEABC 48 02 89 75 */ bl SetCollisionAccuracyModifier__13CPhysicsActorFf /* 800F1B60 000EEAC0 48 00 00 10 */ b lbl_800F1B70 lbl_800F1B64: /* 800F1B64 000EEAC4 80 7F 00 00 */ lwz r3, 0(r31) /* 800F1B68 000EEAC8 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F1B6C 000EEACC 48 02 89 65 */ bl SetCollisionAccuracyModifier__13CPhysicsActorFf lbl_800F1B70: /* 800F1B70 000EEAD0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 800F1B74 000EEAD4 80 01 00 34 */ lwz r0, 0x34(r1) /* 800F1B78 000EEAD8 CB E1 00 20 */ lfd f31, 0x20(r1) /* 800F1B7C 000EEADC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800F1B80 000EEAE0 7C 08 03 A6 */ mtlr r0 /* 800F1B84 000EEAE4 38 21 00 30 */ addi r1, r1, 0x30 /* 800F1B88 000EEAE8 4E 80 00 20 */ blr .global RenderDamageEffects__10CMorphBallCFRC13CStateManagerRC12CTransform4f RenderDamageEffects__10CMorphBallCFRC13CStateManagerRC12CTransform4f: /* 800F1B8C 000EEAEC 94 21 FE D0 */ stwu r1, -0x130(r1) /* 800F1B90 000EEAF0 7C 08 02 A6 */ mflr r0 /* 800F1B94 000EEAF4 90 01 01 34 */ stw r0, 0x134(r1) /* 800F1B98 000EEAF8 DB E1 01 20 */ stfd f31, 0x120(r1) /* 800F1B9C 000EEAFC F3 E1 01 28 */ psq_st f31, 296(r1), 0, qr0 /* 800F1BA0 000EEB00 DB C1 01 10 */ stfd f30, 0x110(r1) /* 800F1BA4 000EEB04 F3 C1 01 18 */ psq_st f30, 280(r1), 0, qr0 /* 800F1BA8 000EEB08 DB A1 01 00 */ stfd f29, 0x100(r1) /* 800F1BAC 000EEB0C F3 A1 01 08 */ psq_st f29, 264(r1), 0, qr0 /* 800F1BB0 000EEB10 DB 81 00 F0 */ stfd f28, 0xf0(r1) /* 800F1BB4 000EEB14 F3 81 00 F8 */ psq_st f28, 248(r1), 0, qr0 /* 800F1BB8 000EEB18 DB 61 00 E0 */ stfd f27, 0xe0(r1) /* 800F1BBC 000EEB1C F3 61 00 E8 */ psq_st f27, 232(r1), 0, qr0 /* 800F1BC0 000EEB20 DB 41 00 D0 */ stfd f26, 0xd0(r1) /* 800F1BC4 000EEB24 F3 41 00 D8 */ psq_st f26, 216(r1), 0, qr0 /* 800F1BC8 000EEB28 93 E1 00 CC */ stw r31, 0xcc(r1) /* 800F1BCC 000EEB2C 93 C1 00 C8 */ stw r30, 0xc8(r1) /* 800F1BD0 000EEB30 93 A1 00 C4 */ stw r29, 0xc4(r1) /* 800F1BD4 000EEB34 7C 7D 1B 78 */ mr r29, r3 /* 800F1BD8 000EEB38 7C BE 2B 78 */ mr r30, r5 /* 800F1BDC 000EEB3C 38 61 00 0C */ addi r3, r1, 0xc /* 800F1BE0 000EEB40 38 80 00 63 */ li r4, 0x63 /* 800F1BE4 000EEB44 48 22 0A 09 */ bl __ct__9CRandom16FUi /* 800F1BE8 000EEB48 C0 22 91 E4 */ lfs f1, lbl_805AAF04@sda21(r2) /* 800F1BEC 000EEB4C 38 61 00 08 */ addi r3, r1, 8 /* 800F1BF0 000EEB50 C0 7D 1E 44 */ lfs f3, 0x1e44(r29) /* 800F1BF4 000EEB54 C0 02 91 90 */ lfs f0, lbl_805AAEB0@sda21(r2) /* 800F1BF8 000EEB58 EC 41 00 F2 */ fmuls f2, f1, f3 /* 800F1BFC 000EEB5C C0 82 91 5C */ lfs f4, lbl_805AAE7C@sda21(r2) /* 800F1C00 000EEB60 EC 20 00 F2 */ fmuls f1, f0, f3 /* 800F1C04 000EEB64 FC 60 10 90 */ fmr f3, f2 /* 800F1C08 000EEB68 48 27 17 E5 */ bl __ct__6CColorFffff /* 800F1C0C 000EEB6C 38 80 00 03 */ li r4, 3 /* 800F1C10 000EEB70 80 61 00 08 */ lwz r3, 8(r1) /* 800F1C14 000EEB74 54 80 00 3A */ rlwinm r0, r4, 0, 0, 0x1d /* 800F1C18 000EEB78 38 C0 00 07 */ li r6, 7 /* 800F1C1C 000EEB7C 38 A0 00 00 */ li r5, 0 /* 800F1C20 000EEB80 98 C1 00 10 */ stb r6, 0x10(r1) /* 800F1C24 000EEB84 60 00 00 01 */ ori r0, r0, 1 /* 800F1C28 000EEB88 C3 A2 92 64 */ lfs f29, lbl_805AAF84@sda21(r2) /* 800F1C2C 000EEB8C 98 A1 00 11 */ stb r5, 0x11(r1) /* 800F1C30 000EEB90 3B E0 00 00 */ li r31, 0 /* 800F1C34 000EEB94 C3 C2 92 68 */ lfs f30, lbl_805AAF88@sda21(r2) /* 800F1C38 000EEB98 B0 81 00 12 */ sth r4, 0x12(r1) /* 800F1C3C 000EEB9C C3 E2 92 54 */ lfs f31, lbl_805AAF74@sda21(r2) /* 800F1C40 000EEBA0 90 61 00 14 */ stw r3, 0x14(r1) /* 800F1C44 000EEBA4 98 C1 00 18 */ stb r6, 0x18(r1) /* 800F1C48 000EEBA8 98 A1 00 19 */ stb r5, 0x19(r1) /* 800F1C4C 000EEBAC B0 01 00 1A */ sth r0, 0x1a(r1) /* 800F1C50 000EEBB0 90 61 00 1C */ stw r3, 0x1c(r1) lbl_800F1C54: /* 800F1C54 000EEBB4 38 61 00 0C */ addi r3, r1, 0xc /* 800F1C58 000EEBB8 48 22 08 85 */ bl Float__9CRandom16Fv /* 800F1C5C 000EEBBC FF 40 08 90 */ fmr f26, f1 /* 800F1C60 000EEBC0 38 61 00 0C */ addi r3, r1, 0xc /* 800F1C64 000EEBC4 48 22 08 79 */ bl Float__9CRandom16Fv /* 800F1C68 000EEBC8 FF 60 08 90 */ fmr f27, f1 /* 800F1C6C 000EEBCC 38 61 00 0C */ addi r3, r1, 0xc /* 800F1C70 000EEBD0 48 22 08 6D */ bl Float__9CRandom16Fv /* 800F1C74 000EEBD4 FF 80 08 90 */ fmr f28, f1 /* 800F1C78 000EEBD8 38 61 00 0C */ addi r3, r1, 0xc /* 800F1C7C 000EEBDC 48 22 08 61 */ bl Float__9CRandom16Fv /* 800F1C80 000EEBE0 EC 3D 00 72 */ fmuls f1, f29, f1 /* 800F1C84 000EEBE4 C0 1D 1E 4C */ lfs f0, 0x1e4c(r29) /* 800F1C88 000EEBE8 EC 3E 08 3A */ fmadds f1, f30, f0, f1 /* 800F1C8C 000EEBEC 48 22 31 65 */ bl FastSinR__5CMathFf /* 800F1C90 000EEBF0 C0 1D 1E 44 */ lfs f0, 0x1e44(r29) /* 800F1C94 000EEBF4 38 61 00 2C */ addi r3, r1, 0x2c /* 800F1C98 000EEBF8 38 81 00 20 */ addi r4, r1, 0x20 /* 800F1C9C 000EEBFC EC 00 00 72 */ fmuls f0, f0, f1 /* 800F1CA0 000EEC00 EC 1F 00 32 */ fmuls f0, f31, f0 /* 800F1CA4 000EEC04 EC 5A 00 32 */ fmuls f2, f26, f0 /* 800F1CA8 000EEC08 EC 3B 00 32 */ fmuls f1, f27, f0 /* 800F1CAC 000EEC0C EC 1C 00 32 */ fmuls f0, f28, f0 /* 800F1CB0 000EEC10 D0 41 00 20 */ stfs f2, 0x20(r1) /* 800F1CB4 000EEC14 D0 21 00 24 */ stfs f1, 0x24(r1) /* 800F1CB8 000EEC18 D0 01 00 28 */ stfs f0, 0x28(r1) /* 800F1CBC 000EEC1C 48 22 14 85 */ bl Translate__12CTransform4fFRC9CVector3f /* 800F1CC0 000EEC20 7F C4 F3 78 */ mr r4, r30 /* 800F1CC4 000EEC24 38 61 00 5C */ addi r3, r1, 0x5c /* 800F1CC8 000EEC28 38 A1 00 2C */ addi r5, r1, 0x2c /* 800F1CCC 000EEC2C 48 22 0C 85 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800F1CD0 000EEC30 38 61 00 8C */ addi r3, r1, 0x8c /* 800F1CD4 000EEC34 38 81 00 5C */ addi r4, r1, 0x5c /* 800F1CD8 000EEC38 48 22 0E 9D */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F1CDC 000EEC3C 80 7D 00 68 */ lwz r3, 0x68(r29) /* 800F1CE0 000EEC40 38 A1 00 8C */ addi r5, r1, 0x8c /* 800F1CE4 000EEC44 38 E1 00 18 */ addi r7, r1, 0x18 /* 800F1CE8 000EEC48 38 80 00 00 */ li r4, 0 /* 800F1CEC 000EEC4C 38 C0 00 00 */ li r6, 0 /* 800F1CF0 000EEC50 48 02 42 D5 */ bl FlatDraw__10CModelDataF11EWhichModelRC12CTransform4fbRC11CModelFlags /* 800F1CF4 000EEC54 3B FF 00 01 */ addi r31, r31, 1 /* 800F1CF8 000EEC58 2C 1F 00 05 */ cmpwi r31, 5 /* 800F1CFC 000EEC5C 41 80 FF 58 */ blt lbl_800F1C54 /* 800F1D00 000EEC60 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 /* 800F1D04 000EEC64 CB E1 01 20 */ lfd f31, 0x120(r1) /* 800F1D08 000EEC68 E3 C1 01 18 */ psq_l f30, 280(r1), 0, qr0 /* 800F1D0C 000EEC6C CB C1 01 10 */ lfd f30, 0x110(r1) /* 800F1D10 000EEC70 E3 A1 01 08 */ psq_l f29, 264(r1), 0, qr0 /* 800F1D14 000EEC74 CB A1 01 00 */ lfd f29, 0x100(r1) /* 800F1D18 000EEC78 E3 81 00 F8 */ psq_l f28, 248(r1), 0, qr0 /* 800F1D1C 000EEC7C CB 81 00 F0 */ lfd f28, 0xf0(r1) /* 800F1D20 000EEC80 E3 61 00 E8 */ psq_l f27, 232(r1), 0, qr0 /* 800F1D24 000EEC84 CB 61 00 E0 */ lfd f27, 0xe0(r1) /* 800F1D28 000EEC88 E3 41 00 D8 */ psq_l f26, 216(r1), 0, qr0 /* 800F1D2C 000EEC8C CB 41 00 D0 */ lfd f26, 0xd0(r1) /* 800F1D30 000EEC90 83 E1 00 CC */ lwz r31, 0xcc(r1) /* 800F1D34 000EEC94 83 C1 00 C8 */ lwz r30, 0xc8(r1) /* 800F1D38 000EEC98 80 01 01 34 */ lwz r0, 0x134(r1) /* 800F1D3C 000EEC9C 83 A1 00 C4 */ lwz r29, 0xc4(r1) /* 800F1D40 000EECA0 7C 08 03 A6 */ mtlr r0 /* 800F1D44 000EECA4 38 21 01 30 */ addi r1, r1, 0x130 /* 800F1D48 000EECA8 4E 80 00 20 */ blr .global RenderIceBreakEffect__10CMorphBallCFRC13CStateManager RenderIceBreakEffect__10CMorphBallCFRC13CStateManager: /* 800F1D4C 000EECAC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F1D50 000EECB0 7C 08 02 A6 */ mflr r0 /* 800F1D54 000EECB4 90 01 00 14 */ stw r0, 0x14(r1) /* 800F1D58 000EECB8 80 63 19 E0 */ lwz r3, 0x19e0(r3) /* 800F1D5C 000EECBC 28 03 00 00 */ cmplwi r3, 0 /* 800F1D60 000EECC0 41 82 00 14 */ beq lbl_800F1D74 /* 800F1D64 000EECC4 81 83 00 00 */ lwz r12, 0(r3) /* 800F1D68 000EECC8 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F1D6C 000EECCC 7D 89 03 A6 */ mtctr r12 /* 800F1D70 000EECD0 4E 80 04 21 */ bctrl lbl_800F1D74: /* 800F1D74 000EECD4 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F1D78 000EECD8 7C 08 03 A6 */ mtlr r0 /* 800F1D7C 000EECDC 38 21 00 10 */ addi r1, r1, 0x10 /* 800F1D80 000EECE0 4E 80 00 20 */ blr .global UpdateIceBreakEffect__10CMorphBallFf UpdateIceBreakEffect__10CMorphBallFf: /* 800F1D84 000EECE4 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 800F1D88 000EECE8 7C 08 02 A6 */ mflr r0 /* 800F1D8C 000EECEC 90 01 00 A4 */ stw r0, 0xa4(r1) /* 800F1D90 000EECF0 DB E1 00 90 */ stfd f31, 0x90(r1) /* 800F1D94 000EECF4 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 800F1D98 000EECF8 93 E1 00 8C */ stw r31, 0x8c(r1) /* 800F1D9C 000EECFC 93 C1 00 88 */ stw r30, 0x88(r1) /* 800F1DA0 000EED00 93 A1 00 84 */ stw r29, 0x84(r1) /* 800F1DA4 000EED04 7C 7F 1B 78 */ mr r31, r3 /* 800F1DA8 000EED08 FF E0 08 90 */ fmr f31, f1 /* 800F1DAC 000EED0C 80 03 19 E0 */ lwz r0, 0x19e0(r3) /* 800F1DB0 000EED10 28 00 00 00 */ cmplwi r0, 0 /* 800F1DB4 000EED14 40 82 00 D0 */ bne lbl_800F1E84 /* 800F1DB8 000EED18 88 1F 19 B4 */ lbz r0, 0x19b4(r31) /* 800F1DBC 000EED1C 28 00 00 00 */ cmplwi r0, 0 /* 800F1DC0 000EED20 41 82 00 C4 */ beq lbl_800F1E84 /* 800F1DC4 000EED24 80 7F 19 B0 */ lwz r3, 0x19b0(r31) /* 800F1DC8 000EED28 80 03 00 10 */ lwz r0, 0x10(r3) /* 800F1DCC 000EED2C 28 00 00 00 */ cmplwi r0, 0 /* 800F1DD0 000EED30 41 82 00 B4 */ beq lbl_800F1E84 /* 800F1DD4 000EED34 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F1DD8 000EED38 3B A0 00 00 */ li r29, 0 /* 800F1DDC 000EED3C 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F1DE0 000EED40 38 60 03 40 */ li r3, 0x340 /* 800F1DE4 000EED44 38 84 00 DC */ addi r4, r4, 0xdc /* 800F1DE8 000EED48 38 A0 00 00 */ li r5, 0 /* 800F1DEC 000EED4C 48 22 3A 81 */ bl __nw__FUlPCcPCc /* 800F1DF0 000EED50 7C 7E 1B 79 */ or. r30, r3, r3 /* 800F1DF4 000EED54 41 82 00 2C */ beq lbl_800F1E20 /* 800F1DF8 000EED58 38 61 00 08 */ addi r3, r1, 8 /* 800F1DFC 000EED5C 38 9F 19 B0 */ addi r4, r31, 0x19b0 /* 800F1E00 000EED60 48 24 F0 A9 */ bl __ct__6CTokenFRC6CToken /* 800F1E04 000EED64 7F C3 F3 78 */ mr r3, r30 /* 800F1E08 000EED68 38 81 00 08 */ addi r4, r1, 8 /* 800F1E0C 000EED6C 3B A0 00 01 */ li r29, 1 /* 800F1E10 000EED70 38 A0 00 00 */ li r5, 0 /* 800F1E14 000EED74 38 C0 00 01 */ li r6, 1 /* 800F1E18 000EED78 48 22 D5 C9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800F1E1C 000EED7C 7C 7E 1B 78 */ mr r30, r3 lbl_800F1E20: /* 800F1E20 000EED80 80 7F 19 E0 */ lwz r3, 0x19e0(r31) /* 800F1E24 000EED84 28 03 00 00 */ cmplwi r3, 0 /* 800F1E28 000EED88 41 82 00 18 */ beq lbl_800F1E40 /* 800F1E2C 000EED8C 81 83 00 00 */ lwz r12, 0(r3) /* 800F1E30 000EED90 38 80 00 01 */ li r4, 1 /* 800F1E34 000EED94 81 8C 00 08 */ lwz r12, 8(r12) /* 800F1E38 000EED98 7D 89 03 A6 */ mtctr r12 /* 800F1E3C 000EED9C 4E 80 04 21 */ bctrl lbl_800F1E40: /* 800F1E40 000EEDA0 7F A0 07 75 */ extsb. r0, r29 /* 800F1E44 000EEDA4 93 DF 19 E0 */ stw r30, 0x19e0(r31) /* 800F1E48 000EEDA8 41 82 00 10 */ beq lbl_800F1E58 /* 800F1E4C 000EEDAC 38 61 00 08 */ addi r3, r1, 8 /* 800F1E50 000EEDB0 38 80 00 00 */ li r4, 0 /* 800F1E54 000EEDB4 48 24 EF ED */ bl __dt__6CTokenFv lbl_800F1E58: /* 800F1E58 000EEDB8 80 9F 00 00 */ lwz r4, 0(r31) /* 800F1E5C 000EEDBC 38 61 00 4C */ addi r3, r1, 0x4c /* 800F1E60 000EEDC0 83 DF 19 E0 */ lwz r30, 0x19e0(r31) /* 800F1E64 000EEDC4 38 84 00 34 */ addi r4, r4, 0x34 /* 800F1E68 000EEDC8 48 22 0D D9 */ bl GetRotation__12CTransform4fCFv /* 800F1E6C 000EEDCC 7F C3 F3 78 */ mr r3, r30 /* 800F1E70 000EEDD0 38 81 00 4C */ addi r4, r1, 0x4c /* 800F1E74 000EEDD4 81 9E 00 00 */ lwz r12, 0(r30) /* 800F1E78 000EEDD8 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800F1E7C 000EEDDC 7D 89 03 A6 */ mtctr r12 /* 800F1E80 000EEDE0 4E 80 04 21 */ bctrl lbl_800F1E84: /* 800F1E84 000EEDE4 80 7F 19 E0 */ lwz r3, 0x19e0(r31) /* 800F1E88 000EEDE8 28 03 00 00 */ cmplwi r3, 0 /* 800F1E8C 000EEDEC 41 82 00 A4 */ beq lbl_800F1F30 /* 800F1E90 000EEDF0 81 83 00 00 */ lwz r12, 0(r3) /* 800F1E94 000EEDF4 81 8C 00 58 */ lwz r12, 0x58(r12) /* 800F1E98 000EEDF8 7D 89 03 A6 */ mtctr r12 /* 800F1E9C 000EEDFC 4E 80 04 21 */ bctrl /* 800F1EA0 000EEE00 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F1EA4 000EEE04 41 82 00 38 */ beq lbl_800F1EDC /* 800F1EA8 000EEE08 80 7F 19 E0 */ lwz r3, 0x19e0(r31) /* 800F1EAC 000EEE0C 28 03 00 00 */ cmplwi r3, 0 /* 800F1EB0 000EEE10 41 82 00 18 */ beq lbl_800F1EC8 /* 800F1EB4 000EEE14 81 83 00 00 */ lwz r12, 0(r3) /* 800F1EB8 000EEE18 38 80 00 01 */ li r4, 1 /* 800F1EBC 000EEE1C 81 8C 00 08 */ lwz r12, 8(r12) /* 800F1EC0 000EEE20 7D 89 03 A6 */ mtctr r12 /* 800F1EC4 000EEE24 4E 80 04 21 */ bctrl lbl_800F1EC8: /* 800F1EC8 000EEE28 38 00 00 00 */ li r0, 0 /* 800F1ECC 000EEE2C 38 7F 19 B0 */ addi r3, r31, 0x19b0 /* 800F1ED0 000EEE30 90 1F 19 E0 */ stw r0, 0x19e0(r31) /* 800F1ED4 000EEE34 48 24 EE 6D */ bl Unlock__6CTokenFv /* 800F1ED8 000EEE38 48 00 00 58 */ b lbl_800F1F30 lbl_800F1EDC: /* 800F1EDC 000EEE3C 7F E4 FB 78 */ mr r4, r31 /* 800F1EE0 000EEE40 38 61 00 1C */ addi r3, r1, 0x1c /* 800F1EE4 000EEE44 48 00 48 11 */ bl GetBallToWorld__10CMorphBallCFv /* 800F1EE8 000EEE48 C0 41 00 48 */ lfs f2, 0x48(r1) /* 800F1EEC 000EEE4C 38 81 00 10 */ addi r4, r1, 0x10 /* 800F1EF0 000EEE50 C0 21 00 38 */ lfs f1, 0x38(r1) /* 800F1EF4 000EEE54 C0 01 00 28 */ lfs f0, 0x28(r1) /* 800F1EF8 000EEE58 D0 21 00 14 */ stfs f1, 0x14(r1) /* 800F1EFC 000EEE5C D0 01 00 10 */ stfs f0, 0x10(r1) /* 800F1F00 000EEE60 D0 41 00 18 */ stfs f2, 0x18(r1) /* 800F1F04 000EEE64 80 7F 19 E0 */ lwz r3, 0x19e0(r31) /* 800F1F08 000EEE68 81 83 00 00 */ lwz r12, 0(r3) /* 800F1F0C 000EEE6C 81 8C 00 20 */ lwz r12, 0x20(r12) /* 800F1F10 000EEE70 7D 89 03 A6 */ mtctr r12 /* 800F1F14 000EEE74 4E 80 04 21 */ bctrl /* 800F1F18 000EEE78 80 7F 19 E0 */ lwz r3, 0x19e0(r31) /* 800F1F1C 000EEE7C FC 20 F8 90 */ fmr f1, f31 /* 800F1F20 000EEE80 81 83 00 00 */ lwz r12, 0(r3) /* 800F1F24 000EEE84 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F1F28 000EEE88 7D 89 03 A6 */ mtctr r12 /* 800F1F2C 000EEE8C 4E 80 04 21 */ bctrl lbl_800F1F30: /* 800F1F30 000EEE90 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 800F1F34 000EEE94 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 800F1F38 000EEE98 CB E1 00 90 */ lfd f31, 0x90(r1) /* 800F1F3C 000EEE9C 83 E1 00 8C */ lwz r31, 0x8c(r1) /* 800F1F40 000EEEA0 83 C1 00 88 */ lwz r30, 0x88(r1) /* 800F1F44 000EEEA4 83 A1 00 84 */ lwz r29, 0x84(r1) /* 800F1F48 000EEEA8 7C 08 03 A6 */ mtlr r0 /* 800F1F4C 000EEEAC 38 21 00 A0 */ addi r1, r1, 0xa0 /* 800F1F50 000EEEB0 4E 80 00 20 */ blr .global Stop__10CMorphBallFv Stop__10CMorphBallFv: /* 800F1F54 000EEEB4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F1F58 000EEEB8 7C 08 02 A6 */ mflr r0 /* 800F1F5C 000EEEBC 90 01 00 14 */ stw r0, 0x14(r1) /* 800F1F60 000EEEC0 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F1F64 000EEEC4 7C 7F 1B 78 */ mr r31, r3 /* 800F1F68 000EEEC8 38 7F 19 B0 */ addi r3, r31, 0x19b0 /* 800F1F6C 000EEECC 48 24 EE 19 */ bl Lock__6CTokenFv /* 800F1F70 000EEED0 80 7F 19 E0 */ lwz r3, 0x19e0(r31) /* 800F1F74 000EEED4 28 03 00 00 */ cmplwi r3, 0 /* 800F1F78 000EEED8 41 82 00 18 */ beq lbl_800F1F90 /* 800F1F7C 000EEEDC 81 83 00 00 */ lwz r12, 0(r3) /* 800F1F80 000EEEE0 38 80 00 01 */ li r4, 1 /* 800F1F84 000EEEE4 81 8C 00 08 */ lwz r12, 8(r12) /* 800F1F88 000EEEE8 7D 89 03 A6 */ mtctr r12 /* 800F1F8C 000EEEEC 4E 80 04 21 */ bctrl lbl_800F1F90: /* 800F1F90 000EEEF0 38 00 00 00 */ li r0, 0 /* 800F1F94 000EEEF4 90 1F 19 E0 */ stw r0, 0x19e0(r31) /* 800F1F98 000EEEF8 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F1F9C 000EEEFC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F1FA0 000EEF00 7C 08 03 A6 */ mtlr r0 /* 800F1FA4 000EEF04 38 21 00 10 */ addi r1, r1, 0x10 /* 800F1FA8 000EEF08 4E 80 00 20 */ blr .global IsMorphBallTransitionFlashValid__10CMorphBallCFv IsMorphBallTransitionFlashValid__10CMorphBallCFv: /* 800F1FAC 000EEF0C 80 63 19 DC */ lwz r3, 0x19dc(r3) /* 800F1FB0 000EEF10 7C 03 00 D0 */ neg r0, r3 /* 800F1FB4 000EEF14 7C 00 1B 78 */ or r0, r0, r3 /* 800F1FB8 000EEF18 54 03 0F FE */ srwi r3, r0, 0x1f /* 800F1FBC 000EEF1C 4E 80 00 20 */ blr .global RenderMorphBallTransitionFlash__10CMorphBallCFRC13CStateManager RenderMorphBallTransitionFlash__10CMorphBallCFRC13CStateManager: /* 800F1FC0 000EEF20 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F1FC4 000EEF24 7C 08 02 A6 */ mflr r0 /* 800F1FC8 000EEF28 90 01 00 24 */ stw r0, 0x24(r1) /* 800F1FCC 000EEF2C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800F1FD0 000EEF30 7C 7F 1B 78 */ mr r31, r3 /* 800F1FD4 000EEF34 80 63 19 DC */ lwz r3, 0x19dc(r3) /* 800F1FD8 000EEF38 28 03 00 00 */ cmplwi r3, 0 /* 800F1FDC 000EEF3C 41 82 00 60 */ beq lbl_800F203C /* 800F1FE0 000EEF40 80 BF 00 08 */ lwz r5, 8(r31) /* 800F1FE4 000EEF44 38 00 00 FF */ li r0, 0xff /* 800F1FE8 000EEF48 3C 80 80 3D */ lis r4, lbl_803CEAEC@ha /* 800F1FEC 000EEF4C 98 01 00 0B */ stb r0, 0xb(r1) /* 800F1FF0 000EEF50 1C C5 00 03 */ mulli r6, r5, 3 /* 800F1FF4 000EEF54 38 A4 EA EC */ addi r5, r4, lbl_803CEAEC@l /* 800F1FF8 000EEF58 38 81 00 08 */ addi r4, r1, 8 /* 800F1FFC 000EEF5C 7C A5 32 14 */ add r5, r5, r6 /* 800F2000 000EEF60 88 E5 00 02 */ lbz r7, 2(r5) /* 800F2004 000EEF64 88 C5 00 01 */ lbz r6, 1(r5) /* 800F2008 000EEF68 88 05 00 00 */ lbz r0, 0(r5) /* 800F200C 000EEF6C 98 C1 00 09 */ stb r6, 9(r1) /* 800F2010 000EEF70 98 01 00 08 */ stb r0, 8(r1) /* 800F2014 000EEF74 98 E1 00 0A */ stb r7, 0xa(r1) /* 800F2018 000EEF78 81 83 00 00 */ lwz r12, 0(r3) /* 800F201C 000EEF7C 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F2020 000EEF80 7D 89 03 A6 */ mtctr r12 /* 800F2024 000EEF84 4E 80 04 21 */ bctrl /* 800F2028 000EEF88 80 7F 19 DC */ lwz r3, 0x19dc(r31) /* 800F202C 000EEF8C 81 83 00 00 */ lwz r12, 0(r3) /* 800F2030 000EEF90 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2034 000EEF94 7D 89 03 A6 */ mtctr r12 /* 800F2038 000EEF98 4E 80 04 21 */ bctrl lbl_800F203C: /* 800F203C 000EEF9C 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F2040 000EEFA0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800F2044 000EEFA4 7C 08 03 A6 */ mtlr r0 /* 800F2048 000EEFA8 38 21 00 20 */ addi r1, r1, 0x20 /* 800F204C 000EEFAC 4E 80 00 20 */ blr .global UpdateMorphBallTransitionFlash__10CMorphBallFf UpdateMorphBallTransitionFlash__10CMorphBallFf: /* 800F2050 000EEFB0 94 21 FF 60 */ stwu r1, -0xa0(r1) /* 800F2054 000EEFB4 7C 08 02 A6 */ mflr r0 /* 800F2058 000EEFB8 90 01 00 A4 */ stw r0, 0xa4(r1) /* 800F205C 000EEFBC DB E1 00 90 */ stfd f31, 0x90(r1) /* 800F2060 000EEFC0 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 /* 800F2064 000EEFC4 93 E1 00 8C */ stw r31, 0x8c(r1) /* 800F2068 000EEFC8 93 C1 00 88 */ stw r30, 0x88(r1) /* 800F206C 000EEFCC 93 A1 00 84 */ stw r29, 0x84(r1) /* 800F2070 000EEFD0 7C 7F 1B 78 */ mr r31, r3 /* 800F2074 000EEFD4 FF E0 08 90 */ fmr f31, f1 /* 800F2078 000EEFD8 80 03 19 DC */ lwz r0, 0x19dc(r3) /* 800F207C 000EEFDC 28 00 00 00 */ cmplwi r0, 0 /* 800F2080 000EEFE0 40 82 00 D0 */ bne lbl_800F2150 /* 800F2084 000EEFE4 88 1F 19 AC */ lbz r0, 0x19ac(r31) /* 800F2088 000EEFE8 28 00 00 00 */ cmplwi r0, 0 /* 800F208C 000EEFEC 41 82 00 C4 */ beq lbl_800F2150 /* 800F2090 000EEFF0 80 7F 19 A8 */ lwz r3, 0x19a8(r31) /* 800F2094 000EEFF4 80 03 00 10 */ lwz r0, 0x10(r3) /* 800F2098 000EEFF8 28 00 00 00 */ cmplwi r0, 0 /* 800F209C 000EEFFC 41 82 00 B4 */ beq lbl_800F2150 /* 800F20A0 000EF000 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F20A4 000EF004 3B A0 00 00 */ li r29, 0 /* 800F20A8 000EF008 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F20AC 000EF00C 38 60 03 40 */ li r3, 0x340 /* 800F20B0 000EF010 38 84 00 DC */ addi r4, r4, 0xdc /* 800F20B4 000EF014 38 A0 00 00 */ li r5, 0 /* 800F20B8 000EF018 48 22 37 B5 */ bl __nw__FUlPCcPCc /* 800F20BC 000EF01C 7C 7E 1B 79 */ or. r30, r3, r3 /* 800F20C0 000EF020 41 82 00 2C */ beq lbl_800F20EC /* 800F20C4 000EF024 38 61 00 08 */ addi r3, r1, 8 /* 800F20C8 000EF028 38 9F 19 A8 */ addi r4, r31, 0x19a8 /* 800F20CC 000EF02C 48 24 ED DD */ bl __ct__6CTokenFRC6CToken /* 800F20D0 000EF030 7F C3 F3 78 */ mr r3, r30 /* 800F20D4 000EF034 38 81 00 08 */ addi r4, r1, 8 /* 800F20D8 000EF038 3B A0 00 01 */ li r29, 1 /* 800F20DC 000EF03C 38 A0 00 00 */ li r5, 0 /* 800F20E0 000EF040 38 C0 00 01 */ li r6, 1 /* 800F20E4 000EF044 48 22 D2 FD */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800F20E8 000EF048 7C 7E 1B 78 */ mr r30, r3 lbl_800F20EC: /* 800F20EC 000EF04C 80 7F 19 DC */ lwz r3, 0x19dc(r31) /* 800F20F0 000EF050 28 03 00 00 */ cmplwi r3, 0 /* 800F20F4 000EF054 41 82 00 18 */ beq lbl_800F210C /* 800F20F8 000EF058 81 83 00 00 */ lwz r12, 0(r3) /* 800F20FC 000EF05C 38 80 00 01 */ li r4, 1 /* 800F2100 000EF060 81 8C 00 08 */ lwz r12, 8(r12) /* 800F2104 000EF064 7D 89 03 A6 */ mtctr r12 /* 800F2108 000EF068 4E 80 04 21 */ bctrl lbl_800F210C: /* 800F210C 000EF06C 7F A0 07 75 */ extsb. r0, r29 /* 800F2110 000EF070 93 DF 19 DC */ stw r30, 0x19dc(r31) /* 800F2114 000EF074 41 82 00 10 */ beq lbl_800F2124 /* 800F2118 000EF078 38 61 00 08 */ addi r3, r1, 8 /* 800F211C 000EF07C 38 80 00 00 */ li r4, 0 /* 800F2120 000EF080 48 24 ED 21 */ bl __dt__6CTokenFv lbl_800F2124: /* 800F2124 000EF084 80 9F 00 00 */ lwz r4, 0(r31) /* 800F2128 000EF088 38 61 00 4C */ addi r3, r1, 0x4c /* 800F212C 000EF08C 83 DF 19 DC */ lwz r30, 0x19dc(r31) /* 800F2130 000EF090 38 84 00 34 */ addi r4, r4, 0x34 /* 800F2134 000EF094 48 22 0B 0D */ bl GetRotation__12CTransform4fCFv /* 800F2138 000EF098 7F C3 F3 78 */ mr r3, r30 /* 800F213C 000EF09C 38 81 00 4C */ addi r4, r1, 0x4c /* 800F2140 000EF0A0 81 9E 00 00 */ lwz r12, 0(r30) /* 800F2144 000EF0A4 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800F2148 000EF0A8 7D 89 03 A6 */ mtctr r12 /* 800F214C 000EF0AC 4E 80 04 21 */ bctrl lbl_800F2150: /* 800F2150 000EF0B0 80 7F 19 DC */ lwz r3, 0x19dc(r31) /* 800F2154 000EF0B4 28 03 00 00 */ cmplwi r3, 0 /* 800F2158 000EF0B8 41 82 00 A4 */ beq lbl_800F21FC /* 800F215C 000EF0BC 81 83 00 00 */ lwz r12, 0(r3) /* 800F2160 000EF0C0 81 8C 00 58 */ lwz r12, 0x58(r12) /* 800F2164 000EF0C4 7D 89 03 A6 */ mtctr r12 /* 800F2168 000EF0C8 4E 80 04 21 */ bctrl /* 800F216C 000EF0CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F2170 000EF0D0 41 82 00 38 */ beq lbl_800F21A8 /* 800F2174 000EF0D4 80 7F 19 DC */ lwz r3, 0x19dc(r31) /* 800F2178 000EF0D8 28 03 00 00 */ cmplwi r3, 0 /* 800F217C 000EF0DC 41 82 00 18 */ beq lbl_800F2194 /* 800F2180 000EF0E0 81 83 00 00 */ lwz r12, 0(r3) /* 800F2184 000EF0E4 38 80 00 01 */ li r4, 1 /* 800F2188 000EF0E8 81 8C 00 08 */ lwz r12, 8(r12) /* 800F218C 000EF0EC 7D 89 03 A6 */ mtctr r12 /* 800F2190 000EF0F0 4E 80 04 21 */ bctrl lbl_800F2194: /* 800F2194 000EF0F4 38 00 00 00 */ li r0, 0 /* 800F2198 000EF0F8 38 7F 19 A8 */ addi r3, r31, 0x19a8 /* 800F219C 000EF0FC 90 1F 19 DC */ stw r0, 0x19dc(r31) /* 800F21A0 000EF100 48 24 EB A1 */ bl Unlock__6CTokenFv /* 800F21A4 000EF104 48 00 00 58 */ b lbl_800F21FC lbl_800F21A8: /* 800F21A8 000EF108 7F E4 FB 78 */ mr r4, r31 /* 800F21AC 000EF10C 38 61 00 1C */ addi r3, r1, 0x1c /* 800F21B0 000EF110 48 00 45 45 */ bl GetBallToWorld__10CMorphBallCFv /* 800F21B4 000EF114 C0 41 00 48 */ lfs f2, 0x48(r1) /* 800F21B8 000EF118 38 81 00 10 */ addi r4, r1, 0x10 /* 800F21BC 000EF11C C0 21 00 38 */ lfs f1, 0x38(r1) /* 800F21C0 000EF120 C0 01 00 28 */ lfs f0, 0x28(r1) /* 800F21C4 000EF124 D0 21 00 14 */ stfs f1, 0x14(r1) /* 800F21C8 000EF128 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800F21CC 000EF12C D0 41 00 18 */ stfs f2, 0x18(r1) /* 800F21D0 000EF130 80 7F 19 DC */ lwz r3, 0x19dc(r31) /* 800F21D4 000EF134 81 83 00 00 */ lwz r12, 0(r3) /* 800F21D8 000EF138 81 8C 00 20 */ lwz r12, 0x20(r12) /* 800F21DC 000EF13C 7D 89 03 A6 */ mtctr r12 /* 800F21E0 000EF140 4E 80 04 21 */ bctrl /* 800F21E4 000EF144 80 7F 19 DC */ lwz r3, 0x19dc(r31) /* 800F21E8 000EF148 FC 20 F8 90 */ fmr f1, f31 /* 800F21EC 000EF14C 81 83 00 00 */ lwz r12, 0(r3) /* 800F21F0 000EF150 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F21F4 000EF154 7D 89 03 A6 */ mtctr r12 /* 800F21F8 000EF158 4E 80 04 21 */ bctrl lbl_800F21FC: /* 800F21FC 000EF15C E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 800F2200 000EF160 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 800F2204 000EF164 CB E1 00 90 */ lfd f31, 0x90(r1) /* 800F2208 000EF168 83 E1 00 8C */ lwz r31, 0x8c(r1) /* 800F220C 000EF16C 83 C1 00 88 */ lwz r30, 0x88(r1) /* 800F2210 000EF170 83 A1 00 84 */ lwz r29, 0x84(r1) /* 800F2214 000EF174 7C 08 03 A6 */ mtlr r0 /* 800F2218 000EF178 38 21 00 A0 */ addi r1, r1, 0xa0 /* 800F221C 000EF17C 4E 80 00 20 */ blr .global ResetMorphBallTransitionFlash__10CMorphBallFv ResetMorphBallTransitionFlash__10CMorphBallFv: /* 800F2220 000EF180 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F2224 000EF184 7C 08 02 A6 */ mflr r0 /* 800F2228 000EF188 90 01 00 14 */ stw r0, 0x14(r1) /* 800F222C 000EF18C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F2230 000EF190 7C 7F 1B 78 */ mr r31, r3 /* 800F2234 000EF194 38 7F 19 A8 */ addi r3, r31, 0x19a8 /* 800F2238 000EF198 48 24 EB 4D */ bl Lock__6CTokenFv /* 800F223C 000EF19C 80 7F 19 DC */ lwz r3, 0x19dc(r31) /* 800F2240 000EF1A0 28 03 00 00 */ cmplwi r3, 0 /* 800F2244 000EF1A4 41 82 00 18 */ beq lbl_800F225C /* 800F2248 000EF1A8 81 83 00 00 */ lwz r12, 0(r3) /* 800F224C 000EF1AC 38 80 00 01 */ li r4, 1 /* 800F2250 000EF1B0 81 8C 00 08 */ lwz r12, 8(r12) /* 800F2254 000EF1B4 7D 89 03 A6 */ mtctr r12 /* 800F2258 000EF1B8 4E 80 04 21 */ bctrl lbl_800F225C: /* 800F225C 000EF1BC 38 00 00 00 */ li r0, 0 /* 800F2260 000EF1C0 90 1F 19 DC */ stw r0, 0x19dc(r31) /* 800F2264 000EF1C4 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F2268 000EF1C8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F226C 000EF1CC 7C 08 03 A6 */ mtlr r0 /* 800F2270 000EF1D0 38 21 00 10 */ addi r1, r1, 0x10 /* 800F2274 000EF1D4 4E 80 00 20 */ blr .global Render__10CMorphBallCFRC13CStateManagerPC12CActorLights_0 Render__10CMorphBallCFRC13CStateManagerPC12CActorLights_0: /* 800F2278 000EF1D8 94 21 FC 20 */ stwu r1, -0x3e0(r1) /* 800F227C 000EF1DC 7C 08 02 A6 */ mflr r0 /* 800F2280 000EF1E0 90 01 03 E4 */ stw r0, 0x3e4(r1) /* 800F2284 000EF1E4 DB E1 03 D0 */ stfd f31, 0x3d0(r1) /* 800F2288 000EF1E8 F3 E1 03 D8 */ psq_st f31, 984(r1), 0, qr0 /* 800F228C 000EF1EC DB C1 03 C0 */ stfd f30, 0x3c0(r1) /* 800F2290 000EF1F0 F3 C1 03 C8 */ psq_st f30, 968(r1), 0, qr0 /* 800F2294 000EF1F4 DB A1 03 B0 */ stfd f29, 0x3b0(r1) /* 800F2298 000EF1F8 F3 A1 03 B8 */ psq_st f29, 952(r1), 0, qr0 /* 800F229C 000EF1FC DB 81 03 A0 */ stfd f28, 0x3a0(r1) /* 800F22A0 000EF200 F3 81 03 A8 */ psq_st f28, 936(r1), 0, qr0 /* 800F22A4 000EF204 DB 61 03 90 */ stfd f27, 0x390(r1) /* 800F22A8 000EF208 F3 61 03 98 */ psq_st f27, 920(r1), 0, qr0 /* 800F22AC 000EF20C DB 41 03 80 */ stfd f26, 0x380(r1) /* 800F22B0 000EF210 F3 41 03 88 */ psq_st f26, 904(r1), 0, qr0 /* 800F22B4 000EF214 DB 21 03 70 */ stfd f25, 0x370(r1) /* 800F22B8 000EF218 F3 21 03 78 */ psq_st f25, 888(r1), 0, qr0 /* 800F22BC 000EF21C DB 01 03 60 */ stfd f24, 0x360(r1) /* 800F22C0 000EF220 F3 01 03 68 */ psq_st f24, 872(r1), 0, qr0 /* 800F22C4 000EF224 DA E1 03 50 */ stfd f23, 0x350(r1) /* 800F22C8 000EF228 F2 E1 03 58 */ psq_st f23, 856(r1), 0, qr0 /* 800F22CC 000EF22C BE E1 03 2C */ stmw r23, 0x32c(r1) /* 800F22D0 000EF230 7C 7D 1B 78 */ mr r29, r3 /* 800F22D4 000EF234 3C 60 80 3D */ lis r3, lbl_803CE910@ha /* 800F22D8 000EF238 7C 9E 23 78 */ mr r30, r4 /* 800F22DC 000EF23C 7C BF 2B 78 */ mr r31, r5 /* 800F22E0 000EF240 7F A4 EB 78 */ mr r4, r29 /* 800F22E4 000EF244 3B 63 E9 10 */ addi r27, r3, lbl_803CE910@l /* 800F22E8 000EF248 38 61 02 84 */ addi r3, r1, 0x284 /* 800F22EC 000EF24C 48 00 44 09 */ bl GetBallToWorld__10CMorphBallCFv /* 800F22F0 000EF250 38 61 02 E4 */ addi r3, r1, 0x2e4 /* 800F22F4 000EF254 38 81 02 84 */ addi r4, r1, 0x284 /* 800F22F8 000EF258 48 22 08 7D */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F22FC 000EF25C 88 1D 00 28 */ lbz r0, 0x28(r29) /* 800F2300 000EF260 28 00 00 00 */ cmplwi r0, 0 /* 800F2304 000EF264 41 82 00 9C */ beq lbl_800F23A0 /* 800F2308 000EF268 80 DD 00 00 */ lwz r6, 0(r29) /* 800F230C 000EF26C 38 61 00 DC */ addi r3, r1, 0xdc /* 800F2310 000EF270 C0 1D 00 30 */ lfs f0, 0x30(r29) /* 800F2314 000EF274 38 81 02 E4 */ addi r4, r1, 0x2e4 /* 800F2318 000EF278 C0 26 05 00 */ lfs f1, 0x500(r6) /* 800F231C 000EF27C 38 A1 01 14 */ addi r5, r1, 0x114 /* 800F2320 000EF280 D0 21 01 14 */ stfs f1, 0x114(r1) /* 800F2324 000EF284 C0 26 05 04 */ lfs f1, 0x504(r6) /* 800F2328 000EF288 D0 21 01 18 */ stfs f1, 0x118(r1) /* 800F232C 000EF28C C0 26 05 08 */ lfs f1, 0x508(r6) /* 800F2330 000EF290 D0 21 01 1C */ stfs f1, 0x11c(r1) /* 800F2334 000EF294 D0 01 00 38 */ stfs f0, 0x38(r1) /* 800F2338 000EF298 48 22 06 ED */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 800F233C 000EF29C 38 61 00 E8 */ addi r3, r1, 0xe8 /* 800F2340 000EF2A0 38 81 00 DC */ addi r4, r1, 0xdc /* 800F2344 000EF2A4 48 22 1A 8D */ bl __ct__13CUnitVector3fFRC9CVector3f /* 800F2348 000EF2A8 7C 64 1B 78 */ mr r4, r3 /* 800F234C 000EF2AC 38 61 00 F4 */ addi r3, r1, 0xf4 /* 800F2350 000EF2B0 38 A1 00 38 */ addi r5, r1, 0x38 /* 800F2354 000EF2B4 48 21 EF A1 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle /* 800F2358 000EF2B8 C0 61 00 F4 */ lfs f3, 0xf4(r1) /* 800F235C 000EF2BC 38 61 02 24 */ addi r3, r1, 0x224 /* 800F2360 000EF2C0 C0 41 00 F8 */ lfs f2, 0xf8(r1) /* 800F2364 000EF2C4 38 81 01 04 */ addi r4, r1, 0x104 /* 800F2368 000EF2C8 C0 21 00 FC */ lfs f1, 0xfc(r1) /* 800F236C 000EF2CC C0 01 01 00 */ lfs f0, 0x100(r1) /* 800F2370 000EF2D0 D0 61 01 04 */ stfs f3, 0x104(r1) /* 800F2374 000EF2D4 D0 41 01 08 */ stfs f2, 0x108(r1) /* 800F2378 000EF2D8 D0 21 01 0C */ stfs f1, 0x10c(r1) /* 800F237C 000EF2DC D0 01 01 10 */ stfs f0, 0x110(r1) /* 800F2380 000EF2E0 48 21 FC 39 */ bl BuildTransform4f__11CQuaternionCFv /* 800F2384 000EF2E4 38 61 02 54 */ addi r3, r1, 0x254 /* 800F2388 000EF2E8 38 81 02 E4 */ addi r4, r1, 0x2e4 /* 800F238C 000EF2EC 38 A1 02 24 */ addi r5, r1, 0x224 /* 800F2390 000EF2F0 48 22 05 C1 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800F2394 000EF2F4 38 61 02 E4 */ addi r3, r1, 0x2e4 /* 800F2398 000EF2F8 38 81 02 54 */ addi r4, r1, 0x254 /* 800F239C 000EF2FC 48 22 07 A5 */ bl __as__12CTransform4fFRC12CTransform4f lbl_800F23A0: /* 800F23A0 000EF300 80 7D 00 00 */ lwz r3, 0(r29) /* 800F23A4 000EF304 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F23A8 000EF308 C0 63 09 F4 */ lfs f3, 0x9f4(r3) /* 800F23AC 000EF30C FC 03 00 40 */ fcmpo cr0, f3, f0 /* 800F23B0 000EF310 7C 00 00 26 */ mfcr r0 /* 800F23B4 000EF314 54 1A 17 FE */ rlwinm r26, r0, 2, 0x1f, 0x1f /* 800F23B8 000EF318 40 81 00 B4 */ ble lbl_800F246C /* 800F23BC 000EF31C C0 22 91 E8 */ lfs f1, lbl_805AAF08@sda21(r2) /* 800F23C0 000EF320 38 81 00 50 */ addi r4, r1, 0x50 /* 800F23C4 000EF324 C0 02 80 F0 */ lfs f0, lbl_805A9E10@sda21(r2) /* 800F23C8 000EF328 38 6D 88 AC */ addi r3, r13, lbl_805A746C@sda21 /* 800F23CC 000EF32C C0 42 91 5C */ lfs f2, lbl_805AAE7C@sda21(r2) /* 800F23D0 000EF330 38 AD 88 B0 */ addi r5, r13, lbl_805A7470@sda21 /* 800F23D4 000EF334 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F23D8 000EF338 EC 03 00 24 */ fdivs f0, f3, f0 /* 800F23DC 000EF33C EC 02 00 28 */ fsubs f0, f2, f0 /* 800F23E0 000EF340 D0 01 00 50 */ stfs f0, 0x50(r1) /* 800F23E4 000EF344 4B F1 9E D1 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F23E8 000EF348 C3 03 00 00 */ lfs f24, 0(r3) /* 800F23EC 000EF34C 82 FD 00 58 */ lwz r23, 0x58(r29) /* 800F23F0 000EF350 83 1D 00 5C */ lwz r24, 0x5c(r29) /* 800F23F4 000EF354 48 25 7B B9 */ bl White__6CColorFv /* 800F23F8 000EF358 C0 02 92 6C */ lfs f0, lbl_805AAF8C@sda21(r2) /* 800F23FC 000EF35C EF E0 06 32 */ fmuls f31, f0, f24 /* 800F2400 000EF360 F3 E1 A0 0B */ psq_st f31, 11(r1), 1, qr2 /* 800F2404 000EF364 38 A0 00 03 */ li r5, 3 /* 800F2408 000EF368 80 63 00 00 */ lwz r3, 0(r3) /* 800F240C 000EF36C 39 20 00 07 */ li r9, 7 /* 800F2410 000EF370 89 41 00 0B */ lbz r10, 0xb(r1) /* 800F2414 000EF374 54 A0 00 3A */ rlwinm r0, r5, 0, 0, 0x1d /* 800F2418 000EF378 50 6A 00 2E */ rlwimi r10, r3, 0, 0, 0x17 /* 800F241C 000EF37C 39 00 00 00 */ li r8, 0 /* 800F2420 000EF380 60 00 00 01 */ ori r0, r0, 1 /* 800F2424 000EF384 B0 A1 00 86 */ sth r5, 0x86(r1) /* 800F2428 000EF388 7E E3 BB 78 */ mr r3, r23 /* 800F242C 000EF38C 7F C4 F3 78 */ mr r4, r30 /* 800F2430 000EF390 99 21 00 84 */ stb r9, 0x84(r1) /* 800F2434 000EF394 38 A1 02 E4 */ addi r5, r1, 0x2e4 /* 800F2438 000EF398 38 E1 00 94 */ addi r7, r1, 0x94 /* 800F243C 000EF39C 38 C0 00 00 */ li r6, 0 /* 800F2440 000EF3A0 99 01 00 85 */ stb r8, 0x85(r1) /* 800F2444 000EF3A4 91 41 00 88 */ stw r10, 0x88(r1) /* 800F2448 000EF3A8 99 21 00 8C */ stb r9, 0x8c(r1) /* 800F244C 000EF3AC 99 01 00 8D */ stb r8, 0x8d(r1) /* 800F2450 000EF3B0 B0 01 00 8E */ sth r0, 0x8e(r1) /* 800F2454 000EF3B4 91 41 00 90 */ stw r10, 0x90(r1) /* 800F2458 000EF3B8 99 21 00 94 */ stb r9, 0x94(r1) /* 800F245C 000EF3BC 9B 01 00 95 */ stb r24, 0x95(r1) /* 800F2460 000EF3C0 B0 01 00 96 */ sth r0, 0x96(r1) /* 800F2464 000EF3C4 91 41 00 98 */ stw r10, 0x98(r1) /* 800F2468 000EF3C8 48 02 29 55 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_800F246C: /* 800F246C 000EF3CC C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F2470 000EF3D0 38 80 00 00 */ li r4, 0 /* 800F2474 000EF3D4 38 00 00 03 */ li r0, 3 /* 800F2478 000EF3D8 98 81 00 7C */ stb r4, 0x7c(r1) /* 800F247C 000EF3DC FC 40 08 90 */ fmr f2, f1 /* 800F2480 000EF3E0 38 61 00 80 */ addi r3, r1, 0x80 /* 800F2484 000EF3E4 FC 60 08 90 */ fmr f3, f1 /* 800F2488 000EF3E8 98 81 00 7D */ stb r4, 0x7d(r1) /* 800F248C 000EF3EC FC 80 08 90 */ fmr f4, f1 /* 800F2490 000EF3F0 B0 01 00 7E */ sth r0, 0x7e(r1) /* 800F2494 000EF3F4 48 27 0F 59 */ bl __ct__6CColorFffff /* 800F2498 000EF3F8 C0 5D 1E 44 */ lfs f2, 0x1e44(r29) /* 800F249C 000EF3FC C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F24A0 000EF400 88 A1 00 7C */ lbz r5, 0x7c(r1) /* 800F24A4 000EF404 88 81 00 7D */ lbz r4, 0x7d(r1) /* 800F24A8 000EF408 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800F24AC 000EF40C A0 61 00 7E */ lhz r3, 0x7e(r1) /* 800F24B0 000EF410 80 01 00 80 */ lwz r0, 0x80(r1) /* 800F24B4 000EF414 98 A1 00 AC */ stb r5, 0xac(r1) /* 800F24B8 000EF418 98 81 00 AD */ stb r4, 0xad(r1) /* 800F24BC 000EF41C B0 61 00 AE */ sth r3, 0xae(r1) /* 800F24C0 000EF420 90 01 00 B0 */ stw r0, 0xb0(r1) /* 800F24C4 000EF424 40 81 00 3C */ ble lbl_800F2500 /* 800F24C8 000EF428 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F24CC 000EF42C 38 61 00 34 */ addi r3, r1, 0x34 /* 800F24D0 000EF430 EC 41 10 28 */ fsubs f2, f1, f2 /* 800F24D4 000EF434 FC 80 08 90 */ fmr f4, f1 /* 800F24D8 000EF438 FC 60 10 90 */ fmr f3, f2 /* 800F24DC 000EF43C 48 27 0F 11 */ bl __ct__6CColorFffff /* 800F24E0 000EF440 80 01 00 34 */ lwz r0, 0x34(r1) /* 800F24E4 000EF444 38 A0 00 01 */ li r5, 1 /* 800F24E8 000EF448 38 80 00 00 */ li r4, 0 /* 800F24EC 000EF44C 38 60 00 03 */ li r3, 3 /* 800F24F0 000EF450 98 A1 00 AC */ stb r5, 0xac(r1) /* 800F24F4 000EF454 98 81 00 AD */ stb r4, 0xad(r1) /* 800F24F8 000EF458 B0 61 00 AE */ sth r3, 0xae(r1) /* 800F24FC 000EF45C 90 01 00 B0 */ stw r0, 0xb0(r1) lbl_800F2500: /* 800F2500 000EF460 80 7D 1C 1C */ lwz r3, 0x1c1c(r29) /* 800F2504 000EF464 28 03 00 00 */ cmplwi r3, 0 /* 800F2508 000EF468 41 82 00 1C */ beq lbl_800F2524 /* 800F250C 000EF46C 88 03 00 48 */ lbz r0, 0x48(r3) /* 800F2510 000EF470 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 800F2514 000EF474 41 82 00 10 */ beq lbl_800F2524 /* 800F2518 000EF478 3C 80 80 0F */ lis r4, PointGenerator__10CMorphBallFPvPC9CVector3fPC9CVector3fi@ha /* 800F251C 000EF47C 38 84 E7 88 */ addi r4, r4, PointGenerator__10CMorphBallFPvPC9CVector3fPC9CVector3fi@l /* 800F2520 000EF480 48 26 01 F5 */ bl SetPointGeneratorFunc__13CSkinnedModelFUiPFUiPC9CVector3fPC9CVector3fi_v lbl_800F2524: /* 800F2524 000EF484 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F2528 000EF488 C0 1D 1C 34 */ lfs f0, 0x1c34(r29) /* 800F252C 000EF48C 80 1D 00 5C */ lwz r0, 0x5c(r29) /* 800F2530 000EF490 A0 61 00 AE */ lhz r3, 0xae(r1) /* 800F2534 000EF494 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F2538 000EF498 80 81 00 B0 */ lwz r4, 0xb0(r1) /* 800F253C 000EF49C 98 01 00 AD */ stb r0, 0xad(r1) /* 800F2540 000EF4A0 B0 61 00 AE */ sth r3, 0xae(r1) /* 800F2544 000EF4A4 90 81 00 B0 */ stw r4, 0xb0(r1) /* 800F2548 000EF4A8 41 82 00 44 */ beq lbl_800F258C /* 800F254C 000EF4AC 80 BF 02 9C */ lwz r5, 0x29c(r31) /* 800F2550 000EF4B0 80 02 94 00 */ lwz r0, lbl_805AB120@sda21(r2) /* 800F2554 000EF4B4 7C 05 00 40 */ cmplw r5, r0 /* 800F2558 000EF4B8 41 82 00 10 */ beq lbl_800F2568 /* 800F255C 000EF4BC 80 7D 1C 14 */ lwz r3, 0x1c14(r29) /* 800F2560 000EF4C0 38 81 02 E4 */ addi r4, r1, 0x2e4 /* 800F2564 000EF4C4 48 01 EA 55 */ bl EnableModelProjectedShadow__12CWorldShadowCFRC12CTransform4fUif lbl_800F2568: /* 800F2568 000EF4C8 80 7D 00 58 */ lwz r3, 0x58(r29) /* 800F256C 000EF4CC 7F C4 F3 78 */ mr r4, r30 /* 800F2570 000EF4D0 7F E6 FB 78 */ mr r6, r31 /* 800F2574 000EF4D4 38 A1 02 E4 */ addi r5, r1, 0x2e4 /* 800F2578 000EF4D8 38 E1 00 AC */ addi r7, r1, 0xac /* 800F257C 000EF4DC 48 02 28 41 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags /* 800F2580 000EF4E0 80 7D 1C 14 */ lwz r3, 0x1c14(r29) /* 800F2584 000EF4E4 48 01 EA 15 */ bl DisableModelProjectedShadow__12CWorldShadowCFv /* 800F2588 000EF4E8 48 00 00 1C */ b lbl_800F25A4 lbl_800F258C: /* 800F258C 000EF4EC 80 7D 00 58 */ lwz r3, 0x58(r29) /* 800F2590 000EF4F0 7F C4 F3 78 */ mr r4, r30 /* 800F2594 000EF4F4 38 A1 02 E4 */ addi r5, r1, 0x2e4 /* 800F2598 000EF4F8 38 E1 00 AC */ addi r7, r1, 0xac /* 800F259C 000EF4FC 38 C0 00 00 */ li r6, 0 /* 800F25A0 000EF500 48 02 28 1D */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_800F25A4: /* 800F25A4 000EF504 80 7D 1C 1C */ lwz r3, 0x1c1c(r29) /* 800F25A8 000EF508 28 03 00 00 */ cmplwi r3, 0 /* 800F25AC 000EF50C 41 82 00 48 */ beq lbl_800F25F4 /* 800F25B0 000EF510 88 03 00 48 */ lbz r0, 0x48(r3) /* 800F25B4 000EF514 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 800F25B8 000EF518 41 82 00 3C */ beq lbl_800F25F4 /* 800F25BC 000EF51C 48 26 01 4D */ bl ClearPointGeneratorFunc__13CSkinnedModelFv /* 800F25C0 000EF520 C0 41 02 F0 */ lfs f2, 0x2f0(r1) /* 800F25C4 000EF524 38 61 01 F4 */ addi r3, r1, 0x1f4 /* 800F25C8 000EF528 C0 21 03 00 */ lfs f1, 0x300(r1) /* 800F25CC 000EF52C 38 81 00 D0 */ addi r4, r1, 0xd0 /* 800F25D0 000EF530 C0 01 03 10 */ lfs f0, 0x310(r1) /* 800F25D4 000EF534 D0 41 00 D0 */ stfs f2, 0xd0(r1) /* 800F25D8 000EF538 82 FD 1C 1C */ lwz r23, 0x1c1c(r29) /* 800F25DC 000EF53C D0 21 00 D4 */ stfs f1, 0xd4(r1) /* 800F25E0 000EF540 D0 01 00 D8 */ stfs f0, 0xd8(r1) /* 800F25E4 000EF544 48 22 0B 5D */ bl Translate__12CTransform4fFRC9CVector3f /* 800F25E8 000EF548 7E E3 BB 78 */ mr r3, r23 /* 800F25EC 000EF54C 38 81 01 F4 */ addi r4, r1, 0x1f4 /* 800F25F0 000EF550 48 17 7D D1 */ bl Draw__20CRainSplashGeneratorCFRC12CTransform4f lbl_800F25F4: /* 800F25F4 000EF554 80 7D 00 00 */ lwz r3, 0(r29) /* 800F25F8 000EF558 38 63 01 38 */ addi r3, r3, 0x138 /* 800F25FC 000EF55C 48 22 22 BD */ bl Magnitude__9CVector3fCFv /* 800F2600 000EF560 C0 5D 1E 44 */ lfs f2, 0x1e44(r29) /* 800F2604 000EF564 FF E0 08 90 */ fmr f31, f1 /* 800F2608 000EF568 C0 02 91 90 */ lfs f0, lbl_805AAEB0@sda21(r2) /* 800F260C 000EF56C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800F2610 000EF570 40 81 00 18 */ ble lbl_800F2628 /* 800F2614 000EF574 7F A3 EB 78 */ mr r3, r29 /* 800F2618 000EF578 7F C4 F3 78 */ mr r4, r30 /* 800F261C 000EF57C 38 A1 02 E4 */ addi r5, r1, 0x2e4 /* 800F2620 000EF580 4B FF F5 6D */ bl RenderDamageEffects__10CMorphBallCFRC13CStateManagerRC12CTransform4f /* 800F2624 000EF584 48 00 01 88 */ b lbl_800F27AC lbl_800F2628: /* 800F2628 000EF588 C0 3D 1C 30 */ lfs f1, 0x1c30(r29) /* 800F262C 000EF58C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F2630 000EF590 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F2634 000EF594 40 81 01 78 */ ble lbl_800F27AC /* 800F2638 000EF598 28 1A 00 00 */ cmplwi r26, 0 /* 800F263C 000EF59C 40 82 01 70 */ bne lbl_800F27AC /* 800F2640 000EF5A0 C0 02 92 58 */ lfs f0, lbl_805AAF78@sda21(r2) /* 800F2644 000EF5A4 38 6D 88 B4 */ addi r3, r13, lbl_805A7474@sda21 /* 800F2648 000EF5A8 80 0D 88 B4 */ lwz r0, lbl_805A7474@sda21(r13) /* 800F264C 000EF5AC EC 1F 00 32 */ fmuls f0, f31, f0 /* 800F2650 000EF5B0 FC 00 00 1E */ fctiwz f0, f0 /* 800F2654 000EF5B4 D8 01 03 18 */ stfd f0, 0x318(r1) /* 800F2658 000EF5B8 80 81 03 1C */ lwz r4, 0x31c(r1) /* 800F265C 000EF5BC 7C 04 00 00 */ cmpw r4, r0 /* 800F2660 000EF5C0 90 81 00 30 */ stw r4, 0x30(r1) /* 800F2664 000EF5C4 40 80 00 08 */ bge lbl_800F266C /* 800F2668 000EF5C8 38 61 00 30 */ addi r3, r1, 0x30 lbl_800F266C: /* 800F266C 000EF5CC 83 23 00 00 */ lwz r25, 0(r3) /* 800F2670 000EF5D0 3B 41 00 68 */ addi r26, r1, 0x68 /* 800F2674 000EF5D4 CB 02 92 10 */ lfd f24, lbl_805AAF30@sda21(r2) /* 800F2678 000EF5D8 3B 00 00 00 */ li r24, 0 /* 800F267C 000EF5DC C3 22 91 94 */ lfs f25, lbl_805AAEB4@sda21(r2) /* 800F2680 000EF5E0 3F 80 43 30 */ lis r28, 0x4330 /* 800F2684 000EF5E4 C3 42 91 E8 */ lfs f26, lbl_805AAF08@sda21(r2) /* 800F2688 000EF5E8 C3 62 91 5C */ lfs f27, lbl_805AAE7C@sda21(r2) /* 800F268C 000EF5EC 48 00 01 18 */ b lbl_800F27A4 lbl_800F2690: /* 800F2690 000EF5F0 6F 00 80 00 */ xoris r0, r24, 0x8000 /* 800F2694 000EF5F4 93 81 03 18 */ stw r28, 0x318(r1) /* 800F2698 000EF5F8 7F 05 C3 78 */ mr r5, r24 /* 800F269C 000EF5FC 38 61 00 C0 */ addi r3, r1, 0xc0 /* 800F26A0 000EF600 90 01 03 1C */ stw r0, 0x31c(r1) /* 800F26A4 000EF604 38 9D 1C 90 */ addi r4, r29, 0x1c90 /* 800F26A8 000EF608 C8 01 03 18 */ lfd f0, 0x318(r1) /* 800F26AC 000EF60C EC 00 C0 28 */ fsubs f0, f0, f24 /* 800F26B0 000EF610 EE E0 C8 24 */ fdivs f23, f0, f25 /* 800F26B4 000EF614 48 00 07 89 */ bl "GetEntry__30TReservedAverage<9CVector3f,5>CFi" /* 800F26B8 000EF618 7F 05 C3 78 */ mr r5, r24 /* 800F26BC 000EF61C 38 61 01 20 */ addi r3, r1, 0x120 /* 800F26C0 000EF620 38 9D 1C 3C */ addi r4, r29, 0x1c3c /* 800F26C4 000EF624 48 00 07 25 */ bl "GetEntry__33TReservedAverage<11CQuaternion,5>CFi" /* 800F26C8 000EF628 38 61 01 64 */ addi r3, r1, 0x164 /* 800F26CC 000EF62C 38 81 01 20 */ addi r4, r1, 0x120 /* 800F26D0 000EF630 48 21 F8 E9 */ bl BuildTransform4f__11CQuaternionCFv /* 800F26D4 000EF634 38 61 01 94 */ addi r3, r1, 0x194 /* 800F26D8 000EF638 38 81 00 C0 */ addi r4, r1, 0xc0 /* 800F26DC 000EF63C 48 22 0A 65 */ bl Translate__12CTransform4fFRC9CVector3f /* 800F26E0 000EF640 38 61 01 C4 */ addi r3, r1, 0x1c4 /* 800F26E4 000EF644 38 81 01 94 */ addi r4, r1, 0x194 /* 800F26E8 000EF648 38 A1 01 64 */ addi r5, r1, 0x164 /* 800F26EC 000EF64C 48 22 02 65 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800F26F0 000EF650 38 61 02 B4 */ addi r3, r1, 0x2b4 /* 800F26F4 000EF654 38 81 01 C4 */ addi r4, r1, 0x1c4 /* 800F26F8 000EF658 48 22 04 7D */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F26FC 000EF65C EC 3B B8 28 */ fsubs f1, f27, f23 /* 800F2700 000EF660 38 80 00 00 */ li r4, 0 /* 800F2704 000EF664 C0 1D 1C 30 */ lfs f0, 0x1c30(r29) /* 800F2708 000EF668 80 1D 00 68 */ lwz r0, 0x68(r29) /* 800F270C 000EF66C EC 01 00 32 */ fmuls f0, f1, f0 /* 800F2710 000EF670 98 81 01 30 */ stb r4, 0x130(r1) /* 800F2714 000EF674 28 00 00 00 */ cmplwi r0, 0 /* 800F2718 000EF678 98 81 00 CC */ stb r4, 0xcc(r1) /* 800F271C 000EF67C EC 9A 00 32 */ fmuls f4, f26, f0 /* 800F2720 000EF680 41 82 00 80 */ beq lbl_800F27A0 /* 800F2724 000EF684 38 60 00 07 */ li r3, 7 /* 800F2728 000EF688 38 00 00 03 */ li r0, 3 /* 800F272C 000EF68C 98 61 00 64 */ stb r3, 0x64(r1) /* 800F2730 000EF690 FC 20 D8 90 */ fmr f1, f27 /* 800F2734 000EF694 FC 40 D8 90 */ fmr f2, f27 /* 800F2738 000EF698 82 FD 00 6C */ lwz r23, 0x6c(r29) /* 800F273C 000EF69C FC 60 D8 90 */ fmr f3, f27 /* 800F2740 000EF6A0 98 81 00 65 */ stb r4, 0x65(r1) /* 800F2744 000EF6A4 7F 43 D3 78 */ mr r3, r26 /* 800F2748 000EF6A8 B0 01 00 66 */ sth r0, 0x66(r1) /* 800F274C 000EF6AC 48 27 0C A1 */ bl __ct__6CColorFffff /* 800F2750 000EF6B0 A0 61 00 66 */ lhz r3, 0x66(r1) /* 800F2754 000EF6B4 7F C4 F3 78 */ mr r4, r30 /* 800F2758 000EF6B8 89 21 00 64 */ lbz r9, 0x64(r1) /* 800F275C 000EF6BC 38 A1 02 B4 */ addi r5, r1, 0x2b4 /* 800F2760 000EF6C0 80 01 00 68 */ lwz r0, 0x68(r1) /* 800F2764 000EF6C4 54 63 00 3A */ rlwinm r3, r3, 0, 0, 0x1d /* 800F2768 000EF6C8 60 68 00 01 */ ori r8, r3, 1 /* 800F276C 000EF6CC 88 C1 00 65 */ lbz r6, 0x65(r1) /* 800F2770 000EF6D0 99 21 00 6C */ stb r9, 0x6c(r1) /* 800F2774 000EF6D4 38 E1 00 74 */ addi r7, r1, 0x74 /* 800F2778 000EF6D8 80 7D 00 68 */ lwz r3, 0x68(r29) /* 800F277C 000EF6DC 98 C1 00 6D */ stb r6, 0x6d(r1) /* 800F2780 000EF6E0 38 C0 00 00 */ li r6, 0 /* 800F2784 000EF6E4 B1 01 00 6E */ sth r8, 0x6e(r1) /* 800F2788 000EF6E8 90 01 00 70 */ stw r0, 0x70(r1) /* 800F278C 000EF6EC 99 21 00 74 */ stb r9, 0x74(r1) /* 800F2790 000EF6F0 9A E1 00 75 */ stb r23, 0x75(r1) /* 800F2794 000EF6F4 B1 01 00 76 */ sth r8, 0x76(r1) /* 800F2798 000EF6F8 90 01 00 78 */ stw r0, 0x78(r1) /* 800F279C 000EF6FC 48 02 26 21 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_800F27A0: /* 800F27A0 000EF700 3B 18 00 01 */ addi r24, r24, 1 lbl_800F27A4: /* 800F27A4 000EF704 7C 18 C8 00 */ cmpw r24, r25 /* 800F27A8 000EF708 41 80 FE E8 */ blt lbl_800F2690 lbl_800F27AC: /* 800F27AC 000EF70C C0 3D 1C 20 */ lfs f1, 0x1c20(r29) /* 800F27B0 000EF710 38 C0 00 FF */ li r6, 0xff /* 800F27B4 000EF714 C0 1D 1C 24 */ lfs f0, 0x1c24(r29) /* 800F27B8 000EF718 38 FB 02 14 */ addi r7, r27, 0x214 /* 800F27BC 000EF71C 80 1D 00 08 */ lwz r0, 8(r29) /* 800F27C0 000EF720 EE E1 00 24 */ fdivs f23, f1, f0 /* 800F27C4 000EF724 C0 02 92 6C */ lfs f0, lbl_805AAF8C@sda21(r2) /* 800F27C8 000EF728 1C A0 00 03 */ mulli r5, r0, 3 /* 800F27CC 000EF72C 98 C1 00 2F */ stb r6, 0x2f(r1) /* 800F27D0 000EF730 7C E7 2A 14 */ add r7, r7, r5 /* 800F27D4 000EF734 88 87 00 00 */ lbz r4, 0(r7) /* 800F27D8 000EF738 EF 80 05 F2 */ fmuls f28, f0, f23 /* 800F27DC 000EF73C 88 67 00 01 */ lbz r3, 1(r7) /* 800F27E0 000EF740 88 07 00 02 */ lbz r0, 2(r7) /* 800F27E4 000EF744 98 81 00 2C */ stb r4, 0x2c(r1) /* 800F27E8 000EF748 FF C0 E0 90 */ fmr f30, f28 /* 800F27EC 000EF74C 98 61 00 2D */ stb r3, 0x2d(r1) /* 800F27F0 000EF750 98 01 00 2E */ stb r0, 0x2e(r1) /* 800F27F4 000EF754 80 01 00 2C */ lwz r0, 0x2c(r1) /* 800F27F8 000EF758 90 01 00 4C */ stw r0, 0x4c(r1) /* 800F27FC 000EF75C F3 C1 A0 0A */ psq_st f30, 10(r1), 1, qr2 /* 800F2800 000EF760 38 FB 02 30 */ addi r7, r27, 0x230 /* 800F2804 000EF764 7C E7 2A 14 */ add r7, r7, r5 /* 800F2808 000EF768 88 87 00 00 */ lbz r4, 0(r7) /* 800F280C 000EF76C 88 67 00 01 */ lbz r3, 1(r7) /* 800F2810 000EF770 88 07 00 02 */ lbz r0, 2(r7) /* 800F2814 000EF774 88 A1 00 0A */ lbz r5, 0xa(r1) /* 800F2818 000EF778 98 81 00 28 */ stb r4, 0x28(r1) /* 800F281C 000EF77C 98 61 00 29 */ stb r3, 0x29(r1) /* 800F2820 000EF780 98 01 00 2A */ stb r0, 0x2a(r1) /* 800F2824 000EF784 98 C1 00 2B */ stb r6, 0x2b(r1) /* 800F2828 000EF788 80 01 00 28 */ lwz r0, 0x28(r1) /* 800F282C 000EF78C 98 A1 00 4F */ stb r5, 0x4f(r1) /* 800F2830 000EF790 90 01 00 48 */ stw r0, 0x48(r1) /* 800F2834 000EF794 F3 81 A0 09 */ psq_st f28, 9(r1), 1, qr2 /* 800F2838 000EF798 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F283C 000EF79C C0 1D 1D F4 */ lfs f0, 0x1df4(r29) /* 800F2840 000EF7A0 88 01 00 09 */ lbz r0, 9(r1) /* 800F2844 000EF7A4 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F2848 000EF7A8 D0 21 00 44 */ stfs f1, 0x44(r1) /* 800F284C 000EF7AC 98 01 00 4B */ stb r0, 0x4b(r1) /* 800F2850 000EF7B0 40 81 00 30 */ ble lbl_800F2880 /* 800F2854 000EF7B4 C0 22 92 5C */ lfs f1, lbl_805AAF7C@sda21(r2) /* 800F2858 000EF7B8 38 81 00 24 */ addi r4, r1, 0x24 /* 800F285C 000EF7BC C0 02 91 9C */ lfs f0, lbl_805AAEBC@sda21(r2) /* 800F2860 000EF7C0 38 6D 88 B8 */ addi r3, r13, lbl_805A7478@sda21 /* 800F2864 000EF7C4 EC 3F 08 28 */ fsubs f1, f31, f1 /* 800F2868 000EF7C8 38 AD 88 BC */ addi r5, r13, lbl_805A747C@sda21 /* 800F286C 000EF7CC EC 01 00 24 */ fdivs f0, f1, f0 /* 800F2870 000EF7D0 D0 01 00 24 */ stfs f0, 0x24(r1) /* 800F2874 000EF7D4 4B F1 9A 41 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F2878 000EF7D8 C0 03 00 00 */ lfs f0, 0(r3) /* 800F287C 000EF7DC D0 01 00 44 */ stfs f0, 0x44(r1) lbl_800F2880: /* 800F2880 000EF7E0 C0 21 00 44 */ lfs f1, 0x44(r1) /* 800F2884 000EF7E4 38 61 00 20 */ addi r3, r1, 0x20 /* 800F2888 000EF7E8 38 81 00 4C */ addi r4, r1, 0x4c /* 800F288C 000EF7EC 38 A1 00 48 */ addi r5, r1, 0x48 /* 800F2890 000EF7F0 48 27 0A 1D */ bl Lerp__6CColorFRC6CColorRC6CColorf /* 800F2894 000EF7F4 80 01 00 20 */ lwz r0, 0x20(r1) /* 800F2898 000EF7F8 38 81 00 40 */ addi r4, r1, 0x40 /* 800F289C 000EF7FC 80 7D 19 B8 */ lwz r3, 0x19b8(r29) /* 800F28A0 000EF800 90 01 00 40 */ stw r0, 0x40(r1) /* 800F28A4 000EF804 81 83 00 00 */ lwz r12, 0(r3) /* 800F28A8 000EF808 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F28AC 000EF80C 7D 89 03 A6 */ mtctr r12 /* 800F28B0 000EF810 4E 80 04 21 */ bctrl /* 800F28B4 000EF814 80 7D 19 B8 */ lwz r3, 0x19b8(r29) /* 800F28B8 000EF818 81 83 00 00 */ lwz r12, 0(r3) /* 800F28BC 000EF81C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F28C0 000EF820 7D 89 03 A6 */ mtctr r12 /* 800F28C4 000EF824 4E 80 04 21 */ bctrl /* 800F28C8 000EF828 80 7D 19 BC */ lwz r3, 0x19bc(r29) /* 800F28CC 000EF82C 38 81 00 40 */ addi r4, r1, 0x40 /* 800F28D0 000EF830 81 83 00 00 */ lwz r12, 0(r3) /* 800F28D4 000EF834 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F28D8 000EF838 7D 89 03 A6 */ mtctr r12 /* 800F28DC 000EF83C 4E 80 04 21 */ bctrl /* 800F28E0 000EF840 80 7D 19 BC */ lwz r3, 0x19bc(r29) /* 800F28E4 000EF844 81 83 00 00 */ lwz r12, 0(r3) /* 800F28E8 000EF848 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F28EC 000EF84C 7D 89 03 A6 */ mtctr r12 /* 800F28F0 000EF850 4E 80 04 21 */ bctrl /* 800F28F4 000EF854 80 7D 19 C0 */ lwz r3, 0x19c0(r29) /* 800F28F8 000EF858 38 81 00 40 */ addi r4, r1, 0x40 /* 800F28FC 000EF85C 81 83 00 00 */ lwz r12, 0(r3) /* 800F2900 000EF860 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F2904 000EF864 7D 89 03 A6 */ mtctr r12 /* 800F2908 000EF868 4E 80 04 21 */ bctrl /* 800F290C 000EF86C 80 7D 19 C0 */ lwz r3, 0x19c0(r29) /* 800F2910 000EF870 81 83 00 00 */ lwz r12, 0(r3) /* 800F2914 000EF874 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2918 000EF878 7D 89 03 A6 */ mtctr r12 /* 800F291C 000EF87C 4E 80 04 21 */ bctrl /* 800F2920 000EF880 80 7D 19 C4 */ lwz r3, 0x19c4(r29) /* 800F2924 000EF884 38 81 00 40 */ addi r4, r1, 0x40 /* 800F2928 000EF888 81 83 00 00 */ lwz r12, 0(r3) /* 800F292C 000EF88C 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F2930 000EF890 7D 89 03 A6 */ mtctr r12 /* 800F2934 000EF894 4E 80 04 21 */ bctrl /* 800F2938 000EF898 80 7D 19 C4 */ lwz r3, 0x19c4(r29) /* 800F293C 000EF89C 81 83 00 00 */ lwz r12, 0(r3) /* 800F2940 000EF8A0 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2944 000EF8A4 7D 89 03 A6 */ mtctr r12 /* 800F2948 000EF8A8 4E 80 04 21 */ bctrl /* 800F294C 000EF8AC C0 3D 1D F4 */ lfs f1, 0x1df4(r29) /* 800F2950 000EF8B0 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F2954 000EF8B4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F2958 000EF8B8 40 81 00 B8 */ ble lbl_800F2A10 /* 800F295C 000EF8BC C0 22 92 70 */ lfs f1, lbl_805AAF90@sda21(r2) /* 800F2960 000EF8C0 FC 1F 08 40 */ fcmpo cr0, f31, f1 /* 800F2964 000EF8C4 40 81 00 AC */ ble lbl_800F2A10 /* 800F2968 000EF8C8 C8 02 92 78 */ lfd f0, lbl_805AAF98@sda21(r2) /* 800F296C 000EF8CC FC 17 00 40 */ fcmpo cr0, f23, f0 /* 800F2970 000EF8D0 40 81 00 A0 */ ble lbl_800F2A10 /* 800F2974 000EF8D4 EC 3F 08 28 */ fsubs f1, f31, f1 /* 800F2978 000EF8D8 C0 02 92 80 */ lfs f0, lbl_805AAFA0@sda21(r2) /* 800F297C 000EF8DC 38 81 00 1C */ addi r4, r1, 0x1c /* 800F2980 000EF8E0 38 A1 00 44 */ addi r5, r1, 0x44 /* 800F2984 000EF8E4 38 6D 88 C0 */ addi r3, r13, lbl_805A7480@sda21 /* 800F2988 000EF8E8 EC 01 00 24 */ fdivs f0, f1, f0 /* 800F298C 000EF8EC D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800F2990 000EF8F0 4B F1 99 25 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F2994 000EF8F4 80 9D 00 08 */ lwz r4, 8(r29) /* 800F2998 000EF8F8 38 00 00 FF */ li r0, 0xff /* 800F299C 000EF8FC 38 BB 02 4C */ addi r5, r27, 0x24c /* 800F29A0 000EF900 C0 23 00 00 */ lfs f1, 0(r3) /* 800F29A4 000EF904 1C 64 00 03 */ mulli r3, r4, 3 /* 800F29A8 000EF908 C0 02 92 6C */ lfs f0, lbl_805AAF8C@sda21(r2) /* 800F29AC 000EF90C 98 01 00 1B */ stb r0, 0x1b(r1) /* 800F29B0 000EF910 EF A0 00 72 */ fmuls f29, f0, f1 /* 800F29B4 000EF914 7C A5 1A 14 */ add r5, r5, r3 /* 800F29B8 000EF918 88 85 00 00 */ lbz r4, 0(r5) /* 800F29BC 000EF91C 88 65 00 01 */ lbz r3, 1(r5) /* 800F29C0 000EF920 88 05 00 02 */ lbz r0, 2(r5) /* 800F29C4 000EF924 98 81 00 18 */ stb r4, 0x18(r1) /* 800F29C8 000EF928 98 61 00 19 */ stb r3, 0x19(r1) /* 800F29CC 000EF92C 98 01 00 1A */ stb r0, 0x1a(r1) /* 800F29D0 000EF930 80 01 00 18 */ lwz r0, 0x18(r1) /* 800F29D4 000EF934 90 01 00 3C */ stw r0, 0x3c(r1) /* 800F29D8 000EF938 F3 A1 A0 08 */ psq_st f29, 8(r1), 1, qr2 /* 800F29DC 000EF93C 38 81 00 3C */ addi r4, r1, 0x3c /* 800F29E0 000EF940 80 7D 19 C8 */ lwz r3, 0x19c8(r29) /* 800F29E4 000EF944 88 01 00 08 */ lbz r0, 8(r1) /* 800F29E8 000EF948 98 01 00 3F */ stb r0, 0x3f(r1) /* 800F29EC 000EF94C 81 83 00 00 */ lwz r12, 0(r3) /* 800F29F0 000EF950 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F29F4 000EF954 7D 89 03 A6 */ mtctr r12 /* 800F29F8 000EF958 4E 80 04 21 */ bctrl /* 800F29FC 000EF95C 80 7D 19 C8 */ lwz r3, 0x19c8(r29) /* 800F2A00 000EF960 81 83 00 00 */ lwz r12, 0(r3) /* 800F2A04 000EF964 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2A08 000EF968 7D 89 03 A6 */ mtctr r12 /* 800F2A0C 000EF96C 4E 80 04 21 */ bctrl lbl_800F2A10: /* 800F2A10 000EF970 7F A3 EB 78 */ mr r3, r29 /* 800F2A14 000EF974 4B FF C6 C1 */ bl RenderSpiderBallElectricalEffects__10CMorphBallCFv /* 800F2A18 000EF978 80 7E 08 B8 */ lwz r3, 0x8b8(r30) /* 800F2A1C 000EF97C 38 80 00 13 */ li r4, 0x13 /* 800F2A20 000EF980 80 63 00 00 */ lwz r3, 0(r3) /* 800F2A24 000EF984 4B F9 F0 9D */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 800F2A28 000EF988 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F2A2C 000EF98C 41 82 00 E0 */ beq lbl_800F2B0C /* 800F2A30 000EF990 80 1D 00 60 */ lwz r0, 0x60(r29) /* 800F2A34 000EF994 28 00 00 00 */ cmplwi r0, 0 /* 800F2A38 000EF998 41 82 00 D4 */ beq lbl_800F2B0C /* 800F2A3C 000EF99C C0 3D 1C 38 */ lfs f1, 0x1c38(r29) /* 800F2A40 000EF9A0 C0 1D 1C 34 */ lfs f0, 0x1c34(r29) /* 800F2A44 000EF9A4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F2A48 000EF9A8 40 80 00 0C */ bge lbl_800F2A54 /* 800F2A4C 000EF9AC 38 BD 1C 34 */ addi r5, r29, 0x1c34 /* 800F2A50 000EF9B0 48 00 00 08 */ b lbl_800F2A58 lbl_800F2A54: /* 800F2A54 000EF9B4 38 BD 1C 38 */ addi r5, r29, 0x1c38 lbl_800F2A58: /* 800F2A58 000EF9B8 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F2A5C 000EF9BC 38 80 00 00 */ li r4, 0 /* 800F2A60 000EF9C0 38 00 00 03 */ li r0, 3 /* 800F2A64 000EF9C4 98 81 00 5C */ stb r4, 0x5c(r1) /* 800F2A68 000EF9C8 FC 40 08 90 */ fmr f2, f1 /* 800F2A6C 000EF9CC C2 E5 00 00 */ lfs f23, 0(r5) /* 800F2A70 000EF9D0 FC 60 08 90 */ fmr f3, f1 /* 800F2A74 000EF9D4 98 81 00 5D */ stb r4, 0x5d(r1) /* 800F2A78 000EF9D8 FC 80 08 90 */ fmr f4, f1 /* 800F2A7C 000EF9DC 82 FD 00 64 */ lwz r23, 0x64(r29) /* 800F2A80 000EF9E0 B0 01 00 5E */ sth r0, 0x5e(r1) /* 800F2A84 000EF9E4 38 61 00 60 */ addi r3, r1, 0x60 /* 800F2A88 000EF9E8 48 27 09 65 */ bl __ct__6CColorFffff /* 800F2A8C 000EF9EC C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F2A90 000EF9F0 88 81 00 5C */ lbz r4, 0x5c(r1) /* 800F2A94 000EF9F4 A0 61 00 5E */ lhz r3, 0x5e(r1) /* 800F2A98 000EF9F8 FC 01 B8 00 */ fcmpu cr0, f1, f23 /* 800F2A9C 000EF9FC 80 01 00 60 */ lwz r0, 0x60(r1) /* 800F2AA0 000EFA00 98 81 00 A4 */ stb r4, 0xa4(r1) /* 800F2AA4 000EFA04 9A E1 00 A5 */ stb r23, 0xa5(r1) /* 800F2AA8 000EFA08 B0 61 00 A6 */ sth r3, 0xa6(r1) /* 800F2AAC 000EFA0C 90 01 00 A8 */ stw r0, 0xa8(r1) /* 800F2AB0 000EFA10 41 82 00 44 */ beq lbl_800F2AF4 /* 800F2AB4 000EFA14 80 BF 02 9C */ lwz r5, 0x29c(r31) /* 800F2AB8 000EFA18 80 02 94 00 */ lwz r0, lbl_805AB120@sda21(r2) /* 800F2ABC 000EFA1C 7C 05 00 40 */ cmplw r5, r0 /* 800F2AC0 000EFA20 41 82 00 10 */ beq lbl_800F2AD0 /* 800F2AC4 000EFA24 80 7D 1C 14 */ lwz r3, 0x1c14(r29) /* 800F2AC8 000EFA28 38 81 02 E4 */ addi r4, r1, 0x2e4 /* 800F2ACC 000EFA2C 48 01 E4 ED */ bl EnableModelProjectedShadow__12CWorldShadowCFRC12CTransform4fUif lbl_800F2AD0: /* 800F2AD0 000EFA30 80 7D 00 60 */ lwz r3, 0x60(r29) /* 800F2AD4 000EFA34 7F C4 F3 78 */ mr r4, r30 /* 800F2AD8 000EFA38 80 DD 1C 18 */ lwz r6, 0x1c18(r29) /* 800F2ADC 000EFA3C 38 A1 02 E4 */ addi r5, r1, 0x2e4 /* 800F2AE0 000EFA40 38 E1 00 A4 */ addi r7, r1, 0xa4 /* 800F2AE4 000EFA44 48 02 22 D9 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags /* 800F2AE8 000EFA48 80 7D 1C 14 */ lwz r3, 0x1c14(r29) /* 800F2AEC 000EFA4C 48 01 E4 AD */ bl DisableModelProjectedShadow__12CWorldShadowCFv /* 800F2AF0 000EFA50 48 00 00 1C */ b lbl_800F2B0C lbl_800F2AF4: /* 800F2AF4 000EFA54 80 7D 00 60 */ lwz r3, 0x60(r29) /* 800F2AF8 000EFA58 7F C4 F3 78 */ mr r4, r30 /* 800F2AFC 000EFA5C 38 A1 02 E4 */ addi r5, r1, 0x2e4 /* 800F2B00 000EFA60 38 E1 00 A4 */ addi r7, r1, 0xa4 /* 800F2B04 000EFA64 38 C0 00 00 */ li r6, 0 /* 800F2B08 000EFA68 48 02 22 B5 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_800F2B0C: /* 800F2B0C 000EFA6C 80 7D 19 CC */ lwz r3, 0x19cc(r29) /* 800F2B10 000EFA70 81 83 00 00 */ lwz r12, 0(r3) /* 800F2B14 000EFA74 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2B18 000EFA78 7D 89 03 A6 */ mtctr r12 /* 800F2B1C 000EFA7C 4E 80 04 21 */ bctrl /* 800F2B20 000EFA80 3A FD 1B CC */ addi r23, r29, 0x1bcc /* 800F2B24 000EFA84 80 7D 1C 08 */ lwz r3, 0x1c08(r29) /* 800F2B28 000EFA88 81 83 00 00 */ lwz r12, 0(r3) /* 800F2B2C 000EFA8C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2B30 000EFA90 7D 89 03 A6 */ mtctr r12 /* 800F2B34 000EFA94 4E 80 04 21 */ bctrl /* 800F2B38 000EFA98 80 1D 1C 0C */ lwz r0, 0x1c0c(r29) /* 800F2B3C 000EFA9C 2C 00 FF FF */ cmpwi r0, -1 /* 800F2B40 000EFAA0 41 82 00 20 */ beq lbl_800F2B60 /* 800F2B44 000EFAA4 54 03 18 38 */ slwi r3, r0, 3 /* 800F2B48 000EFAA8 38 03 00 04 */ addi r0, r3, 4 /* 800F2B4C 000EFAAC 7C 77 00 2E */ lwzx r3, r23, r0 /* 800F2B50 000EFAB0 81 83 00 00 */ lwz r12, 0(r3) /* 800F2B54 000EFAB4 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2B58 000EFAB8 7D 89 03 A6 */ mtctr r12 /* 800F2B5C 000EFABC 4E 80 04 21 */ bctrl lbl_800F2B60: /* 800F2B60 000EFAC0 80 7D 00 08 */ lwz r3, 8(r29) /* 800F2B64 000EFAC4 38 00 00 FF */ li r0, 0xff /* 800F2B68 000EFAC8 38 BB 01 C0 */ addi r5, r27, 0x1c0 /* 800F2B6C 000EFACC 98 01 00 17 */ stb r0, 0x17(r1) /* 800F2B70 000EFAD0 1C 03 00 03 */ mulli r0, r3, 3 /* 800F2B74 000EFAD4 80 7D 19 D0 */ lwz r3, 0x19d0(r29) /* 800F2B78 000EFAD8 38 81 00 14 */ addi r4, r1, 0x14 /* 800F2B7C 000EFADC 7C A5 02 14 */ add r5, r5, r0 /* 800F2B80 000EFAE0 88 E5 00 02 */ lbz r7, 2(r5) /* 800F2B84 000EFAE4 88 C5 00 01 */ lbz r6, 1(r5) /* 800F2B88 000EFAE8 88 05 00 00 */ lbz r0, 0(r5) /* 800F2B8C 000EFAEC 98 C1 00 15 */ stb r6, 0x15(r1) /* 800F2B90 000EFAF0 98 01 00 14 */ stb r0, 0x14(r1) /* 800F2B94 000EFAF4 98 E1 00 16 */ stb r7, 0x16(r1) /* 800F2B98 000EFAF8 81 83 00 00 */ lwz r12, 0(r3) /* 800F2B9C 000EFAFC 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F2BA0 000EFB00 7D 89 03 A6 */ mtctr r12 /* 800F2BA4 000EFB04 4E 80 04 21 */ bctrl /* 800F2BA8 000EFB08 80 7D 19 D0 */ lwz r3, 0x19d0(r29) /* 800F2BAC 000EFB0C 48 22 4A F1 */ bl GetNumActiveChildParticles__11CElementGenCFv /* 800F2BB0 000EFB10 2C 03 00 00 */ cmpwi r3, 0 /* 800F2BB4 000EFB14 40 81 00 B4 */ ble lbl_800F2C68 /* 800F2BB8 000EFB18 80 7D 19 D0 */ lwz r3, 0x19d0(r29) /* 800F2BBC 000EFB1C 38 80 00 00 */ li r4, 0 /* 800F2BC0 000EFB20 48 22 4A CD */ bl GetActiveChildParticle__11CElementGenCFi /* 800F2BC4 000EFB24 80 9D 00 08 */ lwz r4, 8(r29) /* 800F2BC8 000EFB28 38 00 00 FF */ li r0, 0xff /* 800F2BCC 000EFB2C 38 BB 01 DC */ addi r5, r27, 0x1dc /* 800F2BD0 000EFB30 98 01 00 13 */ stb r0, 0x13(r1) /* 800F2BD4 000EFB34 1C 04 00 03 */ mulli r0, r4, 3 /* 800F2BD8 000EFB38 38 81 00 10 */ addi r4, r1, 0x10 /* 800F2BDC 000EFB3C 7C A5 02 14 */ add r5, r5, r0 /* 800F2BE0 000EFB40 88 E5 00 02 */ lbz r7, 2(r5) /* 800F2BE4 000EFB44 88 C5 00 01 */ lbz r6, 1(r5) /* 800F2BE8 000EFB48 88 05 00 00 */ lbz r0, 0(r5) /* 800F2BEC 000EFB4C 98 C1 00 11 */ stb r6, 0x11(r1) /* 800F2BF0 000EFB50 98 01 00 10 */ stb r0, 0x10(r1) /* 800F2BF4 000EFB54 98 E1 00 12 */ stb r7, 0x12(r1) /* 800F2BF8 000EFB58 81 83 00 00 */ lwz r12, 0(r3) /* 800F2BFC 000EFB5C 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F2C00 000EFB60 7D 89 03 A6 */ mtctr r12 /* 800F2C04 000EFB64 4E 80 04 21 */ bctrl /* 800F2C08 000EFB68 80 7D 19 D0 */ lwz r3, 0x19d0(r29) /* 800F2C0C 000EFB6C 48 22 4A 91 */ bl GetNumActiveChildParticles__11CElementGenCFv /* 800F2C10 000EFB70 2C 03 00 01 */ cmpwi r3, 1 /* 800F2C14 000EFB74 40 81 00 54 */ ble lbl_800F2C68 /* 800F2C18 000EFB78 80 7D 19 D0 */ lwz r3, 0x19d0(r29) /* 800F2C1C 000EFB7C 38 80 00 01 */ li r4, 1 /* 800F2C20 000EFB80 48 22 4A 6D */ bl GetActiveChildParticle__11CElementGenCFi /* 800F2C24 000EFB84 80 9D 00 08 */ lwz r4, 8(r29) /* 800F2C28 000EFB88 38 00 00 FF */ li r0, 0xff /* 800F2C2C 000EFB8C 38 BB 01 F8 */ addi r5, r27, 0x1f8 /* 800F2C30 000EFB90 98 01 00 0F */ stb r0, 0xf(r1) /* 800F2C34 000EFB94 1C 04 00 03 */ mulli r0, r4, 3 /* 800F2C38 000EFB98 38 81 00 0C */ addi r4, r1, 0xc /* 800F2C3C 000EFB9C 7C A5 02 14 */ add r5, r5, r0 /* 800F2C40 000EFBA0 88 E5 00 02 */ lbz r7, 2(r5) /* 800F2C44 000EFBA4 88 C5 00 01 */ lbz r6, 1(r5) /* 800F2C48 000EFBA8 88 05 00 00 */ lbz r0, 0(r5) /* 800F2C4C 000EFBAC 98 C1 00 0D */ stb r6, 0xd(r1) /* 800F2C50 000EFBB0 98 01 00 0C */ stb r0, 0xc(r1) /* 800F2C54 000EFBB4 98 E1 00 0E */ stb r7, 0xe(r1) /* 800F2C58 000EFBB8 81 83 00 00 */ lwz r12, 0(r3) /* 800F2C5C 000EFBBC 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F2C60 000EFBC0 7D 89 03 A6 */ mtctr r12 /* 800F2C64 000EFBC4 4E 80 04 21 */ bctrl lbl_800F2C68: /* 800F2C68 000EFBC8 80 7D 19 D0 */ lwz r3, 0x19d0(r29) /* 800F2C6C 000EFBCC 81 83 00 00 */ lwz r12, 0(r3) /* 800F2C70 000EFBD0 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2C74 000EFBD4 7D 89 03 A6 */ mtctr r12 /* 800F2C78 000EFBD8 4E 80 04 21 */ bctrl /* 800F2C7C 000EFBDC 80 7D 19 D4 */ lwz r3, 0x19d4(r29) /* 800F2C80 000EFBE0 81 83 00 00 */ lwz r12, 0(r3) /* 800F2C84 000EFBE4 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2C88 000EFBE8 7D 89 03 A6 */ mtctr r12 /* 800F2C8C 000EFBEC 4E 80 04 21 */ bctrl /* 800F2C90 000EFBF0 7F A3 EB 78 */ mr r3, r29 /* 800F2C94 000EFBF4 7F C4 F3 78 */ mr r4, r30 /* 800F2C98 000EFBF8 4B FF C3 A5 */ bl RenderEnergyDrainEffects__10CMorphBallCFRC13CStateManager /* 800F2C9C 000EFBFC 80 7D 19 D8 */ lwz r3, 0x19d8(r29) /* 800F2CA0 000EFC00 81 83 00 00 */ lwz r12, 0(r3) /* 800F2CA4 000EFC04 81 8C 00 50 */ lwz r12, 0x50(r12) /* 800F2CA8 000EFC08 7D 89 03 A6 */ mtctr r12 /* 800F2CAC 000EFC0C 4E 80 04 21 */ bctrl /* 800F2CB0 000EFC10 80 03 00 00 */ lwz r0, 0(r3) /* 800F2CB4 000EFC14 28 00 00 00 */ cmplwi r0, 0 /* 800F2CB8 000EFC18 41 82 00 18 */ beq lbl_800F2CD0 /* 800F2CBC 000EFC1C 80 7D 19 D8 */ lwz r3, 0x19d8(r29) /* 800F2CC0 000EFC20 81 83 00 00 */ lwz r12, 0(r3) /* 800F2CC4 000EFC24 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F2CC8 000EFC28 7D 89 03 A6 */ mtctr r12 /* 800F2CCC 000EFC2C 4E 80 04 21 */ bctrl lbl_800F2CD0: /* 800F2CD0 000EFC30 7F A3 EB 78 */ mr r3, r29 /* 800F2CD4 000EFC34 7F C4 F3 78 */ mr r4, r30 /* 800F2CD8 000EFC38 4B FF F2 E9 */ bl RenderMorphBallTransitionFlash__10CMorphBallCFRC13CStateManager /* 800F2CDC 000EFC3C 80 7D 00 00 */ lwz r3, 0(r29) /* 800F2CE0 000EFC40 4B F2 30 1D */ bl GetFrozenState__7CPlayerCFv /* 800F2CE4 000EFC44 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F2CE8 000EFC48 41 82 00 98 */ beq lbl_800F2D80 /* 800F2CEC 000EFC4C C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F2CF0 000EFC50 38 80 00 00 */ li r4, 0 /* 800F2CF4 000EFC54 38 00 00 03 */ li r0, 3 /* 800F2CF8 000EFC58 98 81 00 54 */ stb r4, 0x54(r1) /* 800F2CFC 000EFC5C FC 40 08 90 */ fmr f2, f1 /* 800F2D00 000EFC60 38 61 00 58 */ addi r3, r1, 0x58 /* 800F2D04 000EFC64 FC 60 08 90 */ fmr f3, f1 /* 800F2D08 000EFC68 98 81 00 55 */ stb r4, 0x55(r1) /* 800F2D0C 000EFC6C FC 80 08 90 */ fmr f4, f1 /* 800F2D10 000EFC70 B0 01 00 56 */ sth r0, 0x56(r1) /* 800F2D14 000EFC74 48 27 06 D9 */ bl __ct__6CColorFffff /* 800F2D18 000EFC78 89 01 00 54 */ lbz r8, 0x54(r1) /* 800F2D1C 000EFC7C 3C 60 80 5A */ lis r3, lbl_805A65FC@ha /* 800F2D20 000EFC80 88 E1 00 55 */ lbz r7, 0x55(r1) /* 800F2D24 000EFC84 38 83 65 FC */ addi r4, r3, lbl_805A65FC@l /* 800F2D28 000EFC88 A0 C1 00 56 */ lhz r6, 0x56(r1) /* 800F2D2C 000EFC8C 38 61 01 34 */ addi r3, r1, 0x134 /* 800F2D30 000EFC90 80 01 00 58 */ lwz r0, 0x58(r1) /* 800F2D34 000EFC94 38 A1 00 B4 */ addi r5, r1, 0xb4 /* 800F2D38 000EFC98 C0 41 02 F0 */ lfs f2, 0x2f0(r1) /* 800F2D3C 000EFC9C C0 21 03 00 */ lfs f1, 0x300(r1) /* 800F2D40 000EFCA0 C0 01 03 10 */ lfs f0, 0x310(r1) /* 800F2D44 000EFCA4 99 01 00 9C */ stb r8, 0x9c(r1) /* 800F2D48 000EFCA8 82 FD 00 70 */ lwz r23, 0x70(r29) /* 800F2D4C 000EFCAC 98 E1 00 9D */ stb r7, 0x9d(r1) /* 800F2D50 000EFCB0 B0 C1 00 9E */ sth r6, 0x9e(r1) /* 800F2D54 000EFCB4 90 01 00 A0 */ stw r0, 0xa0(r1) /* 800F2D58 000EFCB8 D0 41 00 B4 */ stfs f2, 0xb4(r1) /* 800F2D5C 000EFCBC D0 21 00 B8 */ stfs f1, 0xb8(r1) /* 800F2D60 000EFCC0 D0 01 00 BC */ stfs f0, 0xbc(r1) /* 800F2D64 000EFCC4 48 22 05 15 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f /* 800F2D68 000EFCC8 7C 65 1B 78 */ mr r5, r3 /* 800F2D6C 000EFCCC 7E E3 BB 78 */ mr r3, r23 /* 800F2D70 000EFCD0 7F C4 F3 78 */ mr r4, r30 /* 800F2D74 000EFCD4 7F E6 FB 78 */ mr r6, r31 /* 800F2D78 000EFCD8 38 E1 00 9C */ addi r7, r1, 0x9c /* 800F2D7C 000EFCDC 48 02 20 41 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags lbl_800F2D80: /* 800F2D80 000EFCE0 7F A3 EB 78 */ mr r3, r29 /* 800F2D84 000EFCE4 7F C4 F3 78 */ mr r4, r30 /* 800F2D88 000EFCE8 4B FF EF C5 */ bl RenderIceBreakEffect__10CMorphBallCFRC13CStateManager /* 800F2D8C 000EFCEC E3 E1 03 D8 */ psq_l f31, 984(r1), 0, qr0 /* 800F2D90 000EFCF0 CB E1 03 D0 */ lfd f31, 0x3d0(r1) /* 800F2D94 000EFCF4 E3 C1 03 C8 */ psq_l f30, 968(r1), 0, qr0 /* 800F2D98 000EFCF8 CB C1 03 C0 */ lfd f30, 0x3c0(r1) /* 800F2D9C 000EFCFC E3 A1 03 B8 */ psq_l f29, 952(r1), 0, qr0 /* 800F2DA0 000EFD00 CB A1 03 B0 */ lfd f29, 0x3b0(r1) /* 800F2DA4 000EFD04 E3 81 03 A8 */ psq_l f28, 936(r1), 0, qr0 /* 800F2DA8 000EFD08 CB 81 03 A0 */ lfd f28, 0x3a0(r1) /* 800F2DAC 000EFD0C E3 61 03 98 */ psq_l f27, 920(r1), 0, qr0 /* 800F2DB0 000EFD10 CB 61 03 90 */ lfd f27, 0x390(r1) /* 800F2DB4 000EFD14 E3 41 03 88 */ psq_l f26, 904(r1), 0, qr0 /* 800F2DB8 000EFD18 CB 41 03 80 */ lfd f26, 0x380(r1) /* 800F2DBC 000EFD1C E3 21 03 78 */ psq_l f25, 888(r1), 0, qr0 /* 800F2DC0 000EFD20 CB 21 03 70 */ lfd f25, 0x370(r1) /* 800F2DC4 000EFD24 E3 01 03 68 */ psq_l f24, 872(r1), 0, qr0 /* 800F2DC8 000EFD28 CB 01 03 60 */ lfd f24, 0x360(r1) /* 800F2DCC 000EFD2C E2 E1 03 58 */ psq_l f23, 856(r1), 0, qr0 /* 800F2DD0 000EFD30 CA E1 03 50 */ lfd f23, 0x350(r1) /* 800F2DD4 000EFD34 BA E1 03 2C */ lmw r23, 0x32c(r1) /* 800F2DD8 000EFD38 80 01 03 E4 */ lwz r0, 0x3e4(r1) /* 800F2DDC 000EFD3C 7C 08 03 A6 */ mtlr r0 /* 800F2DE0 000EFD40 38 21 03 E0 */ addi r1, r1, 0x3e0 /* 800F2DE4 000EFD44 4E 80 00 20 */ blr .global "GetEntry__33TReservedAverage<11CQuaternion,5>CFi" "GetEntry__33TReservedAverage<11CQuaternion,5>CFi": /* 800F2DE8 000EFD48 80 04 00 00 */ lwz r0, 0(r4) /* 800F2DEC 000EFD4C 7C 05 00 00 */ cmpw r5, r0 /* 800F2DF0 000EFD50 41 80 00 10 */ blt lbl_800F2E00 /* 800F2DF4 000EFD54 38 00 00 00 */ li r0, 0 /* 800F2DF8 000EFD58 98 03 00 10 */ stb r0, 0x10(r3) /* 800F2DFC 000EFD5C 4E 80 00 20 */ blr lbl_800F2E00: /* 800F2E00 000EFD60 38 00 00 01 */ li r0, 1 /* 800F2E04 000EFD64 28 03 00 00 */ cmplwi r3, 0 /* 800F2E08 000EFD68 54 A5 20 36 */ slwi r5, r5, 4 /* 800F2E0C 000EFD6C 98 03 00 10 */ stb r0, 0x10(r3) /* 800F2E10 000EFD70 7C 84 2A 14 */ add r4, r4, r5 /* 800F2E14 000EFD74 4D 82 00 20 */ beqlr /* 800F2E18 000EFD78 C0 04 00 04 */ lfs f0, 4(r4) /* 800F2E1C 000EFD7C D0 03 00 00 */ stfs f0, 0(r3) /* 800F2E20 000EFD80 C0 04 00 08 */ lfs f0, 8(r4) /* 800F2E24 000EFD84 D0 03 00 04 */ stfs f0, 4(r3) /* 800F2E28 000EFD88 C0 04 00 0C */ lfs f0, 0xc(r4) /* 800F2E2C 000EFD8C D0 03 00 08 */ stfs f0, 8(r3) /* 800F2E30 000EFD90 C0 04 00 10 */ lfs f0, 0x10(r4) /* 800F2E34 000EFD94 D0 03 00 0C */ stfs f0, 0xc(r3) /* 800F2E38 000EFD98 4E 80 00 20 */ blr .global "GetEntry__30TReservedAverage<9CVector3f,5>CFi" "GetEntry__30TReservedAverage<9CVector3f,5>CFi": /* 800F2E3C 000EFD9C 80 04 00 00 */ lwz r0, 0(r4) /* 800F2E40 000EFDA0 7C 05 00 00 */ cmpw r5, r0 /* 800F2E44 000EFDA4 41 80 00 10 */ blt lbl_800F2E54 /* 800F2E48 000EFDA8 38 00 00 00 */ li r0, 0 /* 800F2E4C 000EFDAC 98 03 00 0C */ stb r0, 0xc(r3) /* 800F2E50 000EFDB0 4E 80 00 20 */ blr lbl_800F2E54: /* 800F2E54 000EFDB4 1C A5 00 0C */ mulli r5, r5, 0xc /* 800F2E58 000EFDB8 38 00 00 01 */ li r0, 1 /* 800F2E5C 000EFDBC 28 03 00 00 */ cmplwi r3, 0 /* 800F2E60 000EFDC0 98 03 00 0C */ stb r0, 0xc(r3) /* 800F2E64 000EFDC4 7C 84 2A 14 */ add r4, r4, r5 /* 800F2E68 000EFDC8 4D 82 00 20 */ beqlr /* 800F2E6C 000EFDCC C0 04 00 04 */ lfs f0, 4(r4) /* 800F2E70 000EFDD0 D0 03 00 00 */ stfs f0, 0(r3) /* 800F2E74 000EFDD4 C0 04 00 08 */ lfs f0, 8(r4) /* 800F2E78 000EFDD8 D0 03 00 04 */ stfs f0, 4(r3) /* 800F2E7C 000EFDDC C0 04 00 0C */ lfs f0, 0xc(r4) /* 800F2E80 000EFDE0 D0 03 00 08 */ stfs f0, 8(r3) /* 800F2E84 000EFDE4 4E 80 00 20 */ blr .global PreRender__10CMorphBallFR13CStateManagerRC14CFrustumPlanes PreRender__10CMorphBallFR13CStateManagerRC14CFrustumPlanes: /* 800F2E88 000EFDE8 94 21 FE B0 */ stwu r1, -0x150(r1) /* 800F2E8C 000EFDEC 7C 08 02 A6 */ mflr r0 /* 800F2E90 000EFDF0 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F2E94 000EFDF4 90 01 01 54 */ stw r0, 0x154(r1) /* 800F2E98 000EFDF8 BF 61 01 3C */ stmw r27, 0x13c(r1) /* 800F2E9C 000EFDFC 7C 7C 1B 78 */ mr r28, r3 /* 800F2EA0 000EFE00 7C 9D 23 78 */ mr r29, r4 /* 800F2EA4 000EFE04 C0 03 1C 34 */ lfs f0, 0x1c34(r3) /* 800F2EA8 000EFE08 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F2EAC 000EFE0C 41 82 03 6C */ beq lbl_800F3218 /* 800F2EB0 000EFE10 C0 3C 1E 44 */ lfs f1, 0x1e44(r28) /* 800F2EB4 000EFE14 C0 02 91 90 */ lfs f0, lbl_805AAEB0@sda21(r2) /* 800F2EB8 000EFE18 80 7C 00 00 */ lwz r3, 0(r28) /* 800F2EBC 000EFE1C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F2EC0 000EFE20 83 C3 00 90 */ lwz r30, 0x90(r3) /* 800F2EC4 000EFE24 7C 60 00 26 */ mfcr r3 /* 800F2EC8 000EFE28 88 1E 02 98 */ lbz r0, 0x298(r30) /* 800F2ECC 000EFE2C 50 60 2E F6 */ rlwimi r0, r3, 5, 0x1b, 0x1b /* 800F2ED0 000EFE30 C0 02 91 FC */ lfs f0, lbl_805AAF1C@sda21(r2) /* 800F2ED4 000EFE34 98 1E 02 98 */ stb r0, 0x298(r30) /* 800F2ED8 000EFE38 3C A0 80 3E */ lis r5, __vt__19CCollisionPrimitive@ha /* 800F2EDC 000EFE3C 3C 80 80 3F */ lis r4, __vt__17CCollidableSphere@ha /* 800F2EE0 000EFE40 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F2EE4 000EFE44 D0 1E 02 D0 */ stfs f0, 0x2d0(r30) /* 800F2EE8 000EFE48 38 04 CA F8 */ addi r0, r4, __vt__17CCollidableSphere@l /* 800F2EEC 000EFE4C 38 E0 00 01 */ li r7, 1 /* 800F2EF0 000EFE50 3B E3 66 A0 */ addi r31, r3, sZeroVector__9CVector3f@l /* 800F2EF4 000EFE54 88 DE 02 98 */ lbz r6, 0x298(r30) /* 800F2EF8 000EFE58 50 E6 3E 30 */ rlwimi r6, r7, 7, 0x18, 0x18 /* 800F2EFC 000EFE5C 38 A5 97 E4 */ addi r5, r5, __vt__19CCollisionPrimitive@l /* 800F2F00 000EFE60 7F 84 E3 78 */ mr r4, r28 /* 800F2F04 000EFE64 98 DE 02 98 */ stb r6, 0x298(r30) /* 800F2F08 000EFE68 38 61 01 08 */ addi r3, r1, 0x108 /* 800F2F0C 000EFE6C 90 A1 00 B8 */ stw r5, 0xb8(r1) /* 800F2F10 000EFE70 C0 5F 00 00 */ lfs f2, 0(r31) /* 800F2F14 000EFE74 80 BC 00 40 */ lwz r5, 0x40(r28) /* 800F2F18 000EFE78 80 DC 00 44 */ lwz r6, 0x44(r28) /* 800F2F1C 000EFE7C C0 3F 00 04 */ lfs f1, 4(r31) /* 800F2F20 000EFE80 90 C1 00 C4 */ stw r6, 0xc4(r1) /* 800F2F24 000EFE84 C0 1F 00 08 */ lfs f0, 8(r31) /* 800F2F28 000EFE88 90 A1 00 C0 */ stw r5, 0xc0(r1) /* 800F2F2C 000EFE8C 90 01 00 B8 */ stw r0, 0xb8(r1) /* 800F2F30 000EFE90 C0 7C 00 48 */ lfs f3, 0x48(r28) /* 800F2F34 000EFE94 D0 41 00 40 */ stfs f2, 0x40(r1) /* 800F2F38 000EFE98 D0 61 00 C8 */ stfs f3, 0xc8(r1) /* 800F2F3C 000EFE9C 80 C1 00 40 */ lwz r6, 0x40(r1) /* 800F2F40 000EFEA0 C0 5C 00 4C */ lfs f2, 0x4c(r28) /* 800F2F44 000EFEA4 D0 21 00 44 */ stfs f1, 0x44(r1) /* 800F2F48 000EFEA8 D0 41 00 CC */ stfs f2, 0xcc(r1) /* 800F2F4C 000EFEAC 80 A1 00 44 */ lwz r5, 0x44(r1) /* 800F2F50 000EFEB0 C0 3C 00 50 */ lfs f1, 0x50(r28) /* 800F2F54 000EFEB4 D0 01 00 48 */ stfs f0, 0x48(r1) /* 800F2F58 000EFEB8 D0 21 00 D0 */ stfs f1, 0xd0(r1) /* 800F2F5C 000EFEBC 80 01 00 48 */ lwz r0, 0x48(r1) /* 800F2F60 000EFEC0 C0 3C 00 54 */ lfs f1, 0x54(r28) /* 800F2F64 000EFEC4 FC 00 08 18 */ frsp f0, f1 /* 800F2F68 000EFEC8 D0 21 00 D4 */ stfs f1, 0xd4(r1) /* 800F2F6C 000EFECC D0 21 00 4C */ stfs f1, 0x4c(r1) /* 800F2F70 000EFED0 90 C1 00 C8 */ stw r6, 0xc8(r1) /* 800F2F74 000EFED4 90 A1 00 CC */ stw r5, 0xcc(r1) /* 800F2F78 000EFED8 90 01 00 D0 */ stw r0, 0xd0(r1) /* 800F2F7C 000EFEDC D0 01 00 D4 */ stfs f0, 0xd4(r1) /* 800F2F80 000EFEE0 48 00 37 75 */ bl GetBallToWorld__10CMorphBallCFv /* 800F2F84 000EFEE4 38 61 00 68 */ addi r3, r1, 0x68 /* 800F2F88 000EFEE8 38 81 00 B8 */ addi r4, r1, 0xb8 /* 800F2F8C 000EFEEC 38 A1 01 08 */ addi r5, r1, 0x108 /* 800F2F90 000EFEF0 48 1E 14 A5 */ bl CalculateAABox__17CCollidableSphereCFRC12CTransform4f /* 800F2F94 000EFEF4 C0 A1 00 68 */ lfs f5, 0x68(r1) /* 800F2F98 000EFEF8 C0 81 00 6C */ lfs f4, 0x6c(r1) /* 800F2F9C 000EFEFC C0 61 00 70 */ lfs f3, 0x70(r1) /* 800F2FA0 000EFF00 C0 41 00 74 */ lfs f2, 0x74(r1) /* 800F2FA4 000EFF04 C0 21 00 78 */ lfs f1, 0x78(r1) /* 800F2FA8 000EFF08 C0 01 00 7C */ lfs f0, 0x7c(r1) /* 800F2FAC 000EFF0C D0 A1 00 A0 */ stfs f5, 0xa0(r1) /* 800F2FB0 000EFF10 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 800F2FB4 000EFF14 D0 81 00 A4 */ stfs f4, 0xa4(r1) /* 800F2FB8 000EFF18 D0 61 00 A8 */ stfs f3, 0xa8(r1) /* 800F2FBC 000EFF1C D0 41 00 AC */ stfs f2, 0xac(r1) /* 800F2FC0 000EFF20 D0 21 00 B0 */ stfs f1, 0xb0(r1) /* 800F2FC4 000EFF24 D0 01 00 B4 */ stfs f0, 0xb4(r1) /* 800F2FC8 000EFF28 80 7C 00 00 */ lwz r3, 0(r28) /* 800F2FCC 000EFF2C 80 C3 00 04 */ lwz r6, 4(r3) /* 800F2FD0 000EFF30 7C 06 00 00 */ cmpw r6, r0 /* 800F2FD4 000EFF34 41 82 00 4C */ beq lbl_800F3020 /* 800F2FD8 000EFF38 80 7D 08 50 */ lwz r3, 0x850(r29) /* 800F2FDC 000EFF3C 54 C4 18 38 */ slwi r4, r6, 3 /* 800F2FE0 000EFF40 90 C1 00 28 */ stw r6, 0x28(r1) /* 800F2FE4 000EFF44 80 A3 00 20 */ lwz r5, 0x20(r3) /* 800F2FE8 000EFF48 90 C1 00 2C */ stw r6, 0x2c(r1) /* 800F2FEC 000EFF4C 7C 65 22 14 */ add r3, r5, r4 /* 800F2FF0 000EFF50 80 63 00 04 */ lwz r3, 4(r3) /* 800F2FF4 000EFF54 88 03 00 F0 */ lbz r0, 0xf0(r3) /* 800F2FF8 000EFF58 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800F2FFC 000EFF5C 41 82 00 24 */ beq lbl_800F3020 /* 800F3000 000EFF60 38 04 00 04 */ addi r0, r4, 4 /* 800F3004 000EFF64 90 C1 00 20 */ stw r6, 0x20(r1) /* 800F3008 000EFF68 7C A5 00 2E */ lwzx r5, r5, r0 /* 800F300C 000EFF6C 7F C3 F3 78 */ mr r3, r30 /* 800F3010 000EFF70 90 C1 00 24 */ stw r6, 0x24(r1) /* 800F3014 000EFF74 7F A4 EB 78 */ mr r4, r29 /* 800F3018 000EFF78 38 C1 00 A0 */ addi r6, r1, 0xa0 /* 800F301C 000EFF7C 48 01 0D A5 */ bl BuildAreaLightList__12CActorLightsFRC13CStateManagerRC9CGameAreaRC6CAABox lbl_800F3020: /* 800F3020 000EFF80 7F C3 F3 78 */ mr r3, r30 /* 800F3024 000EFF84 7F A4 EB 78 */ mr r4, r29 /* 800F3028 000EFF88 38 A1 00 A0 */ addi r5, r1, 0xa0 /* 800F302C 000EFF8C 48 01 06 E5 */ bl BuildDynamicLightList__12CActorLightsFRC13CStateManagerRC6CAABox /* 800F3030 000EFF90 81 1C 00 00 */ lwz r8, 0(r28) /* 800F3034 000EFF94 80 02 94 00 */ lwz r0, lbl_805AB120@sda21(r2) /* 800F3038 000EFF98 80 E8 00 90 */ lwz r7, 0x90(r8) /* 800F303C 000EFF9C 80 67 02 9C */ lwz r3, 0x29c(r7) /* 800F3040 000EFFA0 7C 03 00 40 */ cmplw r3, r0 /* 800F3044 000EFFA4 41 82 00 F8 */ beq lbl_800F313C /* 800F3048 000EFFA8 3C 60 80 3E */ lis r3, __vt__19CCollisionPrimitive@ha /* 800F304C 000EFFAC C0 3F 00 04 */ lfs f1, 4(r31) /* 800F3050 000EFFB0 38 03 97 E4 */ addi r0, r3, __vt__19CCollisionPrimitive@l /* 800F3054 000EFFB4 C0 1F 00 08 */ lfs f0, 8(r31) /* 800F3058 000EFFB8 90 01 00 80 */ stw r0, 0x80(r1) /* 800F305C 000EFFBC 3C 80 80 3F */ lis r4, __vt__17CCollidableSphere@ha /* 800F3060 000EFFC0 38 04 CA F8 */ addi r0, r4, __vt__17CCollidableSphere@l /* 800F3064 000EFFC4 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F3068 000EFFC8 80 BC 00 40 */ lwz r5, 0x40(r28) /* 800F306C 000EFFCC 7F 84 E3 78 */ mr r4, r28 /* 800F3070 000EFFD0 80 DC 00 44 */ lwz r6, 0x44(r28) /* 800F3074 000EFFD4 C0 43 66 A0 */ lfs f2, sZeroVector__9CVector3f@l(r3) /* 800F3078 000EFFD8 38 61 00 D8 */ addi r3, r1, 0xd8 /* 800F307C 000EFFDC 90 C1 00 8C */ stw r6, 0x8c(r1) /* 800F3080 000EFFE0 90 A1 00 88 */ stw r5, 0x88(r1) /* 800F3084 000EFFE4 90 01 00 80 */ stw r0, 0x80(r1) /* 800F3088 000EFFE8 C0 7C 00 48 */ lfs f3, 0x48(r28) /* 800F308C 000EFFEC D0 41 00 30 */ stfs f2, 0x30(r1) /* 800F3090 000EFFF0 D0 61 00 90 */ stfs f3, 0x90(r1) /* 800F3094 000EFFF4 80 C1 00 30 */ lwz r6, 0x30(r1) /* 800F3098 000EFFF8 C0 5C 00 4C */ lfs f2, 0x4c(r28) /* 800F309C 000EFFFC D0 21 00 34 */ stfs f1, 0x34(r1) /* 800F30A0 000F0000 D0 41 00 94 */ stfs f2, 0x94(r1) /* 800F30A4 000F0004 80 A1 00 34 */ lwz r5, 0x34(r1) /* 800F30A8 000F0008 C0 3C 00 50 */ lfs f1, 0x50(r28) /* 800F30AC 000F000C D0 01 00 38 */ stfs f0, 0x38(r1) /* 800F30B0 000F0010 D0 21 00 98 */ stfs f1, 0x98(r1) /* 800F30B4 000F0014 80 01 00 38 */ lwz r0, 0x38(r1) /* 800F30B8 000F0018 C0 3C 00 54 */ lfs f1, 0x54(r28) /* 800F30BC 000F001C FC 00 08 18 */ frsp f0, f1 /* 800F30C0 000F0020 D0 21 00 9C */ stfs f1, 0x9c(r1) /* 800F30C4 000F0024 90 C1 00 90 */ stw r6, 0x90(r1) /* 800F30C8 000F0028 90 A1 00 94 */ stw r5, 0x94(r1) /* 800F30CC 000F002C 90 01 00 98 */ stw r0, 0x98(r1) /* 800F30D0 000F0030 D0 01 00 9C */ stfs f0, 0x9c(r1) /* 800F30D4 000F0034 80 08 00 04 */ lwz r0, 4(r8) /* 800F30D8 000F0038 83 E7 02 A0 */ lwz r31, 0x2a0(r7) /* 800F30DC 000F003C D0 21 00 3C */ stfs f1, 0x3c(r1) /* 800F30E0 000F0040 90 01 00 1C */ stw r0, 0x1c(r1) /* 800F30E4 000F0044 90 01 00 18 */ stw r0, 0x18(r1) /* 800F30E8 000F0048 83 7C 1C 14 */ lwz r27, 0x1c14(r28) /* 800F30EC 000F004C 48 00 36 09 */ bl GetBallToWorld__10CMorphBallCFv /* 800F30F0 000F0050 38 61 00 50 */ addi r3, r1, 0x50 /* 800F30F4 000F0054 38 81 00 80 */ addi r4, r1, 0x80 /* 800F30F8 000F0058 38 A1 00 D8 */ addi r5, r1, 0xd8 /* 800F30FC 000F005C 48 1E 13 39 */ bl CalculateAABox__17CCollidableSphereCFRC12CTransform4f /* 800F3100 000F0060 7F 63 DB 78 */ mr r3, r27 /* 800F3104 000F0064 7F A4 EB 78 */ mr r4, r29 /* 800F3108 000F0068 7F E6 FB 78 */ mr r6, r31 /* 800F310C 000F006C 38 A1 00 1C */ addi r5, r1, 0x1c /* 800F3110 000F0070 38 E1 00 50 */ addi r7, r1, 0x50 /* 800F3114 000F0074 39 00 00 00 */ li r8, 0 /* 800F3118 000F0078 39 20 00 00 */ li r9, 0 /* 800F311C 000F007C 48 01 E0 B5 */ bl BuildLightShadowTexture__12CWorldShadowFRC13CStateManager7TAreaIdUiRC6CAABoxbb /* 800F3120 000F0080 3C 80 80 3F */ lis r4, __vt__17CCollidableSphere@ha /* 800F3124 000F0084 3C 60 80 3E */ lis r3, __vt__19CCollisionPrimitive@ha /* 800F3128 000F0088 38 04 CA F8 */ addi r0, r4, __vt__17CCollidableSphere@l /* 800F312C 000F008C 90 01 00 80 */ stw r0, 0x80(r1) /* 800F3130 000F0090 38 03 97 E4 */ addi r0, r3, __vt__19CCollisionPrimitive@l /* 800F3134 000F0094 90 01 00 80 */ stw r0, 0x80(r1) /* 800F3138 000F0098 48 00 00 0C */ b lbl_800F3144 lbl_800F313C: /* 800F313C 000F009C 80 7C 1C 14 */ lwz r3, 0x1c14(r28) /* 800F3140 000F00A0 48 01 DE 4D */ bl ResetBlur__12CWorldShadowFv lbl_800F3144: /* 800F3144 000F00A4 C0 3E 02 88 */ lfs f1, 0x288(r30) /* 800F3148 000F00A8 38 61 00 10 */ addi r3, r1, 0x10 /* 800F314C 000F00AC C0 5E 02 8C */ lfs f2, 0x28c(r30) /* 800F3150 000F00B0 C0 7E 02 90 */ lfs f3, 0x290(r30) /* 800F3154 000F00B4 C0 82 91 5C */ lfs f4, lbl_805AAE7C@sda21(r2) /* 800F3158 000F00B8 48 27 02 95 */ bl __ct__6CColorFffff /* 800F315C 000F00BC 48 25 6E 51 */ bl White__6CColorFv /* 800F3160 000F00C0 C0 3C 1C 34 */ lfs f1, 0x1c34(r28) /* 800F3164 000F00C4 7C 65 1B 78 */ mr r5, r3 /* 800F3168 000F00C8 38 61 00 14 */ addi r3, r1, 0x14 /* 800F316C 000F00CC 38 81 00 10 */ addi r4, r1, 0x10 /* 800F3170 000F00D0 48 27 01 3D */ bl Lerp__6CColorFRC6CColorRC6CColorf /* 800F3174 000F00D4 7F C3 F3 78 */ mr r3, r30 /* 800F3178 000F00D8 38 81 00 14 */ addi r4, r1, 0x14 /* 800F317C 000F00DC 48 01 1E BD */ bl SetAmbientColor__12CActorLightsFRC6CColor /* 800F3180 000F00E0 80 7C 1C 18 */ lwz r3, 0x1c18(r28) /* 800F3184 000F00E4 7F C4 F3 78 */ mr r4, r30 /* 800F3188 000F00E8 48 00 00 A5 */ bl sub_800f322c /* 800F318C 000F00EC C0 3C 1C 38 */ lfs f1, 0x1c38(r28) /* 800F3190 000F00F0 C0 1C 1C 34 */ lfs f0, 0x1c34(r28) /* 800F3194 000F00F4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3198 000F00F8 40 80 00 0C */ bge lbl_800F31A4 /* 800F319C 000F00FC 3B 7C 1C 34 */ addi r27, r28, 0x1c34 /* 800F31A0 000F0100 48 00 00 08 */ b lbl_800F31A8 lbl_800F31A4: /* 800F31A4 000F0104 3B 7C 1C 38 */ addi r27, r28, 0x1c38 lbl_800F31A8: /* 800F31A8 000F0108 C0 3E 02 88 */ lfs f1, 0x288(r30) /* 800F31AC 000F010C 38 61 00 08 */ addi r3, r1, 8 /* 800F31B0 000F0110 C0 5E 02 8C */ lfs f2, 0x28c(r30) /* 800F31B4 000F0114 C0 7E 02 90 */ lfs f3, 0x290(r30) /* 800F31B8 000F0118 C0 82 91 5C */ lfs f4, lbl_805AAE7C@sda21(r2) /* 800F31BC 000F011C 48 27 02 31 */ bl __ct__6CColorFffff /* 800F31C0 000F0120 83 BC 1C 18 */ lwz r29, 0x1c18(r28) /* 800F31C4 000F0124 48 25 6D E9 */ bl White__6CColorFv /* 800F31C8 000F0128 C0 3B 00 00 */ lfs f1, 0(r27) /* 800F31CC 000F012C 7C 65 1B 78 */ mr r5, r3 /* 800F31D0 000F0130 38 61 00 0C */ addi r3, r1, 0xc /* 800F31D4 000F0134 38 81 00 08 */ addi r4, r1, 8 /* 800F31D8 000F0138 48 27 00 D5 */ bl Lerp__6CColorFRC6CColorRC6CColorf /* 800F31DC 000F013C 7F A3 EB 78 */ mr r3, r29 /* 800F31E0 000F0140 38 81 00 0C */ addi r4, r1, 0xc /* 800F31E4 000F0144 48 01 1E 55 */ bl SetAmbientColor__12CActorLightsFRC6CColor /* 800F31E8 000F0148 80 7C 00 58 */ lwz r3, 0x58(r28) /* 800F31EC 000F014C 80 03 00 10 */ lwz r0, 0x10(r3) /* 800F31F0 000F0150 28 00 00 00 */ cmplwi r0, 0 /* 800F31F4 000F0154 41 82 00 0C */ beq lbl_800F3200 /* 800F31F8 000F0158 80 63 00 10 */ lwz r3, 0x10(r3) /* 800F31FC 000F015C 4B F3 98 09 */ bl PreRender__9CAnimDataFv lbl_800F3200: /* 800F3200 000F0160 3C 80 80 3F */ lis r4, __vt__17CCollidableSphere@ha /* 800F3204 000F0164 3C 60 80 3E */ lis r3, __vt__19CCollisionPrimitive@ha /* 800F3208 000F0168 38 04 CA F8 */ addi r0, r4, __vt__17CCollidableSphere@l /* 800F320C 000F016C 90 01 00 B8 */ stw r0, 0xb8(r1) /* 800F3210 000F0170 38 03 97 E4 */ addi r0, r3, __vt__19CCollisionPrimitive@l /* 800F3214 000F0174 90 01 00 B8 */ stw r0, 0xb8(r1) lbl_800F3218: /* 800F3218 000F0178 BB 61 01 3C */ lmw r27, 0x13c(r1) /* 800F321C 000F017C 80 01 01 54 */ lwz r0, 0x154(r1) /* 800F3220 000F0180 7C 08 03 A6 */ mtlr r0 /* 800F3224 000F0184 38 21 01 50 */ addi r1, r1, 0x150 /* 800F3228 000F0188 4E 80 00 20 */ blr .global sub_800f322c sub_800f322c: /* 800F322C 000F018C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F3230 000F0190 7C 08 02 A6 */ mflr r0 /* 800F3234 000F0194 90 01 00 14 */ stw r0, 0x14(r1) /* 800F3238 000F0198 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F323C 000F019C 7C 9F 23 78 */ mr r31, r4 /* 800F3240 000F01A0 93 C1 00 08 */ stw r30, 8(r1) /* 800F3244 000F01A4 7C 7E 1B 78 */ mr r30, r3 /* 800F3248 000F01A8 48 00 00 ED */ bl sub_800f3334 /* 800F324C 000F01AC 38 7E 01 44 */ addi r3, r30, 0x144 /* 800F3250 000F01B0 38 9F 01 44 */ addi r4, r31, 0x144 /* 800F3254 000F01B4 48 00 00 E1 */ bl sub_800f3334 /* 800F3258 000F01B8 80 9F 02 88 */ lwz r4, 0x288(r31) /* 800F325C 000F01BC 7F C3 F3 78 */ mr r3, r30 /* 800F3260 000F01C0 80 1F 02 8C */ lwz r0, 0x28c(r31) /* 800F3264 000F01C4 90 9E 02 88 */ stw r4, 0x288(r30) /* 800F3268 000F01C8 90 1E 02 8C */ stw r0, 0x28c(r30) /* 800F326C 000F01CC 80 1F 02 90 */ lwz r0, 0x290(r31) /* 800F3270 000F01D0 90 1E 02 90 */ stw r0, 0x290(r30) /* 800F3274 000F01D4 80 1F 02 94 */ lwz r0, 0x294(r31) /* 800F3278 000F01D8 90 1E 02 94 */ stw r0, 0x294(r30) /* 800F327C 000F01DC 88 1F 02 98 */ lbz r0, 0x298(r31) /* 800F3280 000F01E0 98 1E 02 98 */ stb r0, 0x298(r30) /* 800F3284 000F01E4 88 1F 02 99 */ lbz r0, 0x299(r31) /* 800F3288 000F01E8 98 1E 02 99 */ stb r0, 0x299(r30) /* 800F328C 000F01EC 88 1F 02 9A */ lbz r0, 0x29a(r31) /* 800F3290 000F01F0 98 1E 02 9A */ stb r0, 0x29a(r30) /* 800F3294 000F01F4 80 1F 02 9C */ lwz r0, 0x29c(r31) /* 800F3298 000F01F8 90 1E 02 9C */ stw r0, 0x29c(r30) /* 800F329C 000F01FC 80 1F 02 A0 */ lwz r0, 0x2a0(r31) /* 800F32A0 000F0200 90 1E 02 A0 */ stw r0, 0x2a0(r30) /* 800F32A4 000F0204 80 1F 02 A4 */ lwz r0, 0x2a4(r31) /* 800F32A8 000F0208 90 1E 02 A4 */ stw r0, 0x2a4(r30) /* 800F32AC 000F020C 80 1F 02 A8 */ lwz r0, 0x2a8(r31) /* 800F32B0 000F0210 90 1E 02 A8 */ stw r0, 0x2a8(r30) /* 800F32B4 000F0214 80 9F 02 AC */ lwz r4, 0x2ac(r31) /* 800F32B8 000F0218 80 1F 02 B0 */ lwz r0, 0x2b0(r31) /* 800F32BC 000F021C 90 9E 02 AC */ stw r4, 0x2ac(r30) /* 800F32C0 000F0220 90 1E 02 B0 */ stw r0, 0x2b0(r30) /* 800F32C4 000F0224 80 1F 02 B4 */ lwz r0, 0x2b4(r31) /* 800F32C8 000F0228 90 1E 02 B4 */ stw r0, 0x2b4(r30) /* 800F32CC 000F022C 80 1F 02 B8 */ lwz r0, 0x2b8(r31) /* 800F32D0 000F0230 90 1E 02 B8 */ stw r0, 0x2b8(r30) /* 800F32D4 000F0234 80 1F 02 BC */ lwz r0, 0x2bc(r31) /* 800F32D8 000F0238 90 1E 02 BC */ stw r0, 0x2bc(r30) /* 800F32DC 000F023C 80 9F 02 C0 */ lwz r4, 0x2c0(r31) /* 800F32E0 000F0240 80 1F 02 C4 */ lwz r0, 0x2c4(r31) /* 800F32E4 000F0244 90 9E 02 C0 */ stw r4, 0x2c0(r30) /* 800F32E8 000F0248 90 1E 02 C4 */ stw r0, 0x2c4(r30) /* 800F32EC 000F024C 80 1F 02 C8 */ lwz r0, 0x2c8(r31) /* 800F32F0 000F0250 90 1E 02 C8 */ stw r0, 0x2c8(r30) /* 800F32F4 000F0254 C0 1F 02 CC */ lfs f0, 0x2cc(r31) /* 800F32F8 000F0258 D0 1E 02 CC */ stfs f0, 0x2cc(r30) /* 800F32FC 000F025C C0 1F 02 D0 */ lfs f0, 0x2d0(r31) /* 800F3300 000F0260 D0 1E 02 D0 */ stfs f0, 0x2d0(r30) /* 800F3304 000F0264 C0 1F 02 D4 */ lfs f0, 0x2d4(r31) /* 800F3308 000F0268 D0 1E 02 D4 */ stfs f0, 0x2d4(r30) /* 800F330C 000F026C 80 1F 02 D8 */ lwz r0, 0x2d8(r31) /* 800F3310 000F0270 90 1E 02 D8 */ stw r0, 0x2d8(r30) /* 800F3314 000F0274 80 1F 02 DC */ lwz r0, 0x2dc(r31) /* 800F3318 000F0278 90 1E 02 DC */ stw r0, 0x2dc(r30) /* 800F331C 000F027C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F3320 000F0280 83 C1 00 08 */ lwz r30, 8(r1) /* 800F3324 000F0284 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F3328 000F0288 7C 08 03 A6 */ mtlr r0 /* 800F332C 000F028C 38 21 00 10 */ addi r1, r1, 0x10 /* 800F3330 000F0290 4E 80 00 20 */ blr .global sub_800f3334 sub_800f3334: /* 800F3334 000F0294 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F3338 000F0298 7C 08 02 A6 */ mflr r0 /* 800F333C 000F029C 90 01 00 14 */ stw r0, 0x14(r1) /* 800F3340 000F02A0 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F3344 000F02A4 7C 9F 23 78 */ mr r31, r4 /* 800F3348 000F02A8 93 C1 00 08 */ stw r30, 8(r1) /* 800F334C 000F02AC 7C 7E 1B 78 */ mr r30, r3 /* 800F3350 000F02B0 7C 1E F8 40 */ cmplw r30, r31 /* 800F3354 000F02B4 40 82 00 08 */ bne lbl_800F335C /* 800F3358 000F02B8 48 00 00 80 */ b lbl_800F33D8 lbl_800F335C: /* 800F335C 000F02BC 80 BE 00 00 */ lwz r5, 0(r30) /* 800F3360 000F02C0 38 60 00 00 */ li r3, 0 /* 800F3364 000F02C4 2C 05 00 00 */ cmpwi r5, 0 /* 800F3368 000F02C8 40 81 00 40 */ ble lbl_800F33A8 /* 800F336C 000F02CC 2C 05 00 08 */ cmpwi r5, 8 /* 800F3370 000F02D0 38 85 FF F8 */ addi r4, r5, -8 /* 800F3374 000F02D4 40 81 00 20 */ ble lbl_800F3394 /* 800F3378 000F02D8 38 04 00 07 */ addi r0, r4, 7 /* 800F337C 000F02DC 54 00 E8 FE */ srwi r0, r0, 3 /* 800F3380 000F02E0 7C 09 03 A6 */ mtctr r0 /* 800F3384 000F02E4 2C 04 00 00 */ cmpwi r4, 0 /* 800F3388 000F02E8 40 81 00 0C */ ble lbl_800F3394 lbl_800F338C: /* 800F338C 000F02EC 38 63 00 08 */ addi r3, r3, 8 /* 800F3390 000F02F0 42 00 FF FC */ bdnz lbl_800F338C lbl_800F3394: /* 800F3394 000F02F4 7C 03 28 50 */ subf r0, r3, r5 /* 800F3398 000F02F8 7C 09 03 A6 */ mtctr r0 /* 800F339C 000F02FC 7C 03 28 00 */ cmpw r3, r5 /* 800F33A0 000F0300 40 80 00 08 */ bge lbl_800F33A8 lbl_800F33A4: /* 800F33A4 000F0304 42 00 00 00 */ bdnz lbl_800F33A4 lbl_800F33A8: /* 800F33A8 000F0308 38 00 00 00 */ li r0, 0 /* 800F33AC 000F030C 38 7F 00 04 */ addi r3, r31, 4 /* 800F33B0 000F0310 90 1E 00 00 */ stw r0, 0(r30) /* 800F33B4 000F0314 38 BE 00 04 */ addi r5, r30, 4 /* 800F33B8 000F0318 80 1F 00 00 */ lwz r0, 0(r31) /* 800F33BC 000F031C 1C 00 00 50 */ mulli r0, r0, 0x50 /* 800F33C0 000F0320 7C 9F 02 14 */ add r4, r31, r0 /* 800F33C4 000F0324 38 84 00 04 */ addi r4, r4, 4 /* 800F33C8 000F0328 48 00 00 29 */ bl sub_800f33f0 /* 800F33CC 000F032C 80 1F 00 00 */ lwz r0, 0(r31) /* 800F33D0 000F0330 7F C3 F3 78 */ mr r3, r30 /* 800F33D4 000F0334 90 1E 00 00 */ stw r0, 0(r30) lbl_800F33D8: /* 800F33D8 000F0338 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F33DC 000F033C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F33E0 000F0340 83 C1 00 08 */ lwz r30, 8(r1) /* 800F33E4 000F0344 7C 08 03 A6 */ mtlr r0 /* 800F33E8 000F0348 38 21 00 10 */ addi r1, r1, 0x10 /* 800F33EC 000F034C 4E 80 00 20 */ blr .global sub_800f33f0 sub_800f33f0: /* 800F33F0 000F0350 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F33F4 000F0354 7C 08 02 A6 */ mflr r0 /* 800F33F8 000F0358 90 01 00 24 */ stw r0, 0x24(r1) /* 800F33FC 000F035C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800F3400 000F0360 7C BF 2B 78 */ mr r31, r5 /* 800F3404 000F0364 93 C1 00 18 */ stw r30, 0x18(r1) /* 800F3408 000F0368 7C 7E 1B 78 */ mr r30, r3 /* 800F340C 000F036C 93 A1 00 14 */ stw r29, 0x14(r1) /* 800F3410 000F0370 7C 9D 23 78 */ mr r29, r4 /* 800F3414 000F0374 48 00 00 18 */ b lbl_800F342C lbl_800F3418: /* 800F3418 000F0378 7F E3 FB 78 */ mr r3, r31 /* 800F341C 000F037C 7F C4 F3 78 */ mr r4, r30 /* 800F3420 000F0380 48 00 00 35 */ bl sub_800f3454 /* 800F3424 000F0384 3B FF 00 50 */ addi r31, r31, 0x50 /* 800F3428 000F0388 3B DE 00 50 */ addi r30, r30, 0x50 lbl_800F342C: /* 800F342C 000F038C 7C 1E E8 40 */ cmplw r30, r29 /* 800F3430 000F0390 40 82 FF E8 */ bne lbl_800F3418 /* 800F3434 000F0394 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F3438 000F0398 7F E3 FB 78 */ mr r3, r31 /* 800F343C 000F039C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800F3440 000F03A0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800F3444 000F03A4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800F3448 000F03A8 7C 08 03 A6 */ mtlr r0 /* 800F344C 000F03AC 38 21 00 20 */ addi r1, r1, 0x20 /* 800F3450 000F03B0 4E 80 00 20 */ blr .global sub_800f3454 sub_800f3454: /* 800F3454 000F03B4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F3458 000F03B8 7C 08 02 A6 */ mflr r0 /* 800F345C 000F03BC 28 03 00 00 */ cmplwi r3, 0 /* 800F3460 000F03C0 90 01 00 14 */ stw r0, 0x14(r1) /* 800F3464 000F03C4 41 82 00 08 */ beq lbl_800F346C /* 800F3468 000F03C8 4B F4 81 09 */ bl __ct__6CLightFCR6CLight lbl_800F346C: /* 800F346C 000F03CC 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F3470 000F03D0 7C 08 03 A6 */ mtlr r0 /* 800F3474 000F03D4 38 21 00 10 */ addi r1, r1, 0x10 /* 800F3478 000F03D8 4E 80 00 20 */ blr .global GetMinimumAlignmentSpeed__10CMorphBallCFv GetMinimumAlignmentSpeed__10CMorphBallCFv: /* 800F347C 000F03DC 80 03 18 7C */ lwz r0, 0x187c(r3) /* 800F3480 000F03E0 2C 00 00 01 */ cmpwi r0, 1 /* 800F3484 000F03E4 40 82 00 0C */ bne lbl_800F3490 /* 800F3488 000F03E8 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F348C 000F03EC 4E 80 00 20 */ blr lbl_800F3490: /* 800F3490 000F03F0 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F3494 000F03F4 C0 23 01 DC */ lfs f1, 0x1dc(r3) /* 800F3498 000F03F8 4E 80 00 20 */ blr .global DampLinearAndAngularVelocities__10CMorphBallFff DampLinearAndAngularVelocities__10CMorphBallFff: /* 800F349C 000F03FC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800F34A0 000F0400 7C 08 02 A6 */ mflr r0 /* 800F34A4 000F0404 90 01 00 44 */ stw r0, 0x44(r1) /* 800F34A8 000F0408 DB E1 00 30 */ stfd f31, 0x30(r1) /* 800F34AC 000F040C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 800F34B0 000F0410 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800F34B4 000F0414 7C 7F 1B 78 */ mr r31, r3 /* 800F34B8 000F0418 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F34BC 000F041C 80 63 00 00 */ lwz r3, 0(r3) /* 800F34C0 000F0420 FF E0 10 90 */ fmr f31, f2 /* 800F34C4 000F0424 EC 80 08 28 */ fsubs f4, f0, f1 /* 800F34C8 000F0428 38 81 00 18 */ addi r4, r1, 0x18 /* 800F34CC 000F042C C0 03 01 38 */ lfs f0, 0x138(r3) /* 800F34D0 000F0430 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800F34D4 000F0434 EC 40 01 32 */ fmuls f2, f0, f4 /* 800F34D8 000F0438 C0 03 01 3C */ lfs f0, 0x13c(r3) /* 800F34DC 000F043C D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800F34E0 000F0440 EC 20 01 32 */ fmuls f1, f0, f4 /* 800F34E4 000F0444 C0 63 01 40 */ lfs f3, 0x140(r3) /* 800F34E8 000F0448 EC 03 01 32 */ fmuls f0, f3, f4 /* 800F34EC 000F044C D0 61 00 20 */ stfs f3, 0x20(r1) /* 800F34F0 000F0450 D0 41 00 18 */ stfs f2, 0x18(r1) /* 800F34F4 000F0454 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800F34F8 000F0458 D0 01 00 20 */ stfs f0, 0x20(r1) /* 800F34FC 000F045C 48 02 77 A5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f /* 800F3500 000F0460 80 BF 00 00 */ lwz r5, 0(r31) /* 800F3504 000F0464 38 61 00 0C */ addi r3, r1, 0xc /* 800F3508 000F0468 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F350C 000F046C 38 81 00 08 */ addi r4, r1, 8 /* 800F3510 000F0470 C0 25 01 44 */ lfs f1, 0x144(r5) /* 800F3514 000F0474 EC 00 F8 28 */ fsubs f0, f0, f31 /* 800F3518 000F0478 D0 21 00 0C */ stfs f1, 0xc(r1) /* 800F351C 000F047C C0 25 01 48 */ lfs f1, 0x148(r5) /* 800F3520 000F0480 D0 21 00 10 */ stfs f1, 0x10(r1) /* 800F3524 000F0484 C0 25 01 4C */ lfs f1, 0x14c(r5) /* 800F3528 000F0488 D0 21 00 14 */ stfs f1, 0x14(r1) /* 800F352C 000F048C D0 01 00 08 */ stfs f0, 8(r1) /* 800F3530 000F0490 4B F2 7F B5 */ bl __amu__10CAxisAngleFRCf /* 800F3534 000F0494 80 7F 00 00 */ lwz r3, 0(r31) /* 800F3538 000F0498 38 81 00 0C */ addi r4, r1, 0xc /* 800F353C 000F049C 48 02 76 C1 */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle /* 800F3540 000F04A0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 800F3544 000F04A4 80 01 00 44 */ lwz r0, 0x44(r1) /* 800F3548 000F04A8 CB E1 00 30 */ lfd f31, 0x30(r1) /* 800F354C 000F04AC 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800F3550 000F04B0 7C 08 03 A6 */ mtlr r0 /* 800F3554 000F04B4 38 21 00 40 */ addi r1, r1, 0x40 /* 800F3558 000F04B8 4E 80 00 20 */ blr .global ApplyFriction__10CMorphBallFf ApplyFriction__10CMorphBallFf: /* 800F355C 000F04BC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800F3560 000F04C0 7C 08 02 A6 */ mflr r0 /* 800F3564 000F04C4 90 01 00 44 */ stw r0, 0x44(r1) /* 800F3568 000F04C8 DB E1 00 30 */ stfd f31, 0x30(r1) /* 800F356C 000F04CC F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 800F3570 000F04D0 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800F3574 000F04D4 7C 7F 1B 78 */ mr r31, r3 /* 800F3578 000F04D8 FF E0 08 90 */ fmr f31, f1 /* 800F357C 000F04DC 80 83 00 00 */ lwz r4, 0(r3) /* 800F3580 000F04E0 38 61 00 14 */ addi r3, r1, 0x14 /* 800F3584 000F04E4 C0 04 01 38 */ lfs f0, 0x138(r4) /* 800F3588 000F04E8 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800F358C 000F04EC C0 04 01 3C */ lfs f0, 0x13c(r4) /* 800F3590 000F04F0 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800F3594 000F04F4 C0 04 01 40 */ lfs f0, 0x140(r4) /* 800F3598 000F04F8 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800F359C 000F04FC 48 22 13 1D */ bl Magnitude__9CVector3fCFv /* 800F35A0 000F0500 FC 1F 08 40 */ fcmpo cr0, f31, f1 /* 800F35A4 000F0504 40 80 00 44 */ bge lbl_800F35E8 /* 800F35A8 000F0508 38 61 00 14 */ addi r3, r1, 0x14 /* 800F35AC 000F050C 48 22 13 0D */ bl Magnitude__9CVector3fCFv /* 800F35B0 000F0510 EF E1 F8 28 */ fsubs f31, f1, f31 /* 800F35B4 000F0514 38 61 00 08 */ addi r3, r1, 8 /* 800F35B8 000F0518 38 81 00 14 */ addi r4, r1, 0x14 /* 800F35BC 000F051C 48 22 12 95 */ bl AsNormalized__9CVector3fCFv /* 800F35C0 000F0520 C0 41 00 10 */ lfs f2, 0x10(r1) /* 800F35C4 000F0524 C0 21 00 08 */ lfs f1, 8(r1) /* 800F35C8 000F0528 C0 01 00 0C */ lfs f0, 0xc(r1) /* 800F35CC 000F052C EC 5F 00 B2 */ fmuls f2, f31, f2 /* 800F35D0 000F0530 EC 3F 00 72 */ fmuls f1, f31, f1 /* 800F35D4 000F0534 EC 1F 00 32 */ fmuls f0, f31, f0 /* 800F35D8 000F0538 D0 41 00 1C */ stfs f2, 0x1c(r1) /* 800F35DC 000F053C D0 21 00 14 */ stfs f1, 0x14(r1) /* 800F35E0 000F0540 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800F35E4 000F0544 48 00 00 20 */ b lbl_800F3604 lbl_800F35E8: /* 800F35E8 000F0548 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F35EC 000F054C C4 43 66 A0 */ lfsu f2, sZeroVector__9CVector3f@l(r3) /* 800F35F0 000F0550 C0 23 00 04 */ lfs f1, 4(r3) /* 800F35F4 000F0554 C0 03 00 08 */ lfs f0, 8(r3) /* 800F35F8 000F0558 D0 41 00 14 */ stfs f2, 0x14(r1) /* 800F35FC 000F055C D0 21 00 18 */ stfs f1, 0x18(r1) /* 800F3600 000F0560 D0 01 00 1C */ stfs f0, 0x1c(r1) lbl_800F3604: /* 800F3604 000F0564 80 7F 00 00 */ lwz r3, 0(r31) /* 800F3608 000F0568 38 81 00 14 */ addi r4, r1, 0x14 /* 800F360C 000F056C 48 02 76 95 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f /* 800F3610 000F0570 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 800F3614 000F0574 80 01 00 44 */ lwz r0, 0x44(r1) /* 800F3618 000F0578 CB E1 00 30 */ lfd f31, 0x30(r1) /* 800F361C 000F057C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800F3620 000F0580 7C 08 03 A6 */ mtlr r0 /* 800F3624 000F0584 38 21 00 40 */ addi r1, r1, 0x40 /* 800F3628 000F0588 4E 80 00 20 */ blr .global UpdateMarbleDynamics__10CMorphBallFR13CStateManagerfRC9CVector3f UpdateMarbleDynamics__10CMorphBallFR13CStateManagerfRC9CVector3f: /* 800F362C 000F058C 94 21 FD D0 */ stwu r1, -0x230(r1) /* 800F3630 000F0590 7C 08 02 A6 */ mflr r0 /* 800F3634 000F0594 90 01 02 34 */ stw r0, 0x234(r1) /* 800F3638 000F0598 DB E1 02 20 */ stfd f31, 0x220(r1) /* 800F363C 000F059C F3 E1 02 28 */ psq_st f31, 552(r1), 0, qr0 /* 800F3640 000F05A0 DB C1 02 10 */ stfd f30, 0x210(r1) /* 800F3644 000F05A4 F3 C1 02 18 */ psq_st f30, 536(r1), 0, qr0 /* 800F3648 000F05A8 DB A1 02 00 */ stfd f29, 0x200(r1) /* 800F364C 000F05AC F3 A1 02 08 */ psq_st f29, 520(r1), 0, qr0 /* 800F3650 000F05B0 DB 81 01 F0 */ stfd f28, 0x1f0(r1) /* 800F3654 000F05B4 F3 81 01 F8 */ psq_st f28, 504(r1), 0, qr0 /* 800F3658 000F05B8 DB 61 01 E0 */ stfd f27, 0x1e0(r1) /* 800F365C 000F05BC F3 61 01 E8 */ psq_st f27, 488(r1), 0, qr0 /* 800F3660 000F05C0 DB 41 01 D0 */ stfd f26, 0x1d0(r1) /* 800F3664 000F05C4 F3 41 01 D8 */ psq_st f26, 472(r1), 0, qr0 /* 800F3668 000F05C8 DB 21 01 C0 */ stfd f25, 0x1c0(r1) /* 800F366C 000F05CC F3 21 01 C8 */ psq_st f25, 456(r1), 0, qr0 /* 800F3670 000F05D0 DB 01 01 B0 */ stfd f24, 0x1b0(r1) /* 800F3674 000F05D4 F3 01 01 B8 */ psq_st f24, 440(r1), 0, qr0 /* 800F3678 000F05D8 93 E1 01 AC */ stw r31, 0x1ac(r1) /* 800F367C 000F05DC 93 C1 01 A8 */ stw r30, 0x1a8(r1) /* 800F3680 000F05E0 93 A1 01 A4 */ stw r29, 0x1a4(r1) /* 800F3684 000F05E4 93 81 01 A0 */ stw r28, 0x1a0(r1) /* 800F3688 000F05E8 7C 7E 1B 78 */ mr r30, r3 /* 800F368C 000F05EC FF 00 08 90 */ fmr f24, f1 /* 800F3690 000F05F0 80 63 00 00 */ lwz r3, 0(r3) /* 800F3694 000F05F4 7C BC 2B 78 */ mr r28, r5 /* 800F3698 000F05F8 3B E0 00 00 */ li r31, 0 /* 800F369C 000F05FC 3B A0 00 00 */ li r29, 0 /* 800F36A0 000F0600 80 03 02 B0 */ lwz r0, 0x2b0(r3) /* 800F36A4 000F0604 2C 00 00 02 */ cmpwi r0, 2 /* 800F36A8 000F0608 40 82 00 0C */ bne lbl_800F36B4 /* 800F36AC 000F060C 80 03 02 AC */ lwz r0, 0x2ac(r3) /* 800F36B0 000F0610 48 00 00 08 */ b lbl_800F36B8 lbl_800F36B4: /* 800F36B4 000F0614 38 00 00 04 */ li r0, 4 lbl_800F36B8: /* 800F36B8 000F0618 80 8D A1 1C */ lwz r4, gpTweakBall@sda21(r13) /* 800F36BC 000F061C 54 00 10 3A */ slwi r0, r0, 2 /* 800F36C0 000F0620 38 63 01 38 */ addi r3, r3, 0x138 /* 800F36C4 000F0624 7C 84 02 14 */ add r4, r4, r0 /* 800F36C8 000F0628 C3 24 00 04 */ lfs f25, 4(r4) /* 800F36CC 000F062C 48 22 11 ED */ bl Magnitude__9CVector3fCFv /* 800F36D0 000F0630 C0 02 92 28 */ lfs f0, lbl_805AAF48@sda21(r2) /* 800F36D4 000F0634 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F36D8 000F0638 40 80 01 00 */ bge lbl_800F37D8 /* 800F36DC 000F063C 38 7E 00 10 */ addi r3, r30, 0x10 /* 800F36E0 000F0640 48 22 11 D9 */ bl Magnitude__9CVector3fCFv /* 800F36E4 000F0644 C0 02 92 84 */ lfs f0, lbl_805AAFA4@sda21(r2) /* 800F36E8 000F0648 EC 00 06 72 */ fmuls f0, f0, f25 /* 800F36EC 000F064C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F36F0 000F0650 40 81 00 E8 */ ble lbl_800F37D8 /* 800F36F4 000F0654 80 DE 00 00 */ lwz r6, 0(r30) /* 800F36F8 000F0658 38 61 00 B8 */ addi r3, r1, 0xb8 /* 800F36FC 000F065C 38 9E 19 24 */ addi r4, r30, 0x1924 /* 800F3700 000F0660 38 A1 01 58 */ addi r5, r1, 0x158 /* 800F3704 000F0664 C0 06 01 50 */ lfs f0, 0x150(r6) /* 800F3708 000F0668 D0 01 01 58 */ stfs f0, 0x158(r1) /* 800F370C 000F066C C0 06 01 54 */ lfs f0, 0x154(r6) /* 800F3710 000F0670 D0 01 01 5C */ stfs f0, 0x15c(r1) /* 800F3714 000F0674 C0 06 01 58 */ lfs f0, 0x158(r6) /* 800F3718 000F0678 D0 01 01 60 */ stfs f0, 0x160(r1) /* 800F371C 000F067C 48 21 F3 09 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 800F3720 000F0680 C0 41 00 B8 */ lfs f2, 0xb8(r1) /* 800F3724 000F0684 38 61 00 AC */ addi r3, r1, 0xac /* 800F3728 000F0688 C0 21 00 BC */ lfs f1, 0xbc(r1) /* 800F372C 000F068C 38 9E 19 24 */ addi r4, r30, 0x1924 /* 800F3730 000F0690 C0 01 00 C0 */ lfs f0, 0xc0(r1) /* 800F3734 000F0694 38 BE 00 10 */ addi r5, r30, 0x10 /* 800F3738 000F0698 D0 41 01 4C */ stfs f2, 0x14c(r1) /* 800F373C 000F069C D0 21 01 50 */ stfs f1, 0x150(r1) /* 800F3740 000F06A0 D0 01 01 54 */ stfs f0, 0x154(r1) /* 800F3744 000F06A4 48 21 F2 E1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 800F3748 000F06A8 C0 21 00 B4 */ lfs f1, 0xb4(r1) /* 800F374C 000F06AC 38 61 01 4C */ addi r3, r1, 0x14c /* 800F3750 000F06B0 C0 61 00 AC */ lfs f3, 0xac(r1) /* 800F3754 000F06B4 C0 41 00 B0 */ lfs f2, 0xb0(r1) /* 800F3758 000F06B8 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F375C 000F06BC D0 21 01 48 */ stfs f1, 0x148(r1) /* 800F3760 000F06C0 D0 61 01 40 */ stfs f3, 0x140(r1) /* 800F3764 000F06C4 D0 41 01 44 */ stfs f2, 0x144(r1) /* 800F3768 000F06C8 D0 01 01 54 */ stfs f0, 0x154(r1) /* 800F376C 000F06CC D0 01 01 48 */ stfs f0, 0x148(r1) /* 800F3770 000F06D0 48 22 0F 89 */ bl CanBeNormalized__9CVector3fCFv /* 800F3774 000F06D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F3778 000F06D8 41 82 00 60 */ beq lbl_800F37D8 /* 800F377C 000F06DC 38 61 01 40 */ addi r3, r1, 0x140 /* 800F3780 000F06E0 48 22 0F 79 */ bl CanBeNormalized__9CVector3fCFv /* 800F3784 000F06E4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F3788 000F06E8 41 82 00 50 */ beq lbl_800F37D8 /* 800F378C 000F06EC 38 61 00 94 */ addi r3, r1, 0x94 /* 800F3790 000F06F0 38 81 01 40 */ addi r4, r1, 0x140 /* 800F3794 000F06F4 48 22 10 BD */ bl AsNormalized__9CVector3fCFv /* 800F3798 000F06F8 38 61 00 A0 */ addi r3, r1, 0xa0 /* 800F379C 000F06FC 38 81 01 4C */ addi r4, r1, 0x14c /* 800F37A0 000F0700 48 22 10 B1 */ bl AsNormalized__9CVector3fCFv /* 800F37A4 000F0704 C0 21 00 A4 */ lfs f1, 0xa4(r1) /* 800F37A8 000F0708 C0 01 00 98 */ lfs f0, 0x98(r1) /* 800F37AC 000F070C C0 41 00 A0 */ lfs f2, 0xa0(r1) /* 800F37B0 000F0710 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F37B4 000F0714 C0 21 00 94 */ lfs f1, 0x94(r1) /* 800F37B8 000F0718 C0 81 00 A8 */ lfs f4, 0xa8(r1) /* 800F37BC 000F071C C0 61 00 9C */ lfs f3, 0x9c(r1) /* 800F37C0 000F0720 EC 22 00 7A */ fmadds f1, f2, f1, f0 /* 800F37C4 000F0724 C0 02 92 88 */ lfs f0, lbl_805AAFA8@sda21(r2) /* 800F37C8 000F0728 EC 24 08 FA */ fmadds f1, f4, f3, f1 /* 800F37CC 000F072C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F37D0 000F0730 40 80 00 08 */ bge lbl_800F37D8 /* 800F37D4 000F0734 3B A0 00 01 */ li r29, 1 lbl_800F37D8: /* 800F37D8 000F0738 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 800F37DC 000F073C 40 82 03 20 */ bne lbl_800F3AFC /* 800F37E0 000F0740 80 9E 00 00 */ lwz r4, 0(r30) /* 800F37E4 000F0744 7F C3 F3 78 */ mr r3, r30 /* 800F37E8 000F0748 C3 64 01 38 */ lfs f27, 0x138(r4) /* 800F37EC 000F074C C3 44 01 3C */ lfs f26, 0x13c(r4) /* 800F37F0 000F0750 C3 24 01 40 */ lfs f25, 0x140(r4) /* 800F37F4 000F0754 48 00 56 11 */ bl GetBallRadius__10CMorphBallCFv /* 800F37F8 000F0758 80 9E 00 00 */ lwz r4, 0(r30) /* 800F37FC 000F075C C0 A2 91 50 */ lfs f5, lbl_805AAE70@sda21(r2) /* 800F3800 000F0760 C0 64 00 50 */ lfs f3, 0x50(r4) /* 800F3804 000F0764 38 64 01 44 */ addi r3, r4, 0x144 /* 800F3808 000F0768 C0 44 00 60 */ lfs f2, 0x60(r4) /* 800F380C 000F076C C0 04 00 40 */ lfs f0, 0x40(r4) /* 800F3810 000F0770 EC 83 28 2A */ fadds f4, f3, f5 /* 800F3814 000F0774 C0 DC 00 04 */ lfs f6, 4(r28) /* 800F3818 000F0778 EC 42 08 2A */ fadds f2, f2, f1 /* 800F381C 000F077C C0 7C 00 08 */ lfs f3, 8(r28) /* 800F3820 000F0780 EC 00 28 2A */ fadds f0, f0, f5 /* 800F3824 000F0784 C0 3C 00 00 */ lfs f1, 0(r28) /* 800F3828 000F0788 EC 86 20 28 */ fsubs f4, f6, f4 /* 800F382C 000F078C EC 43 10 28 */ fsubs f2, f3, f2 /* 800F3830 000F0790 EC 01 00 28 */ fsubs f0, f1, f0 /* 800F3834 000F0794 D0 81 01 38 */ stfs f4, 0x138(r1) /* 800F3838 000F0798 D0 01 01 34 */ stfs f0, 0x134(r1) /* 800F383C 000F079C D0 41 01 3C */ stfs f2, 0x13c(r1) /* 800F3840 000F07A0 4B F2 7C F1 */ bl GetVector__10CAxisAngleCFv /* 800F3844 000F07A4 C0 43 00 00 */ lfs f2, 0(r3) /* 800F3848 000F07A8 C0 C1 01 3C */ lfs f6, 0x13c(r1) /* 800F384C 000F07AC C0 63 00 04 */ lfs f3, 4(r3) /* 800F3850 000F07B0 C0 E1 01 34 */ lfs f7, 0x134(r1) /* 800F3854 000F07B4 EC 06 00 B2 */ fmuls f0, f6, f2 /* 800F3858 000F07B8 C0 83 00 08 */ lfs f4, 8(r3) /* 800F385C 000F07BC C0 A1 01 38 */ lfs f5, 0x138(r1) /* 800F3860 000F07C0 EC 27 00 F2 */ fmuls f1, f7, f3 /* 800F3864 000F07C4 EF C4 01 F8 */ fmsubs f30, f4, f7, f0 /* 800F3868 000F07C8 EC 05 01 32 */ fmuls f0, f5, f4 /* 800F386C 000F07CC EF A2 09 78 */ fmsubs f29, f2, f5, f1 /* 800F3870 000F07D0 EC 3A F0 28 */ fsubs f1, f26, f30 /* 800F3874 000F07D4 EF E3 01 B8 */ fmsubs f31, f3, f6, f0 /* 800F3878 000F07D8 EC 19 E8 28 */ fsubs f0, f25, f29 /* 800F387C 000F07DC D0 21 01 2C */ stfs f1, 0x12c(r1) /* 800F3880 000F07E0 EC 3B F8 28 */ fsubs f1, f27, f31 /* 800F3884 000F07E4 D0 01 01 30 */ stfs f0, 0x130(r1) /* 800F3888 000F07E8 D0 21 01 28 */ stfs f1, 0x128(r1) /* 800F388C 000F07EC 80 1E 18 7C */ lwz r0, 0x187c(r30) /* 800F3890 000F07F0 2C 00 00 01 */ cmpwi r0, 1 /* 800F3894 000F07F4 40 82 00 0C */ bne lbl_800F38A0 /* 800F3898 000F07F8 C3 82 91 A8 */ lfs f28, lbl_805AAEC8@sda21(r2) /* 800F389C 000F07FC 48 00 00 08 */ b lbl_800F38A4 lbl_800F38A0: /* 800F38A0 000F0800 C3 82 92 48 */ lfs f28, lbl_805AAF68@sda21(r2) lbl_800F38A4: /* 800F38A4 000F0804 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F38A8 000F0808 D0 01 00 08 */ stfs f0, 8(r1) /* 800F38AC 000F080C 80 1E 1C D0 */ lwz r0, 0x1cd0(r30) /* 800F38B0 000F0810 2C 00 00 03 */ cmpwi r0, 3 /* 800F38B4 000F0814 40 81 00 94 */ ble lbl_800F3948 /* 800F38B8 000F0818 38 61 00 1C */ addi r3, r1, 0x1c /* 800F38BC 000F081C 38 9E 1C D0 */ addi r4, r30, 0x1cd0 /* 800F38C0 000F0820 38 A0 00 00 */ li r5, 0 /* 800F38C4 000F0824 48 00 05 21 */ bl "GetEntry__22TReservedAverageCFi" /* 800F38C8 000F0828 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800F38CC 000F082C 38 00 00 00 */ li r0, 0 /* 800F38D0 000F0830 98 01 00 20 */ stb r0, 0x20(r1) /* 800F38D4 000F0834 38 61 00 14 */ addi r3, r1, 0x14 /* 800F38D8 000F0838 38 9E 1C D0 */ addi r4, r30, 0x1cd0 /* 800F38DC 000F083C 38 A0 00 01 */ li r5, 1 /* 800F38E0 000F0840 D0 01 00 08 */ stfs f0, 8(r1) /* 800F38E4 000F0844 48 00 05 01 */ bl "GetEntry__22TReservedAverageCFi" /* 800F38E8 000F0848 C0 21 00 08 */ lfs f1, 8(r1) /* 800F38EC 000F084C 38 61 00 14 */ addi r3, r1, 0x14 /* 800F38F0 000F0850 C0 01 00 14 */ lfs f0, 0x14(r1) /* 800F38F4 000F0854 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F38F8 000F0858 40 80 00 08 */ bge lbl_800F3900 /* 800F38FC 000F085C 38 61 00 08 */ addi r3, r1, 8 lbl_800F3900: /* 800F3900 000F0860 C0 03 00 00 */ lfs f0, 0(r3) /* 800F3904 000F0864 38 00 00 00 */ li r0, 0 /* 800F3908 000F0868 38 61 00 0C */ addi r3, r1, 0xc /* 800F390C 000F086C 38 9E 1C D0 */ addi r4, r30, 0x1cd0 /* 800F3910 000F0870 D0 01 00 08 */ stfs f0, 8(r1) /* 800F3914 000F0874 38 A0 00 02 */ li r5, 2 /* 800F3918 000F0878 98 01 00 18 */ stb r0, 0x18(r1) /* 800F391C 000F087C 48 00 04 C9 */ bl "GetEntry__22TReservedAverageCFi" /* 800F3920 000F0880 C0 21 00 08 */ lfs f1, 8(r1) /* 800F3924 000F0884 38 61 00 0C */ addi r3, r1, 0xc /* 800F3928 000F0888 C0 01 00 0C */ lfs f0, 0xc(r1) /* 800F392C 000F088C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3930 000F0890 40 80 00 08 */ bge lbl_800F3938 /* 800F3934 000F0894 38 61 00 08 */ addi r3, r1, 8 lbl_800F3938: /* 800F3938 000F0898 C0 03 00 00 */ lfs f0, 0(r3) /* 800F393C 000F089C 38 00 00 00 */ li r0, 0 /* 800F3940 000F08A0 D0 01 00 08 */ stfs f0, 8(r1) /* 800F3944 000F08A4 98 01 00 10 */ stb r0, 0x10(r1) lbl_800F3948: /* 800F3948 000F08A8 C0 21 01 28 */ lfs f1, 0x128(r1) /* 800F394C 000F08AC C0 01 01 2C */ lfs f0, 0x12c(r1) /* 800F3950 000F08B0 EC 41 00 72 */ fmuls f2, f1, f1 /* 800F3954 000F08B4 C0 61 01 30 */ lfs f3, 0x130(r1) /* 800F3958 000F08B8 EC 20 00 32 */ fmuls f1, f0, f0 /* 800F395C 000F08BC C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F3960 000F08C0 EC 63 00 F2 */ fmuls f3, f3, f3 /* 800F3964 000F08C4 EC 22 08 2A */ fadds f1, f2, f1 /* 800F3968 000F08C8 EC 23 08 2A */ fadds f1, f3, f1 /* 800F396C 000F08CC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3970 000F08D0 40 81 02 08 */ ble lbl_800F3B78 /* 800F3974 000F08D4 C0 01 00 08 */ lfs f0, 8(r1) /* 800F3978 000F08D8 FC 00 E0 40 */ fcmpo cr0, f0, f28 /* 800F397C 000F08DC 40 81 01 FC */ ble lbl_800F3B78 /* 800F3980 000F08E0 38 61 01 28 */ addi r3, r1, 0x128 /* 800F3984 000F08E4 48 22 0F 35 */ bl Magnitude__9CVector3fCFv /* 800F3988 000F08E8 C0 02 92 8C */ lfs f0, lbl_805AAFAC@sda21(r2) /* 800F398C 000F08EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3990 000F08F0 40 81 00 48 */ ble lbl_800F39D8 /* 800F3994 000F08F4 38 61 00 88 */ addi r3, r1, 0x88 /* 800F3998 000F08F8 38 81 01 28 */ addi r4, r1, 0x128 /* 800F399C 000F08FC 48 22 0E B5 */ bl AsNormalized__9CVector3fCFv /* 800F39A0 000F0900 C0 62 92 64 */ lfs f3, lbl_805AAF84@sda21(r2) /* 800F39A4 000F0904 C0 41 00 90 */ lfs f2, 0x90(r1) /* 800F39A8 000F0908 C0 21 00 88 */ lfs f1, 0x88(r1) /* 800F39AC 000F090C C0 01 00 8C */ lfs f0, 0x8c(r1) /* 800F39B0 000F0910 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F39B4 000F0914 C0 82 91 E0 */ lfs f4, lbl_805AAF00@sda21(r2) /* 800F39B8 000F0918 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F39BC 000F091C EC 03 00 32 */ fmuls f0, f3, f0 /* 800F39C0 000F0920 EC 44 00 B2 */ fmuls f2, f4, f2 /* 800F39C4 000F0924 EC 24 00 72 */ fmuls f1, f4, f1 /* 800F39C8 000F0928 EC 04 00 32 */ fmuls f0, f4, f0 /* 800F39CC 000F092C D0 41 01 30 */ stfs f2, 0x130(r1) /* 800F39D0 000F0930 D0 21 01 28 */ stfs f1, 0x128(r1) /* 800F39D4 000F0934 D0 01 01 2C */ stfs f0, 0x12c(r1) lbl_800F39D8: /* 800F39D8 000F0938 EC 5B F8 2A */ fadds f2, f27, f31 /* 800F39DC 000F093C 38 61 01 1C */ addi r3, r1, 0x11c /* 800F39E0 000F0940 EC 3A F0 2A */ fadds f1, f26, f30 /* 800F39E4 000F0944 EC 19 E8 2A */ fadds f0, f25, f29 /* 800F39E8 000F0948 D0 41 01 1C */ stfs f2, 0x11c(r1) /* 800F39EC 000F094C D0 21 01 20 */ stfs f1, 0x120(r1) /* 800F39F0 000F0950 D0 01 01 24 */ stfs f0, 0x124(r1) /* 800F39F4 000F0954 48 22 0D 05 */ bl CanBeNormalized__9CVector3fCFv /* 800F39F8 000F0958 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F39FC 000F095C 41 82 01 7C */ beq lbl_800F3B78 /* 800F3A00 000F0960 88 1E 00 28 */ lbz r0, 0x28(r30) /* 800F3A04 000F0964 38 60 00 00 */ li r3, 0 /* 800F3A08 000F0968 28 00 00 00 */ cmplwi r0, 0 /* 800F3A0C 000F096C 41 82 00 14 */ beq lbl_800F3A20 /* 800F3A10 000F0970 80 1E 18 7C */ lwz r0, 0x187c(r30) /* 800F3A14 000F0974 2C 00 00 01 */ cmpwi r0, 1 /* 800F3A18 000F0978 41 82 00 08 */ beq lbl_800F3A20 /* 800F3A1C 000F097C 38 60 00 01 */ li r3, 1 lbl_800F3A20: /* 800F3A20 000F0980 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F3A24 000F0984 41 82 00 0C */ beq lbl_800F3A30 /* 800F3A28 000F0988 C3 42 91 90 */ lfs f26, lbl_805AAEB0@sda21(r2) /* 800F3A2C 000F098C 48 00 00 08 */ b lbl_800F3A34 lbl_800F3A30: /* 800F3A30 000F0990 C3 42 91 5C */ lfs f26, lbl_805AAE7C@sda21(r2) lbl_800F3A34: /* 800F3A34 000F0994 38 61 00 7C */ addi r3, r1, 0x7c /* 800F3A38 000F0998 38 81 01 1C */ addi r4, r1, 0x11c /* 800F3A3C 000F099C 48 22 0E 15 */ bl AsNormalized__9CVector3fCFv /* 800F3A40 000F09A0 80 7E 00 00 */ lwz r3, 0(r30) /* 800F3A44 000F09A4 80 03 02 B0 */ lwz r0, 0x2b0(r3) /* 800F3A48 000F09A8 2C 00 00 02 */ cmpwi r0, 2 /* 800F3A4C 000F09AC 40 82 00 0C */ bne lbl_800F3A58 /* 800F3A50 000F09B0 80 03 02 AC */ lwz r0, 0x2ac(r3) /* 800F3A54 000F09B4 48 00 00 08 */ b lbl_800F3A5C lbl_800F3A58: /* 800F3A58 000F09B8 38 00 00 04 */ li r0, 4 lbl_800F3A5C: /* 800F3A5C 000F09BC 80 8D A1 1C */ lwz r4, gpTweakBall@sda21(r13) /* 800F3A60 000F09C0 54 00 10 3A */ slwi r0, r0, 2 /* 800F3A64 000F09C4 7F C3 F3 78 */ mr r3, r30 /* 800F3A68 000F09C8 7C 84 02 14 */ add r4, r4, r0 /* 800F3A6C 000F09CC C3 64 01 2C */ lfs f27, 0x12c(r4) /* 800F3A70 000F09D0 48 00 53 95 */ bl GetBallRadius__10CMorphBallCFv /* 800F3A74 000F09D4 FF 20 08 90 */ fmr f25, f1 /* 800F3A78 000F09D8 38 61 01 28 */ addi r3, r1, 0x128 /* 800F3A7C 000F09DC 48 22 0E 3D */ bl Magnitude__9CVector3fCFv /* 800F3A80 000F09E0 FC 00 D8 50 */ fneg f0, f27 /* 800F3A84 000F09E4 C0 82 92 58 */ lfs f4, lbl_805AAF78@sda21(r2) /* 800F3A88 000F09E8 C0 61 00 7C */ lfs f3, 0x7c(r1) /* 800F3A8C 000F09EC 38 61 00 70 */ addi r3, r1, 0x70 /* 800F3A90 000F09F0 C0 41 00 80 */ lfs f2, 0x80(r1) /* 800F3A94 000F09F4 38 81 01 34 */ addi r4, r1, 0x134 /* 800F3A98 000F09F8 EC 21 00 32 */ fmuls f1, f1, f0 /* 800F3A9C 000F09FC C0 01 00 84 */ lfs f0, 0x84(r1) /* 800F3AA0 000F0A00 EC 3A 00 72 */ fmuls f1, f26, f1 /* 800F3AA4 000F0A04 EC 24 00 72 */ fmuls f1, f4, f1 /* 800F3AA8 000F0A08 EC 21 C8 24 */ fdivs f1, f1, f25 /* 800F3AAC 000F0A0C EF 61 00 F2 */ fmuls f27, f1, f3 /* 800F3AB0 000F0A10 EF 41 00 B2 */ fmuls f26, f1, f2 /* 800F3AB4 000F0A14 EF 21 00 32 */ fmuls f25, f1, f0 /* 800F3AB8 000F0A18 48 22 0D 99 */ bl AsNormalized__9CVector3fCFv /* 800F3ABC 000F0A1C C0 61 00 74 */ lfs f3, 0x74(r1) /* 800F3AC0 000F0A20 38 81 01 10 */ addi r4, r1, 0x110 /* 800F3AC4 000F0A24 C0 81 00 78 */ lfs f4, 0x78(r1) /* 800F3AC8 000F0A28 C0 A1 00 70 */ lfs f5, 0x70(r1) /* 800F3ACC 000F0A2C EC 5B 00 F2 */ fmuls f2, f27, f3 /* 800F3AD0 000F0A30 EC 3A 01 32 */ fmuls f1, f26, f4 /* 800F3AD4 000F0A34 EC 19 01 72 */ fmuls f0, f25, f5 /* 800F3AD8 000F0A38 EC 45 16 B8 */ fmsubs f2, f5, f26, f2 /* 800F3ADC 000F0A3C EC 23 0E 78 */ fmsubs f1, f3, f25, f1 /* 800F3AE0 000F0A40 EC 04 06 F8 */ fmsubs f0, f4, f27, f0 /* 800F3AE4 000F0A44 D0 41 01 18 */ stfs f2, 0x118(r1) /* 800F3AE8 000F0A48 D0 21 01 10 */ stfs f1, 0x110(r1) /* 800F3AEC 000F0A4C D0 01 01 14 */ stfs f0, 0x114(r1) /* 800F3AF0 000F0A50 80 7E 00 00 */ lwz r3, 0(r30) /* 800F3AF4 000F0A54 48 02 88 4D */ bl ApplyTorqueWR__13CPhysicsActorFRC9CVector3f /* 800F3AF8 000F0A58 48 00 00 80 */ b lbl_800F3B78 lbl_800F3AFC: /* 800F3AFC 000F0A5C 7F C3 F3 78 */ mr r3, r30 /* 800F3B00 000F0A60 48 00 53 05 */ bl GetBallRadius__10CMorphBallCFv /* 800F3B04 000F0A64 C0 02 92 5C */ lfs f0, lbl_805AAF7C@sda21(r2) /* 800F3B08 000F0A68 38 61 01 04 */ addi r3, r1, 0x104 /* 800F3B0C 000F0A6C C0 BE 19 4C */ lfs f5, 0x194c(r30) /* 800F3B10 000F0A70 EF 20 08 24 */ fdivs f25, f0, f1 /* 800F3B14 000F0A74 C0 FE 00 14 */ lfs f7, 0x14(r30) /* 800F3B18 000F0A78 C0 9E 19 3C */ lfs f4, 0x193c(r30) /* 800F3B1C 000F0A7C C0 DE 00 10 */ lfs f6, 0x10(r30) /* 800F3B20 000F0A80 C0 7E 19 2C */ lfs f3, 0x192c(r30) /* 800F3B24 000F0A84 C1 1E 00 18 */ lfs f8, 0x18(r30) /* 800F3B28 000F0A88 EC 47 01 72 */ fmuls f2, f7, f5 /* 800F3B2C 000F0A8C EC 28 00 F2 */ fmuls f1, f8, f3 /* 800F3B30 000F0A90 EC 06 01 32 */ fmuls f0, f6, f4 /* 800F3B34 000F0A94 EC 44 12 38 */ fmsubs f2, f4, f8, f2 /* 800F3B38 000F0A98 EC 25 09 B8 */ fmsubs f1, f5, f6, f1 /* 800F3B3C 000F0A9C EC 03 01 F8 */ fmsubs f0, f3, f7, f0 /* 800F3B40 000F0AA0 D0 41 01 04 */ stfs f2, 0x104(r1) /* 800F3B44 000F0AA4 D0 21 01 08 */ stfs f1, 0x108(r1) /* 800F3B48 000F0AA8 D0 01 01 0C */ stfs f0, 0x10c(r1) /* 800F3B4C 000F0AAC 48 22 0B AD */ bl CanBeNormalized__9CVector3fCFv /* 800F3B50 000F0AB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F3B54 000F0AB4 41 82 00 24 */ beq lbl_800F3B78 /* 800F3B58 000F0AB8 38 61 00 64 */ addi r3, r1, 0x64 /* 800F3B5C 000F0ABC 38 81 01 04 */ addi r4, r1, 0x104 /* 800F3B60 000F0AC0 48 22 0C F1 */ bl AsNormalized__9CVector3fCFv /* 800F3B64 000F0AC4 FC 20 C8 90 */ fmr f1, f25 /* 800F3B68 000F0AC8 C0 42 92 90 */ lfs f2, lbl_805AAFB0@sda21(r2) /* 800F3B6C 000F0ACC 7F C3 F3 78 */ mr r3, r30 /* 800F3B70 000F0AD0 38 81 00 64 */ addi r4, r1, 0x64 /* 800F3B74 000F0AD4 4B FF C3 35 */ bl SpinToSpeed__10CMorphBallFfRC9CVector3ff lbl_800F3B78: /* 800F3B78 000F0AD8 80 7E 00 00 */ lwz r3, 0(r30) /* 800F3B7C 000F0ADC 38 63 01 38 */ addi r3, r3, 0x138 /* 800F3B80 000F0AE0 48 22 0D 39 */ bl Magnitude__9CVector3fCFv /* 800F3B84 000F0AE4 FF 20 08 90 */ fmr f25, f1 /* 800F3B88 000F0AE8 7F C3 F3 78 */ mr r3, r30 /* 800F3B8C 000F0AEC 4B FF F8 F1 */ bl GetMinimumAlignmentSpeed__10CMorphBallCFv /* 800F3B90 000F0AF0 FC 19 08 40 */ fcmpo cr0, f25, f1 /* 800F3B94 000F0AF4 4C 41 13 82 */ cror 2, 1, 2 /* 800F3B98 000F0AF8 40 82 01 E8 */ bne lbl_800F3D80 /* 800F3B9C 000F0AFC 80 7E 00 00 */ lwz r3, 0(r30) /* 800F3BA0 000F0B00 C0 DE 19 34 */ lfs f6, 0x1934(r30) /* 800F3BA4 000F0B04 C0 83 00 44 */ lfs f4, 0x44(r3) /* 800F3BA8 000F0B08 C0 63 00 34 */ lfs f3, 0x34(r3) /* 800F3BAC 000F0B0C EC 04 01 B2 */ fmuls f0, f4, f6 /* 800F3BB0 000F0B10 C0 5E 19 24 */ lfs f2, 0x1924(r30) /* 800F3BB4 000F0B14 C0 A3 00 54 */ lfs f5, 0x54(r3) /* 800F3BB8 000F0B18 C0 FE 19 44 */ lfs f7, 0x1944(r30) /* 800F3BBC 000F0B1C EC 23 00 BA */ fmadds f1, f3, f2, f0 /* 800F3BC0 000F0B20 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F3BC4 000F0B24 D0 41 00 F8 */ stfs f2, 0xf8(r1) /* 800F3BC8 000F0B28 EC 25 09 FA */ fmadds f1, f5, f7, f1 /* 800F3BCC 000F0B2C D0 C1 00 FC */ stfs f6, 0xfc(r1) /* 800F3BD0 000F0B30 D0 E1 01 00 */ stfs f7, 0x100(r1) /* 800F3BD4 000F0B34 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3BD8 000F0B38 40 80 00 1C */ bge lbl_800F3BF4 /* 800F3BDC 000F0B3C FC 40 10 50 */ fneg f2, f2 /* 800F3BE0 000F0B40 FC 20 30 50 */ fneg f1, f6 /* 800F3BE4 000F0B44 FC 00 38 50 */ fneg f0, f7 /* 800F3BE8 000F0B48 D0 41 00 F8 */ stfs f2, 0xf8(r1) /* 800F3BEC 000F0B4C D0 21 00 FC */ stfs f1, 0xfc(r1) /* 800F3BF0 000F0B50 D0 01 01 00 */ stfs f0, 0x100(r1) lbl_800F3BF4: /* 800F3BF4 000F0B54 C0 C1 00 FC */ lfs f6, 0xfc(r1) /* 800F3BF8 000F0B58 38 61 00 EC */ addi r3, r1, 0xec /* 800F3BFC 000F0B5C C0 E1 01 00 */ lfs f7, 0x100(r1) /* 800F3C00 000F0B60 C1 01 00 F8 */ lfs f8, 0xf8(r1) /* 800F3C04 000F0B64 EC 26 01 72 */ fmuls f1, f6, f5 /* 800F3C08 000F0B68 EC 07 00 F2 */ fmuls f0, f7, f3 /* 800F3C0C 000F0B6C EC 48 01 32 */ fmuls f2, f8, f4 /* 800F3C10 000F0B70 EC 24 09 F8 */ fmsubs f1, f4, f7, f1 /* 800F3C14 000F0B74 EC 05 02 38 */ fmsubs f0, f5, f8, f0 /* 800F3C18 000F0B78 EC 43 11 B8 */ fmsubs f2, f3, f6, f2 /* 800F3C1C 000F0B7C D0 21 00 EC */ stfs f1, 0xec(r1) /* 800F3C20 000F0B80 D0 01 00 F0 */ stfs f0, 0xf0(r1) /* 800F3C24 000F0B84 D0 41 00 F4 */ stfs f2, 0xf4(r1) /* 800F3C28 000F0B88 48 22 0A D1 */ bl CanBeNormalized__9CVector3fCFv /* 800F3C2C 000F0B8C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F3C30 000F0B90 41 82 01 20 */ beq lbl_800F3D50 /* 800F3C34 000F0B94 88 1E 00 28 */ lbz r0, 0x28(r30) /* 800F3C38 000F0B98 28 00 00 00 */ cmplwi r0, 0 /* 800F3C3C 000F0B9C 40 82 00 8C */ bne lbl_800F3CC8 /* 800F3C40 000F0BA0 38 61 00 58 */ addi r3, r1, 0x58 /* 800F3C44 000F0BA4 38 81 00 EC */ addi r4, r1, 0xec /* 800F3C48 000F0BA8 48 22 0C 09 */ bl AsNormalized__9CVector3fCFv /* 800F3C4C 000F0BAC 80 8D A1 1C */ lwz r4, gpTweakBall@sda21(r13) /* 800F3C50 000F0BB0 80 7E 00 00 */ lwz r3, 0(r30) /* 800F3C54 000F0BB4 C0 64 01 E0 */ lfs f3, 0x1e0(r4) /* 800F3C58 000F0BB8 C0 41 00 58 */ lfs f2, 0x58(r1) /* 800F3C5C 000F0BBC 38 63 01 80 */ addi r3, r3, 0x180 /* 800F3C60 000F0BC0 C0 21 00 5C */ lfs f1, 0x5c(r1) /* 800F3C64 000F0BC4 C0 01 00 60 */ lfs f0, 0x60(r1) /* 800F3C68 000F0BC8 EF 43 00 B2 */ fmuls f26, f3, f2 /* 800F3C6C 000F0BCC EF 23 00 72 */ fmuls f25, f3, f1 /* 800F3C70 000F0BD0 EF 03 00 32 */ fmuls f24, f3, f0 /* 800F3C74 000F0BD4 4B F2 78 BD */ bl GetVector__10CAxisAngleCFv /* 800F3C78 000F0BD8 C0 43 00 04 */ lfs f2, 4(r3) /* 800F3C7C 000F0BDC 38 81 00 40 */ addi r4, r1, 0x40 /* 800F3C80 000F0BE0 C0 23 00 08 */ lfs f1, 8(r3) /* 800F3C84 000F0BE4 C0 03 00 00 */ lfs f0, 0(r3) /* 800F3C88 000F0BE8 EC 42 C8 2A */ fadds f2, f2, f25 /* 800F3C8C 000F0BEC EC 21 C0 2A */ fadds f1, f1, f24 /* 800F3C90 000F0BF0 38 61 00 4C */ addi r3, r1, 0x4c /* 800F3C94 000F0BF4 EC 00 D0 2A */ fadds f0, f0, f26 /* 800F3C98 000F0BF8 D0 41 00 44 */ stfs f2, 0x44(r1) /* 800F3C9C 000F0BFC D0 01 00 40 */ stfs f0, 0x40(r1) /* 800F3CA0 000F0C00 D0 21 00 48 */ stfs f1, 0x48(r1) /* 800F3CA4 000F0C04 4B F2 78 9D */ bl FromVector__10CAxisAngleFRC9CVector3f /* 800F3CA8 000F0C08 80 9E 00 00 */ lwz r4, 0(r30) /* 800F3CAC 000F0C0C 80 61 00 4C */ lwz r3, 0x4c(r1) /* 800F3CB0 000F0C10 80 01 00 50 */ lwz r0, 0x50(r1) /* 800F3CB4 000F0C14 90 64 01 80 */ stw r3, 0x180(r4) /* 800F3CB8 000F0C18 90 04 01 84 */ stw r0, 0x184(r4) /* 800F3CBC 000F0C1C 80 01 00 54 */ lwz r0, 0x54(r1) /* 800F3CC0 000F0C20 90 04 01 88 */ stw r0, 0x188(r4) /* 800F3CC4 000F0C24 48 00 00 8C */ b lbl_800F3D50 lbl_800F3CC8: /* 800F3CC8 000F0C28 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F3CCC 000F0C2C 7F C4 F3 78 */ mr r4, r30 /* 800F3CD0 000F0C30 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F3CD4 000F0C34 38 61 01 64 */ addi r3, r1, 0x164 /* 800F3CD8 000F0C38 D0 01 00 E4 */ stfs f0, 0xe4(r1) /* 800F3CDC 000F0C3C D0 21 00 E0 */ stfs f1, 0xe0(r1) /* 800F3CE0 000F0C40 D0 01 00 E8 */ stfs f0, 0xe8(r1) /* 800F3CE4 000F0C44 48 00 2A 11 */ bl GetBallToWorld__10CMorphBallCFv /* 800F3CE8 000F0C48 38 61 00 34 */ addi r3, r1, 0x34 /* 800F3CEC 000F0C4C 38 81 01 64 */ addi r4, r1, 0x164 /* 800F3CF0 000F0C50 38 A1 00 F8 */ addi r5, r1, 0xf8 /* 800F3CF4 000F0C54 48 21 ED 31 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 800F3CF8 000F0C58 C0 41 00 34 */ lfs f2, 0x34(r1) /* 800F3CFC 000F0C5C 38 61 00 24 */ addi r3, r1, 0x24 /* 800F3D00 000F0C60 C0 21 00 38 */ lfs f1, 0x38(r1) /* 800F3D04 000F0C64 38 81 00 E0 */ addi r4, r1, 0xe0 /* 800F3D08 000F0C68 C0 01 00 3C */ lfs f0, 0x3c(r1) /* 800F3D0C 000F0C6C 38 A1 00 D4 */ addi r5, r1, 0xd4 /* 800F3D10 000F0C70 D0 41 00 D4 */ stfs f2, 0xd4(r1) /* 800F3D14 000F0C74 D0 21 00 D8 */ stfs f1, 0xd8(r1) /* 800F3D18 000F0C78 D0 01 00 DC */ stfs f0, 0xdc(r1) /* 800F3D1C 000F0C7C 48 21 DD 9D */ bl ShortestRotationArc__11CQuaternionFRC9CVector3fRC9CVector3f /* 800F3D20 000F0C80 C0 81 00 24 */ lfs f4, 0x24(r1) /* 800F3D24 000F0C84 FC 20 C0 90 */ fmr f1, f24 /* 800F3D28 000F0C88 C0 61 00 28 */ lfs f3, 0x28(r1) /* 800F3D2C 000F0C8C 38 81 00 C4 */ addi r4, r1, 0xc4 /* 800F3D30 000F0C90 C0 41 00 2C */ lfs f2, 0x2c(r1) /* 800F3D34 000F0C94 C0 01 00 30 */ lfs f0, 0x30(r1) /* 800F3D38 000F0C98 D0 81 00 C4 */ stfs f4, 0xc4(r1) /* 800F3D3C 000F0C9C D0 61 00 C8 */ stfs f3, 0xc8(r1) /* 800F3D40 000F0CA0 D0 41 00 CC */ stfs f2, 0xcc(r1) /* 800F3D44 000F0CA4 D0 01 00 D0 */ stfs f0, 0xd0(r1) /* 800F3D48 000F0CA8 80 7E 00 00 */ lwz r3, 0(r30) /* 800F3D4C 000F0CAC 48 02 70 11 */ bl RotateInOneFrameOR__13CPhysicsActorFRC11CQuaternionf lbl_800F3D50: /* 800F3D50 000F0CB0 7F C3 F3 78 */ mr r3, r30 /* 800F3D54 000F0CB4 4B FF DC 7D */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F3D58 000F0CB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F3D5C 000F0CBC 41 82 00 0C */ beq lbl_800F3D68 /* 800F3D60 000F0CC0 C3 02 91 E8 */ lfs f24, lbl_805AAF08@sda21(r2) /* 800F3D64 000F0CC4 48 00 00 08 */ b lbl_800F3D6C lbl_800F3D68: /* 800F3D68 000F0CC8 C3 02 91 FC */ lfs f24, lbl_805AAF1C@sda21(r2) .global lbl_800F3D6C lbl_800F3D6C: /* 800F3D6C 000F0CCC 38 61 00 EC */ addi r3, r1, 0xec /* 800F3D70 000F0CD0 48 22 0B 49 */ bl Magnitude__9CVector3fCFv /* 800F3D74 000F0CD4 FC 01 C0 40 */ fcmpo cr0, f1, f24 /* 800F3D78 000F0CD8 40 80 00 08 */ bge lbl_800F3D80 /* 800F3D7C 000F0CDC 3B E0 00 01 */ li r31, 1 lbl_800F3D80: /* 800F3D80 000F0CE0 7F E3 FB 78 */ mr r3, r31 /* 800F3D84 000F0CE4 E3 E1 02 28 */ psq_l f31, 552(r1), 0, qr0 /* 800F3D88 000F0CE8 CB E1 02 20 */ lfd f31, 0x220(r1) /* 800F3D8C 000F0CEC E3 C1 02 18 */ psq_l f30, 536(r1), 0, qr0 /* 800F3D90 000F0CF0 CB C1 02 10 */ lfd f30, 0x210(r1) /* 800F3D94 000F0CF4 E3 A1 02 08 */ psq_l f29, 520(r1), 0, qr0 /* 800F3D98 000F0CF8 CB A1 02 00 */ lfd f29, 0x200(r1) /* 800F3D9C 000F0CFC E3 81 01 F8 */ psq_l f28, 504(r1), 0, qr0 /* 800F3DA0 000F0D00 CB 81 01 F0 */ lfd f28, 0x1f0(r1) /* 800F3DA4 000F0D04 E3 61 01 E8 */ psq_l f27, 488(r1), 0, qr0 /* 800F3DA8 000F0D08 CB 61 01 E0 */ lfd f27, 0x1e0(r1) /* 800F3DAC 000F0D0C E3 41 01 D8 */ psq_l f26, 472(r1), 0, qr0 /* 800F3DB0 000F0D10 CB 41 01 D0 */ lfd f26, 0x1d0(r1) /* 800F3DB4 000F0D14 E3 21 01 C8 */ psq_l f25, 456(r1), 0, qr0 /* 800F3DB8 000F0D18 CB 21 01 C0 */ lfd f25, 0x1c0(r1) /* 800F3DBC 000F0D1C E3 01 01 B8 */ psq_l f24, 440(r1), 0, qr0 /* 800F3DC0 000F0D20 CB 01 01 B0 */ lfd f24, 0x1b0(r1) /* 800F3DC4 000F0D24 83 E1 01 AC */ lwz r31, 0x1ac(r1) /* 800F3DC8 000F0D28 83 C1 01 A8 */ lwz r30, 0x1a8(r1) /* 800F3DCC 000F0D2C 83 A1 01 A4 */ lwz r29, 0x1a4(r1) /* 800F3DD0 000F0D30 80 01 02 34 */ lwz r0, 0x234(r1) /* 800F3DD4 000F0D34 83 81 01 A0 */ lwz r28, 0x1a0(r1) /* 800F3DD8 000F0D38 7C 08 03 A6 */ mtlr r0 /* 800F3DDC 000F0D3C 38 21 02 30 */ addi r1, r1, 0x230 /* 800F3DE0 000F0D40 4E 80 00 20 */ blr .global "GetEntry__22TReservedAverageCFi" "GetEntry__22TReservedAverageCFi": /* 800F3DE4 000F0D44 80 04 00 00 */ lwz r0, 0(r4) /* 800F3DE8 000F0D48 7C 05 00 00 */ cmpw r5, r0 /* 800F3DEC 000F0D4C 41 80 00 10 */ blt lbl_800F3DFC /* 800F3DF0 000F0D50 38 00 00 00 */ li r0, 0 /* 800F3DF4 000F0D54 98 03 00 04 */ stb r0, 4(r3) /* 800F3DF8 000F0D58 4E 80 00 20 */ blr lbl_800F3DFC: /* 800F3DFC 000F0D5C 38 00 00 01 */ li r0, 1 /* 800F3E00 000F0D60 28 03 00 00 */ cmplwi r3, 0 /* 800F3E04 000F0D64 54 A5 10 3A */ slwi r5, r5, 2 /* 800F3E08 000F0D68 98 03 00 04 */ stb r0, 4(r3) /* 800F3E0C 000F0D6C 7C 84 2A 14 */ add r4, r4, r5 /* 800F3E10 000F0D70 4D 82 00 20 */ beqlr /* 800F3E14 000F0D74 C0 04 00 04 */ lfs f0, 4(r4) /* 800F3E18 000F0D78 D0 03 00 00 */ stfs f0, 0(r3) /* 800F3E1C 000F0D7C 4E 80 00 20 */ blr .global CancelBoosting__10CMorphBallFv CancelBoosting__10CMorphBallFv: /* 800F3E20 000F0D80 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800F3E24 000F0D84 7C 08 02 A6 */ mflr r0 /* 800F3E28 000F0D88 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F3E2C 000F0D8C 90 01 00 44 */ stw r0, 0x44(r1) /* 800F3E30 000F0D90 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800F3E34 000F0D94 7C 7F 1B 78 */ mr r31, r3 /* 800F3E38 000F0D98 D0 03 1D E8 */ stfs f0, 0x1de8(r3) /* 800F3E3C 000F0D9C D0 03 1D F4 */ stfs f0, 0x1df4(r3) /* 800F3E40 000F0DA0 80 03 1E 20 */ lwz r0, 0x1e20(r3) /* 800F3E44 000F0DA4 2C 00 00 01 */ cmpwi r0, 1 /* 800F3E48 000F0DA8 40 82 00 68 */ bne lbl_800F3EB0 /* 800F3E4C 000F0DAC C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F3E50 000F0DB0 38 C0 00 00 */ li r6, 0 /* 800F3E54 000F0DB4 38 60 FF FF */ li r3, -1 /* 800F3E58 000F0DB8 38 00 00 01 */ li r0, 1 /* 800F3E5C 000F0DBC 90 C1 00 0C */ stw r6, 0xc(r1) /* 800F3E60 000F0DC0 38 81 00 0C */ addi r4, r1, 0xc /* 800F3E64 000F0DC4 38 A0 00 00 */ li r5, 0 /* 800F3E68 000F0DC8 90 61 00 10 */ stw r3, 0x10(r1) /* 800F3E6C 000F0DCC D0 01 00 14 */ stfs f0, 0x14(r1) /* 800F3E70 000F0DD0 98 01 00 18 */ stb r0, 0x18(r1) /* 800F3E74 000F0DD4 90 C1 00 1C */ stw r6, 0x1c(r1) /* 800F3E78 000F0DD8 90 C1 00 20 */ stw r6, 0x20(r1) /* 800F3E7C 000F0DDC 98 C1 00 24 */ stb r6, 0x24(r1) /* 800F3E80 000F0DE0 90 C1 00 28 */ stw r6, 0x28(r1) /* 800F3E84 000F0DE4 90 C1 00 2C */ stw r6, 0x2c(r1) /* 800F3E88 000F0DE8 90 C1 00 30 */ stw r6, 0x30(r1) /* 800F3E8C 000F0DEC 80 7F 00 58 */ lwz r3, 0x58(r31) /* 800F3E90 000F0DF0 80 63 00 10 */ lwz r3, 0x10(r3) /* 800F3E94 000F0DF4 4B F3 8E E9 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb /* 800F3E98 000F0DF8 38 00 00 00 */ li r0, 0 /* 800F3E9C 000F0DFC 38 61 00 08 */ addi r3, r1, 8 /* 800F3EA0 000F0E00 90 1F 1E 20 */ stw r0, 0x1e20(r31) /* 800F3EA4 000F0E04 80 1F 1E 24 */ lwz r0, 0x1e24(r31) /* 800F3EA8 000F0E08 90 01 00 08 */ stw r0, 8(r1) /* 800F3EAC 000F0E0C 48 1F 5E 9D */ bl SfxStop__11CSfxManagerFRC10CSfxHandle lbl_800F3EB0: /* 800F3EB0 000F0E10 80 01 00 44 */ lwz r0, 0x44(r1) /* 800F3EB4 000F0E14 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800F3EB8 000F0E18 7C 08 03 A6 */ mtlr r0 /* 800F3EBC 000F0E1C 38 21 00 40 */ addi r1, r1, 0x40 /* 800F3EC0 000F0E20 4E 80 00 20 */ blr .global LeaveBoosting__10CMorphBallFv LeaveBoosting__10CMorphBallFv: /* 800F3EC4 000F0E24 88 03 1D E4 */ lbz r0, 0x1de4(r3) /* 800F3EC8 000F0E28 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800F3ECC 000F0E2C 41 82 00 10 */ beq lbl_800F3EDC /* 800F3ED0 000F0E30 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F3ED4 000F0E34 D0 03 1D EC */ stfs f0, 0x1dec(r3) /* 800F3ED8 000F0E38 D0 03 1D E8 */ stfs f0, 0x1de8(r3) lbl_800F3EDC: /* 800F3EDC 000F0E3C 88 03 1D E4 */ lbz r0, 0x1de4(r3) /* 800F3EE0 000F0E40 38 80 00 00 */ li r4, 0 /* 800F3EE4 000F0E44 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 /* 800F3EE8 000F0E48 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F3EEC 000F0E4C 98 03 1D E4 */ stb r0, 0x1de4(r3) /* 800F3EF0 000F0E50 D0 03 1D F4 */ stfs f0, 0x1df4(r3) /* 800F3EF4 000F0E54 4E 80 00 20 */ blr .global EnterBoosting__10CMorphBallFR13CStateManager EnterBoosting__10CMorphBallFR13CStateManager: /* 800F3EF8 000F0E58 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 800F3EFC 000F0E5C 7C 08 02 A6 */ mflr r0 /* 800F3F00 000F0E60 90 01 00 C4 */ stw r0, 0xc4(r1) /* 800F3F04 000F0E64 DB E1 00 B0 */ stfd f31, 0xb0(r1) /* 800F3F08 000F0E68 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 /* 800F3F0C 000F0E6C DB C1 00 A0 */ stfd f30, 0xa0(r1) /* 800F3F10 000F0E70 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 /* 800F3F14 000F0E74 DB A1 00 90 */ stfd f29, 0x90(r1) /* 800F3F18 000F0E78 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 /* 800F3F1C 000F0E7C DB 81 00 80 */ stfd f28, 0x80(r1) /* 800F3F20 000F0E80 F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0 /* 800F3F24 000F0E84 93 E1 00 7C */ stw r31, 0x7c(r1) /* 800F3F28 000F0E88 93 C1 00 78 */ stw r30, 0x78(r1) /* 800F3F2C 000F0E8C 7C 7E 1B 78 */ mr r30, r3 /* 800F3F30 000F0E90 38 60 00 01 */ li r3, 1 /* 800F3F34 000F0E94 88 1E 1D E4 */ lbz r0, 0x1de4(r30) /* 800F3F38 000F0E98 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 800F3F3C 000F0E9C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F3F40 000F0EA0 7C 9F 23 78 */ mr r31, r4 /* 800F3F44 000F0EA4 98 1E 1D E4 */ stb r0, 0x1de4(r30) /* 800F3F48 000F0EA8 C0 3E 1D E8 */ lfs f1, 0x1de8(r30) /* 800F3F4C 000F0EAC 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F3F50 000F0EB0 D0 01 00 08 */ stfs f0, 8(r1) /* 800F3F54 000F0EB4 C0 03 02 20 */ lfs f0, 0x220(r3) /* 800F3F58 000F0EB8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3F5C 000F0EBC 4C 40 13 82 */ cror 2, 0, 2 /* 800F3F60 000F0EC0 40 82 00 10 */ bne lbl_800F3F70 /* 800F3F64 000F0EC4 C0 03 02 2C */ lfs f0, 0x22c(r3) /* 800F3F68 000F0EC8 D0 01 00 08 */ stfs f0, 8(r1) /* 800F3F6C 000F0ECC 48 00 00 38 */ b lbl_800F3FA4 lbl_800F3F70: /* 800F3F70 000F0ED0 C0 03 02 24 */ lfs f0, 0x224(r3) /* 800F3F74 000F0ED4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3F78 000F0ED8 4C 40 13 82 */ cror 2, 0, 2 /* 800F3F7C 000F0EDC 40 82 00 10 */ bne lbl_800F3F8C /* 800F3F80 000F0EE0 C0 03 02 30 */ lfs f0, 0x230(r3) /* 800F3F84 000F0EE4 D0 01 00 08 */ stfs f0, 8(r1) /* 800F3F88 000F0EE8 48 00 00 1C */ b lbl_800F3FA4 lbl_800F3F8C: /* 800F3F8C 000F0EEC C0 03 02 28 */ lfs f0, 0x228(r3) /* 800F3F90 000F0EF0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3F94 000F0EF4 4C 40 13 82 */ cror 2, 0, 2 /* 800F3F98 000F0EF8 40 82 00 0C */ bne lbl_800F3FA4 /* 800F3F9C 000F0EFC C0 03 02 34 */ lfs f0, 0x234(r3) /* 800F3FA0 000F0F00 D0 01 00 08 */ stfs f0, 8(r1) lbl_800F3FA4: /* 800F3FA4 000F0F04 7F C3 F3 78 */ mr r3, r30 /* 800F3FA8 000F0F08 4B FF DA 29 */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F3FAC 000F0F0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F3FB0 000F0F10 41 82 00 58 */ beq lbl_800F4008 /* 800F3FB4 000F0F14 80 7E 00 00 */ lwz r3, 0(r30) /* 800F3FB8 000F0F18 38 63 01 38 */ addi r3, r3, 0x138 /* 800F3FBC 000F0F1C 48 22 08 FD */ bl Magnitude__9CVector3fCFv /* 800F3FC0 000F0F20 C0 42 91 6C */ lfs f2, lbl_805AAE8C@sda21(r2) /* 800F3FC4 000F0F24 C0 02 92 94 */ lfs f0, lbl_805AAFB4@sda21(r2) /* 800F3FC8 000F0F28 EC 21 10 24 */ fdivs f1, f1, f2 /* 800F3FCC 000F0F2C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3FD0 000F0F30 40 81 00 14 */ ble lbl_800F3FE4 /* 800F3FD4 000F0F34 EC 01 00 28 */ fsubs f0, f1, f0 /* 800F3FD8 000F0F38 C0 21 00 08 */ lfs f1, 8(r1) /* 800F3FDC 000F0F3C EC 01 08 3C */ fnmsubs f0, f1, f0, f1 /* 800F3FE0 000F0F40 D0 01 00 08 */ stfs f0, 8(r1) lbl_800F3FE4: /* 800F3FE4 000F0F44 C0 2D 88 A8 */ lfs f1, lbl_805A7468@sda21(r13) /* 800F3FE8 000F0F48 C0 01 00 08 */ lfs f0, 8(r1) /* 800F3FEC 000F0F4C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F3FF0 000F0F50 40 80 00 0C */ bge lbl_800F3FFC /* 800F3FF4 000F0F54 38 61 00 08 */ addi r3, r1, 8 /* 800F3FF8 000F0F58 48 00 00 08 */ b lbl_800F4000 lbl_800F3FFC: /* 800F3FFC 000F0F5C 38 6D 88 A8 */ addi r3, r13, lbl_805A7468@sda21 lbl_800F4000: /* 800F4000 000F0F60 C0 03 00 00 */ lfs f0, 0(r3) /* 800F4004 000F0F64 D0 01 00 08 */ stfs f0, 8(r1) lbl_800F4008: /* 800F4008 000F0F68 80 7E 00 00 */ lwz r3, 0(r30) /* 800F400C 000F0F6C C8 22 91 D0 */ lfd f1, lbl_805AAEF0@sda21(r2) /* 800F4010 000F0F70 C3 C3 05 04 */ lfs f30, 0x504(r3) /* 800F4014 000F0F74 C3 E3 05 00 */ lfs f31, 0x500(r3) /* 800F4018 000F0F78 EC 1E 07 B2 */ fmuls f0, f30, f30 /* 800F401C 000F0F7C C3 A3 05 08 */ lfs f29, 0x508(r3) /* 800F4020 000F0F80 EC 9F 07 FA */ fmadds f4, f31, f31, f0 /* 800F4024 000F0F84 FC 04 08 40 */ fcmpo cr0, f4, f1 /* 800F4028 000F0F88 40 81 00 58 */ ble lbl_800F4080 /* 800F402C 000F0F8C FC 20 20 34 */ frsqrte f1, f4 /* 800F4030 000F0F90 C8 62 92 78 */ lfd f3, lbl_805AAF98@sda21(r2) /* 800F4034 000F0F94 C8 42 92 98 */ lfd f2, lbl_805AAFB8@sda21(r2) /* 800F4038 000F0F98 FC 01 00 72 */ fmul f0, f1, f1 /* 800F403C 000F0F9C FC 23 00 72 */ fmul f1, f3, f1 /* 800F4040 000F0FA0 FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 800F4044 000F0FA4 FC 21 00 32 */ fmul f1, f1, f0 /* 800F4048 000F0FA8 FC 01 00 72 */ fmul f0, f1, f1 /* 800F404C 000F0FAC FC 23 00 72 */ fmul f1, f3, f1 /* 800F4050 000F0FB0 FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 800F4054 000F0FB4 FC 21 00 32 */ fmul f1, f1, f0 /* 800F4058 000F0FB8 FC 01 00 72 */ fmul f0, f1, f1 /* 800F405C 000F0FBC FC 23 00 72 */ fmul f1, f3, f1 /* 800F4060 000F0FC0 FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 800F4064 000F0FC4 FC 21 00 32 */ fmul f1, f1, f0 /* 800F4068 000F0FC8 FC 01 00 72 */ fmul f0, f1, f1 /* 800F406C 000F0FCC FC 23 00 72 */ fmul f1, f3, f1 /* 800F4070 000F0FD0 FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 800F4074 000F0FD4 FC 01 00 32 */ fmul f0, f1, f0 /* 800F4078 000F0FD8 FC 24 00 32 */ fmul f1, f4, f0 /* 800F407C 000F0FDC 48 00 00 2C */ b lbl_800F40A8 lbl_800F4080: /* 800F4080 000F0FE0 FC 01 20 00 */ fcmpu cr0, f1, f4 /* 800F4084 000F0FE4 40 82 00 08 */ bne lbl_800F408C /* 800F4088 000F0FE8 48 00 00 20 */ b lbl_800F40A8 lbl_800F408C: /* 800F408C 000F0FEC FC 04 08 00 */ fcmpu cr0, f4, f1 /* 800F4090 000F0FF0 41 82 00 10 */ beq lbl_800F40A0 /* 800F4094 000F0FF4 3C 60 80 5B */ lis r3, __float_nan@ha /* 800F4098 000F0FF8 C0 23 8B A0 */ lfs f1, __float_nan@l(r3) /* 800F409C 000F0FFC 48 00 00 0C */ b lbl_800F40A8 lbl_800F40A0: /* 800F40A0 000F1000 3C 60 80 5B */ lis r3, __float_huge@ha /* 800F40A4 000F1004 C0 23 8B A4 */ lfs f1, __float_huge@l(r3) lbl_800F40A8: /* 800F40A8 000F1008 FF 80 08 18 */ frsp f28, f1 /* 800F40AC 000F100C FC 20 E8 90 */ fmr f1, f29 /* 800F40B0 000F1010 FC 40 E0 90 */ fmr f2, f28 /* 800F40B4 000F1014 48 2A 0B B9 */ bl atan2 /* 800F40B8 000F1018 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F40BC 000F101C FC 20 08 18 */ frsp f1, f1 /* 800F40C0 000F1020 C0 42 92 A4 */ lfs f2, lbl_805AAFC4@sda21(r2) /* 800F40C4 000F1024 EC 1C 00 28 */ fsubs f0, f28, f0 /* 800F40C8 000F1028 C0 62 92 A0 */ lfs f3, lbl_805AAFC0@sda21(r2) /* 800F40CC 000F102C EC 42 00 72 */ fmuls f2, f2, f1 /* 800F40D0 000F1030 C8 22 92 A8 */ lfd f1, lbl_805AAFC8@sda21(r2) /* 800F40D4 000F1034 FC 80 02 10 */ fabs f4, f0 /* 800F40D8 000F1038 EC 03 00 B2 */ fmuls f0, f3, f2 /* 800F40DC 000F103C FC 04 08 40 */ fcmpo cr0, f4, f1 /* 800F40E0 000F1040 40 80 01 A8 */ bge lbl_800F4288 /* 800F40E4 000F1044 80 7E 00 00 */ lwz r3, 0(r30) /* 800F40E8 000F1048 80 03 02 58 */ lwz r0, 0x258(r3) /* 800F40EC 000F104C 2C 00 00 00 */ cmpwi r0, 0 /* 800F40F0 000F1050 40 82 01 98 */ bne lbl_800F4288 /* 800F40F4 000F1054 C0 23 01 3C */ lfs f1, 0x13c(r3) /* 800F40F8 000F1058 C0 63 01 38 */ lfs f3, 0x138(r3) /* 800F40FC 000F105C EC 21 00 72 */ fmuls f1, f1, f1 /* 800F4100 000F1060 C8 42 91 D0 */ lfd f2, lbl_805AAEF0@sda21(r2) /* 800F4104 000F1064 C0 A3 01 40 */ lfs f5, 0x140(r3) /* 800F4108 000F1068 EC C3 08 FA */ fmadds f6, f3, f3, f1 /* 800F410C 000F106C FC 06 10 40 */ fcmpo cr0, f6, f2 /* 800F4110 000F1070 40 81 00 58 */ ble lbl_800F4168 /* 800F4114 000F1074 FC 40 30 34 */ frsqrte f2, f6 /* 800F4118 000F1078 C8 82 92 78 */ lfd f4, lbl_805AAF98@sda21(r2) /* 800F411C 000F107C C8 62 92 98 */ lfd f3, lbl_805AAFB8@sda21(r2) /* 800F4120 000F1080 FC 22 00 B2 */ fmul f1, f2, f2 /* 800F4124 000F1084 FC 44 00 B2 */ fmul f2, f4, f2 /* 800F4128 000F1088 FC 26 18 7C */ fnmsub f1, f6, f1, f3 /* 800F412C 000F108C FC 42 00 72 */ fmul f2, f2, f1 /* 800F4130 000F1090 FC 22 00 B2 */ fmul f1, f2, f2 /* 800F4134 000F1094 FC 44 00 B2 */ fmul f2, f4, f2 /* 800F4138 000F1098 FC 26 18 7C */ fnmsub f1, f6, f1, f3 /* 800F413C 000F109C FC 42 00 72 */ fmul f2, f2, f1 /* 800F4140 000F10A0 FC 22 00 B2 */ fmul f1, f2, f2 /* 800F4144 000F10A4 FC 44 00 B2 */ fmul f2, f4, f2 /* 800F4148 000F10A8 FC 26 18 7C */ fnmsub f1, f6, f1, f3 /* 800F414C 000F10AC FC 42 00 72 */ fmul f2, f2, f1 /* 800F4150 000F10B0 FC 22 00 B2 */ fmul f1, f2, f2 /* 800F4154 000F10B4 FC 44 00 B2 */ fmul f2, f4, f2 /* 800F4158 000F10B8 FC 26 18 7C */ fnmsub f1, f6, f1, f3 /* 800F415C 000F10BC FC 22 00 72 */ fmul f1, f2, f1 /* 800F4160 000F10C0 FC 46 00 72 */ fmul f2, f6, f1 /* 800F4164 000F10C4 48 00 00 2C */ b lbl_800F4190 lbl_800F4168: /* 800F4168 000F10C8 FC 02 30 00 */ fcmpu cr0, f2, f6 /* 800F416C 000F10CC 40 82 00 08 */ bne lbl_800F4174 /* 800F4170 000F10D0 48 00 00 20 */ b lbl_800F4190 lbl_800F4174: /* 800F4174 000F10D4 FC 06 10 00 */ fcmpu cr0, f6, f2 /* 800F4178 000F10D8 41 82 00 10 */ beq lbl_800F4188 /* 800F417C 000F10DC 3C 60 80 5B */ lis r3, __float_nan@ha /* 800F4180 000F10E0 C0 43 8B A0 */ lfs f2, __float_nan@l(r3) /* 800F4184 000F10E4 48 00 00 0C */ b lbl_800F4190 lbl_800F4188: /* 800F4188 000F10E8 3C 60 80 5B */ lis r3, __float_huge@ha /* 800F418C 000F10EC C0 43 8B A4 */ lfs f2, __float_huge@l(r3) lbl_800F4190: /* 800F4190 000F10F0 FC 60 10 18 */ frsp f3, f2 /* 800F4194 000F10F4 C0 42 91 50 */ lfs f2, lbl_805AAE70@sda21(r2) /* 800F4198 000F10F8 C8 22 92 B0 */ lfd f1, lbl_805AAFD0@sda21(r2) /* 800F419C 000F10FC EC 43 10 28 */ fsubs f2, f3, f2 /* 800F41A0 000F1100 FC 40 12 10 */ fabs f2, f2 /* 800F41A4 000F1104 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 800F41A8 000F1108 40 80 00 E0 */ bge lbl_800F4288 /* 800F41AC 000F110C FC 40 2A 10 */ fabs f2, f5 /* 800F41B0 000F1110 C0 22 91 D8 */ lfs f1, lbl_805AAEF8@sda21(r2) /* 800F41B4 000F1114 FC 40 10 18 */ frsp f2, f2 /* 800F41B8 000F1118 FC 02 08 40 */ fcmpo cr0, f2, f1 /* 800F41BC 000F111C 40 80 00 CC */ bge lbl_800F4288 /* 800F41C0 000F1120 80 7F 08 70 */ lwz r3, 0x870(r31) /* 800F41C4 000F1124 7F E4 FB 78 */ mr r4, r31 /* 800F41C8 000F1128 4B F1 79 51 */ bl GetCurrentCamera__14CCameraManagerCFRC13CStateManager /* 800F41CC 000F112C C3 C3 00 48 */ lfs f30, 0x48(r3) /* 800F41D0 000F1130 C3 E3 00 38 */ lfs f31, 0x38(r3) /* 800F41D4 000F1134 EC 1E 07 B2 */ fmuls f0, f30, f30 /* 800F41D8 000F1138 C8 42 91 D0 */ lfd f2, lbl_805AAEF0@sda21(r2) /* 800F41DC 000F113C C3 A3 00 58 */ lfs f29, 0x58(r3) /* 800F41E0 000F1140 EC 9F 07 FA */ fmadds f4, f31, f31, f0 /* 800F41E4 000F1144 FC 04 10 40 */ fcmpo cr0, f4, f2 /* 800F41E8 000F1148 40 81 00 58 */ ble lbl_800F4240 /* 800F41EC 000F114C FC 20 20 34 */ frsqrte f1, f4 /* 800F41F0 000F1150 C8 62 92 78 */ lfd f3, lbl_805AAF98@sda21(r2) /* 800F41F4 000F1154 C8 42 92 98 */ lfd f2, lbl_805AAFB8@sda21(r2) /* 800F41F8 000F1158 FC 01 00 72 */ fmul f0, f1, f1 /* 800F41FC 000F115C FC 23 00 72 */ fmul f1, f3, f1 /* 800F4200 000F1160 FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 800F4204 000F1164 FC 21 00 32 */ fmul f1, f1, f0 /* 800F4208 000F1168 FC 01 00 72 */ fmul f0, f1, f1 /* 800F420C 000F116C FC 23 00 72 */ fmul f1, f3, f1 /* 800F4210 000F1170 FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 800F4214 000F1174 FC 21 00 32 */ fmul f1, f1, f0 /* 800F4218 000F1178 FC 01 00 72 */ fmul f0, f1, f1 /* 800F421C 000F117C FC 23 00 72 */ fmul f1, f3, f1 /* 800F4220 000F1180 FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 800F4224 000F1184 FC 21 00 32 */ fmul f1, f1, f0 /* 800F4228 000F1188 FC 01 00 72 */ fmul f0, f1, f1 /* 800F422C 000F118C FC 23 00 72 */ fmul f1, f3, f1 /* 800F4230 000F1190 FC 04 10 3C */ fnmsub f0, f4, f0, f2 /* 800F4234 000F1194 FC 01 00 32 */ fmul f0, f1, f0 /* 800F4238 000F1198 FC 44 00 32 */ fmul f2, f4, f0 /* 800F423C 000F119C 48 00 00 2C */ b lbl_800F4268 lbl_800F4240: /* 800F4240 000F11A0 FC 02 20 00 */ fcmpu cr0, f2, f4 /* 800F4244 000F11A4 40 82 00 08 */ bne lbl_800F424C /* 800F4248 000F11A8 48 00 00 20 */ b lbl_800F4268 lbl_800F424C: /* 800F424C 000F11AC FC 04 10 00 */ fcmpu cr0, f4, f2 /* 800F4250 000F11B0 41 82 00 10 */ beq lbl_800F4260 /* 800F4254 000F11B4 3C 60 80 5B */ lis r3, __float_nan@ha /* 800F4258 000F11B8 C0 43 8B A0 */ lfs f2, __float_nan@l(r3) /* 800F425C 000F11BC 48 00 00 0C */ b lbl_800F4268 lbl_800F4260: /* 800F4260 000F11C0 3C 60 80 5B */ lis r3, __float_huge@ha /* 800F4264 000F11C4 C0 43 8B A4 */ lfs f2, __float_huge@l(r3) lbl_800F4268: /* 800F4268 000F11C8 FC 20 E8 90 */ fmr f1, f29 /* 800F426C 000F11CC FC 40 10 18 */ frsp f2, f2 /* 800F4270 000F11D0 48 2A 09 FD */ bl atan2 /* 800F4274 000F11D4 FC 00 08 18 */ frsp f0, f1 /* 800F4278 000F11D8 C0 22 92 A4 */ lfs f1, lbl_805AAFC4@sda21(r2) /* 800F427C 000F11DC C0 42 92 A0 */ lfs f2, lbl_805AAFC0@sda21(r2) /* 800F4280 000F11E0 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F4284 000F11E4 EC 02 00 32 */ fmuls f0, f2, f0 lbl_800F4288: /* 800F4288 000F11E8 C0 22 91 B0 */ lfs f1, lbl_805AAED0@sda21(r2) /* 800F428C 000F11EC C0 62 91 5C */ lfs f3, lbl_805AAE7C@sda21(r2) /* 800F4290 000F11F0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F4294 000F11F4 40 81 00 1C */ ble lbl_800F42B0 /* 800F4298 000F11F8 EC 40 08 28 */ fsubs f2, f0, f1 /* 800F429C 000F11FC C0 02 92 B8 */ lfs f0, lbl_805AAFD8@sda21(r2) /* 800F42A0 000F1200 C0 22 92 BC */ lfs f1, lbl_805AAFDC@sda21(r2) /* 800F42A4 000F1204 EC 42 00 24 */ fdivs f2, f2, f0 /* 800F42A8 000F1208 EC 03 10 28 */ fsubs f0, f3, f2 /* 800F42AC 000F120C EC 61 00 BA */ fmadds f3, f1, f2, f0 lbl_800F42B0: /* 800F42B0 000F1210 C0 01 00 08 */ lfs f0, 8(r1) /* 800F42B4 000F1214 80 7E 00 00 */ lwz r3, 0(r30) /* 800F42B8 000F1218 EC 23 00 32 */ fmuls f1, f3, f0 /* 800F42BC 000F121C C0 03 00 E8 */ lfs f0, 0xe8(r3) /* 800F42C0 000F1220 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F42C4 000F1224 EC 40 07 F2 */ fmuls f2, f0, f31 /* 800F42C8 000F1228 EC 20 07 B2 */ fmuls f1, f0, f30 /* 800F42CC 000F122C EC 00 07 72 */ fmuls f0, f0, f29 /* 800F42D0 000F1230 D0 41 00 18 */ stfs f2, 0x18(r1) /* 800F42D4 000F1234 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800F42D8 000F1238 D0 01 00 20 */ stfs f0, 0x20(r1) /* 800F42DC 000F123C 4B F2 72 59 */ bl Identity__10CAxisAngleFv /* 800F42E0 000F1240 7C 65 1B 78 */ mr r5, r3 /* 800F42E4 000F1244 80 7E 00 00 */ lwz r3, 0(r30) /* 800F42E8 000F1248 38 81 00 18 */ addi r4, r1, 0x18 /* 800F42EC 000F124C 48 02 80 AD */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 800F42F0 000F1250 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F42F4 000F1254 38 61 00 24 */ addi r3, r1, 0x24 /* 800F42F8 000F1258 38 9E 19 24 */ addi r4, r30, 0x1924 /* 800F42FC 000F125C D0 1E 1D F4 */ stfs f0, 0x1df4(r30) /* 800F4300 000F1260 D0 1E 1D E8 */ stfs f0, 0x1de8(r30) /* 800F4304 000F1264 80 BE 00 00 */ lwz r5, 0(r30) /* 800F4308 000F1268 C0 45 00 60 */ lfs f2, 0x60(r5) /* 800F430C 000F126C C0 25 00 50 */ lfs f1, 0x50(r5) /* 800F4310 000F1270 C0 05 00 40 */ lfs f0, 0x40(r5) /* 800F4314 000F1274 D0 01 00 0C */ stfs f0, 0xc(r1) /* 800F4318 000F1278 D0 21 00 10 */ stfs f1, 0x10(r1) /* 800F431C 000F127C D0 41 00 14 */ stfs f2, 0x14(r1) /* 800F4320 000F1280 48 21 ED D5 */ bl BuildMatrix3f__12CTransform4fCFv /* 800F4324 000F1284 38 61 00 48 */ addi r3, r1, 0x48 /* 800F4328 000F1288 38 81 00 24 */ addi r4, r1, 0x24 /* 800F432C 000F128C 38 A1 00 0C */ addi r5, r1, 0xc /* 800F4330 000F1290 48 21 EF 49 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f /* 800F4334 000F1294 83 FE 00 00 */ lwz r31, 0(r30) /* 800F4338 000F1298 38 81 00 48 */ addi r4, r1, 0x48 /* 800F433C 000F129C 38 7F 00 34 */ addi r3, r31, 0x34 /* 800F4340 000F12A0 48 21 E8 01 */ bl __as__12CTransform4fFRC12CTransform4f /* 800F4344 000F12A4 88 1F 00 E4 */ lbz r0, 0xe4(r31) /* 800F4348 000F12A8 38 80 00 01 */ li r4, 1 /* 800F434C 000F12AC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b /* 800F4350 000F12B0 7F C3 F3 78 */ mr r3, r30 /* 800F4354 000F12B4 98 1F 00 E4 */ stb r0, 0xe4(r31) /* 800F4358 000F12B8 88 1F 00 E4 */ lbz r0, 0xe4(r31) /* 800F435C 000F12BC 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c /* 800F4360 000F12C0 98 1F 00 E4 */ stb r0, 0xe4(r31) /* 800F4364 000F12C4 88 1F 00 E4 */ lbz r0, 0xe4(r31) /* 800F4368 000F12C8 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d /* 800F436C 000F12CC 98 1F 00 E4 */ stb r0, 0xe4(r31) /* 800F4370 000F12D0 48 00 17 A9 */ bl SwitchToTire__10CMorphBallFv /* 800F4374 000F12D4 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 /* 800F4378 000F12D8 CB E1 00 B0 */ lfd f31, 0xb0(r1) /* 800F437C 000F12DC E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 /* 800F4380 000F12E0 CB C1 00 A0 */ lfd f30, 0xa0(r1) /* 800F4384 000F12E4 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 /* 800F4388 000F12E8 CB A1 00 90 */ lfd f29, 0x90(r1) /* 800F438C 000F12EC E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0 /* 800F4390 000F12F0 CB 81 00 80 */ lfd f28, 0x80(r1) /* 800F4394 000F12F4 83 E1 00 7C */ lwz r31, 0x7c(r1) /* 800F4398 000F12F8 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 800F439C 000F12FC 83 C1 00 78 */ lwz r30, 0x78(r1) /* 800F43A0 000F1300 7C 08 03 A6 */ mtlr r0 /* 800F43A4 000F1304 38 21 00 C0 */ addi r1, r1, 0xc0 /* 800F43A8 000F1308 4E 80 00 20 */ blr .global ComputeBoostBallMovement__10CMorphBallFRC11CFinalInputRC13CStateManagerf ComputeBoostBallMovement__10CMorphBallFRC11CFinalInputRC13CStateManagerf: /* 800F43AC 000F130C 94 21 FE B0 */ stwu r1, -0x150(r1) /* 800F43B0 000F1310 7C 08 02 A6 */ mflr r0 /* 800F43B4 000F1314 90 01 01 54 */ stw r0, 0x154(r1) /* 800F43B8 000F1318 DB E1 01 40 */ stfd f31, 0x140(r1) /* 800F43BC 000F131C F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 /* 800F43C0 000F1320 93 E1 01 3C */ stw r31, 0x13c(r1) /* 800F43C4 000F1324 93 C1 01 38 */ stw r30, 0x138(r1) /* 800F43C8 000F1328 93 A1 01 34 */ stw r29, 0x134(r1) /* 800F43CC 000F132C FF E0 08 90 */ fmr f31, f1 /* 800F43D0 000F1330 7C 7E 1B 78 */ mr r30, r3 /* 800F43D4 000F1334 7C 9D 23 78 */ mr r29, r4 /* 800F43D8 000F1338 7C BF 2B 78 */ mr r31, r5 /* 800F43DC 000F133C 48 00 48 BD */ bl IsMovementAllowed__10CMorphBallCFv /* 800F43E0 000F1340 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F43E4 000F1344 41 82 04 60 */ beq lbl_800F4844 /* 800F43E8 000F1348 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 800F43EC 000F134C 38 80 00 12 */ li r4, 0x12 /* 800F43F0 000F1350 80 63 00 00 */ lwz r3, 0(r3) /* 800F43F4 000F1354 4B F9 D6 CD */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 800F43F8 000F1358 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F43FC 000F135C 41 82 04 48 */ beq lbl_800F4844 /* 800F4400 000F1360 88 1E 1D E4 */ lbz r0, 0x1de4(r30) /* 800F4404 000F1364 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 800F4408 000F1368 40 82 00 18 */ bne lbl_800F4420 /* 800F440C 000F136C 7F C3 F3 78 */ mr r3, r30 /* 800F4410 000F1370 4B FF FA 11 */ bl CancelBoosting__10CMorphBallFv /* 800F4414 000F1374 7F C3 F3 78 */ mr r3, r30 /* 800F4418 000F1378 4B FF FA AD */ bl LeaveBoosting__10CMorphBallFv /* 800F441C 000F137C 48 00 04 28 */ b lbl_800F4844 lbl_800F4420: /* 800F4420 000F1380 88 1E 1D E4 */ lbz r0, 0x1de4(r30) /* 800F4424 000F1384 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800F4428 000F1388 40 82 03 A4 */ bne lbl_800F47CC /* 800F442C 000F138C C0 1E 1D EC */ lfs f0, 0x1dec(r30) /* 800F4430 000F1390 7F A4 EB 78 */ mr r4, r29 /* 800F4434 000F1394 38 60 00 0A */ li r3, 0xa /* 800F4438 000F1398 EC 00 F8 2A */ fadds f0, f0, f31 /* 800F443C 000F139C D0 1E 1D EC */ stfs f0, 0x1dec(r30) /* 800F4440 000F13A0 4B F1 84 35 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F4444 000F13A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F4448 000F13A8 41 82 00 C4 */ beq lbl_800F450C /* 800F444C 000F13AC 80 1E 18 7C */ lwz r0, 0x187c(r30) /* 800F4450 000F13B0 2C 00 00 01 */ cmpwi r0, 1 /* 800F4454 000F13B4 41 82 00 B8 */ beq lbl_800F450C /* 800F4458 000F13B8 80 1E 1E 20 */ lwz r0, 0x1e20(r30) /* 800F445C 000F13BC 2C 00 00 00 */ cmpwi r0, 0 /* 800F4460 000F13C0 40 82 00 84 */ bne lbl_800F44E4 /* 800F4464 000F13C4 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F4468 000F13C8 38 00 00 00 */ li r0, 0 /* 800F446C 000F13CC 38 C0 00 01 */ li r6, 1 /* 800F4470 000F13D0 38 60 FF FF */ li r3, -1 /* 800F4474 000F13D4 90 C1 01 08 */ stw r6, 0x108(r1) /* 800F4478 000F13D8 38 81 01 08 */ addi r4, r1, 0x108 /* 800F447C 000F13DC 38 A0 00 00 */ li r5, 0 /* 800F4480 000F13E0 90 61 01 0C */ stw r3, 0x10c(r1) /* 800F4484 000F13E4 D0 01 01 10 */ stfs f0, 0x110(r1) /* 800F4488 000F13E8 98 C1 01 14 */ stb r6, 0x114(r1) /* 800F448C 000F13EC 90 01 01 18 */ stw r0, 0x118(r1) /* 800F4490 000F13F0 90 01 01 1C */ stw r0, 0x11c(r1) /* 800F4494 000F13F4 98 01 01 20 */ stb r0, 0x120(r1) /* 800F4498 000F13F8 90 01 01 24 */ stw r0, 0x124(r1) /* 800F449C 000F13FC 90 01 01 28 */ stw r0, 0x128(r1) /* 800F44A0 000F1400 90 01 01 2C */ stw r0, 0x12c(r1) /* 800F44A4 000F1404 80 7E 00 58 */ lwz r3, 0x58(r30) /* 800F44A8 000F1408 80 63 00 10 */ lwz r3, 0x10(r3) /* 800F44AC 000F140C 4B F3 88 D1 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb /* 800F44B0 000F1410 38 00 00 01 */ li r0, 1 /* 800F44B4 000F1414 A9 02 C5 FA */ lha r8, kMedPriority__11CSfxManager@sda21(r2) /* 800F44B8 000F1418 90 1E 1E 20 */ stw r0, 0x1e20(r30) /* 800F44BC 000F141C 38 61 00 10 */ addi r3, r1, 0x10 /* 800F44C0 000F1420 81 42 C6 00 */ lwz r10, kAllAreas__11CSfxManager@sda21(r2) /* 800F44C4 000F1424 38 80 05 C5 */ li r4, 0x5c5 /* 800F44C8 000F1428 38 A0 00 7F */ li r5, 0x7f /* 800F44CC 000F142C 38 C0 00 40 */ li r6, 0x40 /* 800F44D0 000F1430 38 E0 00 01 */ li r7, 1 /* 800F44D4 000F1434 39 20 00 01 */ li r9, 1 /* 800F44D8 000F1438 48 1F 58 9D */ bl SfxStart__11CSfxManagerFUsssbsbi /* 800F44DC 000F143C 80 01 00 10 */ lwz r0, 0x10(r1) /* 800F44E0 000F1440 90 1E 1E 24 */ stw r0, 0x1e24(r30) lbl_800F44E4: /* 800F44E4 000F1444 C0 1E 1D E8 */ lfs f0, 0x1de8(r30) /* 800F44E8 000F1448 EC 00 F8 2A */ fadds f0, f0, f31 /* 800F44EC 000F144C D0 1E 1D E8 */ stfs f0, 0x1de8(r30) /* 800F44F0 000F1450 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F44F4 000F1454 C0 1E 1D E8 */ lfs f0, 0x1de8(r30) /* 800F44F8 000F1458 C0 23 02 10 */ lfs f1, 0x210(r3) /* 800F44FC 000F145C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F4500 000F1460 40 81 03 44 */ ble lbl_800F4844 /* 800F4504 000F1464 D0 3E 1D E8 */ stfs f1, 0x1de8(r30) /* 800F4508 000F1468 48 00 03 3C */ b lbl_800F4844 lbl_800F450C: /* 800F450C 000F146C 80 1E 1E 20 */ lwz r0, 0x1e20(r30) /* 800F4510 000F1470 2C 00 00 01 */ cmpwi r0, 1 /* 800F4514 000F1474 40 82 00 C4 */ bne lbl_800F45D8 /* 800F4518 000F1478 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F451C 000F147C 38 C0 00 00 */ li r6, 0 /* 800F4520 000F1480 38 60 FF FF */ li r3, -1 /* 800F4524 000F1484 38 00 00 01 */ li r0, 1 /* 800F4528 000F1488 90 C1 00 E0 */ stw r6, 0xe0(r1) /* 800F452C 000F148C 38 81 00 E0 */ addi r4, r1, 0xe0 /* 800F4530 000F1490 38 A0 00 00 */ li r5, 0 /* 800F4534 000F1494 90 61 00 E4 */ stw r3, 0xe4(r1) /* 800F4538 000F1498 D0 01 00 E8 */ stfs f0, 0xe8(r1) /* 800F453C 000F149C 98 01 00 EC */ stb r0, 0xec(r1) /* 800F4540 000F14A0 90 C1 00 F0 */ stw r6, 0xf0(r1) /* 800F4544 000F14A4 90 C1 00 F4 */ stw r6, 0xf4(r1) /* 800F4548 000F14A8 98 C1 00 F8 */ stb r6, 0xf8(r1) /* 800F454C 000F14AC 90 C1 00 FC */ stw r6, 0xfc(r1) /* 800F4550 000F14B0 90 C1 01 00 */ stw r6, 0x100(r1) /* 800F4554 000F14B4 90 C1 01 04 */ stw r6, 0x104(r1) /* 800F4558 000F14B8 80 7E 00 58 */ lwz r3, 0x58(r30) /* 800F455C 000F14BC 80 63 00 10 */ lwz r3, 0x10(r3) /* 800F4560 000F14C0 4B F3 88 1D */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb /* 800F4564 000F14C4 38 00 00 00 */ li r0, 0 /* 800F4568 000F14C8 38 61 00 0C */ addi r3, r1, 0xc /* 800F456C 000F14CC 90 1E 1E 20 */ stw r0, 0x1e20(r30) /* 800F4570 000F14D0 80 1E 1E 24 */ lwz r0, 0x1e24(r30) /* 800F4574 000F14D4 90 01 00 0C */ stw r0, 0xc(r1) /* 800F4578 000F14D8 48 1F 59 0D */ bl RemoveEmitter__11CSfxManagerF10CSfxHandle /* 800F457C 000F14DC 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F4580 000F14E0 C0 3E 1D E8 */ lfs f1, 0x1de8(r30) /* 800F4584 000F14E4 C0 03 02 18 */ lfs f0, 0x218(r3) /* 800F4588 000F14E8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F458C 000F14EC 4C 41 13 82 */ cror 2, 1, 2 /* 800F4590 000F14F0 40 82 00 48 */ bne lbl_800F45D8 /* 800F4594 000F14F4 80 9E 00 00 */ lwz r4, 0(r30) /* 800F4598 000F14F8 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F459C 000F14FC 38 C3 66 A0 */ addi r6, r3, sZeroVector__9CVector3f@l /* 800F45A0 000F1500 81 42 C6 00 */ lwz r10, kAllAreas__11CSfxManager@sda21(r2) /* 800F45A4 000F1504 C0 44 00 60 */ lfs f2, 0x60(r4) /* 800F45A8 000F1508 38 61 00 08 */ addi r3, r1, 8 /* 800F45AC 000F150C C0 24 00 50 */ lfs f1, 0x50(r4) /* 800F45B0 000F1510 38 A1 00 74 */ addi r5, r1, 0x74 /* 800F45B4 000F1514 C0 04 00 40 */ lfs f0, 0x40(r4) /* 800F45B8 000F1518 38 80 05 C4 */ li r4, 0x5c4 /* 800F45BC 000F151C 38 E0 00 01 */ li r7, 1 /* 800F45C0 000F1520 39 00 00 00 */ li r8, 0 /* 800F45C4 000F1524 D0 01 00 74 */ stfs f0, 0x74(r1) /* 800F45C8 000F1528 39 20 00 B4 */ li r9, 0xb4 /* 800F45CC 000F152C D0 21 00 78 */ stfs f1, 0x78(r1) /* 800F45D0 000F1530 D0 41 00 7C */ stfs f2, 0x7c(r1) /* 800F45D4 000F1534 48 1F 5C DD */ bl AddEmitter__11CSfxManagerFUsRC9CVector3fRC9CVector3fbbsi lbl_800F45D8: /* 800F45D8 000F1538 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F45DC 000F153C C0 3E 1D E8 */ lfs f1, 0x1de8(r30) /* 800F45E0 000F1540 C0 03 02 18 */ lfs f0, 0x218(r3) /* 800F45E4 000F1544 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F45E8 000F1548 4C 41 13 82 */ cror 2, 1, 2 /* 800F45EC 000F154C 40 82 01 C8 */ bne lbl_800F47B4 /* 800F45F0 000F1550 7F C3 F3 78 */ mr r3, r30 /* 800F45F4 000F1554 4B FF A9 B5 */ bl GetBallBoostState__10CMorphBallCFv /* 800F45F8 000F1558 2C 03 00 00 */ cmpwi r3, 0 /* 800F45FC 000F155C 40 82 00 90 */ bne lbl_800F468C /* 800F4600 000F1560 7F C3 F3 78 */ mr r3, r30 /* 800F4604 000F1564 4B FF D3 CD */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F4608 000F1568 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F460C 000F156C 40 82 00 10 */ bne lbl_800F461C /* 800F4610 000F1570 88 1E 1D F8 */ lbz r0, 0x1df8(r30) /* 800F4614 000F1574 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 800F4618 000F1578 41 82 00 14 */ beq lbl_800F462C lbl_800F461C: /* 800F461C 000F157C 7F C3 F3 78 */ mr r3, r30 /* 800F4620 000F1580 7F E4 FB 78 */ mr r4, r31 /* 800F4624 000F1584 4B FF F8 D5 */ bl EnterBoosting__10CMorphBallFR13CStateManager /* 800F4628 000F1588 48 00 02 1C */ b lbl_800F4844 lbl_800F462C: /* 800F462C 000F158C C0 5E 19 38 */ lfs f2, 0x1938(r30) /* 800F4630 000F1590 38 61 00 68 */ addi r3, r1, 0x68 /* 800F4634 000F1594 C0 3E 19 48 */ lfs f1, 0x1948(r30) /* 800F4638 000F1598 38 81 00 5C */ addi r4, r1, 0x5c /* 800F463C 000F159C C0 1E 19 28 */ lfs f0, 0x1928(r30) /* 800F4640 000F15A0 FC 40 10 50 */ fneg f2, f2 /* 800F4644 000F15A4 C0 62 92 C0 */ lfs f3, lbl_805AAFE0@sda21(r2) /* 800F4648 000F15A8 FC 20 08 50 */ fneg f1, f1 /* 800F464C 000F15AC FC 00 00 50 */ fneg f0, f0 /* 800F4650 000F15B0 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F4654 000F15B4 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F4658 000F15B8 EC 03 00 32 */ fmuls f0, f3, f0 /* 800F465C 000F15BC D0 41 00 60 */ stfs f2, 0x60(r1) /* 800F4660 000F15C0 D0 01 00 5C */ stfs f0, 0x5c(r1) /* 800F4664 000F15C4 D0 21 00 64 */ stfs f1, 0x64(r1) /* 800F4668 000F15C8 4B F2 6E D9 */ bl FromVector__10CAxisAngleFRC9CVector3f /* 800F466C 000F15CC 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800F4670 000F15D0 80 7E 00 00 */ lwz r3, 0(r30) /* 800F4674 000F15D4 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l /* 800F4678 000F15D8 38 A1 00 68 */ addi r5, r1, 0x68 /* 800F467C 000F15DC 48 02 7D 1D */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 800F4680 000F15E0 7F C3 F3 78 */ mr r3, r30 /* 800F4684 000F15E4 4B FF F7 9D */ bl CancelBoosting__10CMorphBallFv /* 800F4688 000F15E8 48 00 01 BC */ b lbl_800F4844 lbl_800F468C: /* 800F468C 000F15EC 7F C3 F3 78 */ mr r3, r30 /* 800F4690 000F15F0 4B FF A9 19 */ bl GetBallBoostState__10CMorphBallCFv /* 800F4694 000F15F4 2C 03 00 01 */ cmpwi r3, 1 /* 800F4698 000F15F8 40 82 01 AC */ bne lbl_800F4844 /* 800F469C 000F15FC 7F C4 F3 78 */ mr r4, r30 /* 800F46A0 000F1600 38 61 00 80 */ addi r3, r1, 0x80 /* 800F46A4 000F1604 48 00 20 51 */ bl GetBallToWorld__10CMorphBallCFv /* 800F46A8 000F1608 80 9E 00 00 */ lwz r4, 0(r30) /* 800F46AC 000F160C 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 800F46B0 000F1610 C0 A1 00 A4 */ lfs f5, 0xa4(r1) /* 800F46B4 000F1614 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l /* 800F46B8 000F1618 C0 E4 00 60 */ lfs f7, 0x60(r4) /* 800F46BC 000F161C 38 61 00 B0 */ addi r3, r1, 0xb0 /* 800F46C0 000F1620 C0 01 00 94 */ lfs f0, 0x94(r1) /* 800F46C4 000F1624 38 A1 00 44 */ addi r5, r1, 0x44 /* 800F46C8 000F1628 C0 C4 00 50 */ lfs f6, 0x50(r4) /* 800F46CC 000F162C EC 67 28 2A */ fadds f3, f7, f5 /* 800F46D0 000F1630 C0 24 00 40 */ lfs f1, 0x40(r4) /* 800F46D4 000F1634 38 81 00 50 */ addi r4, r1, 0x50 /* 800F46D8 000F1638 C0 41 00 84 */ lfs f2, 0x84(r1) /* 800F46DC 000F163C EC 86 00 2A */ fadds f4, f6, f0 /* 800F46E0 000F1640 D0 01 00 30 */ stfs f0, 0x30(r1) /* 800F46E4 000F1644 EC 01 10 2A */ fadds f0, f1, f2 /* 800F46E8 000F1648 D0 41 00 2C */ stfs f2, 0x2c(r1) /* 800F46EC 000F164C D0 A1 00 34 */ stfs f5, 0x34(r1) /* 800F46F0 000F1650 D0 21 00 38 */ stfs f1, 0x38(r1) /* 800F46F4 000F1654 D0 C1 00 3C */ stfs f6, 0x3c(r1) /* 800F46F8 000F1658 D0 E1 00 40 */ stfs f7, 0x40(r1) /* 800F46FC 000F165C D0 01 00 44 */ stfs f0, 0x44(r1) /* 800F4700 000F1660 D0 81 00 48 */ stfs f4, 0x48(r1) /* 800F4704 000F1664 D0 61 00 4C */ stfs f3, 0x4c(r1) /* 800F4708 000F1668 D0 21 00 50 */ stfs f1, 0x50(r1) /* 800F470C 000F166C D0 C1 00 54 */ stfs f6, 0x54(r1) /* 800F4710 000F1670 D0 E1 00 58 */ stfs f7, 0x58(r1) /* 800F4714 000F1674 48 21 F3 FD */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 800F4718 000F1678 83 FE 00 00 */ lwz r31, 0(r30) /* 800F471C 000F167C 38 81 00 B0 */ addi r4, r1, 0xb0 /* 800F4720 000F1680 38 7F 00 34 */ addi r3, r31, 0x34 /* 800F4724 000F1684 48 21 E4 1D */ bl __as__12CTransform4fFRC12CTransform4f /* 800F4728 000F1688 88 1F 00 E4 */ lbz r0, 0xe4(r31) /* 800F472C 000F168C 38 A0 00 01 */ li r5, 1 /* 800F4730 000F1690 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b /* 800F4734 000F1694 C0 62 92 C0 */ lfs f3, lbl_805AAFE0@sda21(r2) /* 800F4738 000F1698 98 1F 00 E4 */ stb r0, 0xe4(r31) /* 800F473C 000F169C 38 61 00 20 */ addi r3, r1, 0x20 /* 800F4740 000F16A0 38 81 00 14 */ addi r4, r1, 0x14 /* 800F4744 000F16A4 88 1F 00 E4 */ lbz r0, 0xe4(r31) /* 800F4748 000F16A8 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c /* 800F474C 000F16AC 98 1F 00 E4 */ stb r0, 0xe4(r31) /* 800F4750 000F16B0 88 1F 00 E4 */ lbz r0, 0xe4(r31) /* 800F4754 000F16B4 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d /* 800F4758 000F16B8 98 1F 00 E4 */ stb r0, 0xe4(r31) /* 800F475C 000F16BC 80 BE 00 00 */ lwz r5, 0(r30) /* 800F4760 000F16C0 C0 45 00 44 */ lfs f2, 0x44(r5) /* 800F4764 000F16C4 C0 25 00 54 */ lfs f1, 0x54(r5) /* 800F4768 000F16C8 C0 05 00 34 */ lfs f0, 0x34(r5) /* 800F476C 000F16CC FC 40 10 50 */ fneg f2, f2 /* 800F4770 000F16D0 FC 20 08 50 */ fneg f1, f1 /* 800F4774 000F16D4 FC 00 00 50 */ fneg f0, f0 /* 800F4778 000F16D8 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F477C 000F16DC EC 23 00 72 */ fmuls f1, f3, f1 /* 800F4780 000F16E0 EC 03 00 32 */ fmuls f0, f3, f0 /* 800F4784 000F16E4 D0 41 00 18 */ stfs f2, 0x18(r1) /* 800F4788 000F16E8 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800F478C 000F16EC D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800F4790 000F16F0 4B F2 6D B1 */ bl FromVector__10CAxisAngleFRC9CVector3f /* 800F4794 000F16F4 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800F4798 000F16F8 80 7E 00 00 */ lwz r3, 0(r30) /* 800F479C 000F16FC 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l /* 800F47A0 000F1700 38 A1 00 20 */ addi r5, r1, 0x20 /* 800F47A4 000F1704 48 02 7B F5 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 800F47A8 000F1708 7F C3 F3 78 */ mr r3, r30 /* 800F47AC 000F170C 4B FF F6 75 */ bl CancelBoosting__10CMorphBallFv /* 800F47B0 000F1710 48 00 00 94 */ b lbl_800F4844 lbl_800F47B4: /* 800F47B4 000F1714 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F47B8 000F1718 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F47BC 000F171C 40 81 00 88 */ ble lbl_800F4844 /* 800F47C0 000F1720 7F C3 F3 78 */ mr r3, r30 /* 800F47C4 000F1724 4B FF F6 5D */ bl CancelBoosting__10CMorphBallFv /* 800F47C8 000F1728 48 00 00 7C */ b lbl_800F4844 lbl_800F47CC: /* 800F47CC 000F172C C0 1E 1D F4 */ lfs f0, 0x1df4(r30) /* 800F47D0 000F1730 EC 00 F8 2A */ fadds f0, f0, f31 /* 800F47D4 000F1734 D0 1E 1D F4 */ stfs f0, 0x1df4(r30) /* 800F47D8 000F1738 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F47DC 000F173C C0 3E 1D F4 */ lfs f1, 0x1df4(r30) /* 800F47E0 000F1740 C0 03 02 0C */ lfs f0, 0x20c(r3) /* 800F47E4 000F1744 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F47E8 000F1748 40 81 00 0C */ ble lbl_800F47F4 /* 800F47EC 000F174C 7F C3 F3 78 */ mr r3, r30 /* 800F47F0 000F1750 4B FF F6 D5 */ bl LeaveBoosting__10CMorphBallFv lbl_800F47F4: /* 800F47F4 000F1754 7F C3 F3 78 */ mr r3, r30 /* 800F47F8 000F1758 4B FF D1 D9 */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F47FC 000F175C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F4800 000F1760 40 82 00 44 */ bne lbl_800F4844 /* 800F4804 000F1764 88 1E 1D F8 */ lbz r0, 0x1df8(r30) /* 800F4808 000F1768 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 800F480C 000F176C 40 82 00 38 */ bne lbl_800F4844 /* 800F4810 000F1770 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F4814 000F1774 C0 5E 1D F4 */ lfs f2, 0x1df4(r30) /* 800F4818 000F1778 C0 23 02 0C */ lfs f1, 0x20c(r3) /* 800F481C 000F177C C0 02 92 94 */ lfs f0, lbl_805AAFB4@sda21(r2) /* 800F4820 000F1780 EC 22 08 24 */ fdivs f1, f2, f1 /* 800F4824 000F1784 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F4828 000F1788 40 80 00 14 */ bge lbl_800F483C /* 800F482C 000F178C C0 22 92 58 */ lfs f1, lbl_805AAF78@sda21(r2) /* 800F4830 000F1790 7F C3 F3 78 */ mr r3, r30 /* 800F4834 000F1794 C0 42 92 4C */ lfs f2, lbl_805AAF6C@sda21(r2) /* 800F4838 000F1798 4B FF EC 65 */ bl DampLinearAndAngularVelocities__10CMorphBallFff lbl_800F483C: /* 800F483C 000F179C 7F C3 F3 78 */ mr r3, r30 /* 800F4840 000F17A0 4B FF F6 85 */ bl LeaveBoosting__10CMorphBallFv lbl_800F4844: /* 800F4844 000F17A4 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 /* 800F4848 000F17A8 80 01 01 54 */ lwz r0, 0x154(r1) /* 800F484C 000F17AC CB E1 01 40 */ lfd f31, 0x140(r1) /* 800F4850 000F17B0 83 E1 01 3C */ lwz r31, 0x13c(r1) /* 800F4854 000F17B4 83 C1 01 38 */ lwz r30, 0x138(r1) /* 800F4858 000F17B8 83 A1 01 34 */ lwz r29, 0x134(r1) /* 800F485C 000F17BC 7C 08 03 A6 */ mtlr r0 /* 800F4860 000F17C0 38 21 01 50 */ addi r1, r1, 0x150 /* 800F4864 000F17C4 4E 80 00 20 */ blr .global UpdateEffects__10CMorphBallFfR13CStateManager UpdateEffects__10CMorphBallFfR13CStateManager: /* 800F4868 000F17C8 94 21 FB 80 */ stwu r1, -0x480(r1) /* 800F486C 000F17CC 7C 08 02 A6 */ mflr r0 /* 800F4870 000F17D0 90 01 04 84 */ stw r0, 0x484(r1) /* 800F4874 000F17D4 DB E1 04 70 */ stfd f31, 0x470(r1) /* 800F4878 000F17D8 F3 E1 04 78 */ psq_st f31, 1144(r1), 0, qr0 /* 800F487C 000F17DC DB C1 04 60 */ stfd f30, 0x460(r1) /* 800F4880 000F17E0 F3 C1 04 68 */ psq_st f30, 1128(r1), 0, qr0 /* 800F4884 000F17E4 93 E1 04 5C */ stw r31, 0x45c(r1) /* 800F4888 000F17E8 93 C1 04 58 */ stw r30, 0x458(r1) /* 800F488C 000F17EC 93 A1 04 54 */ stw r29, 0x454(r1) /* 800F4890 000F17F0 93 81 04 50 */ stw r28, 0x450(r1) /* 800F4894 000F17F4 FF E0 08 90 */ fmr f31, f1 /* 800F4898 000F17F8 7C 7D 1B 78 */ mr r29, r3 /* 800F489C 000F17FC 7C 9E 23 78 */ mr r30, r4 /* 800F48A0 000F1800 38 61 02 70 */ addi r3, r1, 0x270 /* 800F48A4 000F1804 7F A4 EB 78 */ mr r4, r29 /* 800F48A8 000F1808 48 00 1F 05 */ bl GetSwooshToWorld__10CMorphBallCFv /* 800F48AC 000F180C 38 61 02 D0 */ addi r3, r1, 0x2d0 /* 800F48B0 000F1810 38 81 02 70 */ addi r4, r1, 0x270 /* 800F48B4 000F1814 48 21 E2 C1 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F48B8 000F1818 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F48BC 000F181C 38 61 01 44 */ addi r3, r1, 0x144 /* 800F48C0 000F1820 C0 22 91 E4 */ lfs f1, lbl_805AAF04@sda21(r2) /* 800F48C4 000F1824 38 81 02 D0 */ addi r4, r1, 0x2d0 /* 800F48C8 000F1828 D0 01 01 3C */ stfs f0, 0x13c(r1) /* 800F48CC 000F182C 38 A1 01 38 */ addi r5, r1, 0x138 /* 800F48D0 000F1830 D0 21 01 38 */ stfs f1, 0x138(r1) /* 800F48D4 000F1834 D0 01 01 40 */ stfs f0, 0x140(r1) /* 800F48D8 000F1838 48 21 E1 A9 */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800F48DC 000F183C C0 41 02 FC */ lfs f2, 0x2fc(r1) /* 800F48E0 000F1840 38 81 01 2C */ addi r4, r1, 0x12c /* 800F48E4 000F1844 C0 01 01 4C */ lfs f0, 0x14c(r1) /* 800F48E8 000F1848 C0 81 02 EC */ lfs f4, 0x2ec(r1) /* 800F48EC 000F184C C0 21 01 48 */ lfs f1, 0x148(r1) /* 800F48F0 000F1850 EC 02 00 2A */ fadds f0, f2, f0 /* 800F48F4 000F1854 C0 61 02 DC */ lfs f3, 0x2dc(r1) /* 800F48F8 000F1858 C0 41 01 44 */ lfs f2, 0x144(r1) /* 800F48FC 000F185C EC 24 08 2A */ fadds f1, f4, f1 /* 800F4900 000F1860 D0 01 01 34 */ stfs f0, 0x134(r1) /* 800F4904 000F1864 EC 03 10 2A */ fadds f0, f3, f2 /* 800F4908 000F1868 D0 21 01 30 */ stfs f1, 0x130(r1) /* 800F490C 000F186C D0 01 01 2C */ stfs f0, 0x12c(r1) /* 800F4910 000F1870 80 7D 19 B8 */ lwz r3, 0x19b8(r29) /* 800F4914 000F1874 81 83 00 00 */ lwz r12, 0(r3) /* 800F4918 000F1878 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800F491C 000F187C 7D 89 03 A6 */ mtctr r12 /* 800F4920 000F1880 4E 80 04 21 */ bctrl /* 800F4924 000F1884 83 FD 19 B8 */ lwz r31, 0x19b8(r29) /* 800F4928 000F1888 38 61 02 40 */ addi r3, r1, 0x240 /* 800F492C 000F188C 38 81 02 D0 */ addi r4, r1, 0x2d0 /* 800F4930 000F1890 48 21 E3 11 */ bl GetRotation__12CTransform4fCFv /* 800F4934 000F1894 7F E3 FB 78 */ mr r3, r31 /* 800F4938 000F1898 38 81 02 40 */ addi r4, r1, 0x240 /* 800F493C 000F189C 81 9F 00 00 */ lwz r12, 0(r31) /* 800F4940 000F18A0 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800F4944 000F18A4 7D 89 03 A6 */ mtctr r12 /* 800F4948 000F18A8 4E 80 04 21 */ bctrl /* 800F494C 000F18AC 80 7D 19 B8 */ lwz r3, 0x19b8(r29) /* 800F4950 000F18B0 38 80 00 01 */ li r4, 1 /* 800F4954 000F18B4 C8 22 91 D0 */ lfd f1, lbl_805AAEF0@sda21(r2) /* 800F4958 000F18B8 88 03 01 D0 */ lbz r0, 0x1d0(r3) /* 800F495C 000F18BC 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a /* 800F4960 000F18C0 98 03 01 D0 */ stb r0, 0x1d0(r3) /* 800F4964 000F18C4 80 7D 19 B8 */ lwz r3, 0x19b8(r29) /* 800F4968 000F18C8 81 83 00 00 */ lwz r12, 0(r3) /* 800F496C 000F18CC 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4970 000F18D0 7D 89 03 A6 */ mtctr r12 /* 800F4974 000F18D4 4E 80 04 21 */ bctrl /* 800F4978 000F18D8 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F497C 000F18DC 38 61 01 20 */ addi r3, r1, 0x120 /* 800F4980 000F18E0 C0 22 92 C4 */ lfs f1, lbl_805AAFE4@sda21(r2) /* 800F4984 000F18E4 38 81 02 D0 */ addi r4, r1, 0x2d0 /* 800F4988 000F18E8 D0 01 01 18 */ stfs f0, 0x118(r1) /* 800F498C 000F18EC 38 A1 01 14 */ addi r5, r1, 0x114 /* 800F4990 000F18F0 D0 21 01 14 */ stfs f1, 0x114(r1) /* 800F4994 000F18F4 D0 01 01 1C */ stfs f0, 0x11c(r1) /* 800F4998 000F18F8 48 21 E0 E9 */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800F499C 000F18FC C0 21 02 EC */ lfs f1, 0x2ec(r1) /* 800F49A0 000F1900 38 81 01 08 */ addi r4, r1, 0x108 /* 800F49A4 000F1904 C0 01 01 24 */ lfs f0, 0x124(r1) /* 800F49A8 000F1908 C0 61 02 FC */ lfs f3, 0x2fc(r1) /* 800F49AC 000F190C C0 41 01 28 */ lfs f2, 0x128(r1) /* 800F49B0 000F1910 EC 81 00 2A */ fadds f4, f1, f0 /* 800F49B4 000F1914 C0 21 02 DC */ lfs f1, 0x2dc(r1) /* 800F49B8 000F1918 C0 01 01 20 */ lfs f0, 0x120(r1) /* 800F49BC 000F191C EC 43 10 2A */ fadds f2, f3, f2 /* 800F49C0 000F1920 D0 81 01 0C */ stfs f4, 0x10c(r1) /* 800F49C4 000F1924 EC 01 00 2A */ fadds f0, f1, f0 /* 800F49C8 000F1928 D0 41 01 10 */ stfs f2, 0x110(r1) /* 800F49CC 000F192C D0 01 01 08 */ stfs f0, 0x108(r1) /* 800F49D0 000F1930 80 7D 19 BC */ lwz r3, 0x19bc(r29) /* 800F49D4 000F1934 81 83 00 00 */ lwz r12, 0(r3) /* 800F49D8 000F1938 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800F49DC 000F193C 7D 89 03 A6 */ mtctr r12 /* 800F49E0 000F1940 4E 80 04 21 */ bctrl /* 800F49E4 000F1944 83 FD 19 BC */ lwz r31, 0x19bc(r29) /* 800F49E8 000F1948 38 61 02 10 */ addi r3, r1, 0x210 /* 800F49EC 000F194C 38 81 02 D0 */ addi r4, r1, 0x2d0 /* 800F49F0 000F1950 48 21 E2 51 */ bl GetRotation__12CTransform4fCFv /* 800F49F4 000F1954 7F E3 FB 78 */ mr r3, r31 /* 800F49F8 000F1958 38 81 02 10 */ addi r4, r1, 0x210 /* 800F49FC 000F195C 81 9F 00 00 */ lwz r12, 0(r31) /* 800F4A00 000F1960 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800F4A04 000F1964 7D 89 03 A6 */ mtctr r12 /* 800F4A08 000F1968 4E 80 04 21 */ bctrl /* 800F4A0C 000F196C 80 7D 19 BC */ lwz r3, 0x19bc(r29) /* 800F4A10 000F1970 38 80 00 01 */ li r4, 1 /* 800F4A14 000F1974 C8 22 91 D0 */ lfd f1, lbl_805AAEF0@sda21(r2) /* 800F4A18 000F1978 88 03 01 D0 */ lbz r0, 0x1d0(r3) /* 800F4A1C 000F197C 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a /* 800F4A20 000F1980 98 03 01 D0 */ stb r0, 0x1d0(r3) /* 800F4A24 000F1984 80 7D 19 BC */ lwz r3, 0x19bc(r29) /* 800F4A28 000F1988 81 83 00 00 */ lwz r12, 0(r3) /* 800F4A2C 000F198C 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4A30 000F1990 7D 89 03 A6 */ mtctr r12 /* 800F4A34 000F1994 4E 80 04 21 */ bctrl /* 800F4A38 000F1998 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F4A3C 000F199C 38 61 00 FC */ addi r3, r1, 0xfc /* 800F4A40 000F19A0 C0 02 91 F4 */ lfs f0, lbl_805AAF14@sda21(r2) /* 800F4A44 000F19A4 38 81 02 D0 */ addi r4, r1, 0x2d0 /* 800F4A48 000F19A8 D0 21 00 F0 */ stfs f1, 0xf0(r1) /* 800F4A4C 000F19AC 38 A1 00 F0 */ addi r5, r1, 0xf0 /* 800F4A50 000F19B0 D0 21 00 F4 */ stfs f1, 0xf4(r1) /* 800F4A54 000F19B4 D0 01 00 F8 */ stfs f0, 0xf8(r1) /* 800F4A58 000F19B8 48 21 E0 29 */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800F4A5C 000F19BC C0 21 02 EC */ lfs f1, 0x2ec(r1) /* 800F4A60 000F19C0 38 81 00 E4 */ addi r4, r1, 0xe4 /* 800F4A64 000F19C4 C0 01 01 00 */ lfs f0, 0x100(r1) /* 800F4A68 000F19C8 C0 61 02 FC */ lfs f3, 0x2fc(r1) /* 800F4A6C 000F19CC C0 41 01 04 */ lfs f2, 0x104(r1) /* 800F4A70 000F19D0 EC 81 00 2A */ fadds f4, f1, f0 /* 800F4A74 000F19D4 C0 21 02 DC */ lfs f1, 0x2dc(r1) /* 800F4A78 000F19D8 C0 01 00 FC */ lfs f0, 0xfc(r1) /* 800F4A7C 000F19DC EC 43 10 2A */ fadds f2, f3, f2 /* 800F4A80 000F19E0 D0 81 00 E8 */ stfs f4, 0xe8(r1) /* 800F4A84 000F19E4 EC 01 00 2A */ fadds f0, f1, f0 /* 800F4A88 000F19E8 D0 41 00 EC */ stfs f2, 0xec(r1) /* 800F4A8C 000F19EC D0 01 00 E4 */ stfs f0, 0xe4(r1) /* 800F4A90 000F19F0 80 7D 19 C0 */ lwz r3, 0x19c0(r29) /* 800F4A94 000F19F4 81 83 00 00 */ lwz r12, 0(r3) /* 800F4A98 000F19F8 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800F4A9C 000F19FC 7D 89 03 A6 */ mtctr r12 /* 800F4AA0 000F1A00 4E 80 04 21 */ bctrl /* 800F4AA4 000F1A04 83 FD 19 C0 */ lwz r31, 0x19c0(r29) /* 800F4AA8 000F1A08 38 61 01 E0 */ addi r3, r1, 0x1e0 /* 800F4AAC 000F1A0C 38 81 02 D0 */ addi r4, r1, 0x2d0 /* 800F4AB0 000F1A10 48 21 E1 91 */ bl GetRotation__12CTransform4fCFv /* 800F4AB4 000F1A14 7F E3 FB 78 */ mr r3, r31 /* 800F4AB8 000F1A18 38 81 01 E0 */ addi r4, r1, 0x1e0 /* 800F4ABC 000F1A1C 81 9F 00 00 */ lwz r12, 0(r31) /* 800F4AC0 000F1A20 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800F4AC4 000F1A24 7D 89 03 A6 */ mtctr r12 /* 800F4AC8 000F1A28 4E 80 04 21 */ bctrl /* 800F4ACC 000F1A2C 80 7D 19 C0 */ lwz r3, 0x19c0(r29) /* 800F4AD0 000F1A30 38 80 00 01 */ li r4, 1 /* 800F4AD4 000F1A34 C8 22 91 D0 */ lfd f1, lbl_805AAEF0@sda21(r2) /* 800F4AD8 000F1A38 88 03 01 D0 */ lbz r0, 0x1d0(r3) /* 800F4ADC 000F1A3C 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a /* 800F4AE0 000F1A40 98 03 01 D0 */ stb r0, 0x1d0(r3) /* 800F4AE4 000F1A44 80 7D 19 C0 */ lwz r3, 0x19c0(r29) /* 800F4AE8 000F1A48 81 83 00 00 */ lwz r12, 0(r3) /* 800F4AEC 000F1A4C 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4AF0 000F1A50 7D 89 03 A6 */ mtctr r12 /* 800F4AF4 000F1A54 4E 80 04 21 */ bctrl /* 800F4AF8 000F1A58 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F4AFC 000F1A5C 38 61 00 D8 */ addi r3, r1, 0xd8 /* 800F4B00 000F1A60 C0 02 92 C8 */ lfs f0, lbl_805AAFE8@sda21(r2) /* 800F4B04 000F1A64 38 81 02 D0 */ addi r4, r1, 0x2d0 /* 800F4B08 000F1A68 D0 21 00 CC */ stfs f1, 0xcc(r1) /* 800F4B0C 000F1A6C 38 A1 00 CC */ addi r5, r1, 0xcc /* 800F4B10 000F1A70 D0 21 00 D0 */ stfs f1, 0xd0(r1) /* 800F4B14 000F1A74 D0 01 00 D4 */ stfs f0, 0xd4(r1) /* 800F4B18 000F1A78 48 21 DF 69 */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800F4B1C 000F1A7C C0 21 02 EC */ lfs f1, 0x2ec(r1) /* 800F4B20 000F1A80 38 81 00 C0 */ addi r4, r1, 0xc0 /* 800F4B24 000F1A84 C0 01 00 DC */ lfs f0, 0xdc(r1) /* 800F4B28 000F1A88 C0 61 02 FC */ lfs f3, 0x2fc(r1) /* 800F4B2C 000F1A8C C0 41 00 E0 */ lfs f2, 0xe0(r1) /* 800F4B30 000F1A90 EC 81 00 2A */ fadds f4, f1, f0 /* 800F4B34 000F1A94 C0 21 02 DC */ lfs f1, 0x2dc(r1) /* 800F4B38 000F1A98 C0 01 00 D8 */ lfs f0, 0xd8(r1) /* 800F4B3C 000F1A9C EC 43 10 2A */ fadds f2, f3, f2 /* 800F4B40 000F1AA0 D0 81 00 C4 */ stfs f4, 0xc4(r1) /* 800F4B44 000F1AA4 EC 01 00 2A */ fadds f0, f1, f0 /* 800F4B48 000F1AA8 D0 41 00 C8 */ stfs f2, 0xc8(r1) /* 800F4B4C 000F1AAC D0 01 00 C0 */ stfs f0, 0xc0(r1) /* 800F4B50 000F1AB0 80 7D 19 C4 */ lwz r3, 0x19c4(r29) /* 800F4B54 000F1AB4 81 83 00 00 */ lwz r12, 0(r3) /* 800F4B58 000F1AB8 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800F4B5C 000F1ABC 7D 89 03 A6 */ mtctr r12 /* 800F4B60 000F1AC0 4E 80 04 21 */ bctrl /* 800F4B64 000F1AC4 83 FD 19 C4 */ lwz r31, 0x19c4(r29) /* 800F4B68 000F1AC8 38 61 01 B0 */ addi r3, r1, 0x1b0 /* 800F4B6C 000F1ACC 38 81 02 D0 */ addi r4, r1, 0x2d0 /* 800F4B70 000F1AD0 48 21 E0 D1 */ bl GetRotation__12CTransform4fCFv /* 800F4B74 000F1AD4 7F E3 FB 78 */ mr r3, r31 /* 800F4B78 000F1AD8 38 81 01 B0 */ addi r4, r1, 0x1b0 /* 800F4B7C 000F1ADC 81 9F 00 00 */ lwz r12, 0(r31) /* 800F4B80 000F1AE0 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800F4B84 000F1AE4 7D 89 03 A6 */ mtctr r12 /* 800F4B88 000F1AE8 4E 80 04 21 */ bctrl /* 800F4B8C 000F1AEC 80 7D 19 C4 */ lwz r3, 0x19c4(r29) /* 800F4B90 000F1AF0 38 80 00 01 */ li r4, 1 /* 800F4B94 000F1AF4 C8 22 91 D0 */ lfd f1, lbl_805AAEF0@sda21(r2) /* 800F4B98 000F1AF8 88 03 01 D0 */ lbz r0, 0x1d0(r3) /* 800F4B9C 000F1AFC 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a /* 800F4BA0 000F1B00 98 03 01 D0 */ stb r0, 0x1d0(r3) /* 800F4BA4 000F1B04 80 7D 19 C4 */ lwz r3, 0x19c4(r29) /* 800F4BA8 000F1B08 81 83 00 00 */ lwz r12, 0(r3) /* 800F4BAC 000F1B0C 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4BB0 000F1B10 7D 89 03 A6 */ mtctr r12 /* 800F4BB4 000F1B14 4E 80 04 21 */ bctrl /* 800F4BB8 000F1B18 C0 41 02 DC */ lfs f2, 0x2dc(r1) /* 800F4BBC 000F1B1C 38 81 00 B4 */ addi r4, r1, 0xb4 /* 800F4BC0 000F1B20 C0 21 02 EC */ lfs f1, 0x2ec(r1) /* 800F4BC4 000F1B24 C0 01 02 FC */ lfs f0, 0x2fc(r1) /* 800F4BC8 000F1B28 D0 41 00 B4 */ stfs f2, 0xb4(r1) /* 800F4BCC 000F1B2C D0 21 00 B8 */ stfs f1, 0xb8(r1) /* 800F4BD0 000F1B30 D0 01 00 BC */ stfs f0, 0xbc(r1) /* 800F4BD4 000F1B34 80 7D 19 C8 */ lwz r3, 0x19c8(r29) /* 800F4BD8 000F1B38 81 83 00 00 */ lwz r12, 0(r3) /* 800F4BDC 000F1B3C 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800F4BE0 000F1B40 7D 89 03 A6 */ mtctr r12 /* 800F4BE4 000F1B44 4E 80 04 21 */ bctrl /* 800F4BE8 000F1B48 83 FD 19 C8 */ lwz r31, 0x19c8(r29) /* 800F4BEC 000F1B4C 38 61 01 80 */ addi r3, r1, 0x180 /* 800F4BF0 000F1B50 38 81 02 D0 */ addi r4, r1, 0x2d0 /* 800F4BF4 000F1B54 48 21 E0 4D */ bl GetRotation__12CTransform4fCFv /* 800F4BF8 000F1B58 7F E3 FB 78 */ mr r3, r31 /* 800F4BFC 000F1B5C 38 81 01 80 */ addi r4, r1, 0x180 /* 800F4C00 000F1B60 81 9F 00 00 */ lwz r12, 0(r31) /* 800F4C04 000F1B64 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800F4C08 000F1B68 7D 89 03 A6 */ mtctr r12 /* 800F4C0C 000F1B6C 4E 80 04 21 */ bctrl /* 800F4C10 000F1B70 80 7D 19 C8 */ lwz r3, 0x19c8(r29) /* 800F4C14 000F1B74 38 80 00 01 */ li r4, 1 /* 800F4C18 000F1B78 C8 22 91 D0 */ lfd f1, lbl_805AAEF0@sda21(r2) /* 800F4C1C 000F1B7C 88 03 01 D0 */ lbz r0, 0x1d0(r3) /* 800F4C20 000F1B80 50 80 2E B4 */ rlwimi r0, r4, 5, 0x1a, 0x1a /* 800F4C24 000F1B84 98 03 01 D0 */ stb r0, 0x1d0(r3) /* 800F4C28 000F1B88 80 7D 19 C8 */ lwz r3, 0x19c8(r29) /* 800F4C2C 000F1B8C 81 83 00 00 */ lwz r12, 0(r3) /* 800F4C30 000F1B90 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4C34 000F1B94 7D 89 03 A6 */ mtctr r12 /* 800F4C38 000F1B98 4E 80 04 21 */ bctrl /* 800F4C3C 000F1B9C 80 7D 19 CC */ lwz r3, 0x19cc(r29) /* 800F4C40 000F1BA0 FC 20 F8 90 */ fmr f1, f31 /* 800F4C44 000F1BA4 81 83 00 00 */ lwz r12, 0(r3) /* 800F4C48 000F1BA8 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4C4C 000F1BAC 7D 89 03 A6 */ mtctr r12 /* 800F4C50 000F1BB0 4E 80 04 21 */ bctrl /* 800F4C54 000F1BB4 3B FD 1B CC */ addi r31, r29, 0x1bcc /* 800F4C58 000F1BB8 FC 20 F8 90 */ fmr f1, f31 /* 800F4C5C 000F1BBC 80 7D 1C 08 */ lwz r3, 0x1c08(r29) /* 800F4C60 000F1BC0 81 83 00 00 */ lwz r12, 0(r3) /* 800F4C64 000F1BC4 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4C68 000F1BC8 7D 89 03 A6 */ mtctr r12 /* 800F4C6C 000F1BCC 4E 80 04 21 */ bctrl /* 800F4C70 000F1BD0 80 7D 00 00 */ lwz r3, 0(r29) /* 800F4C74 000F1BD4 3B 80 00 00 */ li r28, 0 /* 800F4C78 000F1BD8 7F 84 E3 78 */ mr r4, r28 /* 800F4C7C 000F1BDC 80 63 02 58 */ lwz r3, 0x258(r3) /* 800F4C80 000F1BE0 7F 80 E3 78 */ mr r0, r28 /* 800F4C84 000F1BE4 2C 03 00 00 */ cmpwi r3, 0 /* 800F4C88 000F1BE8 40 82 00 18 */ bne lbl_800F4CA0 /* 800F4C8C 000F1BEC 80 7E 08 50 */ lwz r3, 0x850(r30) /* 800F4C90 000F1BF0 80 63 00 C4 */ lwz r3, 0xc4(r3) /* 800F4C94 000F1BF4 2C 03 00 02 */ cmpwi r3, 2 /* 800F4C98 000F1BF8 40 82 00 08 */ bne lbl_800F4CA0 /* 800F4C9C 000F1BFC 38 00 00 01 */ li r0, 1 lbl_800F4CA0: /* 800F4CA0 000F1C00 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 800F4CA4 000F1C04 41 82 00 1C */ beq lbl_800F4CC0 /* 800F4CA8 000F1C08 80 7E 08 80 */ lwz r3, 0x880(r30) /* 800F4CAC 000F1C0C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F4CB0 000F1C10 C0 23 00 30 */ lfs f1, 0x30(r3) /* 800F4CB4 000F1C14 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F4CB8 000F1C18 40 81 00 08 */ ble lbl_800F4CC0 /* 800F4CBC 000F1C1C 38 80 00 01 */ li r4, 1 lbl_800F4CC0: /* 800F4CC0 000F1C20 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 800F4CC4 000F1C24 41 82 00 18 */ beq lbl_800F4CDC /* 800F4CC8 000F1C28 80 7E 08 80 */ lwz r3, 0x880(r30) /* 800F4CCC 000F1C2C 88 03 00 24 */ lbz r0, 0x24(r3) /* 800F4CD0 000F1C30 28 00 00 00 */ cmplwi r0, 0 /* 800F4CD4 000F1C34 41 82 00 08 */ beq lbl_800F4CDC /* 800F4CD8 000F1C38 3B 80 00 01 */ li r28, 1 lbl_800F4CDC: /* 800F4CDC 000F1C3C 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 800F4CE0 000F1C40 7F 84 E3 78 */ mr r4, r28 /* 800F4CE4 000F1C44 81 83 00 00 */ lwz r12, 0(r3) /* 800F4CE8 000F1C48 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F4CEC 000F1C4C 7D 89 03 A6 */ mtctr r12 /* 800F4CF0 000F1C50 4E 80 04 21 */ bctrl /* 800F4CF4 000F1C54 80 7D 00 00 */ lwz r3, 0(r29) /* 800F4CF8 000F1C58 C3 C3 04 FC */ lfs f30, 0x4fc(r3) /* 800F4CFC 000F1C5C 48 19 0C D5 */ bl GetBallMaxVelocity__7CPlayerCFv /* 800F4D00 000F1C60 80 7E 08 80 */ lwz r3, 0x880(r30) /* 800F4D04 000F1C64 C0 62 91 D8 */ lfs f3, lbl_805AAEF8@sda21(r2) /* 800F4D08 000F1C68 C0 43 00 30 */ lfs f2, 0x30(r3) /* 800F4D0C 000F1C6C C0 0D 88 8C */ lfs f0, lbl_805A744C@sda21(r13) /* 800F4D10 000F1C70 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F4D14 000F1C74 EC 42 07 B2 */ fmuls f2, f2, f30 /* 800F4D18 000F1C78 EC 22 08 24 */ fdivs f1, f2, f1 /* 800F4D1C 000F1C7C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F4D20 000F1C80 D0 21 00 48 */ stfs f1, 0x48(r1) /* 800F4D24 000F1C84 40 80 00 0C */ bge lbl_800F4D30 /* 800F4D28 000F1C88 38 8D 88 8C */ addi r4, r13, lbl_805A744C@sda21 /* 800F4D2C 000F1C8C 48 00 00 08 */ b lbl_800F4D34 lbl_800F4D30: /* 800F4D30 000F1C90 38 81 00 48 */ addi r4, r1, 0x48 lbl_800F4D34: /* 800F4D34 000F1C94 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 800F4D38 000F1C98 C0 24 00 00 */ lfs f1, 0(r4) /* 800F4D3C 000F1C9C 81 83 00 00 */ lwz r12, 0(r3) /* 800F4D40 000F1CA0 81 8C 00 34 */ lwz r12, 0x34(r12) /* 800F4D44 000F1CA4 7D 89 03 A6 */ mtctr r12 /* 800F4D48 000F1CA8 4E 80 04 21 */ bctrl /* 800F4D4C 000F1CAC 80 7D 00 00 */ lwz r3, 0(r29) /* 800F4D50 000F1CB0 38 81 00 A8 */ addi r4, r1, 0xa8 /* 800F4D54 000F1CB4 C0 43 00 60 */ lfs f2, 0x60(r3) /* 800F4D58 000F1CB8 C0 23 00 50 */ lfs f1, 0x50(r3) /* 800F4D5C 000F1CBC C0 03 00 40 */ lfs f0, 0x40(r3) /* 800F4D60 000F1CC0 D0 01 00 A8 */ stfs f0, 0xa8(r1) /* 800F4D64 000F1CC4 D0 21 00 AC */ stfs f1, 0xac(r1) /* 800F4D68 000F1CC8 D0 41 00 B0 */ stfs f2, 0xb0(r1) /* 800F4D6C 000F1CCC 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 800F4D70 000F1CD0 81 83 00 00 */ lwz r12, 0(r3) /* 800F4D74 000F1CD4 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800F4D78 000F1CD8 7D 89 03 A6 */ mtctr r12 /* 800F4D7C 000F1CDC 4E 80 04 21 */ bctrl /* 800F4D80 000F1CE0 57 80 06 3F */ clrlwi. r0, r28, 0x18 /* 800F4D84 000F1CE4 41 82 00 8C */ beq lbl_800F4E10 /* 800F4D88 000F1CE8 80 FD 00 00 */ lwz r7, 0(r29) /* 800F4D8C 000F1CEC 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 800F4D90 000F1CF0 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l /* 800F4D94 000F1CF4 38 81 00 9C */ addi r4, r1, 0x9c /* 800F4D98 000F1CF8 C0 A7 00 60 */ lfs f5, 0x60(r7) /* 800F4D9C 000F1CFC 38 61 01 50 */ addi r3, r1, 0x150 /* 800F4DA0 000F1D00 C0 87 00 50 */ lfs f4, 0x50(r7) /* 800F4DA4 000F1D04 38 A1 00 84 */ addi r5, r1, 0x84 /* 800F4DA8 000F1D08 C0 67 00 40 */ lfs f3, 0x40(r7) /* 800F4DAC 000F1D0C D0 81 00 94 */ stfs f4, 0x94(r1) /* 800F4DB0 000F1D10 D0 61 00 84 */ stfs f3, 0x84(r1) /* 800F4DB4 000F1D14 D0 81 00 88 */ stfs f4, 0x88(r1) /* 800F4DB8 000F1D18 D0 A1 00 8C */ stfs f5, 0x8c(r1) /* 800F4DBC 000F1D1C C0 47 05 10 */ lfs f2, 0x510(r7) /* 800F4DC0 000F1D20 C0 27 05 14 */ lfs f1, 0x514(r7) /* 800F4DC4 000F1D24 C0 07 05 0C */ lfs f0, 0x50c(r7) /* 800F4DC8 000F1D28 EC 44 10 2A */ fadds f2, f4, f2 /* 800F4DCC 000F1D2C EC 25 08 2A */ fadds f1, f5, f1 /* 800F4DD0 000F1D30 D0 61 00 90 */ stfs f3, 0x90(r1) /* 800F4DD4 000F1D34 EC 03 00 2A */ fadds f0, f3, f0 /* 800F4DD8 000F1D38 D0 A1 00 98 */ stfs f5, 0x98(r1) /* 800F4DDC 000F1D3C D0 01 00 9C */ stfs f0, 0x9c(r1) /* 800F4DE0 000F1D40 D0 41 00 A0 */ stfs f2, 0xa0(r1) /* 800F4DE4 000F1D44 D0 21 00 A4 */ stfs f1, 0xa4(r1) /* 800F4DE8 000F1D48 48 21 ED 29 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 800F4DEC 000F1D4C 38 61 02 A0 */ addi r3, r1, 0x2a0 /* 800F4DF0 000F1D50 38 81 01 50 */ addi r4, r1, 0x150 /* 800F4DF4 000F1D54 48 21 DD 81 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F4DF8 000F1D58 80 7F 00 3C */ lwz r3, 0x3c(r31) /* 800F4DFC 000F1D5C 38 81 02 A0 */ addi r4, r1, 0x2a0 /* 800F4E00 000F1D60 81 83 00 00 */ lwz r12, 0(r3) /* 800F4E04 000F1D64 81 8C 00 14 */ lwz r12, 0x14(r12) /* 800F4E08 000F1D68 7D 89 03 A6 */ mtctr r12 /* 800F4E0C 000F1D6C 4E 80 04 21 */ bctrl lbl_800F4E10: /* 800F4E10 000F1D70 80 1D 1C 0C */ lwz r0, 0x1c0c(r29) /* 800F4E14 000F1D74 2C 00 FF FF */ cmpwi r0, -1 /* 800F4E18 000F1D78 41 82 00 24 */ beq lbl_800F4E3C /* 800F4E1C 000F1D7C 54 03 18 38 */ slwi r3, r0, 3 /* 800F4E20 000F1D80 FC 20 F8 90 */ fmr f1, f31 /* 800F4E24 000F1D84 38 03 00 04 */ addi r0, r3, 4 /* 800F4E28 000F1D88 7C 7F 00 2E */ lwzx r3, r31, r0 /* 800F4E2C 000F1D8C 81 83 00 00 */ lwz r12, 0(r3) /* 800F4E30 000F1D90 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4E34 000F1D94 7D 89 03 A6 */ mtctr r12 /* 800F4E38 000F1D98 4E 80 04 21 */ bctrl lbl_800F4E3C: /* 800F4E3C 000F1D9C 80 7D 1E 38 */ lwz r3, 0x1e38(r29) /* 800F4E40 000F1DA0 2C 03 00 00 */ cmpwi r3, 0 /* 800F4E44 000F1DA4 40 81 00 30 */ ble lbl_800F4E74 /* 800F4E48 000F1DA8 38 03 FF FF */ addi r0, r3, -1 /* 800F4E4C 000F1DAC 90 1D 1E 38 */ stw r0, 0x1e38(r29) /* 800F4E50 000F1DB0 80 1D 1E 38 */ lwz r0, 0x1e38(r29) /* 800F4E54 000F1DB4 2C 00 00 00 */ cmpwi r0, 0 /* 800F4E58 000F1DB8 41 81 00 1C */ bgt lbl_800F4E74 /* 800F4E5C 000F1DBC 80 7D 19 CC */ lwz r3, 0x19cc(r29) /* 800F4E60 000F1DC0 38 80 00 00 */ li r4, 0 /* 800F4E64 000F1DC4 81 83 00 00 */ lwz r12, 0(r3) /* 800F4E68 000F1DC8 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F4E6C 000F1DCC 7D 89 03 A6 */ mtctr r12 /* 800F4E70 000F1DD0 4E 80 04 21 */ bctrl lbl_800F4E74: /* 800F4E74 000F1DD4 C0 41 02 DC */ lfs f2, 0x2dc(r1) /* 800F4E78 000F1DD8 38 81 00 78 */ addi r4, r1, 0x78 /* 800F4E7C 000F1DDC C0 21 02 EC */ lfs f1, 0x2ec(r1) /* 800F4E80 000F1DE0 C0 01 02 FC */ lfs f0, 0x2fc(r1) /* 800F4E84 000F1DE4 D0 41 00 78 */ stfs f2, 0x78(r1) /* 800F4E88 000F1DE8 D0 21 00 7C */ stfs f1, 0x7c(r1) /* 800F4E8C 000F1DEC D0 01 00 80 */ stfs f0, 0x80(r1) /* 800F4E90 000F1DF0 80 7D 19 D0 */ lwz r3, 0x19d0(r29) /* 800F4E94 000F1DF4 81 83 00 00 */ lwz r12, 0(r3) /* 800F4E98 000F1DF8 81 8C 00 20 */ lwz r12, 0x20(r12) /* 800F4E9C 000F1DFC 7D 89 03 A6 */ mtctr r12 /* 800F4EA0 000F1E00 4E 80 04 21 */ bctrl /* 800F4EA4 000F1E04 80 7D 19 D0 */ lwz r3, 0x19d0(r29) /* 800F4EA8 000F1E08 FC 20 F8 90 */ fmr f1, f31 /* 800F4EAC 000F1E0C 81 83 00 00 */ lwz r12, 0(r3) /* 800F4EB0 000F1E10 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4EB4 000F1E14 7D 89 03 A6 */ mtctr r12 /* 800F4EB8 000F1E18 4E 80 04 21 */ bctrl /* 800F4EBC 000F1E1C C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F4EC0 000F1E20 C0 1D 1D E8 */ lfs f0, 0x1de8(r29) /* 800F4EC4 000F1E24 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F4EC8 000F1E28 40 82 00 34 */ bne lbl_800F4EFC /* 800F4ECC 000F1E2C C0 1D 1D F4 */ lfs f0, 0x1df4(r29) /* 800F4ED0 000F1E30 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F4ED4 000F1E34 40 82 00 28 */ bne lbl_800F4EFC /* 800F4ED8 000F1E38 38 00 00 00 */ li r0, 0 /* 800F4EDC 000F1E3C 38 81 00 44 */ addi r4, r1, 0x44 /* 800F4EE0 000F1E40 90 01 00 44 */ stw r0, 0x44(r1) /* 800F4EE4 000F1E44 80 7D 19 D8 */ lwz r3, 0x19d8(r29) /* 800F4EE8 000F1E48 81 83 00 00 */ lwz r12, 0(r3) /* 800F4EEC 000F1E4C 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F4EF0 000F1E50 7D 89 03 A6 */ mtctr r12 /* 800F4EF4 000F1E54 4E 80 04 21 */ bctrl /* 800F4EF8 000F1E58 48 00 00 E8 */ b lbl_800F4FE0 lbl_800F4EFC: /* 800F4EFC 000F1E5C C0 41 02 DC */ lfs f2, 0x2dc(r1) /* 800F4F00 000F1E60 38 81 00 6C */ addi r4, r1, 0x6c /* 800F4F04 000F1E64 C0 21 02 EC */ lfs f1, 0x2ec(r1) /* 800F4F08 000F1E68 C0 01 02 FC */ lfs f0, 0x2fc(r1) /* 800F4F0C 000F1E6C D0 41 00 6C */ stfs f2, 0x6c(r1) /* 800F4F10 000F1E70 D0 21 00 70 */ stfs f1, 0x70(r1) /* 800F4F14 000F1E74 D0 01 00 74 */ stfs f0, 0x74(r1) /* 800F4F18 000F1E78 80 7D 19 D8 */ lwz r3, 0x19d8(r29) /* 800F4F1C 000F1E7C 81 83 00 00 */ lwz r12, 0(r3) /* 800F4F20 000F1E80 81 8C 00 20 */ lwz r12, 0x20(r12) /* 800F4F24 000F1E84 7D 89 03 A6 */ mtctr r12 /* 800F4F28 000F1E88 4E 80 04 21 */ bctrl /* 800F4F2C 000F1E8C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F4F30 000F1E90 C0 5D 1D F4 */ lfs f2, 0x1df4(r29) /* 800F4F34 000F1E94 FC 00 10 00 */ fcmpu cr0, f0, f2 /* 800F4F38 000F1E98 40 82 00 18 */ bne lbl_800F4F50 /* 800F4F3C 000F1E9C 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F4F40 000F1EA0 C0 3D 1D E8 */ lfs f1, 0x1de8(r29) /* 800F4F44 000F1EA4 C0 03 02 10 */ lfs f0, 0x210(r3) /* 800F4F48 000F1EA8 EF C1 00 24 */ fdivs f30, f1, f0 /* 800F4F4C 000F1EAC 48 00 00 18 */ b lbl_800F4F64 lbl_800F4F50: /* 800F4F50 000F1EB0 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F4F54 000F1EB4 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F4F58 000F1EB8 C0 03 02 0C */ lfs f0, 0x20c(r3) /* 800F4F5C 000F1EBC EC 02 00 24 */ fdivs f0, f2, f0 /* 800F4F60 000F1EC0 EF C1 00 28 */ fsubs f30, f1, f0 lbl_800F4F64: /* 800F4F64 000F1EC4 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F4F68 000F1EC8 38 61 00 38 */ addi r3, r1, 0x38 /* 800F4F6C 000F1ECC 83 9D 19 D8 */ lwz r28, 0x19d8(r29) /* 800F4F70 000F1ED0 FC 40 08 90 */ fmr f2, f1 /* 800F4F74 000F1ED4 C0 62 92 48 */ lfs f3, lbl_805AAF68@sda21(r2) /* 800F4F78 000F1ED8 FC 80 08 90 */ fmr f4, f1 /* 800F4F7C 000F1EDC 48 26 E4 71 */ bl __ct__6CColorFffff /* 800F4F80 000F1EE0 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F4F84 000F1EE4 7C 7F 1B 78 */ mr r31, r3 /* 800F4F88 000F1EE8 C0 82 91 5C */ lfs f4, lbl_805AAE7C@sda21(r2) /* 800F4F8C 000F1EEC 38 61 00 3C */ addi r3, r1, 0x3c /* 800F4F90 000F1EF0 FC 40 08 90 */ fmr f2, f1 /* 800F4F94 000F1EF4 FC 60 08 90 */ fmr f3, f1 /* 800F4F98 000F1EF8 48 26 E4 55 */ bl __ct__6CColorFffff /* 800F4F9C 000F1EFC FC 20 F0 90 */ fmr f1, f30 /* 800F4FA0 000F1F00 7C 64 1B 78 */ mr r4, r3 /* 800F4FA4 000F1F04 7F E5 FB 78 */ mr r5, r31 /* 800F4FA8 000F1F08 38 61 00 40 */ addi r3, r1, 0x40 /* 800F4FAC 000F1F0C 48 26 E3 01 */ bl Lerp__6CColorFRC6CColorRC6CColorf /* 800F4FB0 000F1F10 7F 83 E3 78 */ mr r3, r28 /* 800F4FB4 000F1F14 38 81 00 40 */ addi r4, r1, 0x40 /* 800F4FB8 000F1F18 81 9C 00 00 */ lwz r12, 0(r28) /* 800F4FBC 000F1F1C 81 8C 00 30 */ lwz r12, 0x30(r12) /* 800F4FC0 000F1F20 7D 89 03 A6 */ mtctr r12 /* 800F4FC4 000F1F24 4E 80 04 21 */ bctrl /* 800F4FC8 000F1F28 80 7D 19 D8 */ lwz r3, 0x19d8(r29) /* 800F4FCC 000F1F2C FC 20 F8 90 */ fmr f1, f31 /* 800F4FD0 000F1F30 81 83 00 00 */ lwz r12, 0(r3) /* 800F4FD4 000F1F34 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4FD8 000F1F38 7D 89 03 A6 */ mtctr r12 /* 800F4FDC 000F1F3C 4E 80 04 21 */ bctrl lbl_800F4FE0: /* 800F4FE0 000F1F40 80 7D 19 D4 */ lwz r3, 0x19d4(r29) /* 800F4FE4 000F1F44 FC 20 F8 90 */ fmr f1, f31 /* 800F4FE8 000F1F48 81 83 00 00 */ lwz r12, 0(r3) /* 800F4FEC 000F1F4C 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800F4FF0 000F1F50 7D 89 03 A6 */ mtctr r12 /* 800F4FF4 000F1F54 4E 80 04 21 */ bctrl /* 800F4FF8 000F1F58 C0 3D 1C 30 */ lfs f1, 0x1c30(r29) /* 800F4FFC 000F1F5C C0 02 92 CC */ lfs f0, lbl_805AAFEC@sda21(r2) /* 800F5000 000F1F60 EC 01 00 28 */ fsubs f0, f1, f0 /* 800F5004 000F1F64 D0 1D 1C 30 */ stfs f0, 0x1c30(r29) /* 800F5008 000F1F68 C0 2D 88 90 */ lfs f1, lbl_805A7450@sda21(r13) /* 800F500C 000F1F6C C0 1D 1C 30 */ lfs f0, 0x1c30(r29) /* 800F5010 000F1F70 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F5014 000F1F74 40 80 00 0C */ bge lbl_800F5020 /* 800F5018 000F1F78 38 7D 1C 30 */ addi r3, r29, 0x1c30 /* 800F501C 000F1F7C 48 00 00 08 */ b lbl_800F5024 lbl_800F5020: /* 800F5020 000F1F80 38 6D 88 90 */ addi r3, r13, lbl_805A7450@sda21 lbl_800F5024: /* 800F5024 000F1F84 C0 03 00 00 */ lfs f0, 0(r3) /* 800F5028 000F1F88 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F502C 000F1F8C D0 1D 1C 30 */ stfs f0, 0x1c30(r29) /* 800F5030 000F1F90 C0 1D 1C 30 */ lfs f0, 0x1c30(r29) /* 800F5034 000F1F94 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F5038 000F1F98 40 82 00 38 */ bne lbl_800F5070 /* 800F503C 000F1F9C C0 3D 1C 34 */ lfs f1, 0x1c34(r29) /* 800F5040 000F1FA0 C0 02 92 D0 */ lfs f0, lbl_805AAFF0@sda21(r2) /* 800F5044 000F1FA4 EC 01 00 28 */ fsubs f0, f1, f0 /* 800F5048 000F1FA8 D0 1D 1C 34 */ stfs f0, 0x1c34(r29) /* 800F504C 000F1FAC C0 2D 88 94 */ lfs f1, lbl_805A7454@sda21(r13) /* 800F5050 000F1FB0 C0 1D 1C 34 */ lfs f0, 0x1c34(r29) /* 800F5054 000F1FB4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F5058 000F1FB8 40 80 00 0C */ bge lbl_800F5064 /* 800F505C 000F1FBC 38 7D 1C 34 */ addi r3, r29, 0x1c34 /* 800F5060 000F1FC0 48 00 00 08 */ b lbl_800F5068 lbl_800F5064: /* 800F5064 000F1FC4 38 6D 88 94 */ addi r3, r13, lbl_805A7454@sda21 lbl_800F5068: /* 800F5068 000F1FC8 C0 03 00 00 */ lfs f0, 0(r3) /* 800F506C 000F1FCC D0 1D 1C 34 */ stfs f0, 0x1c34(r29) lbl_800F5070: /* 800F5070 000F1FD0 88 1D 1D E4 */ lbz r0, 0x1de4(r29) /* 800F5074 000F1FD4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800F5078 000F1FD8 41 82 00 14 */ beq lbl_800F508C /* 800F507C 000F1FDC C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F5080 000F1FE0 D0 1D 1C 30 */ stfs f0, 0x1c30(r29) /* 800F5084 000F1FE4 D0 1D 1C 34 */ stfs f0, 0x1c34(r29) /* 800F5088 000F1FE8 48 00 00 5C */ b lbl_800F50E4 lbl_800F508C: /* 800F508C 000F1FEC 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F5090 000F1FF0 C0 3D 1D E8 */ lfs f1, 0x1de8(r29) /* 800F5094 000F1FF4 C0 03 02 10 */ lfs f0, 0x210(r3) /* 800F5098 000F1FF8 EC 21 00 24 */ fdivs f1, f1, f0 /* 800F509C 000F1FFC D0 21 00 34 */ stfs f1, 0x34(r1) /* 800F50A0 000F2000 C0 1D 1C 34 */ lfs f0, 0x1c34(r29) /* 800F50A4 000F2004 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F50A8 000F2008 40 80 00 0C */ bge lbl_800F50B4 /* 800F50AC 000F200C 38 61 00 34 */ addi r3, r1, 0x34 /* 800F50B0 000F2010 48 00 00 08 */ b lbl_800F50B8 lbl_800F50B4: /* 800F50B4 000F2014 38 7D 1C 34 */ addi r3, r29, 0x1c34 lbl_800F50B8: /* 800F50B8 000F2018 C0 03 00 00 */ lfs f0, 0(r3) /* 800F50BC 000F201C D0 1D 1C 34 */ stfs f0, 0x1c34(r29) /* 800F50C0 000F2020 C0 3D 1C 34 */ lfs f1, 0x1c34(r29) /* 800F50C4 000F2024 C0 0D 88 98 */ lfs f0, lbl_805A7458@sda21(r13) /* 800F50C8 000F2028 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F50CC 000F202C 40 80 00 0C */ bge lbl_800F50D8 /* 800F50D0 000F2030 38 7D 1C 34 */ addi r3, r29, 0x1c34 /* 800F50D4 000F2034 48 00 00 08 */ b lbl_800F50DC lbl_800F50D8: /* 800F50D8 000F2038 38 6D 88 98 */ addi r3, r13, lbl_805A7458@sda21 lbl_800F50DC: /* 800F50DC 000F203C C0 03 00 00 */ lfs f0, 0(r3) /* 800F50E0 000F2040 D0 1D 1C 34 */ stfs f0, 0x1c34(r29) lbl_800F50E4: /* 800F50E4 000F2044 FC 20 F8 90 */ fmr f1, f31 /* 800F50E8 000F2048 7F A3 EB 78 */ mr r3, r29 /* 800F50EC 000F204C 4B FF CF 65 */ bl UpdateMorphBallTransitionFlash__10CMorphBallFf /* 800F50F0 000F2050 FC 20 F8 90 */ fmr f1, f31 /* 800F50F4 000F2054 7F A3 EB 78 */ mr r3, r29 /* 800F50F8 000F2058 4B FF CC 8D */ bl UpdateIceBreakEffect__10CMorphBallFf /* 800F50FC 000F205C A0 7D 1C 10 */ lhz r3, 0x1c10(r29) /* 800F5100 000F2060 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800F5104 000F2064 7C 03 00 40 */ cmplw r3, r0 /* 800F5108 000F2068 41 82 02 C0 */ beq lbl_800F53C8 /* 800F510C 000F206C A0 1D 1C 10 */ lhz r0, 0x1c10(r29) /* 800F5110 000F2070 7F C3 F3 78 */ mr r3, r30 /* 800F5114 000F2074 38 81 00 08 */ addi r4, r1, 8 /* 800F5118 000F2078 B0 01 00 08 */ sth r0, 8(r1) /* 800F511C 000F207C 4B F5 74 59 */ bl ObjectById__13CStateManagerF9TUniqueId /* 800F5120 000F2080 7C 64 1B 78 */ mr r4, r3 /* 800F5124 000F2084 38 61 00 4C */ addi r3, r1, 0x4c /* 800F5128 000F2088 4B FB 89 5D */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" /* 800F512C 000F208C 83 E3 00 04 */ lwz r31, 4(r3) /* 800F5130 000F2090 28 1F 00 00 */ cmplwi r31, 0 /* 800F5134 000F2094 41 82 02 94 */ beq lbl_800F53C8 /* 800F5138 000F2098 7F A3 EB 78 */ mr r3, r29 /* 800F513C 000F209C 48 00 3C C9 */ bl GetBallRadius__10CMorphBallCFv /* 800F5140 000F20A0 C0 41 02 FC */ lfs f2, 0x2fc(r1) /* 800F5144 000F20A4 7F E3 FB 78 */ mr r3, r31 /* 800F5148 000F20A8 C0 81 02 DC */ lfs f4, 0x2dc(r1) /* 800F514C 000F20AC 38 81 00 60 */ addi r4, r1, 0x60 /* 800F5150 000F20B0 C0 61 02 EC */ lfs f3, 0x2ec(r1) /* 800F5154 000F20B4 EC 22 08 2A */ fadds f1, f2, f1 /* 800F5158 000F20B8 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F515C 000F20BC D0 81 00 54 */ stfs f4, 0x54(r1) /* 800F5160 000F20C0 EC A3 00 2A */ fadds f5, f3, f0 /* 800F5164 000F20C4 EC 04 00 2A */ fadds f0, f4, f0 /* 800F5168 000F20C8 D0 61 00 58 */ stfs f3, 0x58(r1) /* 800F516C 000F20CC D0 41 00 5C */ stfs f2, 0x5c(r1) /* 800F5170 000F20D0 D0 01 00 60 */ stfs f0, 0x60(r1) /* 800F5174 000F20D4 D0 A1 00 64 */ stfs f5, 0x64(r1) /* 800F5178 000F20D8 D0 21 00 68 */ stfs f1, 0x68(r1) /* 800F517C 000F20DC 4B F5 DD 11 */ bl SetTranslation__6CActorFRC9CVector3f /* 800F5180 000F20E0 38 00 00 00 */ li r0, 0 /* 800F5184 000F20E4 7F A3 EB 78 */ mr r3, r29 /* 800F5188 000F20E8 98 01 04 40 */ stb r0, 0x440(r1) /* 800F518C 000F20EC 4B FF CE 21 */ bl IsMorphBallTransitionFlashValid__10CMorphBallCFv /* 800F5190 000F20F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F5194 000F20F4 41 82 00 48 */ beq lbl_800F51DC /* 800F5198 000F20F8 80 7D 19 DC */ lwz r3, 0x19dc(r29) /* 800F519C 000F20FC 81 83 00 00 */ lwz r12, 0(r3) /* 800F51A0 000F2100 81 8C 00 64 */ lwz r12, 0x64(r12) /* 800F51A4 000F2104 7D 89 03 A6 */ mtctr r12 /* 800F51A8 000F2108 4E 80 04 21 */ bctrl /* 800F51AC 000F210C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F51B0 000F2110 41 82 00 2C */ beq lbl_800F51DC /* 800F51B4 000F2114 80 9D 19 DC */ lwz r4, 0x19dc(r29) /* 800F51B8 000F2118 38 61 03 50 */ addi r3, r1, 0x350 /* 800F51BC 000F211C 81 84 00 00 */ lwz r12, 0(r4) /* 800F51C0 000F2120 81 8C 00 68 */ lwz r12, 0x68(r12) /* 800F51C4 000F2124 7D 89 03 A6 */ mtctr r12 /* 800F51C8 000F2128 4E 80 04 21 */ bctrl /* 800F51CC 000F212C 38 61 03 F0 */ addi r3, r1, 0x3f0 /* 800F51D0 000F2130 38 81 03 50 */ addi r4, r1, 0x350 /* 800F51D4 000F2134 48 00 02 C5 */ bl sub_800f5498 /* 800F51D8 000F2138 48 00 00 4C */ b lbl_800F5224 lbl_800F51DC: /* 800F51DC 000F213C 80 7D 19 D0 */ lwz r3, 0x19d0(r29) /* 800F51E0 000F2140 28 03 00 00 */ cmplwi r3, 0 /* 800F51E4 000F2144 41 82 00 40 */ beq lbl_800F5224 /* 800F51E8 000F2148 81 83 00 00 */ lwz r12, 0(r3) /* 800F51EC 000F214C 81 8C 00 64 */ lwz r12, 0x64(r12) /* 800F51F0 000F2150 7D 89 03 A6 */ mtctr r12 /* 800F51F4 000F2154 4E 80 04 21 */ bctrl /* 800F51F8 000F2158 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F51FC 000F215C 41 82 00 28 */ beq lbl_800F5224 /* 800F5200 000F2160 80 9D 19 D0 */ lwz r4, 0x19d0(r29) /* 800F5204 000F2164 38 61 03 00 */ addi r3, r1, 0x300 /* 800F5208 000F2168 81 84 00 00 */ lwz r12, 0(r4) /* 800F520C 000F216C 81 8C 00 68 */ lwz r12, 0x68(r12) /* 800F5210 000F2170 7D 89 03 A6 */ mtctr r12 /* 800F5214 000F2174 4E 80 04 21 */ bctrl /* 800F5218 000F2178 38 61 03 F0 */ addi r3, r1, 0x3f0 /* 800F521C 000F217C 38 81 03 00 */ addi r4, r1, 0x300 /* 800F5220 000F2180 48 00 02 79 */ bl sub_800f5498 lbl_800F5224: /* 800F5224 000F2184 88 01 04 40 */ lbz r0, 0x440(r1) /* 800F5228 000F2188 28 00 00 00 */ cmplwi r0, 0 /* 800F522C 000F218C 41 82 01 94 */ beq lbl_800F53C0 /* 800F5230 000F2190 38 61 03 A0 */ addi r3, r1, 0x3a0 /* 800F5234 000F2194 38 81 03 F0 */ addi r4, r1, 0x3f0 /* 800F5238 000F2198 4B F4 63 39 */ bl __ct__6CLightFCR6CLight /* 800F523C 000F219C 80 9D 00 08 */ lwz r4, 8(r29) /* 800F5240 000F21A0 3C 60 80 3D */ lis r3, lbl_803CEB78@ha /* 800F5244 000F21A4 38 00 00 FF */ li r0, 0xff /* 800F5248 000F21A8 3B C1 03 B8 */ addi r30, r1, 0x3b8 /* 800F524C 000F21AC 1C C4 00 03 */ mulli r6, r4, 3 /* 800F5250 000F21B0 38 A3 EB 78 */ addi r5, r3, lbl_803CEB78@l /* 800F5254 000F21B4 98 01 00 2F */ stb r0, 0x2f(r1) /* 800F5258 000F21B8 7F C4 F3 78 */ mr r4, r30 /* 800F525C 000F21BC 38 61 00 30 */ addi r3, r1, 0x30 /* 800F5260 000F21C0 7C C5 32 14 */ add r6, r5, r6 /* 800F5264 000F21C4 89 06 00 02 */ lbz r8, 2(r6) /* 800F5268 000F21C8 38 A1 00 2C */ addi r5, r1, 0x2c /* 800F526C 000F21CC 88 E6 00 01 */ lbz r7, 1(r6) /* 800F5270 000F21D0 88 06 00 00 */ lbz r0, 0(r6) /* 800F5274 000F21D4 98 E1 00 2D */ stb r7, 0x2d(r1) /* 800F5278 000F21D8 98 01 00 2C */ stb r0, 0x2c(r1) /* 800F527C 000F21DC 99 01 00 2E */ stb r8, 0x2e(r1) /* 800F5280 000F21E0 48 26 DE F9 */ bl Modulate__6CColorFRC6CColorRC6CColor /* 800F5284 000F21E4 38 61 03 A0 */ addi r3, r1, 0x3a0 /* 800F5288 000F21E8 38 81 00 30 */ addi r4, r1, 0x30 /* 800F528C 000F21EC 48 21 10 D1 */ bl SetColor__6CLightFRC6CColor /* 800F5290 000F21F0 80 7D 00 00 */ lwz r3, 0(r29) /* 800F5294 000F21F4 80 03 02 F8 */ lwz r0, 0x2f8(r3) /* 800F5298 000F21F8 2C 00 00 03 */ cmpwi r0, 3 /* 800F529C 000F21FC 40 82 00 60 */ bne lbl_800F52FC /* 800F52A0 000F2200 C3 C2 91 50 */ lfs f30, lbl_805AAE70@sda21(r2) /* 800F52A4 000F2204 C0 23 05 78 */ lfs f1, 0x578(r3) /* 800F52A8 000F2208 FC 1E 08 00 */ fcmpu cr0, f30, f1 /* 800F52AC 000F220C 40 82 00 08 */ bne lbl_800F52B4 /* 800F52B0 000F2210 48 00 00 24 */ b lbl_800F52D4 lbl_800F52B4: /* 800F52B4 000F2214 C0 03 05 74 */ lfs f0, 0x574(r3) /* 800F52B8 000F2218 38 81 00 10 */ addi r4, r1, 0x10 /* 800F52BC 000F221C 38 6D 88 28 */ addi r3, r13, lbl_805A73E8@sda21 /* 800F52C0 000F2220 38 AD 88 2C */ addi r5, r13, lbl_805A73EC@sda21 /* 800F52C4 000F2224 EC 00 08 24 */ fdivs f0, f0, f1 /* 800F52C8 000F2228 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800F52CC 000F222C 4B F1 6F E9 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F52D0 000F2230 C3 C3 00 00 */ lfs f30, 0(r3) lbl_800F52D4: /* 800F52D4 000F2234 48 25 4C E1 */ bl Black__6CColorFv /* 800F52D8 000F2238 FC 20 F0 90 */ fmr f1, f30 /* 800F52DC 000F223C 7C 65 1B 78 */ mr r5, r3 /* 800F52E0 000F2240 7F C4 F3 78 */ mr r4, r30 /* 800F52E4 000F2244 38 61 00 28 */ addi r3, r1, 0x28 /* 800F52E8 000F2248 48 26 DF C5 */ bl Lerp__6CColorFRC6CColorRC6CColorf /* 800F52EC 000F224C 38 61 03 A0 */ addi r3, r1, 0x3a0 /* 800F52F0 000F2250 38 81 00 28 */ addi r4, r1, 0x28 /* 800F52F4 000F2254 48 21 10 69 */ bl SetColor__6CLightFRC6CColor /* 800F52F8 000F2258 48 00 00 BC */ b lbl_800F53B4 lbl_800F52FC: /* 800F52FC 000F225C 2C 00 00 02 */ cmpwi r0, 2 /* 800F5300 000F2260 40 82 00 90 */ bne lbl_800F5390 /* 800F5304 000F2264 C0 42 91 50 */ lfs f2, lbl_805AAE70@sda21(r2) /* 800F5308 000F2268 C0 23 05 78 */ lfs f1, 0x578(r3) /* 800F530C 000F226C FC 02 08 00 */ fcmpu cr0, f2, f1 /* 800F5310 000F2270 40 82 00 08 */ bne lbl_800F5318 /* 800F5314 000F2274 48 00 00 24 */ b lbl_800F5338 lbl_800F5318: /* 800F5318 000F2278 C0 03 05 74 */ lfs f0, 0x574(r3) /* 800F531C 000F227C 38 81 00 0C */ addi r4, r1, 0xc /* 800F5320 000F2280 38 6D 88 28 */ addi r3, r13, lbl_805A73E8@sda21 /* 800F5324 000F2284 38 AD 88 2C */ addi r5, r13, lbl_805A73EC@sda21 /* 800F5328 000F2288 EC 00 08 24 */ fdivs f0, f0, f1 /* 800F532C 000F228C D0 01 00 0C */ stfs f0, 0xc(r1) /* 800F5330 000F2290 4B F1 6F 85 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F5334 000F2294 C0 43 00 00 */ lfs f2, 0(r3) lbl_800F5338: /* 800F5338 000F2298 C0 02 92 58 */ lfs f0, lbl_805AAF78@sda21(r2) /* 800F533C 000F229C FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800F5340 000F22A0 40 80 00 74 */ bge lbl_800F53B4 /* 800F5344 000F22A4 C0 22 91 D8 */ lfs f1, lbl_805AAEF8@sda21(r2) /* 800F5348 000F22A8 C0 0D 88 9C */ lfs f0, lbl_805A745C@sda21(r13) /* 800F534C 000F22AC EC 21 00 B2 */ fmuls f1, f1, f2 /* 800F5350 000F22B0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F5354 000F22B4 D0 21 00 20 */ stfs f1, 0x20(r1) /* 800F5358 000F22B8 40 80 00 0C */ bge lbl_800F5364 /* 800F535C 000F22BC 3B 8D 88 9C */ addi r28, r13, lbl_805A745C@sda21 /* 800F5360 000F22C0 48 00 00 08 */ b lbl_800F5368 lbl_800F5364: /* 800F5364 000F22C4 3B 81 00 20 */ addi r28, r1, 0x20 lbl_800F5368: /* 800F5368 000F22C8 48 25 4C 4D */ bl Black__6CColorFv /* 800F536C 000F22CC C0 3C 00 00 */ lfs f1, 0(r28) /* 800F5370 000F22D0 7C 64 1B 78 */ mr r4, r3 /* 800F5374 000F22D4 7F C5 F3 78 */ mr r5, r30 /* 800F5378 000F22D8 38 61 00 24 */ addi r3, r1, 0x24 /* 800F537C 000F22DC 48 26 DF 31 */ bl Lerp__6CColorFRC6CColorRC6CColorf /* 800F5380 000F22E0 38 61 03 A0 */ addi r3, r1, 0x3a0 /* 800F5384 000F22E4 38 81 00 24 */ addi r4, r1, 0x24 /* 800F5388 000F22E8 48 21 0F D5 */ bl SetColor__6CLightFRC6CColor /* 800F538C 000F22EC 48 00 00 28 */ b lbl_800F53B4 lbl_800F5390: /* 800F5390 000F22F0 48 25 4C 1D */ bl White__6CColorFv /* 800F5394 000F22F4 C0 3D 1C 34 */ lfs f1, 0x1c34(r29) /* 800F5398 000F22F8 7C 65 1B 78 */ mr r5, r3 /* 800F539C 000F22FC 7F C4 F3 78 */ mr r4, r30 /* 800F53A0 000F2300 38 61 00 1C */ addi r3, r1, 0x1c /* 800F53A4 000F2304 48 26 DF 09 */ bl Lerp__6CColorFRC6CColorRC6CColorf /* 800F53A8 000F2308 38 61 03 A0 */ addi r3, r1, 0x3a0 /* 800F53AC 000F230C 38 81 00 1C */ addi r4, r1, 0x1c /* 800F53B0 000F2310 48 21 0F AD */ bl SetColor__6CLightFRC6CColor lbl_800F53B4: /* 800F53B4 000F2314 7F E3 FB 78 */ mr r3, r31 /* 800F53B8 000F2318 38 81 03 A0 */ addi r4, r1, 0x3a0 /* 800F53BC 000F231C 4B FC 03 89 */ bl SetLight__10CGameLightFRC6CLight lbl_800F53C0: /* 800F53C0 000F2320 38 00 00 00 */ li r0, 0 /* 800F53C4 000F2324 98 01 04 40 */ stb r0, 0x440(r1) lbl_800F53C8: /* 800F53C8 000F2328 80 1D 18 7C */ lwz r0, 0x187c(r29) /* 800F53CC 000F232C 2C 00 00 01 */ cmpwi r0, 1 /* 800F53D0 000F2330 40 82 00 60 */ bne lbl_800F5430 /* 800F53D4 000F2334 7F A3 EB 78 */ mr r3, r29 /* 800F53D8 000F2338 4B FF 9F 11 */ bl AddSpiderBallElectricalEffect__10CMorphBallFv /* 800F53DC 000F233C 7F A3 EB 78 */ mr r3, r29 /* 800F53E0 000F2340 4B FF 9F 09 */ bl AddSpiderBallElectricalEffect__10CMorphBallFv /* 800F53E4 000F2344 7F A3 EB 78 */ mr r3, r29 /* 800F53E8 000F2348 4B FF 9F 01 */ bl AddSpiderBallElectricalEffect__10CMorphBallFv /* 800F53EC 000F234C 7F A3 EB 78 */ mr r3, r29 /* 800F53F0 000F2350 4B FF 9E F9 */ bl AddSpiderBallElectricalEffect__10CMorphBallFv /* 800F53F4 000F2354 7F A3 EB 78 */ mr r3, r29 /* 800F53F8 000F2358 4B FF 9E F1 */ bl AddSpiderBallElectricalEffect__10CMorphBallFv /* 800F53FC 000F235C C0 42 91 90 */ lfs f2, lbl_805AAEB0@sda21(r2) /* 800F5400 000F2360 C0 3D 1C 38 */ lfs f1, 0x1c38(r29) /* 800F5404 000F2364 C0 0D 88 A0 */ lfs f0, lbl_805A7460@sda21(r13) /* 800F5408 000F2368 EC 22 08 2A */ fadds f1, f2, f1 /* 800F540C 000F236C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F5410 000F2370 D0 21 00 18 */ stfs f1, 0x18(r1) /* 800F5414 000F2374 40 80 00 0C */ bge lbl_800F5420 /* 800F5418 000F2378 38 61 00 18 */ addi r3, r1, 0x18 /* 800F541C 000F237C 48 00 00 08 */ b lbl_800F5424 lbl_800F5420: /* 800F5420 000F2380 38 6D 88 A0 */ addi r3, r13, lbl_805A7460@sda21 lbl_800F5424: /* 800F5424 000F2384 C0 03 00 00 */ lfs f0, 0(r3) /* 800F5428 000F2388 D0 1D 1C 38 */ stfs f0, 0x1c38(r29) /* 800F542C 000F238C 48 00 00 34 */ b lbl_800F5460 lbl_800F5430: /* 800F5430 000F2390 C0 5D 1C 38 */ lfs f2, 0x1c38(r29) /* 800F5434 000F2394 C0 22 92 54 */ lfs f1, lbl_805AAF74@sda21(r2) /* 800F5438 000F2398 C0 0D 88 A4 */ lfs f0, lbl_805A7464@sda21(r13) /* 800F543C 000F239C EC 22 08 28 */ fsubs f1, f2, f1 /* 800F5440 000F23A0 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F5444 000F23A4 D0 21 00 14 */ stfs f1, 0x14(r1) /* 800F5448 000F23A8 40 80 00 0C */ bge lbl_800F5454 /* 800F544C 000F23AC 38 61 00 14 */ addi r3, r1, 0x14 /* 800F5450 000F23B0 48 00 00 08 */ b lbl_800F5458 lbl_800F5454: /* 800F5454 000F23B4 38 6D 88 A4 */ addi r3, r13, lbl_805A7464@sda21 lbl_800F5458: /* 800F5458 000F23B8 C0 03 00 00 */ lfs f0, 0(r3) /* 800F545C 000F23BC D0 1D 1C 38 */ stfs f0, 0x1c38(r29) lbl_800F5460: /* 800F5460 000F23C0 7F A3 EB 78 */ mr r3, r29 /* 800F5464 000F23C4 4B FF 9C E5 */ bl UpdateSpiderBallElectricalEffects__10CMorphBallFv /* 800F5468 000F23C8 E3 E1 04 78 */ psq_l f31, 1144(r1), 0, qr0 /* 800F546C 000F23CC CB E1 04 70 */ lfd f31, 0x470(r1) /* 800F5470 000F23D0 E3 C1 04 68 */ psq_l f30, 1128(r1), 0, qr0 /* 800F5474 000F23D4 CB C1 04 60 */ lfd f30, 0x460(r1) /* 800F5478 000F23D8 83 E1 04 5C */ lwz r31, 0x45c(r1) /* 800F547C 000F23DC 83 C1 04 58 */ lwz r30, 0x458(r1) /* 800F5480 000F23E0 83 A1 04 54 */ lwz r29, 0x454(r1) /* 800F5484 000F23E4 80 01 04 84 */ lwz r0, 0x484(r1) /* 800F5488 000F23E8 83 81 04 50 */ lwz r28, 0x450(r1) /* 800F548C 000F23EC 7C 08 03 A6 */ mtlr r0 /* 800F5490 000F23F0 38 21 04 80 */ addi r1, r1, 0x480 /* 800F5494 000F23F4 4E 80 00 20 */ blr .global sub_800f5498 sub_800f5498: /* 800F5498 000F23F8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F549C 000F23FC 7C 08 02 A6 */ mflr r0 /* 800F54A0 000F2400 90 01 00 14 */ stw r0, 0x14(r1) /* 800F54A4 000F2404 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F54A8 000F2408 7C 7F 1B 78 */ mr r31, r3 /* 800F54AC 000F240C 48 00 00 1D */ bl sub_800f54c8 /* 800F54B0 000F2410 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F54B4 000F2414 7F E3 FB 78 */ mr r3, r31 /* 800F54B8 000F2418 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F54BC 000F241C 7C 08 03 A6 */ mtlr r0 /* 800F54C0 000F2420 38 21 00 10 */ addi r1, r1, 0x10 /* 800F54C4 000F2424 4E 80 00 20 */ blr .global sub_800f54c8 sub_800f54c8: /* 800F54C8 000F2428 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F54CC 000F242C 7C 08 02 A6 */ mflr r0 /* 800F54D0 000F2430 90 01 00 14 */ stw r0, 0x14(r1) /* 800F54D4 000F2434 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F54D8 000F2438 7C 7F 1B 78 */ mr r31, r3 /* 800F54DC 000F243C 88 03 00 50 */ lbz r0, 0x50(r3) /* 800F54E0 000F2440 28 00 00 00 */ cmplwi r0, 0 /* 800F54E4 000F2444 40 82 00 14 */ bne lbl_800F54F8 /* 800F54E8 000F2448 4B FF DF 6D */ bl sub_800f3454 /* 800F54EC 000F244C 38 00 00 01 */ li r0, 1 /* 800F54F0 000F2450 98 1F 00 50 */ stb r0, 0x50(r31) /* 800F54F4 000F2454 48 00 00 A4 */ b lbl_800F5598 lbl_800F54F8: /* 800F54F8 000F2458 80 64 00 00 */ lwz r3, 0(r4) /* 800F54FC 000F245C 80 04 00 04 */ lwz r0, 4(r4) /* 800F5500 000F2460 90 7F 00 00 */ stw r3, 0(r31) /* 800F5504 000F2464 90 1F 00 04 */ stw r0, 4(r31) /* 800F5508 000F2468 80 04 00 08 */ lwz r0, 8(r4) /* 800F550C 000F246C 90 1F 00 08 */ stw r0, 8(r31) /* 800F5510 000F2470 80 64 00 0C */ lwz r3, 0xc(r4) /* 800F5514 000F2474 80 04 00 10 */ lwz r0, 0x10(r4) /* 800F5518 000F2478 90 7F 00 0C */ stw r3, 0xc(r31) /* 800F551C 000F247C 90 1F 00 10 */ stw r0, 0x10(r31) /* 800F5520 000F2480 80 04 00 14 */ lwz r0, 0x14(r4) /* 800F5524 000F2484 90 1F 00 14 */ stw r0, 0x14(r31) /* 800F5528 000F2488 80 04 00 18 */ lwz r0, 0x18(r4) /* 800F552C 000F248C 90 1F 00 18 */ stw r0, 0x18(r31) /* 800F5530 000F2490 80 04 00 1C */ lwz r0, 0x1c(r4) /* 800F5534 000F2494 90 1F 00 1C */ stw r0, 0x1c(r31) /* 800F5538 000F2498 C0 04 00 20 */ lfs f0, 0x20(r4) /* 800F553C 000F249C D0 1F 00 20 */ stfs f0, 0x20(r31) /* 800F5540 000F24A0 C0 04 00 24 */ lfs f0, 0x24(r4) /* 800F5544 000F24A4 D0 1F 00 24 */ stfs f0, 0x24(r31) /* 800F5548 000F24A8 C0 04 00 28 */ lfs f0, 0x28(r4) /* 800F554C 000F24AC D0 1F 00 28 */ stfs f0, 0x28(r31) /* 800F5550 000F24B0 C0 04 00 2C */ lfs f0, 0x2c(r4) /* 800F5554 000F24B4 D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 800F5558 000F24B8 C0 04 00 30 */ lfs f0, 0x30(r4) /* 800F555C 000F24BC D0 1F 00 30 */ stfs f0, 0x30(r31) /* 800F5560 000F24C0 C0 04 00 34 */ lfs f0, 0x34(r4) /* 800F5564 000F24C4 D0 1F 00 34 */ stfs f0, 0x34(r31) /* 800F5568 000F24C8 C0 04 00 38 */ lfs f0, 0x38(r4) /* 800F556C 000F24CC D0 1F 00 38 */ stfs f0, 0x38(r31) /* 800F5570 000F24D0 80 04 00 3C */ lwz r0, 0x3c(r4) /* 800F5574 000F24D4 90 1F 00 3C */ stw r0, 0x3c(r31) /* 800F5578 000F24D8 80 04 00 40 */ lwz r0, 0x40(r4) /* 800F557C 000F24DC 90 1F 00 40 */ stw r0, 0x40(r31) /* 800F5580 000F24E0 C0 04 00 44 */ lfs f0, 0x44(r4) /* 800F5584 000F24E4 D0 1F 00 44 */ stfs f0, 0x44(r31) /* 800F5588 000F24E8 C0 04 00 48 */ lfs f0, 0x48(r4) /* 800F558C 000F24EC D0 1F 00 48 */ stfs f0, 0x48(r31) /* 800F5590 000F24F0 88 04 00 4C */ lbz r0, 0x4c(r4) /* 800F5594 000F24F4 98 1F 00 4C */ stb r0, 0x4c(r31) lbl_800F5598: /* 800F5598 000F24F8 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F559C 000F24FC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F55A0 000F2500 7C 08 03 A6 */ mtlr r0 /* 800F55A4 000F2504 38 21 00 10 */ addi r1, r1, 0x10 /* 800F55A8 000F2508 4E 80 00 20 */ blr .global StopEffects__10CMorphBallFv StopEffects__10CMorphBallFv: /* 800F55AC 000F250C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F55B0 000F2510 7C 08 02 A6 */ mflr r0 /* 800F55B4 000F2514 38 80 00 00 */ li r4, 0 /* 800F55B8 000F2518 90 01 00 14 */ stw r0, 0x14(r1) /* 800F55BC 000F251C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F55C0 000F2520 93 C1 00 08 */ stw r30, 8(r1) /* 800F55C4 000F2524 7C 7E 1B 78 */ mr r30, r3 /* 800F55C8 000F2528 80 63 19 CC */ lwz r3, 0x19cc(r3) /* 800F55CC 000F252C 81 83 00 00 */ lwz r12, 0(r3) /* 800F55D0 000F2530 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F55D4 000F2534 7D 89 03 A6 */ mtctr r12 /* 800F55D8 000F2538 4E 80 04 21 */ bctrl /* 800F55DC 000F253C 3B FE 1B CC */ addi r31, r30, 0x1bcc /* 800F55E0 000F2540 38 80 00 00 */ li r4, 0 /* 800F55E4 000F2544 80 7E 1C 08 */ lwz r3, 0x1c08(r30) /* 800F55E8 000F2548 81 83 00 00 */ lwz r12, 0(r3) /* 800F55EC 000F254C 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F55F0 000F2550 7D 89 03 A6 */ mtctr r12 /* 800F55F4 000F2554 4E 80 04 21 */ bctrl /* 800F55F8 000F2558 80 1E 1C 0C */ lwz r0, 0x1c0c(r30) /* 800F55FC 000F255C 2C 00 FF FF */ cmpwi r0, -1 /* 800F5600 000F2560 41 82 00 24 */ beq lbl_800F5624 /* 800F5604 000F2564 54 03 18 38 */ slwi r3, r0, 3 /* 800F5608 000F2568 38 80 00 00 */ li r4, 0 /* 800F560C 000F256C 38 03 00 04 */ addi r0, r3, 4 /* 800F5610 000F2570 7C 7F 00 2E */ lwzx r3, r31, r0 /* 800F5614 000F2574 81 83 00 00 */ lwz r12, 0(r3) /* 800F5618 000F2578 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F561C 000F257C 7D 89 03 A6 */ mtctr r12 /* 800F5620 000F2580 4E 80 04 21 */ bctrl lbl_800F5624: /* 800F5624 000F2584 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F5628 000F2588 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F562C 000F258C 83 C1 00 08 */ lwz r30, 8(r1) /* 800F5630 000F2590 7C 08 03 A6 */ mtlr r0 /* 800F5634 000F2594 38 21 00 10 */ addi r1, r1, 0x10 /* 800F5638 000F2598 4E 80 00 20 */ blr .global LeaveMorphBallState__10CMorphBallFR13CStateManager LeaveMorphBallState__10CMorphBallFR13CStateManager: /* 800F563C 000F259C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F5640 000F25A0 7C 08 02 A6 */ mflr r0 /* 800F5644 000F25A4 90 01 00 24 */ stw r0, 0x24(r1) /* 800F5648 000F25A8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800F564C 000F25AC 7C 7F 1B 78 */ mr r31, r3 /* 800F5650 000F25B0 4B FF E8 75 */ bl LeaveBoosting__10CMorphBallFv /* 800F5654 000F25B4 7F E3 FB 78 */ mr r3, r31 /* 800F5658 000F25B8 4B FF E7 C9 */ bl CancelBoosting__10CMorphBallFv /* 800F565C 000F25BC 80 1F 1E 24 */ lwz r0, 0x1e24(r31) /* 800F5660 000F25C0 38 61 00 08 */ addi r3, r1, 8 /* 800F5664 000F25C4 90 01 00 08 */ stw r0, 8(r1) /* 800F5668 000F25C8 48 1F 46 E1 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle /* 800F566C 000F25CC 7F E3 FB 78 */ mr r3, r31 /* 800F5670 000F25D0 4B FF FF 3D */ bl StopEffects__10CMorphBallFv /* 800F5674 000F25D4 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F5678 000F25D8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800F567C 000F25DC 7C 08 03 A6 */ mtlr r0 /* 800F5680 000F25E0 38 21 00 20 */ addi r1, r1, 0x20 /* 800F5684 000F25E4 4E 80 00 20 */ blr .global EnterMorphBallState__10CMorphBallFR13CStateManager EnterMorphBallState__10CMorphBallFR13CStateManager: /* 800F5688 000F25E8 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800F568C 000F25EC 7C 08 02 A6 */ mflr r0 /* 800F5690 000F25F0 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F5694 000F25F4 90 01 00 44 */ stw r0, 0x44(r1) /* 800F5698 000F25F8 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800F569C 000F25FC 7C 7F 1B 78 */ mr r31, r3 /* 800F56A0 000F2600 D0 23 1C 20 */ stfs f1, 0x1c20(r3) /* 800F56A4 000F2604 4B FF F1 C5 */ bl UpdateEffects__10CMorphBallFfR13CStateManager /* 800F56A8 000F2608 38 C0 00 00 */ li r6, 0 /* 800F56AC 000F260C C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F56B0 000F2610 90 DF 18 7C */ stw r6, 0x187c(r31) /* 800F56B4 000F2614 38 60 FF FF */ li r3, -1 /* 800F56B8 000F2618 38 00 00 01 */ li r0, 1 /* 800F56BC 000F261C 38 81 00 08 */ addi r4, r1, 8 /* 800F56C0 000F2620 90 C1 00 08 */ stw r6, 8(r1) /* 800F56C4 000F2624 38 A0 00 00 */ li r5, 0 /* 800F56C8 000F2628 90 61 00 0C */ stw r3, 0xc(r1) /* 800F56CC 000F262C D0 01 00 10 */ stfs f0, 0x10(r1) /* 800F56D0 000F2630 98 01 00 14 */ stb r0, 0x14(r1) /* 800F56D4 000F2634 90 C1 00 18 */ stw r6, 0x18(r1) /* 800F56D8 000F2638 90 C1 00 1C */ stw r6, 0x1c(r1) /* 800F56DC 000F263C 98 C1 00 20 */ stb r6, 0x20(r1) /* 800F56E0 000F2640 90 C1 00 24 */ stw r6, 0x24(r1) /* 800F56E4 000F2644 90 C1 00 28 */ stw r6, 0x28(r1) /* 800F56E8 000F2648 90 C1 00 2C */ stw r6, 0x2c(r1) /* 800F56EC 000F264C 80 7F 00 58 */ lwz r3, 0x58(r31) /* 800F56F0 000F2650 80 63 00 10 */ lwz r3, 0x10(r3) /* 800F56F4 000F2654 4B F3 76 89 */ bl SetAnimation__9CAnimDataFRC18CAnimPlaybackParmsb /* 800F56F8 000F2658 38 00 00 00 */ li r0, 0 /* 800F56FC 000F265C 7F E3 FB 78 */ mr r3, r31 /* 800F5700 000F2660 90 1F 1E 20 */ stw r0, 0x1e20(r31) /* 800F5704 000F2664 4B FF FE A9 */ bl StopEffects__10CMorphBallFv /* 800F5708 000F2668 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F570C 000F266C 7F E3 FB 78 */ mr r3, r31 /* 800F5710 000F2670 D0 1F 1C 30 */ stfs f0, 0x1c30(r31) /* 800F5714 000F2674 D0 1F 1C 34 */ stfs f0, 0x1c34(r31) /* 800F5718 000F2678 D0 1F 1C 38 */ stfs f0, 0x1c38(r31) /* 800F571C 000F267C 4B FF C1 D9 */ bl DisableHalfPipeStatus__10CMorphBallFv /* 800F5720 000F2680 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F5724 000F2684 D0 1F 00 30 */ stfs f0, 0x30(r31) /* 800F5728 000F2688 D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 800F572C 000F268C 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800F5730 000F2690 80 01 00 44 */ lwz r0, 0x44(r1) /* 800F5734 000F2694 7C 08 03 A6 */ mtlr r0 /* 800F5738 000F2698 38 21 00 40 */ addi r1, r1, 0x40 /* 800F573C 000F269C 4E 80 00 20 */ blr .global SetBallLightActive__10CMorphBallFR13CStateManagerb SetBallLightActive__10CMorphBallFR13CStateManagerb: /* 800F5740 000F26A0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F5744 000F26A4 7C 08 02 A6 */ mflr r0 /* 800F5748 000F26A8 90 01 00 24 */ stw r0, 0x24(r1) /* 800F574C 000F26AC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800F5750 000F26B0 7C BF 2B 78 */ mr r31, r5 /* 800F5754 000F26B4 A0 C3 1C 10 */ lhz r6, 0x1c10(r3) /* 800F5758 000F26B8 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800F575C 000F26BC 7C 06 00 40 */ cmplw r6, r0 /* 800F5760 000F26C0 41 82 00 44 */ beq lbl_800F57A4 /* 800F5764 000F26C4 A0 03 1C 10 */ lhz r0, 0x1c10(r3) /* 800F5768 000F26C8 7C 83 23 78 */ mr r3, r4 /* 800F576C 000F26CC 38 81 00 08 */ addi r4, r1, 8 /* 800F5770 000F26D0 B0 01 00 08 */ sth r0, 8(r1) /* 800F5774 000F26D4 4B F5 6E 01 */ bl ObjectById__13CStateManagerF9TUniqueId /* 800F5778 000F26D8 7C 64 1B 78 */ mr r4, r3 /* 800F577C 000F26DC 38 61 00 0C */ addi r3, r1, 0xc /* 800F5780 000F26E0 4B FB 83 05 */ bl "__ct__24TCastToPtr<10CGameLight>FP7CEntity" /* 800F5784 000F26E4 80 63 00 04 */ lwz r3, 4(r3) /* 800F5788 000F26E8 28 03 00 00 */ cmplwi r3, 0 /* 800F578C 000F26EC 41 82 00 18 */ beq lbl_800F57A4 /* 800F5790 000F26F0 81 83 00 00 */ lwz r12, 0(r3) /* 800F5794 000F26F4 57 E4 06 3E */ clrlwi r4, r31, 0x18 /* 800F5798 000F26F8 81 8C 00 1C */ lwz r12, 0x1c(r12) /* 800F579C 000F26FC 7D 89 03 A6 */ mtctr r12 /* 800F57A0 000F2700 4E 80 04 21 */ bctrl lbl_800F57A4: /* 800F57A4 000F2704 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F57A8 000F2708 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800F57AC 000F270C 7C 08 03 A6 */ mtlr r0 /* 800F57B0 000F2710 38 21 00 20 */ addi r1, r1, 0x20 /* 800F57B4 000F2714 4E 80 00 20 */ blr .global DeleteLight__10CMorphBallFR13CStateManager DeleteLight__10CMorphBallFR13CStateManager: /* 800F57B8 000F2718 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F57BC 000F271C 7C 08 02 A6 */ mflr r0 /* 800F57C0 000F2720 90 01 00 24 */ stw r0, 0x24(r1) /* 800F57C4 000F2724 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800F57C8 000F2728 7C 7F 1B 78 */ mr r31, r3 /* 800F57CC 000F272C A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800F57D0 000F2730 A0 63 1C 10 */ lhz r3, 0x1c10(r3) /* 800F57D4 000F2734 7C 03 00 40 */ cmplw r3, r0 /* 800F57D8 000F2738 41 82 00 20 */ beq lbl_800F57F8 /* 800F57DC 000F273C A0 1F 1C 10 */ lhz r0, 0x1c10(r31) /* 800F57E0 000F2740 7C 83 23 78 */ mr r3, r4 /* 800F57E4 000F2744 38 81 00 08 */ addi r4, r1, 8 /* 800F57E8 000F2748 B0 01 00 08 */ sth r0, 8(r1) /* 800F57EC 000F274C 4B F5 6A 81 */ bl FreeScriptObject__13CStateManagerF9TUniqueId /* 800F57F0 000F2750 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800F57F4 000F2754 B0 1F 1C 10 */ sth r0, 0x1c10(r31) lbl_800F57F8: /* 800F57F8 000F2758 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F57FC 000F275C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800F5800 000F2760 7C 08 03 A6 */ mtlr r0 /* 800F5804 000F2764 38 21 00 20 */ addi r1, r1, 0x20 /* 800F5808 000F2768 4E 80 00 20 */ blr .global AcceptScriptMsg__10CMorphBallF20EScriptObjectMessage9TUniqueIdR13CStateManager AcceptScriptMsg__10CMorphBallF20EScriptObjectMessage9TUniqueIdR13CStateManager: /* 800F580C 000F276C 94 21 FF 30 */ stwu r1, -0xd0(r1) /* 800F5810 000F2770 7C 08 02 A6 */ mflr r0 /* 800F5814 000F2774 2C 04 00 22 */ cmpwi r4, 0x22 /* 800F5818 000F2778 90 01 00 D4 */ stw r0, 0xd4(r1) /* 800F581C 000F277C BF 61 00 BC */ stmw r27, 0xbc(r1) /* 800F5820 000F2780 7C 7E 1B 78 */ mr r30, r3 /* 800F5824 000F2784 7C DF 33 78 */ mr r31, r6 /* 800F5828 000F2788 41 82 01 30 */ beq lbl_800F5958 /* 800F582C 000F278C 40 80 01 34 */ bge lbl_800F5960 /* 800F5830 000F2790 2C 04 00 21 */ cmpwi r4, 0x21 /* 800F5834 000F2794 40 80 00 08 */ bge lbl_800F583C /* 800F5838 000F2798 48 00 01 28 */ b lbl_800F5960 lbl_800F583C: /* 800F583C 000F279C 80 7E 19 D0 */ lwz r3, 0x19d0(r30) /* 800F5840 000F27A0 28 03 00 00 */ cmplwi r3, 0 /* 800F5844 000F27A4 41 82 01 1C */ beq lbl_800F5960 /* 800F5848 000F27A8 81 83 00 00 */ lwz r12, 0(r3) /* 800F584C 000F27AC 81 8C 00 64 */ lwz r12, 0x64(r12) /* 800F5850 000F27B0 7D 89 03 A6 */ mtctr r12 /* 800F5854 000F27B4 4E 80 04 21 */ bctrl /* 800F5858 000F27B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F585C 000F27BC 41 82 01 04 */ beq lbl_800F5960 /* 800F5860 000F27C0 7F E4 FB 78 */ mr r4, r31 /* 800F5864 000F27C4 38 61 00 1C */ addi r3, r1, 0x1c /* 800F5868 000F27C8 4B F5 78 75 */ bl AllocateUniqueId__13CStateManagerFv /* 800F586C 000F27CC A0 01 00 1C */ lhz r0, 0x1c(r1) /* 800F5870 000F27D0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F5874 000F27D4 38 63 EB F4 */ addi r3, r3, lbl_803CEBF4@l /* 800F5878 000F27D8 3B 80 00 00 */ li r28, 0 /* 800F587C 000F27DC B0 1E 1C 10 */ sth r0, 0x1c10(r30) /* 800F5880 000F27E0 38 83 00 DC */ addi r4, r3, 0xdc /* 800F5884 000F27E4 38 60 01 48 */ li r3, 0x148 /* 800F5888 000F27E8 38 A0 00 00 */ li r5, 0 /* 800F588C 000F27EC 80 DE 19 88 */ lwz r6, 0x1988(r30) /* 800F5890 000F27F0 83 66 00 08 */ lwz r27, 8(r6) /* 800F5894 000F27F4 48 21 FF D9 */ bl __nw__FUlPCcPCc /* 800F5898 000F27F8 7C 7D 1B 79 */ or. r29, r3, r3 /* 800F589C 000F27FC 41 82 00 9C */ beq lbl_800F5938 /* 800F58A0 000F2800 80 BE 00 00 */ lwz r5, 0(r30) /* 800F58A4 000F2804 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F58A8 000F2808 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F58AC 000F280C 83 9E 19 D0 */ lwz r28, 0x19d0(r30) /* 800F58B0 000F2810 A0 05 00 08 */ lhz r0, 8(r5) /* 800F58B4 000F2814 38 61 00 24 */ addi r3, r1, 0x24 /* 800F58B8 000F2818 38 84 01 48 */ addi r4, r4, 0x148 /* 800F58BC 000F281C B0 01 00 14 */ sth r0, 0x14(r1) /* 800F58C0 000F2820 B0 01 00 18 */ sth r0, 0x18(r1) /* 800F58C4 000F2824 4B F0 F3 F5 */ bl string_l__4rstlFPCc /* 800F58C8 000F2828 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 800F58CC 000F282C 7F 84 E3 78 */ mr r4, r28 /* 800F58D0 000F2830 38 61 00 64 */ addi r3, r1, 0x64 /* 800F58D4 000F2834 3B 80 00 01 */ li r28, 1 /* 800F58D8 000F2838 90 01 00 20 */ stw r0, 0x20(r1) /* 800F58DC 000F283C A0 1E 1C 10 */ lhz r0, 0x1c10(r30) /* 800F58E0 000F2840 B0 01 00 10 */ sth r0, 0x10(r1) /* 800F58E4 000F2844 81 84 00 00 */ lwz r12, 0(r4) /* 800F58E8 000F2848 81 8C 00 68 */ lwz r12, 0x68(r12) /* 800F58EC 000F284C 7D 89 03 A6 */ mtctr r12 /* 800F58F0 000F2850 4E 80 04 21 */ bctrl /* 800F58F4 000F2854 7F C4 F3 78 */ mr r4, r30 /* 800F58F8 000F2858 38 61 00 34 */ addi r3, r1, 0x34 /* 800F58FC 000F285C 48 00 0D F9 */ bl GetBallToWorld__10CMorphBallCFv /* 800F5900 000F2860 93 61 00 08 */ stw r27, 8(r1) /* 800F5904 000F2864 38 00 00 00 */ li r0, 0 /* 800F5908 000F2868 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F590C 000F286C 7F A3 EB 78 */ mr r3, r29 /* 800F5910 000F2870 90 01 00 0C */ stw r0, 0xc(r1) /* 800F5914 000F2874 38 81 00 10 */ addi r4, r1, 0x10 /* 800F5918 000F2878 38 A1 00 20 */ addi r5, r1, 0x20 /* 800F591C 000F287C 38 E1 00 24 */ addi r7, r1, 0x24 /* 800F5920 000F2880 39 01 00 34 */ addi r8, r1, 0x34 /* 800F5924 000F2884 39 21 00 18 */ addi r9, r1, 0x18 /* 800F5928 000F2888 39 41 00 64 */ addi r10, r1, 0x64 /* 800F592C 000F288C 38 C0 00 00 */ li r6, 0 /* 800F5930 000F2890 4B FB FE F5 */ bl "__ct__10CGameLightF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC12CTransform4f9TUniqueIdRC6CLightUiUif" /* 800F5934 000F2894 7C 7D 1B 78 */ mr r29, r3 lbl_800F5938: /* 800F5938 000F2898 7F E3 FB 78 */ mr r3, r31 /* 800F593C 000F289C 7F A4 EB 78 */ mr r4, r29 /* 800F5940 000F28A0 4B F5 73 B5 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence /* 800F5944 000F28A4 7F 80 07 75 */ extsb. r0, r28 /* 800F5948 000F28A8 41 82 00 18 */ beq lbl_800F5960 /* 800F594C 000F28AC 38 61 00 24 */ addi r3, r1, 0x24 /* 800F5950 000F28B0 48 24 81 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800F5954 000F28B4 48 00 00 0C */ b lbl_800F5960 lbl_800F5958: /* 800F5958 000F28B8 7F E4 FB 78 */ mr r4, r31 /* 800F595C 000F28BC 4B FF FE 5D */ bl DeleteLight__10CMorphBallFR13CStateManager lbl_800F5960: /* 800F5960 000F28C0 BB 61 00 BC */ lmw r27, 0xbc(r1) /* 800F5964 000F28C4 80 01 00 D4 */ lwz r0, 0xd4(r1) /* 800F5968 000F28C8 7C 08 03 A6 */ mtlr r0 /* 800F596C 000F28CC 38 21 00 D0 */ addi r1, r1, 0xd0 /* 800F5970 000F28D0 4E 80 00 20 */ blr .global Update__10CMorphBallFfR13CStateManager Update__10CMorphBallFfR13CStateManager: /* 800F5974 000F28D4 94 21 FF 80 */ stwu r1, -0x80(r1) /* 800F5978 000F28D8 7C 08 02 A6 */ mflr r0 /* 800F597C 000F28DC 90 01 00 84 */ stw r0, 0x84(r1) /* 800F5980 000F28E0 DB E1 00 70 */ stfd f31, 0x70(r1) /* 800F5984 000F28E4 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 800F5988 000F28E8 93 E1 00 6C */ stw r31, 0x6c(r1) /* 800F598C 000F28EC 93 C1 00 68 */ stw r30, 0x68(r1) /* 800F5990 000F28F0 7C 7E 1B 78 */ mr r30, r3 /* 800F5994 000F28F4 FF E0 08 90 */ fmr f31, f1 /* 800F5998 000F28F8 80 03 18 7C */ lwz r0, 0x187c(r3) /* 800F599C 000F28FC 7C 9F 23 78 */ mr r31, r4 /* 800F59A0 000F2900 2C 00 00 01 */ cmpwi r0, 1 /* 800F59A4 000F2904 40 82 00 38 */ bne lbl_800F59DC /* 800F59A8 000F2908 7F C4 F3 78 */ mr r4, r30 /* 800F59AC 000F290C 38 61 00 34 */ addi r3, r1, 0x34 /* 800F59B0 000F2910 48 00 0D 45 */ bl GetBallToWorld__10CMorphBallCFv /* 800F59B4 000F2914 C0 41 00 60 */ lfs f2, 0x60(r1) /* 800F59B8 000F2918 7F C3 F3 78 */ mr r3, r30 /* 800F59BC 000F291C C0 21 00 50 */ lfs f1, 0x50(r1) /* 800F59C0 000F2920 38 81 00 0C */ addi r4, r1, 0xc /* 800F59C4 000F2924 C0 01 00 40 */ lfs f0, 0x40(r1) /* 800F59C8 000F2928 38 BE 18 90 */ addi r5, r30, 0x1890 /* 800F59CC 000F292C D0 21 00 10 */ stfs f1, 0x10(r1) /* 800F59D0 000F2930 D0 01 00 0C */ stfs f0, 0xc(r1) /* 800F59D4 000F2934 D0 41 00 14 */ stfs f2, 0x14(r1) /* 800F59D8 000F2938 48 00 18 35 */ bl CreateSpiderBallParticles__10CMorphBallFRC9CVector3fRC9CVector3f lbl_800F59DC: /* 800F59DC 000F293C 80 7E 00 00 */ lwz r3, 0(r30) /* 800F59E0 000F2940 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F59E4 000F2944 C0 23 09 F4 */ lfs f1, 0x9f4(r3) /* 800F59E8 000F2948 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F59EC 000F294C 4C 40 13 82 */ cror 2, 0, 2 /* 800F59F0 000F2950 40 82 00 14 */ bne lbl_800F5A04 /* 800F59F4 000F2954 FC 20 F8 90 */ fmr f1, f31 /* 800F59F8 000F2958 7F C3 F3 78 */ mr r3, r30 /* 800F59FC 000F295C 7F E4 FB 78 */ mr r4, r31 /* 800F5A00 000F2960 4B FF EE 69 */ bl UpdateEffects__10CMorphBallFfR13CStateManager lbl_800F5A04: /* 800F5A04 000F2964 C0 5E 1E 44 */ lfs f2, 0x1e44(r30) /* 800F5A08 000F2968 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F5A0C 000F296C FC 02 08 40 */ fcmpo cr0, f2, f1 /* 800F5A10 000F2970 40 81 00 3C */ ble lbl_800F5A4C /* 800F5A14 000F2974 C0 1E 1E 48 */ lfs f0, 0x1e48(r30) /* 800F5A18 000F2978 EC 00 17 FC */ fnmsubs f0, f0, f31, f2 /* 800F5A1C 000F297C D0 1E 1E 44 */ stfs f0, 0x1e44(r30) /* 800F5A20 000F2980 C0 1E 1E 44 */ lfs f0, 0x1e44(r30) /* 800F5A24 000F2984 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F5A28 000F2988 4C 40 13 82 */ cror 2, 0, 2 /* 800F5A2C 000F298C 40 82 00 14 */ bne lbl_800F5A40 /* 800F5A30 000F2990 D0 3E 1E 44 */ stfs f1, 0x1e44(r30) /* 800F5A34 000F2994 D0 3E 1E 48 */ stfs f1, 0x1e48(r30) /* 800F5A38 000F2998 D0 3E 1E 4C */ stfs f1, 0x1e4c(r30) /* 800F5A3C 000F299C 48 00 00 10 */ b lbl_800F5A4C lbl_800F5A40: /* 800F5A40 000F29A0 C0 1E 1E 4C */ lfs f0, 0x1e4c(r30) /* 800F5A44 000F29A4 EC 00 F8 2A */ fadds f0, f0, f31 /* 800F5A48 000F29A8 D0 1E 1E 4C */ stfs f0, 0x1e4c(r30) lbl_800F5A4C: /* 800F5A4C 000F29AC 80 1E 00 58 */ lwz r0, 0x58(r30) /* 800F5A50 000F29B0 28 00 00 00 */ cmplwi r0, 0 /* 800F5A54 000F29B4 41 82 00 28 */ beq lbl_800F5A7C /* 800F5A58 000F29B8 80 0D A3 90 */ lwz r0, kInvalidAreaId@sda21(r13) /* 800F5A5C 000F29BC FC 20 F8 90 */ fmr f1, f31 /* 800F5A60 000F29C0 7F E5 FB 78 */ mr r5, r31 /* 800F5A64 000F29C4 38 61 00 18 */ addi r3, r1, 0x18 /* 800F5A68 000F29C8 90 01 00 08 */ stw r0, 8(r1) /* 800F5A6C 000F29CC 38 C1 00 08 */ addi r6, r1, 8 /* 800F5A70 000F29D0 38 E0 00 01 */ li r7, 1 /* 800F5A74 000F29D4 80 9E 00 58 */ lwz r4, 0x58(r30) /* 800F5A78 000F29D8 48 02 00 BD */ bl AdvanceAnimation__10CModelDataFfR13CStateManager7TAreaIdb lbl_800F5A7C: /* 800F5A7C 000F29DC 88 1E 1C 2C */ lbz r0, 0x1c2c(r30) /* 800F5A80 000F29E0 28 00 00 00 */ cmplwi r0, 0 /* 800F5A84 000F29E4 41 82 00 50 */ beq lbl_800F5AD4 /* 800F5A88 000F29E8 C0 5E 1C 28 */ lfs f2, 0x1c28(r30) /* 800F5A8C 000F29EC C0 3E 1C 20 */ lfs f1, 0x1c20(r30) /* 800F5A90 000F29F0 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F5A94 000F29F4 EC 22 0F FA */ fmadds f1, f2, f31, f1 /* 800F5A98 000F29F8 D0 3E 1C 20 */ stfs f1, 0x1c20(r30) /* 800F5A9C 000F29FC C0 3E 1C 20 */ lfs f1, 0x1c20(r30) /* 800F5AA0 000F2A00 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F5AA4 000F2A04 40 80 00 14 */ bge lbl_800F5AB8 /* 800F5AA8 000F2A08 38 00 00 00 */ li r0, 0 /* 800F5AAC 000F2A0C 98 1E 1C 2C */ stb r0, 0x1c2c(r30) /* 800F5AB0 000F2A10 D0 1E 1C 20 */ stfs f0, 0x1c20(r30) /* 800F5AB4 000F2A14 48 00 00 20 */ b lbl_800F5AD4 lbl_800F5AB8: /* 800F5AB8 000F2A18 C0 1E 1C 24 */ lfs f0, 0x1c24(r30) /* 800F5ABC 000F2A1C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F5AC0 000F2A20 40 81 00 14 */ ble lbl_800F5AD4 /* 800F5AC4 000F2A24 38 00 00 00 */ li r0, 0 /* 800F5AC8 000F2A28 98 1E 1C 2C */ stb r0, 0x1c2c(r30) /* 800F5ACC 000F2A2C C0 1E 1C 24 */ lfs f0, 0x1c24(r30) /* 800F5AD0 000F2A30 D0 1E 1C 20 */ stfs f0, 0x1c20(r30) lbl_800F5AD4: /* 800F5AD4 000F2A34 80 7E 1C 1C */ lwz r3, 0x1c1c(r30) /* 800F5AD8 000F2A38 28 03 00 00 */ cmplwi r3, 0 /* 800F5ADC 000F2A3C 41 82 00 10 */ beq lbl_800F5AEC /* 800F5AE0 000F2A40 FC 20 F8 90 */ fmr f1, f31 /* 800F5AE4 000F2A44 7F E4 FB 78 */ mr r4, r31 /* 800F5AE8 000F2A48 48 17 49 05 */ bl Update__20CRainSplashGeneratorFfR13CStateManager lbl_800F5AEC: /* 800F5AEC 000F2A4C FC 20 F8 90 */ fmr f1, f31 /* 800F5AF0 000F2A50 7F C3 F3 78 */ mr r3, r30 /* 800F5AF4 000F2A54 4B FF 8D E9 */ bl UpdateMorphBallSound__10CMorphBallFf /* 800F5AF8 000F2A58 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 800F5AFC 000F2A5C 80 01 00 84 */ lwz r0, 0x84(r1) /* 800F5B00 000F2A60 CB E1 00 70 */ lfd f31, 0x70(r1) /* 800F5B04 000F2A64 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 800F5B08 000F2A68 83 C1 00 68 */ lwz r30, 0x68(r1) /* 800F5B0C 000F2A6C 7C 08 03 A6 */ mtlr r0 /* 800F5B10 000F2A70 38 21 00 80 */ addi r1, r1, 0x80 /* 800F5B14 000F2A74 4E 80 00 20 */ blr .global SwitchToTire__10CMorphBallFv SwitchToTire__10CMorphBallFv: /* 800F5B18 000F2A78 38 00 00 01 */ li r0, 1 /* 800F5B1C 000F2A7C C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F5B20 000F2A80 98 03 00 28 */ stb r0, 0x28(r3) /* 800F5B24 000F2A84 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F5B28 000F2A88 98 03 1C 2C */ stb r0, 0x1c2c(r3) /* 800F5B2C 000F2A8C D0 23 00 30 */ stfs f1, 0x30(r3) /* 800F5B30 000F2A90 D0 03 1C 28 */ stfs f0, 0x1c28(r3) /* 800F5B34 000F2A94 4E 80 00 20 */ blr .global SwitchToMarble__10CMorphBallFv SwitchToMarble__10CMorphBallFv: /* 800F5B38 000F2A98 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 800F5B3C 000F2A9C 7C 08 02 A6 */ mflr r0 /* 800F5B40 000F2AA0 90 01 00 C4 */ stw r0, 0xc4(r1) /* 800F5B44 000F2AA4 38 A1 00 44 */ addi r5, r1, 0x44 /* 800F5B48 000F2AA8 93 E1 00 BC */ stw r31, 0xbc(r1) /* 800F5B4C 000F2AAC 93 C1 00 B8 */ stw r30, 0xb8(r1) /* 800F5B50 000F2AB0 7C 7E 1B 78 */ mr r30, r3 /* 800F5B54 000F2AB4 38 61 00 0C */ addi r3, r1, 0xc /* 800F5B58 000F2AB8 80 9E 00 00 */ lwz r4, 0(r30) /* 800F5B5C 000F2ABC C0 04 05 00 */ lfs f0, 0x500(r4) /* 800F5B60 000F2AC0 D0 01 00 44 */ stfs f0, 0x44(r1) /* 800F5B64 000F2AC4 C0 04 05 04 */ lfs f0, 0x504(r4) /* 800F5B68 000F2AC8 D0 01 00 48 */ stfs f0, 0x48(r1) /* 800F5B6C 000F2ACC C0 04 05 08 */ lfs f0, 0x508(r4) /* 800F5B70 000F2AD0 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 800F5B74 000F2AD4 C0 1E 00 30 */ lfs f0, 0x30(r30) /* 800F5B78 000F2AD8 D0 01 00 08 */ stfs f0, 8(r1) /* 800F5B7C 000F2ADC 80 9E 00 00 */ lwz r4, 0(r30) /* 800F5B80 000F2AE0 38 84 00 34 */ addi r4, r4, 0x34 /* 800F5B84 000F2AE4 48 21 CE A1 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 800F5B88 000F2AE8 38 61 00 18 */ addi r3, r1, 0x18 /* 800F5B8C 000F2AEC 38 81 00 0C */ addi r4, r1, 0xc /* 800F5B90 000F2AF0 48 21 E2 41 */ bl __ct__13CUnitVector3fFRC9CVector3f /* 800F5B94 000F2AF4 7C 64 1B 78 */ mr r4, r3 /* 800F5B98 000F2AF8 38 61 00 24 */ addi r3, r1, 0x24 /* 800F5B9C 000F2AFC 38 A1 00 08 */ addi r5, r1, 8 /* 800F5BA0 000F2B00 48 21 B7 55 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle /* 800F5BA4 000F2B04 C0 61 00 24 */ lfs f3, 0x24(r1) /* 800F5BA8 000F2B08 38 61 00 50 */ addi r3, r1, 0x50 /* 800F5BAC 000F2B0C C0 41 00 28 */ lfs f2, 0x28(r1) /* 800F5BB0 000F2B10 38 81 00 34 */ addi r4, r1, 0x34 /* 800F5BB4 000F2B14 C0 21 00 2C */ lfs f1, 0x2c(r1) /* 800F5BB8 000F2B18 C0 01 00 30 */ lfs f0, 0x30(r1) /* 800F5BBC 000F2B1C D0 61 00 34 */ stfs f3, 0x34(r1) /* 800F5BC0 000F2B20 D0 41 00 38 */ stfs f2, 0x38(r1) /* 800F5BC4 000F2B24 D0 21 00 3C */ stfs f1, 0x3c(r1) /* 800F5BC8 000F2B28 D0 01 00 40 */ stfs f0, 0x40(r1) /* 800F5BCC 000F2B2C 80 BE 00 00 */ lwz r5, 0(r30) /* 800F5BD0 000F2B30 3B E5 00 34 */ addi r31, r5, 0x34 /* 800F5BD4 000F2B34 48 21 C3 E5 */ bl BuildTransform4f__11CQuaternionCFv /* 800F5BD8 000F2B38 7F E4 FB 78 */ mr r4, r31 /* 800F5BDC 000F2B3C 38 61 00 80 */ addi r3, r1, 0x80 /* 800F5BE0 000F2B40 38 A1 00 50 */ addi r5, r1, 0x50 /* 800F5BE4 000F2B44 48 21 CD 6D */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800F5BE8 000F2B48 83 FE 00 00 */ lwz r31, 0(r30) /* 800F5BEC 000F2B4C 38 81 00 80 */ addi r4, r1, 0x80 /* 800F5BF0 000F2B50 38 7F 00 34 */ addi r3, r31, 0x34 /* 800F5BF4 000F2B54 48 21 CF 4D */ bl __as__12CTransform4fFRC12CTransform4f /* 800F5BF8 000F2B58 88 7F 00 E4 */ lbz r3, 0xe4(r31) /* 800F5BFC 000F2B5C 38 80 00 01 */ li r4, 1 /* 800F5C00 000F2B60 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b /* 800F5C04 000F2B64 38 00 00 00 */ li r0, 0 /* 800F5C08 000F2B68 98 7F 00 E4 */ stb r3, 0xe4(r31) /* 800F5C0C 000F2B6C C0 02 91 A8 */ lfs f0, lbl_805AAEC8@sda21(r2) /* 800F5C10 000F2B70 88 7F 00 E4 */ lbz r3, 0xe4(r31) /* 800F5C14 000F2B74 50 83 1F 38 */ rlwimi r3, r4, 3, 0x1c, 0x1c /* 800F5C18 000F2B78 98 7F 00 E4 */ stb r3, 0xe4(r31) /* 800F5C1C 000F2B7C 88 7F 00 E4 */ lbz r3, 0xe4(r31) /* 800F5C20 000F2B80 50 83 17 7A */ rlwimi r3, r4, 2, 0x1d, 0x1d /* 800F5C24 000F2B84 98 7F 00 E4 */ stb r3, 0xe4(r31) /* 800F5C28 000F2B88 98 1E 00 28 */ stb r0, 0x28(r30) /* 800F5C2C 000F2B8C 98 9E 1C 2C */ stb r4, 0x1c2c(r30) /* 800F5C30 000F2B90 D0 1E 1C 28 */ stfs f0, 0x1c28(r30) /* 800F5C34 000F2B94 83 E1 00 BC */ lwz r31, 0xbc(r1) /* 800F5C38 000F2B98 83 C1 00 B8 */ lwz r30, 0xb8(r1) /* 800F5C3C 000F2B9C 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 800F5C40 000F2BA0 7C 08 03 A6 */ mtlr r0 /* 800F5C44 000F2BA4 38 21 00 C0 */ addi r1, r1, 0xc0 /* 800F5C48 000F2BA8 4E 80 00 20 */ blr .global UpdateBallDynamics__10CMorphBallFR13CStateManagerf UpdateBallDynamics__10CMorphBallFR13CStateManagerf: /* 800F5C4C 000F2BAC 94 21 FE 40 */ stwu r1, -0x1c0(r1) /* 800F5C50 000F2BB0 7C 08 02 A6 */ mflr r0 /* 800F5C54 000F2BB4 90 01 01 C4 */ stw r0, 0x1c4(r1) /* 800F5C58 000F2BB8 DB E1 01 B0 */ stfd f31, 0x1b0(r1) /* 800F5C5C 000F2BBC F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 /* 800F5C60 000F2BC0 DB C1 01 A0 */ stfd f30, 0x1a0(r1) /* 800F5C64 000F2BC4 F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0 /* 800F5C68 000F2BC8 93 E1 01 9C */ stw r31, 0x19c(r1) /* 800F5C6C 000F2BCC 93 C1 01 98 */ stw r30, 0x198(r1) /* 800F5C70 000F2BD0 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F5C74 000F2BD4 3C A0 80 5A */ lis r5, sIdentity__12CTransform4f@ha /* 800F5C78 000F2BD8 FF E0 08 90 */ fmr f31, f1 /* 800F5C7C 000F2BDC 7C 7E 1B 78 */ mr r30, r3 /* 800F5C80 000F2BE0 D0 01 00 54 */ stfs f0, 0x54(r1) /* 800F5C84 000F2BE4 38 05 66 70 */ addi r0, r5, sIdentity__12CTransform4f@l /* 800F5C88 000F2BE8 7C 9F 23 78 */ mr r31, r4 /* 800F5C8C 000F2BEC 38 61 01 50 */ addi r3, r1, 0x150 /* 800F5C90 000F2BF0 D0 01 00 58 */ stfs f0, 0x58(r1) /* 800F5C94 000F2BF4 7C 04 03 78 */ mr r4, r0 /* 800F5C98 000F2BF8 D0 01 00 5C */ stfs f0, 0x5c(r1) /* 800F5C9C 000F2BFC D0 01 00 48 */ stfs f0, 0x48(r1) /* 800F5CA0 000F2C00 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 800F5CA4 000F2C04 D0 01 00 50 */ stfs f0, 0x50(r1) /* 800F5CA8 000F2C08 48 21 CE CD */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F5CAC 000F2C0C 80 7E 00 00 */ lwz r3, 0(r30) /* 800F5CB0 000F2C10 38 63 01 44 */ addi r3, r3, 0x144 /* 800F5CB4 000F2C14 4B F2 58 7D */ bl GetVector__10CAxisAngleCFv /* 800F5CB8 000F2C18 C0 62 92 84 */ lfs f3, lbl_805AAFA4@sda21(r2) /* 800F5CBC 000F2C1C 38 81 00 30 */ addi r4, r1, 0x30 /* 800F5CC0 000F2C20 C0 43 00 04 */ lfs f2, 4(r3) /* 800F5CC4 000F2C24 C0 23 00 08 */ lfs f1, 8(r3) /* 800F5CC8 000F2C28 C0 03 00 00 */ lfs f0, 0(r3) /* 800F5CCC 000F2C2C EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F5CD0 000F2C30 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F5CD4 000F2C34 38 61 00 3C */ addi r3, r1, 0x3c /* 800F5CD8 000F2C38 EC 03 00 32 */ fmuls f0, f3, f0 /* 800F5CDC 000F2C3C D0 41 00 34 */ stfs f2, 0x34(r1) /* 800F5CE0 000F2C40 D0 01 00 30 */ stfs f0, 0x30(r1) /* 800F5CE4 000F2C44 D0 21 00 38 */ stfs f1, 0x38(r1) /* 800F5CE8 000F2C48 4B F2 58 9D */ bl __ct__10CAxisAngleFRC9CVector3f /* 800F5CEC 000F2C4C 7C 64 1B 78 */ mr r4, r3 /* 800F5CF0 000F2C50 80 7E 00 00 */ lwz r3, 0(r30) /* 800F5CF4 000F2C54 48 02 4F 09 */ bl SetAngularVelocityWR__13CPhysicsActorFRC10CAxisAngle /* 800F5CF8 000F2C58 80 AD 88 80 */ lwz r5, lbl_805A7440@sda21(r13) /* 800F5CFC 000F2C5C 38 60 00 00 */ li r3, 0 /* 800F5D00 000F2C60 38 80 00 01 */ li r4, 1 /* 800F5D04 000F2C64 48 29 41 F1 */ bl __shl2i /* 800F5D08 000F2C68 38 C0 00 01 */ li r6, 1 /* 800F5D0C 000F2C6C 38 00 00 00 */ li r0, 0 /* 800F5D10 000F2C70 90 81 00 7C */ stw r4, 0x7c(r1) /* 800F5D14 000F2C74 7F E4 FB 78 */ mr r4, r31 /* 800F5D18 000F2C78 C0 2D A3 28 */ lfs f1, lbl_805A8EE8@sda21(r13) /* 800F5D1C 000F2C7C 38 A1 00 78 */ addi r5, r1, 0x78 /* 800F5D20 000F2C80 90 61 00 78 */ stw r3, 0x78(r1) /* 800F5D24 000F2C84 7F C3 F3 78 */ mr r3, r30 /* 800F5D28 000F2C88 90 C1 00 70 */ stw r6, 0x70(r1) /* 800F5D2C 000F2C8C 90 01 00 84 */ stw r0, 0x84(r1) /* 800F5D30 000F2C90 90 01 00 80 */ stw r0, 0x80(r1) /* 800F5D34 000F2C94 90 C1 00 88 */ stw r6, 0x88(r1) /* 800F5D38 000F2C98 4B FF B8 2D */ bl BallCloseToCollision__10CMorphBallCFRC13CStateManagerfRC15CMaterialFilter /* 800F5D3C 000F2C9C 88 1E 1D F8 */ lbz r0, 0x1df8(r30) /* 800F5D40 000F2CA0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b /* 800F5D44 000F2CA4 FC 20 F8 90 */ fmr f1, f31 /* 800F5D48 000F2CA8 7F C3 F3 78 */ mr r3, r30 /* 800F5D4C 000F2CAC 98 1E 1D F8 */ stb r0, 0x1df8(r30) /* 800F5D50 000F2CB0 7F E4 FB 78 */ mr r4, r31 /* 800F5D54 000F2CB4 4B FF BC 89 */ bl UpdateHalfPipeStatus__10CMorphBallFR13CStateManagerf /* 800F5D58 000F2CB8 C0 1E 1E 00 */ lfs f0, 0x1e00(r30) /* 800F5D5C 000F2CBC EC 00 F8 28 */ fsubs f0, f0, f31 /* 800F5D60 000F2CC0 D0 1E 1E 00 */ stfs f0, 0x1e00(r30) /* 800F5D64 000F2CC4 C0 3E 1E 00 */ lfs f1, 0x1e00(r30) /* 800F5D68 000F2CC8 C0 0D 88 84 */ lfs f0, lbl_805A7444@sda21(r13) /* 800F5D6C 000F2CCC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F5D70 000F2CD0 40 80 00 0C */ bge lbl_800F5D7C /* 800F5D74 000F2CD4 38 6D 88 84 */ addi r3, r13, lbl_805A7444@sda21 /* 800F5D78 000F2CD8 48 00 00 08 */ b lbl_800F5D80 lbl_800F5D7C: /* 800F5D7C 000F2CDC 38 7E 1E 00 */ addi r3, r30, 0x1e00 lbl_800F5D80: /* 800F5D80 000F2CE0 C0 03 00 00 */ lfs f0, 0(r3) /* 800F5D84 000F2CE4 D0 1E 1E 00 */ stfs f0, 0x1e00(r30) /* 800F5D88 000F2CE8 C0 1E 19 1C */ lfs f0, 0x191c(r30) /* 800F5D8C 000F2CEC EC 00 F8 28 */ fsubs f0, f0, f31 /* 800F5D90 000F2CF0 D0 1E 19 1C */ stfs f0, 0x191c(r30) /* 800F5D94 000F2CF4 C0 3E 19 1C */ lfs f1, 0x191c(r30) /* 800F5D98 000F2CF8 C0 0D 88 88 */ lfs f0, lbl_805A7448@sda21(r13) /* 800F5D9C 000F2CFC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F5DA0 000F2D00 40 80 00 0C */ bge lbl_800F5DAC /* 800F5DA4 000F2D04 38 6D 88 88 */ addi r3, r13, lbl_805A7448@sda21 /* 800F5DA8 000F2D08 48 00 00 08 */ b lbl_800F5DB0 lbl_800F5DAC: /* 800F5DAC 000F2D0C 38 7E 19 1C */ addi r3, r30, 0x191c lbl_800F5DB0: /* 800F5DB0 000F2D10 C0 03 00 00 */ lfs f0, 0(r3) /* 800F5DB4 000F2D14 D0 1E 19 1C */ stfs f0, 0x191c(r30) /* 800F5DB8 000F2D18 80 1E 18 7C */ lwz r0, 0x187c(r30) /* 800F5DBC 000F2D1C 2C 00 00 01 */ cmpwi r0, 1 /* 800F5DC0 000F2D20 40 82 00 6C */ bne lbl_800F5E2C /* 800F5DC4 000F2D24 7F C4 F3 78 */ mr r4, r30 /* 800F5DC8 000F2D28 38 61 01 20 */ addi r3, r1, 0x120 /* 800F5DCC 000F2D2C 38 BE 18 80 */ addi r5, r30, 0x1880 /* 800F5DD0 000F2D30 38 DE 18 90 */ addi r6, r30, 0x1890 /* 800F5DD4 000F2D34 38 FE 18 9C */ addi r7, r30, 0x189c /* 800F5DD8 000F2D38 48 00 07 95 */ bl CalculateSurfaceToWorld__10CMorphBallCFRC9CVector3fRC9CVector3fRC9CVector3f /* 800F5DDC 000F2D3C 38 7E 19 24 */ addi r3, r30, 0x1924 /* 800F5DE0 000F2D40 38 81 01 20 */ addi r4, r1, 0x120 /* 800F5DE4 000F2D44 48 21 CD 5D */ bl __as__12CTransform4fFRC12CTransform4f /* 800F5DE8 000F2D48 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F5DEC 000F2D4C D0 1E 00 2C */ stfs f0, 0x2c(r30) /* 800F5DF0 000F2D50 88 1E 00 28 */ lbz r0, 0x28(r30) /* 800F5DF4 000F2D54 28 00 00 00 */ cmplwi r0, 0 /* 800F5DF8 000F2D58 40 82 00 0C */ bne lbl_800F5E04 /* 800F5DFC 000F2D5C 7F C3 F3 78 */ mr r3, r30 /* 800F5E00 000F2D60 4B FF FD 19 */ bl SwitchToTire__10CMorphBallFv lbl_800F5E04: /* 800F5E04 000F2D64 38 00 00 01 */ li r0, 1 /* 800F5E08 000F2D68 C0 02 91 A8 */ lfs f0, lbl_805AAEC8@sda21(r2) /* 800F5E0C 000F2D6C 98 1E 1C 2C */ stb r0, 0x1c2c(r30) /* 800F5E10 000F2D70 FC 20 F8 90 */ fmr f1, f31 /* 800F5E14 000F2D74 7F C3 F3 78 */ mr r3, r30 /* 800F5E18 000F2D78 7F E4 FB 78 */ mr r4, r31 /* 800F5E1C 000F2D7C D0 1E 1C 28 */ stfs f0, 0x1c28(r30) /* 800F5E20 000F2D80 38 BE 18 90 */ addi r5, r30, 0x1890 /* 800F5E24 000F2D84 4B FF D8 09 */ bl UpdateMarbleDynamics__10CMorphBallFR13CStateManagerfRC9CVector3f /* 800F5E28 000F2D88 48 00 01 C0 */ b lbl_800F5FE8 lbl_800F5E2C: /* 800F5E2C 000F2D8C 80 7E 00 00 */ lwz r3, 0(r30) /* 800F5E30 000F2D90 80 03 02 B0 */ lwz r0, 0x2b0(r3) /* 800F5E34 000F2D94 2C 00 00 02 */ cmpwi r0, 2 /* 800F5E38 000F2D98 40 82 00 0C */ bne lbl_800F5E44 /* 800F5E3C 000F2D9C 80 03 02 AC */ lwz r0, 0x2ac(r3) /* 800F5E40 000F2DA0 48 00 00 08 */ b lbl_800F5E48 lbl_800F5E44: /* 800F5E44 000F2DA4 38 00 00 04 */ li r0, 4 lbl_800F5E48: /* 800F5E48 000F2DA8 2C 00 00 01 */ cmpwi r0, 1 /* 800F5E4C 000F2DAC 41 82 01 94 */ beq lbl_800F5FE0 /* 800F5E50 000F2DB0 7F C3 F3 78 */ mr r3, r30 /* 800F5E54 000F2DB4 38 81 00 54 */ addi r4, r1, 0x54 /* 800F5E58 000F2DB8 38 A1 00 48 */ addi r5, r1, 0x48 /* 800F5E5C 000F2DBC 48 00 06 C5 */ bl CalculateBallContactInfo__10CMorphBallCFR9CVector3fR9CVector3f /* 800F5E60 000F2DC0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F5E64 000F2DC4 41 82 01 84 */ beq lbl_800F5FE8 /* 800F5E68 000F2DC8 80 FE 00 00 */ lwz r7, 0(r30) /* 800F5E6C 000F2DCC 7F C4 F3 78 */ mr r4, r30 /* 800F5E70 000F2DD0 38 61 00 F0 */ addi r3, r1, 0xf0 /* 800F5E74 000F2DD4 38 A1 00 54 */ addi r5, r1, 0x54 /* 800F5E78 000F2DD8 38 C1 00 48 */ addi r6, r1, 0x48 /* 800F5E7C 000F2DDC 38 E7 05 00 */ addi r7, r7, 0x500 /* 800F5E80 000F2DE0 48 00 06 ED */ bl CalculateSurfaceToWorld__10CMorphBallCFRC9CVector3fRC9CVector3fRC9CVector3f /* 800F5E84 000F2DE4 38 7E 19 24 */ addi r3, r30, 0x1924 /* 800F5E88 000F2DE8 38 81 00 F0 */ addi r4, r1, 0xf0 /* 800F5E8C 000F2DEC 48 21 CC B5 */ bl __as__12CTransform4fFRC12CTransform4f /* 800F5E90 000F2DF0 80 7E 00 00 */ lwz r3, 0(r30) /* 800F5E94 000F2DF4 38 63 01 38 */ addi r3, r3, 0x138 /* 800F5E98 000F2DF8 48 21 EA 21 */ bl Magnitude__9CVector3fCFv /* 800F5E9C 000F2DFC 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F5EA0 000F2E00 FF C0 08 90 */ fmr f30, f1 /* 800F5EA4 000F2E04 C0 03 01 F0 */ lfs f0, 0x1f0(r3) /* 800F5EA8 000F2E08 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 800F5EAC 000F2E0C 40 80 00 18 */ bge lbl_800F5EC4 /* 800F5EB0 000F2E10 88 1E 00 28 */ lbz r0, 0x28(r30) /* 800F5EB4 000F2E14 28 00 00 00 */ cmplwi r0, 0 /* 800F5EB8 000F2E18 41 82 00 0C */ beq lbl_800F5EC4 /* 800F5EBC 000F2E1C 7F C3 F3 78 */ mr r3, r30 /* 800F5EC0 000F2E20 4B FF FC 79 */ bl SwitchToMarble__10CMorphBallFv lbl_800F5EC4: /* 800F5EC4 000F2E24 FC 20 F8 90 */ fmr f1, f31 /* 800F5EC8 000F2E28 7F C3 F3 78 */ mr r3, r30 /* 800F5ECC 000F2E2C 7F E4 FB 78 */ mr r4, r31 /* 800F5ED0 000F2E30 38 A1 00 48 */ addi r5, r1, 0x48 /* 800F5ED4 000F2E34 4B FF D7 59 */ bl UpdateMarbleDynamics__10CMorphBallFR13CStateManagerfRC9CVector3f /* 800F5ED8 000F2E38 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F5EDC 000F2E3C 41 82 00 2C */ beq lbl_800F5F08 /* 800F5EE0 000F2E40 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F5EE4 000F2E44 C0 03 01 F4 */ lfs f0, 0x1f4(r3) /* 800F5EE8 000F2E48 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 800F5EEC 000F2E4C 4C 41 13 82 */ cror 2, 1, 2 /* 800F5EF0 000F2E50 40 82 00 18 */ bne lbl_800F5F08 /* 800F5EF4 000F2E54 88 1E 00 28 */ lbz r0, 0x28(r30) /* 800F5EF8 000F2E58 28 00 00 00 */ cmplwi r0, 0 /* 800F5EFC 000F2E5C 40 82 00 0C */ bne lbl_800F5F08 /* 800F5F00 000F2E60 7F C3 F3 78 */ mr r3, r30 /* 800F5F04 000F2E64 4B FF FC 15 */ bl SwitchToTire__10CMorphBallFv lbl_800F5F08: /* 800F5F08 000F2E68 88 1E 00 28 */ lbz r0, 0x28(r30) /* 800F5F0C 000F2E6C 28 00 00 00 */ cmplwi r0, 0 /* 800F5F10 000F2E70 41 82 00 D8 */ beq lbl_800F5FE8 /* 800F5F14 000F2E74 80 FE 00 00 */ lwz r7, 0(r30) /* 800F5F18 000F2E78 80 07 02 B0 */ lwz r0, 0x2b0(r7) /* 800F5F1C 000F2E7C 2C 00 00 02 */ cmpwi r0, 2 /* 800F5F20 000F2E80 40 82 00 0C */ bne lbl_800F5F2C /* 800F5F24 000F2E84 80 07 02 AC */ lwz r0, 0x2ac(r7) /* 800F5F28 000F2E88 48 00 00 08 */ b lbl_800F5F30 lbl_800F5F2C: /* 800F5F2C 000F2E8C 38 00 00 04 */ li r0, 4 lbl_800F5F30: /* 800F5F30 000F2E90 80 AD A1 1C */ lwz r5, gpTweakBall@sda21(r13) /* 800F5F34 000F2E94 54 00 10 3A */ slwi r0, r0, 2 /* 800F5F38 000F2E98 38 61 00 24 */ addi r3, r1, 0x24 /* 800F5F3C 000F2E9C 38 87 00 34 */ addi r4, r7, 0x34 /* 800F5F40 000F2EA0 7C C5 02 14 */ add r6, r5, r0 /* 800F5F44 000F2EA4 38 A7 01 5C */ addi r5, r7, 0x15c /* 800F5F48 000F2EA8 C3 C6 00 04 */ lfs f30, 4(r6) /* 800F5F4C 000F2EAC 48 21 CA D9 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 800F5F50 000F2EB0 C0 01 00 24 */ lfs f0, 0x24(r1) /* 800F5F54 000F2EB4 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F5F58 000F2EB8 EC 40 F0 24 */ fdivs f2, f0, f30 /* 800F5F5C 000F2EBC C0 23 01 EC */ lfs f1, 0x1ec(r3) /* 800F5F60 000F2EC0 C0 03 01 F8 */ lfs f0, 0x1f8(r3) /* 800F5F64 000F2EC4 EC 22 00 72 */ fmuls f1, f2, f1 /* 800F5F68 000F2EC8 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F5F6C 000F2ECC D0 1E 00 2C */ stfs f0, 0x2c(r30) /* 800F5F70 000F2ED0 C0 5E 00 2C */ lfs f2, 0x2c(r30) /* 800F5F74 000F2ED4 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F5F78 000F2ED8 FC 20 12 10 */ fabs f1, f2 /* 800F5F7C 000F2EDC C0 03 01 EC */ lfs f0, 0x1ec(r3) /* 800F5F80 000F2EE0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F5F84 000F2EE4 40 81 00 14 */ ble lbl_800F5F98 /* 800F5F88 000F2EE8 C0 62 91 A8 */ lfs f3, lbl_805AAEC8@sda21(r2) /* 800F5F8C 000F2EEC C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F5F90 000F2EF0 FC 22 18 6E */ fsel f1, f2, f1, f3 /* 800F5F94 000F2EF4 EC 40 00 72 */ fmuls f2, f0, f1 lbl_800F5F98: /* 800F5F98 000F2EF8 D0 5E 00 2C */ stfs f2, 0x2c(r30) /* 800F5F9C 000F2EFC C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F5FA0 000F2F00 80 7E 00 00 */ lwz r3, 0(r30) /* 800F5FA4 000F2F04 C0 3E 19 34 */ lfs f1, 0x1934(r30) /* 800F5FA8 000F2F08 C0 43 00 44 */ lfs f2, 0x44(r3) /* 800F5FAC 000F2F0C C0 63 00 34 */ lfs f3, 0x34(r3) /* 800F5FB0 000F2F10 EC 22 00 72 */ fmuls f1, f2, f1 /* 800F5FB4 000F2F14 C0 5E 19 24 */ lfs f2, 0x1924(r30) /* 800F5FB8 000F2F18 C0 A3 00 54 */ lfs f5, 0x54(r3) /* 800F5FBC 000F2F1C C0 9E 19 44 */ lfs f4, 0x1944(r30) /* 800F5FC0 000F2F20 EC 23 08 BA */ fmadds f1, f3, f2, f1 /* 800F5FC4 000F2F24 EC 25 09 3A */ fmadds f1, f5, f4, f1 /* 800F5FC8 000F2F28 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F5FCC 000F2F2C 40 80 00 1C */ bge lbl_800F5FE8 /* 800F5FD0 000F2F30 C0 1E 00 2C */ lfs f0, 0x2c(r30) /* 800F5FD4 000F2F34 FC 00 00 50 */ fneg f0, f0 /* 800F5FD8 000F2F38 D0 1E 00 2C */ stfs f0, 0x2c(r30) /* 800F5FDC 000F2F3C 48 00 00 0C */ b lbl_800F5FE8 lbl_800F5FE0: /* 800F5FE0 000F2F40 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F5FE4 000F2F44 D0 1E 00 2C */ stfs f0, 0x2c(r30) lbl_800F5FE8: /* 800F5FE8 000F2F48 C0 5E 00 2C */ lfs f2, 0x2c(r30) /* 800F5FEC 000F2F4C 3C 00 43 30 */ lis r0, 0x4330 /* 800F5FF0 000F2F50 C0 3E 00 30 */ lfs f1, 0x30(r30) /* 800F5FF4 000F2F54 C0 02 92 A4 */ lfs f0, lbl_805AAFC4@sda21(r2) /* 800F5FF8 000F2F58 EC 82 08 28 */ fsubs f4, f2, f1 /* 800F5FFC 000F2F5C 90 01 01 88 */ stw r0, 0x188(r1) /* 800F6000 000F2F60 C8 62 92 10 */ lfd f3, lbl_805AAF30@sda21(r2) /* 800F6004 000F2F64 C0 22 92 D4 */ lfs f1, lbl_805AAFF4@sda21(r2) /* 800F6008 000F2F68 EC 44 00 32 */ fmuls f2, f4, f0 /* 800F600C 000F2F6C C0 02 92 64 */ lfs f0, lbl_805AAF84@sda21(r2) /* 800F6010 000F2F70 FC 40 10 1E */ fctiwz f2, f2 /* 800F6014 000F2F74 D8 41 01 80 */ stfd f2, 0x180(r1) /* 800F6018 000F2F78 80 01 01 84 */ lwz r0, 0x184(r1) /* 800F601C 000F2F7C 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 800F6020 000F2F80 90 01 01 8C */ stw r0, 0x18c(r1) /* 800F6024 000F2F84 C8 41 01 88 */ lfd f2, 0x188(r1) /* 800F6028 000F2F88 EC 42 18 28 */ fsubs f2, f2, f3 /* 800F602C 000F2F8C EC 82 20 7C */ fnmsubs f4, f2, f1, f4 /* 800F6030 000F2F90 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 800F6034 000F2F94 40 81 00 0C */ ble lbl_800F6040 /* 800F6038 000F2F98 EC 84 08 28 */ fsubs f4, f4, f1 /* 800F603C 000F2F9C 48 00 00 14 */ b lbl_800F6050 lbl_800F6040: /* 800F6040 000F2FA0 C0 02 92 D8 */ lfs f0, lbl_805AAFF8@sda21(r2) /* 800F6044 000F2FA4 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 800F6048 000F2FA8 40 80 00 08 */ bge lbl_800F6050 /* 800F604C 000F2FAC EC 81 20 2A */ fadds f4, f1, f4 lbl_800F6050: /* 800F6050 000F2FB0 FC 20 22 10 */ fabs f1, f4 /* 800F6054 000F2FB4 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F6058 000F2FB8 C0 02 91 FC */ lfs f0, lbl_805AAF1C@sda21(r2) /* 800F605C 000F2FBC C0 43 01 EC */ lfs f2, 0x1ec(r3) /* 800F6060 000F2FC0 FC 20 08 18 */ frsp f1, f1 /* 800F6064 000F2FC4 C0 63 01 FC */ lfs f3, 0x1fc(r3) /* 800F6068 000F2FC8 FC 04 00 40 */ fcmpo cr0, f4, f0 /* 800F606C 000F2FCC EC 02 00 72 */ fmuls f0, f2, f1 /* 800F6070 000F2FD0 EC 23 00 32 */ fmuls f1, f3, f0 /* 800F6074 000F2FD4 40 81 00 14 */ ble lbl_800F6088 /* 800F6078 000F2FD8 C0 1E 00 30 */ lfs f0, 0x30(r30) /* 800F607C 000F2FDC EC 01 07 FA */ fmadds f0, f1, f31, f0 /* 800F6080 000F2FE0 D0 1E 00 30 */ stfs f0, 0x30(r30) /* 800F6084 000F2FE4 48 00 00 28 */ b lbl_800F60AC lbl_800F6088: /* 800F6088 000F2FE8 C0 02 92 1C */ lfs f0, lbl_805AAF3C@sda21(r2) /* 800F608C 000F2FEC FC 04 00 40 */ fcmpo cr0, f4, f0 /* 800F6090 000F2FF0 40 80 00 14 */ bge lbl_800F60A4 /* 800F6094 000F2FF4 C0 1E 00 30 */ lfs f0, 0x30(r30) /* 800F6098 000F2FF8 EC 01 07 FC */ fnmsubs f0, f1, f31, f0 /* 800F609C 000F2FFC D0 1E 00 30 */ stfs f0, 0x30(r30) /* 800F60A0 000F3000 48 00 00 0C */ b lbl_800F60AC lbl_800F60A4: /* 800F60A4 000F3004 C0 1E 00 2C */ lfs f0, 0x2c(r30) /* 800F60A8 000F3008 D0 1E 00 30 */ stfs f0, 0x30(r30) lbl_800F60AC: /* 800F60AC 000F300C 80 1E 18 7C */ lwz r0, 0x187c(r30) /* 800F60B0 000F3010 2C 00 00 01 */ cmpwi r0, 1 /* 800F60B4 000F3014 41 82 00 18 */ beq lbl_800F60CC /* 800F60B8 000F3018 7F C3 F3 78 */ mr r3, r30 /* 800F60BC 000F301C 4B FF 9F 55 */ bl CalculateSurfaceFriction__10CMorphBallCFv /* 800F60C0 000F3020 7F C3 F3 78 */ mr r3, r30 /* 800F60C4 000F3024 4B FF D4 99 */ bl ApplyFriction__10CMorphBallFf /* 800F60C8 000F3028 48 00 00 14 */ b lbl_800F60DC lbl_800F60CC: /* 800F60CC 000F302C C0 3E 18 B4 */ lfs f1, 0x18b4(r30) /* 800F60D0 000F3030 7F C3 F3 78 */ mr r3, r30 /* 800F60D4 000F3034 C0 5E 18 B8 */ lfs f2, 0x18b8(r30) /* 800F60D8 000F3038 4B FF D3 C5 */ bl DampLinearAndAngularVelocities__10CMorphBallFff lbl_800F60DC: /* 800F60DC 000F303C 80 1E 18 7C */ lwz r0, 0x187c(r30) /* 800F60E0 000F3040 2C 00 00 01 */ cmpwi r0, 1 /* 800F60E4 000F3044 41 82 00 10 */ beq lbl_800F60F4 /* 800F60E8 000F3048 7F C3 F3 78 */ mr r3, r30 /* 800F60EC 000F304C 7F E4 FB 78 */ mr r4, r31 /* 800F60F0 000F3050 4B FF 9E 79 */ bl ApplyGravity__10CMorphBallFR13CStateManager lbl_800F60F4: /* 800F60F4 000F3054 80 BE 00 74 */ lwz r5, 0x74(r30) /* 800F60F8 000F3058 38 60 00 00 */ li r3, 0 /* 800F60FC 000F305C 2C 05 00 00 */ cmpwi r5, 0 /* 800F6100 000F3060 40 81 00 40 */ ble lbl_800F6140 /* 800F6104 000F3064 2C 05 00 08 */ cmpwi r5, 8 /* 800F6108 000F3068 38 85 FF F8 */ addi r4, r5, -8 /* 800F610C 000F306C 40 81 00 20 */ ble lbl_800F612C /* 800F6110 000F3070 38 04 00 07 */ addi r0, r4, 7 /* 800F6114 000F3074 54 00 E8 FE */ srwi r0, r0, 3 /* 800F6118 000F3078 7C 09 03 A6 */ mtctr r0 /* 800F611C 000F307C 2C 04 00 00 */ cmpwi r4, 0 /* 800F6120 000F3080 40 81 00 0C */ ble lbl_800F612C lbl_800F6124: /* 800F6124 000F3084 38 63 00 08 */ addi r3, r3, 8 /* 800F6128 000F3088 42 00 FF FC */ bdnz lbl_800F6124 lbl_800F612C: /* 800F612C 000F308C 7C 03 28 50 */ subf r0, r3, r5 /* 800F6130 000F3090 7C 09 03 A6 */ mtctr r0 /* 800F6134 000F3094 7C 03 28 00 */ cmpw r3, r5 /* 800F6138 000F3098 40 80 00 08 */ bge lbl_800F6140 lbl_800F613C: /* 800F613C 000F309C 42 00 00 00 */ bdnz lbl_800F613C lbl_800F6140: /* 800F6140 000F30A0 38 00 00 00 */ li r0, 0 /* 800F6144 000F30A4 7F C4 F3 78 */ mr r4, r30 /* 800F6148 000F30A8 90 1E 00 74 */ stw r0, 0x74(r30) /* 800F614C 000F30AC 38 61 00 C0 */ addi r3, r1, 0xc0 /* 800F6150 000F30B0 48 00 05 A5 */ bl GetBallToWorld__10CMorphBallCFv /* 800F6154 000F30B4 38 61 00 14 */ addi r3, r1, 0x14 /* 800F6158 000F30B8 38 81 00 C0 */ addi r4, r1, 0xc0 /* 800F615C 000F30BC 48 21 BF CD */ bl FromMatrix__11CQuaternionFRC12CTransform4f /* 800F6160 000F30C0 38 7E 1C 3C */ addi r3, r30, 0x1c3c /* 800F6164 000F30C4 38 81 00 14 */ addi r4, r1, 0x14 /* 800F6168 000F30C8 48 00 01 B9 */ bl sub_800f6320 /* 800F616C 000F30CC 7F C4 F3 78 */ mr r4, r30 /* 800F6170 000F30D0 38 61 00 90 */ addi r3, r1, 0x90 /* 800F6174 000F30D4 48 00 05 81 */ bl GetBallToWorld__10CMorphBallCFv /* 800F6178 000F30D8 C0 41 00 BC */ lfs f2, 0xbc(r1) /* 800F617C 000F30DC 38 7E 1C 90 */ addi r3, r30, 0x1c90 /* 800F6180 000F30E0 C0 21 00 AC */ lfs f1, 0xac(r1) /* 800F6184 000F30E4 38 81 00 08 */ addi r4, r1, 8 /* 800F6188 000F30E8 C0 01 00 9C */ lfs f0, 0x9c(r1) /* 800F618C 000F30EC D0 21 00 0C */ stfs f1, 0xc(r1) /* 800F6190 000F30F0 D0 01 00 08 */ stfs f0, 8(r1) /* 800F6194 000F30F4 D0 41 00 10 */ stfs f2, 0x10(r1) /* 800F6198 000F30F8 48 00 00 2D */ bl sub_800f61c4 /* 800F619C 000F30FC E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 /* 800F61A0 000F3100 CB E1 01 B0 */ lfd f31, 0x1b0(r1) /* 800F61A4 000F3104 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0 /* 800F61A8 000F3108 CB C1 01 A0 */ lfd f30, 0x1a0(r1) /* 800F61AC 000F310C 83 E1 01 9C */ lwz r31, 0x19c(r1) /* 800F61B0 000F3110 80 01 01 C4 */ lwz r0, 0x1c4(r1) /* 800F61B4 000F3114 83 C1 01 98 */ lwz r30, 0x198(r1) /* 800F61B8 000F3118 7C 08 03 A6 */ mtlr r0 /* 800F61BC 000F311C 38 21 01 C0 */ addi r1, r1, 0x1c0 /* 800F61C0 000F3120 4E 80 00 20 */ blr .global sub_800f61c4 sub_800f61c4: /* 800F61C4 000F3124 80 03 00 00 */ lwz r0, 0(r3) /* 800F61C8 000F3128 2C 00 00 05 */ cmpwi r0, 5 /* 800F61CC 000F312C 40 80 00 38 */ bge lbl_800F6204 /* 800F61D0 000F3130 1C 00 00 0C */ mulli r0, r0, 0xc /* 800F61D4 000F3134 7C A3 02 14 */ add r5, r3, r0 /* 800F61D8 000F3138 34 A5 00 04 */ addic. r5, r5, 4 /* 800F61DC 000F313C 41 82 00 1C */ beq lbl_800F61F8 /* 800F61E0 000F3140 C0 04 00 00 */ lfs f0, 0(r4) /* 800F61E4 000F3144 D0 05 00 00 */ stfs f0, 0(r5) /* 800F61E8 000F3148 C0 04 00 04 */ lfs f0, 4(r4) /* 800F61EC 000F314C D0 05 00 04 */ stfs f0, 4(r5) /* 800F61F0 000F3150 C0 04 00 08 */ lfs f0, 8(r4) /* 800F61F4 000F3154 D0 05 00 08 */ stfs f0, 8(r5) lbl_800F61F8: /* 800F61F8 000F3158 80 A3 00 00 */ lwz r5, 0(r3) /* 800F61FC 000F315C 38 05 00 01 */ addi r0, r5, 1 /* 800F6200 000F3160 90 03 00 00 */ stw r0, 0(r3) lbl_800F6204: /* 800F6204 000F3164 80 A3 00 00 */ lwz r5, 0(r3) /* 800F6208 000F3168 35 25 FF FF */ addic. r9, r5, -1 /* 800F620C 000F316C 1C 09 00 0C */ mulli r0, r9, 0xc /* 800F6210 000F3170 7D 25 4B 78 */ mr r5, r9 /* 800F6214 000F3174 7D 03 02 14 */ add r8, r3, r0 /* 800F6218 000F3178 39 08 00 04 */ addi r8, r8, 4 /* 800F621C 000F317C 40 81 00 E8 */ ble lbl_800F6304 /* 800F6220 000F3180 55 20 F0 BF */ rlwinm. r0, r9, 0x1e, 2, 0x1f /* 800F6224 000F3184 7C 09 03 A6 */ mtctr r0 /* 800F6228 000F3188 41 82 00 A8 */ beq lbl_800F62D0 lbl_800F622C: /* 800F622C 000F318C 38 C9 FF FF */ addi r6, r9, -1 /* 800F6230 000F3190 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F6234 000F3194 38 C9 FF FE */ addi r6, r9, -2 /* 800F6238 000F3198 7C E3 02 14 */ add r7, r3, r0 /* 800F623C 000F319C C0 07 00 04 */ lfs f0, 4(r7) /* 800F6240 000F31A0 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F6244 000F31A4 38 C9 FF FD */ addi r6, r9, -3 /* 800F6248 000F31A8 D0 08 00 00 */ stfs f0, 0(r8) /* 800F624C 000F31AC C0 07 00 08 */ lfs f0, 8(r7) /* 800F6250 000F31B0 D0 08 00 04 */ stfs f0, 4(r8) /* 800F6254 000F31B4 C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F6258 000F31B8 7C E3 02 14 */ add r7, r3, r0 /* 800F625C 000F31BC 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F6260 000F31C0 38 C9 FF FC */ addi r6, r9, -4 /* 800F6264 000F31C4 D0 08 00 08 */ stfs f0, 8(r8) /* 800F6268 000F31C8 39 29 FF FC */ addi r9, r9, -4 /* 800F626C 000F31CC C0 07 00 04 */ lfs f0, 4(r7) /* 800F6270 000F31D0 D0 08 FF F4 */ stfs f0, -0xc(r8) /* 800F6274 000F31D4 C0 07 00 08 */ lfs f0, 8(r7) /* 800F6278 000F31D8 D0 08 FF F8 */ stfs f0, -8(r8) /* 800F627C 000F31DC C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F6280 000F31E0 7C E3 02 14 */ add r7, r3, r0 /* 800F6284 000F31E4 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F6288 000F31E8 D0 08 FF FC */ stfs f0, -4(r8) /* 800F628C 000F31EC C0 07 00 04 */ lfs f0, 4(r7) /* 800F6290 000F31F0 D0 08 FF E8 */ stfs f0, -0x18(r8) /* 800F6294 000F31F4 C0 07 00 08 */ lfs f0, 8(r7) /* 800F6298 000F31F8 D0 08 FF EC */ stfs f0, -0x14(r8) /* 800F629C 000F31FC C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F62A0 000F3200 7C E3 02 14 */ add r7, r3, r0 /* 800F62A4 000F3204 D0 08 FF F0 */ stfs f0, -0x10(r8) /* 800F62A8 000F3208 C0 07 00 04 */ lfs f0, 4(r7) /* 800F62AC 000F320C D0 08 FF DC */ stfs f0, -0x24(r8) /* 800F62B0 000F3210 C0 07 00 08 */ lfs f0, 8(r7) /* 800F62B4 000F3214 D0 08 FF E0 */ stfs f0, -0x20(r8) /* 800F62B8 000F3218 C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F62BC 000F321C D0 08 FF E4 */ stfs f0, -0x1c(r8) /* 800F62C0 000F3220 39 08 FF D0 */ addi r8, r8, -48 /* 800F62C4 000F3224 42 00 FF 68 */ bdnz lbl_800F622C /* 800F62C8 000F3228 70 A5 00 03 */ andi. r5, r5, 3 /* 800F62CC 000F322C 41 82 00 38 */ beq lbl_800F6304 lbl_800F62D0: /* 800F62D0 000F3230 7C A9 03 A6 */ mtctr r5 lbl_800F62D4: /* 800F62D4 000F3234 38 C9 FF FF */ addi r6, r9, -1 /* 800F62D8 000F3238 39 29 FF FF */ addi r9, r9, -1 /* 800F62DC 000F323C 1C 06 00 0C */ mulli r0, r6, 0xc /* 800F62E0 000F3240 7C E3 02 14 */ add r7, r3, r0 /* 800F62E4 000F3244 C0 07 00 04 */ lfs f0, 4(r7) /* 800F62E8 000F3248 D0 08 00 00 */ stfs f0, 0(r8) /* 800F62EC 000F324C C0 07 00 08 */ lfs f0, 8(r7) /* 800F62F0 000F3250 D0 08 00 04 */ stfs f0, 4(r8) /* 800F62F4 000F3254 C0 07 00 0C */ lfs f0, 0xc(r7) /* 800F62F8 000F3258 D0 08 00 08 */ stfs f0, 8(r8) /* 800F62FC 000F325C 39 08 FF F4 */ addi r8, r8, -12 /* 800F6300 000F3260 42 00 FF D4 */ bdnz lbl_800F62D4 lbl_800F6304: /* 800F6304 000F3264 C0 04 00 00 */ lfs f0, 0(r4) /* 800F6308 000F3268 D0 03 00 04 */ stfs f0, 4(r3) /* 800F630C 000F326C C0 04 00 04 */ lfs f0, 4(r4) /* 800F6310 000F3270 D0 03 00 08 */ stfs f0, 8(r3) /* 800F6314 000F3274 C0 04 00 08 */ lfs f0, 8(r4) /* 800F6318 000F3278 D0 03 00 0C */ stfs f0, 0xc(r3) /* 800F631C 000F327C 4E 80 00 20 */ blr .global sub_800f6320 sub_800f6320: /* 800F6320 000F3280 80 03 00 00 */ lwz r0, 0(r3) /* 800F6324 000F3284 2C 00 00 05 */ cmpwi r0, 5 /* 800F6328 000F3288 40 80 00 40 */ bge lbl_800F6368 /* 800F632C 000F328C 54 00 20 36 */ slwi r0, r0, 4 /* 800F6330 000F3290 7C A3 02 14 */ add r5, r3, r0 /* 800F6334 000F3294 34 A5 00 04 */ addic. r5, r5, 4 /* 800F6338 000F3298 41 82 00 24 */ beq lbl_800F635C /* 800F633C 000F329C C0 04 00 00 */ lfs f0, 0(r4) /* 800F6340 000F32A0 D0 05 00 00 */ stfs f0, 0(r5) /* 800F6344 000F32A4 C0 04 00 04 */ lfs f0, 4(r4) /* 800F6348 000F32A8 D0 05 00 04 */ stfs f0, 4(r5) /* 800F634C 000F32AC C0 04 00 08 */ lfs f0, 8(r4) /* 800F6350 000F32B0 D0 05 00 08 */ stfs f0, 8(r5) /* 800F6354 000F32B4 C0 04 00 0C */ lfs f0, 0xc(r4) /* 800F6358 000F32B8 D0 05 00 0C */ stfs f0, 0xc(r5) lbl_800F635C: /* 800F635C 000F32BC 80 A3 00 00 */ lwz r5, 0(r3) /* 800F6360 000F32C0 38 05 00 01 */ addi r0, r5, 1 /* 800F6364 000F32C4 90 03 00 00 */ stw r0, 0(r3) lbl_800F6368: /* 800F6368 000F32C8 80 A3 00 00 */ lwz r5, 0(r3) /* 800F636C 000F32CC 35 65 FF FF */ addic. r11, r5, -1 /* 800F6370 000F32D0 55 60 20 36 */ slwi r0, r11, 4 /* 800F6374 000F32D4 7D 65 5B 78 */ mr r5, r11 /* 800F6378 000F32D8 7D 43 02 14 */ add r10, r3, r0 /* 800F637C 000F32DC 39 4A 00 04 */ addi r10, r10, 4 /* 800F6380 000F32E0 40 81 01 10 */ ble lbl_800F6490 /* 800F6384 000F32E4 55 60 F0 BF */ rlwinm. r0, r11, 0x1e, 2, 0x1f /* 800F6388 000F32E8 7C 09 03 A6 */ mtctr r0 /* 800F638C 000F32EC 41 82 00 C8 */ beq lbl_800F6454 lbl_800F6390: /* 800F6390 000F32F0 39 0B FF FF */ addi r8, r11, -1 /* 800F6394 000F32F4 55 07 20 36 */ slwi r7, r8, 4 /* 800F6398 000F32F8 7D 23 3A 14 */ add r9, r3, r7 /* 800F639C 000F32FC 39 0B FF FE */ addi r8, r11, -2 /* 800F63A0 000F3300 C0 09 00 04 */ lfs f0, 4(r9) /* 800F63A4 000F3304 55 07 20 36 */ slwi r7, r8, 4 /* 800F63A8 000F3308 39 0B FF FD */ addi r8, r11, -3 /* 800F63AC 000F330C D0 0A 00 00 */ stfs f0, 0(r10) /* 800F63B0 000F3310 80 C9 00 08 */ lwz r6, 8(r9) /* 800F63B4 000F3314 80 09 00 0C */ lwz r0, 0xc(r9) /* 800F63B8 000F3318 90 CA 00 04 */ stw r6, 4(r10) /* 800F63BC 000F331C 90 0A 00 08 */ stw r0, 8(r10) /* 800F63C0 000F3320 80 09 00 10 */ lwz r0, 0x10(r9) /* 800F63C4 000F3324 7D 23 3A 14 */ add r9, r3, r7 /* 800F63C8 000F3328 55 07 20 36 */ slwi r7, r8, 4 /* 800F63CC 000F332C 39 0B FF FC */ addi r8, r11, -4 /* 800F63D0 000F3330 90 0A 00 0C */ stw r0, 0xc(r10) /* 800F63D4 000F3334 39 6B FF FC */ addi r11, r11, -4 /* 800F63D8 000F3338 C0 09 00 04 */ lfs f0, 4(r9) /* 800F63DC 000F333C D0 0A FF F0 */ stfs f0, -0x10(r10) /* 800F63E0 000F3340 80 C9 00 08 */ lwz r6, 8(r9) /* 800F63E4 000F3344 80 09 00 0C */ lwz r0, 0xc(r9) /* 800F63E8 000F3348 90 CA FF F4 */ stw r6, -0xc(r10) /* 800F63EC 000F334C 90 0A FF F8 */ stw r0, -8(r10) /* 800F63F0 000F3350 80 09 00 10 */ lwz r0, 0x10(r9) /* 800F63F4 000F3354 7D 23 3A 14 */ add r9, r3, r7 /* 800F63F8 000F3358 55 07 20 36 */ slwi r7, r8, 4 /* 800F63FC 000F335C 90 0A FF FC */ stw r0, -4(r10) /* 800F6400 000F3360 C0 09 00 04 */ lfs f0, 4(r9) /* 800F6404 000F3364 D0 0A FF E0 */ stfs f0, -0x20(r10) /* 800F6408 000F3368 80 C9 00 08 */ lwz r6, 8(r9) /* 800F640C 000F336C 80 09 00 0C */ lwz r0, 0xc(r9) /* 800F6410 000F3370 90 CA FF E4 */ stw r6, -0x1c(r10) /* 800F6414 000F3374 90 0A FF E8 */ stw r0, -0x18(r10) /* 800F6418 000F3378 80 09 00 10 */ lwz r0, 0x10(r9) /* 800F641C 000F337C 7D 23 3A 14 */ add r9, r3, r7 /* 800F6420 000F3380 90 0A FF EC */ stw r0, -0x14(r10) /* 800F6424 000F3384 C0 09 00 04 */ lfs f0, 4(r9) /* 800F6428 000F3388 D0 0A FF D0 */ stfs f0, -0x30(r10) /* 800F642C 000F338C 80 C9 00 08 */ lwz r6, 8(r9) /* 800F6430 000F3390 80 09 00 0C */ lwz r0, 0xc(r9) /* 800F6434 000F3394 90 CA FF D4 */ stw r6, -0x2c(r10) /* 800F6438 000F3398 90 0A FF D8 */ stw r0, -0x28(r10) /* 800F643C 000F339C 80 09 00 10 */ lwz r0, 0x10(r9) /* 800F6440 000F33A0 90 0A FF DC */ stw r0, -0x24(r10) /* 800F6444 000F33A4 39 4A FF C0 */ addi r10, r10, -64 /* 800F6448 000F33A8 42 00 FF 48 */ bdnz lbl_800F6390 /* 800F644C 000F33AC 70 A5 00 03 */ andi. r5, r5, 3 /* 800F6450 000F33B0 41 82 00 40 */ beq lbl_800F6490 lbl_800F6454: /* 800F6454 000F33B4 7C A9 03 A6 */ mtctr r5 lbl_800F6458: /* 800F6458 000F33B8 39 0B FF FF */ addi r8, r11, -1 /* 800F645C 000F33BC 39 6B FF FF */ addi r11, r11, -1 /* 800F6460 000F33C0 55 07 20 36 */ slwi r7, r8, 4 /* 800F6464 000F33C4 7D 23 3A 14 */ add r9, r3, r7 /* 800F6468 000F33C8 C0 09 00 04 */ lfs f0, 4(r9) /* 800F646C 000F33CC D0 0A 00 00 */ stfs f0, 0(r10) /* 800F6470 000F33D0 80 C9 00 08 */ lwz r6, 8(r9) /* 800F6474 000F33D4 80 09 00 0C */ lwz r0, 0xc(r9) /* 800F6478 000F33D8 90 CA 00 04 */ stw r6, 4(r10) /* 800F647C 000F33DC 90 0A 00 08 */ stw r0, 8(r10) /* 800F6480 000F33E0 80 09 00 10 */ lwz r0, 0x10(r9) /* 800F6484 000F33E4 90 0A 00 0C */ stw r0, 0xc(r10) /* 800F6488 000F33E8 39 4A FF F0 */ addi r10, r10, -16 /* 800F648C 000F33EC 42 00 FF CC */ bdnz lbl_800F6458 lbl_800F6490: /* 800F6490 000F33F0 C0 04 00 00 */ lfs f0, 0(r4) /* 800F6494 000F33F4 D0 03 00 04 */ stfs f0, 4(r3) /* 800F6498 000F33F8 80 A4 00 04 */ lwz r5, 4(r4) /* 800F649C 000F33FC 80 04 00 08 */ lwz r0, 8(r4) /* 800F64A0 000F3400 90 A3 00 08 */ stw r5, 8(r3) /* 800F64A4 000F3404 90 03 00 0C */ stw r0, 0xc(r3) /* 800F64A8 000F3408 80 04 00 0C */ lwz r0, 0xc(r4) /* 800F64AC 000F340C 90 03 00 10 */ stw r0, 0x10(r3) /* 800F64B0 000F3410 4E 80 00 20 */ blr .global BallTurnInput__10CMorphBallCFRC11CFinalInput BallTurnInput__10CMorphBallCFRC11CFinalInput: /* 800F64B4 000F3414 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F64B8 000F3418 7C 08 02 A6 */ mflr r0 /* 800F64BC 000F341C 90 01 00 24 */ stw r0, 0x24(r1) /* 800F64C0 000F3420 DB E1 00 10 */ stfd f31, 0x10(r1) /* 800F64C4 000F3424 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 800F64C8 000F3428 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F64CC 000F342C 7C 9F 23 78 */ mr r31, r4 /* 800F64D0 000F3430 48 00 27 C9 */ bl IsMovementAllowed__10CMorphBallCFv /* 800F64D4 000F3434 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F64D8 000F3438 40 82 00 0C */ bne lbl_800F64E4 /* 800F64DC 000F343C C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F64E0 000F3440 48 00 00 24 */ b lbl_800F6504 lbl_800F64E4: /* 800F64E4 000F3444 7F E4 FB 78 */ mr r4, r31 /* 800F64E8 000F3448 38 60 00 02 */ li r3, 2 /* 800F64EC 000F344C 4B F1 64 2D */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F64F0 000F3450 FF E0 08 90 */ fmr f31, f1 /* 800F64F4 000F3454 7F E4 FB 78 */ mr r4, r31 /* 800F64F8 000F3458 38 60 00 03 */ li r3, 3 /* 800F64FC 000F345C 4B F1 64 1D */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F6500 000F3460 EC 3F 08 28 */ fsubs f1, f31, f1 lbl_800F6504: /* 800F6504 000F3464 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 800F6508 000F3468 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F650C 000F346C CB E1 00 10 */ lfd f31, 0x10(r1) /* 800F6510 000F3470 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F6514 000F3474 7C 08 03 A6 */ mtlr r0 /* 800F6518 000F3478 38 21 00 20 */ addi r1, r1, 0x20 /* 800F651C 000F347C 4E 80 00 20 */ blr .global CalculateBallContactInfo__10CMorphBallCFR9CVector3fR9CVector3f CalculateBallContactInfo__10CMorphBallCFR9CVector3fR9CVector3f: /* 800F6520 000F3480 80 03 00 74 */ lwz r0, 0x74(r3) /* 800F6524 000F3484 2C 00 00 00 */ cmpwi r0, 0 /* 800F6528 000F3488 40 81 00 3C */ ble lbl_800F6564 /* 800F652C 000F348C C0 03 00 C0 */ lfs f0, 0xc0(r3) /* 800F6530 000F3490 D0 04 00 00 */ stfs f0, 0(r4) /* 800F6534 000F3494 C0 03 00 C4 */ lfs f0, 0xc4(r3) /* 800F6538 000F3498 D0 04 00 04 */ stfs f0, 4(r4) /* 800F653C 000F349C C0 03 00 C8 */ lfs f0, 0xc8(r3) /* 800F6540 000F34A0 D0 04 00 08 */ stfs f0, 8(r4) /* 800F6544 000F34A4 C0 03 00 78 */ lfs f0, 0x78(r3) /* 800F6548 000F34A8 D0 05 00 00 */ stfs f0, 0(r5) /* 800F654C 000F34AC C0 03 00 7C */ lfs f0, 0x7c(r3) /* 800F6550 000F34B0 D0 05 00 04 */ stfs f0, 4(r5) /* 800F6554 000F34B4 C0 03 00 80 */ lfs f0, 0x80(r3) /* 800F6558 000F34B8 38 60 00 01 */ li r3, 1 /* 800F655C 000F34BC D0 05 00 08 */ stfs f0, 8(r5) /* 800F6560 000F34C0 4E 80 00 20 */ blr lbl_800F6564: /* 800F6564 000F34C4 38 60 00 00 */ li r3, 0 /* 800F6568 000F34C8 4E 80 00 20 */ blr .global CalculateSurfaceToWorld__10CMorphBallCFRC9CVector3fRC9CVector3fRC9CVector3f CalculateSurfaceToWorld__10CMorphBallCFRC9CVector3fRC9CVector3fRC9CVector3f: /* 800F656C 000F34CC 94 21 FF 90 */ stwu r1, -0x70(r1) /* 800F6570 000F34D0 7C 08 02 A6 */ mflr r0 /* 800F6574 000F34D4 90 01 00 74 */ stw r0, 0x74(r1) /* 800F6578 000F34D8 93 E1 00 6C */ stw r31, 0x6c(r1) /* 800F657C 000F34DC 7C FF 3B 78 */ mr r31, r7 /* 800F6580 000F34E0 93 C1 00 68 */ stw r30, 0x68(r1) /* 800F6584 000F34E4 7C DE 33 78 */ mr r30, r6 /* 800F6588 000F34E8 93 A1 00 64 */ stw r29, 0x64(r1) /* 800F658C 000F34EC 7C BD 2B 78 */ mr r29, r5 /* 800F6590 000F34F0 93 81 00 60 */ stw r28, 0x60(r1) /* 800F6594 000F34F4 7C 7C 1B 78 */ mr r28, r3 /* 800F6598 000F34F8 7F E3 FB 78 */ mr r3, r31 /* 800F659C 000F34FC 48 21 E1 5D */ bl CanBeNormalized__9CVector3fCFv /* 800F65A0 000F3500 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F65A4 000F3504 41 82 01 20 */ beq lbl_800F66C4 /* 800F65A8 000F3508 7F E4 FB 78 */ mr r4, r31 /* 800F65AC 000F350C 38 61 00 2C */ addi r3, r1, 0x2c /* 800F65B0 000F3510 48 21 E2 A1 */ bl AsNormalized__9CVector3fCFv /* 800F65B4 000F3514 C0 7F 00 00 */ lfs f3, 0(r31) /* 800F65B8 000F3518 38 61 00 44 */ addi r3, r1, 0x44 /* 800F65BC 000F351C C1 1D 00 08 */ lfs f8, 8(r29) /* 800F65C0 000F3520 C0 DF 00 04 */ lfs f6, 4(r31) /* 800F65C4 000F3524 C0 9D 00 00 */ lfs f4, 0(r29) /* 800F65C8 000F3528 EC 28 00 F2 */ fmuls f1, f8, f3 /* 800F65CC 000F352C C0 5F 00 08 */ lfs f2, 8(r31) /* 800F65D0 000F3530 C0 FD 00 04 */ lfs f7, 4(r29) /* 800F65D4 000F3534 EC 04 01 B2 */ fmuls f0, f4, f6 /* 800F65D8 000F3538 EC 22 09 38 */ fmsubs f1, f2, f4, f1 /* 800F65DC 000F353C C0 A1 00 2C */ lfs f5, 0x2c(r1) /* 800F65E0 000F3540 EC 47 00 B2 */ fmuls f2, f7, f2 /* 800F65E4 000F3544 C0 81 00 30 */ lfs f4, 0x30(r1) /* 800F65E8 000F3548 EC 03 01 F8 */ fmsubs f0, f3, f7, f0 /* 800F65EC 000F354C C0 61 00 34 */ lfs f3, 0x34(r1) /* 800F65F0 000F3550 EC 46 12 38 */ fmsubs f2, f6, f8, f2 /* 800F65F4 000F3554 D0 A1 00 50 */ stfs f5, 0x50(r1) /* 800F65F8 000F3558 D0 81 00 54 */ stfs f4, 0x54(r1) /* 800F65FC 000F355C D0 61 00 58 */ stfs f3, 0x58(r1) /* 800F6600 000F3560 D0 41 00 44 */ stfs f2, 0x44(r1) /* 800F6604 000F3564 D0 21 00 48 */ stfs f1, 0x48(r1) /* 800F6608 000F3568 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 800F660C 000F356C 48 21 E0 ED */ bl CanBeNormalized__9CVector3fCFv /* 800F6610 000F3570 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F6614 000F3574 41 82 00 B0 */ beq lbl_800F66C4 /* 800F6618 000F3578 38 61 00 44 */ addi r3, r1, 0x44 /* 800F661C 000F357C 48 21 E2 DD */ bl Normalize__9CVector3fFv /* 800F6620 000F3580 C0 61 00 48 */ lfs f3, 0x48(r1) /* 800F6624 000F3584 38 61 00 20 */ addi r3, r1, 0x20 /* 800F6628 000F3588 C0 C1 00 50 */ lfs f6, 0x50(r1) /* 800F662C 000F358C 38 81 00 14 */ addi r4, r1, 0x14 /* 800F6630 000F3590 C0 81 00 4C */ lfs f4, 0x4c(r1) /* 800F6634 000F3594 C0 21 00 54 */ lfs f1, 0x54(r1) /* 800F6638 000F3598 EC 06 00 F2 */ fmuls f0, f6, f3 /* 800F663C 000F359C C0 E1 00 44 */ lfs f7, 0x44(r1) /* 800F6640 000F35A0 C0 A1 00 58 */ lfs f5, 0x58(r1) /* 800F6644 000F35A4 EC 41 01 32 */ fmuls f2, f1, f4 /* 800F6648 000F35A8 EC 07 00 78 */ fmsubs f0, f7, f1, f0 /* 800F664C 000F35AC EC 25 01 F2 */ fmuls f1, f5, f7 /* 800F6650 000F35B0 EC 43 11 78 */ fmsubs f2, f3, f5, f2 /* 800F6654 000F35B4 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800F6658 000F35B8 EC 04 09 B8 */ fmsubs f0, f4, f6, f1 /* 800F665C 000F35BC D0 41 00 14 */ stfs f2, 0x14(r1) /* 800F6660 000F35C0 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800F6664 000F35C4 48 21 E1 ED */ bl AsNormalized__9CVector3fCFv /* 800F6668 000F35C8 C0 7E 00 04 */ lfs f3, 4(r30) /* 800F666C 000F35CC 7F 83 E3 78 */ mr r3, r28 /* 800F6670 000F35D0 C0 42 91 50 */ lfs f2, lbl_805AAE70@sda21(r2) /* 800F6674 000F35D4 38 81 00 44 */ addi r4, r1, 0x44 /* 800F6678 000F35D8 C0 3E 00 08 */ lfs f1, 8(r30) /* 800F667C 000F35DC 38 A1 00 50 */ addi r5, r1, 0x50 /* 800F6680 000F35E0 C0 1E 00 00 */ lfs f0, 0(r30) /* 800F6684 000F35E4 EC A3 10 2A */ fadds f5, f3, f2 /* 800F6688 000F35E8 EC 81 10 2A */ fadds f4, f1, f2 /* 800F668C 000F35EC C0 61 00 20 */ lfs f3, 0x20(r1) /* 800F6690 000F35F0 EC 00 10 2A */ fadds f0, f0, f2 /* 800F6694 000F35F4 C0 41 00 24 */ lfs f2, 0x24(r1) /* 800F6698 000F35F8 C0 21 00 28 */ lfs f1, 0x28(r1) /* 800F669C 000F35FC D0 61 00 38 */ stfs f3, 0x38(r1) /* 800F66A0 000F3600 38 C1 00 38 */ addi r6, r1, 0x38 /* 800F66A4 000F3604 38 E1 00 08 */ addi r7, r1, 8 /* 800F66A8 000F3608 D0 41 00 3C */ stfs f2, 0x3c(r1) /* 800F66AC 000F360C D0 21 00 40 */ stfs f1, 0x40(r1) /* 800F66B0 000F3610 D0 01 00 08 */ stfs f0, 8(r1) /* 800F66B4 000F3614 D0 A1 00 0C */ stfs f5, 0xc(r1) /* 800F66B8 000F3618 D0 81 00 10 */ stfs f4, 0x10(r1) /* 800F66BC 000F361C 48 21 C7 A1 */ bl __ct__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f_0 /* 800F66C0 000F3620 48 00 00 14 */ b lbl_800F66D4 lbl_800F66C4: /* 800F66C4 000F3624 3C 80 80 5A */ lis r4, sIdentity__12CTransform4f@ha /* 800F66C8 000F3628 7F 83 E3 78 */ mr r3, r28 /* 800F66CC 000F362C 38 84 66 70 */ addi r4, r4, sIdentity__12CTransform4f@l /* 800F66D0 000F3630 48 21 C4 A5 */ bl __ct__12CTransform4fFRC12CTransform4f lbl_800F66D4: /* 800F66D4 000F3634 80 01 00 74 */ lwz r0, 0x74(r1) /* 800F66D8 000F3638 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 800F66DC 000F363C 83 C1 00 68 */ lwz r30, 0x68(r1) /* 800F66E0 000F3640 83 A1 00 64 */ lwz r29, 0x64(r1) /* 800F66E4 000F3644 83 81 00 60 */ lwz r28, 0x60(r1) /* 800F66E8 000F3648 7C 08 03 A6 */ mtlr r0 /* 800F66EC 000F364C 38 21 00 70 */ addi r1, r1, 0x70 /* 800F66F0 000F3650 4E 80 00 20 */ blr .global GetBallToWorld__10CMorphBallCFv GetBallToWorld__10CMorphBallCFv: /* 800F66F4 000F3654 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 800F66F8 000F3658 7C 08 02 A6 */ mflr r0 /* 800F66FC 000F365C 90 01 00 C4 */ stw r0, 0xc4(r1) /* 800F6700 000F3660 93 E1 00 BC */ stw r31, 0xbc(r1) /* 800F6704 000F3664 93 C1 00 B8 */ stw r30, 0xb8(r1) /* 800F6708 000F3668 7C 9E 23 78 */ mr r30, r4 /* 800F670C 000F366C 93 A1 00 B4 */ stw r29, 0xb4(r1) /* 800F6710 000F3670 7C 7D 1B 78 */ mr r29, r3 /* 800F6714 000F3674 7F C3 F3 78 */ mr r3, r30 /* 800F6718 000F3678 80 84 00 00 */ lwz r4, 0(r4) /* 800F671C 000F367C 3B E4 00 34 */ addi r31, r4, 0x34 /* 800F6720 000F3680 48 00 26 E5 */ bl GetBallRadius__10CMorphBallCFv /* 800F6724 000F3684 80 BE 00 00 */ lwz r5, 0(r30) /* 800F6728 000F3688 7F E4 FB 78 */ mr r4, r31 /* 800F672C 000F368C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F6730 000F3690 38 61 00 20 */ addi r3, r1, 0x20 /* 800F6734 000F3694 C0 A5 00 60 */ lfs f5, 0x60(r5) /* 800F6738 000F3698 C0 85 00 50 */ lfs f4, 0x50(r5) /* 800F673C 000F369C C0 45 00 40 */ lfs f2, 0x40(r5) /* 800F6740 000F36A0 EC 25 08 2A */ fadds f1, f5, f1 /* 800F6744 000F36A4 EC 64 00 2A */ fadds f3, f4, f0 /* 800F6748 000F36A8 D0 81 00 0C */ stfs f4, 0xc(r1) /* 800F674C 000F36AC EC 02 00 2A */ fadds f0, f2, f0 /* 800F6750 000F36B0 D0 41 00 08 */ stfs f2, 8(r1) /* 800F6754 000F36B4 D0 A1 00 10 */ stfs f5, 0x10(r1) /* 800F6758 000F36B8 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800F675C 000F36BC D0 61 00 18 */ stfs f3, 0x18(r1) /* 800F6760 000F36C0 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800F6764 000F36C4 48 21 C4 DD */ bl GetRotation__12CTransform4fCFv /* 800F6768 000F36C8 38 61 00 50 */ addi r3, r1, 0x50 /* 800F676C 000F36CC 38 81 00 14 */ addi r4, r1, 0x14 /* 800F6770 000F36D0 48 21 C9 D1 */ bl Translate__12CTransform4fFRC9CVector3f /* 800F6774 000F36D4 38 61 00 80 */ addi r3, r1, 0x80 /* 800F6778 000F36D8 38 81 00 50 */ addi r4, r1, 0x50 /* 800F677C 000F36DC 38 A1 00 20 */ addi r5, r1, 0x20 /* 800F6780 000F36E0 48 21 C1 D1 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800F6784 000F36E4 7F A3 EB 78 */ mr r3, r29 /* 800F6788 000F36E8 38 81 00 80 */ addi r4, r1, 0x80 /* 800F678C 000F36EC 48 21 C3 E9 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F6790 000F36F0 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 800F6794 000F36F4 83 E1 00 BC */ lwz r31, 0xbc(r1) /* 800F6798 000F36F8 83 C1 00 B8 */ lwz r30, 0xb8(r1) /* 800F679C 000F36FC 83 A1 00 B4 */ lwz r29, 0xb4(r1) /* 800F67A0 000F3700 7C 08 03 A6 */ mtlr r0 /* 800F67A4 000F3704 38 21 00 C0 */ addi r1, r1, 0xc0 /* 800F67A8 000F3708 4E 80 00 20 */ blr .global GetSwooshToWorld__10CMorphBallCFv GetSwooshToWorld__10CMorphBallCFv: /* 800F67AC 000F370C 94 21 FE E0 */ stwu r1, -0x120(r1) /* 800F67B0 000F3710 7C 08 02 A6 */ mflr r0 /* 800F67B4 000F3714 90 01 01 24 */ stw r0, 0x124(r1) /* 800F67B8 000F3718 93 E1 01 1C */ stw r31, 0x11c(r1) /* 800F67BC 000F371C 7C 9F 23 78 */ mr r31, r4 /* 800F67C0 000F3720 93 C1 01 18 */ stw r30, 0x118(r1) /* 800F67C4 000F3724 7C 7E 1B 78 */ mr r30, r3 /* 800F67C8 000F3728 7F E3 FB 78 */ mr r3, r31 /* 800F67CC 000F372C C0 04 00 30 */ lfs f0, 0x30(r4) /* 800F67D0 000F3730 D0 01 00 08 */ stfs f0, 8(r1) /* 800F67D4 000F3734 48 00 26 31 */ bl GetBallRadius__10CMorphBallCFv /* 800F67D8 000F3738 80 BF 00 00 */ lwz r5, 0(r31) /* 800F67DC 000F373C 38 61 00 24 */ addi r3, r1, 0x24 /* 800F67E0 000F3740 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F67E4 000F3744 38 81 00 08 */ addi r4, r1, 8 /* 800F67E8 000F3748 C0 A5 00 60 */ lfs f5, 0x60(r5) /* 800F67EC 000F374C C0 85 00 50 */ lfs f4, 0x50(r5) /* 800F67F0 000F3750 C0 45 00 40 */ lfs f2, 0x40(r5) /* 800F67F4 000F3754 EC 25 08 2A */ fadds f1, f5, f1 /* 800F67F8 000F3758 EC 64 00 2A */ fadds f3, f4, f0 /* 800F67FC 000F375C D0 81 00 10 */ stfs f4, 0x10(r1) /* 800F6800 000F3760 EC 02 00 2A */ fadds f0, f2, f0 /* 800F6804 000F3764 D0 41 00 0C */ stfs f2, 0xc(r1) /* 800F6808 000F3768 D0 A1 00 14 */ stfs f5, 0x14(r1) /* 800F680C 000F376C D0 01 00 18 */ stfs f0, 0x18(r1) /* 800F6810 000F3770 D0 61 00 1C */ stfs f3, 0x1c(r1) /* 800F6814 000F3774 D0 21 00 20 */ stfs f1, 0x20(r1) /* 800F6818 000F3778 48 21 D0 91 */ bl RotateY__12CTransform4fFRC9CRelAngle /* 800F681C 000F377C 38 61 00 54 */ addi r3, r1, 0x54 /* 800F6820 000F3780 38 9F 19 24 */ addi r4, r31, 0x1924 /* 800F6824 000F3784 48 21 C4 1D */ bl GetRotation__12CTransform4fCFv /* 800F6828 000F3788 38 61 00 84 */ addi r3, r1, 0x84 /* 800F682C 000F378C 38 81 00 18 */ addi r4, r1, 0x18 /* 800F6830 000F3790 48 21 C9 11 */ bl Translate__12CTransform4fFRC9CVector3f /* 800F6834 000F3794 38 61 00 B4 */ addi r3, r1, 0xb4 /* 800F6838 000F3798 38 81 00 84 */ addi r4, r1, 0x84 /* 800F683C 000F379C 38 A1 00 54 */ addi r5, r1, 0x54 /* 800F6840 000F37A0 48 21 C1 11 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800F6844 000F37A4 38 61 00 E4 */ addi r3, r1, 0xe4 /* 800F6848 000F37A8 38 81 00 B4 */ addi r4, r1, 0xb4 /* 800F684C 000F37AC 38 A1 00 24 */ addi r5, r1, 0x24 /* 800F6850 000F37B0 48 21 C1 01 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800F6854 000F37B4 7F C3 F3 78 */ mr r3, r30 /* 800F6858 000F37B8 38 81 00 E4 */ addi r4, r1, 0xe4 /* 800F685C 000F37BC 48 21 C3 19 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F6860 000F37C0 80 01 01 24 */ lwz r0, 0x124(r1) /* 800F6864 000F37C4 83 E1 01 1C */ lwz r31, 0x11c(r1) /* 800F6868 000F37C8 83 C1 01 18 */ lwz r30, 0x118(r1) /* 800F686C 000F37CC 7C 08 03 A6 */ mtlr r0 /* 800F6870 000F37D0 38 21 01 20 */ addi r1, r1, 0x120 /* 800F6874 000F37D4 4E 80 00 20 */ blr .global ComputeMarioMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf ComputeMarioMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf: /* 800F6878 000F37D8 94 21 FE 00 */ stwu r1, -0x200(r1) /* 800F687C 000F37DC 7C 08 02 A6 */ mflr r0 /* 800F6880 000F37E0 90 01 02 04 */ stw r0, 0x204(r1) /* 800F6884 000F37E4 DB E1 01 F0 */ stfd f31, 0x1f0(r1) /* 800F6888 000F37E8 F3 E1 01 F8 */ psq_st f31, 504(r1), 0, qr0 /* 800F688C 000F37EC DB C1 01 E0 */ stfd f30, 0x1e0(r1) /* 800F6890 000F37F0 F3 C1 01 E8 */ psq_st f30, 488(r1), 0, qr0 /* 800F6894 000F37F4 DB A1 01 D0 */ stfd f29, 0x1d0(r1) /* 800F6898 000F37F8 F3 A1 01 D8 */ psq_st f29, 472(r1), 0, qr0 /* 800F689C 000F37FC DB 81 01 C0 */ stfd f28, 0x1c0(r1) /* 800F68A0 000F3800 F3 81 01 C8 */ psq_st f28, 456(r1), 0, qr0 /* 800F68A4 000F3804 DB 61 01 B0 */ stfd f27, 0x1b0(r1) /* 800F68A8 000F3808 F3 61 01 B8 */ psq_st f27, 440(r1), 0, qr0 /* 800F68AC 000F380C DB 41 01 A0 */ stfd f26, 0x1a0(r1) /* 800F68B0 000F3810 F3 41 01 A8 */ psq_st f26, 424(r1), 0, qr0 /* 800F68B4 000F3814 DB 21 01 90 */ stfd f25, 0x190(r1) /* 800F68B8 000F3818 F3 21 01 98 */ psq_st f25, 408(r1), 0, qr0 /* 800F68BC 000F381C DB 01 01 80 */ stfd f24, 0x180(r1) /* 800F68C0 000F3820 F3 01 01 88 */ psq_st f24, 392(r1), 0, qr0 /* 800F68C4 000F3824 93 E1 01 7C */ stw r31, 0x17c(r1) /* 800F68C8 000F3828 93 C1 01 78 */ stw r30, 0x178(r1) /* 800F68CC 000F382C 93 A1 01 74 */ stw r29, 0x174(r1) /* 800F68D0 000F3830 3C C0 80 5A */ lis r6, sZeroVector__9CVector3f@ha /* 800F68D4 000F3834 C4 06 66 A0 */ lfsu f0, sZeroVector__9CVector3f@l(r6) /* 800F68D8 000F3838 FF 60 08 90 */ fmr f27, f1 /* 800F68DC 000F383C 7C 7E 1B 78 */ mr r30, r3 /* 800F68E0 000F3840 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 800F68E4 000F3844 7C 9D 23 78 */ mr r29, r4 /* 800F68E8 000F3848 7C BF 2B 78 */ mr r31, r5 /* 800F68EC 000F384C C0 06 00 04 */ lfs f0, 4(r6) /* 800F68F0 000F3850 D0 03 00 20 */ stfs f0, 0x20(r3) /* 800F68F4 000F3854 C0 06 00 08 */ lfs f0, 8(r6) /* 800F68F8 000F3858 D0 03 00 24 */ stfs f0, 0x24(r3) /* 800F68FC 000F385C C0 06 00 00 */ lfs f0, 0(r6) /* 800F6900 000F3860 D0 03 00 10 */ stfs f0, 0x10(r3) /* 800F6904 000F3864 C0 06 00 04 */ lfs f0, 4(r6) /* 800F6908 000F3868 D0 03 00 14 */ stfs f0, 0x14(r3) /* 800F690C 000F386C C0 06 00 08 */ lfs f0, 8(r6) /* 800F6910 000F3870 D0 03 00 18 */ stfs f0, 0x18(r3) /* 800F6914 000F3874 48 00 23 85 */ bl IsMovementAllowed__10CMorphBallCFv /* 800F6918 000F3878 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F691C 000F387C 41 82 08 94 */ beq lbl_800F71B0 /* 800F6920 000F3880 C0 22 80 E4 */ lfs f1, lbl_805A9E04@sda21(r2) /* 800F6924 000F3884 7F A4 EB 78 */ mr r4, r29 /* 800F6928 000F3888 C0 02 92 DC */ lfs f0, lbl_805AAFFC@sda21(r2) /* 800F692C 000F388C 38 60 00 30 */ li r3, 0x30 /* 800F6930 000F3890 EF 21 00 24 */ fdivs f25, f1, f0 /* 800F6934 000F3894 4B F1 5F E5 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F6938 000F3898 FC 01 C8 40 */ fcmpo cr0, f1, f25 /* 800F693C 000F389C 4C 41 13 82 */ cror 2, 1, 2 /* 800F6940 000F38A0 40 82 00 0C */ bne lbl_800F694C /* 800F6944 000F38A4 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F6948 000F38A8 48 00 00 08 */ b lbl_800F6950 lbl_800F694C: /* 800F694C 000F38AC C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) lbl_800F6950: /* 800F6950 000F38B0 D0 1E 18 8C */ stfs f0, 0x188c(r30) /* 800F6954 000F38B4 38 80 00 13 */ li r4, 0x13 /* 800F6958 000F38B8 80 7F 08 B8 */ lwz r3, 0x8b8(r31) /* 800F695C 000F38BC 80 63 00 00 */ lwz r3, 0(r3) /* 800F6960 000F38C0 4B F9 B1 61 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType /* 800F6964 000F38C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F6968 000F38C8 41 82 00 A4 */ beq lbl_800F6A0C /* 800F696C 000F38CC C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F6970 000F38D0 C0 1E 18 8C */ lfs f0, 0x188c(r30) /* 800F6974 000F38D4 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F6978 000F38D8 41 82 00 94 */ beq lbl_800F6A0C /* 800F697C 000F38DC C0 1E 19 1C */ lfs f0, 0x191c(r30) /* 800F6980 000F38E0 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 800F6984 000F38E4 40 82 00 88 */ bne lbl_800F6A0C /* 800F6988 000F38E8 80 1E 18 7C */ lwz r0, 0x187c(r30) /* 800F698C 000F38EC 2C 00 00 01 */ cmpwi r0, 1 /* 800F6990 000F38F0 41 82 00 48 */ beq lbl_800F69D8 /* 800F6994 000F38F4 38 60 00 00 */ li r3, 0 /* 800F6998 000F38F8 38 00 00 01 */ li r0, 1 /* 800F699C 000F38FC 98 7E 18 BD */ stb r3, 0x18bd(r30) /* 800F69A0 000F3900 90 1E 18 7C */ stw r0, 0x187c(r30) /* 800F69A4 000F3904 80 7E 00 00 */ lwz r3, 0(r30) /* 800F69A8 000F3908 C0 43 00 5C */ lfs f2, 0x5c(r3) /* 800F69AC 000F390C C0 23 00 4C */ lfs f1, 0x4c(r3) /* 800F69B0 000F3910 C0 03 00 3C */ lfs f0, 0x3c(r3) /* 800F69B4 000F3914 D0 1E 18 9C */ stfs f0, 0x189c(r30) /* 800F69B8 000F3918 D0 3E 18 A0 */ stfs f1, 0x18a0(r30) /* 800F69BC 000F391C D0 5E 18 A4 */ stfs f2, 0x18a4(r30) /* 800F69C0 000F3920 C0 1E 18 9C */ lfs f0, 0x189c(r30) /* 800F69C4 000F3924 D0 1E 18 A8 */ stfs f0, 0x18a8(r30) /* 800F69C8 000F3928 C0 1E 18 A0 */ lfs f0, 0x18a0(r30) /* 800F69CC 000F392C D0 1E 18 AC */ stfs f0, 0x18ac(r30) /* 800F69D0 000F3930 C0 1E 18 A4 */ lfs f0, 0x18a4(r30) /* 800F69D4 000F3934 D0 1E 18 B0 */ stfs f0, 0x18b0(r30) lbl_800F69D8: /* 800F69D8 000F3938 FC 20 D8 90 */ fmr f1, f27 /* 800F69DC 000F393C 7F C3 F3 78 */ mr r3, r30 /* 800F69E0 000F3940 7F A4 EB 78 */ mr r4, r29 /* 800F69E4 000F3944 7F E5 FB 78 */ mr r5, r31 /* 800F69E8 000F3948 48 00 22 11 */ bl UpdateSpiderBall__10CMorphBallFRC11CFinalInputR13CStateManagerf /* 800F69EC 000F394C 88 1E 18 BC */ lbz r0, 0x18bc(r30) /* 800F69F0 000F3950 28 00 00 00 */ cmplwi r0, 0 /* 800F69F4 000F3954 40 82 00 28 */ bne lbl_800F6A1C /* 800F69F8 000F3958 38 00 00 00 */ li r0, 0 /* 800F69FC 000F395C 7F C3 F3 78 */ mr r3, r30 /* 800F6A00 000F3960 90 1E 18 7C */ stw r0, 0x187c(r30) /* 800F6A04 000F3964 48 00 1B E9 */ bl ResetSpiderBallForces__10CMorphBallFv /* 800F6A08 000F3968 48 00 00 14 */ b lbl_800F6A1C lbl_800F6A0C: /* 800F6A0C 000F396C 38 00 00 00 */ li r0, 0 /* 800F6A10 000F3970 7F C3 F3 78 */ mr r3, r30 /* 800F6A14 000F3974 90 1E 18 7C */ stw r0, 0x187c(r30) /* 800F6A18 000F3978 48 00 1B D5 */ bl ResetSpiderBallForces__10CMorphBallFv lbl_800F6A1C: /* 800F6A1C 000F397C 80 1E 18 7C */ lwz r0, 0x187c(r30) /* 800F6A20 000F3980 2C 00 00 01 */ cmpwi r0, 1 /* 800F6A24 000F3984 41 82 07 8C */ beq lbl_800F71B0 /* 800F6A28 000F3988 7F C3 F3 78 */ mr r3, r30 /* 800F6A2C 000F398C 7F A4 EB 78 */ mr r4, r29 /* 800F6A30 000F3990 48 00 23 5D */ bl ForwardInput__10CMorphBallCFRC11CFinalInput /* 800F6A34 000F3994 FF 40 08 90 */ fmr f26, f1 /* 800F6A38 000F3998 7F C3 F3 78 */ mr r3, r30 /* 800F6A3C 000F399C 7F A4 EB 78 */ mr r4, r29 /* 800F6A40 000F39A0 4B FF FA 75 */ bl BallTurnInput__10CMorphBallCFRC11CFinalInput /* 800F6A44 000F39A4 FF 00 08 50 */ fneg f24, f1 /* 800F6A48 000F39A8 7F C3 F3 78 */ mr r3, r30 /* 800F6A4C 000F39AC 4B FF 93 B1 */ bl ComputeMaxSpeed__10CMorphBallCFv /* 800F6A50 000F39B0 80 7E 00 00 */ lwz r3, 0(r30) /* 800F6A54 000F39B4 FF C0 08 90 */ fmr f30, f1 /* 800F6A58 000F39B8 38 63 01 38 */ addi r3, r3, 0x138 /* 800F6A5C 000F39BC 48 21 DE 5D */ bl Magnitude__9CVector3fCFv /* 800F6A60 000F39C0 C3 82 91 50 */ lfs f28, lbl_805AAE70@sda21(r2) /* 800F6A64 000F39C4 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800F6A68 000F39C8 80 BE 00 00 */ lwz r5, 0(r30) /* 800F6A6C 000F39CC 3C 60 80 5A */ lis r3, sUpVector__9CVector3f@ha /* 800F6A70 000F39D0 FF E0 08 90 */ fmr f31, f1 /* 800F6A74 000F39D4 38 C3 66 F4 */ addi r6, r3, sUpVector__9CVector3f@l /* 800F6A78 000F39D8 FF 60 E0 90 */ fmr f27, f28 /* 800F6A7C 000F39DC 38 84 66 A0 */ addi r4, r4, sZeroVector__9CVector3f@l /* 800F6A80 000F39E0 38 61 01 04 */ addi r3, r1, 0x104 /* 800F6A84 000F39E4 38 A5 05 4C */ addi r5, r5, 0x54c /* 800F6A88 000F39E8 48 21 D0 89 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f /* 800F6A8C 000F39EC 38 61 01 34 */ addi r3, r1, 0x134 /* 800F6A90 000F39F0 38 81 01 04 */ addi r4, r1, 0x104 /* 800F6A94 000F39F4 48 21 C0 E1 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F6A98 000F39F8 80 BE 00 00 */ lwz r5, 0(r30) /* 800F6A9C 000F39FC 38 61 00 BC */ addi r3, r1, 0xbc /* 800F6AA0 000F3A00 38 81 01 34 */ addi r4, r1, 0x134 /* 800F6AA4 000F3A04 38 A5 01 38 */ addi r5, r5, 0x138 /* 800F6AA8 000F3A08 48 21 BF 7D */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 800F6AAC 000F3A0C FC 20 C2 10 */ fabs f1, f24 /* 800F6AB0 000F3A10 C0 02 91 E4 */ lfs f0, lbl_805AAF04@sda21(r2) /* 800F6AB4 000F3A14 C3 21 00 BC */ lfs f25, 0xbc(r1) /* 800F6AB8 000F3A18 C3 A1 00 C0 */ lfs f29, 0xc0(r1) /* 800F6ABC 000F3A1C FC 20 08 18 */ frsp f1, f1 /* 800F6AC0 000F3A20 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F6AC4 000F3A24 40 81 00 D0 */ ble lbl_800F6B94 /* 800F6AC8 000F3A28 EF 18 07 B2 */ fmuls f24, f24, f30 /* 800F6ACC 000F3A2C 38 81 00 0C */ addi r4, r1, 0xc /* 800F6AD0 000F3A30 38 6D 88 68 */ addi r3, r13, lbl_805A7428@sda21 /* 800F6AD4 000F3A34 38 AD 88 6C */ addi r5, r13, lbl_805A742C@sda21 /* 800F6AD8 000F3A38 EF 78 C8 28 */ fsubs f27, f24, f25 /* 800F6ADC 000F3A3C FC 00 DA 10 */ fabs f0, f27 /* 800F6AE0 000F3A40 FC 00 00 18 */ frsp f0, f0 /* 800F6AE4 000F3A44 EC 00 F0 24 */ fdivs f0, f0, f30 /* 800F6AE8 000F3A48 D0 01 00 0C */ stfs f0, 0xc(r1) /* 800F6AEC 000F3A4C 4B F1 57 C9 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F6AF0 000F3A50 C0 42 91 A8 */ lfs f2, lbl_805AAEC8@sda21(r2) /* 800F6AF4 000F3A54 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F6AF8 000F3A58 C0 63 00 00 */ lfs f3, 0(r3) /* 800F6AFC 000F3A5C FC 19 10 6E */ fsel f0, f25, f1, f2 /* 800F6B00 000F3A60 FC 38 10 6E */ fsel f1, f24, f1, f2 /* 800F6B04 000F3A64 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 800F6B08 000F3A68 41 82 00 44 */ beq lbl_800F6B4C /* 800F6B0C 000F3A6C C0 02 91 80 */ lfs f0, lbl_805AAEA0@sda21(r2) /* 800F6B10 000F3A70 EC 00 07 B2 */ fmuls f0, f0, f30 /* 800F6B14 000F3A74 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F6B18 000F3A78 40 81 00 34 */ ble lbl_800F6B4C /* 800F6B1C 000F3A7C 80 7E 00 00 */ lwz r3, 0(r30) /* 800F6B20 000F3A80 80 03 02 B0 */ lwz r0, 0x2b0(r3) /* 800F6B24 000F3A84 2C 00 00 02 */ cmpwi r0, 2 /* 800F6B28 000F3A88 40 82 00 0C */ bne lbl_800F6B34 /* 800F6B2C 000F3A8C 80 03 02 AC */ lwz r0, 0x2ac(r3) /* 800F6B30 000F3A90 48 00 00 08 */ b lbl_800F6B38 lbl_800F6B34: /* 800F6B34 000F3A94 38 00 00 04 */ li r0, 4 lbl_800F6B38: /* 800F6B38 000F3A98 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F6B3C 000F3A9C 54 00 10 3A */ slwi r0, r0, 2 /* 800F6B40 000F3AA0 7C 63 02 14 */ add r3, r3, r0 /* 800F6B44 000F3AA4 C0 23 00 C4 */ lfs f1, 0xc4(r3) /* 800F6B48 000F3AA8 48 00 00 30 */ b lbl_800F6B78 lbl_800F6B4C: /* 800F6B4C 000F3AAC 80 7E 00 00 */ lwz r3, 0(r30) /* 800F6B50 000F3AB0 80 03 02 B0 */ lwz r0, 0x2b0(r3) /* 800F6B54 000F3AB4 2C 00 00 02 */ cmpwi r0, 2 /* 800F6B58 000F3AB8 40 82 00 0C */ bne lbl_800F6B64 /* 800F6B5C 000F3ABC 80 03 02 AC */ lwz r0, 0x2ac(r3) /* 800F6B60 000F3AC0 48 00 00 08 */ b lbl_800F6B68 lbl_800F6B64: /* 800F6B64 000F3AC4 38 00 00 04 */ li r0, 4 lbl_800F6B68: /* 800F6B68 000F3AC8 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F6B6C 000F3ACC 54 00 10 3A */ slwi r0, r0, 2 /* 800F6B70 000F3AD0 7C 63 02 14 */ add r3, r3, r0 /* 800F6B74 000F3AD4 C0 23 00 04 */ lfs f1, 4(r3) lbl_800F6B78: /* 800F6B78 000F3AD8 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F6B7C 000F3ADC FC 1B 00 40 */ fcmpo cr0, f27, f0 /* 800F6B80 000F3AE0 40 80 00 10 */ bge lbl_800F6B90 /* 800F6B84 000F3AE4 FC 00 08 50 */ fneg f0, f1 /* 800F6B88 000F3AE8 EF 60 00 F2 */ fmuls f27, f0, f3 /* 800F6B8C 000F3AEC 48 00 00 08 */ b lbl_800F6B94 lbl_800F6B90: /* 800F6B90 000F3AF0 EF 61 00 F2 */ fmuls f27, f1, f3 lbl_800F6B94: /* 800F6B94 000F3AF4 FC 20 D2 10 */ fabs f1, f26 /* 800F6B98 000F3AF8 C0 02 91 E4 */ lfs f0, lbl_805AAF04@sda21(r2) /* 800F6B9C 000F3AFC FC 20 08 18 */ frsp f1, f1 /* 800F6BA0 000F3B00 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F6BA4 000F3B04 40 81 00 D0 */ ble lbl_800F6C74 /* 800F6BA8 000F3B08 EF 1A 07 B2 */ fmuls f24, f26, f30 /* 800F6BAC 000F3B0C 38 81 00 08 */ addi r4, r1, 8 /* 800F6BB0 000F3B10 38 6D 88 70 */ addi r3, r13, lbl_805A7430@sda21 /* 800F6BB4 000F3B14 38 AD 88 74 */ addi r5, r13, lbl_805A7434@sda21 /* 800F6BB8 000F3B18 EF 38 E8 28 */ fsubs f25, f24, f29 /* 800F6BBC 000F3B1C FC 00 CA 10 */ fabs f0, f25 /* 800F6BC0 000F3B20 FC 00 00 18 */ frsp f0, f0 /* 800F6BC4 000F3B24 EC 00 F0 24 */ fdivs f0, f0, f30 /* 800F6BC8 000F3B28 D0 01 00 08 */ stfs f0, 8(r1) /* 800F6BCC 000F3B2C 4B F1 56 E9 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F6BD0 000F3B30 C0 42 91 A8 */ lfs f2, lbl_805AAEC8@sda21(r2) /* 800F6BD4 000F3B34 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F6BD8 000F3B38 C0 63 00 00 */ lfs f3, 0(r3) /* 800F6BDC 000F3B3C FC 1D 10 6E */ fsel f0, f29, f1, f2 /* 800F6BE0 000F3B40 FC 38 10 6E */ fsel f1, f24, f1, f2 /* 800F6BE4 000F3B44 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 800F6BE8 000F3B48 41 82 00 44 */ beq lbl_800F6C2C /* 800F6BEC 000F3B4C C0 02 91 80 */ lfs f0, lbl_805AAEA0@sda21(r2) /* 800F6BF0 000F3B50 EC 00 07 B2 */ fmuls f0, f0, f30 /* 800F6BF4 000F3B54 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F6BF8 000F3B58 40 81 00 34 */ ble lbl_800F6C2C /* 800F6BFC 000F3B5C 80 7E 00 00 */ lwz r3, 0(r30) /* 800F6C00 000F3B60 80 03 02 B0 */ lwz r0, 0x2b0(r3) /* 800F6C04 000F3B64 2C 00 00 02 */ cmpwi r0, 2 /* 800F6C08 000F3B68 40 82 00 0C */ bne lbl_800F6C14 /* 800F6C0C 000F3B6C 80 03 02 AC */ lwz r0, 0x2ac(r3) /* 800F6C10 000F3B70 48 00 00 08 */ b lbl_800F6C18 lbl_800F6C14: /* 800F6C14 000F3B74 38 00 00 04 */ li r0, 4 lbl_800F6C18: /* 800F6C18 000F3B78 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F6C1C 000F3B7C 54 00 10 3A */ slwi r0, r0, 2 /* 800F6C20 000F3B80 7C 63 02 14 */ add r3, r3, r0 /* 800F6C24 000F3B84 C0 23 00 C4 */ lfs f1, 0xc4(r3) /* 800F6C28 000F3B88 48 00 00 30 */ b lbl_800F6C58 lbl_800F6C2C: /* 800F6C2C 000F3B8C 80 7E 00 00 */ lwz r3, 0(r30) /* 800F6C30 000F3B90 80 03 02 B0 */ lwz r0, 0x2b0(r3) /* 800F6C34 000F3B94 2C 00 00 02 */ cmpwi r0, 2 /* 800F6C38 000F3B98 40 82 00 0C */ bne lbl_800F6C44 /* 800F6C3C 000F3B9C 80 03 02 AC */ lwz r0, 0x2ac(r3) /* 800F6C40 000F3BA0 48 00 00 08 */ b lbl_800F6C48 lbl_800F6C44: /* 800F6C44 000F3BA4 38 00 00 04 */ li r0, 4 lbl_800F6C48: /* 800F6C48 000F3BA8 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F6C4C 000F3BAC 54 00 10 3A */ slwi r0, r0, 2 /* 800F6C50 000F3BB0 7C 63 02 14 */ add r3, r3, r0 /* 800F6C54 000F3BB4 C0 23 00 04 */ lfs f1, 4(r3) lbl_800F6C58: /* 800F6C58 000F3BB8 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F6C5C 000F3BBC FC 19 00 40 */ fcmpo cr0, f25, f0 /* 800F6C60 000F3BC0 40 80 00 10 */ bge lbl_800F6C70 /* 800F6C64 000F3BC4 FC 00 08 50 */ fneg f0, f1 /* 800F6C68 000F3BC8 EF 80 00 F2 */ fmuls f28, f0, f3 /* 800F6C6C 000F3BCC 48 00 00 08 */ b lbl_800F6C74 lbl_800F6C70: /* 800F6C70 000F3BD0 EF 81 00 F2 */ fmuls f28, f1, f3 lbl_800F6C74: /* 800F6C74 000F3BD4 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F6C78 000F3BD8 FC 00 E0 00 */ fcmpu cr0, f0, f28 /* 800F6C7C 000F3BDC 40 82 00 28 */ bne lbl_800F6CA4 /* 800F6C80 000F3BE0 FC 00 D8 00 */ fcmpu cr0, f0, f27 /* 800F6C84 000F3BE4 40 82 00 20 */ bne lbl_800F6CA4 /* 800F6C88 000F3BE8 88 1E 1D E4 */ lbz r0, 0x1de4(r30) /* 800F6C8C 000F3BEC 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800F6C90 000F3BF0 40 82 00 14 */ bne lbl_800F6CA4 /* 800F6C94 000F3BF4 7F C3 F3 78 */ mr r3, r30 /* 800F6C98 000F3BF8 4B FF AD 39 */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F6C9C 000F3BFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F6CA0 000F3C00 41 82 04 F8 */ beq lbl_800F7198 lbl_800F6CA4: /* 800F6CA4 000F3C04 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F6CA8 000F3C08 38 61 00 B0 */ addi r3, r1, 0xb0 /* 800F6CAC 000F3C0C D3 81 00 A8 */ stfs f28, 0xa8(r1) /* 800F6CB0 000F3C10 38 81 01 34 */ addi r4, r1, 0x134 /* 800F6CB4 000F3C14 38 A1 00 A4 */ addi r5, r1, 0xa4 /* 800F6CB8 000F3C18 D0 01 00 A4 */ stfs f0, 0xa4(r1) /* 800F6CBC 000F3C1C D0 01 00 AC */ stfs f0, 0xac(r1) /* 800F6CC0 000F3C20 48 21 BD C1 */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800F6CC4 000F3C24 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F6CC8 000F3C28 38 61 00 98 */ addi r3, r1, 0x98 /* 800F6CCC 000F3C2C D3 61 00 8C */ stfs f27, 0x8c(r1) /* 800F6CD0 000F3C30 38 81 01 34 */ addi r4, r1, 0x134 /* 800F6CD4 000F3C34 C3 21 00 B0 */ lfs f25, 0xb0(r1) /* 800F6CD8 000F3C38 38 A1 00 8C */ addi r5, r1, 0x8c /* 800F6CDC 000F3C3C D0 01 00 90 */ stfs f0, 0x90(r1) /* 800F6CE0 000F3C40 C3 41 00 B4 */ lfs f26, 0xb4(r1) /* 800F6CE4 000F3C44 D0 01 00 94 */ stfs f0, 0x94(r1) /* 800F6CE8 000F3C48 C3 61 00 B8 */ lfs f27, 0xb8(r1) /* 800F6CEC 000F3C4C 48 21 BD 95 */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800F6CF0 000F3C50 C0 41 00 A0 */ lfs f2, 0xa0(r1) /* 800F6CF4 000F3C54 C0 21 00 98 */ lfs f1, 0x98(r1) /* 800F6CF8 000F3C58 C0 01 00 9C */ lfs f0, 0x9c(r1) /* 800F6CFC 000F3C5C EC 42 D8 2A */ fadds f2, f2, f27 /* 800F6D00 000F3C60 EC 21 C8 2A */ fadds f1, f1, f25 /* 800F6D04 000F3C64 EC 00 D0 2A */ fadds f0, f0, f26 /* 800F6D08 000F3C68 D0 41 01 00 */ stfs f2, 0x100(r1) /* 800F6D0C 000F3C6C D0 21 00 F8 */ stfs f1, 0xf8(r1) /* 800F6D10 000F3C70 D0 01 00 FC */ stfs f0, 0xfc(r1) /* 800F6D14 000F3C74 D0 3E 00 1C */ stfs f1, 0x1c(r30) /* 800F6D18 000F3C78 C0 01 00 FC */ lfs f0, 0xfc(r1) /* 800F6D1C 000F3C7C D0 1E 00 20 */ stfs f0, 0x20(r30) /* 800F6D20 000F3C80 C0 01 01 00 */ lfs f0, 0x100(r1) /* 800F6D24 000F3C84 D0 1E 00 24 */ stfs f0, 0x24(r30) /* 800F6D28 000F3C88 88 1E 1D E4 */ lbz r0, 0x1de4(r30) /* 800F6D2C 000F3C8C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800F6D30 000F3C90 41 82 00 70 */ beq lbl_800F6DA0 /* 800F6D34 000F3C94 7F C3 F3 78 */ mr r3, r30 /* 800F6D38 000F3C98 4B FF AC 99 */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F6D3C 000F3C9C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F6D40 000F3CA0 40 82 00 60 */ bne lbl_800F6DA0 /* 800F6D44 000F3CA4 38 61 00 80 */ addi r3, r1, 0x80 /* 800F6D48 000F3CA8 38 9E 19 24 */ addi r4, r30, 0x1924 /* 800F6D4C 000F3CAC 38 A1 00 F8 */ addi r5, r1, 0xf8 /* 800F6D50 000F3CB0 48 21 BC D5 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 800F6D54 000F3CB4 C0 01 00 84 */ lfs f0, 0x84(r1) /* 800F6D58 000F3CB8 38 61 00 74 */ addi r3, r1, 0x74 /* 800F6D5C 000F3CBC C0 21 00 88 */ lfs f1, 0x88(r1) /* 800F6D60 000F3CC0 38 9E 19 24 */ addi r4, r30, 0x1924 /* 800F6D64 000F3CC4 C0 41 00 80 */ lfs f2, 0x80(r1) /* 800F6D68 000F3CC8 38 A1 00 EC */ addi r5, r1, 0xec /* 800F6D6C 000F3CCC D0 01 00 F0 */ stfs f0, 0xf0(r1) /* 800F6D70 000F3CD0 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F6D74 000F3CD4 D0 21 00 F4 */ stfs f1, 0xf4(r1) /* 800F6D78 000F3CD8 D0 41 00 EC */ stfs f2, 0xec(r1) /* 800F6D7C 000F3CDC D0 01 00 F0 */ stfs f0, 0xf0(r1) /* 800F6D80 000F3CE0 D0 01 00 F4 */ stfs f0, 0xf4(r1) /* 800F6D84 000F3CE4 48 21 BC FD */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800F6D88 000F3CE8 C0 41 00 74 */ lfs f2, 0x74(r1) /* 800F6D8C 000F3CEC C0 21 00 78 */ lfs f1, 0x78(r1) /* 800F6D90 000F3CF0 C0 01 00 7C */ lfs f0, 0x7c(r1) /* 800F6D94 000F3CF4 D0 41 00 F8 */ stfs f2, 0xf8(r1) /* 800F6D98 000F3CF8 D0 21 00 FC */ stfs f1, 0xfc(r1) /* 800F6D9C 000F3CFC D0 01 01 00 */ stfs f0, 0x100(r1) lbl_800F6DA0: /* 800F6DA0 000F3D00 7F C3 F3 78 */ mr r3, r30 /* 800F6DA4 000F3D04 4B FF AC 2D */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F6DA8 000F3D08 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F6DAC 000F3D0C 41 82 01 F0 */ beq lbl_800F6F9C /* 800F6DB0 000F3D10 38 61 00 F8 */ addi r3, r1, 0xf8 /* 800F6DB4 000F3D14 48 21 DB 05 */ bl Magnitude__9CVector3fCFv /* 800F6DB8 000F3D18 C0 02 92 E0 */ lfs f0, lbl_805AB000@sda21(r2) /* 800F6DBC 000F3D1C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F6DC0 000F3D20 40 81 01 DC */ ble lbl_800F6F9C /* 800F6DC4 000F3D24 7F C3 F3 78 */ mr r3, r30 /* 800F6DC8 000F3D28 4B FF AB ED */ bl GetIsInHalfPipeModeInAir__10CMorphBallCFv /* 800F6DCC 000F3D2C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F6DD0 000F3D30 41 82 00 9C */ beq lbl_800F6E6C /* 800F6DD4 000F3D34 C0 02 91 9C */ lfs f0, lbl_805AAEBC@sda21(r2) /* 800F6DD8 000F3D38 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F6DDC 000F3D3C 4C 40 13 82 */ cror 2, 0, 2 /* 800F6DE0 000F3D40 40 82 00 8C */ bne lbl_800F6E6C /* 800F6DE4 000F3D44 C3 7E 19 3C */ lfs f27, 0x193c(r30) /* 800F6DE8 000F3D48 38 61 00 F8 */ addi r3, r1, 0xf8 /* 800F6DEC 000F3D4C C0 01 00 FC */ lfs f0, 0xfc(r1) /* 800F6DF0 000F3D50 C3 5E 19 2C */ lfs f26, 0x192c(r30) /* 800F6DF4 000F3D54 EC 00 06 F2 */ fmuls f0, f0, f27 /* 800F6DF8 000F3D58 C0 21 00 F8 */ lfs f1, 0xf8(r1) /* 800F6DFC 000F3D5C C3 9E 19 4C */ lfs f28, 0x194c(r30) /* 800F6E00 000F3D60 C0 41 01 00 */ lfs f2, 0x100(r1) /* 800F6E04 000F3D64 EC 01 06 BA */ fmadds f0, f1, f26, f0 /* 800F6E08 000F3D68 EF A2 07 3A */ fmadds f29, f2, f28, f0 /* 800F6E0C 000F3D6C 48 21 DA AD */ bl Magnitude__9CVector3fCFv /* 800F6E10 000F3D70 EC 3D 08 24 */ fdivs f1, f29, f1 /* 800F6E14 000F3D74 C0 02 92 E4 */ lfs f0, lbl_805AB004@sda21(r2) /* 800F6E18 000F3D78 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F6E1C 000F3D7C 40 80 00 50 */ bge lbl_800F6E6C /* 800F6E20 000F3D80 7F C3 F3 78 */ mr r3, r30 /* 800F6E24 000F3D84 4B FF AA D1 */ bl DisableHalfPipeStatus__10CMorphBallFv /* 800F6E28 000F3D88 C0 02 91 E8 */ lfs f0, lbl_805AAF08@sda21(r2) /* 800F6E2C 000F3D8C C0 22 92 E8 */ lfs f1, lbl_805AB008@sda21(r2) /* 800F6E30 000F3D90 D0 1E 1E 00 */ stfs f0, 0x1e00(r30) /* 800F6E34 000F3D94 80 7E 00 00 */ lwz r3, 0(r30) /* 800F6E38 000F3D98 C0 03 00 E8 */ lfs f0, 0xe8(r3) /* 800F6E3C 000F3D9C EC 01 00 32 */ fmuls f0, f1, f0 /* 800F6E40 000F3DA0 EC 40 06 B2 */ fmuls f2, f0, f26 /* 800F6E44 000F3DA4 EC 20 06 F2 */ fmuls f1, f0, f27 /* 800F6E48 000F3DA8 EC 00 07 32 */ fmuls f0, f0, f28 /* 800F6E4C 000F3DAC D0 41 00 68 */ stfs f2, 0x68(r1) /* 800F6E50 000F3DB0 D0 21 00 6C */ stfs f1, 0x6c(r1) /* 800F6E54 000F3DB4 D0 01 00 70 */ stfs f0, 0x70(r1) /* 800F6E58 000F3DB8 4B F2 46 DD */ bl Identity__10CAxisAngleFv /* 800F6E5C 000F3DBC 7C 65 1B 78 */ mr r5, r3 /* 800F6E60 000F3DC0 80 7E 00 00 */ lwz r3, 0(r30) /* 800F6E64 000F3DC4 38 81 00 68 */ addi r4, r1, 0x68 /* 800F6E68 000F3DC8 48 02 55 31 */ bl ApplyImpulseWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle lbl_800F6E6C: /* 800F6E6C 000F3DCC 7F C3 F3 78 */ mr r3, r30 /* 800F6E70 000F3DD0 4B FF AB 61 */ bl GetIsInHalfPipeMode__10CMorphBallCFv /* 800F6E74 000F3DD4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F6E78 000F3DD8 41 82 01 24 */ beq lbl_800F6F9C /* 800F6E7C 000F3DDC C0 DE 19 3C */ lfs f6, 0x193c(r30) /* 800F6E80 000F3DE0 38 61 00 5C */ addi r3, r1, 0x5c /* 800F6E84 000F3DE4 C0 01 00 FC */ lfs f0, 0xfc(r1) /* 800F6E88 000F3DE8 38 9E 19 24 */ addi r4, r30, 0x1924 /* 800F6E8C 000F3DEC C0 9E 19 2C */ lfs f4, 0x192c(r30) /* 800F6E90 000F3DF0 38 A1 00 F8 */ addi r5, r1, 0xf8 /* 800F6E94 000F3DF4 EC 00 01 B2 */ fmuls f0, f0, f6 /* 800F6E98 000F3DF8 C0 21 00 F8 */ lfs f1, 0xf8(r1) /* 800F6E9C 000F3DFC C0 FE 19 4C */ lfs f7, 0x194c(r30) /* 800F6EA0 000F3E00 C0 41 01 00 */ lfs f2, 0x100(r1) /* 800F6EA4 000F3E04 EC 01 01 3A */ fmadds f0, f1, f4, f0 /* 800F6EA8 000F3E08 C0 A1 00 F8 */ lfs f5, 0xf8(r1) /* 800F6EAC 000F3E0C C0 61 00 FC */ lfs f3, 0xfc(r1) /* 800F6EB0 000F3E10 C0 21 01 00 */ lfs f1, 0x100(r1) /* 800F6EB4 000F3E14 EC 02 01 FA */ fmadds f0, f2, f7, f0 /* 800F6EB8 000F3E18 EC 80 01 32 */ fmuls f4, f0, f4 /* 800F6EBC 000F3E1C EC 40 01 B2 */ fmuls f2, f0, f6 /* 800F6EC0 000F3E20 EC 00 01 F2 */ fmuls f0, f0, f7 /* 800F6EC4 000F3E24 EC 85 20 28 */ fsubs f4, f5, f4 /* 800F6EC8 000F3E28 EC 43 10 28 */ fsubs f2, f3, f2 /* 800F6ECC 000F3E2C EC 01 00 28 */ fsubs f0, f1, f0 /* 800F6ED0 000F3E30 D0 81 00 F8 */ stfs f4, 0xf8(r1) /* 800F6ED4 000F3E34 D0 41 00 FC */ stfs f2, 0xfc(r1) /* 800F6ED8 000F3E38 D0 01 01 00 */ stfs f0, 0x100(r1) /* 800F6EDC 000F3E3C 48 21 BB 49 */ bl TransposeRotate__12CTransform4fCFRC9CVector3f /* 800F6EE0 000F3E40 C0 41 00 5C */ lfs f2, 0x5c(r1) /* 800F6EE4 000F3E44 C0 21 00 60 */ lfs f1, 0x60(r1) /* 800F6EE8 000F3E48 C0 01 00 64 */ lfs f0, 0x64(r1) /* 800F6EEC 000F3E4C D0 41 00 E0 */ stfs f2, 0xe0(r1) /* 800F6EF0 000F3E50 D0 21 00 E4 */ stfs f1, 0xe4(r1) /* 800F6EF4 000F3E54 D0 01 00 E8 */ stfs f0, 0xe8(r1) /* 800F6EF8 000F3E58 88 1E 1D E4 */ lbz r0, 0x1de4(r30) /* 800F6EFC 000F3E5C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800F6F00 000F3E60 41 82 00 0C */ beq lbl_800F6F0C /* 800F6F04 000F3E64 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F6F08 000F3E68 48 00 00 08 */ b lbl_800F6F10 lbl_800F6F0C: /* 800F6F0C 000F3E6C C0 22 92 BC */ lfs f1, lbl_805AAFDC@sda21(r2) lbl_800F6F10: /* 800F6F10 000F3E70 C0 02 92 24 */ lfs f0, lbl_805AAF44@sda21(r2) /* 800F6F14 000F3E74 38 61 00 50 */ addi r3, r1, 0x50 /* 800F6F18 000F3E78 C0 61 00 E0 */ lfs f3, 0xe0(r1) /* 800F6F1C 000F3E7C 38 9E 19 24 */ addi r4, r30, 0x1924 /* 800F6F20 000F3E80 EC 00 00 72 */ fmuls f0, f0, f1 /* 800F6F24 000F3E84 C0 42 91 C4 */ lfs f2, lbl_805AAEE4@sda21(r2) /* 800F6F28 000F3E88 C0 21 00 E4 */ lfs f1, 0xe4(r1) /* 800F6F2C 000F3E8C 38 A1 00 E0 */ addi r5, r1, 0xe0 /* 800F6F30 000F3E90 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F6F34 000F3E94 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F6F38 000F3E98 D0 41 00 E0 */ stfs f2, 0xe0(r1) /* 800F6F3C 000F3E9C D0 01 00 E4 */ stfs f0, 0xe4(r1) /* 800F6F40 000F3EA0 48 21 BB 41 */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800F6F44 000F3EA4 C0 02 91 6C */ lfs f0, lbl_805AAE8C@sda21(r2) /* 800F6F48 000F3EA8 C0 41 00 50 */ lfs f2, 0x50(r1) /* 800F6F4C 000F3EAC C0 21 00 54 */ lfs f1, 0x54(r1) /* 800F6F50 000F3EB0 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 800F6F54 000F3EB4 C0 01 00 58 */ lfs f0, 0x58(r1) /* 800F6F58 000F3EB8 D0 41 00 F8 */ stfs f2, 0xf8(r1) /* 800F6F5C 000F3EBC D0 21 00 FC */ stfs f1, 0xfc(r1) /* 800F6F60 000F3EC0 D0 01 01 00 */ stfs f0, 0x100(r1) /* 800F6F64 000F3EC4 40 81 00 38 */ ble lbl_800F6F9C /* 800F6F68 000F3EC8 80 7E 00 00 */ lwz r3, 0(r30) /* 800F6F6C 000F3ECC 38 81 00 44 */ addi r4, r1, 0x44 /* 800F6F70 000F3ED0 C0 62 92 3C */ lfs f3, lbl_805AAF5C@sda21(r2) /* 800F6F74 000F3ED4 C0 43 01 3C */ lfs f2, 0x13c(r3) /* 800F6F78 000F3ED8 C0 23 01 40 */ lfs f1, 0x140(r3) /* 800F6F7C 000F3EDC C0 03 01 38 */ lfs f0, 0x138(r3) /* 800F6F80 000F3EE0 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F6F84 000F3EE4 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F6F88 000F3EE8 EC 03 00 32 */ fmuls f0, f3, f0 /* 800F6F8C 000F3EEC D0 41 00 48 */ stfs f2, 0x48(r1) /* 800F6F90 000F3EF0 D0 01 00 44 */ stfs f0, 0x44(r1) /* 800F6F94 000F3EF4 D0 21 00 4C */ stfs f1, 0x4c(r1) /* 800F6F98 000F3EF8 48 02 3D 09 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f lbl_800F6F9C: /* 800F6F9C 000F3EFC 7F C3 F3 78 */ mr r3, r30 /* 800F6FA0 000F3F00 4B FF A9 F9 */ bl GetTouchedHalfPipeRecently__10CMorphBallCFv /* 800F6FA4 000F3F04 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F6FA8 000F3F08 41 82 00 E0 */ beq lbl_800F7088 /* 800F6FAC 000F3F0C C0 9E 1E 0C */ lfs f4, 0x1e0c(r30) /* 800F6FB0 000F3F10 C0 FE 1E 18 */ lfs f7, 0x1e18(r30) /* 800F6FB4 000F3F14 C0 7E 1E 08 */ lfs f3, 0x1e08(r30) /* 800F6FB8 000F3F18 EC 04 01 F2 */ fmuls f0, f4, f7 /* 800F6FBC 000F3F1C C0 DE 1E 14 */ lfs f6, 0x1e14(r30) /* 800F6FC0 000F3F20 C0 BE 1E 10 */ lfs f5, 0x1e10(r30) /* 800F6FC4 000F3F24 C1 1E 1E 1C */ lfs f8, 0x1e1c(r30) /* 800F6FC8 000F3F28 EC 23 01 BA */ fmadds f1, f3, f6, f0 /* 800F6FCC 000F3F2C C0 02 92 3C */ lfs f0, lbl_805AAF5C@sda21(r2) /* 800F6FD0 000F3F30 EC 25 0A 3A */ fmadds f1, f5, f8, f1 /* 800F6FD4 000F3F34 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F6FD8 000F3F38 40 80 00 B0 */ bge lbl_800F7088 /* 800F6FDC 000F3F3C C0 02 92 58 */ lfs f0, lbl_805AAF78@sda21(r2) /* 800F6FE0 000F3F40 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F6FE4 000F3F44 40 81 00 A4 */ ble lbl_800F7088 /* 800F6FE8 000F3F48 EC 47 01 72 */ fmuls f2, f7, f5 /* 800F6FEC 000F3F4C 38 61 00 38 */ addi r3, r1, 0x38 /* 800F6FF0 000F3F50 EC 28 00 F2 */ fmuls f1, f8, f3 /* 800F6FF4 000F3F54 38 81 00 2C */ addi r4, r1, 0x2c /* 800F6FF8 000F3F58 EC 06 01 32 */ fmuls f0, f6, f4 /* 800F6FFC 000F3F5C EC 44 12 38 */ fmsubs f2, f4, f8, f2 /* 800F7000 000F3F60 EC 25 09 B8 */ fmsubs f1, f5, f6, f1 /* 800F7004 000F3F64 EC 03 01 F8 */ fmsubs f0, f3, f7, f0 /* 800F7008 000F3F68 D0 41 00 2C */ stfs f2, 0x2c(r1) /* 800F700C 000F3F6C D0 21 00 30 */ stfs f1, 0x30(r1) /* 800F7010 000F3F70 D0 01 00 34 */ stfs f0, 0x34(r1) /* 800F7014 000F3F74 48 21 D8 3D */ bl AsNormalized__9CVector3fCFv /* 800F7018 000F3F78 80 7E 00 00 */ lwz r3, 0(r30) /* 800F701C 000F3F7C 38 81 00 D4 */ addi r4, r1, 0xd4 /* 800F7020 000F3F80 C0 21 00 3C */ lfs f1, 0x3c(r1) /* 800F7024 000F3F84 C0 C3 01 38 */ lfs f6, 0x138(r3) /* 800F7028 000F3F88 C0 41 00 38 */ lfs f2, 0x38(r1) /* 800F702C 000F3F8C D0 C1 00 D4 */ stfs f6, 0xd4(r1) /* 800F7030 000F3F90 C0 E1 00 40 */ lfs f7, 0x40(r1) /* 800F7034 000F3F94 C0 A3 01 3C */ lfs f5, 0x13c(r3) /* 800F7038 000F3F98 C0 62 92 54 */ lfs f3, lbl_805AAF74@sda21(r2) /* 800F703C 000F3F9C EC 01 01 72 */ fmuls f0, f1, f5 /* 800F7040 000F3FA0 D0 A1 00 D8 */ stfs f5, 0xd8(r1) /* 800F7044 000F3FA4 C0 83 01 40 */ lfs f4, 0x140(r3) /* 800F7048 000F3FA8 EC 02 01 BA */ fmadds f0, f2, f6, f0 /* 800F704C 000F3FAC D0 81 00 DC */ stfs f4, 0xdc(r1) /* 800F7050 000F3FB0 EC 07 01 3A */ fmadds f0, f7, f4, f0 /* 800F7054 000F3FB4 EC 40 00 B2 */ fmuls f2, f0, f2 /* 800F7058 000F3FB8 EC 20 00 72 */ fmuls f1, f0, f1 /* 800F705C 000F3FBC EC 00 01 F2 */ fmuls f0, f0, f7 /* 800F7060 000F3FC0 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F7064 000F3FC4 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F7068 000F3FC8 EC 03 00 32 */ fmuls f0, f3, f0 /* 800F706C 000F3FCC EC 46 10 28 */ fsubs f2, f6, f2 /* 800F7070 000F3FD0 EC 25 08 28 */ fsubs f1, f5, f1 /* 800F7074 000F3FD4 EC 04 00 28 */ fsubs f0, f4, f0 /* 800F7078 000F3FD8 D0 41 00 D4 */ stfs f2, 0xd4(r1) /* 800F707C 000F3FDC D0 21 00 D8 */ stfs f1, 0xd8(r1) /* 800F7080 000F3FE0 D0 01 00 DC */ stfs f0, 0xdc(r1) /* 800F7084 000F3FE4 48 02 3C 1D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f lbl_800F7088: /* 800F7088 000F3FE8 C0 02 91 98 */ lfs f0, lbl_805AAEB8@sda21(r2) /* 800F708C 000F3FEC EF 00 07 B2 */ fmuls f24, f0, f30 /* 800F7090 000F3FF0 FC 1F C0 40 */ fcmpo cr0, f31, f24 /* 800F7094 000F3FF4 4C 41 13 82 */ cror 2, 1, 2 /* 800F7098 000F3FF8 40 82 00 D4 */ bne lbl_800F716C /* 800F709C 000F3FFC 80 BE 00 00 */ lwz r5, 0(r30) /* 800F70A0 000F4000 38 61 00 20 */ addi r3, r1, 0x20 /* 800F70A4 000F4004 38 81 00 C8 */ addi r4, r1, 0xc8 /* 800F70A8 000F4008 C0 05 01 38 */ lfs f0, 0x138(r5) /* 800F70AC 000F400C D0 01 00 C8 */ stfs f0, 0xc8(r1) /* 800F70B0 000F4010 C0 05 01 3C */ lfs f0, 0x13c(r5) /* 800F70B4 000F4014 D0 01 00 CC */ stfs f0, 0xcc(r1) /* 800F70B8 000F4018 C0 05 01 40 */ lfs f0, 0x140(r5) /* 800F70BC 000F401C D0 01 00 D0 */ stfs f0, 0xd0(r1) /* 800F70C0 000F4020 48 21 D7 91 */ bl AsNormalized__9CVector3fCFv /* 800F70C4 000F4024 C0 21 00 FC */ lfs f1, 0xfc(r1) /* 800F70C8 000F4028 C0 01 00 24 */ lfs f0, 0x24(r1) /* 800F70CC 000F402C C0 41 00 F8 */ lfs f2, 0xf8(r1) /* 800F70D0 000F4030 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F70D4 000F4034 C0 21 00 20 */ lfs f1, 0x20(r1) /* 800F70D8 000F4038 C0 81 01 00 */ lfs f4, 0x100(r1) /* 800F70DC 000F403C C0 61 00 28 */ lfs f3, 0x28(r1) /* 800F70E0 000F4040 EC 22 00 7A */ fmadds f1, f2, f1, f0 /* 800F70E4 000F4044 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F70E8 000F4048 EF 44 08 FA */ fmadds f26, f4, f3, f1 /* 800F70EC 000F404C FC 1A 00 40 */ fcmpo cr0, f26, f0 /* 800F70F0 000F4050 40 81 00 7C */ ble lbl_800F716C /* 800F70F4 000F4054 EC 3F C0 28 */ fsubs f1, f31, f24 /* 800F70F8 000F4058 38 81 00 10 */ addi r4, r1, 0x10 /* 800F70FC 000F405C EC 1E C0 28 */ fsubs f0, f30, f24 /* 800F7100 000F4060 38 6D 88 78 */ addi r3, r13, lbl_805A7438@sda21 /* 800F7104 000F4064 38 AD 88 7C */ addi r5, r13, lbl_805A743C@sda21 /* 800F7108 000F4068 EC 01 00 24 */ fdivs f0, f1, f0 /* 800F710C 000F406C D0 01 00 10 */ stfs f0, 0x10(r1) /* 800F7110 000F4070 4B F1 51 A5 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F7114 000F4074 C0 03 00 00 */ lfs f0, 0(r3) /* 800F7118 000F4078 38 61 00 14 */ addi r3, r1, 0x14 /* 800F711C 000F407C 38 81 00 C8 */ addi r4, r1, 0xc8 /* 800F7120 000F4080 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800F7124 000F4084 48 21 D7 2D */ bl AsNormalized__9CVector3fCFv /* 800F7128 000F4088 C0 01 00 10 */ lfs f0, 0x10(r1) /* 800F712C 000F408C C0 A1 00 1C */ lfs f5, 0x1c(r1) /* 800F7130 000F4090 EC C0 06 B2 */ fmuls f6, f0, f26 /* 800F7134 000F4094 C0 21 00 14 */ lfs f1, 0x14(r1) /* 800F7138 000F4098 C0 01 00 18 */ lfs f0, 0x18(r1) /* 800F713C 000F409C C0 81 00 F8 */ lfs f4, 0xf8(r1) /* 800F7140 000F40A0 EC 66 00 72 */ fmuls f3, f6, f1 /* 800F7144 000F40A4 C0 41 00 FC */ lfs f2, 0xfc(r1) /* 800F7148 000F40A8 EC 26 00 32 */ fmuls f1, f6, f0 /* 800F714C 000F40AC C0 01 01 00 */ lfs f0, 0x100(r1) /* 800F7150 000F40B0 EC A6 01 72 */ fmuls f5, f6, f5 /* 800F7154 000F40B4 EC 64 18 28 */ fsubs f3, f4, f3 /* 800F7158 000F40B8 EC 22 08 28 */ fsubs f1, f2, f1 /* 800F715C 000F40BC EC 00 28 28 */ fsubs f0, f0, f5 /* 800F7160 000F40C0 D0 61 00 F8 */ stfs f3, 0xf8(r1) /* 800F7164 000F40C4 D0 21 00 FC */ stfs f1, 0xfc(r1) /* 800F7168 000F40C8 D0 01 01 00 */ stfs f0, 0x100(r1) lbl_800F716C: /* 800F716C 000F40CC C0 01 00 F8 */ lfs f0, 0xf8(r1) /* 800F7170 000F40D0 D0 1E 00 10 */ stfs f0, 0x10(r30) /* 800F7174 000F40D4 C0 01 00 FC */ lfs f0, 0xfc(r1) /* 800F7178 000F40D8 D0 1E 00 14 */ stfs f0, 0x14(r30) /* 800F717C 000F40DC C0 01 01 00 */ lfs f0, 0x100(r1) /* 800F7180 000F40E0 D0 1E 00 18 */ stfs f0, 0x18(r30) /* 800F7184 000F40E4 4B F2 43 B1 */ bl Identity__10CAxisAngleFv /* 800F7188 000F40E8 7C 65 1B 78 */ mr r5, r3 /* 800F718C 000F40EC 80 7E 00 00 */ lwz r3, 0(r30) /* 800F7190 000F40F0 38 81 00 F8 */ addi r4, r1, 0xf8 /* 800F7194 000F40F4 48 02 51 31 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle lbl_800F7198: /* 800F7198 000F40F8 80 BE 00 00 */ lwz r5, 0(r30) /* 800F719C 000F40FC 7F C3 F3 78 */ mr r3, r30 /* 800F71A0 000F4100 7F E6 FB 78 */ mr r6, r31 /* 800F71A4 000F4104 38 9E 00 1C */ addi r4, r30, 0x1c /* 800F71A8 000F4108 38 A5 01 38 */ addi r5, r5, 0x138 /* 800F71AC 000F410C 4B FF 8E E9 */ bl ComputeLiftForces__10CMorphBallFRC9CVector3fRC9CVector3fRC13CStateManager lbl_800F71B0: /* 800F71B0 000F4110 E3 E1 01 F8 */ psq_l f31, 504(r1), 0, qr0 /* 800F71B4 000F4114 CB E1 01 F0 */ lfd f31, 0x1f0(r1) /* 800F71B8 000F4118 E3 C1 01 E8 */ psq_l f30, 488(r1), 0, qr0 /* 800F71BC 000F411C CB C1 01 E0 */ lfd f30, 0x1e0(r1) /* 800F71C0 000F4120 E3 A1 01 D8 */ psq_l f29, 472(r1), 0, qr0 /* 800F71C4 000F4124 CB A1 01 D0 */ lfd f29, 0x1d0(r1) /* 800F71C8 000F4128 E3 81 01 C8 */ psq_l f28, 456(r1), 0, qr0 /* 800F71CC 000F412C CB 81 01 C0 */ lfd f28, 0x1c0(r1) /* 800F71D0 000F4130 E3 61 01 B8 */ psq_l f27, 440(r1), 0, qr0 /* 800F71D4 000F4134 CB 61 01 B0 */ lfd f27, 0x1b0(r1) /* 800F71D8 000F4138 E3 41 01 A8 */ psq_l f26, 424(r1), 0, qr0 /* 800F71DC 000F413C CB 41 01 A0 */ lfd f26, 0x1a0(r1) /* 800F71E0 000F4140 E3 21 01 98 */ psq_l f25, 408(r1), 0, qr0 /* 800F71E4 000F4144 CB 21 01 90 */ lfd f25, 0x190(r1) /* 800F71E8 000F4148 E3 01 01 88 */ psq_l f24, 392(r1), 0, qr0 /* 800F71EC 000F414C CB 01 01 80 */ lfd f24, 0x180(r1) /* 800F71F0 000F4150 83 E1 01 7C */ lwz r31, 0x17c(r1) /* 800F71F4 000F4154 83 C1 01 78 */ lwz r30, 0x178(r1) /* 800F71F8 000F4158 80 01 02 04 */ lwz r0, 0x204(r1) /* 800F71FC 000F415C 83 A1 01 74 */ lwz r29, 0x174(r1) /* 800F7200 000F4160 7C 08 03 A6 */ mtlr r0 /* 800F7204 000F4164 38 21 02 00 */ addi r1, r1, 0x200 /* 800F7208 000F4168 4E 80 00 20 */ blr .global CreateSpiderBallParticles__10CMorphBallFRC9CVector3fRC9CVector3f CreateSpiderBallParticles__10CMorphBallFRC9CVector3fRC9CVector3f: /* 800F720C 000F416C 94 21 FF B0 */ stwu r1, -0x50(r1) /* 800F7210 000F4170 7C 08 02 A6 */ mflr r0 /* 800F7214 000F4174 90 01 00 54 */ stw r0, 0x54(r1) /* 800F7218 000F4178 BF 61 00 3C */ stmw r27, 0x3c(r1) /* 800F721C 000F417C 7C 7B 1B 78 */ mr r27, r3 /* 800F7220 000F4180 7C 9C 23 78 */ mr r28, r4 /* 800F7224 000F4184 7C BD 2B 78 */ mr r29, r5 /* 800F7228 000F4188 38 80 00 01 */ li r4, 1 /* 800F722C 000F418C 80 63 19 D4 */ lwz r3, 0x19d4(r3) /* 800F7230 000F4190 81 83 00 00 */ lwz r12, 0(r3) /* 800F7234 000F4194 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F7238 000F4198 7D 89 03 A6 */ mtctr r12 /* 800F723C 000F419C 4E 80 04 21 */ bctrl /* 800F7240 000F41A0 C0 3D 00 04 */ lfs f1, 4(r29) /* 800F7244 000F41A4 38 61 00 14 */ addi r3, r1, 0x14 /* 800F7248 000F41A8 C0 1C 00 04 */ lfs f0, 4(r28) /* 800F724C 000F41AC C0 7D 00 08 */ lfs f3, 8(r29) /* 800F7250 000F41B0 C0 5C 00 08 */ lfs f2, 8(r28) /* 800F7254 000F41B4 EC 81 00 28 */ fsubs f4, f1, f0 /* 800F7258 000F41B8 C0 3D 00 00 */ lfs f1, 0(r29) /* 800F725C 000F41BC C0 1C 00 00 */ lfs f0, 0(r28) /* 800F7260 000F41C0 EC 43 10 28 */ fsubs f2, f3, f2 /* 800F7264 000F41C4 D0 81 00 18 */ stfs f4, 0x18(r1) /* 800F7268 000F41C8 EC 01 00 28 */ fsubs f0, f1, f0 /* 800F726C 000F41CC D0 41 00 1C */ stfs f2, 0x1c(r1) /* 800F7270 000F41D0 D0 01 00 14 */ stfs f0, 0x14(r1) /* 800F7274 000F41D4 48 21 D6 45 */ bl Magnitude__9CVector3fCFv /* 800F7278 000F41D8 C0 42 91 E8 */ lfs f2, lbl_805AAF08@sda21(r2) /* 800F727C 000F41DC 3C 00 43 30 */ lis r0, 0x4330 /* 800F7280 000F41E0 C0 02 92 EC */ lfs f0, lbl_805AB00C@sda21(r2) /* 800F7284 000F41E4 EC 61 10 24 */ fdivs f3, f1, f2 /* 800F7288 000F41E8 C0 E2 91 5C */ lfs f7, lbl_805AAE7C@sda21(r2) /* 800F728C 000F41EC 90 01 00 28 */ stw r0, 0x28(r1) /* 800F7290 000F41F0 C8 A2 92 10 */ lfd f5, lbl_805AAF30@sda21(r2) /* 800F7294 000F41F4 C0 42 91 E0 */ lfs f2, lbl_805AAF00@sda21(r2) /* 800F7298 000F41F8 C0 81 00 14 */ lfs f4, 0x14(r1) /* 800F729C 000F41FC EC C7 18 2A */ fadds f6, f7, f3 /* 800F72A0 000F4200 C0 61 00 18 */ lfs f3, 0x18(r1) /* 800F72A4 000F4204 EC 01 00 24 */ fdivs f0, f1, f0 /* 800F72A8 000F4208 C0 21 00 1C */ lfs f1, 0x1c(r1) /* 800F72AC 000F420C FC C0 30 1E */ fctiwz f6, f6 /* 800F72B0 000F4210 EC 02 00 32 */ fmuls f0, f2, f0 /* 800F72B4 000F4214 D8 C1 00 20 */ stfd f6, 0x20(r1) /* 800F72B8 000F4218 FC 00 00 1E */ fctiwz f0, f0 /* 800F72BC 000F421C 83 E1 00 24 */ lwz r31, 0x24(r1) /* 800F72C0 000F4220 6F E0 80 00 */ xoris r0, r31, 0x8000 /* 800F72C4 000F4224 D8 01 00 30 */ stfd f0, 0x30(r1) /* 800F72C8 000F4228 90 01 00 2C */ stw r0, 0x2c(r1) /* 800F72CC 000F422C 83 C1 00 34 */ lwz r30, 0x34(r1) /* 800F72D0 000F4230 C8 01 00 28 */ lfd f0, 0x28(r1) /* 800F72D4 000F4234 EC 00 28 28 */ fsubs f0, f0, f5 /* 800F72D8 000F4238 EC 07 00 24 */ fdivs f0, f7, f0 /* 800F72DC 000F423C EC 84 00 32 */ fmuls f4, f4, f0 /* 800F72E0 000F4240 EC 43 00 32 */ fmuls f2, f3, f0 /* 800F72E4 000F4244 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F72E8 000F4248 D0 81 00 14 */ stfs f4, 0x14(r1) /* 800F72EC 000F424C D0 41 00 18 */ stfs f2, 0x18(r1) /* 800F72F0 000F4250 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800F72F4 000F4254 48 00 00 88 */ b lbl_800F737C lbl_800F72F8: /* 800F72F8 000F4258 C0 5C 00 00 */ lfs f2, 0(r28) /* 800F72FC 000F425C 3B A0 00 00 */ li r29, 0 /* 800F7300 000F4260 C0 3C 00 04 */ lfs f1, 4(r28) /* 800F7304 000F4264 C0 1C 00 08 */ lfs f0, 8(r28) /* 800F7308 000F4268 D0 41 00 08 */ stfs f2, 8(r1) /* 800F730C 000F426C D0 21 00 0C */ stfs f1, 0xc(r1) /* 800F7310 000F4270 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800F7314 000F4274 48 00 00 5C */ b lbl_800F7370 lbl_800F7318: /* 800F7318 000F4278 80 7B 19 D4 */ lwz r3, 0x19d4(r27) /* 800F731C 000F427C 38 81 00 08 */ addi r4, r1, 8 /* 800F7320 000F4280 81 83 00 00 */ lwz r12, 0(r3) /* 800F7324 000F4284 81 8C 00 18 */ lwz r12, 0x18(r12) /* 800F7328 000F4288 7D 89 03 A6 */ mtctr r12 /* 800F732C 000F428C 4E 80 04 21 */ bctrl /* 800F7330 000F4290 80 7B 19 D4 */ lwz r3, 0x19d4(r27) /* 800F7334 000F4294 38 80 00 01 */ li r4, 1 /* 800F7338 000F4298 48 22 55 89 */ bl ForceParticleCreation__11CElementGenFi /* 800F733C 000F429C C0 21 00 08 */ lfs f1, 8(r1) /* 800F7340 000F42A0 3B BD 00 01 */ addi r29, r29, 1 /* 800F7344 000F42A4 C0 01 00 14 */ lfs f0, 0x14(r1) /* 800F7348 000F42A8 C0 61 00 0C */ lfs f3, 0xc(r1) /* 800F734C 000F42AC EC 81 00 2A */ fadds f4, f1, f0 /* 800F7350 000F42B0 C0 41 00 18 */ lfs f2, 0x18(r1) /* 800F7354 000F42B4 C0 21 00 10 */ lfs f1, 0x10(r1) /* 800F7358 000F42B8 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800F735C 000F42BC EC 43 10 2A */ fadds f2, f3, f2 /* 800F7360 000F42C0 D0 81 00 08 */ stfs f4, 8(r1) /* 800F7364 000F42C4 EC 01 00 2A */ fadds f0, f1, f0 /* 800F7368 000F42C8 D0 41 00 0C */ stfs f2, 0xc(r1) /* 800F736C 000F42CC D0 01 00 10 */ stfs f0, 0x10(r1) lbl_800F7370: /* 800F7370 000F42D0 7C 1D F8 00 */ cmpw r29, r31 /* 800F7374 000F42D4 41 80 FF A4 */ blt lbl_800F7318 /* 800F7378 000F42D8 3B DE FF FF */ addi r30, r30, -1 lbl_800F737C: /* 800F737C 000F42DC 2C 1E 00 00 */ cmpwi r30, 0 /* 800F7380 000F42E0 40 80 FF 78 */ bge lbl_800F72F8 /* 800F7384 000F42E4 80 7B 19 D4 */ lwz r3, 0x19d4(r27) /* 800F7388 000F42E8 38 80 00 00 */ li r4, 0 /* 800F738C 000F42EC 81 83 00 00 */ lwz r12, 0(r3) /* 800F7390 000F42F0 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800F7394 000F42F4 7D 89 03 A6 */ mtctr r12 /* 800F7398 000F42F8 4E 80 04 21 */ bctrl /* 800F739C 000F42FC BB 61 00 3C */ lmw r27, 0x3c(r1) /* 800F73A0 000F4300 80 01 00 54 */ lwz r0, 0x54(r1) /* 800F73A4 000F4304 7C 08 03 A6 */ mtlr r0 /* 800F73A8 000F4308 38 21 00 50 */ addi r1, r1, 0x50 /* 800F73AC 000F430C 4E 80 00 20 */ blr .global GetSpiderBallSwingControllerMovementScalar__10CMorphBallCFv GetSpiderBallSwingControllerMovementScalar__10CMorphBallCFv: /* 800F73B0 000F4310 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F73B4 000F4314 C0 42 92 F0 */ lfs f2, lbl_805AB010@sda21(r2) /* 800F73B8 000F4318 C0 63 19 08 */ lfs f3, 0x1908(r3) /* 800F73BC 000F431C FC 03 10 40 */ fcmpo cr0, f3, f2 /* 800F73C0 000F4320 40 80 00 0C */ bge lbl_800F73CC /* 800F73C4 000F4324 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F73C8 000F4328 48 00 00 30 */ b lbl_800F73F8 lbl_800F73CC: /* 800F73CC 000F432C C0 22 92 F4 */ lfs f1, lbl_805AB014@sda21(r2) /* 800F73D0 000F4330 C0 0D 88 64 */ lfs f0, lbl_805A7424@sda21(r13) /* 800F73D4 000F4334 EC 21 18 28 */ fsubs f1, f1, f3 /* 800F73D8 000F4338 EC 21 10 24 */ fdivs f1, f1, f2 /* 800F73DC 000F433C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F73E0 000F4340 D0 21 00 08 */ stfs f1, 8(r1) /* 800F73E4 000F4344 40 80 00 0C */ bge lbl_800F73F0 /* 800F73E8 000F4348 38 61 00 08 */ addi r3, r1, 8 /* 800F73EC 000F434C 48 00 00 08 */ b lbl_800F73F4 lbl_800F73F0: /* 800F73F0 000F4350 38 6D 88 64 */ addi r3, r13, lbl_805A7424@sda21 lbl_800F73F4: /* 800F73F4 000F4354 C0 23 00 00 */ lfs f1, 0(r3) lbl_800F73F8: /* 800F73F8 000F4358 38 21 00 10 */ addi r1, r1, 0x10 /* 800F73FC 000F435C 4E 80 00 20 */ blr .global UpdateSpiderBallSwingControllerMovementTimer__10CMorphBallFff UpdateSpiderBallSwingControllerMovementTimer__10CMorphBallFff: /* 800F7400 000F4360 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F7404 000F4364 7C 08 02 A6 */ mflr r0 /* 800F7408 000F4368 90 01 00 24 */ stw r0, 0x24(r1) /* 800F740C 000F436C DB E1 00 10 */ stfd f31, 0x10(r1) /* 800F7410 000F4370 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 800F7414 000F4374 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F7418 000F4378 FF E0 08 90 */ fmr f31, f1 /* 800F741C 000F437C C0 02 91 FC */ lfs f0, lbl_805AAF1C@sda21(r2) /* 800F7420 000F4380 7C 7F 1B 78 */ mr r31, r3 /* 800F7424 000F4384 FC 20 FA 10 */ fabs f1, f31 /* 800F7428 000F4388 FC 20 08 18 */ frsp f1, f1 /* 800F742C 000F438C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F7430 000F4390 40 80 00 0C */ bge lbl_800F743C /* 800F7434 000F4394 48 00 00 61 */ bl ResetSpiderBallSwingControllerMovementTimer__10CMorphBallFv /* 800F7438 000F4398 48 00 00 40 */ b lbl_800F7478 lbl_800F743C: /* 800F743C 000F439C C0 62 91 A8 */ lfs f3, lbl_805AAEC8@sda21(r2) /* 800F7440 000F43A0 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F7444 000F43A4 C0 1F 19 04 */ lfs f0, 0x1904(r31) /* 800F7448 000F43A8 FC 3F 18 6E */ fsel f1, f31, f1, f3 /* 800F744C 000F43AC FC 00 08 00 */ fcmpu cr0, f0, f1 /* 800F7450 000F43B0 41 82 00 1C */ beq lbl_800F746C /* 800F7454 000F43B4 48 00 00 41 */ bl ResetSpiderBallSwingControllerMovementTimer__10CMorphBallFv /* 800F7458 000F43B8 C0 22 91 A8 */ lfs f1, lbl_805AAEC8@sda21(r2) /* 800F745C 000F43BC C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F7460 000F43C0 FC 1F 08 2E */ fsel f0, f31, f0, f1 /* 800F7464 000F43C4 D0 1F 19 04 */ stfs f0, 0x1904(r31) /* 800F7468 000F43C8 48 00 00 10 */ b lbl_800F7478 lbl_800F746C: /* 800F746C 000F43CC C0 1F 19 08 */ lfs f0, 0x1908(r31) /* 800F7470 000F43D0 EC 00 10 2A */ fadds f0, f0, f2 /* 800F7474 000F43D4 D0 1F 19 08 */ stfs f0, 0x1908(r31) lbl_800F7478: /* 800F7478 000F43D8 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 800F747C 000F43DC 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F7480 000F43E0 CB E1 00 10 */ lfd f31, 0x10(r1) /* 800F7484 000F43E4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F7488 000F43E8 7C 08 03 A6 */ mtlr r0 /* 800F748C 000F43EC 38 21 00 20 */ addi r1, r1, 0x20 /* 800F7490 000F43F0 4E 80 00 20 */ blr .global ResetSpiderBallSwingControllerMovementTimer__10CMorphBallFv ResetSpiderBallSwingControllerMovementTimer__10CMorphBallFv: /* 800F7494 000F43F4 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F7498 000F43F8 D0 03 19 04 */ stfs f0, 0x1904(r3) /* 800F749C 000F43FC D0 03 19 08 */ stfs f0, 0x1908(r3) /* 800F74A0 000F4400 4E 80 00 20 */ blr .global GetSpiderBallControllerMovement__10CMorphBallCFRC11CFinalInput GetSpiderBallControllerMovement__10CMorphBallCFRC11CFinalInput: /* 800F74A4 000F4404 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800F74A8 000F4408 7C 08 02 A6 */ mflr r0 /* 800F74AC 000F440C 90 01 00 34 */ stw r0, 0x34(r1) /* 800F74B0 000F4410 DB E1 00 20 */ stfd f31, 0x20(r1) /* 800F74B4 000F4414 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 800F74B8 000F4418 DB C1 00 10 */ stfd f30, 0x10(r1) /* 800F74BC 000F441C F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 /* 800F74C0 000F4420 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F74C4 000F4424 7C 9F 23 78 */ mr r31, r4 /* 800F74C8 000F4428 48 00 17 D1 */ bl IsMovementAllowed__10CMorphBallCFv /* 800F74CC 000F442C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F74D0 000F4430 40 82 00 0C */ bne lbl_800F74DC /* 800F74D4 000F4434 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F74D8 000F4438 48 00 00 A8 */ b lbl_800F7580 lbl_800F74DC: /* 800F74DC 000F443C 7F E4 FB 78 */ mr r4, r31 /* 800F74E0 000F4440 38 60 00 01 */ li r3, 1 /* 800F74E4 000F4444 4B F1 54 35 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F74E8 000F4448 FF E0 08 90 */ fmr f31, f1 /* 800F74EC 000F444C 7F E4 FB 78 */ mr r4, r31 /* 800F74F0 000F4450 38 60 00 00 */ li r3, 0 /* 800F74F4 000F4454 4B F1 54 25 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F74F8 000F4458 EF C1 F8 28 */ fsubs f30, f1, f31 /* 800F74FC 000F445C 7F E4 FB 78 */ mr r4, r31 /* 800F7500 000F4460 38 60 00 02 */ li r3, 2 /* 800F7504 000F4464 4B F1 54 15 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F7508 000F4468 FF E0 08 90 */ fmr f31, f1 /* 800F750C 000F446C 7F E4 FB 78 */ mr r4, r31 /* 800F7510 000F4470 38 60 00 03 */ li r3, 3 /* 800F7514 000F4474 4B F1 54 05 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F7518 000F4478 EF E1 F8 28 */ fsubs f31, f1, f31 /* 800F751C 000F447C FC 20 F0 90 */ fmr f1, f30 /* 800F7520 000F4480 FC 40 F8 90 */ fmr f2, f31 /* 800F7524 000F4484 48 29 D7 49 */ bl atan2 /* 800F7528 000F4488 FC 20 08 18 */ frsp f1, f1 /* 800F752C 000F448C C0 42 92 F8 */ lfs f2, lbl_805AB018@sda21(r2) /* 800F7530 000F4490 EC 1F 07 F2 */ fmuls f0, f31, f31 /* 800F7534 000F4494 EF E2 00 72 */ fmuls f31, f2, f1 /* 800F7538 000F4498 EC 3E 07 BA */ fmadds f1, f30, f30, f0 /* 800F753C 000F449C 48 21 DF C5 */ bl SqrtF__5CMathFf /* 800F7540 000F44A0 C0 02 92 FC */ lfs f0, lbl_805AB01C@sda21(r2) /* 800F7544 000F44A4 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F7548 000F44A8 40 81 00 14 */ ble lbl_800F755C /* 800F754C 000F44AC C0 02 93 00 */ lfs f0, lbl_805AB020@sda21(r2) /* 800F7550 000F44B0 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F7554 000F44B4 40 80 00 08 */ bge lbl_800F755C /* 800F7558 000F44B8 48 00 00 28 */ b lbl_800F7580 lbl_800F755C: /* 800F755C 000F44BC C0 02 93 04 */ lfs f0, lbl_805AB024@sda21(r2) /* 800F7560 000F44C0 FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F7564 000F44C4 41 80 00 10 */ blt lbl_800F7574 /* 800F7568 000F44C8 C0 02 93 08 */ lfs f0, lbl_805AB028@sda21(r2) /* 800F756C 000F44CC FC 1F 00 40 */ fcmpo cr0, f31, f0 /* 800F7570 000F44D0 40 81 00 0C */ ble lbl_800F757C lbl_800F7574: /* 800F7574 000F44D4 FC 20 08 50 */ fneg f1, f1 /* 800F7578 000F44D8 48 00 00 08 */ b lbl_800F7580 lbl_800F757C: /* 800F757C 000F44DC C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) lbl_800F7580: /* 800F7580 000F44E0 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 800F7584 000F44E4 CB E1 00 20 */ lfd f31, 0x20(r1) /* 800F7588 000F44E8 E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 /* 800F758C 000F44EC CB C1 00 10 */ lfd f30, 0x10(r1) /* 800F7590 000F44F0 80 01 00 34 */ lwz r0, 0x34(r1) /* 800F7594 000F44F4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F7598 000F44F8 7C 08 03 A6 */ mtlr r0 /* 800F759C 000F44FC 38 21 00 30 */ addi r1, r1, 0x30 /* 800F75A0 000F4500 4E 80 00 20 */ blr .global SetSpiderBallSwingingState__10CMorphBallFb SetSpiderBallSwingingState__10CMorphBallFb: /* 800F75A4 000F4504 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F75A8 000F4508 7C 08 02 A6 */ mflr r0 /* 800F75AC 000F450C 90 01 00 14 */ stw r0, 0x14(r1) /* 800F75B0 000F4510 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F75B4 000F4514 7C 9F 23 78 */ mr r31, r4 /* 800F75B8 000F4518 57 E0 06 3E */ clrlwi r0, r31, 0x18 /* 800F75BC 000F451C 93 C1 00 08 */ stw r30, 8(r1) /* 800F75C0 000F4520 7C 7E 1B 78 */ mr r30, r3 /* 800F75C4 000F4524 88 83 18 BE */ lbz r4, 0x18be(r3) /* 800F75C8 000F4528 7C 04 00 40 */ cmplw r4, r0 /* 800F75CC 000F452C 41 82 00 10 */ beq lbl_800F75DC /* 800F75D0 000F4530 4B FF FE C5 */ bl ResetSpiderBallSwingControllerMovementTimer__10CMorphBallFv /* 800F75D4 000F4534 38 00 00 01 */ li r0, 1 /* 800F75D8 000F4538 98 1E 18 BF */ stb r0, 0x18bf(r30) lbl_800F75DC: /* 800F75DC 000F453C 9B FE 18 BE */ stb r31, 0x18be(r30) /* 800F75E0 000F4540 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F75E4 000F4544 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F75E8 000F4548 83 C1 00 08 */ lwz r30, 8(r1) /* 800F75EC 000F454C 7C 08 03 A6 */ mtlr r0 /* 800F75F0 000F4550 38 21 00 10 */ addi r1, r1, 0x10 /* 800F75F4 000F4554 4E 80 00 20 */ blr .global FindClosestSpiderBallWaypoint__10CMorphBallCFR13CStateManagerRC9CVector3fR9CVector3fR9CVector3fR9CVector3fRfR9CVector3fRbR12CTransform4f FindClosestSpiderBallWaypoint__10CMorphBallCFR13CStateManagerRC9CVector3fR9CVector3fR9CVector3fR9CVector3fRfR9CVector3fRbR12CTransform4f: /* 800F75F8 000F4558 94 21 F4 F0 */ stwu r1, -0xb10(r1) /* 800F75FC 000F455C 7C 08 02 A6 */ mflr r0 /* 800F7600 000F4560 90 01 0B 14 */ stw r0, 0xb14(r1) /* 800F7604 000F4564 DB E1 0B 00 */ stfd f31, 0xb00(r1) /* 800F7608 000F4568 F3 E1 0B 08 */ psq_st f31, -1272(r1), 0, qr0 /* 800F760C 000F456C DB C1 0A F0 */ stfd f30, 0xaf0(r1) /* 800F7610 000F4570 F3 C1 0A F8 */ psq_st f30, -1288(r1), 0, qr0 /* 800F7614 000F4574 DB A1 0A E0 */ stfd f29, 0xae0(r1) /* 800F7618 000F4578 F3 A1 0A E8 */ psq_st f29, -1304(r1), 0, qr0 /* 800F761C 000F457C DB 81 0A D0 */ stfd f28, 0xad0(r1) /* 800F7620 000F4580 F3 81 0A D8 */ psq_st f28, -1320(r1), 0, qr0 /* 800F7624 000F4584 BE 21 0A 94 */ stmw r17, 0xa94(r1) /* 800F7628 000F4588 7C BD 2B 78 */ mr r29, r5 /* 800F762C 000F458C 38 00 00 00 */ li r0, 0 /* 800F7630 000F4590 C3 E2 92 EC */ lfs f31, lbl_805AB00C@sda21(r2) /* 800F7634 000F4594 7C 9C 23 78 */ mr r28, r4 /* 800F7638 000F4598 C0 65 00 04 */ lfs f3, 4(r5) /* 800F763C 000F459C 7C DE 33 78 */ mr r30, r6 /* 800F7640 000F45A0 C0 45 00 08 */ lfs f2, 8(r5) /* 800F7644 000F45A4 7C FF 3B 78 */ mr r31, r7 /* 800F7648 000F45A8 C0 05 00 00 */ lfs f0, 0(r5) /* 800F764C 000F45AC EC A3 F8 2A */ fadds f5, f3, f31 /* 800F7650 000F45B0 EC 82 F8 2A */ fadds f4, f2, f31 /* 800F7654 000F45B4 90 01 02 80 */ stw r0, 0x280(r1) /* 800F7658 000F45B8 EC 20 F8 2A */ fadds f1, f0, f31 /* 800F765C 000F45BC 83 01 0B 18 */ lwz r24, 0xb18(r1) /* 800F7660 000F45C0 EC 63 F8 28 */ fsubs f3, f3, f31 /* 800F7664 000F45C4 EC 42 F8 28 */ fsubs f2, f2, f31 /* 800F7668 000F45C8 EC 00 F8 28 */ fsubs f0, f0, f31 /* 800F766C 000F45CC D0 21 00 9C */ stfs f1, 0x9c(r1) /* 800F7670 000F45D0 83 21 0B 1C */ lwz r25, 0xb1c(r1) /* 800F7674 000F45D4 7D 15 43 78 */ mr r21, r8 /* 800F7678 000F45D8 D0 A1 00 A0 */ stfs f5, 0xa0(r1) /* 800F767C 000F45DC 7D 36 4B 78 */ mr r22, r9 /* 800F7680 000F45E0 D0 81 00 A4 */ stfs f4, 0xa4(r1) /* 800F7684 000F45E4 7D 57 53 78 */ mr r23, r10 /* 800F7688 000F45E8 38 61 01 18 */ addi r3, r1, 0x118 /* 800F768C 000F45EC 38 81 00 A8 */ addi r4, r1, 0xa8 /* 800F7690 000F45F0 D0 01 00 A8 */ stfs f0, 0xa8(r1) /* 800F7694 000F45F4 38 A1 00 9C */ addi r5, r1, 0x9c /* 800F7698 000F45F8 3B 40 00 00 */ li r26, 0 /* 800F769C 000F45FC D0 61 00 AC */ stfs f3, 0xac(r1) /* 800F76A0 000F4600 D0 41 00 B0 */ stfs f2, 0xb0(r1) /* 800F76A4 000F4604 48 24 0E 65 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f /* 800F76A8 000F4608 3C 80 80 5A */ lis r4, skPassEverything__15CMaterialFilter@ha /* 800F76AC 000F460C 7F 83 E3 78 */ mr r3, r28 /* 800F76B0 000F4610 38 C4 FD 18 */ addi r6, r4, skPassEverything__15CMaterialFilter@l /* 800F76B4 000F4614 38 A1 01 18 */ addi r5, r1, 0x118 /* 800F76B8 000F4618 38 81 02 80 */ addi r4, r1, 0x280 /* 800F76BC 000F461C 38 E0 00 00 */ li r7, 0 /* 800F76C0 000F4620 4B F5 50 61 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" /* 800F76C4 000F4624 3B 61 02 84 */ addi r27, r1, 0x284 /* 800F76C8 000F4628 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F76CC 000F462C 7F 72 DB 78 */ mr r18, r27 /* 800F76D0 000F4630 3A 61 00 F8 */ addi r19, r1, 0xf8 /* 800F76D4 000F4634 3A 83 66 A0 */ addi r20, r3, sZeroVector__9CVector3f@l /* 800F76D8 000F4638 48 00 02 EC */ b lbl_800F79C4 lbl_800F76DC: /* 800F76DC 000F463C A0 12 00 00 */ lhz r0, 0(r18) /* 800F76E0 000F4640 7F 83 E3 78 */ mr r3, r28 /* 800F76E4 000F4644 38 81 00 0C */ addi r4, r1, 0xc /* 800F76E8 000F4648 B0 01 00 0C */ sth r0, 0xc(r1) /* 800F76EC 000F464C 4B F5 4E B9 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 800F76F0 000F4650 7C 64 1B 78 */ mr r4, r3 /* 800F76F4 000F4654 38 61 00 1C */ addi r3, r1, 0x1c /* 800F76F8 000F4658 4B FB 07 B9 */ bl "__ct__48TCastToPtr<34CScriptSpiderBallAttractionSurface>FP7CEntity" /* 800F76FC 000F465C 82 23 00 04 */ lwz r17, 4(r3) /* 800F7700 000F4660 28 11 00 00 */ cmplwi r17, 0 /* 800F7704 000F4664 41 82 02 BC */ beq lbl_800F79C0 /* 800F7708 000F4668 C0 51 00 58 */ lfs f2, 0x58(r17) /* 800F770C 000F466C 38 61 00 90 */ addi r3, r1, 0x90 /* 800F7710 000F4670 C0 31 00 48 */ lfs f1, 0x48(r17) /* 800F7714 000F4674 38 81 00 84 */ addi r4, r1, 0x84 /* 800F7718 000F4678 C0 11 00 38 */ lfs f0, 0x38(r17) /* 800F771C 000F467C D0 01 00 84 */ stfs f0, 0x84(r1) /* 800F7720 000F4680 D0 21 00 88 */ stfs f1, 0x88(r1) /* 800F7724 000F4684 D0 41 00 8C */ stfs f2, 0x8c(r1) /* 800F7728 000F4688 48 21 D1 29 */ bl AsNormalized__9CVector3fCFv /* 800F772C 000F468C C3 C1 00 90 */ lfs f30, 0x90(r1) /* 800F7730 000F4690 38 61 00 78 */ addi r3, r1, 0x78 /* 800F7734 000F4694 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F7738 000F4698 38 81 00 6C */ addi r4, r1, 0x6c /* 800F773C 000F469C C3 81 00 94 */ lfs f28, 0x94(r1) /* 800F7740 000F46A0 C3 A1 00 98 */ lfs f29, 0x98(r1) /* 800F7744 000F46A4 EC 40 07 B2 */ fmuls f2, f0, f30 /* 800F7748 000F46A8 EC 20 07 32 */ fmuls f1, f0, f28 /* 800F774C 000F46AC EC 00 07 72 */ fmuls f0, f0, f29 /* 800F7750 000F46B0 D0 41 00 6C */ stfs f2, 0x6c(r1) /* 800F7754 000F46B4 D0 21 00 70 */ stfs f1, 0x70(r1) /* 800F7758 000F46B8 D0 01 00 74 */ stfs f0, 0x74(r1) /* 800F775C 000F46BC 48 21 C6 75 */ bl __ct__13CUnitVector3fFRC9CVector3f /* 800F7760 000F46C0 C0 31 00 50 */ lfs f1, 0x50(r17) /* 800F7764 000F46C4 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F7768 000F46C8 C1 01 00 7C */ lfs f8, 0x7c(r1) /* 800F776C 000F46CC 38 83 66 A0 */ addi r4, r3, sZeroVector__9CVector3f@l /* 800F7770 000F46D0 C0 02 92 EC */ lfs f0, lbl_805AB00C@sda21(r2) /* 800F7774 000F46D4 38 61 00 60 */ addi r3, r1, 0x60 /* 800F7778 000F46D8 EC 21 02 32 */ fmuls f1, f1, f8 /* 800F777C 000F46DC C0 91 00 40 */ lfs f4, 0x40(r17) /* 800F7780 000F46E0 C1 21 00 78 */ lfs f9, 0x78(r1) /* 800F7784 000F46E4 ED A0 07 B2 */ fmuls f13, f0, f30 /* 800F7788 000F46E8 EF 80 07 32 */ fmuls f28, f0, f28 /* 800F778C 000F46EC C0 B1 00 60 */ lfs f5, 0x60(r17) /* 800F7790 000F46F0 EF A0 07 72 */ fmuls f29, f0, f29 /* 800F7794 000F46F4 C0 7D 00 04 */ lfs f3, 4(r29) /* 800F7798 000F46F8 C0 5D 00 08 */ lfs f2, 8(r29) /* 800F779C 000F46FC EC 24 0A 7A */ fmadds f1, f4, f9, f1 /* 800F77A0 000F4700 C0 E1 00 80 */ lfs f7, 0x80(r1) /* 800F77A4 000F4704 ED 83 E0 28 */ fsubs f12, f3, f28 /* 800F77A8 000F4708 C0 1D 00 00 */ lfs f0, 0(r29) /* 800F77AC 000F470C EC C5 09 FA */ fmadds f6, f5, f7, f1 /* 800F77B0 000F4710 ED 62 E8 28 */ fsubs f11, f2, f29 /* 800F77B4 000F4714 C0 A4 00 00 */ lfs f5, 0(r4) /* 800F77B8 000F4718 EC 20 68 28 */ fsubs f1, f0, f13 /* 800F77BC 000F471C C0 94 00 04 */ lfs f4, 4(r20) /* 800F77C0 000F4720 ED 43 E0 2A */ fadds f10, f3, f28 /* 800F77C4 000F4724 EC 62 E8 2A */ fadds f3, f2, f29 /* 800F77C8 000F4728 EC 00 68 2A */ fadds f0, f0, f13 /* 800F77CC 000F472C C0 54 00 08 */ lfs f2, 8(r20) /* 800F77D0 000F4730 D1 21 01 08 */ stfs f9, 0x108(r1) /* 800F77D4 000F4734 38 81 00 48 */ addi r4, r1, 0x48 /* 800F77D8 000F4738 38 A1 01 08 */ addi r5, r1, 0x108 /* 800F77DC 000F473C D1 01 01 0C */ stfs f8, 0x10c(r1) /* 800F77E0 000F4740 38 C1 00 FC */ addi r6, r1, 0xfc /* 800F77E4 000F4744 D0 E1 01 10 */ stfs f7, 0x110(r1) /* 800F77E8 000F4748 D0 C1 01 14 */ stfs f6, 0x114(r1) /* 800F77EC 000F474C D0 A1 00 FC */ stfs f5, 0xfc(r1) /* 800F77F0 000F4750 D0 81 01 00 */ stfs f4, 0x100(r1) /* 800F77F4 000F4754 D0 41 01 04 */ stfs f2, 0x104(r1) /* 800F77F8 000F4758 D1 A1 00 3C */ stfs f13, 0x3c(r1) /* 800F77FC 000F475C D3 81 00 40 */ stfs f28, 0x40(r1) /* 800F7800 000F4760 D3 A1 00 44 */ stfs f29, 0x44(r1) /* 800F7804 000F4764 D0 21 00 48 */ stfs f1, 0x48(r1) /* 800F7808 000F4768 D1 81 00 4C */ stfs f12, 0x4c(r1) /* 800F780C 000F476C D1 61 00 50 */ stfs f11, 0x50(r1) /* 800F7810 000F4770 D1 A1 00 54 */ stfs f13, 0x54(r1) /* 800F7814 000F4774 D3 81 00 58 */ stfs f28, 0x58(r1) /* 800F7818 000F4778 D3 A1 00 5C */ stfs f29, 0x5c(r1) /* 800F781C 000F477C D0 01 00 60 */ stfs f0, 0x60(r1) /* 800F7820 000F4780 D1 41 00 64 */ stfs f10, 0x64(r1) /* 800F7824 000F4784 D0 61 00 68 */ stfs f3, 0x68(r1) /* 800F7828 000F4788 48 1D C4 79 */ bl RayPlaneIntersection__13CollisionUtilFRC9CVector3fRC9CVector3fRC6CPlaneR9CVector3f /* 800F782C 000F478C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F7830 000F4790 41 82 01 90 */ beq lbl_800F79C0 /* 800F7834 000F4794 C0 62 92 58 */ lfs f3, lbl_805AAF78@sda21(r2) /* 800F7838 000F4798 38 61 01 F0 */ addi r3, r1, 0x1f0 /* 800F783C 000F479C C0 11 00 E8 */ lfs f0, 0xe8(r17) /* 800F7840 000F47A0 C0 51 00 EC */ lfs f2, 0xec(r17) /* 800F7844 000F47A4 C0 31 00 F0 */ lfs f1, 0xf0(r17) /* 800F7848 000F47A8 EF 83 00 32 */ fmuls f28, f3, f0 /* 800F784C 000F47AC C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F7850 000F47B0 EF A3 00 B2 */ fmuls f29, f3, f2 /* 800F7854 000F47B4 EF C3 00 72 */ fmuls f30, f3, f1 /* 800F7858 000F47B8 EC 20 E0 24 */ fdivs f1, f0, f28 /* 800F785C 000F47BC EC 40 E8 24 */ fdivs f2, f0, f29 /* 800F7860 000F47C0 EC 60 F0 24 */ fdivs f3, f0, f30 /* 800F7864 000F47C4 48 21 B9 A5 */ bl Scale__12CTransform4fFfff /* 800F7868 000F47C8 38 61 02 50 */ addi r3, r1, 0x250 /* 800F786C 000F47CC 38 81 01 F0 */ addi r4, r1, 0x1f0 /* 800F7870 000F47D0 48 21 B3 05 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F7874 000F47D4 38 61 01 90 */ addi r3, r1, 0x190 /* 800F7878 000F47D8 38 91 00 34 */ addi r4, r17, 0x34 /* 800F787C 000F47DC 48 21 B4 21 */ bl GetQuickInverse__12CTransform4fCFv /* 800F7880 000F47E0 38 61 01 C0 */ addi r3, r1, 0x1c0 /* 800F7884 000F47E4 38 81 02 50 */ addi r4, r1, 0x250 /* 800F7888 000F47E8 38 A1 01 90 */ addi r5, r1, 0x190 /* 800F788C 000F47EC 48 21 B0 C5 */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800F7890 000F47F0 38 61 00 30 */ addi r3, r1, 0x30 /* 800F7894 000F47F4 38 81 01 C0 */ addi r4, r1, 0x1c0 /* 800F7898 000F47F8 38 A1 00 FC */ addi r5, r1, 0xfc /* 800F789C 000F47FC 48 21 B2 4D */ bl __ml__12CTransform4fCFRC9CVector3f /* 800F78A0 000F4800 C0 41 00 30 */ lfs f2, 0x30(r1) /* 800F78A4 000F4804 38 81 00 F0 */ addi r4, r1, 0xf0 /* 800F78A8 000F4808 C0 21 00 34 */ lfs f1, 0x34(r1) /* 800F78AC 000F480C 38 6D 88 54 */ addi r3, r13, lbl_805A7414@sda21 /* 800F78B0 000F4810 C0 01 00 38 */ lfs f0, 0x38(r1) /* 800F78B4 000F4814 38 AD 88 58 */ addi r5, r13, lbl_805A7418@sda21 /* 800F78B8 000F4818 D0 41 00 F0 */ stfs f2, 0xf0(r1) /* 800F78BC 000F481C D0 21 00 F4 */ stfs f1, 0xf4(r1) /* 800F78C0 000F4820 D0 01 00 F8 */ stfs f0, 0xf8(r1) /* 800F78C4 000F4824 4B F1 49 F1 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F78C8 000F4828 C0 03 00 00 */ lfs f0, 0(r3) /* 800F78CC 000F482C 7E 64 9B 78 */ mr r4, r19 /* 800F78D0 000F4830 38 6D 88 5C */ addi r3, r13, lbl_805A741C@sda21 /* 800F78D4 000F4834 38 AD 88 60 */ addi r5, r13, lbl_805A7420@sda21 /* 800F78D8 000F4838 D0 01 00 F0 */ stfs f0, 0xf0(r1) /* 800F78DC 000F483C 4B F1 49 D9 */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F78E0 000F4840 C0 03 00 00 */ lfs f0, 0(r3) /* 800F78E4 000F4844 FC 20 E0 90 */ fmr f1, f28 /* 800F78E8 000F4848 FC 40 E8 90 */ fmr f2, f29 /* 800F78EC 000F484C 38 61 01 60 */ addi r3, r1, 0x160 /* 800F78F0 000F4850 FC 60 F0 90 */ fmr f3, f30 /* 800F78F4 000F4854 D0 01 00 F8 */ stfs f0, 0xf8(r1) /* 800F78F8 000F4858 48 21 B9 11 */ bl Scale__12CTransform4fFfff /* 800F78FC 000F485C 38 61 02 20 */ addi r3, r1, 0x220 /* 800F7900 000F4860 38 81 01 60 */ addi r4, r1, 0x160 /* 800F7904 000F4864 48 21 B2 71 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F7908 000F4868 38 61 01 30 */ addi r3, r1, 0x130 /* 800F790C 000F486C 38 91 00 34 */ addi r4, r17, 0x34 /* 800F7910 000F4870 38 A1 02 20 */ addi r5, r1, 0x220 /* 800F7914 000F4874 48 21 B0 3D */ bl __ml__12CTransform4fCFRC12CTransform4f /* 800F7918 000F4878 38 61 00 24 */ addi r3, r1, 0x24 /* 800F791C 000F487C 38 81 01 30 */ addi r4, r1, 0x130 /* 800F7920 000F4880 38 A1 00 F0 */ addi r5, r1, 0xf0 /* 800F7924 000F4884 48 21 B1 C5 */ bl __ml__12CTransform4fCFRC9CVector3f /* 800F7928 000F4888 C3 C1 00 24 */ lfs f30, 0x24(r1) /* 800F792C 000F488C 38 61 00 E4 */ addi r3, r1, 0xe4 /* 800F7930 000F4890 C0 1D 00 00 */ lfs f0, 0(r29) /* 800F7934 000F4894 C3 81 00 28 */ lfs f28, 0x28(r1) /* 800F7938 000F4898 C0 5D 00 04 */ lfs f2, 4(r29) /* 800F793C 000F489C EC 1E 00 28 */ fsubs f0, f30, f0 /* 800F7940 000F48A0 C3 A1 00 2C */ lfs f29, 0x2c(r1) /* 800F7944 000F48A4 C0 3D 00 08 */ lfs f1, 8(r29) /* 800F7948 000F48A8 EC 5C 10 28 */ fsubs f2, f28, f2 /* 800F794C 000F48AC D0 01 00 E4 */ stfs f0, 0xe4(r1) /* 800F7950 000F48B0 EC 1D 08 28 */ fsubs f0, f29, f1 /* 800F7954 000F48B4 D0 41 00 E8 */ stfs f2, 0xe8(r1) /* 800F7958 000F48B8 D0 01 00 EC */ stfs f0, 0xec(r1) /* 800F795C 000F48BC 48 21 CF 5D */ bl Magnitude__9CVector3fCFv /* 800F7960 000F48C0 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 800F7964 000F48C4 40 80 00 5C */ bge lbl_800F79C0 /* 800F7968 000F48C8 FF E0 08 90 */ fmr f31, f1 /* 800F796C 000F48CC C0 02 91 A8 */ lfs f0, lbl_805AAEC8@sda21(r2) /* 800F7970 000F48D0 D3 DE 00 00 */ stfs f30, 0(r30) /* 800F7974 000F48D4 38 00 00 01 */ li r0, 1 /* 800F7978 000F48D8 7F 23 CB 78 */ mr r3, r25 /* 800F797C 000F48DC 38 91 00 34 */ addi r4, r17, 0x34 /* 800F7980 000F48E0 EC 60 F8 24 */ fdivs f3, f0, f31 /* 800F7984 000F48E4 D3 9E 00 04 */ stfs f28, 4(r30) /* 800F7988 000F48E8 D3 BE 00 08 */ stfs f29, 8(r30) /* 800F798C 000F48EC D0 36 00 00 */ stfs f1, 0(r22) /* 800F7990 000F48F0 C0 41 00 E4 */ lfs f2, 0xe4(r1) /* 800F7994 000F48F4 C0 21 00 E8 */ lfs f1, 0xe8(r1) /* 800F7998 000F48F8 C0 01 00 EC */ lfs f0, 0xec(r1) /* 800F799C 000F48FC EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F79A0 000F4900 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F79A4 000F4904 EC 03 00 32 */ fmuls f0, f3, f0 /* 800F79A8 000F4908 D0 57 00 00 */ stfs f2, 0(r23) /* 800F79AC 000F490C D0 37 00 04 */ stfs f1, 4(r23) /* 800F79B0 000F4910 D0 17 00 08 */ stfs f0, 8(r23) /* 800F79B4 000F4914 98 18 00 00 */ stb r0, 0(r24) /* 800F79B8 000F4918 48 21 B1 89 */ bl __as__12CTransform4fFRC12CTransform4f /* 800F79BC 000F491C 3B 40 00 01 */ li r26, 1 lbl_800F79C0: /* 800F79C0 000F4920 3A 52 00 02 */ addi r18, r18, 2 lbl_800F79C4: /* 800F79C4 000F4924 80 01 02 80 */ lwz r0, 0x280(r1) /* 800F79C8 000F4928 54 00 08 3C */ slwi r0, r0, 1 /* 800F79CC 000F492C 7C 1B 02 14 */ add r0, r27, r0 /* 800F79D0 000F4930 7C 12 00 40 */ cmplw r18, r0 /* 800F79D4 000F4934 40 82 FD 08 */ bne lbl_800F76DC /* 800F79D8 000F4938 7F 71 DB 78 */ mr r17, r27 /* 800F79DC 000F493C 48 00 01 80 */ b lbl_800F7B5C lbl_800F79E0: /* 800F79E0 000F4940 A0 11 00 00 */ lhz r0, 0(r17) /* 800F79E4 000F4944 7F 83 E3 78 */ mr r3, r28 /* 800F79E8 000F4948 38 81 00 08 */ addi r4, r1, 8 /* 800F79EC 000F494C B0 01 00 08 */ sth r0, 8(r1) /* 800F79F0 000F4950 4B F5 4B B5 */ bl GetObjectById__13CStateManagerCF9TUniqueId /* 800F79F4 000F4954 7C 64 1B 78 */ mr r4, r3 /* 800F79F8 000F4958 38 61 00 14 */ addi r3, r1, 0x14 /* 800F79FC 000F495C 4B FB 01 A1 */ bl "__ct__39TCastToPtr<25CScriptSpiderBallWaypoint>FP7CEntity" /* 800F7A00 000F4960 80 63 00 04 */ lwz r3, 4(r3) /* 800F7A04 000F4964 28 03 00 00 */ cmplwi r3, 0 /* 800F7A08 000F4968 41 82 01 50 */ beq lbl_800F7B58 /* 800F7A0C 000F496C 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800F7A10 000F4970 C0 74 00 04 */ lfs f3, 4(r20) /* 800F7A14 000F4974 C0 44 66 A0 */ lfs f2, sZeroVector__9CVector3f@l(r4) /* 800F7A18 000F4978 38 00 00 00 */ li r0, 0 /* 800F7A1C 000F497C C0 14 00 08 */ lfs f0, 8(r20) /* 800F7A20 000F4980 7F 84 E3 78 */ mr r4, r28 /* 800F7A24 000F4984 D0 41 00 D8 */ stfs f2, 0xd8(r1) /* 800F7A28 000F4988 7F A5 EB 78 */ mr r5, r29 /* 800F7A2C 000F498C C0 22 92 EC */ lfs f1, lbl_805AB00C@sda21(r2) /* 800F7A30 000F4990 38 C1 00 10 */ addi r6, r1, 0x10 /* 800F7A34 000F4994 90 01 00 10 */ stw r0, 0x10(r1) /* 800F7A38 000F4998 38 E1 00 D8 */ addi r7, r1, 0xd8 /* 800F7A3C 000F499C C0 42 91 80 */ lfs f2, lbl_805AAEA0@sda21(r2) /* 800F7A40 000F49A0 39 01 00 C0 */ addi r8, r1, 0xc0 /* 800F7A44 000F49A4 D0 61 00 DC */ stfs f3, 0xdc(r1) /* 800F7A48 000F49A8 39 21 00 CC */ addi r9, r1, 0xcc /* 800F7A4C 000F49AC D0 01 00 E0 */ stfs f0, 0xe0(r1) /* 800F7A50 000F49B0 C0 1F 00 00 */ lfs f0, 0(r31) /* 800F7A54 000F49B4 D0 01 00 CC */ stfs f0, 0xcc(r1) /* 800F7A58 000F49B8 C0 1F 00 04 */ lfs f0, 4(r31) /* 800F7A5C 000F49BC D0 01 00 D0 */ stfs f0, 0xd0(r1) /* 800F7A60 000F49C0 C0 1F 00 08 */ lfs f0, 8(r31) /* 800F7A64 000F49C4 D0 01 00 D4 */ stfs f0, 0xd4(r1) /* 800F7A68 000F49C8 C0 15 00 00 */ lfs f0, 0(r21) /* 800F7A6C 000F49CC D0 01 00 C0 */ stfs f0, 0xc0(r1) /* 800F7A70 000F49D0 C0 15 00 04 */ lfs f0, 4(r21) /* 800F7A74 000F49D4 D0 01 00 C4 */ stfs f0, 0xc4(r1) /* 800F7A78 000F49D8 C0 15 00 08 */ lfs f0, 8(r21) /* 800F7A7C 000F49DC D0 01 00 C8 */ stfs f0, 0xc8(r1) /* 800F7A80 000F49E0 48 02 02 9D */ bl GetClosestPointAlongWaypoints__25CScriptSpiderBallWaypointCFR13CStateManagerRC9CVector3ffPPC25CScriptSpiderBallWaypointR9CVector3fR9CVector3ffR9CVector3f /* 800F7A84 000F49E4 80 01 00 10 */ lwz r0, 0x10(r1) /* 800F7A88 000F49E8 28 00 00 00 */ cmplwi r0, 0 /* 800F7A8C 000F49EC 41 82 00 CC */ beq lbl_800F7B58 /* 800F7A90 000F49F0 C0 21 00 DC */ lfs f1, 0xdc(r1) /* 800F7A94 000F49F4 38 61 00 B4 */ addi r3, r1, 0xb4 /* 800F7A98 000F49F8 C0 1D 00 04 */ lfs f0, 4(r29) /* 800F7A9C 000F49FC C0 61 00 E0 */ lfs f3, 0xe0(r1) /* 800F7AA0 000F4A00 C0 5D 00 08 */ lfs f2, 8(r29) /* 800F7AA4 000F4A04 EC 81 00 28 */ fsubs f4, f1, f0 /* 800F7AA8 000F4A08 C0 21 00 D8 */ lfs f1, 0xd8(r1) /* 800F7AAC 000F4A0C C0 1D 00 00 */ lfs f0, 0(r29) /* 800F7AB0 000F4A10 EC 43 10 28 */ fsubs f2, f3, f2 /* 800F7AB4 000F4A14 D0 81 00 B8 */ stfs f4, 0xb8(r1) /* 800F7AB8 000F4A18 EC 01 00 28 */ fsubs f0, f1, f0 /* 800F7ABC 000F4A1C D0 41 00 BC */ stfs f2, 0xbc(r1) /* 800F7AC0 000F4A20 D0 01 00 B4 */ stfs f0, 0xb4(r1) /* 800F7AC4 000F4A24 48 21 CD F5 */ bl Magnitude__9CVector3fCFv /* 800F7AC8 000F4A28 FC 01 F8 40 */ fcmpo cr0, f1, f31 /* 800F7ACC 000F4A2C 40 80 00 8C */ bge lbl_800F7B58 /* 800F7AD0 000F4A30 C0 41 00 D8 */ lfs f2, 0xd8(r1) /* 800F7AD4 000F4A34 FF E0 08 90 */ fmr f31, f1 /* 800F7AD8 000F4A38 C0 02 91 A8 */ lfs f0, lbl_805AAEC8@sda21(r2) /* 800F7ADC 000F4A3C 38 00 00 00 */ li r0, 0 /* 800F7AE0 000F4A40 D0 5E 00 00 */ stfs f2, 0(r30) /* 800F7AE4 000F4A44 3B 40 00 01 */ li r26, 1 /* 800F7AE8 000F4A48 EC 60 F8 24 */ fdivs f3, f0, f31 /* 800F7AEC 000F4A4C C0 01 00 DC */ lfs f0, 0xdc(r1) /* 800F7AF0 000F4A50 D0 1E 00 04 */ stfs f0, 4(r30) /* 800F7AF4 000F4A54 C0 01 00 E0 */ lfs f0, 0xe0(r1) /* 800F7AF8 000F4A58 D0 1E 00 08 */ stfs f0, 8(r30) /* 800F7AFC 000F4A5C C0 01 00 CC */ lfs f0, 0xcc(r1) /* 800F7B00 000F4A60 D0 1F 00 00 */ stfs f0, 0(r31) /* 800F7B04 000F4A64 C0 01 00 D0 */ lfs f0, 0xd0(r1) /* 800F7B08 000F4A68 D0 1F 00 04 */ stfs f0, 4(r31) /* 800F7B0C 000F4A6C C0 01 00 D4 */ lfs f0, 0xd4(r1) /* 800F7B10 000F4A70 D0 1F 00 08 */ stfs f0, 8(r31) /* 800F7B14 000F4A74 C0 01 00 C0 */ lfs f0, 0xc0(r1) /* 800F7B18 000F4A78 D0 15 00 00 */ stfs f0, 0(r21) /* 800F7B1C 000F4A7C C0 01 00 C4 */ lfs f0, 0xc4(r1) /* 800F7B20 000F4A80 D0 15 00 04 */ stfs f0, 4(r21) /* 800F7B24 000F4A84 C0 01 00 C8 */ lfs f0, 0xc8(r1) /* 800F7B28 000F4A88 D0 15 00 08 */ stfs f0, 8(r21) /* 800F7B2C 000F4A8C D0 36 00 00 */ stfs f1, 0(r22) /* 800F7B30 000F4A90 C0 41 00 B4 */ lfs f2, 0xb4(r1) /* 800F7B34 000F4A94 C0 21 00 B8 */ lfs f1, 0xb8(r1) /* 800F7B38 000F4A98 C0 01 00 BC */ lfs f0, 0xbc(r1) /* 800F7B3C 000F4A9C EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F7B40 000F4AA0 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F7B44 000F4AA4 EC 03 00 32 */ fmuls f0, f3, f0 /* 800F7B48 000F4AA8 D0 57 00 00 */ stfs f2, 0(r23) /* 800F7B4C 000F4AAC D0 37 00 04 */ stfs f1, 4(r23) /* 800F7B50 000F4AB0 D0 17 00 08 */ stfs f0, 8(r23) /* 800F7B54 000F4AB4 98 18 00 00 */ stb r0, 0(r24) lbl_800F7B58: /* 800F7B58 000F4AB8 3A 31 00 02 */ addi r17, r17, 2 lbl_800F7B5C: /* 800F7B5C 000F4ABC 80 A1 02 80 */ lwz r5, 0x280(r1) /* 800F7B60 000F4AC0 54 A0 08 3C */ slwi r0, r5, 1 /* 800F7B64 000F4AC4 7C 1B 02 14 */ add r0, r27, r0 /* 800F7B68 000F4AC8 7C 11 00 40 */ cmplw r17, r0 /* 800F7B6C 000F4ACC 40 82 FE 74 */ bne lbl_800F79E0 /* 800F7B70 000F4AD0 2C 05 00 00 */ cmpwi r5, 0 /* 800F7B74 000F4AD4 38 60 00 00 */ li r3, 0 /* 800F7B78 000F4AD8 40 81 00 40 */ ble lbl_800F7BB8 /* 800F7B7C 000F4ADC 2C 05 00 08 */ cmpwi r5, 8 /* 800F7B80 000F4AE0 38 85 FF F8 */ addi r4, r5, -8 /* 800F7B84 000F4AE4 40 81 00 20 */ ble lbl_800F7BA4 /* 800F7B88 000F4AE8 38 04 00 07 */ addi r0, r4, 7 /* 800F7B8C 000F4AEC 54 00 E8 FE */ srwi r0, r0, 3 /* 800F7B90 000F4AF0 7C 09 03 A6 */ mtctr r0 /* 800F7B94 000F4AF4 2C 04 00 00 */ cmpwi r4, 0 /* 800F7B98 000F4AF8 40 81 00 0C */ ble lbl_800F7BA4 lbl_800F7B9C: /* 800F7B9C 000F4AFC 38 63 00 08 */ addi r3, r3, 8 /* 800F7BA0 000F4B00 42 00 FF FC */ bdnz lbl_800F7B9C lbl_800F7BA4: /* 800F7BA4 000F4B04 7C 03 28 50 */ subf r0, r3, r5 /* 800F7BA8 000F4B08 7C 09 03 A6 */ mtctr r0 /* 800F7BAC 000F4B0C 7C 03 28 00 */ cmpw r3, r5 /* 800F7BB0 000F4B10 40 80 00 08 */ bge lbl_800F7BB8 lbl_800F7BB4: /* 800F7BB4 000F4B14 42 00 00 00 */ bdnz lbl_800F7BB4 lbl_800F7BB8: /* 800F7BB8 000F4B18 38 00 00 00 */ li r0, 0 /* 800F7BBC 000F4B1C 7F 43 D3 78 */ mr r3, r26 /* 800F7BC0 000F4B20 90 01 02 80 */ stw r0, 0x280(r1) /* 800F7BC4 000F4B24 E3 E1 0B 08 */ psq_l f31, -1272(r1), 0, qr0 /* 800F7BC8 000F4B28 CB E1 0B 00 */ lfd f31, 0xb00(r1) /* 800F7BCC 000F4B2C E3 C1 0A F8 */ psq_l f30, -1288(r1), 0, qr0 /* 800F7BD0 000F4B30 CB C1 0A F0 */ lfd f30, 0xaf0(r1) /* 800F7BD4 000F4B34 E3 A1 0A E8 */ psq_l f29, -1304(r1), 0, qr0 /* 800F7BD8 000F4B38 CB A1 0A E0 */ lfd f29, 0xae0(r1) /* 800F7BDC 000F4B3C E3 81 0A D8 */ psq_l f28, -1320(r1), 0, qr0 /* 800F7BE0 000F4B40 CB 81 0A D0 */ lfd f28, 0xad0(r1) /* 800F7BE4 000F4B44 BA 21 0A 94 */ lmw r17, 0xa94(r1) /* 800F7BE8 000F4B48 80 01 0B 14 */ lwz r0, 0xb14(r1) /* 800F7BEC 000F4B4C 7C 08 03 A6 */ mtlr r0 /* 800F7BF0 000F4B50 38 21 0B 10 */ addi r1, r1, 0xb10 /* 800F7BF4 000F4B54 4E 80 00 20 */ blr .global CheckForSwitchToSpiderBallSwinging__10CMorphBallCFR13CStateManager CheckForSwitchToSpiderBallSwinging__10CMorphBallCFR13CStateManager: /* 800F7BF8 000F4B58 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 800F7BFC 000F4B5C 7C 08 02 A6 */ mflr r0 /* 800F7C00 000F4B60 90 01 00 C4 */ stw r0, 0xc4(r1) /* 800F7C04 000F4B64 93 E1 00 BC */ stw r31, 0xbc(r1) /* 800F7C08 000F4B68 7C 9F 23 78 */ mr r31, r4 /* 800F7C0C 000F4B6C 93 C1 00 B8 */ stw r30, 0xb8(r1) /* 800F7C10 000F4B70 7C 7E 1B 78 */ mr r30, r3 /* 800F7C14 000F4B74 88 03 18 BD */ lbz r0, 0x18bd(r3) /* 800F7C18 000F4B78 28 00 00 00 */ cmplwi r0, 0 /* 800F7C1C 000F4B7C 40 82 00 0C */ bne lbl_800F7C28 /* 800F7C20 000F4B80 38 60 00 00 */ li r3, 0 /* 800F7C24 000F4B84 48 00 01 34 */ b lbl_800F7D58 lbl_800F7C28: /* 800F7C28 000F4B88 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F7C2C 000F4B8C C0 1E 18 8C */ lfs f0, 0x188c(r30) /* 800F7C30 000F4B90 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F7C34 000F4B94 40 82 00 F4 */ bne lbl_800F7D28 /* 800F7C38 000F4B98 88 1E 18 BE */ lbz r0, 0x18be(r30) /* 800F7C3C 000F4B9C 28 00 00 00 */ cmplwi r0, 0 /* 800F7C40 000F4BA0 41 82 00 E0 */ beq lbl_800F7D20 /* 800F7C44 000F4BA4 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F7C48 000F4BA8 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F7C4C 000F4BAC 38 A3 66 A0 */ addi r5, r3, sZeroVector__9CVector3f@l /* 800F7C50 000F4BB0 C0 25 00 00 */ lfs f1, 0(r5) /* 800F7C54 000F4BB4 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha /* 800F7C58 000F4BB8 C0 45 00 04 */ lfs f2, 4(r5) /* 800F7C5C 000F4BBC 38 83 66 70 */ addi r4, r3, sIdentity__12CTransform4f@l /* 800F7C60 000F4BC0 C0 65 00 08 */ lfs f3, 8(r5) /* 800F7C64 000F4BC4 38 61 00 84 */ addi r3, r1, 0x84 /* 800F7C68 000F4BC8 D0 21 00 48 */ stfs f1, 0x48(r1) /* 800F7C6C 000F4BCC D0 41 00 4C */ stfs f2, 0x4c(r1) /* 800F7C70 000F4BD0 D0 61 00 50 */ stfs f3, 0x50(r1) /* 800F7C74 000F4BD4 D0 21 00 3C */ stfs f1, 0x3c(r1) /* 800F7C78 000F4BD8 D0 41 00 40 */ stfs f2, 0x40(r1) /* 800F7C7C 000F4BDC D0 61 00 44 */ stfs f3, 0x44(r1) /* 800F7C80 000F4BE0 D0 21 00 30 */ stfs f1, 0x30(r1) /* 800F7C84 000F4BE4 D0 41 00 34 */ stfs f2, 0x34(r1) /* 800F7C88 000F4BE8 D0 61 00 38 */ stfs f3, 0x38(r1) /* 800F7C8C 000F4BEC D0 01 00 14 */ stfs f0, 0x14(r1) /* 800F7C90 000F4BF0 D0 21 00 24 */ stfs f1, 0x24(r1) /* 800F7C94 000F4BF4 D0 41 00 28 */ stfs f2, 0x28(r1) /* 800F7C98 000F4BF8 D0 61 00 2C */ stfs f3, 0x2c(r1) /* 800F7C9C 000F4BFC 48 21 AE D9 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F7CA0 000F4C00 7F C4 F3 78 */ mr r4, r30 /* 800F7CA4 000F4C04 38 61 00 54 */ addi r3, r1, 0x54 /* 800F7CA8 000F4C08 4B FF EA 4D */ bl GetBallToWorld__10CMorphBallCFv /* 800F7CAC 000F4C0C C0 41 00 80 */ lfs f2, 0x80(r1) /* 800F7CB0 000F4C10 39 61 00 10 */ addi r11, r1, 0x10 /* 800F7CB4 000F4C14 C0 21 00 70 */ lfs f1, 0x70(r1) /* 800F7CB8 000F4C18 38 01 00 84 */ addi r0, r1, 0x84 /* 800F7CBC 000F4C1C C0 01 00 60 */ lfs f0, 0x60(r1) /* 800F7CC0 000F4C20 7F C3 F3 78 */ mr r3, r30 /* 800F7CC4 000F4C24 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800F7CC8 000F4C28 7F E4 FB 78 */ mr r4, r31 /* 800F7CCC 000F4C2C 38 A1 00 18 */ addi r5, r1, 0x18 /* 800F7CD0 000F4C30 38 C1 00 48 */ addi r6, r1, 0x48 /* 800F7CD4 000F4C34 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800F7CD8 000F4C38 38 E1 00 3C */ addi r7, r1, 0x3c /* 800F7CDC 000F4C3C 39 01 00 30 */ addi r8, r1, 0x30 /* 800F7CE0 000F4C40 39 21 00 14 */ addi r9, r1, 0x14 /* 800F7CE4 000F4C44 D0 41 00 20 */ stfs f2, 0x20(r1) /* 800F7CE8 000F4C48 39 41 00 24 */ addi r10, r1, 0x24 /* 800F7CEC 000F4C4C 91 61 00 08 */ stw r11, 8(r1) /* 800F7CF0 000F4C50 90 01 00 0C */ stw r0, 0xc(r1) /* 800F7CF4 000F4C54 4B FF F9 05 */ bl FindClosestSpiderBallWaypoint__10CMorphBallCFR13CStateManagerRC9CVector3fR9CVector3fR9CVector3fR9CVector3fRfR9CVector3fRbR12CTransform4f /* 800F7CF8 000F4C58 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F7CFC 000F4C5C 41 82 00 1C */ beq lbl_800F7D18 /* 800F7D00 000F4C60 C0 21 00 14 */ lfs f1, 0x14(r1) /* 800F7D04 000F4C64 C0 02 92 EC */ lfs f0, lbl_805AB00C@sda21(r2) /* 800F7D08 000F4C68 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F7D0C 000F4C6C 40 80 00 0C */ bge lbl_800F7D18 /* 800F7D10 000F4C70 38 60 00 00 */ li r3, 0 /* 800F7D14 000F4C74 48 00 00 44 */ b lbl_800F7D58 lbl_800F7D18: /* 800F7D18 000F4C78 38 60 00 01 */ li r3, 1 /* 800F7D1C 000F4C7C 48 00 00 3C */ b lbl_800F7D58 lbl_800F7D20: /* 800F7D20 000F4C80 38 60 00 00 */ li r3, 0 /* 800F7D24 000F4C84 48 00 00 34 */ b lbl_800F7D58 lbl_800F7D28: /* 800F7D28 000F4C88 88 1E 18 BE */ lbz r0, 0x18be(r30) /* 800F7D2C 000F4C8C 28 00 00 00 */ cmplwi r0, 0 /* 800F7D30 000F4C90 41 82 00 0C */ beq lbl_800F7D3C /* 800F7D34 000F4C94 38 60 00 01 */ li r3, 1 /* 800F7D38 000F4C98 48 00 00 20 */ b lbl_800F7D58 lbl_800F7D3C: /* 800F7D3C 000F4C9C C0 3E 18 88 */ lfs f1, 0x1888(r30) /* 800F7D40 000F4CA0 C0 02 91 AC */ lfs f0, lbl_805AAECC@sda21(r2) /* 800F7D44 000F4CA4 FC 20 0A 10 */ fabs f1, f1 /* 800F7D48 000F4CA8 FC 20 08 18 */ frsp f1, f1 /* 800F7D4C 000F4CAC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F7D50 000F4CB0 7C 00 00 26 */ mfcr r0 /* 800F7D54 000F4CB4 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f lbl_800F7D58: /* 800F7D58 000F4CB8 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 800F7D5C 000F4CBC 83 E1 00 BC */ lwz r31, 0xbc(r1) /* 800F7D60 000F4CC0 83 C1 00 B8 */ lwz r30, 0xb8(r1) /* 800F7D64 000F4CC4 7C 08 03 A6 */ mtlr r0 /* 800F7D68 000F4CC8 38 21 00 C0 */ addi r1, r1, 0xc0 /* 800F7D6C 000F4CCC 4E 80 00 20 */ blr .global ApplySpiderBallRollForces__10CMorphBallFRC11CFinalInputR13CStateManagerf ApplySpiderBallRollForces__10CMorphBallFRC11CFinalInputR13CStateManagerf: /* 800F7D70 000F4CD0 94 21 FE 00 */ stwu r1, -0x200(r1) /* 800F7D74 000F4CD4 7C 08 02 A6 */ mflr r0 /* 800F7D78 000F4CD8 90 01 02 04 */ stw r0, 0x204(r1) /* 800F7D7C 000F4CDC DB E1 01 F0 */ stfd f31, 0x1f0(r1) /* 800F7D80 000F4CE0 F3 E1 01 F8 */ psq_st f31, 504(r1), 0, qr0 /* 800F7D84 000F4CE4 DB C1 01 E0 */ stfd f30, 0x1e0(r1) /* 800F7D88 000F4CE8 F3 C1 01 E8 */ psq_st f30, 488(r1), 0, qr0 /* 800F7D8C 000F4CEC DB A1 01 D0 */ stfd f29, 0x1d0(r1) /* 800F7D90 000F4CF0 F3 A1 01 D8 */ psq_st f29, 472(r1), 0, qr0 /* 800F7D94 000F4CF4 DB 81 01 C0 */ stfd f28, 0x1c0(r1) /* 800F7D98 000F4CF8 F3 81 01 C8 */ psq_st f28, 456(r1), 0, qr0 /* 800F7D9C 000F4CFC DB 61 01 B0 */ stfd f27, 0x1b0(r1) /* 800F7DA0 000F4D00 F3 61 01 B8 */ psq_st f27, 440(r1), 0, qr0 /* 800F7DA4 000F4D04 DB 41 01 A0 */ stfd f26, 0x1a0(r1) /* 800F7DA8 000F4D08 F3 41 01 A8 */ psq_st f26, 424(r1), 0, qr0 /* 800F7DAC 000F4D0C DB 21 01 90 */ stfd f25, 0x190(r1) /* 800F7DB0 000F4D10 F3 21 01 98 */ psq_st f25, 408(r1), 0, qr0 /* 800F7DB4 000F4D14 BF 61 01 7C */ stmw r27, 0x17c(r1) /* 800F7DB8 000F4D18 7C 7C 1B 78 */ mr r28, r3 /* 800F7DBC 000F4D1C 7C 80 23 78 */ mr r0, r4 /* 800F7DC0 000F4D20 7C BD 2B 78 */ mr r29, r5 /* 800F7DC4 000F4D24 38 61 00 28 */ addi r3, r1, 0x28 /* 800F7DC8 000F4D28 7F 84 E3 78 */ mr r4, r28 /* 800F7DCC 000F4D2C 7C 05 03 78 */ mr r5, r0 /* 800F7DD0 000F4D30 48 00 08 79 */ bl CalculateSpiderBallAttractionSurfaceForces__10CMorphBallCFRC11CFinalInput /* 800F7DD4 000F4D34 C0 21 00 28 */ lfs f1, 0x28(r1) /* 800F7DD8 000F4D38 7F A5 EB 78 */ mr r5, r29 /* 800F7DDC 000F4D3C C0 01 00 2C */ lfs f0, 0x2c(r1) /* 800F7DE0 000F4D40 38 61 00 B8 */ addi r3, r1, 0xb8 /* 800F7DE4 000F4D44 D0 21 00 38 */ stfs f1, 0x38(r1) /* 800F7DE8 000F4D48 38 81 00 38 */ addi r4, r1, 0x38 /* 800F7DEC 000F4D4C D0 01 00 3C */ stfs f0, 0x3c(r1) /* 800F7DF0 000F4D50 48 00 09 C1 */ bl TransformSpiderBallForcesXZ__10CMorphBallFR9CVector2fR13CStateManager /* 800F7DF4 000F4D54 C3 C1 00 B8 */ lfs f30, 0xb8(r1) /* 800F7DF8 000F4D58 7F A4 EB 78 */ mr r4, r29 /* 800F7DFC 000F4D5C C3 E1 00 BC */ lfs f31, 0xbc(r1) /* 800F7E00 000F4D60 C3 A1 00 C0 */ lfs f29, 0xc0(r1) /* 800F7E04 000F4D64 80 7D 08 70 */ lwz r3, 0x870(r29) /* 800F7E08 000F4D68 4B F1 3D 11 */ bl GetCurrentCamera__14CCameraManagerCFRC13CStateManager /* 800F7E0C 000F4D6C 7C 64 1B 78 */ mr r4, r3 /* 800F7E10 000F4D70 38 61 01 3C */ addi r3, r1, 0x13c /* 800F7E14 000F4D74 38 84 00 34 */ addi r4, r4, 0x34 /* 800F7E18 000F4D78 48 21 AD 5D */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F7E1C 000F4D7C 38 61 00 AC */ addi r3, r1, 0xac /* 800F7E20 000F4D80 38 9C 18 9C */ addi r4, r28, 0x189c /* 800F7E24 000F4D84 48 21 CA 2D */ bl AsNormalized__9CVector3fCFv /* 800F7E28 000F4D88 C3 81 00 B0 */ lfs f28, 0xb0(r1) /* 800F7E2C 000F4D8C C0 21 01 54 */ lfs f1, 0x154(r1) /* 800F7E30 000F4D90 C0 01 01 50 */ lfs f0, 0x150(r1) /* 800F7E34 000F4D94 EC 5C 00 72 */ fmuls f2, f28, f1 /* 800F7E38 000F4D98 C3 41 00 AC */ lfs f26, 0xac(r1) /* 800F7E3C 000F4D9C C0 61 01 44 */ lfs f3, 0x144(r1) /* 800F7E40 000F4DA0 EC 1C 00 32 */ fmuls f0, f28, f0 /* 800F7E44 000F4DA4 C0 21 01 40 */ lfs f1, 0x140(r1) /* 800F7E48 000F4DA8 EC 5A 10 FA */ fmadds f2, f26, f3, f2 /* 800F7E4C 000F4DAC EC 1A 00 7A */ fmadds f0, f26, f1, f0 /* 800F7E50 000F4DB0 C3 61 00 B4 */ lfs f27, 0xb4(r1) /* 800F7E54 000F4DB4 C0 61 01 64 */ lfs f3, 0x164(r1) /* 800F7E58 000F4DB8 C0 21 01 60 */ lfs f1, 0x160(r1) /* 800F7E5C 000F4DBC 80 7C 00 00 */ lwz r3, 0(r28) /* 800F7E60 000F4DC0 EC 5B 10 FA */ fmadds f2, f27, f3, f2 /* 800F7E64 000F4DC4 EC 1B 00 7A */ fmadds f0, f27, f1, f0 /* 800F7E68 000F4DC8 88 03 09 C4 */ lbz r0, 0x9c4(r3) /* 800F7E6C 000F4DCC FC 20 12 10 */ fabs f1, f2 /* 800F7E70 000F4DD0 FC 00 02 10 */ fabs f0, f0 /* 800F7E74 000F4DD4 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f /* 800F7E78 000F4DD8 FC 20 08 18 */ frsp f1, f1 /* 800F7E7C 000F4DDC FC 40 00 18 */ frsp f2, f0 /* 800F7E80 000F4DE0 41 82 00 34 */ beq lbl_800F7EB4 /* 800F7E84 000F4DE4 C0 02 91 90 */ lfs f0, lbl_805AAEB0@sda21(r2) /* 800F7E88 000F4DE8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F7E8C 000F4DEC 40 80 00 28 */ bge lbl_800F7EB4 /* 800F7E90 000F4DF0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 800F7E94 000F4DF4 40 81 00 20 */ ble lbl_800F7EB4 /* 800F7E98 000F4DF8 7F A5 EB 78 */ mr r5, r29 /* 800F7E9C 000F4DFC 38 61 00 A0 */ addi r3, r1, 0xa0 /* 800F7EA0 000F4E00 38 81 00 38 */ addi r4, r1, 0x38 /* 800F7EA4 000F4E04 48 00 08 6D */ bl TransformSpiderBallForcesXY__10CMorphBallFR9CVector2fR13CStateManager /* 800F7EA8 000F4E08 C3 C1 00 A0 */ lfs f30, 0xa0(r1) /* 800F7EAC 000F4E0C C3 E1 00 A4 */ lfs f31, 0xa4(r1) /* 800F7EB0 000F4E10 C3 A1 00 A8 */ lfs f29, 0xa8(r1) lbl_800F7EB4: /* 800F7EB4 000F4E14 38 61 00 38 */ addi r3, r1, 0x38 /* 800F7EB8 000F4E18 48 21 C2 3D */ bl Magnitude__9CVector2fCFv /* 800F7EBC 000F4E1C D0 21 00 1C */ stfs f1, 0x1c(r1) /* 800F7EC0 000F4E20 38 61 00 30 */ addi r3, r1, 0x30 /* 800F7EC4 000F4E24 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F7EC8 000F4E28 FC 40 08 90 */ fmr f2, f1 /* 800F7ECC 000F4E2C 48 21 C3 35 */ bl __ct__9CVector2fFff /* 800F7ED0 000F4E30 88 1C 18 C0 */ lbz r0, 0x18c0(r28) /* 800F7ED4 000F4E34 28 00 00 00 */ cmplwi r0, 0 /* 800F7ED8 000F4E38 41 82 00 0C */ beq lbl_800F7EE4 /* 800F7EDC 000F4E3C C3 41 00 1C */ lfs f26, 0x1c(r1) /* 800F7EE0 000F4E40 48 00 00 10 */ b lbl_800F7EF0 lbl_800F7EE4: /* 800F7EE4 000F4E44 EC 1F 07 32 */ fmuls f0, f31, f28 /* 800F7EE8 000F4E48 EC 1E 06 BA */ fmadds f0, f30, f26, f0 /* 800F7EEC 000F4E4C EF 5D 06 FA */ fmadds f26, f29, f27, f0 lbl_800F7EF0: /* 800F7EF0 000F4E50 C0 21 00 1C */ lfs f1, 0x1c(r1) /* 800F7EF4 000F4E54 3B 60 00 01 */ li r27, 1 /* 800F7EF8 000F4E58 C0 02 91 FC */ lfs f0, lbl_805AAF1C@sda21(r2) /* 800F7EFC 000F4E5C 3B C0 00 00 */ li r30, 0 /* 800F7F00 000F4E60 FC 20 0A 10 */ fabs f1, f1 /* 800F7F04 000F4E64 FC 20 08 18 */ frsp f1, f1 /* 800F7F08 000F4E68 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F7F0C 000F4E6C 40 81 00 98 */ ble lbl_800F7FA4 /* 800F7F10 000F4E70 38 61 00 20 */ addi r3, r1, 0x20 /* 800F7F14 000F4E74 38 81 00 38 */ addi r4, r1, 0x38 /* 800F7F18 000F4E78 48 21 C1 69 */ bl AsNormalized__9CVector2fCFv /* 800F7F1C 000F4E7C C0 21 00 20 */ lfs f1, 0x20(r1) /* 800F7F20 000F4E80 C0 01 00 24 */ lfs f0, 0x24(r1) /* 800F7F24 000F4E84 D0 21 00 30 */ stfs f1, 0x30(r1) /* 800F7F28 000F4E88 D0 01 00 34 */ stfs f0, 0x34(r1) /* 800F7F2C 000F4E8C 88 1C 18 C0 */ lbz r0, 0x18c0(r28) /* 800F7F30 000F4E90 28 00 00 00 */ cmplwi r0, 0 /* 800F7F34 000F4E94 40 82 00 3C */ bne lbl_800F7F70 /* 800F7F38 000F4E98 38 61 00 30 */ addi r3, r1, 0x30 /* 800F7F3C 000F4E9C 38 9C 19 0C */ addi r4, r28, 0x190c /* 800F7F40 000F4EA0 48 21 C0 69 */ bl Dot__9CVector2fFRC9CVector2fRC9CVector2f /* 800F7F44 000F4EA4 C0 02 91 AC */ lfs f0, lbl_805AAECC@sda21(r2) /* 800F7F48 000F4EA8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F7F4C 000F4EAC 40 81 00 24 */ ble lbl_800F7F70 /* 800F7F50 000F4EB0 C0 3C 19 14 */ lfs f1, 0x1914(r28) /* 800F7F54 000F4EB4 3B C0 00 01 */ li r30, 1 /* 800F7F58 000F4EB8 C0 62 91 A8 */ lfs f3, lbl_805AAEC8@sda21(r2) /* 800F7F5C 000F4EBC C0 42 91 5C */ lfs f2, lbl_805AAE7C@sda21(r2) /* 800F7F60 000F4EC0 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800F7F64 000F4EC4 FC 21 18 AE */ fsel f1, f1, f2, f3 /* 800F7F68 000F4EC8 EF 40 00 72 */ fmuls f26, f0, f1 /* 800F7F6C 000F4ECC 48 00 00 3C */ b lbl_800F7FA8 lbl_800F7F70: /* 800F7F70 000F4ED0 FC 20 D2 10 */ fabs f1, f26 /* 800F7F74 000F4ED4 C0 02 91 FC */ lfs f0, lbl_805AAF1C@sda21(r2) /* 800F7F78 000F4ED8 FC 20 08 18 */ frsp f1, f1 /* 800F7F7C 000F4EDC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F7F80 000F4EE0 40 81 00 1C */ ble lbl_800F7F9C /* 800F7F84 000F4EE4 C0 42 91 A8 */ lfs f2, lbl_805AAEC8@sda21(r2) /* 800F7F88 000F4EE8 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F7F8C 000F4EEC C0 01 00 1C */ lfs f0, 0x1c(r1) /* 800F7F90 000F4EF0 FC 3A 10 6E */ fsel f1, f26, f1, f2 /* 800F7F94 000F4EF4 EF 40 00 72 */ fmuls f26, f0, f1 /* 800F7F98 000F4EF8 48 00 00 10 */ b lbl_800F7FA8 lbl_800F7F9C: /* 800F7F9C 000F4EFC 3B 60 00 00 */ li r27, 0 /* 800F7FA0 000F4F00 48 00 00 08 */ b lbl_800F7FA8 lbl_800F7FA4: /* 800F7FA4 000F4F04 3B 60 00 00 */ li r27, 0 lbl_800F7FA8: /* 800F7FA8 000F4F08 57 C0 06 3F */ clrlwi. r0, r30, 0x18 /* 800F7FAC 000F4F0C 40 82 00 20 */ bne lbl_800F7FCC /* 800F7FB0 000F4F10 C0 01 00 30 */ lfs f0, 0x30(r1) /* 800F7FB4 000F4F14 38 00 00 01 */ li r0, 1 /* 800F7FB8 000F4F18 D0 1C 19 0C */ stfs f0, 0x190c(r28) /* 800F7FBC 000F4F1C C0 01 00 34 */ lfs f0, 0x34(r1) /* 800F7FC0 000F4F20 D0 1C 19 10 */ stfs f0, 0x1910(r28) /* 800F7FC4 000F4F24 D3 5C 19 14 */ stfs f26, 0x1914(r28) /* 800F7FC8 000F4F28 98 1C 19 20 */ stb r0, 0x1920(r28) lbl_800F7FCC: /* 800F7FCC 000F4F2C 57 60 06 3F */ clrlwi. r0, r27, 0x18 /* 800F7FD0 000F4F30 40 82 00 10 */ bne lbl_800F7FE0 /* 800F7FD4 000F4F34 C3 42 91 50 */ lfs f26, lbl_805AAE70@sda21(r2) /* 800F7FD8 000F4F38 7F 83 E3 78 */ mr r3, r28 /* 800F7FDC 000F4F3C 48 00 06 11 */ bl ResetSpiderBallForces__10CMorphBallFv lbl_800F7FE0: /* 800F7FE0 000F4F40 57 60 06 3F */ clrlwi. r0, r27, 0x18 /* 800F7FE4 000F4F44 3B E0 00 01 */ li r31, 1 /* 800F7FE8 000F4F48 40 82 00 20 */ bne lbl_800F8008 /* 800F7FEC 000F4F4C 80 7C 00 00 */ lwz r3, 0(r28) /* 800F7FF0 000F4F50 38 63 01 38 */ addi r3, r3, 0x138 /* 800F7FF4 000F4F54 48 21 C8 C5 */ bl Magnitude__9CVector3fCFv /* 800F7FF8 000F4F58 C0 02 93 10 */ lfs f0, lbl_805AB030@sda21(r2) /* 800F7FFC 000F4F5C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F8000 000F4F60 41 81 00 08 */ bgt lbl_800F8008 /* 800F8004 000F4F64 3B E0 00 00 */ li r31, 0 lbl_800F8008: /* 800F8008 000F4F68 88 1C 18 BD */ lbz r0, 0x18bd(r28) /* 800F800C 000F4F6C 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F8010 000F4F70 C7 63 66 A0 */ lfsu f27, sZeroVector__9CVector3f@l(r3) /* 800F8014 000F4F74 28 00 00 00 */ cmplwi r0, 0 /* 800F8018 000F4F78 C3 83 00 04 */ lfs f28, 4(r3) /* 800F801C 000F4F7C C3 23 00 08 */ lfs f25, 8(r3) /* 800F8020 000F4F80 41 82 00 6C */ beq lbl_800F808C /* 800F8024 000F4F84 57 60 06 3F */ clrlwi. r0, r27, 0x18 /* 800F8028 000F4F88 41 82 00 64 */ beq lbl_800F808C /* 800F802C 000F4F8C 88 1C 18 C0 */ lbz r0, 0x18c0(r28) /* 800F8030 000F4F90 28 00 00 00 */ cmplwi r0, 0 /* 800F8034 000F4F94 41 82 00 18 */ beq lbl_800F804C /* 800F8038 000F4F98 C0 02 91 E4 */ lfs f0, lbl_805AAF04@sda21(r2) /* 800F803C 000F4F9C EF 60 07 B2 */ fmuls f27, f0, f30 /* 800F8040 000F4FA0 EF 80 07 F2 */ fmuls f28, f0, f31 /* 800F8044 000F4FA4 EF 20 07 72 */ fmuls f25, f0, f29 /* 800F8048 000F4FA8 48 00 00 44 */ b lbl_800F808C lbl_800F804C: /* 800F804C 000F4FAC C0 22 91 A8 */ lfs f1, lbl_805AAEC8@sda21(r2) /* 800F8050 000F4FB0 38 61 00 94 */ addi r3, r1, 0x94 /* 800F8054 000F4FB4 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F8058 000F4FB8 38 9C 18 A8 */ addi r4, r28, 0x18a8 /* 800F805C 000F4FBC FF 5A 08 2E */ fsel f26, f26, f0, f1 /* 800F8060 000F4FC0 48 21 C7 F1 */ bl AsNormalized__9CVector3fCFv /* 800F8064 000F4FC4 C0 62 91 E4 */ lfs f3, lbl_805AAF04@sda21(r2) /* 800F8068 000F4FC8 C0 41 00 94 */ lfs f2, 0x94(r1) /* 800F806C 000F4FCC C0 21 00 98 */ lfs f1, 0x98(r1) /* 800F8070 000F4FD0 C0 01 00 9C */ lfs f0, 0x9c(r1) /* 800F8074 000F4FD4 EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F8078 000F4FD8 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F807C 000F4FDC EC 03 00 32 */ fmuls f0, f3, f0 /* 800F8080 000F4FE0 EF 7A 00 B2 */ fmuls f27, f26, f2 /* 800F8084 000F4FE4 EF 9A 00 72 */ fmuls f28, f26, f1 /* 800F8088 000F4FE8 EF 3A 00 32 */ fmuls f25, f26, f0 lbl_800F808C: /* 800F808C 000F4FEC 7F 84 E3 78 */ mr r4, r28 /* 800F8090 000F4FF0 38 61 01 0C */ addi r3, r1, 0x10c /* 800F8094 000F4FF4 4B FF E6 61 */ bl GetBallToWorld__10CMorphBallCFv /* 800F8098 000F4FF8 C0 41 01 28 */ lfs f2, 0x128(r1) /* 800F809C 000F4FFC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 800F80A0 000F5000 C0 21 01 18 */ lfs f1, 0x118(r1) /* 800F80A4 000F5004 38 60 00 00 */ li r3, 0 /* 800F80A8 000F5008 EC 62 E0 2A */ fadds f3, f2, f28 /* 800F80AC 000F500C C0 01 01 38 */ lfs f0, 0x138(r1) /* 800F80B0 000F5010 EC 21 D8 2A */ fadds f1, f1, f27 /* 800F80B4 000F5014 EC 40 C8 2A */ fadds f2, f0, f25 /* 800F80B8 000F5018 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F80BC 000F501C D0 61 00 D4 */ stfs f3, 0xd4(r1) /* 800F80C0 000F5020 D0 21 00 D0 */ stfs f1, 0xd0(r1) /* 800F80C4 000F5024 D0 41 00 D8 */ stfs f2, 0xd8(r1) /* 800F80C8 000F5028 D0 01 00 18 */ stfs f0, 0x18(r1) /* 800F80CC 000F502C 40 82 00 30 */ bne lbl_800F80FC /* 800F80D0 000F5030 88 1C 18 BD */ lbz r0, 0x18bd(r28) /* 800F80D4 000F5034 28 00 00 00 */ cmplwi r0, 0 /* 800F80D8 000F5038 41 82 00 24 */ beq lbl_800F80FC /* 800F80DC 000F503C C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F80E0 000F5040 C0 1C 18 8C */ lfs f0, 0x188c(r28) /* 800F80E4 000F5044 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F80E8 000F5048 40 82 00 14 */ bne lbl_800F80FC /* 800F80EC 000F504C 88 1C 18 BF */ lbz r0, 0x18bf(r28) /* 800F80F0 000F5050 28 00 00 00 */ cmplwi r0, 0 /* 800F80F4 000F5054 40 82 00 08 */ bne lbl_800F80FC /* 800F80F8 000F5058 38 60 00 01 */ li r3, 1 lbl_800F80FC: /* 800F80FC 000F505C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F8100 000F5060 40 82 00 5C */ bne lbl_800F815C /* 800F8104 000F5064 38 00 00 00 */ li r0, 0 /* 800F8108 000F5068 38 BC 18 C0 */ addi r5, r28, 0x18c0 /* 800F810C 000F506C 98 1C 18 BC */ stb r0, 0x18bc(r28) /* 800F8110 000F5070 38 1C 18 C4 */ addi r0, r28, 0x18c4 /* 800F8114 000F5074 7F 83 E3 78 */ mr r3, r28 /* 800F8118 000F5078 7F A4 EB 78 */ mr r4, r29 /* 800F811C 000F507C 90 A1 00 08 */ stw r5, 8(r1) /* 800F8120 000F5080 38 A1 00 D0 */ addi r5, r1, 0xd0 /* 800F8124 000F5084 38 DC 18 90 */ addi r6, r28, 0x1890 /* 800F8128 000F5088 38 FC 18 9C */ addi r7, r28, 0x189c /* 800F812C 000F508C 90 01 00 0C */ stw r0, 0xc(r1) /* 800F8130 000F5090 39 1C 18 A8 */ addi r8, r28, 0x18a8 /* 800F8134 000F5094 39 21 00 18 */ addi r9, r1, 0x18 /* 800F8138 000F5098 39 5C 18 80 */ addi r10, r28, 0x1880 /* 800F813C 000F509C 4B FF F4 BD */ bl FindClosestSpiderBallWaypoint__10CMorphBallCFR13CStateManagerRC9CVector3fR9CVector3fR9CVector3fR9CVector3fRfR9CVector3fRbR12CTransform4f /* 800F8140 000F50A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F8144 000F50A4 41 82 00 94 */ beq lbl_800F81D8 /* 800F8148 000F50A8 38 60 00 01 */ li r3, 1 /* 800F814C 000F50AC 38 00 00 00 */ li r0, 0 /* 800F8150 000F50B0 98 7C 18 BC */ stb r3, 0x18bc(r28) /* 800F8154 000F50B4 98 1C 18 BF */ stb r0, 0x18bf(r28) /* 800F8158 000F50B8 48 00 00 80 */ b lbl_800F81D8 lbl_800F815C: /* 800F815C 000F50BC C0 3C 18 90 */ lfs f1, 0x1890(r28) /* 800F8160 000F50C0 38 7C 18 80 */ addi r3, r28, 0x1880 /* 800F8164 000F50C4 C0 01 00 D0 */ lfs f0, 0xd0(r1) /* 800F8168 000F50C8 C0 9C 18 94 */ lfs f4, 0x1894(r28) /* 800F816C 000F50CC C0 61 00 D4 */ lfs f3, 0xd4(r1) /* 800F8170 000F50D0 EC 01 00 28 */ fsubs f0, f1, f0 /* 800F8174 000F50D4 C0 5C 18 98 */ lfs f2, 0x1898(r28) /* 800F8178 000F50D8 C0 21 00 D8 */ lfs f1, 0xd8(r1) /* 800F817C 000F50DC EC 64 18 28 */ fsubs f3, f4, f3 /* 800F8180 000F50E0 D0 1C 18 80 */ stfs f0, 0x1880(r28) /* 800F8184 000F50E4 EC 02 08 28 */ fsubs f0, f2, f1 /* 800F8188 000F50E8 D0 7C 18 84 */ stfs f3, 0x1884(r28) /* 800F818C 000F50EC D0 1C 18 88 */ stfs f0, 0x1888(r28) /* 800F8190 000F50F0 48 21 C7 29 */ bl Magnitude__9CVector3fCFv /* 800F8194 000F50F4 FC 00 08 18 */ frsp f0, f1 /* 800F8198 000F50F8 C0 42 91 A8 */ lfs f2, lbl_805AAEC8@sda21(r2) /* 800F819C 000F50FC D0 21 00 18 */ stfs f1, 0x18(r1) /* 800F81A0 000F5100 38 00 00 01 */ li r0, 1 /* 800F81A4 000F5104 C0 62 91 5C */ lfs f3, lbl_805AAE7C@sda21(r2) /* 800F81A8 000F5108 EC 22 00 32 */ fmuls f1, f2, f0 /* 800F81AC 000F510C C0 1C 18 80 */ lfs f0, 0x1880(r28) /* 800F81B0 000F5110 EC 23 08 24 */ fdivs f1, f3, f1 /* 800F81B4 000F5114 EC 00 00 72 */ fmuls f0, f0, f1 /* 800F81B8 000F5118 D0 1C 18 80 */ stfs f0, 0x1880(r28) /* 800F81BC 000F511C C0 1C 18 84 */ lfs f0, 0x1884(r28) /* 800F81C0 000F5120 EC 00 00 72 */ fmuls f0, f0, f1 /* 800F81C4 000F5124 D0 1C 18 84 */ stfs f0, 0x1884(r28) /* 800F81C8 000F5128 C0 1C 18 88 */ lfs f0, 0x1888(r28) /* 800F81CC 000F512C EC 00 00 72 */ fmuls f0, f0, f1 /* 800F81D0 000F5130 D0 1C 18 88 */ stfs f0, 0x1888(r28) /* 800F81D4 000F5134 98 1C 18 BC */ stb r0, 0x18bc(r28) lbl_800F81D8: /* 800F81D8 000F5138 88 1C 18 BC */ lbz r0, 0x18bc(r28) /* 800F81DC 000F513C 28 00 00 00 */ cmplwi r0, 0 /* 800F81E0 000F5140 41 82 03 C0 */ beq lbl_800F85A0 /* 800F81E4 000F5144 C0 21 00 18 */ lfs f1, 0x18(r1) /* 800F81E8 000F5148 C0 0D A3 28 */ lfs f0, lbl_805A8EE8@sda21(r13) /* 800F81EC 000F514C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F81F0 000F5150 40 80 00 0C */ bge lbl_800F81FC /* 800F81F4 000F5154 38 00 00 01 */ li r0, 1 /* 800F81F8 000F5158 98 1C 18 BD */ stb r0, 0x18bd(r28) lbl_800F81FC: /* 800F81FC 000F515C 88 1C 18 BD */ lbz r0, 0x18bd(r28) /* 800F8200 000F5160 28 00 00 01 */ cmplwi r0, 1 /* 800F8204 000F5164 40 82 03 48 */ bne lbl_800F854C /* 800F8208 000F5168 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 800F820C 000F516C 41 82 02 EC */ beq lbl_800F84F8 /* 800F8210 000F5170 88 1C 18 C0 */ lbz r0, 0x18c0(r28) /* 800F8214 000F5174 28 00 00 00 */ cmplwi r0, 0 /* 800F8218 000F5178 40 82 01 30 */ bne lbl_800F8348 /* 800F821C 000F517C C0 22 92 48 */ lfs f1, lbl_805AAF68@sda21(r2) /* 800F8220 000F5180 38 61 00 88 */ addi r3, r1, 0x88 /* 800F8224 000F5184 C0 02 91 E8 */ lfs f0, lbl_805AAF08@sda21(r2) /* 800F8228 000F5188 38 9C 18 9C */ addi r4, r28, 0x189c /* 800F822C 000F518C D0 3C 18 B4 */ stfs f1, 0x18b4(r28) /* 800F8230 000F5190 D0 1C 18 B8 */ stfs f0, 0x18b8(r28) /* 800F8234 000F5194 48 21 C6 1D */ bl AsNormalized__9CVector3fCFv /* 800F8238 000F5198 C0 01 00 8C */ lfs f0, 0x8c(r1) /* 800F823C 000F519C 57 C0 06 3F */ clrlwi. r0, r30, 0x18 /* 800F8240 000F51A0 C0 21 00 88 */ lfs f1, 0x88(r1) /* 800F8244 000F51A4 EC 1F 00 32 */ fmuls f0, f31, f0 /* 800F8248 000F51A8 C0 41 00 90 */ lfs f2, 0x90(r1) /* 800F824C 000F51AC EC 1E 00 7A */ fmadds f0, f30, f1, f0 /* 800F8250 000F51B0 EC 1D 00 BA */ fmadds f0, f29, f2, f0 /* 800F8254 000F51B4 FC 40 00 90 */ fmr f2, f0 /* 800F8258 000F51B8 41 82 00 18 */ beq lbl_800F8270 /* 800F825C 000F51BC 88 1C 19 20 */ lbz r0, 0x1920(r28) /* 800F8260 000F51C0 28 00 00 00 */ cmplwi r0, 0 /* 800F8264 000F51C4 40 82 00 0C */ bne lbl_800F8270 /* 800F8268 000F51C8 C0 5C 19 18 */ lfs f2, 0x1918(r28) /* 800F826C 000F51CC 48 00 00 10 */ b lbl_800F827C lbl_800F8270: /* 800F8270 000F51D0 D0 1C 19 18 */ stfs f0, 0x1918(r28) /* 800F8274 000F51D4 38 00 00 00 */ li r0, 0 /* 800F8278 000F51D8 98 1C 19 20 */ stb r0, 0x1920(r28) lbl_800F827C: /* 800F827C 000F51DC FC 20 12 10 */ fabs f1, f2 /* 800F8280 000F51E0 C0 02 91 E4 */ lfs f0, lbl_805AAF04@sda21(r2) /* 800F8284 000F51E4 FC 20 08 18 */ frsp f1, f1 /* 800F8288 000F51E8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F828C 000F51EC 40 81 00 2C */ ble lbl_800F82B8 /* 800F8290 000F51F0 C0 22 91 A8 */ lfs f1, lbl_805AAEC8@sda21(r2) /* 800F8294 000F51F4 38 81 00 1C */ addi r4, r1, 0x1c /* 800F8298 000F51F8 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F829C 000F51FC 38 6D 88 48 */ addi r3, r13, lbl_805A7408@sda21 /* 800F82A0 000F5200 38 AD 88 4C */ addi r5, r13, lbl_805A740C@sda21 /* 800F82A4 000F5204 FF 42 08 2E */ fsel f26, f2, f0, f1 /* 800F82A8 000F5208 4B F1 40 0D */ bl "Clamp__5CMathFRCfRCfRCf" /* 800F82AC 000F520C C0 03 00 00 */ lfs f0, 0(r3) /* 800F82B0 000F5210 EF 3A 00 32 */ fmuls f25, f26, f0 /* 800F82B4 000F5214 48 00 00 10 */ b lbl_800F82C4 lbl_800F82B8: /* 800F82B8 000F5218 C3 22 91 50 */ lfs f25, lbl_805AAE70@sda21(r2) /* 800F82BC 000F521C 7F 83 E3 78 */ mr r3, r28 /* 800F82C0 000F5220 48 00 03 2D */ bl ResetSpiderBallForces__10CMorphBallFv lbl_800F82C4: /* 800F82C4 000F5224 C0 01 00 18 */ lfs f0, 0x18(r1) /* 800F82C8 000F5228 C0 22 93 14 */ lfs f1, lbl_805AB034@sda21(r2) /* 800F82CC 000F522C FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F82D0 000F5230 40 81 00 14 */ ble lbl_800F82E4 /* 800F82D4 000F5234 EC 00 08 28 */ fsubs f0, f0, f1 /* 800F82D8 000F5238 EC 01 00 28 */ fsubs f0, f1, f0 /* 800F82DC 000F523C EC 00 08 24 */ fdivs f0, f0, f1 /* 800F82E0 000F5240 EF 39 00 32 */ fmuls f25, f25, f0 lbl_800F82E4: /* 800F82E4 000F5244 38 61 00 64 */ addi r3, r1, 0x64 /* 800F82E8 000F5248 38 9C 18 A8 */ addi r4, r28, 0x18a8 /* 800F82EC 000F524C 48 21 C5 65 */ bl AsNormalized__9CVector3fCFv /* 800F82F0 000F5250 C0 62 93 18 */ lfs f3, lbl_805AB038@sda21(r2) /* 800F82F4 000F5254 C0 01 00 6C */ lfs f0, 0x6c(r1) /* 800F82F8 000F5258 C0 21 00 64 */ lfs f1, 0x64(r1) /* 800F82FC 000F525C EC 83 00 32 */ fmuls f4, f3, f0 /* 800F8300 000F5260 C0 01 00 68 */ lfs f0, 0x68(r1) /* 800F8304 000F5264 EC 43 00 72 */ fmuls f2, f3, f1 /* 800F8308 000F5268 EC 23 00 32 */ fmuls f1, f3, f0 /* 800F830C 000F526C EC 79 01 32 */ fmuls f3, f25, f4 /* 800F8310 000F5270 D0 81 00 78 */ stfs f4, 0x78(r1) /* 800F8314 000F5274 EC 19 00 B2 */ fmuls f0, f25, f2 /* 800F8318 000F5278 EC 99 00 72 */ fmuls f4, f25, f1 /* 800F831C 000F527C D0 41 00 70 */ stfs f2, 0x70(r1) /* 800F8320 000F5280 D0 21 00 74 */ stfs f1, 0x74(r1) /* 800F8324 000F5284 D0 01 00 7C */ stfs f0, 0x7c(r1) /* 800F8328 000F5288 D0 81 00 80 */ stfs f4, 0x80(r1) /* 800F832C 000F528C D0 61 00 84 */ stfs f3, 0x84(r1) /* 800F8330 000F5290 4B F2 32 05 */ bl Identity__10CAxisAngleFv /* 800F8334 000F5294 7C 65 1B 78 */ mr r5, r3 /* 800F8338 000F5298 80 7C 00 00 */ lwz r3, 0(r28) /* 800F833C 000F529C 38 81 00 7C */ addi r4, r1, 0x7c /* 800F8340 000F52A0 48 02 3F 85 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 800F8344 000F52A4 48 00 01 B4 */ b lbl_800F84F8 lbl_800F8348: /* 800F8348 000F52A8 C0 22 92 94 */ lfs f1, lbl_805AAFB4@sda21(r2) /* 800F834C 000F52AC C0 02 91 E8 */ lfs f0, lbl_805AAF08@sda21(r2) /* 800F8350 000F52B0 D0 3C 18 B4 */ stfs f1, 0x18b4(r28) /* 800F8354 000F52B4 C0 A2 93 0C */ lfs f5, lbl_805AB02C@sda21(r2) /* 800F8358 000F52B8 D0 1C 18 B8 */ stfs f0, 0x18b8(r28) /* 800F835C 000F52BC C0 9C 18 D4 */ lfs f4, 0x18d4(r28) /* 800F8360 000F52C0 C0 5C 18 DC */ lfs f2, 0x18dc(r28) /* 800F8364 000F52C4 EC 24 07 F2 */ fmuls f1, f4, f31 /* 800F8368 000F52C8 C1 1C 18 C4 */ lfs f8, 0x18c4(r28) /* 800F836C 000F52CC EC 02 07 F2 */ fmuls f0, f2, f31 /* 800F8370 000F52D0 C0 7C 18 CC */ lfs f3, 0x18cc(r28) /* 800F8374 000F52D4 C0 FC 18 E4 */ lfs f7, 0x18e4(r28) /* 800F8378 000F52D8 EC 28 0F BA */ fmadds f1, f8, f30, f1 /* 800F837C 000F52DC EC 03 07 BA */ fmadds f0, f3, f30, f0 /* 800F8380 000F52E0 C0 DC 18 EC */ lfs f6, 0x18ec(r28) /* 800F8384 000F52E4 EF E7 0F 7A */ fmadds f31, f7, f29, f1 /* 800F8388 000F52E8 EF C6 07 7A */ fmadds f30, f6, f29, f0 /* 800F838C 000F52EC EC 3F 02 32 */ fmuls f1, f31, f8 /* 800F8390 000F52F0 EC 1E 00 F2 */ fmuls f0, f30, f3 /* 800F8394 000F52F4 EC 7F 01 32 */ fmuls f3, f31, f4 /* 800F8398 000F52F8 EC 5E 00 B2 */ fmuls f2, f30, f2 /* 800F839C 000F52FC EC 81 00 2A */ fadds f4, f1, f0 /* 800F83A0 000F5300 EC 3F 01 F2 */ fmuls f1, f31, f7 /* 800F83A4 000F5304 EC 1E 01 B2 */ fmuls f0, f30, f6 /* 800F83A8 000F5308 EC 43 10 2A */ fadds f2, f3, f2 /* 800F83AC 000F530C EC 65 01 32 */ fmuls f3, f5, f4 /* 800F83B0 000F5310 EC 01 00 2A */ fadds f0, f1, f0 /* 800F83B4 000F5314 EC 25 00 B2 */ fmuls f1, f5, f2 /* 800F83B8 000F5318 D0 61 00 C4 */ stfs f3, 0xc4(r1) /* 800F83BC 000F531C EC 05 00 32 */ fmuls f0, f5, f0 /* 800F83C0 000F5320 D0 21 00 C8 */ stfs f1, 0xc8(r1) /* 800F83C4 000F5324 D0 01 00 CC */ stfs f0, 0xcc(r1) /* 800F83C8 000F5328 4B F2 31 6D */ bl Identity__10CAxisAngleFv /* 800F83CC 000F532C 7C 65 1B 78 */ mr r5, r3 /* 800F83D0 000F5330 80 7C 00 00 */ lwz r3, 0(r28) /* 800F83D4 000F5334 38 81 00 C4 */ addi r4, r1, 0xc4 /* 800F83D8 000F5338 48 02 3E ED */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 800F83DC 000F533C C0 21 00 C4 */ lfs f1, 0xc4(r1) /* 800F83E0 000F5340 C0 01 00 C8 */ lfs f0, 0xc8(r1) /* 800F83E4 000F5344 EC 61 00 72 */ fmuls f3, f1, f1 /* 800F83E8 000F5348 C0 A2 93 0C */ lfs f5, lbl_805AB02C@sda21(r2) /* 800F83EC 000F534C EC 40 00 32 */ fmuls f2, f0, f0 /* 800F83F0 000F5350 C0 81 00 CC */ lfs f4, 0xcc(r1) /* 800F83F4 000F5354 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F83F8 000F5358 EC 25 07 F2 */ fmuls f1, f5, f31 /* 800F83FC 000F535C EC 84 01 32 */ fmuls f4, f4, f4 /* 800F8400 000F5360 C0 DC 18 F8 */ lfs f6, 0x18f8(r28) /* 800F8404 000F5364 EC 63 10 2A */ fadds f3, f3, f2 /* 800F8408 000F5368 EC 45 07 B2 */ fmuls f2, f5, f30 /* 800F840C 000F536C EC 64 18 2A */ fadds f3, f4, f3 /* 800F8410 000F5370 FC 03 00 40 */ fcmpo cr0, f3, f0 /* 800F8414 000F5374 40 81 00 48 */ ble lbl_800F845C /* 800F8418 000F5378 48 29 C8 55 */ bl atan2 /* 800F841C 000F537C FC 40 08 18 */ frsp f2, f1 /* 800F8420 000F5380 C0 7C 18 F4 */ lfs f3, 0x18f4(r28) /* 800F8424 000F5384 C0 22 93 1C */ lfs f1, lbl_805AB03C@sda21(r2) /* 800F8428 000F5388 EC 02 18 28 */ fsubs f0, f2, f3 /* 800F842C 000F538C FC C0 10 90 */ fmr f6, f2 /* 800F8430 000F5390 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F8434 000F5394 40 81 00 10 */ ble lbl_800F8444 /* 800F8438 000F5398 C0 02 92 64 */ lfs f0, lbl_805AAF84@sda21(r2) /* 800F843C 000F539C EC C2 00 28 */ fsubs f6, f2, f0 /* 800F8440 000F53A0 48 00 00 18 */ b lbl_800F8458 lbl_800F8444: /* 800F8444 000F53A4 EC 03 10 28 */ fsubs f0, f3, f2 /* 800F8448 000F53A8 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F844C 000F53AC 40 81 00 0C */ ble lbl_800F8458 /* 800F8450 000F53B0 C0 02 92 64 */ lfs f0, lbl_805AAF84@sda21(r2) /* 800F8454 000F53B4 EC C2 00 2A */ fadds f6, f2, f0 lbl_800F8458: /* 800F8458 000F53B8 D0 DC 18 F8 */ stfs f6, 0x18f8(r28) lbl_800F845C: /* 800F845C 000F53BC C0 3C 18 F4 */ lfs f1, 0x18f4(r28) /* 800F8460 000F53C0 C0 0D 88 50 */ lfs f0, lbl_805A7410@sda21(r13) /* 800F8464 000F53C4 EC 66 08 28 */ fsubs f3, f6, f1 /* 800F8468 000F53C8 FC 20 1A 10 */ fabs f1, f3 /* 800F846C 000F53CC FC 20 08 18 */ frsp f1, f1 /* 800F8470 000F53D0 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F8474 000F53D4 D0 21 00 14 */ stfs f1, 0x14(r1) /* 800F8478 000F53D8 40 80 00 0C */ bge lbl_800F8484 /* 800F847C 000F53DC 38 A1 00 14 */ addi r5, r1, 0x14 /* 800F8480 000F53E0 48 00 00 08 */ b lbl_800F8488 lbl_800F8484: /* 800F8484 000F53E4 38 AD 88 50 */ addi r5, r13, lbl_805A7410@sda21 lbl_800F8488: /* 800F8488 000F53E8 C0 42 91 A8 */ lfs f2, lbl_805AAEC8@sda21(r2) /* 800F848C 000F53EC 38 61 00 DC */ addi r3, r1, 0xdc /* 800F8490 000F53F0 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F8494 000F53F4 38 81 00 10 */ addi r4, r1, 0x10 /* 800F8498 000F53F8 C0 25 00 00 */ lfs f1, 0(r5) /* 800F849C 000F53FC FC 43 10 2E */ fsel f2, f3, f0, f2 /* 800F84A0 000F5400 C0 1C 18 F4 */ lfs f0, 0x18f4(r28) /* 800F84A4 000F5404 EC 01 00 BA */ fmadds f0, f1, f2, f0 /* 800F84A8 000F5408 D0 1C 18 F4 */ stfs f0, 0x18f4(r28) /* 800F84AC 000F540C C0 1C 18 F4 */ lfs f0, 0x18f4(r28) /* 800F84B0 000F5410 D0 01 00 10 */ stfs f0, 0x10(r1) /* 800F84B4 000F5414 48 21 B3 F5 */ bl RotateY__12CTransform4fFRC9CRelAngle /* 800F84B8 000F5418 C0 41 01 04 */ lfs f2, 0x104(r1) /* 800F84BC 000F541C 38 61 00 58 */ addi r3, r1, 0x58 /* 800F84C0 000F5420 C0 21 00 F4 */ lfs f1, 0xf4(r1) /* 800F84C4 000F5424 38 9C 18 C4 */ addi r4, r28, 0x18c4 /* 800F84C8 000F5428 C0 01 00 E4 */ lfs f0, 0xe4(r1) /* 800F84CC 000F542C 38 A1 00 4C */ addi r5, r1, 0x4c /* 800F84D0 000F5430 D0 21 00 50 */ stfs f1, 0x50(r1) /* 800F84D4 000F5434 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 800F84D8 000F5438 D0 41 00 54 */ stfs f2, 0x54(r1) /* 800F84DC 000F543C 48 21 A5 A5 */ bl Rotate__12CTransform4fCFRC9CVector3f /* 800F84E0 000F5440 C0 01 00 58 */ lfs f0, 0x58(r1) /* 800F84E4 000F5444 D0 1C 18 9C */ stfs f0, 0x189c(r28) /* 800F84E8 000F5448 C0 01 00 5C */ lfs f0, 0x5c(r1) /* 800F84EC 000F544C D0 1C 18 A0 */ stfs f0, 0x18a0(r28) /* 800F84F0 000F5450 C0 01 00 60 */ lfs f0, 0x60(r1) /* 800F84F4 000F5454 D0 1C 18 A4 */ stfs f0, 0x18a4(r28) lbl_800F84F8: /* 800F84F8 000F5458 80 9C 00 00 */ lwz r4, 0(r28) /* 800F84FC 000F545C 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F8500 000F5460 C0 24 00 E8 */ lfs f1, 0xe8(r4) /* 800F8504 000F5464 C0 03 00 E4 */ lfs f0, 0xe4(r3) /* 800F8508 000F5468 C0 82 91 5C */ lfs f4, lbl_805AAE7C@sda21(r2) /* 800F850C 000F546C C0 7C 18 8C */ lfs f3, 0x188c(r28) /* 800F8510 000F5470 EC 21 00 32 */ fmuls f1, f1, f0 /* 800F8514 000F5474 C0 42 91 E0 */ lfs f2, lbl_805AAF00@sda21(r2) /* 800F8518 000F5478 EC 64 18 28 */ fsubs f3, f4, f3 /* 800F851C 000F547C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F8520 000F5480 EC 22 00 72 */ fmuls f1, f2, f1 /* 800F8524 000F5484 D0 01 00 40 */ stfs f0, 0x40(r1) /* 800F8528 000F5488 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F852C 000F548C D0 01 00 44 */ stfs f0, 0x44(r1) /* 800F8530 000F5490 D0 21 00 48 */ stfs f1, 0x48(r1) /* 800F8534 000F5494 4B F2 30 01 */ bl Identity__10CAxisAngleFv /* 800F8538 000F5498 7C 65 1B 78 */ mr r5, r3 /* 800F853C 000F549C 80 7C 00 00 */ lwz r3, 0(r28) /* 800F8540 000F54A0 38 81 00 40 */ addi r4, r1, 0x40 /* 800F8544 000F54A4 48 02 3D 81 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 800F8548 000F54A8 48 00 00 10 */ b lbl_800F8558 lbl_800F854C: /* 800F854C 000F54AC C0 02 91 E8 */ lfs f0, lbl_805AAF08@sda21(r2) /* 800F8550 000F54B0 D0 1C 18 B4 */ stfs f0, 0x18b4(r28) /* 800F8554 000F54B4 D0 1C 18 B8 */ stfs f0, 0x18b8(r28) lbl_800F8558: /* 800F8558 000F54B8 80 9C 00 00 */ lwz r4, 0(r28) /* 800F855C 000F54BC 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F8560 000F54C0 C0 44 00 E8 */ lfs f2, 0xe8(r4) /* 800F8564 000F54C4 C0 23 00 E4 */ lfs f1, 0xe4(r3) /* 800F8568 000F54C8 C0 1C 18 80 */ lfs f0, 0x1880(r28) /* 800F856C 000F54CC EC 82 00 72 */ fmuls f4, f2, f1 /* 800F8570 000F54D0 C0 5C 18 84 */ lfs f2, 0x1884(r28) /* 800F8574 000F54D4 C0 3C 18 88 */ lfs f1, 0x1888(r28) /* 800F8578 000F54D8 C0 62 91 7C */ lfs f3, lbl_805AAE9C@sda21(r2) /* 800F857C 000F54DC EC 04 00 32 */ fmuls f0, f4, f0 /* 800F8580 000F54E0 EC 44 00 B2 */ fmuls f2, f4, f2 /* 800F8584 000F54E4 EC 24 00 72 */ fmuls f1, f4, f1 /* 800F8588 000F54E8 EC 03 00 32 */ fmuls f0, f3, f0 /* 800F858C 000F54EC EC 43 00 B2 */ fmuls f2, f3, f2 /* 800F8590 000F54F0 EC 23 00 72 */ fmuls f1, f3, f1 /* 800F8594 000F54F4 D0 04 01 50 */ stfs f0, 0x150(r4) /* 800F8598 000F54F8 D0 44 01 54 */ stfs f2, 0x154(r4) /* 800F859C 000F54FC D0 24 01 58 */ stfs f1, 0x158(r4) lbl_800F85A0: /* 800F85A0 000F5500 E3 E1 01 F8 */ psq_l f31, 504(r1), 0, qr0 /* 800F85A4 000F5504 CB E1 01 F0 */ lfd f31, 0x1f0(r1) /* 800F85A8 000F5508 E3 C1 01 E8 */ psq_l f30, 488(r1), 0, qr0 /* 800F85AC 000F550C CB C1 01 E0 */ lfd f30, 0x1e0(r1) /* 800F85B0 000F5510 E3 A1 01 D8 */ psq_l f29, 472(r1), 0, qr0 /* 800F85B4 000F5514 CB A1 01 D0 */ lfd f29, 0x1d0(r1) /* 800F85B8 000F5518 E3 81 01 C8 */ psq_l f28, 456(r1), 0, qr0 /* 800F85BC 000F551C CB 81 01 C0 */ lfd f28, 0x1c0(r1) /* 800F85C0 000F5520 E3 61 01 B8 */ psq_l f27, 440(r1), 0, qr0 /* 800F85C4 000F5524 CB 61 01 B0 */ lfd f27, 0x1b0(r1) /* 800F85C8 000F5528 E3 41 01 A8 */ psq_l f26, 424(r1), 0, qr0 /* 800F85CC 000F552C CB 41 01 A0 */ lfd f26, 0x1a0(r1) /* 800F85D0 000F5530 E3 21 01 98 */ psq_l f25, 408(r1), 0, qr0 /* 800F85D4 000F5534 CB 21 01 90 */ lfd f25, 0x190(r1) /* 800F85D8 000F5538 BB 61 01 7C */ lmw r27, 0x17c(r1) /* 800F85DC 000F553C 80 01 02 04 */ lwz r0, 0x204(r1) /* 800F85E0 000F5540 7C 08 03 A6 */ mtlr r0 /* 800F85E4 000F5544 38 21 02 00 */ addi r1, r1, 0x200 /* 800F85E8 000F5548 4E 80 00 20 */ blr .global ResetSpiderBallForces__10CMorphBallFv ResetSpiderBallForces__10CMorphBallFv: /* 800F85EC 000F554C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F85F0 000F5550 7C 08 02 A6 */ mflr r0 /* 800F85F4 000F5554 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F85F8 000F5558 90 01 00 24 */ stw r0, 0x24(r1) /* 800F85FC 000F555C FC 40 08 90 */ fmr f2, f1 /* 800F8600 000F5560 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800F8604 000F5564 7C 7F 1B 78 */ mr r31, r3 /* 800F8608 000F5568 38 61 00 08 */ addi r3, r1, 8 /* 800F860C 000F556C 48 21 BB F5 */ bl __ct__9CVector2fFff /* 800F8610 000F5570 C0 21 00 08 */ lfs f1, 8(r1) /* 800F8614 000F5574 38 00 00 01 */ li r0, 1 /* 800F8618 000F5578 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F861C 000F557C D0 3F 19 0C */ stfs f1, 0x190c(r31) /* 800F8620 000F5580 C0 21 00 0C */ lfs f1, 0xc(r1) /* 800F8624 000F5584 D0 3F 19 10 */ stfs f1, 0x1910(r31) /* 800F8628 000F5588 D0 1F 19 14 */ stfs f0, 0x1914(r31) /* 800F862C 000F558C D0 1F 19 18 */ stfs f0, 0x1918(r31) /* 800F8630 000F5590 98 1F 19 20 */ stb r0, 0x1920(r31) /* 800F8634 000F5594 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800F8638 000F5598 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F863C 000F559C 7C 08 03 A6 */ mtlr r0 /* 800F8640 000F55A0 38 21 00 20 */ addi r1, r1, 0x20 /* 800F8644 000F55A4 4E 80 00 20 */ blr .global CalculateSpiderBallAttractionSurfaceForces__10CMorphBallCFRC11CFinalInput CalculateSpiderBallAttractionSurfaceForces__10CMorphBallCFRC11CFinalInput: /* 800F8648 000F55A8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800F864C 000F55AC 7C 08 02 A6 */ mflr r0 /* 800F8650 000F55B0 90 01 00 34 */ stw r0, 0x34(r1) /* 800F8654 000F55B4 DB E1 00 20 */ stfd f31, 0x20(r1) /* 800F8658 000F55B8 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 800F865C 000F55BC DB C1 00 10 */ stfd f30, 0x10(r1) /* 800F8660 000F55C0 F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 /* 800F8664 000F55C4 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F8668 000F55C8 93 C1 00 08 */ stw r30, 8(r1) /* 800F866C 000F55CC 7C 7E 1B 78 */ mr r30, r3 /* 800F8670 000F55D0 7C BF 2B 78 */ mr r31, r5 /* 800F8674 000F55D4 7C 83 23 78 */ mr r3, r4 /* 800F8678 000F55D8 48 00 06 21 */ bl IsMovementAllowed__10CMorphBallCFv /* 800F867C 000F55DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F8680 000F55E0 40 82 00 1C */ bne lbl_800F869C /* 800F8684 000F55E4 C0 0D A8 98 */ lfs f0, lbl_805A9458@sda21(r13) /* 800F8688 000F55E8 38 6D A8 98 */ addi r3, r13, lbl_805A9458@sda21 /* 800F868C 000F55EC D0 1E 00 00 */ stfs f0, 0(r30) /* 800F8690 000F55F0 C0 03 00 04 */ lfs f0, 4(r3) /* 800F8694 000F55F4 D0 1E 00 04 */ stfs f0, 4(r30) /* 800F8698 000F55F8 48 00 00 50 */ b lbl_800F86E8 lbl_800F869C: /* 800F869C 000F55FC 7F E4 FB 78 */ mr r4, r31 /* 800F86A0 000F5600 38 60 00 01 */ li r3, 1 /* 800F86A4 000F5604 4B F1 42 75 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F86A8 000F5608 FF E0 08 90 */ fmr f31, f1 /* 800F86AC 000F560C 7F E4 FB 78 */ mr r4, r31 /* 800F86B0 000F5610 38 60 00 00 */ li r3, 0 /* 800F86B4 000F5614 4B F1 42 65 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F86B8 000F5618 EF C1 F8 28 */ fsubs f30, f1, f31 /* 800F86BC 000F561C 7F E4 FB 78 */ mr r4, r31 /* 800F86C0 000F5620 38 60 00 02 */ li r3, 2 /* 800F86C4 000F5624 4B F1 42 55 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F86C8 000F5628 FF E0 08 90 */ fmr f31, f1 /* 800F86CC 000F562C 7F E4 FB 78 */ mr r4, r31 /* 800F86D0 000F5630 38 60 00 03 */ li r3, 3 /* 800F86D4 000F5634 4B F1 42 45 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F86D8 000F5638 EC 21 F8 28 */ fsubs f1, f1, f31 /* 800F86DC 000F563C 7F C3 F3 78 */ mr r3, r30 /* 800F86E0 000F5640 FC 40 F0 90 */ fmr f2, f30 /* 800F86E4 000F5644 48 21 BB 1D */ bl __ct__9CVector2fFff lbl_800F86E8: /* 800F86E8 000F5648 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 800F86EC 000F564C CB E1 00 20 */ lfd f31, 0x20(r1) /* 800F86F0 000F5650 E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 /* 800F86F4 000F5654 CB C1 00 10 */ lfd f30, 0x10(r1) /* 800F86F8 000F5658 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F86FC 000F565C 80 01 00 34 */ lwz r0, 0x34(r1) /* 800F8700 000F5660 83 C1 00 08 */ lwz r30, 8(r1) /* 800F8704 000F5664 7C 08 03 A6 */ mtlr r0 /* 800F8708 000F5668 38 21 00 30 */ addi r1, r1, 0x30 /* 800F870C 000F566C 4E 80 00 20 */ blr .global TransformSpiderBallForcesXY__10CMorphBallFR9CVector2fR13CStateManager TransformSpiderBallForcesXY__10CMorphBallFR9CVector2fR13CStateManager: /* 800F8710 000F5670 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800F8714 000F5674 7C 08 02 A6 */ mflr r0 /* 800F8718 000F5678 90 01 00 44 */ stw r0, 0x44(r1) /* 800F871C 000F567C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800F8720 000F5680 7C 9F 23 78 */ mr r31, r4 /* 800F8724 000F5684 7C A4 2B 78 */ mr r4, r5 /* 800F8728 000F5688 93 C1 00 38 */ stw r30, 0x38(r1) /* 800F872C 000F568C 7C 7E 1B 78 */ mr r30, r3 /* 800F8730 000F5690 80 65 08 70 */ lwz r3, 0x870(r5) /* 800F8734 000F5694 4B F1 33 E5 */ bl GetCurrentCamera__14CCameraManagerCFRC13CStateManager /* 800F8738 000F5698 7C 64 1B 78 */ mr r4, r3 /* 800F873C 000F569C 38 61 00 08 */ addi r3, r1, 8 /* 800F8740 000F56A0 38 84 00 34 */ addi r4, r4, 0x34 /* 800F8744 000F56A4 48 21 A4 31 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F8748 000F56A8 C0 DF 00 04 */ lfs f6, 4(r31) /* 800F874C 000F56AC C0 01 00 0C */ lfs f0, 0xc(r1) /* 800F8750 000F56B0 C0 41 00 1C */ lfs f2, 0x1c(r1) /* 800F8754 000F56B4 C0 FF 00 00 */ lfs f7, 0(r31) /* 800F8758 000F56B8 EC 06 00 32 */ fmuls f0, f6, f0 /* 800F875C 000F56BC C0 21 00 08 */ lfs f1, 8(r1) /* 800F8760 000F56C0 EC 86 00 B2 */ fmuls f4, f6, f2 /* 800F8764 000F56C4 C0 41 00 18 */ lfs f2, 0x18(r1) /* 800F8768 000F56C8 EC 27 00 72 */ fmuls f1, f7, f1 /* 800F876C 000F56CC C0 61 00 28 */ lfs f3, 0x28(r1) /* 800F8770 000F56D0 EC A7 00 B2 */ fmuls f5, f7, f2 /* 800F8774 000F56D4 C0 41 00 2C */ lfs f2, 0x2c(r1) /* 800F8778 000F56D8 EC 67 00 F2 */ fmuls f3, f7, f3 /* 800F877C 000F56DC EC 01 00 2A */ fadds f0, f1, f0 /* 800F8780 000F56E0 EC 26 00 B2 */ fmuls f1, f6, f2 /* 800F8784 000F56E4 EC 45 20 2A */ fadds f2, f5, f4 /* 800F8788 000F56E8 D0 1E 00 00 */ stfs f0, 0(r30) /* 800F878C 000F56EC EC 03 08 2A */ fadds f0, f3, f1 /* 800F8790 000F56F0 D0 5E 00 04 */ stfs f2, 4(r30) /* 800F8794 000F56F4 D0 1E 00 08 */ stfs f0, 8(r30) /* 800F8798 000F56F8 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800F879C 000F56FC 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800F87A0 000F5700 80 01 00 44 */ lwz r0, 0x44(r1) /* 800F87A4 000F5704 7C 08 03 A6 */ mtlr r0 /* 800F87A8 000F5708 38 21 00 40 */ addi r1, r1, 0x40 /* 800F87AC 000F570C 4E 80 00 20 */ blr .global TransformSpiderBallForcesXZ__10CMorphBallFR9CVector2fR13CStateManager TransformSpiderBallForcesXZ__10CMorphBallFR9CVector2fR13CStateManager: /* 800F87B0 000F5710 94 21 FF C0 */ stwu r1, -0x40(r1) /* 800F87B4 000F5714 7C 08 02 A6 */ mflr r0 /* 800F87B8 000F5718 90 01 00 44 */ stw r0, 0x44(r1) /* 800F87BC 000F571C 93 E1 00 3C */ stw r31, 0x3c(r1) /* 800F87C0 000F5720 7C 9F 23 78 */ mr r31, r4 /* 800F87C4 000F5724 7C A4 2B 78 */ mr r4, r5 /* 800F87C8 000F5728 93 C1 00 38 */ stw r30, 0x38(r1) /* 800F87CC 000F572C 7C 7E 1B 78 */ mr r30, r3 /* 800F87D0 000F5730 80 65 08 70 */ lwz r3, 0x870(r5) /* 800F87D4 000F5734 4B F1 33 45 */ bl GetCurrentCamera__14CCameraManagerCFRC13CStateManager /* 800F87D8 000F5738 7C 64 1B 78 */ mr r4, r3 /* 800F87DC 000F573C 38 61 00 08 */ addi r3, r1, 8 /* 800F87E0 000F5740 38 84 00 34 */ addi r4, r4, 0x34 /* 800F87E4 000F5744 48 21 A3 91 */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F87E8 000F5748 C0 DF 00 04 */ lfs f6, 4(r31) /* 800F87EC 000F574C C0 01 00 10 */ lfs f0, 0x10(r1) /* 800F87F0 000F5750 C0 41 00 20 */ lfs f2, 0x20(r1) /* 800F87F4 000F5754 C0 FF 00 00 */ lfs f7, 0(r31) /* 800F87F8 000F5758 EC 06 00 32 */ fmuls f0, f6, f0 /* 800F87FC 000F575C C0 21 00 08 */ lfs f1, 8(r1) /* 800F8800 000F5760 EC 86 00 B2 */ fmuls f4, f6, f2 /* 800F8804 000F5764 C0 41 00 18 */ lfs f2, 0x18(r1) /* 800F8808 000F5768 EC 27 00 72 */ fmuls f1, f7, f1 /* 800F880C 000F576C C0 61 00 28 */ lfs f3, 0x28(r1) /* 800F8810 000F5770 EC A7 00 B2 */ fmuls f5, f7, f2 /* 800F8814 000F5774 C0 41 00 30 */ lfs f2, 0x30(r1) /* 800F8818 000F5778 EC 67 00 F2 */ fmuls f3, f7, f3 /* 800F881C 000F577C EC 01 00 2A */ fadds f0, f1, f0 /* 800F8820 000F5780 EC 26 00 B2 */ fmuls f1, f6, f2 /* 800F8824 000F5784 EC 45 20 2A */ fadds f2, f5, f4 /* 800F8828 000F5788 D0 1E 00 00 */ stfs f0, 0(r30) /* 800F882C 000F578C EC 03 08 2A */ fadds f0, f3, f1 /* 800F8830 000F5790 D0 5E 00 04 */ stfs f2, 4(r30) /* 800F8834 000F5794 D0 1E 00 08 */ stfs f0, 8(r30) /* 800F8838 000F5798 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 800F883C 000F579C 83 C1 00 38 */ lwz r30, 0x38(r1) /* 800F8840 000F57A0 80 01 00 44 */ lwz r0, 0x44(r1) /* 800F8844 000F57A4 7C 08 03 A6 */ mtlr r0 /* 800F8848 000F57A8 38 21 00 40 */ addi r1, r1, 0x40 /* 800F884C 000F57AC 4E 80 00 20 */ blr .global ApplySpiderBallSwingingForces__10CMorphBallFRC11CFinalInputR13CStateManagerf ApplySpiderBallSwingingForces__10CMorphBallFRC11CFinalInputR13CStateManagerf: /* 800F8850 000F57B0 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 800F8854 000F57B4 7C 08 02 A6 */ mflr r0 /* 800F8858 000F57B8 90 01 00 B4 */ stw r0, 0xb4(r1) /* 800F885C 000F57BC DB E1 00 A0 */ stfd f31, 0xa0(r1) /* 800F8860 000F57C0 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 /* 800F8864 000F57C4 DB C1 00 90 */ stfd f30, 0x90(r1) /* 800F8868 000F57C8 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 /* 800F886C 000F57CC DB A1 00 80 */ stfd f29, 0x80(r1) /* 800F8870 000F57D0 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 /* 800F8874 000F57D4 DB 81 00 70 */ stfd f28, 0x70(r1) /* 800F8878 000F57D8 F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0 /* 800F887C 000F57DC 93 E1 00 6C */ stw r31, 0x6c(r1) /* 800F8880 000F57E0 93 C1 00 68 */ stw r30, 0x68(r1) /* 800F8884 000F57E4 C0 42 92 D0 */ lfs f2, lbl_805AAFF0@sda21(r2) /* 800F8888 000F57E8 7C 7E 1B 78 */ mr r30, r3 /* 800F888C 000F57EC C0 02 92 3C */ lfs f0, lbl_805AAF5C@sda21(r2) /* 800F8890 000F57F0 FF 80 08 90 */ fmr f28, f1 /* 800F8894 000F57F4 D0 43 18 B4 */ stfs f2, 0x18b4(r3) /* 800F8898 000F57F8 7C 9F 23 78 */ mr r31, r4 /* 800F889C 000F57FC 38 7E 18 80 */ addi r3, r30, 0x1880 /* 800F88A0 000F5800 D0 1E 18 B8 */ stfs f0, 0x18b8(r30) /* 800F88A4 000F5804 80 9E 00 00 */ lwz r4, 0(r30) /* 800F88A8 000F5808 C0 3E 18 90 */ lfs f1, 0x1890(r30) /* 800F88AC 000F580C C0 04 00 40 */ lfs f0, 0x40(r4) /* 800F88B0 000F5810 C0 9E 18 94 */ lfs f4, 0x1894(r30) /* 800F88B4 000F5814 C0 64 00 50 */ lfs f3, 0x50(r4) /* 800F88B8 000F5818 EC 01 00 28 */ fsubs f0, f1, f0 /* 800F88BC 000F581C C0 5E 18 98 */ lfs f2, 0x1898(r30) /* 800F88C0 000F5820 C0 24 00 60 */ lfs f1, 0x60(r4) /* 800F88C4 000F5824 EC 64 18 28 */ fsubs f3, f4, f3 /* 800F88C8 000F5828 D0 1E 18 80 */ stfs f0, 0x1880(r30) /* 800F88CC 000F582C EC 02 08 28 */ fsubs f0, f2, f1 /* 800F88D0 000F5830 D0 7E 18 84 */ stfs f3, 0x1884(r30) /* 800F88D4 000F5834 D0 1E 18 88 */ stfs f0, 0x1888(r30) /* 800F88D8 000F5838 48 21 BF E1 */ bl Magnitude__9CVector3fCFv /* 800F88DC 000F583C FF E0 08 90 */ fmr f31, f1 /* 800F88E0 000F5840 C0 02 91 A8 */ lfs f0, lbl_805AAEC8@sda21(r2) /* 800F88E4 000F5844 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F88E8 000F5848 7F C3 F3 78 */ mr r3, r30 /* 800F88EC 000F584C C0 5E 18 80 */ lfs f2, 0x1880(r30) /* 800F88F0 000F5850 7F E4 FB 78 */ mr r4, r31 /* 800F88F4 000F5854 EC 00 07 F2 */ fmuls f0, f0, f31 /* 800F88F8 000F5858 EC 21 00 24 */ fdivs f1, f1, f0 /* 800F88FC 000F585C EC 02 00 72 */ fmuls f0, f2, f1 /* 800F8900 000F5860 D0 1E 18 80 */ stfs f0, 0x1880(r30) /* 800F8904 000F5864 C0 1E 18 84 */ lfs f0, 0x1884(r30) /* 800F8908 000F5868 EC 00 00 72 */ fmuls f0, f0, f1 /* 800F890C 000F586C D0 1E 18 84 */ stfs f0, 0x1884(r30) /* 800F8910 000F5870 C0 1E 18 88 */ lfs f0, 0x1888(r30) /* 800F8914 000F5874 EC 00 00 72 */ fmuls f0, f0, f1 /* 800F8918 000F5878 D0 1E 18 88 */ stfs f0, 0x1888(r30) /* 800F891C 000F587C 4B FF EB 89 */ bl GetSpiderBallControllerMovement__10CMorphBallCFRC11CFinalInput /* 800F8920 000F5880 FF A0 08 90 */ fmr f29, f1 /* 800F8924 000F5884 7F C3 F3 78 */ mr r3, r30 /* 800F8928 000F5888 FC 40 E0 90 */ fmr f2, f28 /* 800F892C 000F588C 4B FF EA D5 */ bl UpdateSpiderBallSwingControllerMovementTimer__10CMorphBallFff /* 800F8930 000F5890 7F C3 F3 78 */ mr r3, r30 /* 800F8934 000F5894 4B FF EA 7D */ bl GetSpiderBallSwingControllerMovementScalar__10CMorphBallCFv /* 800F8938 000F5898 C0 42 93 20 */ lfs f2, lbl_805AB040@sda21(r2) /* 800F893C 000F589C EF DD 00 72 */ fmuls f30, f29, f1 /* 800F8940 000F58A0 C0 02 93 24 */ lfs f0, lbl_805AB044@sda21(r2) /* 800F8944 000F58A4 38 61 00 28 */ addi r3, r1, 0x28 /* 800F8948 000F58A8 EC 22 07 F2 */ fmuls f1, f2, f31 /* 800F894C 000F58AC C0 FE 18 80 */ lfs f7, 0x1880(r30) /* 800F8950 000F58B0 C0 DE 18 B0 */ lfs f6, 0x18b0(r30) /* 800F8954 000F58B4 C1 1E 18 84 */ lfs f8, 0x1884(r30) /* 800F8958 000F58B8 38 81 00 1C */ addi r4, r1, 0x1c /* 800F895C 000F58BC EF A1 00 24 */ fdivs f29, f1, f0 /* 800F8960 000F58C0 C0 7E 18 A8 */ lfs f3, 0x18a8(r30) /* 800F8964 000F58C4 C1 3E 18 88 */ lfs f9, 0x1888(r30) /* 800F8968 000F58C8 C0 9E 18 AC */ lfs f4, 0x18ac(r30) /* 800F896C 000F58CC EC 43 02 32 */ fmuls f2, f3, f8 /* 800F8970 000F58D0 EC 26 01 F2 */ fmuls f1, f6, f7 /* 800F8974 000F58D4 EC 04 02 72 */ fmuls f0, f4, f9 /* 800F8978 000F58D8 EC A7 11 38 */ fmsubs f5, f7, f4, f2 /* 800F897C 000F58DC EC 89 08 F8 */ fmsubs f4, f9, f3, f1 /* 800F8980 000F58E0 EC 68 01 B8 */ fmsubs f3, f8, f6, f0 /* 800F8984 000F58E4 EC 48 01 72 */ fmuls f2, f8, f5 /* 800F8988 000F58E8 EC 07 01 32 */ fmuls f0, f7, f4 /* 800F898C 000F58EC EC 29 00 F2 */ fmuls f1, f9, f3 /* 800F8990 000F58F0 EC 44 12 78 */ fmsubs f2, f4, f9, f2 /* 800F8994 000F58F4 EC 03 02 38 */ fmsubs f0, f3, f8, f0 /* 800F8998 000F58F8 EC 25 09 F8 */ fmsubs f1, f5, f7, f1 /* 800F899C 000F58FC D0 41 00 1C */ stfs f2, 0x1c(r1) /* 800F89A0 000F5900 D0 21 00 20 */ stfs f1, 0x20(r1) /* 800F89A4 000F5904 D0 01 00 24 */ stfs f0, 0x24(r1) /* 800F89A8 000F5908 48 21 BE A9 */ bl AsNormalized__9CVector3fCFv /* 800F89AC 000F590C C0 01 00 30 */ lfs f0, 0x30(r1) /* 800F89B0 000F5910 C0 21 00 28 */ lfs f1, 0x28(r1) /* 800F89B4 000F5914 EC 9D 00 32 */ fmuls f4, f29, f0 /* 800F89B8 000F5918 C0 01 00 2C */ lfs f0, 0x2c(r1) /* 800F89BC 000F591C EC 7D 00 72 */ fmuls f3, f29, f1 /* 800F89C0 000F5920 C0 22 93 28 */ lfs f1, lbl_805AB048@sda21(r2) /* 800F89C4 000F5924 EC 1D 00 32 */ fmuls f0, f29, f0 /* 800F89C8 000F5928 EC BE 01 32 */ fmuls f5, f30, f4 /* 800F89CC 000F592C EC 5E 00 F2 */ fmuls f2, f30, f3 /* 800F89D0 000F5930 D0 61 00 34 */ stfs f3, 0x34(r1) /* 800F89D4 000F5934 EC 7E 00 32 */ fmuls f3, f30, f0 /* 800F89D8 000F5938 EC C1 01 72 */ fmuls f6, f1, f5 /* 800F89DC 000F593C D0 01 00 38 */ stfs f0, 0x38(r1) /* 800F89E0 000F5940 EC 01 00 B2 */ fmuls f0, f1, f2 /* 800F89E4 000F5944 EC 21 00 F2 */ fmuls f1, f1, f3 /* 800F89E8 000F5948 D0 81 00 3C */ stfs f4, 0x3c(r1) /* 800F89EC 000F594C D0 41 00 40 */ stfs f2, 0x40(r1) /* 800F89F0 000F5950 D0 61 00 44 */ stfs f3, 0x44(r1) /* 800F89F4 000F5954 D0 A1 00 48 */ stfs f5, 0x48(r1) /* 800F89F8 000F5958 D0 01 00 4C */ stfs f0, 0x4c(r1) /* 800F89FC 000F595C D0 21 00 50 */ stfs f1, 0x50(r1) /* 800F8A00 000F5960 D0 C1 00 54 */ stfs f6, 0x54(r1) /* 800F8A04 000F5964 4B F2 2B 31 */ bl Identity__10CAxisAngleFv /* 800F8A08 000F5968 7C 65 1B 78 */ mr r5, r3 /* 800F8A0C 000F596C 80 7E 00 00 */ lwz r3, 0(r30) /* 800F8A10 000F5970 38 81 00 4C */ addi r4, r1, 0x4c /* 800F8A14 000F5974 48 02 38 B1 */ bl ApplyForceWR__13CPhysicsActorFRC9CVector3fRC10CAxisAngle /* 800F8A18 000F5978 80 BE 00 00 */ lwz r5, 0(r30) /* 800F8A1C 000F597C 38 61 00 58 */ addi r3, r1, 0x58 /* 800F8A20 000F5980 80 8D A1 1C */ lwz r4, gpTweakBall@sda21(r13) /* 800F8A24 000F5984 C0 45 00 E8 */ lfs f2, 0xe8(r5) /* 800F8A28 000F5988 C0 24 00 E4 */ lfs f1, 0xe4(r4) /* 800F8A2C 000F598C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F8A30 000F5990 EC 22 00 72 */ fmuls f1, f2, f1 /* 800F8A34 000F5994 C0 42 91 5C */ lfs f2, lbl_805AAE7C@sda21(r2) /* 800F8A38 000F5998 D0 05 01 50 */ stfs f0, 0x150(r5) /* 800F8A3C 000F599C C0 62 93 24 */ lfs f3, lbl_805AB044@sda21(r2) /* 800F8A40 000F59A0 D0 05 01 54 */ stfs f0, 0x154(r5) /* 800F8A44 000F59A4 C0 02 92 24 */ lfs f0, lbl_805AAF44@sda21(r2) /* 800F8A48 000F59A8 D0 25 01 58 */ stfs f1, 0x158(r5) /* 800F8A4C 000F59AC C0 3E 18 8C */ lfs f1, 0x188c(r30) /* 800F8A50 000F59B0 EC 22 08 28 */ fsubs f1, f2, f1 /* 800F8A54 000F59B4 EC 03 00 7A */ fmadds f0, f3, f1, f0 /* 800F8A58 000F59B8 D0 1E 18 FC */ stfs f0, 0x18fc(r30) /* 800F8A5C 000F59BC D3 FE 19 00 */ stfs f31, 0x1900(r30) /* 800F8A60 000F59C0 80 9E 00 00 */ lwz r4, 0(r30) /* 800F8A64 000F59C4 C0 04 01 38 */ lfs f0, 0x138(r4) /* 800F8A68 000F59C8 D0 01 00 58 */ stfs f0, 0x58(r1) /* 800F8A6C 000F59CC C0 04 01 3C */ lfs f0, 0x13c(r4) /* 800F8A70 000F59D0 D0 01 00 5C */ stfs f0, 0x5c(r1) /* 800F8A74 000F59D4 C0 04 01 40 */ lfs f0, 0x140(r4) /* 800F8A78 000F59D8 D0 01 00 60 */ stfs f0, 0x60(r1) /* 800F8A7C 000F59DC 48 21 BE 3D */ bl Magnitude__9CVector3fCFv /* 800F8A80 000F59E0 FF A0 08 90 */ fmr f29, f1 /* 800F8A84 000F59E4 38 61 00 10 */ addi r3, r1, 0x10 /* 800F8A88 000F59E8 38 81 00 58 */ addi r4, r1, 0x58 /* 800F8A8C 000F59EC 48 21 BD C5 */ bl AsNormalized__9CVector3fCFv /* 800F8A90 000F59F0 C0 3E 18 84 */ lfs f1, 0x1884(r30) /* 800F8A94 000F59F4 C0 01 00 14 */ lfs f0, 0x14(r1) /* 800F8A98 000F59F8 C0 9E 18 80 */ lfs f4, 0x1880(r30) /* 800F8A9C 000F59FC EC 7D 00 72 */ fmuls f3, f29, f1 /* 800F8AA0 000F5A00 EC 01 00 32 */ fmuls f0, f1, f0 /* 800F8AA4 000F5A04 C0 21 00 10 */ lfs f1, 0x10(r1) /* 800F8AA8 000F5A08 C1 1E 18 88 */ lfs f8, 0x1888(r30) /* 800F8AAC 000F5A0C EC BD 01 32 */ fmuls f5, f29, f4 /* 800F8AB0 000F5A10 C0 41 00 18 */ lfs f2, 0x18(r1) /* 800F8AB4 000F5A14 EC 24 00 7A */ fmadds f1, f4, f1, f0 /* 800F8AB8 000F5A18 EC 1D 02 32 */ fmuls f0, f29, f8 /* 800F8ABC 000F5A1C C0 C1 00 58 */ lfs f6, 0x58(r1) /* 800F8AC0 000F5A20 C0 81 00 5C */ lfs f4, 0x5c(r1) /* 800F8AC4 000F5A24 EC E8 08 BA */ fmadds f7, f8, f2, f1 /* 800F8AC8 000F5A28 C0 41 00 60 */ lfs f2, 0x60(r1) /* 800F8ACC 000F5A2C C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F8AD0 000F5A30 C1 22 92 D0 */ lfs f9, lbl_805AAFF0@sda21(r2) /* 800F8AD4 000F5A34 EC A7 01 72 */ fmuls f5, f7, f5 /* 800F8AD8 000F5A38 EC 67 00 F2 */ fmuls f3, f7, f3 /* 800F8ADC 000F5A3C EC 07 00 32 */ fmuls f0, f7, f0 /* 800F8AE0 000F5A40 EC A6 28 28 */ fsubs f5, f6, f5 /* 800F8AE4 000F5A44 EC 64 18 28 */ fsubs f3, f4, f3 /* 800F8AE8 000F5A48 EC 02 00 28 */ fsubs f0, f2, f0 /* 800F8AEC 000F5A4C D0 A1 00 58 */ stfs f5, 0x58(r1) /* 800F8AF0 000F5A50 D0 61 00 5C */ stfs f3, 0x5c(r1) /* 800F8AF4 000F5A54 D0 01 00 60 */ stfs f0, 0x60(r1) /* 800F8AF8 000F5A58 C0 1E 18 8C */ lfs f0, 0x188c(r30) /* 800F8AFC 000F5A5C FC 01 00 00 */ fcmpu cr0, f1, f0 /* 800F8B00 000F5A60 40 82 00 1C */ bne lbl_800F8B1C /* 800F8B04 000F5A64 FC 20 42 10 */ fabs f1, f8 /* 800F8B08 000F5A68 C0 02 91 80 */ lfs f0, lbl_805AAEA0@sda21(r2) /* 800F8B0C 000F5A6C FC 20 08 18 */ frsp f1, f1 /* 800F8B10 000F5A70 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F8B14 000F5A74 40 81 00 08 */ ble lbl_800F8B1C /* 800F8B18 000F5A78 C1 22 92 94 */ lfs f9, lbl_805AAFB4@sda21(r2) lbl_800F8B1C: /* 800F8B1C 000F5A7C C0 1E 18 FC */ lfs f0, 0x18fc(r30) /* 800F8B20 000F5A80 C0 22 91 A8 */ lfs f1, lbl_805AAEC8@sda21(r2) /* 800F8B24 000F5A84 EC 40 F8 28 */ fsubs f2, f0, f31 /* 800F8B28 000F5A88 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F8B2C 000F5A8C FC 02 08 2E */ fsel f0, f2, f0, f1 /* 800F8B30 000F5A90 FC 20 12 10 */ fabs f1, f2 /* 800F8B34 000F5A94 EC 69 00 32 */ fmuls f3, f9, f0 /* 800F8B38 000F5A98 FC 00 08 18 */ frsp f0, f1 /* 800F8B3C 000F5A9C FC 20 1A 10 */ fabs f1, f3 /* 800F8B40 000F5AA0 D0 01 00 08 */ stfs f0, 8(r1) /* 800F8B44 000F5AA4 FC 20 08 18 */ frsp f1, f1 /* 800F8B48 000F5AA8 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 800F8B4C 000F5AAC D0 21 00 0C */ stfs f1, 0xc(r1) /* 800F8B50 000F5AB0 40 80 00 0C */ bge lbl_800F8B5C /* 800F8B54 000F5AB4 38 61 00 08 */ addi r3, r1, 8 /* 800F8B58 000F5AB8 48 00 00 08 */ b lbl_800F8B60 lbl_800F8B5C: /* 800F8B5C 000F5ABC 38 61 00 0C */ addi r3, r1, 0xc lbl_800F8B60: /* 800F8B60 000F5AC0 C0 42 91 A8 */ lfs f2, lbl_805AAEC8@sda21(r2) /* 800F8B64 000F5AC4 38 81 00 58 */ addi r4, r1, 0x58 /* 800F8B68 000F5AC8 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F8B6C 000F5ACC C0 03 00 00 */ lfs f0, 0(r3) /* 800F8B70 000F5AD0 FC 23 10 6E */ fsel f1, f3, f1, f2 /* 800F8B74 000F5AD4 C0 BE 18 84 */ lfs f5, 0x1884(r30) /* 800F8B78 000F5AD8 C0 9E 18 88 */ lfs f4, 0x1888(r30) /* 800F8B7C 000F5ADC C0 5E 18 80 */ lfs f2, 0x1880(r30) /* 800F8B80 000F5AE0 EC C0 00 72 */ fmuls f6, f0, f1 /* 800F8B84 000F5AE4 C0 61 00 58 */ lfs f3, 0x58(r1) /* 800F8B88 000F5AE8 C0 21 00 5C */ lfs f1, 0x5c(r1) /* 800F8B8C 000F5AEC C0 01 00 60 */ lfs f0, 0x60(r1) /* 800F8B90 000F5AF0 EC C6 E0 24 */ fdivs f6, f6, f28 /* 800F8B94 000F5AF4 EC A6 01 72 */ fmuls f5, f6, f5 /* 800F8B98 000F5AF8 EC 86 01 32 */ fmuls f4, f6, f4 /* 800F8B9C 000F5AFC EC 46 00 B2 */ fmuls f2, f6, f2 /* 800F8BA0 000F5B00 EC 21 28 2A */ fadds f1, f1, f5 /* 800F8BA4 000F5B04 EC 00 20 2A */ fadds f0, f0, f4 /* 800F8BA8 000F5B08 EC 43 10 2A */ fadds f2, f3, f2 /* 800F8BAC 000F5B0C D0 21 00 5C */ stfs f1, 0x5c(r1) /* 800F8BB0 000F5B10 D0 41 00 58 */ stfs f2, 0x58(r1) /* 800F8BB4 000F5B14 D0 01 00 60 */ stfs f0, 0x60(r1) /* 800F8BB8 000F5B18 80 7E 00 00 */ lwz r3, 0(r30) /* 800F8BBC 000F5B1C 48 02 20 E5 */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f /* 800F8BC0 000F5B20 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 /* 800F8BC4 000F5B24 CB E1 00 A0 */ lfd f31, 0xa0(r1) /* 800F8BC8 000F5B28 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 /* 800F8BCC 000F5B2C CB C1 00 90 */ lfd f30, 0x90(r1) /* 800F8BD0 000F5B30 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 /* 800F8BD4 000F5B34 CB A1 00 80 */ lfd f29, 0x80(r1) /* 800F8BD8 000F5B38 E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0 /* 800F8BDC 000F5B3C CB 81 00 70 */ lfd f28, 0x70(r1) /* 800F8BE0 000F5B40 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 800F8BE4 000F5B44 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 800F8BE8 000F5B48 83 C1 00 68 */ lwz r30, 0x68(r1) /* 800F8BEC 000F5B4C 7C 08 03 A6 */ mtlr r0 /* 800F8BF0 000F5B50 38 21 00 B0 */ addi r1, r1, 0xb0 /* 800F8BF4 000F5B54 4E 80 00 20 */ blr .global UpdateSpiderBall__10CMorphBallFRC11CFinalInputR13CStateManagerf UpdateSpiderBall__10CMorphBallFRC11CFinalInputR13CStateManagerf: /* 800F8BF8 000F5B58 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F8BFC 000F5B5C 7C 08 02 A6 */ mflr r0 /* 800F8C00 000F5B60 90 01 00 24 */ stw r0, 0x24(r1) /* 800F8C04 000F5B64 DB E1 00 18 */ stfd f31, 0x18(r1) /* 800F8C08 000F5B68 FF E0 08 90 */ fmr f31, f1 /* 800F8C0C 000F5B6C 93 E1 00 14 */ stw r31, 0x14(r1) /* 800F8C10 000F5B70 7C BF 2B 78 */ mr r31, r5 /* 800F8C14 000F5B74 93 C1 00 10 */ stw r30, 0x10(r1) /* 800F8C18 000F5B78 7C 9E 23 78 */ mr r30, r4 /* 800F8C1C 000F5B7C 7F E4 FB 78 */ mr r4, r31 /* 800F8C20 000F5B80 93 A1 00 0C */ stw r29, 0xc(r1) /* 800F8C24 000F5B84 7C 7D 1B 78 */ mr r29, r3 /* 800F8C28 000F5B88 4B FF EF D1 */ bl CheckForSwitchToSpiderBallSwinging__10CMorphBallCFR13CStateManager /* 800F8C2C 000F5B8C 7C 64 1B 78 */ mr r4, r3 /* 800F8C30 000F5B90 7F A3 EB 78 */ mr r3, r29 /* 800F8C34 000F5B94 4B FF E9 71 */ bl SetSpiderBallSwingingState__10CMorphBallFb /* 800F8C38 000F5B98 88 1D 18 BE */ lbz r0, 0x18be(r29) /* 800F8C3C 000F5B9C 28 00 00 00 */ cmplwi r0, 0 /* 800F8C40 000F5BA0 41 82 00 1C */ beq lbl_800F8C5C /* 800F8C44 000F5BA4 FC 20 F8 90 */ fmr f1, f31 /* 800F8C48 000F5BA8 7F A3 EB 78 */ mr r3, r29 /* 800F8C4C 000F5BAC 7F C4 F3 78 */ mr r4, r30 /* 800F8C50 000F5BB0 7F E5 FB 78 */ mr r5, r31 /* 800F8C54 000F5BB4 4B FF FB FD */ bl ApplySpiderBallSwingingForces__10CMorphBallFRC11CFinalInputR13CStateManagerf /* 800F8C58 000F5BB8 48 00 00 18 */ b lbl_800F8C70 lbl_800F8C5C: /* 800F8C5C 000F5BBC FC 20 F8 90 */ fmr f1, f31 /* 800F8C60 000F5BC0 7F A3 EB 78 */ mr r3, r29 /* 800F8C64 000F5BC4 7F C4 F3 78 */ mr r4, r30 /* 800F8C68 000F5BC8 7F E5 FB 78 */ mr r5, r31 /* 800F8C6C 000F5BCC 4B FF F1 05 */ bl ApplySpiderBallRollForces__10CMorphBallFRC11CFinalInputR13CStateManagerf lbl_800F8C70: /* 800F8C70 000F5BD0 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F8C74 000F5BD4 CB E1 00 18 */ lfd f31, 0x18(r1) /* 800F8C78 000F5BD8 83 E1 00 14 */ lwz r31, 0x14(r1) /* 800F8C7C 000F5BDC 83 C1 00 10 */ lwz r30, 0x10(r1) /* 800F8C80 000F5BE0 83 A1 00 0C */ lwz r29, 0xc(r1) /* 800F8C84 000F5BE4 7C 08 03 A6 */ mtlr r0 /* 800F8C88 000F5BE8 38 21 00 20 */ addi r1, r1, 0x20 /* 800F8C8C 000F5BEC 4E 80 00 20 */ blr .global SetDamageTimer__10CMorphBallFf SetDamageTimer__10CMorphBallFf: /* 800F8C90 000F5BF0 D0 23 19 1C */ stfs f1, 0x191c(r3) /* 800F8C94 000F5BF4 4E 80 00 20 */ blr .global IsMovementAllowed__10CMorphBallCFv IsMovementAllowed__10CMorphBallCFv: /* 800F8C98 000F5BF8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800F8C9C 000F5BFC 7C 08 02 A6 */ mflr r0 /* 800F8CA0 000F5C00 90 01 00 14 */ stw r0, 0x14(r1) /* 800F8CA4 000F5C04 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F8CA8 000F5C08 7C 7F 1B 78 */ mr r31, r3 /* 800F8CAC 000F5C0C 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) /* 800F8CB0 000F5C10 88 04 02 28 */ lbz r0, 0x228(r4) /* 800F8CB4 000F5C14 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f /* 800F8CB8 000F5C18 40 82 00 28 */ bne lbl_800F8CE0 /* 800F8CBC 000F5C1C 80 7F 00 00 */ lwz r3, 0(r31) /* 800F8CC0 000F5C20 88 03 03 DC */ lbz r0, 0x3dc(r3) /* 800F8CC4 000F5C24 28 00 00 00 */ cmplwi r0, 0 /* 800F8CC8 000F5C28 40 82 00 10 */ bne lbl_800F8CD8 /* 800F8CCC 000F5C2C 88 03 03 DD */ lbz r0, 0x3dd(r3) /* 800F8CD0 000F5C30 28 00 00 00 */ cmplwi r0, 0 /* 800F8CD4 000F5C34 41 82 00 0C */ beq lbl_800F8CE0 lbl_800F8CD8: /* 800F8CD8 000F5C38 38 60 00 00 */ li r3, 0 /* 800F8CDC 000F5C3C 48 00 00 38 */ b lbl_800F8D14 lbl_800F8CE0: /* 800F8CE0 000F5C40 80 7F 00 00 */ lwz r3, 0(r31) /* 800F8CE4 000F5C44 4B F2 15 31 */ bl IsMorphBallTransitioning__7CPlayerCFv /* 800F8CE8 000F5C48 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F8CEC 000F5C4C 41 82 00 0C */ beq lbl_800F8CF8 /* 800F8CF0 000F5C50 38 60 00 00 */ li r3, 0 /* 800F8CF4 000F5C54 48 00 00 20 */ b lbl_800F8D14 lbl_800F8CF8: /* 800F8CF8 000F5C58 C0 3F 1E 00 */ lfs f1, 0x1e00(r31) /* 800F8CFC 000F5C5C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F8D00 000F5C60 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800F8D04 000F5C64 7C 00 00 26 */ mfcr r0 /* 800F8D08 000F5C68 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f /* 800F8D0C 000F5C6C 7C 00 00 34 */ cntlzw r0, r0 /* 800F8D10 000F5C70 54 03 D9 7E */ srwi r3, r0, 5 lbl_800F8D14: /* 800F8D14 000F5C74 80 01 00 14 */ lwz r0, 0x14(r1) /* 800F8D18 000F5C78 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F8D1C 000F5C7C 7C 08 03 A6 */ mtlr r0 /* 800F8D20 000F5C80 38 21 00 10 */ addi r1, r1, 0x10 /* 800F8D24 000F5C84 4E 80 00 20 */ blr .global ComputeBallMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf ComputeBallMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf: /* 800F8D28 000F5C88 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F8D2C 000F5C8C 7C 08 02 A6 */ mflr r0 /* 800F8D30 000F5C90 90 01 00 24 */ stw r0, 0x24(r1) /* 800F8D34 000F5C94 DB E1 00 18 */ stfd f31, 0x18(r1) /* 800F8D38 000F5C98 FF E0 08 90 */ fmr f31, f1 /* 800F8D3C 000F5C9C 93 E1 00 14 */ stw r31, 0x14(r1) /* 800F8D40 000F5CA0 7C BF 2B 78 */ mr r31, r5 /* 800F8D44 000F5CA4 93 C1 00 10 */ stw r30, 0x10(r1) /* 800F8D48 000F5CA8 7C 9E 23 78 */ mr r30, r4 /* 800F8D4C 000F5CAC 93 A1 00 0C */ stw r29, 0xc(r1) /* 800F8D50 000F5CB0 7C 7D 1B 78 */ mr r29, r3 /* 800F8D54 000F5CB4 4B FF B6 59 */ bl ComputeBoostBallMovement__10CMorphBallFRC11CFinalInputRC13CStateManagerf /* 800F8D58 000F5CB8 FC 20 F8 90 */ fmr f1, f31 /* 800F8D5C 000F5CBC 7F A3 EB 78 */ mr r3, r29 /* 800F8D60 000F5CC0 7F C4 F3 78 */ mr r4, r30 /* 800F8D64 000F5CC4 7F E5 FB 78 */ mr r5, r31 /* 800F8D68 000F5CC8 4B FF DB 11 */ bl ComputeMarioMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf /* 800F8D6C 000F5CCC 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F8D70 000F5CD0 CB E1 00 18 */ lfd f31, 0x18(r1) /* 800F8D74 000F5CD4 83 E1 00 14 */ lwz r31, 0x14(r1) /* 800F8D78 000F5CD8 83 C1 00 10 */ lwz r30, 0x10(r1) /* 800F8D7C 000F5CDC 83 A1 00 0C */ lwz r29, 0xc(r1) /* 800F8D80 000F5CE0 7C 08 03 A6 */ mtlr r0 /* 800F8D84 000F5CE4 38 21 00 20 */ addi r1, r1, 0x20 /* 800F8D88 000F5CE8 4E 80 00 20 */ blr .global ForwardInput__10CMorphBallCFRC11CFinalInput ForwardInput__10CMorphBallCFRC11CFinalInput: /* 800F8D8C 000F5CEC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800F8D90 000F5CF0 7C 08 02 A6 */ mflr r0 /* 800F8D94 000F5CF4 90 01 00 24 */ stw r0, 0x24(r1) /* 800F8D98 000F5CF8 DB E1 00 10 */ stfd f31, 0x10(r1) /* 800F8D9C 000F5CFC F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 /* 800F8DA0 000F5D00 93 E1 00 0C */ stw r31, 0xc(r1) /* 800F8DA4 000F5D04 7C 9F 23 78 */ mr r31, r4 /* 800F8DA8 000F5D08 4B FF FE F1 */ bl IsMovementAllowed__10CMorphBallCFv /* 800F8DAC 000F5D0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800F8DB0 000F5D10 40 82 00 0C */ bne lbl_800F8DBC /* 800F8DB4 000F5D14 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F8DB8 000F5D18 48 00 00 24 */ b lbl_800F8DDC lbl_800F8DBC: /* 800F8DBC 000F5D1C 7F E4 FB 78 */ mr r4, r31 /* 800F8DC0 000F5D20 38 60 00 00 */ li r3, 0 /* 800F8DC4 000F5D24 4B F1 3B 55 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F8DC8 000F5D28 FF E0 08 90 */ fmr f31, f1 /* 800F8DCC 000F5D2C 7F E4 FB 78 */ mr r4, r31 /* 800F8DD0 000F5D30 38 60 00 01 */ li r3, 1 /* 800F8DD4 000F5D34 4B F1 3B 45 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput /* 800F8DD8 000F5D38 EC 3F 08 28 */ fsubs f1, f31, f1 lbl_800F8DDC: /* 800F8DDC 000F5D3C E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 /* 800F8DE0 000F5D40 80 01 00 24 */ lwz r0, 0x24(r1) /* 800F8DE4 000F5D44 CB E1 00 10 */ lfd f31, 0x10(r1) /* 800F8DE8 000F5D48 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800F8DEC 000F5D4C 7C 08 03 A6 */ mtlr r0 /* 800F8DF0 000F5D50 38 21 00 20 */ addi r1, r1, 0x20 /* 800F8DF4 000F5D54 4E 80 00 20 */ blr .global GetBallTouchRadius__10CMorphBallCFv GetBallTouchRadius__10CMorphBallCFv: /* 800F8DF8 000F5D58 80 6D A1 1C */ lwz r3, gpTweakBall@sda21(r13) /* 800F8DFC 000F5D5C C0 23 02 04 */ lfs f1, 0x204(r3) /* 800F8E00 000F5D60 4E 80 00 20 */ blr .global GetBallRadius__10CMorphBallCFv GetBallRadius__10CMorphBallCFv: /* 800F8E04 000F5D64 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) /* 800F8E08 000F5D68 C0 23 02 7C */ lfs f1, 0x27c(r3) /* 800F8E0C 000F5D6C 4E 80 00 20 */ blr .global sub_800f8e10 sub_800f8e10: /* 800F8E10 000F5D70 94 21 FF D0 */ stwu r1, -0x30(r1) /* 800F8E14 000F5D74 7C 08 02 A6 */ mflr r0 /* 800F8E18 000F5D78 90 01 00 34 */ stw r0, 0x34(r1) /* 800F8E1C 000F5D7C 93 E1 00 2C */ stw r31, 0x2c(r1) /* 800F8E20 000F5D80 7C 9F 23 78 */ mr r31, r4 /* 800F8E24 000F5D84 93 C1 00 28 */ stw r30, 0x28(r1) /* 800F8E28 000F5D88 7C 7E 1B 79 */ or. r30, r3, r3 /* 800F8E2C 000F5D8C 93 A1 00 24 */ stw r29, 0x24(r1) /* 800F8E30 000F5D90 93 81 00 20 */ stw r28, 0x20(r1) /* 800F8E34 000F5D94 41 82 07 1C */ beq lbl_800F9550 /* 800F8E38 000F5D98 34 1E 1E 50 */ addic. r0, r30, 0x1e50 /* 800F8E3C 000F5D9C 41 82 00 10 */ beq lbl_800F8E4C /* 800F8E40 000F5DA0 80 7E 1E 50 */ lwz r3, 0x1e50(r30) /* 800F8E44 000F5DA4 38 80 00 01 */ li r4, 1 /* 800F8E48 000F5DA8 48 19 DC 1D */ bl __dt__16CMorphBallShadowFv lbl_800F8E4C: /* 800F8E4C 000F5DAC 34 1E 1D 10 */ addic. r0, r30, 0x1d10 /* 800F8E50 000F5DB0 41 82 00 60 */ beq lbl_800F8EB0 /* 800F8E54 000F5DB4 34 1E 1D 10 */ addic. r0, r30, 0x1d10 /* 800F8E58 000F5DB8 41 82 00 58 */ beq lbl_800F8EB0 /* 800F8E5C 000F5DBC 80 BE 1D 10 */ lwz r5, 0x1d10(r30) /* 800F8E60 000F5DC0 38 60 00 00 */ li r3, 0 /* 800F8E64 000F5DC4 2C 05 00 00 */ cmpwi r5, 0 /* 800F8E68 000F5DC8 40 81 00 40 */ ble lbl_800F8EA8 /* 800F8E6C 000F5DCC 2C 05 00 08 */ cmpwi r5, 8 /* 800F8E70 000F5DD0 38 85 FF F8 */ addi r4, r5, -8 /* 800F8E74 000F5DD4 40 81 00 20 */ ble lbl_800F8E94 /* 800F8E78 000F5DD8 38 04 00 07 */ addi r0, r4, 7 /* 800F8E7C 000F5DDC 54 00 E8 FE */ srwi r0, r0, 3 /* 800F8E80 000F5DE0 7C 09 03 A6 */ mtctr r0 /* 800F8E84 000F5DE4 2C 04 00 00 */ cmpwi r4, 0 /* 800F8E88 000F5DE8 40 81 00 0C */ ble lbl_800F8E94 lbl_800F8E8C: /* 800F8E8C 000F5DEC 38 63 00 08 */ addi r3, r3, 8 /* 800F8E90 000F5DF0 42 00 FF FC */ bdnz lbl_800F8E8C lbl_800F8E94: /* 800F8E94 000F5DF4 7C 03 28 50 */ subf r0, r3, r5 /* 800F8E98 000F5DF8 7C 09 03 A6 */ mtctr r0 /* 800F8E9C 000F5DFC 7C 03 28 00 */ cmpw r3, r5 /* 800F8EA0 000F5E00 40 80 00 08 */ bge lbl_800F8EA8 lbl_800F8EA4: /* 800F8EA4 000F5E04 42 00 00 00 */ bdnz lbl_800F8EA4 lbl_800F8EA8: /* 800F8EA8 000F5E08 38 00 00 00 */ li r0, 0 /* 800F8EAC 000F5E0C 90 1E 1D 10 */ stw r0, 0x1d10(r30) lbl_800F8EB0: /* 800F8EB0 000F5E10 34 1E 1C D0 */ addic. r0, r30, 0x1cd0 /* 800F8EB4 000F5E14 41 82 00 60 */ beq lbl_800F8F14 /* 800F8EB8 000F5E18 34 1E 1C D0 */ addic. r0, r30, 0x1cd0 /* 800F8EBC 000F5E1C 41 82 00 58 */ beq lbl_800F8F14 /* 800F8EC0 000F5E20 80 BE 1C D0 */ lwz r5, 0x1cd0(r30) /* 800F8EC4 000F5E24 38 60 00 00 */ li r3, 0 /* 800F8EC8 000F5E28 2C 05 00 00 */ cmpwi r5, 0 /* 800F8ECC 000F5E2C 40 81 00 40 */ ble lbl_800F8F0C /* 800F8ED0 000F5E30 2C 05 00 08 */ cmpwi r5, 8 /* 800F8ED4 000F5E34 38 85 FF F8 */ addi r4, r5, -8 /* 800F8ED8 000F5E38 40 81 00 20 */ ble lbl_800F8EF8 /* 800F8EDC 000F5E3C 38 04 00 07 */ addi r0, r4, 7 /* 800F8EE0 000F5E40 54 00 E8 FE */ srwi r0, r0, 3 /* 800F8EE4 000F5E44 7C 09 03 A6 */ mtctr r0 /* 800F8EE8 000F5E48 2C 04 00 00 */ cmpwi r4, 0 /* 800F8EEC 000F5E4C 40 81 00 0C */ ble lbl_800F8EF8 lbl_800F8EF0: /* 800F8EF0 000F5E50 38 63 00 08 */ addi r3, r3, 8 /* 800F8EF4 000F5E54 42 00 FF FC */ bdnz lbl_800F8EF0 lbl_800F8EF8: /* 800F8EF8 000F5E58 7C 03 28 50 */ subf r0, r3, r5 /* 800F8EFC 000F5E5C 7C 09 03 A6 */ mtctr r0 /* 800F8F00 000F5E60 7C 03 28 00 */ cmpw r3, r5 /* 800F8F04 000F5E64 40 80 00 08 */ bge lbl_800F8F0C lbl_800F8F08: /* 800F8F08 000F5E68 42 00 00 00 */ bdnz lbl_800F8F08 lbl_800F8F0C: /* 800F8F0C 000F5E6C 38 00 00 00 */ li r0, 0 /* 800F8F10 000F5E70 90 1E 1C D0 */ stw r0, 0x1cd0(r30) lbl_800F8F14: /* 800F8F14 000F5E74 34 1E 1C 90 */ addic. r0, r30, 0x1c90 /* 800F8F18 000F5E78 41 82 00 60 */ beq lbl_800F8F78 /* 800F8F1C 000F5E7C 34 1E 1C 90 */ addic. r0, r30, 0x1c90 /* 800F8F20 000F5E80 41 82 00 58 */ beq lbl_800F8F78 /* 800F8F24 000F5E84 80 BE 1C 90 */ lwz r5, 0x1c90(r30) /* 800F8F28 000F5E88 38 60 00 00 */ li r3, 0 /* 800F8F2C 000F5E8C 2C 05 00 00 */ cmpwi r5, 0 /* 800F8F30 000F5E90 40 81 00 40 */ ble lbl_800F8F70 /* 800F8F34 000F5E94 2C 05 00 08 */ cmpwi r5, 8 /* 800F8F38 000F5E98 38 85 FF F8 */ addi r4, r5, -8 /* 800F8F3C 000F5E9C 40 81 00 20 */ ble lbl_800F8F5C /* 800F8F40 000F5EA0 38 04 00 07 */ addi r0, r4, 7 /* 800F8F44 000F5EA4 54 00 E8 FE */ srwi r0, r0, 3 /* 800F8F48 000F5EA8 7C 09 03 A6 */ mtctr r0 /* 800F8F4C 000F5EAC 2C 04 00 00 */ cmpwi r4, 0 /* 800F8F50 000F5EB0 40 81 00 0C */ ble lbl_800F8F5C lbl_800F8F54: /* 800F8F54 000F5EB4 38 63 00 08 */ addi r3, r3, 8 /* 800F8F58 000F5EB8 42 00 FF FC */ bdnz lbl_800F8F54 lbl_800F8F5C: /* 800F8F5C 000F5EBC 7C 03 28 50 */ subf r0, r3, r5 /* 800F8F60 000F5EC0 7C 09 03 A6 */ mtctr r0 /* 800F8F64 000F5EC4 7C 03 28 00 */ cmpw r3, r5 /* 800F8F68 000F5EC8 40 80 00 08 */ bge lbl_800F8F70 lbl_800F8F6C: /* 800F8F6C 000F5ECC 42 00 00 00 */ bdnz lbl_800F8F6C lbl_800F8F70: /* 800F8F70 000F5ED0 38 00 00 00 */ li r0, 0 /* 800F8F74 000F5ED4 90 1E 1C 90 */ stw r0, 0x1c90(r30) lbl_800F8F78: /* 800F8F78 000F5ED8 34 1E 1C 3C */ addic. r0, r30, 0x1c3c /* 800F8F7C 000F5EDC 41 82 00 60 */ beq lbl_800F8FDC /* 800F8F80 000F5EE0 34 1E 1C 3C */ addic. r0, r30, 0x1c3c /* 800F8F84 000F5EE4 41 82 00 58 */ beq lbl_800F8FDC /* 800F8F88 000F5EE8 80 BE 1C 3C */ lwz r5, 0x1c3c(r30) /* 800F8F8C 000F5EEC 38 60 00 00 */ li r3, 0 /* 800F8F90 000F5EF0 2C 05 00 00 */ cmpwi r5, 0 /* 800F8F94 000F5EF4 40 81 00 40 */ ble lbl_800F8FD4 /* 800F8F98 000F5EF8 2C 05 00 08 */ cmpwi r5, 8 /* 800F8F9C 000F5EFC 38 85 FF F8 */ addi r4, r5, -8 /* 800F8FA0 000F5F00 40 81 00 20 */ ble lbl_800F8FC0 /* 800F8FA4 000F5F04 38 04 00 07 */ addi r0, r4, 7 /* 800F8FA8 000F5F08 54 00 E8 FE */ srwi r0, r0, 3 /* 800F8FAC 000F5F0C 7C 09 03 A6 */ mtctr r0 /* 800F8FB0 000F5F10 2C 04 00 00 */ cmpwi r4, 0 /* 800F8FB4 000F5F14 40 81 00 0C */ ble lbl_800F8FC0 lbl_800F8FB8: /* 800F8FB8 000F5F18 38 63 00 08 */ addi r3, r3, 8 /* 800F8FBC 000F5F1C 42 00 FF FC */ bdnz lbl_800F8FB8 lbl_800F8FC0: /* 800F8FC0 000F5F20 7C 03 28 50 */ subf r0, r3, r5 /* 800F8FC4 000F5F24 7C 09 03 A6 */ mtctr r0 /* 800F8FC8 000F5F28 7C 03 28 00 */ cmpw r3, r5 /* 800F8FCC 000F5F2C 40 80 00 08 */ bge lbl_800F8FD4 lbl_800F8FD0: /* 800F8FD0 000F5F30 42 00 00 00 */ bdnz lbl_800F8FD0 lbl_800F8FD4: /* 800F8FD4 000F5F34 38 00 00 00 */ li r0, 0 /* 800F8FD8 000F5F38 90 1E 1C 3C */ stw r0, 0x1c3c(r30) lbl_800F8FDC: /* 800F8FDC 000F5F3C 38 7E 1C 1C */ addi r3, r30, 0x1c1c /* 800F8FE0 000F5F40 38 80 FF FF */ li r4, -1 /* 800F8FE4 000F5F44 4B F4 9F 95 */ bl "__dt__Q24rstl34single_ptr<20CRainSplashGenerator>" /* 800F8FE8 000F5F48 34 1E 1C 18 */ addic. r0, r30, 0x1c18 /* 800F8FEC 000F5F4C 41 82 00 10 */ beq lbl_800F8FFC /* 800F8FF0 000F5F50 80 7E 1C 18 */ lwz r3, 0x1c18(r30) /* 800F8FF4 000F5F54 38 80 00 01 */ li r4, 1 /* 800F8FF8 000F5F58 48 00 C0 DD */ bl __dt__12CActorLightsFv lbl_800F8FFC: /* 800F8FFC 000F5F5C 34 1E 1C 14 */ addic. r0, r30, 0x1c14 /* 800F9000 000F5F60 41 82 00 10 */ beq lbl_800F9010 /* 800F9004 000F5F64 80 7E 1C 14 */ lwz r3, 0x1c14(r30) /* 800F9008 000F5F68 38 80 00 01 */ li r4, 1 /* 800F900C 000F5F6C 48 01 8B 49 */ bl __dt__12CWorldShadowFv lbl_800F9010: /* 800F9010 000F5F70 34 1E 1B C8 */ addic. r0, r30, 0x1bc8 /* 800F9014 000F5F74 41 82 00 60 */ beq lbl_800F9074 /* 800F9018 000F5F78 3B 9E 1B CC */ addi r28, r30, 0x1bcc /* 800F901C 000F5F7C 3B A0 00 00 */ li r29, 0 /* 800F9020 000F5F80 48 00 00 40 */ b lbl_800F9060 lbl_800F9024: /* 800F9024 000F5F84 28 1C 00 00 */ cmplwi r28, 0 /* 800F9028 000F5F88 41 82 00 30 */ beq lbl_800F9058 /* 800F902C 000F5F8C 88 1C 00 00 */ lbz r0, 0(r28) /* 800F9030 000F5F90 28 00 00 00 */ cmplwi r0, 0 /* 800F9034 000F5F94 41 82 00 24 */ beq lbl_800F9058 /* 800F9038 000F5F98 80 7C 00 04 */ lwz r3, 4(r28) /* 800F903C 000F5F9C 28 03 00 00 */ cmplwi r3, 0 /* 800F9040 000F5FA0 41 82 00 18 */ beq lbl_800F9058 /* 800F9044 000F5FA4 81 83 00 00 */ lwz r12, 0(r3) /* 800F9048 000F5FA8 38 80 00 01 */ li r4, 1 /* 800F904C 000F5FAC 81 8C 00 08 */ lwz r12, 8(r12) /* 800F9050 000F5FB0 7D 89 03 A6 */ mtctr r12 /* 800F9054 000F5FB4 4E 80 04 21 */ bctrl lbl_800F9058: /* 800F9058 000F5FB8 3B 9C 00 08 */ addi r28, r28, 8 /* 800F905C 000F5FBC 3B BD 00 01 */ addi r29, r29, 1 lbl_800F9060: /* 800F9060 000F5FC0 80 1E 1B C8 */ lwz r0, 0x1bc8(r30) /* 800F9064 000F5FC4 7C 1D 00 00 */ cmpw r29, r0 /* 800F9068 000F5FC8 41 80 FF BC */ blt lbl_800F9024 /* 800F906C 000F5FCC 38 00 00 00 */ li r0, 0 /* 800F9070 000F5FD0 90 1E 1B C8 */ stw r0, 0x1bc8(r30) lbl_800F9074: /* 800F9074 000F5FD4 34 1E 1B 84 */ addic. r0, r30, 0x1b84 /* 800F9078 000F5FD8 41 82 00 40 */ beq lbl_800F90B8 /* 800F907C 000F5FDC 3B 9E 1B 88 */ addi r28, r30, 0x1b88 /* 800F9080 000F5FE0 3B A0 00 00 */ li r29, 0 /* 800F9084 000F5FE4 48 00 00 20 */ b lbl_800F90A4 lbl_800F9088: /* 800F9088 000F5FE8 28 1C 00 00 */ cmplwi r28, 0 /* 800F908C 000F5FEC 41 82 00 10 */ beq lbl_800F909C /* 800F9090 000F5FF0 7F 83 E3 78 */ mr r3, r28 /* 800F9094 000F5FF4 38 80 00 00 */ li r4, 0 /* 800F9098 000F5FF8 48 24 7D A9 */ bl __dt__6CTokenFv lbl_800F909C: /* 800F909C 000F5FFC 3B 9C 00 08 */ addi r28, r28, 8 /* 800F90A0 000F6000 3B BD 00 01 */ addi r29, r29, 1 lbl_800F90A4: /* 800F90A4 000F6004 80 1E 1B 84 */ lwz r0, 0x1b84(r30) /* 800F90A8 000F6008 7C 1D 00 00 */ cmpw r29, r0 /* 800F90AC 000F600C 41 80 FF DC */ blt lbl_800F9088 /* 800F90B0 000F6010 38 00 00 00 */ li r0, 0 /* 800F90B4 000F6014 90 1E 1B 84 */ stw r0, 0x1b84(r30) lbl_800F90B8: /* 800F90B8 000F6018 38 7E 1B 68 */ addi r3, r30, 0x1b68 /* 800F90BC 000F601C 38 80 FF FF */ li r4, -1 /* 800F90C0 000F6020 48 00 13 F5 */ bl sub_800fa4b4 /* 800F90C4 000F6024 34 1E 19 E4 */ addic. r0, r30, 0x19e4 /* 800F90C8 000F6028 41 82 00 64 */ beq lbl_800F912C /* 800F90CC 000F602C 3B 9E 19 E8 */ addi r28, r30, 0x19e8 /* 800F90D0 000F6030 3B A0 00 00 */ li r29, 0 /* 800F90D4 000F6034 48 00 00 44 */ b lbl_800F9118 lbl_800F90D8: /* 800F90D8 000F6038 28 1C 00 00 */ cmplwi r28, 0 /* 800F90DC 000F603C 41 82 00 34 */ beq lbl_800F9110 /* 800F90E0 000F6040 41 82 00 30 */ beq lbl_800F9110 /* 800F90E4 000F6044 88 1C 00 00 */ lbz r0, 0(r28) /* 800F90E8 000F6048 28 00 00 00 */ cmplwi r0, 0 /* 800F90EC 000F604C 41 82 00 24 */ beq lbl_800F9110 /* 800F90F0 000F6050 80 7C 00 04 */ lwz r3, 4(r28) /* 800F90F4 000F6054 28 03 00 00 */ cmplwi r3, 0 /* 800F90F8 000F6058 41 82 00 18 */ beq lbl_800F9110 /* 800F90FC 000F605C 81 83 00 00 */ lwz r12, 0(r3) /* 800F9100 000F6060 38 80 00 01 */ li r4, 1 /* 800F9104 000F6064 81 8C 00 08 */ lwz r12, 8(r12) /* 800F9108 000F6068 7D 89 03 A6 */ mtctr r12 /* 800F910C 000F606C 4E 80 04 21 */ bctrl lbl_800F9110: /* 800F9110 000F6070 3B 9C 00 0C */ addi r28, r28, 0xc /* 800F9114 000F6074 3B BD 00 01 */ addi r29, r29, 1 lbl_800F9118: /* 800F9118 000F6078 80 1E 19 E4 */ lwz r0, 0x19e4(r30) /* 800F911C 000F607C 7C 1D 00 00 */ cmpw r29, r0 /* 800F9120 000F6080 41 80 FF B8 */ blt lbl_800F90D8 /* 800F9124 000F6084 38 00 00 00 */ li r0, 0 /* 800F9128 000F6088 90 1E 19 E4 */ stw r0, 0x19e4(r30) lbl_800F912C: /* 800F912C 000F608C 34 1E 19 E0 */ addic. r0, r30, 0x19e0 /* 800F9130 000F6090 41 82 00 24 */ beq lbl_800F9154 /* 800F9134 000F6094 80 7E 19 E0 */ lwz r3, 0x19e0(r30) /* 800F9138 000F6098 28 03 00 00 */ cmplwi r3, 0 /* 800F913C 000F609C 41 82 00 18 */ beq lbl_800F9154 /* 800F9140 000F60A0 81 83 00 00 */ lwz r12, 0(r3) /* 800F9144 000F60A4 38 80 00 01 */ li r4, 1 /* 800F9148 000F60A8 81 8C 00 08 */ lwz r12, 8(r12) /* 800F914C 000F60AC 7D 89 03 A6 */ mtctr r12 /* 800F9150 000F60B0 4E 80 04 21 */ bctrl lbl_800F9154: /* 800F9154 000F60B4 34 1E 19 DC */ addic. r0, r30, 0x19dc /* 800F9158 000F60B8 41 82 00 24 */ beq lbl_800F917C /* 800F915C 000F60BC 80 7E 19 DC */ lwz r3, 0x19dc(r30) /* 800F9160 000F60C0 28 03 00 00 */ cmplwi r3, 0 /* 800F9164 000F60C4 41 82 00 18 */ beq lbl_800F917C /* 800F9168 000F60C8 81 83 00 00 */ lwz r12, 0(r3) /* 800F916C 000F60CC 38 80 00 01 */ li r4, 1 /* 800F9170 000F60D0 81 8C 00 08 */ lwz r12, 8(r12) /* 800F9174 000F60D4 7D 89 03 A6 */ mtctr r12 /* 800F9178 000F60D8 4E 80 04 21 */ bctrl lbl_800F917C: /* 800F917C 000F60DC 34 1E 19 D8 */ addic. r0, r30, 0x19d8 /* 800F9180 000F60E0 41 82 00 24 */ beq lbl_800F91A4 /* 800F9184 000F60E4 80 7E 19 D8 */ lwz r3, 0x19d8(r30) /* 800F9188 000F60E8 28 03 00 00 */ cmplwi r3, 0 /* 800F918C 000F60EC 41 82 00 18 */ beq lbl_800F91A4 /* 800F9190 000F60F0 81 83 00 00 */ lwz r12, 0(r3) /* 800F9194 000F60F4 38 80 00 01 */ li r4, 1 /* 800F9198 000F60F8 81 8C 00 08 */ lwz r12, 8(r12) /* 800F919C 000F60FC 7D 89 03 A6 */ mtctr r12 /* 800F91A0 000F6100 4E 80 04 21 */ bctrl lbl_800F91A4: /* 800F91A4 000F6104 34 1E 19 D4 */ addic. r0, r30, 0x19d4 /* 800F91A8 000F6108 41 82 00 24 */ beq lbl_800F91CC /* 800F91AC 000F610C 80 7E 19 D4 */ lwz r3, 0x19d4(r30) /* 800F91B0 000F6110 28 03 00 00 */ cmplwi r3, 0 /* 800F91B4 000F6114 41 82 00 18 */ beq lbl_800F91CC /* 800F91B8 000F6118 81 83 00 00 */ lwz r12, 0(r3) /* 800F91BC 000F611C 38 80 00 01 */ li r4, 1 /* 800F91C0 000F6120 81 8C 00 08 */ lwz r12, 8(r12) /* 800F91C4 000F6124 7D 89 03 A6 */ mtctr r12 /* 800F91C8 000F6128 4E 80 04 21 */ bctrl lbl_800F91CC: /* 800F91CC 000F612C 34 1E 19 D0 */ addic. r0, r30, 0x19d0 /* 800F91D0 000F6130 41 82 00 24 */ beq lbl_800F91F4 /* 800F91D4 000F6134 80 7E 19 D0 */ lwz r3, 0x19d0(r30) /* 800F91D8 000F6138 28 03 00 00 */ cmplwi r3, 0 /* 800F91DC 000F613C 41 82 00 18 */ beq lbl_800F91F4 /* 800F91E0 000F6140 81 83 00 00 */ lwz r12, 0(r3) /* 800F91E4 000F6144 38 80 00 01 */ li r4, 1 /* 800F91E8 000F6148 81 8C 00 08 */ lwz r12, 8(r12) /* 800F91EC 000F614C 7D 89 03 A6 */ mtctr r12 /* 800F91F0 000F6150 4E 80 04 21 */ bctrl lbl_800F91F4: /* 800F91F4 000F6154 34 1E 19 CC */ addic. r0, r30, 0x19cc /* 800F91F8 000F6158 41 82 00 24 */ beq lbl_800F921C /* 800F91FC 000F615C 80 7E 19 CC */ lwz r3, 0x19cc(r30) /* 800F9200 000F6160 28 03 00 00 */ cmplwi r3, 0 /* 800F9204 000F6164 41 82 00 18 */ beq lbl_800F921C /* 800F9208 000F6168 81 83 00 00 */ lwz r12, 0(r3) /* 800F920C 000F616C 38 80 00 01 */ li r4, 1 /* 800F9210 000F6170 81 8C 00 08 */ lwz r12, 8(r12) /* 800F9214 000F6174 7D 89 03 A6 */ mtctr r12 /* 800F9218 000F6178 4E 80 04 21 */ bctrl lbl_800F921C: /* 800F921C 000F617C 34 1E 19 C8 */ addic. r0, r30, 0x19c8 /* 800F9220 000F6180 41 82 00 24 */ beq lbl_800F9244 /* 800F9224 000F6184 80 7E 19 C8 */ lwz r3, 0x19c8(r30) /* 800F9228 000F6188 28 03 00 00 */ cmplwi r3, 0 /* 800F922C 000F618C 41 82 00 18 */ beq lbl_800F9244 /* 800F9230 000F6190 81 83 00 00 */ lwz r12, 0(r3) /* 800F9234 000F6194 38 80 00 01 */ li r4, 1 /* 800F9238 000F6198 81 8C 00 08 */ lwz r12, 8(r12) /* 800F923C 000F619C 7D 89 03 A6 */ mtctr r12 /* 800F9240 000F61A0 4E 80 04 21 */ bctrl lbl_800F9244: /* 800F9244 000F61A4 34 1E 19 C4 */ addic. r0, r30, 0x19c4 /* 800F9248 000F61A8 41 82 00 24 */ beq lbl_800F926C /* 800F924C 000F61AC 80 7E 19 C4 */ lwz r3, 0x19c4(r30) /* 800F9250 000F61B0 28 03 00 00 */ cmplwi r3, 0 /* 800F9254 000F61B4 41 82 00 18 */ beq lbl_800F926C /* 800F9258 000F61B8 81 83 00 00 */ lwz r12, 0(r3) /* 800F925C 000F61BC 38 80 00 01 */ li r4, 1 /* 800F9260 000F61C0 81 8C 00 08 */ lwz r12, 8(r12) /* 800F9264 000F61C4 7D 89 03 A6 */ mtctr r12 /* 800F9268 000F61C8 4E 80 04 21 */ bctrl lbl_800F926C: /* 800F926C 000F61CC 34 1E 19 C0 */ addic. r0, r30, 0x19c0 /* 800F9270 000F61D0 41 82 00 24 */ beq lbl_800F9294 /* 800F9274 000F61D4 80 7E 19 C0 */ lwz r3, 0x19c0(r30) /* 800F9278 000F61D8 28 03 00 00 */ cmplwi r3, 0 /* 800F927C 000F61DC 41 82 00 18 */ beq lbl_800F9294 /* 800F9280 000F61E0 81 83 00 00 */ lwz r12, 0(r3) /* 800F9284 000F61E4 38 80 00 01 */ li r4, 1 /* 800F9288 000F61E8 81 8C 00 08 */ lwz r12, 8(r12) /* 800F928C 000F61EC 7D 89 03 A6 */ mtctr r12 /* 800F9290 000F61F0 4E 80 04 21 */ bctrl lbl_800F9294: /* 800F9294 000F61F4 34 1E 19 BC */ addic. r0, r30, 0x19bc /* 800F9298 000F61F8 41 82 00 24 */ beq lbl_800F92BC /* 800F929C 000F61FC 80 7E 19 BC */ lwz r3, 0x19bc(r30) /* 800F92A0 000F6200 28 03 00 00 */ cmplwi r3, 0 /* 800F92A4 000F6204 41 82 00 18 */ beq lbl_800F92BC /* 800F92A8 000F6208 81 83 00 00 */ lwz r12, 0(r3) /* 800F92AC 000F620C 38 80 00 01 */ li r4, 1 /* 800F92B0 000F6210 81 8C 00 08 */ lwz r12, 8(r12) /* 800F92B4 000F6214 7D 89 03 A6 */ mtctr r12 /* 800F92B8 000F6218 4E 80 04 21 */ bctrl lbl_800F92BC: /* 800F92BC 000F621C 34 1E 19 B8 */ addic. r0, r30, 0x19b8 /* 800F92C0 000F6220 41 82 00 24 */ beq lbl_800F92E4 /* 800F92C4 000F6224 80 7E 19 B8 */ lwz r3, 0x19b8(r30) /* 800F92C8 000F6228 28 03 00 00 */ cmplwi r3, 0 /* 800F92CC 000F622C 41 82 00 18 */ beq lbl_800F92E4 /* 800F92D0 000F6230 81 83 00 00 */ lwz r12, 0(r3) /* 800F92D4 000F6234 38 80 00 01 */ li r4, 1 /* 800F92D8 000F6238 81 8C 00 08 */ lwz r12, 8(r12) /* 800F92DC 000F623C 7D 89 03 A6 */ mtctr r12 /* 800F92E0 000F6240 4E 80 04 21 */ bctrl lbl_800F92E4: /* 800F92E4 000F6244 34 1E 19 B0 */ addic. r0, r30, 0x19b0 /* 800F92E8 000F6248 41 82 00 10 */ beq lbl_800F92F8 /* 800F92EC 000F624C 38 7E 19 B0 */ addi r3, r30, 0x19b0 /* 800F92F0 000F6250 38 80 00 00 */ li r4, 0 /* 800F92F4 000F6254 48 24 7B 4D */ bl __dt__6CTokenFv lbl_800F92F8: /* 800F92F8 000F6258 34 1E 19 A8 */ addic. r0, r30, 0x19a8 /* 800F92FC 000F625C 41 82 00 10 */ beq lbl_800F930C /* 800F9300 000F6260 38 7E 19 A8 */ addi r3, r30, 0x19a8 /* 800F9304 000F6264 38 80 00 00 */ li r4, 0 /* 800F9308 000F6268 48 24 7B 39 */ bl __dt__6CTokenFv lbl_800F930C: /* 800F930C 000F626C 34 1E 19 A0 */ addic. r0, r30, 0x19a0 /* 800F9310 000F6270 41 82 00 10 */ beq lbl_800F9320 /* 800F9314 000F6274 38 7E 19 A0 */ addi r3, r30, 0x19a0 /* 800F9318 000F6278 38 80 00 00 */ li r4, 0 /* 800F931C 000F627C 48 24 7B 25 */ bl __dt__6CTokenFv lbl_800F9320: /* 800F9320 000F6280 34 1E 19 98 */ addic. r0, r30, 0x1998 /* 800F9324 000F6284 41 82 00 10 */ beq lbl_800F9334 /* 800F9328 000F6288 38 7E 19 98 */ addi r3, r30, 0x1998 /* 800F932C 000F628C 38 80 00 00 */ li r4, 0 /* 800F9330 000F6290 48 24 7B 11 */ bl __dt__6CTokenFv lbl_800F9334: /* 800F9334 000F6294 34 1E 19 90 */ addic. r0, r30, 0x1990 /* 800F9338 000F6298 41 82 00 10 */ beq lbl_800F9348 /* 800F933C 000F629C 38 7E 19 90 */ addi r3, r30, 0x1990 /* 800F9340 000F62A0 38 80 00 00 */ li r4, 0 /* 800F9344 000F62A4 48 24 7A FD */ bl __dt__6CTokenFv lbl_800F9348: /* 800F9348 000F62A8 34 1E 19 88 */ addic. r0, r30, 0x1988 /* 800F934C 000F62AC 41 82 00 10 */ beq lbl_800F935C /* 800F9350 000F62B0 38 7E 19 88 */ addi r3, r30, 0x1988 /* 800F9354 000F62B4 38 80 00 00 */ li r4, 0 /* 800F9358 000F62B8 48 24 7A E9 */ bl __dt__6CTokenFv lbl_800F935C: /* 800F935C 000F62BC 34 1E 19 80 */ addic. r0, r30, 0x1980 /* 800F9360 000F62C0 41 82 00 10 */ beq lbl_800F9370 /* 800F9364 000F62C4 38 7E 19 80 */ addi r3, r30, 0x1980 /* 800F9368 000F62C8 38 80 00 00 */ li r4, 0 /* 800F936C 000F62CC 48 24 7A D5 */ bl __dt__6CTokenFv lbl_800F9370: /* 800F9370 000F62D0 34 1E 19 78 */ addic. r0, r30, 0x1978 /* 800F9374 000F62D4 41 82 00 10 */ beq lbl_800F9384 /* 800F9378 000F62D8 38 7E 19 78 */ addi r3, r30, 0x1978 /* 800F937C 000F62DC 38 80 00 00 */ li r4, 0 /* 800F9380 000F62E0 48 24 7A C1 */ bl __dt__6CTokenFv lbl_800F9384: /* 800F9384 000F62E4 34 1E 19 70 */ addic. r0, r30, 0x1970 /* 800F9388 000F62E8 41 82 00 10 */ beq lbl_800F9398 /* 800F938C 000F62EC 38 7E 19 70 */ addi r3, r30, 0x1970 /* 800F9390 000F62F0 38 80 00 00 */ li r4, 0 /* 800F9394 000F62F4 48 24 7A AD */ bl __dt__6CTokenFv lbl_800F9398: /* 800F9398 000F62F8 34 1E 19 68 */ addic. r0, r30, 0x1968 /* 800F939C 000F62FC 41 82 00 10 */ beq lbl_800F93AC /* 800F93A0 000F6300 38 7E 19 68 */ addi r3, r30, 0x1968 /* 800F93A4 000F6304 38 80 00 00 */ li r4, 0 /* 800F93A8 000F6308 48 24 7A 99 */ bl __dt__6CTokenFv lbl_800F93AC: /* 800F93AC 000F630C 34 1E 19 58 */ addic. r0, r30, 0x1958 /* 800F93B0 000F6310 41 82 00 50 */ beq lbl_800F9400 /* 800F93B4 000F6314 80 1E 19 5C */ lwz r0, 0x195c(r30) /* 800F93B8 000F6318 83 9E 19 64 */ lwz r28, 0x1964(r30) /* 800F93BC 000F631C 54 00 18 38 */ slwi r0, r0, 3 /* 800F93C0 000F6320 7F BC 02 14 */ add r29, r28, r0 /* 800F93C4 000F6324 93 81 00 0C */ stw r28, 0xc(r1) /* 800F93C8 000F6328 93 A1 00 14 */ stw r29, 0x14(r1) /* 800F93CC 000F632C 93 A1 00 10 */ stw r29, 0x10(r1) /* 800F93D0 000F6330 93 81 00 08 */ stw r28, 8(r1) /* 800F93D4 000F6334 48 00 00 14 */ b lbl_800F93E8 lbl_800F93D8: /* 800F93D8 000F6338 7F 83 E3 78 */ mr r3, r28 /* 800F93DC 000F633C 38 80 FF FF */ li r4, -1 /* 800F93E0 000F6340 48 24 7A 61 */ bl __dt__6CTokenFv /* 800F93E4 000F6344 3B 9C 00 08 */ addi r28, r28, 8 lbl_800F93E8: /* 800F93E8 000F6348 7C 1C E8 40 */ cmplw r28, r29 /* 800F93EC 000F634C 40 82 FF EC */ bne lbl_800F93D8 /* 800F93F0 000F6350 80 7E 19 64 */ lwz r3, 0x1964(r30) /* 800F93F4 000F6354 28 03 00 00 */ cmplwi r3, 0 /* 800F93F8 000F6358 41 82 00 08 */ beq lbl_800F9400 /* 800F93FC 000F635C 48 21 C5 35 */ bl Free__7CMemoryFPCv lbl_800F9400: /* 800F9400 000F6360 34 1E 0C 78 */ addic. r0, r30, 0xc78 /* 800F9404 000F6364 41 82 00 60 */ beq lbl_800F9464 /* 800F9408 000F6368 34 1E 0C 78 */ addic. r0, r30, 0xc78 /* 800F940C 000F636C 41 82 00 58 */ beq lbl_800F9464 /* 800F9410 000F6370 80 BE 0C 78 */ lwz r5, 0xc78(r30) /* 800F9414 000F6374 38 60 00 00 */ li r3, 0 /* 800F9418 000F6378 2C 05 00 00 */ cmpwi r5, 0 /* 800F941C 000F637C 40 81 00 40 */ ble lbl_800F945C /* 800F9420 000F6380 2C 05 00 08 */ cmpwi r5, 8 /* 800F9424 000F6384 38 85 FF F8 */ addi r4, r5, -8 /* 800F9428 000F6388 40 81 00 20 */ ble lbl_800F9448 /* 800F942C 000F638C 38 04 00 07 */ addi r0, r4, 7 /* 800F9430 000F6390 54 00 E8 FE */ srwi r0, r0, 3 /* 800F9434 000F6394 7C 09 03 A6 */ mtctr r0 /* 800F9438 000F6398 2C 04 00 00 */ cmpwi r4, 0 /* 800F943C 000F639C 40 81 00 0C */ ble lbl_800F9448 lbl_800F9440: /* 800F9440 000F63A0 38 63 00 08 */ addi r3, r3, 8 /* 800F9444 000F63A4 42 00 FF FC */ bdnz lbl_800F9440 lbl_800F9448: /* 800F9448 000F63A8 7C 03 28 50 */ subf r0, r3, r5 /* 800F944C 000F63AC 7C 09 03 A6 */ mtctr r0 /* 800F9450 000F63B0 7C 03 28 00 */ cmpw r3, r5 /* 800F9454 000F63B4 40 80 00 08 */ bge lbl_800F945C lbl_800F9458: /* 800F9458 000F63B8 42 00 00 00 */ bdnz lbl_800F9458 lbl_800F945C: /* 800F945C 000F63BC 38 00 00 00 */ li r0, 0 /* 800F9460 000F63C0 90 1E 0C 78 */ stw r0, 0xc78(r30) lbl_800F9464: /* 800F9464 000F63C4 34 1E 00 74 */ addic. r0, r30, 0x74 /* 800F9468 000F63C8 41 82 00 60 */ beq lbl_800F94C8 /* 800F946C 000F63CC 34 1E 00 74 */ addic. r0, r30, 0x74 /* 800F9470 000F63D0 41 82 00 58 */ beq lbl_800F94C8 /* 800F9474 000F63D4 80 BE 00 74 */ lwz r5, 0x74(r30) /* 800F9478 000F63D8 38 60 00 00 */ li r3, 0 /* 800F947C 000F63DC 2C 05 00 00 */ cmpwi r5, 0 /* 800F9480 000F63E0 40 81 00 40 */ ble lbl_800F94C0 /* 800F9484 000F63E4 2C 05 00 08 */ cmpwi r5, 8 /* 800F9488 000F63E8 38 85 FF F8 */ addi r4, r5, -8 /* 800F948C 000F63EC 40 81 00 20 */ ble lbl_800F94AC /* 800F9490 000F63F0 38 04 00 07 */ addi r0, r4, 7 /* 800F9494 000F63F4 54 00 E8 FE */ srwi r0, r0, 3 /* 800F9498 000F63F8 7C 09 03 A6 */ mtctr r0 /* 800F949C 000F63FC 2C 04 00 00 */ cmpwi r4, 0 /* 800F94A0 000F6400 40 81 00 0C */ ble lbl_800F94AC lbl_800F94A4: /* 800F94A4 000F6404 38 63 00 08 */ addi r3, r3, 8 /* 800F94A8 000F6408 42 00 FF FC */ bdnz lbl_800F94A4 lbl_800F94AC: /* 800F94AC 000F640C 7C 03 28 50 */ subf r0, r3, r5 /* 800F94B0 000F6410 7C 09 03 A6 */ mtctr r0 /* 800F94B4 000F6414 7C 03 28 00 */ cmpw r3, r5 /* 800F94B8 000F6418 40 80 00 08 */ bge lbl_800F94C0 lbl_800F94BC: /* 800F94BC 000F641C 42 00 00 00 */ bdnz lbl_800F94BC lbl_800F94C0: /* 800F94C0 000F6420 38 00 00 00 */ li r0, 0 /* 800F94C4 000F6424 90 1E 00 74 */ stw r0, 0x74(r30) lbl_800F94C8: /* 800F94C8 000F6428 34 1E 00 70 */ addic. r0, r30, 0x70 /* 800F94CC 000F642C 41 82 00 10 */ beq lbl_800F94DC /* 800F94D0 000F6430 80 7E 00 70 */ lwz r3, 0x70(r30) /* 800F94D4 000F6434 38 80 00 01 */ li r4, 1 /* 800F94D8 000F6438 48 01 D5 75 */ bl __dt__10CModelDataFv lbl_800F94DC: /* 800F94DC 000F643C 34 1E 00 68 */ addic. r0, r30, 0x68 /* 800F94E0 000F6440 41 82 00 10 */ beq lbl_800F94F0 /* 800F94E4 000F6444 80 7E 00 68 */ lwz r3, 0x68(r30) /* 800F94E8 000F6448 38 80 00 01 */ li r4, 1 /* 800F94EC 000F644C 48 01 D5 61 */ bl __dt__10CModelDataFv lbl_800F94F0: /* 800F94F0 000F6450 34 1E 00 60 */ addic. r0, r30, 0x60 /* 800F94F4 000F6454 41 82 00 10 */ beq lbl_800F9504 /* 800F94F8 000F6458 80 7E 00 60 */ lwz r3, 0x60(r30) /* 800F94FC 000F645C 38 80 00 01 */ li r4, 1 /* 800F9500 000F6460 48 01 D5 4D */ bl __dt__10CModelDataFv lbl_800F9504: /* 800F9504 000F6464 34 1E 00 58 */ addic. r0, r30, 0x58 /* 800F9508 000F6468 41 82 00 10 */ beq lbl_800F9518 /* 800F950C 000F646C 80 7E 00 58 */ lwz r3, 0x58(r30) /* 800F9510 000F6470 38 80 00 01 */ li r4, 1 /* 800F9514 000F6474 48 01 D5 39 */ bl __dt__10CModelDataFv lbl_800F9518: /* 800F9518 000F6478 34 1E 00 38 */ addic. r0, r30, 0x38 /* 800F951C 000F647C 41 82 00 24 */ beq lbl_800F9540 /* 800F9520 000F6480 3C 60 80 3F */ lis r3, __vt__17CCollidableSphere@ha /* 800F9524 000F6484 34 1E 00 38 */ addic. r0, r30, 0x38 /* 800F9528 000F6488 38 03 CA F8 */ addi r0, r3, __vt__17CCollidableSphere@l /* 800F952C 000F648C 90 1E 00 38 */ stw r0, 0x38(r30) /* 800F9530 000F6490 41 82 00 10 */ beq lbl_800F9540 /* 800F9534 000F6494 3C 60 80 3E */ lis r3, __vt__19CCollisionPrimitive@ha /* 800F9538 000F6498 38 03 97 E4 */ addi r0, r3, __vt__19CCollisionPrimitive@l /* 800F953C 000F649C 90 1E 00 38 */ stw r0, 0x38(r30) lbl_800F9540: /* 800F9540 000F64A0 7F E0 07 35 */ extsh. r0, r31 /* 800F9544 000F64A4 40 81 00 0C */ ble lbl_800F9550 /* 800F9548 000F64A8 7F C3 F3 78 */ mr r3, r30 /* 800F954C 000F64AC 48 00 0E C1 */ bl sub_800fa40c lbl_800F9550: /* 800F9550 000F64B0 80 01 00 34 */ lwz r0, 0x34(r1) /* 800F9554 000F64B4 7F C3 F3 78 */ mr r3, r30 /* 800F9558 000F64B8 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 800F955C 000F64BC 83 C1 00 28 */ lwz r30, 0x28(r1) /* 800F9560 000F64C0 83 A1 00 24 */ lwz r29, 0x24(r1) /* 800F9564 000F64C4 83 81 00 20 */ lwz r28, 0x20(r1) /* 800F9568 000F64C8 7C 08 03 A6 */ mtlr r0 /* 800F956C 000F64CC 38 21 00 30 */ addi r1, r1, 0x30 /* 800F9570 000F64D0 4E 80 00 20 */ blr .global __ct__10CMorphBallFR7CPlayerf __ct__10CMorphBallFR7CPlayerf: /* 800F9574 000F64D4 94 21 FE A0 */ stwu r1, -0x160(r1) /* 800F9578 000F64D8 7C 08 02 A6 */ mflr r0 /* 800F957C 000F64DC 90 01 01 64 */ stw r0, 0x164(r1) /* 800F9580 000F64E0 DB E1 01 50 */ stfd f31, 0x150(r1) /* 800F9584 000F64E4 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 /* 800F9588 000F64E8 BF 41 01 38 */ stmw r26, 0x138(r1) /* 800F958C 000F64EC 7C 7F 1B 78 */ mr r31, r3 /* 800F9590 000F64F0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800F9594 000F64F4 90 9F 00 00 */ stw r4, 0(r31) /* 800F9598 000F64F8 38 80 FF FF */ li r4, -1 /* 800F959C 000F64FC 3B C3 66 A0 */ addi r30, r3, sZeroVector__9CVector3f@l /* 800F95A0 000F6500 FF E0 08 90 */ fmr f31, f1 /* 800F95A4 000F6504 90 9F 00 04 */ stw r4, 4(r31) /* 800F95A8 000F6508 38 00 00 00 */ li r0, 0 /* 800F95AC 000F650C C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F95B0 000F6510 38 60 00 00 */ li r3, 0 /* 800F95B4 000F6514 90 1F 00 08 */ stw r0, 8(r31) /* 800F95B8 000F6518 38 80 00 01 */ li r4, 1 /* 800F95BC 000F651C D3 FF 00 0C */ stfs f31, 0xc(r31) /* 800F95C0 000F6520 C0 3E 00 00 */ lfs f1, 0(r30) /* 800F95C4 000F6524 D0 3F 00 10 */ stfs f1, 0x10(r31) /* 800F95C8 000F6528 C0 3E 00 04 */ lfs f1, 4(r30) /* 800F95CC 000F652C D0 3F 00 14 */ stfs f1, 0x14(r31) /* 800F95D0 000F6530 C0 3E 00 08 */ lfs f1, 8(r30) /* 800F95D4 000F6534 D0 3F 00 18 */ stfs f1, 0x18(r31) /* 800F95D8 000F6538 C0 3E 00 00 */ lfs f1, 0(r30) /* 800F95DC 000F653C D0 3F 00 1C */ stfs f1, 0x1c(r31) /* 800F95E0 000F6540 C0 3E 00 04 */ lfs f1, 4(r30) /* 800F95E4 000F6544 D0 3F 00 20 */ stfs f1, 0x20(r31) /* 800F95E8 000F6548 C0 3E 00 08 */ lfs f1, 8(r30) /* 800F95EC 000F654C D0 3F 00 24 */ stfs f1, 0x24(r31) /* 800F95F0 000F6550 98 1F 00 28 */ stb r0, 0x28(r31) /* 800F95F4 000F6554 D0 1F 00 2C */ stfs f0, 0x2c(r31) /* 800F95F8 000F6558 D0 1F 00 30 */ stfs f0, 0x30(r31) /* 800F95FC 000F655C 80 AD 88 34 */ lwz r5, lbl_805A73F4@sda21(r13) /* 800F9600 000F6560 90 01 00 B4 */ stw r0, 0xb4(r1) /* 800F9604 000F6564 90 01 00 B0 */ stw r0, 0xb0(r1) /* 800F9608 000F6568 48 29 08 ED */ bl __shl2i /* 800F960C 000F656C 80 01 00 B0 */ lwz r0, 0xb0(r1) /* 800F9610 000F6570 80 C1 00 B4 */ lwz r6, 0xb4(r1) /* 800F9614 000F6574 7C 00 1B 78 */ or r0, r0, r3 /* 800F9618 000F6578 80 AD 88 38 */ lwz r5, lbl_805A73F8@sda21(r13) /* 800F961C 000F657C 7C C4 23 78 */ or r4, r6, r4 /* 800F9620 000F6580 90 01 00 B0 */ stw r0, 0xb0(r1) /* 800F9624 000F6584 38 60 00 00 */ li r3, 0 /* 800F9628 000F6588 90 81 00 B4 */ stw r4, 0xb4(r1) /* 800F962C 000F658C 38 80 00 01 */ li r4, 1 /* 800F9630 000F6590 48 29 08 C5 */ bl __shl2i /* 800F9634 000F6594 80 01 00 B0 */ lwz r0, 0xb0(r1) /* 800F9638 000F6598 80 C1 00 B4 */ lwz r6, 0xb4(r1) /* 800F963C 000F659C 7C 00 1B 78 */ or r0, r0, r3 /* 800F9640 000F65A0 80 AD 88 3C */ lwz r5, lbl_805A73FC@sda21(r13) /* 800F9644 000F65A4 7C C4 23 78 */ or r4, r6, r4 /* 800F9648 000F65A8 90 01 00 B0 */ stw r0, 0xb0(r1) /* 800F964C 000F65AC 38 60 00 00 */ li r3, 0 /* 800F9650 000F65B0 90 81 00 B4 */ stw r4, 0xb4(r1) /* 800F9654 000F65B4 38 80 00 01 */ li r4, 1 /* 800F9658 000F65B8 48 29 08 9D */ bl __shl2i /* 800F965C 000F65BC 80 01 00 B0 */ lwz r0, 0xb0(r1) /* 800F9660 000F65C0 3B 5F 00 38 */ addi r26, r31, 0x38 /* 800F9664 000F65C4 80 A1 00 B4 */ lwz r5, 0xb4(r1) /* 800F9668 000F65C8 7C 00 1B 78 */ or r0, r0, r3 /* 800F966C 000F65CC 7F 43 D3 78 */ mr r3, r26 /* 800F9670 000F65D0 7C A5 23 78 */ or r5, r5, r4 /* 800F9674 000F65D4 90 01 00 B0 */ stw r0, 0xb0(r1) /* 800F9678 000F65D8 38 81 00 B0 */ addi r4, r1, 0xb0 /* 800F967C 000F65DC 90 A1 00 B4 */ stw r5, 0xb4(r1) /* 800F9680 000F65E0 48 1D 62 35 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList /* 800F9684 000F65E4 3C 60 80 3F */ lis r3, __vt__17CCollidableSphere@ha /* 800F9688 000F65E8 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F968C 000F65EC 38 03 CA F8 */ addi r0, r3, __vt__17CCollidableSphere@l /* 800F9690 000F65F0 80 8D A3 2C */ lwz r4, lbl_805A8EEC@sda21(r13) /* 800F9694 000F65F4 90 1A 00 00 */ stw r0, 0(r26) /* 800F9698 000F65F8 38 61 01 1C */ addi r3, r1, 0x11c /* 800F969C 000F65FC D0 1A 00 10 */ stfs f0, 0x10(r26) /* 800F96A0 000F6600 D0 1A 00 14 */ stfs f0, 0x14(r26) /* 800F96A4 000F6604 D3 FA 00 18 */ stfs f31, 0x18(r26) /* 800F96A8 000F6608 D3 FA 00 1C */ stfs f31, 0x1c(r26) /* 800F96AC 000F660C 4B F0 B6 0D */ bl string_l__4rstlFPCc /* 800F96B0 000F6610 C0 3F 00 0C */ lfs f1, 0xc(r31) /* 800F96B4 000F6614 38 61 01 1C */ addi r3, r1, 0x11c /* 800F96B8 000F6618 4B FF 5F 5D */ bl "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 800F96BC 000F661C 90 7F 00 58 */ stw r3, 0x58(r31) /* 800F96C0 000F6620 38 61 01 1C */ addi r3, r1, 0x11c /* 800F96C4 000F6624 48 24 44 1D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800F96C8 000F6628 38 00 00 00 */ li r0, 0 /* 800F96CC 000F662C 80 8D A3 34 */ lwz r4, lbl_805A8EF4@sda21(r13) /* 800F96D0 000F6630 90 1F 00 5C */ stw r0, 0x5c(r31) /* 800F96D4 000F6634 38 61 01 0C */ addi r3, r1, 0x10c /* 800F96D8 000F6638 4B F0 B5 E1 */ bl string_l__4rstlFPCc /* 800F96DC 000F663C C0 3F 00 0C */ lfs f1, 0xc(r31) /* 800F96E0 000F6640 38 61 01 0C */ addi r3, r1, 0x10c /* 800F96E4 000F6644 4B FF 5F 31 */ bl "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 800F96E8 000F6648 90 7F 00 60 */ stw r3, 0x60(r31) /* 800F96EC 000F664C 38 61 01 0C */ addi r3, r1, 0x10c /* 800F96F0 000F6650 48 24 43 F1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800F96F4 000F6654 38 00 00 00 */ li r0, 0 /* 800F96F8 000F6658 80 8D A3 30 */ lwz r4, lbl_805A8EF0@sda21(r13) /* 800F96FC 000F665C 90 1F 00 64 */ stw r0, 0x64(r31) /* 800F9700 000F6660 38 61 00 FC */ addi r3, r1, 0xfc /* 800F9704 000F6664 4B F0 B5 B5 */ bl string_l__4rstlFPCc /* 800F9708 000F6668 C0 3F 00 0C */ lfs f1, 0xc(r31) /* 800F970C 000F666C 38 61 00 FC */ addi r3, r1, 0xfc /* 800F9710 000F6670 4B FF 5F 05 */ bl "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 800F9714 000F6674 90 7F 00 68 */ stw r3, 0x68(r31) /* 800F9718 000F6678 38 61 00 FC */ addi r3, r1, 0xfc /* 800F971C 000F667C 48 24 43 C5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800F9720 000F6680 38 00 00 00 */ li r0, 0 /* 800F9724 000F6684 80 8D A3 38 */ lwz r4, lbl_805A8EF8@sda21(r13) /* 800F9728 000F6688 90 1F 00 6C */ stw r0, 0x6c(r31) /* 800F972C 000F668C 38 61 00 EC */ addi r3, r1, 0xec /* 800F9730 000F6690 4B F0 B5 89 */ bl string_l__4rstlFPCc /* 800F9734 000F6694 C0 3F 00 0C */ lfs f1, 0xc(r31) /* 800F9738 000F6698 38 61 00 EC */ addi r3, r1, 0xec /* 800F973C 000F669C 4B FF 5E D9 */ bl "GetMorphBallModel__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>f" /* 800F9740 000F66A0 90 7F 00 70 */ stw r3, 0x70(r31) /* 800F9744 000F66A4 38 61 00 EC */ addi r3, r1, 0xec /* 800F9748 000F66A8 48 24 43 99 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800F974C 000F66AC 38 C0 00 00 */ li r6, 0 /* 800F9750 000F66B0 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha /* 800F9754 000F66B4 90 DF 00 74 */ stw r6, 0x74(r31) /* 800F9758 000F66B8 38 83 66 70 */ addi r4, r3, sIdentity__12CTransform4f@l /* 800F975C 000F66BC 3C A0 80 5A */ lis r5, sZeroVector__9CVector3f@ha /* 800F9760 000F66C0 C0 22 91 5C */ lfs f1, lbl_805AAE7C@sda21(r2) /* 800F9764 000F66C4 90 DF 0C 78 */ stw r6, 0xc78(r31) /* 800F9768 000F66C8 38 00 00 01 */ li r0, 1 /* 800F976C 000F66CC C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F9770 000F66D0 38 7F 18 C4 */ addi r3, r31, 0x18c4 /* 800F9774 000F66D4 90 DF 18 7C */ stw r6, 0x187c(r31) /* 800F9778 000F66D8 C4 45 66 A0 */ lfsu f2, sZeroVector__9CVector3f@l(r5) /* 800F977C 000F66DC D0 5F 18 80 */ stfs f2, 0x1880(r31) /* 800F9780 000F66E0 C0 5E 00 04 */ lfs f2, 4(r30) /* 800F9784 000F66E4 D0 5F 18 84 */ stfs f2, 0x1884(r31) /* 800F9788 000F66E8 C0 5E 00 08 */ lfs f2, 8(r30) /* 800F978C 000F66EC D0 5F 18 88 */ stfs f2, 0x1888(r31) /* 800F9790 000F66F0 D0 3F 18 8C */ stfs f1, 0x188c(r31) /* 800F9794 000F66F4 C0 25 00 00 */ lfs f1, 0(r5) /* 800F9798 000F66F8 D0 3F 18 90 */ stfs f1, 0x1890(r31) /* 800F979C 000F66FC C0 3E 00 04 */ lfs f1, 4(r30) /* 800F97A0 000F6700 D0 3F 18 94 */ stfs f1, 0x1894(r31) /* 800F97A4 000F6704 C0 3E 00 08 */ lfs f1, 8(r30) /* 800F97A8 000F6708 D0 3F 18 98 */ stfs f1, 0x1898(r31) /* 800F97AC 000F670C C0 25 00 00 */ lfs f1, 0(r5) /* 800F97B0 000F6710 D0 3F 18 9C */ stfs f1, 0x189c(r31) /* 800F97B4 000F6714 C0 3E 00 04 */ lfs f1, 4(r30) /* 800F97B8 000F6718 D0 3F 18 A0 */ stfs f1, 0x18a0(r31) /* 800F97BC 000F671C C0 3E 00 08 */ lfs f1, 8(r30) /* 800F97C0 000F6720 D0 3F 18 A4 */ stfs f1, 0x18a4(r31) /* 800F97C4 000F6724 C0 25 00 00 */ lfs f1, 0(r5) /* 800F97C8 000F6728 D0 3F 18 A8 */ stfs f1, 0x18a8(r31) /* 800F97CC 000F672C C0 3E 00 04 */ lfs f1, 4(r30) /* 800F97D0 000F6730 D0 3F 18 AC */ stfs f1, 0x18ac(r31) /* 800F97D4 000F6734 C0 3E 00 08 */ lfs f1, 8(r30) /* 800F97D8 000F6738 D0 3F 18 B0 */ stfs f1, 0x18b0(r31) /* 800F97DC 000F673C D0 1F 18 B4 */ stfs f0, 0x18b4(r31) /* 800F97E0 000F6740 D0 1F 18 B8 */ stfs f0, 0x18b8(r31) /* 800F97E4 000F6744 98 DF 18 BC */ stb r6, 0x18bc(r31) /* 800F97E8 000F6748 98 DF 18 BD */ stb r6, 0x18bd(r31) /* 800F97EC 000F674C 98 DF 18 BE */ stb r6, 0x18be(r31) /* 800F97F0 000F6750 98 1F 18 BF */ stb r0, 0x18bf(r31) /* 800F97F4 000F6754 98 DF 18 C0 */ stb r6, 0x18c0(r31) /* 800F97F8 000F6758 48 21 93 7D */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F97FC 000F675C C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800F9800 000F6760 38 7F 19 0C */ addi r3, r31, 0x190c /* 800F9804 000F6764 D0 3F 18 F4 */ stfs f1, 0x18f4(r31) /* 800F9808 000F6768 FC 40 08 90 */ fmr f2, f1 /* 800F980C 000F676C D0 3F 18 F8 */ stfs f1, 0x18f8(r31) /* 800F9810 000F6770 D0 3F 18 FC */ stfs f1, 0x18fc(r31) /* 800F9814 000F6774 D0 3F 19 00 */ stfs f1, 0x1900(r31) /* 800F9818 000F6778 D0 3F 19 04 */ stfs f1, 0x1904(r31) /* 800F981C 000F677C D0 3F 19 08 */ stfs f1, 0x1908(r31) /* 800F9820 000F6780 48 21 A9 E1 */ bl __ct__9CVector2fFff /* 800F9824 000F6784 C0 02 91 50 */ lfs f0, lbl_805AAE70@sda21(r2) /* 800F9828 000F6788 3C 60 80 5A */ lis r3, sIdentity__12CTransform4f@ha /* 800F982C 000F678C 38 83 66 70 */ addi r4, r3, sIdentity__12CTransform4f@l /* 800F9830 000F6790 38 00 00 00 */ li r0, 0 /* 800F9834 000F6794 D0 1F 19 14 */ stfs f0, 0x1914(r31) /* 800F9838 000F6798 38 7F 19 24 */ addi r3, r31, 0x1924 /* 800F983C 000F679C D0 1F 19 18 */ stfs f0, 0x1918(r31) /* 800F9840 000F67A0 D0 1F 19 1C */ stfs f0, 0x191c(r31) /* 800F9844 000F67A4 98 1F 19 20 */ stb r0, 0x1920(r31) /* 800F9848 000F67A8 48 21 93 2D */ bl __ct__12CTransform4fFRC12CTransform4f /* 800F984C 000F67AC 38 00 00 00 */ li r0, 0 /* 800F9850 000F67B0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9854 000F67B4 98 1F 19 54 */ stb r0, 0x1954(r31) /* 800F9858 000F67B8 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F985C 000F67BC 38 61 00 A8 */ addi r3, r1, 0xa8 /* 800F9860 000F67C0 90 1F 19 5C */ stw r0, 0x195c(r31) /* 800F9864 000F67C4 38 A4 01 52 */ addi r5, r4, 0x152 /* 800F9868 000F67C8 90 1F 19 60 */ stw r0, 0x1960(r31) /* 800F986C 000F67CC 90 1F 19 64 */ stw r0, 0x1964(r31) /* 800F9870 000F67D0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F9874 000F67D4 81 84 00 00 */ lwz r12, 0(r4) /* 800F9878 000F67D8 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F987C 000F67DC 7D 89 03 A6 */ mtctr r12 /* 800F9880 000F67E0 4E 80 04 21 */ bctrl /* 800F9884 000F67E4 38 7F 19 68 */ addi r3, r31, 0x1968 /* 800F9888 000F67E8 38 81 00 A8 */ addi r4, r1, 0xa8 /* 800F988C 000F67EC 48 24 76 1D */ bl __ct__6CTokenFRC6CToken /* 800F9890 000F67F0 38 61 00 A8 */ addi r3, r1, 0xa8 /* 800F9894 000F67F4 38 80 FF FF */ li r4, -1 /* 800F9898 000F67F8 48 24 75 A9 */ bl __dt__6CTokenFv /* 800F989C 000F67FC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F98A0 000F6800 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F98A4 000F6804 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800F98A8 000F6808 38 61 00 A0 */ addi r3, r1, 0xa0 /* 800F98AC 000F680C 81 84 00 00 */ lwz r12, 0(r4) /* 800F98B0 000F6810 38 A5 01 65 */ addi r5, r5, 0x165 /* 800F98B4 000F6814 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F98B8 000F6818 7D 89 03 A6 */ mtctr r12 /* 800F98BC 000F681C 4E 80 04 21 */ bctrl /* 800F98C0 000F6820 38 7F 19 70 */ addi r3, r31, 0x1970 /* 800F98C4 000F6824 38 81 00 A0 */ addi r4, r1, 0xa0 /* 800F98C8 000F6828 48 24 75 E1 */ bl __ct__6CTokenFRC6CToken /* 800F98CC 000F682C 38 61 00 A0 */ addi r3, r1, 0xa0 /* 800F98D0 000F6830 38 80 FF FF */ li r4, -1 /* 800F98D4 000F6834 48 24 75 6D */ bl __dt__6CTokenFv /* 800F98D8 000F6838 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F98DC 000F683C 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F98E0 000F6840 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800F98E4 000F6844 38 61 00 98 */ addi r3, r1, 0x98 /* 800F98E8 000F6848 81 84 00 00 */ lwz r12, 0(r4) /* 800F98EC 000F684C 38 A5 01 79 */ addi r5, r5, 0x179 /* 800F98F0 000F6850 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F98F4 000F6854 7D 89 03 A6 */ mtctr r12 /* 800F98F8 000F6858 4E 80 04 21 */ bctrl /* 800F98FC 000F685C 38 7F 19 78 */ addi r3, r31, 0x1978 /* 800F9900 000F6860 38 81 00 98 */ addi r4, r1, 0x98 /* 800F9904 000F6864 48 24 75 A5 */ bl __ct__6CTokenFRC6CToken /* 800F9908 000F6868 38 61 00 98 */ addi r3, r1, 0x98 /* 800F990C 000F686C 38 80 FF FF */ li r4, -1 /* 800F9910 000F6870 48 24 75 31 */ bl __dt__6CTokenFv /* 800F9914 000F6874 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F9918 000F6878 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F991C 000F687C 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800F9920 000F6880 38 61 00 90 */ addi r3, r1, 0x90 /* 800F9924 000F6884 81 84 00 00 */ lwz r12, 0(r4) /* 800F9928 000F6888 38 A5 01 84 */ addi r5, r5, 0x184 /* 800F992C 000F688C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F9930 000F6890 7D 89 03 A6 */ mtctr r12 /* 800F9934 000F6894 4E 80 04 21 */ bctrl /* 800F9938 000F6898 38 7F 19 80 */ addi r3, r31, 0x1980 /* 800F993C 000F689C 38 81 00 90 */ addi r4, r1, 0x90 /* 800F9940 000F68A0 48 24 75 69 */ bl __ct__6CTokenFRC6CToken /* 800F9944 000F68A4 38 61 00 90 */ addi r3, r1, 0x90 /* 800F9948 000F68A8 38 80 FF FF */ li r4, -1 /* 800F994C 000F68AC 48 24 74 F5 */ bl __dt__6CTokenFv /* 800F9950 000F68B0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F9954 000F68B4 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9958 000F68B8 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800F995C 000F68BC 38 61 00 88 */ addi r3, r1, 0x88 /* 800F9960 000F68C0 81 84 00 00 */ lwz r12, 0(r4) /* 800F9964 000F68C4 38 A5 01 8E */ addi r5, r5, 0x18e /* 800F9968 000F68C8 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F996C 000F68CC 7D 89 03 A6 */ mtctr r12 /* 800F9970 000F68D0 4E 80 04 21 */ bctrl /* 800F9974 000F68D4 38 7F 19 88 */ addi r3, r31, 0x1988 /* 800F9978 000F68D8 38 81 00 88 */ addi r4, r1, 0x88 /* 800F997C 000F68DC 48 24 75 2D */ bl __ct__6CTokenFRC6CToken /* 800F9980 000F68E0 38 61 00 88 */ addi r3, r1, 0x88 /* 800F9984 000F68E4 38 80 FF FF */ li r4, -1 /* 800F9988 000F68E8 48 24 74 B9 */ bl __dt__6CTokenFv /* 800F998C 000F68EC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F9990 000F68F0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9994 000F68F4 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800F9998 000F68F8 38 61 00 80 */ addi r3, r1, 0x80 /* 800F999C 000F68FC 81 84 00 00 */ lwz r12, 0(r4) /* 800F99A0 000F6900 38 A5 01 9C */ addi r5, r5, 0x19c /* 800F99A4 000F6904 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F99A8 000F6908 7D 89 03 A6 */ mtctr r12 /* 800F99AC 000F690C 4E 80 04 21 */ bctrl /* 800F99B0 000F6910 38 7F 19 90 */ addi r3, r31, 0x1990 /* 800F99B4 000F6914 38 81 00 80 */ addi r4, r1, 0x80 /* 800F99B8 000F6918 48 24 74 F1 */ bl __ct__6CTokenFRC6CToken /* 800F99BC 000F691C 38 61 00 80 */ addi r3, r1, 0x80 /* 800F99C0 000F6920 38 80 FF FF */ li r4, -1 /* 800F99C4 000F6924 48 24 74 7D */ bl __dt__6CTokenFv /* 800F99C8 000F6928 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F99CC 000F692C 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F99D0 000F6930 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800F99D4 000F6934 38 61 00 78 */ addi r3, r1, 0x78 /* 800F99D8 000F6938 81 84 00 00 */ lwz r12, 0(r4) /* 800F99DC 000F693C 38 A5 01 B3 */ addi r5, r5, 0x1b3 /* 800F99E0 000F6940 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F99E4 000F6944 7D 89 03 A6 */ mtctr r12 /* 800F99E8 000F6948 4E 80 04 21 */ bctrl /* 800F99EC 000F694C 38 7F 19 98 */ addi r3, r31, 0x1998 /* 800F99F0 000F6950 38 81 00 78 */ addi r4, r1, 0x78 /* 800F99F4 000F6954 48 24 74 B5 */ bl __ct__6CTokenFRC6CToken /* 800F99F8 000F6958 38 61 00 78 */ addi r3, r1, 0x78 /* 800F99FC 000F695C 38 80 FF FF */ li r4, -1 /* 800F9A00 000F6960 48 24 74 41 */ bl __dt__6CTokenFv /* 800F9A04 000F6964 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F9A08 000F6968 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9A0C 000F696C 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800F9A10 000F6970 38 61 00 70 */ addi r3, r1, 0x70 /* 800F9A14 000F6974 81 84 00 00 */ lwz r12, 0(r4) /* 800F9A18 000F6978 38 A5 01 C1 */ addi r5, r5, 0x1c1 /* 800F9A1C 000F697C 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F9A20 000F6980 7D 89 03 A6 */ mtctr r12 /* 800F9A24 000F6984 4E 80 04 21 */ bctrl /* 800F9A28 000F6988 38 7F 19 A0 */ addi r3, r31, 0x19a0 /* 800F9A2C 000F698C 38 81 00 70 */ addi r4, r1, 0x70 /* 800F9A30 000F6990 48 24 74 79 */ bl __ct__6CTokenFRC6CToken /* 800F9A34 000F6994 38 61 00 70 */ addi r3, r1, 0x70 /* 800F9A38 000F6998 38 80 FF FF */ li r4, -1 /* 800F9A3C 000F699C 48 24 74 05 */ bl __dt__6CTokenFv /* 800F9A40 000F69A0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F9A44 000F69A4 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9A48 000F69A8 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800F9A4C 000F69AC 38 61 00 68 */ addi r3, r1, 0x68 /* 800F9A50 000F69B0 81 84 00 00 */ lwz r12, 0(r4) /* 800F9A54 000F69B4 38 A5 01 D0 */ addi r5, r5, 0x1d0 /* 800F9A58 000F69B8 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F9A5C 000F69BC 7D 89 03 A6 */ mtctr r12 /* 800F9A60 000F69C0 4E 80 04 21 */ bctrl /* 800F9A64 000F69C4 38 7F 19 A8 */ addi r3, r31, 0x19a8 /* 800F9A68 000F69C8 38 81 00 68 */ addi r4, r1, 0x68 /* 800F9A6C 000F69CC 48 24 74 3D */ bl __ct__6CTokenFRC6CToken /* 800F9A70 000F69D0 38 61 00 68 */ addi r3, r1, 0x68 /* 800F9A74 000F69D4 38 80 FF FF */ li r4, -1 /* 800F9A78 000F69D8 48 24 73 C9 */ bl __dt__6CTokenFv /* 800F9A7C 000F69DC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) /* 800F9A80 000F69E0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9A84 000F69E4 38 A3 EB F4 */ addi r5, r3, lbl_803CEBF4@l /* 800F9A88 000F69E8 38 61 00 60 */ addi r3, r1, 0x60 /* 800F9A8C 000F69EC 81 84 00 00 */ lwz r12, 0(r4) /* 800F9A90 000F69F0 38 A5 01 E9 */ addi r5, r5, 0x1e9 /* 800F9A94 000F69F4 81 8C 00 10 */ lwz r12, 0x10(r12) /* 800F9A98 000F69F8 7D 89 03 A6 */ mtctr r12 /* 800F9A9C 000F69FC 4E 80 04 21 */ bctrl /* 800F9AA0 000F6A00 38 7F 19 B0 */ addi r3, r31, 0x19b0 /* 800F9AA4 000F6A04 38 81 00 60 */ addi r4, r1, 0x60 /* 800F9AA8 000F6A08 48 24 74 01 */ bl __ct__6CTokenFRC6CToken /* 800F9AAC 000F6A0C 38 61 00 60 */ addi r3, r1, 0x60 /* 800F9AB0 000F6A10 38 80 FF FF */ li r4, -1 /* 800F9AB4 000F6A14 48 24 73 8D */ bl __dt__6CTokenFv /* 800F9AB8 000F6A18 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9ABC 000F6A1C 3B 40 00 00 */ li r26, 0 /* 800F9AC0 000F6A20 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9AC4 000F6A24 38 60 02 10 */ li r3, 0x210 /* 800F9AC8 000F6A28 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9ACC 000F6A2C 38 A0 00 00 */ li r5, 0 /* 800F9AD0 000F6A30 48 21 BD 9D */ bl __nw__FUlPCcPCc /* 800F9AD4 000F6A34 7C 7B 1B 79 */ or. r27, r3, r3 /* 800F9AD8 000F6A38 41 82 00 28 */ beq lbl_800F9B00 /* 800F9ADC 000F6A3C 38 61 00 58 */ addi r3, r1, 0x58 /* 800F9AE0 000F6A40 38 9F 19 68 */ addi r4, r31, 0x1968 /* 800F9AE4 000F6A44 48 24 73 C5 */ bl __ct__6CTokenFRC6CToken /* 800F9AE8 000F6A48 7F 63 DB 78 */ mr r3, r27 /* 800F9AEC 000F6A4C 38 81 00 58 */ addi r4, r1, 0x58 /* 800F9AF0 000F6A50 3B 40 00 01 */ li r26, 1 /* 800F9AF4 000F6A54 38 A0 00 00 */ li r5, 0 /* 800F9AF8 000F6A58 48 23 52 ED */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i" /* 800F9AFC 000F6A5C 7C 7B 1B 78 */ mr r27, r3 lbl_800F9B00: /* 800F9B00 000F6A60 7F 40 07 75 */ extsb. r0, r26 /* 800F9B04 000F6A64 93 7F 19 B8 */ stw r27, 0x19b8(r31) /* 800F9B08 000F6A68 41 82 00 10 */ beq lbl_800F9B18 /* 800F9B0C 000F6A6C 38 61 00 58 */ addi r3, r1, 0x58 /* 800F9B10 000F6A70 38 80 00 00 */ li r4, 0 /* 800F9B14 000F6A74 48 24 73 2D */ bl __dt__6CTokenFv lbl_800F9B18: /* 800F9B18 000F6A78 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9B1C 000F6A7C 3B 40 00 00 */ li r26, 0 /* 800F9B20 000F6A80 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9B24 000F6A84 38 60 02 10 */ li r3, 0x210 /* 800F9B28 000F6A88 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9B2C 000F6A8C 38 A0 00 00 */ li r5, 0 /* 800F9B30 000F6A90 48 21 BD 3D */ bl __nw__FUlPCcPCc /* 800F9B34 000F6A94 7C 7B 1B 79 */ or. r27, r3, r3 /* 800F9B38 000F6A98 41 82 00 28 */ beq lbl_800F9B60 /* 800F9B3C 000F6A9C 38 61 00 50 */ addi r3, r1, 0x50 /* 800F9B40 000F6AA0 38 9F 19 68 */ addi r4, r31, 0x1968 /* 800F9B44 000F6AA4 48 24 73 65 */ bl __ct__6CTokenFRC6CToken /* 800F9B48 000F6AA8 7F 63 DB 78 */ mr r3, r27 /* 800F9B4C 000F6AAC 38 81 00 50 */ addi r4, r1, 0x50 /* 800F9B50 000F6AB0 3B 40 00 01 */ li r26, 1 /* 800F9B54 000F6AB4 38 A0 00 00 */ li r5, 0 /* 800F9B58 000F6AB8 48 23 52 8D */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i" /* 800F9B5C 000F6ABC 7C 7B 1B 78 */ mr r27, r3 lbl_800F9B60: /* 800F9B60 000F6AC0 7F 40 07 75 */ extsb. r0, r26 /* 800F9B64 000F6AC4 93 7F 19 BC */ stw r27, 0x19bc(r31) /* 800F9B68 000F6AC8 41 82 00 10 */ beq lbl_800F9B78 /* 800F9B6C 000F6ACC 38 61 00 50 */ addi r3, r1, 0x50 /* 800F9B70 000F6AD0 38 80 00 00 */ li r4, 0 /* 800F9B74 000F6AD4 48 24 72 CD */ bl __dt__6CTokenFv lbl_800F9B78: /* 800F9B78 000F6AD8 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9B7C 000F6ADC 3B 40 00 00 */ li r26, 0 /* 800F9B80 000F6AE0 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9B84 000F6AE4 38 60 02 10 */ li r3, 0x210 /* 800F9B88 000F6AE8 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9B8C 000F6AEC 38 A0 00 00 */ li r5, 0 /* 800F9B90 000F6AF0 48 21 BC DD */ bl __nw__FUlPCcPCc /* 800F9B94 000F6AF4 7C 7B 1B 79 */ or. r27, r3, r3 /* 800F9B98 000F6AF8 41 82 00 28 */ beq lbl_800F9BC0 /* 800F9B9C 000F6AFC 38 61 00 48 */ addi r3, r1, 0x48 /* 800F9BA0 000F6B00 38 9F 19 70 */ addi r4, r31, 0x1970 /* 800F9BA4 000F6B04 48 24 73 05 */ bl __ct__6CTokenFRC6CToken /* 800F9BA8 000F6B08 7F 63 DB 78 */ mr r3, r27 /* 800F9BAC 000F6B0C 38 81 00 48 */ addi r4, r1, 0x48 /* 800F9BB0 000F6B10 3B 40 00 01 */ li r26, 1 /* 800F9BB4 000F6B14 38 A0 00 00 */ li r5, 0 /* 800F9BB8 000F6B18 48 23 52 2D */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i" /* 800F9BBC 000F6B1C 7C 7B 1B 78 */ mr r27, r3 lbl_800F9BC0: /* 800F9BC0 000F6B20 7F 40 07 75 */ extsb. r0, r26 /* 800F9BC4 000F6B24 93 7F 19 C0 */ stw r27, 0x19c0(r31) /* 800F9BC8 000F6B28 41 82 00 10 */ beq lbl_800F9BD8 /* 800F9BCC 000F6B2C 38 61 00 48 */ addi r3, r1, 0x48 /* 800F9BD0 000F6B30 38 80 00 00 */ li r4, 0 /* 800F9BD4 000F6B34 48 24 72 6D */ bl __dt__6CTokenFv lbl_800F9BD8: /* 800F9BD8 000F6B38 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9BDC 000F6B3C 3B 40 00 00 */ li r26, 0 /* 800F9BE0 000F6B40 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9BE4 000F6B44 38 60 02 10 */ li r3, 0x210 /* 800F9BE8 000F6B48 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9BEC 000F6B4C 38 A0 00 00 */ li r5, 0 /* 800F9BF0 000F6B50 48 21 BC 7D */ bl __nw__FUlPCcPCc /* 800F9BF4 000F6B54 7C 7B 1B 79 */ or. r27, r3, r3 /* 800F9BF8 000F6B58 41 82 00 28 */ beq lbl_800F9C20 /* 800F9BFC 000F6B5C 38 61 00 40 */ addi r3, r1, 0x40 /* 800F9C00 000F6B60 38 9F 19 70 */ addi r4, r31, 0x1970 /* 800F9C04 000F6B64 48 24 72 A5 */ bl __ct__6CTokenFRC6CToken /* 800F9C08 000F6B68 7F 63 DB 78 */ mr r3, r27 /* 800F9C0C 000F6B6C 38 81 00 40 */ addi r4, r1, 0x40 /* 800F9C10 000F6B70 3B 40 00 01 */ li r26, 1 /* 800F9C14 000F6B74 38 A0 00 00 */ li r5, 0 /* 800F9C18 000F6B78 48 23 51 CD */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i" /* 800F9C1C 000F6B7C 7C 7B 1B 78 */ mr r27, r3 lbl_800F9C20: /* 800F9C20 000F6B80 7F 40 07 75 */ extsb. r0, r26 /* 800F9C24 000F6B84 93 7F 19 C4 */ stw r27, 0x19c4(r31) /* 800F9C28 000F6B88 41 82 00 10 */ beq lbl_800F9C38 /* 800F9C2C 000F6B8C 38 61 00 40 */ addi r3, r1, 0x40 /* 800F9C30 000F6B90 38 80 00 00 */ li r4, 0 /* 800F9C34 000F6B94 48 24 72 0D */ bl __dt__6CTokenFv lbl_800F9C38: /* 800F9C38 000F6B98 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9C3C 000F6B9C 3B 40 00 00 */ li r26, 0 /* 800F9C40 000F6BA0 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9C44 000F6BA4 38 60 02 10 */ li r3, 0x210 /* 800F9C48 000F6BA8 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9C4C 000F6BAC 38 A0 00 00 */ li r5, 0 /* 800F9C50 000F6BB0 48 21 BC 1D */ bl __nw__FUlPCcPCc /* 800F9C54 000F6BB4 7C 7B 1B 79 */ or. r27, r3, r3 /* 800F9C58 000F6BB8 41 82 00 28 */ beq lbl_800F9C80 /* 800F9C5C 000F6BBC 38 61 00 38 */ addi r3, r1, 0x38 /* 800F9C60 000F6BC0 38 9F 19 78 */ addi r4, r31, 0x1978 /* 800F9C64 000F6BC4 48 24 72 45 */ bl __ct__6CTokenFRC6CToken /* 800F9C68 000F6BC8 7F 63 DB 78 */ mr r3, r27 /* 800F9C6C 000F6BCC 38 81 00 38 */ addi r4, r1, 0x38 /* 800F9C70 000F6BD0 3B 40 00 01 */ li r26, 1 /* 800F9C74 000F6BD4 38 A0 00 00 */ li r5, 0 /* 800F9C78 000F6BD8 48 23 51 6D */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i" /* 800F9C7C 000F6BDC 7C 7B 1B 78 */ mr r27, r3 lbl_800F9C80: /* 800F9C80 000F6BE0 7F 40 07 75 */ extsb. r0, r26 /* 800F9C84 000F6BE4 93 7F 19 C8 */ stw r27, 0x19c8(r31) /* 800F9C88 000F6BE8 41 82 00 10 */ beq lbl_800F9C98 /* 800F9C8C 000F6BEC 38 61 00 38 */ addi r3, r1, 0x38 /* 800F9C90 000F6BF0 38 80 00 00 */ li r4, 0 /* 800F9C94 000F6BF4 48 24 71 AD */ bl __dt__6CTokenFv lbl_800F9C98: /* 800F9C98 000F6BF8 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9C9C 000F6BFC 3B 40 00 00 */ li r26, 0 /* 800F9CA0 000F6C00 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9CA4 000F6C04 38 60 03 40 */ li r3, 0x340 /* 800F9CA8 000F6C08 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9CAC 000F6C0C 38 A0 00 00 */ li r5, 0 /* 800F9CB0 000F6C10 48 21 BB BD */ bl __nw__FUlPCcPCc /* 800F9CB4 000F6C14 7C 7B 1B 79 */ or. r27, r3, r3 /* 800F9CB8 000F6C18 41 82 00 2C */ beq lbl_800F9CE4 /* 800F9CBC 000F6C1C 38 61 00 30 */ addi r3, r1, 0x30 /* 800F9CC0 000F6C20 38 9F 19 80 */ addi r4, r31, 0x1980 /* 800F9CC4 000F6C24 48 24 71 E5 */ bl __ct__6CTokenFRC6CToken /* 800F9CC8 000F6C28 7F 63 DB 78 */ mr r3, r27 /* 800F9CCC 000F6C2C 38 81 00 30 */ addi r4, r1, 0x30 /* 800F9CD0 000F6C30 3B 40 00 01 */ li r26, 1 /* 800F9CD4 000F6C34 38 A0 00 00 */ li r5, 0 /* 800F9CD8 000F6C38 38 C0 00 01 */ li r6, 1 /* 800F9CDC 000F6C3C 48 22 57 05 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800F9CE0 000F6C40 7C 7B 1B 78 */ mr r27, r3 lbl_800F9CE4: /* 800F9CE4 000F6C44 7F 40 07 75 */ extsb. r0, r26 /* 800F9CE8 000F6C48 93 7F 19 CC */ stw r27, 0x19cc(r31) /* 800F9CEC 000F6C4C 41 82 00 10 */ beq lbl_800F9CFC /* 800F9CF0 000F6C50 38 61 00 30 */ addi r3, r1, 0x30 /* 800F9CF4 000F6C54 38 80 00 00 */ li r4, 0 /* 800F9CF8 000F6C58 48 24 71 49 */ bl __dt__6CTokenFv lbl_800F9CFC: /* 800F9CFC 000F6C5C 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9D00 000F6C60 3B 40 00 00 */ li r26, 0 /* 800F9D04 000F6C64 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9D08 000F6C68 38 60 03 40 */ li r3, 0x340 /* 800F9D0C 000F6C6C 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9D10 000F6C70 38 A0 00 00 */ li r5, 0 /* 800F9D14 000F6C74 48 21 BB 59 */ bl __nw__FUlPCcPCc /* 800F9D18 000F6C78 7C 7B 1B 79 */ or. r27, r3, r3 /* 800F9D1C 000F6C7C 41 82 00 2C */ beq lbl_800F9D48 /* 800F9D20 000F6C80 38 61 00 28 */ addi r3, r1, 0x28 /* 800F9D24 000F6C84 38 9F 19 88 */ addi r4, r31, 0x1988 /* 800F9D28 000F6C88 48 24 71 81 */ bl __ct__6CTokenFRC6CToken /* 800F9D2C 000F6C8C 7F 63 DB 78 */ mr r3, r27 /* 800F9D30 000F6C90 38 81 00 28 */ addi r4, r1, 0x28 /* 800F9D34 000F6C94 3B 40 00 01 */ li r26, 1 /* 800F9D38 000F6C98 38 A0 00 00 */ li r5, 0 /* 800F9D3C 000F6C9C 38 C0 00 01 */ li r6, 1 /* 800F9D40 000F6CA0 48 22 56 A1 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800F9D44 000F6CA4 7C 7B 1B 78 */ mr r27, r3 lbl_800F9D48: /* 800F9D48 000F6CA8 7F 40 07 75 */ extsb. r0, r26 /* 800F9D4C 000F6CAC 93 7F 19 D0 */ stw r27, 0x19d0(r31) /* 800F9D50 000F6CB0 41 82 00 10 */ beq lbl_800F9D60 /* 800F9D54 000F6CB4 38 61 00 28 */ addi r3, r1, 0x28 /* 800F9D58 000F6CB8 38 80 00 00 */ li r4, 0 /* 800F9D5C 000F6CBC 48 24 70 E5 */ bl __dt__6CTokenFv lbl_800F9D60: /* 800F9D60 000F6CC0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9D64 000F6CC4 3B 40 00 00 */ li r26, 0 /* 800F9D68 000F6CC8 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9D6C 000F6CCC 38 60 03 40 */ li r3, 0x340 /* 800F9D70 000F6CD0 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9D74 000F6CD4 38 A0 00 00 */ li r5, 0 /* 800F9D78 000F6CD8 48 21 BA F5 */ bl __nw__FUlPCcPCc /* 800F9D7C 000F6CDC 7C 7B 1B 79 */ or. r27, r3, r3 /* 800F9D80 000F6CE0 41 82 00 2C */ beq lbl_800F9DAC /* 800F9D84 000F6CE4 38 61 00 20 */ addi r3, r1, 0x20 /* 800F9D88 000F6CE8 38 9F 19 90 */ addi r4, r31, 0x1990 /* 800F9D8C 000F6CEC 48 24 71 1D */ bl __ct__6CTokenFRC6CToken /* 800F9D90 000F6CF0 7F 63 DB 78 */ mr r3, r27 /* 800F9D94 000F6CF4 38 81 00 20 */ addi r4, r1, 0x20 /* 800F9D98 000F6CF8 3B 40 00 01 */ li r26, 1 /* 800F9D9C 000F6CFC 38 A0 00 00 */ li r5, 0 /* 800F9DA0 000F6D00 38 C0 00 01 */ li r6, 1 /* 800F9DA4 000F6D04 48 22 56 3D */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800F9DA8 000F6D08 7C 7B 1B 78 */ mr r27, r3 lbl_800F9DAC: /* 800F9DAC 000F6D0C 7F 40 07 75 */ extsb. r0, r26 /* 800F9DB0 000F6D10 93 7F 19 D4 */ stw r27, 0x19d4(r31) /* 800F9DB4 000F6D14 41 82 00 10 */ beq lbl_800F9DC4 /* 800F9DB8 000F6D18 38 61 00 20 */ addi r3, r1, 0x20 /* 800F9DBC 000F6D1C 38 80 00 00 */ li r4, 0 /* 800F9DC0 000F6D20 48 24 70 81 */ bl __dt__6CTokenFv lbl_800F9DC4: /* 800F9DC4 000F6D24 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9DC8 000F6D28 3B 40 00 00 */ li r26, 0 /* 800F9DCC 000F6D2C 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9DD0 000F6D30 38 60 03 40 */ li r3, 0x340 /* 800F9DD4 000F6D34 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9DD8 000F6D38 38 A0 00 00 */ li r5, 0 /* 800F9DDC 000F6D3C 48 21 BA 91 */ bl __nw__FUlPCcPCc /* 800F9DE0 000F6D40 7C 7B 1B 79 */ or. r27, r3, r3 /* 800F9DE4 000F6D44 41 82 00 2C */ beq lbl_800F9E10 /* 800F9DE8 000F6D48 38 61 00 18 */ addi r3, r1, 0x18 /* 800F9DEC 000F6D4C 38 9F 19 98 */ addi r4, r31, 0x1998 /* 800F9DF0 000F6D50 48 24 70 B9 */ bl __ct__6CTokenFRC6CToken /* 800F9DF4 000F6D54 7F 63 DB 78 */ mr r3, r27 /* 800F9DF8 000F6D58 38 81 00 18 */ addi r4, r1, 0x18 /* 800F9DFC 000F6D5C 3B 40 00 01 */ li r26, 1 /* 800F9E00 000F6D60 38 A0 00 00 */ li r5, 0 /* 800F9E04 000F6D64 38 C0 00 01 */ li r6, 1 /* 800F9E08 000F6D68 48 22 55 D9 */ bl "__ct__11CElementGenF25TToken<15CGenDescription>Q211CElementGen21EModelOrientationTypeQ211CElementGen20EOptionalSystemFlags" /* 800F9E0C 000F6D6C 7C 7B 1B 78 */ mr r27, r3 lbl_800F9E10: /* 800F9E10 000F6D70 7F 40 07 75 */ extsb. r0, r26 /* 800F9E14 000F6D74 93 7F 19 D8 */ stw r27, 0x19d8(r31) /* 800F9E18 000F6D78 41 82 00 10 */ beq lbl_800F9E28 /* 800F9E1C 000F6D7C 38 61 00 18 */ addi r3, r1, 0x18 /* 800F9E20 000F6D80 38 80 00 00 */ li r4, 0 /* 800F9E24 000F6D84 48 24 70 1D */ bl __dt__6CTokenFv lbl_800F9E28: /* 800F9E28 000F6D88 38 A0 00 00 */ li r5, 0 /* 800F9E2C 000F6D8C 38 1F 1B 74 */ addi r0, r31, 0x1b74 /* 800F9E30 000F6D90 90 BF 19 DC */ stw r5, 0x19dc(r31) /* 800F9E34 000F6D94 38 7F 1B 80 */ addi r3, r31, 0x1b80 /* 800F9E38 000F6D98 38 80 00 63 */ li r4, 0x63 /* 800F9E3C 000F6D9C 90 BF 19 E0 */ stw r5, 0x19e0(r31) /* 800F9E40 000F6DA0 90 BF 19 E4 */ stw r5, 0x19e4(r31) /* 800F9E44 000F6DA4 90 1F 1B 6C */ stw r0, 0x1b6c(r31) /* 800F9E48 000F6DA8 90 1F 1B 70 */ stw r0, 0x1b70(r31) /* 800F9E4C 000F6DAC 90 1F 1B 74 */ stw r0, 0x1b74(r31) /* 800F9E50 000F6DB0 90 1F 1B 78 */ stw r0, 0x1b78(r31) /* 800F9E54 000F6DB4 90 BF 1B 7C */ stw r5, 0x1b7c(r31) /* 800F9E58 000F6DB8 48 21 87 95 */ bl __ct__9CRandom16FUi /* 800F9E5C 000F6DBC 38 A0 00 00 */ li r5, 0 /* 800F9E60 000F6DC0 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9E64 000F6DC4 90 BF 1B 84 */ stw r5, 0x1b84(r31) /* 800F9E68 000F6DC8 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9E6C 000F6DCC 38 00 FF FF */ li r0, -1 /* 800F9E70 000F6DD0 38 60 00 8C */ li r3, 0x8c /* 800F9E74 000F6DD4 90 BF 1B C8 */ stw r5, 0x1bc8(r31) /* 800F9E78 000F6DD8 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9E7C 000F6DDC 38 A0 00 00 */ li r5, 0 /* 800F9E80 000F6DE0 90 1F 1C 0C */ stw r0, 0x1c0c(r31) /* 800F9E84 000F6DE4 A0 0D A3 8C */ lhz r0, kInvalidUniqueId@sda21(r13) /* 800F9E88 000F6DE8 B0 1F 1C 10 */ sth r0, 0x1c10(r31) /* 800F9E8C 000F6DEC 48 21 B9 E1 */ bl __nw__FUlPCcPCc /* 800F9E90 000F6DF0 7C 60 1B 79 */ or. r0, r3, r3 /* 800F9E94 000F6DF4 41 82 00 18 */ beq lbl_800F9EAC /* 800F9E98 000F6DF8 38 80 00 10 */ li r4, 0x10 /* 800F9E9C 000F6DFC 38 A0 00 10 */ li r5, 0x10 /* 800F9EA0 000F6E00 38 C0 00 00 */ li r6, 0 /* 800F9EA4 000F6E04 48 01 7D 21 */ bl __ct__12CWorldShadowFUiUib /* 800F9EA8 000F6E08 7C 60 1B 78 */ mr r0, r3 lbl_800F9EAC: /* 800F9EAC 000F6E0C 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9EB0 000F6E10 90 1F 1C 14 */ stw r0, 0x1c14(r31) /* 800F9EB4 000F6E14 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9EB8 000F6E18 38 60 02 E0 */ li r3, 0x2e0 /* 800F9EBC 000F6E1C 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9EC0 000F6E20 38 A0 00 00 */ li r5, 0 /* 800F9EC4 000F6E24 48 21 B9 A9 */ bl __nw__FUlPCcPCc /* 800F9EC8 000F6E28 7C 60 1B 79 */ or. r0, r3, r3 /* 800F9ECC 000F6E2C 41 82 00 4C */ beq lbl_800F9F18 /* 800F9ED0 000F6E30 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha /* 800F9ED4 000F6E34 C0 22 94 04 */ lfs f1, lbl_805AB124@sda21(r2) /* 800F9ED8 000F6E38 38 E4 66 A0 */ addi r7, r4, sZeroVector__9CVector3f@l /* 800F9EDC 000F6E3C 38 A1 00 E0 */ addi r5, r1, 0xe0 /* 800F9EE0 000F6E40 81 07 00 00 */ lwz r8, 0(r7) /* 800F9EE4 000F6E44 38 80 00 08 */ li r4, 8 /* 800F9EE8 000F6E48 81 67 00 04 */ lwz r11, 4(r7) /* 800F9EEC 000F6E4C 38 C0 00 04 */ li r6, 4 /* 800F9EF0 000F6E50 80 07 00 08 */ lwz r0, 8(r7) /* 800F9EF4 000F6E54 38 E0 00 04 */ li r7, 4 /* 800F9EF8 000F6E58 91 01 00 E0 */ stw r8, 0xe0(r1) /* 800F9EFC 000F6E5C 39 00 00 00 */ li r8, 0 /* 800F9F00 000F6E60 39 20 00 00 */ li r9, 0 /* 800F9F04 000F6E64 39 40 00 00 */ li r10, 0 /* 800F9F08 000F6E68 91 61 00 E4 */ stw r11, 0xe4(r1) /* 800F9F0C 000F6E6C 90 01 00 E8 */ stw r0, 0xe8(r1) /* 800F9F10 000F6E70 48 00 B2 BD */ bl __ct__12CActorLightsFUi9CVector3fiif /* 800F9F14 000F6E74 7C 60 1B 78 */ mr r0, r3 lbl_800F9F18: /* 800F9F18 000F6E78 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800F9F1C 000F6E7C 90 1F 1C 18 */ stw r0, 0x1c18(r31) /* 800F9F20 000F6E80 38 83 EB F4 */ addi r4, r3, lbl_803CEBF4@l /* 800F9F24 000F6E84 38 60 00 4C */ li r3, 0x4c /* 800F9F28 000F6E88 38 84 00 DC */ addi r4, r4, 0xdc /* 800F9F2C 000F6E8C 38 A0 00 00 */ li r5, 0 /* 800F9F30 000F6E90 48 21 B9 3D */ bl __nw__FUlPCcPCc /* 800F9F34 000F6E94 7C 60 1B 79 */ or. r0, r3, r3 /* 800F9F38 000F6E98 41 82 00 3C */ beq lbl_800F9F74 /* 800F9F3C 000F6E9C 80 FF 00 58 */ lwz r7, 0x58(r31) /* 800F9F40 000F6EA0 38 81 00 D4 */ addi r4, r1, 0xd4 /* 800F9F44 000F6EA4 C0 22 92 54 */ lfs f1, lbl_805AAF74@sda21(r2) /* 800F9F48 000F6EA8 38 A0 00 28 */ li r5, 0x28 /* 800F9F4C 000F6EAC C0 07 00 00 */ lfs f0, 0(r7) /* 800F9F50 000F6EB0 38 C0 00 02 */ li r6, 2 /* 800F9F54 000F6EB4 C0 42 92 58 */ lfs f2, lbl_805AAF78@sda21(r2) /* 800F9F58 000F6EB8 D0 01 00 D4 */ stfs f0, 0xd4(r1) /* 800F9F5C 000F6EBC C0 07 00 04 */ lfs f0, 4(r7) /* 800F9F60 000F6EC0 D0 01 00 D8 */ stfs f0, 0xd8(r1) /* 800F9F64 000F6EC4 C0 07 00 08 */ lfs f0, 8(r7) /* 800F9F68 000F6EC8 D0 01 00 DC */ stfs f0, 0xdc(r1) /* 800F9F6C 000F6ECC 48 17 07 CD */ bl __ct__20CRainSplashGeneratorFRC9CVector3fiiff /* 800F9F70 000F6ED0 7C 60 1B 78 */ mr r0, r3 lbl_800F9F74: /* 800F9F74 000F6ED4 90 1F 1C 1C */ stw r0, 0x1c1c(r31) /* 800F9F78 000F6ED8 3C 60 80 5A */ lis r3, sNoRotation__11CQuaternion@ha /* 800F9F7C 000F6EDC C0 42 91 50 */ lfs f2, lbl_805AAE70@sda21(r2) /* 800F9F80 000F6EE0 38 00 00 00 */ li r0, 0 /* 800F9F84 000F6EE4 C0 22 92 58 */ lfs f1, lbl_805AAF78@sda21(r2) /* 800F9F88 000F6EE8 38 DF 1C 3C */ addi r6, r31, 0x1c3c /* 800F9F8C 000F6EEC D0 5F 1C 20 */ stfs f2, 0x1c20(r31) /* 800F9F90 000F6EF0 38 63 66 60 */ addi r3, r3, sNoRotation__11CQuaternion@l /* 800F9F94 000F6EF4 C0 02 91 5C */ lfs f0, lbl_805AAE7C@sda21(r2) /* 800F9F98 000F6EF8 D0 3F 1C 24 */ stfs f1, 0x1c24(r31) /* 800F9F9C 000F6EFC D0 1F 1C 28 */ stfs f0, 0x1c28(r31) /* 800F9FA0 000F6F00 98 1F 1C 2C */ stb r0, 0x1c2c(r31) /* 800F9FA4 000F6F04 D0 5F 1C 30 */ stfs f2, 0x1c30(r31) /* 800F9FA8 000F6F08 D0 5F 1C 34 */ stfs f2, 0x1c34(r31) /* 800F9FAC 000F6F0C D0 5F 1C 38 */ stfs f2, 0x1c38(r31) /* 800F9FB0 000F6F10 90 1F 1C 3C */ stw r0, 0x1c3c(r31) /* 800F9FB4 000F6F14 80 9F 1C 3C */ lwz r4, 0x1c3c(r31) /* 800F9FB8 000F6F18 2C 04 00 05 */ cmpwi r4, 5 /* 800F9FBC 000F6F1C 40 80 00 58 */ bge lbl_800FA014 /* 800F9FC0 000F6F20 54 80 20 36 */ slwi r0, r4, 4 /* 800F9FC4 000F6F24 20 A4 00 05 */ subfic r5, r4, 5 /* 800F9FC8 000F6F28 7C 86 02 14 */ add r4, r6, r0 /* 800F9FCC 000F6F2C 7C A9 03 A6 */ mtctr r5 /* 800F9FD0 000F6F30 2C 05 00 00 */ cmpwi r5, 0 /* 800F9FD4 000F6F34 38 84 00 04 */ addi r4, r4, 4 /* 800F9FD8 000F6F38 40 81 00 34 */ ble lbl_800FA00C lbl_800F9FDC: /* 800F9FDC 000F6F3C 28 04 00 00 */ cmplwi r4, 0 /* 800F9FE0 000F6F40 41 82 00 24 */ beq lbl_800FA004 /* 800F9FE4 000F6F44 C0 03 00 00 */ lfs f0, 0(r3) /* 800F9FE8 000F6F48 D0 04 00 00 */ stfs f0, 0(r4) /* 800F9FEC 000F6F4C C0 03 00 04 */ lfs f0, 4(r3) /* 800F9FF0 000F6F50 D0 04 00 04 */ stfs f0, 4(r4) /* 800F9FF4 000F6F54 C0 03 00 08 */ lfs f0, 8(r3) /* 800F9FF8 000F6F58 D0 04 00 08 */ stfs f0, 8(r4) /* 800F9FFC 000F6F5C C0 03 00 0C */ lfs f0, 0xc(r3) /* 800FA000 000F6F60 D0 04 00 0C */ stfs f0, 0xc(r4) lbl_800FA004: /* 800FA004 000F6F64 38 84 00 10 */ addi r4, r4, 0x10 /* 800FA008 000F6F68 42 00 FF D4 */ bdnz lbl_800F9FDC lbl_800FA00C: /* 800FA00C 000F6F6C 38 00 00 05 */ li r0, 5 /* 800FA010 000F6F70 90 06 00 00 */ stw r0, 0(r6) lbl_800FA014: /* 800FA014 000F6F74 38 DF 1C 90 */ addi r6, r31, 0x1c90 /* 800FA018 000F6F78 38 00 00 00 */ li r0, 0 /* 800FA01C 000F6F7C 90 1F 1C 90 */ stw r0, 0x1c90(r31) /* 800FA020 000F6F80 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800FA024 000F6F84 38 63 66 A0 */ addi r3, r3, sZeroVector__9CVector3f@l /* 800FA028 000F6F88 80 9F 1C 90 */ lwz r4, 0x1c90(r31) /* 800FA02C 000F6F8C 2C 04 00 05 */ cmpwi r4, 5 /* 800FA030 000F6F90 40 80 00 50 */ bge lbl_800FA080 /* 800FA034 000F6F94 1C 04 00 0C */ mulli r0, r4, 0xc /* 800FA038 000F6F98 20 A4 00 05 */ subfic r5, r4, 5 /* 800FA03C 000F6F9C 7C 86 02 14 */ add r4, r6, r0 /* 800FA040 000F6FA0 7C A9 03 A6 */ mtctr r5 /* 800FA044 000F6FA4 2C 05 00 00 */ cmpwi r5, 0 /* 800FA048 000F6FA8 38 84 00 04 */ addi r4, r4, 4 /* 800FA04C 000F6FAC 40 81 00 2C */ ble lbl_800FA078 lbl_800FA050: /* 800FA050 000F6FB0 28 04 00 00 */ cmplwi r4, 0 /* 800FA054 000F6FB4 41 82 00 1C */ beq lbl_800FA070 /* 800FA058 000F6FB8 C0 03 00 00 */ lfs f0, 0(r3) /* 800FA05C 000F6FBC D0 04 00 00 */ stfs f0, 0(r4) /* 800FA060 000F6FC0 C0 03 00 04 */ lfs f0, 4(r3) /* 800FA064 000F6FC4 D0 04 00 04 */ stfs f0, 4(r4) /* 800FA068 000F6FC8 C0 03 00 08 */ lfs f0, 8(r3) /* 800FA06C 000F6FCC D0 04 00 08 */ stfs f0, 8(r4) lbl_800FA070: /* 800FA070 000F6FD0 38 84 00 0C */ addi r4, r4, 0xc /* 800FA074 000F6FD4 42 00 FF DC */ bdnz lbl_800FA050 lbl_800FA078: /* 800FA078 000F6FD8 38 00 00 05 */ li r0, 5 /* 800FA07C 000F6FDC 90 06 00 00 */ stw r0, 0(r6) lbl_800FA080: /* 800FA080 000F6FE0 38 BF 1C D0 */ addi r5, r31, 0x1cd0 /* 800FA084 000F6FE4 38 00 00 00 */ li r0, 0 /* 800FA088 000F6FE8 90 1F 1C D0 */ stw r0, 0x1cd0(r31) /* 800FA08C 000F6FEC 80 7F 1C D0 */ lwz r3, 0x1cd0(r31) /* 800FA090 000F6FF0 2C 03 00 0F */ cmpwi r3, 0xf /* 800FA094 000F6FF4 40 80 00 40 */ bge lbl_800FA0D4 /* 800FA098 000F6FF8 54 60 10 3A */ slwi r0, r3, 2 /* 800FA09C 000F6FFC 20 83 00 0F */ subfic r4, r3, 0xf /* 800FA0A0 000F7000 7C 65 02 14 */ add r3, r5, r0 /* 800FA0A4 000F7004 7C 89 03 A6 */ mtctr r4 /* 800FA0A8 000F7008 2C 04 00 00 */ cmpwi r4, 0 /* 800FA0AC 000F700C 38 63 00 04 */ addi r3, r3, 4 /* 800FA0B0 000F7010 40 81 00 1C */ ble lbl_800FA0CC lbl_800FA0B4: /* 800FA0B4 000F7014 28 03 00 00 */ cmplwi r3, 0 /* 800FA0B8 000F7018 41 82 00 0C */ beq lbl_800FA0C4 /* 800FA0BC 000F701C C0 0D 88 40 */ lfs f0, lbl_805A7400@sda21(r13) /* 800FA0C0 000F7020 D0 03 00 00 */ stfs f0, 0(r3) lbl_800FA0C4: /* 800FA0C4 000F7024 38 63 00 04 */ addi r3, r3, 4 /* 800FA0C8 000F7028 42 00 FF EC */ bdnz lbl_800FA0B4 lbl_800FA0CC: /* 800FA0CC 000F702C 38 00 00 0F */ li r0, 0xf /* 800FA0D0 000F7030 90 05 00 00 */ stw r0, 0(r5) lbl_800FA0D4: /* 800FA0D4 000F7034 38 DF 1D 10 */ addi r6, r31, 0x1d10 /* 800FA0D8 000F7038 38 00 00 00 */ li r0, 0 /* 800FA0DC 000F703C 90 1F 1D 10 */ stw r0, 0x1d10(r31) /* 800FA0E0 000F7040 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800FA0E4 000F7044 38 63 66 A0 */ addi r3, r3, sZeroVector__9CVector3f@l /* 800FA0E8 000F7048 80 9F 1D 10 */ lwz r4, 0x1d10(r31) /* 800FA0EC 000F704C 2C 04 00 0F */ cmpwi r4, 0xf /* 800FA0F0 000F7050 40 80 00 50 */ bge lbl_800FA140 /* 800FA0F4 000F7054 1C 04 00 0C */ mulli r0, r4, 0xc /* 800FA0F8 000F7058 20 A4 00 0F */ subfic r5, r4, 0xf /* 800FA0FC 000F705C 7C 86 02 14 */ add r4, r6, r0 /* 800FA100 000F7060 7C A9 03 A6 */ mtctr r5 /* 800FA104 000F7064 2C 05 00 00 */ cmpwi r5, 0 /* 800FA108 000F7068 38 84 00 04 */ addi r4, r4, 4 /* 800FA10C 000F706C 40 81 00 2C */ ble lbl_800FA138 lbl_800FA110: /* 800FA110 000F7070 28 04 00 00 */ cmplwi r4, 0 /* 800FA114 000F7074 41 82 00 1C */ beq lbl_800FA130 /* 800FA118 000F7078 C0 03 00 00 */ lfs f0, 0(r3) /* 800FA11C 000F707C D0 04 00 00 */ stfs f0, 0(r4) /* 800FA120 000F7080 C0 03 00 04 */ lfs f0, 4(r3) /* 800FA124 000F7084 D0 04 00 04 */ stfs f0, 4(r4) /* 800FA128 000F7088 C0 03 00 08 */ lfs f0, 8(r3) /* 800FA12C 000F708C D0 04 00 08 */ stfs f0, 8(r4) lbl_800FA130: /* 800FA130 000F7090 38 84 00 0C */ addi r4, r4, 0xc /* 800FA134 000F7094 42 00 FF DC */ bdnz lbl_800FA110 lbl_800FA138: /* 800FA138 000F7098 38 00 00 0F */ li r0, 0xf /* 800FA13C 000F709C 90 06 00 00 */ stw r0, 0(r6) lbl_800FA140: /* 800FA140 000F70A0 38 E0 00 00 */ li r7, 0 /* 800FA144 000F70A4 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha /* 800FA148 000F70A8 90 FF 1D C8 */ stw r7, 0x1dc8(r31) /* 800FA14C 000F70AC 38 C3 66 A0 */ addi r6, r3, sZeroVector__9CVector3f@l /* 800FA150 000F70B0 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 800FA154 000F70B4 38 A0 00 01 */ li r5, 1 /* 800FA158 000F70B8 C0 06 00 00 */ lfs f0, 0(r6) /* 800FA15C 000F70BC 38 03 FF FF */ addi r0, r3, 0x0000FFFF@l /* 800FA160 000F70C0 C0 22 91 50 */ lfs f1, lbl_805AAE70@sda21(r2) /* 800FA164 000F70C4 38 80 00 00 */ li r4, 0 /* 800FA168 000F70C8 D0 1F 1D CC */ stfs f0, 0x1dcc(r31) /* 800FA16C 000F70CC C0 1E 00 04 */ lfs f0, 4(r30) /* 800FA170 000F70D0 D0 1F 1D D0 */ stfs f0, 0x1dd0(r31) /* 800FA174 000F70D4 C0 1E 00 08 */ lfs f0, 8(r30) /* 800FA178 000F70D8 D0 1F 1D D4 */ stfs f0, 0x1dd4(r31) /* 800FA17C 000F70DC C0 06 00 00 */ lfs f0, 0(r6) /* 800FA180 000F70E0 D0 1F 1D D8 */ stfs f0, 0x1dd8(r31) /* 800FA184 000F70E4 C0 1E 00 04 */ lfs f0, 4(r30) /* 800FA188 000F70E8 D0 1F 1D DC */ stfs f0, 0x1ddc(r31) /* 800FA18C 000F70EC C0 1E 00 08 */ lfs f0, 8(r30) /* 800FA190 000F70F0 D0 1F 1D E0 */ stfs f0, 0x1de0(r31) /* 800FA194 000F70F4 88 7F 1D E4 */ lbz r3, 0x1de4(r31) /* 800FA198 000F70F8 50 E3 3E 30 */ rlwimi r3, r7, 7, 0x18, 0x18 /* 800FA19C 000F70FC 98 7F 1D E4 */ stb r3, 0x1de4(r31) /* 800FA1A0 000F7100 88 7F 1D E4 */ lbz r3, 0x1de4(r31) /* 800FA1A4 000F7104 50 A3 36 72 */ rlwimi r3, r5, 6, 0x19, 0x19 /* 800FA1A8 000F7108 98 7F 1D E4 */ stb r3, 0x1de4(r31) /* 800FA1AC 000F710C D0 3F 1D E8 */ stfs f1, 0x1de8(r31) /* 800FA1B0 000F7110 D0 3F 1D EC */ stfs f1, 0x1dec(r31) /* 800FA1B4 000F7114 D0 3F 1D F0 */ stfs f1, 0x1df0(r31) /* 800FA1B8 000F7118 D0 3F 1D F4 */ stfs f1, 0x1df4(r31) /* 800FA1BC 000F711C 88 7F 1D F8 */ lbz r3, 0x1df8(r31) /* 800FA1C0 000F7120 50 E3 3E 30 */ rlwimi r3, r7, 7, 0x18, 0x18 /* 800FA1C4 000F7124 98 7F 1D F8 */ stb r3, 0x1df8(r31) /* 800FA1C8 000F7128 88 7F 1D F8 */ lbz r3, 0x1df8(r31) /* 800FA1CC 000F712C 50 E3 36 72 */ rlwimi r3, r7, 6, 0x19, 0x19 /* 800FA1D0 000F7130 98 7F 1D F8 */ stb r3, 0x1df8(r31) /* 800FA1D4 000F7134 88 7F 1D F8 */ lbz r3, 0x1df8(r31) /* 800FA1D8 000F7138 50 E3 2E B4 */ rlwimi r3, r7, 5, 0x1a, 0x1a /* 800FA1DC 000F713C 98 7F 1D F8 */ stb r3, 0x1df8(r31) /* 800FA1E0 000F7140 88 7F 1D F8 */ lbz r3, 0x1df8(r31) /* 800FA1E4 000F7144 50 E3 26 F6 */ rlwimi r3, r7, 4, 0x1b, 0x1b /* 800FA1E8 000F7148 98 7F 1D F8 */ stb r3, 0x1df8(r31) /* 800FA1EC 000F714C D0 3F 1D FC */ stfs f1, 0x1dfc(r31) /* 800FA1F0 000F7150 D0 3F 1E 00 */ stfs f1, 0x1e00(r31) /* 800FA1F4 000F7154 D0 3F 1E 04 */ stfs f1, 0x1e04(r31) /* 800FA1F8 000F7158 C0 06 00 00 */ lfs f0, 0(r6) /* 800FA1FC 000F715C D0 1F 1E 08 */ stfs f0, 0x1e08(r31) /* 800FA200 000F7160 C0 1E 00 04 */ lfs f0, 4(r30) /* 800FA204 000F7164 D0 1F 1E 0C */ stfs f0, 0x1e0c(r31) /* 800FA208 000F7168 C0 1E 00 08 */ lfs f0, 8(r30) /* 800FA20C 000F716C D0 1F 1E 10 */ stfs f0, 0x1e10(r31) /* 800FA210 000F7170 C0 06 00 00 */ lfs f0, 0(r6) /* 800FA214 000F7174 D0 1F 1E 14 */ stfs f0, 0x1e14(r31) /* 800FA218 000F7178 C0 1E 00 04 */ lfs f0, 4(r30) /* 800FA21C 000F717C D0 1F 1E 18 */ stfs f0, 0x1e18(r31) /* 800FA220 000F7180 C0 1E 00 08 */ lfs f0, 8(r30) /* 800FA224 000F7184 D0 1F 1E 1C */ stfs f0, 0x1e1c(r31) /* 800FA228 000F7188 90 FF 1E 20 */ stw r7, 0x1e20(r31) /* 800FA22C 000F718C 90 FF 1E 24 */ stw r7, 0x1e24(r31) /* 800FA230 000F7190 90 FF 1E 28 */ stw r7, 0x1e28(r31) /* 800FA234 000F7194 90 FF 1E 2C */ stw r7, 0x1e2c(r31) /* 800FA238 000F7198 90 FF 1E 30 */ stw r7, 0x1e30(r31) /* 800FA23C 000F719C B0 1F 1E 34 */ sth r0, 0x1e34(r31) /* 800FA240 000F71A0 B0 1F 1E 36 */ sth r0, 0x1e36(r31) /* 800FA244 000F71A4 90 FF 1E 38 */ stw r7, 0x1e38(r31) /* 800FA248 000F71A8 90 FF 1E 3C */ stw r7, 0x1e3c(r31) /* 800FA24C 000F71AC 90 FF 1E 40 */ stw r7, 0x1e40(r31) /* 800FA250 000F71B0 D0 3F 1E 44 */ stfs f1, 0x1e44(r31) /* 800FA254 000F71B4 D0 3F 1E 48 */ stfs f1, 0x1e48(r31) /* 800FA258 000F71B8 D0 3F 1E 4C */ stfs f1, 0x1e4c(r31) /* 800FA25C 000F71BC 90 FF 1E 50 */ stw r7, 0x1e50(r31) /* 800FA260 000F71C0 80 7F 19 D4 */ lwz r3, 0x19d4(r31) /* 800FA264 000F71C4 81 83 00 00 */ lwz r12, 0(r3) /* 800FA268 000F71C8 81 8C 00 2C */ lwz r12, 0x2c(r12) /* 800FA26C 000F71CC 7D 89 03 A6 */ mtctr r12 /* 800FA270 000F71D0 4E 80 04 21 */ bctrl /* 800FA274 000F71D4 80 7F 19 D4 */ lwz r3, 0x19d4(r31) /* 800FA278 000F71D8 C8 22 93 30 */ lfd f1, lbl_805AB050@sda21(r2) /* 800FA27C 000F71DC 81 83 00 00 */ lwz r12, 0(r3) /* 800FA280 000F71E0 81 8C 00 0C */ lwz r12, 0xc(r12) /* 800FA284 000F71E4 7D 89 03 A6 */ mtctr r12 /* 800FA288 000F71E8 4E 80 04 21 */ bctrl /* 800FA28C 000F71EC 7F E3 FB 78 */ mr r3, r31 /* 800FA290 000F71F0 4B FF EB 75 */ bl GetBallRadius__10CMorphBallCFv /* 800FA294 000F71F4 C0 02 91 E8 */ lfs f0, lbl_805AAF08@sda21(r2) /* 800FA298 000F71F8 3C 60 80 3D */ lis r3, lbl_803CEBF4@ha /* 800FA29C 000F71FC 3B C3 EB F4 */ addi r30, r3, lbl_803CEBF4@l /* 800FA2A0 000F7200 3B BF 19 E4 */ addi r29, r31, 0x19e4 /* 800FA2A4 000F7204 EC 00 08 2A */ fadds f0, f0, f1 /* 800FA2A8 000F7208 3B 80 00 00 */ li r28, 0 /* 800FA2AC 000F720C D0 0D A3 28 */ stfs f0, lbl_805A8EE8@sda21(r13) lbl_800FA2B0: /* 800FA2B0 000F7210 38 9E 00 DC */ addi r4, r30, 0xdc /* 800FA2B4 000F7214 3B 60 00 00 */ li r27, 0 /* 800FA2B8 000F7218 38 60 02 10 */ li r3, 0x210 /* 800FA2BC 000F721C 38 A0 00 00 */ li r5, 0 /* 800FA2C0 000F7220 48 21 B5 AD */ bl __nw__FUlPCcPCc /* 800FA2C4 000F7224 7C 7A 1B 79 */ or. r26, r3, r3 /* 800FA2C8 000F7228 41 82 00 28 */ beq lbl_800FA2F0 /* 800FA2CC 000F722C 38 61 00 10 */ addi r3, r1, 0x10 /* 800FA2D0 000F7230 38 9F 19 A0 */ addi r4, r31, 0x19a0 /* 800FA2D4 000F7234 48 24 6B D5 */ bl __ct__6CTokenFRC6CToken /* 800FA2D8 000F7238 7F 43 D3 78 */ mr r3, r26 /* 800FA2DC 000F723C 38 81 00 10 */ addi r4, r1, 0x10 /* 800FA2E0 000F7240 3B 60 00 01 */ li r27, 1 /* 800FA2E4 000F7244 38 A0 00 00 */ li r5, 0 /* 800FA2E8 000F7248 48 23 4A FD */ bl "__ct__15CParticleSwooshF28TToken<18CSwooshDescription>i" /* 800FA2EC 000F724C 7C 7A 1B 78 */ mr r26, r3 lbl_800FA2F0: /* 800FA2F0 000F7250 80 1D 00 00 */ lwz r0, 0(r29) /* 800FA2F4 000F7254 7C 7A 00 D0 */ neg r3, r26 /* 800FA2F8 000F7258 7C 65 D3 78 */ or r5, r3, r26 /* 800FA2FC 000F725C 88 6D 88 44 */ lbz r3, lbl_805A7404@sda21(r13) /* 800FA300 000F7260 1C 00 00 0C */ mulli r0, r0, 0xc /* 800FA304 000F7264 38 80 00 00 */ li r4, 0 /* 800FA308 000F7268 54 A5 0F FE */ srwi r5, r5, 0x1f /* 800FA30C 000F726C 93 41 00 0C */ stw r26, 0xc(r1) /* 800FA310 000F7270 98 A1 00 08 */ stb r5, 8(r1) /* 800FA314 000F7274 7C DD 02 14 */ add r6, r29, r0 /* 800FA318 000F7278 34 C6 00 04 */ addic. r6, r6, 4 /* 800FA31C 000F727C 98 A1 00 C8 */ stb r5, 0xc8(r1) /* 800FA320 000F7280 93 41 00 CC */ stw r26, 0xcc(r1) /* 800FA324 000F7284 98 81 00 08 */ stb r4, 8(r1) /* 800FA328 000F7288 98 61 00 D0 */ stb r3, 0xd0(r1) /* 800FA32C 000F728C 41 82 00 14 */ beq lbl_800FA340 /* 800FA330 000F7290 98 A6 00 00 */ stb r5, 0(r6) /* 800FA334 000F7294 93 46 00 04 */ stw r26, 4(r6) /* 800FA338 000F7298 98 81 00 C8 */ stb r4, 0xc8(r1) /* 800FA33C 000F729C 98 66 00 08 */ stb r3, 8(r6) lbl_800FA340: /* 800FA340 000F72A0 80 7F 19 E4 */ lwz r3, 0x19e4(r31) /* 800FA344 000F72A4 88 01 00 C8 */ lbz r0, 0xc8(r1) /* 800FA348 000F72A8 38 63 00 01 */ addi r3, r3, 1 /* 800FA34C 000F72AC 28 00 00 00 */ cmplwi r0, 0 /* 800FA350 000F72B0 90 7F 19 E4 */ stw r3, 0x19e4(r31) /* 800FA354 000F72B4 41 82 00 24 */ beq lbl_800FA378 /* 800FA358 000F72B8 80 61 00 CC */ lwz r3, 0xcc(r1) /* 800FA35C 000F72BC 28 03 00 00 */ cmplwi r3, 0 /* 800FA360 000F72C0 41 82 00 18 */ beq lbl_800FA378 /* 800FA364 000F72C4 81 83 00 00 */ lwz r12, 0(r3) /* 800FA368 000F72C8 38 80 00 01 */ li r4, 1 /* 800FA36C 000F72CC 81 8C 00 08 */ lwz r12, 8(r12) /* 800FA370 000F72D0 7D 89 03 A6 */ mtctr r12 /* 800FA374 000F72D4 4E 80 04 21 */ bctrl lbl_800FA378: /* 800FA378 000F72D8 88 01 00 08 */ lbz r0, 8(r1) /* 800FA37C 000F72DC 28 00 00 00 */ cmplwi r0, 0 /* 800FA380 000F72E0 41 82 00 24 */ beq lbl_800FA3A4 /* 800FA384 000F72E4 80 61 00 0C */ lwz r3, 0xc(r1) /* 800FA388 000F72E8 28 03 00 00 */ cmplwi r3, 0 /* 800FA38C 000F72EC 41 82 00 18 */ beq lbl_800FA3A4 /* 800FA390 000F72F0 81 83 00 00 */ lwz r12, 0(r3) /* 800FA394 000F72F4 38 80 00 01 */ li r4, 1 /* 800FA398 000F72F8 81 8C 00 08 */ lwz r12, 8(r12) /* 800FA39C 000F72FC 7D 89 03 A6 */ mtctr r12 /* 800FA3A0 000F7300 4E 80 04 21 */ bctrl lbl_800FA3A4: /* 800FA3A4 000F7304 7F 60 07 75 */ extsb. r0, r27 /* 800FA3A8 000F7308 41 82 00 10 */ beq lbl_800FA3B8 /* 800FA3AC 000F730C 38 61 00 10 */ addi r3, r1, 0x10 /* 800FA3B0 000F7310 38 80 00 00 */ li r4, 0 /* 800FA3B4 000F7314 48 24 6A 8D */ bl __dt__6CTokenFv lbl_800FA3B8: /* 800FA3B8 000F7318 3B 9C 00 01 */ addi r28, r28, 1 /* 800FA3BC 000F731C 2C 1C 00 20 */ cmpwi r28, 0x20 /* 800FA3C0 000F7320 41 80 FE F0 */ blt lbl_800FA2B0 /* 800FA3C4 000F7324 80 8D A3 2C */ lwz r4, lbl_805A8EEC@sda21(r13) /* 800FA3C8 000F7328 38 61 00 B8 */ addi r3, r1, 0xb8 /* 800FA3CC 000F732C 4B F0 A8 ED */ bl string_l__4rstlFPCc /* 800FA3D0 000F7330 7F E3 FB 78 */ mr r3, r31 /* 800FA3D4 000F7334 38 81 00 B8 */ addi r4, r1, 0xb8 /* 800FA3D8 000F7338 4B FF 49 7D */ bl "LoadAnimationTokens__10CMorphBallFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" /* 800FA3DC 000F733C 38 61 00 B8 */ addi r3, r1, 0xb8 /* 800FA3E0 000F7340 48 24 37 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" /* 800FA3E4 000F7344 7F E3 FB 78 */ mr r3, r31 /* 800FA3E8 000F7348 4B FF 37 35 */ bl InitializeWakeEffects__10CMorphBallFv /* 800FA3EC 000F734C 7F E3 FB 78 */ mr r3, r31 /* 800FA3F0 000F7350 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 /* 800FA3F4 000F7354 CB E1 01 50 */ lfd f31, 0x150(r1) /* 800FA3F8 000F7358 BB 41 01 38 */ lmw r26, 0x138(r1) /* 800FA3FC 000F735C 80 01 01 64 */ lwz r0, 0x164(r1) /* 800FA400 000F7360 7C 08 03 A6 */ mtlr r0 /* 800FA404 000F7364 38 21 01 60 */ addi r1, r1, 0x160 /* 800FA408 000F7368 4E 80 00 20 */ blr .global sub_800fa40c sub_800fa40c: /* 800FA40C 000F736C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800FA410 000F7370 7C 08 02 A6 */ mflr r0 /* 800FA414 000F7374 90 01 00 14 */ stw r0, 0x14(r1) /* 800FA418 000F7378 4B F2 0B B5 */ bl "ReferenceCount__24TOneStatic<10CMorphBall>Fv" /* 800FA41C 000F737C 80 83 00 00 */ lwz r4, 0(r3) /* 800FA420 000F7380 38 04 FF FF */ addi r0, r4, -1 /* 800FA424 000F7384 90 03 00 00 */ stw r0, 0(r3) /* 800FA428 000F7388 80 01 00 14 */ lwz r0, 0x14(r1) /* 800FA42C 000F738C 7C 08 03 A6 */ mtlr r0 /* 800FA430 000F7390 38 21 00 10 */ addi r1, r1, 0x10 /* 800FA434 000F7394 4E 80 00 20 */ blr .global sub_800fa438 sub_800fa438: /* 800FA438 000F7398 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800FA43C 000F739C 7C 08 02 A6 */ mflr r0 /* 800FA440 000F73A0 90 01 00 14 */ stw r0, 0x14(r1) /* 800FA444 000F73A4 93 E1 00 0C */ stw r31, 0xc(r1) /* 800FA448 000F73A8 93 C1 00 08 */ stw r30, 8(r1) /* 800FA44C 000F73AC 7C 7E 1B 78 */ mr r30, r3 /* 800FA450 000F73B0 80 03 00 04 */ lwz r0, 4(r3) /* 800FA454 000F73B4 83 E4 00 04 */ lwz r31, 4(r4) /* 800FA458 000F73B8 7C 04 00 40 */ cmplw r4, r0 /* 800FA45C 000F73BC 40 82 00 08 */ bne lbl_800FA464 /* 800FA460 000F73C0 93 FE 00 04 */ stw r31, 4(r30) lbl_800FA464: /* 800FA464 000F73C4 80 04 00 04 */ lwz r0, 4(r4) /* 800FA468 000F73C8 28 04 00 00 */ cmplwi r4, 0 /* 800FA46C 000F73CC 80 64 00 00 */ lwz r3, 0(r4) /* 800FA470 000F73D0 90 03 00 04 */ stw r0, 4(r3) /* 800FA474 000F73D4 80 04 00 00 */ lwz r0, 0(r4) /* 800FA478 000F73D8 80 64 00 04 */ lwz r3, 4(r4) /* 800FA47C 000F73DC 90 03 00 00 */ stw r0, 0(r3) /* 800FA480 000F73E0 41 82 00 0C */ beq lbl_800FA48C /* 800FA484 000F73E4 7C 83 23 78 */ mr r3, r4 /* 800FA488 000F73E8 48 21 B4 A9 */ bl Free__7CMemoryFPCv lbl_800FA48C: /* 800FA48C 000F73EC 80 9E 00 14 */ lwz r4, 0x14(r30) /* 800FA490 000F73F0 7F E3 FB 78 */ mr r3, r31 /* 800FA494 000F73F4 38 04 FF FF */ addi r0, r4, -1 /* 800FA498 000F73F8 90 1E 00 14 */ stw r0, 0x14(r30) /* 800FA49C 000F73FC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800FA4A0 000F7400 83 C1 00 08 */ lwz r30, 8(r1) /* 800FA4A4 000F7404 80 01 00 14 */ lwz r0, 0x14(r1) /* 800FA4A8 000F7408 7C 08 03 A6 */ mtlr r0 /* 800FA4AC 000F740C 38 21 00 10 */ addi r1, r1, 0x10 /* 800FA4B0 000F7410 4E 80 00 20 */ blr .global sub_800fa4b4 sub_800fa4b4: /* 800FA4B4 000F7414 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800FA4B8 000F7418 7C 08 02 A6 */ mflr r0 /* 800FA4BC 000F741C 90 01 00 24 */ stw r0, 0x24(r1) /* 800FA4C0 000F7420 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800FA4C4 000F7424 93 C1 00 18 */ stw r30, 0x18(r1) /* 800FA4C8 000F7428 7C 9E 23 78 */ mr r30, r4 /* 800FA4CC 000F742C 93 A1 00 14 */ stw r29, 0x14(r1) /* 800FA4D0 000F7430 7C 7D 1B 79 */ or. r29, r3, r3 /* 800FA4D4 000F7434 41 82 00 38 */ beq lbl_800FA50C /* 800FA4D8 000F7438 83 FD 00 04 */ lwz r31, 4(r29) /* 800FA4DC 000F743C 48 00 00 14 */ b lbl_800FA4F0 lbl_800FA4E0: /* 800FA4E0 000F7440 7F E3 FB 79 */ or. r3, r31, r31 /* 800FA4E4 000F7444 83 FF 00 04 */ lwz r31, 4(r31) /* 800FA4E8 000F7448 41 82 00 08 */ beq lbl_800FA4F0 /* 800FA4EC 000F744C 48 21 B4 45 */ bl Free__7CMemoryFPCv lbl_800FA4F0: /* 800FA4F0 000F7450 80 1D 00 08 */ lwz r0, 8(r29) /* 800FA4F4 000F7454 7C 1F 00 40 */ cmplw r31, r0 /* 800FA4F8 000F7458 40 82 FF E8 */ bne lbl_800FA4E0 /* 800FA4FC 000F745C 7F C0 07 35 */ extsh. r0, r30 /* 800FA500 000F7460 40 81 00 0C */ ble lbl_800FA50C /* 800FA504 000F7464 7F A3 EB 78 */ mr r3, r29 /* 800FA508 000F7468 48 21 B4 29 */ bl Free__7CMemoryFPCv lbl_800FA50C: /* 800FA50C 000F746C 80 01 00 24 */ lwz r0, 0x24(r1) /* 800FA510 000F7470 7F A3 EB 78 */ mr r3, r29 /* 800FA514 000F7474 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800FA518 000F7478 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800FA51C 000F747C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800FA520 000F7480 7C 08 03 A6 */ mtlr r0 /* 800FA524 000F7484 38 21 00 20 */ addi r1, r1, 0x20 /* 800FA528 000F7488 4E 80 00 20 */ blr .global __sinit_CMorphBall_cpp __sinit_CMorphBall_cpp: /* 800FA52C 000F748C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800FA530 000F7490 7C 08 02 A6 */ mflr r0 /* 800FA534 000F7494 3C 80 80 3D */ lis r4, lbl_803CE910@ha /* 800FA538 000F7498 3C A0 80 47 */ lis r5, lbl_8046C4F8@ha /* 800FA53C 000F749C 38 C4 E9 10 */ addi r6, r4, lbl_803CE910@l /* 800FA540 000F74A0 90 01 00 14 */ stw r0, 0x14(r1) /* 800FA544 000F74A4 81 26 00 00 */ lwz r9, 0(r6) /* 800FA548 000F74A8 38 00 00 00 */ li r0, 0 /* 800FA54C 000F74AC 81 06 00 40 */ lwz r8, 0x40(r6) /* 800FA550 000F74B0 3C 60 80 57 */ lis r3, lbl_8056D4F4@ha /* 800FA554 000F74B4 80 E6 01 00 */ lwz r7, 0x100(r6) /* 800FA558 000F74B8 3C 80 80 10 */ lis r4, sub_800fa590@ha /* 800FA55C 000F74BC 80 C6 01 40 */ lwz r6, 0x140(r6) /* 800FA560 000F74C0 38 84 A5 90 */ addi r4, r4, sub_800fa590@l /* 800FA564 000F74C4 91 2D A3 2C */ stw r9, lbl_805A8EEC@sda21(r13) /* 800FA568 000F74C8 38 A5 C4 F8 */ addi r5, r5, lbl_8046C4F8@l /* 800FA56C 000F74CC 91 0D A3 30 */ stw r8, lbl_805A8EF0@sda21(r13) /* 800FA570 000F74D0 90 ED A3 34 */ stw r7, lbl_805A8EF4@sda21(r13) /* 800FA574 000F74D4 90 CD A3 38 */ stw r6, lbl_805A8EF8@sda21(r13) /* 800FA578 000F74D8 94 03 D4 F4 */ stwu r0, lbl_8056D4F4@l(r3) /* 800FA57C 000F74DC 48 28 F1 11 */ bl __register_global_object /* 800FA580 000F74E0 80 01 00 14 */ lwz r0, 0x14(r1) /* 800FA584 000F74E4 7C 08 03 A6 */ mtlr r0 /* 800FA588 000F74E8 38 21 00 10 */ addi r1, r1, 0x10 /* 800FA58C 000F74EC 4E 80 00 20 */ blr .global sub_800fa590 sub_800fa590: /* 800FA590 000F74F0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800FA594 000F74F4 7C 08 02 A6 */ mflr r0 /* 800FA598 000F74F8 90 01 00 14 */ stw r0, 0x14(r1) /* 800FA59C 000F74FC 93 E1 00 0C */ stw r31, 0xc(r1) /* 800FA5A0 000F7500 7C 7F 1B 79 */ or. r31, r3, r3 /* 800FA5A4 000F7504 41 82 00 68 */ beq lbl_800FA60C /* 800FA5A8 000F7508 80 DF 00 00 */ lwz r6, 0(r31) /* 800FA5AC 000F750C 38 60 00 00 */ li r3, 0 /* 800FA5B0 000F7510 2C 06 00 00 */ cmpwi r6, 0 /* 800FA5B4 000F7514 40 81 00 40 */ ble lbl_800FA5F4 /* 800FA5B8 000F7518 2C 06 00 08 */ cmpwi r6, 8 /* 800FA5BC 000F751C 38 A6 FF F8 */ addi r5, r6, -8 /* 800FA5C0 000F7520 40 81 00 20 */ ble lbl_800FA5E0 /* 800FA5C4 000F7524 38 05 00 07 */ addi r0, r5, 7 /* 800FA5C8 000F7528 54 00 E8 FE */ srwi r0, r0, 3 /* 800FA5CC 000F752C 7C 09 03 A6 */ mtctr r0 /* 800FA5D0 000F7530 2C 05 00 00 */ cmpwi r5, 0 /* 800FA5D4 000F7534 40 81 00 0C */ ble lbl_800FA5E0 lbl_800FA5D8: /* 800FA5D8 000F7538 38 63 00 08 */ addi r3, r3, 8 /* 800FA5DC 000F753C 42 00 FF FC */ bdnz lbl_800FA5D8 lbl_800FA5E0: /* 800FA5E0 000F7540 7C 03 30 50 */ subf r0, r3, r6 /* 800FA5E4 000F7544 7C 09 03 A6 */ mtctr r0 /* 800FA5E8 000F7548 7C 03 30 00 */ cmpw r3, r6 /* 800FA5EC 000F754C 40 80 00 08 */ bge lbl_800FA5F4 lbl_800FA5F0: /* 800FA5F0 000F7550 42 00 00 00 */ bdnz lbl_800FA5F0 lbl_800FA5F4: /* 800FA5F4 000F7554 38 60 00 00 */ li r3, 0 /* 800FA5F8 000F7558 7C 80 07 35 */ extsh. r0, r4 /* 800FA5FC 000F755C 90 7F 00 00 */ stw r3, 0(r31) /* 800FA600 000F7560 40 81 00 0C */ ble lbl_800FA60C /* 800FA604 000F7564 7F E3 FB 78 */ mr r3, r31 /* 800FA608 000F7568 48 21 B3 29 */ bl Free__7CMemoryFPCv lbl_800FA60C: /* 800FA60C 000F756C 80 01 00 14 */ lwz r0, 0x14(r1) /* 800FA610 000F7570 7F E3 FB 78 */ mr r3, r31 /* 800FA614 000F7574 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800FA618 000F7578 7C 08 03 A6 */ mtlr r0 /* 800FA61C 000F757C 38 21 00 10 */ addi r1, r1, 0x10 /* 800FA620 000F7580 4E 80 00 20 */ blr .section .rodata .balign 8 .global lbl_803CE910 lbl_803CE910: # ROM: 0x3CB910 .4byte lbl_803CEBF4 .4byte 0 .4byte lbl_803CEBF4 .4byte 0 .4byte lbl_803CEBF4 .4byte 0x00000001 .4byte lbl_803CEBF4 .4byte 0 .4byte lbl_803CEC02 .4byte 0 .4byte lbl_803CEC02 .4byte 0x00000002 .4byte lbl_803CEC02 .4byte 0x00000001 .4byte lbl_803CEC02 .4byte 0x00000003 .4byte lbl_803CEC16 .4byte 0 .4byte lbl_803CEC16 .4byte 0 .4byte lbl_803CEC16 .4byte 0x00000001 .4byte lbl_803CEC16 .4byte 0 .4byte lbl_803CEC2B .4byte 0 .4byte lbl_803CEC2B .4byte 0x00000002 .4byte lbl_803CEC2B .4byte 0x00000001 .4byte lbl_803CEC2B .4byte 0x00000003 .4byte lbl_803CEC46 .4byte 0 .4byte lbl_803CEC46 .4byte 0 .4byte lbl_803CEC46 .4byte 0x00000001 .4byte lbl_803CEC46 .4byte 0x00000002 .4byte lbl_803CEC2B .4byte 0 .4byte lbl_803CEC2B .4byte 0x00000002 .4byte lbl_803CEC2B .4byte 0x00000001 .4byte lbl_803CEC2B .4byte 0x00000003 .global lbl_803CE9D0 lbl_803CE9D0: # ROM: 0x3CB9D0 .4byte lbl_803CEC61 .4byte 0 .4byte lbl_803CEC61 .4byte 0 .4byte lbl_803CEC61 .4byte 0x00000001 .4byte lbl_803CEC75 .4byte 0 .4byte lbl_803CEC02 .4byte 0 .4byte lbl_803CEC02 .4byte 0x00000002 .4byte lbl_803CEC02 .4byte 0x00000001 .4byte lbl_803CEC02 .4byte 0x00000003 .global lbl_803CEA10 lbl_803CEA10: # ROM: 0x3CBA10 .4byte lbl_803CEC89 .4byte 0 .4byte lbl_803CEC89 .4byte 0 .4byte lbl_803CEC89 .4byte 0x00000001 .4byte lbl_803CECA2 .4byte 0 .4byte lbl_803CEC89 .4byte 0 .4byte lbl_803CEC89 .4byte 0 .4byte lbl_803CEC89 .4byte 0x00000001 .4byte lbl_803CECA2 .4byte 0 .4byte lbl_803CECBB .4byte 0 .4byte lbl_803CECBB .4byte 0 .4byte lbl_803CECBB .4byte 0 .4byte lbl_803CECBB .4byte 0 .4byte lbl_803CECBB .4byte 0 .4byte lbl_803CECBB .4byte 0 .4byte lbl_803CECBB .4byte 0 .4byte lbl_803CECBB .4byte 0 .global lbl_803CEA90 lbl_803CEA90: # ROM: 0x3CBA90 .4byte 0x00000003 .4byte 0x00000003 .4byte 0x00000002 .4byte 0x00000004 .4byte 0x00000005 .4byte 0x00000007 .4byte 0x00000006 .4byte 0x00000008 .global lbl_803CEAB0 lbl_803CEAB0: # ROM: 0x3CBAB0 .4byte 0 .4byte 0 .4byte 0x00000001 .4byte 0 .4byte 0x00000005 .4byte 0x00000007 .4byte 0x00000006 .4byte 0x00000008 .global lbl_803CEAD0 lbl_803CEAD0: # ROM: 0x3CBAD0 .4byte 0xFFFFFFFF .4byte 0xFFFFFFFF .4byte 0xFFFFFFFF .4byte 0xFFD519FF .4byte 0xFFFFFFFF .4byte 0xFFFFFFFF .4byte 0xFFFFFF00 .global lbl_803CEAEC lbl_803CEAEC: # ROM: 0x3CBAEC .4byte 0xC27E1066 .4byte 0xC4FF60FF .4byte 0x903333FF .4byte 0xFF202000 .4byte 0x9DB6D3F1 .4byte 0x00A686D8 .4byte 0xFB982100 .global lbl_803CEB08 lbl_803CEB08: # ROM: 0x3CBB08 .4byte 0xC27E1066 .4byte 0xC4FF6CFF .4byte 0x613333FF .4byte 0xFF202000 .4byte 0x9DB6D3F1 .4byte 0x00A686D8 .4byte 0xFB982100 .4byte 0xC28F1770 .4byte 0xD4FF6AFF .4byte 0x8A3D4DFF .4byte 0xC0000000 .4byte 0xBEDCDFFF .4byte 0x00C49EFF .4byte 0xFF9A2200 .4byte 0xFFE600FF .4byte 0xE600FFE6 .4byte 0x00FFE600 .4byte 0xFF8020FF .4byte 0xE600FFE6 .4byte 0x00FFE600 .4byte 0xFFE60000 .4byte 0xFFCC00FF .4byte 0xCC00FFCC .4byte 0x00FFCC00 .4byte 0xFFD519FF .4byte 0xCC00FFCC .4byte 0x00FFCC00 .4byte 0xFFCC0000 .global lbl_803CEB78 lbl_803CEB78: # ROM: 0x3CBB78 .4byte 0xC27E1066 .4byte 0xC4FF60FF .4byte 0x903333FF .4byte 0xFF808000 .4byte 0x9DB6D3F1 .4byte 0x006033FF .4byte 0xFB982100 .global lbl_803CEB94 lbl_803CEB94: # ROM: 0x3CBB94 .4byte 0xFFFF05DE .4byte 0x05DD062F .4byte 0x0786FFFF .4byte 0x05DC060B .4byte 0x05C8088A .4byte 0x06980787 .4byte 0x0630FFFF .4byte 0x062805DD .4byte 0x05DD05C8 .4byte 0xFFFFFFFF .4byte 0xFFFFFFFF .4byte 0x05FE0628 .global lbl_803CEBC4 lbl_803CEBC4: # ROM: 0x3CBBC4 .4byte 0xFFFF05C3 .4byte 0x05E0062C .4byte 0x065BFFFF .4byte 0x05DA0609 .4byte 0x05C00697 .4byte 0x0697065C .4byte 0x062DFFFF .4byte 0x062705E0 .4byte 0x05E005C0 .4byte 0xFFFFFFFF .4byte 0xFFFFFFFF .4byte 0x05FD0627 .global lbl_803CEBF4 lbl_803CEBF4: # ROM: 0x3CBBF4 .asciz "SamusBallANCS" .global lbl_803CEC02 lbl_803CEC02: # ROM: 0x3CBC02 .byte 0x53, 0x61 .asciz "musFusionBallANCS" .global lbl_803CEC16 lbl_803CEC16: # ROM: 0x3CBC16 .byte 0x53, 0x61 .asciz "musBallLowPolyCMDL" .global lbl_803CEC2B lbl_803CEC2B: # ROM: 0x3CBC2B .byte 0x53 .asciz "amusBallFusionLowPolyCMDL" .global lbl_803CEC46 lbl_803CEC46: # ROM: 0x3CBC46 .byte 0x53, 0x61 .asciz "musSpiderBallLowPolyCMDL" .global lbl_803CEC61 lbl_803CEC61: # ROM: 0x3CBC61 .byte 0x53, 0x61, 0x6D .asciz "usSpiderBallANCS" .global lbl_803CEC75 lbl_803CEC75: # ROM: 0x3CBC75 .byte 0x53, 0x61, 0x6D .asciz "usPhazonBallANCS" .global lbl_803CEC89 lbl_803CEC89: # ROM: 0x3CBC89 .byte 0x53, 0x61, 0x6D .asciz "usSpiderBallGlassCMDL" .global lbl_803CECA2 lbl_803CECA2: # ROM: 0x3CBCA2 .byte 0x53, 0x61 .asciz "musPhazonBallGlassCMDL" .global lbl_803CECBB lbl_803CECBB: # ROM: 0x3CBCBB .byte 0x53 .asciz "amusBallFrozenCMDL" .balign 4 .asciz "??(??)" .byte 0x54 .asciz "XTR_BallFade" .byte 0x44, 0x69, 0x72 .asciz "tWake" .byte 0x50, 0x68 .asciz "azonWake" .byte 0x50, 0x68, 0x61 .asciz "zonWakeOrange" .byte 0x4C, 0x61 .asciz "vaWake" .byte 0x53 .asciz "nowWake" .asciz "MudWake" .asciz "SandWake" .byte 0x52, 0x61, 0x69 .asciz "nWake" .byte 0x5F, 0x44 .4byte 0x47525000 .asciz "BallLight" .byte 0x53, 0x6C .asciz "owBlueTailSwoosh" .byte 0x53, 0x6C, 0x6F .asciz "wBlueTailSwoosh2" .byte 0x4A, 0x61, 0x67 .asciz "gyTrail" .asciz "WallSpark" .byte 0x42, 0x61 .asciz "llInnerGlow" .asciz "SpiderBallMagnetEffect" .byte 0x42 .asciz "oostBallGlow" .byte 0x53, 0x70, 0x69 .asciz "derElectric" .asciz "MorphBallTransitionFlash" .byte 0x45, 0x66, 0x66 .asciz "ect_MorphBallIceBreak" .balign 4