diff --git a/asm/Kyoto_CWD/CAxisAngle.s b/asm/Kyoto_CWD/CAxisAngle.s new file mode 100644 index 00000000..c7400c7b --- /dev/null +++ b/asm/Kyoto_CWD/CAxisAngle.s @@ -0,0 +1,143 @@ +.include "macros.inc" + +.section .text, "ax" + +.global __pl__FRC10CAxisAngleRC10CAxisAngle +__pl__FRC10CAxisAngleRC10CAxisAngle: +/* 8001B424 00018384 C0 24 00 00 */ lfs f1, 0(r4) +/* 8001B428 00018388 C0 05 00 00 */ lfs f0, 0(r5) +/* 8001B42C 0001838C C0 84 00 04 */ lfs f4, 4(r4) +/* 8001B430 00018390 C0 65 00 04 */ lfs f3, 4(r5) +/* 8001B434 00018394 EC 01 00 2A */ fadds f0, f1, f0 +/* 8001B438 00018398 C0 44 00 08 */ lfs f2, 8(r4) +/* 8001B43C 0001839C C0 25 00 08 */ lfs f1, 8(r5) +/* 8001B440 000183A0 EC 64 18 2A */ fadds f3, f4, f3 +/* 8001B444 000183A4 D0 03 00 00 */ stfs f0, 0(r3) +/* 8001B448 000183A8 EC 02 08 2A */ fadds f0, f2, f1 +/* 8001B44C 000183AC D0 63 00 04 */ stfs f3, 4(r3) +/* 8001B450 000183B0 D0 03 00 08 */ stfs f0, 8(r3) +/* 8001B454 000183B4 4E 80 00 20 */ blr + +.global __ml__FRCfRC10CAxisAngle +__ml__FRCfRC10CAxisAngle: +/* 8001B458 000183B8 C0 64 00 00 */ lfs f3, 0(r4) +/* 8001B45C 000183BC C0 05 00 00 */ lfs f0, 0(r5) +/* 8001B460 000183C0 C0 45 00 04 */ lfs f2, 4(r5) +/* 8001B464 000183C4 C0 25 00 08 */ lfs f1, 8(r5) +/* 8001B468 000183C8 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8001B46C 000183CC EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8001B470 000183D0 EC 23 00 72 */ fmuls f1, f3, f1 +/* 8001B474 000183D4 D0 03 00 00 */ stfs f0, 0(r3) +/* 8001B478 000183D8 D0 43 00 04 */ stfs f2, 4(r3) +/* 8001B47C 000183DC D0 23 00 08 */ stfs f1, 8(r3) +/* 8001B480 000183E0 4E 80 00 20 */ blr + +.global __ml__FRC10CAxisAngleRCf +__ml__FRC10CAxisAngleRCf: +/* 8001B484 000183E4 C0 65 00 00 */ lfs f3, 0(r5) +/* 8001B488 000183E8 C0 04 00 00 */ lfs f0, 0(r4) +/* 8001B48C 000183EC C0 44 00 04 */ lfs f2, 4(r4) +/* 8001B490 000183F0 C0 24 00 08 */ lfs f1, 8(r4) +/* 8001B494 000183F4 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8001B498 000183F8 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8001B49C 000183FC EC 23 00 72 */ fmuls f1, f3, f1 +/* 8001B4A0 00018400 D0 03 00 00 */ stfs f0, 0(r3) +/* 8001B4A4 00018404 D0 43 00 04 */ stfs f2, 4(r3) +/* 8001B4A8 00018408 D0 23 00 08 */ stfs f1, 8(r3) +/* 8001B4AC 0001840C 4E 80 00 20 */ blr + +.global __apl__10CAxisAngleFRC10CAxisAngle +__apl__10CAxisAngleFRC10CAxisAngle: +/* 8001B4B0 00018410 C0 23 00 00 */ lfs f1, 0(r3) +/* 8001B4B4 00018414 C0 04 00 00 */ lfs f0, 0(r4) +/* 8001B4B8 00018418 EC 01 00 2A */ fadds f0, f1, f0 +/* 8001B4BC 0001841C D0 03 00 00 */ stfs f0, 0(r3) +/* 8001B4C0 00018420 C0 23 00 04 */ lfs f1, 4(r3) +/* 8001B4C4 00018424 C0 04 00 04 */ lfs f0, 4(r4) +/* 8001B4C8 00018428 EC 01 00 2A */ fadds f0, f1, f0 +/* 8001B4CC 0001842C D0 03 00 04 */ stfs f0, 4(r3) +/* 8001B4D0 00018430 C0 23 00 08 */ lfs f1, 8(r3) +/* 8001B4D4 00018434 C0 04 00 08 */ lfs f0, 8(r4) +/* 8001B4D8 00018438 EC 01 00 2A */ fadds f0, f1, f0 +/* 8001B4DC 0001843C D0 03 00 08 */ stfs f0, 8(r3) +/* 8001B4E0 00018440 4E 80 00 20 */ blr + +.global __amu__10CAxisAngleFRCf +__amu__10CAxisAngleFRCf: +/* 8001B4E4 00018444 C0 24 00 00 */ lfs f1, 0(r4) +/* 8001B4E8 00018448 C0 03 00 00 */ lfs f0, 0(r3) +/* 8001B4EC 0001844C EC 00 00 72 */ fmuls f0, f0, f1 +/* 8001B4F0 00018450 D0 03 00 00 */ stfs f0, 0(r3) +/* 8001B4F4 00018454 C0 03 00 04 */ lfs f0, 4(r3) +/* 8001B4F8 00018458 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8001B4FC 0001845C D0 03 00 04 */ stfs f0, 4(r3) +/* 8001B500 00018460 C0 03 00 08 */ lfs f0, 8(r3) +/* 8001B504 00018464 EC 00 00 72 */ fmuls f0, f0, f1 +/* 8001B508 00018468 D0 03 00 08 */ stfs f0, 8(r3) +/* 8001B50C 0001846C 4E 80 00 20 */ blr + +.global GetAngle__10CAxisAngleCFv +GetAngle__10CAxisAngleCFv: +/* 8001B510 00018470 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001B514 00018474 7C 08 02 A6 */ mflr r0 +/* 8001B518 00018478 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001B51C 0001847C 48 2F 93 9D */ bl Magnitude__9CVector3fCFv +/* 8001B520 00018480 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001B524 00018484 7C 08 03 A6 */ mtlr r0 +/* 8001B528 00018488 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001B52C 0001848C 4E 80 00 20 */ blr + +.global GetVector__10CAxisAngleCFv +GetVector__10CAxisAngleCFv: +/* 8001B530 00018490 4E 80 00 20 */ blr + +.global Identity__10CAxisAngleFv +Identity__10CAxisAngleFv: +/* 8001B534 00018494 3C 60 80 57 */ lis r3, lbl_8056A5E8@ha +/* 8001B538 00018498 38 63 A5 E8 */ addi r3, r3, lbl_8056A5E8@l +/* 8001B53C 0001849C 4E 80 00 20 */ blr + +.global FromVector__10CAxisAngleFRC9CVector3f +FromVector__10CAxisAngleFRC9CVector3f: +/* 8001B540 000184A0 C0 04 00 00 */ lfs f0, 0(r4) +/* 8001B544 000184A4 D0 03 00 00 */ stfs f0, 0(r3) +/* 8001B548 000184A8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8001B54C 000184AC D0 03 00 04 */ stfs f0, 4(r3) +/* 8001B550 000184B0 C0 04 00 08 */ lfs f0, 8(r4) +/* 8001B554 000184B4 D0 03 00 08 */ stfs f0, 8(r3) +/* 8001B558 000184B8 4E 80 00 20 */ blr + +.global __ct__10CAxisAngleFRC13CUnitVector3ff +__ct__10CAxisAngleFRC13CUnitVector3ff: +/* 8001B55C 000184BC C0 04 00 00 */ lfs f0, 0(r4) +/* 8001B560 000184C0 C0 64 00 04 */ lfs f3, 4(r4) +/* 8001B564 000184C4 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8001B568 000184C8 C0 44 00 08 */ lfs f2, 8(r4) +/* 8001B56C 000184CC EC 61 00 F2 */ fmuls f3, f1, f3 +/* 8001B570 000184D0 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 8001B574 000184D4 D0 03 00 00 */ stfs f0, 0(r3) +/* 8001B578 000184D8 D0 63 00 04 */ stfs f3, 4(r3) +/* 8001B57C 000184DC D0 23 00 08 */ stfs f1, 8(r3) +/* 8001B580 000184E0 4E 80 00 20 */ blr + +.global __ct__10CAxisAngleFRC9CVector3f +__ct__10CAxisAngleFRC9CVector3f: +/* 8001B584 000184E4 C0 04 00 00 */ lfs f0, 0(r4) +/* 8001B588 000184E8 D0 03 00 00 */ stfs f0, 0(r3) +/* 8001B58C 000184EC C0 04 00 04 */ lfs f0, 4(r4) +/* 8001B590 000184F0 D0 03 00 04 */ stfs f0, 4(r3) +/* 8001B594 000184F4 C0 04 00 08 */ lfs f0, 8(r4) +/* 8001B598 000184F8 D0 03 00 08 */ stfs f0, 8(r3) +/* 8001B59C 000184FC 4E 80 00 20 */ blr + +.global __sinit_CAxisAngle_cpp +__sinit_CAxisAngle_cpp: +/* 8001B5A0 00018500 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8001B5A4 00018504 C4 44 66 A0 */ lfsu f2, skZero3f@l(r4) +/* 8001B5A8 00018508 3C 60 80 57 */ lis r3, lbl_8056A5E8@ha +/* 8001B5AC 0001850C C0 24 00 04 */ lfs f1, 4(r4) +/* 8001B5B0 00018510 D4 43 A5 E8 */ stfsu f2, lbl_8056A5E8@l(r3) +/* 8001B5B4 00018514 C0 04 00 08 */ lfs f0, 8(r4) +/* 8001B5B8 00018518 D0 23 00 04 */ stfs f1, 4(r3) +/* 8001B5BC 0001851C D0 03 00 08 */ stfs f0, 8(r3) +/* 8001B5C0 00018520 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CControlMapper.s b/asm/Kyoto_CWD/CControlMapper.s index acfbee93..3313d659 100644 --- a/asm/Kyoto_CWD/CControlMapper.s +++ b/asm/Kyoto_CWD/CControlMapper.s @@ -1,5 +1,34 @@ .include "macros.inc" +.section .bss +.global lbl_804578F8 +lbl_804578F8: + .skip 0x10 + +.section .rodata +.global lbl_803CC030 +lbl_803CC030: + .incbin "baserom.dol", 0x3C9030, 0x3F0 + +.section .sdata +.global lbl_805A6BF0 +lbl_805A6BF0: + # ROM: 0x3F4590 + .4byte 0x01000000 + .4byte 0 + +.section .sdata2 + +.global lbl_805A9DC8 +lbl_805A9DC8: + # ROM: 0x3F6668 + .4byte 0 + +.global lbl_805A9DCC +lbl_805A9DCC: + # ROM: 0x3F666C + .float 1.0 + .section .text, "ax" .global SetCommandFiltered__13ControlMapperFQ213ControlMapper9ECommandsb diff --git a/asm/Kyoto_CWD/CEulerAngles.s b/asm/Kyoto_CWD/CEulerAngles.s new file mode 100644 index 00000000..96631072 --- /dev/null +++ b/asm/Kyoto_CWD/CEulerAngles.s @@ -0,0 +1,292 @@ +.include "macros.inc" + +.section .text, "ax" + +.global FromQuaternion__12CEulerAnglesFRC11CQuaternion +FromQuaternion__12CEulerAnglesFRC11CQuaternion: +/* 8001B5C4 00018524 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 8001B5C8 00018528 7C 08 02 A6 */ mflr r0 +/* 8001B5CC 0001852C 90 01 00 64 */ stw r0, 0x64(r1) +/* 8001B5D0 00018530 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 8001B5D4 00018534 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 8001B5D8 00018538 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 8001B5DC 0001853C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 8001B5E0 00018540 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 8001B5E4 00018544 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 8001B5E8 00018548 DB 81 00 20 */ stfd f28, 0x20(r1) +/* 8001B5EC 0001854C F3 81 00 28 */ psq_st f28, 40(r1), 0, qr0 +/* 8001B5F0 00018550 DB 61 00 10 */ stfd f27, 0x10(r1) +/* 8001B5F4 00018554 F3 61 00 18 */ psq_st f27, 24(r1), 0, qr0 +/* 8001B5F8 00018558 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001B5FC 0001855C C0 84 00 04 */ lfs f4, 4(r4) +/* 8001B600 00018560 7C 7F 1B 78 */ mr r31, r3 +/* 8001B604 00018564 C0 E4 00 08 */ lfs f7, 8(r4) +/* 8001B608 00018568 EC 24 01 32 */ fmuls f1, f4, f4 +/* 8001B60C 0001856C C0 A4 00 0C */ lfs f5, 0xc(r4) +/* 8001B610 00018570 EC 07 01 F2 */ fmuls f0, f7, f7 +/* 8001B614 00018574 C0 C4 00 00 */ lfs f6, 0(r4) +/* 8001B618 00018578 EC 45 01 72 */ fmuls f2, f5, f5 +/* 8001B61C 0001857C C0 62 82 5C */ lfs f3, lbl_805A9F7C@sda21(r2) +/* 8001B620 00018580 EC 01 00 2A */ fadds f0, f1, f0 +/* 8001B624 00018584 EC 26 01 B2 */ fmuls f1, f6, f6 +/* 8001B628 00018588 EC 02 00 2A */ fadds f0, f2, f0 +/* 8001B62C 0001858C EC 21 00 2A */ fadds f1, f1, f0 +/* 8001B630 00018590 FC 01 18 40 */ fcmpo cr0, f1, f3 +/* 8001B634 00018594 40 81 00 0C */ ble lbl_8001B640 +/* 8001B638 00018598 C0 02 82 60 */ lfs f0, lbl_805A9F80@sda21(r2) +/* 8001B63C 0001859C EC 60 08 24 */ fdivs f3, f0, f1 +lbl_8001B640: +/* 8001B640 000185A0 ED 83 01 72 */ fmuls f12, f3, f5 +/* 8001B644 000185A4 C1 02 82 58 */ lfs f8, lbl_805A9F78@sda21(r2) +/* 8001B648 000185A8 ED 63 01 F2 */ fmuls f11, f3, f7 +/* 8001B64C 000185AC C9 22 82 68 */ lfd f9, lbl_805A9F88@sda21(r2) +/* 8001B650 000185B0 ED 43 01 32 */ fmuls f10, f3, f4 +/* 8001B654 000185B4 EC 6C 01 72 */ fmuls f3, f12, f5 +/* 8001B658 000185B8 EC 4B 01 32 */ fmuls f2, f11, f4 +/* 8001B65C 000185BC EC AA 01 32 */ fmuls f5, f10, f4 +/* 8001B660 000185C0 EC 2C 01 B2 */ fmuls f1, f12, f6 +/* 8001B664 000185C4 ED AB 01 F2 */ fmuls f13, f11, f7 +/* 8001B668 000185C8 EC 05 18 2A */ fadds f0, f5, f3 +/* 8001B66C 000185CC EC 22 08 28 */ fsubs f1, f2, f1 +/* 8001B670 000185D0 EC 6D 18 2A */ fadds f3, f13, f3 +/* 8001B674 000185D4 EC 48 00 28 */ fsubs f2, f8, f0 +/* 8001B678 000185D8 EC 01 00 72 */ fmuls f0, f1, f1 +/* 8001B67C 000185DC EC A5 68 2A */ fadds f5, f5, f13 +/* 8001B680 000185E0 ED 6B 01 B2 */ fmuls f11, f11, f6 +/* 8001B684 000185E4 ED AC 01 32 */ fmuls f13, f12, f4 +/* 8001B688 000185E8 EC 82 00 BA */ fmadds f4, f2, f2, f0 +/* 8001B68C 000185EC EC EC 01 F2 */ fmuls f7, f12, f7 +/* 8001B690 000185F0 EC CA 01 B2 */ fmuls f6, f10, f6 +/* 8001B694 000185F4 FC 04 48 40 */ fcmpo cr0, f4, f9 +/* 8001B698 000185F8 EC 08 18 28 */ fsubs f0, f8, f3 +/* 8001B69C 000185FC EC 6D 58 2A */ fadds f3, f13, f11 +/* 8001B6A0 00018600 EF ED 58 28 */ fsubs f31, f13, f11 +/* 8001B6A4 00018604 EF C7 30 2A */ fadds f30, f7, f6 +/* 8001B6A8 00018608 EF A8 28 28 */ fsubs f29, f8, f5 +/* 8001B6AC 0001860C 40 81 00 58 */ ble lbl_8001B704 +/* 8001B6B0 00018610 FC C0 20 34 */ frsqrte f6, f4 +/* 8001B6B4 00018614 C9 02 82 70 */ lfd f8, lbl_805A9F90@sda21(r2) +/* 8001B6B8 00018618 C8 E2 82 78 */ lfd f7, lbl_805A9F98@sda21(r2) +/* 8001B6BC 0001861C FC A6 01 B2 */ fmul f5, f6, f6 +/* 8001B6C0 00018620 FC C8 01 B2 */ fmul f6, f8, f6 +/* 8001B6C4 00018624 FC A4 39 7C */ fnmsub f5, f4, f5, f7 +/* 8001B6C8 00018628 FC C6 01 72 */ fmul f6, f6, f5 +/* 8001B6CC 0001862C FC A6 01 B2 */ fmul f5, f6, f6 +/* 8001B6D0 00018630 FC C8 01 B2 */ fmul f6, f8, f6 +/* 8001B6D4 00018634 FC A4 39 7C */ fnmsub f5, f4, f5, f7 +/* 8001B6D8 00018638 FC C6 01 72 */ fmul f6, f6, f5 +/* 8001B6DC 0001863C FC A6 01 B2 */ fmul f5, f6, f6 +/* 8001B6E0 00018640 FC C8 01 B2 */ fmul f6, f8, f6 +/* 8001B6E4 00018644 FC A4 39 7C */ fnmsub f5, f4, f5, f7 +/* 8001B6E8 00018648 FC C6 01 72 */ fmul f6, f6, f5 +/* 8001B6EC 0001864C FC A6 01 B2 */ fmul f5, f6, f6 +/* 8001B6F0 00018650 FC C8 01 B2 */ fmul f6, f8, f6 +/* 8001B6F4 00018654 FC A4 39 7C */ fnmsub f5, f4, f5, f7 +/* 8001B6F8 00018658 FC A6 01 72 */ fmul f5, f6, f5 +/* 8001B6FC 0001865C FD 24 01 72 */ fmul f9, f4, f5 +/* 8001B700 00018660 48 00 00 2C */ b lbl_8001B72C +lbl_8001B704: +/* 8001B704 00018664 FC 09 20 00 */ fcmpu cr0, f9, f4 +/* 8001B708 00018668 40 82 00 08 */ bne lbl_8001B710 +/* 8001B70C 0001866C 48 00 00 20 */ b lbl_8001B72C +lbl_8001B710: +/* 8001B710 00018670 FC 04 48 00 */ fcmpu cr0, f4, f9 +/* 8001B714 00018674 41 82 00 10 */ beq lbl_8001B724 +/* 8001B718 00018678 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha +/* 8001B71C 0001867C C1 23 8B A0 */ lfs f9, lbl_805A8BA0@l(r3) +/* 8001B720 00018680 48 00 00 0C */ b lbl_8001B72C +lbl_8001B724: +/* 8001B724 00018684 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha +/* 8001B728 00018688 C1 23 8B A4 */ lfs f9, lbl_805A8BA4@l(r3) +lbl_8001B72C: +/* 8001B72C 0001868C FF 80 48 18 */ frsp f28, f9 +/* 8001B730 00018690 C0 A2 82 5C */ lfs f5, lbl_805A9F7C@sda21(r2) +/* 8001B734 00018694 C0 82 82 80 */ lfs f4, lbl_805A9FA0@sda21(r2) +/* 8001B738 00018698 EC BC 28 28 */ fsubs f5, f28, f5 +/* 8001B73C 0001869C FC A0 2A 10 */ fabs f5, f5 +/* 8001B740 000186A0 FC 05 20 40 */ fcmpo cr0, f5, f4 +/* 8001B744 000186A4 41 80 00 48 */ blt lbl_8001B78C +/* 8001B748 000186A8 48 37 95 25 */ bl atan2 +/* 8001B74C 000186AC FF 60 08 50 */ fneg f27, f1 +/* 8001B750 000186B0 FC 20 F8 90 */ fmr f1, f31 +/* 8001B754 000186B4 FC 40 E8 90 */ fmr f2, f29 +/* 8001B758 000186B8 48 37 95 15 */ bl atan2 +/* 8001B75C 000186BC FF A0 08 50 */ fneg f29, f1 +/* 8001B760 000186C0 FC 40 E0 90 */ fmr f2, f28 +/* 8001B764 000186C4 FC 20 F0 50 */ fneg f1, f30 +/* 8001B768 000186C8 48 37 95 05 */ bl atan2 +/* 8001B76C 000186CC FC 40 08 50 */ fneg f2, f1 +/* 8001B770 000186D0 FC 20 E8 18 */ frsp f1, f29 +/* 8001B774 000186D4 FC 00 D8 18 */ frsp f0, f27 +/* 8001B778 000186D8 FC 40 10 18 */ frsp f2, f2 +/* 8001B77C 000186DC D0 5F 00 00 */ stfs f2, 0(r31) +/* 8001B780 000186E0 D0 3F 00 04 */ stfs f1, 4(r31) +/* 8001B784 000186E4 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8001B788 000186E8 48 00 00 3C */ b lbl_8001B7C4 +lbl_8001B78C: +/* 8001B78C 000186EC FC 40 00 90 */ fmr f2, f0 +/* 8001B790 000186F0 FC 20 18 50 */ fneg f1, f3 +/* 8001B794 000186F4 48 37 94 D9 */ bl atan2 +/* 8001B798 000186F8 FF 60 08 50 */ fneg f27, f1 +/* 8001B79C 000186FC FC 40 E0 90 */ fmr f2, f28 +/* 8001B7A0 00018700 FC 20 F0 50 */ fneg f1, f30 +/* 8001B7A4 00018704 48 37 94 C9 */ bl atan2 +/* 8001B7A8 00018708 FC 40 08 50 */ fneg f2, f1 +/* 8001B7AC 0001870C C0 02 82 5C */ lfs f0, lbl_805A9F7C@sda21(r2) +/* 8001B7B0 00018710 FC 20 D8 18 */ frsp f1, f27 +/* 8001B7B4 00018714 FC 40 10 18 */ frsp f2, f2 +/* 8001B7B8 00018718 D0 5F 00 00 */ stfs f2, 0(r31) +/* 8001B7BC 0001871C D0 3F 00 04 */ stfs f1, 4(r31) +/* 8001B7C0 00018720 D0 1F 00 08 */ stfs f0, 8(r31) +lbl_8001B7C4: +/* 8001B7C4 00018724 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 8001B7C8 00018728 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 8001B7CC 0001872C E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 8001B7D0 00018730 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 8001B7D4 00018734 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 8001B7D8 00018738 CB A1 00 30 */ lfd f29, 0x30(r1) +/* 8001B7DC 0001873C E3 81 00 28 */ psq_l f28, 40(r1), 0, qr0 +/* 8001B7E0 00018740 CB 81 00 20 */ lfd f28, 0x20(r1) +/* 8001B7E4 00018744 E3 61 00 18 */ psq_l f27, 24(r1), 0, qr0 +/* 8001B7E8 00018748 CB 61 00 10 */ lfd f27, 0x10(r1) +/* 8001B7EC 0001874C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8001B7F0 00018750 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001B7F4 00018754 7C 08 03 A6 */ mtlr r0 +/* 8001B7F8 00018758 38 21 00 60 */ addi r1, r1, 0x60 +/* 8001B7FC 0001875C 4E 80 00 20 */ blr + +.global sub_8001b800 +sub_8001b800: +/* 8001B800 00018760 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8001B804 00018764 7C 08 02 A6 */ mflr r0 +/* 8001B808 00018768 90 01 00 74 */ stw r0, 0x74(r1) +/* 8001B80C 0001876C DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8001B810 00018770 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8001B814 00018774 DB C1 00 50 */ stfd f30, 0x50(r1) +/* 8001B818 00018778 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 8001B81C 0001877C DB A1 00 40 */ stfd f29, 0x40(r1) +/* 8001B820 00018780 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 8001B824 00018784 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8001B828 00018788 7C 7F 1B 78 */ mr r31, r3 +/* 8001B82C 0001878C 38 61 00 08 */ addi r3, r1, 8 +/* 8001B830 00018790 48 00 01 8D */ bl FromMatrix3f__12CEulerAnglesFRC9CMatrix3f +/* 8001B834 00018794 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 8001B838 00018798 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8001B83C 0001879C EC 00 00 32 */ fmuls f0, f0, f0 +/* 8001B840 000187A0 C8 22 82 68 */ lfd f1, lbl_805A9F88@sda21(r2) +/* 8001B844 000187A4 EC 82 00 BA */ fmadds f4, f2, f2, f0 +/* 8001B848 000187A8 FC 04 08 40 */ fcmpo cr0, f4, f1 +/* 8001B84C 000187AC 40 81 00 58 */ ble lbl_8001B8A4 +/* 8001B850 000187B0 FC 20 20 34 */ frsqrte f1, f4 +/* 8001B854 000187B4 C8 62 82 70 */ lfd f3, lbl_805A9F90@sda21(r2) +/* 8001B858 000187B8 C8 42 82 78 */ lfd f2, lbl_805A9F98@sda21(r2) +/* 8001B85C 000187BC FC 01 00 72 */ fmul f0, f1, f1 +/* 8001B860 000187C0 FC 23 00 72 */ fmul f1, f3, f1 +/* 8001B864 000187C4 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 8001B868 000187C8 FC 21 00 32 */ fmul f1, f1, f0 +/* 8001B86C 000187CC FC 01 00 72 */ fmul f0, f1, f1 +/* 8001B870 000187D0 FC 23 00 72 */ fmul f1, f3, f1 +/* 8001B874 000187D4 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 8001B878 000187D8 FC 21 00 32 */ fmul f1, f1, f0 +/* 8001B87C 000187DC FC 01 00 72 */ fmul f0, f1, f1 +/* 8001B880 000187E0 FC 23 00 72 */ fmul f1, f3, f1 +/* 8001B884 000187E4 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 8001B888 000187E8 FC 21 00 32 */ fmul f1, f1, f0 +/* 8001B88C 000187EC FC 01 00 72 */ fmul f0, f1, f1 +/* 8001B890 000187F0 FC 23 00 72 */ fmul f1, f3, f1 +/* 8001B894 000187F4 FC 04 10 3C */ fnmsub f0, f4, f0, f2 +/* 8001B898 000187F8 FC 01 00 32 */ fmul f0, f1, f0 +/* 8001B89C 000187FC FC 24 00 32 */ fmul f1, f4, f0 +/* 8001B8A0 00018800 48 00 00 2C */ b lbl_8001B8CC +lbl_8001B8A4: +/* 8001B8A4 00018804 FC 01 20 00 */ fcmpu cr0, f1, f4 +/* 8001B8A8 00018808 40 82 00 08 */ bne lbl_8001B8B0 +/* 8001B8AC 0001880C 48 00 00 20 */ b lbl_8001B8CC +lbl_8001B8B0: +/* 8001B8B0 00018810 FC 04 08 00 */ fcmpu cr0, f4, f1 +/* 8001B8B4 00018814 41 82 00 10 */ beq lbl_8001B8C4 +/* 8001B8B8 00018818 3C 60 80 5B */ lis r3, lbl_805A8BA0@ha +/* 8001B8BC 0001881C C0 23 8B A0 */ lfs f1, lbl_805A8BA0@l(r3) +/* 8001B8C0 00018820 48 00 00 0C */ b lbl_8001B8CC +lbl_8001B8C4: +/* 8001B8C4 00018824 3C 60 80 5B */ lis r3, lbl_805A8BA4@ha +/* 8001B8C8 00018828 C0 23 8B A4 */ lfs f1, lbl_805A8BA4@l(r3) +lbl_8001B8CC: +/* 8001B8CC 0001882C FF E0 08 18 */ frsp f31, f1 +/* 8001B8D0 00018830 C0 22 82 5C */ lfs f1, lbl_805A9F7C@sda21(r2) +/* 8001B8D4 00018834 C0 02 82 80 */ lfs f0, lbl_805A9FA0@sda21(r2) +/* 8001B8D8 00018838 EC 3F 08 28 */ fsubs f1, f31, f1 +/* 8001B8DC 0001883C FC 20 0A 10 */ fabs f1, f1 +/* 8001B8E0 00018840 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001B8E4 00018844 41 80 00 54 */ blt lbl_8001B938 +/* 8001B8E8 00018848 C0 21 00 0C */ lfs f1, 0xc(r1) +/* 8001B8EC 0001884C C0 41 00 18 */ lfs f2, 0x18(r1) +/* 8001B8F0 00018850 48 37 93 7D */ bl atan2 +/* 8001B8F4 00018854 FF A0 08 50 */ fneg f29, f1 +/* 8001B8F8 00018858 C0 21 00 20 */ lfs f1, 0x20(r1) +/* 8001B8FC 0001885C C0 41 00 28 */ lfs f2, 0x28(r1) +/* 8001B900 00018860 48 37 93 6D */ bl atan2 +/* 8001B904 00018864 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8001B908 00018868 FF C0 08 50 */ fneg f30, f1 +/* 8001B90C 0001886C FC 40 F8 90 */ fmr f2, f31 +/* 8001B910 00018870 FC 20 00 50 */ fneg f1, f0 +/* 8001B914 00018874 48 37 93 59 */ bl atan2 +/* 8001B918 00018878 FC 40 08 50 */ fneg f2, f1 +/* 8001B91C 0001887C FC 20 F0 18 */ frsp f1, f30 +/* 8001B920 00018880 FC 00 E8 18 */ frsp f0, f29 +/* 8001B924 00018884 FC 40 10 18 */ frsp f2, f2 +/* 8001B928 00018888 D0 5F 00 00 */ stfs f2, 0(r31) +/* 8001B92C 0001888C D0 3F 00 04 */ stfs f1, 4(r31) +/* 8001B930 00018890 D0 1F 00 08 */ stfs f0, 8(r31) +/* 8001B934 00018894 48 00 00 44 */ b lbl_8001B978 +lbl_8001B938: +/* 8001B938 00018898 C0 01 00 10 */ lfs f0, 0x10(r1) +/* 8001B93C 0001889C C0 41 00 08 */ lfs f2, 8(r1) +/* 8001B940 000188A0 FC 20 00 50 */ fneg f1, f0 +/* 8001B944 000188A4 48 37 93 29 */ bl atan2 +/* 8001B948 000188A8 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 8001B94C 000188AC FF A0 08 50 */ fneg f29, f1 +/* 8001B950 000188B0 FC 40 F8 90 */ fmr f2, f31 +/* 8001B954 000188B4 FC 20 00 50 */ fneg f1, f0 +/* 8001B958 000188B8 48 37 93 15 */ bl atan2 +/* 8001B95C 000188BC FC 40 08 50 */ fneg f2, f1 +/* 8001B960 000188C0 C0 02 82 5C */ lfs f0, lbl_805A9F7C@sda21(r2) +/* 8001B964 000188C4 FC 20 E8 18 */ frsp f1, f29 +/* 8001B968 000188C8 FC 40 10 18 */ frsp f2, f2 +/* 8001B96C 000188CC D0 5F 00 00 */ stfs f2, 0(r31) +/* 8001B970 000188D0 D0 3F 00 04 */ stfs f1, 4(r31) +/* 8001B974 000188D4 D0 1F 00 08 */ stfs f0, 8(r31) +lbl_8001B978: +/* 8001B978 000188D8 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8001B97C 000188DC CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8001B980 000188E0 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 8001B984 000188E4 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 8001B988 000188E8 E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 8001B98C 000188EC CB A1 00 40 */ lfd f29, 0x40(r1) +/* 8001B990 000188F0 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8001B994 000188F4 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8001B998 000188F8 7C 08 03 A6 */ mtlr r0 +/* 8001B99C 000188FC 38 21 00 70 */ addi r1, r1, 0x70 +/* 8001B9A0 00018900 4E 80 00 20 */ blr + +.global __sinit_CEulerAngles_cpp +__sinit_CEulerAngles_cpp: +/* 8001B9A4 00018904 C0 02 82 5C */ lfs f0, lbl_805A9F7C@sda21(r2) +/* 8001B9A8 00018908 3C 60 80 57 */ lis r3, lbl_8056A5F4@ha +/* 8001B9AC 0001890C D4 03 A5 F4 */ stfsu f0, lbl_8056A5F4@l(r3) +/* 8001B9B0 00018910 D0 03 00 04 */ stfs f0, 4(r3) +/* 8001B9B4 00018914 D0 03 00 08 */ stfs f0, 8(r3) +/* 8001B9B8 00018918 4E 80 00 20 */ blr + +.global FromMatrix3f__12CEulerAnglesFRC9CMatrix3f +FromMatrix3f__12CEulerAnglesFRC9CMatrix3f: +/* 8001B9BC 0001891C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001B9C0 00018920 7C 08 02 A6 */ mflr r0 +/* 8001B9C4 00018924 38 A4 00 10 */ addi r5, r4, 0x10 +/* 8001B9C8 00018928 38 C4 00 20 */ addi r6, r4, 0x20 +/* 8001B9CC 0001892C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001B9D0 00018930 48 2F 4C AD */ bl __ct__9CMatrix3fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 8001B9D4 00018934 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001B9D8 00018938 7C 08 03 A6 */ mtlr r0 +/* 8001B9DC 0001893C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001B9E0 00018940 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CFirstPersonCamera.s b/asm/Kyoto_CWD/CFirstPersonCamera.s new file mode 100644 index 00000000..7c7271a0 --- /dev/null +++ b/asm/Kyoto_CWD/CFirstPersonCamera.s @@ -0,0 +1,1894 @@ +.include "macros.inc" + +.section .text, "ax" + +.global GetGunFollowTransform__18CFirstPersonCameraCFv +GetGunFollowTransform__18CFirstPersonCameraCFv: +/* 8000E0E4 0000B044 38 63 01 90 */ addi r3, r3, 0x190 +/* 8000E0E8 0000B048 4E 80 00 20 */ blr + +.global Accept__18CFirstPersonCameraFR8IVisitor +Accept__18CFirstPersonCameraFR8IVisitor: +/* 8000E0EC 0000B04C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000E0F0 0000B050 7C 08 02 A6 */ mflr r0 +/* 8000E0F4 0000B054 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000E0F8 0000B058 7C 60 1B 78 */ mr r0, r3 +/* 8000E0FC 0000B05C 7C 83 23 78 */ mr r3, r4 +/* 8000E100 0000B060 81 84 00 00 */ lwz r12, 0(r4) +/* 8000E104 0000B064 7C 04 03 78 */ mr r4, r0 +/* 8000E108 0000B068 81 8C 00 2C */ lwz r12, 0x2c(r12) +/* 8000E10C 0000B06C 7D 89 03 A6 */ mtctr r12 +/* 8000E110 0000B070 4E 80 04 21 */ bctrl +/* 8000E114 0000B074 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000E118 0000B078 7C 08 03 A6 */ mtlr r0 +/* 8000E11C 0000B07C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8000E120 0000B080 4E 80 00 20 */ blr + +.global Think__18CFirstPersonCameraFfR13CStateManager +Think__18CFirstPersonCameraFfR13CStateManager: +/* 8000E124 0000B084 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8000E128 0000B088 7C 08 02 A6 */ mflr r0 +/* 8000E12C 0000B08C 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8000E130 0000B090 DB E1 00 D0 */ stfd f31, 0xd0(r1) +/* 8000E134 0000B094 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 +/* 8000E138 0000B098 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 8000E13C 0000B09C 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 8000E140 0000B0A0 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 8000E144 0000B0A4 7C 7F 1B 78 */ mr r31, r3 +/* 8000E148 0000B0A8 7C 9D 23 78 */ mr r29, r4 +/* 8000E14C 0000B0AC A0 03 00 E8 */ lhz r0, 0xe8(r3) +/* 8000E150 0000B0B0 FF E0 08 90 */ fmr f31, f1 +/* 8000E154 0000B0B4 7F A3 EB 78 */ mr r3, r29 +/* 8000E158 0000B0B8 38 81 00 0C */ addi r4, r1, 0xc +/* 8000E15C 0000B0BC B0 01 00 08 */ sth r0, 8(r1) +/* 8000E160 0000B0C0 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8000E164 0000B0C4 48 03 E4 11 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8000E168 0000B0C8 7C 64 1B 78 */ mr r4, r3 +/* 8000E16C 0000B0CC 38 61 00 14 */ addi r3, r1, 0x14 +/* 8000E170 0000B0D0 48 09 E2 25 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" +/* 8000E174 0000B0D4 83 C3 00 04 */ lwz r30, 4(r3) +/* 8000E178 0000B0D8 28 1E 00 00 */ cmplwi r30, 0 +/* 8000E17C 0000B0DC 41 82 01 78 */ beq lbl_8000E2F4 +/* 8000E180 0000B0E0 88 7F 01 C6 */ lbz r3, 0x1c6(r31) +/* 8000E184 0000B0E4 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 8000E188 0000B0E8 40 82 00 D8 */ bne lbl_8000E260 +/* 8000E18C 0000B0EC 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 8000E190 0000B0F0 2C 00 00 01 */ cmpwi r0, 1 +/* 8000E194 0000B0F4 40 82 00 6C */ bne lbl_8000E200 +/* 8000E198 0000B0F8 80 1E 02 F4 */ lwz r0, 0x2f4(r30) +/* 8000E19C 0000B0FC 2C 00 00 04 */ cmpwi r0, 4 +/* 8000E1A0 0000B100 40 82 01 54 */ bne lbl_8000E2F4 +/* 8000E1A4 0000B104 7F C4 F3 78 */ mr r4, r30 +/* 8000E1A8 0000B108 38 61 00 58 */ addi r3, r1, 0x58 +/* 8000E1AC 0000B10C 48 27 75 3D */ bl CreateTransformFromMovementDirection__7CPlayerCFv +/* 8000E1B0 0000B110 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8000E1B4 0000B114 38 81 00 58 */ addi r4, r1, 0x58 +/* 8000E1B8 0000B118 48 30 49 89 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000E1BC 0000B11C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000E1C0 0000B120 38 A0 00 01 */ li r5, 1 +/* 8000E1C4 0000B124 50 A0 26 F6 */ rlwimi r0, r5, 4, 0x1b, 0x1b +/* 8000E1C8 0000B128 7F C4 F3 78 */ mr r4, r30 +/* 8000E1CC 0000B12C 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000E1D0 0000B130 38 61 00 1C */ addi r3, r1, 0x1c +/* 8000E1D4 0000B134 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000E1D8 0000B138 50 A0 1F 38 */ rlwimi r0, r5, 3, 0x1c, 0x1c +/* 8000E1DC 0000B13C 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000E1E0 0000B140 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000E1E4 0000B144 50 A0 17 7A */ rlwimi r0, r5, 2, 0x1d, 0x1d +/* 8000E1E8 0000B148 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000E1EC 0000B14C 48 27 6B 91 */ bl GetEyePosition__7CPlayerCFv +/* 8000E1F0 0000B150 7F E3 FB 78 */ mr r3, r31 +/* 8000E1F4 0000B154 38 81 00 1C */ addi r4, r1, 0x1c +/* 8000E1F8 0000B158 48 04 4C 95 */ bl SetTranslation__6CActorFRC9CVector3f +/* 8000E1FC 0000B15C 48 00 00 F8 */ b lbl_8000E2F4 +lbl_8000E200: +/* 8000E200 0000B160 2C 00 00 00 */ cmpwi r0, 0 +/* 8000E204 0000B164 41 82 00 68 */ beq lbl_8000E26C +/* 8000E208 0000B168 2C 00 00 03 */ cmpwi r0, 3 +/* 8000E20C 0000B16C 40 82 00 E8 */ bne lbl_8000E2F4 +/* 8000E210 0000B170 C0 42 80 B0 */ lfs f2, lbl_805A9DD0@sda21(r2) +/* 8000E214 0000B174 C0 3E 05 78 */ lfs f1, 0x578(r30) +/* 8000E218 0000B178 FC 02 08 00 */ fcmpu cr0, f2, f1 +/* 8000E21C 0000B17C 40 82 00 08 */ bne lbl_8000E224 +/* 8000E220 0000B180 48 00 00 24 */ b lbl_8000E244 +lbl_8000E224: +/* 8000E224 0000B184 C0 1E 05 74 */ lfs f0, 0x574(r30) +/* 8000E228 0000B188 38 81 00 10 */ addi r4, r1, 0x10 +/* 8000E22C 0000B18C 38 6D 80 38 */ addi r3, r13, lbl_805A6BF8@sda21 +/* 8000E230 0000B190 38 AD 80 3C */ addi r5, r13, lbl_805A6BFC@sda21 +/* 8000E234 0000B194 EC 00 08 24 */ fdivs f0, f0, f1 +/* 8000E238 0000B198 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8000E23C 0000B19C 4B FF E0 79 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000E240 0000B1A0 C0 43 00 00 */ lfs f2, 0(r3) +lbl_8000E244: +/* 8000E244 0000B1A4 C0 22 80 B4 */ lfs f1, lbl_805A9DD4@sda21(r2) +/* 8000E248 0000B1A8 C0 02 80 B8 */ lfs f0, lbl_805A9DD8@sda21(r2) +/* 8000E24C 0000B1AC EC 22 08 28 */ fsubs f1, f2, f1 +/* 8000E250 0000B1B0 FC 20 0A 10 */ fabs f1, f1 +/* 8000E254 0000B1B4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000E258 0000B1B8 41 80 00 14 */ blt lbl_8000E26C +/* 8000E25C 0000B1BC 48 00 00 98 */ b lbl_8000E2F4 +lbl_8000E260: +/* 8000E260 0000B1C0 38 00 00 00 */ li r0, 0 +/* 8000E264 0000B1C4 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 +/* 8000E268 0000B1C8 98 7F 01 C6 */ stb r3, 0x1c6(r31) +lbl_8000E26C: +/* 8000E26C 0000B1CC 38 61 00 88 */ addi r3, r1, 0x88 +/* 8000E270 0000B1D0 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8000E274 0000B1D4 48 30 49 01 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8000E278 0000B1D8 7F E3 FB 78 */ mr r3, r31 +/* 8000E27C 0000B1DC 7F A4 EB 78 */ mr r4, r29 +/* 8000E280 0000B1E0 48 00 15 55 */ bl UpdateElevation__18CFirstPersonCameraFR13CStateManager +/* 8000E284 0000B1E4 FC 20 F8 90 */ fmr f1, f31 +/* 8000E288 0000B1E8 7F E3 FB 78 */ mr r3, r31 +/* 8000E28C 0000B1EC 7F A4 EB 78 */ mr r4, r29 +/* 8000E290 0000B1F0 48 00 01 41 */ bl UpdateTransform__18CFirstPersonCameraFR13CStateManagerf +/* 8000E294 0000B1F4 7F E4 FB 78 */ mr r4, r31 +/* 8000E298 0000B1F8 38 61 00 28 */ addi r3, r1, 0x28 +/* 8000E29C 0000B1FC 38 BF 00 34 */ addi r5, r31, 0x34 +/* 8000E2A0 0000B200 38 C1 00 88 */ addi r6, r1, 0x88 +/* 8000E2A4 0000B204 48 04 CD 1D */ bl ValidateCameraTransform__11CGameCameraFRC12CTransform4fRC12CTransform4f +/* 8000E2A8 0000B208 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8000E2AC 0000B20C 38 81 00 28 */ addi r4, r1, 0x28 +/* 8000E2B0 0000B210 48 30 48 91 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000E2B4 0000B214 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000E2B8 0000B218 38 60 00 01 */ li r3, 1 +/* 8000E2BC 0000B21C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8000E2C0 0000B220 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000E2C4 0000B224 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000E2C8 0000B228 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000E2CC 0000B22C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8000E2D0 0000B230 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000E2D4 0000B234 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000E2D8 0000B238 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8000E2DC 0000B23C 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000E2E0 0000B240 C0 3F 01 D4 */ lfs f1, 0x1d4(r31) +/* 8000E2E4 0000B244 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000E2E8 0000B248 40 81 00 0C */ ble lbl_8000E2F4 +/* 8000E2EC 0000B24C EC 01 F8 28 */ fsubs f0, f1, f31 +/* 8000E2F0 0000B250 D0 1F 01 D4 */ stfs f0, 0x1d4(r31) +lbl_8000E2F4: +/* 8000E2F4 0000B254 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 +/* 8000E2F8 0000B258 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8000E2FC 0000B25C CB E1 00 D0 */ lfd f31, 0xd0(r1) +/* 8000E300 0000B260 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 8000E304 0000B264 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 8000E308 0000B268 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 8000E30C 0000B26C 7C 08 03 A6 */ mtlr r0 +/* 8000E310 0000B270 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 8000E314 0000B274 4E 80 00 20 */ blr + +.global SkipCinematic__18CFirstPersonCameraFv +SkipCinematic__18CFirstPersonCameraFv: +/* 8000E318 0000B278 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8000E31C 0000B27C C4 24 66 A0 */ lfsu f1, skZero3f@l(r4) +/* 8000E320 0000B280 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000E324 0000B284 D0 23 01 C8 */ stfs f1, 0x1c8(r3) +/* 8000E328 0000B288 C0 24 00 04 */ lfs f1, 4(r4) +/* 8000E32C 0000B28C D0 23 01 CC */ stfs f1, 0x1cc(r3) +/* 8000E330 0000B290 C0 24 00 08 */ lfs f1, 8(r4) +/* 8000E334 0000B294 D0 23 01 D0 */ stfs f1, 0x1d0(r3) +/* 8000E338 0000B298 D0 03 01 D4 */ stfs f0, 0x1d4(r3) +/* 8000E33C 0000B29C 4E 80 00 20 */ blr + +.global Reset__18CFirstPersonCameraFRC12CTransform4fR13CStateManager +Reset__18CFirstPersonCameraFRC12CTransform4fR13CStateManager: +/* 8000E340 0000B2A0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8000E344 0000B2A4 7C 08 02 A6 */ mflr r0 +/* 8000E348 0000B2A8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8000E34C 0000B2AC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8000E350 0000B2B0 7C BF 2B 78 */ mr r31, r5 +/* 8000E354 0000B2B4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8000E358 0000B2B8 7C 7E 1B 78 */ mr r30, r3 +/* 8000E35C 0000B2BC 38 7E 00 34 */ addi r3, r30, 0x34 +/* 8000E360 0000B2C0 48 30 47 E1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000E364 0000B2C4 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8000E368 0000B2C8 38 80 00 01 */ li r4, 1 +/* 8000E36C 0000B2CC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8000E370 0000B2D0 38 61 00 08 */ addi r3, r1, 8 +/* 8000E374 0000B2D4 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8000E378 0000B2D8 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8000E37C 0000B2DC 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c +/* 8000E380 0000B2E0 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8000E384 0000B2E4 88 1E 00 E4 */ lbz r0, 0xe4(r30) +/* 8000E388 0000B2E8 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 8000E38C 0000B2EC 98 1E 00 E4 */ stb r0, 0xe4(r30) +/* 8000E390 0000B2F0 80 9F 08 4C */ lwz r4, 0x84c(r31) +/* 8000E394 0000B2F4 48 27 69 E9 */ bl GetEyePosition__7CPlayerCFv +/* 8000E398 0000B2F8 7F C3 F3 78 */ mr r3, r30 +/* 8000E39C 0000B2FC 38 81 00 08 */ addi r4, r1, 8 +/* 8000E3A0 0000B300 48 04 4A ED */ bl SetTranslation__6CActorFRC9CVector3f +/* 8000E3A4 0000B304 38 7E 01 90 */ addi r3, r30, 0x190 +/* 8000E3A8 0000B308 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8000E3AC 0000B30C 48 30 47 95 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000E3B0 0000B310 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8000E3B4 0000B314 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8000E3B8 0000B318 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8000E3BC 0000B31C 7C 08 03 A6 */ mtlr r0 +/* 8000E3C0 0000B320 38 21 00 20 */ addi r1, r1, 0x20 +/* 8000E3C4 0000B324 4E 80 00 20 */ blr + +.global Render__18CFirstPersonCameraCFRC13CStateManager +Render__18CFirstPersonCameraCFRC13CStateManager: +/* 8000E3C8 0000B328 4E 80 00 20 */ blr + +.global PreThink__18CFirstPersonCameraFfR13CStateManager +PreThink__18CFirstPersonCameraFfR13CStateManager: +/* 8000E3CC 0000B32C 4E 80 00 20 */ blr + +.global UpdateTransform__18CFirstPersonCameraFR13CStateManagerf +UpdateTransform__18CFirstPersonCameraFR13CStateManagerf: +/* 8000E3D0 0000B330 94 21 F6 E0 */ stwu r1, -0x920(r1) +/* 8000E3D4 0000B334 7C 08 02 A6 */ mflr r0 +/* 8000E3D8 0000B338 90 01 09 24 */ stw r0, 0x924(r1) +/* 8000E3DC 0000B33C DB E1 09 10 */ stfd f31, 0x910(r1) +/* 8000E3E0 0000B340 F3 E1 09 18 */ psq_st f31, -1768(r1), 0, qr0 +/* 8000E3E4 0000B344 DB C1 09 00 */ stfd f30, 0x900(r1) +/* 8000E3E8 0000B348 F3 C1 09 08 */ psq_st f30, -1784(r1), 0, qr0 +/* 8000E3EC 0000B34C DB A1 08 F0 */ stfd f29, 0x8f0(r1) +/* 8000E3F0 0000B350 F3 A1 08 F8 */ psq_st f29, -1800(r1), 0, qr0 +/* 8000E3F4 0000B354 DB 81 08 E0 */ stfd f28, 0x8e0(r1) +/* 8000E3F8 0000B358 F3 81 08 E8 */ psq_st f28, -1816(r1), 0, qr0 +/* 8000E3FC 0000B35C DB 61 08 D0 */ stfd f27, 0x8d0(r1) +/* 8000E400 0000B360 F3 61 08 D8 */ psq_st f27, -1832(r1), 0, qr0 +/* 8000E404 0000B364 DB 41 08 C0 */ stfd f26, 0x8c0(r1) +/* 8000E408 0000B368 F3 41 08 C8 */ psq_st f26, -1848(r1), 0, qr0 +/* 8000E40C 0000B36C 93 E1 08 BC */ stw r31, 0x8bc(r1) +/* 8000E410 0000B370 93 C1 08 B8 */ stw r30, 0x8b8(r1) +/* 8000E414 0000B374 93 A1 08 B4 */ stw r29, 0x8b4(r1) +/* 8000E418 0000B378 93 81 08 B0 */ stw r28, 0x8b0(r1) +/* 8000E41C 0000B37C 7C 7F 1B 78 */ mr r31, r3 +/* 8000E420 0000B380 7C 9D 23 78 */ mr r29, r4 +/* 8000E424 0000B384 A0 03 00 E8 */ lhz r0, 0xe8(r3) +/* 8000E428 0000B388 FF 80 08 90 */ fmr f28, f1 +/* 8000E42C 0000B38C 7F A3 EB 78 */ mr r3, r29 +/* 8000E430 0000B390 38 81 00 1C */ addi r4, r1, 0x1c +/* 8000E434 0000B394 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8000E438 0000B398 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 8000E43C 0000B39C 48 03 E1 39 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 8000E440 0000B3A0 7C 64 1B 78 */ mr r4, r3 +/* 8000E444 0000B3A4 38 61 00 88 */ addi r3, r1, 0x88 +/* 8000E448 0000B3A8 48 09 DF 4D */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" +/* 8000E44C 0000B3AC 83 C3 00 04 */ lwz r30, 4(r3) +/* 8000E450 0000B3B0 28 1E 00 00 */ cmplwi r30, 0 +/* 8000E454 0000B3B4 40 82 00 40 */ bne lbl_8000E494 +/* 8000E458 0000B3B8 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8000E45C 0000B3BC 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8000E460 0000B3C0 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 8000E464 0000B3C4 48 30 46 DD */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000E468 0000B3C8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000E46C 0000B3CC 38 60 00 01 */ li r3, 1 +/* 8000E470 0000B3D0 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8000E474 0000B3D4 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000E478 0000B3D8 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000E47C 0000B3DC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 8000E480 0000B3E0 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000E484 0000B3E4 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000E488 0000B3E8 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 8000E48C 0000B3EC 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000E490 0000B3F0 48 00 12 F4 */ b lbl_8000F784 +lbl_8000E494: +/* 8000E494 0000B3F4 38 61 08 78 */ addi r3, r1, 0x878 +/* 8000E498 0000B3F8 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8000E49C 0000B3FC 48 30 46 D9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8000E4A0 0000B400 C0 3F 01 C0 */ lfs f1, 0x1c0(r31) +/* 8000E4A4 0000B404 48 38 66 39 */ bl sin +/* 8000E4A8 0000B408 FF 40 08 18 */ frsp f26, f1 +/* 8000E4AC 0000B40C C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000E4B0 0000B410 FC 20 D2 10 */ fabs f1, f26 +/* 8000E4B4 0000B414 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000E4B8 0000B418 40 81 00 14 */ ble lbl_8000E4CC +/* 8000E4BC 0000B41C C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000E4C0 0000B420 C0 22 80 B4 */ lfs f1, lbl_805A9DD4@sda21(r2) +/* 8000E4C4 0000B424 FC 1A 00 6E */ fsel f0, f26, f1, f0 +/* 8000E4C8 0000B428 EF 41 00 32 */ fmuls f26, f1, f0 +lbl_8000E4CC: +/* 8000E4CC 0000B42C C0 3F 01 C0 */ lfs f1, 0x1c0(r31) +/* 8000E4D0 0000B430 48 38 5F 21 */ bl cos +/* 8000E4D4 0000B434 FC 40 08 18 */ frsp f2, f1 +/* 8000E4D8 0000B438 C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000E4DC 0000B43C FC 20 12 10 */ fabs f1, f2 +/* 8000E4E0 0000B440 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000E4E4 0000B444 40 81 00 14 */ ble lbl_8000E4F8 +/* 8000E4E8 0000B448 C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000E4EC 0000B44C C0 22 80 B4 */ lfs f1, lbl_805A9DD4@sda21(r2) +/* 8000E4F0 0000B450 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 8000E4F4 0000B454 EC 41 00 32 */ fmuls f2, f1, f0 +lbl_8000E4F8: +/* 8000E4F8 0000B458 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000E4FC 0000B45C 38 61 02 F8 */ addi r3, r1, 0x2f8 +/* 8000E500 0000B460 D0 41 02 F0 */ stfs f2, 0x2f0(r1) +/* 8000E504 0000B464 38 81 08 78 */ addi r4, r1, 0x878 +/* 8000E508 0000B468 38 A1 02 EC */ addi r5, r1, 0x2ec +/* 8000E50C 0000B46C D0 01 02 EC */ stfs f0, 0x2ec(r1) +/* 8000E510 0000B470 D3 41 02 F4 */ stfs f26, 0x2f4(r1) +/* 8000E514 0000B474 48 30 45 6D */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8000E518 0000B478 C0 41 02 F8 */ lfs f2, 0x2f8(r1) +/* 8000E51C 0000B47C C0 21 02 FC */ lfs f1, 0x2fc(r1) +/* 8000E520 0000B480 C0 01 03 00 */ lfs f0, 0x300(r1) +/* 8000E524 0000B484 D0 41 04 4C */ stfs f2, 0x44c(r1) +/* 8000E528 0000B488 D0 21 04 50 */ stfs f1, 0x450(r1) +/* 8000E52C 0000B48C D0 01 04 54 */ stfs f0, 0x454(r1) +/* 8000E530 0000B490 88 1E 03 DC */ lbz r0, 0x3dc(r30) +/* 8000E534 0000B494 28 00 00 00 */ cmplwi r0, 0 +/* 8000E538 0000B498 41 82 01 5C */ beq lbl_8000E694 +/* 8000E53C 0000B49C C0 1F 01 C0 */ lfs f0, 0x1c0(r31) +/* 8000E540 0000B4A0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000E544 0000B4A4 FC 00 02 10 */ fabs f0, f0 +/* 8000E548 0000B4A8 C3 FE 03 EC */ lfs f31, 0x3ec(r30) +/* 8000E54C 0000B4AC C0 23 01 34 */ lfs f1, 0x134(r3) +/* 8000E550 0000B4B0 FC 40 FA 10 */ fabs f2, f31 +/* 8000E554 0000B4B4 FC 00 00 18 */ frsp f0, f0 +/* 8000E558 0000B4B8 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8000E55C 0000B4BC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8000E560 0000B4C0 40 81 00 14 */ ble lbl_8000E574 +/* 8000E564 0000B4C4 C0 42 80 C8 */ lfs f2, lbl_805A9DE8@sda21(r2) +/* 8000E568 0000B4C8 C0 22 80 B4 */ lfs f1, lbl_805A9DD4@sda21(r2) +/* 8000E56C 0000B4CC FC 3F 10 6E */ fsel f1, f31, f1, f2 +/* 8000E570 0000B4D0 EF E0 00 72 */ fmuls f31, f0, f1 +lbl_8000E574: +/* 8000E574 0000B4D4 FC 20 F8 90 */ fmr f1, f31 +/* 8000E578 0000B4D8 48 38 65 65 */ bl sin +/* 8000E57C 0000B4DC C0 1E 03 E4 */ lfs f0, 0x3e4(r30) +/* 8000E580 0000B4E0 FF 40 08 18 */ frsp f26, f1 +/* 8000E584 0000B4E4 FC 20 00 50 */ fneg f1, f0 +/* 8000E588 0000B4E8 48 38 5E 69 */ bl cos +/* 8000E58C 0000B4EC FF 60 08 18 */ frsp f27, f1 +/* 8000E590 0000B4F0 FC 20 F8 90 */ fmr f1, f31 +/* 8000E594 0000B4F4 48 38 5E 5D */ bl cos +/* 8000E598 0000B4F8 C0 1E 03 E4 */ lfs f0, 0x3e4(r30) +/* 8000E59C 0000B4FC FF A0 08 18 */ frsp f29, f1 +/* 8000E5A0 0000B500 FC 20 00 50 */ fneg f1, f0 +/* 8000E5A4 0000B504 48 38 65 39 */ bl sin +/* 8000E5A8 0000B508 FF C0 08 18 */ frsp f30, f1 +/* 8000E5AC 0000B50C FC 20 F8 90 */ fmr f1, f31 +/* 8000E5B0 0000B510 48 38 5E 41 */ bl cos +/* 8000E5B4 0000B514 FC 20 08 18 */ frsp f1, f1 +/* 8000E5B8 0000B518 D3 41 04 48 */ stfs f26, 0x448(r1) +/* 8000E5BC 0000B51C EC 1B 07 72 */ fmuls f0, f27, f29 +/* 8000E5C0 0000B520 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000E5C4 0000B524 EC 3E 00 72 */ fmuls f1, f30, f1 +/* 8000E5C8 0000B528 D0 01 04 44 */ stfs f0, 0x444(r1) +/* 8000E5CC 0000B52C D0 21 04 40 */ stfs f1, 0x440(r1) +/* 8000E5D0 0000B530 88 03 02 28 */ lbz r0, 0x228(r3) +/* 8000E5D4 0000B534 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8000E5D8 0000B538 41 82 00 30 */ beq lbl_8000E608 +/* 8000E5DC 0000B53C C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000E5E0 0000B540 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8000E5E4 0000B544 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 8000E5E8 0000B548 C0 22 80 CC */ lfs f1, lbl_805A9DEC@sda21(r2) +/* 8000E5EC 0000B54C D0 01 04 40 */ stfs f0, 0x440(r1) +/* 8000E5F0 0000B550 38 61 04 40 */ addi r3, r1, 0x440 +/* 8000E5F4 0000B554 48 30 19 71 */ bl close_enough__FRC9CVector3fRC9CVector3ff +/* 8000E5F8 0000B558 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000E5FC 0000B55C 40 82 00 0C */ bne lbl_8000E608 +/* 8000E600 0000B560 38 61 04 40 */ addi r3, r1, 0x440 +/* 8000E604 0000B564 48 30 62 F5 */ bl Normalize__9CVector3fFv +lbl_8000E608: +/* 8000E608 0000B568 C0 22 80 B0 */ lfs f1, lbl_805A9DD0@sda21(r2) +/* 8000E60C 0000B56C 38 61 02 D0 */ addi r3, r1, 0x2d0 +/* 8000E610 0000B570 C0 42 80 D0 */ lfs f2, lbl_805A9DF0@sda21(r2) +/* 8000E614 0000B574 C0 02 80 B4 */ lfs f0, lbl_805A9DD4@sda21(r2) +/* 8000E618 0000B578 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 8000E61C 0000B57C D0 21 02 D0 */ stfs f1, 0x2d0(r1) +/* 8000E620 0000B580 D0 01 02 D4 */ stfs f0, 0x2d4(r1) +/* 8000E624 0000B584 D0 21 02 D8 */ stfs f1, 0x2d8(r1) +/* 8000E628 0000B588 48 30 62 D1 */ bl Normalize__9CVector3fFv +/* 8000E62C 0000B58C 38 61 02 C4 */ addi r3, r1, 0x2c4 +/* 8000E630 0000B590 38 81 04 4C */ addi r4, r1, 0x44c +/* 8000E634 0000B594 48 30 57 9D */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000E638 0000B598 7C 65 1B 78 */ mr r5, r3 +/* 8000E63C 0000B59C 38 61 02 DC */ addi r3, r1, 0x2dc +/* 8000E640 0000B5A0 38 81 02 D0 */ addi r4, r1, 0x2d0 +/* 8000E644 0000B5A4 38 C1 00 54 */ addi r6, r1, 0x54 +/* 8000E648 0000B5A8 48 30 30 4D */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000E64C 0000B5AC C0 61 02 DC */ lfs f3, 0x2dc(r1) +/* 8000E650 0000B5B0 38 61 02 B8 */ addi r3, r1, 0x2b8 +/* 8000E654 0000B5B4 C0 41 02 E0 */ lfs f2, 0x2e0(r1) +/* 8000E658 0000B5B8 38 81 04 30 */ addi r4, r1, 0x430 +/* 8000E65C 0000B5BC C0 21 02 E4 */ lfs f1, 0x2e4(r1) +/* 8000E660 0000B5C0 38 A1 04 40 */ addi r5, r1, 0x440 +/* 8000E664 0000B5C4 C0 01 02 E8 */ lfs f0, 0x2e8(r1) +/* 8000E668 0000B5C8 D0 61 04 30 */ stfs f3, 0x430(r1) +/* 8000E66C 0000B5CC D0 41 04 34 */ stfs f2, 0x434(r1) +/* 8000E670 0000B5D0 D0 21 04 38 */ stfs f1, 0x438(r1) +/* 8000E674 0000B5D4 D0 01 04 3C */ stfs f0, 0x43c(r1) +/* 8000E678 0000B5D8 48 30 2B ED */ bl Transform__11CQuaternionCFRC9CVector3f +/* 8000E67C 0000B5DC C0 41 02 B8 */ lfs f2, 0x2b8(r1) +/* 8000E680 0000B5E0 C0 21 02 BC */ lfs f1, 0x2bc(r1) +/* 8000E684 0000B5E4 C0 01 02 C0 */ lfs f0, 0x2c0(r1) +/* 8000E688 0000B5E8 D0 41 04 4C */ stfs f2, 0x44c(r1) +/* 8000E68C 0000B5EC D0 21 04 50 */ stfs f1, 0x450(r1) +/* 8000E690 0000B5F0 D0 01 04 54 */ stfs f0, 0x454(r1) +lbl_8000E694: +/* 8000E694 0000B5F4 7F C4 F3 78 */ mr r4, r30 +/* 8000E698 0000B5F8 38 61 02 AC */ addi r3, r1, 0x2ac +/* 8000E69C 0000B5FC 48 27 66 E1 */ bl GetEyePosition__7CPlayerCFv +/* 8000E6A0 0000B600 C0 3F 01 D4 */ lfs f1, 0x1d4(r31) +/* 8000E6A4 0000B604 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000E6A8 0000B608 C3 E1 02 AC */ lfs f31, 0x2ac(r1) +/* 8000E6AC 0000B60C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000E6B0 0000B610 C3 C1 02 B0 */ lfs f30, 0x2b0(r1) +/* 8000E6B4 0000B614 C3 A1 02 B4 */ lfs f29, 0x2b4(r1) +/* 8000E6B8 0000B618 40 81 00 64 */ ble lbl_8000E71C +/* 8000E6BC 0000B61C C0 02 80 D4 */ lfs f0, lbl_805A9DF4@sda21(r2) +/* 8000E6C0 0000B620 38 81 00 50 */ addi r4, r1, 0x50 +/* 8000E6C4 0000B624 38 6D 80 40 */ addi r3, r13, lbl_805A6C00@sda21 +/* 8000E6C8 0000B628 38 AD 80 44 */ addi r5, r13, lbl_805A6C04@sda21 +/* 8000E6CC 0000B62C EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000E6D0 0000B630 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 8000E6D4 0000B634 4B FF DB E1 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000E6D8 0000B638 C0 63 00 00 */ lfs f3, 0(r3) +/* 8000E6DC 0000B63C C0 5F 01 C8 */ lfs f2, 0x1c8(r31) +/* 8000E6E0 0000B640 C0 3F 01 CC */ lfs f1, 0x1cc(r31) +/* 8000E6E4 0000B644 C0 1F 01 D0 */ lfs f0, 0x1d0(r31) +/* 8000E6E8 0000B648 EC 43 00 B2 */ fmuls f2, f3, f2 +/* 8000E6EC 0000B64C EC 23 00 72 */ fmuls f1, f3, f1 +/* 8000E6F0 0000B650 83 9E 07 6C */ lwz r28, 0x76c(r30) +/* 8000E6F4 0000B654 EC 03 00 32 */ fmuls f0, f3, f0 +/* 8000E6F8 0000B658 EF FF 10 2A */ fadds f31, f31, f2 +/* 8000E6FC 0000B65C 7F 83 E3 78 */ mr r3, r28 +/* 8000E700 0000B660 EF DE 08 2A */ fadds f30, f30, f1 +/* 8000E704 0000B664 EF BD 00 2A */ fadds f29, f29, f0 +/* 8000E708 0000B668 48 0D B4 25 */ bl ResetCameraBobTime__16CPlayerCameraBobFv +/* 8000E70C 0000B66C 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8000E710 0000B670 38 7C 00 2C */ addi r3, r28, 0x2c +/* 8000E714 0000B674 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 8000E718 0000B678 48 30 44 29 */ bl __as__12CTransform4fFRC12CTransform4f +lbl_8000E71C: +/* 8000E71C 0000B67C 80 1E 03 04 */ lwz r0, 0x304(r30) +/* 8000E720 0000B680 2C 00 00 04 */ cmpwi r0, 4 +/* 8000E724 0000B684 41 82 00 24 */ beq lbl_8000E748 +/* 8000E728 0000B688 40 80 02 9C */ bge lbl_8000E9C4 +/* 8000E72C 0000B68C 2C 00 00 01 */ cmpwi r0, 1 +/* 8000E730 0000B690 41 82 00 18 */ beq lbl_8000E748 +/* 8000E734 0000B694 40 80 00 EC */ bge lbl_8000E820 +/* 8000E738 0000B698 2C 00 00 00 */ cmpwi r0, 0 +/* 8000E73C 0000B69C 40 80 01 18 */ bge lbl_8000E854 +/* 8000E740 0000B6A0 48 00 02 84 */ b lbl_8000E9C4 +/* 8000E744 0000B6A4 48 00 02 80 */ b lbl_8000E9C4 +lbl_8000E748: +/* 8000E748 0000B6A8 A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 8000E74C 0000B6AC 7F A3 EB 78 */ mr r3, r29 +/* 8000E750 0000B6B0 38 81 00 14 */ addi r4, r1, 0x14 +/* 8000E754 0000B6B4 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8000E758 0000B6B8 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8000E75C 0000B6BC 48 03 DE 49 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8000E760 0000B6C0 7C 64 1B 78 */ mr r4, r3 +/* 8000E764 0000B6C4 38 61 00 80 */ addi r3, r1, 0x80 +/* 8000E768 0000B6C8 48 0A 15 29 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8000E76C 0000B6CC 80 83 00 04 */ lwz r4, 4(r3) +/* 8000E770 0000B6D0 28 04 00 00 */ cmplwi r4, 0 +/* 8000E774 0000B6D4 41 82 00 84 */ beq lbl_8000E7F8 +/* 8000E778 0000B6D8 80 64 00 68 */ lwz r3, 0x68(r4) +/* 8000E77C 0000B6DC 38 00 02 00 */ li r0, 0x200 +/* 8000E780 0000B6E0 80 A4 00 6C */ lwz r5, 0x6c(r4) +/* 8000E784 0000B6E4 38 80 00 00 */ li r4, 0 +/* 8000E788 0000B6E8 7C 60 00 38 */ and r0, r3, r0 +/* 8000E78C 0000B6EC 7C A3 20 38 */ and r3, r5, r4 +/* 8000E790 0000B6F0 7C 63 22 78 */ xor r3, r3, r4 +/* 8000E794 0000B6F4 7C 00 22 78 */ xor r0, r0, r4 +/* 8000E798 0000B6F8 7C 60 03 79 */ or. r0, r3, r0 +/* 8000E79C 0000B6FC 41 82 00 5C */ beq lbl_8000E7F8 +/* 8000E7A0 0000B700 C0 5E 03 18 */ lfs f2, 0x318(r30) +/* 8000E7A4 0000B704 38 61 04 24 */ addi r3, r1, 0x424 +/* 8000E7A8 0000B708 C0 3E 03 1C */ lfs f1, 0x31c(r30) +/* 8000E7AC 0000B70C C0 1E 03 14 */ lfs f0, 0x314(r30) +/* 8000E7B0 0000B710 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 8000E7B4 0000B714 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 8000E7B8 0000B718 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8000E7BC 0000B71C D0 41 04 28 */ stfs f2, 0x428(r1) +/* 8000E7C0 0000B720 D0 01 04 24 */ stfs f0, 0x424(r1) +/* 8000E7C4 0000B724 D0 21 04 2C */ stfs f1, 0x42c(r1) +/* 8000E7C8 0000B728 48 30 5F 31 */ bl CanBeNormalized__9CVector3fCFv +/* 8000E7CC 0000B72C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000E7D0 0000B730 41 82 00 0C */ beq lbl_8000E7DC +/* 8000E7D4 0000B734 38 61 04 24 */ addi r3, r1, 0x424 +/* 8000E7D8 0000B738 48 30 61 21 */ bl Normalize__9CVector3fFv +lbl_8000E7DC: +/* 8000E7DC 0000B73C C0 41 04 24 */ lfs f2, 0x424(r1) +/* 8000E7E0 0000B740 C0 21 04 28 */ lfs f1, 0x428(r1) +/* 8000E7E4 0000B744 C0 01 04 2C */ lfs f0, 0x42c(r1) +/* 8000E7E8 0000B748 D0 41 04 4C */ stfs f2, 0x44c(r1) +/* 8000E7EC 0000B74C D0 21 04 50 */ stfs f1, 0x450(r1) +/* 8000E7F0 0000B750 D0 01 04 54 */ stfs f0, 0x454(r1) +/* 8000E7F4 0000B754 48 00 01 D0 */ b lbl_8000E9C4 +lbl_8000E7F8: +/* 8000E7F8 0000B758 C0 5E 03 18 */ lfs f2, 0x318(r30) +/* 8000E7FC 0000B75C C0 3E 03 1C */ lfs f1, 0x31c(r30) +/* 8000E800 0000B760 C0 1E 03 14 */ lfs f0, 0x314(r30) +/* 8000E804 0000B764 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 8000E808 0000B768 EC 21 E8 28 */ fsubs f1, f1, f29 +/* 8000E80C 0000B76C EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8000E810 0000B770 D0 41 04 50 */ stfs f2, 0x450(r1) +/* 8000E814 0000B774 D0 01 04 4C */ stfs f0, 0x44c(r1) +/* 8000E818 0000B778 D0 21 04 54 */ stfs f1, 0x454(r1) +/* 8000E81C 0000B77C 48 00 01 A8 */ b lbl_8000E9C4 +lbl_8000E820: +/* 8000E820 0000B780 88 1E 03 DD */ lbz r0, 0x3dd(r30) +/* 8000E824 0000B784 28 00 00 00 */ cmplwi r0, 0 +/* 8000E828 0000B788 40 82 01 9C */ bne lbl_8000E9C4 +/* 8000E82C 0000B78C C0 5E 03 18 */ lfs f2, 0x318(r30) +/* 8000E830 0000B790 C0 3E 03 1C */ lfs f1, 0x31c(r30) +/* 8000E834 0000B794 C0 1E 03 14 */ lfs f0, 0x314(r30) +/* 8000E838 0000B798 EC 42 F0 28 */ fsubs f2, f2, f30 +/* 8000E83C 0000B79C EC 21 E8 28 */ fsubs f1, f1, f29 +/* 8000E840 0000B7A0 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 8000E844 0000B7A4 D0 41 04 50 */ stfs f2, 0x450(r1) +/* 8000E848 0000B7A8 D0 01 04 4C */ stfs f0, 0x44c(r1) +/* 8000E84C 0000B7AC D0 21 04 54 */ stfs f1, 0x454(r1) +/* 8000E850 0000B7B0 48 00 01 74 */ b lbl_8000E9C4 +lbl_8000E854: +/* 8000E854 0000B7B4 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 8000E858 0000B7B8 2C 00 00 00 */ cmpwi r0, 0 +/* 8000E85C 0000B7BC 40 82 01 68 */ bne lbl_8000E9C4 +/* 8000E860 0000B7C0 88 1E 03 DC */ lbz r0, 0x3dc(r30) +/* 8000E864 0000B7C4 28 00 00 00 */ cmplwi r0, 0 +/* 8000E868 0000B7C8 40 82 01 5C */ bne lbl_8000E9C4 +/* 8000E86C 0000B7CC A0 7F 01 C4 */ lhz r3, 0x1c4(r31) +/* 8000E870 0000B7D0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8000E874 0000B7D4 7C 03 00 40 */ cmplw r3, r0 +/* 8000E878 0000B7D8 40 82 01 4C */ bne lbl_8000E9C4 +/* 8000E87C 0000B7DC C0 5E 02 94 */ lfs f2, 0x294(r30) +/* 8000E880 0000B7E0 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000E884 0000B7E4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8000E888 0000B7E8 40 81 00 A0 */ ble lbl_8000E928 +/* 8000E88C 0000B7EC 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) +/* 8000E890 0000B7F0 38 81 00 74 */ addi r4, r1, 0x74 +/* 8000E894 0000B7F4 38 6D 80 48 */ addi r3, r13, lbl_805A6C08@sda21 +/* 8000E898 0000B7F8 38 AD 80 4C */ addi r5, r13, lbl_805A6C0C@sda21 +/* 8000E89C 0000B7FC C0 26 02 88 */ lfs f1, 0x288(r6) +/* 8000E8A0 0000B800 C0 06 02 8C */ lfs f0, 0x28c(r6) +/* 8000E8A4 0000B804 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8000E8A8 0000B808 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8000E8AC 0000B80C D0 01 00 74 */ stfs f0, 0x74(r1) +/* 8000E8B0 0000B810 4B FF DA 05 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000E8B4 0000B814 C0 43 00 00 */ lfs f2, 0(r3) +/* 8000E8B8 0000B818 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000E8BC 0000B81C D0 41 00 74 */ stfs f2, 0x74(r1) +/* 8000E8C0 0000B820 C0 23 02 90 */ lfs f1, 0x290(r3) +/* 8000E8C4 0000B824 C0 1F 01 C0 */ lfs f0, 0x1c0(r31) +/* 8000E8C8 0000B828 EF 62 00 72 */ fmuls f27, f2, f1 +/* 8000E8CC 0000B82C EF 7B 00 2A */ fadds f27, f27, f0 +/* 8000E8D0 0000B830 FC 20 D8 90 */ fmr f1, f27 +/* 8000E8D4 0000B834 48 38 62 09 */ bl sin +/* 8000E8D8 0000B838 FF 40 08 18 */ frsp f26, f1 +/* 8000E8DC 0000B83C FC 20 D8 90 */ fmr f1, f27 +/* 8000E8E0 0000B840 48 38 5B 11 */ bl cos +/* 8000E8E4 0000B844 FC 40 08 18 */ frsp f2, f1 +/* 8000E8E8 0000B848 C0 22 80 B0 */ lfs f1, lbl_805A9DD0@sda21(r2) +/* 8000E8EC 0000B84C FC 00 D0 50 */ fneg f0, f26 +/* 8000E8F0 0000B850 38 61 02 A0 */ addi r3, r1, 0x2a0 +/* 8000E8F4 0000B854 D0 21 04 4C */ stfs f1, 0x44c(r1) +/* 8000E8F8 0000B858 38 81 08 78 */ addi r4, r1, 0x878 +/* 8000E8FC 0000B85C D0 41 04 50 */ stfs f2, 0x450(r1) +/* 8000E900 0000B860 38 A1 04 4C */ addi r5, r1, 0x44c +/* 8000E904 0000B864 D0 01 04 54 */ stfs f0, 0x454(r1) +/* 8000E908 0000B868 48 30 41 79 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8000E90C 0000B86C C0 41 02 A0 */ lfs f2, 0x2a0(r1) +/* 8000E910 0000B870 C0 21 02 A4 */ lfs f1, 0x2a4(r1) +/* 8000E914 0000B874 C0 01 02 A8 */ lfs f0, 0x2a8(r1) +/* 8000E918 0000B878 D0 41 04 4C */ stfs f2, 0x44c(r1) +/* 8000E91C 0000B87C D0 21 04 50 */ stfs f1, 0x450(r1) +/* 8000E920 0000B880 D0 01 04 54 */ stfs f0, 0x454(r1) +/* 8000E924 0000B884 48 00 00 A0 */ b lbl_8000E9C4 +lbl_8000E928: +/* 8000E928 0000B888 C0 5E 02 9C */ lfs f2, 0x29c(r30) +/* 8000E92C 0000B88C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8000E930 0000B890 40 81 00 94 */ ble lbl_8000E9C4 +/* 8000E934 0000B894 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) +/* 8000E938 0000B898 38 81 00 70 */ addi r4, r1, 0x70 +/* 8000E93C 0000B89C 38 6D 80 50 */ addi r3, r13, lbl_805A6C10@sda21 +/* 8000E940 0000B8A0 38 AD 80 54 */ addi r5, r13, lbl_805A6C14@sda21 +/* 8000E944 0000B8A4 C0 26 02 94 */ lfs f1, 0x294(r6) +/* 8000E948 0000B8A8 C0 06 02 98 */ lfs f0, 0x298(r6) +/* 8000E94C 0000B8AC EC 22 08 28 */ fsubs f1, f2, f1 +/* 8000E950 0000B8B0 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8000E954 0000B8B4 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 8000E958 0000B8B8 4B FF D9 5D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000E95C 0000B8BC C0 23 00 00 */ lfs f1, 0(r3) +/* 8000E960 0000B8C0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000E964 0000B8C4 D0 21 00 70 */ stfs f1, 0x70(r1) +/* 8000E968 0000B8C8 C0 03 02 9C */ lfs f0, 0x29c(r3) +/* 8000E96C 0000B8CC EF 61 00 32 */ fmuls f27, f1, f0 +/* 8000E970 0000B8D0 FC 20 D8 90 */ fmr f1, f27 +/* 8000E974 0000B8D4 48 38 61 69 */ bl sin +/* 8000E978 0000B8D8 FF 40 08 18 */ frsp f26, f1 +/* 8000E97C 0000B8DC FC 20 D8 90 */ fmr f1, f27 +/* 8000E980 0000B8E0 48 38 5A 71 */ bl cos +/* 8000E984 0000B8E4 FC 40 08 18 */ frsp f2, f1 +/* 8000E988 0000B8E8 C0 22 80 B0 */ lfs f1, lbl_805A9DD0@sda21(r2) +/* 8000E98C 0000B8EC FC 00 D0 50 */ fneg f0, f26 +/* 8000E990 0000B8F0 38 61 02 94 */ addi r3, r1, 0x294 +/* 8000E994 0000B8F4 D0 21 04 4C */ stfs f1, 0x44c(r1) +/* 8000E998 0000B8F8 38 81 08 78 */ addi r4, r1, 0x878 +/* 8000E99C 0000B8FC D0 41 04 50 */ stfs f2, 0x450(r1) +/* 8000E9A0 0000B900 38 A1 04 4C */ addi r5, r1, 0x44c +/* 8000E9A4 0000B904 D0 01 04 54 */ stfs f0, 0x454(r1) +/* 8000E9A8 0000B908 48 30 40 D9 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8000E9AC 0000B90C C0 41 02 94 */ lfs f2, 0x294(r1) +/* 8000E9B0 0000B910 C0 21 02 98 */ lfs f1, 0x298(r1) +/* 8000E9B4 0000B914 C0 01 02 9C */ lfs f0, 0x29c(r1) +/* 8000E9B8 0000B918 D0 41 04 4C */ stfs f2, 0x44c(r1) +/* 8000E9BC 0000B91C D0 21 04 50 */ stfs f1, 0x450(r1) +/* 8000E9C0 0000B920 D0 01 04 54 */ stfs f0, 0x454(r1) +lbl_8000E9C4: +/* 8000E9C4 0000B924 38 61 04 4C */ addi r3, r1, 0x44c +/* 8000E9C8 0000B928 48 30 5D 31 */ bl CanBeNormalized__9CVector3fCFv +/* 8000E9CC 0000B92C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000E9D0 0000B930 41 82 00 0C */ beq lbl_8000E9DC +/* 8000E9D4 0000B934 38 61 04 4C */ addi r3, r1, 0x44c +/* 8000E9D8 0000B938 48 30 5F 21 */ bl Normalize__9CVector3fFv +lbl_8000E9DC: +/* 8000E9DC 0000B93C 3C 80 80 5A */ lis r4, lbl_805A6660@ha +/* 8000E9E0 0000B940 38 61 08 48 */ addi r3, r1, 0x848 +/* 8000E9E4 0000B944 38 A4 66 60 */ addi r5, r4, lbl_805A6660@l +/* 8000E9E8 0000B948 38 9F 01 90 */ addi r4, r31, 0x190 +/* 8000E9EC 0000B94C C0 65 00 00 */ lfs f3, 0(r5) +/* 8000E9F0 0000B950 C0 45 00 04 */ lfs f2, 4(r5) +/* 8000E9F4 0000B954 C0 25 00 08 */ lfs f1, 8(r5) +/* 8000E9F8 0000B958 C0 05 00 0C */ lfs f0, 0xc(r5) +/* 8000E9FC 0000B95C D0 61 04 14 */ stfs f3, 0x414(r1) +/* 8000EA00 0000B960 D0 41 04 18 */ stfs f2, 0x418(r1) +/* 8000EA04 0000B964 D0 21 04 1C */ stfs f1, 0x41c(r1) +/* 8000EA08 0000B968 D0 01 04 20 */ stfs f0, 0x420(r1) +/* 8000EA0C 0000B96C 48 30 41 69 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8000EA10 0000B970 88 1E 03 DC */ lbz r0, 0x3dc(r30) +/* 8000EA14 0000B974 28 00 00 00 */ cmplwi r0, 0 +/* 8000EA18 0000B978 40 82 09 F8 */ bne lbl_8000F410 +/* 8000EA1C 0000B97C 80 1E 03 04 */ lwz r0, 0x304(r30) +/* 8000EA20 0000B980 2C 00 00 04 */ cmpwi r0, 4 +/* 8000EA24 0000B984 41 82 06 2C */ beq lbl_8000F050 +/* 8000EA28 0000B988 40 80 00 14 */ bge lbl_8000EA3C +/* 8000EA2C 0000B98C 2C 00 00 01 */ cmpwi r0, 1 +/* 8000EA30 0000B990 41 82 06 20 */ beq lbl_8000F050 +/* 8000EA34 0000B994 40 80 04 14 */ bge lbl_8000EE48 +/* 8000EA38 0000B998 48 00 00 10 */ b lbl_8000EA48 +lbl_8000EA3C: +/* 8000EA3C 0000B99C 2C 00 00 06 */ cmpwi r0, 6 +/* 8000EA40 0000B9A0 40 80 00 08 */ bge lbl_8000EA48 +/* 8000EA44 0000B9A4 48 00 02 04 */ b lbl_8000EC48 +lbl_8000EA48: +/* 8000EA48 0000B9A8 C0 7F 01 B4 */ lfs f3, 0x1b4(r31) +/* 8000EA4C 0000B9AC 38 61 04 08 */ addi r3, r1, 0x408 +/* 8000EA50 0000B9B0 C0 5F 01 A4 */ lfs f2, 0x1a4(r31) +/* 8000EA54 0000B9B4 C0 3F 01 94 */ lfs f1, 0x194(r31) +/* 8000EA58 0000B9B8 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000EA5C 0000B9BC D0 61 04 10 */ stfs f3, 0x410(r1) +/* 8000EA60 0000B9C0 D0 21 04 08 */ stfs f1, 0x408(r1) +/* 8000EA64 0000B9C4 D0 41 04 0C */ stfs f2, 0x40c(r1) +/* 8000EA68 0000B9C8 D0 01 04 10 */ stfs f0, 0x410(r1) +/* 8000EA6C 0000B9CC 48 30 5C 8D */ bl CanBeNormalized__9CVector3fCFv +/* 8000EA70 0000B9D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000EA74 0000B9D4 41 82 00 0C */ beq lbl_8000EA80 +/* 8000EA78 0000B9D8 38 61 04 08 */ addi r3, r1, 0x408 +/* 8000EA7C 0000B9DC 48 30 5E 7D */ bl Normalize__9CVector3fFv +lbl_8000EA80: +/* 8000EA80 0000B9E0 C0 01 04 54 */ lfs f0, 0x454(r1) +/* 8000EA84 0000B9E4 38 61 03 FC */ addi r3, r1, 0x3fc +/* 8000EA88 0000B9E8 C0 41 04 4C */ lfs f2, 0x44c(r1) +/* 8000EA8C 0000B9EC C0 21 04 50 */ lfs f1, 0x450(r1) +/* 8000EA90 0000B9F0 D0 01 04 04 */ stfs f0, 0x404(r1) +/* 8000EA94 0000B9F4 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000EA98 0000B9F8 D0 41 03 FC */ stfs f2, 0x3fc(r1) +/* 8000EA9C 0000B9FC D0 21 04 00 */ stfs f1, 0x400(r1) +/* 8000EAA0 0000BA00 D0 01 04 04 */ stfs f0, 0x404(r1) +/* 8000EAA4 0000BA04 48 30 5C 55 */ bl CanBeNormalized__9CVector3fCFv +/* 8000EAA8 0000BA08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000EAAC 0000BA0C 41 82 00 0C */ beq lbl_8000EAB8 +/* 8000EAB0 0000BA10 38 61 03 FC */ addi r3, r1, 0x3fc +/* 8000EAB4 0000BA14 48 30 5E 45 */ bl Normalize__9CVector3fFv +lbl_8000EAB8: +/* 8000EAB8 0000BA18 C0 02 80 D0 */ lfs f0, lbl_805A9DF0@sda21(r2) +/* 8000EABC 0000BA1C 38 61 02 6C */ addi r3, r1, 0x26c +/* 8000EAC0 0000BA20 38 81 03 FC */ addi r4, r1, 0x3fc +/* 8000EAC4 0000BA24 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8000EAC8 0000BA28 48 30 53 09 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000EACC 0000BA2C 7C 7C 1B 78 */ mr r28, r3 +/* 8000EAD0 0000BA30 38 61 02 78 */ addi r3, r1, 0x278 +/* 8000EAD4 0000BA34 38 81 04 08 */ addi r4, r1, 0x408 +/* 8000EAD8 0000BA38 48 30 52 F9 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000EADC 0000BA3C 7C 64 1B 78 */ mr r4, r3 +/* 8000EAE0 0000BA40 7F 85 E3 78 */ mr r5, r28 +/* 8000EAE4 0000BA44 38 61 02 84 */ addi r3, r1, 0x284 +/* 8000EAE8 0000BA48 38 C1 00 4C */ addi r6, r1, 0x4c +/* 8000EAEC 0000BA4C 48 30 2B A9 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000EAF0 0000BA50 C0 61 02 84 */ lfs f3, 0x284(r1) +/* 8000EAF4 0000BA54 38 61 07 88 */ addi r3, r1, 0x788 +/* 8000EAF8 0000BA58 C0 41 02 88 */ lfs f2, 0x288(r1) +/* 8000EAFC 0000BA5C 38 9F 01 90 */ addi r4, r31, 0x190 +/* 8000EB00 0000BA60 C0 21 02 8C */ lfs f1, 0x28c(r1) +/* 8000EB04 0000BA64 C0 01 02 90 */ lfs f0, 0x290(r1) +/* 8000EB08 0000BA68 D0 61 03 EC */ stfs f3, 0x3ec(r1) +/* 8000EB0C 0000BA6C D0 41 03 F0 */ stfs f2, 0x3f0(r1) +/* 8000EB10 0000BA70 D0 21 03 F4 */ stfs f1, 0x3f4(r1) +/* 8000EB14 0000BA74 D0 01 03 F8 */ stfs f0, 0x3f8(r1) +/* 8000EB18 0000BA78 48 30 41 29 */ bl GetRotation__12CTransform4fCFv +/* 8000EB1C 0000BA7C 38 61 07 B8 */ addi r3, r1, 0x7b8 +/* 8000EB20 0000BA80 38 81 03 EC */ addi r4, r1, 0x3ec +/* 8000EB24 0000BA84 48 30 34 95 */ bl BuildTransform4f__11CQuaternionCFv +/* 8000EB28 0000BA88 38 61 07 E8 */ addi r3, r1, 0x7e8 +/* 8000EB2C 0000BA8C 38 81 07 B8 */ addi r4, r1, 0x7b8 +/* 8000EB30 0000BA90 38 A1 07 88 */ addi r5, r1, 0x788 +/* 8000EB34 0000BA94 48 30 3E 1D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8000EB38 0000BA98 38 61 08 48 */ addi r3, r1, 0x848 +/* 8000EB3C 0000BA9C 38 81 07 E8 */ addi r4, r1, 0x7e8 +/* 8000EB40 0000BAA0 48 30 40 01 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000EB44 0000BAA4 C0 41 08 6C */ lfs f2, 0x86c(r1) +/* 8000EB48 0000BAA8 38 61 03 E0 */ addi r3, r1, 0x3e0 +/* 8000EB4C 0000BAAC C0 21 08 4C */ lfs f1, 0x84c(r1) +/* 8000EB50 0000BAB0 C0 01 08 5C */ lfs f0, 0x85c(r1) +/* 8000EB54 0000BAB4 D0 21 03 E0 */ stfs f1, 0x3e0(r1) +/* 8000EB58 0000BAB8 D0 01 03 E4 */ stfs f0, 0x3e4(r1) +/* 8000EB5C 0000BABC D0 41 03 E8 */ stfs f2, 0x3e8(r1) +/* 8000EB60 0000BAC0 48 30 5B 99 */ bl CanBeNormalized__9CVector3fCFv +/* 8000EB64 0000BAC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000EB68 0000BAC8 41 82 00 0C */ beq lbl_8000EB74 +/* 8000EB6C 0000BACC 38 61 03 E0 */ addi r3, r1, 0x3e0 +/* 8000EB70 0000BAD0 48 30 5D 89 */ bl Normalize__9CVector3fFv +lbl_8000EB74: +/* 8000EB74 0000BAD4 C0 21 03 E4 */ lfs f1, 0x3e4(r1) +/* 8000EB78 0000BAD8 C0 01 04 50 */ lfs f0, 0x450(r1) +/* 8000EB7C 0000BADC 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000EB80 0000BAE0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000EB84 0000BAE4 C0 41 03 E0 */ lfs f2, 0x3e0(r1) +/* 8000EB88 0000BAE8 C0 21 04 4C */ lfs f1, 0x44c(r1) +/* 8000EB8C 0000BAEC C0 83 02 80 */ lfs f4, 0x280(r3) +/* 8000EB90 0000BAF0 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8000EB94 0000BAF4 C0 61 03 E8 */ lfs f3, 0x3e8(r1) +/* 8000EB98 0000BAF8 C0 41 04 54 */ lfs f2, 0x454(r1) +/* 8000EB9C 0000BAFC EF 9C 01 32 */ fmuls f28, f28, f4 +/* 8000EBA0 0000BB00 C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000EBA4 0000BB04 EC 23 08 BA */ fmadds f1, f3, f2, f1 +/* 8000EBA8 0000BB08 FC 40 0A 10 */ fabs f2, f1 +/* 8000EBAC 0000BB0C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8000EBB0 0000BB10 40 81 00 14 */ ble lbl_8000EBC4 +/* 8000EBB4 0000BB14 C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000EBB8 0000BB18 C0 42 80 B4 */ lfs f2, lbl_805A9DD4@sda21(r2) +/* 8000EBBC 0000BB1C FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8000EBC0 0000BB20 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8000EBC4: +/* 8000EBC4 0000BB24 48 38 60 69 */ bl acos +/* 8000EBC8 0000BB28 FC 00 08 18 */ frsp f0, f1 +/* 8000EBCC 0000BB2C 38 81 00 6C */ addi r4, r1, 0x6c +/* 8000EBD0 0000BB30 38 6D 80 58 */ addi r3, r13, lbl_805A6C18@sda21 +/* 8000EBD4 0000BB34 38 AD 80 5C */ addi r5, r13, lbl_805A6C1C@sda21 +/* 8000EBD8 0000BB38 EC 00 E0 24 */ fdivs f0, f0, f28 +/* 8000EBDC 0000BB3C D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8000EBE0 0000BB40 4B FF D6 D5 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000EBE4 0000BB44 C0 03 00 00 */ lfs f0, 0(r3) +/* 8000EBE8 0000BB48 38 61 02 44 */ addi r3, r1, 0x244 +/* 8000EBEC 0000BB4C 38 81 04 4C */ addi r4, r1, 0x44c +/* 8000EBF0 0000BB50 EC 3C 00 32 */ fmuls f1, f28, f0 +/* 8000EBF4 0000BB54 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 8000EBF8 0000BB58 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8000EBFC 0000BB5C 48 30 51 D5 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000EC00 0000BB60 7C 7C 1B 78 */ mr r28, r3 +/* 8000EC04 0000BB64 38 61 02 50 */ addi r3, r1, 0x250 +/* 8000EC08 0000BB68 38 81 03 E0 */ addi r4, r1, 0x3e0 +/* 8000EC0C 0000BB6C 48 30 51 C5 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000EC10 0000BB70 7C 64 1B 78 */ mr r4, r3 +/* 8000EC14 0000BB74 7F 85 E3 78 */ mr r5, r28 +/* 8000EC18 0000BB78 38 61 02 5C */ addi r3, r1, 0x25c +/* 8000EC1C 0000BB7C 38 C1 00 48 */ addi r6, r1, 0x48 +/* 8000EC20 0000BB80 48 30 2A 75 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000EC24 0000BB84 C0 01 02 5C */ lfs f0, 0x25c(r1) +/* 8000EC28 0000BB88 80 81 02 60 */ lwz r4, 0x260(r1) +/* 8000EC2C 0000BB8C 80 61 02 64 */ lwz r3, 0x264(r1) +/* 8000EC30 0000BB90 80 01 02 68 */ lwz r0, 0x268(r1) +/* 8000EC34 0000BB94 D0 01 04 14 */ stfs f0, 0x414(r1) +/* 8000EC38 0000BB98 90 81 04 18 */ stw r4, 0x418(r1) +/* 8000EC3C 0000BB9C 90 61 04 1C */ stw r3, 0x41c(r1) +/* 8000EC40 0000BBA0 90 01 04 20 */ stw r0, 0x420(r1) +/* 8000EC44 0000BBA4 48 00 09 D4 */ b lbl_8000F618 +lbl_8000EC48: +/* 8000EC48 0000BBA8 C0 7F 01 B4 */ lfs f3, 0x1b4(r31) +/* 8000EC4C 0000BBAC 38 61 03 D4 */ addi r3, r1, 0x3d4 +/* 8000EC50 0000BBB0 C0 5F 01 A4 */ lfs f2, 0x1a4(r31) +/* 8000EC54 0000BBB4 C0 3F 01 94 */ lfs f1, 0x194(r31) +/* 8000EC58 0000BBB8 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000EC5C 0000BBBC D0 61 03 DC */ stfs f3, 0x3dc(r1) +/* 8000EC60 0000BBC0 D0 21 03 D4 */ stfs f1, 0x3d4(r1) +/* 8000EC64 0000BBC4 D0 41 03 D8 */ stfs f2, 0x3d8(r1) +/* 8000EC68 0000BBC8 D0 01 03 DC */ stfs f0, 0x3dc(r1) +/* 8000EC6C 0000BBCC 48 30 5A 8D */ bl CanBeNormalized__9CVector3fCFv +/* 8000EC70 0000BBD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000EC74 0000BBD4 41 82 00 0C */ beq lbl_8000EC80 +/* 8000EC78 0000BBD8 38 61 03 D4 */ addi r3, r1, 0x3d4 +/* 8000EC7C 0000BBDC 48 30 5C 7D */ bl Normalize__9CVector3fFv +lbl_8000EC80: +/* 8000EC80 0000BBE0 C0 01 04 54 */ lfs f0, 0x454(r1) +/* 8000EC84 0000BBE4 38 61 03 C8 */ addi r3, r1, 0x3c8 +/* 8000EC88 0000BBE8 C0 41 04 4C */ lfs f2, 0x44c(r1) +/* 8000EC8C 0000BBEC C0 21 04 50 */ lfs f1, 0x450(r1) +/* 8000EC90 0000BBF0 D0 01 03 D0 */ stfs f0, 0x3d0(r1) +/* 8000EC94 0000BBF4 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000EC98 0000BBF8 D0 41 03 C8 */ stfs f2, 0x3c8(r1) +/* 8000EC9C 0000BBFC D0 21 03 CC */ stfs f1, 0x3cc(r1) +/* 8000ECA0 0000BC00 D0 01 03 D0 */ stfs f0, 0x3d0(r1) +/* 8000ECA4 0000BC04 48 30 5A 55 */ bl CanBeNormalized__9CVector3fCFv +/* 8000ECA8 0000BC08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000ECAC 0000BC0C 41 82 00 0C */ beq lbl_8000ECB8 +/* 8000ECB0 0000BC10 38 61 03 C8 */ addi r3, r1, 0x3c8 +/* 8000ECB4 0000BC14 48 30 5C 45 */ bl Normalize__9CVector3fFv +lbl_8000ECB8: +/* 8000ECB8 0000BC18 C0 02 80 D0 */ lfs f0, lbl_805A9DF0@sda21(r2) +/* 8000ECBC 0000BC1C 38 61 02 1C */ addi r3, r1, 0x21c +/* 8000ECC0 0000BC20 38 81 03 C8 */ addi r4, r1, 0x3c8 +/* 8000ECC4 0000BC24 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8000ECC8 0000BC28 48 30 51 09 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000ECCC 0000BC2C 7C 7C 1B 78 */ mr r28, r3 +/* 8000ECD0 0000BC30 38 61 02 28 */ addi r3, r1, 0x228 +/* 8000ECD4 0000BC34 38 81 03 D4 */ addi r4, r1, 0x3d4 +/* 8000ECD8 0000BC38 48 30 50 F9 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000ECDC 0000BC3C 7C 64 1B 78 */ mr r4, r3 +/* 8000ECE0 0000BC40 7F 85 E3 78 */ mr r5, r28 +/* 8000ECE4 0000BC44 38 61 02 34 */ addi r3, r1, 0x234 +/* 8000ECE8 0000BC48 38 C1 00 44 */ addi r6, r1, 0x44 +/* 8000ECEC 0000BC4C 48 30 29 A9 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000ECF0 0000BC50 C0 61 02 34 */ lfs f3, 0x234(r1) +/* 8000ECF4 0000BC54 38 61 06 F8 */ addi r3, r1, 0x6f8 +/* 8000ECF8 0000BC58 C0 41 02 38 */ lfs f2, 0x238(r1) +/* 8000ECFC 0000BC5C 38 9F 01 90 */ addi r4, r31, 0x190 +/* 8000ED00 0000BC60 C0 21 02 3C */ lfs f1, 0x23c(r1) +/* 8000ED04 0000BC64 C0 01 02 40 */ lfs f0, 0x240(r1) +/* 8000ED08 0000BC68 D0 61 03 B8 */ stfs f3, 0x3b8(r1) +/* 8000ED0C 0000BC6C D0 41 03 BC */ stfs f2, 0x3bc(r1) +/* 8000ED10 0000BC70 D0 21 03 C0 */ stfs f1, 0x3c0(r1) +/* 8000ED14 0000BC74 D0 01 03 C4 */ stfs f0, 0x3c4(r1) +/* 8000ED18 0000BC78 48 30 3F 29 */ bl GetRotation__12CTransform4fCFv +/* 8000ED1C 0000BC7C 38 61 07 28 */ addi r3, r1, 0x728 +/* 8000ED20 0000BC80 38 81 03 B8 */ addi r4, r1, 0x3b8 +/* 8000ED24 0000BC84 48 30 32 95 */ bl BuildTransform4f__11CQuaternionCFv +/* 8000ED28 0000BC88 38 61 07 58 */ addi r3, r1, 0x758 +/* 8000ED2C 0000BC8C 38 81 07 28 */ addi r4, r1, 0x728 +/* 8000ED30 0000BC90 38 A1 06 F8 */ addi r5, r1, 0x6f8 +/* 8000ED34 0000BC94 48 30 3C 1D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8000ED38 0000BC98 38 61 08 48 */ addi r3, r1, 0x848 +/* 8000ED3C 0000BC9C 38 81 07 58 */ addi r4, r1, 0x758 +/* 8000ED40 0000BCA0 48 30 3E 01 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000ED44 0000BCA4 C0 41 08 6C */ lfs f2, 0x86c(r1) +/* 8000ED48 0000BCA8 38 61 03 AC */ addi r3, r1, 0x3ac +/* 8000ED4C 0000BCAC C0 21 08 4C */ lfs f1, 0x84c(r1) +/* 8000ED50 0000BCB0 C0 01 08 5C */ lfs f0, 0x85c(r1) +/* 8000ED54 0000BCB4 D0 21 03 AC */ stfs f1, 0x3ac(r1) +/* 8000ED58 0000BCB8 D0 01 03 B0 */ stfs f0, 0x3b0(r1) +/* 8000ED5C 0000BCBC D0 41 03 B4 */ stfs f2, 0x3b4(r1) +/* 8000ED60 0000BCC0 48 30 59 99 */ bl CanBeNormalized__9CVector3fCFv +/* 8000ED64 0000BCC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000ED68 0000BCC8 41 82 00 0C */ beq lbl_8000ED74 +/* 8000ED6C 0000BCCC 38 61 03 AC */ addi r3, r1, 0x3ac +/* 8000ED70 0000BCD0 48 30 5B 89 */ bl Normalize__9CVector3fFv +lbl_8000ED74: +/* 8000ED74 0000BCD4 C0 21 03 B0 */ lfs f1, 0x3b0(r1) +/* 8000ED78 0000BCD8 C0 01 04 50 */ lfs f0, 0x450(r1) +/* 8000ED7C 0000BCDC 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000ED80 0000BCE0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000ED84 0000BCE4 C0 41 03 AC */ lfs f2, 0x3ac(r1) +/* 8000ED88 0000BCE8 C0 21 04 4C */ lfs f1, 0x44c(r1) +/* 8000ED8C 0000BCEC C0 83 02 B0 */ lfs f4, 0x2b0(r3) +/* 8000ED90 0000BCF0 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8000ED94 0000BCF4 C0 61 03 B4 */ lfs f3, 0x3b4(r1) +/* 8000ED98 0000BCF8 C0 41 04 54 */ lfs f2, 0x454(r1) +/* 8000ED9C 0000BCFC EF 9C 01 32 */ fmuls f28, f28, f4 +/* 8000EDA0 0000BD00 C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000EDA4 0000BD04 EC 23 08 BA */ fmadds f1, f3, f2, f1 +/* 8000EDA8 0000BD08 FC 40 0A 10 */ fabs f2, f1 +/* 8000EDAC 0000BD0C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8000EDB0 0000BD10 40 81 00 14 */ ble lbl_8000EDC4 +/* 8000EDB4 0000BD14 C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000EDB8 0000BD18 C0 42 80 B4 */ lfs f2, lbl_805A9DD4@sda21(r2) +/* 8000EDBC 0000BD1C FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8000EDC0 0000BD20 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8000EDC4: +/* 8000EDC4 0000BD24 48 38 5E 69 */ bl acos +/* 8000EDC8 0000BD28 FC 00 08 18 */ frsp f0, f1 +/* 8000EDCC 0000BD2C 38 81 00 68 */ addi r4, r1, 0x68 +/* 8000EDD0 0000BD30 38 6D 80 60 */ addi r3, r13, lbl_805A6C20@sda21 +/* 8000EDD4 0000BD34 38 AD 80 64 */ addi r5, r13, lbl_805A6C24@sda21 +/* 8000EDD8 0000BD38 EC 00 E0 24 */ fdivs f0, f0, f28 +/* 8000EDDC 0000BD3C D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8000EDE0 0000BD40 4B FF D4 D5 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000EDE4 0000BD44 C0 03 00 00 */ lfs f0, 0(r3) +/* 8000EDE8 0000BD48 38 61 01 F4 */ addi r3, r1, 0x1f4 +/* 8000EDEC 0000BD4C 38 81 04 4C */ addi r4, r1, 0x44c +/* 8000EDF0 0000BD50 EC 3C 00 32 */ fmuls f1, f28, f0 +/* 8000EDF4 0000BD54 D0 01 00 68 */ stfs f0, 0x68(r1) +/* 8000EDF8 0000BD58 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 8000EDFC 0000BD5C 48 30 4F D5 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000EE00 0000BD60 7C 7C 1B 78 */ mr r28, r3 +/* 8000EE04 0000BD64 38 61 02 00 */ addi r3, r1, 0x200 +/* 8000EE08 0000BD68 38 81 03 AC */ addi r4, r1, 0x3ac +/* 8000EE0C 0000BD6C 48 30 4F C5 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000EE10 0000BD70 7C 64 1B 78 */ mr r4, r3 +/* 8000EE14 0000BD74 7F 85 E3 78 */ mr r5, r28 +/* 8000EE18 0000BD78 38 61 02 0C */ addi r3, r1, 0x20c +/* 8000EE1C 0000BD7C 38 C1 00 40 */ addi r6, r1, 0x40 +/* 8000EE20 0000BD80 48 30 28 75 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000EE24 0000BD84 C0 01 02 0C */ lfs f0, 0x20c(r1) +/* 8000EE28 0000BD88 80 81 02 10 */ lwz r4, 0x210(r1) +/* 8000EE2C 0000BD8C 80 61 02 14 */ lwz r3, 0x214(r1) +/* 8000EE30 0000BD90 80 01 02 18 */ lwz r0, 0x218(r1) +/* 8000EE34 0000BD94 D0 01 04 14 */ stfs f0, 0x414(r1) +/* 8000EE38 0000BD98 90 81 04 18 */ stw r4, 0x418(r1) +/* 8000EE3C 0000BD9C 90 61 04 1C */ stw r3, 0x41c(r1) +/* 8000EE40 0000BDA0 90 01 04 20 */ stw r0, 0x420(r1) +/* 8000EE44 0000BDA4 48 00 07 D4 */ b lbl_8000F618 +lbl_8000EE48: +/* 8000EE48 0000BDA8 C0 7F 01 B4 */ lfs f3, 0x1b4(r31) +/* 8000EE4C 0000BDAC 38 61 03 A0 */ addi r3, r1, 0x3a0 +/* 8000EE50 0000BDB0 C0 5F 01 A4 */ lfs f2, 0x1a4(r31) +/* 8000EE54 0000BDB4 C0 3F 01 94 */ lfs f1, 0x194(r31) +/* 8000EE58 0000BDB8 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000EE5C 0000BDBC D0 61 03 A8 */ stfs f3, 0x3a8(r1) +/* 8000EE60 0000BDC0 D0 21 03 A0 */ stfs f1, 0x3a0(r1) +/* 8000EE64 0000BDC4 D0 41 03 A4 */ stfs f2, 0x3a4(r1) +/* 8000EE68 0000BDC8 D0 01 03 A8 */ stfs f0, 0x3a8(r1) +/* 8000EE6C 0000BDCC 48 30 58 8D */ bl CanBeNormalized__9CVector3fCFv +/* 8000EE70 0000BDD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000EE74 0000BDD4 41 82 00 0C */ beq lbl_8000EE80 +/* 8000EE78 0000BDD8 38 61 03 A0 */ addi r3, r1, 0x3a0 +/* 8000EE7C 0000BDDC 48 30 5A 7D */ bl Normalize__9CVector3fFv +lbl_8000EE80: +/* 8000EE80 0000BDE0 C0 01 04 54 */ lfs f0, 0x454(r1) +/* 8000EE84 0000BDE4 38 61 03 94 */ addi r3, r1, 0x394 +/* 8000EE88 0000BDE8 C0 41 04 4C */ lfs f2, 0x44c(r1) +/* 8000EE8C 0000BDEC C0 21 04 50 */ lfs f1, 0x450(r1) +/* 8000EE90 0000BDF0 D0 01 03 9C */ stfs f0, 0x39c(r1) +/* 8000EE94 0000BDF4 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000EE98 0000BDF8 D0 41 03 94 */ stfs f2, 0x394(r1) +/* 8000EE9C 0000BDFC D0 21 03 98 */ stfs f1, 0x398(r1) +/* 8000EEA0 0000BE00 D0 01 03 9C */ stfs f0, 0x39c(r1) +/* 8000EEA4 0000BE04 48 30 58 55 */ bl CanBeNormalized__9CVector3fCFv +/* 8000EEA8 0000BE08 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000EEAC 0000BE0C 41 82 00 0C */ beq lbl_8000EEB8 +/* 8000EEB0 0000BE10 38 61 03 94 */ addi r3, r1, 0x394 +/* 8000EEB4 0000BE14 48 30 5A 45 */ bl Normalize__9CVector3fFv +lbl_8000EEB8: +/* 8000EEB8 0000BE18 C0 02 80 D0 */ lfs f0, lbl_805A9DF0@sda21(r2) +/* 8000EEBC 0000BE1C 38 61 01 CC */ addi r3, r1, 0x1cc +/* 8000EEC0 0000BE20 38 81 03 94 */ addi r4, r1, 0x394 +/* 8000EEC4 0000BE24 D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 8000EEC8 0000BE28 48 30 4F 09 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000EECC 0000BE2C 7C 7C 1B 78 */ mr r28, r3 +/* 8000EED0 0000BE30 38 61 01 D8 */ addi r3, r1, 0x1d8 +/* 8000EED4 0000BE34 38 81 03 A0 */ addi r4, r1, 0x3a0 +/* 8000EED8 0000BE38 48 30 4E F9 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000EEDC 0000BE3C 7C 64 1B 78 */ mr r4, r3 +/* 8000EEE0 0000BE40 7F 85 E3 78 */ mr r5, r28 +/* 8000EEE4 0000BE44 38 61 01 E4 */ addi r3, r1, 0x1e4 +/* 8000EEE8 0000BE48 38 C1 00 3C */ addi r6, r1, 0x3c +/* 8000EEEC 0000BE4C 48 30 27 A9 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000EEF0 0000BE50 C0 61 01 E4 */ lfs f3, 0x1e4(r1) +/* 8000EEF4 0000BE54 38 61 06 68 */ addi r3, r1, 0x668 +/* 8000EEF8 0000BE58 C0 41 01 E8 */ lfs f2, 0x1e8(r1) +/* 8000EEFC 0000BE5C 38 9F 01 90 */ addi r4, r31, 0x190 +/* 8000EF00 0000BE60 C0 21 01 EC */ lfs f1, 0x1ec(r1) +/* 8000EF04 0000BE64 C0 01 01 F0 */ lfs f0, 0x1f0(r1) +/* 8000EF08 0000BE68 D0 61 03 84 */ stfs f3, 0x384(r1) +/* 8000EF0C 0000BE6C D0 41 03 88 */ stfs f2, 0x388(r1) +/* 8000EF10 0000BE70 D0 21 03 8C */ stfs f1, 0x38c(r1) +/* 8000EF14 0000BE74 D0 01 03 90 */ stfs f0, 0x390(r1) +/* 8000EF18 0000BE78 48 30 3D 29 */ bl GetRotation__12CTransform4fCFv +/* 8000EF1C 0000BE7C 38 61 06 98 */ addi r3, r1, 0x698 +/* 8000EF20 0000BE80 38 81 03 84 */ addi r4, r1, 0x384 +/* 8000EF24 0000BE84 48 30 30 95 */ bl BuildTransform4f__11CQuaternionCFv +/* 8000EF28 0000BE88 38 61 06 C8 */ addi r3, r1, 0x6c8 +/* 8000EF2C 0000BE8C 38 81 06 98 */ addi r4, r1, 0x698 +/* 8000EF30 0000BE90 38 A1 06 68 */ addi r5, r1, 0x668 +/* 8000EF34 0000BE94 48 30 3A 1D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8000EF38 0000BE98 38 61 08 48 */ addi r3, r1, 0x848 +/* 8000EF3C 0000BE9C 38 81 06 C8 */ addi r4, r1, 0x6c8 +/* 8000EF40 0000BEA0 48 30 3C 01 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000EF44 0000BEA4 C0 41 08 6C */ lfs f2, 0x86c(r1) +/* 8000EF48 0000BEA8 38 61 03 78 */ addi r3, r1, 0x378 +/* 8000EF4C 0000BEAC C0 21 08 4C */ lfs f1, 0x84c(r1) +/* 8000EF50 0000BEB0 C0 01 08 5C */ lfs f0, 0x85c(r1) +/* 8000EF54 0000BEB4 D0 21 03 78 */ stfs f1, 0x378(r1) +/* 8000EF58 0000BEB8 D0 01 03 7C */ stfs f0, 0x37c(r1) +/* 8000EF5C 0000BEBC D0 41 03 80 */ stfs f2, 0x380(r1) +/* 8000EF60 0000BEC0 48 30 57 99 */ bl CanBeNormalized__9CVector3fCFv +/* 8000EF64 0000BEC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000EF68 0000BEC8 41 82 00 0C */ beq lbl_8000EF74 +/* 8000EF6C 0000BECC 38 61 03 78 */ addi r3, r1, 0x378 +/* 8000EF70 0000BED0 48 30 59 89 */ bl Normalize__9CVector3fFv +lbl_8000EF74: +/* 8000EF74 0000BED4 C0 21 03 7C */ lfs f1, 0x37c(r1) +/* 8000EF78 0000BED8 C0 01 04 50 */ lfs f0, 0x450(r1) +/* 8000EF7C 0000BEDC 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000EF80 0000BEE0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000EF84 0000BEE4 C0 41 03 78 */ lfs f2, 0x378(r1) +/* 8000EF88 0000BEE8 C0 21 04 4C */ lfs f1, 0x44c(r1) +/* 8000EF8C 0000BEEC C0 63 01 84 */ lfs f3, 0x184(r3) +/* 8000EF90 0000BEF0 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 8000EF94 0000BEF4 C0 41 03 80 */ lfs f2, 0x380(r1) +/* 8000EF98 0000BEF8 C0 21 04 54 */ lfs f1, 0x454(r1) +/* 8000EF9C 0000BEFC EF 5C 00 F2 */ fmuls f26, f28, f3 +/* 8000EFA0 0000BF00 C0 62 80 D8 */ lfs f3, lbl_805A9DF8@sda21(r2) +/* 8000EFA4 0000BF04 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8000EFA8 0000BF08 C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000EFAC 0000BF0C EF 5A 00 F2 */ fmuls f26, f26, f3 +/* 8000EFB0 0000BF10 FC 40 0A 10 */ fabs f2, f1 +/* 8000EFB4 0000BF14 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8000EFB8 0000BF18 40 81 00 14 */ ble lbl_8000EFCC +/* 8000EFBC 0000BF1C C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000EFC0 0000BF20 C0 42 80 B4 */ lfs f2, lbl_805A9DD4@sda21(r2) +/* 8000EFC4 0000BF24 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8000EFC8 0000BF28 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8000EFCC: +/* 8000EFCC 0000BF2C 48 38 5C 61 */ bl acos +/* 8000EFD0 0000BF30 FC 00 08 18 */ frsp f0, f1 +/* 8000EFD4 0000BF34 38 81 00 64 */ addi r4, r1, 0x64 +/* 8000EFD8 0000BF38 38 6D 80 68 */ addi r3, r13, lbl_805A6C28@sda21 +/* 8000EFDC 0000BF3C 38 AD 80 6C */ addi r5, r13, lbl_805A6C2C@sda21 +/* 8000EFE0 0000BF40 EC 00 D0 24 */ fdivs f0, f0, f26 +/* 8000EFE4 0000BF44 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8000EFE8 0000BF48 4B FF D2 CD */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000EFEC 0000BF4C C0 03 00 00 */ lfs f0, 0(r3) +/* 8000EFF0 0000BF50 38 61 01 A4 */ addi r3, r1, 0x1a4 +/* 8000EFF4 0000BF54 38 81 04 4C */ addi r4, r1, 0x44c +/* 8000EFF8 0000BF58 EC 3A 00 32 */ fmuls f1, f26, f0 +/* 8000EFFC 0000BF5C D0 01 00 64 */ stfs f0, 0x64(r1) +/* 8000F000 0000BF60 D0 21 00 38 */ stfs f1, 0x38(r1) +/* 8000F004 0000BF64 48 30 4D CD */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F008 0000BF68 7C 7C 1B 78 */ mr r28, r3 +/* 8000F00C 0000BF6C 38 61 01 B0 */ addi r3, r1, 0x1b0 +/* 8000F010 0000BF70 38 81 03 78 */ addi r4, r1, 0x378 +/* 8000F014 0000BF74 48 30 4D BD */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F018 0000BF78 7C 64 1B 78 */ mr r4, r3 +/* 8000F01C 0000BF7C 7F 85 E3 78 */ mr r5, r28 +/* 8000F020 0000BF80 38 61 01 BC */ addi r3, r1, 0x1bc +/* 8000F024 0000BF84 38 C1 00 38 */ addi r6, r1, 0x38 +/* 8000F028 0000BF88 48 30 26 6D */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000F02C 0000BF8C C0 01 01 BC */ lfs f0, 0x1bc(r1) +/* 8000F030 0000BF90 80 81 01 C0 */ lwz r4, 0x1c0(r1) +/* 8000F034 0000BF94 80 61 01 C4 */ lwz r3, 0x1c4(r1) +/* 8000F038 0000BF98 80 01 01 C8 */ lwz r0, 0x1c8(r1) +/* 8000F03C 0000BF9C D0 01 04 14 */ stfs f0, 0x414(r1) +/* 8000F040 0000BFA0 90 81 04 18 */ stw r4, 0x418(r1) +/* 8000F044 0000BFA4 90 61 04 1C */ stw r3, 0x41c(r1) +/* 8000F048 0000BFA8 90 01 04 20 */ stw r0, 0x420(r1) +/* 8000F04C 0000BFAC 48 00 05 CC */ b lbl_8000F618 +lbl_8000F050: +/* 8000F050 0000BFB0 C0 5F 01 B4 */ lfs f2, 0x1b4(r31) +/* 8000F054 0000BFB4 38 61 03 6C */ addi r3, r1, 0x36c +/* 8000F058 0000BFB8 C0 3F 01 A4 */ lfs f1, 0x1a4(r31) +/* 8000F05C 0000BFBC C0 1F 01 94 */ lfs f0, 0x194(r31) +/* 8000F060 0000BFC0 D0 01 03 6C */ stfs f0, 0x36c(r1) +/* 8000F064 0000BFC4 D0 21 03 70 */ stfs f1, 0x370(r1) +/* 8000F068 0000BFC8 D0 41 03 74 */ stfs f2, 0x374(r1) +/* 8000F06C 0000BFCC 48 30 56 8D */ bl CanBeNormalized__9CVector3fCFv +/* 8000F070 0000BFD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F074 0000BFD4 41 82 00 0C */ beq lbl_8000F080 +/* 8000F078 0000BFD8 38 61 03 6C */ addi r3, r1, 0x36c +/* 8000F07C 0000BFDC 48 30 58 7D */ bl Normalize__9CVector3fFv +lbl_8000F080: +/* 8000F080 0000BFE0 C0 21 03 70 */ lfs f1, 0x370(r1) +/* 8000F084 0000BFE4 C0 01 04 50 */ lfs f0, 0x450(r1) +/* 8000F088 0000BFE8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000F08C 0000BFEC EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000F090 0000BFF0 C0 41 03 6C */ lfs f2, 0x36c(r1) +/* 8000F094 0000BFF4 C0 21 04 4C */ lfs f1, 0x44c(r1) +/* 8000F098 0000BFF8 C0 83 01 84 */ lfs f4, 0x184(r3) +/* 8000F09C 0000BFFC EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8000F0A0 0000C000 C0 61 03 74 */ lfs f3, 0x374(r1) +/* 8000F0A4 0000C004 C0 41 04 54 */ lfs f2, 0x454(r1) +/* 8000F0A8 0000C008 EF 7C 01 32 */ fmuls f27, f28, f4 +/* 8000F0AC 0000C00C C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000F0B0 0000C010 EF 43 08 BA */ fmadds f26, f3, f2, f1 +/* 8000F0B4 0000C014 FC 20 D2 10 */ fabs f1, f26 +/* 8000F0B8 0000C018 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000F0BC 0000C01C 40 81 00 14 */ ble lbl_8000F0D0 +/* 8000F0C0 0000C020 C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000F0C4 0000C024 C0 22 80 B4 */ lfs f1, lbl_805A9DD4@sda21(r2) +/* 8000F0C8 0000C028 FC 1A 00 6E */ fsel f0, f26, f1, f0 +/* 8000F0CC 0000C02C EF 41 00 32 */ fmuls f26, f1, f0 +lbl_8000F0D0: +/* 8000F0D0 0000C030 FC 20 D0 90 */ fmr f1, f26 +/* 8000F0D4 0000C034 48 38 5B 59 */ bl acos +/* 8000F0D8 0000C038 FC 00 08 18 */ frsp f0, f1 +/* 8000F0DC 0000C03C 38 81 00 60 */ addi r4, r1, 0x60 +/* 8000F0E0 0000C040 38 6D 80 70 */ addi r3, r13, lbl_805A6C30@sda21 +/* 8000F0E4 0000C044 38 AD 80 74 */ addi r5, r13, lbl_805A6C34@sda21 +/* 8000F0E8 0000C048 EC 00 D8 24 */ fdivs f0, f0, f27 +/* 8000F0EC 0000C04C D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8000F0F0 0000C050 4B FF D1 C5 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000F0F4 0000C054 C0 02 80 DC */ lfs f0, lbl_805A9DFC@sda21(r2) +/* 8000F0F8 0000C058 C0 23 00 00 */ lfs f1, 0(r3) +/* 8000F0FC 0000C05C FC 1A 00 40 */ fcmpo cr0, f26, f0 +/* 8000F100 0000C060 D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8000F104 0000C064 41 81 00 1C */ bgt lbl_8000F120 +/* 8000F108 0000C068 88 1F 01 8C */ lbz r0, 0x18c(r31) +/* 8000F10C 0000C06C 28 00 00 00 */ cmplwi r0, 0 +/* 8000F110 0000C070 40 82 00 10 */ bne lbl_8000F120 +/* 8000F114 0000C074 88 1E 03 74 */ lbz r0, 0x374(r30) +/* 8000F118 0000C078 28 00 00 00 */ cmplwi r0, 0 +/* 8000F11C 0000C07C 41 82 00 60 */ beq lbl_8000F17C +lbl_8000F120: +/* 8000F120 0000C080 C0 02 80 D0 */ lfs f0, lbl_805A9DF0@sda21(r2) +/* 8000F124 0000C084 38 61 01 7C */ addi r3, r1, 0x17c +/* 8000F128 0000C088 38 81 04 4C */ addi r4, r1, 0x44c +/* 8000F12C 0000C08C D0 01 00 34 */ stfs f0, 0x34(r1) +/* 8000F130 0000C090 48 30 4C A1 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F134 0000C094 7C 7C 1B 78 */ mr r28, r3 +/* 8000F138 0000C098 38 61 01 88 */ addi r3, r1, 0x188 +/* 8000F13C 0000C09C 38 81 03 6C */ addi r4, r1, 0x36c +/* 8000F140 0000C0A0 48 30 4C 91 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F144 0000C0A4 7C 64 1B 78 */ mr r4, r3 +/* 8000F148 0000C0A8 7F 85 E3 78 */ mr r5, r28 +/* 8000F14C 0000C0AC 38 61 01 94 */ addi r3, r1, 0x194 +/* 8000F150 0000C0B0 38 C1 00 34 */ addi r6, r1, 0x34 +/* 8000F154 0000C0B4 48 30 25 41 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000F158 0000C0B8 C0 01 01 94 */ lfs f0, 0x194(r1) +/* 8000F15C 0000C0BC 80 81 01 98 */ lwz r4, 0x198(r1) +/* 8000F160 0000C0C0 80 61 01 9C */ lwz r3, 0x19c(r1) +/* 8000F164 0000C0C4 80 01 01 A0 */ lwz r0, 0x1a0(r1) +/* 8000F168 0000C0C8 D0 01 04 14 */ stfs f0, 0x414(r1) +/* 8000F16C 0000C0CC 90 81 04 18 */ stw r4, 0x418(r1) +/* 8000F170 0000C0D0 90 61 04 1C */ stw r3, 0x41c(r1) +/* 8000F174 0000C0D4 90 01 04 20 */ stw r0, 0x420(r1) +/* 8000F178 0000C0D8 48 00 00 5C */ b lbl_8000F1D4 +lbl_8000F17C: +/* 8000F17C 0000C0DC EC 1B 00 72 */ fmuls f0, f27, f1 +/* 8000F180 0000C0E0 38 61 01 54 */ addi r3, r1, 0x154 +/* 8000F184 0000C0E4 38 81 04 4C */ addi r4, r1, 0x44c +/* 8000F188 0000C0E8 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 8000F18C 0000C0EC 48 30 4C 45 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F190 0000C0F0 7C 7C 1B 78 */ mr r28, r3 +/* 8000F194 0000C0F4 38 61 01 60 */ addi r3, r1, 0x160 +/* 8000F198 0000C0F8 38 81 03 6C */ addi r4, r1, 0x36c +/* 8000F19C 0000C0FC 48 30 4C 35 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F1A0 0000C100 7C 64 1B 78 */ mr r4, r3 +/* 8000F1A4 0000C104 7F 85 E3 78 */ mr r5, r28 +/* 8000F1A8 0000C108 38 61 01 6C */ addi r3, r1, 0x16c +/* 8000F1AC 0000C10C 38 C1 00 30 */ addi r6, r1, 0x30 +/* 8000F1B0 0000C110 48 30 24 E5 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000F1B4 0000C114 C0 01 01 6C */ lfs f0, 0x16c(r1) +/* 8000F1B8 0000C118 80 81 01 70 */ lwz r4, 0x170(r1) +/* 8000F1BC 0000C11C 80 61 01 74 */ lwz r3, 0x174(r1) +/* 8000F1C0 0000C120 80 01 01 78 */ lwz r0, 0x178(r1) +/* 8000F1C4 0000C124 D0 01 04 14 */ stfs f0, 0x414(r1) +/* 8000F1C8 0000C128 90 81 04 18 */ stw r4, 0x418(r1) +/* 8000F1CC 0000C12C 90 61 04 1C */ stw r3, 0x41c(r1) +/* 8000F1D0 0000C130 90 01 04 20 */ stw r0, 0x420(r1) +lbl_8000F1D4: +/* 8000F1D4 0000C134 A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 8000F1D8 0000C138 7F A3 EB 78 */ mr r3, r29 +/* 8000F1DC 0000C13C 38 81 00 0C */ addi r4, r1, 0xc +/* 8000F1E0 0000C140 B0 01 00 08 */ sth r0, 8(r1) +/* 8000F1E4 0000C144 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8000F1E8 0000C148 48 03 D3 BD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8000F1EC 0000C14C 7C 64 1B 78 */ mr r4, r3 +/* 8000F1F0 0000C150 38 61 00 78 */ addi r3, r1, 0x78 +/* 8000F1F4 0000C154 48 09 A8 D5 */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 8000F1F8 0000C158 80 03 00 04 */ lwz r0, 4(r3) +/* 8000F1FC 0000C15C 28 00 00 00 */ cmplwi r0, 0 +/* 8000F200 0000C160 41 82 04 18 */ beq lbl_8000F618 +/* 8000F204 0000C164 C0 1E 02 9C */ lfs f0, 0x29c(r30) +/* 8000F208 0000C168 C0 22 80 B0 */ lfs f1, lbl_805A9DD0@sda21(r2) +/* 8000F20C 0000C16C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8000F210 0000C170 40 81 04 08 */ ble lbl_8000F618 +/* 8000F214 0000C174 C0 7F 01 B4 */ lfs f3, 0x1b4(r31) +/* 8000F218 0000C178 38 61 03 60 */ addi r3, r1, 0x360 +/* 8000F21C 0000C17C C0 5F 01 A4 */ lfs f2, 0x1a4(r31) +/* 8000F220 0000C180 C0 1F 01 94 */ lfs f0, 0x194(r31) +/* 8000F224 0000C184 D0 61 03 68 */ stfs f3, 0x368(r1) +/* 8000F228 0000C188 D0 01 03 60 */ stfs f0, 0x360(r1) +/* 8000F22C 0000C18C D0 41 03 64 */ stfs f2, 0x364(r1) +/* 8000F230 0000C190 D0 21 03 68 */ stfs f1, 0x368(r1) +/* 8000F234 0000C194 48 30 54 C5 */ bl CanBeNormalized__9CVector3fCFv +/* 8000F238 0000C198 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F23C 0000C19C 41 82 00 0C */ beq lbl_8000F248 +/* 8000F240 0000C1A0 38 61 03 60 */ addi r3, r1, 0x360 +/* 8000F244 0000C1A4 48 30 56 B5 */ bl Normalize__9CVector3fFv +lbl_8000F248: +/* 8000F248 0000C1A8 C0 01 04 54 */ lfs f0, 0x454(r1) +/* 8000F24C 0000C1AC 38 61 03 54 */ addi r3, r1, 0x354 +/* 8000F250 0000C1B0 C0 41 04 4C */ lfs f2, 0x44c(r1) +/* 8000F254 0000C1B4 C0 21 04 50 */ lfs f1, 0x450(r1) +/* 8000F258 0000C1B8 D0 01 03 5C */ stfs f0, 0x35c(r1) +/* 8000F25C 0000C1BC C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000F260 0000C1C0 D0 41 03 54 */ stfs f2, 0x354(r1) +/* 8000F264 0000C1C4 D0 21 03 58 */ stfs f1, 0x358(r1) +/* 8000F268 0000C1C8 D0 01 03 5C */ stfs f0, 0x35c(r1) +/* 8000F26C 0000C1CC 48 30 54 8D */ bl CanBeNormalized__9CVector3fCFv +/* 8000F270 0000C1D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F274 0000C1D4 41 82 00 0C */ beq lbl_8000F280 +/* 8000F278 0000C1D8 38 61 03 54 */ addi r3, r1, 0x354 +/* 8000F27C 0000C1DC 48 30 56 7D */ bl Normalize__9CVector3fFv +lbl_8000F280: +/* 8000F280 0000C1E0 C0 02 80 D0 */ lfs f0, lbl_805A9DF0@sda21(r2) +/* 8000F284 0000C1E4 38 61 01 2C */ addi r3, r1, 0x12c +/* 8000F288 0000C1E8 38 81 03 54 */ addi r4, r1, 0x354 +/* 8000F28C 0000C1EC D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 8000F290 0000C1F0 48 30 4B 41 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F294 0000C1F4 7C 7C 1B 78 */ mr r28, r3 +/* 8000F298 0000C1F8 38 61 01 38 */ addi r3, r1, 0x138 +/* 8000F29C 0000C1FC 38 81 03 60 */ addi r4, r1, 0x360 +/* 8000F2A0 0000C200 48 30 4B 31 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F2A4 0000C204 7C 64 1B 78 */ mr r4, r3 +/* 8000F2A8 0000C208 7F 85 E3 78 */ mr r5, r28 +/* 8000F2AC 0000C20C 38 61 01 44 */ addi r3, r1, 0x144 +/* 8000F2B0 0000C210 38 C1 00 2C */ addi r6, r1, 0x2c +/* 8000F2B4 0000C214 48 30 23 E1 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000F2B8 0000C218 C0 61 01 44 */ lfs f3, 0x144(r1) +/* 8000F2BC 0000C21C 38 61 05 D8 */ addi r3, r1, 0x5d8 +/* 8000F2C0 0000C220 C0 41 01 48 */ lfs f2, 0x148(r1) +/* 8000F2C4 0000C224 38 9F 01 90 */ addi r4, r31, 0x190 +/* 8000F2C8 0000C228 C0 21 01 4C */ lfs f1, 0x14c(r1) +/* 8000F2CC 0000C22C C0 01 01 50 */ lfs f0, 0x150(r1) +/* 8000F2D0 0000C230 D0 61 03 44 */ stfs f3, 0x344(r1) +/* 8000F2D4 0000C234 D0 41 03 48 */ stfs f2, 0x348(r1) +/* 8000F2D8 0000C238 D0 21 03 4C */ stfs f1, 0x34c(r1) +/* 8000F2DC 0000C23C D0 01 03 50 */ stfs f0, 0x350(r1) +/* 8000F2E0 0000C240 48 30 39 61 */ bl GetRotation__12CTransform4fCFv +/* 8000F2E4 0000C244 38 61 06 08 */ addi r3, r1, 0x608 +/* 8000F2E8 0000C248 38 81 03 44 */ addi r4, r1, 0x344 +/* 8000F2EC 0000C24C 48 30 2C CD */ bl BuildTransform4f__11CQuaternionCFv +/* 8000F2F0 0000C250 38 61 06 38 */ addi r3, r1, 0x638 +/* 8000F2F4 0000C254 38 81 06 08 */ addi r4, r1, 0x608 +/* 8000F2F8 0000C258 38 A1 05 D8 */ addi r5, r1, 0x5d8 +/* 8000F2FC 0000C25C 48 30 36 55 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8000F300 0000C260 38 61 08 48 */ addi r3, r1, 0x848 +/* 8000F304 0000C264 38 81 06 38 */ addi r4, r1, 0x638 +/* 8000F308 0000C268 48 30 38 39 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000F30C 0000C26C C0 41 08 6C */ lfs f2, 0x86c(r1) +/* 8000F310 0000C270 38 61 03 38 */ addi r3, r1, 0x338 +/* 8000F314 0000C274 C0 21 08 4C */ lfs f1, 0x84c(r1) +/* 8000F318 0000C278 C0 01 08 5C */ lfs f0, 0x85c(r1) +/* 8000F31C 0000C27C D0 21 03 38 */ stfs f1, 0x338(r1) +/* 8000F320 0000C280 D0 01 03 3C */ stfs f0, 0x33c(r1) +/* 8000F324 0000C284 D0 41 03 40 */ stfs f2, 0x340(r1) +/* 8000F328 0000C288 48 30 53 D1 */ bl CanBeNormalized__9CVector3fCFv +/* 8000F32C 0000C28C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F330 0000C290 41 82 00 0C */ beq lbl_8000F33C +/* 8000F334 0000C294 38 61 03 38 */ addi r3, r1, 0x338 +/* 8000F338 0000C298 48 30 55 C1 */ bl Normalize__9CVector3fFv +lbl_8000F33C: +/* 8000F33C 0000C29C C0 21 03 3C */ lfs f1, 0x33c(r1) +/* 8000F340 0000C2A0 C0 01 04 50 */ lfs f0, 0x450(r1) +/* 8000F344 0000C2A4 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000F348 0000C2A8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000F34C 0000C2AC C0 41 03 38 */ lfs f2, 0x338(r1) +/* 8000F350 0000C2B0 C0 21 04 4C */ lfs f1, 0x44c(r1) +/* 8000F354 0000C2B4 C0 83 02 B0 */ lfs f4, 0x2b0(r3) +/* 8000F358 0000C2B8 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8000F35C 0000C2BC C0 61 03 40 */ lfs f3, 0x340(r1) +/* 8000F360 0000C2C0 C0 41 04 54 */ lfs f2, 0x454(r1) +/* 8000F364 0000C2C4 EF 7C 01 32 */ fmuls f27, f28, f4 +/* 8000F368 0000C2C8 C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000F36C 0000C2CC EC 23 08 BA */ fmadds f1, f3, f2, f1 +/* 8000F370 0000C2D0 FC 40 0A 10 */ fabs f2, f1 +/* 8000F374 0000C2D4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8000F378 0000C2D8 40 81 00 14 */ ble lbl_8000F38C +/* 8000F37C 0000C2DC C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000F380 0000C2E0 C0 42 80 B4 */ lfs f2, lbl_805A9DD4@sda21(r2) +/* 8000F384 0000C2E4 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8000F388 0000C2E8 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8000F38C: +/* 8000F38C 0000C2EC 48 38 58 A1 */ bl acos +/* 8000F390 0000C2F0 FC 00 08 18 */ frsp f0, f1 +/* 8000F394 0000C2F4 38 81 00 5C */ addi r4, r1, 0x5c +/* 8000F398 0000C2F8 38 6D 80 78 */ addi r3, r13, lbl_805A6C38@sda21 +/* 8000F39C 0000C2FC 38 AD 80 7C */ addi r5, r13, lbl_805A6C3C@sda21 +/* 8000F3A0 0000C300 EC 00 D8 24 */ fdivs f0, f0, f27 +/* 8000F3A4 0000C304 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8000F3A8 0000C308 4B FF CF 0D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000F3AC 0000C30C C0 23 00 00 */ lfs f1, 0(r3) +/* 8000F3B0 0000C310 38 61 01 04 */ addi r3, r1, 0x104 +/* 8000F3B4 0000C314 C0 02 80 D0 */ lfs f0, lbl_805A9DF0@sda21(r2) +/* 8000F3B8 0000C318 38 81 03 54 */ addi r4, r1, 0x354 +/* 8000F3BC 0000C31C D0 21 00 60 */ stfs f1, 0x60(r1) +/* 8000F3C0 0000C320 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8000F3C4 0000C324 48 30 4A 0D */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F3C8 0000C328 7C 7C 1B 78 */ mr r28, r3 +/* 8000F3CC 0000C32C 38 61 01 10 */ addi r3, r1, 0x110 +/* 8000F3D0 0000C330 38 81 03 38 */ addi r4, r1, 0x338 +/* 8000F3D4 0000C334 48 30 49 FD */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F3D8 0000C338 7C 64 1B 78 */ mr r4, r3 +/* 8000F3DC 0000C33C 7F 85 E3 78 */ mr r5, r28 +/* 8000F3E0 0000C340 38 61 01 1C */ addi r3, r1, 0x11c +/* 8000F3E4 0000C344 38 C1 00 28 */ addi r6, r1, 0x28 +/* 8000F3E8 0000C348 48 30 22 AD */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000F3EC 0000C34C C0 01 01 1C */ lfs f0, 0x11c(r1) +/* 8000F3F0 0000C350 80 81 01 20 */ lwz r4, 0x120(r1) +/* 8000F3F4 0000C354 80 61 01 24 */ lwz r3, 0x124(r1) +/* 8000F3F8 0000C358 80 01 01 28 */ lwz r0, 0x128(r1) +/* 8000F3FC 0000C35C D0 01 04 14 */ stfs f0, 0x414(r1) +/* 8000F400 0000C360 90 81 04 18 */ stw r4, 0x418(r1) +/* 8000F404 0000C364 90 61 04 1C */ stw r3, 0x41c(r1) +/* 8000F408 0000C368 90 01 04 20 */ stw r0, 0x420(r1) +/* 8000F40C 0000C36C 48 00 02 0C */ b lbl_8000F618 +lbl_8000F410: +/* 8000F410 0000C370 C0 7F 01 B4 */ lfs f3, 0x1b4(r31) +/* 8000F414 0000C374 38 61 03 2C */ addi r3, r1, 0x32c +/* 8000F418 0000C378 C0 5F 01 A4 */ lfs f2, 0x1a4(r31) +/* 8000F41C 0000C37C C0 3F 01 94 */ lfs f1, 0x194(r31) +/* 8000F420 0000C380 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000F424 0000C384 D0 61 03 34 */ stfs f3, 0x334(r1) +/* 8000F428 0000C388 D0 21 03 2C */ stfs f1, 0x32c(r1) +/* 8000F42C 0000C38C D0 41 03 30 */ stfs f2, 0x330(r1) +/* 8000F430 0000C390 D0 01 03 34 */ stfs f0, 0x334(r1) +/* 8000F434 0000C394 48 30 52 C5 */ bl CanBeNormalized__9CVector3fCFv +/* 8000F438 0000C398 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F43C 0000C39C 41 82 00 0C */ beq lbl_8000F448 +/* 8000F440 0000C3A0 38 61 03 2C */ addi r3, r1, 0x32c +/* 8000F444 0000C3A4 48 30 54 B5 */ bl Normalize__9CVector3fFv +lbl_8000F448: +/* 8000F448 0000C3A8 C0 01 04 54 */ lfs f0, 0x454(r1) +/* 8000F44C 0000C3AC 38 61 03 20 */ addi r3, r1, 0x320 +/* 8000F450 0000C3B0 C0 41 04 4C */ lfs f2, 0x44c(r1) +/* 8000F454 0000C3B4 C0 21 04 50 */ lfs f1, 0x450(r1) +/* 8000F458 0000C3B8 D0 01 03 28 */ stfs f0, 0x328(r1) +/* 8000F45C 0000C3BC C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000F460 0000C3C0 D0 41 03 20 */ stfs f2, 0x320(r1) +/* 8000F464 0000C3C4 D0 21 03 24 */ stfs f1, 0x324(r1) +/* 8000F468 0000C3C8 D0 01 03 28 */ stfs f0, 0x328(r1) +/* 8000F46C 0000C3CC 48 30 52 8D */ bl CanBeNormalized__9CVector3fCFv +/* 8000F470 0000C3D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F474 0000C3D4 41 82 00 0C */ beq lbl_8000F480 +/* 8000F478 0000C3D8 38 61 03 20 */ addi r3, r1, 0x320 +/* 8000F47C 0000C3DC 48 30 54 7D */ bl Normalize__9CVector3fFv +lbl_8000F480: +/* 8000F480 0000C3E0 C0 02 80 D0 */ lfs f0, lbl_805A9DF0@sda21(r2) +/* 8000F484 0000C3E4 38 61 00 DC */ addi r3, r1, 0xdc +/* 8000F488 0000C3E8 38 81 03 20 */ addi r4, r1, 0x320 +/* 8000F48C 0000C3EC D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8000F490 0000C3F0 48 30 49 41 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F494 0000C3F4 7C 7C 1B 78 */ mr r28, r3 +/* 8000F498 0000C3F8 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 8000F49C 0000C3FC 38 81 03 2C */ addi r4, r1, 0x32c +/* 8000F4A0 0000C400 48 30 49 31 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F4A4 0000C404 7C 64 1B 78 */ mr r4, r3 +/* 8000F4A8 0000C408 7F 85 E3 78 */ mr r5, r28 +/* 8000F4AC 0000C40C 38 61 00 F4 */ addi r3, r1, 0xf4 +/* 8000F4B0 0000C410 38 C1 00 24 */ addi r6, r1, 0x24 +/* 8000F4B4 0000C414 48 30 21 E1 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000F4B8 0000C418 C0 61 00 F4 */ lfs f3, 0xf4(r1) +/* 8000F4BC 0000C41C 38 61 05 48 */ addi r3, r1, 0x548 +/* 8000F4C0 0000C420 C0 41 00 F8 */ lfs f2, 0xf8(r1) +/* 8000F4C4 0000C424 38 9F 01 90 */ addi r4, r31, 0x190 +/* 8000F4C8 0000C428 C0 21 00 FC */ lfs f1, 0xfc(r1) +/* 8000F4CC 0000C42C C0 01 01 00 */ lfs f0, 0x100(r1) +/* 8000F4D0 0000C430 D0 61 03 10 */ stfs f3, 0x310(r1) +/* 8000F4D4 0000C434 D0 41 03 14 */ stfs f2, 0x314(r1) +/* 8000F4D8 0000C438 D0 21 03 18 */ stfs f1, 0x318(r1) +/* 8000F4DC 0000C43C D0 01 03 1C */ stfs f0, 0x31c(r1) +/* 8000F4E0 0000C440 48 30 37 61 */ bl GetRotation__12CTransform4fCFv +/* 8000F4E4 0000C444 38 61 05 78 */ addi r3, r1, 0x578 +/* 8000F4E8 0000C448 38 81 03 10 */ addi r4, r1, 0x310 +/* 8000F4EC 0000C44C 48 30 2A CD */ bl BuildTransform4f__11CQuaternionCFv +/* 8000F4F0 0000C450 38 61 05 A8 */ addi r3, r1, 0x5a8 +/* 8000F4F4 0000C454 38 81 05 78 */ addi r4, r1, 0x578 +/* 8000F4F8 0000C458 38 A1 05 48 */ addi r5, r1, 0x548 +/* 8000F4FC 0000C45C 48 30 34 55 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8000F500 0000C460 38 61 08 48 */ addi r3, r1, 0x848 +/* 8000F504 0000C464 38 81 05 A8 */ addi r4, r1, 0x5a8 +/* 8000F508 0000C468 48 30 36 39 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000F50C 0000C46C C0 41 08 6C */ lfs f2, 0x86c(r1) +/* 8000F510 0000C470 38 61 03 04 */ addi r3, r1, 0x304 +/* 8000F514 0000C474 C0 21 08 4C */ lfs f1, 0x84c(r1) +/* 8000F518 0000C478 C0 01 08 5C */ lfs f0, 0x85c(r1) +/* 8000F51C 0000C47C D0 21 03 04 */ stfs f1, 0x304(r1) +/* 8000F520 0000C480 D0 01 03 08 */ stfs f0, 0x308(r1) +/* 8000F524 0000C484 D0 41 03 0C */ stfs f2, 0x30c(r1) +/* 8000F528 0000C488 48 30 51 D1 */ bl CanBeNormalized__9CVector3fCFv +/* 8000F52C 0000C48C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F530 0000C490 41 82 00 0C */ beq lbl_8000F53C +/* 8000F534 0000C494 38 61 03 04 */ addi r3, r1, 0x304 +/* 8000F538 0000C498 48 30 53 C1 */ bl Normalize__9CVector3fFv +lbl_8000F53C: +/* 8000F53C 0000C49C C0 21 03 08 */ lfs f1, 0x308(r1) +/* 8000F540 0000C4A0 C0 01 04 50 */ lfs f0, 0x450(r1) +/* 8000F544 0000C4A4 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8000F548 0000C4A8 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000F54C 0000C4AC C0 41 03 04 */ lfs f2, 0x304(r1) +/* 8000F550 0000C4B0 C0 21 04 4C */ lfs f1, 0x44c(r1) +/* 8000F554 0000C4B4 C0 83 01 38 */ lfs f4, 0x138(r3) +/* 8000F558 0000C4B8 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8000F55C 0000C4BC C0 61 03 0C */ lfs f3, 0x30c(r1) +/* 8000F560 0000C4C0 C0 41 04 54 */ lfs f2, 0x454(r1) +/* 8000F564 0000C4C4 EF 7C 01 32 */ fmuls f27, f28, f4 +/* 8000F568 0000C4C8 C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000F56C 0000C4CC EC 23 08 BA */ fmadds f1, f3, f2, f1 +/* 8000F570 0000C4D0 FC 40 0A 10 */ fabs f2, f1 +/* 8000F574 0000C4D4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8000F578 0000C4D8 40 81 00 14 */ ble lbl_8000F58C +/* 8000F57C 0000C4DC C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000F580 0000C4E0 C0 42 80 B4 */ lfs f2, lbl_805A9DD4@sda21(r2) +/* 8000F584 0000C4E4 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 8000F588 0000C4E8 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8000F58C: +/* 8000F58C 0000C4EC 48 38 56 A1 */ bl acos +/* 8000F590 0000C4F0 FC 00 08 18 */ frsp f0, f1 +/* 8000F594 0000C4F4 80 AD A1 18 */ lwz r5, gpTweakPlayer@sda21(r13) +/* 8000F598 0000C4F8 38 81 00 58 */ addi r4, r1, 0x58 +/* 8000F59C 0000C4FC 38 6D 80 80 */ addi r3, r13, lbl_805A6C40@sda21 +/* 8000F5A0 0000C500 C0 25 01 4C */ lfs f1, 0x14c(r5) +/* 8000F5A4 0000C504 38 AD 80 84 */ addi r5, r13, lbl_805A6C44@sda21 +/* 8000F5A8 0000C508 EC 00 D8 24 */ fdivs f0, f0, f27 +/* 8000F5AC 0000C50C EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000F5B0 0000C510 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8000F5B4 0000C514 4B FF CD 01 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8000F5B8 0000C518 C0 03 00 00 */ lfs f0, 0(r3) +/* 8000F5BC 0000C51C 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 8000F5C0 0000C520 38 81 04 4C */ addi r4, r1, 0x44c +/* 8000F5C4 0000C524 EC 3B 00 32 */ fmuls f1, f27, f0 +/* 8000F5C8 0000C528 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 8000F5CC 0000C52C D0 21 00 20 */ stfs f1, 0x20(r1) +/* 8000F5D0 0000C530 48 30 48 01 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F5D4 0000C534 7C 7C 1B 78 */ mr r28, r3 +/* 8000F5D8 0000C538 38 61 00 C0 */ addi r3, r1, 0xc0 +/* 8000F5DC 0000C53C 38 81 03 04 */ addi r4, r1, 0x304 +/* 8000F5E0 0000C540 48 30 47 F1 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 8000F5E4 0000C544 7C 64 1B 78 */ mr r4, r3 +/* 8000F5E8 0000C548 7F 85 E3 78 */ mr r5, r28 +/* 8000F5EC 0000C54C 38 61 00 CC */ addi r3, r1, 0xcc +/* 8000F5F0 0000C550 38 C1 00 20 */ addi r6, r1, 0x20 +/* 8000F5F4 0000C554 48 30 20 A1 */ bl LookAt__11CQuaternionFRC13CUnitVector3fRC13CUnitVector3fRC9CRelAngle +/* 8000F5F8 0000C558 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 8000F5FC 0000C55C 80 81 00 D0 */ lwz r4, 0xd0(r1) +/* 8000F600 0000C560 80 61 00 D4 */ lwz r3, 0xd4(r1) +/* 8000F604 0000C564 80 01 00 D8 */ lwz r0, 0xd8(r1) +/* 8000F608 0000C568 D0 01 04 14 */ stfs f0, 0x414(r1) +/* 8000F60C 0000C56C 90 81 04 18 */ stw r4, 0x418(r1) +/* 8000F610 0000C570 90 61 04 1C */ stw r3, 0x41c(r1) +/* 8000F614 0000C574 90 01 04 20 */ stw r0, 0x420(r1) +lbl_8000F618: +/* 8000F618 0000C578 83 9E 07 6C */ lwz r28, 0x76c(r30) +/* 8000F61C 0000C57C 38 61 05 18 */ addi r3, r1, 0x518 +/* 8000F620 0000C580 7F 84 E3 78 */ mr r4, r28 +/* 8000F624 0000C584 48 0D A7 81 */ bl GetCameraBobTransformation__16CPlayerCameraBobCFv +/* 8000F628 0000C588 38 61 08 18 */ addi r3, r1, 0x818 +/* 8000F62C 0000C58C 38 81 05 18 */ addi r4, r1, 0x518 +/* 8000F630 0000C590 48 30 35 45 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8000F634 0000C594 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 8000F638 0000C598 2C 00 00 01 */ cmpwi r0, 1 +/* 8000F63C 0000C59C 41 82 00 48 */ beq lbl_8000F684 +/* 8000F640 0000C5A0 80 1E 03 04 */ lwz r0, 0x304(r30) +/* 8000F644 0000C5A4 2C 00 00 05 */ cmpwi r0, 5 +/* 8000F648 0000C5A8 41 82 00 3C */ beq lbl_8000F684 +/* 8000F64C 0000C5AC 80 1E 03 B8 */ lwz r0, 0x3b8(r30) +/* 8000F650 0000C5B0 2C 00 00 00 */ cmpwi r0, 0 +/* 8000F654 0000C5B4 40 82 00 30 */ bne lbl_8000F684 +/* 8000F658 0000C5B8 80 1D 09 04 */ lwz r0, 0x904(r29) +/* 8000F65C 0000C5BC 2C 00 00 01 */ cmpwi r0, 1 +/* 8000F660 0000C5C0 41 82 00 24 */ beq lbl_8000F684 +/* 8000F664 0000C5C4 80 7D 08 70 */ lwz r3, 0x870(r29) +/* 8000F668 0000C5C8 4B FF B2 99 */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 8000F66C 0000C5CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F670 0000C5D0 40 82 00 14 */ bne lbl_8000F684 +/* 8000F674 0000C5D4 C0 3F 01 D4 */ lfs f1, 0x1d4(r31) +/* 8000F678 0000C5D8 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000F67C 0000C5DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000F680 0000C5E0 40 81 00 20 */ ble lbl_8000F6A0 +lbl_8000F684: +/* 8000F684 0000C5E4 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 8000F688 0000C5E8 38 61 08 18 */ addi r3, r1, 0x818 +/* 8000F68C 0000C5EC 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 8000F690 0000C5F0 48 30 34 B1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000F694 0000C5F4 38 7C 00 2C */ addi r3, r28, 0x2c +/* 8000F698 0000C5F8 38 81 08 18 */ addi r4, r1, 0x818 +/* 8000F69C 0000C5FC 48 30 34 A5 */ bl __as__12CTransform4fFRC12CTransform4f +lbl_8000F6A0: +/* 8000F6A0 0000C600 38 61 04 B8 */ addi r3, r1, 0x4b8 +/* 8000F6A4 0000C604 38 81 04 14 */ addi r4, r1, 0x414 +/* 8000F6A8 0000C608 48 30 29 11 */ bl BuildTransform4f__11CQuaternionCFv +/* 8000F6AC 0000C60C 38 61 04 E8 */ addi r3, r1, 0x4e8 +/* 8000F6B0 0000C610 38 81 04 B8 */ addi r4, r1, 0x4b8 +/* 8000F6B4 0000C614 38 A1 08 48 */ addi r5, r1, 0x848 +/* 8000F6B8 0000C618 48 30 32 99 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8000F6BC 0000C61C 38 7F 01 90 */ addi r3, r31, 0x190 +/* 8000F6C0 0000C620 38 81 04 E8 */ addi r4, r1, 0x4e8 +/* 8000F6C4 0000C624 48 30 34 7D */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000F6C8 0000C628 38 61 04 58 */ addi r3, r1, 0x458 +/* 8000F6CC 0000C62C 38 81 08 18 */ addi r4, r1, 0x818 +/* 8000F6D0 0000C630 48 30 35 71 */ bl GetRotation__12CTransform4fCFv +/* 8000F6D4 0000C634 38 61 04 88 */ addi r3, r1, 0x488 +/* 8000F6D8 0000C638 38 9F 01 90 */ addi r4, r31, 0x190 +/* 8000F6DC 0000C63C 38 A1 04 58 */ addi r5, r1, 0x458 +/* 8000F6E0 0000C640 48 30 32 71 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8000F6E4 0000C644 38 7F 00 34 */ addi r3, r31, 0x34 +/* 8000F6E8 0000C648 38 81 04 88 */ addi r4, r1, 0x488 +/* 8000F6EC 0000C64C 48 30 34 55 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8000F6F0 0000C650 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000F6F4 0000C654 38 C0 00 01 */ li r6, 1 +/* 8000F6F8 0000C658 50 C0 26 F6 */ rlwimi r0, r6, 4, 0x1b, 0x1b +/* 8000F6FC 0000C65C 38 61 00 9C */ addi r3, r1, 0x9c +/* 8000F700 0000C660 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000F704 0000C664 38 9E 00 34 */ addi r4, r30, 0x34 +/* 8000F708 0000C668 38 A1 00 90 */ addi r5, r1, 0x90 +/* 8000F70C 0000C66C 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000F710 0000C670 50 C0 1F 38 */ rlwimi r0, r6, 3, 0x1c, 0x1c +/* 8000F714 0000C674 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000F718 0000C678 88 1F 00 E4 */ lbz r0, 0xe4(r31) +/* 8000F71C 0000C67C 50 C0 17 7A */ rlwimi r0, r6, 2, 0x1d, 0x1d +/* 8000F720 0000C680 98 1F 00 E4 */ stb r0, 0xe4(r31) +/* 8000F724 0000C684 D3 FF 01 9C */ stfs f31, 0x19c(r31) +/* 8000F728 0000C688 D3 DF 01 AC */ stfs f30, 0x1ac(r31) +/* 8000F72C 0000C68C D3 BF 01 BC */ stfs f29, 0x1bc(r31) +/* 8000F730 0000C690 C0 41 08 24 */ lfs f2, 0x824(r1) +/* 8000F734 0000C694 C0 21 08 34 */ lfs f1, 0x834(r1) +/* 8000F738 0000C698 C0 01 08 44 */ lfs f0, 0x844(r1) +/* 8000F73C 0000C69C D0 41 00 90 */ stfs f2, 0x90(r1) +/* 8000F740 0000C6A0 D0 21 00 94 */ stfs f1, 0x94(r1) +/* 8000F744 0000C6A4 D0 01 00 98 */ stfs f0, 0x98(r1) +/* 8000F748 0000C6A8 48 30 33 39 */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 8000F74C 0000C6AC C0 41 00 9C */ lfs f2, 0x9c(r1) +/* 8000F750 0000C6B0 7F E3 FB 78 */ mr r3, r31 +/* 8000F754 0000C6B4 C0 21 00 A0 */ lfs f1, 0xa0(r1) +/* 8000F758 0000C6B8 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 8000F75C 0000C6BC C0 01 00 A4 */ lfs f0, 0xa4(r1) +/* 8000F760 0000C6C0 EC 5F 10 2A */ fadds f2, f31, f2 +/* 8000F764 0000C6C4 EC 3E 08 2A */ fadds f1, f30, f1 +/* 8000F768 0000C6C8 EC 1D 00 2A */ fadds f0, f29, f0 +/* 8000F76C 0000C6CC D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 8000F770 0000C6D0 D0 21 00 AC */ stfs f1, 0xac(r1) +/* 8000F774 0000C6D4 D0 01 00 B0 */ stfs f0, 0xb0(r1) +/* 8000F778 0000C6D8 48 04 37 15 */ bl SetTranslation__6CActorFRC9CVector3f +/* 8000F77C 0000C6DC 38 7F 01 90 */ addi r3, r31, 0x190 +/* 8000F780 0000C6E0 48 30 3C 25 */ bl Orthonormalize__12CTransform4fFv +lbl_8000F784: +/* 8000F784 0000C6E4 E3 E1 09 18 */ psq_l f31, -1768(r1), 0, qr0 +/* 8000F788 0000C6E8 CB E1 09 10 */ lfd f31, 0x910(r1) +/* 8000F78C 0000C6EC E3 C1 09 08 */ psq_l f30, -1784(r1), 0, qr0 +/* 8000F790 0000C6F0 CB C1 09 00 */ lfd f30, 0x900(r1) +/* 8000F794 0000C6F4 E3 A1 08 F8 */ psq_l f29, -1800(r1), 0, qr0 +/* 8000F798 0000C6F8 CB A1 08 F0 */ lfd f29, 0x8f0(r1) +/* 8000F79C 0000C6FC E3 81 08 E8 */ psq_l f28, -1816(r1), 0, qr0 +/* 8000F7A0 0000C700 CB 81 08 E0 */ lfd f28, 0x8e0(r1) +/* 8000F7A4 0000C704 E3 61 08 D8 */ psq_l f27, -1832(r1), 0, qr0 +/* 8000F7A8 0000C708 CB 61 08 D0 */ lfd f27, 0x8d0(r1) +/* 8000F7AC 0000C70C E3 41 08 C8 */ psq_l f26, -1848(r1), 0, qr0 +/* 8000F7B0 0000C710 CB 41 08 C0 */ lfd f26, 0x8c0(r1) +/* 8000F7B4 0000C714 83 E1 08 BC */ lwz r31, 0x8bc(r1) +/* 8000F7B8 0000C718 83 C1 08 B8 */ lwz r30, 0x8b8(r1) +/* 8000F7BC 0000C71C 83 A1 08 B4 */ lwz r29, 0x8b4(r1) +/* 8000F7C0 0000C720 80 01 09 24 */ lwz r0, 0x924(r1) +/* 8000F7C4 0000C724 83 81 08 B0 */ lwz r28, 0x8b0(r1) +/* 8000F7C8 0000C728 7C 08 03 A6 */ mtlr r0 +/* 8000F7CC 0000C72C 38 21 09 20 */ addi r1, r1, 0x920 +/* 8000F7D0 0000C730 4E 80 00 20 */ blr + +.global UpdateElevation__18CFirstPersonCameraFR13CStateManager +UpdateElevation__18CFirstPersonCameraFR13CStateManager: +/* 8000F7D4 0000C734 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 8000F7D8 0000C738 7C 08 02 A6 */ mflr r0 +/* 8000F7DC 0000C73C 90 01 00 84 */ stw r0, 0x84(r1) +/* 8000F7E0 0000C740 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 8000F7E4 0000C744 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 8000F7E8 0000C748 DB C1 00 60 */ stfd f30, 0x60(r1) +/* 8000F7EC 0000C74C F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 8000F7F0 0000C750 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8000F7F4 0000C754 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8000F7F8 0000C758 93 A1 00 54 */ stw r29, 0x54(r1) +/* 8000F7FC 0000C75C C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000F800 0000C760 7C 7D 1B 78 */ mr r29, r3 +/* 8000F804 0000C764 7C 9F 23 78 */ mr r31, r4 +/* 8000F808 0000C768 38 81 00 10 */ addi r4, r1, 0x10 +/* 8000F80C 0000C76C D0 03 01 C0 */ stfs f0, 0x1c0(r3) +/* 8000F810 0000C770 7F E3 FB 78 */ mr r3, r31 +/* 8000F814 0000C774 A0 1D 00 E8 */ lhz r0, 0xe8(r29) +/* 8000F818 0000C778 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8000F81C 0000C77C B0 01 00 10 */ sth r0, 0x10(r1) +/* 8000F820 0000C780 48 03 CD 85 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8000F824 0000C784 7C 64 1B 78 */ mr r4, r3 +/* 8000F828 0000C788 38 61 00 1C */ addi r3, r1, 0x1c +/* 8000F82C 0000C78C 48 09 CB 69 */ bl "__ct__20TCastToPtr<7CPlayer>FP7CEntity" +/* 8000F830 0000C790 83 C3 00 04 */ lwz r30, 4(r3) +/* 8000F834 0000C794 28 1E 00 00 */ cmplwi r30, 0 +/* 8000F838 0000C798 41 82 02 1C */ beq lbl_8000FA54 +/* 8000F83C 0000C79C A0 7D 01 C4 */ lhz r3, 0x1c4(r29) +/* 8000F840 0000C7A0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8000F844 0000C7A4 7C 03 00 40 */ cmplw r3, r0 +/* 8000F848 0000C7A8 41 82 02 0C */ beq lbl_8000FA54 +/* 8000F84C 0000C7AC A0 1D 01 C4 */ lhz r0, 0x1c4(r29) +/* 8000F850 0000C7B0 7F E3 FB 78 */ mr r3, r31 +/* 8000F854 0000C7B4 38 81 00 08 */ addi r4, r1, 8 +/* 8000F858 0000C7B8 B0 01 00 08 */ sth r0, 8(r1) +/* 8000F85C 0000C7BC 48 03 CD 49 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8000F860 0000C7C0 7C 64 1B 78 */ mr r4, r3 +/* 8000F864 0000C7C4 38 61 00 14 */ addi r3, r1, 0x14 +/* 8000F868 0000C7C8 48 09 B8 51 */ bl "__ct__38TCastToPtr<24CScriptCameraPitchVolume>FP7CEntity" +/* 8000F86C 0000C7CC 83 E3 00 04 */ lwz r31, 4(r3) +/* 8000F870 0000C7D0 28 1F 00 00 */ cmplwi r31, 0 +/* 8000F874 0000C7D4 41 82 01 E0 */ beq lbl_8000FA54 +/* 8000F878 0000C7D8 C3 FF 01 24 */ lfs f31, 0x124(r31) +/* 8000F87C 0000C7DC 38 61 00 3C */ addi r3, r1, 0x3c +/* 8000F880 0000C7E0 C3 DF 01 28 */ lfs f30, 0x128(r31) +/* 8000F884 0000C7E4 C0 7F 00 58 */ lfs f3, 0x58(r31) +/* 8000F888 0000C7E8 C0 5F 00 48 */ lfs f2, 0x48(r31) +/* 8000F88C 0000C7EC C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8000F890 0000C7F0 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000F894 0000C7F4 D0 61 00 44 */ stfs f3, 0x44(r1) +/* 8000F898 0000C7F8 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8000F89C 0000C7FC D0 41 00 40 */ stfs f2, 0x40(r1) +/* 8000F8A0 0000C800 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 8000F8A4 0000C804 48 30 4E 55 */ bl CanBeNormalized__9CVector3fCFv +/* 8000F8A8 0000C808 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F8AC 0000C80C 40 82 00 18 */ bne lbl_8000F8C4 +/* 8000F8B0 0000C810 C0 22 80 B0 */ lfs f1, lbl_805A9DD0@sda21(r2) +/* 8000F8B4 0000C814 C0 02 80 B4 */ lfs f0, lbl_805A9DD4@sda21(r2) +/* 8000F8B8 0000C818 D0 21 00 3C */ stfs f1, 0x3c(r1) +/* 8000F8BC 0000C81C D0 01 00 40 */ stfs f0, 0x40(r1) +/* 8000F8C0 0000C820 D0 21 00 44 */ stfs f1, 0x44(r1) +lbl_8000F8C4: +/* 8000F8C4 0000C824 C0 7E 00 58 */ lfs f3, 0x58(r30) +/* 8000F8C8 0000C828 38 61 00 30 */ addi r3, r1, 0x30 +/* 8000F8CC 0000C82C C0 5E 00 48 */ lfs f2, 0x48(r30) +/* 8000F8D0 0000C830 C0 3E 00 38 */ lfs f1, 0x38(r30) +/* 8000F8D4 0000C834 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000F8D8 0000C838 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 8000F8DC 0000C83C D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8000F8E0 0000C840 D0 41 00 34 */ stfs f2, 0x34(r1) +/* 8000F8E4 0000C844 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8000F8E8 0000C848 48 30 50 11 */ bl Normalize__9CVector3fFv +/* 8000F8EC 0000C84C C0 21 00 40 */ lfs f1, 0x40(r1) +/* 8000F8F0 0000C850 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 8000F8F4 0000C854 C0 41 00 3C */ lfs f2, 0x3c(r1) +/* 8000F8F8 0000C858 EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000F8FC 0000C85C C0 21 00 30 */ lfs f1, 0x30(r1) +/* 8000F900 0000C860 C0 81 00 44 */ lfs f4, 0x44(r1) +/* 8000F904 0000C864 C0 61 00 38 */ lfs f3, 0x38(r1) +/* 8000F908 0000C868 EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8000F90C 0000C86C C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000F910 0000C870 EC 44 08 FA */ fmadds f2, f4, f3, f1 +/* 8000F914 0000C874 FC 20 12 10 */ fabs f1, f2 +/* 8000F918 0000C878 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000F91C 0000C87C 40 81 00 14 */ ble lbl_8000F930 +/* 8000F920 0000C880 C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000F924 0000C884 C0 22 80 B4 */ lfs f1, lbl_805A9DD4@sda21(r2) +/* 8000F928 0000C888 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 8000F92C 0000C88C EC 41 00 32 */ fmuls f2, f1, f0 +lbl_8000F930: +/* 8000F930 0000C890 C0 02 80 B0 */ lfs f0, lbl_805A9DD0@sda21(r2) +/* 8000F934 0000C894 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8000F938 0000C898 40 80 00 14 */ bge lbl_8000F94C +/* 8000F93C 0000C89C FC 00 10 50 */ fneg f0, f2 +/* 8000F940 0000C8A0 EC 1E 00 32 */ fmuls f0, f30, f0 +/* 8000F944 0000C8A4 D0 1D 01 C0 */ stfs f0, 0x1c0(r29) +/* 8000F948 0000C8A8 48 00 00 10 */ b lbl_8000F958 +lbl_8000F94C: +/* 8000F94C 0000C8AC FC 00 10 50 */ fneg f0, f2 +/* 8000F950 0000C8B0 EC 1F 00 32 */ fmuls f0, f31, f0 +/* 8000F954 0000C8B4 D0 1D 01 C0 */ stfs f0, 0x1c0(r29) +lbl_8000F958: +/* 8000F958 0000C8B8 C0 3E 00 60 */ lfs f1, 0x60(r30) +/* 8000F95C 0000C8BC 38 61 00 24 */ addi r3, r1, 0x24 +/* 8000F960 0000C8C0 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8000F964 0000C8C4 C0 7E 00 50 */ lfs f3, 0x50(r30) +/* 8000F968 0000C8C8 C0 5F 00 50 */ lfs f2, 0x50(r31) +/* 8000F96C 0000C8CC EC 81 00 28 */ fsubs f4, f1, f0 +/* 8000F970 0000C8D0 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 8000F974 0000C8D4 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 8000F978 0000C8D8 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8000F97C 0000C8DC C3 C2 80 B0 */ lfs f30, lbl_805A9DD0@sda21(r2) +/* 8000F980 0000C8E0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8000F984 0000C8E4 D0 81 00 2C */ stfs f4, 0x2c(r1) +/* 8000F988 0000C8E8 D0 41 00 28 */ stfs f2, 0x28(r1) +/* 8000F98C 0000C8EC D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8000F990 0000C8F0 D3 C1 00 2C */ stfs f30, 0x2c(r1) +/* 8000F994 0000C8F4 48 30 4D 65 */ bl CanBeNormalized__9CVector3fCFv +/* 8000F998 0000C8F8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000F99C 0000C8FC 41 82 00 AC */ beq lbl_8000FA48 +/* 8000F9A0 0000C900 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 8000F9A4 0000C904 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 8000F9A8 0000C908 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 8000F9AC 0000C90C EC 01 00 32 */ fmuls f0, f1, f0 +/* 8000F9B0 0000C910 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 8000F9B4 0000C914 C0 81 00 2C */ lfs f4, 0x2c(r1) +/* 8000F9B8 0000C918 C0 61 00 44 */ lfs f3, 0x44(r1) +/* 8000F9BC 0000C91C EC 22 00 7A */ fmadds f1, f2, f1, f0 +/* 8000F9C0 0000C920 C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000F9C4 0000C924 EC 44 08 FA */ fmadds f2, f4, f3, f1 +/* 8000F9C8 0000C928 FC 20 12 10 */ fabs f1, f2 +/* 8000F9CC 0000C92C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000F9D0 0000C930 40 81 00 14 */ ble lbl_8000F9E4 +/* 8000F9D4 0000C934 C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000F9D8 0000C938 C0 22 80 B4 */ lfs f1, lbl_805A9DD4@sda21(r2) +/* 8000F9DC 0000C93C FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 8000F9E0 0000C940 EC 41 00 32 */ fmuls f2, f1, f0 +lbl_8000F9E4: +/* 8000F9E4 0000C944 FF C0 12 10 */ fabs f30, f2 +/* 8000F9E8 0000C948 38 61 00 24 */ addi r3, r1, 0x24 +/* 8000F9EC 0000C94C 48 30 4E CD */ bl Magnitude__9CVector3fCFv +/* 8000F9F0 0000C950 FC 00 F0 18 */ frsp f0, f30 +/* 8000F9F4 0000C954 C0 9F 01 38 */ lfs f4, 0x138(r31) +/* 8000F9F8 0000C958 C0 7F 01 30 */ lfs f3, 0x130(r31) +/* 8000F9FC 0000C95C EC 00 00 72 */ fmuls f0, f0, f1 +/* 8000FA00 0000C960 FC 00 20 40 */ fcmpo cr0, f0, f4 +/* 8000FA04 0000C964 4C 40 13 82 */ cror 2, 0, 2 +/* 8000FA08 0000C968 40 82 00 0C */ bne lbl_8000FA14 +/* 8000FA0C 0000C96C C3 C2 80 B4 */ lfs f30, lbl_805A9DD4@sda21(r2) +/* 8000FA10 0000C970 48 00 00 38 */ b lbl_8000FA48 +lbl_8000FA14: +/* 8000FA14 0000C974 EC 40 20 28 */ fsubs f2, f0, f4 +/* 8000FA18 0000C978 C8 02 80 C0 */ lfd f0, lbl_805A9DE0@sda21(r2) +/* 8000FA1C 0000C97C EC 23 20 28 */ fsubs f1, f3, f4 +/* 8000FA20 0000C980 EC 42 08 24 */ fdivs f2, f2, f1 +/* 8000FA24 0000C984 FC 20 12 10 */ fabs f1, f2 +/* 8000FA28 0000C988 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8000FA2C 0000C98C 40 81 00 14 */ ble lbl_8000FA40 +/* 8000FA30 0000C990 C0 02 80 C8 */ lfs f0, lbl_805A9DE8@sda21(r2) +/* 8000FA34 0000C994 C0 22 80 B4 */ lfs f1, lbl_805A9DD4@sda21(r2) +/* 8000FA38 0000C998 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 8000FA3C 0000C99C EC 41 00 32 */ fmuls f2, f1, f0 +lbl_8000FA40: +/* 8000FA40 0000C9A0 C0 02 80 B4 */ lfs f0, lbl_805A9DD4@sda21(r2) +/* 8000FA44 0000C9A4 EF C0 10 28 */ fsubs f30, f0, f2 +lbl_8000FA48: +/* 8000FA48 0000C9A8 C0 1D 01 C0 */ lfs f0, 0x1c0(r29) +/* 8000FA4C 0000C9AC EC 00 07 B2 */ fmuls f0, f0, f30 +/* 8000FA50 0000C9B0 D0 1D 01 C0 */ stfs f0, 0x1c0(r29) +lbl_8000FA54: +/* 8000FA54 0000C9B4 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 8000FA58 0000C9B8 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 8000FA5C 0000C9BC E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 8000FA60 0000C9C0 CB C1 00 60 */ lfd f30, 0x60(r1) +/* 8000FA64 0000C9C4 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8000FA68 0000C9C8 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8000FA6C 0000C9CC 80 01 00 84 */ lwz r0, 0x84(r1) +/* 8000FA70 0000C9D0 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8000FA74 0000C9D4 7C 08 03 A6 */ mtlr r0 +/* 8000FA78 0000C9D8 38 21 00 80 */ addi r1, r1, 0x80 +/* 8000FA7C 0000C9DC 4E 80 00 20 */ blr + +.global ProcessInput__18CFirstPersonCameraFRC11CFinalInputR13CStateManager +ProcessInput__18CFirstPersonCameraFRC11CFinalInputR13CStateManager: +/* 8000FA80 0000C9E0 4E 80 00 20 */ blr + +.global __dt__18CFirstPersonCameraFv +__dt__18CFirstPersonCameraFv: +/* 8000FA84 0000C9E4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000FA88 0000C9E8 7C 08 02 A6 */ mflr r0 +/* 8000FA8C 0000C9EC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000FA90 0000C9F0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8000FA94 0000C9F4 7C 9F 23 78 */ mr r31, r4 +/* 8000FA98 0000C9F8 93 C1 00 08 */ stw r30, 8(r1) +/* 8000FA9C 0000C9FC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8000FAA0 0000CA00 41 82 00 28 */ beq lbl_8000FAC8 +/* 8000FAA4 0000CA04 3C A0 80 3E */ lis r5, lbl_803D9660@ha +/* 8000FAA8 0000CA08 38 80 00 00 */ li r4, 0 +/* 8000FAAC 0000CA0C 38 05 96 60 */ addi r0, r5, lbl_803D9660@l +/* 8000FAB0 0000CA10 90 1E 00 00 */ stw r0, 0(r30) +/* 8000FAB4 0000CA14 48 04 DF A9 */ bl __dt__11CGameCameraFv +/* 8000FAB8 0000CA18 7F E0 07 35 */ extsh. r0, r31 +/* 8000FABC 0000CA1C 40 81 00 0C */ ble lbl_8000FAC8 +/* 8000FAC0 0000CA20 7F C3 F3 78 */ mr r3, r30 +/* 8000FAC4 0000CA24 48 30 5E 6D */ bl Free__7CMemoryFPCv +lbl_8000FAC8: +/* 8000FAC8 0000CA28 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000FACC 0000CA2C 7F C3 F3 78 */ mr r3, r30 +/* 8000FAD0 0000CA30 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8000FAD4 0000CA34 83 C1 00 08 */ lwz r30, 8(r1) +/* 8000FAD8 0000CA38 7C 08 03 A6 */ mtlr r0 +/* 8000FADC 0000CA3C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8000FAE0 0000CA40 4E 80 00 20 */ blr + +.global __ct__18CFirstPersonCameraFRC9TUniqueIdRC12CTransform4f9TUniqueIdfffff +__ct__18CFirstPersonCameraFRC9TUniqueIdRC12CTransform4f9TUniqueIdfffff: +/* 8000FAE4 0000CA44 94 21 FF 40 */ stwu r1, -0xc0(r1) +/* 8000FAE8 0000CA48 7C 08 02 A6 */ mflr r0 +/* 8000FAEC 0000CA4C 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 8000FAF0 0000CA50 DB E1 00 B0 */ stfd f31, 0xb0(r1) +/* 8000FAF4 0000CA54 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0 +/* 8000FAF8 0000CA58 DB C1 00 A0 */ stfd f30, 0xa0(r1) +/* 8000FAFC 0000CA5C F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0 +/* 8000FB00 0000CA60 DB A1 00 90 */ stfd f29, 0x90(r1) +/* 8000FB04 0000CA64 F3 A1 00 98 */ psq_st f29, 152(r1), 0, qr0 +/* 8000FB08 0000CA68 DB 81 00 80 */ stfd f28, 0x80(r1) +/* 8000FB0C 0000CA6C F3 81 00 88 */ psq_st f28, 136(r1), 0, qr0 +/* 8000FB10 0000CA70 DB 61 00 70 */ stfd f27, 0x70(r1) +/* 8000FB14 0000CA74 F3 61 00 78 */ psq_st f27, 120(r1), 0, qr0 +/* 8000FB18 0000CA78 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 8000FB1C 0000CA7C 93 C1 00 68 */ stw r30, 0x68(r1) +/* 8000FB20 0000CA80 93 A1 00 64 */ stw r29, 0x64(r1) +/* 8000FB24 0000CA84 93 81 00 60 */ stw r28, 0x60(r1) +/* 8000FB28 0000CA88 3C E0 80 3D */ lis r7, lbl_803CC420@ha +/* 8000FB2C 0000CA8C FF 60 08 90 */ fmr f27, f1 +/* 8000FB30 0000CA90 FF 80 10 90 */ fmr f28, f2 +/* 8000FB34 0000CA94 38 07 C4 20 */ addi r0, r7, lbl_803CC420@l +/* 8000FB38 0000CA98 7C 7E 1B 78 */ mr r30, r3 +/* 8000FB3C 0000CA9C 7C 9C 23 78 */ mr r28, r4 +/* 8000FB40 0000CAA0 FF A0 18 90 */ fmr f29, f3 +/* 8000FB44 0000CAA4 FF C0 20 90 */ fmr f30, f4 +/* 8000FB48 0000CAA8 FF E0 28 90 */ fmr f31, f5 +/* 8000FB4C 0000CAAC 7C BF 2B 78 */ mr r31, r5 +/* 8000FB50 0000CAB0 7C DD 33 78 */ mr r29, r6 +/* 8000FB54 0000CAB4 7C 04 03 78 */ mr r4, r0 +/* 8000FB58 0000CAB8 38 61 00 30 */ addi r3, r1, 0x30 +/* 8000FB5C 0000CABC 4B FF 51 5D */ bl string_l__4rstlFPCc +/* 8000FB60 0000CAC0 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 8000FB64 0000CAC4 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 8000FB68 0000CAC8 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8000FB6C 0000CACC 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 8000FB70 0000CAD0 90 81 00 28 */ stw r4, 0x28(r1) +/* 8000FB74 0000CAD4 38 61 00 40 */ addi r3, r1, 0x40 +/* 8000FB78 0000CAD8 38 81 00 2C */ addi r4, r1, 0x2c +/* 8000FB7C 0000CADC 38 C1 00 28 */ addi r6, r1, 0x28 +/* 8000FB80 0000CAE0 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8000FB84 0000CAE4 48 04 19 01 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 8000FB88 0000CAE8 A0 7D 00 00 */ lhz r3, 0(r29) +/* 8000FB8C 0000CAEC FC 20 E0 90 */ fmr f1, f28 +/* 8000FB90 0000CAF0 A0 1C 00 00 */ lhz r0, 0(r28) +/* 8000FB94 0000CAF4 FC 40 E8 90 */ fmr f2, f29 +/* 8000FB98 0000CAF8 B0 61 00 10 */ sth r3, 0x10(r1) +/* 8000FB9C 0000CAFC FC 60 F0 90 */ fmr f3, f30 +/* 8000FBA0 0000CB00 FC 80 F8 90 */ fmr f4, f31 +/* 8000FBA4 0000CB04 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8000FBA8 0000CB08 38 00 00 00 */ li r0, 0 +/* 8000FBAC 0000CB0C 7F C3 F3 78 */ mr r3, r30 +/* 8000FBB0 0000CB10 7F E8 FB 78 */ mr r8, r31 +/* 8000FBB4 0000CB14 90 01 00 08 */ stw r0, 8(r1) +/* 8000FBB8 0000CB18 38 81 00 14 */ addi r4, r1, 0x14 +/* 8000FBBC 0000CB1C 38 C1 00 30 */ addi r6, r1, 0x30 +/* 8000FBC0 0000CB20 38 E1 00 40 */ addi r7, r1, 0x40 +/* 8000FBC4 0000CB24 39 21 00 10 */ addi r9, r1, 0x10 +/* 8000FBC8 0000CB28 38 A0 00 01 */ li r5, 1 +/* 8000FBCC 0000CB2C 39 40 00 00 */ li r10, 0 +/* 8000FBD0 0000CB30 48 04 DE ED */ bl "__ct__11CGameCameraF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fffff9TUniqueIdbi" +/* 8000FBD4 0000CB34 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8000FBD8 0000CB38 80 61 00 50 */ lwz r3, 0x50(r1) +/* 8000FBDC 0000CB3C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8000FBE0 0000CB40 90 61 00 1C */ stw r3, 0x1c(r1) +/* 8000FBE4 0000CB44 7C 64 1B 78 */ mr r4, r3 +/* 8000FBE8 0000CB48 7C 03 02 14 */ add r0, r3, r0 +/* 8000FBEC 0000CB4C 90 61 00 18 */ stw r3, 0x18(r1) +/* 8000FBF0 0000CB50 90 01 00 24 */ stw r0, 0x24(r1) +/* 8000FBF4 0000CB54 90 01 00 20 */ stw r0, 0x20(r1) +/* 8000FBF8 0000CB58 48 00 00 08 */ b lbl_8000FC00 +lbl_8000FBFC: +/* 8000FBFC 0000CB5C 38 84 00 0C */ addi r4, r4, 0xc +lbl_8000FC00: +/* 8000FC00 0000CB60 7C 04 00 40 */ cmplw r4, r0 +/* 8000FC04 0000CB64 40 82 FF F8 */ bne lbl_8000FBFC +/* 8000FC08 0000CB68 28 03 00 00 */ cmplwi r3, 0 +/* 8000FC0C 0000CB6C 41 82 00 08 */ beq lbl_8000FC14 +/* 8000FC10 0000CB70 48 30 5D 21 */ bl Free__7CMemoryFPCv +lbl_8000FC14: +/* 8000FC14 0000CB74 38 61 00 30 */ addi r3, r1, 0x30 +/* 8000FC18 0000CB78 48 32 DE C9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8000FC1C 0000CB7C 3C 60 80 3E */ lis r3, lbl_803D9660@ha +/* 8000FC20 0000CB80 38 00 00 00 */ li r0, 0 +/* 8000FC24 0000CB84 38 63 96 60 */ addi r3, r3, lbl_803D9660@l +/* 8000FC28 0000CB88 7F E4 FB 78 */ mr r4, r31 +/* 8000FC2C 0000CB8C 90 7E 00 00 */ stw r3, 0(r30) +/* 8000FC30 0000CB90 38 7E 01 90 */ addi r3, r30, 0x190 +/* 8000FC34 0000CB94 D3 7E 01 88 */ stfs f27, 0x188(r30) +/* 8000FC38 0000CB98 98 1E 01 8C */ stb r0, 0x18c(r30) +/* 8000FC3C 0000CB9C 48 30 2F 39 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8000FC40 0000CBA0 C0 22 80 B0 */ lfs f1, lbl_805A9DD0@sda21(r2) +/* 8000FC44 0000CBA4 38 A0 00 00 */ li r5, 0 +/* 8000FC48 0000CBA8 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8000FC4C 0000CBAC 7F C3 F3 78 */ mr r3, r30 +/* 8000FC50 0000CBB0 D0 3E 01 C0 */ stfs f1, 0x1c0(r30) +/* 8000FC54 0000CBB4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8000FC58 0000CBB8 B0 1E 01 C4 */ sth r0, 0x1c4(r30) +/* 8000FC5C 0000CBBC 88 1E 01 C6 */ lbz r0, 0x1c6(r30) +/* 8000FC60 0000CBC0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 8000FC64 0000CBC4 98 1E 01 C6 */ stb r0, 0x1c6(r30) +/* 8000FC68 0000CBC8 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) +/* 8000FC6C 0000CBCC D0 1E 01 C8 */ stfs f0, 0x1c8(r30) +/* 8000FC70 0000CBD0 C0 04 00 04 */ lfs f0, 4(r4) +/* 8000FC74 0000CBD4 D0 1E 01 CC */ stfs f0, 0x1cc(r30) +/* 8000FC78 0000CBD8 C0 04 00 08 */ lfs f0, 8(r4) +/* 8000FC7C 0000CBDC D0 1E 01 D0 */ stfs f0, 0x1d0(r30) +/* 8000FC80 0000CBE0 D0 3E 01 D4 */ stfs f1, 0x1d4(r30) +/* 8000FC84 0000CBE4 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0 +/* 8000FC88 0000CBE8 CB E1 00 B0 */ lfd f31, 0xb0(r1) +/* 8000FC8C 0000CBEC E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0 +/* 8000FC90 0000CBF0 CB C1 00 A0 */ lfd f30, 0xa0(r1) +/* 8000FC94 0000CBF4 E3 A1 00 98 */ psq_l f29, 152(r1), 0, qr0 +/* 8000FC98 0000CBF8 CB A1 00 90 */ lfd f29, 0x90(r1) +/* 8000FC9C 0000CBFC E3 81 00 88 */ psq_l f28, 136(r1), 0, qr0 +/* 8000FCA0 0000CC00 CB 81 00 80 */ lfd f28, 0x80(r1) +/* 8000FCA4 0000CC04 E3 61 00 78 */ psq_l f27, 120(r1), 0, qr0 +/* 8000FCA8 0000CC08 CB 61 00 70 */ lfd f27, 0x70(r1) +/* 8000FCAC 0000CC0C 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 8000FCB0 0000CC10 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 8000FCB4 0000CC14 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 8000FCB8 0000CC18 80 01 00 C4 */ lwz r0, 0xc4(r1) +/* 8000FCBC 0000CC1C 83 81 00 60 */ lwz r28, 0x60(r1) +/* 8000FCC0 0000CC20 7C 08 03 A6 */ mtlr r0 +/* 8000FCC4 0000CC24 38 21 00 C0 */ addi r1, r1, 0xc0 +/* 8000FCC8 0000CC28 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CFrontEndUI.s b/asm/Kyoto_CWD/CFrontEndUI.s new file mode 100644 index 00000000..ecfe7d1f --- /dev/null +++ b/asm/Kyoto_CWD/CFrontEndUI.s @@ -0,0 +1,8341 @@ +.include "macros.inc" + +.section .text, "ax" + +.global GetUserInput__21CArchMsgParmUserInputCFv +GetUserInput__21CArchMsgParmUserInputCFv: +/* 8001B9E4 00018944 38 63 00 04 */ addi r3, r3, 4 +/* 8001B9E8 00018948 4E 80 00 20 */ blr + +.global __dt__21CArchMsgParmUserInputFv +__dt__21CArchMsgParmUserInputFv: +/* 8001B9EC 0001894C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001B9F0 00018950 7C 08 02 A6 */ mflr r0 +/* 8001B9F4 00018954 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001B9F8 00018958 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001B9FC 0001895C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8001BA00 00018960 41 82 00 30 */ beq lbl_8001BA30 +/* 8001BA04 00018964 3C 60 80 3E */ lis r3, lbl_803D9810@ha +/* 8001BA08 00018968 38 03 98 10 */ addi r0, r3, lbl_803D9810@l +/* 8001BA0C 0001896C 90 1F 00 00 */ stw r0, 0(r31) +/* 8001BA10 00018970 41 82 00 10 */ beq lbl_8001BA20 +/* 8001BA14 00018974 3C 60 80 3E */ lis r3, lbl_803D8E9C@ha +/* 8001BA18 00018978 38 03 8E 9C */ addi r0, r3, lbl_803D8E9C@l +/* 8001BA1C 0001897C 90 1F 00 00 */ stw r0, 0(r31) +lbl_8001BA20: +/* 8001BA20 00018980 7C 80 07 35 */ extsh. r0, r4 +/* 8001BA24 00018984 40 81 00 0C */ ble lbl_8001BA30 +/* 8001BA28 00018988 7F E3 FB 78 */ mr r3, r31 +/* 8001BA2C 0001898C 48 2F 9F 05 */ bl Free__7CMemoryFPCv +lbl_8001BA30: +/* 8001BA30 00018990 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001BA34 00018994 7F E3 FB 78 */ mr r3, r31 +/* 8001BA38 00018998 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001BA3C 0001899C 7C 08 03 A6 */ mtlr r0 +/* 8001BA40 000189A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001BA44 000189A4 4E 80 00 20 */ blr + +.global __ct__21CArchMsgParmUserInputFRC11CFinalInput +__ct__21CArchMsgParmUserInputFRC11CFinalInput: +/* 8001BA48 000189A8 3C C0 80 3E */ lis r6, lbl_803D8E9C@ha +/* 8001BA4C 000189AC 3C A0 80 3E */ lis r5, lbl_803D9810@ha +/* 8001BA50 000189B0 38 C6 8E 9C */ addi r6, r6, lbl_803D8E9C@l +/* 8001BA54 000189B4 90 C3 00 00 */ stw r6, 0(r3) +/* 8001BA58 000189B8 38 05 98 10 */ addi r0, r5, lbl_803D9810@l +/* 8001BA5C 000189BC 90 03 00 00 */ stw r0, 0(r3) +/* 8001BA60 000189C0 C0 04 00 00 */ lfs f0, 0(r4) +/* 8001BA64 000189C4 D0 03 00 04 */ stfs f0, 4(r3) +/* 8001BA68 000189C8 80 04 00 04 */ lwz r0, 4(r4) +/* 8001BA6C 000189CC 90 03 00 08 */ stw r0, 8(r3) +/* 8001BA70 000189D0 C0 04 00 08 */ lfs f0, 8(r4) +/* 8001BA74 000189D4 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8001BA78 000189D8 C0 04 00 0C */ lfs f0, 0xc(r4) +/* 8001BA7C 000189DC D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8001BA80 000189E0 C0 04 00 10 */ lfs f0, 0x10(r4) +/* 8001BA84 000189E4 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 8001BA88 000189E8 C0 04 00 14 */ lfs f0, 0x14(r4) +/* 8001BA8C 000189EC D0 03 00 18 */ stfs f0, 0x18(r3) +/* 8001BA90 000189F0 C0 04 00 18 */ lfs f0, 0x18(r4) +/* 8001BA94 000189F4 D0 03 00 1C */ stfs f0, 0x1c(r3) +/* 8001BA98 000189F8 C0 04 00 1C */ lfs f0, 0x1c(r4) +/* 8001BA9C 000189FC D0 03 00 20 */ stfs f0, 0x20(r3) +/* 8001BAA0 00018A00 88 04 00 20 */ lbz r0, 0x20(r4) +/* 8001BAA4 00018A04 98 03 00 24 */ stb r0, 0x24(r3) +/* 8001BAA8 00018A08 88 04 00 21 */ lbz r0, 0x21(r4) +/* 8001BAAC 00018A0C 98 03 00 25 */ stb r0, 0x25(r3) +/* 8001BAB0 00018A10 88 04 00 22 */ lbz r0, 0x22(r4) +/* 8001BAB4 00018A14 98 03 00 26 */ stb r0, 0x26(r3) +/* 8001BAB8 00018A18 88 04 00 23 */ lbz r0, 0x23(r4) +/* 8001BABC 00018A1C 98 03 00 27 */ stb r0, 0x27(r3) +/* 8001BAC0 00018A20 C0 04 00 24 */ lfs f0, 0x24(r4) +/* 8001BAC4 00018A24 D0 03 00 28 */ stfs f0, 0x28(r3) +/* 8001BAC8 00018A28 C0 04 00 28 */ lfs f0, 0x28(r4) +/* 8001BACC 00018A2C D0 03 00 2C */ stfs f0, 0x2c(r3) +/* 8001BAD0 00018A30 88 04 00 2C */ lbz r0, 0x2c(r4) +/* 8001BAD4 00018A34 98 03 00 30 */ stb r0, 0x30(r3) +/* 8001BAD8 00018A38 88 04 00 2D */ lbz r0, 0x2d(r4) +/* 8001BADC 00018A3C 98 03 00 31 */ stb r0, 0x31(r3) +/* 8001BAE0 00018A40 88 04 00 2E */ lbz r0, 0x2e(r4) +/* 8001BAE4 00018A44 98 03 00 32 */ stb r0, 0x32(r3) +/* 8001BAE8 00018A48 4E 80 00 20 */ blr + +.global StartSlideShow__11CFrontEndUIFR18CArchitectureQueue +StartSlideShow__11CFrontEndUIFR18CArchitectureQueue: +/* 8001BAEC 00018A4C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001BAF0 00018A50 7C 08 02 A6 */ mflr r0 +/* 8001BAF4 00018A54 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001BAF8 00018A58 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001BAFC 00018A5C 7C 9F 23 78 */ mr r31, r4 +/* 8001BB00 00018A60 80 63 00 F4 */ lwz r3, 0xf4(r3) +/* 8001BB04 00018A64 48 35 04 F1 */ bl StopMixOut__18CStaticAudioPlayerFv +/* 8001BB08 00018A68 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001BB0C 00018A6C 38 60 01 38 */ li r3, 0x138 +/* 8001BB10 00018A70 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001BB14 00018A74 38 A0 00 00 */ li r5, 0 +/* 8001BB18 00018A78 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001BB1C 00018A7C 48 2F 9D 51 */ bl __nw__FUlPCcPCc +/* 8001BB20 00018A80 7C 60 1B 79 */ or. r0, r3, r3 +/* 8001BB24 00018A84 41 82 00 0C */ beq lbl_8001BB30 +/* 8001BB28 00018A88 48 27 FB FD */ bl __ct__10CSlideShowFv +/* 8001BB2C 00018A8C 7C 60 1B 78 */ mr r0, r3 +lbl_8001BB30: +/* 8001BB30 00018A90 90 01 00 08 */ stw r0, 8(r1) +/* 8001BB34 00018A94 38 61 00 0C */ addi r3, r1, 0xc +/* 8001BB38 00018A98 38 E1 00 08 */ addi r7, r1, 8 +/* 8001BB3C 00018A9C 38 80 00 00 */ li r4, 0 +/* 8001BB40 00018AA0 38 AD 81 44 */ addi r5, r13, lbl_805A6D04@sda21 +/* 8001BB44 00018AA4 38 CD 81 48 */ addi r6, r13, lbl_805A6D08@sda21 +/* 8001BB48 00018AA8 48 03 61 65 */ bl CreateCreateIOWin__7MakeMsgF14EArchMsgTargetRCiRCiRCP6CIOWin +/* 8001BB4C 00018AAC 7F E3 FB 78 */ mr r3, r31 +/* 8001BB50 00018AB0 38 81 00 0C */ addi r4, r1, 0xc +/* 8001BB54 00018AB4 4B FE B1 AD */ bl InsertMsg__18CArchitectureQueueFRC20CArchitectureMessage +/* 8001BB58 00018AB8 34 61 00 14 */ addic. r3, r1, 0x14 +/* 8001BB5C 00018ABC 41 82 00 08 */ beq lbl_8001BB64 +/* 8001BB60 00018AC0 4B FE CB AD */ bl sub_8000870c +lbl_8001BB64: +/* 8001BB64 00018AC4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001BB68 00018AC8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001BB6C 00018ACC 7C 08 03 A6 */ mtlr r0 +/* 8001BB70 00018AD0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001BB74 00018AD4 4E 80 00 20 */ blr + +.global SetFadeBlackWithMovie__11CFrontEndUIFv +SetFadeBlackWithMovie__11CFrontEndUIFv: +/* 8001BB78 00018AD8 C0 02 82 98 */ lfs f0, lbl_805A9FB8@sda21(r2) +/* 8001BB7C 00018ADC 38 00 00 01 */ li r0, 1 +/* 8001BB80 00018AE0 D0 03 00 58 */ stfs f0, 0x58(r3) +/* 8001BB84 00018AE4 98 03 00 5C */ stb r0, 0x5c(r3) +/* 8001BB88 00018AE8 4E 80 00 20 */ blr + +.global SetFadeBlackTimer__11CFrontEndUIFf +SetFadeBlackTimer__11CFrontEndUIFf: +/* 8001BB8C 00018AEC D0 23 00 58 */ stfs f1, 0x58(r3) +/* 8001BB90 00018AF0 38 00 00 00 */ li r0, 0 +/* 8001BB94 00018AF4 98 03 00 5C */ stb r0, 0x5c(r3) +/* 8001BB98 00018AF8 4E 80 00 20 */ blr + +.global GetAttractMovieFileName__11CFrontEndUIFi +GetAttractMovieFileName__11CFrontEndUIFi: +/* 8001BB9C 00018AFC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001BBA0 00018B00 7C 08 02 A6 */ mflr r0 +/* 8001BBA4 00018B04 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001BBA8 00018B08 38 A4 C6 44 */ addi r5, r4, lbl_803CC644@l +/* 8001BBAC 00018B0C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001BBB0 00018B10 7C 64 1B 78 */ mr r4, r3 +/* 8001BBB4 00018B14 38 65 01 1B */ addi r3, r5, 0x11b +/* 8001BBB8 00018B18 4C C6 31 82 */ crclr 6 +/* 8001BBBC 00018B1C 48 2B A5 F5 */ bl Stringize__7CBasicsFPCce +/* 8001BBC0 00018B20 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001BBC4 00018B24 7C 08 03 A6 */ mtlr r0 +/* 8001BBC8 00018B28 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001BBCC 00018B2C 4E 80 00 20 */ blr + +.global GetNextAttractMovieFileName__11CFrontEndUIFi +GetNextAttractMovieFileName__11CFrontEndUIFi: +/* 8001BBD0 00018B30 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001BBD4 00018B34 7C 08 02 A6 */ mflr r0 +/* 8001BBD8 00018B38 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001BBDC 00018B3C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001BBE0 00018B40 7C 7F 1B 78 */ mr r31, r3 +/* 8001BBE4 00018B44 80 63 00 BC */ lwz r3, 0xbc(r3) +/* 8001BBE8 00018B48 4B FF FF B5 */ bl GetAttractMovieFileName__11CFrontEndUIFi +/* 8001BBEC 00018B4C 80 BF 00 BC */ lwz r5, 0xbc(r31) +/* 8001BBF0 00018B50 80 9F 00 C0 */ lwz r4, 0xc0(r31) +/* 8001BBF4 00018B54 38 A5 00 01 */ addi r5, r5, 1 +/* 8001BBF8 00018B58 7C 05 23 D6 */ divw r0, r5, r4 +/* 8001BBFC 00018B5C 7C 00 21 D6 */ mullw r0, r0, r4 +/* 8001BC00 00018B60 7C 00 28 50 */ subf r0, r0, r5 +/* 8001BC04 00018B64 90 1F 00 BC */ stw r0, 0xbc(r31) +/* 8001BC08 00018B68 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001BC0C 00018B6C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001BC10 00018B70 7C 08 03 A6 */ mtlr r0 +/* 8001BC14 00018B74 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001BC18 00018B78 4E 80 00 20 */ blr + +.global SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie: +/* 8001BC1C 00018B7C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001BC20 00018B80 7C 08 02 A6 */ mflr r0 +/* 8001BC24 00018B84 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001BC28 00018B88 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001BC2C 00018B8C 7C 9F 23 78 */ mr r31, r4 +/* 8001BC30 00018B90 93 C1 00 08 */ stw r30, 8(r1) +/* 8001BC34 00018B94 7C 7E 1B 78 */ mr r30, r3 +/* 8001BC38 00018B98 80 03 00 B8 */ lwz r0, 0xb8(r3) +/* 8001BC3C 00018B9C 7C 1F 00 00 */ cmpw r31, r0 +/* 8001BC40 00018BA0 41 82 00 60 */ beq lbl_8001BCA0 +/* 8001BC44 00018BA4 48 00 00 75 */ bl StopAttractMovie__11CFrontEndUIFv +/* 8001BC48 00018BA8 80 1E 00 B8 */ lwz r0, 0xb8(r30) +/* 8001BC4C 00018BAC 2C 00 FF FF */ cmpwi r0, -1 +/* 8001BC50 00018BB0 41 82 00 18 */ beq lbl_8001BC68 +/* 8001BC54 00018BB4 80 7E 00 CC */ lwz r3, 0xcc(r30) +/* 8001BC58 00018BB8 38 80 00 00 */ li r4, 0 +/* 8001BC5C 00018BBC 48 33 FF 89 */ bl SetPlayMode__12CMoviePlayerFQ212CMoviePlayer9EPlayMode +/* 8001BC60 00018BC0 80 7E 00 CC */ lwz r3, 0xcc(r30) +/* 8001BC64 00018BC4 48 33 FC E1 */ bl Rewind__12CMoviePlayerFv +lbl_8001BC68: +/* 8001BC68 00018BC8 93 FE 00 B8 */ stw r31, 0xb8(r30) +/* 8001BC6C 00018BCC 80 1E 00 B8 */ lwz r0, 0xb8(r30) +/* 8001BC70 00018BD0 2C 00 FF FF */ cmpwi r0, -1 +/* 8001BC74 00018BD4 41 82 00 24 */ beq lbl_8001BC98 +/* 8001BC78 00018BD8 57 E0 18 38 */ slwi r0, r31, 3 +/* 8001BC7C 00018BDC 38 80 00 01 */ li r4, 1 +/* 8001BC80 00018BE0 7C 7E 02 14 */ add r3, r30, r0 +/* 8001BC84 00018BE4 80 03 00 74 */ lwz r0, 0x74(r3) +/* 8001BC88 00018BE8 90 1E 00 CC */ stw r0, 0xcc(r30) +/* 8001BC8C 00018BEC 80 7E 00 CC */ lwz r3, 0xcc(r30) +/* 8001BC90 00018BF0 48 33 FF 55 */ bl SetPlayMode__12CMoviePlayerFQ212CMoviePlayer9EPlayMode +/* 8001BC94 00018BF4 48 00 00 0C */ b lbl_8001BCA0 +lbl_8001BC98: +/* 8001BC98 00018BF8 38 00 00 00 */ li r0, 0 +/* 8001BC9C 00018BFC 90 1E 00 CC */ stw r0, 0xcc(r30) +lbl_8001BCA0: +/* 8001BCA0 00018C00 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001BCA4 00018C04 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001BCA8 00018C08 83 C1 00 08 */ lwz r30, 8(r1) +/* 8001BCAC 00018C0C 7C 08 03 A6 */ mtlr r0 +/* 8001BCB0 00018C10 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001BCB4 00018C14 4E 80 00 20 */ blr + +.global StopAttractMovie__11CFrontEndUIFv +StopAttractMovie__11CFrontEndUIFv: +/* 8001BCB8 00018C18 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001BCBC 00018C1C 7C 08 02 A6 */ mflr r0 +/* 8001BCC0 00018C20 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001BCC4 00018C24 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001BCC8 00018C28 7C 7F 1B 78 */ mr r31, r3 +/* 8001BCCC 00018C2C 80 03 00 C8 */ lwz r0, 0xc8(r3) +/* 8001BCD0 00018C30 28 00 00 00 */ cmplwi r0, 0 +/* 8001BCD4 00018C34 41 82 00 70 */ beq lbl_8001BD44 +/* 8001BCD8 00018C38 38 61 00 08 */ addi r3, r1, 8 +/* 8001BCDC 00018C3C 38 1F 00 C4 */ addi r0, r31, 0xc4 +/* 8001BCE0 00018C40 38 80 00 00 */ li r4, 0 +/* 8001BCE4 00018C44 7C 03 00 40 */ cmplw r3, r0 +/* 8001BCE8 00018C48 98 81 00 08 */ stb r4, 8(r1) +/* 8001BCEC 00018C4C 90 81 00 0C */ stw r4, 0xc(r1) +/* 8001BCF0 00018C50 41 82 00 34 */ beq lbl_8001BD24 +/* 8001BCF4 00018C54 88 1F 00 C4 */ lbz r0, 0xc4(r31) +/* 8001BCF8 00018C58 28 00 00 00 */ cmplwi r0, 0 +/* 8001BCFC 00018C5C 41 82 00 10 */ beq lbl_8001BD0C +/* 8001BD00 00018C60 80 7F 00 C8 */ lwz r3, 0xc8(r31) +/* 8001BD04 00018C64 38 80 00 01 */ li r4, 1 +/* 8001BD08 00018C68 48 34 0A B1 */ bl __dt__12CMoviePlayerFv +lbl_8001BD0C: +/* 8001BD0C 00018C6C 88 61 00 08 */ lbz r3, 8(r1) +/* 8001BD10 00018C70 38 00 00 00 */ li r0, 0 +/* 8001BD14 00018C74 98 7F 00 C4 */ stb r3, 0xc4(r31) +/* 8001BD18 00018C78 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8001BD1C 00018C7C 90 7F 00 C8 */ stw r3, 0xc8(r31) +/* 8001BD20 00018C80 98 01 00 08 */ stb r0, 8(r1) +lbl_8001BD24: +/* 8001BD24 00018C84 88 01 00 08 */ lbz r0, 8(r1) +/* 8001BD28 00018C88 28 00 00 00 */ cmplwi r0, 0 +/* 8001BD2C 00018C8C 41 82 00 10 */ beq lbl_8001BD3C +/* 8001BD30 00018C90 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8001BD34 00018C94 38 80 00 01 */ li r4, 1 +/* 8001BD38 00018C98 48 34 0A 81 */ bl __dt__12CMoviePlayerFv +lbl_8001BD3C: +/* 8001BD3C 00018C9C 38 00 00 00 */ li r0, 0 +/* 8001BD40 00018CA0 90 1F 00 CC */ stw r0, 0xcc(r31) +lbl_8001BD44: +/* 8001BD44 00018CA4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001BD48 00018CA8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001BD4C 00018CAC 7C 08 03 A6 */ mtlr r0 +/* 8001BD50 00018CB0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001BD54 00018CB4 4E 80 00 20 */ blr + +.global StartAttractMovie__11CFrontEndUIFi +StartAttractMovie__11CFrontEndUIFi: +/* 8001BD58 00018CB8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001BD5C 00018CBC 7C 08 02 A6 */ mflr r0 +/* 8001BD60 00018CC0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001BD64 00018CC4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001BD68 00018CC8 7C 7F 1B 78 */ mr r31, r3 +/* 8001BD6C 00018CCC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8001BD70 00018CD0 80 03 00 C8 */ lwz r0, 0xc8(r3) +/* 8001BD74 00018CD4 28 00 00 00 */ cmplwi r0, 0 +/* 8001BD78 00018CD8 40 82 00 C8 */ bne lbl_8001BE40 +/* 8001BD7C 00018CDC 38 80 FF FF */ li r4, -1 +/* 8001BD80 00018CE0 4B FF FE 9D */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001BD84 00018CE4 7F E3 FB 78 */ mr r3, r31 +/* 8001BD88 00018CE8 4B FF FE 49 */ bl GetNextAttractMovieFileName__11CFrontEndUIFi +/* 8001BD8C 00018CEC 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001BD90 00018CF0 7C 60 1B 78 */ mr r0, r3 +/* 8001BD94 00018CF4 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001BD98 00018CF8 38 60 01 00 */ li r3, 0x100 +/* 8001BD9C 00018CFC 7C 1E 03 78 */ mr r30, r0 +/* 8001BDA0 00018D00 38 A0 00 00 */ li r5, 0 +/* 8001BDA4 00018D04 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001BDA8 00018D08 48 2F 9A C5 */ bl __nw__FUlPCcPCc +/* 8001BDAC 00018D0C 7C 65 1B 79 */ or. r5, r3, r3 +/* 8001BDB0 00018D10 41 82 00 1C */ beq lbl_8001BDCC +/* 8001BDB4 00018D14 C0 22 82 9C */ lfs f1, lbl_805A9FBC@sda21(r2) +/* 8001BDB8 00018D18 7F C4 F3 78 */ mr r4, r30 +/* 8001BDBC 00018D1C 38 A0 00 00 */ li r5, 0 +/* 8001BDC0 00018D20 38 C0 00 00 */ li r6, 0 +/* 8001BDC4 00018D24 48 34 11 59 */ bl __ct__12CMoviePlayerFPCcfb +/* 8001BDC8 00018D28 7C 65 1B 78 */ mr r5, r3 +lbl_8001BDCC: +/* 8001BDCC 00018D2C 7C 05 00 D0 */ neg r0, r5 +/* 8001BDD0 00018D30 38 61 00 08 */ addi r3, r1, 8 +/* 8001BDD4 00018D34 7C 04 2B 78 */ or r4, r0, r5 +/* 8001BDD8 00018D38 38 1F 00 C4 */ addi r0, r31, 0xc4 +/* 8001BDDC 00018D3C 54 84 0F FE */ srwi r4, r4, 0x1f +/* 8001BDE0 00018D40 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8001BDE4 00018D44 7C 03 00 40 */ cmplw r3, r0 +/* 8001BDE8 00018D48 98 81 00 08 */ stb r4, 8(r1) +/* 8001BDEC 00018D4C 41 82 00 34 */ beq lbl_8001BE20 +/* 8001BDF0 00018D50 88 1F 00 C4 */ lbz r0, 0xc4(r31) +/* 8001BDF4 00018D54 28 00 00 00 */ cmplwi r0, 0 +/* 8001BDF8 00018D58 41 82 00 10 */ beq lbl_8001BE08 +/* 8001BDFC 00018D5C 80 7F 00 C8 */ lwz r3, 0xc8(r31) +/* 8001BE00 00018D60 38 80 00 01 */ li r4, 1 +/* 8001BE04 00018D64 48 34 09 B5 */ bl __dt__12CMoviePlayerFv +lbl_8001BE08: +/* 8001BE08 00018D68 88 61 00 08 */ lbz r3, 8(r1) +/* 8001BE0C 00018D6C 38 00 00 00 */ li r0, 0 +/* 8001BE10 00018D70 98 7F 00 C4 */ stb r3, 0xc4(r31) +/* 8001BE14 00018D74 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8001BE18 00018D78 90 7F 00 C8 */ stw r3, 0xc8(r31) +/* 8001BE1C 00018D7C 98 01 00 08 */ stb r0, 8(r1) +lbl_8001BE20: +/* 8001BE20 00018D80 88 01 00 08 */ lbz r0, 8(r1) +/* 8001BE24 00018D84 28 00 00 00 */ cmplwi r0, 0 +/* 8001BE28 00018D88 41 82 00 10 */ beq lbl_8001BE38 +/* 8001BE2C 00018D8C 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8001BE30 00018D90 38 80 00 01 */ li r4, 1 +/* 8001BE34 00018D94 48 34 09 85 */ bl __dt__12CMoviePlayerFv +lbl_8001BE38: +/* 8001BE38 00018D98 80 1F 00 C8 */ lwz r0, 0xc8(r31) +/* 8001BE3C 00018D9C 90 1F 00 CC */ stw r0, 0xcc(r31) +lbl_8001BE40: +/* 8001BE40 00018DA0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001BE44 00018DA4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001BE48 00018DA8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001BE4C 00018DAC 7C 08 03 A6 */ mtlr r0 +/* 8001BE50 00018DB0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001BE54 00018DB4 4E 80 00 20 */ blr + +.global CompleteStateTransition__11CFrontEndUIFv +CompleteStateTransition__11CFrontEndUIFv: +/* 8001BE58 00018DB8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001BE5C 00018DBC 7C 08 02 A6 */ mflr r0 +/* 8001BE60 00018DC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001BE64 00018DC4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001BE68 00018DC8 93 C1 00 08 */ stw r30, 8(r1) +/* 8001BE6C 00018DCC 7C 7E 1B 78 */ mr r30, r3 +/* 8001BE70 00018DD0 83 E3 00 50 */ lwz r31, 0x50(r3) +/* 8001BE74 00018DD4 80 03 00 54 */ lwz r0, 0x54(r3) +/* 8001BE78 00018DD8 90 03 00 50 */ stw r0, 0x50(r3) +/* 8001BE7C 00018DDC 80 03 00 50 */ lwz r0, 0x50(r3) +/* 8001BE80 00018DE0 2C 00 00 03 */ cmpwi r0, 3 +/* 8001BE84 00018DE4 41 82 00 5C */ beq lbl_8001BEE0 +/* 8001BE88 00018DE8 40 80 00 14 */ bge lbl_8001BE9C +/* 8001BE8C 00018DEC 2C 00 00 01 */ cmpwi r0, 1 +/* 8001BE90 00018DF0 41 82 00 38 */ beq lbl_8001BEC8 +/* 8001BE94 00018DF4 40 80 00 18 */ bge lbl_8001BEAC +/* 8001BE98 00018DF8 48 00 00 98 */ b lbl_8001BF30 +lbl_8001BE9C: +/* 8001BE9C 00018DFC 2C 00 00 05 */ cmpwi r0, 5 +/* 8001BEA0 00018E00 41 82 00 88 */ beq lbl_8001BF28 +/* 8001BEA4 00018E04 40 80 00 8C */ bge lbl_8001BF30 +/* 8001BEA8 00018E08 48 00 00 74 */ b lbl_8001BF1C +lbl_8001BEAC: +/* 8001BEAC 00018E0C 38 00 00 00 */ li r0, 0 +/* 8001BEB0 00018E10 38 80 00 01 */ li r4, 1 +/* 8001BEB4 00018E14 90 1E 00 54 */ stw r0, 0x54(r30) +/* 8001BEB8 00018E18 90 1E 00 50 */ stw r0, 0x50(r30) +/* 8001BEBC 00018E1C 98 1E 00 D0 */ stb r0, 0xd0(r30) +/* 8001BEC0 00018E20 48 00 00 89 */ bl StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen +/* 8001BEC4 00018E24 48 00 00 6C */ b lbl_8001BF30 +lbl_8001BEC8: +/* 8001BEC8 00018E28 38 80 00 01 */ li r4, 1 +/* 8001BECC 00018E2C 4B FF FD 51 */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001BED0 00018E30 C0 22 82 A0 */ lfs f1, lbl_805A9FC0@sda21(r2) +/* 8001BED4 00018E34 7F C3 F3 78 */ mr r3, r30 +/* 8001BED8 00018E38 4B FF FC B5 */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001BEDC 00018E3C 48 00 00 54 */ b lbl_8001BF30 +lbl_8001BEE0: +/* 8001BEE0 00018E40 38 80 00 03 */ li r4, 3 +/* 8001BEE4 00018E44 4B FF FD 39 */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001BEE8 00018E48 2C 1F 00 01 */ cmpwi r31, 1 +/* 8001BEEC 00018E4C 40 82 00 1C */ bne lbl_8001BF08 +/* 8001BEF0 00018E50 80 7E 00 F4 */ lwz r3, 0xf4(r30) +/* 8001BEF4 00018E54 48 35 01 01 */ bl StopMixOut__18CStaticAudioPlayerFv +/* 8001BEF8 00018E58 80 1E 00 D8 */ lwz r0, 0xd8(r30) +/* 8001BEFC 00018E5C 90 1E 00 F4 */ stw r0, 0xf4(r30) +/* 8001BF00 00018E60 80 7E 00 F4 */ lwz r3, 0xf4(r30) +/* 8001BF04 00018E64 48 35 01 2D */ bl StartMixOut__18CStaticAudioPlayerFv +lbl_8001BF08: +/* 8001BF08 00018E68 80 7E 00 DC */ lwz r3, 0xdc(r30) +/* 8001BF0C 00018E6C 28 03 00 00 */ cmplwi r3, 0 +/* 8001BF10 00018E70 41 82 00 20 */ beq lbl_8001BF30 +/* 8001BF14 00018E74 48 23 3E 79 */ bl ResetCardDriver__15CSaveGameScreenFv +/* 8001BF18 00018E78 48 00 00 18 */ b lbl_8001BF30 +lbl_8001BF1C: +/* 8001BF1C 00018E7C 38 80 00 06 */ li r4, 6 +/* 8001BF20 00018E80 4B FF FC FD */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001BF24 00018E84 48 00 00 0C */ b lbl_8001BF30 +lbl_8001BF28: +/* 8001BF28 00018E88 38 00 00 06 */ li r0, 6 +/* 8001BF2C 00018E8C 90 1E 00 14 */ stw r0, 0x14(r30) +lbl_8001BF30: +/* 8001BF30 00018E90 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001BF34 00018E94 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001BF38 00018E98 83 C1 00 08 */ lwz r30, 8(r1) +/* 8001BF3C 00018E9C 7C 08 03 A6 */ mtlr r0 +/* 8001BF40 00018EA0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001BF44 00018EA4 4E 80 00 20 */ blr + +.global StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen +StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen: +/* 8001BF48 00018EA8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001BF4C 00018EAC 7C 08 02 A6 */ mflr r0 +/* 8001BF50 00018EB0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001BF54 00018EB4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001BF58 00018EB8 7C 9F 23 78 */ mr r31, r4 +/* 8001BF5C 00018EBC 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8001BF60 00018EC0 7C 7E 1B 78 */ mr r30, r3 +/* 8001BF64 00018EC4 80 03 00 50 */ lwz r0, 0x50(r3) +/* 8001BF68 00018EC8 2C 00 00 02 */ cmpwi r0, 2 +/* 8001BF6C 00018ECC 41 82 01 68 */ beq lbl_8001C0D4 +/* 8001BF70 00018ED0 40 80 00 14 */ bge lbl_8001BF84 +/* 8001BF74 00018ED4 2C 00 00 00 */ cmpwi r0, 0 +/* 8001BF78 00018ED8 41 82 01 5C */ beq lbl_8001C0D4 +/* 8001BF7C 00018EDC 40 80 00 18 */ bge lbl_8001BF94 +/* 8001BF80 00018EE0 48 00 01 54 */ b lbl_8001C0D4 +lbl_8001BF84: +/* 8001BF84 00018EE4 2C 00 00 04 */ cmpwi r0, 4 +/* 8001BF88 00018EE8 41 82 00 C0 */ beq lbl_8001C048 +/* 8001BF8C 00018EEC 40 80 01 48 */ bge lbl_8001C0D4 +/* 8001BF90 00018EF0 48 00 00 28 */ b lbl_8001BFB8 +lbl_8001BF94: +/* 8001BF94 00018EF4 2C 1F 00 03 */ cmpwi r31, 3 +/* 8001BF98 00018EF8 40 82 01 3C */ bne lbl_8001C0D4 +/* 8001BF9C 00018EFC 38 80 00 02 */ li r4, 2 +/* 8001BFA0 00018F00 4B FF FC 7D */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001BFA4 00018F04 80 7E 00 CC */ lwz r3, 0xcc(r30) +/* 8001BFA8 00018F08 48 33 FC 35 */ bl GetTotalSeconds__12CMoviePlayerCFv +/* 8001BFAC 00018F0C 7F C3 F3 78 */ mr r3, r30 +/* 8001BFB0 00018F10 4B FF FB DD */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001BFB4 00018F14 48 00 01 20 */ b lbl_8001C0D4 +lbl_8001BFB8: +/* 8001BFB8 00018F18 2C 1F 00 05 */ cmpwi r31, 5 +/* 8001BFBC 00018F1C 40 82 00 20 */ bne lbl_8001BFDC +/* 8001BFC0 00018F20 38 80 00 04 */ li r4, 4 +/* 8001BFC4 00018F24 4B FF FC 59 */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001BFC8 00018F28 80 7E 00 CC */ lwz r3, 0xcc(r30) +/* 8001BFCC 00018F2C 48 33 FC 11 */ bl GetTotalSeconds__12CMoviePlayerCFv +/* 8001BFD0 00018F30 7F C3 F3 78 */ mr r3, r30 +/* 8001BFD4 00018F34 4B FF FB B9 */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001BFD8 00018F38 48 00 00 FC */ b lbl_8001C0D4 +lbl_8001BFDC: +/* 8001BFDC 00018F3C 2C 1F 00 04 */ cmpwi r31, 4 +/* 8001BFE0 00018F40 40 82 00 F4 */ bne lbl_8001C0D4 +/* 8001BFE4 00018F44 38 80 00 05 */ li r4, 5 +/* 8001BFE8 00018F48 4B FF FC 35 */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001BFEC 00018F4C 80 7E 00 CC */ lwz r3, 0xcc(r30) +/* 8001BFF0 00018F50 48 33 FB ED */ bl GetTotalSeconds__12CMoviePlayerCFv +/* 8001BFF4 00018F54 7F C3 F3 78 */ mr r3, r30 +/* 8001BFF8 00018F58 4B FF FB 95 */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001BFFC 00018F5C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001C000 00018F60 38 61 00 14 */ addi r3, r1, 0x14 +/* 8001C004 00018F64 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001C008 00018F68 38 80 04 54 */ li r4, 0x454 +/* 8001C00C 00018F6C 38 A0 00 7F */ li r5, 0x7f +/* 8001C010 00018F70 38 C0 00 40 */ li r6, 0x40 +/* 8001C014 00018F74 38 E0 00 00 */ li r7, 0 +/* 8001C018 00018F78 39 20 00 00 */ li r9, 0 +/* 8001C01C 00018F7C 48 2C DD 59 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001C020 00018F80 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001C024 00018F84 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001C028 00018F88 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001C02C 00018F8C 38 80 04 55 */ li r4, 0x455 +/* 8001C030 00018F90 38 A0 00 7F */ li r5, 0x7f +/* 8001C034 00018F94 38 C0 00 40 */ li r6, 0x40 +/* 8001C038 00018F98 38 E0 00 00 */ li r7, 0 +/* 8001C03C 00018F9C 39 20 00 00 */ li r9, 0 +/* 8001C040 00018FA0 48 2C DD 35 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001C044 00018FA4 48 00 00 90 */ b lbl_8001C0D4 +lbl_8001C048: +/* 8001C048 00018FA8 2C 1F 00 05 */ cmpwi r31, 5 +/* 8001C04C 00018FAC 40 82 00 20 */ bne lbl_8001C06C +/* 8001C050 00018FB0 38 80 00 08 */ li r4, 8 +/* 8001C054 00018FB4 4B FF FB C9 */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001C058 00018FB8 80 7E 00 CC */ lwz r3, 0xcc(r30) +/* 8001C05C 00018FBC 48 33 FB 81 */ bl GetTotalSeconds__12CMoviePlayerCFv +/* 8001C060 00018FC0 7F C3 F3 78 */ mr r3, r30 +/* 8001C064 00018FC4 4B FF FB 29 */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001C068 00018FC8 48 00 00 6C */ b lbl_8001C0D4 +lbl_8001C06C: +/* 8001C06C 00018FCC 2C 1F 00 03 */ cmpwi r31, 3 +/* 8001C070 00018FD0 40 82 00 64 */ bne lbl_8001C0D4 +/* 8001C074 00018FD4 38 80 00 07 */ li r4, 7 +/* 8001C078 00018FD8 4B FF FB A5 */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001C07C 00018FDC 80 7E 00 CC */ lwz r3, 0xcc(r30) +/* 8001C080 00018FE0 48 33 FB 5D */ bl GetTotalSeconds__12CMoviePlayerCFv +/* 8001C084 00018FE4 7F C3 F3 78 */ mr r3, r30 +/* 8001C088 00018FE8 4B FF FB 05 */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001C08C 00018FEC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001C090 00018FF0 38 61 00 0C */ addi r3, r1, 0xc +/* 8001C094 00018FF4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001C098 00018FF8 38 80 04 56 */ li r4, 0x456 +/* 8001C09C 00018FFC 38 A0 00 7F */ li r5, 0x7f +/* 8001C0A0 00019000 38 C0 00 40 */ li r6, 0x40 +/* 8001C0A4 00019004 38 E0 00 00 */ li r7, 0 +/* 8001C0A8 00019008 39 20 00 00 */ li r9, 0 +/* 8001C0AC 0001900C 48 2C DC C9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001C0B0 00019010 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001C0B4 00019014 38 61 00 08 */ addi r3, r1, 8 +/* 8001C0B8 00019018 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001C0BC 0001901C 38 80 04 57 */ li r4, 0x457 +/* 8001C0C0 00019020 38 A0 00 7F */ li r5, 0x7f +/* 8001C0C4 00019024 38 C0 00 40 */ li r6, 0x40 +/* 8001C0C8 00019028 38 E0 00 00 */ li r7, 0 +/* 8001C0CC 0001902C 39 20 00 00 */ li r9, 0 +/* 8001C0D0 00019030 48 2C DC A5 */ bl SfxStart__11CSfxManagerFUsssbsbi +lbl_8001C0D4: +/* 8001C0D4 00019034 2C 1F 00 02 */ cmpwi r31, 2 +/* 8001C0D8 00019038 41 82 00 38 */ beq lbl_8001C110 +/* 8001C0DC 0001903C 40 80 00 44 */ bge lbl_8001C120 +/* 8001C0E0 00019040 2C 1F 00 00 */ cmpwi r31, 0 +/* 8001C0E4 00019044 40 80 00 0C */ bge lbl_8001C0F0 +/* 8001C0E8 00019048 48 00 00 38 */ b lbl_8001C120 +/* 8001C0EC 0001904C 48 00 00 34 */ b lbl_8001C120 +lbl_8001C0F0: +/* 8001C0F0 00019050 7F C3 F3 78 */ mr r3, r30 +/* 8001C0F4 00019054 38 80 00 00 */ li r4, 0 +/* 8001C0F8 00019058 4B FF FB 25 */ bl SetCurrentMovie__11CFrontEndUIFQ211CFrontEndUI10EMenuMovie +/* 8001C0FC 0001905C 80 7E 00 CC */ lwz r3, 0xcc(r30) +/* 8001C100 00019060 48 33 FA DD */ bl GetTotalSeconds__12CMoviePlayerCFv +/* 8001C104 00019064 7F C3 F3 78 */ mr r3, r30 +/* 8001C108 00019068 4B FF FA 85 */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001C10C 0001906C 48 00 00 14 */ b lbl_8001C120 +lbl_8001C110: +/* 8001C110 00019070 7F C3 F3 78 */ mr r3, r30 +/* 8001C114 00019074 4B FF FC 45 */ bl StartAttractMovie__11CFrontEndUIFi +/* 8001C118 00019078 7F C3 F3 78 */ mr r3, r30 +/* 8001C11C 0001907C 4B FF FA 5D */ bl SetFadeBlackWithMovie__11CFrontEndUIFv +lbl_8001C120: +/* 8001C120 00019080 93 FE 00 54 */ stw r31, 0x54(r30) +/* 8001C124 00019084 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001C128 00019088 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001C12C 0001908C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001C130 00019090 7C 08 03 A6 */ mtlr r0 +/* 8001C134 00019094 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001C138 00019098 4E 80 00 20 */ blr + +.global CanShowSaveUI__11CFrontEndUIFv +CanShowSaveUI__11CFrontEndUIFv: +/* 8001C13C 0001909C 80 83 00 50 */ lwz r4, 0x50(r3) +/* 8001C140 000190A0 38 00 00 00 */ li r0, 0 +/* 8001C144 000190A4 2C 04 00 03 */ cmpwi r4, 3 +/* 8001C148 000190A8 41 82 00 0C */ beq lbl_8001C154 +/* 8001C14C 000190AC 2C 04 00 04 */ cmpwi r4, 4 +/* 8001C150 000190B0 40 82 00 1C */ bne lbl_8001C16C +lbl_8001C154: +/* 8001C154 000190B4 80 63 00 54 */ lwz r3, 0x54(r3) +/* 8001C158 000190B8 2C 03 00 03 */ cmpwi r3, 3 +/* 8001C15C 000190BC 41 82 00 0C */ beq lbl_8001C168 +/* 8001C160 000190C0 2C 03 00 04 */ cmpwi r3, 4 +/* 8001C164 000190C4 40 82 00 08 */ bne lbl_8001C16C +lbl_8001C168: +/* 8001C168 000190C8 38 00 00 01 */ li r0, 1 +lbl_8001C16C: +/* 8001C16C 000190CC 7C 03 03 78 */ mr r3, r0 +/* 8001C170 000190D0 4E 80 00 20 */ blr + +.global Draw__11CFrontEndUICFv +Draw__11CFrontEndUICFv: +/* 8001C174 000190D4 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8001C178 000190D8 7C 08 02 A6 */ mflr r0 +/* 8001C17C 000190DC 90 01 01 04 */ stw r0, 0x104(r1) +/* 8001C180 000190E0 DB E1 00 F0 */ stfd f31, 0xf0(r1) +/* 8001C184 000190E4 F3 E1 00 F8 */ psq_st f31, 248(r1), 0, qr0 +/* 8001C188 000190E8 DB C1 00 E0 */ stfd f30, 0xe0(r1) +/* 8001C18C 000190EC F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 +/* 8001C190 000190F0 DB A1 00 D0 */ stfd f29, 0xd0(r1) +/* 8001C194 000190F4 F3 A1 00 D8 */ psq_st f29, 216(r1), 0, qr0 +/* 8001C198 000190F8 DB 81 00 C0 */ stfd f28, 0xc0(r1) +/* 8001C19C 000190FC F3 81 00 C8 */ psq_st f28, 200(r1), 0, qr0 +/* 8001C1A0 00019100 BF 41 00 A8 */ stmw r26, 0xa8(r1) +/* 8001C1A4 00019104 7C 7F 1B 78 */ mr r31, r3 +/* 8001C1A8 00019108 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8001C1AC 0001910C 2C 00 00 04 */ cmpwi r0, 4 +/* 8001C1B0 00019110 41 80 04 F0 */ blt lbl_8001C6A0 +/* 8001C1B4 00019114 80 7F 00 EC */ lwz r3, 0xec(r31) +/* 8001C1B8 00019118 28 03 00 00 */ cmplwi r3, 0 +/* 8001C1BC 0001911C 41 82 00 10 */ beq lbl_8001C1CC +/* 8001C1C0 00019120 80 9F 00 DC */ lwz r4, 0xdc(r31) +/* 8001C1C4 00019124 48 00 61 01 */ bl Draw__17SNesEmulatorFrameFRC15CSaveGameScreen +/* 8001C1C8 00019128 48 00 02 14 */ b lbl_8001C3DC +lbl_8001C1CC: +/* 8001C1CC 0001912C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8001C1D0 00019130 38 80 00 00 */ li r4, 0 +/* 8001C1D4 00019134 38 A0 00 00 */ li r5, 0 +/* 8001C1D8 00019138 81 83 00 00 */ lwz r12, 0(r3) +/* 8001C1DC 0001913C 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 8001C1E0 00019140 7D 89 03 A6 */ mtctr r12 +/* 8001C1E4 00019144 4E 80 04 21 */ bctrl +/* 8001C1E8 00019148 80 8D A0 68 */ lwz r4, gpRender@sda21(r13) +/* 8001C1EC 0001914C 38 61 00 20 */ addi r3, r1, 0x20 +/* 8001C1F0 00019150 C0 22 82 A4 */ lfs f1, lbl_805A9FC4@sda21(r2) +/* 8001C1F4 00019154 38 A0 00 00 */ li r5, 0 +/* 8001C1F8 00019158 81 84 00 00 */ lwz r12, 0(r4) +/* 8001C1FC 0001915C C0 42 82 A8 */ lfs f2, lbl_805A9FC8@sda21(r2) +/* 8001C200 00019160 81 8C 00 54 */ lwz r12, 0x54(r12) +/* 8001C204 00019164 7D 89 03 A6 */ mtctr r12 +/* 8001C208 00019168 4E 80 04 21 */ bctrl +/* 8001C20C 0001916C 80 7F 00 CC */ lwz r3, 0xcc(r31) +/* 8001C210 00019170 3C 80 80 3F */ lis r4, lbl_803F0004@ha +/* 8001C214 00019174 87 84 D9 10 */ lwzu r28, -0x26f0(r4) +/* 8001C218 00019178 28 03 00 00 */ cmplwi r3, 0 +/* 8001C21C 0001917C 83 A4 00 04 */ lwz r29, lbl_803F0004@l(r4) +/* 8001C220 00019180 83 64 00 08 */ lwz r27, 8(r4) +/* 8001C224 00019184 83 44 00 0C */ lwz r26, 0xc(r4) +/* 8001C228 00019188 41 82 01 2C */ beq lbl_8001C354 +/* 8001C22C 0001918C 80 03 00 AC */ lwz r0, 0xac(r3) +/* 8001C230 00019190 28 00 00 00 */ cmplwi r0, 0 +/* 8001C234 00019194 40 82 01 20 */ bne lbl_8001C354 +/* 8001C238 00019198 48 33 F3 ED */ bl sub_8035b624 +/* 8001C23C 0001919C 7C 7E 1B 78 */ mr r30, r3 +/* 8001C240 000191A0 80 7F 00 CC */ lwz r3, 0xcc(r31) +/* 8001C244 000191A4 48 33 F3 D9 */ bl sub_8035b61c +/* 8001C248 000191A8 7C 1A 18 50 */ subf r0, r26, r3 +/* 8001C24C 000191AC 7C 7B F0 50 */ subf r3, r27, r30 +/* 8001C250 000191B0 54 63 F8 7E */ srwi r3, r3, 1 +/* 8001C254 000191B4 3D 40 43 30 */ lis r10, 0x4330 +/* 8001C258 000191B8 54 00 F8 7E */ srwi r0, r0, 1 +/* 8001C25C 000191BC C0 E2 82 9C */ lfs f7, lbl_805A9FBC@sda21(r2) +/* 8001C260 000191C0 7C 9B 1A 14 */ add r4, r27, r3 +/* 8001C264 000191C4 7C 63 E0 50 */ subf r3, r3, r28 +/* 8001C268 000191C8 6C 6B 80 00 */ xoris r11, r3, 0x8000 +/* 8001C26C 000191CC 7C 7A 02 14 */ add r3, r26, r0 +/* 8001C270 000191D0 7C 9C 22 14 */ add r4, r28, r4 +/* 8001C274 000191D4 7C 00 E8 50 */ subf r0, r0, r29 +/* 8001C278 000191D8 6C 88 80 00 */ xoris r8, r4, 0x8000 +/* 8001C27C 000191DC 7C 7D 1A 14 */ add r3, r29, r3 +/* 8001C280 000191E0 6C 69 80 00 */ xoris r9, r3, 0x8000 +/* 8001C284 000191E4 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8001C288 000191E8 91 61 00 64 */ stw r11, 0x64(r1) +/* 8001C28C 000191EC 38 81 00 54 */ addi r4, r1, 0x54 +/* 8001C290 000191F0 C9 22 82 B8 */ lfd f9, lbl_805A9FD8@sda21(r2) +/* 8001C294 000191F4 38 A1 00 48 */ addi r5, r1, 0x48 +/* 8001C298 000191F8 91 41 00 60 */ stw r10, 0x60(r1) +/* 8001C29C 000191FC 38 C1 00 3C */ addi r6, r1, 0x3c +/* 8001C2A0 00019200 80 7F 00 CC */ lwz r3, 0xcc(r31) +/* 8001C2A4 00019204 38 E1 00 30 */ addi r7, r1, 0x30 +/* 8001C2A8 00019208 C8 01 00 60 */ lfd f0, 0x60(r1) +/* 8001C2AC 0001920C 91 21 00 6C */ stw r9, 0x6c(r1) +/* 8001C2B0 00019210 ED 00 48 28 */ fsubs f8, f0, f9 +/* 8001C2B4 00019214 91 41 00 68 */ stw r10, 0x68(r1) +/* 8001C2B8 00019218 C8 01 00 68 */ lfd f0, 0x68(r1) +/* 8001C2BC 0001921C 91 01 00 74 */ stw r8, 0x74(r1) +/* 8001C2C0 00019220 EC C0 48 28 */ fsubs f6, f0, f9 +/* 8001C2C4 00019224 91 41 00 70 */ stw r10, 0x70(r1) +/* 8001C2C8 00019228 C8 01 00 70 */ lfd f0, 0x70(r1) +/* 8001C2CC 0001922C 91 21 00 7C */ stw r9, 0x7c(r1) +/* 8001C2D0 00019230 EC A0 48 28 */ fsubs f5, f0, f9 +/* 8001C2D4 00019234 91 41 00 78 */ stw r10, 0x78(r1) +/* 8001C2D8 00019238 C8 01 00 78 */ lfd f0, 0x78(r1) +/* 8001C2DC 0001923C 91 61 00 84 */ stw r11, 0x84(r1) +/* 8001C2E0 00019240 EC 80 48 28 */ fsubs f4, f0, f9 +/* 8001C2E4 00019244 91 41 00 80 */ stw r10, 0x80(r1) +/* 8001C2E8 00019248 C8 01 00 80 */ lfd f0, 0x80(r1) +/* 8001C2EC 0001924C 90 01 00 8C */ stw r0, 0x8c(r1) +/* 8001C2F0 00019250 EC 60 48 28 */ fsubs f3, f0, f9 +/* 8001C2F4 00019254 91 41 00 88 */ stw r10, 0x88(r1) +/* 8001C2F8 00019258 C8 01 00 88 */ lfd f0, 0x88(r1) +/* 8001C2FC 0001925C 91 01 00 94 */ stw r8, 0x94(r1) +/* 8001C300 00019260 EC 40 48 28 */ fsubs f2, f0, f9 +/* 8001C304 00019264 91 41 00 90 */ stw r10, 0x90(r1) +/* 8001C308 00019268 C8 01 00 90 */ lfd f0, 0x90(r1) +/* 8001C30C 0001926C 90 01 00 9C */ stw r0, 0x9c(r1) +/* 8001C310 00019270 EC 20 48 28 */ fsubs f1, f0, f9 +/* 8001C314 00019274 91 41 00 98 */ stw r10, 0x98(r1) +/* 8001C318 00019278 C8 01 00 98 */ lfd f0, 0x98(r1) +/* 8001C31C 0001927C D1 01 00 54 */ stfs f8, 0x54(r1) +/* 8001C320 00019280 EC 00 48 28 */ fsubs f0, f0, f9 +/* 8001C324 00019284 D0 E1 00 58 */ stfs f7, 0x58(r1) +/* 8001C328 00019288 D0 C1 00 5C */ stfs f6, 0x5c(r1) +/* 8001C32C 0001928C D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 8001C330 00019290 D0 E1 00 4C */ stfs f7, 0x4c(r1) +/* 8001C334 00019294 D0 81 00 50 */ stfs f4, 0x50(r1) +/* 8001C338 00019298 D0 61 00 3C */ stfs f3, 0x3c(r1) +/* 8001C33C 0001929C D0 E1 00 40 */ stfs f7, 0x40(r1) +/* 8001C340 000192A0 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8001C344 000192A4 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8001C348 000192A8 D0 E1 00 34 */ stfs f7, 0x34(r1) +/* 8001C34C 000192AC D0 01 00 38 */ stfs f0, 0x38(r1) +/* 8001C350 000192B0 48 33 F8 9D */ bl DrawFrame__12CMoviePlayerFRC9CVector3fRC9CVector3fRC9CVector3fRC9CVector3f +lbl_8001C354: +/* 8001C354 000192B4 80 9F 00 50 */ lwz r4, 0x50(r31) +/* 8001C358 000192B8 38 60 00 00 */ li r3, 0 +/* 8001C35C 000192BC 2C 04 00 03 */ cmpwi r4, 3 +/* 8001C360 000192C0 40 82 00 14 */ bne lbl_8001C374 +/* 8001C364 000192C4 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001C368 000192C8 2C 00 00 03 */ cmpwi r0, 3 +/* 8001C36C 000192CC 40 82 00 08 */ bne lbl_8001C374 +/* 8001C370 000192D0 38 60 00 01 */ li r3, 1 +lbl_8001C374: +/* 8001C374 000192D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001C378 000192D8 41 82 00 38 */ beq lbl_8001C3B0 +/* 8001C37C 000192DC 80 7F 00 F0 */ lwz r3, 0xf0(r31) +/* 8001C380 000192E0 28 03 00 00 */ cmplwi r3, 0 +/* 8001C384 000192E4 40 82 00 24 */ bne lbl_8001C3A8 +/* 8001C388 000192E8 80 7F 00 E0 */ lwz r3, 0xe0(r31) +/* 8001C38C 000192EC 28 03 00 00 */ cmplwi r3, 0 +/* 8001C390 000192F0 40 82 00 10 */ bne lbl_8001C3A0 +/* 8001C394 000192F4 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 8001C398 000192F8 48 00 4F DD */ bl Draw__14SFrontEndFrameFv +/* 8001C39C 000192FC 48 00 00 40 */ b lbl_8001C3DC +lbl_8001C3A0: +/* 8001C3A0 00019300 48 00 3F 35 */ bl Draw__19SNewFileSelectFrameFv +/* 8001C3A4 00019304 48 00 00 38 */ b lbl_8001C3DC +lbl_8001C3A8: +/* 8001C3A8 00019308 48 22 58 39 */ bl Draw__21SOptionsFrontEndFrameFv +/* 8001C3AC 0001930C 48 00 00 30 */ b lbl_8001C3DC +lbl_8001C3B0: +/* 8001C3B0 00019310 2C 04 00 04 */ cmpwi r4, 4 +/* 8001C3B4 00019314 38 60 00 00 */ li r3, 0 +/* 8001C3B8 00019318 40 82 00 14 */ bne lbl_8001C3CC +/* 8001C3BC 0001931C 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001C3C0 00019320 2C 00 00 04 */ cmpwi r0, 4 +/* 8001C3C4 00019324 40 82 00 08 */ bne lbl_8001C3CC +/* 8001C3C8 00019328 38 60 00 01 */ li r3, 1 +lbl_8001C3CC: +/* 8001C3CC 0001932C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001C3D0 00019330 41 82 00 0C */ beq lbl_8001C3DC +/* 8001C3D4 00019334 80 7F 00 E4 */ lwz r3, 0xe4(r31) +/* 8001C3D8 00019338 48 00 27 39 */ bl Draw__17SFusionBonusFrameFv +lbl_8001C3DC: +/* 8001C3DC 0001933C C0 3F 00 64 */ lfs f1, 0x64(r31) +/* 8001C3E0 00019340 C0 02 82 9C */ lfs f0, lbl_805A9FBC@sda21(r2) +/* 8001C3E4 00019344 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001C3E8 00019348 40 81 00 BC */ ble lbl_8001C4A4 +/* 8001C3EC 0001934C 83 9F 00 40 */ lwz r28, 0x40(r31) +/* 8001C3F0 00019350 28 1C 00 00 */ cmplwi r28, 0 +/* 8001C3F4 00019354 41 82 00 B0 */ beq lbl_8001C4A4 +/* 8001C3F8 00019358 3C 60 80 5A */ lis r3, lbl_805A5EBC@ha +/* 8001C3FC 0001935C AB DC 00 04 */ lha r30, 4(r28) +/* 8001C400 00019360 38 83 5E BC */ addi r4, r3, lbl_805A5EBC@l +/* 8001C404 00019364 AB BC 00 06 */ lha r29, 6(r28) +/* 8001C408 00019368 38 60 00 00 */ li r3, 0 +/* 8001C40C 0001936C 48 2E DE AD */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 8001C410 00019370 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) +/* 8001C414 00019374 38 60 00 01 */ li r3, 1 +/* 8001C418 00019378 48 2E DE A1 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass +/* 8001C41C 0001937C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8001C420 00019380 81 83 00 00 */ lwz r12, 0(r3) +/* 8001C424 00019384 81 8C 00 64 */ lwz r12, 0x64(r12) +/* 8001C428 00019388 7D 89 03 A6 */ mtctr r12 +/* 8001C42C 0001938C 4E 80 04 21 */ bctrl +/* 8001C430 00019390 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 8001C434 00019394 38 80 00 00 */ li r4, 0 +/* 8001C438 00019398 38 A0 00 00 */ li r5, 0 +/* 8001C43C 0001939C 81 83 00 00 */ lwz r12, 0(r3) +/* 8001C440 000193A0 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 8001C444 000193A4 7D 89 03 A6 */ mtctr r12 +/* 8001C448 000193A8 4E 80 04 21 */ bctrl +/* 8001C44C 000193AC C3 9F 00 64 */ lfs f28, 0x64(r31) +/* 8001C450 000193B0 48 32 DB 5D */ bl White__6CColorFv +/* 8001C454 000193B4 C0 02 82 AC */ lfs f0, lbl_805A9FCC@sda21(r2) +/* 8001C458 000193B8 EF E0 07 32 */ fmuls f31, f0, f28 +/* 8001C45C 000193BC F3 E1 A0 0B */ psq_st f31, 11(r1), 1, qr2 +/* 8001C460 000193C0 57 C0 0F FE */ srwi r0, r30, 0x1f +/* 8001C464 000193C4 80 C3 00 00 */ lwz r6, 0(r3) +/* 8001C468 000193C8 7C 00 F2 14 */ add r0, r0, r30 +/* 8001C46C 000193CC 7C 04 0E 70 */ srawi r4, r0, 1 +/* 8001C470 000193D0 88 A1 00 0B */ lbz r5, 0xb(r1) +/* 8001C474 000193D4 50 C5 00 2E */ rlwimi r5, r6, 0, 0, 0x17 +/* 8001C478 000193D8 57 A0 0F FE */ srwi r0, r29, 0x1f +/* 8001C47C 000193DC 20 84 01 40 */ subfic r4, r4, 0x140 +/* 8001C480 000193E0 90 A1 00 1C */ stw r5, 0x1c(r1) +/* 8001C484 000193E4 7C 00 EA 14 */ add r0, r0, r29 +/* 8001C488 000193E8 7F 83 E3 78 */ mr r3, r28 +/* 8001C48C 000193EC 7C 00 0E 70 */ srawi r0, r0, 1 +/* 8001C490 000193F0 7F C6 F3 78 */ mr r6, r30 +/* 8001C494 000193F4 7F A7 EB 78 */ mr r7, r29 +/* 8001C498 000193F8 39 01 00 1C */ addi r8, r1, 0x1c +/* 8001C49C 000193FC 20 A0 00 48 */ subfic r5, r0, 0x48 +/* 8001C4A0 00019400 48 2E F2 BD */ bl Render2D__9CGraphicsFRC8CTextureiiiiRC6CColor +lbl_8001C4A4: +/* 8001C4A4 00019404 80 1F 00 C0 */ lwz r0, 0xc0(r31) +/* 8001C4A8 00019408 2C 00 00 00 */ cmpwi r0, 0 +/* 8001C4AC 0001940C 40 81 00 84 */ ble lbl_8001C530 +/* 8001C4B0 00019410 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 8001C4B4 00019414 38 60 00 00 */ li r3, 0 +/* 8001C4B8 00019418 2C 00 00 01 */ cmpwi r0, 1 +/* 8001C4BC 0001941C 40 82 00 14 */ bne lbl_8001C4D0 +/* 8001C4C0 00019420 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001C4C4 00019424 2C 00 00 01 */ cmpwi r0, 1 +/* 8001C4C8 00019428 40 82 00 08 */ bne lbl_8001C4D0 +/* 8001C4CC 0001942C 38 60 00 01 */ li r3, 1 +lbl_8001C4D0: +/* 8001C4D0 00019430 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001C4D4 00019434 40 82 00 10 */ bne lbl_8001C4E4 +/* 8001C4D8 00019438 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001C4DC 0001943C 2C 00 00 02 */ cmpwi r0, 2 +/* 8001C4E0 00019440 40 82 00 50 */ bne lbl_8001C530 +lbl_8001C4E4: +/* 8001C4E4 00019444 C3 9F 00 58 */ lfs f28, 0x58(r31) +/* 8001C4E8 00019448 C0 02 82 B0 */ lfs f0, lbl_805A9FD0@sda21(r2) +/* 8001C4EC 0001944C FC 1C 00 40 */ fcmpo cr0, f28, f0 +/* 8001C4F0 00019450 40 80 00 40 */ bge lbl_8001C530 +/* 8001C4F4 00019454 48 32 DA C1 */ bl Black__6CColorFv +/* 8001C4F8 00019458 C0 22 82 B0 */ lfs f1, lbl_805A9FD0@sda21(r2) +/* 8001C4FC 0001945C C0 42 82 AC */ lfs f2, lbl_805A9FCC@sda21(r2) +/* 8001C500 00019460 EC 01 E0 28 */ fsubs f0, f1, f28 +/* 8001C504 00019464 EF C2 00 32 */ fmuls f30, f2, f0 +/* 8001C508 00019468 F3 C1 A0 0A */ psq_st f30, 10(r1), 1, qr2 +/* 8001C50C 0001946C 38 A1 00 18 */ addi r5, r1, 0x18 +/* 8001C510 00019470 80 C3 00 00 */ lwz r6, 0(r3) +/* 8001C514 00019474 38 60 00 05 */ li r3, 5 +/* 8001C518 00019478 88 01 00 0A */ lbz r0, 0xa(r1) +/* 8001C51C 0001947C 38 80 00 00 */ li r4, 0 +/* 8001C520 00019480 50 C0 00 2E */ rlwimi r0, r6, 0, 0, 0x17 +/* 8001C524 00019484 38 C0 00 00 */ li r6, 0 +/* 8001C528 00019488 90 01 00 18 */ stw r0, 0x18(r1) +/* 8001C52C 0001948C 48 0C FC 1D */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef +lbl_8001C530: +/* 8001C530 00019490 88 1F 00 D0 */ lbz r0, 0xd0(r31) +/* 8001C534 00019494 28 00 00 00 */ cmplwi r0, 0 +/* 8001C538 00019498 41 82 00 E4 */ beq lbl_8001C61C +/* 8001C53C 0001949C 80 7F 00 54 */ lwz r3, 0x54(r31) +/* 8001C540 000194A0 2C 03 00 01 */ cmpwi r3, 1 +/* 8001C544 000194A4 40 82 00 64 */ bne lbl_8001C5A8 +/* 8001C548 000194A8 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 8001C54C 000194AC 2C 00 00 00 */ cmpwi r0, 0 +/* 8001C550 000194B0 40 82 00 58 */ bne lbl_8001C5A8 +/* 8001C554 000194B4 38 9F 00 58 */ addi r4, r31, 0x58 +/* 8001C558 000194B8 38 6D 81 34 */ addi r3, r13, lbl_805A6CF4@sda21 +/* 8001C55C 000194BC 38 AD 81 38 */ addi r5, r13, lbl_805A6CF8@sda21 +/* 8001C560 000194C0 4B FE FD 55 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8001C564 000194C4 C3 83 00 00 */ lfs f28, 0(r3) +/* 8001C568 000194C8 48 32 DA 4D */ bl Black__6CColorFv +/* 8001C56C 000194CC C0 22 82 B0 */ lfs f1, lbl_805A9FD0@sda21(r2) +/* 8001C570 000194D0 C0 42 82 AC */ lfs f2, lbl_805A9FCC@sda21(r2) +/* 8001C574 000194D4 EC 01 E0 28 */ fsubs f0, f1, f28 +/* 8001C578 000194D8 EF A2 00 32 */ fmuls f29, f2, f0 +/* 8001C57C 000194DC F3 A1 A0 09 */ psq_st f29, 9(r1), 1, qr2 +/* 8001C580 000194E0 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8001C584 000194E4 80 C3 00 00 */ lwz r6, 0(r3) +/* 8001C588 000194E8 38 60 00 05 */ li r3, 5 +/* 8001C58C 000194EC 88 01 00 09 */ lbz r0, 9(r1) +/* 8001C590 000194F0 38 80 00 00 */ li r4, 0 +/* 8001C594 000194F4 50 C0 00 2E */ rlwimi r0, r6, 0, 0, 0x17 +/* 8001C598 000194F8 38 C0 00 00 */ li r6, 0 +/* 8001C59C 000194FC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001C5A0 00019500 48 0C FB A9 */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef +/* 8001C5A4 00019504 48 00 00 78 */ b lbl_8001C61C +lbl_8001C5A8: +/* 8001C5A8 00019508 2C 03 00 01 */ cmpwi r3, 1 +/* 8001C5AC 0001950C 40 82 00 70 */ bne lbl_8001C61C +/* 8001C5B0 00019510 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 8001C5B4 00019514 2C 00 00 01 */ cmpwi r0, 1 +/* 8001C5B8 00019518 40 82 00 64 */ bne lbl_8001C61C +/* 8001C5BC 0001951C C0 22 82 A0 */ lfs f1, lbl_805A9FC0@sda21(r2) +/* 8001C5C0 00019520 38 81 00 10 */ addi r4, r1, 0x10 +/* 8001C5C4 00019524 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 8001C5C8 00019528 38 6D 81 3C */ addi r3, r13, lbl_805A6CFC@sda21 +/* 8001C5CC 0001952C 38 AD 81 40 */ addi r5, r13, lbl_805A6D00@sda21 +/* 8001C5D0 00019530 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8001C5D4 00019534 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 8001C5D8 00019538 4B FE FC DD */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8001C5DC 0001953C C3 83 00 00 */ lfs f28, 0(r3) +/* 8001C5E0 00019540 48 32 D9 D5 */ bl Black__6CColorFv +/* 8001C5E4 00019544 C0 22 82 B0 */ lfs f1, lbl_805A9FD0@sda21(r2) +/* 8001C5E8 00019548 C0 42 82 AC */ lfs f2, lbl_805A9FCC@sda21(r2) +/* 8001C5EC 0001954C EC 01 E0 28 */ fsubs f0, f1, f28 +/* 8001C5F0 00019550 EF A2 00 32 */ fmuls f29, f2, f0 +/* 8001C5F4 00019554 F3 A1 A0 08 */ psq_st f29, 8(r1), 1, qr2 +/* 8001C5F8 00019558 38 A1 00 0C */ addi r5, r1, 0xc +/* 8001C5FC 0001955C 80 C3 00 00 */ lwz r6, 0(r3) +/* 8001C600 00019560 38 60 00 05 */ li r3, 5 +/* 8001C604 00019564 88 01 00 08 */ lbz r0, 8(r1) +/* 8001C608 00019568 38 80 00 00 */ li r4, 0 +/* 8001C60C 0001956C 50 C0 00 2E */ rlwimi r0, r6, 0, 0, 0x17 +/* 8001C610 00019570 38 C0 00 00 */ li r6, 0 +/* 8001C614 00019574 90 01 00 0C */ stw r0, 0xc(r1) +/* 8001C618 00019578 48 0C FB 31 */ bl DrawFilter__17CCameraFilterPassFQ217CCameraFilterPass11EFilterTypeQ217CCameraFilterPass12EFilterShapeRC6CColorPC8CTexturef +lbl_8001C61C: +/* 8001C61C 0001957C 80 7F 00 DC */ lwz r3, 0xdc(r31) +/* 8001C620 00019580 28 03 00 00 */ cmplwi r3, 0 +/* 8001C624 00019584 41 82 00 7C */ beq lbl_8001C6A0 +/* 8001C628 00019588 83 A3 00 10 */ lwz r29, 0x10(r3) +/* 8001C62C 0001958C 7F E3 FB 78 */ mr r3, r31 +/* 8001C630 00019590 4B FF FB 0D */ bl CanShowSaveUI__11CFrontEndUIFv +/* 8001C634 00019594 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001C638 00019598 41 82 00 14 */ beq lbl_8001C64C +/* 8001C63C 0001959C 7F A3 EB 78 */ mr r3, r29 +/* 8001C640 000195A0 48 23 43 15 */ bl IsHiddenFromFrontEnd__15CSaveGameScreenFv +/* 8001C644 000195A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001C648 000195A8 41 82 00 50 */ beq lbl_8001C698 +lbl_8001C64C: +/* 8001C64C 000195AC 80 9F 00 50 */ lwz r4, 0x50(r31) +/* 8001C650 000195B0 38 60 00 00 */ li r3, 0 +/* 8001C654 000195B4 2C 04 00 03 */ cmpwi r4, 3 +/* 8001C658 000195B8 40 82 00 14 */ bne lbl_8001C66C +/* 8001C65C 000195BC 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001C660 000195C0 2C 00 00 03 */ cmpwi r0, 3 +/* 8001C664 000195C4 40 82 00 08 */ bne lbl_8001C66C +/* 8001C668 000195C8 38 60 00 01 */ li r3, 1 +lbl_8001C66C: +/* 8001C66C 000195CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001C670 000195D0 40 82 00 28 */ bne lbl_8001C698 +/* 8001C674 000195D4 2C 04 00 04 */ cmpwi r4, 4 +/* 8001C678 000195D8 38 60 00 00 */ li r3, 0 +/* 8001C67C 000195DC 40 82 00 14 */ bne lbl_8001C690 +/* 8001C680 000195E0 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001C684 000195E4 2C 00 00 04 */ cmpwi r0, 4 +/* 8001C688 000195E8 40 82 00 08 */ bne lbl_8001C690 +/* 8001C68C 000195EC 38 60 00 01 */ li r3, 1 +lbl_8001C690: +/* 8001C690 000195F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001C694 000195F4 41 82 00 0C */ beq lbl_8001C6A0 +lbl_8001C698: +/* 8001C698 000195F8 80 7F 00 DC */ lwz r3, 0xdc(r31) +/* 8001C69C 000195FC 48 23 30 85 */ bl Draw__15CSaveGameScreenFv +lbl_8001C6A0: +/* 8001C6A0 00019600 E3 E1 00 F8 */ psq_l f31, 248(r1), 0, qr0 +/* 8001C6A4 00019604 CB E1 00 F0 */ lfd f31, 0xf0(r1) +/* 8001C6A8 00019608 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 +/* 8001C6AC 0001960C CB C1 00 E0 */ lfd f30, 0xe0(r1) +/* 8001C6B0 00019610 E3 A1 00 D8 */ psq_l f29, 216(r1), 0, qr0 +/* 8001C6B4 00019614 CB A1 00 D0 */ lfd f29, 0xd0(r1) +/* 8001C6B8 00019618 E3 81 00 C8 */ psq_l f28, 200(r1), 0, qr0 +/* 8001C6BC 0001961C CB 81 00 C0 */ lfd f28, 0xc0(r1) +/* 8001C6C0 00019620 BB 41 00 A8 */ lmw r26, 0xa8(r1) +/* 8001C6C4 00019624 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8001C6C8 00019628 7C 08 03 A6 */ mtlr r0 +/* 8001C6CC 0001962C 38 21 01 00 */ addi r1, r1, 0x100 +/* 8001C6D0 00019630 4E 80 00 20 */ blr + +.global ProcessUserInput__11CFrontEndUIFRC11CFinalInputR18CArchitectureQueue +ProcessUserInput__11CFrontEndUIFRC11CFinalInputR18CArchitectureQueue: +/* 8001C6D4 00019634 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001C6D8 00019638 7C 08 02 A6 */ mflr r0 +/* 8001C6DC 0001963C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001C6E0 00019640 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001C6E4 00019644 7C 7F 1B 78 */ mr r31, r3 +/* 8001C6E8 00019648 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8001C6EC 0001964C 7C BE 2B 78 */ mr r30, r5 +/* 8001C6F0 00019650 80 CD A0 78 */ lwz r6, gpMain@sda21(r13) +/* 8001C6F4 00019654 88 06 01 60 */ lbz r0, 0x160(r6) +/* 8001C6F8 00019658 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8001C6FC 0001965C 40 82 03 C0 */ bne lbl_8001CABC +/* 8001C700 00019660 80 A4 00 04 */ lwz r5, 4(r4) +/* 8001C704 00019664 2C 05 00 01 */ cmpwi r5, 1 +/* 8001C708 00019668 41 81 03 B4 */ bgt lbl_8001CABC +/* 8001C70C 0001966C 80 7F 00 EC */ lwz r3, 0xec(r31) +/* 8001C710 00019670 28 03 00 00 */ cmplwi r3, 0 +/* 8001C714 00019674 41 82 00 10 */ beq lbl_8001C724 +/* 8001C718 00019678 80 BF 00 DC */ lwz r5, 0xdc(r31) +/* 8001C71C 0001967C 48 00 5D 2D */ bl ProcessUserInput__17SNesEmulatorFrameFRC11CFinalInputPC15CSaveGameScreen +/* 8001C720 00019680 48 00 03 9C */ b lbl_8001CABC +lbl_8001C724: +/* 8001C724 00019684 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8001C728 00019688 2C 00 00 04 */ cmpwi r0, 4 +/* 8001C72C 0001968C 40 82 03 90 */ bne lbl_8001CABC +/* 8001C730 00019690 2C 05 00 00 */ cmpwi r5, 0 +/* 8001C734 00019694 40 82 03 88 */ bne lbl_8001CABC +/* 8001C738 00019698 80 BF 00 50 */ lwz r5, 0x50(r31) +/* 8001C73C 0001969C 80 7F 00 54 */ lwz r3, 0x54(r31) +/* 8001C740 000196A0 7C 05 18 00 */ cmpw r5, r3 +/* 8001C744 000196A4 41 82 00 A0 */ beq lbl_8001C7E4 +/* 8001C748 000196A8 2C 03 00 02 */ cmpwi r3, 2 +/* 8001C74C 000196AC 40 82 00 4C */ bne lbl_8001C798 +/* 8001C750 000196B0 88 04 00 2E */ lbz r0, 0x2e(r4) +/* 8001C754 000196B4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8001C758 000196B8 40 82 00 10 */ bne lbl_8001C768 +/* 8001C75C 000196BC 88 04 00 2D */ lbz r0, 0x2d(r4) +/* 8001C760 000196C0 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8001C764 000196C4 41 82 00 34 */ beq lbl_8001C798 +lbl_8001C768: +/* 8001C768 000196C8 C0 22 82 C0 */ lfs f1, lbl_805A9FE0@sda21(r2) +/* 8001C76C 000196CC C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 8001C770 000196D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001C774 000196D4 40 80 00 0C */ bge lbl_8001C780 +/* 8001C778 000196D8 38 62 82 C0 */ addi r3, r2, lbl_805A9FE0@sda21 +/* 8001C77C 000196DC 48 00 00 08 */ b lbl_8001C784 +lbl_8001C780: +/* 8001C780 000196E0 38 7F 00 58 */ addi r3, r31, 0x58 +lbl_8001C784: +/* 8001C784 000196E4 C0 23 00 00 */ lfs f1, 0(r3) +/* 8001C788 000196E8 7F E3 FB 78 */ mr r3, r31 +/* 8001C78C 000196EC 4B FF F4 01 */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001C790 000196F0 48 00 67 C5 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 8001C794 000196F4 48 00 03 28 */ b lbl_8001CABC +lbl_8001C798: +/* 8001C798 000196F8 88 04 00 2D */ lbz r0, 0x2d(r4) +/* 8001C79C 000196FC 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8001C7A0 00019700 40 82 00 10 */ bne lbl_8001C7B0 +/* 8001C7A4 00019704 88 04 00 2E */ lbz r0, 0x2e(r4) +/* 8001C7A8 00019708 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8001C7AC 0001970C 41 82 03 10 */ beq lbl_8001CABC +lbl_8001C7B0: +/* 8001C7B0 00019710 2C 05 00 00 */ cmpwi r5, 0 +/* 8001C7B4 00019714 40 82 03 08 */ bne lbl_8001CABC +/* 8001C7B8 00019718 2C 03 00 01 */ cmpwi r3, 1 +/* 8001C7BC 0001971C 40 82 03 00 */ bne lbl_8001CABC +/* 8001C7C0 00019720 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 8001C7C4 00019724 C0 22 82 B0 */ lfs f1, lbl_805A9FD0@sda21(r2) +/* 8001C7C8 00019728 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8001C7CC 0001972C 40 81 02 F0 */ ble lbl_8001CABC +/* 8001C7D0 00019730 38 00 00 01 */ li r0, 1 +/* 8001C7D4 00019734 7F E3 FB 78 */ mr r3, r31 +/* 8001C7D8 00019738 98 1F 00 D0 */ stb r0, 0xd0(r31) +/* 8001C7DC 0001973C 4B FF F3 B1 */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001C7E0 00019740 48 00 02 DC */ b lbl_8001CABC +lbl_8001C7E4: +/* 8001C7E4 00019744 2C 05 00 01 */ cmpwi r5, 1 +/* 8001C7E8 00019748 40 82 00 BC */ bne lbl_8001C8A4 +/* 8001C7EC 0001974C 88 04 00 2E */ lbz r0, 0x2e(r4) +/* 8001C7F0 00019750 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 8001C7F4 00019754 40 82 00 10 */ bne lbl_8001C804 +/* 8001C7F8 00019758 88 04 00 2D */ lbz r0, 0x2d(r4) +/* 8001C7FC 0001975C 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 8001C800 00019760 41 82 02 BC */ beq lbl_8001CABC +lbl_8001C804: +/* 8001C804 00019764 80 6D A1 20 */ lwz r3, gpTweakGame@sda21(r13) +/* 8001C808 00019768 C0 22 82 A0 */ lfs f1, lbl_805A9FC0@sda21(r2) +/* 8001C80C 0001976C C0 03 00 30 */ lfs f0, 0x30(r3) +/* 8001C810 00019770 C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 8001C814 00019774 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8001C818 00019778 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8001C81C 0001977C 40 80 02 A0 */ bge lbl_8001CABC +/* 8001C820 00019780 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 8001C824 00019784 3C 60 80 3D */ lis r3, lbl_803CC5C4@ha +/* 8001C828 00019788 38 63 C5 C4 */ addi r3, r3, lbl_803CC5C4@l +/* 8001C82C 0001978C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001C830 00019790 54 00 10 3A */ slwi r0, r0, 2 +/* 8001C834 00019794 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001C838 00019798 7C 03 02 AE */ lhax r0, r3, r0 +/* 8001C83C 0001979C 38 61 00 0C */ addi r3, r1, 0xc +/* 8001C840 000197A0 38 A0 00 7F */ li r5, 0x7f +/* 8001C844 000197A4 38 C0 00 40 */ li r6, 0x40 +/* 8001C848 000197A8 54 04 04 3E */ clrlwi r4, r0, 0x10 +/* 8001C84C 000197AC 38 E0 00 00 */ li r7, 0 +/* 8001C850 000197B0 39 20 00 00 */ li r9, 0 +/* 8001C854 000197B4 48 2C D5 21 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001C858 000197B8 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 8001C85C 000197BC 3C 60 80 3D */ lis r3, lbl_803CC5C4@ha +/* 8001C860 000197C0 38 63 C5 C4 */ addi r3, r3, lbl_803CC5C4@l +/* 8001C864 000197C4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001C868 000197C8 54 00 10 3A */ slwi r0, r0, 2 +/* 8001C86C 000197CC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001C870 000197D0 7C 83 02 14 */ add r4, r3, r0 +/* 8001C874 000197D4 38 61 00 08 */ addi r3, r1, 8 +/* 8001C878 000197D8 A8 04 00 02 */ lha r0, 2(r4) +/* 8001C87C 000197DC 38 A0 00 7F */ li r5, 0x7f +/* 8001C880 000197E0 38 C0 00 40 */ li r6, 0x40 +/* 8001C884 000197E4 38 E0 00 00 */ li r7, 0 +/* 8001C888 000197E8 54 04 04 3E */ clrlwi r4, r0, 0x10 +/* 8001C88C 000197EC 39 20 00 00 */ li r9, 0 +/* 8001C890 000197F0 48 2C D4 E5 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001C894 000197F4 7F E3 FB 78 */ mr r3, r31 +/* 8001C898 000197F8 38 80 00 03 */ li r4, 3 +/* 8001C89C 000197FC 4B FF F6 AD */ bl StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen +/* 8001C8A0 00019800 48 00 02 1C */ b lbl_8001CABC +lbl_8001C8A4: +/* 8001C8A4 00019804 2C 05 00 03 */ cmpwi r5, 3 +/* 8001C8A8 00019808 38 00 00 00 */ li r0, 0 +/* 8001C8AC 0001980C 40 82 00 10 */ bne lbl_8001C8BC +/* 8001C8B0 00019810 2C 03 00 03 */ cmpwi r3, 3 +/* 8001C8B4 00019814 40 82 00 08 */ bne lbl_8001C8BC +/* 8001C8B8 00019818 38 00 00 01 */ li r0, 1 +lbl_8001C8BC: +/* 8001C8BC 0001981C 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8001C8C0 00019820 41 82 01 5C */ beq lbl_8001CA1C +/* 8001C8C4 00019824 80 7F 00 F0 */ lwz r3, 0xf0(r31) +/* 8001C8C8 00019828 28 03 00 00 */ cmplwi r3, 0 +/* 8001C8CC 0001982C 40 82 01 28 */ bne lbl_8001C9F4 +/* 8001C8D0 00019830 80 7F 00 E0 */ lwz r3, 0xe0(r31) +/* 8001C8D4 00019834 28 03 00 00 */ cmplwi r3, 0 +/* 8001C8D8 00019838 40 82 00 9C */ bne lbl_8001C974 +/* 8001C8DC 0001983C 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 8001C8E0 00019840 48 00 4A C1 */ bl ProcessUserInput__14SFrontEndFrameFRC11CFinalInput +/* 8001C8E4 00019844 2C 03 00 02 */ cmpwi r3, 2 +/* 8001C8E8 00019848 40 82 00 14 */ bne lbl_8001C8FC +/* 8001C8EC 0001984C 7F E3 FB 78 */ mr r3, r31 +/* 8001C8F0 00019850 38 80 00 04 */ li r4, 4 +/* 8001C8F4 00019854 4B FF F6 55 */ bl StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen +/* 8001C8F8 00019858 48 00 01 C4 */ b lbl_8001CABC +lbl_8001C8FC: +/* 8001C8FC 0001985C 2C 03 00 03 */ cmpwi r3, 3 +/* 8001C900 00019860 40 82 00 40 */ bne lbl_8001C940 +/* 8001C904 00019864 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001C908 00019868 38 60 01 38 */ li r3, 0x138 +/* 8001C90C 0001986C 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001C910 00019870 38 A0 00 00 */ li r5, 0 +/* 8001C914 00019874 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001C918 00019878 48 2F 8F 55 */ bl __nw__FUlPCcPCc +/* 8001C91C 0001987C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001C920 00019880 41 82 00 0C */ beq lbl_8001C92C +/* 8001C924 00019884 48 22 65 71 */ bl __ct__21SOptionsFrontEndFrameFv +/* 8001C928 00019888 7C 7E 1B 78 */ mr r30, r3 +lbl_8001C92C: +/* 8001C92C 0001988C 80 7F 00 F0 */ lwz r3, 0xf0(r31) +/* 8001C930 00019890 38 80 00 01 */ li r4, 1 +/* 8001C934 00019894 48 22 64 C1 */ bl __dt__21SOptionsFrontEndFrameFv +/* 8001C938 00019898 93 DF 00 F0 */ stw r30, 0xf0(r31) +/* 8001C93C 0001989C 48 00 01 80 */ b lbl_8001CABC +lbl_8001C940: +/* 8001C940 000198A0 2C 03 00 01 */ cmpwi r3, 1 +/* 8001C944 000198A4 40 82 00 10 */ bne lbl_8001C954 +/* 8001C948 000198A8 7F E3 FB 78 */ mr r3, r31 +/* 8001C94C 000198AC 48 00 0F 71 */ bl TransitionToFive__11CFrontEndUIFv +/* 8001C950 000198B0 48 00 01 6C */ b lbl_8001CABC +lbl_8001C954: +/* 8001C954 000198B4 2C 03 00 04 */ cmpwi r3, 4 +/* 8001C958 000198B8 40 82 01 64 */ bne lbl_8001CABC +/* 8001C95C 000198BC 38 00 00 01 */ li r0, 1 +/* 8001C960 000198C0 7F E3 FB 78 */ mr r3, r31 +/* 8001C964 000198C4 98 1F 00 D2 */ stb r0, 0xd2(r31) +/* 8001C968 000198C8 7F C4 F3 78 */ mr r4, r30 +/* 8001C96C 000198CC 4B FF F1 81 */ bl StartSlideShow__11CFrontEndUIFR18CArchitectureQueue +/* 8001C970 000198D0 48 00 01 4C */ b lbl_8001CABC +lbl_8001C974: +/* 8001C974 000198D4 48 00 39 A5 */ bl ProcessUserInput__19SNewFileSelectFrameFRC11CFinalInput +/* 8001C978 000198D8 2C 03 00 02 */ cmpwi r3, 2 +/* 8001C97C 000198DC 40 82 00 14 */ bne lbl_8001C990 +/* 8001C980 000198E0 7F E3 FB 78 */ mr r3, r31 +/* 8001C984 000198E4 38 80 00 04 */ li r4, 4 +/* 8001C988 000198E8 4B FF F5 C1 */ bl StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen +/* 8001C98C 000198EC 48 00 01 30 */ b lbl_8001CABC +lbl_8001C990: +/* 8001C990 000198F0 2C 03 00 01 */ cmpwi r3, 1 +/* 8001C994 000198F4 40 82 00 40 */ bne lbl_8001C9D4 +/* 8001C998 000198F8 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001C99C 000198FC 38 60 01 38 */ li r3, 0x138 +/* 8001C9A0 00019900 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001C9A4 00019904 38 A0 00 00 */ li r5, 0 +/* 8001C9A8 00019908 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001C9AC 0001990C 48 2F 8E C1 */ bl __nw__FUlPCcPCc +/* 8001C9B0 00019910 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001C9B4 00019914 41 82 00 0C */ beq lbl_8001C9C0 +/* 8001C9B8 00019918 48 22 64 DD */ bl __ct__21SOptionsFrontEndFrameFv +/* 8001C9BC 0001991C 7C 7E 1B 78 */ mr r30, r3 +lbl_8001C9C0: +/* 8001C9C0 00019920 80 7F 00 F0 */ lwz r3, 0xf0(r31) +/* 8001C9C4 00019924 38 80 00 01 */ li r4, 1 +/* 8001C9C8 00019928 48 22 64 2D */ bl __dt__21SOptionsFrontEndFrameFv +/* 8001C9CC 0001992C 93 DF 00 F0 */ stw r30, 0xf0(r31) +/* 8001C9D0 00019930 48 00 00 EC */ b lbl_8001CABC +lbl_8001C9D4: +/* 8001C9D4 00019934 2C 03 00 03 */ cmpwi r3, 3 +/* 8001C9D8 00019938 40 82 00 E4 */ bne lbl_8001CABC +/* 8001C9DC 0001993C 38 00 00 01 */ li r0, 1 +/* 8001C9E0 00019940 7F E3 FB 78 */ mr r3, r31 +/* 8001C9E4 00019944 98 1F 00 D2 */ stb r0, 0xd2(r31) +/* 8001C9E8 00019948 7F C4 F3 78 */ mr r4, r30 +/* 8001C9EC 0001994C 4B FF F1 01 */ bl StartSlideShow__11CFrontEndUIFR18CArchitectureQueue +/* 8001C9F0 00019950 48 00 00 CC */ b lbl_8001CABC +lbl_8001C9F4: +/* 8001C9F4 00019954 80 BF 00 DC */ lwz r5, 0xdc(r31) +/* 8001C9F8 00019958 48 22 52 51 */ bl ProcessUserInput__21SOptionsFrontEndFrameFRC11CFinalInputPC15CSaveGameScreen +/* 8001C9FC 0001995C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001CA00 00019960 40 82 00 BC */ bne lbl_8001CABC +/* 8001CA04 00019964 80 7F 00 F0 */ lwz r3, 0xf0(r31) +/* 8001CA08 00019968 38 80 00 01 */ li r4, 1 +/* 8001CA0C 0001996C 48 22 63 E9 */ bl __dt__21SOptionsFrontEndFrameFv +/* 8001CA10 00019970 38 00 00 00 */ li r0, 0 +/* 8001CA14 00019974 90 1F 00 F0 */ stw r0, 0xf0(r31) +/* 8001CA18 00019978 48 00 00 A4 */ b lbl_8001CABC +lbl_8001CA1C: +/* 8001CA1C 0001997C 2C 05 00 04 */ cmpwi r5, 4 +/* 8001CA20 00019980 38 00 00 00 */ li r0, 0 +/* 8001CA24 00019984 40 82 00 10 */ bne lbl_8001CA34 +/* 8001CA28 00019988 2C 03 00 04 */ cmpwi r3, 4 +/* 8001CA2C 0001998C 40 82 00 08 */ bne lbl_8001CA34 +/* 8001CA30 00019990 38 00 00 01 */ li r0, 1 +lbl_8001CA34: +/* 8001CA34 00019994 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8001CA38 00019998 41 82 00 84 */ beq lbl_8001CABC +/* 8001CA3C 0001999C 80 7F 00 E4 */ lwz r3, 0xe4(r31) +/* 8001CA40 000199A0 80 BF 00 DC */ lwz r5, 0xdc(r31) +/* 8001CA44 000199A4 48 00 1E 15 */ bl ProcessUserInput__17SFusionBonusFrameFRC11CFinalInputRC15CSaveGameScreen +/* 8001CA48 000199A8 2C 03 00 01 */ cmpwi r3, 1 +/* 8001CA4C 000199AC 40 82 00 14 */ bne lbl_8001CA60 +/* 8001CA50 000199B0 7F E3 FB 78 */ mr r3, r31 +/* 8001CA54 000199B4 38 80 00 03 */ li r4, 3 +/* 8001CA58 000199B8 4B FF F4 F1 */ bl StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen +/* 8001CA5C 000199BC 48 00 00 60 */ b lbl_8001CABC +lbl_8001CA60: +/* 8001CA60 000199C0 2C 03 00 02 */ cmpwi r3, 2 +/* 8001CA64 000199C4 40 82 00 58 */ bne lbl_8001CABC +/* 8001CA68 000199C8 80 7F 00 F4 */ lwz r3, 0xf4(r31) +/* 8001CA6C 000199CC 48 34 F5 89 */ bl StopMixOut__18CStaticAudioPlayerFv +/* 8001CA70 000199D0 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001CA74 000199D4 38 60 00 18 */ li r3, 0x18 +/* 8001CA78 000199D8 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001CA7C 000199DC 38 A0 00 00 */ li r5, 0 +/* 8001CA80 000199E0 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001CA84 000199E4 48 2F 8D E9 */ bl __nw__FUlPCcPCc +/* 8001CA88 000199E8 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001CA8C 000199EC 41 82 00 0C */ beq lbl_8001CA98 +/* 8001CA90 000199F0 48 00 60 CD */ bl __ct__17SNesEmulatorFrameFv +/* 8001CA94 000199F4 7C 7E 1B 78 */ mr r30, r3 +lbl_8001CA98: +/* 8001CA98 000199F8 80 7F 00 EC */ lwz r3, 0xec(r31) +/* 8001CA9C 000199FC 38 80 00 01 */ li r4, 1 +/* 8001CAA0 00019A00 48 00 60 09 */ bl __dt__17SNesEmulatorFrameFv +/* 8001CAA4 00019A04 93 DF 00 EC */ stw r30, 0xec(r31) +/* 8001CAA8 00019A08 80 7F 00 DC */ lwz r3, 0xdc(r31) +/* 8001CAAC 00019A0C 28 03 00 00 */ cmplwi r3, 0 +/* 8001CAB0 00019A10 41 82 00 0C */ beq lbl_8001CABC +/* 8001CAB4 00019A14 38 80 00 01 */ li r4, 1 +/* 8001CAB8 00019A18 48 23 26 B5 */ bl SetInGame__15CSaveGameScreenb +lbl_8001CABC: +/* 8001CABC 00019A1C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001CAC0 00019A20 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001CAC4 00019A24 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001CAC8 00019A28 7C 08 03 A6 */ mtlr r0 +/* 8001CACC 00019A2C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001CAD0 00019A30 4E 80 00 20 */ blr + +.global UpdateMovies__11CFrontEndUIFf +UpdateMovies__11CFrontEndUIFf: +/* 8001CAD4 00019A34 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001CAD8 00019A38 7C 08 02 A6 */ mflr r0 +/* 8001CADC 00019A3C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001CAE0 00019A40 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 8001CAE4 00019A44 FF E0 08 90 */ fmr f31, f1 +/* 8001CAE8 00019A48 93 E1 00 14 */ stw r31, 0x14(r1) +/* 8001CAEC 00019A4C 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8001CAF0 00019A50 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8001CAF4 00019A54 7C 7D 1B 78 */ mr r29, r3 +/* 8001CAF8 00019A58 80 63 00 CC */ lwz r3, 0xcc(r3) +/* 8001CAFC 00019A5C 28 03 00 00 */ cmplwi r3, 0 +/* 8001CB00 00019A60 41 82 00 30 */ beq lbl_8001CB30 +/* 8001CB04 00019A64 48 33 FF 7D */ bl PumpIndexLoad__12CMoviePlayerFv +/* 8001CB08 00019A68 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001CB0C 00019A6C 40 82 00 24 */ bne lbl_8001CB30 +/* 8001CB10 00019A70 88 1D 00 5C */ lbz r0, 0x5c(r29) +/* 8001CB14 00019A74 28 00 00 00 */ cmplwi r0, 0 +/* 8001CB18 00019A78 41 82 00 18 */ beq lbl_8001CB30 +/* 8001CB1C 00019A7C 38 00 00 00 */ li r0, 0 +/* 8001CB20 00019A80 98 1D 00 5C */ stb r0, 0x5c(r29) +/* 8001CB24 00019A84 80 7D 00 CC */ lwz r3, 0xcc(r29) +/* 8001CB28 00019A88 48 33 F0 B5 */ bl GetTotalSeconds__12CMoviePlayerCFv +/* 8001CB2C 00019A8C D0 3D 00 58 */ stfs f1, 0x58(r29) +lbl_8001CB30: +/* 8001CB30 00019A90 3B C0 00 00 */ li r30, 0 +/* 8001CB34 00019A94 3B FD 00 70 */ addi r31, r29, 0x70 +lbl_8001CB38: +/* 8001CB38 00019A98 80 7F 00 04 */ lwz r3, 4(r31) +/* 8001CB3C 00019A9C 28 03 00 00 */ cmplwi r3, 0 +/* 8001CB40 00019AA0 41 82 00 0C */ beq lbl_8001CB4C +/* 8001CB44 00019AA4 FC 20 F8 90 */ fmr f1, f31 +/* 8001CB48 00019AA8 48 33 F2 19 */ bl Update__12CMoviePlayerFf +lbl_8001CB4C: +/* 8001CB4C 00019AAC 3B DE 00 01 */ addi r30, r30, 1 +/* 8001CB50 00019AB0 3B FF 00 08 */ addi r31, r31, 8 +/* 8001CB54 00019AB4 2C 1E 00 09 */ cmpwi r30, 9 +/* 8001CB58 00019AB8 41 80 FF E0 */ blt lbl_8001CB38 +/* 8001CB5C 00019ABC 80 7D 00 C8 */ lwz r3, 0xc8(r29) +/* 8001CB60 00019AC0 28 03 00 00 */ cmplwi r3, 0 +/* 8001CB64 00019AC4 41 82 00 1C */ beq lbl_8001CB80 +/* 8001CB68 00019AC8 48 33 FF 19 */ bl PumpIndexLoad__12CMoviePlayerFv +/* 8001CB6C 00019ACC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001CB70 00019AD0 40 82 00 10 */ bne lbl_8001CB80 +/* 8001CB74 00019AD4 FC 20 F8 90 */ fmr f1, f31 +/* 8001CB78 00019AD8 80 7D 00 C8 */ lwz r3, 0xc8(r29) +/* 8001CB7C 00019ADC 48 33 F1 E5 */ bl Update__12CMoviePlayerFf +lbl_8001CB80: +/* 8001CB80 00019AE0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001CB84 00019AE4 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8001CB88 00019AE8 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8001CB8C 00019AEC 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 8001CB90 00019AF0 83 A1 00 0C */ lwz r29, 0xc(r1) +/* 8001CB94 00019AF4 7C 08 03 A6 */ mtlr r0 +/* 8001CB98 00019AF8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001CB9C 00019AFC 4E 80 00 20 */ blr + +.global PumpMovieLoad__11CFrontEndUI +PumpMovieLoad__11CFrontEndUI: +/* 8001CBA0 00019B00 94 21 FE D0 */ stwu r1, -0x130(r1) +/* 8001CBA4 00019B04 7C 08 02 A6 */ mflr r0 +/* 8001CBA8 00019B08 90 01 01 34 */ stw r0, 0x134(r1) +/* 8001CBAC 00019B0C BF 61 01 1C */ stmw r27, 0x11c(r1) +/* 8001CBB0 00019B10 7C 7B 1B 78 */ mr r27, r3 +/* 8001CBB4 00019B14 88 03 00 D1 */ lbz r0, 0xd1(r3) +/* 8001CBB8 00019B18 28 00 00 00 */ cmplwi r0, 0 +/* 8001CBBC 00019B1C 41 82 00 0C */ beq lbl_8001CBC8 +/* 8001CBC0 00019B20 38 60 00 01 */ li r3, 1 +/* 8001CBC4 00019B24 48 00 01 70 */ b lbl_8001CD34 +lbl_8001CBC8: +/* 8001CBC8 00019B28 3B FB 00 70 */ addi r31, r27, 0x70 +/* 8001CBCC 00019B2C 3B C0 00 00 */ li r30, 0 +/* 8001CBD0 00019B30 7F FD FB 78 */ mr r29, r31 +lbl_8001CBD4: +/* 8001CBD4 00019B34 80 7D 00 04 */ lwz r3, 4(r29) +/* 8001CBD8 00019B38 28 03 00 00 */ cmplwi r3, 0 +/* 8001CBDC 00019B3C 40 82 01 28 */ bne lbl_8001CD04 +/* 8001CBE0 00019B40 3C 60 80 3D */ lis r3, lbl_803CC540@ha +/* 8001CBE4 00019B44 57 C4 18 38 */ slwi r4, r30, 3 +/* 8001CBE8 00019B48 38 03 C5 40 */ addi r0, r3, lbl_803CC540@l +/* 8001CBEC 00019B4C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001CBF0 00019B50 7F 80 22 14 */ add r28, r0, r4 +/* 8001CBF4 00019B54 80 9C 00 00 */ lwz r4, 0(r28) +/* 8001CBF8 00019B58 48 37 35 11 */ bl strcpy +/* 8001CBFC 00019B5C 2C 1E 00 02 */ cmpwi r30, 2 +/* 8001CC00 00019B60 40 82 00 24 */ bne lbl_8001CC24 +/* 8001CC04 00019B64 80 9B 00 18 */ lwz r4, 0x18(r27) +/* 8001CC08 00019B68 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001CC0C 00019B6C 38 04 00 41 */ addi r0, r4, 0x41 +/* 8001CC10 00019B70 7C 1D 07 74 */ extsb r29, r0 +/* 8001CC14 00019B74 48 37 35 AD */ bl strlen +/* 8001CC18 00019B78 38 81 00 0B */ addi r4, r1, 0xb +/* 8001CC1C 00019B7C 7F A4 19 AE */ stbx r29, r4, r3 +/* 8001CC20 00019B80 48 00 00 28 */ b lbl_8001CC48 +lbl_8001CC24: +/* 8001CC24 00019B84 2C 1E 00 04 */ cmpwi r30, 4 +/* 8001CC28 00019B88 40 82 00 20 */ bne lbl_8001CC48 +/* 8001CC2C 00019B8C 80 9B 00 1C */ lwz r4, 0x1c(r27) +/* 8001CC30 00019B90 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001CC34 00019B94 38 04 00 41 */ addi r0, r4, 0x41 +/* 8001CC38 00019B98 7C 1D 07 74 */ extsb r29, r0 +/* 8001CC3C 00019B9C 48 37 35 85 */ bl strlen +/* 8001CC40 00019BA0 38 81 00 0B */ addi r4, r1, 0xb +/* 8001CC44 00019BA4 7F A4 19 AE */ stbx r29, r4, r3 +lbl_8001CC48: +/* 8001CC48 00019BA8 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001CC4C 00019BAC 38 60 01 00 */ li r3, 0x100 +/* 8001CC50 00019BB0 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001CC54 00019BB4 38 A0 00 00 */ li r5, 0 +/* 8001CC58 00019BB8 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001CC5C 00019BBC 48 2F 8C 11 */ bl __nw__FUlPCcPCc +/* 8001CC60 00019BC0 7C 65 1B 79 */ or. r5, r3, r3 +/* 8001CC64 00019BC4 41 82 00 1C */ beq lbl_8001CC80 +/* 8001CC68 00019BC8 C0 22 82 C4 */ lfs f1, lbl_805A9FE4@sda21(r2) +/* 8001CC6C 00019BCC 38 81 00 10 */ addi r4, r1, 0x10 +/* 8001CC70 00019BD0 88 BC 00 04 */ lbz r5, 4(r28) +/* 8001CC74 00019BD4 38 C0 00 01 */ li r6, 1 +/* 8001CC78 00019BD8 48 34 02 A5 */ bl __ct__12CMoviePlayerFPCcfb +/* 8001CC7C 00019BDC 7C 65 1B 78 */ mr r5, r3 +lbl_8001CC80: +/* 8001CC80 00019BE0 7C 05 00 D0 */ neg r0, r5 +/* 8001CC84 00019BE4 57 C3 18 38 */ slwi r3, r30, 3 +/* 8001CC88 00019BE8 7C 04 2B 78 */ or r4, r0, r5 +/* 8001CC8C 00019BEC 38 01 00 08 */ addi r0, r1, 8 +/* 8001CC90 00019BF0 7F BF 1A 14 */ add r29, r31, r3 +/* 8001CC94 00019BF4 90 A1 00 0C */ stw r5, 0xc(r1) +/* 8001CC98 00019BF8 54 83 0F FE */ srwi r3, r4, 0x1f +/* 8001CC9C 00019BFC 7C 00 E8 40 */ cmplw r0, r29 +/* 8001CCA0 00019C00 98 61 00 08 */ stb r3, 8(r1) +/* 8001CCA4 00019C04 41 82 00 34 */ beq lbl_8001CCD8 +/* 8001CCA8 00019C08 88 1D 00 00 */ lbz r0, 0(r29) +/* 8001CCAC 00019C0C 28 00 00 00 */ cmplwi r0, 0 +/* 8001CCB0 00019C10 41 82 00 10 */ beq lbl_8001CCC0 +/* 8001CCB4 00019C14 80 7D 00 04 */ lwz r3, 4(r29) +/* 8001CCB8 00019C18 38 80 00 01 */ li r4, 1 +/* 8001CCBC 00019C1C 48 33 FA FD */ bl __dt__12CMoviePlayerFv +lbl_8001CCC0: +/* 8001CCC0 00019C20 88 61 00 08 */ lbz r3, 8(r1) +/* 8001CCC4 00019C24 38 00 00 00 */ li r0, 0 +/* 8001CCC8 00019C28 98 7D 00 00 */ stb r3, 0(r29) +/* 8001CCCC 00019C2C 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8001CCD0 00019C30 90 7D 00 04 */ stw r3, 4(r29) +/* 8001CCD4 00019C34 98 01 00 08 */ stb r0, 8(r1) +lbl_8001CCD8: +/* 8001CCD8 00019C38 88 01 00 08 */ lbz r0, 8(r1) +/* 8001CCDC 00019C3C 28 00 00 00 */ cmplwi r0, 0 +/* 8001CCE0 00019C40 41 82 00 10 */ beq lbl_8001CCF0 +/* 8001CCE4 00019C44 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8001CCE8 00019C48 38 80 00 01 */ li r4, 1 +/* 8001CCEC 00019C4C 48 33 FA CD */ bl __dt__12CMoviePlayerFv +lbl_8001CCF0: +/* 8001CCF0 00019C50 80 7D 00 04 */ lwz r3, 4(r29) +/* 8001CCF4 00019C54 38 80 00 00 */ li r4, 0 +/* 8001CCF8 00019C58 48 33 EE ED */ bl SetPlayMode__12CMoviePlayerFQ212CMoviePlayer9EPlayMode +/* 8001CCFC 00019C5C 38 60 00 00 */ li r3, 0 +/* 8001CD00 00019C60 48 00 00 34 */ b lbl_8001CD34 +lbl_8001CD04: +/* 8001CD04 00019C64 48 33 FD 7D */ bl PumpIndexLoad__12CMoviePlayerFv +/* 8001CD08 00019C68 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001CD0C 00019C6C 41 82 00 0C */ beq lbl_8001CD18 +/* 8001CD10 00019C70 38 60 00 00 */ li r3, 0 +/* 8001CD14 00019C74 48 00 00 20 */ b lbl_8001CD34 +lbl_8001CD18: +/* 8001CD18 00019C78 3B DE 00 01 */ addi r30, r30, 1 +/* 8001CD1C 00019C7C 3B BD 00 08 */ addi r29, r29, 8 +/* 8001CD20 00019C80 2C 1E 00 09 */ cmpwi r30, 9 +/* 8001CD24 00019C84 41 80 FE B0 */ blt lbl_8001CBD4 +/* 8001CD28 00019C88 38 00 00 01 */ li r0, 1 +/* 8001CD2C 00019C8C 38 60 00 01 */ li r3, 1 +/* 8001CD30 00019C90 98 1B 00 D1 */ stb r0, 0xd1(r27) +lbl_8001CD34: +/* 8001CD34 00019C94 BB 61 01 1C */ lmw r27, 0x11c(r1) +/* 8001CD38 00019C98 80 01 01 34 */ lwz r0, 0x134(r1) +/* 8001CD3C 00019C9C 7C 08 03 A6 */ mtlr r0 +/* 8001CD40 00019CA0 38 21 01 30 */ addi r1, r1, 0x130 +/* 8001CD44 00019CA4 4E 80 00 20 */ blr + +.global Update__11CFrontEndUIFfR18CArchitectureQueue +Update__11CFrontEndUIFfR18CArchitectureQueue: +/* 8001CD48 00019CA8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8001CD4C 00019CAC 7C 08 02 A6 */ mflr r0 +/* 8001CD50 00019CB0 90 01 00 74 */ stw r0, 0x74(r1) +/* 8001CD54 00019CB4 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8001CD58 00019CB8 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8001CD5C 00019CBC DB C1 00 50 */ stfd f30, 0x50(r1) +/* 8001CD60 00019CC0 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 8001CD64 00019CC4 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 8001CD68 00019CC8 93 C1 00 48 */ stw r30, 0x48(r1) +/* 8001CD6C 00019CCC 93 A1 00 44 */ stw r29, 0x44(r1) +/* 8001CD70 00019CD0 93 81 00 40 */ stw r28, 0x40(r1) +/* 8001CD74 00019CD4 7C 7F 1B 78 */ mr r31, r3 +/* 8001CD78 00019CD8 FF C0 08 90 */ fmr f30, f1 +/* 8001CD7C 00019CDC 80 63 00 DC */ lwz r3, 0xdc(r3) +/* 8001CD80 00019CE0 28 03 00 00 */ cmplwi r3, 0 +/* 8001CD84 00019CE4 41 82 00 60 */ beq lbl_8001CDE4 +/* 8001CD88 00019CE8 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 8001CD8C 00019CEC 2C 00 00 03 */ cmpwi r0, 3 +/* 8001CD90 00019CF0 41 80 00 54 */ blt lbl_8001CDE4 +/* 8001CD94 00019CF4 48 23 2A 09 */ bl Update__15CSaveGameScreenFf +/* 8001CD98 00019CF8 2C 03 00 01 */ cmpwi r3, 1 +/* 8001CD9C 00019CFC 40 82 00 10 */ bne lbl_8001CDAC +/* 8001CDA0 00019D00 7F E3 FB 78 */ mr r3, r31 +/* 8001CDA4 00019D04 48 00 0B 19 */ bl TransitionToFive__11CFrontEndUIFv +/* 8001CDA8 00019D08 48 00 00 3C */ b lbl_8001CDE4 +lbl_8001CDAC: +/* 8001CDAC 00019D0C 2C 03 00 03 */ cmpwi r3, 3 +/* 8001CDB0 00019D10 41 82 00 0C */ beq lbl_8001CDBC +/* 8001CDB4 00019D14 2C 03 00 02 */ cmpwi r3, 2 +/* 8001CDB8 00019D18 40 82 00 2C */ bne lbl_8001CDE4 +lbl_8001CDBC: +/* 8001CDBC 00019D1C 80 7F 00 E0 */ lwz r3, 0xe0(r31) +/* 8001CDC0 00019D20 38 80 00 01 */ li r4, 1 +/* 8001CDC4 00019D24 48 00 3E ED */ bl __dt__19SNewFileSelectFrameFv +/* 8001CDC8 00019D28 38 00 00 00 */ li r0, 0 +/* 8001CDCC 00019D2C 38 80 00 01 */ li r4, 1 +/* 8001CDD0 00019D30 90 1F 00 E0 */ stw r0, 0xe0(r31) +/* 8001CDD4 00019D34 80 7F 00 DC */ lwz r3, 0xdc(r31) +/* 8001CDD8 00019D38 48 23 30 4D */ bl __dt__15CSaveGameScreenFv +/* 8001CDDC 00019D3C 38 00 00 00 */ li r0, 0 +/* 8001CDE0 00019D40 90 1F 00 DC */ stw r0, 0xdc(r31) +lbl_8001CDE4: +/* 8001CDE4 00019D44 7F E3 FB 78 */ mr r3, r31 +/* 8001CDE8 00019D48 48 00 09 A9 */ bl UpdateMusicVol__11CFrontEndUIFv +/* 8001CDEC 00019D4C 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8001CDF0 00019D50 2C 00 00 03 */ cmpwi r0, 3 +/* 8001CDF4 00019D54 41 82 03 30 */ beq lbl_8001D124 +/* 8001CDF8 00019D58 40 80 00 1C */ bge lbl_8001CE14 +/* 8001CDFC 00019D5C 2C 00 00 01 */ cmpwi r0, 1 +/* 8001CE00 00019D60 41 82 00 58 */ beq lbl_8001CE58 +/* 8001CE04 00019D64 40 80 02 A0 */ bge lbl_8001D0A4 +/* 8001CE08 00019D68 2C 00 00 00 */ cmpwi r0, 0 +/* 8001CE0C 00019D6C 40 80 00 18 */ bge lbl_8001CE24 +/* 8001CE10 00019D70 48 00 07 8C */ b lbl_8001D59C +lbl_8001CE14: +/* 8001CE14 00019D74 2C 00 00 06 */ cmpwi r0, 6 +/* 8001CE18 00019D78 41 82 07 7C */ beq lbl_8001D594 +/* 8001CE1C 00019D7C 40 80 07 80 */ bge lbl_8001D59C +/* 8001CE20 00019D80 48 00 03 84 */ b lbl_8001D1A4 +lbl_8001CE24: +/* 8001CE24 00019D84 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001CE28 00019D88 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8001CE2C 00019D8C 28 00 00 00 */ cmplwi r0, 0 +/* 8001CE30 00019D90 41 82 00 20 */ beq lbl_8001CE50 +/* 8001CE34 00019D94 7F E3 FB 78 */ mr r3, r31 +/* 8001CE38 00019D98 48 00 08 45 */ bl FinishedLoadingDepsGroup__11CFrontEndUIFv +/* 8001CE3C 00019D9C 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8001CE40 00019DA0 48 32 3F 01 */ bl Unlock__6CTokenFv +/* 8001CE44 00019DA4 38 00 00 01 */ li r0, 1 +/* 8001CE48 00019DA8 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8001CE4C 00019DAC 48 00 00 0C */ b lbl_8001CE58 +lbl_8001CE50: +/* 8001CE50 00019DB0 38 60 00 01 */ li r3, 1 +/* 8001CE54 00019DB4 48 00 07 4C */ b lbl_8001D5A0 +lbl_8001CE58: +/* 8001CE58 00019DB8 7F E3 FB 78 */ mr r3, r31 +/* 8001CE5C 00019DBC 48 00 07 75 */ bl PumpLoad__11CFrontEndUIFv +/* 8001CE60 00019DC0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001CE64 00019DC4 41 82 02 2C */ beq lbl_8001D090 +/* 8001CE68 00019DC8 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001CE6C 00019DCC 38 60 01 10 */ li r3, 0x110 +/* 8001CE70 00019DD0 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001CE74 00019DD4 38 A0 00 00 */ li r5, 0 +/* 8001CE78 00019DD8 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001CE7C 00019DDC 48 2F 89 F1 */ bl __nw__FUlPCcPCc +/* 8001CE80 00019DE0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001CE84 00019DE4 41 82 00 14 */ beq lbl_8001CE98 +/* 8001CE88 00019DE8 80 9F 00 DC */ lwz r4, 0xdc(r31) +/* 8001CE8C 00019DEC 80 BF 00 1C */ lwz r5, 0x1c(r31) +/* 8001CE90 00019DF0 48 00 3F 21 */ bl __ct__19SNewFileSelectFrameFv +/* 8001CE94 00019DF4 7C 7E 1B 78 */ mr r30, r3 +lbl_8001CE98: +/* 8001CE98 00019DF8 80 7F 00 E0 */ lwz r3, 0xe0(r31) +/* 8001CE9C 00019DFC 38 80 00 01 */ li r4, 1 +/* 8001CEA0 00019E00 48 00 3E 11 */ bl __dt__19SNewFileSelectFrameFv +/* 8001CEA4 00019E04 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001CEA8 00019E08 93 DF 00 E0 */ stw r30, 0xe0(r31) +/* 8001CEAC 00019E0C 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001CEB0 00019E10 38 60 00 3C */ li r3, 0x3c +/* 8001CEB4 00019E14 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001CEB8 00019E18 38 A0 00 00 */ li r5, 0 +/* 8001CEBC 00019E1C 48 2F 89 B1 */ bl __nw__FUlPCcPCc +/* 8001CEC0 00019E20 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001CEC4 00019E24 41 82 00 0C */ beq lbl_8001CED0 +/* 8001CEC8 00019E28 48 00 1D 4D */ bl __ct__17SFusionBonusFrameFv +/* 8001CECC 00019E2C 7C 7E 1B 78 */ mr r30, r3 +lbl_8001CED0: +/* 8001CED0 00019E30 80 7F 00 E4 */ lwz r3, 0xe4(r31) +/* 8001CED4 00019E34 38 80 00 01 */ li r4, 1 +/* 8001CED8 00019E38 48 00 1C 91 */ bl __dt__17SFusionBonusFrameFv +/* 8001CEDC 00019E3C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001CEE0 00019E40 93 DF 00 E4 */ stw r30, 0xe4(r31) +/* 8001CEE4 00019E44 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001CEE8 00019E48 38 60 00 2C */ li r3, 0x2c +/* 8001CEEC 00019E4C 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001CEF0 00019E50 38 A0 00 00 */ li r5, 0 +/* 8001CEF4 00019E54 48 2F 89 79 */ bl __nw__FUlPCcPCc +/* 8001CEF8 00019E58 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001CEFC 00019E5C 41 82 00 10 */ beq lbl_8001CF0C +/* 8001CF00 00019E60 80 9F 00 1C */ lwz r4, 0x1c(r31) +/* 8001CF04 00019E64 48 00 4A 49 */ bl __ct__14SFrontEndFrameFv +/* 8001CF08 00019E68 7C 7E 1B 78 */ mr r30, r3 +lbl_8001CF0C: +/* 8001CF0C 00019E6C 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 8001CF10 00019E70 38 80 00 01 */ li r4, 1 +/* 8001CF14 00019E74 48 00 49 D1 */ bl __dt__14SFrontEndFrameFv +/* 8001CF18 00019E78 93 DF 00 E8 */ stw r30, 0xe8(r31) +/* 8001CF1C 00019E7C 38 7F 00 38 */ addi r3, r31, 0x38 +/* 8001CF20 00019E80 48 32 3E 65 */ bl Lock__6CTokenFv +/* 8001CF24 00019E84 80 1F 00 40 */ lwz r0, 0x40(r31) +/* 8001CF28 00019E88 28 00 00 00 */ cmplwi r0, 0 +/* 8001CF2C 00019E8C 40 82 00 30 */ bne lbl_8001CF5C +/* 8001CF30 00019E90 88 1F 00 3C */ lbz r0, 0x3c(r31) +/* 8001CF34 00019E94 28 00 00 00 */ cmplwi r0, 0 +/* 8001CF38 00019E98 41 82 00 24 */ beq lbl_8001CF5C +/* 8001CF3C 00019E9C 80 7F 00 38 */ lwz r3, 0x38(r31) +/* 8001CF40 00019EA0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8001CF44 00019EA4 28 00 00 00 */ cmplwi r0, 0 +/* 8001CF48 00019EA8 41 82 00 14 */ beq lbl_8001CF5C +/* 8001CF4C 00019EAC 38 7F 00 38 */ addi r3, r31, 0x38 +/* 8001CF50 00019EB0 48 32 3E BD */ bl GetObj__6CTokenFv +/* 8001CF54 00019EB4 80 03 00 04 */ lwz r0, 4(r3) +/* 8001CF58 00019EB8 90 1F 00 40 */ stw r0, 0x40(r31) +lbl_8001CF5C: +/* 8001CF5C 00019EBC 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 8001CF60 00019EC0 80 82 82 94 */ lwz r4, lbl_805A9FB4@sda21(r2) +/* 8001CF64 00019EC4 81 83 00 00 */ lwz r12, 0(r3) +/* 8001CF68 00019EC8 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 8001CF6C 00019ECC 7D 89 03 A6 */ mtctr r12 +/* 8001CF70 00019ED0 4E 80 04 21 */ bctrl +/* 8001CF74 00019ED4 80 9F 00 4C */ lwz r4, 0x4c(r31) +/* 8001CF78 00019ED8 80 A3 00 04 */ lwz r5, 4(r3) +/* 8001CF7C 00019EDC 38 7F 00 44 */ addi r3, r31, 0x44 +/* 8001CF80 00019EE0 3B C4 00 20 */ addi r30, r4, 0x20 +/* 8001CF84 00019EE4 7F C4 F3 78 */ mr r4, r30 +/* 8001CF88 00019EE8 48 32 F1 21 */ bl "SysLoadGroupSet__9CAudioSysF30TLockedToken<14CAudioGroupSet>Q24rstl6stringUi" +/* 8001CF8C 00019EEC 7F C3 F3 78 */ mr r3, r30 +/* 8001CF90 00019EF0 38 80 00 26 */ li r4, 0x26 +/* 8001CF94 00019EF4 48 32 E9 7D */ bl "SysPushGroupIntoARAM__9CAudioSysFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>Uc" +/* 8001CF98 00019EF8 7F C3 F3 78 */ mr r3, r30 +/* 8001CF9C 00019EFC 48 32 F0 49 */ bl "SysUnloadSampleData__9CAudioSysFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001CFA0 00019F00 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001CFA4 00019F04 3B 80 00 00 */ li r28, 0 +/* 8001CFA8 00019F08 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001CFAC 00019F0C 38 60 00 C4 */ li r3, 0xc4 +/* 8001CFB0 00019F10 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001CFB4 00019F14 38 A0 00 00 */ li r5, 0 +/* 8001CFB8 00019F18 48 2F 88 B5 */ bl __nw__FUlPCcPCc +/* 8001CFBC 00019F1C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001CFC0 00019F20 41 82 00 34 */ beq lbl_8001CFF4 +/* 8001CFC4 00019F24 80 82 82 8C */ lwz r4, lbl_805A9FAC@sda21(r2) +/* 8001CFC8 00019F28 38 61 00 24 */ addi r3, r1, 0x24 +/* 8001CFCC 00019F2C 4B FE 7C ED */ bl string_l__4rstlFPCc +/* 8001CFD0 00019F30 3C A0 00 06 */ lis r5, 0x00065AE0@ha +/* 8001CFD4 00019F34 3C C0 00 1E */ lis r6, 0x001E1DA0@ha +/* 8001CFD8 00019F38 7F C3 F3 78 */ mr r3, r30 +/* 8001CFDC 00019F3C 38 81 00 24 */ addi r4, r1, 0x24 +/* 8001CFE0 00019F40 38 A5 5A E0 */ addi r5, r5, 0x00065AE0@l +/* 8001CFE4 00019F44 38 C6 1D A0 */ addi r6, r6, 0x001E1DA0@l +/* 8001CFE8 00019F48 3B 80 00 01 */ li r28, 1 +/* 8001CFEC 00019F4C 48 34 F2 ED */ bl __ct__18CStaticAudioPlayerFRCQ24rstl12basic_stringii +/* 8001CFF0 00019F50 7C 7E 1B 78 */ mr r30, r3 +lbl_8001CFF4: +/* 8001CFF4 00019F54 80 7F 00 D4 */ lwz r3, 0xd4(r31) +/* 8001CFF8 00019F58 38 80 00 01 */ li r4, 1 +/* 8001CFFC 00019F5C 48 34 F1 5D */ bl __dt__18CStaticAudioPlayer +/* 8001D000 00019F60 7F 80 07 75 */ extsb. r0, r28 +/* 8001D004 00019F64 93 DF 00 D4 */ stw r30, 0xd4(r31) +/* 8001D008 00019F68 41 82 00 0C */ beq lbl_8001D014 +/* 8001D00C 00019F6C 38 61 00 24 */ addi r3, r1, 0x24 +/* 8001D010 00019F70 48 32 0A D1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8001D014: +/* 8001D014 00019F74 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001D018 00019F78 3B 80 00 00 */ li r28, 0 +/* 8001D01C 00019F7C 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001D020 00019F80 38 60 00 C4 */ li r3, 0xc4 +/* 8001D024 00019F84 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001D028 00019F88 38 A0 00 00 */ li r5, 0 +/* 8001D02C 00019F8C 48 2F 88 41 */ bl __nw__FUlPCcPCc +/* 8001D030 00019F90 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001D034 00019F94 41 82 00 34 */ beq lbl_8001D068 +/* 8001D038 00019F98 80 82 82 90 */ lwz r4, lbl_805A9FB0@sda21(r2) +/* 8001D03C 00019F9C 38 61 00 14 */ addi r3, r1, 0x14 +/* 8001D040 00019FA0 4B FE 7C 79 */ bl string_l__4rstlFPCc +/* 8001D044 00019FA4 3C A0 00 04 */ lis r5, 0x00042C94@ha +/* 8001D048 00019FA8 3C C0 00 19 */ lis r6, 0x0018FA74@ha +/* 8001D04C 00019FAC 7F C3 F3 78 */ mr r3, r30 +/* 8001D050 00019FB0 38 81 00 14 */ addi r4, r1, 0x14 +/* 8001D054 00019FB4 38 A5 2C 94 */ addi r5, r5, 0x00042C94@l +/* 8001D058 00019FB8 38 C6 FA 74 */ addi r6, r6, 0x0018FA74@l +/* 8001D05C 00019FBC 3B 80 00 01 */ li r28, 1 +/* 8001D060 00019FC0 48 34 F2 79 */ bl __ct__18CStaticAudioPlayerFRCQ24rstl12basic_stringii +/* 8001D064 00019FC4 7C 7E 1B 78 */ mr r30, r3 +lbl_8001D068: +/* 8001D068 00019FC8 80 7F 00 D8 */ lwz r3, 0xd8(r31) +/* 8001D06C 00019FCC 38 80 00 01 */ li r4, 1 +/* 8001D070 00019FD0 48 34 F0 E9 */ bl __dt__18CStaticAudioPlayer +/* 8001D074 00019FD4 7F 80 07 75 */ extsb. r0, r28 +/* 8001D078 00019FD8 93 DF 00 D8 */ stw r30, 0xd8(r31) +/* 8001D07C 00019FDC 41 82 00 0C */ beq lbl_8001D088 +/* 8001D080 00019FE0 38 61 00 14 */ addi r3, r1, 0x14 +/* 8001D084 00019FE4 48 32 0A 5D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8001D088: +/* 8001D088 00019FE8 38 00 00 02 */ li r0, 2 +/* 8001D08C 00019FEC 90 1F 00 14 */ stw r0, 0x14(r31) +lbl_8001D090: +/* 8001D090 00019FF0 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8001D094 00019FF4 2C 00 00 01 */ cmpwi r0, 1 +/* 8001D098 00019FF8 40 82 00 0C */ bne lbl_8001D0A4 +/* 8001D09C 00019FFC 38 60 00 01 */ li r3, 1 +/* 8001D0A0 0001A000 48 00 05 00 */ b lbl_8001D5A0 +lbl_8001D0A4: +/* 8001D0A4 0001A004 80 7F 00 D4 */ lwz r3, 0xd4(r31) +/* 8001D0A8 0001A008 48 34 F0 5D */ bl IsReady__18CStaticAudioPlayer +/* 8001D0AC 0001A00C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D0B0 0001A010 41 82 00 54 */ beq lbl_8001D104 +/* 8001D0B4 0001A014 80 7F 00 D8 */ lwz r3, 0xd8(r31) +/* 8001D0B8 0001A018 48 34 F0 4D */ bl IsReady__18CStaticAudioPlayer +/* 8001D0BC 0001A01C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D0C0 0001A020 41 82 00 44 */ beq lbl_8001D104 +/* 8001D0C4 0001A024 80 7F 00 E0 */ lwz r3, 0xe0(r31) +/* 8001D0C8 0001A028 48 00 3B 25 */ bl PumpLoad__19SNewFileSelectFrameFv +/* 8001D0CC 0001A02C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D0D0 0001A030 41 82 00 34 */ beq lbl_8001D104 +/* 8001D0D4 0001A034 80 7F 00 E4 */ lwz r3, 0xe4(r31) +/* 8001D0D8 0001A038 48 00 16 59 */ bl PumpLoad__17SFusionBonusFrameFv +/* 8001D0DC 0001A03C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D0E0 0001A040 41 82 00 24 */ beq lbl_8001D104 +/* 8001D0E4 0001A044 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 8001D0E8 0001A048 48 00 47 39 */ bl PumpLoad__14SFrontEndFrameFv +/* 8001D0EC 0001A04C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D0F0 0001A050 41 82 00 14 */ beq lbl_8001D104 +/* 8001D0F4 0001A054 80 7F 00 DC */ lwz r3, 0xdc(r31) +/* 8001D0F8 0001A058 48 23 28 AD */ bl PumpLoad__15CSaveGameScreenFv +/* 8001D0FC 0001A05C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D100 0001A060 40 82 00 0C */ bne lbl_8001D10C +lbl_8001D104: +/* 8001D104 0001A064 38 60 00 01 */ li r3, 1 +/* 8001D108 0001A068 48 00 04 98 */ b lbl_8001D5A0 +lbl_8001D10C: +/* 8001D10C 0001A06C 80 1F 00 D4 */ lwz r0, 0xd4(r31) +/* 8001D110 0001A070 90 1F 00 F4 */ stw r0, 0xf4(r31) +/* 8001D114 0001A074 80 7F 00 F4 */ lwz r3, 0xf4(r31) +/* 8001D118 0001A078 48 34 EF 19 */ bl StartMixOut__18CStaticAudioPlayerFv +/* 8001D11C 0001A07C 38 00 00 03 */ li r0, 3 +/* 8001D120 0001A080 90 1F 00 14 */ stw r0, 0x14(r31) +lbl_8001D124: +/* 8001D124 0001A084 7F E3 FB 78 */ mr r3, r31 +/* 8001D128 0001A088 3B A0 00 01 */ li r29, 1 +/* 8001D12C 0001A08C 4B FF FA 75 */ bl PumpMovieLoad__11CFrontEndUI +/* 8001D130 0001A090 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D134 0001A094 40 82 00 0C */ bne lbl_8001D140 +/* 8001D138 0001A098 3B A0 00 00 */ li r29, 0 +/* 8001D13C 0001A09C 48 00 00 40 */ b lbl_8001D17C +lbl_8001D140: +/* 8001D140 0001A0A0 FC 20 F0 90 */ fmr f1, f30 +/* 8001D144 0001A0A4 7F E3 FB 78 */ mr r3, r31 +/* 8001D148 0001A0A8 4B FF F9 8D */ bl UpdateMovies__11CFrontEndUIFf +/* 8001D14C 0001A0AC 3B 80 00 00 */ li r28, 0 +/* 8001D150 0001A0B0 3B DF 00 70 */ addi r30, r31, 0x70 +lbl_8001D154: +/* 8001D154 0001A0B4 80 7E 00 04 */ lwz r3, 4(r30) +/* 8001D158 0001A0B8 48 33 EA 59 */ bl GetIsFullyCached__12CMoviePlayerCFv +/* 8001D15C 0001A0BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D160 0001A0C0 40 82 00 0C */ bne lbl_8001D16C +/* 8001D164 0001A0C4 3B A0 00 00 */ li r29, 0 +/* 8001D168 0001A0C8 48 00 00 14 */ b lbl_8001D17C +lbl_8001D16C: +/* 8001D16C 0001A0CC 3B 9C 00 01 */ addi r28, r28, 1 +/* 8001D170 0001A0D0 3B DE 00 08 */ addi r30, r30, 8 +/* 8001D174 0001A0D4 2C 1C 00 09 */ cmpwi r28, 9 +/* 8001D178 0001A0D8 41 80 FF DC */ blt lbl_8001D154 +lbl_8001D17C: +/* 8001D17C 0001A0DC 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 8001D180 0001A0E0 41 82 00 1C */ beq lbl_8001D19C +/* 8001D184 0001A0E4 38 00 00 04 */ li r0, 4 +/* 8001D188 0001A0E8 7F E3 FB 78 */ mr r3, r31 +/* 8001D18C 0001A0EC 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8001D190 0001A0F0 38 80 00 01 */ li r4, 1 +/* 8001D194 0001A0F4 4B FF ED B5 */ bl StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen +/* 8001D198 0001A0F8 48 00 00 0C */ b lbl_8001D1A4 +lbl_8001D19C: +/* 8001D19C 0001A0FC 38 60 00 01 */ li r3, 1 +/* 8001D1A0 0001A100 48 00 04 00 */ b lbl_8001D5A0 +lbl_8001D1A4: +/* 8001D1A4 0001A104 80 7F 00 EC */ lwz r3, 0xec(r31) +/* 8001D1A8 0001A108 28 03 00 00 */ cmplwi r3, 0 +/* 8001D1AC 0001A10C 41 82 00 4C */ beq lbl_8001D1F8 +/* 8001D1B0 0001A110 FC 20 F0 90 */ fmr f1, f30 +/* 8001D1B4 0001A114 80 9F 00 DC */ lwz r4, 0xdc(r31) +/* 8001D1B8 0001A118 48 00 53 65 */ bl Update__17SNesEmulatorFrameFfR15CSaveGameScreen +/* 8001D1BC 0001A11C 2C 03 00 01 */ cmpwi r3, 1 +/* 8001D1C0 0001A120 40 82 02 DC */ bne lbl_8001D49C +/* 8001D1C4 0001A124 80 7F 00 EC */ lwz r3, 0xec(r31) +/* 8001D1C8 0001A128 38 80 00 01 */ li r4, 1 +/* 8001D1CC 0001A12C 48 00 58 DD */ bl __dt__17SNesEmulatorFrameFv +/* 8001D1D0 0001A130 38 00 00 00 */ li r0, 0 +/* 8001D1D4 0001A134 90 1F 00 EC */ stw r0, 0xec(r31) +/* 8001D1D8 0001A138 80 7F 00 DC */ lwz r3, 0xdc(r31) +/* 8001D1DC 0001A13C 28 03 00 00 */ cmplwi r3, 0 +/* 8001D1E0 0001A140 41 82 00 0C */ beq lbl_8001D1EC +/* 8001D1E4 0001A144 38 80 00 00 */ li r4, 0 +/* 8001D1E8 0001A148 48 23 1F 85 */ bl SetInGame__15CSaveGameScreenb +lbl_8001D1EC: +/* 8001D1EC 0001A14C 80 7F 00 F4 */ lwz r3, 0xf4(r31) +/* 8001D1F0 0001A150 48 34 EE 41 */ bl StartMixOut__18CStaticAudioPlayerFv +/* 8001D1F4 0001A154 48 00 02 A8 */ b lbl_8001D49C +lbl_8001D1F8: +/* 8001D1F8 0001A158 88 1F 00 D2 */ lbz r0, 0xd2(r31) +/* 8001D1FC 0001A15C 28 00 00 00 */ cmplwi r0, 0 +/* 8001D200 0001A160 41 82 00 24 */ beq lbl_8001D224 +/* 8001D204 0001A164 38 00 00 00 */ li r0, 0 +/* 8001D208 0001A168 98 1F 00 D2 */ stb r0, 0xd2(r31) +/* 8001D20C 0001A16C 80 7F 00 F4 */ lwz r3, 0xf4(r31) +/* 8001D210 0001A170 48 34 EE 21 */ bl StartMixOut__18CStaticAudioPlayerFv +/* 8001D214 0001A174 80 7F 00 DC */ lwz r3, 0xdc(r31) +/* 8001D218 0001A178 28 03 00 00 */ cmplwi r3, 0 +/* 8001D21C 0001A17C 41 82 00 08 */ beq lbl_8001D224 +/* 8001D220 0001A180 48 23 2B 6D */ bl ResetCardDriver__15CSaveGameScreenFv +lbl_8001D224: +/* 8001D224 0001A184 80 9F 00 50 */ lwz r4, 0x50(r31) +/* 8001D228 0001A188 38 60 00 00 */ li r3, 0 +/* 8001D22C 0001A18C 2C 04 00 03 */ cmpwi r4, 3 +/* 8001D230 0001A190 40 82 00 14 */ bne lbl_8001D244 +/* 8001D234 0001A194 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001D238 0001A198 2C 00 00 03 */ cmpwi r0, 3 +/* 8001D23C 0001A19C 40 82 00 08 */ bne lbl_8001D244 +/* 8001D240 0001A1A0 38 60 00 01 */ li r3, 1 +lbl_8001D244: +/* 8001D244 0001A1A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D248 0001A1A8 41 82 00 80 */ beq lbl_8001D2C8 +/* 8001D24C 0001A1AC 80 7F 00 F0 */ lwz r3, 0xf0(r31) +/* 8001D250 0001A1B0 28 03 00 00 */ cmplwi r3, 0 +/* 8001D254 0001A1B4 40 82 00 2C */ bne lbl_8001D280 +/* 8001D258 0001A1B8 80 7F 00 E0 */ lwz r3, 0xe0(r31) +/* 8001D25C 0001A1BC 28 03 00 00 */ cmplwi r3, 0 +/* 8001D260 0001A1C0 40 82 00 14 */ bne lbl_8001D274 +/* 8001D264 0001A1C4 FC 20 F0 90 */ fmr f1, f30 +/* 8001D268 0001A1C8 80 7F 00 E8 */ lwz r3, 0xe8(r31) +/* 8001D26C 0001A1CC 48 00 41 71 */ bl Update__14SFrontEndFrameFf +/* 8001D270 0001A1D0 48 00 00 8C */ b lbl_8001D2FC +lbl_8001D274: +/* 8001D274 0001A1D4 FC 20 F0 90 */ fmr f1, f30 +/* 8001D278 0001A1D8 48 00 31 F9 */ bl Update__19SNewFileSelectFrameFf +/* 8001D27C 0001A1DC 48 00 00 80 */ b lbl_8001D2FC +lbl_8001D280: +/* 8001D280 0001A1E0 80 9F 00 DC */ lwz r4, 0xdc(r31) +/* 8001D284 0001A1E4 38 00 00 01 */ li r0, 1 +/* 8001D288 0001A1E8 28 04 00 00 */ cmplwi r4, 0 +/* 8001D28C 0001A1EC 41 82 00 14 */ beq lbl_8001D2A0 +/* 8001D290 0001A1F0 80 A4 00 10 */ lwz r5, 0x10(r4) +/* 8001D294 0001A1F4 2C 05 00 10 */ cmpwi r5, 0x10 +/* 8001D298 0001A1F8 41 82 00 08 */ beq lbl_8001D2A0 +/* 8001D29C 0001A1FC 38 00 00 00 */ li r0, 0 +lbl_8001D2A0: +/* 8001D2A0 0001A200 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 8001D2A4 0001A204 41 82 00 10 */ beq lbl_8001D2B4 +/* 8001D2A8 0001A208 FC 20 F0 90 */ fmr f1, f30 +/* 8001D2AC 0001A20C 48 22 4A A1 */ bl Update__21SOptionsFrontEndFrameFfPC15CSaveGameScreen +/* 8001D2B0 0001A210 48 00 00 4C */ b lbl_8001D2FC +lbl_8001D2B4: +/* 8001D2B4 0001A214 38 80 00 01 */ li r4, 1 +/* 8001D2B8 0001A218 48 22 5B 3D */ bl __dt__21SOptionsFrontEndFrameFv +/* 8001D2BC 0001A21C 38 00 00 00 */ li r0, 0 +/* 8001D2C0 0001A220 90 1F 00 F0 */ stw r0, 0xf0(r31) +/* 8001D2C4 0001A224 48 00 00 38 */ b lbl_8001D2FC +lbl_8001D2C8: +/* 8001D2C8 0001A228 2C 04 00 04 */ cmpwi r4, 4 +/* 8001D2CC 0001A22C 38 60 00 00 */ li r3, 0 +/* 8001D2D0 0001A230 40 82 00 14 */ bne lbl_8001D2E4 +/* 8001D2D4 0001A234 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001D2D8 0001A238 2C 00 00 04 */ cmpwi r0, 4 +/* 8001D2DC 0001A23C 40 82 00 08 */ bne lbl_8001D2E4 +/* 8001D2E0 0001A240 38 60 00 01 */ li r3, 1 +lbl_8001D2E4: +/* 8001D2E4 0001A244 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D2E8 0001A248 41 82 00 14 */ beq lbl_8001D2FC +/* 8001D2EC 0001A24C FC 20 F0 90 */ fmr f1, f30 +/* 8001D2F0 0001A250 80 7F 00 E4 */ lwz r3, 0xe4(r31) +/* 8001D2F4 0001A254 80 9F 00 DC */ lwz r4, 0xdc(r31) +/* 8001D2F8 0001A258 48 00 16 5D */ bl Update__17SFusionBonusFrameFv +lbl_8001D2FC: +/* 8001D2FC 0001A25C 80 7F 00 50 */ lwz r3, 0x50(r31) +/* 8001D300 0001A260 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001D304 0001A264 7C 03 00 00 */ cmpw r3, r0 +/* 8001D308 0001A268 41 82 00 40 */ beq lbl_8001D348 +/* 8001D30C 0001A26C 80 7F 00 CC */ lwz r3, 0xcc(r31) +/* 8001D310 0001A270 28 03 00 00 */ cmplwi r3, 0 +/* 8001D314 0001A274 41 82 00 34 */ beq lbl_8001D348 +/* 8001D318 0001A278 80 03 00 AC */ lwz r0, 0xac(r3) +/* 8001D31C 0001A27C 28 00 00 00 */ cmplwi r0, 0 +/* 8001D320 0001A280 40 82 00 28 */ bne lbl_8001D348 +/* 8001D324 0001A284 48 33 E8 61 */ bl GetIsMovieFinishedPlaying__12CMoviePlayerCFv +/* 8001D328 0001A288 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D32C 0001A28C 40 82 00 14 */ bne lbl_8001D340 +/* 8001D330 0001A290 80 7F 00 CC */ lwz r3, 0xcc(r31) +/* 8001D334 0001A294 88 03 00 F4 */ lbz r0, 0xf4(r3) +/* 8001D338 0001A298 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8001D33C 0001A29C 41 82 00 0C */ beq lbl_8001D348 +lbl_8001D340: +/* 8001D340 0001A2A0 7F E3 FB 78 */ mr r3, r31 +/* 8001D344 0001A2A4 4B FF EB 15 */ bl CompleteStateTransition__11CFrontEndUIFv +lbl_8001D348: +/* 8001D348 0001A2A8 C0 3F 00 58 */ lfs f1, 0x58(r31) +/* 8001D34C 0001A2AC C0 02 82 9C */ lfs f0, lbl_805A9FBC@sda21(r2) +/* 8001D350 0001A2B0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001D354 0001A2B4 40 81 00 B8 */ ble lbl_8001D40C +/* 8001D358 0001A2B8 88 1F 00 5C */ lbz r0, 0x5c(r31) +/* 8001D35C 0001A2BC 28 00 00 00 */ cmplwi r0, 0 +/* 8001D360 0001A2C0 40 82 00 AC */ bne lbl_8001D40C +/* 8001D364 0001A2C4 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 8001D368 0001A2C8 C0 0D 81 20 */ lfs f0, lbl_805A6CE0@sda21(r13) +/* 8001D36C 0001A2CC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001D370 0001A2D0 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 8001D374 0001A2D4 40 80 00 0C */ bge lbl_8001D380 +/* 8001D378 0001A2D8 38 6D 81 20 */ addi r3, r13, lbl_805A6CE0@sda21 +/* 8001D37C 0001A2DC 48 00 00 08 */ b lbl_8001D384 +lbl_8001D380: +/* 8001D380 0001A2E0 38 61 00 10 */ addi r3, r1, 0x10 +lbl_8001D384: +/* 8001D384 0001A2E4 C0 23 00 00 */ lfs f1, 0(r3) +/* 8001D388 0001A2E8 7F E3 FB 78 */ mr r3, r31 +/* 8001D38C 0001A2EC 4B FF E8 01 */ bl SetFadeBlackTimer__11CFrontEndUIFf +/* 8001D390 0001A2F0 C0 22 82 9C */ lfs f1, lbl_805A9FBC@sda21(r2) +/* 8001D394 0001A2F4 C0 1F 00 58 */ lfs f0, 0x58(r31) +/* 8001D398 0001A2F8 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 8001D39C 0001A2FC 40 82 00 70 */ bne lbl_8001D40C +/* 8001D3A0 0001A300 80 9F 00 50 */ lwz r4, 0x50(r31) +/* 8001D3A4 0001A304 38 60 00 00 */ li r3, 0 +/* 8001D3A8 0001A308 2C 04 00 01 */ cmpwi r4, 1 +/* 8001D3AC 0001A30C 40 82 00 14 */ bne lbl_8001D3C0 +/* 8001D3B0 0001A310 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001D3B4 0001A314 2C 00 00 01 */ cmpwi r0, 1 +/* 8001D3B8 0001A318 40 82 00 08 */ bne lbl_8001D3C0 +/* 8001D3BC 0001A31C 38 60 00 01 */ li r3, 1 +lbl_8001D3C0: +/* 8001D3C0 0001A320 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001D3C4 0001A324 41 82 00 20 */ beq lbl_8001D3E4 +/* 8001D3C8 0001A328 80 1F 00 C0 */ lwz r0, 0xc0(r31) +/* 8001D3CC 0001A32C 2C 00 00 00 */ cmpwi r0, 0 +/* 8001D3D0 0001A330 40 81 00 3C */ ble lbl_8001D40C +/* 8001D3D4 0001A334 7F E3 FB 78 */ mr r3, r31 +/* 8001D3D8 0001A338 38 80 00 02 */ li r4, 2 +/* 8001D3DC 0001A33C 4B FF EB 6D */ bl StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen +/* 8001D3E0 0001A340 48 00 00 2C */ b lbl_8001D40C +lbl_8001D3E4: +/* 8001D3E4 0001A344 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001D3E8 0001A348 2C 00 00 02 */ cmpwi r0, 2 +/* 8001D3EC 0001A34C 40 82 00 10 */ bne lbl_8001D3FC +/* 8001D3F0 0001A350 7F E3 FB 78 */ mr r3, r31 +/* 8001D3F4 0001A354 4B FF EA 65 */ bl CompleteStateTransition__11CFrontEndUIFv +/* 8001D3F8 0001A358 48 00 00 14 */ b lbl_8001D40C +lbl_8001D3FC: +/* 8001D3FC 0001A35C 7C 04 00 00 */ cmpw r4, r0 +/* 8001D400 0001A360 41 82 00 0C */ beq lbl_8001D40C +/* 8001D404 0001A364 7F E3 FB 78 */ mr r3, r31 +/* 8001D408 0001A368 4B FF EA 51 */ bl CompleteStateTransition__11CFrontEndUIFv +lbl_8001D40C: +/* 8001D40C 0001A36C FC 20 F0 90 */ fmr f1, f30 +/* 8001D410 0001A370 7F E3 FB 78 */ mr r3, r31 +/* 8001D414 0001A374 4B FF F6 C1 */ bl UpdateMovies__11CFrontEndUIFf +/* 8001D418 0001A378 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 8001D41C 0001A37C 2C 00 00 01 */ cmpwi r0, 1 +/* 8001D420 0001A380 40 82 00 70 */ bne lbl_8001D490 +/* 8001D424 0001A384 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001D428 0001A388 2C 00 00 01 */ cmpwi r0, 1 +/* 8001D42C 0001A38C 40 82 00 64 */ bne lbl_8001D490 +/* 8001D430 0001A390 80 6D A1 20 */ lwz r3, gpTweakGame@sda21(r13) +/* 8001D434 0001A394 C0 22 82 A0 */ lfs f1, lbl_805A9FC0@sda21(r2) +/* 8001D438 0001A398 C0 03 00 30 */ lfs f0, 0x30(r3) +/* 8001D43C 0001A39C C0 5F 00 58 */ lfs f2, 0x58(r31) +/* 8001D440 0001A3A0 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8001D444 0001A3A4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 8001D448 0001A3A8 40 80 00 48 */ bge lbl_8001D490 +/* 8001D44C 0001A3AC C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 8001D450 0001A3B0 C8 42 82 C8 */ lfd f2, lbl_805A9FE8@sda21(r2) +/* 8001D454 0001A3B4 EC 20 F0 2A */ fadds f1, f0, f30 +/* 8001D458 0001A3B8 48 37 78 55 */ bl fmod +/* 8001D45C 0001A3BC FC 00 08 18 */ frsp f0, f1 +/* 8001D460 0001A3C0 C0 22 82 D0 */ lfs f1, lbl_805A9FF0@sda21(r2) +/* 8001D464 0001A3C4 D0 1F 00 60 */ stfs f0, 0x60(r31) +/* 8001D468 0001A3C8 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 8001D46C 0001A3CC FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 8001D470 0001A3D0 40 80 00 0C */ bge lbl_8001D47C +/* 8001D474 0001A3D4 EC 02 08 24 */ fdivs f0, f2, f1 +/* 8001D478 0001A3D8 48 00 00 10 */ b lbl_8001D488 +lbl_8001D47C: +/* 8001D47C 0001A3DC C0 02 82 B0 */ lfs f0, lbl_805A9FD0@sda21(r2) +/* 8001D480 0001A3E0 EC 00 10 28 */ fsubs f0, f0, f2 +/* 8001D484 0001A3E4 EC 00 08 24 */ fdivs f0, f0, f1 +lbl_8001D488: +/* 8001D488 0001A3E8 D0 1F 00 64 */ stfs f0, 0x64(r31) +/* 8001D48C 0001A3EC 48 00 00 10 */ b lbl_8001D49C +lbl_8001D490: +/* 8001D490 0001A3F0 C0 02 82 9C */ lfs f0, lbl_805A9FBC@sda21(r2) +/* 8001D494 0001A3F4 D0 1F 00 60 */ stfs f0, 0x60(r31) +/* 8001D498 0001A3F8 D0 1F 00 64 */ stfs f0, 0x64(r31) +lbl_8001D49C: +/* 8001D49C 0001A3FC 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 8001D4A0 0001A400 2C 00 00 01 */ cmpwi r0, 1 +/* 8001D4A4 0001A404 40 82 00 6C */ bne lbl_8001D510 +/* 8001D4A8 0001A408 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001D4AC 0001A40C 2C 00 00 03 */ cmpwi r0, 3 +/* 8001D4B0 0001A410 40 82 00 60 */ bne lbl_8001D510 +/* 8001D4B4 0001A414 80 7F 00 CC */ lwz r3, 0xcc(r31) +/* 8001D4B8 0001A418 80 03 00 AC */ lwz r0, 0xac(r3) +/* 8001D4BC 0001A41C 28 00 00 00 */ cmplwi r0, 0 +/* 8001D4C0 0001A420 40 82 00 CC */ bne lbl_8001D58C +/* 8001D4C4 0001A424 80 1F 00 18 */ lwz r0, 0x18(r31) +/* 8001D4C8 0001A428 3C 80 80 3D */ lis r4, lbl_803CC5E8@ha +/* 8001D4CC 0001A42C 38 84 C5 E8 */ addi r4, r4, lbl_803CC5E8@l +/* 8001D4D0 0001A430 54 00 10 3A */ slwi r0, r0, 2 +/* 8001D4D4 0001A434 7F E4 04 2E */ lfsx f31, r4, r0 +/* 8001D4D8 0001A438 48 33 E6 F5 */ bl GetPlayedSeconds__12CMoviePlayerCFv +/* 8001D4DC 0001A43C EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8001D4E0 0001A440 C0 02 82 D4 */ lfs f0, lbl_805A9FF4@sda21(r2) +/* 8001D4E4 0001A444 38 81 00 0C */ addi r4, r1, 0xc +/* 8001D4E8 0001A448 38 6D 81 24 */ addi r3, r13, lbl_805A6CE4@sda21 +/* 8001D4EC 0001A44C 38 AD 81 28 */ addi r5, r13, lbl_805A6CE8@sda21 +/* 8001D4F0 0001A450 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8001D4F4 0001A454 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8001D4F8 0001A458 4B FE ED BD */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8001D4FC 0001A45C C0 23 00 00 */ lfs f1, 0(r3) +/* 8001D500 0001A460 C0 02 82 B0 */ lfs f0, lbl_805A9FD0@sda21(r2) +/* 8001D504 0001A464 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8001D508 0001A468 D0 1F 00 68 */ stfs f0, 0x68(r31) +/* 8001D50C 0001A46C 48 00 00 80 */ b lbl_8001D58C +lbl_8001D510: +/* 8001D510 0001A470 80 1F 00 54 */ lwz r0, 0x54(r31) +/* 8001D514 0001A474 2C 00 00 05 */ cmpwi r0, 5 +/* 8001D518 0001A478 40 82 00 6C */ bne lbl_8001D584 +/* 8001D51C 0001A47C 80 7F 00 CC */ lwz r3, 0xcc(r31) +/* 8001D520 0001A480 80 03 00 AC */ lwz r0, 0xac(r3) +/* 8001D524 0001A484 28 00 00 00 */ cmplwi r0, 0 +/* 8001D528 0001A488 40 82 00 64 */ bne lbl_8001D58C +/* 8001D52C 0001A48C 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 8001D530 0001A490 3C 80 80 3D */ lis r4, lbl_803CC5DC@ha +/* 8001D534 0001A494 38 84 C5 DC */ addi r4, r4, lbl_803CC5DC@l +/* 8001D538 0001A498 54 00 10 3A */ slwi r0, r0, 2 +/* 8001D53C 0001A49C 7F C4 04 2E */ lfsx f30, r4, r0 +/* 8001D540 0001A4A0 48 33 E6 8D */ bl GetPlayedSeconds__12CMoviePlayerCFv +/* 8001D544 0001A4A4 FF E0 08 90 */ fmr f31, f1 +/* 8001D548 0001A4A8 80 7F 00 CC */ lwz r3, 0xcc(r31) +/* 8001D54C 0001A4AC 48 33 E6 91 */ bl GetTotalSeconds__12CMoviePlayerCFv +/* 8001D550 0001A4B0 EC 5F F0 28 */ fsubs f2, f31, f30 +/* 8001D554 0001A4B4 38 81 00 08 */ addi r4, r1, 8 +/* 8001D558 0001A4B8 EC 01 F0 28 */ fsubs f0, f1, f30 +/* 8001D55C 0001A4BC 38 6D 81 2C */ addi r3, r13, lbl_805A6CEC@sda21 +/* 8001D560 0001A4C0 38 AD 81 30 */ addi r5, r13, lbl_805A6CF0@sda21 +/* 8001D564 0001A4C4 EC 02 00 24 */ fdivs f0, f2, f0 +/* 8001D568 0001A4C8 D0 01 00 08 */ stfs f0, 8(r1) +/* 8001D56C 0001A4CC 4B FE ED 49 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8001D570 0001A4D0 C0 23 00 00 */ lfs f1, 0(r3) +/* 8001D574 0001A4D4 C0 02 82 B0 */ lfs f0, lbl_805A9FD0@sda21(r2) +/* 8001D578 0001A4D8 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8001D57C 0001A4DC D0 1F 00 68 */ stfs f0, 0x68(r31) +/* 8001D580 0001A4E0 48 00 00 0C */ b lbl_8001D58C +lbl_8001D584: +/* 8001D584 0001A4E4 C0 02 82 B0 */ lfs f0, lbl_805A9FD0@sda21(r2) +/* 8001D588 0001A4E8 D0 1F 00 68 */ stfs f0, 0x68(r31) +lbl_8001D58C: +/* 8001D58C 0001A4EC 38 60 00 01 */ li r3, 1 +/* 8001D590 0001A4F0 48 00 00 10 */ b lbl_8001D5A0 +lbl_8001D594: +/* 8001D594 0001A4F4 38 60 00 03 */ li r3, 3 +/* 8001D598 0001A4F8 48 00 00 08 */ b lbl_8001D5A0 +lbl_8001D59C: +/* 8001D59C 0001A4FC 38 60 00 01 */ li r3, 1 +lbl_8001D5A0: +/* 8001D5A0 0001A500 E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8001D5A4 0001A504 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8001D5A8 0001A508 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 8001D5AC 0001A50C CB C1 00 50 */ lfd f30, 0x50(r1) +/* 8001D5B0 0001A510 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 8001D5B4 0001A514 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 8001D5B8 0001A518 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 8001D5BC 0001A51C 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8001D5C0 0001A520 83 81 00 40 */ lwz r28, 0x40(r1) +/* 8001D5C4 0001A524 7C 08 03 A6 */ mtlr r0 +/* 8001D5C8 0001A528 38 21 00 70 */ addi r1, r1, 0x70 +/* 8001D5CC 0001A52C 4E 80 00 20 */ blr + +.global PumpLoad__11CFrontEndUIFv +PumpLoad__11CFrontEndUIFv: +/* 8001D5D0 0001A530 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001D5D4 0001A534 7C 08 02 A6 */ mflr r0 +/* 8001D5D8 0001A538 38 80 00 00 */ li r4, 0 +/* 8001D5DC 0001A53C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001D5E0 0001A540 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001D5E4 0001A544 7C 7F 1B 78 */ mr r31, r3 +/* 8001D5E8 0001A548 80 03 00 2C */ lwz r0, 0x2c(r3) +/* 8001D5EC 0001A54C 7C 09 03 A6 */ mtctr r0 +/* 8001D5F0 0001A550 2C 00 00 00 */ cmpwi r0, 0 +/* 8001D5F4 0001A554 40 81 00 28 */ ble lbl_8001D61C +lbl_8001D5F8: +/* 8001D5F8 0001A558 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 8001D5FC 0001A55C 7C 63 20 2E */ lwzx r3, r3, r4 +/* 8001D600 0001A560 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8001D604 0001A564 28 00 00 00 */ cmplwi r0, 0 +/* 8001D608 0001A568 40 82 00 0C */ bne lbl_8001D614 +/* 8001D60C 0001A56C 38 60 00 00 */ li r3, 0 +/* 8001D610 0001A570 48 00 00 58 */ b lbl_8001D668 +lbl_8001D614: +/* 8001D614 0001A574 38 84 00 08 */ addi r4, r4, 8 +/* 8001D618 0001A578 42 00 FF E0 */ bdnz lbl_8001D5F8 +lbl_8001D61C: +/* 8001D61C 0001A57C 80 1F 00 4C */ lwz r0, 0x4c(r31) +/* 8001D620 0001A580 28 00 00 00 */ cmplwi r0, 0 +/* 8001D624 0001A584 41 82 00 0C */ beq lbl_8001D630 +/* 8001D628 0001A588 38 60 00 01 */ li r3, 1 +/* 8001D62C 0001A58C 48 00 00 3C */ b lbl_8001D668 +lbl_8001D630: +/* 8001D630 0001A590 88 1F 00 48 */ lbz r0, 0x48(r31) +/* 8001D634 0001A594 28 00 00 00 */ cmplwi r0, 0 +/* 8001D638 0001A598 41 82 00 2C */ beq lbl_8001D664 +/* 8001D63C 0001A59C 80 7F 00 44 */ lwz r3, 0x44(r31) +/* 8001D640 0001A5A0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8001D644 0001A5A4 28 00 00 00 */ cmplwi r0, 0 +/* 8001D648 0001A5A8 41 82 00 1C */ beq lbl_8001D664 +/* 8001D64C 0001A5AC 38 7F 00 44 */ addi r3, r31, 0x44 +/* 8001D650 0001A5B0 48 32 37 BD */ bl GetObj__6CTokenFv +/* 8001D654 0001A5B4 80 03 00 04 */ lwz r0, 4(r3) +/* 8001D658 0001A5B8 38 60 00 01 */ li r3, 1 +/* 8001D65C 0001A5BC 90 1F 00 4C */ stw r0, 0x4c(r31) +/* 8001D660 0001A5C0 48 00 00 08 */ b lbl_8001D668 +lbl_8001D664: +/* 8001D664 0001A5C4 38 60 00 00 */ li r3, 0 +lbl_8001D668: +/* 8001D668 0001A5C8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001D66C 0001A5CC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001D670 0001A5D0 7C 08 03 A6 */ mtlr r0 +/* 8001D674 0001A5D4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001D678 0001A5D8 4E 80 00 20 */ blr + +.global FinishedLoadingDepsGroup__11CFrontEndUIFv +FinishedLoadingDepsGroup__11CFrontEndUIFv: +/* 8001D67C 0001A5DC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8001D680 0001A5E0 7C 08 02 A6 */ mflr r0 +/* 8001D684 0001A5E4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8001D688 0001A5E8 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8001D68C 0001A5EC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8001D690 0001A5F0 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8001D694 0001A5F4 7C 7D 1B 78 */ mr r29, r3 +/* 8001D698 0001A5F8 38 7D 00 20 */ addi r3, r29, 0x20 +/* 8001D69C 0001A5FC 48 32 37 71 */ bl GetObj__6CTokenFv +/* 8001D6A0 0001A600 83 E3 00 04 */ lwz r31, 4(r3) +/* 8001D6A4 0001A604 38 7D 00 28 */ addi r3, r29, 0x28 +/* 8001D6A8 0001A608 80 9F 00 04 */ lwz r4, 4(r31) +/* 8001D6AC 0001A60C 4B FE B2 B1 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +/* 8001D6B0 0001A610 83 DF 00 0C */ lwz r30, 0xc(r31) +/* 8001D6B4 0001A614 48 00 00 A0 */ b lbl_8001D754 +lbl_8001D6B8: +/* 8001D6B8 0001A618 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8001D6BC 0001A61C 7F C5 F3 78 */ mr r5, r30 +/* 8001D6C0 0001A620 38 61 00 08 */ addi r3, r1, 8 +/* 8001D6C4 0001A624 81 84 00 00 */ lwz r12, 0(r4) +/* 8001D6C8 0001A628 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 8001D6CC 0001A62C 7D 89 03 A6 */ mtctr r12 +/* 8001D6D0 0001A630 4E 80 04 21 */ bctrl +/* 8001D6D4 0001A634 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001D6D8 0001A638 38 81 00 08 */ addi r4, r1, 8 +/* 8001D6DC 0001A63C 48 32 37 CD */ bl __ct__6CTokenFRC6CToken +/* 8001D6E0 0001A640 38 61 00 08 */ addi r3, r1, 8 +/* 8001D6E4 0001A644 38 80 FF FF */ li r4, -1 +/* 8001D6E8 0001A648 48 32 37 59 */ bl __dt__6CTokenFv +/* 8001D6EC 0001A64C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001D6F0 0001A650 48 32 36 95 */ bl Lock__6CTokenFv +/* 8001D6F4 0001A654 80 1D 00 2C */ lwz r0, 0x2c(r29) +/* 8001D6F8 0001A658 80 BD 00 30 */ lwz r5, 0x30(r29) +/* 8001D6FC 0001A65C 7C 00 28 00 */ cmpw r0, r5 +/* 8001D700 0001A660 41 80 00 1C */ blt lbl_8001D71C +/* 8001D704 0001A664 2C 05 00 00 */ cmpwi r5, 0 +/* 8001D708 0001A668 38 7D 00 28 */ addi r3, r29, 0x28 +/* 8001D70C 0001A66C 38 80 00 04 */ li r4, 4 +/* 8001D710 0001A670 41 82 00 08 */ beq lbl_8001D718 +/* 8001D714 0001A674 54 A4 08 3C */ slwi r4, r5, 1 +lbl_8001D718: +/* 8001D718 0001A678 4B FE B2 45 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +lbl_8001D71C: +/* 8001D71C 0001A67C 80 1D 00 2C */ lwz r0, 0x2c(r29) +/* 8001D720 0001A680 80 7D 00 34 */ lwz r3, 0x34(r29) +/* 8001D724 0001A684 54 00 18 38 */ slwi r0, r0, 3 +/* 8001D728 0001A688 7C 63 02 15 */ add. r3, r3, r0 +/* 8001D72C 0001A68C 41 82 00 0C */ beq lbl_8001D738 +/* 8001D730 0001A690 38 81 00 10 */ addi r4, r1, 0x10 +/* 8001D734 0001A694 48 32 37 75 */ bl __ct__6CTokenFRC6CToken +lbl_8001D738: +/* 8001D738 0001A698 80 BD 00 2C */ lwz r5, 0x2c(r29) +/* 8001D73C 0001A69C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001D740 0001A6A0 38 80 FF FF */ li r4, -1 +/* 8001D744 0001A6A4 38 05 00 01 */ addi r0, r5, 1 +/* 8001D748 0001A6A8 90 1D 00 2C */ stw r0, 0x2c(r29) +/* 8001D74C 0001A6AC 48 32 36 F5 */ bl __dt__6CTokenFv +/* 8001D750 0001A6B0 3B DE 00 08 */ addi r30, r30, 8 +lbl_8001D754: +/* 8001D754 0001A6B4 80 1F 00 04 */ lwz r0, 4(r31) +/* 8001D758 0001A6B8 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 8001D75C 0001A6BC 54 00 18 38 */ slwi r0, r0, 3 +/* 8001D760 0001A6C0 7C 03 02 14 */ add r0, r3, r0 +/* 8001D764 0001A6C4 7C 1E 00 40 */ cmplw r30, r0 +/* 8001D768 0001A6C8 40 82 FF 50 */ bne lbl_8001D6B8 +/* 8001D76C 0001A6CC 38 7D 00 44 */ addi r3, r29, 0x44 +/* 8001D770 0001A6D0 48 32 36 15 */ bl Lock__6CTokenFv +/* 8001D774 0001A6D4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8001D778 0001A6D8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8001D77C 0001A6DC 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8001D780 0001A6E0 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8001D784 0001A6E4 7C 08 03 A6 */ mtlr r0 +/* 8001D788 0001A6E8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8001D78C 0001A6EC 4E 80 00 20 */ blr + +.global UpdateMusicVol__11CFrontEndUIFv +UpdateMusicVol__11CFrontEndUIFv: +/* 8001D790 0001A6F0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001D794 0001A6F4 7C 08 02 A6 */ mflr r0 +/* 8001D798 0001A6F8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001D79C 0001A6FC 80 83 00 F4 */ lwz r4, 0xf4(r3) +/* 8001D7A0 0001A700 80 03 00 D4 */ lwz r0, 0xd4(r3) +/* 8001D7A4 0001A704 7C 04 00 40 */ cmplw r4, r0 +/* 8001D7A8 0001A708 40 82 00 0C */ bne lbl_8001D7B4 +/* 8001D7AC 0001A70C C0 22 82 D8 */ lfs f1, lbl_805A9FF8@sda21(r2) +/* 8001D7B0 0001A710 48 00 00 08 */ b lbl_8001D7B8 +lbl_8001D7B4: +/* 8001D7B4 0001A714 C0 22 82 D8 */ lfs f1, lbl_805A9FF8@sda21(r2) +lbl_8001D7B8: +/* 8001D7B8 0001A718 28 04 00 00 */ cmplwi r4, 0 +/* 8001D7BC 0001A71C 41 82 00 44 */ beq lbl_8001D800 +/* 8001D7C0 0001A720 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 8001D7C4 0001A724 3C 00 43 30 */ lis r0, 0x4330 +/* 8001D7C8 0001A728 C0 03 00 68 */ lfs f0, 0x68(r3) +/* 8001D7CC 0001A72C 80 84 01 D8 */ lwz r4, 0x1d8(r4) +/* 8001D7D0 0001A730 90 01 00 10 */ stw r0, 0x10(r1) +/* 8001D7D4 0001A734 EC 41 00 32 */ fmuls f2, f1, f0 +/* 8001D7D8 0001A738 6C 80 80 00 */ xoris r0, r4, 0x8000 +/* 8001D7DC 0001A73C C8 22 82 B8 */ lfd f1, lbl_805A9FD8@sda21(r2) +/* 8001D7E0 0001A740 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001D7E4 0001A744 C8 01 00 10 */ lfd f0, 0x10(r1) +/* 8001D7E8 0001A748 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8001D7EC 0001A74C EC 62 00 32 */ fmuls f3, f2, f0 +/* 8001D7F0 0001A750 F0 61 A0 08 */ psq_st f3, 8(r1), 1, qr2 +/* 8001D7F4 0001A754 80 63 00 F4 */ lwz r3, 0xf4(r3) +/* 8001D7F8 0001A758 88 81 00 08 */ lbz r4, 8(r1) +/* 8001D7FC 0001A75C 48 34 E4 39 */ bl SetVolume__18CStaticAudioPlayerFc +lbl_8001D800: +/* 8001D800 0001A760 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001D804 0001A764 7C 08 03 A6 */ mtlr r0 +/* 8001D808 0001A768 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001D80C 0001A76C 4E 80 00 20 */ blr + +.global OnMessage__11CFrontEndUIFRC20CArchitectureMessageR18CArchitectureQueue +OnMessage__11CFrontEndUIFRC20CArchitectureMessageR18CArchitectureQueue: +/* 8001D810 0001A770 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001D814 0001A774 7C 08 02 A6 */ mflr r0 +/* 8001D818 0001A778 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001D81C 0001A77C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001D820 0001A780 7C BF 2B 78 */ mr r31, r5 +/* 8001D824 0001A784 93 C1 00 08 */ stw r30, 8(r1) +/* 8001D828 0001A788 7C 7E 1B 78 */ mr r30, r3 +/* 8001D82C 0001A78C 80 04 00 04 */ lwz r0, 4(r4) +/* 8001D830 0001A790 2C 00 00 05 */ cmpwi r0, 5 +/* 8001D834 0001A794 41 82 00 40 */ beq lbl_8001D874 +/* 8001D838 0001A798 40 80 00 10 */ bge lbl_8001D848 +/* 8001D83C 0001A79C 2C 00 00 04 */ cmpwi r0, 4 +/* 8001D840 0001A7A0 40 80 00 14 */ bge lbl_8001D854 +/* 8001D844 0001A7A4 48 00 00 5C */ b lbl_8001D8A0 +lbl_8001D848: +/* 8001D848 0001A7A8 2C 00 00 08 */ cmpwi r0, 8 +/* 8001D84C 0001A7AC 41 82 00 4C */ beq lbl_8001D898 +/* 8001D850 0001A7B0 48 00 00 50 */ b lbl_8001D8A0 +lbl_8001D854: +/* 8001D854 0001A7B4 7C 83 23 78 */ mr r3, r4 +/* 8001D858 0001A7B8 48 03 43 65 */ bl GetParmTimerTick__7MakeMsgFRC20CArchitectureMessage +/* 8001D85C 0001A7BC 7C 64 1B 78 */ mr r4, r3 +/* 8001D860 0001A7C0 7F C3 F3 78 */ mr r3, r30 +/* 8001D864 0001A7C4 C0 24 00 04 */ lfs f1, 4(r4) +/* 8001D868 0001A7C8 7F E4 FB 78 */ mr r4, r31 +/* 8001D86C 0001A7CC 4B FF F4 DD */ bl Update__11CFrontEndUIFfR18CArchitectureQueue +/* 8001D870 0001A7D0 48 00 00 34 */ b lbl_8001D8A4 +lbl_8001D874: +/* 8001D874 0001A7D4 7C 83 23 78 */ mr r3, r4 +/* 8001D878 0001A7D8 48 03 42 6D */ bl GetParmUserInput__7MakeMsgFRC20CArchitectureMessage +/* 8001D87C 0001A7DC 4B FF E1 69 */ bl GetUserInput__21CArchMsgParmUserInputCFv +/* 8001D880 0001A7E0 7C 60 1B 78 */ mr r0, r3 +/* 8001D884 0001A7E4 7F C3 F3 78 */ mr r3, r30 +/* 8001D888 0001A7E8 7C 04 03 78 */ mr r4, r0 +/* 8001D88C 0001A7EC 7F E5 FB 78 */ mr r5, r31 +/* 8001D890 0001A7F0 4B FF EE 45 */ bl ProcessUserInput__11CFrontEndUIFRC11CFinalInputR18CArchitectureQueue +/* 8001D894 0001A7F4 48 00 00 0C */ b lbl_8001D8A0 +lbl_8001D898: +/* 8001D898 0001A7F8 38 00 00 06 */ li r0, 6 +/* 8001D89C 0001A7FC 90 1E 00 14 */ stw r0, 0x14(r30) +lbl_8001D8A0: +/* 8001D8A0 0001A800 38 60 00 00 */ li r3, 0 +lbl_8001D8A4: +/* 8001D8A4 0001A804 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001D8A8 0001A808 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001D8AC 0001A80C 83 C1 00 08 */ lwz r30, 8(r1) +/* 8001D8B0 0001A810 7C 08 03 A6 */ mtlr r0 +/* 8001D8B4 0001A814 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001D8B8 0001A818 4E 80 00 20 */ blr + +.global TransitionToFive__11CFrontEndUIFv +TransitionToFive__11CFrontEndUIFv: +/* 8001D8BC 0001A81C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001D8C0 0001A820 7C 08 02 A6 */ mflr r0 +/* 8001D8C4 0001A824 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001D8C8 0001A828 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001D8CC 0001A82C 7C 7F 1B 78 */ mr r31, r3 +/* 8001D8D0 0001A830 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8001D8D4 0001A834 2C 00 00 05 */ cmpwi r0, 5 +/* 8001D8D8 0001A838 40 80 00 8C */ bge lbl_8001D964 +/* 8001D8DC 0001A83C 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 8001D8E0 0001A840 3C 60 80 3D */ lis r3, lbl_803CC5D0@ha +/* 8001D8E4 0001A844 38 63 C5 D0 */ addi r3, r3, lbl_803CC5D0@l +/* 8001D8E8 0001A848 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001D8EC 0001A84C 54 00 10 3A */ slwi r0, r0, 2 +/* 8001D8F0 0001A850 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001D8F4 0001A854 7C 03 02 AE */ lhax r0, r3, r0 +/* 8001D8F8 0001A858 38 61 00 0C */ addi r3, r1, 0xc +/* 8001D8FC 0001A85C 38 A0 00 7F */ li r5, 0x7f +/* 8001D900 0001A860 38 C0 00 40 */ li r6, 0x40 +/* 8001D904 0001A864 54 04 04 3E */ clrlwi r4, r0, 0x10 +/* 8001D908 0001A868 38 E0 00 00 */ li r7, 0 +/* 8001D90C 0001A86C 39 20 00 00 */ li r9, 0 +/* 8001D910 0001A870 48 2C C4 65 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001D914 0001A874 80 1F 00 1C */ lwz r0, 0x1c(r31) +/* 8001D918 0001A878 3C 60 80 3D */ lis r3, lbl_803CC5D0@ha +/* 8001D91C 0001A87C 38 63 C5 D0 */ addi r3, r3, lbl_803CC5D0@l +/* 8001D920 0001A880 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001D924 0001A884 54 00 10 3A */ slwi r0, r0, 2 +/* 8001D928 0001A888 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001D92C 0001A88C 7C 83 02 14 */ add r4, r3, r0 +/* 8001D930 0001A890 38 61 00 08 */ addi r3, r1, 8 +/* 8001D934 0001A894 A8 04 00 02 */ lha r0, 2(r4) +/* 8001D938 0001A898 38 A0 00 7F */ li r5, 0x7f +/* 8001D93C 0001A89C 38 C0 00 40 */ li r6, 0x40 +/* 8001D940 0001A8A0 38 E0 00 00 */ li r7, 0 +/* 8001D944 0001A8A4 54 04 04 3E */ clrlwi r4, r0, 0x10 +/* 8001D948 0001A8A8 39 20 00 00 */ li r9, 0 +/* 8001D94C 0001A8AC 48 2C C4 29 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001D950 0001A8B0 38 00 00 05 */ li r0, 5 +/* 8001D954 0001A8B4 7F E3 FB 78 */ mr r3, r31 +/* 8001D958 0001A8B8 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8001D95C 0001A8BC 38 80 00 05 */ li r4, 5 +/* 8001D960 0001A8C0 4B FF E5 E9 */ bl StartStateTransition__11CFrontEndUIFQ211CFrontEndUI7EScreen +lbl_8001D964: +/* 8001D964 0001A8C4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001D968 0001A8C8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001D96C 0001A8CC 7C 08 03 A6 */ mtlr r0 +/* 8001D970 0001A8D0 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001D974 0001A8D4 4E 80 00 20 */ blr + +.global __dt__11CFrontEndUIFv +__dt__11CFrontEndUIFv: +/* 8001D978 0001A8D8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8001D97C 0001A8DC 7C 08 02 A6 */ mflr r0 +/* 8001D980 0001A8E0 90 01 00 44 */ stw r0, 0x44(r1) +/* 8001D984 0001A8E4 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8001D988 0001A8E8 7C 9F 23 78 */ mr r31, r4 +/* 8001D98C 0001A8EC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8001D990 0001A8F0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001D994 0001A8F4 93 A1 00 34 */ stw r29, 0x34(r1) +/* 8001D998 0001A8F8 93 81 00 30 */ stw r28, 0x30(r1) +/* 8001D99C 0001A8FC 41 82 02 18 */ beq lbl_8001DBB4 +/* 8001D9A0 0001A900 3C 60 80 3E */ lis r3, lbl_803D98BC@ha +/* 8001D9A4 0001A904 38 03 98 BC */ addi r0, r3, lbl_803D98BC@l +/* 8001D9A8 0001A908 90 1E 00 00 */ stw r0, 0(r30) +/* 8001D9AC 0001A90C 80 1E 00 14 */ lwz r0, 0x14(r30) +/* 8001D9B0 0001A910 2C 00 00 04 */ cmpwi r0, 4 +/* 8001D9B4 0001A914 41 80 00 28 */ blt lbl_8001D9DC +/* 8001D9B8 0001A918 48 32 DF 39 */ bl SysPopGroupFromARAM__9CAudioSysFv +/* 8001D9BC 0001A91C 80 9E 00 4C */ lwz r4, 0x4c(r30) +/* 8001D9C0 0001A920 38 61 00 18 */ addi r3, r1, 0x18 +/* 8001D9C4 0001A924 38 84 00 20 */ addi r4, r4, 0x20 +/* 8001D9C8 0001A928 48 32 07 99 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001D9CC 0001A92C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8001D9D0 0001A930 48 32 E0 99 */ bl "SysUnloadGroupSet__9CAudioSysFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001D9D4 0001A934 38 61 00 18 */ addi r3, r1, 0x18 +/* 8001D9D8 0001A938 48 32 01 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8001D9DC: +/* 8001D9DC 0001A93C C0 22 82 9C */ lfs f1, lbl_805A9FBC@sda21(r2) +/* 8001D9E0 0001A940 48 34 7F 2D */ bl sub_8036590c +/* 8001D9E4 0001A944 34 1E 00 F0 */ addic. r0, r30, 0xf0 +/* 8001D9E8 0001A948 41 82 00 10 */ beq lbl_8001D9F8 +/* 8001D9EC 0001A94C 80 7E 00 F0 */ lwz r3, 0xf0(r30) +/* 8001D9F0 0001A950 38 80 00 01 */ li r4, 1 +/* 8001D9F4 0001A954 48 22 54 01 */ bl __dt__21SOptionsFrontEndFrameFv +lbl_8001D9F8: +/* 8001D9F8 0001A958 34 1E 00 EC */ addic. r0, r30, 0xec +/* 8001D9FC 0001A95C 41 82 00 10 */ beq lbl_8001DA0C +/* 8001DA00 0001A960 80 7E 00 EC */ lwz r3, 0xec(r30) +/* 8001DA04 0001A964 38 80 00 01 */ li r4, 1 +/* 8001DA08 0001A968 48 00 50 A1 */ bl __dt__17SNesEmulatorFrameFv +lbl_8001DA0C: +/* 8001DA0C 0001A96C 34 1E 00 E8 */ addic. r0, r30, 0xe8 +/* 8001DA10 0001A970 41 82 00 10 */ beq lbl_8001DA20 +/* 8001DA14 0001A974 80 7E 00 E8 */ lwz r3, 0xe8(r30) +/* 8001DA18 0001A978 38 80 00 01 */ li r4, 1 +/* 8001DA1C 0001A97C 48 00 3E C9 */ bl __dt__14SFrontEndFrameFv +lbl_8001DA20: +/* 8001DA20 0001A980 34 1E 00 E4 */ addic. r0, r30, 0xe4 +/* 8001DA24 0001A984 41 82 00 10 */ beq lbl_8001DA34 +/* 8001DA28 0001A988 80 7E 00 E4 */ lwz r3, 0xe4(r30) +/* 8001DA2C 0001A98C 38 80 00 01 */ li r4, 1 +/* 8001DA30 0001A990 48 00 11 39 */ bl __dt__17SFusionBonusFrameFv +lbl_8001DA34: +/* 8001DA34 0001A994 34 1E 00 E0 */ addic. r0, r30, 0xe0 +/* 8001DA38 0001A998 41 82 00 10 */ beq lbl_8001DA48 +/* 8001DA3C 0001A99C 80 7E 00 E0 */ lwz r3, 0xe0(r30) +/* 8001DA40 0001A9A0 38 80 00 01 */ li r4, 1 +/* 8001DA44 0001A9A4 48 00 32 6D */ bl __dt__19SNewFileSelectFrameFv +lbl_8001DA48: +/* 8001DA48 0001A9A8 34 1E 00 DC */ addic. r0, r30, 0xdc +/* 8001DA4C 0001A9AC 41 82 00 10 */ beq lbl_8001DA5C +/* 8001DA50 0001A9B0 80 7E 00 DC */ lwz r3, 0xdc(r30) +/* 8001DA54 0001A9B4 38 80 00 01 */ li r4, 1 +/* 8001DA58 0001A9B8 48 23 23 CD */ bl __dt__15CSaveGameScreenFv +lbl_8001DA5C: +/* 8001DA5C 0001A9BC 34 1E 00 D8 */ addic. r0, r30, 0xd8 +/* 8001DA60 0001A9C0 41 82 00 10 */ beq lbl_8001DA70 +/* 8001DA64 0001A9C4 80 7E 00 D8 */ lwz r3, 0xd8(r30) +/* 8001DA68 0001A9C8 38 80 00 01 */ li r4, 1 +/* 8001DA6C 0001A9CC 48 34 E6 ED */ bl __dt__18CStaticAudioPlayer +lbl_8001DA70: +/* 8001DA70 0001A9D0 34 1E 00 D4 */ addic. r0, r30, 0xd4 +/* 8001DA74 0001A9D4 41 82 00 10 */ beq lbl_8001DA84 +/* 8001DA78 0001A9D8 80 7E 00 D4 */ lwz r3, 0xd4(r30) +/* 8001DA7C 0001A9DC 38 80 00 01 */ li r4, 1 +/* 8001DA80 0001A9E0 48 34 E6 D9 */ bl __dt__18CStaticAudioPlayer +lbl_8001DA84: +/* 8001DA84 0001A9E4 34 1E 00 C4 */ addic. r0, r30, 0xc4 +/* 8001DA88 0001A9E8 41 82 00 1C */ beq lbl_8001DAA4 +/* 8001DA8C 0001A9EC 88 1E 00 C4 */ lbz r0, 0xc4(r30) +/* 8001DA90 0001A9F0 28 00 00 00 */ cmplwi r0, 0 +/* 8001DA94 0001A9F4 41 82 00 10 */ beq lbl_8001DAA4 +/* 8001DA98 0001A9F8 80 7E 00 C8 */ lwz r3, 0xc8(r30) +/* 8001DA9C 0001A9FC 38 80 00 01 */ li r4, 1 +/* 8001DAA0 0001AA00 48 33 ED 19 */ bl __dt__12CMoviePlayerFv +lbl_8001DAA4: +/* 8001DAA4 0001AA04 34 1E 00 6C */ addic. r0, r30, 0x6c +/* 8001DAA8 0001AA08 41 82 00 50 */ beq lbl_8001DAF8 +/* 8001DAAC 0001AA0C 3B 9E 00 70 */ addi r28, r30, 0x70 +/* 8001DAB0 0001AA10 3B A0 00 00 */ li r29, 0 +/* 8001DAB4 0001AA14 48 00 00 30 */ b lbl_8001DAE4 +lbl_8001DAB8: +/* 8001DAB8 0001AA18 28 1C 00 00 */ cmplwi r28, 0 +/* 8001DABC 0001AA1C 41 82 00 20 */ beq lbl_8001DADC +/* 8001DAC0 0001AA20 41 82 00 1C */ beq lbl_8001DADC +/* 8001DAC4 0001AA24 88 1C 00 00 */ lbz r0, 0(r28) +/* 8001DAC8 0001AA28 28 00 00 00 */ cmplwi r0, 0 +/* 8001DACC 0001AA2C 41 82 00 10 */ beq lbl_8001DADC +/* 8001DAD0 0001AA30 80 7C 00 04 */ lwz r3, 4(r28) +/* 8001DAD4 0001AA34 38 80 00 01 */ li r4, 1 +/* 8001DAD8 0001AA38 48 33 EC E1 */ bl __dt__12CMoviePlayerFv +lbl_8001DADC: +/* 8001DADC 0001AA3C 3B 9C 00 08 */ addi r28, r28, 8 +/* 8001DAE0 0001AA40 3B BD 00 01 */ addi r29, r29, 1 +lbl_8001DAE4: +/* 8001DAE4 0001AA44 80 1E 00 6C */ lwz r0, 0x6c(r30) +/* 8001DAE8 0001AA48 7C 1D 00 00 */ cmpw r29, r0 +/* 8001DAEC 0001AA4C 41 80 FF CC */ blt lbl_8001DAB8 +/* 8001DAF0 0001AA50 38 00 00 00 */ li r0, 0 +/* 8001DAF4 0001AA54 90 1E 00 6C */ stw r0, 0x6c(r30) +lbl_8001DAF8: +/* 8001DAF8 0001AA58 34 1E 00 44 */ addic. r0, r30, 0x44 +/* 8001DAFC 0001AA5C 41 82 00 18 */ beq lbl_8001DB14 +/* 8001DB00 0001AA60 34 1E 00 44 */ addic. r0, r30, 0x44 +/* 8001DB04 0001AA64 41 82 00 10 */ beq lbl_8001DB14 +/* 8001DB08 0001AA68 38 7E 00 44 */ addi r3, r30, 0x44 +/* 8001DB0C 0001AA6C 38 80 00 00 */ li r4, 0 +/* 8001DB10 0001AA70 48 32 33 31 */ bl __dt__6CTokenFv +lbl_8001DB14: +/* 8001DB14 0001AA74 34 1E 00 38 */ addic. r0, r30, 0x38 +/* 8001DB18 0001AA78 41 82 00 18 */ beq lbl_8001DB30 +/* 8001DB1C 0001AA7C 34 1E 00 38 */ addic. r0, r30, 0x38 +/* 8001DB20 0001AA80 41 82 00 10 */ beq lbl_8001DB30 +/* 8001DB24 0001AA84 38 7E 00 38 */ addi r3, r30, 0x38 +/* 8001DB28 0001AA88 38 80 00 00 */ li r4, 0 +/* 8001DB2C 0001AA8C 48 32 33 15 */ bl __dt__6CTokenFv +lbl_8001DB30: +/* 8001DB30 0001AA90 34 1E 00 28 */ addic. r0, r30, 0x28 +/* 8001DB34 0001AA94 41 82 00 50 */ beq lbl_8001DB84 +/* 8001DB38 0001AA98 80 1E 00 2C */ lwz r0, 0x2c(r30) +/* 8001DB3C 0001AA9C 83 9E 00 34 */ lwz r28, 0x34(r30) +/* 8001DB40 0001AAA0 54 00 18 38 */ slwi r0, r0, 3 +/* 8001DB44 0001AAA4 7F BC 02 14 */ add r29, r28, r0 +/* 8001DB48 0001AAA8 93 81 00 0C */ stw r28, 0xc(r1) +/* 8001DB4C 0001AAAC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8001DB50 0001AAB0 93 A1 00 10 */ stw r29, 0x10(r1) +/* 8001DB54 0001AAB4 93 81 00 08 */ stw r28, 8(r1) +/* 8001DB58 0001AAB8 48 00 00 14 */ b lbl_8001DB6C +lbl_8001DB5C: +/* 8001DB5C 0001AABC 7F 83 E3 78 */ mr r3, r28 +/* 8001DB60 0001AAC0 38 80 FF FF */ li r4, -1 +/* 8001DB64 0001AAC4 48 32 32 DD */ bl __dt__6CTokenFv +/* 8001DB68 0001AAC8 3B 9C 00 08 */ addi r28, r28, 8 +lbl_8001DB6C: +/* 8001DB6C 0001AACC 7C 1C E8 40 */ cmplw r28, r29 +/* 8001DB70 0001AAD0 40 82 FF EC */ bne lbl_8001DB5C +/* 8001DB74 0001AAD4 80 7E 00 34 */ lwz r3, 0x34(r30) +/* 8001DB78 0001AAD8 28 03 00 00 */ cmplwi r3, 0 +/* 8001DB7C 0001AADC 41 82 00 08 */ beq lbl_8001DB84 +/* 8001DB80 0001AAE0 48 2F 7D B1 */ bl Free__7CMemoryFPCv +lbl_8001DB84: +/* 8001DB84 0001AAE4 34 1E 00 20 */ addic. r0, r30, 0x20 +/* 8001DB88 0001AAE8 41 82 00 10 */ beq lbl_8001DB98 +/* 8001DB8C 0001AAEC 38 7E 00 20 */ addi r3, r30, 0x20 +/* 8001DB90 0001AAF0 38 80 00 00 */ li r4, 0 +/* 8001DB94 0001AAF4 48 32 32 AD */ bl __dt__6CTokenFv +lbl_8001DB98: +/* 8001DB98 0001AAF8 7F C3 F3 78 */ mr r3, r30 +/* 8001DB9C 0001AAFC 38 80 00 00 */ li r4, 0 +/* 8001DBA0 0001AB00 48 03 50 05 */ bl __dt__6CIOWinFv +/* 8001DBA4 0001AB04 7F E0 07 35 */ extsh. r0, r31 +/* 8001DBA8 0001AB08 40 81 00 0C */ ble lbl_8001DBB4 +/* 8001DBAC 0001AB0C 7F C3 F3 78 */ mr r3, r30 +/* 8001DBB0 0001AB10 48 2F 7D 81 */ bl Free__7CMemoryFPCv +lbl_8001DBB4: +/* 8001DBB4 0001AB14 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8001DBB8 0001AB18 7F C3 F3 78 */ mr r3, r30 +/* 8001DBBC 0001AB1C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8001DBC0 0001AB20 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8001DBC4 0001AB24 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 8001DBC8 0001AB28 83 81 00 30 */ lwz r28, 0x30(r1) +/* 8001DBCC 0001AB2C 7C 08 03 A6 */ mtlr r0 +/* 8001DBD0 0001AB30 38 21 00 40 */ addi r1, r1, 0x40 +/* 8001DBD4 0001AB34 4E 80 00 20 */ blr + +.global __ct__11CFrontEndUIFR18CArchitectureQueue +__ct__11CFrontEndUIFR18CArchitectureQueue: +/* 8001DBD8 0001AB38 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8001DBDC 0001AB3C 7C 08 02 A6 */ mflr r0 +/* 8001DBE0 0001AB40 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001DBE4 0001AB44 90 01 00 44 */ stw r0, 0x44(r1) +/* 8001DBE8 0001AB48 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001DBEC 0001AB4C 38 84 01 2F */ addi r4, r4, 0x12f +/* 8001DBF0 0001AB50 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8001DBF4 0001AB54 7C 7F 1B 78 */ mr r31, r3 +/* 8001DBF8 0001AB58 38 61 00 28 */ addi r3, r1, 0x28 +/* 8001DBFC 0001AB5C 93 C1 00 38 */ stw r30, 0x38(r1) +/* 8001DC00 0001AB60 4B FE 70 B9 */ bl string_l__4rstlFPCc +/* 8001DC04 0001AB64 7F E3 FB 78 */ mr r3, r31 +/* 8001DC08 0001AB68 38 81 00 28 */ addi r4, r1, 0x28 +/* 8001DC0C 0001AB6C 48 03 50 01 */ bl "__ct__6CIOWinFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001DC10 0001AB70 38 61 00 28 */ addi r3, r1, 0x28 +/* 8001DC14 0001AB74 48 31 FE CD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001DC18 0001AB78 3C 60 80 3E */ lis r3, lbl_803D98BC@ha +/* 8001DC1C 0001AB7C 38 00 00 00 */ li r0, 0 +/* 8001DC20 0001AB80 38 63 98 BC */ addi r3, r3, lbl_803D98BC@l +/* 8001DC24 0001AB84 90 7F 00 00 */ stw r3, 0(r31) +/* 8001DC28 0001AB88 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8001DC2C 0001AB8C 48 37 22 51 */ bl rand +/* 8001DC30 0001AB90 3C 80 55 55 */ lis r4, 0x55555556@ha +/* 8001DC34 0001AB94 38 04 55 56 */ addi r0, r4, 0x55555556@l +/* 8001DC38 0001AB98 7C 80 18 96 */ mulhw r4, r0, r3 +/* 8001DC3C 0001AB9C 54 80 0F FE */ srwi r0, r4, 0x1f +/* 8001DC40 0001ABA0 7C 04 02 14 */ add r0, r4, r0 +/* 8001DC44 0001ABA4 1C 00 00 03 */ mulli r0, r0, 3 +/* 8001DC48 0001ABA8 7C 00 18 50 */ subf r0, r0, r3 +/* 8001DC4C 0001ABAC 90 1F 00 18 */ stw r0, 0x18(r31) +/* 8001DC50 0001ABB0 48 37 22 2D */ bl rand +/* 8001DC54 0001ABB4 3C A0 55 55 */ lis r5, 0x55555556@ha +/* 8001DC58 0001ABB8 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001DC5C 0001ABBC 38 05 55 56 */ addi r0, r5, 0x55555556@l +/* 8001DC60 0001ABC0 7C C0 18 96 */ mulhw r6, r0, r3 +/* 8001DC64 0001ABC4 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001DC68 0001ABC8 38 A4 01 3A */ addi r5, r4, 0x13a +/* 8001DC6C 0001ABCC 54 C0 0F FE */ srwi r0, r6, 0x1f +/* 8001DC70 0001ABD0 7C 06 02 14 */ add r0, r6, r0 +/* 8001DC74 0001ABD4 1C 00 00 03 */ mulli r0, r0, 3 +/* 8001DC78 0001ABD8 7C 00 18 50 */ subf r0, r0, r3 +/* 8001DC7C 0001ABDC 38 61 00 20 */ addi r3, r1, 0x20 +/* 8001DC80 0001ABE0 90 1F 00 1C */ stw r0, 0x1c(r31) +/* 8001DC84 0001ABE4 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8001DC88 0001ABE8 81 84 00 00 */ lwz r12, 0(r4) +/* 8001DC8C 0001ABEC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8001DC90 0001ABF0 7D 89 03 A6 */ mtctr r12 +/* 8001DC94 0001ABF4 4E 80 04 21 */ bctrl +/* 8001DC98 0001ABF8 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8001DC9C 0001ABFC 38 81 00 20 */ addi r4, r1, 0x20 +/* 8001DCA0 0001AC00 48 32 32 09 */ bl __ct__6CTokenFRC6CToken +/* 8001DCA4 0001AC04 38 61 00 20 */ addi r3, r1, 0x20 +/* 8001DCA8 0001AC08 38 80 FF FF */ li r4, -1 +/* 8001DCAC 0001AC0C 48 32 31 95 */ bl __dt__6CTokenFv +/* 8001DCB0 0001AC10 38 00 00 00 */ li r0, 0 +/* 8001DCB4 0001AC14 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001DCB8 0001AC18 90 1F 00 2C */ stw r0, 0x2c(r31) +/* 8001DCBC 0001AC1C 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001DCC0 0001AC20 38 61 00 18 */ addi r3, r1, 0x18 +/* 8001DCC4 0001AC24 90 1F 00 30 */ stw r0, 0x30(r31) +/* 8001DCC8 0001AC28 38 A4 01 48 */ addi r5, r4, 0x148 +/* 8001DCCC 0001AC2C 90 1F 00 34 */ stw r0, 0x34(r31) +/* 8001DCD0 0001AC30 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8001DCD4 0001AC34 81 84 00 00 */ lwz r12, 0(r4) +/* 8001DCD8 0001AC38 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8001DCDC 0001AC3C 7D 89 03 A6 */ mtctr r12 +/* 8001DCE0 0001AC40 4E 80 04 21 */ bctrl +/* 8001DCE4 0001AC44 3B DF 00 38 */ addi r30, r31, 0x38 +/* 8001DCE8 0001AC48 38 81 00 18 */ addi r4, r1, 0x18 +/* 8001DCEC 0001AC4C 7F C3 F3 78 */ mr r3, r30 +/* 8001DCF0 0001AC50 48 32 31 B9 */ bl __ct__6CTokenFRC6CToken +/* 8001DCF4 0001AC54 38 00 00 00 */ li r0, 0 +/* 8001DCF8 0001AC58 38 61 00 18 */ addi r3, r1, 0x18 +/* 8001DCFC 0001AC5C 90 1E 00 08 */ stw r0, 8(r30) +/* 8001DD00 0001AC60 38 80 FF FF */ li r4, -1 +/* 8001DD04 0001AC64 48 32 31 3D */ bl __dt__6CTokenFv +/* 8001DD08 0001AC68 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8001DD0C 0001AC6C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001DD10 0001AC70 80 A2 82 94 */ lwz r5, lbl_805A9FB4@sda21(r2) +/* 8001DD14 0001AC74 81 84 00 00 */ lwz r12, 0(r4) +/* 8001DD18 0001AC78 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8001DD1C 0001AC7C 7D 89 03 A6 */ mtctr r12 +/* 8001DD20 0001AC80 4E 80 04 21 */ bctrl +/* 8001DD24 0001AC84 3B DF 00 44 */ addi r30, r31, 0x44 +/* 8001DD28 0001AC88 38 81 00 10 */ addi r4, r1, 0x10 +/* 8001DD2C 0001AC8C 7F C3 F3 78 */ mr r3, r30 +/* 8001DD30 0001AC90 48 32 31 79 */ bl __ct__6CTokenFRC6CToken +/* 8001DD34 0001AC94 38 00 00 00 */ li r0, 0 +/* 8001DD38 0001AC98 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001DD3C 0001AC9C 90 1E 00 08 */ stw r0, 8(r30) +/* 8001DD40 0001ACA0 38 80 FF FF */ li r4, -1 +/* 8001DD44 0001ACA4 48 32 30 FD */ bl __dt__6CTokenFv +/* 8001DD48 0001ACA8 38 80 00 00 */ li r4, 0 +/* 8001DD4C 0001ACAC C0 22 82 9C */ lfs f1, lbl_805A9FBC@sda21(r2) +/* 8001DD50 0001ACB0 90 9F 00 50 */ stw r4, 0x50(r31) +/* 8001DD54 0001ACB4 38 60 00 09 */ li r3, 9 +/* 8001DD58 0001ACB8 C0 02 82 B0 */ lfs f0, lbl_805A9FD0@sda21(r2) +/* 8001DD5C 0001ACBC 38 00 00 03 */ li r0, 3 +/* 8001DD60 0001ACC0 90 9F 00 54 */ stw r4, 0x54(r31) +/* 8001DD64 0001ACC4 7C 85 23 78 */ mr r5, r4 +/* 8001DD68 0001ACC8 38 DF 00 70 */ addi r6, r31, 0x70 +/* 8001DD6C 0001ACCC D0 3F 00 58 */ stfs f1, 0x58(r31) +/* 8001DD70 0001ACD0 98 9F 00 5C */ stb r4, 0x5c(r31) +/* 8001DD74 0001ACD4 D0 3F 00 60 */ stfs f1, 0x60(r31) +/* 8001DD78 0001ACD8 D0 3F 00 64 */ stfs f1, 0x64(r31) +/* 8001DD7C 0001ACDC D0 1F 00 68 */ stfs f0, 0x68(r31) +/* 8001DD80 0001ACE0 98 81 00 08 */ stb r4, 8(r1) +/* 8001DD84 0001ACE4 90 81 00 0C */ stw r4, 0xc(r1) +/* 8001DD88 0001ACE8 90 7F 00 6C */ stw r3, 0x6c(r31) +/* 8001DD8C 0001ACEC 7C 09 03 A6 */ mtctr r0 +lbl_8001DD90: +/* 8001DD90 0001ACF0 28 06 00 00 */ cmplwi r6, 0 +/* 8001DD94 0001ACF4 41 82 00 14 */ beq lbl_8001DDA8 +/* 8001DD98 0001ACF8 88 01 00 08 */ lbz r0, 8(r1) +/* 8001DD9C 0001ACFC 98 06 00 00 */ stb r0, 0(r6) +/* 8001DDA0 0001AD00 90 86 00 04 */ stw r4, 4(r6) +/* 8001DDA4 0001AD04 98 81 00 08 */ stb r4, 8(r1) +lbl_8001DDA8: +/* 8001DDA8 0001AD08 34 C6 00 08 */ addic. r6, r6, 8 +/* 8001DDAC 0001AD0C 41 82 00 14 */ beq lbl_8001DDC0 +/* 8001DDB0 0001AD10 88 01 00 08 */ lbz r0, 8(r1) +/* 8001DDB4 0001AD14 98 06 00 00 */ stb r0, 0(r6) +/* 8001DDB8 0001AD18 90 86 00 04 */ stw r4, 4(r6) +/* 8001DDBC 0001AD1C 98 81 00 08 */ stb r4, 8(r1) +lbl_8001DDC0: +/* 8001DDC0 0001AD20 34 C6 00 08 */ addic. r6, r6, 8 +/* 8001DDC4 0001AD24 41 82 00 14 */ beq lbl_8001DDD8 +/* 8001DDC8 0001AD28 88 01 00 08 */ lbz r0, 8(r1) +/* 8001DDCC 0001AD2C 98 06 00 00 */ stb r0, 0(r6) +/* 8001DDD0 0001AD30 90 86 00 04 */ stw r4, 4(r6) +/* 8001DDD4 0001AD34 98 81 00 08 */ stb r4, 8(r1) +lbl_8001DDD8: +/* 8001DDD8 0001AD38 38 A5 00 02 */ addi r5, r5, 2 +/* 8001DDDC 0001AD3C 38 C6 00 08 */ addi r6, r6, 8 +/* 8001DDE0 0001AD40 42 00 FF B0 */ bdnz lbl_8001DD90 +/* 8001DDE4 0001AD44 88 01 00 08 */ lbz r0, 8(r1) +/* 8001DDE8 0001AD48 28 00 00 00 */ cmplwi r0, 0 +/* 8001DDEC 0001AD4C 41 82 00 10 */ beq lbl_8001DDFC +/* 8001DDF0 0001AD50 80 61 00 0C */ lwz r3, 0xc(r1) +/* 8001DDF4 0001AD54 38 80 00 01 */ li r4, 1 +/* 8001DDF8 0001AD58 48 33 E9 C1 */ bl __dt__12CMoviePlayerFv +lbl_8001DDFC: +/* 8001DDFC 0001AD5C 38 00 FF FF */ li r0, -1 +/* 8001DE00 0001AD60 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001DE04 0001AD64 90 1F 00 B8 */ stw r0, 0xb8(r31) +/* 8001DE08 0001AD68 38 00 00 00 */ li r0, 0 +/* 8001DE0C 0001AD6C 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001DE10 0001AD70 38 60 00 98 */ li r3, 0x98 +/* 8001DE14 0001AD74 90 1F 00 BC */ stw r0, 0xbc(r31) +/* 8001DE18 0001AD78 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001DE1C 0001AD7C 38 A0 00 00 */ li r5, 0 +/* 8001DE20 0001AD80 90 1F 00 C0 */ stw r0, 0xc0(r31) +/* 8001DE24 0001AD84 98 1F 00 C4 */ stb r0, 0xc4(r31) +/* 8001DE28 0001AD88 90 1F 00 C8 */ stw r0, 0xc8(r31) +/* 8001DE2C 0001AD8C 90 1F 00 CC */ stw r0, 0xcc(r31) +/* 8001DE30 0001AD90 98 1F 00 D0 */ stb r0, 0xd0(r31) +/* 8001DE34 0001AD94 98 1F 00 D1 */ stb r0, 0xd1(r31) +/* 8001DE38 0001AD98 98 1F 00 D2 */ stb r0, 0xd2(r31) +/* 8001DE3C 0001AD9C 90 1F 00 D4 */ stw r0, 0xd4(r31) +/* 8001DE40 0001ADA0 90 1F 00 D8 */ stw r0, 0xd8(r31) +/* 8001DE44 0001ADA4 48 2F 7A 29 */ bl __nw__FUlPCcPCc +/* 8001DE48 0001ADA8 7C 60 1B 79 */ or. r0, r3, r3 +/* 8001DE4C 0001ADAC 41 82 00 1C */ beq lbl_8001DE68 +/* 8001DE50 0001ADB0 80 CD A0 80 */ lwz r6, gpGameState@sda21(r13) +/* 8001DE54 0001ADB4 38 80 00 00 */ li r4, 0 +/* 8001DE58 0001ADB8 80 A6 02 10 */ lwz r5, 0x210(r6) +/* 8001DE5C 0001ADBC 80 C6 02 14 */ lwz r6, 0x214(r6) +/* 8001DE60 0001ADC0 48 23 21 1D */ bl __ct__15CSaveGameScreen +/* 8001DE64 0001ADC4 7C 60 1B 78 */ mr r0, r3 +lbl_8001DE68: +/* 8001DE68 0001ADC8 90 1F 00 DC */ stw r0, 0xdc(r31) +/* 8001DE6C 0001ADCC 38 00 00 00 */ li r0, 0 +/* 8001DE70 0001ADD0 90 1F 00 E0 */ stw r0, 0xe0(r31) +/* 8001DE74 0001ADD4 90 1F 00 E4 */ stw r0, 0xe4(r31) +/* 8001DE78 0001ADD8 90 1F 00 E8 */ stw r0, 0xe8(r31) +/* 8001DE7C 0001ADDC 90 1F 00 EC */ stw r0, 0xec(r31) +/* 8001DE80 0001ADE0 90 1F 00 F0 */ stw r0, 0xf0(r31) +/* 8001DE84 0001ADE4 90 1F 00 F4 */ stw r0, 0xf4(r31) +/* 8001DE88 0001ADE8 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 8001DE8C 0001ADEC 4B FE 58 15 */ bl ResetGameState__5CMainFv +/* 8001DE90 0001ADF0 38 8D A0 F0 */ addi r4, r13, lbl_805A8CB0@sda21 +/* 8001DE94 0001ADF4 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8001DE98 0001ADF8 80 84 00 04 */ lwz r4, 4(r4) +/* 8001DE9C 0001ADFC 48 1B 5A A9 */ bl SetCurrentWorldId__10CGameStateFUi +/* 8001DEA0 0001AE00 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8001DEA4 0001AE04 38 63 01 7C */ addi r3, r3, 0x17c +/* 8001DEA8 0001AE08 48 1F 13 45 */ bl ResetToDefaults__12CGameOptionsFv +/* 8001DEAC 0001AE0C 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8001DEB0 0001AE10 48 1B 5D 05 */ bl WriteBackupBuf__10CGameStateFv +/* 8001DEB4 0001AE14 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 8001DEB8 0001AE18 38 8D A0 F0 */ addi r4, r13, lbl_805A8CB0@sda21 +/* 8001DEBC 0001AE1C 81 83 00 00 */ lwz r12, 0(r3) +/* 8001DEC0 0001AE20 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 8001DEC4 0001AE24 7D 89 03 A6 */ mtctr r12 +/* 8001DEC8 0001AE28 4E 80 04 21 */ bctrl +/* 8001DECC 0001AE2C 38 7F 00 20 */ addi r3, r31, 0x20 +/* 8001DED0 0001AE30 48 32 2E B5 */ bl Lock__6CTokenFv +/* 8001DED4 0001AE34 3B C0 00 00 */ li r30, 0 +lbl_8001DED8: +/* 8001DED8 0001AE38 7F C3 F3 78 */ mr r3, r30 +/* 8001DEDC 0001AE3C 4B FF DC C1 */ bl GetAttractMovieFileName__11CFrontEndUIFi +/* 8001DEE0 0001AE40 48 33 1A 6D */ bl FileExists__8CDvdFileFPCc +/* 8001DEE4 0001AE44 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001DEE8 0001AE48 41 82 00 18 */ beq lbl_8001DF00 +/* 8001DEEC 0001AE4C 80 7F 00 C0 */ lwz r3, 0xc0(r31) +/* 8001DEF0 0001AE50 3B DE 00 01 */ addi r30, r30, 1 +/* 8001DEF4 0001AE54 38 03 00 01 */ addi r0, r3, 1 +/* 8001DEF8 0001AE58 90 1F 00 C0 */ stw r0, 0xc0(r31) +/* 8001DEFC 0001AE5C 4B FF FF DC */ b lbl_8001DED8 +lbl_8001DF00: +/* 8001DF00 0001AE60 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8001DF04 0001AE64 7F E3 FB 78 */ mr r3, r31 +/* 8001DF08 0001AE68 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8001DF0C 0001AE6C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 8001DF10 0001AE70 7C 08 03 A6 */ mtlr r0 +/* 8001DF14 0001AE74 38 21 00 40 */ addi r1, r1, 0x40 +/* 8001DF18 0001AE78 4E 80 00 20 */ blr + +.global CanBuild__11CResFactoryFRC10SObjectTag +CanBuild__11CResFactoryFRC10SObjectTag: +/* 8001DF1C 0001AE7C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001DF20 0001AE80 7C 08 02 A6 */ mflr r0 +/* 8001DF24 0001AE84 38 63 00 04 */ addi r3, r3, 4 +/* 8001DF28 0001AE88 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001DF2C 0001AE8C 48 31 DD 6D */ bl ResourceExists__10CResLoaderCFRC10SObjectTag +/* 8001DF30 0001AE90 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001DF34 0001AE94 7C 08 03 A6 */ mtlr r0 +/* 8001DF38 0001AE98 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001DF3C 0001AE9C 4E 80 00 20 */ blr + +.global DoOptionsCancel__17SFusionBonusFrameFPC14CGuiTableGroup +DoOptionsCancel__17SFusionBonusFrameFPC14CGuiTableGroup: +/* 8001DF40 0001AEA0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8001DF44 0001AEA4 7C 08 02 A6 */ mflr r0 +/* 8001DF48 0001AEA8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8001DF4C 0001AEAC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8001DF50 0001AEB0 7C 7F 1B 78 */ mr r31, r3 +/* 8001DF54 0001AEB4 88 03 00 39 */ lbz r0, 0x39(r3) +/* 8001DF58 0001AEB8 28 00 00 00 */ cmplwi r0, 0 +/* 8001DF5C 0001AEBC 40 82 00 10 */ bne lbl_8001DF6C +/* 8001DF60 0001AEC0 88 1F 00 3A */ lbz r0, 0x3a(r31) +/* 8001DF64 0001AEC4 28 00 00 00 */ cmplwi r0, 0 +/* 8001DF68 0001AEC8 41 82 00 38 */ beq lbl_8001DFA0 +lbl_8001DF6C: +/* 8001DF6C 0001AECC 38 00 00 00 */ li r0, 0 +/* 8001DF70 0001AED0 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001DF74 0001AED4 98 1F 00 3A */ stb r0, 0x3a(r31) +/* 8001DF78 0001AED8 38 61 00 08 */ addi r3, r1, 8 +/* 8001DF7C 0001AEDC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001DF80 0001AEE0 38 80 04 46 */ li r4, 0x446 +/* 8001DF84 0001AEE4 98 1F 00 39 */ stb r0, 0x39(r31) +/* 8001DF88 0001AEE8 38 A0 00 7F */ li r5, 0x7f +/* 8001DF8C 0001AEEC 38 C0 00 40 */ li r6, 0x40 +/* 8001DF90 0001AEF0 38 E0 00 00 */ li r7, 0 +/* 8001DF94 0001AEF4 39 20 00 00 */ li r9, 0 +/* 8001DF98 0001AEF8 48 2C BD DD */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001DF9C 0001AEFC 48 00 00 58 */ b lbl_8001DFF4 +lbl_8001DFA0: +/* 8001DFA0 0001AF00 38 60 00 01 */ li r3, 1 +/* 8001DFA4 0001AF04 38 00 00 00 */ li r0, 0 +/* 8001DFA8 0001AF08 90 7F 00 08 */ stw r3, 8(r31) +/* 8001DFAC 0001AF0C 38 80 00 00 */ li r4, 0 +/* 8001DFB0 0001AF10 80 BF 00 28 */ lwz r5, 0x28(r31) +/* 8001DFB4 0001AF14 80 65 00 C4 */ lwz r3, 0xc4(r5) +/* 8001DFB8 0001AF18 90 65 00 C8 */ stw r3, 0xc8(r5) +/* 8001DFBC 0001AF1C 90 05 00 C4 */ stw r0, 0xc4(r5) +/* 8001DFC0 0001AF20 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8001DFC4 0001AF24 48 2A C6 21 */ bl SetIsActive__10CGuiWidgetFb +/* 8001DFC8 0001AF28 38 61 00 0C */ addi r3, r1, 0xc +/* 8001DFCC 0001AF2C 38 8D 81 4C */ addi r4, r13, lbl_805A6D0C@sda21 +/* 8001DFD0 0001AF30 4B FF 7A 21 */ bl wstring_l__4rstlFPCw +/* 8001DFD4 0001AF34 38 7F 00 30 */ addi r3, r31, 0x30 +/* 8001DFD8 0001AF38 38 81 00 0C */ addi r4, r1, 0xc +/* 8001DFDC 0001AF3C 48 00 4D 35 */ bl sub_80022d10 +/* 8001DFE0 0001AF40 38 61 00 0C */ addi r3, r1, 0xc +/* 8001DFE4 0001AF44 48 31 F1 51 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001DFE8 0001AF48 80 9F 00 28 */ lwz r4, 0x28(r31) +/* 8001DFEC 0001AF4C 7F E3 FB 78 */ mr r3, r31 +/* 8001DFF0 0001AF50 48 00 02 91 */ bl SetTableColors__17SFusionBonusFrameFP14CGuiTableGroup +lbl_8001DFF4: +/* 8001DFF4 0001AF54 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8001DFF8 0001AF58 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8001DFFC 0001AF5C 7C 08 03 A6 */ mtlr r0 +/* 8001E000 0001AF60 38 21 00 30 */ addi r1, r1, 0x30 +/* 8001E004 0001AF64 4E 80 00 20 */ blr + +.global DoSelectionChange__17SFusionBonusFrameFPC14CGuiTableGroup +DoSelectionChange__17SFusionBonusFrameFPC14CGuiTableGroup: +/* 8001E008 0001AF68 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001E00C 0001AF6C 7C 08 02 A6 */ mflr r0 +/* 8001E010 0001AF70 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001E014 0001AF74 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001E018 0001AF78 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8001E01C 0001AF7C 7C 9E 23 78 */ mr r30, r4 +/* 8001E020 0001AF80 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8001E024 0001AF84 7C 7D 1B 78 */ mr r29, r3 +/* 8001E028 0001AF88 80 03 00 28 */ lwz r0, 0x28(r3) +/* 8001E02C 0001AF8C 7C 1E 00 40 */ cmplw r30, r0 +/* 8001E030 0001AF90 40 82 00 38 */ bne lbl_8001E068 +/* 8001E034 0001AF94 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001E038 0001AF98 38 61 00 0C */ addi r3, r1, 0xc +/* 8001E03C 0001AF9C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001E040 0001AFA0 38 80 04 45 */ li r4, 0x445 +/* 8001E044 0001AFA4 38 A0 00 7F */ li r5, 0x7f +/* 8001E048 0001AFA8 38 C0 00 40 */ li r6, 0x40 +/* 8001E04C 0001AFAC 38 E0 00 00 */ li r7, 0 +/* 8001E050 0001AFB0 39 20 00 00 */ li r9, 0 +/* 8001E054 0001AFB4 48 2C BD 21 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001E058 0001AFB8 38 00 00 00 */ li r0, 0 +/* 8001E05C 0001AFBC 98 1D 00 3A */ stb r0, 0x3a(r29) +/* 8001E060 0001AFC0 98 1D 00 39 */ stb r0, 0x39(r29) +/* 8001E064 0001AFC4 48 00 00 70 */ b lbl_8001E0D4 +lbl_8001E068: +/* 8001E068 0001AFC8 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001E06C 0001AFCC 38 61 00 08 */ addi r3, r1, 8 +/* 8001E070 0001AFD0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001E074 0001AFD4 38 80 04 47 */ li r4, 0x447 +/* 8001E078 0001AFD8 38 A0 00 7F */ li r5, 0x7f +/* 8001E07C 0001AFDC 38 C0 00 40 */ li r6, 0x40 +/* 8001E080 0001AFE0 38 E0 00 00 */ li r7, 0 +/* 8001E084 0001AFE4 39 20 00 00 */ li r9, 0 +/* 8001E088 0001AFE8 48 2C BC ED */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001E08C 0001AFEC 80 7D 00 2C */ lwz r3, 0x2c(r29) +/* 8001E090 0001AFF0 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 8001E094 0001AFF4 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8001E098 0001AFF8 38 64 00 A8 */ addi r3, r4, 0xa8 +/* 8001E09C 0001AFFC 20 00 00 01 */ subfic r0, r0, 1 +/* 8001E0A0 0001B000 7C 00 00 34 */ cntlzw r0, r0 +/* 8001E0A4 0001B004 54 04 D9 7E */ srwi r4, r0, 5 +/* 8001E0A8 0001B008 48 1B 71 19 */ bl SetHasFusion__14CSystemOptionsFb +/* 8001E0AC 0001B00C 80 9D 00 2C */ lwz r4, 0x2c(r29) +/* 8001E0B0 0001B010 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8001E0B4 0001B014 83 E4 00 C4 */ lwz r31, 0xc4(r4) +/* 8001E0B8 0001B018 48 1B 58 85 */ bl PlayerState__10CGameStateFv +/* 8001E0BC 0001B01C 80 63 00 00 */ lwz r3, 0(r3) +/* 8001E0C0 0001B020 20 1F 00 01 */ subfic r0, r31, 1 +/* 8001E0C4 0001B024 7C 00 00 34 */ cntlzw r0, r0 +/* 8001E0C8 0001B028 80 63 00 00 */ lwz r3, 0(r3) +/* 8001E0CC 0001B02C 54 04 D9 7E */ srwi r4, r0, 5 +/* 8001E0D0 0001B030 48 07 33 E5 */ bl SetIsFusionEnabled__12CPlayerStateFb +lbl_8001E0D4: +/* 8001E0D4 0001B034 7F A3 EB 78 */ mr r3, r29 +/* 8001E0D8 0001B038 7F C4 F3 78 */ mr r4, r30 +/* 8001E0DC 0001B03C 48 00 01 A5 */ bl SetTableColors__17SFusionBonusFrameFP14CGuiTableGroup +/* 8001E0E0 0001B040 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001E0E4 0001B044 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001E0E8 0001B048 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001E0EC 0001B04C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8001E0F0 0001B050 7C 08 03 A6 */ mtlr r0 +/* 8001E0F4 0001B054 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001E0F8 0001B058 4E 80 00 20 */ blr + +.global DoOptionsAdvance__17SFusionBonusFrameFPC14CGuiTableGroup +DoOptionsAdvance__17SFusionBonusFrameFPC14CGuiTableGroup: +/* 8001E0FC 0001B05C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001E100 0001B060 7C 08 02 A6 */ mflr r0 +/* 8001E104 0001B064 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001E108 0001B068 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001E10C 0001B06C 7C 7F 1B 78 */ mr r31, r3 +/* 8001E110 0001B070 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8001E114 0001B074 80 63 00 28 */ lwz r3, 0x28(r3) +/* 8001E118 0001B078 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 8001E11C 0001B07C 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8001E120 0001B080 88 84 01 78 */ lbz r4, 0x178(r4) +/* 8001E124 0001B084 2C 00 00 01 */ cmpwi r0, 1 +/* 8001E128 0001B088 54 83 D7 FE */ rlwinm r3, r4, 0x1a, 0x1f, 0x1f +/* 8001E12C 0001B08C 54 85 CF FE */ rlwinm r5, r4, 0x19, 0x1f, 0x1f +/* 8001E130 0001B090 54 84 E7 FE */ rlwinm r4, r4, 0x1c, 0x1f, 0x1f +/* 8001E134 0001B094 41 82 00 14 */ beq lbl_8001E148 +/* 8001E138 0001B098 40 80 01 30 */ bge lbl_8001E268 +/* 8001E13C 0001B09C 2C 00 00 00 */ cmpwi r0, 0 +/* 8001E140 0001B0A0 40 80 00 B0 */ bge lbl_8001E1F0 +/* 8001E144 0001B0A4 48 00 01 24 */ b lbl_8001E268 +lbl_8001E148: +/* 8001E148 0001B0A8 88 1F 00 3A */ lbz r0, 0x3a(r31) +/* 8001E14C 0001B0AC 28 00 00 00 */ cmplwi r0, 0 +/* 8001E150 0001B0B0 41 82 00 14 */ beq lbl_8001E164 +/* 8001E154 0001B0B4 38 00 00 00 */ li r0, 0 +/* 8001E158 0001B0B8 98 1F 00 3A */ stb r0, 0x3a(r31) +/* 8001E15C 0001B0BC 48 00 4D F9 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 8001E160 0001B0C0 48 00 01 08 */ b lbl_8001E268 +lbl_8001E164: +/* 8001E164 0001B0C4 28 03 00 00 */ cmplwi r3, 0 +/* 8001E168 0001B0C8 41 82 00 58 */ beq lbl_8001E1C0 +/* 8001E16C 0001B0CC 28 05 00 00 */ cmplwi r5, 0 +/* 8001E170 0001B0D0 40 82 00 F8 */ bne lbl_8001E268 +/* 8001E174 0001B0D4 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001E178 0001B0D8 38 60 00 44 */ li r3, 0x44 +/* 8001E17C 0001B0DC 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001E180 0001B0E0 38 A0 00 00 */ li r5, 0 +/* 8001E184 0001B0E4 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001E188 0001B0E8 48 2F 76 E5 */ bl __nw__FUlPCcPCc +/* 8001E18C 0001B0EC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001E190 0001B0F0 41 82 00 18 */ beq lbl_8001E1A8 +/* 8001E194 0001B0F4 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 8001E198 0001B0F8 38 C0 00 00 */ li r6, 0 +/* 8001E19C 0001B0FC 80 BF 00 04 */ lwz r5, 4(r31) +/* 8001E1A0 0001B100 48 00 40 85 */ bl __ct__13SGBALinkFrameFPC9CGuiFrameP11CGBASupportb +/* 8001E1A4 0001B104 7C 7E 1B 78 */ mr r30, r3 +lbl_8001E1A8: +/* 8001E1A8 0001B108 80 7F 00 00 */ lwz r3, 0(r31) +/* 8001E1AC 0001B10C 38 80 00 01 */ li r4, 1 +/* 8001E1B0 0001B110 48 00 40 39 */ bl __dt__13SGBALinkFrameFv +/* 8001E1B4 0001B114 93 DF 00 00 */ stw r30, 0(r31) +/* 8001E1B8 0001B118 48 00 4D 9D */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 8001E1BC 0001B11C 48 00 00 AC */ b lbl_8001E268 +lbl_8001E1C0: +/* 8001E1C0 0001B120 38 00 00 01 */ li r0, 1 +/* 8001E1C4 0001B124 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001E1C8 0001B128 98 1F 00 3A */ stb r0, 0x3a(r31) +/* 8001E1CC 0001B12C 38 61 00 08 */ addi r3, r1, 8 +/* 8001E1D0 0001B130 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001E1D4 0001B134 38 80 04 46 */ li r4, 0x446 +/* 8001E1D8 0001B138 38 A0 00 7F */ li r5, 0x7f +/* 8001E1DC 0001B13C 38 C0 00 40 */ li r6, 0x40 +/* 8001E1E0 0001B140 38 E0 00 00 */ li r7, 0 +/* 8001E1E4 0001B144 39 20 00 00 */ li r9, 0 +/* 8001E1E8 0001B148 48 2C BB 8D */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001E1EC 0001B14C 48 00 00 7C */ b lbl_8001E268 +lbl_8001E1F0: +/* 8001E1F0 0001B150 88 1F 00 39 */ lbz r0, 0x39(r31) +/* 8001E1F4 0001B154 28 00 00 00 */ cmplwi r0, 0 +/* 8001E1F8 0001B158 41 82 00 14 */ beq lbl_8001E20C +/* 8001E1FC 0001B15C 38 00 00 00 */ li r0, 0 +/* 8001E200 0001B160 98 1F 00 39 */ stb r0, 0x39(r31) +/* 8001E204 0001B164 48 00 4D 51 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 8001E208 0001B168 48 00 00 60 */ b lbl_8001E268 +lbl_8001E20C: +/* 8001E20C 0001B16C 28 04 00 00 */ cmplwi r4, 0 +/* 8001E210 0001B170 41 82 00 10 */ beq lbl_8001E220 +/* 8001E214 0001B174 38 00 00 02 */ li r0, 2 +/* 8001E218 0001B178 90 1F 00 08 */ stw r0, 8(r31) +/* 8001E21C 0001B17C 48 00 00 4C */ b lbl_8001E268 +lbl_8001E220: +/* 8001E220 0001B180 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001E224 0001B184 38 60 00 44 */ li r3, 0x44 +/* 8001E228 0001B188 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001E22C 0001B18C 38 A0 00 00 */ li r5, 0 +/* 8001E230 0001B190 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001E234 0001B194 48 2F 76 39 */ bl __nw__FUlPCcPCc +/* 8001E238 0001B198 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001E23C 0001B19C 41 82 00 18 */ beq lbl_8001E254 +/* 8001E240 0001B1A0 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 8001E244 0001B1A4 38 C0 00 00 */ li r6, 0 +/* 8001E248 0001B1A8 80 BF 00 04 */ lwz r5, 4(r31) +/* 8001E24C 0001B1AC 48 00 3F D9 */ bl __ct__13SGBALinkFrameFPC9CGuiFrameP11CGBASupportb +/* 8001E250 0001B1B0 7C 7E 1B 78 */ mr r30, r3 +lbl_8001E254: +/* 8001E254 0001B1B4 80 7F 00 00 */ lwz r3, 0(r31) +/* 8001E258 0001B1B8 38 80 00 01 */ li r4, 1 +/* 8001E25C 0001B1BC 48 00 3F 8D */ bl __dt__13SGBALinkFrameFv +/* 8001E260 0001B1C0 93 DF 00 00 */ stw r30, 0(r31) +/* 8001E264 0001B1C4 48 00 4C F1 */ bl PlayAdvanceSfx__11CFrontEndUIFv +lbl_8001E268: +/* 8001E268 0001B1C8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001E26C 0001B1CC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001E270 0001B1D0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001E274 0001B1D4 7C 08 03 A6 */ mtlr r0 +/* 8001E278 0001B1D8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001E27C 0001B1DC 4E 80 00 20 */ blr + +.global SetTableColors__17SFusionBonusFrameFP14CGuiTableGroup +SetTableColors__17SFusionBonusFrameFP14CGuiTableGroup: +/* 8001E280 0001B1E0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001E284 0001B1E4 7C 08 02 A6 */ mflr r0 +/* 8001E288 0001B1E8 7C 83 23 78 */ mr r3, r4 +/* 8001E28C 0001B1EC 38 E0 00 FF */ li r7, 0xff +/* 8001E290 0001B1F0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001E294 0001B1F4 38 C0 00 A0 */ li r6, 0xa0 +/* 8001E298 0001B1F8 38 00 00 C8 */ li r0, 0xc8 +/* 8001E29C 0001B1FC 38 81 00 0C */ addi r4, r1, 0xc +/* 8001E2A0 0001B200 98 E1 00 0C */ stb r7, 0xc(r1) +/* 8001E2A4 0001B204 38 A1 00 08 */ addi r5, r1, 8 +/* 8001E2A8 0001B208 98 E1 00 0D */ stb r7, 0xd(r1) +/* 8001E2AC 0001B20C 98 E1 00 0E */ stb r7, 0xe(r1) +/* 8001E2B0 0001B210 98 E1 00 0F */ stb r7, 0xf(r1) +/* 8001E2B4 0001B214 98 C1 00 08 */ stb r6, 8(r1) +/* 8001E2B8 0001B218 98 C1 00 09 */ stb r6, 9(r1) +/* 8001E2BC 0001B21C 98 C1 00 0A */ stb r6, 0xa(r1) +/* 8001E2C0 0001B220 98 01 00 0B */ stb r0, 0xb(r1) +/* 8001E2C4 0001B224 48 2A 83 39 */ bl SetColors__14CGuiTableGroupCFRC6CColorRC6CColor +/* 8001E2C8 0001B228 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001E2CC 0001B22C 7C 08 03 A6 */ mtlr r0 +/* 8001E2D0 0001B230 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001E2D4 0001B234 4E 80 00 20 */ blr + +.global sub_8001e2d8 +sub_8001e2d8: +/* 8001E2D8 0001B238 38 00 00 00 */ li r0, 0 +/* 8001E2DC 0001B23C 98 03 00 3A */ stb r0, 0x3a(r3) +/* 8001E2E0 0001B240 98 03 00 39 */ stb r0, 0x39(r3) +/* 8001E2E4 0001B244 4E 80 00 20 */ blr + +.global FinishedLoading__17SFusionBonusFrameFv +FinishedLoading__17SFusionBonusFrameFv: +/* 8001E2E8 0001B248 94 21 FF 00 */ stwu r1, -0x100(r1) +/* 8001E2EC 0001B24C 7C 08 02 A6 */ mflr r0 +/* 8001E2F0 0001B250 3C A0 80 3E */ lis r5, lbl_803D9820@ha +/* 8001E2F4 0001B254 90 01 01 04 */ stw r0, 0x104(r1) +/* 8001E2F8 0001B258 93 E1 00 FC */ stw r31, 0xfc(r1) +/* 8001E2FC 0001B25C 3B E5 98 20 */ addi r31, r5, lbl_803D9820@l +/* 8001E300 0001B260 93 C1 00 F8 */ stw r30, 0xf8(r1) +/* 8001E304 0001B264 7C 7E 1B 78 */ mr r30, r3 +/* 8001E308 0001B268 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001E30C 0001B26C 93 A1 00 F4 */ stw r29, 0xf4(r1) +/* 8001E310 0001B270 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001E314 0001B274 38 84 01 58 */ addi r4, r4, 0x158 +/* 8001E318 0001B278 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E31C 0001B27C 48 2A 3E 39 */ bl FindWidget__9CGuiFrameCFPCc +/* 8001E320 0001B280 90 7E 00 28 */ stw r3, 0x28(r30) +/* 8001E324 0001B284 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001E328 0001B288 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001E32C 0001B28C 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E330 0001B290 38 84 01 6B */ addi r4, r4, 0x16b +/* 8001E334 0001B294 48 2A 3E 21 */ bl FindWidget__9CGuiFrameCFPCc +/* 8001E338 0001B298 90 7E 00 2C */ stw r3, 0x2c(r30) +/* 8001E33C 0001B29C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001E340 0001B2A0 38 A3 C6 44 */ addi r5, r3, lbl_803CC644@l +/* 8001E344 0001B2A4 38 61 00 08 */ addi r3, r1, 8 +/* 8001E348 0001B2A8 80 9E 00 24 */ lwz r4, 0x24(r30) +/* 8001E34C 0001B2AC 38 A5 01 81 */ addi r5, r5, 0x181 +/* 8001E350 0001B2B0 48 00 4A A9 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 8001E354 0001B2B4 80 01 00 08 */ lwz r0, 8(r1) +/* 8001E358 0001B2B8 38 80 00 42 */ li r4, 0x42 +/* 8001E35C 0001B2BC 90 1E 00 30 */ stw r0, 0x30(r30) +/* 8001E360 0001B2C0 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8001E364 0001B2C4 90 1E 00 34 */ stw r0, 0x34(r30) +/* 8001E368 0001B2C8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001E36C 0001B2CC 48 33 83 91 */ bl GetString__12CStringTableCFi +/* 8001E370 0001B2D0 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001E374 0001B2D4 7C 65 1B 78 */ mr r5, r3 +/* 8001E378 0001B2D8 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001E37C 0001B2DC 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E380 0001B2E0 38 84 01 97 */ addi r4, r4, 0x197 +/* 8001E384 0001B2E4 48 00 4B 01 */ bl FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +/* 8001E388 0001B2E8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001E38C 0001B2EC 38 80 00 3F */ li r4, 0x3f +/* 8001E390 0001B2F0 48 33 83 6D */ bl GetString__12CStringTableCFi +/* 8001E394 0001B2F4 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001E398 0001B2F8 7C 65 1B 78 */ mr r5, r3 +/* 8001E39C 0001B2FC 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001E3A0 0001B300 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E3A4 0001B304 38 84 01 A4 */ addi r4, r4, 0x1a4 +/* 8001E3A8 0001B308 48 00 4A DD */ bl FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +/* 8001E3AC 0001B30C 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001E3B0 0001B310 38 80 00 41 */ li r4, 0x41 +/* 8001E3B4 0001B314 48 33 83 49 */ bl GetString__12CStringTableCFi +/* 8001E3B8 0001B318 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001E3BC 0001B31C 7C 65 1B 78 */ mr r5, r3 +/* 8001E3C0 0001B320 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001E3C4 0001B324 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E3C8 0001B328 38 84 01 B8 */ addi r4, r4, 0x1b8 +/* 8001E3CC 0001B32C 48 00 4A B9 */ bl FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +/* 8001E3D0 0001B330 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001E3D4 0001B334 38 80 00 40 */ li r4, 0x40 +/* 8001E3D8 0001B338 48 33 83 25 */ bl GetString__12CStringTableCFi +/* 8001E3DC 0001B33C 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001E3E0 0001B340 7C 65 1B 78 */ mr r5, r3 +/* 8001E3E4 0001B344 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001E3E8 0001B348 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E3EC 0001B34C 38 84 01 CE */ addi r4, r4, 0x1ce +/* 8001E3F0 0001B350 48 00 4A 95 */ bl FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +/* 8001E3F4 0001B354 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001E3F8 0001B358 38 80 00 64 */ li r4, 0x64 +/* 8001E3FC 0001B35C 48 33 83 01 */ bl GetString__12CStringTableCFi +/* 8001E400 0001B360 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001E404 0001B364 7C 65 1B 78 */ mr r5, r3 +/* 8001E408 0001B368 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001E40C 0001B36C 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E410 0001B370 38 84 01 E5 */ addi r4, r4, 0x1e5 +/* 8001E414 0001B374 48 00 4A 71 */ bl FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +/* 8001E418 0001B378 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001E41C 0001B37C 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E420 0001B380 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001E424 0001B384 38 84 01 F4 */ addi r4, r4, 0x1f4 +/* 8001E428 0001B388 48 2A 3D 2D */ bl FindWidget__9CGuiFrameCFPCc +/* 8001E42C 0001B38C 7C 7D 1B 78 */ mr r29, r3 +/* 8001E430 0001B390 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001E434 0001B394 38 80 00 55 */ li r4, 0x55 +/* 8001E438 0001B398 48 33 82 C5 */ bl GetString__12CStringTableCFi +/* 8001E43C 0001B39C 7C 64 1B 78 */ mr r4, r3 +/* 8001E440 0001B3A0 38 61 00 80 */ addi r3, r1, 0x80 +/* 8001E444 0001B3A4 4B FF 75 AD */ bl wstring_l__4rstlFPCw +/* 8001E448 0001B3A8 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 8001E44C 0001B3AC 38 81 00 80 */ addi r4, r1, 0x80 +/* 8001E450 0001B3B0 38 A0 00 00 */ li r5, 0 +/* 8001E454 0001B3B4 48 2A B4 31 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001E458 0001B3B8 38 61 00 80 */ addi r3, r1, 0x80 +/* 8001E45C 0001B3BC 48 31 EC D9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001E460 0001B3C0 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001E464 0001B3C4 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E468 0001B3C8 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001E46C 0001B3CC 38 84 02 05 */ addi r4, r4, 0x205 +/* 8001E470 0001B3D0 48 2A 3C E5 */ bl FindWidget__9CGuiFrameCFPCc +/* 8001E474 0001B3D4 7C 7D 1B 78 */ mr r29, r3 +/* 8001E478 0001B3D8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001E47C 0001B3DC 38 80 00 52 */ li r4, 0x52 +/* 8001E480 0001B3E0 48 33 82 7D */ bl GetString__12CStringTableCFi +/* 8001E484 0001B3E4 7C 64 1B 78 */ mr r4, r3 +/* 8001E488 0001B3E8 38 61 00 70 */ addi r3, r1, 0x70 +/* 8001E48C 0001B3EC 4B FF 75 65 */ bl wstring_l__4rstlFPCw +/* 8001E490 0001B3F0 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 8001E494 0001B3F4 38 81 00 70 */ addi r4, r1, 0x70 +/* 8001E498 0001B3F8 38 A0 00 00 */ li r5, 0 +/* 8001E49C 0001B3FC 48 2A B3 E9 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001E4A0 0001B400 38 61 00 70 */ addi r3, r1, 0x70 +/* 8001E4A4 0001B404 48 31 EC 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001E4A8 0001B408 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8001E4AC 0001B40C 38 80 00 00 */ li r4, 0 +/* 8001E4B0 0001B410 48 2A C1 35 */ bl SetIsActive__10CGuiWidgetFb +/* 8001E4B4 0001B414 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8001E4B8 0001B418 38 80 00 00 */ li r4, 0 +/* 8001E4BC 0001B41C 48 2A C1 71 */ bl SetIsVisible__10CGuiWidgetFb +/* 8001E4C0 0001B420 80 9E 00 2C */ lwz r4, 0x2c(r30) +/* 8001E4C4 0001B424 38 00 00 00 */ li r0, 0 +/* 8001E4C8 0001B428 7F C3 F3 78 */ mr r3, r30 +/* 8001E4CC 0001B42C 98 04 00 D1 */ stb r0, 0xd1(r4) +/* 8001E4D0 0001B430 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 8001E4D4 0001B434 80 DE 00 2C */ lwz r6, 0x2c(r30) +/* 8001E4D8 0001B438 88 84 01 78 */ lbz r4, 0x178(r4) +/* 8001E4DC 0001B43C 80 06 00 C4 */ lwz r0, 0xc4(r6) +/* 8001E4E0 0001B440 54 85 EF FE */ rlwinm r5, r4, 0x1d, 0x1f, 0x1f +/* 8001E4E4 0001B444 7C 85 00 D0 */ neg r4, r5 +/* 8001E4E8 0001B448 90 06 00 C8 */ stw r0, 0xc8(r6) +/* 8001E4EC 0001B44C 7C 80 2B 78 */ or r0, r4, r5 +/* 8001E4F0 0001B450 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8001E4F4 0001B454 90 06 00 C4 */ stw r0, 0xc4(r6) +/* 8001E4F8 0001B458 80 9E 00 28 */ lwz r4, 0x28(r30) +/* 8001E4FC 0001B45C 4B FF FD 85 */ bl SetTableColors__17SFusionBonusFrameFP14CGuiTableGroup +/* 8001E500 0001B460 80 9E 00 2C */ lwz r4, 0x2c(r30) +/* 8001E504 0001B464 7F C3 F3 78 */ mr r3, r30 +/* 8001E508 0001B468 4B FF FD 79 */ bl SetTableColors__17SFusionBonusFrameFP14CGuiTableGroup +/* 8001E50C 0001B46C 80 FF 00 6C */ lwz r7, 0x6c(r31) +/* 8001E510 0001B470 38 61 00 34 */ addi r3, r1, 0x34 +/* 8001E514 0001B474 80 DF 00 70 */ lwz r6, 0x70(r31) +/* 8001E518 0001B478 38 81 00 64 */ addi r4, r1, 0x64 +/* 8001E51C 0001B47C 80 1F 00 74 */ lwz r0, 0x74(r31) +/* 8001E520 0001B480 38 A0 00 0C */ li r5, 0xc +/* 8001E524 0001B484 90 E1 00 64 */ stw r7, 0x64(r1) +/* 8001E528 0001B488 90 C1 00 68 */ stw r6, 0x68(r1) +/* 8001E52C 0001B48C 90 01 00 6C */ stw r0, 0x6c(r1) +/* 8001E530 0001B490 4B FE 4F 61 */ bl memcpy +/* 8001E534 0001B494 3C 60 80 02 */ lis r3, sub_8001e6dc@ha +/* 8001E538 0001B498 93 C1 00 DC */ stw r30, 0xdc(r1) +/* 8001E53C 0001B49C 38 03 E6 DC */ addi r0, r3, sub_8001e6dc@l +/* 8001E540 0001B4A0 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 8001E544 0001B4A4 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 8001E548 0001B4A8 38 81 00 34 */ addi r4, r1, 0x34 +/* 8001E54C 0001B4AC 38 A0 00 0C */ li r5, 0xc +/* 8001E550 0001B4B0 4B FE 4F 41 */ bl memcpy +/* 8001E554 0001B4B4 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8001E558 0001B4B8 38 81 00 D8 */ addi r4, r1, 0xd8 +/* 8001E55C 0001B4BC 48 2A 82 FD */ bl "SetMenuAdvanceCallback__14CGuiTableGroupFRC29TFunctor1" +/* 8001E560 0001B4C0 80 FF 00 78 */ lwz r7, 0x78(r31) +/* 8001E564 0001B4C4 38 61 00 28 */ addi r3, r1, 0x28 +/* 8001E568 0001B4C8 80 DF 00 7C */ lwz r6, 0x7c(r31) +/* 8001E56C 0001B4CC 38 81 00 58 */ addi r4, r1, 0x58 +/* 8001E570 0001B4D0 80 1F 00 80 */ lwz r0, 0x80(r31) +/* 8001E574 0001B4D4 38 A0 00 0C */ li r5, 0xc +/* 8001E578 0001B4D8 90 E1 00 58 */ stw r7, 0x58(r1) +/* 8001E57C 0001B4DC 90 C1 00 5C */ stw r6, 0x5c(r1) +/* 8001E580 0001B4E0 90 01 00 60 */ stw r0, 0x60(r1) +/* 8001E584 0001B4E4 4B FE 4F 0D */ bl memcpy +/* 8001E588 0001B4E8 3C 60 80 02 */ lis r3, sub_8001e678@ha +/* 8001E58C 0001B4EC 93 C1 00 C4 */ stw r30, 0xc4(r1) +/* 8001E590 0001B4F0 38 03 E6 78 */ addi r0, r3, sub_8001e678@l +/* 8001E594 0001B4F4 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 8001E598 0001B4F8 90 01 00 C0 */ stw r0, 0xc0(r1) +/* 8001E59C 0001B4FC 38 81 00 28 */ addi r4, r1, 0x28 +/* 8001E5A0 0001B500 38 A0 00 0C */ li r5, 0xc +/* 8001E5A4 0001B504 4B FE 4E ED */ bl memcpy +/* 8001E5A8 0001B508 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8001E5AC 0001B50C 38 81 00 C0 */ addi r4, r1, 0xc0 +/* 8001E5B0 0001B510 48 2A 82 41 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 8001E5B4 0001B514 80 FF 00 84 */ lwz r7, 0x84(r31) +/* 8001E5B8 0001B518 38 61 00 1C */ addi r3, r1, 0x1c +/* 8001E5BC 0001B51C 80 DF 00 88 */ lwz r6, 0x88(r31) +/* 8001E5C0 0001B520 38 81 00 4C */ addi r4, r1, 0x4c +/* 8001E5C4 0001B524 80 1F 00 8C */ lwz r0, 0x8c(r31) +/* 8001E5C8 0001B528 38 A0 00 0C */ li r5, 0xc +/* 8001E5CC 0001B52C 90 E1 00 4C */ stw r7, 0x4c(r1) +/* 8001E5D0 0001B530 90 C1 00 50 */ stw r6, 0x50(r1) +/* 8001E5D4 0001B534 90 01 00 54 */ stw r0, 0x54(r1) +/* 8001E5D8 0001B538 4B FE 4E B9 */ bl memcpy +/* 8001E5DC 0001B53C 3C 60 80 02 */ lis r3, sub_8001e6dc@ha +/* 8001E5E0 0001B540 93 C1 00 AC */ stw r30, 0xac(r1) +/* 8001E5E4 0001B544 38 03 E6 DC */ addi r0, r3, sub_8001e6dc@l +/* 8001E5E8 0001B548 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 8001E5EC 0001B54C 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 8001E5F0 0001B550 38 81 00 1C */ addi r4, r1, 0x1c +/* 8001E5F4 0001B554 38 A0 00 0C */ li r5, 0xc +/* 8001E5F8 0001B558 4B FE 4E 99 */ bl memcpy +/* 8001E5FC 0001B55C 80 7E 00 28 */ lwz r3, 0x28(r30) +/* 8001E600 0001B560 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 8001E604 0001B564 48 2A 82 21 */ bl "SetMenuCancelCallback__14CGuiTableGroupFRC29TFunctor1" +/* 8001E608 0001B568 80 FF 00 90 */ lwz r7, 0x90(r31) +/* 8001E60C 0001B56C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001E610 0001B570 80 DF 00 94 */ lwz r6, 0x94(r31) +/* 8001E614 0001B574 38 81 00 40 */ addi r4, r1, 0x40 +/* 8001E618 0001B578 80 1F 00 98 */ lwz r0, 0x98(r31) +/* 8001E61C 0001B57C 38 A0 00 0C */ li r5, 0xc +/* 8001E620 0001B580 90 E1 00 40 */ stw r7, 0x40(r1) +/* 8001E624 0001B584 90 C1 00 44 */ stw r6, 0x44(r1) +/* 8001E628 0001B588 90 01 00 48 */ stw r0, 0x48(r1) +/* 8001E62C 0001B58C 4B FE 4E 65 */ bl memcpy +/* 8001E630 0001B590 3C 60 80 02 */ lis r3, sub_8001e678@ha +/* 8001E634 0001B594 93 C1 00 94 */ stw r30, 0x94(r1) +/* 8001E638 0001B598 38 03 E6 78 */ addi r0, r3, sub_8001e678@l +/* 8001E63C 0001B59C 38 61 00 98 */ addi r3, r1, 0x98 +/* 8001E640 0001B5A0 90 01 00 90 */ stw r0, 0x90(r1) +/* 8001E644 0001B5A4 38 81 00 10 */ addi r4, r1, 0x10 +/* 8001E648 0001B5A8 38 A0 00 0C */ li r5, 0xc +/* 8001E64C 0001B5AC 4B FE 4E 45 */ bl memcpy +/* 8001E650 0001B5B0 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8001E654 0001B5B4 38 81 00 90 */ addi r4, r1, 0x90 +/* 8001E658 0001B5B8 48 2A 81 99 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 8001E65C 0001B5BC 80 01 01 04 */ lwz r0, 0x104(r1) +/* 8001E660 0001B5C0 83 E1 00 FC */ lwz r31, 0xfc(r1) +/* 8001E664 0001B5C4 83 C1 00 F8 */ lwz r30, 0xf8(r1) +/* 8001E668 0001B5C8 83 A1 00 F4 */ lwz r29, 0xf4(r1) +/* 8001E66C 0001B5CC 7C 08 03 A6 */ mtlr r0 +/* 8001E670 0001B5D0 38 21 01 00 */ addi r1, r1, 0x100 +/* 8001E674 0001B5D4 4E 80 00 20 */ blr + +.global sub_8001e678 +sub_8001e678: +/* 8001E678 0001B5D8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8001E67C 0001B5DC 7C 08 02 A6 */ mflr r0 +/* 8001E680 0001B5E0 90 01 00 34 */ stw r0, 0x34(r1) +/* 8001E684 0001B5E4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8001E688 0001B5E8 7C DF 33 78 */ mr r31, r6 +/* 8001E68C 0001B5EC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8001E690 0001B5F0 7C BE 2B 78 */ mr r30, r5 +/* 8001E694 0001B5F4 38 A0 00 0C */ li r5, 0xc +/* 8001E698 0001B5F8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8001E69C 0001B5FC 7C 7D 1B 78 */ mr r29, r3 +/* 8001E6A0 0001B600 38 61 00 08 */ addi r3, r1, 8 +/* 8001E6A4 0001B604 4B FE 4D ED */ bl memcpy +/* 8001E6A8 0001B608 7F A3 EB 78 */ mr r3, r29 +/* 8001E6AC 0001B60C 7F C4 F3 78 */ mr r4, r30 +/* 8001E6B0 0001B610 7F E5 FB 78 */ mr r5, r31 +/* 8001E6B4 0001B614 39 81 00 08 */ addi r12, r1, 8 +/* 8001E6B8 0001B618 48 36 B2 75 */ bl __ptmf_scall +/* 8001E6BC 0001B61C 60 00 00 00 */ nop +/* 8001E6C0 0001B620 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8001E6C4 0001B624 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8001E6C8 0001B628 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8001E6CC 0001B62C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8001E6D0 0001B630 7C 08 03 A6 */ mtlr r0 +/* 8001E6D4 0001B634 38 21 00 30 */ addi r1, r1, 0x30 +/* 8001E6D8 0001B638 4E 80 00 20 */ blr + +.global sub_8001e6dc +sub_8001e6dc: +/* 8001E6DC 0001B63C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001E6E0 0001B640 7C 08 02 A6 */ mflr r0 +/* 8001E6E4 0001B644 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001E6E8 0001B648 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001E6EC 0001B64C 7C BF 2B 78 */ mr r31, r5 +/* 8001E6F0 0001B650 38 A0 00 0C */ li r5, 0xc +/* 8001E6F4 0001B654 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8001E6F8 0001B658 7C 7E 1B 78 */ mr r30, r3 +/* 8001E6FC 0001B65C 38 61 00 08 */ addi r3, r1, 8 +/* 8001E700 0001B660 4B FE 4D 91 */ bl memcpy +/* 8001E704 0001B664 7F C3 F3 78 */ mr r3, r30 +/* 8001E708 0001B668 7F E4 FB 78 */ mr r4, r31 +/* 8001E70C 0001B66C 39 81 00 08 */ addi r12, r1, 8 +/* 8001E710 0001B670 48 36 B2 1D */ bl __ptmf_scall +/* 8001E714 0001B674 60 00 00 00 */ nop +/* 8001E718 0001B678 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001E71C 0001B67C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001E720 0001B680 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001E724 0001B684 7C 08 03 A6 */ mtlr r0 +/* 8001E728 0001B688 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001E72C 0001B68C 4E 80 00 20 */ blr + +.global PumpLoad__17SFusionBonusFrameFv +PumpLoad__17SFusionBonusFrameFv: +/* 8001E730 0001B690 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001E734 0001B694 7C 08 02 A6 */ mflr r0 +/* 8001E738 0001B698 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001E73C 0001B69C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001E740 0001B6A0 7C 7F 1B 78 */ mr r31, r3 +/* 8001E744 0001B6A4 93 C1 00 08 */ stw r30, 8(r1) +/* 8001E748 0001B6A8 80 03 00 24 */ lwz r0, 0x24(r3) +/* 8001E74C 0001B6AC 28 00 00 00 */ cmplwi r0, 0 +/* 8001E750 0001B6B0 41 82 00 0C */ beq lbl_8001E75C +/* 8001E754 0001B6B4 38 60 00 01 */ li r3, 1 +/* 8001E758 0001B6B8 48 00 00 E8 */ b lbl_8001E840 +lbl_8001E75C: +/* 8001E75C 0001B6BC 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 8001E760 0001B6C0 28 00 00 00 */ cmplwi r0, 0 +/* 8001E764 0001B6C4 41 82 00 0C */ beq lbl_8001E770 +/* 8001E768 0001B6C8 38 60 00 01 */ li r3, 1 +/* 8001E76C 0001B6CC 48 00 00 3C */ b lbl_8001E7A8 +lbl_8001E770: +/* 8001E770 0001B6D0 88 1F 00 10 */ lbz r0, 0x10(r31) +/* 8001E774 0001B6D4 28 00 00 00 */ cmplwi r0, 0 +/* 8001E778 0001B6D8 41 82 00 2C */ beq lbl_8001E7A4 +/* 8001E77C 0001B6DC 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 8001E780 0001B6E0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8001E784 0001B6E4 28 00 00 00 */ cmplwi r0, 0 +/* 8001E788 0001B6E8 41 82 00 1C */ beq lbl_8001E7A4 +/* 8001E78C 0001B6EC 38 7F 00 0C */ addi r3, r31, 0xc +/* 8001E790 0001B6F0 48 32 26 7D */ bl GetObj__6CTokenFv +/* 8001E794 0001B6F4 80 03 00 04 */ lwz r0, 4(r3) +/* 8001E798 0001B6F8 38 60 00 01 */ li r3, 1 +/* 8001E79C 0001B6FC 90 1F 00 14 */ stw r0, 0x14(r31) +/* 8001E7A0 0001B700 48 00 00 08 */ b lbl_8001E7A8 +lbl_8001E7A4: +/* 8001E7A4 0001B704 38 60 00 00 */ li r3, 0 +lbl_8001E7A8: +/* 8001E7A8 0001B708 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001E7AC 0001B70C 41 82 00 90 */ beq lbl_8001E83C +/* 8001E7B0 0001B710 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 8001E7B4 0001B714 28 00 00 00 */ cmplwi r0, 0 +/* 8001E7B8 0001B718 41 82 00 0C */ beq lbl_8001E7C4 +/* 8001E7BC 0001B71C 38 60 00 01 */ li r3, 1 +/* 8001E7C0 0001B720 48 00 00 3C */ b lbl_8001E7FC +lbl_8001E7C4: +/* 8001E7C4 0001B724 88 1F 00 1C */ lbz r0, 0x1c(r31) +/* 8001E7C8 0001B728 28 00 00 00 */ cmplwi r0, 0 +/* 8001E7CC 0001B72C 41 82 00 2C */ beq lbl_8001E7F8 +/* 8001E7D0 0001B730 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 8001E7D4 0001B734 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8001E7D8 0001B738 28 00 00 00 */ cmplwi r0, 0 +/* 8001E7DC 0001B73C 41 82 00 1C */ beq lbl_8001E7F8 +/* 8001E7E0 0001B740 38 7F 00 18 */ addi r3, r31, 0x18 +/* 8001E7E4 0001B744 48 32 26 29 */ bl GetObj__6CTokenFv +/* 8001E7E8 0001B748 80 03 00 04 */ lwz r0, 4(r3) +/* 8001E7EC 0001B74C 38 60 00 01 */ li r3, 1 +/* 8001E7F0 0001B750 90 1F 00 20 */ stw r0, 0x20(r31) +/* 8001E7F4 0001B754 48 00 00 08 */ b lbl_8001E7FC +lbl_8001E7F8: +/* 8001E7F8 0001B758 38 60 00 00 */ li r3, 0 +lbl_8001E7FC: +/* 8001E7FC 0001B75C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001E800 0001B760 41 82 00 3C */ beq lbl_8001E83C +/* 8001E804 0001B764 80 7F 00 04 */ lwz r3, 4(r31) +/* 8001E808 0001B768 48 22 A3 6D */ bl IsReady__11CGBASupportFv +/* 8001E80C 0001B76C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001E810 0001B770 41 82 00 2C */ beq lbl_8001E83C +/* 8001E814 0001B774 83 DF 00 14 */ lwz r30, 0x14(r31) +/* 8001E818 0001B778 7F C3 F3 78 */ mr r3, r30 +/* 8001E81C 0001B77C 48 2A 3D 35 */ bl GetIsFinishedLoading__9CGuiFrameCFv +/* 8001E820 0001B780 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001E824 0001B784 41 82 00 18 */ beq lbl_8001E83C +/* 8001E828 0001B788 93 DF 00 24 */ stw r30, 0x24(r31) +/* 8001E82C 0001B78C 7F E3 FB 78 */ mr r3, r31 +/* 8001E830 0001B790 4B FF FA B9 */ bl FinishedLoading__17SFusionBonusFrameFv +/* 8001E834 0001B794 38 60 00 01 */ li r3, 1 +/* 8001E838 0001B798 48 00 00 08 */ b lbl_8001E840 +lbl_8001E83C: +/* 8001E83C 0001B79C 38 60 00 00 */ li r3, 0 +lbl_8001E840: +/* 8001E840 0001B7A0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001E844 0001B7A4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001E848 0001B7A8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8001E84C 0001B7AC 7C 08 03 A6 */ mtlr r0 +/* 8001E850 0001B7B0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001E854 0001B7B4 4E 80 00 20 */ blr + +.global ProcessUserInput__17SFusionBonusFrameFRC11CFinalInputRC15CSaveGameScreen +ProcessUserInput__17SFusionBonusFrameFRC11CFinalInputRC15CSaveGameScreen: +/* 8001E858 0001B7B8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001E85C 0001B7BC 7C 08 02 A6 */ mflr r0 +/* 8001E860 0001B7C0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001E864 0001B7C4 38 00 00 00 */ li r0, 0 +/* 8001E868 0001B7C8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001E86C 0001B7CC 7C 9F 23 78 */ mr r31, r4 +/* 8001E870 0001B7D0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8001E874 0001B7D4 7C BE 2B 79 */ or. r30, r5, r5 +/* 8001E878 0001B7D8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8001E87C 0001B7DC 7C 7D 1B 78 */ mr r29, r3 +/* 8001E880 0001B7E0 90 03 00 08 */ stw r0, 8(r3) +/* 8001E884 0001B7E4 41 82 00 0C */ beq lbl_8001E890 +/* 8001E888 0001B7E8 7F C3 F3 78 */ mr r3, r30 +/* 8001E88C 0001B7EC 48 23 0E E5 */ bl ProcessUserInput__15CSaveGameScreenFRC11CFinalInput +lbl_8001E890: +/* 8001E890 0001B7F0 88 1D 00 38 */ lbz r0, 0x38(r29) +/* 8001E894 0001B7F4 28 00 00 00 */ cmplwi r0, 0 +/* 8001E898 0001B7F8 41 82 00 9C */ beq lbl_8001E934 +/* 8001E89C 0001B7FC 80 7D 00 00 */ lwz r3, 0(r29) +/* 8001E8A0 0001B800 28 03 00 00 */ cmplwi r3, 0 +/* 8001E8A4 0001B804 41 82 00 7C */ beq lbl_8001E920 +/* 8001E8A8 0001B808 7C 1E 00 D0 */ neg r0, r30 +/* 8001E8AC 0001B80C 7F E4 FB 78 */ mr r4, r31 +/* 8001E8B0 0001B810 7C 00 F3 78 */ or r0, r0, r30 +/* 8001E8B4 0001B814 54 05 0F FE */ srwi r5, r0, 0x1f +/* 8001E8B8 0001B818 48 00 35 4D */ bl ProcessUserInput__13SGBALinkFrameFRC11CFinalInputb +/* 8001E8BC 0001B81C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8001E8C0 0001B820 41 82 00 74 */ beq lbl_8001E934 +/* 8001E8C4 0001B824 80 7D 00 00 */ lwz r3, 0(r29) +/* 8001E8C8 0001B828 38 80 00 01 */ li r4, 1 +/* 8001E8CC 0001B82C 48 00 39 1D */ bl __dt__13SGBALinkFrameFv +/* 8001E8D0 0001B830 38 00 00 00 */ li r0, 0 +/* 8001E8D4 0001B834 2C 1F 00 01 */ cmpwi r31, 1 +/* 8001E8D8 0001B838 90 1D 00 00 */ stw r0, 0(r29) +/* 8001E8DC 0001B83C 40 82 00 58 */ bne lbl_8001E934 +/* 8001E8E0 0001B840 80 7D 00 28 */ lwz r3, 0x28(r29) +/* 8001E8E4 0001B844 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8001E8E8 0001B848 2C 00 00 00 */ cmpwi r0, 0 +/* 8001E8EC 0001B84C 40 82 00 20 */ bne lbl_8001E90C +/* 8001E8F0 0001B850 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8001E8F4 0001B854 88 03 01 78 */ lbz r0, 0x178(r3) +/* 8001E8F8 0001B858 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 8001E8FC 0001B85C 40 82 00 10 */ bne lbl_8001E90C +/* 8001E900 0001B860 38 00 00 01 */ li r0, 1 +/* 8001E904 0001B864 98 1D 00 39 */ stb r0, 0x39(r29) +/* 8001E908 0001B868 48 00 00 2C */ b lbl_8001E934 +lbl_8001E90C: +/* 8001E90C 0001B86C 28 1E 00 00 */ cmplwi r30, 0 +/* 8001E910 0001B870 41 82 00 24 */ beq lbl_8001E934 +/* 8001E914 0001B874 7F C3 F3 78 */ mr r3, r30 +/* 8001E918 0001B878 48 23 0D 59 */ bl SaveNESState__15CSaveGameScreenFv +/* 8001E91C 0001B87C 48 00 00 18 */ b lbl_8001E934 +lbl_8001E920: +/* 8001E920 0001B880 80 7D 00 24 */ lwz r3, 0x24(r29) +/* 8001E924 0001B884 28 03 00 00 */ cmplwi r3, 0 +/* 8001E928 0001B888 41 82 00 0C */ beq lbl_8001E934 +/* 8001E92C 0001B88C 7F E4 FB 78 */ mr r4, r31 +/* 8001E930 0001B890 48 2A 3D 29 */ bl ProcessUserInput__9CGuiFrameFRC11CFinalInput +lbl_8001E934: +/* 8001E934 0001B894 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001E938 0001B898 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001E93C 0001B89C 80 7D 00 08 */ lwz r3, 8(r29) +/* 8001E940 0001B8A0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001E944 0001B8A4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8001E948 0001B8A8 7C 08 03 A6 */ mtlr r0 +/* 8001E94C 0001B8AC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001E950 0001B8B0 4E 80 00 20 */ blr + +.global Update__17SFusionBonusFrameFv +Update__17SFusionBonusFrameFv: +/* 8001E954 0001B8B4 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8001E958 0001B8B8 7C 08 02 A6 */ mflr r0 +/* 8001E95C 0001B8BC 28 04 00 00 */ cmplwi r4, 0 +/* 8001E960 0001B8C0 38 A0 00 00 */ li r5, 0 +/* 8001E964 0001B8C4 90 01 00 34 */ stw r0, 0x34(r1) +/* 8001E968 0001B8C8 DB E1 00 28 */ stfd f31, 0x28(r1) +/* 8001E96C 0001B8CC FF E0 08 90 */ fmr f31, f1 +/* 8001E970 0001B8D0 BF 61 00 14 */ stmw r27, 0x14(r1) +/* 8001E974 0001B8D4 7C 7E 1B 78 */ mr r30, r3 +/* 8001E978 0001B8D8 41 82 00 10 */ beq lbl_8001E988 +/* 8001E97C 0001B8DC 80 04 00 10 */ lwz r0, 0x10(r4) +/* 8001E980 0001B8E0 2C 00 00 10 */ cmpwi r0, 0x10 +/* 8001E984 0001B8E4 40 82 00 08 */ bne lbl_8001E98C +lbl_8001E988: +/* 8001E988 0001B8E8 38 A0 00 01 */ li r5, 1 +lbl_8001E98C: +/* 8001E98C 0001B8EC 88 1E 00 38 */ lbz r0, 0x38(r30) +/* 8001E990 0001B8F0 54 A3 06 3E */ clrlwi r3, r5, 0x18 +/* 8001E994 0001B8F4 7C 03 00 40 */ cmplw r3, r0 +/* 8001E998 0001B8F8 41 82 00 1C */ beq lbl_8001E9B4 +/* 8001E99C 0001B8FC 98 BE 00 38 */ stb r5, 0x38(r30) +/* 8001E9A0 0001B900 88 1E 00 38 */ lbz r0, 0x38(r30) +/* 8001E9A4 0001B904 28 00 00 00 */ cmplwi r0, 0 +/* 8001E9A8 0001B908 41 82 00 0C */ beq lbl_8001E9B4 +/* 8001E9AC 0001B90C 7F C3 F3 78 */ mr r3, r30 +/* 8001E9B0 0001B910 4B FF F9 29 */ bl sub_8001e2d8 +lbl_8001E9B4: +/* 8001E9B4 0001B914 80 7E 00 00 */ lwz r3, 0(r30) +/* 8001E9B8 0001B918 28 03 00 00 */ cmplwi r3, 0 +/* 8001E9BC 0001B91C 41 82 00 10 */ beq lbl_8001E9CC +/* 8001E9C0 0001B920 FC 20 F8 90 */ fmr f1, f31 +/* 8001E9C4 0001B924 48 00 36 4D */ bl Update__13SGBALinkFrameFf +/* 8001E9C8 0001B928 48 00 00 18 */ b lbl_8001E9E0 +lbl_8001E9CC: +/* 8001E9CC 0001B92C 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001E9D0 0001B930 28 03 00 00 */ cmplwi r3, 0 +/* 8001E9D4 0001B934 41 82 00 0C */ beq lbl_8001E9E0 +/* 8001E9D8 0001B938 FC 20 F8 90 */ fmr f1, f31 +/* 8001E9DC 0001B93C 48 2A 3D 29 */ bl Update__9CGuiFrameFf +lbl_8001E9E0: +/* 8001E9E0 0001B940 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 8001E9E4 0001B944 3B 80 00 00 */ li r28, 0 +/* 8001E9E8 0001B948 80 BE 00 28 */ lwz r5, 0x28(r30) +/* 8001E9EC 0001B94C 88 64 01 78 */ lbz r3, 0x178(r4) +/* 8001E9F0 0001B950 83 E5 00 C4 */ lwz r31, 0xc4(r5) +/* 8001E9F4 0001B954 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f +/* 8001E9F8 0001B958 41 82 00 10 */ beq lbl_8001EA08 +/* 8001E9FC 0001B95C 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f +/* 8001EA00 0001B960 41 82 00 08 */ beq lbl_8001EA08 +/* 8001EA04 0001B964 3B 80 00 01 */ li r28, 1 +lbl_8001EA08: +/* 8001EA08 0001B968 88 04 01 78 */ lbz r0, 0x178(r4) +/* 8001EA0C 0001B96C 2C 1F 00 01 */ cmpwi r31, 1 +/* 8001EA10 0001B970 3B A0 00 00 */ li r29, 0 +/* 8001EA14 0001B974 54 1B E7 FE */ rlwinm r27, r0, 0x1c, 0x1f, 0x1f +/* 8001EA18 0001B978 40 82 00 10 */ bne lbl_8001EA28 +/* 8001EA1C 0001B97C 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8001EA20 0001B980 41 82 00 08 */ beq lbl_8001EA28 +/* 8001EA24 0001B984 3B A0 00 01 */ li r29, 1 +lbl_8001EA28: +/* 8001EA28 0001B988 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8001EA2C 0001B98C 7F A4 EB 78 */ mr r4, r29 +/* 8001EA30 0001B990 48 2A BB B5 */ bl SetIsActive__10CGuiWidgetFb +/* 8001EA34 0001B994 80 7E 00 2C */ lwz r3, 0x2c(r30) +/* 8001EA38 0001B998 7F A4 EB 78 */ mr r4, r29 +/* 8001EA3C 0001B99C 48 2A BB F1 */ bl SetIsVisible__10CGuiWidgetFb +/* 8001EA40 0001B9A0 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001EA44 0001B9A4 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 8001EA48 0001B9A8 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001EA4C 0001B9AC 38 84 01 F4 */ addi r4, r4, 0x1f4 +/* 8001EA50 0001B9B0 48 2A 37 05 */ bl FindWidget__9CGuiFrameCFPCc +/* 8001EA54 0001B9B4 57 A0 06 3E */ clrlwi r0, r29, 0x18 +/* 8001EA58 0001B9B8 7C 00 00 34 */ cntlzw r0, r0 +/* 8001EA5C 0001B9BC 54 04 D9 7E */ srwi r4, r0, 5 +/* 8001EA60 0001B9C0 48 2A BB CD */ bl SetIsVisible__10CGuiWidgetFb +/* 8001EA64 0001B9C4 88 1E 00 3A */ lbz r0, 0x3a(r30) +/* 8001EA68 0001B9C8 28 00 00 00 */ cmplwi r0, 0 +/* 8001EA6C 0001B9CC 41 82 00 18 */ beq lbl_8001EA84 +/* 8001EA70 0001B9D0 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001EA74 0001B9D4 38 80 00 50 */ li r4, 0x50 +/* 8001EA78 0001B9D8 48 33 7C 85 */ bl GetString__12CStringTableCFi +/* 8001EA7C 0001B9DC 7C 7C 1B 78 */ mr r28, r3 +/* 8001EA80 0001B9E0 48 00 00 24 */ b lbl_8001EAA4 +lbl_8001EA84: +/* 8001EA84 0001B9E4 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8001EA88 0001B9E8 41 82 00 0C */ beq lbl_8001EA94 +/* 8001EA8C 0001B9EC 38 6D 81 4C */ addi r3, r13, lbl_805A6D0C@sda21 +/* 8001EA90 0001B9F0 48 00 00 10 */ b lbl_8001EAA0 +lbl_8001EA94: +/* 8001EA94 0001B9F4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001EA98 0001B9F8 38 80 00 4E */ li r4, 0x4e +/* 8001EA9C 0001B9FC 48 33 7C 61 */ bl GetString__12CStringTableCFi +lbl_8001EAA0: +/* 8001EAA0 0001BA00 7C 7C 1B 78 */ mr r28, r3 +lbl_8001EAA4: +/* 8001EAA4 0001BA04 88 1E 00 39 */ lbz r0, 0x39(r30) +/* 8001EAA8 0001BA08 28 00 00 00 */ cmplwi r0, 0 +/* 8001EAAC 0001BA0C 41 82 00 18 */ beq lbl_8001EAC4 +/* 8001EAB0 0001BA10 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001EAB4 0001BA14 38 80 00 4F */ li r4, 0x4f +/* 8001EAB8 0001BA18 48 33 7C 45 */ bl GetString__12CStringTableCFi +/* 8001EABC 0001BA1C 7C 64 1B 78 */ mr r4, r3 +/* 8001EAC0 0001BA20 48 00 00 24 */ b lbl_8001EAE4 +lbl_8001EAC4: +/* 8001EAC4 0001BA24 28 1B 00 00 */ cmplwi r27, 0 +/* 8001EAC8 0001BA28 41 82 00 0C */ beq lbl_8001EAD4 +/* 8001EACC 0001BA2C 38 6D 81 4C */ addi r3, r13, lbl_805A6D0C@sda21 +/* 8001EAD0 0001BA30 48 00 00 10 */ b lbl_8001EAE0 +lbl_8001EAD4: +/* 8001EAD4 0001BA34 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001EAD8 0001BA38 38 80 00 4D */ li r4, 0x4d +/* 8001EADC 0001BA3C 48 33 7C 21 */ bl GetString__12CStringTableCFi +lbl_8001EAE0: +/* 8001EAE0 0001BA40 7C 64 1B 78 */ mr r4, r3 +lbl_8001EAE4: +/* 8001EAE4 0001BA44 2C 1F 00 01 */ cmpwi r31, 1 +/* 8001EAE8 0001BA48 38 7E 00 30 */ addi r3, r30, 0x30 +/* 8001EAEC 0001BA4C 40 82 00 08 */ bne lbl_8001EAF4 +/* 8001EAF0 0001BA50 7F 84 E3 78 */ mr r4, r28 +lbl_8001EAF4: +/* 8001EAF4 0001BA54 48 00 42 75 */ bl SetPairText__12SGuiTextPairFRCQ24rstl7wstring +/* 8001EAF8 0001BA58 CB E1 00 28 */ lfd f31, 0x28(r1) +/* 8001EAFC 0001BA5C BB 61 00 14 */ lmw r27, 0x14(r1) +/* 8001EB00 0001BA60 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8001EB04 0001BA64 7C 08 03 A6 */ mtlr r0 +/* 8001EB08 0001BA68 38 21 00 30 */ addi r1, r1, 0x30 +/* 8001EB0C 0001BA6C 4E 80 00 20 */ blr + +.global Draw__17SFusionBonusFrameFv +Draw__17SFusionBonusFrameFv: +/* 8001EB10 0001BA70 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001EB14 0001BA74 7C 08 02 A6 */ mflr r0 +/* 8001EB18 0001BA78 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001EB1C 0001BA7C 88 03 00 38 */ lbz r0, 0x38(r3) +/* 8001EB20 0001BA80 28 00 00 00 */ cmplwi r0, 0 +/* 8001EB24 0001BA84 41 82 00 34 */ beq lbl_8001EB58 +/* 8001EB28 0001BA88 80 03 00 00 */ lwz r0, 0(r3) +/* 8001EB2C 0001BA8C 28 00 00 00 */ cmplwi r0, 0 +/* 8001EB30 0001BA90 41 82 00 10 */ beq lbl_8001EB40 +/* 8001EB34 0001BA94 7C 03 03 78 */ mr r3, r0 +/* 8001EB38 0001BA98 48 00 36 85 */ bl Draw__13SGBALinkFrameFv +/* 8001EB3C 0001BA9C 48 00 00 1C */ b lbl_8001EB58 +lbl_8001EB40: +/* 8001EB40 0001BAA0 80 63 00 24 */ lwz r3, 0x24(r3) +/* 8001EB44 0001BAA4 28 03 00 00 */ cmplwi r3, 0 +/* 8001EB48 0001BAA8 41 82 00 10 */ beq lbl_8001EB58 +/* 8001EB4C 0001BAAC 3C 80 80 5A */ lis r4, lbl_8059FD08@ha +/* 8001EB50 0001BAB0 38 84 FD 08 */ addi r4, r4, lbl_8059FD08@l +/* 8001EB54 0001BAB4 48 2A 3B E1 */ bl Draw__9CGuiFrameCFRC19CGuiWidgetDrawParms +lbl_8001EB58: +/* 8001EB58 0001BAB8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001EB5C 0001BABC 7C 08 03 A6 */ mtlr r0 +/* 8001EB60 0001BAC0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001EB64 0001BAC4 4E 80 00 20 */ blr + +.global __dt__17SFusionBonusFrameFv +__dt__17SFusionBonusFrameFv: +/* 8001EB68 0001BAC8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001EB6C 0001BACC 7C 08 02 A6 */ mflr r0 +/* 8001EB70 0001BAD0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001EB74 0001BAD4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001EB78 0001BAD8 7C 9F 23 78 */ mr r31, r4 +/* 8001EB7C 0001BADC 93 C1 00 08 */ stw r30, 8(r1) +/* 8001EB80 0001BAE0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 8001EB84 0001BAE4 41 82 00 74 */ beq lbl_8001EBF8 +/* 8001EB88 0001BAE8 34 1E 00 18 */ addic. r0, r30, 0x18 +/* 8001EB8C 0001BAEC 41 82 00 18 */ beq lbl_8001EBA4 +/* 8001EB90 0001BAF0 34 1E 00 18 */ addic. r0, r30, 0x18 +/* 8001EB94 0001BAF4 41 82 00 10 */ beq lbl_8001EBA4 +/* 8001EB98 0001BAF8 38 7E 00 18 */ addi r3, r30, 0x18 +/* 8001EB9C 0001BAFC 38 80 00 00 */ li r4, 0 +/* 8001EBA0 0001BB00 48 32 22 A1 */ bl __dt__6CTokenFv +lbl_8001EBA4: +/* 8001EBA4 0001BB04 34 1E 00 0C */ addic. r0, r30, 0xc +/* 8001EBA8 0001BB08 41 82 00 18 */ beq lbl_8001EBC0 +/* 8001EBAC 0001BB0C 34 1E 00 0C */ addic. r0, r30, 0xc +/* 8001EBB0 0001BB10 41 82 00 10 */ beq lbl_8001EBC0 +/* 8001EBB4 0001BB14 38 7E 00 0C */ addi r3, r30, 0xc +/* 8001EBB8 0001BB18 38 80 00 00 */ li r4, 0 +/* 8001EBBC 0001BB1C 48 32 22 85 */ bl __dt__6CTokenFv +lbl_8001EBC0: +/* 8001EBC0 0001BB20 34 1E 00 04 */ addic. r0, r30, 4 +/* 8001EBC4 0001BB24 41 82 00 10 */ beq lbl_8001EBD4 +/* 8001EBC8 0001BB28 80 7E 00 04 */ lwz r3, 4(r30) +/* 8001EBCC 0001BB2C 38 80 00 01 */ li r4, 1 +/* 8001EBD0 0001BB30 48 22 A0 AD */ bl __dt__11CGBASupportFv +lbl_8001EBD4: +/* 8001EBD4 0001BB34 28 1E 00 00 */ cmplwi r30, 0 +/* 8001EBD8 0001BB38 41 82 00 10 */ beq lbl_8001EBE8 +/* 8001EBDC 0001BB3C 80 7E 00 00 */ lwz r3, 0(r30) +/* 8001EBE0 0001BB40 38 80 00 01 */ li r4, 1 +/* 8001EBE4 0001BB44 48 00 36 05 */ bl __dt__13SGBALinkFrameFv +lbl_8001EBE8: +/* 8001EBE8 0001BB48 7F E0 07 35 */ extsh. r0, r31 +/* 8001EBEC 0001BB4C 40 81 00 0C */ ble lbl_8001EBF8 +/* 8001EBF0 0001BB50 7F C3 F3 78 */ mr r3, r30 +/* 8001EBF4 0001BB54 48 2F 6D 3D */ bl Free__7CMemoryFPCv +lbl_8001EBF8: +/* 8001EBF8 0001BB58 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001EBFC 0001BB5C 7F C3 F3 78 */ mr r3, r30 +/* 8001EC00 0001BB60 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001EC04 0001BB64 83 C1 00 08 */ lwz r30, 8(r1) +/* 8001EC08 0001BB68 7C 08 03 A6 */ mtlr r0 +/* 8001EC0C 0001BB6C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001EC10 0001BB70 4E 80 00 20 */ blr + +.global __ct__17SFusionBonusFrameFv +__ct__17SFusionBonusFrameFv: +/* 8001EC14 0001BB74 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001EC18 0001BB78 7C 08 02 A6 */ mflr r0 +/* 8001EC1C 0001BB7C 38 A0 00 00 */ li r5, 0 +/* 8001EC20 0001BB80 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001EC24 0001BB84 38 00 00 00 */ li r0, 0 +/* 8001EC28 0001BB88 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001EC2C 0001BB8C 7C 7F 1B 78 */ mr r31, r3 +/* 8001EC30 0001BB90 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001EC34 0001BB94 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8001EC38 0001BB98 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001EC3C 0001BB9C 38 60 00 48 */ li r3, 0x48 +/* 8001EC40 0001BBA0 90 1F 00 00 */ stw r0, 0(r31) +/* 8001EC44 0001BBA4 38 84 01 14 */ addi r4, r4, 0x114 +/* 8001EC48 0001BBA8 48 2F 6C 25 */ bl __nw__FUlPCcPCc +/* 8001EC4C 0001BBAC 7C 60 1B 79 */ or. r0, r3, r3 +/* 8001EC50 0001BBB0 41 82 00 0C */ beq lbl_8001EC5C +/* 8001EC54 0001BBB4 48 22 A0 C1 */ bl __ct__11CGBASupportFv +/* 8001EC58 0001BBB8 7C 60 1B 78 */ mr r0, r3 +lbl_8001EC5C: +/* 8001EC5C 0001BBBC 90 1F 00 04 */ stw r0, 4(r31) +/* 8001EC60 0001BBC0 38 00 00 00 */ li r0, 0 +/* 8001EC64 0001BBC4 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8001EC68 0001BBC8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001EC6C 0001BBCC 90 1F 00 08 */ stw r0, 8(r31) +/* 8001EC70 0001BBD0 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 8001EC74 0001BBD4 38 A4 02 15 */ addi r5, r4, 0x215 +/* 8001EC78 0001BBD8 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8001EC7C 0001BBDC 81 84 00 00 */ lwz r12, 0(r4) +/* 8001EC80 0001BBE0 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8001EC84 0001BBE4 7D 89 03 A6 */ mtctr r12 +/* 8001EC88 0001BBE8 4E 80 04 21 */ bctrl +/* 8001EC8C 0001BBEC 3B DF 00 0C */ addi r30, r31, 0xc +/* 8001EC90 0001BBF0 38 81 00 10 */ addi r4, r1, 0x10 +/* 8001EC94 0001BBF4 7F C3 F3 78 */ mr r3, r30 +/* 8001EC98 0001BBF8 48 32 22 11 */ bl __ct__6CTokenFRC6CToken +/* 8001EC9C 0001BBFC 38 00 00 00 */ li r0, 0 +/* 8001ECA0 0001BC00 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001ECA4 0001BC04 90 1E 00 08 */ stw r0, 8(r30) +/* 8001ECA8 0001BC08 38 80 FF FF */ li r4, -1 +/* 8001ECAC 0001BC0C 48 32 21 95 */ bl __dt__6CTokenFv +/* 8001ECB0 0001BC10 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 8001ECB4 0001BC14 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001ECB8 0001BC18 38 A3 C6 44 */ addi r5, r3, lbl_803CC644@l +/* 8001ECBC 0001BC1C 38 61 00 08 */ addi r3, r1, 8 +/* 8001ECC0 0001BC20 81 84 00 00 */ lwz r12, 0(r4) +/* 8001ECC4 0001BC24 38 A5 02 24 */ addi r5, r5, 0x224 +/* 8001ECC8 0001BC28 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8001ECCC 0001BC2C 7D 89 03 A6 */ mtctr r12 +/* 8001ECD0 0001BC30 4E 80 04 21 */ bctrl +/* 8001ECD4 0001BC34 3B DF 00 18 */ addi r30, r31, 0x18 +/* 8001ECD8 0001BC38 38 81 00 08 */ addi r4, r1, 8 +/* 8001ECDC 0001BC3C 7F C3 F3 78 */ mr r3, r30 +/* 8001ECE0 0001BC40 48 32 21 C9 */ bl __ct__6CTokenFRC6CToken +/* 8001ECE4 0001BC44 38 00 00 00 */ li r0, 0 +/* 8001ECE8 0001BC48 38 61 00 08 */ addi r3, r1, 8 +/* 8001ECEC 0001BC4C 90 1E 00 08 */ stw r0, 8(r30) +/* 8001ECF0 0001BC50 38 80 FF FF */ li r4, -1 +/* 8001ECF4 0001BC54 48 32 21 4D */ bl __dt__6CTokenFv +/* 8001ECF8 0001BC58 38 00 00 00 */ li r0, 0 +/* 8001ECFC 0001BC5C 38 7F 00 30 */ addi r3, r31, 0x30 +/* 8001ED00 0001BC60 90 1F 00 24 */ stw r0, 0x24(r31) +/* 8001ED04 0001BC64 90 1F 00 28 */ stw r0, 0x28(r31) +/* 8001ED08 0001BC68 90 1F 00 2C */ stw r0, 0x2c(r31) +/* 8001ED0C 0001BC6C 48 00 41 69 */ bl __ct__12SGuiTextPairFv +/* 8001ED10 0001BC70 38 00 00 00 */ li r0, 0 +/* 8001ED14 0001BC74 38 7F 00 0C */ addi r3, r31, 0xc +/* 8001ED18 0001BC78 98 1F 00 38 */ stb r0, 0x38(r31) +/* 8001ED1C 0001BC7C 98 1F 00 39 */ stb r0, 0x39(r31) +/* 8001ED20 0001BC80 98 1F 00 3A */ stb r0, 0x3a(r31) +/* 8001ED24 0001BC84 48 32 20 61 */ bl Lock__6CTokenFv +/* 8001ED28 0001BC88 7F C3 F3 78 */ mr r3, r30 +/* 8001ED2C 0001BC8C 48 32 20 59 */ bl Lock__6CTokenFv +/* 8001ED30 0001BC90 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001ED34 0001BC94 7F E3 FB 78 */ mr r3, r31 +/* 8001ED38 0001BC98 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001ED3C 0001BC9C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001ED40 0001BCA0 7C 08 03 A6 */ mtlr r0 +/* 8001ED44 0001BCA4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001ED48 0001BCA8 4E 80 00 20 */ blr + +.global DoPopupCancel__19SNewFileSelectFrameFPC14CGuiTableGroup +DoPopupCancel__19SNewFileSelectFrameFPC14CGuiTableGroup: +/* 8001ED4C 0001BCAC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001ED50 0001BCB0 7C 08 02 A6 */ mflr r0 +/* 8001ED54 0001BCB4 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001ED58 0001BCB8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001ED5C 0001BCBC 7C 7F 1B 78 */ mr r31, r3 +/* 8001ED60 0001BCC0 80 03 00 08 */ lwz r0, 8(r3) +/* 8001ED64 0001BCC4 2C 00 00 02 */ cmpwi r0, 2 +/* 8001ED68 0001BCC8 40 82 00 38 */ bne lbl_8001EDA0 +/* 8001ED6C 0001BCCC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001ED70 0001BCD0 38 61 00 0C */ addi r3, r1, 0xc +/* 8001ED74 0001BCD4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001ED78 0001BCD8 38 80 04 46 */ li r4, 0x446 +/* 8001ED7C 0001BCDC 38 A0 00 7F */ li r5, 0x7f +/* 8001ED80 0001BCE0 38 C0 00 40 */ li r6, 0x40 +/* 8001ED84 0001BCE4 38 E0 00 00 */ li r7, 0 +/* 8001ED88 0001BCE8 39 20 00 00 */ li r9, 0 +/* 8001ED8C 0001BCEC 48 2C AF E9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001ED90 0001BCF0 38 00 00 01 */ li r0, 1 +/* 8001ED94 0001BCF4 90 1F 00 08 */ stw r0, 8(r31) +/* 8001ED98 0001BCF8 98 1F 01 0D */ stb r0, 0x10d(r31) +/* 8001ED9C 0001BCFC 48 00 00 38 */ b lbl_8001EDD4 +lbl_8001EDA0: +/* 8001EDA0 0001BD00 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001EDA4 0001BD04 38 61 00 08 */ addi r3, r1, 8 +/* 8001EDA8 0001BD08 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001EDAC 0001BD0C 38 80 04 46 */ li r4, 0x446 +/* 8001EDB0 0001BD10 38 A0 00 7F */ li r5, 0x7f +/* 8001EDB4 0001BD14 38 C0 00 40 */ li r6, 0x40 +/* 8001EDB8 0001BD18 38 E0 00 00 */ li r7, 0 +/* 8001EDBC 0001BD1C 39 20 00 00 */ li r9, 0 +/* 8001EDC0 0001BD20 48 2C AF B5 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001EDC4 0001BD24 38 60 00 00 */ li r3, 0 +/* 8001EDC8 0001BD28 38 00 00 01 */ li r0, 1 +/* 8001EDCC 0001BD2C 90 7F 00 08 */ stw r3, 8(r31) +/* 8001EDD0 0001BD30 98 1F 01 0E */ stb r0, 0x10e(r31) +lbl_8001EDD4: +/* 8001EDD4 0001BD34 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001EDD8 0001BD38 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001EDDC 0001BD3C 7C 08 03 A6 */ mtlr r0 +/* 8001EDE0 0001BD40 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001EDE4 0001BD44 4E 80 00 20 */ blr + +.global DoPopupAdvance__19SNewFileSelectFrameFPC14CGuiTableGroup +DoPopupAdvance__19SNewFileSelectFrameFPC14CGuiTableGroup: +/* 8001EDE8 0001BD48 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001EDEC 0001BD4C 7C 08 02 A6 */ mflr r0 +/* 8001EDF0 0001BD50 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001EDF4 0001BD54 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001EDF8 0001BD58 7C 7F 1B 78 */ mr r31, r3 +/* 8001EDFC 0001BD5C 93 C1 00 08 */ stw r30, 8(r1) +/* 8001EE00 0001BD60 80 03 00 08 */ lwz r0, 8(r3) +/* 8001EE04 0001BD64 2C 00 00 02 */ cmpwi r0, 2 +/* 8001EE08 0001BD68 40 82 00 4C */ bne lbl_8001EE54 +/* 8001EE0C 0001BD6C 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8001EE10 0001BD70 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8001EE14 0001BD74 2C 00 00 01 */ cmpwi r0, 1 +/* 8001EE18 0001BD78 40 82 00 28 */ bne lbl_8001EE40 +/* 8001EE1C 0001BD7C 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001EE20 0001BD80 83 C3 00 C4 */ lwz r30, 0xc4(r3) +/* 8001EE24 0001BD84 48 00 41 31 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 8001EE28 0001BD88 80 7F 00 04 */ lwz r3, 4(r31) +/* 8001EE2C 0001BD8C 7F C4 F3 78 */ mr r4, r30 +/* 8001EE30 0001BD90 48 23 08 8D */ bl EraseGame__15CSaveGameScreenFi +/* 8001EE34 0001BD94 7F E3 FB 78 */ mr r3, r31 +/* 8001EE38 0001BD98 48 00 08 15 */ bl ResetFrame__19SNewFileSelectFrameFv +/* 8001EE3C 0001BD9C 48 00 00 0C */ b lbl_8001EE48 +lbl_8001EE40: +/* 8001EE40 0001BDA0 38 00 00 01 */ li r0, 1 +/* 8001EE44 0001BDA4 90 1F 00 08 */ stw r0, 8(r31) +lbl_8001EE48: +/* 8001EE48 0001BDA8 38 00 00 01 */ li r0, 1 +/* 8001EE4C 0001BDAC 98 1F 01 0D */ stb r0, 0x10d(r31) +/* 8001EE50 0001BDB0 48 00 00 9C */ b lbl_8001EEEC +lbl_8001EE54: +/* 8001EE54 0001BDB4 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 8001EE58 0001BDB8 88 04 01 78 */ lbz r0, 0x178(r4) +/* 8001EE5C 0001BDBC 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8001EE60 0001BDC0 41 82 00 58 */ beq lbl_8001EEB8 +/* 8001EE64 0001BDC4 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 8001EE68 0001BDC8 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 8001EE6C 0001BDCC 2C 00 00 01 */ cmpwi r0, 1 +/* 8001EE70 0001BDD0 40 82 00 14 */ bne lbl_8001EE84 +/* 8001EE74 0001BDD4 48 00 40 E1 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 8001EE78 0001BDD8 38 00 00 01 */ li r0, 1 +/* 8001EE7C 0001BDDC 90 1F 00 0C */ stw r0, 0xc(r31) +/* 8001EE80 0001BDE0 48 00 00 6C */ b lbl_8001EEEC +lbl_8001EE84: +/* 8001EE84 0001BDE4 48 00 16 A9 */ bl GetUserFileSelection__19SNewFileSelectFrameCFv +/* 8001EE88 0001BDE8 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 8001EE8C 0001BDEC 7C 60 1B 78 */ mr r0, r3 +/* 8001EE90 0001BDF0 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8001EE94 0001BDF4 7C 1E 03 78 */ mr r30, r0 +/* 8001EE98 0001BDF8 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 8001EE9C 0001BDFC 7C 00 00 34 */ cntlzw r0, r0 +/* 8001EEA0 0001BE00 54 04 D9 7E */ srwi r4, r0, 5 +/* 8001EEA4 0001BE04 48 1B 4A 21 */ bl SetHardMode__10CGameStateFb +/* 8001EEA8 0001BE08 80 7F 00 04 */ lwz r3, 4(r31) +/* 8001EEAC 0001BE0C 7F C4 F3 78 */ mr r4, r30 +/* 8001EEB0 0001BE10 48 23 07 45 */ bl StartGame__15CSaveGameScreenFi +/* 8001EEB4 0001BE14 48 00 00 38 */ b lbl_8001EEEC +lbl_8001EEB8: +/* 8001EEB8 0001BE18 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 8001EEBC 0001BE1C 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 8001EEC0 0001BE20 2C 00 00 01 */ cmpwi r0, 1 +/* 8001EEC4 0001BE24 40 82 00 14 */ bne lbl_8001EED8 +/* 8001EEC8 0001BE28 48 00 40 8D */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 8001EECC 0001BE2C 38 00 00 01 */ li r0, 1 +/* 8001EED0 0001BE30 90 1F 00 0C */ stw r0, 0xc(r31) +/* 8001EED4 0001BE34 48 00 00 18 */ b lbl_8001EEEC +lbl_8001EED8: +/* 8001EED8 0001BE38 48 00 16 55 */ bl GetUserFileSelection__19SNewFileSelectFrameCFv +/* 8001EEDC 0001BE3C 7C 60 1B 78 */ mr r0, r3 +/* 8001EEE0 0001BE40 80 7F 00 04 */ lwz r3, 4(r31) +/* 8001EEE4 0001BE44 7C 04 03 78 */ mr r4, r0 +/* 8001EEE8 0001BE48 48 23 07 0D */ bl StartGame__15CSaveGameScreenFi +lbl_8001EEEC: +/* 8001EEEC 0001BE4C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001EEF0 0001BE50 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001EEF4 0001BE54 83 C1 00 08 */ lwz r30, 8(r1) +/* 8001EEF8 0001BE58 7C 08 03 A6 */ mtlr r0 +/* 8001EEFC 0001BE5C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001EF00 0001BE60 4E 80 00 20 */ blr + +.global DoFileselectCancel__19SNewFileSelectFrameFPC14CGuiTableGroup +DoFileselectCancel__19SNewFileSelectFrameFPC14CGuiTableGroup: +/* 8001EF04 0001BE64 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001EF08 0001BE68 7C 08 02 A6 */ mflr r0 +/* 8001EF0C 0001BE6C 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001EF10 0001BE70 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001EF14 0001BE74 7C 7F 1B 78 */ mr r31, r3 +/* 8001EF18 0001BE78 80 03 00 08 */ lwz r0, 8(r3) +/* 8001EF1C 0001BE7C 2C 00 00 01 */ cmpwi r0, 1 +/* 8001EF20 0001BE80 40 82 00 30 */ bne lbl_8001EF50 +/* 8001EF24 0001BE84 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001EF28 0001BE88 38 61 00 08 */ addi r3, r1, 8 +/* 8001EF2C 0001BE8C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001EF30 0001BE90 38 80 04 46 */ li r4, 0x446 +/* 8001EF34 0001BE94 38 A0 00 7F */ li r5, 0x7f +/* 8001EF38 0001BE98 38 C0 00 40 */ li r6, 0x40 +/* 8001EF3C 0001BE9C 38 E0 00 00 */ li r7, 0 +/* 8001EF40 0001BEA0 39 20 00 00 */ li r9, 0 +/* 8001EF44 0001BEA4 48 2C AE 31 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001EF48 0001BEA8 7F E3 FB 78 */ mr r3, r31 +/* 8001EF4C 0001BEAC 48 00 07 01 */ bl ResetFrame__19SNewFileSelectFrameFv +lbl_8001EF50: +/* 8001EF50 0001BEB0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001EF54 0001BEB4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001EF58 0001BEB8 7C 08 03 A6 */ mtlr r0 +/* 8001EF5C 0001BEBC 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001EF60 0001BEC0 4E 80 00 20 */ blr + +.global DoSelectionChange__19SNewFileSelectFrameFPC14CGuiTableGroup +DoSelectionChange__19SNewFileSelectFrameFPC14CGuiTableGroup: +/* 8001EF64 0001BEC4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001EF68 0001BEC8 7C 08 02 A6 */ mflr r0 +/* 8001EF6C 0001BECC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001EF70 0001BED0 48 00 12 29 */ bl HandleActiveChange__19SNewFileSelectFrameFP10CGuiWidget +/* 8001EF74 0001BED4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8001EF78 0001BED8 38 61 00 08 */ addi r3, r1, 8 +/* 8001EF7C 0001BEDC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001EF80 0001BEE0 38 80 04 45 */ li r4, 0x445 +/* 8001EF84 0001BEE4 38 A0 00 7F */ li r5, 0x7f +/* 8001EF88 0001BEE8 38 C0 00 40 */ li r6, 0x40 +/* 8001EF8C 0001BEEC 38 E0 00 00 */ li r7, 0 +/* 8001EF90 0001BEF0 39 20 00 00 */ li r9, 0 +/* 8001EF94 0001BEF4 48 2C AD E1 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8001EF98 0001BEF8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001EF9C 0001BEFC 7C 08 03 A6 */ mtlr r0 +/* 8001EFA0 0001BF00 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001EFA4 0001BF04 4E 80 00 20 */ blr + +.global IsTextDoneAnimating__19SNewFileSelectFrameFv +IsTextDoneAnimating__19SNewFileSelectFrameFv: +/* 8001EFA8 0001BF08 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001EFAC 0001BF0C 7C 08 02 A6 */ mflr r0 +/* 8001EFB0 0001BF10 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001EFB4 0001BF14 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 8001EFB8 0001BF18 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 8001EFBC 0001BF1C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001EFC0 0001BF20 80 03 00 90 */ lwz r0, 0x90(r3) +/* 8001EFC4 0001BF24 7C 7F 1B 78 */ mr r31, r3 +/* 8001EFC8 0001BF28 2C 00 00 04 */ cmpwi r0, 4 +/* 8001EFCC 0001BF2C 41 82 00 0C */ beq lbl_8001EFD8 +/* 8001EFD0 0001BF30 38 60 00 00 */ li r3, 0 +/* 8001EFD4 0001BF34 48 00 00 94 */ b lbl_8001F068 +lbl_8001EFD8: +/* 8001EFD8 0001BF38 38 7F 00 98 */ addi r3, r31, 0x98 +/* 8001EFDC 0001BF3C 80 1F 00 C0 */ lwz r0, 0xc0(r31) +/* 8001EFE0 0001BF40 2C 00 00 04 */ cmpwi r0, 4 +/* 8001EFE4 0001BF44 41 82 00 0C */ beq lbl_8001EFF0 +/* 8001EFE8 0001BF48 38 60 00 00 */ li r3, 0 +/* 8001EFEC 0001BF4C 48 00 00 7C */ b lbl_8001F068 +lbl_8001EFF0: +/* 8001EFF0 0001BF50 80 03 00 58 */ lwz r0, 0x58(r3) +/* 8001EFF4 0001BF54 2C 00 00 04 */ cmpwi r0, 4 +/* 8001EFF8 0001BF58 41 82 00 0C */ beq lbl_8001F004 +/* 8001EFFC 0001BF5C 38 60 00 00 */ li r3, 0 +/* 8001F000 0001BF60 48 00 00 68 */ b lbl_8001F068 +lbl_8001F004: +/* 8001F004 0001BF64 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 8001F008 0001BF68 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8001F00C 0001BF6C C3 E3 00 3C */ lfs f31, 0x3c(r3) +/* 8001F010 0001BF70 48 2A 90 99 */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 8001F014 0001BF74 FC 1F 08 40 */ fcmpo cr0, f31, f1 +/* 8001F018 0001BF78 40 80 00 0C */ bge lbl_8001F024 +/* 8001F01C 0001BF7C 38 60 00 00 */ li r3, 0 +/* 8001F020 0001BF80 48 00 00 48 */ b lbl_8001F068 +lbl_8001F024: +/* 8001F024 0001BF84 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8001F028 0001BF88 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8001F02C 0001BF8C C3 E3 00 3C */ lfs f31, 0x3c(r3) +/* 8001F030 0001BF90 48 2A 90 79 */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 8001F034 0001BF94 FC 1F 08 40 */ fcmpo cr0, f31, f1 +/* 8001F038 0001BF98 40 80 00 0C */ bge lbl_8001F044 +/* 8001F03C 0001BF9C 38 60 00 00 */ li r3, 0 +/* 8001F040 0001BFA0 48 00 00 28 */ b lbl_8001F068 +lbl_8001F044: +/* 8001F044 0001BFA4 80 7F 00 38 */ lwz r3, 0x38(r31) +/* 8001F048 0001BFA8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8001F04C 0001BFAC C3 E3 00 3C */ lfs f31, 0x3c(r3) +/* 8001F050 0001BFB0 48 2A 90 59 */ bl GetTotalAnimationTime__15CGuiTextSupportCFv +/* 8001F054 0001BFB4 FC 1F 08 40 */ fcmpo cr0, f31, f1 +/* 8001F058 0001BFB8 7C 00 00 26 */ mfcr r0 +/* 8001F05C 0001BFBC 54 00 0F FE */ srwi r0, r0, 0x1f +/* 8001F060 0001BFC0 7C 00 00 34 */ cntlzw r0, r0 +/* 8001F064 0001BFC4 54 03 D9 7E */ srwi r3, r0, 5 +lbl_8001F068: +/* 8001F068 0001BFC8 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 8001F06C 0001BFCC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001F070 0001BFD0 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 8001F074 0001BFD4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001F078 0001BFD8 7C 08 03 A6 */ mtlr r0 +/* 8001F07C 0001BFDC 38 21 00 20 */ addi r1, r1, 0x20 + +.global sub_8001f080 +sub_8001f080: +/* 8001F080 0001BFE0 4E 80 00 20 */ blr + +.global DeactivateExistingGamePopup__19SNewFileSelectFrameFv +DeactivateExistingGamePopup__19SNewFileSelectFrameFv: +/* 8001F084 0001BFE4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001F088 0001BFE8 7C 08 02 A6 */ mflr r0 +/* 8001F08C 0001BFEC 38 80 00 00 */ li r4, 0 +/* 8001F090 0001BFF0 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001F094 0001BFF4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001F098 0001BFF8 7C 7F 1B 78 */ mr r31, r3 +/* 8001F09C 0001BFFC 80 63 00 40 */ lwz r3, 0x40(r3) +/* 8001F0A0 0001C000 48 2A B5 45 */ bl SetIsActive__10CGuiWidgetFb +/* 8001F0A4 0001C004 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8001F0A8 0001C008 38 80 00 00 */ li r4, 0 +/* 8001F0AC 0001C00C 48 2A B5 81 */ bl SetIsVisible__10CGuiWidgetFb +/* 8001F0B0 0001C010 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001F0B4 0001C014 38 80 00 01 */ li r4, 1 +/* 8001F0B8 0001C018 48 2A B5 2D */ bl SetIsActive__10CGuiWidgetFb +/* 8001F0BC 0001C01C 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 8001F0C0 0001C020 7F E3 FB 78 */ mr r3, r31 +/* 8001F0C4 0001C024 48 00 10 D5 */ bl HandleActiveChange__19SNewFileSelectFrameFP10CGuiWidget +/* 8001F0C8 0001C028 38 00 00 FF */ li r0, 0xff +/* 8001F0CC 0001C02C 38 81 00 08 */ addi r4, r1, 8 +/* 8001F0D0 0001C030 98 01 00 08 */ stb r0, 8(r1) +/* 8001F0D4 0001C034 98 01 00 09 */ stb r0, 9(r1) +/* 8001F0D8 0001C038 98 01 00 0A */ stb r0, 0xa(r1) +/* 8001F0DC 0001C03C 98 01 00 0B */ stb r0, 0xb(r1) +/* 8001F0E0 0001C040 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001F0E4 0001C044 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8001F0E8 0001C048 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 8001F0EC 0001C04C 7C 7F 02 14 */ add r3, r31, r0 +/* 8001F0F0 0001C050 80 63 00 68 */ lwz r3, 0x68(r3) +/* 8001F0F4 0001C054 48 2A B7 79 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8001F0F8 0001C058 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001F0FC 0001C05C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001F100 0001C060 7C 08 03 A6 */ mtlr r0 +/* 8001F104 0001C064 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001F108 0001C068 4E 80 00 20 */ blr + +.global ActivateExistingGamePopup__19SNewFileSelectFrameFv +ActivateExistingGamePopup__19SNewFileSelectFrameFv: +/* 8001F10C 0001C06C 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 8001F110 0001C070 7C 08 02 A6 */ mflr r0 +/* 8001F114 0001C074 38 80 00 01 */ li r4, 1 +/* 8001F118 0001C078 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 8001F11C 0001C07C 93 E1 00 9C */ stw r31, 0x9c(r1) +/* 8001F120 0001C080 7C 7F 1B 78 */ mr r31, r3 +/* 8001F124 0001C084 93 C1 00 98 */ stw r30, 0x98(r1) +/* 8001F128 0001C088 80 63 00 40 */ lwz r3, 0x40(r3) +/* 8001F12C 0001C08C 48 2A B4 B9 */ bl SetIsActive__10CGuiWidgetFb +/* 8001F130 0001C090 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8001F134 0001C094 38 80 00 01 */ li r4, 1 +/* 8001F138 0001C098 48 2A B4 F5 */ bl SetIsVisible__10CGuiWidgetFb +/* 8001F13C 0001C09C 80 DF 00 40 */ lwz r6, 0x40(r31) +/* 8001F140 0001C0A0 3C 00 43 30 */ lis r0, 0x4330 +/* 8001F144 0001C0A4 C0 22 82 9C */ lfs f1, lbl_805A9FBC@sda21(r2) +/* 8001F148 0001C0A8 38 80 00 00 */ li r4, 0 +/* 8001F14C 0001C0AC 80 A6 00 C4 */ lwz r5, 0xc4(r6) +/* 8001F150 0001C0B0 38 61 00 2C */ addi r3, r1, 0x2c +/* 8001F154 0001C0B4 90 01 00 90 */ stw r0, 0x90(r1) +/* 8001F158 0001C0B8 FC 40 08 90 */ fmr f2, f1 +/* 8001F15C 0001C0BC C8 62 82 B8 */ lfd f3, lbl_805A9FD8@sda21(r2) +/* 8001F160 0001C0C0 90 A6 00 C8 */ stw r5, 0xc8(r6) +/* 8001F164 0001C0C4 90 86 00 C4 */ stw r4, 0xc4(r6) +/* 8001F168 0001C0C8 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 8001F16C 0001C0CC C0 9F 01 04 */ lfs f4, 0x104(r31) +/* 8001F170 0001C0D0 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 8001F174 0001C0D4 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8001F178 0001C0D8 90 01 00 94 */ stw r0, 0x94(r1) +/* 8001F17C 0001C0DC C8 01 00 90 */ lfd f0, 0x90(r1) +/* 8001F180 0001C0E0 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8001F184 0001C0E4 EC 64 00 32 */ fmuls f3, f4, f0 +/* 8001F188 0001C0E8 48 2F 40 01 */ bl Translate__12CTransform4fFfff +/* 8001F18C 0001C0EC 80 BF 00 40 */ lwz r5, 0x40(r31) +/* 8001F190 0001C0F0 38 61 00 5C */ addi r3, r1, 0x5c +/* 8001F194 0001C0F4 38 81 00 2C */ addi r4, r1, 0x2c +/* 8001F198 0001C0F8 38 A5 00 74 */ addi r5, r5, 0x74 +/* 8001F19C 0001C0FC 48 2F 37 B5 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8001F1A0 0001C100 83 DF 00 40 */ lwz r30, 0x40(r31) +/* 8001F1A4 0001C104 38 81 00 5C */ addi r4, r1, 0x5c +/* 8001F1A8 0001C108 38 7E 00 04 */ addi r3, r30, 4 +/* 8001F1AC 0001C10C 48 2F 39 95 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8001F1B0 0001C110 7F C3 F3 78 */ mr r3, r30 +/* 8001F1B4 0001C114 48 2A 56 35 */ bl RecalculateTransforms__10CGuiObjectFv +/* 8001F1B8 0001C118 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001F1BC 0001C11C 38 80 00 00 */ li r4, 0 +/* 8001F1C0 0001C120 48 2A B4 25 */ bl SetIsActive__10CGuiWidgetFb +/* 8001F1C4 0001C124 38 00 00 02 */ li r0, 2 +/* 8001F1C8 0001C128 7F E3 FB 78 */ mr r3, r31 +/* 8001F1CC 0001C12C 90 1F 00 08 */ stw r0, 8(r31) +/* 8001F1D0 0001C130 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 8001F1D4 0001C134 48 00 0F C5 */ bl HandleActiveChange__19SNewFileSelectFrameFP10CGuiWidget +/* 8001F1D8 0001C138 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F1DC 0001C13C 38 80 00 5F */ li r4, 0x5f +/* 8001F1E0 0001C140 48 33 75 1D */ bl GetString__12CStringTableCFi +/* 8001F1E4 0001C144 7C 64 1B 78 */ mr r4, r3 +/* 8001F1E8 0001C148 38 61 00 1C */ addi r3, r1, 0x1c +/* 8001F1EC 0001C14C 4B FF 68 05 */ bl wstring_l__4rstlFPCw +/* 8001F1F0 0001C150 38 7F 00 48 */ addi r3, r31, 0x48 +/* 8001F1F4 0001C154 38 81 00 1C */ addi r4, r1, 0x1c +/* 8001F1F8 0001C158 48 00 3B 19 */ bl sub_80022d10 +/* 8001F1FC 0001C15C 38 61 00 1C */ addi r3, r1, 0x1c +/* 8001F200 0001C160 48 31 DF 35 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F204 0001C164 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F208 0001C168 38 80 00 26 */ li r4, 0x26 +/* 8001F20C 0001C16C 48 33 74 F1 */ bl GetString__12CStringTableCFi +/* 8001F210 0001C170 7C 64 1B 78 */ mr r4, r3 +/* 8001F214 0001C174 38 61 00 0C */ addi r3, r1, 0xc +/* 8001F218 0001C178 4B FF 67 D9 */ bl wstring_l__4rstlFPCw +/* 8001F21C 0001C17C 38 7F 00 50 */ addi r3, r31, 0x50 +/* 8001F220 0001C180 38 81 00 0C */ addi r4, r1, 0xc +/* 8001F224 0001C184 48 00 3A ED */ bl sub_80022d10 +/* 8001F228 0001C188 38 61 00 0C */ addi r3, r1, 0xc +/* 8001F22C 0001C18C 48 31 DF 09 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F230 0001C190 38 60 00 FF */ li r3, 0xff +/* 8001F234 0001C194 38 00 00 00 */ li r0, 0 +/* 8001F238 0001C198 98 61 00 08 */ stb r3, 8(r1) +/* 8001F23C 0001C19C 38 81 00 08 */ addi r4, r1, 8 +/* 8001F240 0001C1A0 98 61 00 09 */ stb r3, 9(r1) +/* 8001F244 0001C1A4 98 61 00 0A */ stb r3, 0xa(r1) +/* 8001F248 0001C1A8 98 01 00 0B */ stb r0, 0xb(r1) +/* 8001F24C 0001C1AC 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001F250 0001C1B0 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8001F254 0001C1B4 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 8001F258 0001C1B8 7C 7F 02 14 */ add r3, r31, r0 +/* 8001F25C 0001C1BC 80 63 00 68 */ lwz r3, 0x68(r3) +/* 8001F260 0001C1C0 48 2A B6 0D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8001F264 0001C1C4 80 7F 00 44 */ lwz r3, 0x44(r31) +/* 8001F268 0001C1C8 38 80 00 00 */ li r4, 0 +/* 8001F26C 0001C1CC 38 A0 00 01 */ li r5, 1 +/* 8001F270 0001C1D0 48 2A B4 79 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8001F274 0001C1D4 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 8001F278 0001C1D8 83 E1 00 9C */ lwz r31, 0x9c(r1) +/* 8001F27C 0001C1DC 83 C1 00 98 */ lwz r30, 0x98(r1) +/* 8001F280 0001C1E0 7C 08 03 A6 */ mtlr r0 +/* 8001F284 0001C1E4 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 8001F288 0001C1E8 4E 80 00 20 */ blr + +.global DeactivateNewGamePopup__19SNewFileSelectFrameFv +DeactivateNewGamePopup__19SNewFileSelectFrameFv: +/* 8001F28C 0001C1EC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8001F290 0001C1F0 7C 08 02 A6 */ mflr r0 +/* 8001F294 0001C1F4 38 80 00 00 */ li r4, 0 +/* 8001F298 0001C1F8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8001F29C 0001C1FC 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8001F2A0 0001C200 7C 7F 1B 78 */ mr r31, r3 +/* 8001F2A4 0001C204 80 63 00 40 */ lwz r3, 0x40(r3) +/* 8001F2A8 0001C208 48 2A B3 3D */ bl SetIsActive__10CGuiWidgetFb +/* 8001F2AC 0001C20C 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8001F2B0 0001C210 38 80 00 00 */ li r4, 0 +/* 8001F2B4 0001C214 48 2A B3 79 */ bl SetIsVisible__10CGuiWidgetFb +/* 8001F2B8 0001C218 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001F2BC 0001C21C 38 80 00 01 */ li r4, 1 +/* 8001F2C0 0001C220 48 2A B3 25 */ bl SetIsActive__10CGuiWidgetFb +/* 8001F2C4 0001C224 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8001F2C8 0001C228 38 80 00 02 */ li r4, 2 +/* 8001F2CC 0001C22C 81 83 00 00 */ lwz r12, 0(r3) +/* 8001F2D0 0001C230 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8001F2D4 0001C234 7D 89 03 A6 */ mtctr r12 +/* 8001F2D8 0001C238 4E 80 04 21 */ bctrl +/* 8001F2DC 0001C23C 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F2E0 0001C240 38 80 00 00 */ li r4, 0 +/* 8001F2E4 0001C244 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8001F2E8 0001C248 38 80 00 02 */ li r4, 2 +/* 8001F2EC 0001C24C 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8001F2F0 0001C250 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8001F2F4 0001C254 81 83 00 00 */ lwz r12, 0(r3) +/* 8001F2F8 0001C258 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8001F2FC 0001C25C 7D 89 03 A6 */ mtctr r12 +/* 8001F300 0001C260 4E 80 04 21 */ bctrl +/* 8001F304 0001C264 38 80 00 00 */ li r4, 0 +/* 8001F308 0001C268 38 A0 00 01 */ li r5, 1 +/* 8001F30C 0001C26C 48 2A B3 DD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8001F310 0001C270 80 7F 00 44 */ lwz r3, 0x44(r31) +/* 8001F314 0001C274 38 80 00 00 */ li r4, 0 +/* 8001F318 0001C278 38 A0 00 01 */ li r5, 1 +/* 8001F31C 0001C27C 48 2A B3 CD */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8001F320 0001C280 38 00 00 00 */ li r0, 0 +/* 8001F324 0001C284 7F E3 FB 78 */ mr r3, r31 +/* 8001F328 0001C288 98 1F 01 0E */ stb r0, 0x10e(r31) +/* 8001F32C 0001C28C 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 8001F330 0001C290 48 00 0E 69 */ bl HandleActiveChange__19SNewFileSelectFrameFP10CGuiWidget +/* 8001F334 0001C294 38 00 00 FF */ li r0, 0xff +/* 8001F338 0001C298 38 81 00 08 */ addi r4, r1, 8 +/* 8001F33C 0001C29C 98 01 00 08 */ stb r0, 8(r1) +/* 8001F340 0001C2A0 98 01 00 09 */ stb r0, 9(r1) +/* 8001F344 0001C2A4 98 01 00 0A */ stb r0, 0xa(r1) +/* 8001F348 0001C2A8 98 01 00 0B */ stb r0, 0xb(r1) +/* 8001F34C 0001C2AC 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001F350 0001C2B0 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8001F354 0001C2B4 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 8001F358 0001C2B8 7C 7F 02 14 */ add r3, r31, r0 +/* 8001F35C 0001C2BC 80 63 00 68 */ lwz r3, 0x68(r3) +/* 8001F360 0001C2C0 48 2A B5 0D */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8001F364 0001C2C4 38 61 00 0C */ addi r3, r1, 0xc +/* 8001F368 0001C2C8 38 8D 81 4C */ addi r4, r13, lbl_805A6D0C@sda21 +/* 8001F36C 0001C2CC 4B FF 66 85 */ bl wstring_l__4rstlFPCw +/* 8001F370 0001C2D0 80 7F 00 60 */ lwz r3, 0x60(r31) +/* 8001F374 0001C2D4 38 81 00 0C */ addi r4, r1, 0xc +/* 8001F378 0001C2D8 38 A0 00 00 */ li r5, 0 +/* 8001F37C 0001C2DC 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8001F380 0001C2E0 48 2A A5 05 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001F384 0001C2E4 38 61 00 0C */ addi r3, r1, 0xc +/* 8001F388 0001C2E8 48 31 DD AD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F38C 0001C2EC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8001F390 0001C2F0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8001F394 0001C2F4 7C 08 03 A6 */ mtlr r0 +/* 8001F398 0001C2F8 38 21 00 30 */ addi r1, r1, 0x30 +/* 8001F39C 0001C2FC 4E 80 00 20 */ blr + +.global ActivateNewGamePopup__19SNewFileSelectFrameFv +ActivateNewGamePopup__19SNewFileSelectFrameFv: +/* 8001F3A0 0001C300 94 21 FF 20 */ stwu r1, -0xe0(r1) +/* 8001F3A4 0001C304 7C 08 02 A6 */ mflr r0 +/* 8001F3A8 0001C308 38 80 00 01 */ li r4, 1 +/* 8001F3AC 0001C30C 90 01 00 E4 */ stw r0, 0xe4(r1) +/* 8001F3B0 0001C310 93 E1 00 DC */ stw r31, 0xdc(r1) +/* 8001F3B4 0001C314 7C 7F 1B 78 */ mr r31, r3 +/* 8001F3B8 0001C318 93 C1 00 D8 */ stw r30, 0xd8(r1) +/* 8001F3BC 0001C31C 80 63 00 40 */ lwz r3, 0x40(r3) +/* 8001F3C0 0001C320 48 2A B2 25 */ bl SetIsActive__10CGuiWidgetFb +/* 8001F3C4 0001C324 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8001F3C8 0001C328 38 80 00 01 */ li r4, 1 +/* 8001F3CC 0001C32C 48 2A B2 61 */ bl SetIsVisible__10CGuiWidgetFb +/* 8001F3D0 0001C330 80 DF 00 40 */ lwz r6, 0x40(r31) +/* 8001F3D4 0001C334 3C 00 43 30 */ lis r0, 0x4330 +/* 8001F3D8 0001C338 C0 22 82 9C */ lfs f1, lbl_805A9FBC@sda21(r2) +/* 8001F3DC 0001C33C 38 80 00 00 */ li r4, 0 +/* 8001F3E0 0001C340 80 A6 00 C4 */ lwz r5, 0xc4(r6) +/* 8001F3E4 0001C344 38 61 00 6C */ addi r3, r1, 0x6c +/* 8001F3E8 0001C348 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 8001F3EC 0001C34C FC 40 08 90 */ fmr f2, f1 +/* 8001F3F0 0001C350 C8 62 82 B8 */ lfd f3, lbl_805A9FD8@sda21(r2) +/* 8001F3F4 0001C354 90 A6 00 C8 */ stw r5, 0xc8(r6) +/* 8001F3F8 0001C358 90 86 00 C4 */ stw r4, 0xc4(r6) +/* 8001F3FC 0001C35C 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 8001F400 0001C360 C0 9F 01 04 */ lfs f4, 0x104(r31) +/* 8001F404 0001C364 80 04 00 C4 */ lwz r0, 0xc4(r4) +/* 8001F408 0001C368 6C 00 80 00 */ xoris r0, r0, 0x8000 +/* 8001F40C 0001C36C 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8001F410 0001C370 C8 01 00 D0 */ lfd f0, 0xd0(r1) +/* 8001F414 0001C374 EC 00 18 28 */ fsubs f0, f0, f3 +/* 8001F418 0001C378 EC 64 00 32 */ fmuls f3, f4, f0 +/* 8001F41C 0001C37C 48 2F 3D 6D */ bl Translate__12CTransform4fFfff +/* 8001F420 0001C380 80 BF 00 40 */ lwz r5, 0x40(r31) +/* 8001F424 0001C384 38 61 00 9C */ addi r3, r1, 0x9c +/* 8001F428 0001C388 38 81 00 6C */ addi r4, r1, 0x6c +/* 8001F42C 0001C38C 38 A5 00 74 */ addi r5, r5, 0x74 +/* 8001F430 0001C390 48 2F 35 21 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 8001F434 0001C394 83 DF 00 40 */ lwz r30, 0x40(r31) +/* 8001F438 0001C398 38 81 00 9C */ addi r4, r1, 0x9c +/* 8001F43C 0001C39C 38 7E 00 04 */ addi r3, r30, 4 +/* 8001F440 0001C3A0 48 2F 37 01 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8001F444 0001C3A4 7F C3 F3 78 */ mr r3, r30 +/* 8001F448 0001C3A8 48 2A 53 A1 */ bl RecalculateTransforms__10CGuiObjectFv +/* 8001F44C 0001C3AC 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001F450 0001C3B0 38 80 00 00 */ li r4, 0 +/* 8001F454 0001C3B4 48 2A B1 91 */ bl SetIsActive__10CGuiWidgetFb +/* 8001F458 0001C3B8 38 00 00 03 */ li r0, 3 +/* 8001F45C 0001C3BC 7F E3 FB 78 */ mr r3, r31 +/* 8001F460 0001C3C0 90 1F 00 08 */ stw r0, 8(r31) +/* 8001F464 0001C3C4 80 9F 00 40 */ lwz r4, 0x40(r31) +/* 8001F468 0001C3C8 48 00 0D 31 */ bl HandleActiveChange__19SNewFileSelectFrameFP10CGuiWidget +/* 8001F46C 0001C3CC 38 60 00 FF */ li r3, 0xff +/* 8001F470 0001C3D0 38 00 00 00 */ li r0, 0 +/* 8001F474 0001C3D4 98 61 00 08 */ stb r3, 8(r1) +/* 8001F478 0001C3D8 38 81 00 08 */ addi r4, r1, 8 +/* 8001F47C 0001C3DC 98 61 00 09 */ stb r3, 9(r1) +/* 8001F480 0001C3E0 98 61 00 0A */ stb r3, 0xa(r1) +/* 8001F484 0001C3E4 98 01 00 0B */ stb r0, 0xb(r1) +/* 8001F488 0001C3E8 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001F48C 0001C3EC 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8001F490 0001C3F0 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 8001F494 0001C3F4 7C 7F 02 14 */ add r3, r31, r0 +/* 8001F498 0001C3F8 80 63 00 68 */ lwz r3, 0x68(r3) +/* 8001F49C 0001C3FC 48 2A B3 D1 */ bl SetColor__10CGuiWidgetFRC6CColor +/* 8001F4A0 0001C400 48 00 3A B5 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 8001F4A4 0001C404 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 8001F4A8 0001C408 88 03 01 78 */ lbz r0, 0x178(r3) +/* 8001F4AC 0001C40C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8001F4B0 0001C410 41 82 00 E8 */ beq lbl_8001F598 +/* 8001F4B4 0001C414 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F4B8 0001C418 38 80 00 66 */ li r4, 0x66 +/* 8001F4BC 0001C41C 48 33 72 41 */ bl GetString__12CStringTableCFi +/* 8001F4C0 0001C420 7C 64 1B 78 */ mr r4, r3 +/* 8001F4C4 0001C424 38 61 00 5C */ addi r3, r1, 0x5c +/* 8001F4C8 0001C428 4B FF 65 29 */ bl wstring_l__4rstlFPCw +/* 8001F4CC 0001C42C 38 7F 00 48 */ addi r3, r31, 0x48 +/* 8001F4D0 0001C430 38 81 00 5C */ addi r4, r1, 0x5c +/* 8001F4D4 0001C434 48 00 38 3D */ bl sub_80022d10 +/* 8001F4D8 0001C438 38 61 00 5C */ addi r3, r1, 0x5c +/* 8001F4DC 0001C43C 48 31 DC 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F4E0 0001C440 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F4E4 0001C444 38 80 00 5E */ li r4, 0x5e +/* 8001F4E8 0001C448 48 33 72 15 */ bl GetString__12CStringTableCFi +/* 8001F4EC 0001C44C 7C 64 1B 78 */ mr r4, r3 +/* 8001F4F0 0001C450 38 61 00 4C */ addi r3, r1, 0x4c +/* 8001F4F4 0001C454 4B FF 64 FD */ bl wstring_l__4rstlFPCw +/* 8001F4F8 0001C458 38 7F 00 50 */ addi r3, r31, 0x50 +/* 8001F4FC 0001C45C 38 81 00 4C */ addi r4, r1, 0x4c +/* 8001F500 0001C460 48 00 38 11 */ bl sub_80022d10 +/* 8001F504 0001C464 38 61 00 4C */ addi r3, r1, 0x4c +/* 8001F508 0001C468 48 31 DC 2D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F50C 0001C46C 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F510 0001C470 38 80 00 65 */ li r4, 0x65 +/* 8001F514 0001C474 48 33 71 E9 */ bl GetString__12CStringTableCFi +/* 8001F518 0001C478 7C 64 1B 78 */ mr r4, r3 +/* 8001F51C 0001C47C 38 61 00 3C */ addi r3, r1, 0x3c +/* 8001F520 0001C480 4B FF 64 D1 */ bl wstring_l__4rstlFPCw +/* 8001F524 0001C484 38 7F 00 58 */ addi r3, r31, 0x58 +/* 8001F528 0001C488 38 81 00 3C */ addi r4, r1, 0x3c +/* 8001F52C 0001C48C 48 00 37 E5 */ bl sub_80022d10 +/* 8001F530 0001C490 38 61 00 3C */ addi r3, r1, 0x3c +/* 8001F534 0001C494 48 31 DC 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F538 0001C498 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8001F53C 0001C49C 38 80 00 02 */ li r4, 2 +/* 8001F540 0001C4A0 81 83 00 00 */ lwz r12, 0(r3) +/* 8001F544 0001C4A4 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8001F548 0001C4A8 7D 89 03 A6 */ mtctr r12 +/* 8001F54C 0001C4AC 4E 80 04 21 */ bctrl +/* 8001F550 0001C4B0 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F554 0001C4B4 38 80 00 01 */ li r4, 1 +/* 8001F558 0001C4B8 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8001F55C 0001C4BC 38 80 00 02 */ li r4, 2 +/* 8001F560 0001C4C0 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8001F564 0001C4C4 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8001F568 0001C4C8 81 83 00 00 */ lwz r12, 0(r3) +/* 8001F56C 0001C4CC 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8001F570 0001C4D0 7D 89 03 A6 */ mtctr r12 +/* 8001F574 0001C4D4 4E 80 04 21 */ bctrl +/* 8001F578 0001C4D8 38 80 00 01 */ li r4, 1 +/* 8001F57C 0001C4DC 38 A0 00 01 */ li r5, 1 +/* 8001F580 0001C4E0 48 2A B1 69 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8001F584 0001C4E4 80 7F 00 44 */ lwz r3, 0x44(r31) +/* 8001F588 0001C4E8 38 80 00 01 */ li r4, 1 +/* 8001F58C 0001C4EC 38 A0 00 01 */ li r5, 1 +/* 8001F590 0001C4F0 48 2A B1 59 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 8001F594 0001C4F4 48 00 00 6C */ b lbl_8001F600 +lbl_8001F598: +/* 8001F598 0001C4F8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F59C 0001C4FC 38 80 00 43 */ li r4, 0x43 +/* 8001F5A0 0001C500 48 33 71 5D */ bl GetString__12CStringTableCFi +/* 8001F5A4 0001C504 7C 64 1B 78 */ mr r4, r3 +/* 8001F5A8 0001C508 38 61 00 2C */ addi r3, r1, 0x2c +/* 8001F5AC 0001C50C 4B FF 64 45 */ bl wstring_l__4rstlFPCw +/* 8001F5B0 0001C510 38 7F 00 48 */ addi r3, r31, 0x48 +/* 8001F5B4 0001C514 38 81 00 2C */ addi r4, r1, 0x2c +/* 8001F5B8 0001C518 48 00 37 59 */ bl sub_80022d10 +/* 8001F5BC 0001C51C 38 61 00 2C */ addi r3, r1, 0x2c +/* 8001F5C0 0001C520 48 31 DB 75 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F5C4 0001C524 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F5C8 0001C528 38 80 00 5E */ li r4, 0x5e +/* 8001F5CC 0001C52C 48 33 71 31 */ bl GetString__12CStringTableCFi +/* 8001F5D0 0001C530 7C 64 1B 78 */ mr r4, r3 +/* 8001F5D4 0001C534 38 61 00 1C */ addi r3, r1, 0x1c +/* 8001F5D8 0001C538 4B FF 64 19 */ bl wstring_l__4rstlFPCw +/* 8001F5DC 0001C53C 38 7F 00 50 */ addi r3, r31, 0x50 +/* 8001F5E0 0001C540 38 81 00 1C */ addi r4, r1, 0x1c +/* 8001F5E4 0001C544 48 00 37 2D */ bl sub_80022d10 +/* 8001F5E8 0001C548 38 61 00 1C */ addi r3, r1, 0x1c +/* 8001F5EC 0001C54C 48 31 DB 49 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F5F0 0001C550 80 7F 00 44 */ lwz r3, 0x44(r31) +/* 8001F5F4 0001C554 38 80 00 00 */ li r4, 0 +/* 8001F5F8 0001C558 38 A0 00 01 */ li r5, 1 +/* 8001F5FC 0001C55C 48 2A B0 ED */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +lbl_8001F600: +/* 8001F600 0001C560 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F604 0001C564 38 80 00 52 */ li r4, 0x52 +/* 8001F608 0001C568 48 33 70 F5 */ bl GetString__12CStringTableCFi +/* 8001F60C 0001C56C 7C 64 1B 78 */ mr r4, r3 +/* 8001F610 0001C570 38 61 00 0C */ addi r3, r1, 0xc +/* 8001F614 0001C574 4B FF 63 DD */ bl wstring_l__4rstlFPCw +/* 8001F618 0001C578 80 7F 00 60 */ lwz r3, 0x60(r31) +/* 8001F61C 0001C57C 38 81 00 0C */ addi r4, r1, 0xc +/* 8001F620 0001C580 38 A0 00 00 */ li r5, 0 +/* 8001F624 0001C584 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8001F628 0001C588 48 2A A2 5D */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001F62C 0001C58C 38 61 00 0C */ addi r3, r1, 0xc +/* 8001F630 0001C590 48 31 DB 05 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F634 0001C594 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8001F638 0001C598 83 E1 00 DC */ lwz r31, 0xdc(r1) +/* 8001F63C 0001C59C 83 C1 00 D8 */ lwz r30, 0xd8(r1) +/* 8001F640 0001C5A0 7C 08 03 A6 */ mtlr r0 +/* 8001F644 0001C5A4 38 21 00 E0 */ addi r1, r1, 0xe0 +/* 8001F648 0001C5A8 4E 80 00 20 */ blr + +.global ResetFrame__19SNewFileSelectFrameFv +ResetFrame__19SNewFileSelectFrameFv: +/* 8001F64C 0001C5AC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8001F650 0001C5B0 7C 08 02 A6 */ mflr r0 +/* 8001F654 0001C5B4 38 80 00 01 */ li r4, 1 +/* 8001F658 0001C5B8 90 01 00 34 */ stw r0, 0x34(r1) +/* 8001F65C 0001C5BC 38 00 00 00 */ li r0, 0 +/* 8001F660 0001C5C0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8001F664 0001C5C4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 8001F668 0001C5C8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8001F66C 0001C5CC 7C 7D 1B 78 */ mr r29, r3 +/* 8001F670 0001C5D0 90 03 00 08 */ stw r0, 8(r3) +/* 8001F674 0001C5D4 80 63 00 38 */ lwz r3, 0x38(r3) +/* 8001F678 0001C5D8 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F67C 0001C5DC 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8001F680 0001C5E0 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8001F684 0001C5E4 80 7D 00 38 */ lwz r3, 0x38(r29) +/* 8001F688 0001C5E8 3B E3 00 D4 */ addi r31, r3, 0xd4 +/* 8001F68C 0001C5EC 48 32 A9 21 */ bl White__6CColorFv +/* 8001F690 0001C5F0 7C 64 1B 78 */ mr r4, r3 +/* 8001F694 0001C5F4 7F E3 FB 78 */ mr r3, r31 +/* 8001F698 0001C5F8 48 2A 9F D1 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8001F69C 0001C5FC 80 7D 00 30 */ lwz r3, 0x30(r29) +/* 8001F6A0 0001C600 38 80 00 01 */ li r4, 1 +/* 8001F6A4 0001C604 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F6A8 0001C608 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8001F6AC 0001C60C 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8001F6B0 0001C610 80 7D 00 30 */ lwz r3, 0x30(r29) +/* 8001F6B4 0001C614 3B E3 00 D4 */ addi r31, r3, 0xd4 +/* 8001F6B8 0001C618 48 32 A8 F5 */ bl White__6CColorFv +/* 8001F6BC 0001C61C 7C 64 1B 78 */ mr r4, r3 +/* 8001F6C0 0001C620 7F E3 FB 78 */ mr r3, r31 +/* 8001F6C4 0001C624 48 2A 9F A5 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8001F6C8 0001C628 7F A3 EB 78 */ mr r3, r29 +/* 8001F6CC 0001C62C 48 00 02 4D */ bl ClearFrameContents__19SNewFileSelectFrameFv +/* 8001F6D0 0001C630 3B C0 00 02 */ li r30, 2 +/* 8001F6D4 0001C634 3B E0 00 01 */ li r31, 1 +lbl_8001F6D8: +/* 8001F6D8 0001C638 80 7D 00 20 */ lwz r3, 0x20(r29) +/* 8001F6DC 0001C63C 7F C4 F3 78 */ mr r4, r30 +/* 8001F6E0 0001C640 81 83 00 00 */ lwz r12, 0(r3) +/* 8001F6E4 0001C644 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8001F6E8 0001C648 7D 89 03 A6 */ mtctr r12 +/* 8001F6EC 0001C64C 4E 80 04 21 */ bctrl +/* 8001F6F0 0001C650 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F6F4 0001C654 53 E0 26 F6 */ rlwimi r0, r31, 4, 0x1b, 0x1b +/* 8001F6F8 0001C658 37 DE FF FF */ addic. r30, r30, -1 +/* 8001F6FC 0001C65C 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8001F700 0001C660 40 80 FF D8 */ bge lbl_8001F6D8 +/* 8001F704 0001C664 38 61 00 08 */ addi r3, r1, 8 +/* 8001F708 0001C668 38 8D 81 4C */ addi r4, r13, lbl_805A6D0C@sda21 +/* 8001F70C 0001C66C 4B FF 62 E5 */ bl wstring_l__4rstlFPCw +/* 8001F710 0001C670 80 7D 00 60 */ lwz r3, 0x60(r29) +/* 8001F714 0001C674 38 81 00 08 */ addi r4, r1, 8 +/* 8001F718 0001C678 38 A0 00 00 */ li r5, 0 +/* 8001F71C 0001C67C 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8001F720 0001C680 48 2A A1 65 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001F724 0001C684 38 61 00 08 */ addi r3, r1, 8 +/* 8001F728 0001C688 48 31 DA 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F72C 0001C68C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8001F730 0001C690 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8001F734 0001C694 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 8001F738 0001C698 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 8001F73C 0001C69C 7C 08 03 A6 */ mtlr r0 +/* 8001F740 0001C6A0 38 21 00 30 */ addi r1, r1, 0x30 +/* 8001F744 0001C6A4 4E 80 00 20 */ blr + +.global EnterErase__19SNewFileSelectFrameFv +EnterErase__19SNewFileSelectFrameFv: +/* 8001F748 0001C6A8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8001F74C 0001C6AC 7C 08 02 A6 */ mflr r0 +/* 8001F750 0001C6B0 90 01 00 74 */ stw r0, 0x74(r1) +/* 8001F754 0001C6B4 DB E1 00 60 */ stfd f31, 0x60(r1) +/* 8001F758 0001C6B8 F3 E1 00 68 */ psq_st f31, 104(r1), 0, qr0 +/* 8001F75C 0001C6BC DB C1 00 50 */ stfd f30, 0x50(r1) +/* 8001F760 0001C6C0 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 +/* 8001F764 0001C6C4 DB A1 00 40 */ stfd f29, 0x40(r1) +/* 8001F768 0001C6C8 F3 A1 00 48 */ psq_st f29, 72(r1), 0, qr0 +/* 8001F76C 0001C6CC BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 8001F770 0001C6D0 7C 7F 1B 78 */ mr r31, r3 +/* 8001F774 0001C6D4 38 00 00 01 */ li r0, 1 +/* 8001F778 0001C6D8 90 03 00 08 */ stw r0, 8(r3) +/* 8001F77C 0001C6DC 38 80 00 00 */ li r4, 0 +/* 8001F780 0001C6E0 80 63 00 28 */ lwz r3, 0x28(r3) +/* 8001F784 0001C6E4 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F788 0001C6E8 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8001F78C 0001C6EC 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8001F790 0001C6F0 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 8001F794 0001C6F4 3B A3 00 D4 */ addi r29, r3, 0xd4 +/* 8001F798 0001C6F8 48 32 A8 0D */ bl Grey__6CColorFv +/* 8001F79C 0001C6FC C3 E2 82 DC */ lfs f31, lbl_805A9FFC@sda21(r2) +/* 8001F7A0 0001C700 F3 E1 A0 0A */ psq_st f31, 10(r1), 1, qr2 +/* 8001F7A4 0001C704 38 81 00 14 */ addi r4, r1, 0x14 +/* 8001F7A8 0001C708 80 A3 00 00 */ lwz r5, 0(r3) +/* 8001F7AC 0001C70C 7F A3 EB 78 */ mr r3, r29 +/* 8001F7B0 0001C710 88 01 00 0A */ lbz r0, 0xa(r1) +/* 8001F7B4 0001C714 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 +/* 8001F7B8 0001C718 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001F7BC 0001C71C 48 2A 9E AD */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8001F7C0 0001C720 80 7F 00 38 */ lwz r3, 0x38(r31) +/* 8001F7C4 0001C724 38 80 00 00 */ li r4, 0 +/* 8001F7C8 0001C728 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F7CC 0001C72C 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8001F7D0 0001C730 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8001F7D4 0001C734 80 7F 00 38 */ lwz r3, 0x38(r31) +/* 8001F7D8 0001C738 3B A3 00 D4 */ addi r29, r3, 0xd4 +/* 8001F7DC 0001C73C 48 32 A7 C9 */ bl Grey__6CColorFv +/* 8001F7E0 0001C740 C3 C2 82 DC */ lfs f30, lbl_805A9FFC@sda21(r2) +/* 8001F7E4 0001C744 F3 C1 A0 09 */ psq_st f30, 9(r1), 1, qr2 +/* 8001F7E8 0001C748 38 81 00 10 */ addi r4, r1, 0x10 +/* 8001F7EC 0001C74C 80 A3 00 00 */ lwz r5, 0(r3) +/* 8001F7F0 0001C750 7F A3 EB 78 */ mr r3, r29 +/* 8001F7F4 0001C754 88 01 00 09 */ lbz r0, 9(r1) +/* 8001F7F8 0001C758 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 +/* 8001F7FC 0001C75C 90 01 00 10 */ stw r0, 0x10(r1) +/* 8001F800 0001C760 48 2A 9E 69 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8001F804 0001C764 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8001F808 0001C768 38 80 00 00 */ li r4, 0 +/* 8001F80C 0001C76C 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F810 0001C770 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 8001F814 0001C774 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8001F818 0001C778 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8001F81C 0001C77C 3B A3 00 D4 */ addi r29, r3, 0xd4 +/* 8001F820 0001C780 48 32 A7 85 */ bl Grey__6CColorFv +/* 8001F824 0001C784 C3 A2 82 DC */ lfs f29, lbl_805A9FFC@sda21(r2) +/* 8001F828 0001C788 F3 A1 A0 08 */ psq_st f29, 8(r1), 1, qr2 +/* 8001F82C 0001C78C 38 81 00 0C */ addi r4, r1, 0xc +/* 8001F830 0001C790 80 A3 00 00 */ lwz r5, 0(r3) +/* 8001F834 0001C794 7F A3 EB 78 */ mr r3, r29 +/* 8001F838 0001C798 88 01 00 08 */ lbz r0, 8(r1) +/* 8001F83C 0001C79C 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 +/* 8001F840 0001C7A0 90 01 00 0C */ stw r0, 0xc(r1) +/* 8001F844 0001C7A4 48 2A 9E 25 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8001F848 0001C7A8 3B 9F 00 C8 */ addi r28, r31, 0xc8 +/* 8001F84C 0001C7AC 3B 60 00 02 */ li r27, 2 +/* 8001F850 0001C7B0 3B A0 00 01 */ li r29, 1 +/* 8001F854 0001C7B4 3B C0 00 00 */ li r30, 0 +lbl_8001F858: +/* 8001F858 0001C7B8 80 7F 00 04 */ lwz r3, 4(r31) +/* 8001F85C 0001C7BC 7F 64 DB 78 */ mr r4, r27 +/* 8001F860 0001C7C0 48 22 FE 9D */ bl GetGameData__15CSaveGameScreenFi +/* 8001F864 0001C7C4 28 03 00 00 */ cmplwi r3, 0 +/* 8001F868 0001C7C8 41 82 00 28 */ beq lbl_8001F890 +/* 8001F86C 0001C7CC 80 7C 00 00 */ lwz r3, 0(r28) +/* 8001F870 0001C7D0 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F874 0001C7D4 53 A0 26 F6 */ rlwimi r0, r29, 4, 0x1b, 0x1b +/* 8001F878 0001C7D8 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 8001F87C 0001C7DC 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001F880 0001C7E0 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 8001F884 0001C7E4 90 03 00 C8 */ stw r0, 0xc8(r3) +/* 8001F888 0001C7E8 93 63 00 C4 */ stw r27, 0xc4(r3) +/* 8001F88C 0001C7EC 48 00 00 14 */ b lbl_8001F8A0 +lbl_8001F890: +/* 8001F890 0001C7F0 80 7C 00 00 */ lwz r3, 0(r28) +/* 8001F894 0001C7F4 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 8001F898 0001C7F8 53 C0 26 F6 */ rlwimi r0, r30, 4, 0x1b, 0x1b +/* 8001F89C 0001C7FC 98 03 00 B6 */ stb r0, 0xb6(r3) +lbl_8001F8A0: +/* 8001F8A0 0001C800 37 7B FF FF */ addic. r27, r27, -1 +/* 8001F8A4 0001C804 3B 9C FF D0 */ addi r28, r28, -48 +/* 8001F8A8 0001C808 40 80 FF B0 */ bge lbl_8001F858 +/* 8001F8AC 0001C80C 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F8B0 0001C810 38 80 00 52 */ li r4, 0x52 +/* 8001F8B4 0001C814 48 33 6E 49 */ bl GetString__12CStringTableCFi +/* 8001F8B8 0001C818 7C 64 1B 78 */ mr r4, r3 +/* 8001F8BC 0001C81C 38 61 00 18 */ addi r3, r1, 0x18 +/* 8001F8C0 0001C820 4B FF 61 31 */ bl wstring_l__4rstlFPCw +/* 8001F8C4 0001C824 80 7F 00 60 */ lwz r3, 0x60(r31) +/* 8001F8C8 0001C828 38 81 00 18 */ addi r4, r1, 0x18 +/* 8001F8CC 0001C82C 38 A0 00 00 */ li r5, 0 +/* 8001F8D0 0001C830 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8001F8D4 0001C834 48 2A 9F B1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001F8D8 0001C838 38 61 00 18 */ addi r3, r1, 0x18 +/* 8001F8DC 0001C83C 48 31 D8 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F8E0 0001C840 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 8001F8E4 0001C844 7F E3 FB 78 */ mr r3, r31 +/* 8001F8E8 0001C848 48 00 08 B1 */ bl HandleActiveChange__19SNewFileSelectFrameFP10CGuiWidget +/* 8001F8EC 0001C84C E3 E1 00 68 */ psq_l f31, 104(r1), 0, qr0 +/* 8001F8F0 0001C850 CB E1 00 60 */ lfd f31, 0x60(r1) +/* 8001F8F4 0001C854 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 +/* 8001F8F8 0001C858 CB C1 00 50 */ lfd f30, 0x50(r1) +/* 8001F8FC 0001C85C E3 A1 00 48 */ psq_l f29, 72(r1), 0, qr0 +/* 8001F900 0001C860 CB A1 00 40 */ lfd f29, 0x40(r1) +/* 8001F904 0001C864 BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 8001F908 0001C868 80 01 00 74 */ lwz r0, 0x74(r1) +/* 8001F90C 0001C86C 7C 08 03 A6 */ mtlr r0 +/* 8001F910 0001C870 38 21 00 70 */ addi r1, r1, 0x70 +/* 8001F914 0001C874 4E 80 00 20 */ blr + +.global ClearFrameContents__19SNewFileSelectFrameFv +ClearFrameContents__19SNewFileSelectFrameFv: +/* 8001F918 0001C878 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8001F91C 0001C87C 7C 08 02 A6 */ mflr r0 +/* 8001F920 0001C880 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8001F924 0001C884 DB E1 00 C0 */ stfd f31, 0xc0(r1) +/* 8001F928 0001C888 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 +/* 8001F92C 0001C88C DB C1 00 B0 */ stfd f30, 0xb0(r1) +/* 8001F930 0001C890 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 +/* 8001F934 0001C894 BF 41 00 98 */ stmw r26, 0x98(r1) +/* 8001F938 0001C898 C0 02 82 9C */ lfs f0, lbl_805A9FBC@sda21(r2) +/* 8001F93C 0001C89C 7C 7F 1B 78 */ mr r31, r3 +/* 8001F940 0001C8A0 3B BF 00 68 */ addi r29, r31, 0x68 +/* 8001F944 0001C8A4 3B 80 00 00 */ li r28, 0 +/* 8001F948 0001C8A8 D0 03 01 08 */ stfs f0, 0x108(r3) +/* 8001F94C 0001C8AC 3B 60 00 00 */ li r27, 0 +lbl_8001F950: +/* 8001F950 0001C8B0 80 7F 00 04 */ lwz r3, 4(r31) +/* 8001F954 0001C8B4 7F 64 DB 78 */ mr r4, r27 +/* 8001F958 0001C8B8 48 22 FD A5 */ bl GetGameData__15CSaveGameScreenFi +/* 8001F95C 0001C8BC 28 03 00 00 */ cmplwi r3, 0 +/* 8001F960 0001C8C0 41 82 00 08 */ beq lbl_8001F968 +/* 8001F964 0001C8C4 3B 80 00 01 */ li r28, 1 +lbl_8001F968: +/* 8001F968 0001C8C8 48 00 18 01 */ bl ComputeRandom__17SFileSelectOption +/* 8001F96C 0001C8CC D0 3D 00 2C */ stfs f1, 0x2c(r29) +/* 8001F970 0001C8D0 38 00 FF FF */ li r0, -1 +/* 8001F974 0001C8D4 3B DD 00 08 */ addi r30, r29, 8 +/* 8001F978 0001C8D8 3B 40 00 00 */ li r26, 0 +/* 8001F97C 0001C8DC 90 1D 00 28 */ stw r0, 0x28(r29) +lbl_8001F980: +/* 8001F980 0001C8E0 38 61 00 84 */ addi r3, r1, 0x84 +/* 8001F984 0001C8E4 38 8D 81 4C */ addi r4, r13, lbl_805A6D0C@sda21 +/* 8001F988 0001C8E8 4B FF 60 69 */ bl wstring_l__4rstlFPCw +/* 8001F98C 0001C8EC 80 7E 00 00 */ lwz r3, 0(r30) +/* 8001F990 0001C8F0 38 81 00 84 */ addi r4, r1, 0x84 +/* 8001F994 0001C8F4 38 A0 00 00 */ li r5, 0 +/* 8001F998 0001C8F8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8001F99C 0001C8FC 48 2A 9E E9 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001F9A0 0001C900 38 61 00 84 */ addi r3, r1, 0x84 +/* 8001F9A4 0001C904 48 31 D7 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F9A8 0001C908 38 61 00 74 */ addi r3, r1, 0x74 +/* 8001F9AC 0001C90C 38 8D 81 4C */ addi r4, r13, lbl_805A6D0C@sda21 +/* 8001F9B0 0001C910 4B FF 60 41 */ bl wstring_l__4rstlFPCw +/* 8001F9B4 0001C914 80 7E 00 04 */ lwz r3, 4(r30) +/* 8001F9B8 0001C918 38 81 00 74 */ addi r4, r1, 0x74 +/* 8001F9BC 0001C91C 38 A0 00 00 */ li r5, 0 +/* 8001F9C0 0001C920 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 8001F9C4 0001C924 48 2A 9E C1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001F9C8 0001C928 38 61 00 74 */ addi r3, r1, 0x74 +/* 8001F9CC 0001C92C 48 31 D7 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001F9D0 0001C930 3B 5A 00 01 */ addi r26, r26, 1 +/* 8001F9D4 0001C934 3B DE 00 08 */ addi r30, r30, 8 +/* 8001F9D8 0001C938 2C 1A 00 04 */ cmpwi r26, 4 +/* 8001F9DC 0001C93C 41 80 FF A4 */ blt lbl_8001F980 +/* 8001F9E0 0001C940 3B 7B 00 01 */ addi r27, r27, 1 +/* 8001F9E4 0001C944 3B BD 00 30 */ addi r29, r29, 0x30 +/* 8001F9E8 0001C948 2C 1B 00 03 */ cmpwi r27, 3 +/* 8001F9EC 0001C94C 41 80 FF 64 */ blt lbl_8001F950 +/* 8001F9F0 0001C950 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001F9F4 0001C954 38 80 00 26 */ li r4, 0x26 +/* 8001F9F8 0001C958 48 33 6D 05 */ bl GetString__12CStringTableCFi +/* 8001F9FC 0001C95C 7C 64 1B 78 */ mr r4, r3 +/* 8001FA00 0001C960 38 61 00 64 */ addi r3, r1, 0x64 +/* 8001FA04 0001C964 4B FF 5F ED */ bl wstring_l__4rstlFPCw +/* 8001FA08 0001C968 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 8001FA0C 0001C96C 38 81 00 64 */ addi r4, r1, 0x64 +/* 8001FA10 0001C970 C0 22 82 E0 */ lfs f1, lbl_805AA000@sda21(r2) +/* 8001FA14 0001C974 48 00 16 C5 */ bl StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring +/* 8001FA18 0001C978 38 61 00 64 */ addi r3, r1, 0x64 +/* 8001FA1C 0001C97C 48 31 D7 19 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FA20 0001C980 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FA24 0001C984 38 80 00 25 */ li r4, 0x25 +/* 8001FA28 0001C988 48 33 6C D5 */ bl GetString__12CStringTableCFi +/* 8001FA2C 0001C98C 7C 64 1B 78 */ mr r4, r3 +/* 8001FA30 0001C990 38 61 00 54 */ addi r3, r1, 0x54 +/* 8001FA34 0001C994 4B FF 5F BD */ bl wstring_l__4rstlFPCw +/* 8001FA38 0001C998 80 7F 00 38 */ lwz r3, 0x38(r31) +/* 8001FA3C 0001C99C 38 81 00 54 */ addi r4, r1, 0x54 +/* 8001FA40 0001C9A0 C0 22 82 E0 */ lfs f1, lbl_805AA000@sda21(r2) +/* 8001FA44 0001C9A4 48 00 16 95 */ bl StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring +/* 8001FA48 0001C9A8 38 61 00 54 */ addi r3, r1, 0x54 +/* 8001FA4C 0001C9AC 48 31 D6 E9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FA50 0001C9B0 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FA54 0001C9B4 38 80 00 60 */ li r4, 0x60 +/* 8001FA58 0001C9B8 48 33 6C A5 */ bl GetString__12CStringTableCFi +/* 8001FA5C 0001C9BC 7C 64 1B 78 */ mr r4, r3 +/* 8001FA60 0001C9C0 38 61 00 44 */ addi r3, r1, 0x44 +/* 8001FA64 0001C9C4 4B FF 5F 8D */ bl wstring_l__4rstlFPCw +/* 8001FA68 0001C9C8 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8001FA6C 0001C9CC 38 81 00 44 */ addi r4, r1, 0x44 +/* 8001FA70 0001C9D0 C0 22 82 E0 */ lfs f1, lbl_805AA000@sda21(r2) +/* 8001FA74 0001C9D4 48 00 16 65 */ bl StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring +/* 8001FA78 0001C9D8 38 61 00 44 */ addi r3, r1, 0x44 +/* 8001FA7C 0001C9DC 48 31 D6 B9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FA80 0001C9E0 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FA84 0001C9E4 38 80 00 26 */ li r4, 0x26 +/* 8001FA88 0001C9E8 48 33 6C 75 */ bl GetString__12CStringTableCFi +/* 8001FA8C 0001C9EC 7C 64 1B 78 */ mr r4, r3 +/* 8001FA90 0001C9F0 38 61 00 34 */ addi r3, r1, 0x34 +/* 8001FA94 0001C9F4 4B FF 5F 5D */ bl wstring_l__4rstlFPCw +/* 8001FA98 0001C9F8 80 7F 00 2C */ lwz r3, 0x2c(r31) +/* 8001FA9C 0001C9FC 38 81 00 34 */ addi r4, r1, 0x34 +/* 8001FAA0 0001CA00 C0 22 82 E0 */ lfs f1, lbl_805AA000@sda21(r2) +/* 8001FAA4 0001CA04 48 00 16 35 */ bl StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring +/* 8001FAA8 0001CA08 38 61 00 34 */ addi r3, r1, 0x34 +/* 8001FAAC 0001CA0C 48 31 D6 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FAB0 0001CA10 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FAB4 0001CA14 38 80 00 25 */ li r4, 0x25 +/* 8001FAB8 0001CA18 48 33 6C 45 */ bl GetString__12CStringTableCFi +/* 8001FABC 0001CA1C 7C 64 1B 78 */ mr r4, r3 +/* 8001FAC0 0001CA20 38 61 00 24 */ addi r3, r1, 0x24 +/* 8001FAC4 0001CA24 4B FF 5F 2D */ bl wstring_l__4rstlFPCw +/* 8001FAC8 0001CA28 80 7F 00 3C */ lwz r3, 0x3c(r31) +/* 8001FACC 0001CA2C 38 81 00 24 */ addi r4, r1, 0x24 +/* 8001FAD0 0001CA30 C0 22 82 E0 */ lfs f1, lbl_805AA000@sda21(r2) +/* 8001FAD4 0001CA34 48 00 16 05 */ bl StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring +/* 8001FAD8 0001CA38 38 61 00 24 */ addi r3, r1, 0x24 +/* 8001FADC 0001CA3C 48 31 D6 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FAE0 0001CA40 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FAE4 0001CA44 38 80 00 60 */ li r4, 0x60 +/* 8001FAE8 0001CA48 48 33 6C 15 */ bl GetString__12CStringTableCFi +/* 8001FAEC 0001CA4C 7C 64 1B 78 */ mr r4, r3 +/* 8001FAF0 0001CA50 38 61 00 14 */ addi r3, r1, 0x14 +/* 8001FAF4 0001CA54 4B FF 5E FD */ bl wstring_l__4rstlFPCw +/* 8001FAF8 0001CA58 80 7F 00 34 */ lwz r3, 0x34(r31) +/* 8001FAFC 0001CA5C 38 81 00 14 */ addi r4, r1, 0x14 +/* 8001FB00 0001CA60 C0 22 82 E0 */ lfs f1, lbl_805AA000@sda21(r2) +/* 8001FB04 0001CA64 48 00 15 D5 */ bl StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring +/* 8001FB08 0001CA68 38 61 00 14 */ addi r3, r1, 0x14 +/* 8001FB0C 0001CA6C 48 31 D6 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FB10 0001CA70 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8001FB14 0001CA74 83 5F 00 28 */ lwz r26, 0x28(r31) +/* 8001FB18 0001CA78 41 82 00 28 */ beq lbl_8001FB40 +/* 8001FB1C 0001CA7C 88 1A 00 B6 */ lbz r0, 0xb6(r26) +/* 8001FB20 0001CA80 38 60 00 01 */ li r3, 1 +/* 8001FB24 0001CA84 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8001FB28 0001CA88 98 1A 00 B6 */ stb r0, 0xb6(r26) +/* 8001FB2C 0001CA8C 48 32 A4 81 */ bl White__6CColorFv +/* 8001FB30 0001CA90 7C 64 1B 78 */ mr r4, r3 +/* 8001FB34 0001CA94 38 7A 00 D4 */ addi r3, r26, 0xd4 +/* 8001FB38 0001CA98 48 2A 9B 31 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8001FB3C 0001CA9C 48 00 00 3C */ b lbl_8001FB78 +lbl_8001FB40: +/* 8001FB40 0001CAA0 88 1A 00 B6 */ lbz r0, 0xb6(r26) +/* 8001FB44 0001CAA4 38 60 00 00 */ li r3, 0 +/* 8001FB48 0001CAA8 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8001FB4C 0001CAAC 98 1A 00 B6 */ stb r0, 0xb6(r26) +/* 8001FB50 0001CAB0 48 32 A4 55 */ bl Grey__6CColorFv +/* 8001FB54 0001CAB4 C3 E2 82 DC */ lfs f31, lbl_805A9FFC@sda21(r2) +/* 8001FB58 0001CAB8 F3 E1 A0 09 */ psq_st f31, 9(r1), 1, qr2 +/* 8001FB5C 0001CABC 38 81 00 10 */ addi r4, r1, 0x10 +/* 8001FB60 0001CAC0 80 A3 00 00 */ lwz r5, 0(r3) +/* 8001FB64 0001CAC4 38 7A 00 D4 */ addi r3, r26, 0xd4 +/* 8001FB68 0001CAC8 88 01 00 09 */ lbz r0, 9(r1) +/* 8001FB6C 0001CACC 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 +/* 8001FB70 0001CAD0 90 01 00 10 */ stw r0, 0x10(r1) +/* 8001FB74 0001CAD4 48 2A 9A F5 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +lbl_8001FB78: +/* 8001FB78 0001CAD8 80 BF 00 20 */ lwz r5, 0x20(r31) +/* 8001FB7C 0001CADC 38 00 00 00 */ li r0, 0 +/* 8001FB80 0001CAE0 38 80 00 05 */ li r4, 5 +/* 8001FB84 0001CAE4 80 65 00 C4 */ lwz r3, 0xc4(r5) +/* 8001FB88 0001CAE8 90 65 00 C8 */ stw r3, 0xc8(r5) +/* 8001FB8C 0001CAEC 90 05 00 C4 */ stw r0, 0xc4(r5) +/* 8001FB90 0001CAF0 80 7F 00 20 */ lwz r3, 0x20(r31) +/* 8001FB94 0001CAF4 81 83 00 00 */ lwz r12, 0(r3) +/* 8001FB98 0001CAF8 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8001FB9C 0001CAFC 7D 89 03 A6 */ mtctr r12 +/* 8001FBA0 0001CB00 4E 80 04 21 */ bctrl +/* 8001FBA4 0001CB04 7C 7E 1B 78 */ mr r30, r3 +/* 8001FBA8 0001CB08 48 27 B6 2D */ bl SlideShowGalleryFlags__10CSlideShowFv +/* 8001FBAC 0001CB0C 28 03 00 00 */ cmplwi r3, 0 +/* 8001FBB0 0001CB10 41 82 00 30 */ beq lbl_8001FBE0 +/* 8001FBB4 0001CB14 88 1E 00 B6 */ lbz r0, 0xb6(r30) +/* 8001FBB8 0001CB18 38 60 00 01 */ li r3, 1 +/* 8001FBBC 0001CB1C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8001FBC0 0001CB20 98 1E 00 B6 */ stb r0, 0xb6(r30) +/* 8001FBC4 0001CB24 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8001FBC8 0001CB28 3B C3 00 D4 */ addi r30, r3, 0xd4 +/* 8001FBCC 0001CB2C 48 32 A3 E1 */ bl White__6CColorFv +/* 8001FBD0 0001CB30 7C 64 1B 78 */ mr r4, r3 +/* 8001FBD4 0001CB34 7F C3 F3 78 */ mr r3, r30 +/* 8001FBD8 0001CB38 48 2A 9A 91 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 8001FBDC 0001CB3C 48 00 00 44 */ b lbl_8001FC20 +lbl_8001FBE0: +/* 8001FBE0 0001CB40 88 1E 00 B6 */ lbz r0, 0xb6(r30) +/* 8001FBE4 0001CB44 38 60 00 00 */ li r3, 0 +/* 8001FBE8 0001CB48 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8001FBEC 0001CB4C 98 1E 00 B6 */ stb r0, 0xb6(r30) +/* 8001FBF0 0001CB50 80 7F 00 30 */ lwz r3, 0x30(r31) +/* 8001FBF4 0001CB54 3B C3 00 D4 */ addi r30, r3, 0xd4 +/* 8001FBF8 0001CB58 48 32 A3 AD */ bl Grey__6CColorFv +/* 8001FBFC 0001CB5C C3 C2 82 DC */ lfs f30, lbl_805A9FFC@sda21(r2) +/* 8001FC00 0001CB60 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 8001FC04 0001CB64 38 81 00 0C */ addi r4, r1, 0xc +/* 8001FC08 0001CB68 80 A3 00 00 */ lwz r5, 0(r3) +/* 8001FC0C 0001CB6C 7F C3 F3 78 */ mr r3, r30 +/* 8001FC10 0001CB70 88 01 00 08 */ lbz r0, 8(r1) +/* 8001FC14 0001CB74 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 +/* 8001FC18 0001CB78 90 01 00 0C */ stw r0, 0xc(r1) +/* 8001FC1C 0001CB7C 48 2A 9A 4D */ bl SetFontColor__15CGuiTextSupportFRC6CColor +lbl_8001FC20: +/* 8001FC20 0001CB80 80 9F 00 20 */ lwz r4, 0x20(r31) +/* 8001FC24 0001CB84 7F E3 FB 78 */ mr r3, r31 +/* 8001FC28 0001CB88 48 00 05 71 */ bl HandleActiveChange__19SNewFileSelectFrameFP10CGuiWidget +/* 8001FC2C 0001CB8C E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 +/* 8001FC30 0001CB90 CB E1 00 C0 */ lfd f31, 0xc0(r1) +/* 8001FC34 0001CB94 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 +/* 8001FC38 0001CB98 CB C1 00 B0 */ lfd f30, 0xb0(r1) +/* 8001FC3C 0001CB9C BB 41 00 98 */ lmw r26, 0x98(r1) +/* 8001FC40 0001CBA0 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8001FC44 0001CBA4 7C 08 03 A6 */ mtlr r0 +/* 8001FC48 0001CBA8 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8001FC4C 0001CBAC 4E 80 00 20 */ blr + +.global SetupFrameContents__19SNewFileSelectFrameFv +SetupFrameContents__19SNewFileSelectFrameFv: +/* 8001FC50 0001CBB0 94 21 FE A0 */ stwu r1, -0x160(r1) +/* 8001FC54 0001CBB4 7C 08 02 A6 */ mflr r0 +/* 8001FC58 0001CBB8 90 01 01 64 */ stw r0, 0x164(r1) +/* 8001FC5C 0001CBBC DB E1 01 50 */ stfd f31, 0x150(r1) +/* 8001FC60 0001CBC0 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 +/* 8001FC64 0001CBC4 BF 21 01 34 */ stmw r25, 0x134(r1) +/* 8001FC68 0001CBC8 7C 7B 1B 78 */ mr r27, r3 +/* 8001FC6C 0001CBCC 3B C0 00 00 */ li r30, 0 +/* 8001FC70 0001CBD0 3B FB 00 68 */ addi r31, r27, 0x68 +lbl_8001FC74: +/* 8001FC74 0001CBD4 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 8001FC78 0001CBD8 2C 00 00 04 */ cmpwi r0, 4 +/* 8001FC7C 0001CBDC 41 82 03 BC */ beq lbl_80020038 +/* 8001FC80 0001CBE0 2C 00 FF FF */ cmpwi r0, -1 +/* 8001FC84 0001CBE4 40 82 00 0C */ bne lbl_8001FC90 +/* 8001FC88 0001CBE8 3B 40 00 00 */ li r26, 0 +/* 8001FC8C 0001CBEC 48 00 00 10 */ b lbl_8001FC9C +lbl_8001FC90: +/* 8001FC90 0001CBF0 54 00 18 38 */ slwi r0, r0, 3 +/* 8001FC94 0001CBF4 7C 7F 02 14 */ add r3, r31, r0 +/* 8001FC98 0001CBF8 83 43 00 08 */ lwz r26, 8(r3) +lbl_8001FC9C: +/* 8001FC9C 0001CBFC 28 1A 00 00 */ cmplwi r26, 0 +/* 8001FCA0 0001CC00 41 82 00 24 */ beq lbl_8001FCC4 +/* 8001FCA4 0001CC04 38 7A 00 D4 */ addi r3, r26, 0xd4 +/* 8001FCA8 0001CC08 48 2A 83 05 */ bl GetNumCharsTotal__15CGuiTextSupportCFv +/* 8001FCAC 0001CC0C FF E0 08 90 */ fmr f31, f1 +/* 8001FCB0 0001CC10 38 7A 00 D4 */ addi r3, r26, 0xd4 +/* 8001FCB4 0001CC14 48 2A 83 61 */ bl GetNumCharactersPrinted__15CGuiTextSupportCFv +/* 8001FCB8 0001CC18 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8001FCBC 0001CC1C 4C 41 13 82 */ cror 2, 1, 2 +/* 8001FCC0 0001CC20 40 82 03 78 */ bne lbl_80020038 +lbl_8001FCC4: +/* 8001FCC4 0001CC24 80 7F 00 28 */ lwz r3, 0x28(r31) +/* 8001FCC8 0001CC28 38 03 00 01 */ addi r0, r3, 1 +/* 8001FCCC 0001CC2C 90 1F 00 28 */ stw r0, 0x28(r31) +/* 8001FCD0 0001CC30 80 1F 00 28 */ lwz r0, 0x28(r31) +/* 8001FCD4 0001CC34 2C 00 00 04 */ cmpwi r0, 4 +/* 8001FCD8 0001CC38 40 80 03 60 */ bge lbl_80020038 +/* 8001FCDC 0001CC3C 80 7B 00 04 */ lwz r3, 4(r27) +/* 8001FCE0 0001CC40 7F C4 F3 78 */ mr r4, r30 +/* 8001FCE4 0001CC44 48 22 FA 19 */ bl GetGameData__15CSaveGameScreenFi +/* 8001FCE8 0001CC48 80 BF 00 28 */ lwz r5, 0x28(r31) +/* 8001FCEC 0001CC4C 38 8D A9 1A */ addi r4, r13, lbl_805A94DA@sda21 +/* 8001FCF0 0001CC50 38 00 00 00 */ li r0, 0 +/* 8001FCF4 0001CC54 7C 7A 1B 78 */ mr r26, r3 +/* 8001FCF8 0001CC58 54 A3 18 38 */ slwi r3, r5, 3 +/* 8001FCFC 0001CC5C 2C 05 00 02 */ cmpwi r5, 2 +/* 8001FD00 0001CC60 7C 7F 1A 14 */ add r3, r31, r3 +/* 8001FD04 0001CC64 83 A3 00 08 */ lwz r29, 8(r3) +/* 8001FD08 0001CC68 83 83 00 0C */ lwz r28, 0xc(r3) +/* 8001FD0C 0001CC6C 90 81 00 CC */ stw r4, 0xcc(r1) +/* 8001FD10 0001CC70 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 8001FD14 0001CC74 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8001FD18 0001CC78 41 82 01 A0 */ beq lbl_8001FEB8 +/* 8001FD1C 0001CC7C 40 80 00 14 */ bge lbl_8001FD30 +/* 8001FD20 0001CC80 2C 05 00 00 */ cmpwi r5, 0 +/* 8001FD24 0001CC84 41 82 00 18 */ beq lbl_8001FD3C +/* 8001FD28 0001CC88 40 80 00 F4 */ bge lbl_8001FE1C +/* 8001FD2C 0001CC8C 48 00 02 E4 */ b lbl_80020010 +lbl_8001FD30: +/* 8001FD30 0001CC90 2C 05 00 04 */ cmpwi r5, 4 +/* 8001FD34 0001CC94 40 80 02 DC */ bge lbl_80020010 +/* 8001FD38 0001CC98 48 00 02 74 */ b lbl_8001FFAC +lbl_8001FD3C: +/* 8001FD3C 0001CC9C 28 1A 00 00 */ cmplwi r26, 0 +/* 8001FD40 0001CCA0 41 82 00 A4 */ beq lbl_8001FDE4 +/* 8001FD44 0001CCA4 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8001FD48 0001CCA8 80 BA 00 18 */ lwz r5, 0x18(r26) +/* 8001FD4C 0001CCAC 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8001FD50 0001CCB0 38 61 00 DC */ addi r3, r1, 0xdc +/* 8001FD54 0001CCB4 38 84 02 31 */ addi r4, r4, 0x231 +/* 8001FD58 0001CCB8 4C C6 31 82 */ crclr 6 +/* 8001FD5C 0001CCBC 48 36 DF 81 */ bl sprintf +/* 8001FD60 0001CCC0 88 1A 00 20 */ lbz r0, 0x20(r26) +/* 8001FD64 0001CCC4 38 80 00 27 */ li r4, 0x27 +/* 8001FD68 0001CCC8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FD6C 0001CCCC 28 00 00 00 */ cmplwi r0, 0 +/* 8001FD70 0001CCD0 41 82 00 08 */ beq lbl_8001FD78 +/* 8001FD74 0001CCD4 38 80 00 6A */ li r4, 0x6a +lbl_8001FD78: +/* 8001FD78 0001CCD8 7C 84 F2 14 */ add r4, r4, r30 +/* 8001FD7C 0001CCDC 48 33 69 81 */ bl GetString__12CStringTableCFi +/* 8001FD80 0001CCE0 7C 64 1B 78 */ mr r4, r3 +/* 8001FD84 0001CCE4 38 61 00 BC */ addi r3, r1, 0xbc +/* 8001FD88 0001CCE8 4B FF 5C 69 */ bl wstring_l__4rstlFPCw +/* 8001FD8C 0001CCEC 38 61 00 AC */ addi r3, r1, 0xac +/* 8001FD90 0001CCF0 38 81 00 DC */ addi r4, r1, 0xdc +/* 8001FD94 0001CCF4 4B FE 4F 25 */ bl string_l__4rstlFPCc +/* 8001FD98 0001CCF8 38 61 00 9C */ addi r3, r1, 0x9c +/* 8001FD9C 0001CCFC 38 81 00 AC */ addi r4, r1, 0xac +/* 8001FDA0 0001CD00 48 31 E9 81 */ bl "ConvertToUNICODE__13CStringExtrasFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001FDA4 0001CD04 38 61 00 8C */ addi r3, r1, 0x8c +/* 8001FDA8 0001CD08 38 81 00 BC */ addi r4, r1, 0xbc +/* 8001FDAC 0001CD0C 38 A1 00 9C */ addi r5, r1, 0x9c +/* 8001FDB0 0001CD10 48 00 02 B5 */ bl sub_80020064 +/* 8001FDB4 0001CD14 38 61 00 CC */ addi r3, r1, 0xcc +/* 8001FDB8 0001CD18 38 81 00 8C */ addi r4, r1, 0x8c +/* 8001FDBC 0001CD1C 48 31 D5 91 */ bl sub_8033d34c +/* 8001FDC0 0001CD20 38 61 00 8C */ addi r3, r1, 0x8c +/* 8001FDC4 0001CD24 48 31 D3 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FDC8 0001CD28 38 61 00 9C */ addi r3, r1, 0x9c +/* 8001FDCC 0001CD2C 48 31 D3 69 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FDD0 0001CD30 38 61 00 AC */ addi r3, r1, 0xac +/* 8001FDD4 0001CD34 48 31 DD 0D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FDD8 0001CD38 38 61 00 BC */ addi r3, r1, 0xbc +/* 8001FDDC 0001CD3C 48 31 D3 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FDE0 0001CD40 48 00 02 30 */ b lbl_80020010 +lbl_8001FDE4: +/* 8001FDE4 0001CD44 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FDE8 0001CD48 38 80 00 24 */ li r4, 0x24 +/* 8001FDEC 0001CD4C 48 33 69 11 */ bl GetString__12CStringTableCFi +/* 8001FDF0 0001CD50 7C 64 1B 78 */ mr r4, r3 +/* 8001FDF4 0001CD54 38 61 00 7C */ addi r3, r1, 0x7c +/* 8001FDF8 0001CD58 38 C1 00 08 */ addi r6, r1, 8 +/* 8001FDFC 0001CD5C 38 A0 FF FF */ li r5, -1 +/* 8001FE00 0001CD60 48 31 D9 BD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 8001FE04 0001CD64 38 61 00 CC */ addi r3, r1, 0xcc +/* 8001FE08 0001CD68 38 81 00 7C */ addi r4, r1, 0x7c +/* 8001FE0C 0001CD6C 48 31 D5 41 */ bl sub_8033d34c +/* 8001FE10 0001CD70 38 61 00 7C */ addi r3, r1, 0x7c +/* 8001FE14 0001CD74 48 31 D3 21 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FE18 0001CD78 48 00 01 F8 */ b lbl_80020010 +lbl_8001FE1C: +/* 8001FE1C 0001CD7C 28 1A 00 00 */ cmplwi r26, 0 +/* 8001FE20 0001CD80 41 82 00 68 */ beq lbl_8001FE88 +/* 8001FE24 0001CD84 80 6D A0 84 */ lwz r3, gpMemoryCard@sda21(r13) +/* 8001FE28 0001CD88 3B 20 00 00 */ li r25, 0 +/* 8001FE2C 0001CD8C 80 9A 00 08 */ lwz r4, 8(r26) +/* 8001FE30 0001CD90 48 22 91 89 */ bl HasSaveWorldMemory__15CMemoryCardSysFi +/* 8001FE34 0001CD94 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001FE38 0001CD98 41 82 00 18 */ beq lbl_8001FE50 +/* 8001FE3C 0001CD9C 80 6D A0 84 */ lwz r3, gpMemoryCard@sda21(r13) +/* 8001FE40 0001CDA0 80 9A 00 08 */ lwz r4, 8(r26) +/* 8001FE44 0001CDA4 48 22 90 C9 */ bl GetSaveWorldMemory__14CMemoryCardSysCFi +/* 8001FE48 0001CDA8 48 22 90 81 */ bl GetFrontEndName__16CSaveWorldMemoryCFv +/* 8001FE4C 0001CDAC 7C 79 1B 78 */ mr r25, r3 +lbl_8001FE50: +/* 8001FE50 0001CDB0 28 19 00 00 */ cmplwi r25, 0 +/* 8001FE54 0001CDB4 38 61 00 6C */ addi r3, r1, 0x6c +/* 8001FE58 0001CDB8 41 82 00 0C */ beq lbl_8001FE64 +/* 8001FE5C 0001CDBC 7F 24 CB 78 */ mr r4, r25 +/* 8001FE60 0001CDC0 48 00 00 0C */ b lbl_8001FE6C +lbl_8001FE64: +/* 8001FE64 0001CDC4 38 8D 81 4C */ addi r4, r13, lbl_805A6D0C@sda21 +/* 8001FE68 0001CDC8 38 84 00 02 */ addi r4, r4, 2 +lbl_8001FE6C: +/* 8001FE6C 0001CDCC 4B FF 5B 85 */ bl wstring_l__4rstlFPCw +/* 8001FE70 0001CDD0 38 61 00 CC */ addi r3, r1, 0xcc +/* 8001FE74 0001CDD4 38 81 00 6C */ addi r4, r1, 0x6c +/* 8001FE78 0001CDD8 48 31 D4 D5 */ bl sub_8033d34c +/* 8001FE7C 0001CDDC 38 61 00 6C */ addi r3, r1, 0x6c +/* 8001FE80 0001CDE0 48 31 D2 B5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FE84 0001CDE4 48 00 01 8C */ b lbl_80020010 +lbl_8001FE88: +/* 8001FE88 0001CDE8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FE8C 0001CDEC 38 80 00 33 */ li r4, 0x33 +/* 8001FE90 0001CDF0 48 33 68 6D */ bl GetString__12CStringTableCFi +/* 8001FE94 0001CDF4 7C 64 1B 78 */ mr r4, r3 +/* 8001FE98 0001CDF8 38 61 00 5C */ addi r3, r1, 0x5c +/* 8001FE9C 0001CDFC 4B FF 5B 55 */ bl wstring_l__4rstlFPCw +/* 8001FEA0 0001CE00 38 61 00 CC */ addi r3, r1, 0xcc +/* 8001FEA4 0001CE04 38 81 00 5C */ addi r4, r1, 0x5c +/* 8001FEA8 0001CE08 48 31 D4 A5 */ bl sub_8033d34c +/* 8001FEAC 0001CE0C 38 61 00 5C */ addi r3, r1, 0x5c +/* 8001FEB0 0001CE10 48 31 D2 85 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FEB4 0001CE14 48 00 01 5C */ b lbl_80020010 +lbl_8001FEB8: +/* 8001FEB8 0001CE18 28 1A 00 00 */ cmplwi r26, 0 +/* 8001FEBC 0001CE1C 41 82 00 C0 */ beq lbl_8001FF7C +/* 8001FEC0 0001CE20 C8 1A 00 00 */ lfd f0, 0(r26) +/* 8001FEC4 0001CE24 3C 80 91 A3 */ lis r4, 0x91A2B3C5@ha +/* 8001FEC8 0001CE28 3C 60 88 89 */ lis r3, 0x88888889@ha +/* 8001FECC 0001CE2C 3C A0 80 3D */ lis r5, lbl_803CC644@ha +/* 8001FED0 0001CE30 FC 00 00 1E */ fctiwz f0, f0 +/* 8001FED4 0001CE34 38 A5 C6 44 */ addi r5, r5, lbl_803CC644@l +/* 8001FED8 0001CE38 38 04 B3 C5 */ addi r0, r4, 0x91A2B3C5@l +/* 8001FEDC 0001CE3C 39 03 88 89 */ addi r8, r3, 0x88888889@l +/* 8001FEE0 0001CE40 38 61 00 FC */ addi r3, r1, 0xfc +/* 8001FEE4 0001CE44 38 85 02 3A */ addi r4, r5, 0x23a +/* 8001FEE8 0001CE48 D8 01 01 20 */ stfd f0, 0x120(r1) +/* 8001FEEC 0001CE4C D8 01 01 28 */ stfd f0, 0x128(r1) +/* 8001FEF0 0001CE50 80 A1 01 24 */ lwz r5, 0x124(r1) +/* 8001FEF4 0001CE54 80 E1 01 2C */ lwz r7, 0x12c(r1) +/* 8001FEF8 0001CE58 7C C0 28 96 */ mulhw r6, r0, r5 +/* 8001FEFC 0001CE5C 7C 00 38 96 */ mulhw r0, r0, r7 +/* 8001FF00 0001CE60 7C A6 2A 14 */ add r5, r6, r5 +/* 8001FF04 0001CE64 7C A5 5E 70 */ srawi r5, r5, 0xb +/* 8001FF08 0001CE68 7C 00 3A 14 */ add r0, r0, r7 +/* 8001FF0C 0001CE6C 54 A9 0F FE */ srwi r9, r5, 0x1f +/* 8001FF10 0001CE70 7C 00 5E 70 */ srawi r0, r0, 0xb +/* 8001FF14 0001CE74 54 06 0F FE */ srwi r6, r0, 0x1f +/* 8001FF18 0001CE78 7C A5 4A 14 */ add r5, r5, r9 +/* 8001FF1C 0001CE7C 7C 00 32 14 */ add r0, r0, r6 +/* 8001FF20 0001CE80 1C 00 0E 10 */ mulli r0, r0, 0xe10 +/* 8001FF24 0001CE84 7C 00 38 50 */ subf r0, r0, r7 +/* 8001FF28 0001CE88 7C C8 00 96 */ mulhw r6, r8, r0 +/* 8001FF2C 0001CE8C 7C 06 02 14 */ add r0, r6, r0 +/* 8001FF30 0001CE90 7C 00 2E 70 */ srawi r0, r0, 5 +/* 8001FF34 0001CE94 54 06 0F FE */ srwi r6, r0, 0x1f +/* 8001FF38 0001CE98 7C C0 32 14 */ add r6, r0, r6 +/* 8001FF3C 0001CE9C 4C C6 31 82 */ crclr 6 +/* 8001FF40 0001CEA0 48 36 DD 9D */ bl sprintf +/* 8001FF44 0001CEA4 38 61 00 4C */ addi r3, r1, 0x4c +/* 8001FF48 0001CEA8 38 81 00 FC */ addi r4, r1, 0xfc +/* 8001FF4C 0001CEAC 4B FE 4D 6D */ bl string_l__4rstlFPCc +/* 8001FF50 0001CEB0 38 61 00 3C */ addi r3, r1, 0x3c +/* 8001FF54 0001CEB4 38 81 00 4C */ addi r4, r1, 0x4c +/* 8001FF58 0001CEB8 48 31 E7 C9 */ bl "ConvertToUNICODE__13CStringExtrasFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8001FF5C 0001CEBC 38 61 00 CC */ addi r3, r1, 0xcc +/* 8001FF60 0001CEC0 38 81 00 3C */ addi r4, r1, 0x3c +/* 8001FF64 0001CEC4 48 31 D3 E9 */ bl sub_8033d34c +/* 8001FF68 0001CEC8 38 61 00 3C */ addi r3, r1, 0x3c +/* 8001FF6C 0001CECC 48 31 D1 C9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FF70 0001CED0 38 61 00 4C */ addi r3, r1, 0x4c +/* 8001FF74 0001CED4 48 31 DB 6D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FF78 0001CED8 48 00 00 98 */ b lbl_80020010 +lbl_8001FF7C: +/* 8001FF7C 0001CEDC 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FF80 0001CEE0 38 80 00 34 */ li r4, 0x34 +/* 8001FF84 0001CEE4 48 33 67 79 */ bl GetString__12CStringTableCFi +/* 8001FF88 0001CEE8 7C 64 1B 78 */ mr r4, r3 +/* 8001FF8C 0001CEEC 38 61 00 2C */ addi r3, r1, 0x2c +/* 8001FF90 0001CEF0 4B FF 5A 61 */ bl wstring_l__4rstlFPCw +/* 8001FF94 0001CEF4 38 61 00 CC */ addi r3, r1, 0xcc +/* 8001FF98 0001CEF8 38 81 00 2C */ addi r4, r1, 0x2c +/* 8001FF9C 0001CEFC 48 31 D3 B1 */ bl sub_8033d34c +/* 8001FFA0 0001CF00 38 61 00 2C */ addi r3, r1, 0x2c +/* 8001FFA4 0001CF04 48 31 D1 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FFA8 0001CF08 48 00 00 68 */ b lbl_80020010 +lbl_8001FFAC: +/* 8001FFAC 0001CF0C 28 1A 00 00 */ cmplwi r26, 0 +/* 8001FFB0 0001CF10 41 82 00 34 */ beq lbl_8001FFE4 +/* 8001FFB4 0001CF14 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FFB8 0001CF18 38 80 00 36 */ li r4, 0x36 +/* 8001FFBC 0001CF1C 48 33 67 41 */ bl GetString__12CStringTableCFi +/* 8001FFC0 0001CF20 7C 64 1B 78 */ mr r4, r3 +/* 8001FFC4 0001CF24 38 61 00 1C */ addi r3, r1, 0x1c +/* 8001FFC8 0001CF28 4B FF 5A 29 */ bl wstring_l__4rstlFPCw +/* 8001FFCC 0001CF2C 38 61 00 CC */ addi r3, r1, 0xcc +/* 8001FFD0 0001CF30 38 81 00 1C */ addi r4, r1, 0x1c +/* 8001FFD4 0001CF34 48 31 D3 79 */ bl sub_8033d34c +/* 8001FFD8 0001CF38 38 61 00 1C */ addi r3, r1, 0x1c +/* 8001FFDC 0001CF3C 48 31 D1 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001FFE0 0001CF40 48 00 00 30 */ b lbl_80020010 +lbl_8001FFE4: +/* 8001FFE4 0001CF44 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8001FFE8 0001CF48 38 80 00 35 */ li r4, 0x35 +/* 8001FFEC 0001CF4C 48 33 67 11 */ bl GetString__12CStringTableCFi +/* 8001FFF0 0001CF50 7C 64 1B 78 */ mr r4, r3 +/* 8001FFF4 0001CF54 38 61 00 0C */ addi r3, r1, 0xc +/* 8001FFF8 0001CF58 4B FF 59 F9 */ bl wstring_l__4rstlFPCw +/* 8001FFFC 0001CF5C 38 61 00 CC */ addi r3, r1, 0xcc +/* 80020000 0001CF60 38 81 00 0C */ addi r4, r1, 0xc +/* 80020004 0001CF64 48 31 D3 49 */ bl sub_8033d34c +/* 80020008 0001CF68 38 61 00 0C */ addi r3, r1, 0xc +/* 8002000C 0001CF6C 48 31 D1 29 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80020010: +/* 80020010 0001CF70 C0 3F 00 2C */ lfs f1, 0x2c(r31) +/* 80020014 0001CF74 7F A3 EB 78 */ mr r3, r29 +/* 80020018 0001CF78 38 81 00 CC */ addi r4, r1, 0xcc +/* 8002001C 0001CF7C 48 00 10 BD */ bl StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring +/* 80020020 0001CF80 C0 3F 00 2C */ lfs f1, 0x2c(r31) +/* 80020024 0001CF84 7F 83 E3 78 */ mr r3, r28 +/* 80020028 0001CF88 38 81 00 CC */ addi r4, r1, 0xcc +/* 8002002C 0001CF8C 48 00 10 AD */ bl StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring +/* 80020030 0001CF90 38 61 00 CC */ addi r3, r1, 0xcc +/* 80020034 0001CF94 48 31 D1 01 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80020038: +/* 80020038 0001CF98 3B DE 00 01 */ addi r30, r30, 1 +/* 8002003C 0001CF9C 3B FF 00 30 */ addi r31, r31, 0x30 +/* 80020040 0001CFA0 2C 1E 00 03 */ cmpwi r30, 3 +/* 80020044 0001CFA4 41 80 FC 30 */ blt lbl_8001FC74 +/* 80020048 0001CFA8 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 +/* 8002004C 0001CFAC CB E1 01 50 */ lfd f31, 0x150(r1) +/* 80020050 0001CFB0 BB 21 01 34 */ lmw r25, 0x134(r1) +/* 80020054 0001CFB4 80 01 01 64 */ lwz r0, 0x164(r1) +/* 80020058 0001CFB8 7C 08 03 A6 */ mtlr r0 +/* 8002005C 0001CFBC 38 21 01 60 */ addi r1, r1, 0x160 +/* 80020060 0001CFC0 4E 80 00 20 */ blr + +.global sub_80020064 +sub_80020064: +/* 80020064 0001CFC4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80020068 0001CFC8 7C 08 02 A6 */ mflr r0 +/* 8002006C 0001CFCC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80020070 0001CFD0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80020074 0001CFD4 7C BF 2B 78 */ mr r31, r5 +/* 80020078 0001CFD8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 8002007C 0001CFDC 7C 7E 1B 78 */ mr r30, r3 +/* 80020080 0001CFE0 38 61 00 08 */ addi r3, r1, 8 +/* 80020084 0001CFE4 48 31 D7 05 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80020088 0001CFE8 7F E4 FB 78 */ mr r4, r31 +/* 8002008C 0001CFEC 38 61 00 08 */ addi r3, r1, 8 +/* 80020090 0001CFF0 48 31 D5 BD */ bl "append__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80020094 0001CFF4 7F C3 F3 78 */ mr r3, r30 +/* 80020098 0001CFF8 38 81 00 08 */ addi r4, r1, 8 +/* 8002009C 0001CFFC 48 31 D6 ED */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 800200A0 0001D000 38 61 00 08 */ addi r3, r1, 8 +/* 800200A4 0001D004 48 31 D0 91 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 800200A8 0001D008 80 01 00 24 */ lwz r0, 0x24(r1) +/* 800200AC 0001D00C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 800200B0 0001D010 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 800200B4 0001D014 7C 08 03 A6 */ mtlr r0 +/* 800200B8 0001D018 38 21 00 20 */ addi r1, r1, 0x20 +/* 800200BC 0001D01C 4E 80 00 20 */ blr + +.global DoFileselectAdvance__19SNewFileSelectFrameFPC14CGuiTableGroup +DoFileselectAdvance__19SNewFileSelectFrameFPC14CGuiTableGroup: +/* 800200C0 0001D020 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800200C4 0001D024 7C 08 02 A6 */ mflr r0 +/* 800200C8 0001D028 90 01 00 14 */ stw r0, 0x14(r1) +/* 800200CC 0001D02C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800200D0 0001D030 93 C1 00 08 */ stw r30, 8(r1) +/* 800200D4 0001D034 7C 7E 1B 78 */ mr r30, r3 +/* 800200D8 0001D038 80 63 00 20 */ lwz r3, 0x20(r3) +/* 800200DC 0001D03C 83 E3 00 C4 */ lwz r31, 0xc4(r3) +/* 800200E0 0001D040 2C 1F 00 03 */ cmpwi r31, 3 +/* 800200E4 0001D044 40 80 00 64 */ bge lbl_80020148 +/* 800200E8 0001D048 80 1E 00 08 */ lwz r0, 8(r30) +/* 800200EC 0001D04C 2C 00 00 01 */ cmpwi r0, 1 +/* 800200F0 0001D050 40 82 00 28 */ bne lbl_80020118 +/* 800200F4 0001D054 80 7E 00 04 */ lwz r3, 4(r30) +/* 800200F8 0001D058 7F E4 FB 78 */ mr r4, r31 +/* 800200FC 0001D05C 48 22 F6 01 */ bl GetGameData__15CSaveGameScreenFi +/* 80020100 0001D060 28 03 00 00 */ cmplwi r3, 0 +/* 80020104 0001D064 41 82 00 7C */ beq lbl_80020180 +/* 80020108 0001D068 48 00 2E 4D */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 8002010C 0001D06C 38 00 00 01 */ li r0, 1 +/* 80020110 0001D070 98 1E 01 0D */ stb r0, 0x10d(r30) +/* 80020114 0001D074 48 00 00 6C */ b lbl_80020180 +lbl_80020118: +/* 80020118 0001D078 80 7E 00 04 */ lwz r3, 4(r30) +/* 8002011C 0001D07C 7F E4 FB 78 */ mr r4, r31 +/* 80020120 0001D080 48 22 F5 DD */ bl GetGameData__15CSaveGameScreenFi +/* 80020124 0001D084 28 03 00 00 */ cmplwi r3, 0 +/* 80020128 0001D088 41 82 00 14 */ beq lbl_8002013C +/* 8002012C 0001D08C 80 7E 00 04 */ lwz r3, 4(r30) +/* 80020130 0001D090 7F E4 FB 78 */ mr r4, r31 +/* 80020134 0001D094 48 22 F4 C1 */ bl StartGame__15CSaveGameScreenFi +/* 80020138 0001D098 48 00 00 48 */ b lbl_80020180 +lbl_8002013C: +/* 8002013C 0001D09C 38 00 00 01 */ li r0, 1 +/* 80020140 0001D0A0 98 1E 01 0E */ stb r0, 0x10e(r30) +/* 80020144 0001D0A4 48 00 00 3C */ b lbl_80020180 +lbl_80020148: +/* 80020148 0001D0A8 40 82 00 14 */ bne lbl_8002015C +/* 8002014C 0001D0AC 48 00 2E 09 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 80020150 0001D0B0 7F C3 F3 78 */ mr r3, r30 +/* 80020154 0001D0B4 4B FF F5 F5 */ bl EnterErase__19SNewFileSelectFrameFv +/* 80020158 0001D0B8 48 00 00 28 */ b lbl_80020180 +lbl_8002015C: +/* 8002015C 0001D0BC 2C 1F 00 04 */ cmpwi r31, 4 +/* 80020160 0001D0C0 40 82 00 10 */ bne lbl_80020170 +/* 80020164 0001D0C4 38 00 00 02 */ li r0, 2 +/* 80020168 0001D0C8 90 1E 00 0C */ stw r0, 0xc(r30) +/* 8002016C 0001D0CC 48 00 00 14 */ b lbl_80020180 +lbl_80020170: +/* 80020170 0001D0D0 2C 1F 00 05 */ cmpwi r31, 5 +/* 80020174 0001D0D4 40 82 00 0C */ bne lbl_80020180 +/* 80020178 0001D0D8 38 00 00 03 */ li r0, 3 +/* 8002017C 0001D0DC 90 1E 00 0C */ stw r0, 0xc(r30) +lbl_80020180: +/* 80020180 0001D0E0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80020184 0001D0E4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80020188 0001D0E8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8002018C 0001D0EC 7C 08 03 A6 */ mtlr r0 +/* 80020190 0001D0F0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80020194 0001D0F4 4E 80 00 20 */ blr + +.global HandleActiveChange__19SNewFileSelectFrameFP10CGuiWidget +HandleActiveChange__19SNewFileSelectFrameFP10CGuiWidget: +/* 80020198 0001D0F8 94 21 FF 90 */ stwu r1, -0x70(r1) +/* 8002019C 0001D0FC 7C 08 02 A6 */ mflr r0 +/* 800201A0 0001D100 90 01 00 74 */ stw r0, 0x74(r1) +/* 800201A4 0001D104 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 800201A8 0001D108 93 C1 00 68 */ stw r30, 0x68(r1) +/* 800201AC 0001D10C 7C 9E 23 79 */ or. r30, r4, r4 +/* 800201B0 0001D110 93 A1 00 64 */ stw r29, 0x64(r1) +/* 800201B4 0001D114 7C 7D 1B 78 */ mr r29, r3 +/* 800201B8 0001D118 41 82 01 00 */ beq lbl_800202B8 +/* 800201BC 0001D11C 83 FE 00 C4 */ lwz r31, 0xc4(r30) +/* 800201C0 0001D120 38 E0 00 FF */ li r7, 0xff +/* 800201C4 0001D124 38 C0 00 A0 */ li r6, 0xa0 +/* 800201C8 0001D128 38 00 00 C8 */ li r0, 0xc8 +/* 800201CC 0001D12C 98 E1 00 0C */ stb r7, 0xc(r1) +/* 800201D0 0001D130 7F C3 F3 78 */ mr r3, r30 +/* 800201D4 0001D134 38 81 00 0C */ addi r4, r1, 0xc +/* 800201D8 0001D138 38 A1 00 08 */ addi r5, r1, 8 +/* 800201DC 0001D13C 98 E1 00 0D */ stb r7, 0xd(r1) +/* 800201E0 0001D140 98 E1 00 0E */ stb r7, 0xe(r1) +/* 800201E4 0001D144 98 E1 00 0F */ stb r7, 0xf(r1) +/* 800201E8 0001D148 98 C1 00 08 */ stb r6, 8(r1) +/* 800201EC 0001D14C 98 C1 00 09 */ stb r6, 9(r1) +/* 800201F0 0001D150 98 C1 00 0A */ stb r6, 0xa(r1) +/* 800201F4 0001D154 98 01 00 0B */ stb r0, 0xb(r1) +/* 800201F8 0001D158 48 2A 64 05 */ bl SetColors__14CGuiTableGroupCFRC6CColorRC6CColor +/* 800201FC 0001D15C 80 1D 00 20 */ lwz r0, 0x20(r29) +/* 80020200 0001D160 7C 1E 00 40 */ cmplw r30, r0 +/* 80020204 0001D164 40 82 00 74 */ bne lbl_80020278 +/* 80020208 0001D168 6F E3 80 00 */ xoris r3, r31, 0x8000 +/* 8002020C 0001D16C 3C 00 43 30 */ lis r0, 0x4330 +/* 80020210 0001D170 90 61 00 54 */ stw r3, 0x54(r1) +/* 80020214 0001D174 38 61 00 1C */ addi r3, r1, 0x1c +/* 80020218 0001D178 C8 42 82 B8 */ lfd f2, lbl_805A9FD8@sda21(r2) +/* 8002021C 0001D17C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80020220 0001D180 90 01 00 50 */ stw r0, 0x50(r1) +/* 80020224 0001D184 C0 3D 01 04 */ lfs f1, 0x104(r29) +/* 80020228 0001D188 C8 01 00 50 */ lfd f0, 0x50(r1) +/* 8002022C 0001D18C C0 BD 00 FC */ lfs f5, 0xfc(r29) +/* 80020230 0001D190 EC 40 10 28 */ fsubs f2, f0, f2 +/* 80020234 0001D194 C0 82 82 9C */ lfs f4, lbl_805A9FBC@sda21(r2) +/* 80020238 0001D198 C0 1D 00 F8 */ lfs f0, 0xf8(r29) +/* 8002023C 0001D19C C0 7D 01 00 */ lfs f3, 0x100(r29) +/* 80020240 0001D1A0 EC A5 20 2A */ fadds f5, f5, f4 +/* 80020244 0001D1A4 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80020248 0001D1A8 EC 00 20 2A */ fadds f0, f0, f4 +/* 8002024C 0001D1AC D0 A1 00 14 */ stfs f5, 0x14(r1) +/* 80020250 0001D1B0 EC 23 08 2A */ fadds f1, f3, f1 +/* 80020254 0001D1B4 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80020258 0001D1B8 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8002025C 0001D1BC 48 2F 2E E5 */ bl Translate__12CTransform4fFRC9CVector3f +/* 80020260 0001D1C0 83 FD 00 24 */ lwz r31, 0x24(r29) +/* 80020264 0001D1C4 38 81 00 1C */ addi r4, r1, 0x1c +/* 80020268 0001D1C8 38 7F 00 04 */ addi r3, r31, 4 +/* 8002026C 0001D1CC 48 2F 28 D5 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80020270 0001D1D0 7F E3 FB 78 */ mr r3, r31 +/* 80020274 0001D1D4 48 2A 45 75 */ bl RecalculateTransforms__10CGuiObjectFv +lbl_80020278: +/* 80020278 0001D1D8 80 7D 00 08 */ lwz r3, 8(r29) +/* 8002027C 0001D1DC 38 00 00 00 */ li r0, 0 +/* 80020280 0001D1E0 2C 03 00 00 */ cmpwi r3, 0 +/* 80020284 0001D1E4 41 82 00 0C */ beq lbl_80020290 +/* 80020288 0001D1E8 2C 03 00 03 */ cmpwi r3, 3 +/* 8002028C 0001D1EC 40 82 00 08 */ bne lbl_80020294 +lbl_80020290: +/* 80020290 0001D1F0 38 00 00 01 */ li r0, 1 +lbl_80020294: +/* 80020294 0001D1F4 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 80020298 0001D1F8 41 82 00 14 */ beq lbl_800202AC +/* 8002029C 0001D1FC 80 7D 00 24 */ lwz r3, 0x24(r29) +/* 800202A0 0001D200 38 80 00 00 */ li r4, 0 +/* 800202A4 0001D204 48 2A A3 89 */ bl SetIsVisible__10CGuiWidgetFb +/* 800202A8 0001D208 48 00 00 10 */ b lbl_800202B8 +lbl_800202AC: +/* 800202AC 0001D20C 80 7D 00 24 */ lwz r3, 0x24(r29) +/* 800202B0 0001D210 38 80 00 01 */ li r4, 1 +/* 800202B4 0001D214 48 2A A3 79 */ bl SetIsVisible__10CGuiWidgetFb +lbl_800202B8: +/* 800202B8 0001D218 80 01 00 74 */ lwz r0, 0x74(r1) +/* 800202BC 0001D21C 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 800202C0 0001D220 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 800202C4 0001D224 83 A1 00 64 */ lwz r29, 0x64(r1) +/* 800202C8 0001D228 7C 08 03 A6 */ mtlr r0 +/* 800202CC 0001D22C 38 21 00 70 */ addi r1, r1, 0x70 +/* 800202D0 0001D230 4E 80 00 20 */ blr + +.global Draw__19SNewFileSelectFrameFv +Draw__19SNewFileSelectFrameFv: +/* 800202D4 0001D234 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800202D8 0001D238 7C 08 02 A6 */ mflr r0 +/* 800202DC 0001D23C 90 01 00 14 */ stw r0, 0x14(r1) +/* 800202E0 0001D240 80 A3 00 1C */ lwz r5, 0x1c(r3) +/* 800202E4 0001D244 28 05 00 00 */ cmplwi r5, 0 +/* 800202E8 0001D248 41 82 00 20 */ beq lbl_80020308 +/* 800202EC 0001D24C 88 03 01 0C */ lbz r0, 0x10c(r3) +/* 800202F0 0001D250 28 00 00 00 */ cmplwi r0, 0 +/* 800202F4 0001D254 41 82 00 14 */ beq lbl_80020308 +/* 800202F8 0001D258 3C 80 80 5A */ lis r4, lbl_8059FD08@ha +/* 800202FC 0001D25C 7C A3 2B 78 */ mr r3, r5 +/* 80020300 0001D260 38 84 FD 08 */ addi r4, r4, lbl_8059FD08@l +/* 80020304 0001D264 48 2A 24 31 */ bl Draw__9CGuiFrameCFRC19CGuiWidgetDrawParms +lbl_80020308: +/* 80020308 0001D268 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8002030C 0001D26C 7C 08 03 A6 */ mtlr r0 +/* 80020310 0001D270 38 21 00 10 */ addi r1, r1, 0x10 +/* 80020314 0001D274 4E 80 00 20 */ blr + +.global ProcessUserInput__19SNewFileSelectFrameFRC11CFinalInput +ProcessUserInput__19SNewFileSelectFrameFRC11CFinalInput: +/* 80020318 0001D278 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8002031C 0001D27C 7C 08 02 A6 */ mflr r0 +/* 80020320 0001D280 90 01 00 24 */ stw r0, 0x24(r1) +/* 80020324 0001D284 38 00 00 00 */ li r0, 0 +/* 80020328 0001D288 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8002032C 0001D28C 7C 9F 23 78 */ mr r31, r4 +/* 80020330 0001D290 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80020334 0001D294 7C 7E 1B 78 */ mr r30, r3 +/* 80020338 0001D298 90 03 00 0C */ stw r0, 0xc(r3) +/* 8002033C 0001D29C 80 03 00 08 */ lwz r0, 8(r3) +/* 80020340 0001D2A0 2C 00 00 02 */ cmpwi r0, 2 +/* 80020344 0001D2A4 41 82 00 0C */ beq lbl_80020350 +/* 80020348 0001D2A8 80 7E 00 04 */ lwz r3, 4(r30) +/* 8002034C 0001D2AC 48 22 F4 25 */ bl ProcessUserInput__15CSaveGameScreenFRC11CFinalInput +lbl_80020350: +/* 80020350 0001D2B0 7F C3 F3 78 */ mr r3, r30 +/* 80020354 0001D2B4 4B FF EC 55 */ bl IsTextDoneAnimating__19SNewFileSelectFrameFv +/* 80020358 0001D2B8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8002035C 0001D2BC 41 82 00 34 */ beq lbl_80020390 +/* 80020360 0001D2C0 C0 5E 01 08 */ lfs f2, 0x108(r30) +/* 80020364 0001D2C4 C0 3F 00 00 */ lfs f1, 0(r31) +/* 80020368 0001D2C8 C0 02 82 E4 */ lfs f0, lbl_805AA004@sda21(r2) +/* 8002036C 0001D2CC EC 22 08 2A */ fadds f1, f2, f1 +/* 80020370 0001D2D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80020374 0001D2D4 D0 21 00 08 */ stfs f1, 8(r1) +/* 80020378 0001D2D8 40 80 00 0C */ bge lbl_80020384 +/* 8002037C 0001D2DC 38 61 00 08 */ addi r3, r1, 8 +/* 80020380 0001D2E0 48 00 00 08 */ b lbl_80020388 +lbl_80020384: +/* 80020384 0001D2E4 38 62 82 E4 */ addi r3, r2, lbl_805AA004@sda21 +lbl_80020388: +/* 80020388 0001D2E8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8002038C 0001D2EC D0 1E 01 08 */ stfs f0, 0x108(r30) +lbl_80020390: +/* 80020390 0001D2F0 C0 3E 01 08 */ lfs f1, 0x108(r30) +/* 80020394 0001D2F4 C0 02 82 D0 */ lfs f0, lbl_805A9FF0@sda21(r2) +/* 80020398 0001D2F8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8002039C 0001D2FC 40 80 00 0C */ bge lbl_800203A8 +/* 800203A0 0001D300 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 800203A4 0001D304 48 00 00 A8 */ b lbl_8002044C +lbl_800203A8: +/* 800203A8 0001D308 88 1E 01 0C */ lbz r0, 0x10c(r30) +/* 800203AC 0001D30C 28 00 00 00 */ cmplwi r0, 0 +/* 800203B0 0001D310 41 82 00 10 */ beq lbl_800203C0 +/* 800203B4 0001D314 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 800203B8 0001D318 7F E4 FB 78 */ mr r4, r31 +/* 800203BC 0001D31C 48 2A 22 9D */ bl ProcessUserInput__9CGuiFrameFRC11CFinalInput +lbl_800203C0: +/* 800203C0 0001D320 88 1E 01 0D */ lbz r0, 0x10d(r30) +/* 800203C4 0001D324 28 00 00 00 */ cmplwi r0, 0 +/* 800203C8 0001D328 41 82 00 3C */ beq lbl_80020404 +/* 800203CC 0001D32C 80 7E 00 40 */ lwz r3, 0x40(r30) +/* 800203D0 0001D330 81 83 00 00 */ lwz r12, 0(r3) +/* 800203D4 0001D334 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 800203D8 0001D338 7D 89 03 A6 */ mtctr r12 +/* 800203DC 0001D33C 4E 80 04 21 */ bctrl +/* 800203E0 0001D340 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800203E4 0001D344 41 82 00 10 */ beq lbl_800203F4 +/* 800203E8 0001D348 7F C3 F3 78 */ mr r3, r30 +/* 800203EC 0001D34C 4B FF EC 99 */ bl DeactivateExistingGamePopup__19SNewFileSelectFrameFv +/* 800203F0 0001D350 48 00 00 0C */ b lbl_800203FC +lbl_800203F4: +/* 800203F4 0001D354 7F C3 F3 78 */ mr r3, r30 +/* 800203F8 0001D358 4B FF ED 15 */ bl ActivateExistingGamePopup__19SNewFileSelectFrameFv +lbl_800203FC: +/* 800203FC 0001D35C 38 00 00 00 */ li r0, 0 +/* 80020400 0001D360 98 1E 01 0D */ stb r0, 0x10d(r30) +lbl_80020404: +/* 80020404 0001D364 88 1E 01 0E */ lbz r0, 0x10e(r30) +/* 80020408 0001D368 28 00 00 00 */ cmplwi r0, 0 +/* 8002040C 0001D36C 41 82 00 3C */ beq lbl_80020448 +/* 80020410 0001D370 80 7E 00 40 */ lwz r3, 0x40(r30) +/* 80020414 0001D374 81 83 00 00 */ lwz r12, 0(r3) +/* 80020418 0001D378 81 8C 00 24 */ lwz r12, 0x24(r12) +/* 8002041C 0001D37C 7D 89 03 A6 */ mtctr r12 +/* 80020420 0001D380 4E 80 04 21 */ bctrl +/* 80020424 0001D384 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80020428 0001D388 41 82 00 10 */ beq lbl_80020438 +/* 8002042C 0001D38C 7F C3 F3 78 */ mr r3, r30 +/* 80020430 0001D390 4B FF EE 5D */ bl DeactivateNewGamePopup__19SNewFileSelectFrameFv +/* 80020434 0001D394 48 00 00 0C */ b lbl_80020440 +lbl_80020438: +/* 80020438 0001D398 7F C3 F3 78 */ mr r3, r30 +/* 8002043C 0001D39C 4B FF EF 65 */ bl ActivateNewGamePopup__19SNewFileSelectFrameFv +lbl_80020440: +/* 80020440 0001D3A0 38 00 00 00 */ li r0, 0 +/* 80020444 0001D3A4 98 1E 01 0E */ stb r0, 0x10e(r30) +lbl_80020448: +/* 80020448 0001D3A8 80 7E 00 0C */ lwz r3, 0xc(r30) +lbl_8002044C: +/* 8002044C 0001D3AC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80020450 0001D3B0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80020454 0001D3B4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80020458 0001D3B8 7C 08 03 A6 */ mtlr r0 +/* 8002045C 0001D3BC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80020460 0001D3C0 4E 80 00 20 */ blr + +.global sub_80020464 +sub_80020464: +/* 80020464 0001D3C4 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 80020468 0001D3C8 54 03 DF FE */ rlwinm r3, r0, 0x1b, 0x1f, 0x1f +/* 8002046C 0001D3CC 4E 80 00 20 */ blr + +.global Update__19SNewFileSelectFrameFf +Update__19SNewFileSelectFrameFf: +/* 80020470 0001D3D0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80020474 0001D3D4 7C 08 02 A6 */ mflr r0 +/* 80020478 0001D3D8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8002047C 0001D3DC DB E1 00 18 */ stfd f31, 0x18(r1) +/* 80020480 0001D3E0 FF E0 08 90 */ fmr f31, f1 +/* 80020484 0001D3E4 93 E1 00 14 */ stw r31, 0x14(r1) +/* 80020488 0001D3E8 93 C1 00 10 */ stw r30, 0x10(r1) +/* 8002048C 0001D3EC 7C 7E 1B 78 */ mr r30, r3 +/* 80020490 0001D3F0 80 83 00 04 */ lwz r4, 4(r3) +/* 80020494 0001D3F4 88 03 01 0C */ lbz r0, 0x10c(r3) +/* 80020498 0001D3F8 80 84 00 10 */ lwz r4, 0x10(r4) +/* 8002049C 0001D3FC 20 84 00 10 */ subfic r4, r4, 0x10 +/* 800204A0 0001D400 7C 85 00 34 */ cntlzw r5, r4 +/* 800204A4 0001D404 54 A4 DE 3E */ rlwinm r4, r5, 0x1b, 0x18, 0x1f +/* 800204A8 0001D408 7C 04 00 40 */ cmplw r4, r0 +/* 800204AC 0001D40C 54 BF D9 7E */ srwi r31, r5, 5 +/* 800204B0 0001D410 41 82 00 40 */ beq lbl_800204F0 +/* 800204B4 0001D414 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 800204B8 0001D418 41 82 00 0C */ beq lbl_800204C4 +/* 800204BC 0001D41C 4B FF F4 5D */ bl ClearFrameContents__19SNewFileSelectFrameFv +/* 800204C0 0001D420 48 00 00 2C */ b lbl_800204EC +lbl_800204C4: +/* 800204C4 0001D424 80 1E 00 08 */ lwz r0, 8(r30) +/* 800204C8 0001D428 2C 00 00 00 */ cmpwi r0, 0 +/* 800204CC 0001D42C 41 82 00 20 */ beq lbl_800204EC +/* 800204D0 0001D430 4B FF F1 7D */ bl ResetFrame__19SNewFileSelectFrameFv +/* 800204D4 0001D434 7F C3 F3 78 */ mr r3, r30 +/* 800204D8 0001D438 4B FF EB AD */ bl DeactivateExistingGamePopup__19SNewFileSelectFrameFv +/* 800204DC 0001D43C 7F C3 F3 78 */ mr r3, r30 +/* 800204E0 0001D440 4B FF ED AD */ bl DeactivateNewGamePopup__19SNewFileSelectFrameFv +/* 800204E4 0001D444 38 00 00 00 */ li r0, 0 +/* 800204E8 0001D448 90 1E 00 08 */ stw r0, 8(r30) +lbl_800204EC: +/* 800204EC 0001D44C 9B FE 01 0C */ stb r31, 0x10c(r30) +lbl_800204F0: +/* 800204F0 0001D450 88 1E 01 0C */ lbz r0, 0x10c(r30) +/* 800204F4 0001D454 28 00 00 00 */ cmplwi r0, 0 +/* 800204F8 0001D458 41 82 00 0C */ beq lbl_80020504 +/* 800204FC 0001D45C 7F C3 F3 78 */ mr r3, r30 +/* 80020500 0001D460 4B FF F7 51 */ bl SetupFrameContents__19SNewFileSelectFrameFv +lbl_80020504: +/* 80020504 0001D464 FC 20 F8 90 */ fmr f1, f31 +/* 80020508 0001D468 80 7E 00 1C */ lwz r3, 0x1c(r30) +/* 8002050C 0001D46C 48 2A 21 F9 */ bl Update__9CGuiFrameFf +/* 80020510 0001D470 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80020514 0001D474 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 80020518 0001D478 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8002051C 0001D47C 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 80020520 0001D480 7C 08 03 A6 */ mtlr r0 +/* 80020524 0001D484 38 21 00 20 */ addi r1, r1, 0x20 +/* 80020528 0001D488 4E 80 00 20 */ blr + +.global GetUserFileSelection__19SNewFileSelectFrameCFv +GetUserFileSelection__19SNewFileSelectFrameCFv: +/* 8002052C 0001D48C 80 83 00 20 */ lwz r4, 0x20(r3) +/* 80020530 0001D490 38 00 00 03 */ li r0, 3 +/* 80020534 0001D494 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80020538 0001D498 80 84 00 C4 */ lwz r4, 0xc4(r4) +/* 8002053C 0001D49C 7C 00 20 10 */ subfc r0, r0, r4 +/* 80020540 0001D4A0 54 80 0F FE */ srwi r0, r4, 0x1f +/* 80020544 0001D4A4 7C 00 19 10 */ subfe r0, r0, r3 +/* 80020548 0001D4A8 7C 83 00 38 */ and r3, r4, r0 +/* 8002054C 0001D4AC 4E 80 00 20 */ blr + +.global FinishedLoading__19SNewFileSelectFrame +FinishedLoading__19SNewFileSelectFrame: +/* 80020550 0001D4B0 94 21 FE 20 */ stwu r1, -0x1e0(r1) +/* 80020554 0001D4B4 7C 08 02 A6 */ mflr r0 +/* 80020558 0001D4B8 3C A0 80 3E */ lis r5, lbl_803D9820@ha +/* 8002055C 0001D4BC 90 01 01 E4 */ stw r0, 0x1e4(r1) +/* 80020560 0001D4C0 BF 61 01 CC */ stmw r27, 0x1cc(r1) +/* 80020564 0001D4C4 7C 7B 1B 78 */ mr r27, r3 +/* 80020568 0001D4C8 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8002056C 0001D4CC 3B E5 98 20 */ addi r31, r5, lbl_803D9820@l +/* 80020570 0001D4D0 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80020574 0001D4D4 38 84 02 44 */ addi r4, r4, 0x244 +/* 80020578 0001D4D8 80 7B 00 1C */ lwz r3, 0x1c(r27) +/* 8002057C 0001D4DC 48 2A 1B D9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80020580 0001D4E0 90 7B 00 20 */ stw r3, 0x20(r27) +/* 80020584 0001D4E4 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80020588 0001D4E8 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8002058C 0001D4EC 80 7B 00 1C */ lwz r3, 0x1c(r27) +/* 80020590 0001D4F0 38 84 02 5A */ addi r4, r4, 0x25a +/* 80020594 0001D4F4 48 2A 1B C1 */ bl FindWidget__9CGuiFrameCFPCc +/* 80020598 0001D4F8 90 7B 00 24 */ stw r3, 0x24(r27) +/* 8002059C 0001D4FC 38 61 00 FC */ addi r3, r1, 0xfc +/* 800205A0 0001D500 80 9B 00 24 */ lwz r4, 0x24(r27) +/* 800205A4 0001D504 48 2A 4C 79 */ bl GetLocalPosition__10CGuiObjectCFv +/* 800205A8 0001D508 C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 800205AC 0001D50C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800205B0 0001D510 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 800205B4 0001D514 38 61 00 30 */ addi r3, r1, 0x30 +/* 800205B8 0001D518 D0 1B 00 F8 */ stfs f0, 0xf8(r27) +/* 800205BC 0001D51C 38 A4 02 66 */ addi r5, r4, 0x266 +/* 800205C0 0001D520 C0 01 01 00 */ lfs f0, 0x100(r1) +/* 800205C4 0001D524 D0 1B 00 FC */ stfs f0, 0xfc(r27) +/* 800205C8 0001D528 C0 01 01 04 */ lfs f0, 0x104(r1) +/* 800205CC 0001D52C D0 1B 01 00 */ stfs f0, 0x100(r27) +/* 800205D0 0001D530 80 9B 00 1C */ lwz r4, 0x1c(r27) +/* 800205D4 0001D534 48 00 28 25 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 800205D8 0001D538 80 01 00 30 */ lwz r0, 0x30(r1) +/* 800205DC 0001D53C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800205E0 0001D540 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 800205E4 0001D544 38 61 00 28 */ addi r3, r1, 0x28 +/* 800205E8 0001D548 90 1B 00 28 */ stw r0, 0x28(r27) +/* 800205EC 0001D54C 38 A4 02 75 */ addi r5, r4, 0x275 +/* 800205F0 0001D550 80 01 00 34 */ lwz r0, 0x34(r1) +/* 800205F4 0001D554 90 1B 00 2C */ stw r0, 0x2c(r27) +/* 800205F8 0001D558 80 9B 00 1C */ lwz r4, 0x1c(r27) +/* 800205FC 0001D55C 48 00 27 FD */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80020600 0001D560 80 01 00 28 */ lwz r0, 0x28(r1) +/* 80020604 0001D564 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80020608 0001D568 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8002060C 0001D56C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80020610 0001D570 90 1B 00 38 */ stw r0, 0x38(r27) +/* 80020614 0001D574 38 A4 02 82 */ addi r5, r4, 0x282 +/* 80020618 0001D578 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 8002061C 0001D57C 90 1B 00 3C */ stw r0, 0x3c(r27) +/* 80020620 0001D580 80 9B 00 1C */ lwz r4, 0x1c(r27) +/* 80020624 0001D584 48 00 27 D5 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80020628 0001D588 80 01 00 20 */ lwz r0, 0x20(r1) +/* 8002062C 0001D58C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80020630 0001D590 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80020634 0001D594 38 61 00 18 */ addi r3, r1, 0x18 +/* 80020638 0001D598 90 1B 00 30 */ stw r0, 0x30(r27) +/* 8002063C 0001D59C 38 A4 02 92 */ addi r5, r4, 0x292 +/* 80020640 0001D5A0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80020644 0001D5A4 90 1B 00 34 */ stw r0, 0x34(r27) +/* 80020648 0001D5A8 80 9B 00 1C */ lwz r4, 0x1c(r27) +/* 8002064C 0001D5AC 48 00 27 AD */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80020650 0001D5B0 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80020654 0001D5B4 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80020658 0001D5B8 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8002065C 0001D5BC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80020660 0001D5C0 90 1B 00 48 */ stw r0, 0x48(r27) +/* 80020664 0001D5C4 38 A4 02 A8 */ addi r5, r4, 0x2a8 +/* 80020668 0001D5C8 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 8002066C 0001D5CC 90 1B 00 4C */ stw r0, 0x4c(r27) +/* 80020670 0001D5D0 80 9B 00 1C */ lwz r4, 0x1c(r27) +/* 80020674 0001D5D4 48 00 27 85 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80020678 0001D5D8 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8002067C 0001D5DC 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80020680 0001D5E0 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80020684 0001D5E4 38 61 00 08 */ addi r3, r1, 8 +/* 80020688 0001D5E8 90 1B 00 50 */ stw r0, 0x50(r27) +/* 8002068C 0001D5EC 38 A4 02 BD */ addi r5, r4, 0x2bd +/* 80020690 0001D5F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80020694 0001D5F4 90 1B 00 54 */ stw r0, 0x54(r27) +/* 80020698 0001D5F8 80 9B 00 1C */ lwz r4, 0x1c(r27) +/* 8002069C 0001D5FC 48 00 27 5D */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 800206A0 0001D600 80 01 00 08 */ lwz r0, 8(r1) +/* 800206A4 0001D604 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800206A8 0001D608 38 63 C6 44 */ addi r3, r3, lbl_803CC644@l +/* 800206AC 0001D60C 90 1B 00 58 */ stw r0, 0x58(r27) +/* 800206B0 0001D610 38 83 02 D1 */ addi r4, r3, 0x2d1 +/* 800206B4 0001D614 80 01 00 0C */ lwz r0, 0xc(r1) +/* 800206B8 0001D618 90 1B 00 5C */ stw r0, 0x5c(r27) +/* 800206BC 0001D61C 80 7B 00 1C */ lwz r3, 0x1c(r27) +/* 800206C0 0001D620 48 2A 1A 95 */ bl FindWidget__9CGuiFrameCFPCc +/* 800206C4 0001D624 90 7B 00 40 */ stw r3, 0x40(r27) +/* 800206C8 0001D628 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800206CC 0001D62C 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 800206D0 0001D630 80 7B 00 1C */ lwz r3, 0x1c(r27) +/* 800206D4 0001D634 38 84 02 E2 */ addi r4, r4, 0x2e2 +/* 800206D8 0001D638 48 2A 1A 7D */ bl FindWidget__9CGuiFrameCFPCc +/* 800206DC 0001D63C 90 7B 00 44 */ stw r3, 0x44(r27) +/* 800206E0 0001D640 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800206E4 0001D644 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 800206E8 0001D648 80 7B 00 1C */ lwz r3, 0x1c(r27) +/* 800206EC 0001D64C 38 84 02 05 */ addi r4, r4, 0x205 +/* 800206F0 0001D650 48 2A 1A 65 */ bl FindWidget__9CGuiFrameCFPCc +/* 800206F4 0001D654 90 7B 00 60 */ stw r3, 0x60(r27) +/* 800206F8 0001D658 38 80 00 61 */ li r4, 0x61 +/* 800206FC 0001D65C 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80020700 0001D660 48 33 5F FD */ bl GetString__12CStringTableCFi +/* 80020704 0001D664 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 80020708 0001D668 7C 65 1B 78 */ mr r5, r3 +/* 8002070C 0001D66C 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 80020710 0001D670 80 7B 00 1C */ lwz r3, 0x1c(r27) +/* 80020714 0001D674 38 84 01 E5 */ addi r4, r4, 0x1e5 +/* 80020718 0001D678 48 00 27 6D */ bl FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +/* 8002071C 0001D67C 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 80020720 0001D680 80 7B 00 1C */ lwz r3, 0x1c(r27) +/* 80020724 0001D684 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 80020728 0001D688 38 84 01 F4 */ addi r4, r4, 0x1f4 +/* 8002072C 0001D68C 48 2A 1A 29 */ bl FindWidget__9CGuiFrameCFPCc +/* 80020730 0001D690 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80020734 0001D694 41 82 00 34 */ beq lbl_80020768 +/* 80020738 0001D698 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8002073C 0001D69C 38 80 00 55 */ li r4, 0x55 +/* 80020740 0001D6A0 48 33 5F BD */ bl GetString__12CStringTableCFi +/* 80020744 0001D6A4 7C 64 1B 78 */ mr r4, r3 +/* 80020748 0001D6A8 38 61 00 EC */ addi r3, r1, 0xec +/* 8002074C 0001D6AC 4B FF 52 A5 */ bl wstring_l__4rstlFPCw +/* 80020750 0001D6B0 38 7C 00 D4 */ addi r3, r28, 0xd4 +/* 80020754 0001D6B4 38 81 00 EC */ addi r4, r1, 0xec +/* 80020758 0001D6B8 38 A0 00 00 */ li r5, 0 +/* 8002075C 0001D6BC 48 2A 91 29 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80020760 0001D6C0 38 61 00 EC */ addi r3, r1, 0xec +/* 80020764 0001D6C4 48 31 C9 D1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80020768: +/* 80020768 0001D6C8 80 7B 00 40 */ lwz r3, 0x40(r27) +/* 8002076C 0001D6CC 38 80 00 00 */ li r4, 0 +/* 80020770 0001D6D0 48 2A 9E BD */ bl SetIsVisible__10CGuiWidgetFb +/* 80020774 0001D6D4 80 7B 00 40 */ lwz r3, 0x40(r27) +/* 80020778 0001D6D8 38 80 00 00 */ li r4, 0 +/* 8002077C 0001D6DC 48 2A 9E 69 */ bl SetIsActive__10CGuiWidgetFb +/* 80020780 0001D6E0 80 7B 00 40 */ lwz r3, 0x40(r27) +/* 80020784 0001D6E4 38 00 00 00 */ li r0, 0 +/* 80020788 0001D6E8 38 80 00 02 */ li r4, 2 +/* 8002078C 0001D6EC 98 03 00 D1 */ stb r0, 0xd1(r3) +/* 80020790 0001D6F0 80 7B 00 40 */ lwz r3, 0x40(r27) +/* 80020794 0001D6F4 81 83 00 00 */ lwz r12, 0(r3) +/* 80020798 0001D6F8 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 8002079C 0001D6FC 7D 89 03 A6 */ mtctr r12 +/* 800207A0 0001D700 4E 80 04 21 */ bctrl +/* 800207A4 0001D704 88 03 00 B6 */ lbz r0, 0xb6(r3) +/* 800207A8 0001D708 38 80 00 00 */ li r4, 0 +/* 800207AC 0001D70C 50 80 26 F6 */ rlwimi r0, r4, 4, 0x1b, 0x1b +/* 800207B0 0001D710 38 80 00 02 */ li r4, 2 +/* 800207B4 0001D714 98 03 00 B6 */ stb r0, 0xb6(r3) +/* 800207B8 0001D718 80 7B 00 40 */ lwz r3, 0x40(r27) +/* 800207BC 0001D71C 81 83 00 00 */ lwz r12, 0(r3) +/* 800207C0 0001D720 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 800207C4 0001D724 7D 89 03 A6 */ mtctr r12 +/* 800207C8 0001D728 4E 80 04 21 */ bctrl +/* 800207CC 0001D72C 38 80 00 00 */ li r4, 0 +/* 800207D0 0001D730 38 A0 00 01 */ li r5, 1 +/* 800207D4 0001D734 48 2A 9F 15 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 800207D8 0001D738 80 FF 00 24 */ lwz r7, 0x24(r31) +/* 800207DC 0001D73C 38 61 00 74 */ addi r3, r1, 0x74 +/* 800207E0 0001D740 80 DF 00 28 */ lwz r6, 0x28(r31) +/* 800207E4 0001D744 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 800207E8 0001D748 80 1F 00 2C */ lwz r0, 0x2c(r31) +/* 800207EC 0001D74C 38 A0 00 0C */ li r5, 0xc +/* 800207F0 0001D750 90 E1 00 E0 */ stw r7, 0xe0(r1) +/* 800207F4 0001D754 90 C1 00 E4 */ stw r6, 0xe4(r1) +/* 800207F8 0001D758 90 01 00 E8 */ stw r0, 0xe8(r1) +/* 800207FC 0001D75C 4B FE 2C 95 */ bl memcpy +/* 80020800 0001D760 3C 60 80 02 */ lis r3, sub_80020b98@ha +/* 80020804 0001D764 93 61 01 84 */ stw r27, 0x184(r1) +/* 80020808 0001D768 38 03 0B 98 */ addi r0, r3, sub_80020b98@l +/* 8002080C 0001D76C 38 61 01 88 */ addi r3, r1, 0x188 +/* 80020810 0001D770 90 01 01 80 */ stw r0, 0x180(r1) +/* 80020814 0001D774 38 81 00 74 */ addi r4, r1, 0x74 +/* 80020818 0001D778 38 A0 00 0C */ li r5, 0xc +/* 8002081C 0001D77C 4B FE 2C 75 */ bl memcpy +/* 80020820 0001D780 80 7B 00 20 */ lwz r3, 0x20(r27) +/* 80020824 0001D784 38 81 01 80 */ addi r4, r1, 0x180 +/* 80020828 0001D788 48 2A 60 31 */ bl "SetMenuAdvanceCallback__14CGuiTableGroupFRC29TFunctor1" +/* 8002082C 0001D78C 80 FF 00 30 */ lwz r7, 0x30(r31) +/* 80020830 0001D790 38 61 00 68 */ addi r3, r1, 0x68 +/* 80020834 0001D794 80 DF 00 34 */ lwz r6, 0x34(r31) +/* 80020838 0001D798 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 8002083C 0001D79C 80 1F 00 38 */ lwz r0, 0x38(r31) +/* 80020840 0001D7A0 38 A0 00 0C */ li r5, 0xc +/* 80020844 0001D7A4 90 E1 00 D4 */ stw r7, 0xd4(r1) +/* 80020848 0001D7A8 90 C1 00 D8 */ stw r6, 0xd8(r1) +/* 8002084C 0001D7AC 90 01 00 DC */ stw r0, 0xdc(r1) +/* 80020850 0001D7B0 4B FE 2C 41 */ bl memcpy +/* 80020854 0001D7B4 3C 60 80 02 */ lis r3, sub_80020b34@ha +/* 80020858 0001D7B8 93 61 01 6C */ stw r27, 0x16c(r1) +/* 8002085C 0001D7BC 38 03 0B 34 */ addi r0, r3, sub_80020b34@l +/* 80020860 0001D7C0 38 61 01 70 */ addi r3, r1, 0x170 +/* 80020864 0001D7C4 90 01 01 68 */ stw r0, 0x168(r1) +/* 80020868 0001D7C8 38 81 00 68 */ addi r4, r1, 0x68 +/* 8002086C 0001D7CC 38 A0 00 0C */ li r5, 0xc +/* 80020870 0001D7D0 4B FE 2C 21 */ bl memcpy +/* 80020874 0001D7D4 80 7B 00 20 */ lwz r3, 0x20(r27) +/* 80020878 0001D7D8 38 81 01 68 */ addi r4, r1, 0x168 +/* 8002087C 0001D7DC 48 2A 5F 75 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 80020880 0001D7E0 80 FF 00 3C */ lwz r7, 0x3c(r31) +/* 80020884 0001D7E4 38 61 00 5C */ addi r3, r1, 0x5c +/* 80020888 0001D7E8 80 DF 00 40 */ lwz r6, 0x40(r31) +/* 8002088C 0001D7EC 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 80020890 0001D7F0 80 1F 00 44 */ lwz r0, 0x44(r31) +/* 80020894 0001D7F4 38 A0 00 0C */ li r5, 0xc +/* 80020898 0001D7F8 90 E1 00 C8 */ stw r7, 0xc8(r1) +/* 8002089C 0001D7FC 90 C1 00 CC */ stw r6, 0xcc(r1) +/* 800208A0 0001D800 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 800208A4 0001D804 4B FE 2B ED */ bl memcpy +/* 800208A8 0001D808 3C 60 80 02 */ lis r3, sub_80020b98@ha +/* 800208AC 0001D80C 93 61 01 54 */ stw r27, 0x154(r1) +/* 800208B0 0001D810 38 03 0B 98 */ addi r0, r3, sub_80020b98@l +/* 800208B4 0001D814 38 61 01 58 */ addi r3, r1, 0x158 +/* 800208B8 0001D818 90 01 01 50 */ stw r0, 0x150(r1) +/* 800208BC 0001D81C 38 81 00 5C */ addi r4, r1, 0x5c +/* 800208C0 0001D820 38 A0 00 0C */ li r5, 0xc +/* 800208C4 0001D824 4B FE 2B CD */ bl memcpy +/* 800208C8 0001D828 80 7B 00 20 */ lwz r3, 0x20(r27) +/* 800208CC 0001D82C 38 81 01 50 */ addi r4, r1, 0x150 +/* 800208D0 0001D830 48 2A 5F 55 */ bl "SetMenuCancelCallback__14CGuiTableGroupFRC29TFunctor1" +/* 800208D4 0001D834 80 FF 00 48 */ lwz r7, 0x48(r31) +/* 800208D8 0001D838 38 61 00 50 */ addi r3, r1, 0x50 +/* 800208DC 0001D83C 80 DF 00 4C */ lwz r6, 0x4c(r31) +/* 800208E0 0001D840 38 81 00 BC */ addi r4, r1, 0xbc +/* 800208E4 0001D844 80 1F 00 50 */ lwz r0, 0x50(r31) +/* 800208E8 0001D848 38 A0 00 0C */ li r5, 0xc +/* 800208EC 0001D84C 90 E1 00 BC */ stw r7, 0xbc(r1) +/* 800208F0 0001D850 90 C1 00 C0 */ stw r6, 0xc0(r1) +/* 800208F4 0001D854 90 01 00 C4 */ stw r0, 0xc4(r1) +/* 800208F8 0001D858 4B FE 2B 99 */ bl memcpy +/* 800208FC 0001D85C 3C 60 80 02 */ lis r3, sub_80020b98@ha +/* 80020900 0001D860 93 61 01 3C */ stw r27, 0x13c(r1) +/* 80020904 0001D864 38 03 0B 98 */ addi r0, r3, sub_80020b98@l +/* 80020908 0001D868 38 61 01 40 */ addi r3, r1, 0x140 +/* 8002090C 0001D86C 90 01 01 38 */ stw r0, 0x138(r1) +/* 80020910 0001D870 38 81 00 50 */ addi r4, r1, 0x50 +/* 80020914 0001D874 38 A0 00 0C */ li r5, 0xc +/* 80020918 0001D878 4B FE 2B 79 */ bl memcpy +/* 8002091C 0001D87C 80 7B 00 40 */ lwz r3, 0x40(r27) +/* 80020920 0001D880 38 81 01 38 */ addi r4, r1, 0x138 +/* 80020924 0001D884 48 2A 5F 35 */ bl "SetMenuAdvanceCallback__14CGuiTableGroupFRC29TFunctor1" +/* 80020928 0001D888 80 FF 00 54 */ lwz r7, 0x54(r31) +/* 8002092C 0001D88C 38 61 00 44 */ addi r3, r1, 0x44 +/* 80020930 0001D890 80 DF 00 58 */ lwz r6, 0x58(r31) +/* 80020934 0001D894 38 81 00 B0 */ addi r4, r1, 0xb0 +/* 80020938 0001D898 80 1F 00 5C */ lwz r0, 0x5c(r31) +/* 8002093C 0001D89C 38 A0 00 0C */ li r5, 0xc +/* 80020940 0001D8A0 90 E1 00 B0 */ stw r7, 0xb0(r1) +/* 80020944 0001D8A4 90 C1 00 B4 */ stw r6, 0xb4(r1) +/* 80020948 0001D8A8 90 01 00 B8 */ stw r0, 0xb8(r1) +/* 8002094C 0001D8AC 4B FE 2B 45 */ bl memcpy +/* 80020950 0001D8B0 3C 60 80 02 */ lis r3, sub_80020b34@ha +/* 80020954 0001D8B4 93 61 01 24 */ stw r27, 0x124(r1) +/* 80020958 0001D8B8 38 03 0B 34 */ addi r0, r3, sub_80020b34@l +/* 8002095C 0001D8BC 38 61 01 28 */ addi r3, r1, 0x128 +/* 80020960 0001D8C0 90 01 01 20 */ stw r0, 0x120(r1) +/* 80020964 0001D8C4 38 81 00 44 */ addi r4, r1, 0x44 +/* 80020968 0001D8C8 38 A0 00 0C */ li r5, 0xc +/* 8002096C 0001D8CC 4B FE 2B 25 */ bl memcpy +/* 80020970 0001D8D0 80 7B 00 40 */ lwz r3, 0x40(r27) +/* 80020974 0001D8D4 38 81 01 20 */ addi r4, r1, 0x120 +/* 80020978 0001D8D8 48 2A 5E 79 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 8002097C 0001D8DC 80 FF 00 60 */ lwz r7, 0x60(r31) +/* 80020980 0001D8E0 38 61 00 38 */ addi r3, r1, 0x38 +/* 80020984 0001D8E4 80 DF 00 64 */ lwz r6, 0x64(r31) +/* 80020988 0001D8E8 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 8002098C 0001D8EC 80 1F 00 68 */ lwz r0, 0x68(r31) +/* 80020990 0001D8F0 38 A0 00 0C */ li r5, 0xc +/* 80020994 0001D8F4 90 E1 00 A4 */ stw r7, 0xa4(r1) +/* 80020998 0001D8F8 90 C1 00 A8 */ stw r6, 0xa8(r1) +/* 8002099C 0001D8FC 90 01 00 AC */ stw r0, 0xac(r1) +/* 800209A0 0001D900 4B FE 2A F1 */ bl memcpy +/* 800209A4 0001D904 3C 60 80 02 */ lis r3, sub_80020b98@ha +/* 800209A8 0001D908 93 61 01 0C */ stw r27, 0x10c(r1) +/* 800209AC 0001D90C 38 03 0B 98 */ addi r0, r3, sub_80020b98@l +/* 800209B0 0001D910 38 61 01 10 */ addi r3, r1, 0x110 +/* 800209B4 0001D914 90 01 01 08 */ stw r0, 0x108(r1) +/* 800209B8 0001D918 38 81 00 38 */ addi r4, r1, 0x38 +/* 800209BC 0001D91C 38 A0 00 0C */ li r5, 0xc +/* 800209C0 0001D920 4B FE 2A D1 */ bl memcpy +/* 800209C4 0001D924 80 7B 00 40 */ lwz r3, 0x40(r27) +/* 800209C8 0001D928 38 81 01 08 */ addi r4, r1, 0x108 +/* 800209CC 0001D92C 48 2A 5E 59 */ bl "SetMenuCancelCallback__14CGuiTableGroupFRC29TFunctor1" +/* 800209D0 0001D930 3B C1 01 9C */ addi r30, r1, 0x19c +/* 800209D4 0001D934 3B BB 00 68 */ addi r29, r27, 0x68 +/* 800209D8 0001D938 3B FE 00 04 */ addi r31, r30, 4 +/* 800209DC 0001D93C 3B 80 00 00 */ li r28, 0 +lbl_800209E0: +/* 800209E0 0001D940 80 9B 00 1C */ lwz r4, 0x1c(r27) +/* 800209E4 0001D944 7F 85 E3 78 */ mr r5, r28 +/* 800209E8 0001D948 38 61 01 98 */ addi r3, r1, 0x198 +/* 800209EC 0001D94C 48 00 04 ED */ bl FindFileSelectOption__19SNewFileSelectFrameFP9CGuiFramei +/* 800209F0 0001D950 80 1B 00 64 */ lwz r0, 0x64(r27) +/* 800209F4 0001D954 1C 00 00 30 */ mulli r0, r0, 0x30 +/* 800209F8 0001D958 7C 7D 02 15 */ add. r3, r29, r0 +/* 800209FC 0001D95C 41 82 00 60 */ beq lbl_80020A5C +/* 80020A00 0001D960 80 01 01 98 */ lwz r0, 0x198(r1) +/* 80020A04 0001D964 7F E5 FB 78 */ mr r5, r31 +/* 80020A08 0001D968 38 83 00 08 */ addi r4, r3, 8 +/* 80020A0C 0001D96C 90 03 00 00 */ stw r0, 0(r3) +/* 80020A10 0001D970 80 01 01 9C */ lwz r0, 0x19c(r1) +/* 80020A14 0001D974 90 03 00 04 */ stw r0, 4(r3) +/* 80020A18 0001D978 80 03 00 04 */ lwz r0, 4(r3) +/* 80020A1C 0001D97C 7C 09 03 A6 */ mtctr r0 +/* 80020A20 0001D980 2C 00 00 00 */ cmpwi r0, 0 +/* 80020A24 0001D984 40 81 00 28 */ ble lbl_80020A4C +lbl_80020A28: +/* 80020A28 0001D988 28 04 00 00 */ cmplwi r4, 0 +/* 80020A2C 0001D98C 41 82 00 14 */ beq lbl_80020A40 +/* 80020A30 0001D990 80 05 00 00 */ lwz r0, 0(r5) +/* 80020A34 0001D994 90 04 00 00 */ stw r0, 0(r4) +/* 80020A38 0001D998 80 05 00 04 */ lwz r0, 4(r5) +/* 80020A3C 0001D99C 90 04 00 04 */ stw r0, 4(r4) +lbl_80020A40: +/* 80020A40 0001D9A0 38 84 00 08 */ addi r4, r4, 8 +/* 80020A44 0001D9A4 38 A5 00 08 */ addi r5, r5, 8 +/* 80020A48 0001D9A8 42 00 FF E0 */ bdnz lbl_80020A28 +lbl_80020A4C: +/* 80020A4C 0001D9AC 80 01 01 C0 */ lwz r0, 0x1c0(r1) +/* 80020A50 0001D9B0 90 03 00 28 */ stw r0, 0x28(r3) +/* 80020A54 0001D9B4 C0 01 01 C4 */ lfs f0, 0x1c4(r1) +/* 80020A58 0001D9B8 D0 03 00 2C */ stfs f0, 0x2c(r3) +lbl_80020A5C: +/* 80020A5C 0001D9BC 80 7B 00 64 */ lwz r3, 0x64(r27) +/* 80020A60 0001D9C0 28 1E 00 00 */ cmplwi r30, 0 +/* 80020A64 0001D9C4 38 03 00 01 */ addi r0, r3, 1 +/* 80020A68 0001D9C8 90 1B 00 64 */ stw r0, 0x64(r27) +/* 80020A6C 0001D9CC 41 82 00 5C */ beq lbl_80020AC8 +/* 80020A70 0001D9D0 80 A1 01 9C */ lwz r5, 0x19c(r1) +/* 80020A74 0001D9D4 38 60 00 00 */ li r3, 0 +/* 80020A78 0001D9D8 2C 05 00 00 */ cmpwi r5, 0 +/* 80020A7C 0001D9DC 40 81 00 44 */ ble lbl_80020AC0 +/* 80020A80 0001D9E0 2C 05 00 08 */ cmpwi r5, 8 +/* 80020A84 0001D9E4 38 85 FF F8 */ addi r4, r5, -8 +/* 80020A88 0001D9E8 40 81 00 20 */ ble lbl_80020AA8 +/* 80020A8C 0001D9EC 38 04 00 07 */ addi r0, r4, 7 +/* 80020A90 0001D9F0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80020A94 0001D9F4 7C 09 03 A6 */ mtctr r0 +/* 80020A98 0001D9F8 2C 04 00 00 */ cmpwi r4, 0 +/* 80020A9C 0001D9FC 40 81 00 0C */ ble lbl_80020AA8 +lbl_80020AA0: +/* 80020AA0 0001DA00 38 63 00 08 */ addi r3, r3, 8 +/* 80020AA4 0001DA04 42 00 FF FC */ bdnz lbl_80020AA0 +lbl_80020AA8: +/* 80020AA8 0001DA08 7C 03 28 50 */ subf r0, r3, r5 +/* 80020AAC 0001DA0C 7C 09 03 A6 */ mtctr r0 +/* 80020AB0 0001DA10 7C 03 28 00 */ cmpw r3, r5 +/* 80020AB4 0001DA14 40 80 00 0C */ bge lbl_80020AC0 +lbl_80020AB8: +/* 80020AB8 0001DA18 38 63 00 01 */ addi r3, r3, 1 +/* 80020ABC 0001DA1C 42 00 FF FC */ bdnz lbl_80020AB8 +lbl_80020AC0: +/* 80020AC0 0001DA20 38 00 00 00 */ li r0, 0 +/* 80020AC4 0001DA24 90 01 01 9C */ stw r0, 0x19c(r1) +lbl_80020AC8: +/* 80020AC8 0001DA28 3B 9C 00 01 */ addi r28, r28, 1 +/* 80020ACC 0001DA2C 2C 1C 00 03 */ cmpwi r28, 3 +/* 80020AD0 0001DA30 41 80 FF 10 */ blt lbl_800209E0 +/* 80020AD4 0001DA34 80 9D 00 00 */ lwz r4, 0(r29) +/* 80020AD8 0001DA38 38 61 00 80 */ addi r3, r1, 0x80 +/* 80020ADC 0001DA3C 48 2A 47 41 */ bl GetLocalPosition__10CGuiObjectCFv +/* 80020AE0 0001DA40 80 9D 00 30 */ lwz r4, 0x30(r29) +/* 80020AE4 0001DA44 38 61 00 8C */ addi r3, r1, 0x8c +/* 80020AE8 0001DA48 48 2A 47 35 */ bl GetLocalPosition__10CGuiObjectCFv +/* 80020AEC 0001DA4C C0 21 00 8C */ lfs f1, 0x8c(r1) +/* 80020AF0 0001DA50 C0 01 00 80 */ lfs f0, 0x80(r1) +/* 80020AF4 0001DA54 C0 61 00 90 */ lfs f3, 0x90(r1) +/* 80020AF8 0001DA58 C0 41 00 84 */ lfs f2, 0x84(r1) +/* 80020AFC 0001DA5C EC 81 00 28 */ fsubs f4, f1, f0 +/* 80020B00 0001DA60 C0 21 00 94 */ lfs f1, 0x94(r1) +/* 80020B04 0001DA64 C0 01 00 88 */ lfs f0, 0x88(r1) +/* 80020B08 0001DA68 EC 43 10 28 */ fsubs f2, f3, f2 +/* 80020B0C 0001DA6C D0 81 00 98 */ stfs f4, 0x98(r1) +/* 80020B10 0001DA70 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80020B14 0001DA74 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 80020B18 0001DA78 D0 01 00 A0 */ stfs f0, 0xa0(r1) +/* 80020B1C 0001DA7C D0 1B 01 04 */ stfs f0, 0x104(r27) +/* 80020B20 0001DA80 BB 61 01 CC */ lmw r27, 0x1cc(r1) +/* 80020B24 0001DA84 80 01 01 E4 */ lwz r0, 0x1e4(r1) +/* 80020B28 0001DA88 7C 08 03 A6 */ mtlr r0 +/* 80020B2C 0001DA8C 38 21 01 E0 */ addi r1, r1, 0x1e0 +/* 80020B30 0001DA90 4E 80 00 20 */ blr + +.global sub_80020b34 +sub_80020b34: +/* 80020B34 0001DA94 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80020B38 0001DA98 7C 08 02 A6 */ mflr r0 +/* 80020B3C 0001DA9C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80020B40 0001DAA0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80020B44 0001DAA4 7C DF 33 78 */ mr r31, r6 +/* 80020B48 0001DAA8 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80020B4C 0001DAAC 7C BE 2B 78 */ mr r30, r5 +/* 80020B50 0001DAB0 38 A0 00 0C */ li r5, 0xc +/* 80020B54 0001DAB4 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80020B58 0001DAB8 7C 7D 1B 78 */ mr r29, r3 +/* 80020B5C 0001DABC 38 61 00 08 */ addi r3, r1, 8 +/* 80020B60 0001DAC0 4B FE 29 31 */ bl memcpy +/* 80020B64 0001DAC4 7F A3 EB 78 */ mr r3, r29 +/* 80020B68 0001DAC8 7F C4 F3 78 */ mr r4, r30 +/* 80020B6C 0001DACC 7F E5 FB 78 */ mr r5, r31 +/* 80020B70 0001DAD0 39 81 00 08 */ addi r12, r1, 8 +/* 80020B74 0001DAD4 48 36 8D B9 */ bl __ptmf_scall +/* 80020B78 0001DAD8 60 00 00 00 */ nop +/* 80020B7C 0001DADC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80020B80 0001DAE0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80020B84 0001DAE4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80020B88 0001DAE8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80020B8C 0001DAEC 7C 08 03 A6 */ mtlr r0 +/* 80020B90 0001DAF0 38 21 00 30 */ addi r1, r1, 0x30 +/* 80020B94 0001DAF4 4E 80 00 20 */ blr + +.global sub_80020b98 +sub_80020b98: +/* 80020B98 0001DAF8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80020B9C 0001DAFC 7C 08 02 A6 */ mflr r0 +/* 80020BA0 0001DB00 90 01 00 24 */ stw r0, 0x24(r1) +/* 80020BA4 0001DB04 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80020BA8 0001DB08 7C BF 2B 78 */ mr r31, r5 +/* 80020BAC 0001DB0C 38 A0 00 0C */ li r5, 0xc +/* 80020BB0 0001DB10 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80020BB4 0001DB14 7C 7E 1B 78 */ mr r30, r3 +/* 80020BB8 0001DB18 38 61 00 08 */ addi r3, r1, 8 +/* 80020BBC 0001DB1C 4B FE 28 D5 */ bl memcpy +/* 80020BC0 0001DB20 7F C3 F3 78 */ mr r3, r30 +/* 80020BC4 0001DB24 7F E4 FB 78 */ mr r4, r31 +/* 80020BC8 0001DB28 39 81 00 08 */ addi r12, r1, 8 +/* 80020BCC 0001DB2C 48 36 8D 61 */ bl __ptmf_scall +/* 80020BD0 0001DB30 60 00 00 00 */ nop +/* 80020BD4 0001DB34 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80020BD8 0001DB38 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80020BDC 0001DB3C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80020BE0 0001DB40 7C 08 03 A6 */ mtlr r0 +/* 80020BE4 0001DB44 38 21 00 20 */ addi r1, r1, 0x20 +/* 80020BE8 0001DB48 4E 80 00 20 */ blr + +.global PumpLoad__19SNewFileSelectFrameFv +PumpLoad__19SNewFileSelectFrameFv: +/* 80020BEC 0001DB4C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80020BF0 0001DB50 7C 08 02 A6 */ mflr r0 +/* 80020BF4 0001DB54 90 01 00 14 */ stw r0, 0x14(r1) +/* 80020BF8 0001DB58 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80020BFC 0001DB5C 93 C1 00 08 */ stw r30, 8(r1) +/* 80020C00 0001DB60 7C 7E 1B 78 */ mr r30, r3 +/* 80020C04 0001DB64 80 03 00 1C */ lwz r0, 0x1c(r3) +/* 80020C08 0001DB68 28 00 00 00 */ cmplwi r0, 0 +/* 80020C0C 0001DB6C 41 82 00 0C */ beq lbl_80020C18 +/* 80020C10 0001DB70 38 60 00 01 */ li r3, 1 +/* 80020C14 0001DB74 48 00 00 84 */ b lbl_80020C98 +lbl_80020C18: +/* 80020C18 0001DB78 80 1E 00 18 */ lwz r0, 0x18(r30) +/* 80020C1C 0001DB7C 28 00 00 00 */ cmplwi r0, 0 +/* 80020C20 0001DB80 41 82 00 0C */ beq lbl_80020C2C +/* 80020C24 0001DB84 38 60 00 01 */ li r3, 1 +/* 80020C28 0001DB88 48 00 00 3C */ b lbl_80020C64 +lbl_80020C2C: +/* 80020C2C 0001DB8C 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 80020C30 0001DB90 28 00 00 00 */ cmplwi r0, 0 +/* 80020C34 0001DB94 41 82 00 2C */ beq lbl_80020C60 +/* 80020C38 0001DB98 80 7E 00 10 */ lwz r3, 0x10(r30) +/* 80020C3C 0001DB9C 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80020C40 0001DBA0 28 00 00 00 */ cmplwi r0, 0 +/* 80020C44 0001DBA4 41 82 00 1C */ beq lbl_80020C60 +/* 80020C48 0001DBA8 38 7E 00 10 */ addi r3, r30, 0x10 +/* 80020C4C 0001DBAC 48 32 01 C1 */ bl GetObj__6CTokenFv +/* 80020C50 0001DBB0 80 03 00 04 */ lwz r0, 4(r3) +/* 80020C54 0001DBB4 38 60 00 01 */ li r3, 1 +/* 80020C58 0001DBB8 90 1E 00 18 */ stw r0, 0x18(r30) +/* 80020C5C 0001DBBC 48 00 00 08 */ b lbl_80020C64 +lbl_80020C60: +/* 80020C60 0001DBC0 38 60 00 00 */ li r3, 0 +lbl_80020C64: +/* 80020C64 0001DBC4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80020C68 0001DBC8 41 82 00 2C */ beq lbl_80020C94 +/* 80020C6C 0001DBCC 83 FE 00 18 */ lwz r31, 0x18(r30) +/* 80020C70 0001DBD0 7F E3 FB 78 */ mr r3, r31 +/* 80020C74 0001DBD4 48 2A 18 DD */ bl GetIsFinishedLoading__9CGuiFrameCFv +/* 80020C78 0001DBD8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80020C7C 0001DBDC 41 82 00 18 */ beq lbl_80020C94 +/* 80020C80 0001DBE0 93 FE 00 1C */ stw r31, 0x1c(r30) +/* 80020C84 0001DBE4 7F C3 F3 78 */ mr r3, r30 +/* 80020C88 0001DBE8 4B FF F8 C9 */ bl FinishedLoading__19SNewFileSelectFrame +/* 80020C8C 0001DBEC 38 60 00 01 */ li r3, 1 +/* 80020C90 0001DBF0 48 00 00 08 */ b lbl_80020C98 +lbl_80020C94: +/* 80020C94 0001DBF4 38 60 00 00 */ li r3, 0 +lbl_80020C98: +/* 80020C98 0001DBF8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80020C9C 0001DBFC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80020CA0 0001DC00 83 C1 00 08 */ lwz r30, 8(r1) +/* 80020CA4 0001DC04 7C 08 03 A6 */ mtlr r0 +/* 80020CA8 0001DC08 38 21 00 10 */ addi r1, r1, 0x10 +/* 80020CAC 0001DC0C 4E 80 00 20 */ blr + +.global __dt__19SNewFileSelectFrameFv +__dt__19SNewFileSelectFrameFv: +/* 80020CB0 0001DC10 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80020CB4 0001DC14 7C 08 02 A6 */ mflr r0 +/* 80020CB8 0001DC18 90 01 00 14 */ stw r0, 0x14(r1) +/* 80020CBC 0001DC1C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80020CC0 0001DC20 7C 9F 23 78 */ mr r31, r4 +/* 80020CC4 0001DC24 93 C1 00 08 */ stw r30, 8(r1) +/* 80020CC8 0001DC28 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80020CCC 0001DC2C 41 82 00 C8 */ beq lbl_80020D94 +/* 80020CD0 0001DC30 34 1E 00 64 */ addic. r0, r30, 0x64 +/* 80020CD4 0001DC34 41 82 00 94 */ beq lbl_80020D68 +/* 80020CD8 0001DC38 38 DE 00 68 */ addi r6, r30, 0x68 +/* 80020CDC 0001DC3C 38 60 00 00 */ li r3, 0 +/* 80020CE0 0001DC40 48 00 00 74 */ b lbl_80020D54 +lbl_80020CE4: +/* 80020CE4 0001DC44 28 06 00 00 */ cmplwi r6, 0 +/* 80020CE8 0001DC48 41 82 00 64 */ beq lbl_80020D4C +/* 80020CEC 0001DC4C 34 06 00 04 */ addic. r0, r6, 4 +/* 80020CF0 0001DC50 41 82 00 5C */ beq lbl_80020D4C +/* 80020CF4 0001DC54 80 E6 00 04 */ lwz r7, 4(r6) +/* 80020CF8 0001DC58 38 80 00 00 */ li r4, 0 +/* 80020CFC 0001DC5C 2C 07 00 00 */ cmpwi r7, 0 +/* 80020D00 0001DC60 40 81 00 44 */ ble lbl_80020D44 +/* 80020D04 0001DC64 2C 07 00 08 */ cmpwi r7, 8 +/* 80020D08 0001DC68 38 A7 FF F8 */ addi r5, r7, -8 +/* 80020D0C 0001DC6C 40 81 00 20 */ ble lbl_80020D2C +/* 80020D10 0001DC70 38 05 00 07 */ addi r0, r5, 7 +/* 80020D14 0001DC74 54 00 E8 FE */ srwi r0, r0, 3 +/* 80020D18 0001DC78 7C 09 03 A6 */ mtctr r0 +/* 80020D1C 0001DC7C 2C 05 00 00 */ cmpwi r5, 0 +/* 80020D20 0001DC80 40 81 00 0C */ ble lbl_80020D2C +lbl_80020D24: +/* 80020D24 0001DC84 38 84 00 08 */ addi r4, r4, 8 +/* 80020D28 0001DC88 42 00 FF FC */ bdnz lbl_80020D24 +lbl_80020D2C: +/* 80020D2C 0001DC8C 7C 04 38 50 */ subf r0, r4, r7 +/* 80020D30 0001DC90 7C 09 03 A6 */ mtctr r0 +/* 80020D34 0001DC94 7C 04 38 00 */ cmpw r4, r7 +/* 80020D38 0001DC98 40 80 00 0C */ bge lbl_80020D44 +lbl_80020D3C: +/* 80020D3C 0001DC9C 38 84 00 01 */ addi r4, r4, 1 +/* 80020D40 0001DCA0 42 00 FF FC */ bdnz lbl_80020D3C +lbl_80020D44: +/* 80020D44 0001DCA4 38 00 00 00 */ li r0, 0 +/* 80020D48 0001DCA8 90 06 00 04 */ stw r0, 4(r6) +lbl_80020D4C: +/* 80020D4C 0001DCAC 38 C6 00 30 */ addi r6, r6, 0x30 +/* 80020D50 0001DCB0 38 63 00 01 */ addi r3, r3, 1 +lbl_80020D54: +/* 80020D54 0001DCB4 80 1E 00 64 */ lwz r0, 0x64(r30) +/* 80020D58 0001DCB8 7C 03 00 00 */ cmpw r3, r0 +/* 80020D5C 0001DCBC 41 80 FF 88 */ blt lbl_80020CE4 +/* 80020D60 0001DCC0 38 00 00 00 */ li r0, 0 +/* 80020D64 0001DCC4 90 1E 00 64 */ stw r0, 0x64(r30) +lbl_80020D68: +/* 80020D68 0001DCC8 34 1E 00 10 */ addic. r0, r30, 0x10 +/* 80020D6C 0001DCCC 41 82 00 18 */ beq lbl_80020D84 +/* 80020D70 0001DCD0 34 1E 00 10 */ addic. r0, r30, 0x10 +/* 80020D74 0001DCD4 41 82 00 10 */ beq lbl_80020D84 +/* 80020D78 0001DCD8 38 7E 00 10 */ addi r3, r30, 0x10 +/* 80020D7C 0001DCDC 38 80 00 00 */ li r4, 0 +/* 80020D80 0001DCE0 48 32 00 C1 */ bl __dt__6CTokenFv +lbl_80020D84: +/* 80020D84 0001DCE4 7F E0 07 35 */ extsh. r0, r31 +/* 80020D88 0001DCE8 40 81 00 0C */ ble lbl_80020D94 +/* 80020D8C 0001DCEC 7F C3 F3 78 */ mr r3, r30 +/* 80020D90 0001DCF0 48 2F 4B A1 */ bl Free__7CMemoryFPCv +lbl_80020D94: +/* 80020D94 0001DCF4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80020D98 0001DCF8 7F C3 F3 78 */ mr r3, r30 +/* 80020D9C 0001DCFC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80020DA0 0001DD00 83 C1 00 08 */ lwz r30, 8(r1) +/* 80020DA4 0001DD04 7C 08 03 A6 */ mtlr r0 +/* 80020DA8 0001DD08 38 21 00 10 */ addi r1, r1, 0x10 +/* 80020DAC 0001DD0C 4E 80 00 20 */ blr + +.global __ct__19SNewFileSelectFrameFv +__ct__19SNewFileSelectFrameFv: +/* 80020DB0 0001DD10 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80020DB4 0001DD14 7C 08 02 A6 */ mflr r0 +/* 80020DB8 0001DD18 90 01 00 24 */ stw r0, 0x24(r1) +/* 80020DBC 0001DD1C 38 00 00 00 */ li r0, 0 +/* 80020DC0 0001DD20 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80020DC4 0001DD24 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80020DC8 0001DD28 7C 7E 1B 78 */ mr r30, r3 +/* 80020DCC 0001DD2C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80020DD0 0001DD30 90 BE 00 00 */ stw r5, 0(r30) +/* 80020DD4 0001DD34 38 A3 C6 44 */ addi r5, r3, lbl_803CC644@l +/* 80020DD8 0001DD38 38 61 00 08 */ addi r3, r1, 8 +/* 80020DDC 0001DD3C 90 9E 00 04 */ stw r4, 4(r30) +/* 80020DE0 0001DD40 38 A5 02 EE */ addi r5, r5, 0x2ee +/* 80020DE4 0001DD44 90 1E 00 08 */ stw r0, 8(r30) +/* 80020DE8 0001DD48 90 1E 00 0C */ stw r0, 0xc(r30) +/* 80020DEC 0001DD4C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80020DF0 0001DD50 81 84 00 00 */ lwz r12, 0(r4) +/* 80020DF4 0001DD54 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80020DF8 0001DD58 7D 89 03 A6 */ mtctr r12 +/* 80020DFC 0001DD5C 4E 80 04 21 */ bctrl +/* 80020E00 0001DD60 3B FE 00 10 */ addi r31, r30, 0x10 +/* 80020E04 0001DD64 38 81 00 08 */ addi r4, r1, 8 +/* 80020E08 0001DD68 7F E3 FB 78 */ mr r3, r31 +/* 80020E0C 0001DD6C 48 32 00 9D */ bl __ct__6CTokenFRC6CToken +/* 80020E10 0001DD70 38 00 00 00 */ li r0, 0 +/* 80020E14 0001DD74 38 61 00 08 */ addi r3, r1, 8 +/* 80020E18 0001DD78 90 1F 00 08 */ stw r0, 8(r31) +/* 80020E1C 0001DD7C 38 80 FF FF */ li r4, -1 +/* 80020E20 0001DD80 48 32 00 21 */ bl __dt__6CTokenFv +/* 80020E24 0001DD84 38 00 00 00 */ li r0, 0 +/* 80020E28 0001DD88 38 7E 00 28 */ addi r3, r30, 0x28 +/* 80020E2C 0001DD8C 90 1E 00 1C */ stw r0, 0x1c(r30) +/* 80020E30 0001DD90 90 1E 00 20 */ stw r0, 0x20(r30) +/* 80020E34 0001DD94 90 1E 00 24 */ stw r0, 0x24(r30) +/* 80020E38 0001DD98 48 00 20 3D */ bl __ct__12SGuiTextPairFv +/* 80020E3C 0001DD9C 38 7E 00 30 */ addi r3, r30, 0x30 +/* 80020E40 0001DDA0 48 00 20 35 */ bl __ct__12SGuiTextPairFv +/* 80020E44 0001DDA4 38 7E 00 38 */ addi r3, r30, 0x38 +/* 80020E48 0001DDA8 48 00 20 2D */ bl __ct__12SGuiTextPairFv +/* 80020E4C 0001DDAC 38 00 00 00 */ li r0, 0 +/* 80020E50 0001DDB0 38 7E 00 48 */ addi r3, r30, 0x48 +/* 80020E54 0001DDB4 90 1E 00 40 */ stw r0, 0x40(r30) +/* 80020E58 0001DDB8 90 1E 00 44 */ stw r0, 0x44(r30) +/* 80020E5C 0001DDBC 48 00 20 19 */ bl __ct__12SGuiTextPairFv +/* 80020E60 0001DDC0 38 7E 00 50 */ addi r3, r30, 0x50 +/* 80020E64 0001DDC4 48 00 20 11 */ bl __ct__12SGuiTextPairFv +/* 80020E68 0001DDC8 38 7E 00 58 */ addi r3, r30, 0x58 +/* 80020E6C 0001DDCC 48 00 20 09 */ bl __ct__12SGuiTextPairFv +/* 80020E70 0001DDD0 38 00 00 00 */ li r0, 0 +/* 80020E74 0001DDD4 3C 60 80 5A */ lis r3, skZero3f@ha +/* 80020E78 0001DDD8 90 1E 00 60 */ stw r0, 0x60(r30) +/* 80020E7C 0001DDDC 38 83 66 A0 */ addi r4, r3, skZero3f@l +/* 80020E80 0001DDE0 C0 02 82 9C */ lfs f0, lbl_805A9FBC@sda21(r2) +/* 80020E84 0001DDE4 7F E3 FB 78 */ mr r3, r31 +/* 80020E88 0001DDE8 90 1E 00 64 */ stw r0, 0x64(r30) +/* 80020E8C 0001DDEC C0 24 00 00 */ lfs f1, 0(r4) +/* 80020E90 0001DDF0 D0 3E 00 F8 */ stfs f1, 0xf8(r30) +/* 80020E94 0001DDF4 C0 24 00 04 */ lfs f1, 4(r4) +/* 80020E98 0001DDF8 D0 3E 00 FC */ stfs f1, 0xfc(r30) +/* 80020E9C 0001DDFC C0 24 00 08 */ lfs f1, 8(r4) +/* 80020EA0 0001DE00 D0 3E 01 00 */ stfs f1, 0x100(r30) +/* 80020EA4 0001DE04 D0 1E 01 04 */ stfs f0, 0x104(r30) +/* 80020EA8 0001DE08 D0 1E 01 08 */ stfs f0, 0x108(r30) +/* 80020EAC 0001DE0C 98 1E 01 0C */ stb r0, 0x10c(r30) +/* 80020EB0 0001DE10 98 1E 01 0D */ stb r0, 0x10d(r30) +/* 80020EB4 0001DE14 98 1E 01 0E */ stb r0, 0x10e(r30) +/* 80020EB8 0001DE18 48 31 FE CD */ bl Lock__6CTokenFv +/* 80020EBC 0001DE1C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80020EC0 0001DE20 7F C3 F3 78 */ mr r3, r30 +/* 80020EC4 0001DE24 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80020EC8 0001DE28 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80020ECC 0001DE2C 7C 08 03 A6 */ mtlr r0 +/* 80020ED0 0001DE30 38 21 00 20 */ addi r1, r1, 0x20 +/* 80020ED4 0001DE34 4E 80 00 20 */ blr + +.global FindFileSelectOption__19SNewFileSelectFrameFP9CGuiFramei +FindFileSelectOption__19SNewFileSelectFrameFP9CGuiFramei: +/* 80020ED8 0001DE38 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80020EDC 0001DE3C 7C 08 02 A6 */ mflr r0 +/* 80020EE0 0001DE40 3C C0 80 3D */ lis r6, lbl_803CC644@ha +/* 80020EE4 0001DE44 90 01 00 64 */ stw r0, 0x64(r1) +/* 80020EE8 0001DE48 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80020EEC 0001DE4C 7C BF 2B 78 */ mr r31, r5 +/* 80020EF0 0001DE50 38 A6 C6 44 */ addi r5, r6, lbl_803CC644@l +/* 80020EF4 0001DE54 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80020EF8 0001DE58 7C 9E 23 78 */ mr r30, r4 +/* 80020EFC 0001DE5C 7F E4 FB 78 */ mr r4, r31 +/* 80020F00 0001DE60 93 A1 00 54 */ stw r29, 0x54(r1) +/* 80020F04 0001DE64 7C 7D 1B 78 */ mr r29, r3 +/* 80020F08 0001DE68 38 65 03 01 */ addi r3, r5, 0x301 +/* 80020F0C 0001DE6C 4C C6 31 82 */ crclr 6 +/* 80020F10 0001DE70 48 2B 52 A1 */ bl Stringize__7CBasicsFPCce +/* 80020F14 0001DE74 7C 64 1B 78 */ mr r4, r3 +/* 80020F18 0001DE78 7F C3 F3 78 */ mr r3, r30 +/* 80020F1C 0001DE7C 48 2A 12 39 */ bl FindWidget__9CGuiFrameCFPCc +/* 80020F20 0001DE80 90 7D 00 00 */ stw r3, 0(r29) +/* 80020F24 0001DE84 38 00 00 00 */ li r0, 0 +/* 80020F28 0001DE88 90 1D 00 04 */ stw r0, 4(r29) +/* 80020F2C 0001DE8C 90 1D 00 28 */ stw r0, 0x28(r29) +/* 80020F30 0001DE90 48 00 02 39 */ bl ComputeRandom__17SFileSelectOption +/* 80020F34 0001DE94 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80020F38 0001DE98 D0 3D 00 2C */ stfs f1, 0x2c(r29) +/* 80020F3C 0001DE9C 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80020F40 0001DEA0 7F E5 FB 78 */ mr r5, r31 +/* 80020F44 0001DEA4 38 61 00 28 */ addi r3, r1, 0x28 +/* 80020F48 0001DEA8 38 84 03 13 */ addi r4, r4, 0x313 +/* 80020F4C 0001DEAC 4C C6 31 82 */ crclr 6 +/* 80020F50 0001DEB0 48 36 CD 8D */ bl sprintf +/* 80020F54 0001DEB4 7F C4 F3 78 */ mr r4, r30 +/* 80020F58 0001DEB8 38 61 00 20 */ addi r3, r1, 0x20 +/* 80020F5C 0001DEBC 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80020F60 0001DEC0 48 00 1E 99 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80020F64 0001DEC4 38 7D 00 04 */ addi r3, r29, 4 +/* 80020F68 0001DEC8 80 1D 00 04 */ lwz r0, 4(r29) +/* 80020F6C 0001DECC 54 00 18 38 */ slwi r0, r0, 3 +/* 80020F70 0001DED0 7C 63 02 14 */ add r3, r3, r0 +/* 80020F74 0001DED4 34 63 00 04 */ addic. r3, r3, 4 +/* 80020F78 0001DED8 41 82 00 14 */ beq lbl_80020F8C +/* 80020F7C 0001DEDC 80 01 00 20 */ lwz r0, 0x20(r1) +/* 80020F80 0001DEE0 90 03 00 00 */ stw r0, 0(r3) +/* 80020F84 0001DEE4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80020F88 0001DEE8 90 03 00 04 */ stw r0, 4(r3) +lbl_80020F8C: +/* 80020F8C 0001DEEC 80 DD 00 04 */ lwz r6, 4(r29) +/* 80020F90 0001DEF0 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80020F94 0001DEF4 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80020F98 0001DEF8 7F E5 FB 78 */ mr r5, r31 +/* 80020F9C 0001DEFC 38 06 00 01 */ addi r0, r6, 1 +/* 80020FA0 0001DF00 38 61 00 28 */ addi r3, r1, 0x28 +/* 80020FA4 0001DF04 90 1D 00 04 */ stw r0, 4(r29) +/* 80020FA8 0001DF08 38 84 03 27 */ addi r4, r4, 0x327 +/* 80020FAC 0001DF0C 4C C6 31 82 */ crclr 6 +/* 80020FB0 0001DF10 48 36 CD 2D */ bl sprintf +/* 80020FB4 0001DF14 7F C4 F3 78 */ mr r4, r30 +/* 80020FB8 0001DF18 38 61 00 18 */ addi r3, r1, 0x18 +/* 80020FBC 0001DF1C 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80020FC0 0001DF20 48 00 1E 39 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80020FC4 0001DF24 38 7D 00 04 */ addi r3, r29, 4 +/* 80020FC8 0001DF28 80 1D 00 04 */ lwz r0, 4(r29) +/* 80020FCC 0001DF2C 54 00 18 38 */ slwi r0, r0, 3 +/* 80020FD0 0001DF30 7C 63 02 14 */ add r3, r3, r0 +/* 80020FD4 0001DF34 34 63 00 04 */ addic. r3, r3, 4 +/* 80020FD8 0001DF38 41 82 00 14 */ beq lbl_80020FEC +/* 80020FDC 0001DF3C 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80020FE0 0001DF40 90 03 00 00 */ stw r0, 0(r3) +/* 80020FE4 0001DF44 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80020FE8 0001DF48 90 03 00 04 */ stw r0, 4(r3) +lbl_80020FEC: +/* 80020FEC 0001DF4C 80 DD 00 04 */ lwz r6, 4(r29) +/* 80020FF0 0001DF50 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80020FF4 0001DF54 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80020FF8 0001DF58 7F E5 FB 78 */ mr r5, r31 +/* 80020FFC 0001DF5C 38 06 00 01 */ addi r0, r6, 1 +/* 80021000 0001DF60 38 61 00 28 */ addi r3, r1, 0x28 +/* 80021004 0001DF64 90 1D 00 04 */ stw r0, 4(r29) +/* 80021008 0001DF68 38 84 03 38 */ addi r4, r4, 0x338 +/* 8002100C 0001DF6C 4C C6 31 82 */ crclr 6 +/* 80021010 0001DF70 48 36 CC CD */ bl sprintf +/* 80021014 0001DF74 7F C4 F3 78 */ mr r4, r30 +/* 80021018 0001DF78 38 61 00 10 */ addi r3, r1, 0x10 +/* 8002101C 0001DF7C 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80021020 0001DF80 48 00 1D D9 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80021024 0001DF84 38 7D 00 04 */ addi r3, r29, 4 +/* 80021028 0001DF88 80 1D 00 04 */ lwz r0, 4(r29) +/* 8002102C 0001DF8C 54 00 18 38 */ slwi r0, r0, 3 +/* 80021030 0001DF90 7C 63 02 14 */ add r3, r3, r0 +/* 80021034 0001DF94 34 63 00 04 */ addic. r3, r3, 4 +/* 80021038 0001DF98 41 82 00 14 */ beq lbl_8002104C +/* 8002103C 0001DF9C 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80021040 0001DFA0 90 03 00 00 */ stw r0, 0(r3) +/* 80021044 0001DFA4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80021048 0001DFA8 90 03 00 04 */ stw r0, 4(r3) +lbl_8002104C: +/* 8002104C 0001DFAC 80 DD 00 04 */ lwz r6, 4(r29) +/* 80021050 0001DFB0 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80021054 0001DFB4 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80021058 0001DFB8 7F E5 FB 78 */ mr r5, r31 +/* 8002105C 0001DFBC 38 06 00 01 */ addi r0, r6, 1 +/* 80021060 0001DFC0 38 61 00 28 */ addi r3, r1, 0x28 +/* 80021064 0001DFC4 90 1D 00 04 */ stw r0, 4(r29) +/* 80021068 0001DFC8 38 84 03 4C */ addi r4, r4, 0x34c +/* 8002106C 0001DFCC 4C C6 31 82 */ crclr 6 +/* 80021070 0001DFD0 48 36 CC 6D */ bl sprintf +/* 80021074 0001DFD4 7F C4 F3 78 */ mr r4, r30 +/* 80021078 0001DFD8 38 61 00 08 */ addi r3, r1, 8 +/* 8002107C 0001DFDC 38 A1 00 28 */ addi r5, r1, 0x28 +/* 80021080 0001DFE0 48 00 1D 79 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80021084 0001DFE4 38 7D 00 04 */ addi r3, r29, 4 +/* 80021088 0001DFE8 80 1D 00 04 */ lwz r0, 4(r29) +/* 8002108C 0001DFEC 54 00 18 38 */ slwi r0, r0, 3 +/* 80021090 0001DFF0 7C 63 02 14 */ add r3, r3, r0 +/* 80021094 0001DFF4 34 63 00 04 */ addic. r3, r3, 4 +/* 80021098 0001DFF8 41 82 00 14 */ beq lbl_800210AC +/* 8002109C 0001DFFC 80 01 00 08 */ lwz r0, 8(r1) +/* 800210A0 0001E000 90 03 00 00 */ stw r0, 0(r3) +/* 800210A4 0001E004 80 01 00 0C */ lwz r0, 0xc(r1) +/* 800210A8 0001E008 90 03 00 04 */ stw r0, 4(r3) +lbl_800210AC: +/* 800210AC 0001E00C 80 9D 00 04 */ lwz r4, 4(r29) +/* 800210B0 0001E010 7F A3 EB 78 */ mr r3, r29 +/* 800210B4 0001E014 38 04 00 01 */ addi r0, r4, 1 +/* 800210B8 0001E018 90 1D 00 04 */ stw r0, 4(r29) +/* 800210BC 0001E01C 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 800210C0 0001E020 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 800210C4 0001E024 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 800210C8 0001E028 80 01 00 64 */ lwz r0, 0x64(r1) +/* 800210CC 0001E02C 7C 08 03 A6 */ mtlr r0 +/* 800210D0 0001E030 38 21 00 60 */ addi r1, r1, 0x60 +/* 800210D4 0001E034 4E 80 00 20 */ blr + +.global StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring +StartTextAnimating__19SNewFileSelectFrameFP12CGuiTextPaneQ24rstl7wstring: +/* 800210D8 0001E038 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 800210DC 0001E03C 7C 08 02 A6 */ mflr r0 +/* 800210E0 0001E040 90 01 00 34 */ stw r0, 0x34(r1) +/* 800210E4 0001E044 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 800210E8 0001E048 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 800210EC 0001E04C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 800210F0 0001E050 93 C1 00 18 */ stw r30, 0x18(r1) +/* 800210F4 0001E054 FF E0 08 90 */ fmr f31, f1 +/* 800210F8 0001E058 7C 7E 1B 78 */ mr r30, r3 +/* 800210FC 0001E05C 7C 9F 23 78 */ mr r31, r4 +/* 80021100 0001E060 38 61 00 08 */ addi r3, r1, 8 +/* 80021104 0001E064 38 8D 81 4C */ addi r4, r13, lbl_805A6D0C@sda21 +/* 80021108 0001E068 4B FF 48 E9 */ bl wstring_l__4rstlFPCw +/* 8002110C 0001E06C 38 7E 00 D4 */ addi r3, r30, 0xd4 +/* 80021110 0001E070 38 81 00 08 */ addi r4, r1, 8 +/* 80021114 0001E074 38 A0 00 00 */ li r5, 0 +/* 80021118 0001E078 48 2A 87 6D */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8002111C 0001E07C 38 61 00 08 */ addi r3, r1, 8 +/* 80021120 0001E080 48 31 C0 15 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80021124 0001E084 7F E4 FB 78 */ mr r4, r31 +/* 80021128 0001E088 38 7E 00 D4 */ addi r3, r30, 0xd4 +/* 8002112C 0001E08C 38 A0 00 00 */ li r5, 0 +/* 80021130 0001E090 48 2A 87 55 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80021134 0001E094 FC 40 F8 90 */ fmr f2, f31 +/* 80021138 0001E098 C0 22 82 E8 */ lfs f1, lbl_805AA008@sda21(r2) +/* 8002113C 0001E09C 38 7E 00 D4 */ addi r3, r30, 0xd4 +/* 80021140 0001E0A0 38 80 00 01 */ li r4, 1 +/* 80021144 0001E0A4 48 2A 6F D5 */ bl SetTypeWriteEffectOptions__15CGuiTextSupportFbff +/* 80021148 0001E0A8 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8002114C 0001E0AC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80021150 0001E0B0 CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80021154 0001E0B4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80021158 0001E0B8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8002115C 0001E0BC 7C 08 03 A6 */ mtlr r0 +/* 80021160 0001E0C0 38 21 00 30 */ addi r1, r1, 0x30 +/* 80021164 0001E0C4 4E 80 00 20 */ blr + +.global ComputeRandom__17SFileSelectOption +ComputeRandom__17SFileSelectOption: +/* 80021168 0001E0C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8002116C 0001E0CC 7C 08 02 A6 */ mflr r0 +/* 80021170 0001E0D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80021174 0001E0D4 48 36 ED 09 */ bl rand +/* 80021178 0001E0D8 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 8002117C 0001E0DC 3C 00 43 30 */ lis r0, 0x4330 +/* 80021180 0001E0E0 90 61 00 0C */ stw r3, 0xc(r1) +/* 80021184 0001E0E4 C8 62 82 B8 */ lfd f3, lbl_805A9FD8@sda21(r2) +/* 80021188 0001E0E8 90 01 00 08 */ stw r0, 8(r1) +/* 8002118C 0001E0EC C0 22 82 EC */ lfs f1, lbl_805AA00C@sda21(r2) +/* 80021190 0001E0F0 C8 41 00 08 */ lfd f2, 8(r1) +/* 80021194 0001E0F4 C0 02 82 A0 */ lfs f0, lbl_805A9FC0@sda21(r2) +/* 80021198 0001E0F8 EC 42 18 28 */ fsubs f2, f2, f3 +/* 8002119C 0001E0FC EC 22 08 24 */ fdivs f1, f2, f1 +/* 800211A0 0001E100 EC 20 00 7A */ fmadds f1, f0, f1, f0 +/* 800211A4 0001E104 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800211A8 0001E108 7C 08 03 A6 */ mtlr r0 +/* 800211AC 0001E10C 38 21 00 10 */ addi r1, r1, 0x10 +/* 800211B0 0001E110 4E 80 00 20 */ blr + +.global DoCancel__14SFrontEndFrameFPC14CGuiTableGroup +DoCancel__14SFrontEndFrameFPC14CGuiTableGroup: +/* 800211B4 0001E114 4E 80 00 20 */ blr + +.global HandleActiveChange__14SFrontEndFrameFPC14CGuiTableGroup +HandleActiveChange__14SFrontEndFrameFPC14CGuiTableGroup: +/* 800211B8 0001E118 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800211BC 0001E11C 7C 08 02 A6 */ mflr r0 +/* 800211C0 0001E120 7C 83 23 78 */ mr r3, r4 +/* 800211C4 0001E124 38 E0 00 FF */ li r7, 0xff +/* 800211C8 0001E128 90 01 00 14 */ stw r0, 0x14(r1) +/* 800211CC 0001E12C 38 C0 00 A0 */ li r6, 0xa0 +/* 800211D0 0001E130 38 00 00 C8 */ li r0, 0xc8 +/* 800211D4 0001E134 38 81 00 0C */ addi r4, r1, 0xc +/* 800211D8 0001E138 98 E1 00 0C */ stb r7, 0xc(r1) +/* 800211DC 0001E13C 38 A1 00 08 */ addi r5, r1, 8 +/* 800211E0 0001E140 98 E1 00 0D */ stb r7, 0xd(r1) +/* 800211E4 0001E144 98 E1 00 0E */ stb r7, 0xe(r1) +/* 800211E8 0001E148 98 E1 00 0F */ stb r7, 0xf(r1) +/* 800211EC 0001E14C 98 C1 00 08 */ stb r6, 8(r1) +/* 800211F0 0001E150 98 C1 00 09 */ stb r6, 9(r1) +/* 800211F4 0001E154 98 C1 00 0A */ stb r6, 0xa(r1) +/* 800211F8 0001E158 98 01 00 0B */ stb r0, 0xb(r1) +/* 800211FC 0001E15C 48 2A 54 01 */ bl SetColors__14CGuiTableGroupCFRC6CColorRC6CColor +/* 80021200 0001E160 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80021204 0001E164 7C 08 03 A6 */ mtlr r0 +/* 80021208 0001E168 38 21 00 10 */ addi r1, r1, 0x10 +/* 8002120C 0001E16C 4E 80 00 20 */ blr + +.global DoSelectionChange__14SFrontEndFrameFPC14CGuiTableGroup +DoSelectionChange__14SFrontEndFrameFPC14CGuiTableGroup: +/* 80021210 0001E170 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80021214 0001E174 7C 08 02 A6 */ mflr r0 +/* 80021218 0001E178 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 8002121C 0001E17C 38 A0 00 7F */ li r5, 0x7f +/* 80021220 0001E180 90 01 00 24 */ stw r0, 0x24(r1) +/* 80021224 0001E184 38 C0 00 40 */ li r6, 0x40 +/* 80021228 0001E188 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8002122C 0001E18C 38 E0 00 00 */ li r7, 0 +/* 80021230 0001E190 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80021234 0001E194 7C 9F 23 78 */ mr r31, r4 +/* 80021238 0001E198 38 80 04 45 */ li r4, 0x445 +/* 8002123C 0001E19C 39 20 00 00 */ li r9, 0 +/* 80021240 0001E1A0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80021244 0001E1A4 7C 7E 1B 78 */ mr r30, r3 +/* 80021248 0001E1A8 38 61 00 08 */ addi r3, r1, 8 +/* 8002124C 0001E1AC 48 2C 8B 29 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80021250 0001E1B0 7F C3 F3 78 */ mr r3, r30 +/* 80021254 0001E1B4 7F E4 FB 78 */ mr r4, r31 +/* 80021258 0001E1B8 4B FF FF 61 */ bl HandleActiveChange__14SFrontEndFrameFPC14CGuiTableGroup +/* 8002125C 0001E1BC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80021260 0001E1C0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80021264 0001E1C4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80021268 0001E1C8 7C 08 03 A6 */ mtlr r0 +/* 8002126C 0001E1CC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80021270 0001E1D0 4E 80 00 20 */ blr + +.global DoAdvance__14SFrontEndFrameFPC14CGuiTableGroup +DoAdvance__14SFrontEndFrameFPC14CGuiTableGroup: +/* 80021274 0001E1D4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80021278 0001E1D8 7C 08 02 A6 */ mflr r0 +/* 8002127C 0001E1DC 90 01 00 24 */ stw r0, 0x24(r1) +/* 80021280 0001E1E0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80021284 0001E1E4 7C 7F 1B 78 */ mr r31, r3 +/* 80021288 0001E1E8 80 63 00 18 */ lwz r3, 0x18(r3) +/* 8002128C 0001E1EC 80 03 00 C4 */ lwz r0, 0xc4(r3) +/* 80021290 0001E1F0 2C 00 00 02 */ cmpwi r0, 2 +/* 80021294 0001E1F4 41 82 00 B0 */ beq lbl_80021344 +/* 80021298 0001E1F8 40 80 00 14 */ bge lbl_800212AC +/* 8002129C 0001E1FC 2C 00 00 00 */ cmpwi r0, 0 +/* 800212A0 0001E200 41 82 00 18 */ beq lbl_800212B8 +/* 800212A4 0001E204 40 80 00 94 */ bge lbl_80021338 +/* 800212A8 0001E208 48 00 00 B8 */ b lbl_80021360 +lbl_800212AC: +/* 800212AC 0001E20C 2C 00 00 04 */ cmpwi r0, 4 +/* 800212B0 0001E210 40 80 00 B0 */ bge lbl_80021360 +/* 800212B4 0001E214 48 00 00 A0 */ b lbl_80021354 +lbl_800212B8: +/* 800212B8 0001E218 80 1F 00 00 */ lwz r0, 0(r31) +/* 800212BC 0001E21C 3C 60 80 3D */ lis r3, lbl_803CC5D0@ha +/* 800212C0 0001E220 38 63 C5 D0 */ addi r3, r3, lbl_803CC5D0@l +/* 800212C4 0001E224 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 800212C8 0001E228 54 00 10 3A */ slwi r0, r0, 2 +/* 800212CC 0001E22C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 800212D0 0001E230 7C 03 02 AE */ lhax r0, r3, r0 +/* 800212D4 0001E234 38 61 00 0C */ addi r3, r1, 0xc +/* 800212D8 0001E238 38 A0 00 7F */ li r5, 0x7f +/* 800212DC 0001E23C 38 C0 00 40 */ li r6, 0x40 +/* 800212E0 0001E240 54 04 04 3E */ clrlwi r4, r0, 0x10 +/* 800212E4 0001E244 38 E0 00 00 */ li r7, 0 +/* 800212E8 0001E248 39 20 00 00 */ li r9, 0 +/* 800212EC 0001E24C 48 2C 8A 89 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 800212F0 0001E250 80 1F 00 00 */ lwz r0, 0(r31) +/* 800212F4 0001E254 3C 60 80 3D */ lis r3, lbl_803CC5D0@ha +/* 800212F8 0001E258 38 63 C5 D0 */ addi r3, r3, lbl_803CC5D0@l +/* 800212FC 0001E25C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80021300 0001E260 54 00 10 3A */ slwi r0, r0, 2 +/* 80021304 0001E264 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80021308 0001E268 7C 83 02 14 */ add r4, r3, r0 +/* 8002130C 0001E26C 38 61 00 08 */ addi r3, r1, 8 +/* 80021310 0001E270 A8 04 00 02 */ lha r0, 2(r4) +/* 80021314 0001E274 38 A0 00 7F */ li r5, 0x7f +/* 80021318 0001E278 38 C0 00 40 */ li r6, 0x40 +/* 8002131C 0001E27C 38 E0 00 00 */ li r7, 0 +/* 80021320 0001E280 54 04 04 3E */ clrlwi r4, r0, 0x10 +/* 80021324 0001E284 39 20 00 00 */ li r9, 0 +/* 80021328 0001E288 48 2C 8A 4D */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 8002132C 0001E28C 38 00 00 01 */ li r0, 1 +/* 80021330 0001E290 90 1F 00 04 */ stw r0, 4(r31) +/* 80021334 0001E294 48 00 00 2C */ b lbl_80021360 +lbl_80021338: +/* 80021338 0001E298 38 00 00 02 */ li r0, 2 +/* 8002133C 0001E29C 90 1F 00 04 */ stw r0, 4(r31) +/* 80021340 0001E2A0 48 00 00 20 */ b lbl_80021360 +lbl_80021344: +/* 80021344 0001E2A4 48 00 1C 11 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 80021348 0001E2A8 38 00 00 03 */ li r0, 3 +/* 8002134C 0001E2AC 90 1F 00 04 */ stw r0, 4(r31) +/* 80021350 0001E2B0 48 00 00 10 */ b lbl_80021360 +lbl_80021354: +/* 80021354 0001E2B4 48 00 1C 01 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 80021358 0001E2B8 38 00 00 04 */ li r0, 4 +/* 8002135C 0001E2BC 90 1F 00 04 */ stw r0, 4(r31) +lbl_80021360: +/* 80021360 0001E2C0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80021364 0001E2C4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80021368 0001E2C8 7C 08 03 A6 */ mtlr r0 +/* 8002136C 0001E2CC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80021370 0001E2D0 4E 80 00 20 */ blr + +.global Draw__14SFrontEndFrameFv +Draw__14SFrontEndFrameFv: +/* 80021374 0001E2D4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80021378 0001E2D8 7C 08 02 A6 */ mflr r0 +/* 8002137C 0001E2DC 3C 80 80 5A */ lis r4, lbl_8059FD08@ha +/* 80021380 0001E2E0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80021384 0001E2E4 38 84 FD 08 */ addi r4, r4, lbl_8059FD08@l +/* 80021388 0001E2E8 80 63 00 14 */ lwz r3, 0x14(r3) +/* 8002138C 0001E2EC 48 2A 13 A9 */ bl Draw__9CGuiFrameCFRC19CGuiWidgetDrawParms +/* 80021390 0001E2F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80021394 0001E2F4 7C 08 03 A6 */ mtlr r0 +/* 80021398 0001E2F8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8002139C 0001E2FC 4E 80 00 20 */ blr + +.global ProcessUserInput__14SFrontEndFrameFRC11CFinalInput +ProcessUserInput__14SFrontEndFrameFRC11CFinalInput: +/* 800213A0 0001E300 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800213A4 0001E304 7C 08 02 A6 */ mflr r0 +/* 800213A8 0001E308 90 01 00 14 */ stw r0, 0x14(r1) +/* 800213AC 0001E30C 38 00 00 00 */ li r0, 0 +/* 800213B0 0001E310 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800213B4 0001E314 7C 7F 1B 78 */ mr r31, r3 +/* 800213B8 0001E318 90 03 00 04 */ stw r0, 4(r3) +/* 800213BC 0001E31C 80 63 00 14 */ lwz r3, 0x14(r3) +/* 800213C0 0001E320 48 2A 12 99 */ bl ProcessUserInput__9CGuiFrameFRC11CFinalInput +/* 800213C4 0001E324 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800213C8 0001E328 80 7F 00 04 */ lwz r3, 4(r31) +/* 800213CC 0001E32C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 800213D0 0001E330 7C 08 03 A6 */ mtlr r0 +/* 800213D4 0001E334 38 21 00 10 */ addi r1, r1, 0x10 +/* 800213D8 0001E338 4E 80 00 20 */ blr + +.global Update__14SFrontEndFrameFf +Update__14SFrontEndFrameFf: +/* 800213DC 0001E33C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 800213E0 0001E340 7C 08 02 A6 */ mflr r0 +/* 800213E4 0001E344 90 01 00 44 */ stw r0, 0x44(r1) +/* 800213E8 0001E348 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 800213EC 0001E34C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 800213F0 0001E350 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 800213F4 0001E354 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 800213F8 0001E358 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 800213FC 0001E35C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80021400 0001E360 7C 7E 1B 78 */ mr r30, r3 +/* 80021404 0001E364 FF C0 08 90 */ fmr f30, f1 +/* 80021408 0001E368 80 63 00 18 */ lwz r3, 0x18(r3) +/* 8002140C 0001E36C 38 80 00 03 */ li r4, 3 +/* 80021410 0001E370 81 83 00 00 */ lwz r12, 0(r3) +/* 80021414 0001E374 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80021418 0001E378 7D 89 03 A6 */ mtctr r12 +/* 8002141C 0001E37C 4E 80 04 21 */ bctrl +/* 80021420 0001E380 7C 7F 1B 78 */ mr r31, r3 +/* 80021424 0001E384 48 27 9D B1 */ bl SlideShowGalleryFlags__10CSlideShowFv +/* 80021428 0001E388 28 03 00 00 */ cmplwi r3, 0 +/* 8002142C 0001E38C 41 82 00 30 */ beq lbl_8002145C +/* 80021430 0001E390 88 1F 00 B6 */ lbz r0, 0xb6(r31) +/* 80021434 0001E394 38 60 00 01 */ li r3, 1 +/* 80021438 0001E398 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 8002143C 0001E39C 98 1F 00 B6 */ stb r0, 0xb6(r31) +/* 80021440 0001E3A0 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 80021444 0001E3A4 3B E3 00 D4 */ addi r31, r3, 0xd4 +/* 80021448 0001E3A8 48 32 8B 65 */ bl White__6CColorFv +/* 8002144C 0001E3AC 7C 64 1B 78 */ mr r4, r3 +/* 80021450 0001E3B0 7F E3 FB 78 */ mr r3, r31 +/* 80021454 0001E3B4 48 2A 82 15 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +/* 80021458 0001E3B8 48 00 00 44 */ b lbl_8002149C +lbl_8002145C: +/* 8002145C 0001E3BC 88 1F 00 B6 */ lbz r0, 0xb6(r31) +/* 80021460 0001E3C0 38 60 00 00 */ li r3, 0 +/* 80021464 0001E3C4 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 80021468 0001E3C8 98 1F 00 B6 */ stb r0, 0xb6(r31) +/* 8002146C 0001E3CC 80 7E 00 24 */ lwz r3, 0x24(r30) +/* 80021470 0001E3D0 3B E3 00 D4 */ addi r31, r3, 0xd4 +/* 80021474 0001E3D4 48 32 8B 31 */ bl Grey__6CColorFv +/* 80021478 0001E3D8 C3 E2 82 DC */ lfs f31, lbl_805A9FFC@sda21(r2) +/* 8002147C 0001E3DC F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80021480 0001E3E0 38 81 00 0C */ addi r4, r1, 0xc +/* 80021484 0001E3E4 80 A3 00 00 */ lwz r5, 0(r3) +/* 80021488 0001E3E8 7F E3 FB 78 */ mr r3, r31 +/* 8002148C 0001E3EC 88 01 00 08 */ lbz r0, 8(r1) +/* 80021490 0001E3F0 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 +/* 80021494 0001E3F4 90 01 00 0C */ stw r0, 0xc(r1) +/* 80021498 0001E3F8 48 2A 81 D1 */ bl SetFontColor__15CGuiTextSupportFRC6CColor +lbl_8002149C: +/* 8002149C 0001E3FC FC 20 F0 90 */ fmr f1, f30 +/* 800214A0 0001E400 80 7E 00 14 */ lwz r3, 0x14(r30) +/* 800214A4 0001E404 48 2A 12 61 */ bl Update__9CGuiFrameFf +/* 800214A8 0001E408 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 800214AC 0001E40C CB E1 00 30 */ lfd f31, 0x30(r1) +/* 800214B0 0001E410 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 800214B4 0001E414 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 800214B8 0001E418 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 800214BC 0001E41C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 800214C0 0001E420 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 800214C4 0001E424 7C 08 03 A6 */ mtlr r0 +/* 800214C8 0001E428 38 21 00 40 */ addi r1, r1, 0x40 +/* 800214CC 0001E42C 4E 80 00 20 */ blr + +.global FinishedLoading__14SFrontEndFrameFv +FinishedLoading__14SFrontEndFrameFv: +/* 800214D0 0001E430 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 800214D4 0001E434 7C 08 02 A6 */ mflr r0 +/* 800214D8 0001E438 3C A0 80 3E */ lis r5, lbl_803D9820@ha +/* 800214DC 0001E43C 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 800214E0 0001E440 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 800214E4 0001E444 3B E5 98 20 */ addi r31, r5, lbl_803D9820@l +/* 800214E8 0001E448 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 800214EC 0001E44C 7C 7E 1B 78 */ mr r30, r3 +/* 800214F0 0001E450 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800214F4 0001E454 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 800214F8 0001E458 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 800214FC 0001E45C 38 84 03 5C */ addi r4, r4, 0x35c +/* 80021500 0001E460 80 7E 00 14 */ lwz r3, 0x14(r30) +/* 80021504 0001E464 48 2A 0C 51 */ bl FindWidget__9CGuiFrameCFPCc +/* 80021508 0001E468 90 7E 00 18 */ stw r3, 0x18(r30) +/* 8002150C 0001E46C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80021510 0001E470 38 A3 C6 44 */ addi r5, r3, lbl_803CC644@l +/* 80021514 0001E474 38 61 00 10 */ addi r3, r1, 0x10 +/* 80021518 0001E478 80 9E 00 14 */ lwz r4, 0x14(r30) +/* 8002151C 0001E47C 38 A5 02 75 */ addi r5, r5, 0x275 +/* 80021520 0001E480 48 00 18 D9 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80021524 0001E484 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80021528 0001E488 38 80 00 25 */ li r4, 0x25 +/* 8002152C 0001E48C 90 1E 00 1C */ stw r0, 0x1c(r30) +/* 80021530 0001E490 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80021534 0001E494 90 1E 00 20 */ stw r0, 0x20(r30) +/* 80021538 0001E498 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8002153C 0001E49C 48 33 51 C1 */ bl GetString__12CStringTableCFi +/* 80021540 0001E4A0 7C 64 1B 78 */ mr r4, r3 +/* 80021544 0001E4A4 38 7E 00 1C */ addi r3, r30, 0x1c +/* 80021548 0001E4A8 48 00 18 21 */ bl SetPairText__12SGuiTextPairFRCQ24rstl7wstring +/* 8002154C 0001E4AC 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80021550 0001E4B0 80 9E 00 14 */ lwz r4, 0x14(r30) +/* 80021554 0001E4B4 38 A3 C6 44 */ addi r5, r3, lbl_803CC644@l +/* 80021558 0001E4B8 38 61 00 08 */ addi r3, r1, 8 +/* 8002155C 0001E4BC 38 A5 02 82 */ addi r5, r5, 0x282 +/* 80021560 0001E4C0 48 00 18 99 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80021564 0001E4C4 80 01 00 08 */ lwz r0, 8(r1) +/* 80021568 0001E4C8 38 80 00 60 */ li r4, 0x60 +/* 8002156C 0001E4CC 90 1E 00 24 */ stw r0, 0x24(r30) +/* 80021570 0001E4D0 80 01 00 0C */ lwz r0, 0xc(r1) +/* 80021574 0001E4D4 90 1E 00 28 */ stw r0, 0x28(r30) +/* 80021578 0001E4D8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 8002157C 0001E4DC 48 33 51 81 */ bl GetString__12CStringTableCFi +/* 80021580 0001E4E0 7C 64 1B 78 */ mr r4, r3 +/* 80021584 0001E4E4 38 7E 00 24 */ addi r3, r30, 0x24 +/* 80021588 0001E4E8 48 00 17 E1 */ bl SetPairText__12SGuiTextPairFRCQ24rstl7wstring +/* 8002158C 0001E4EC 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80021590 0001E4F0 38 80 00 43 */ li r4, 0x43 +/* 80021594 0001E4F4 48 33 51 69 */ bl GetString__12CStringTableCFi +/* 80021598 0001E4F8 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 8002159C 0001E4FC 7C 65 1B 78 */ mr r5, r3 +/* 800215A0 0001E500 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 800215A4 0001E504 80 7E 00 14 */ lwz r3, 0x14(r30) +/* 800215A8 0001E508 38 84 03 70 */ addi r4, r4, 0x370 +/* 800215AC 0001E50C 48 00 18 D9 */ bl FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +/* 800215B0 0001E510 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 800215B4 0001E514 38 80 00 5E */ li r4, 0x5e +/* 800215B8 0001E518 48 33 51 45 */ bl GetString__12CStringTableCFi +/* 800215BC 0001E51C 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 800215C0 0001E520 7C 65 1B 78 */ mr r5, r3 +/* 800215C4 0001E524 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 800215C8 0001E528 80 7E 00 14 */ lwz r3, 0x14(r30) +/* 800215CC 0001E52C 38 84 03 7F */ addi r4, r4, 0x37f +/* 800215D0 0001E530 48 00 18 B5 */ bl FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +/* 800215D4 0001E534 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 800215D8 0001E538 38 80 00 62 */ li r4, 0x62 +/* 800215DC 0001E53C 48 33 51 21 */ bl GetString__12CStringTableCFi +/* 800215E0 0001E540 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 800215E4 0001E544 7C 65 1B 78 */ mr r5, r3 +/* 800215E8 0001E548 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 800215EC 0001E54C 80 7E 00 14 */ lwz r3, 0x14(r30) +/* 800215F0 0001E550 38 84 01 E5 */ addi r4, r4, 0x1e5 +/* 800215F4 0001E554 48 00 18 91 */ bl FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +/* 800215F8 0001E558 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 800215FC 0001E55C 80 7E 00 14 */ lwz r3, 0x14(r30) +/* 80021600 0001E560 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 80021604 0001E564 38 84 01 F4 */ addi r4, r4, 0x1f4 +/* 80021608 0001E568 48 2A 0B 4D */ bl FindWidget__9CGuiFrameCFPCc +/* 8002160C 0001E56C 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80021610 0001E570 41 82 00 34 */ beq lbl_80021644 +/* 80021614 0001E574 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80021618 0001E578 38 80 00 55 */ li r4, 0x55 +/* 8002161C 0001E57C 48 33 50 E1 */ bl GetString__12CStringTableCFi +/* 80021620 0001E580 7C 64 1B 78 */ mr r4, r3 +/* 80021624 0001E584 38 61 00 60 */ addi r3, r1, 0x60 +/* 80021628 0001E588 4B FF 43 C9 */ bl wstring_l__4rstlFPCw +/* 8002162C 0001E58C 38 7D 00 D4 */ addi r3, r29, 0xd4 +/* 80021630 0001E590 38 81 00 60 */ addi r4, r1, 0x60 +/* 80021634 0001E594 38 A0 00 00 */ li r5, 0 +/* 80021638 0001E598 48 2A 82 4D */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 8002163C 0001E59C 38 61 00 60 */ addi r3, r1, 0x60 +/* 80021640 0001E5A0 48 31 BA F5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80021644: +/* 80021644 0001E5A4 80 FF 00 00 */ lwz r7, 0(r31) +/* 80021648 0001E5A8 38 61 00 30 */ addi r3, r1, 0x30 +/* 8002164C 0001E5AC 80 DF 00 04 */ lwz r6, 4(r31) +/* 80021650 0001E5B0 38 81 00 54 */ addi r4, r1, 0x54 +/* 80021654 0001E5B4 80 1F 00 08 */ lwz r0, 8(r31) +/* 80021658 0001E5B8 38 A0 00 0C */ li r5, 0xc +/* 8002165C 0001E5BC 90 E1 00 54 */ stw r7, 0x54(r1) +/* 80021660 0001E5C0 90 C1 00 58 */ stw r6, 0x58(r1) +/* 80021664 0001E5C4 90 01 00 5C */ stw r0, 0x5c(r1) +/* 80021668 0001E5C8 4B FE 1E 29 */ bl memcpy +/* 8002166C 0001E5CC 3C 60 80 02 */ lis r3, sub_800217cc@ha +/* 80021670 0001E5D0 93 C1 00 A4 */ stw r30, 0xa4(r1) +/* 80021674 0001E5D4 38 03 17 CC */ addi r0, r3, sub_800217cc@l +/* 80021678 0001E5D8 38 61 00 A8 */ addi r3, r1, 0xa8 +/* 8002167C 0001E5DC 90 01 00 A0 */ stw r0, 0xa0(r1) +/* 80021680 0001E5E0 38 81 00 30 */ addi r4, r1, 0x30 +/* 80021684 0001E5E4 38 A0 00 0C */ li r5, 0xc +/* 80021688 0001E5E8 4B FE 1E 09 */ bl memcpy +/* 8002168C 0001E5EC 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 80021690 0001E5F0 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 80021694 0001E5F4 48 2A 51 C5 */ bl "SetMenuAdvanceCallback__14CGuiTableGroupFRC29TFunctor1" +/* 80021698 0001E5F8 80 FF 00 0C */ lwz r7, 0xc(r31) +/* 8002169C 0001E5FC 38 61 00 24 */ addi r3, r1, 0x24 +/* 800216A0 0001E600 80 DF 00 10 */ lwz r6, 0x10(r31) +/* 800216A4 0001E604 38 81 00 48 */ addi r4, r1, 0x48 +/* 800216A8 0001E608 80 1F 00 14 */ lwz r0, 0x14(r31) +/* 800216AC 0001E60C 38 A0 00 0C */ li r5, 0xc +/* 800216B0 0001E610 90 E1 00 48 */ stw r7, 0x48(r1) +/* 800216B4 0001E614 90 C1 00 4C */ stw r6, 0x4c(r1) +/* 800216B8 0001E618 90 01 00 50 */ stw r0, 0x50(r1) +/* 800216BC 0001E61C 4B FE 1D D5 */ bl memcpy +/* 800216C0 0001E620 3C 60 80 02 */ lis r3, sub_80021768@ha +/* 800216C4 0001E624 93 C1 00 8C */ stw r30, 0x8c(r1) +/* 800216C8 0001E628 38 03 17 68 */ addi r0, r3, sub_80021768@l +/* 800216CC 0001E62C 38 61 00 90 */ addi r3, r1, 0x90 +/* 800216D0 0001E630 90 01 00 88 */ stw r0, 0x88(r1) +/* 800216D4 0001E634 38 81 00 24 */ addi r4, r1, 0x24 +/* 800216D8 0001E638 38 A0 00 0C */ li r5, 0xc +/* 800216DC 0001E63C 4B FE 1D B5 */ bl memcpy +/* 800216E0 0001E640 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 800216E4 0001E644 38 81 00 88 */ addi r4, r1, 0x88 +/* 800216E8 0001E648 48 2A 51 09 */ bl "SetMenuSelectionChangeCallback__14CGuiTableGroupFRC35TFunctor3" +/* 800216EC 0001E64C 80 FF 00 18 */ lwz r7, 0x18(r31) +/* 800216F0 0001E650 38 61 00 18 */ addi r3, r1, 0x18 +/* 800216F4 0001E654 80 DF 00 1C */ lwz r6, 0x1c(r31) +/* 800216F8 0001E658 38 81 00 3C */ addi r4, r1, 0x3c +/* 800216FC 0001E65C 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 80021700 0001E660 38 A0 00 0C */ li r5, 0xc +/* 80021704 0001E664 90 E1 00 3C */ stw r7, 0x3c(r1) +/* 80021708 0001E668 90 C1 00 40 */ stw r6, 0x40(r1) +/* 8002170C 0001E66C 90 01 00 44 */ stw r0, 0x44(r1) +/* 80021710 0001E670 4B FE 1D 81 */ bl memcpy +/* 80021714 0001E674 3C 60 80 02 */ lis r3, sub_800217cc@ha +/* 80021718 0001E678 93 C1 00 74 */ stw r30, 0x74(r1) +/* 8002171C 0001E67C 38 03 17 CC */ addi r0, r3, sub_800217cc@l +/* 80021720 0001E680 38 61 00 78 */ addi r3, r1, 0x78 +/* 80021724 0001E684 90 01 00 70 */ stw r0, 0x70(r1) +/* 80021728 0001E688 38 81 00 18 */ addi r4, r1, 0x18 +/* 8002172C 0001E68C 38 A0 00 0C */ li r5, 0xc +/* 80021730 0001E690 4B FE 1D 61 */ bl memcpy +/* 80021734 0001E694 80 7E 00 18 */ lwz r3, 0x18(r30) +/* 80021738 0001E698 38 81 00 70 */ addi r4, r1, 0x70 +/* 8002173C 0001E69C 48 2A 50 E9 */ bl "SetMenuCancelCallback__14CGuiTableGroupFRC29TFunctor1" +/* 80021740 0001E6A0 80 9E 00 18 */ lwz r4, 0x18(r30) +/* 80021744 0001E6A4 7F C3 F3 78 */ mr r3, r30 +/* 80021748 0001E6A8 4B FF FA 71 */ bl HandleActiveChange__14SFrontEndFrameFPC14CGuiTableGroup +/* 8002174C 0001E6AC 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 80021750 0001E6B0 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80021754 0001E6B4 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 80021758 0001E6B8 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 8002175C 0001E6BC 7C 08 03 A6 */ mtlr r0 +/* 80021760 0001E6C0 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 80021764 0001E6C4 4E 80 00 20 */ blr + +.global sub_80021768 +sub_80021768: +/* 80021768 0001E6C8 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8002176C 0001E6CC 7C 08 02 A6 */ mflr r0 +/* 80021770 0001E6D0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80021774 0001E6D4 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80021778 0001E6D8 7C DF 33 78 */ mr r31, r6 +/* 8002177C 0001E6DC 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80021780 0001E6E0 7C BE 2B 78 */ mr r30, r5 +/* 80021784 0001E6E4 38 A0 00 0C */ li r5, 0xc +/* 80021788 0001E6E8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8002178C 0001E6EC 7C 7D 1B 78 */ mr r29, r3 +/* 80021790 0001E6F0 38 61 00 08 */ addi r3, r1, 8 +/* 80021794 0001E6F4 4B FE 1C FD */ bl memcpy +/* 80021798 0001E6F8 7F A3 EB 78 */ mr r3, r29 +/* 8002179C 0001E6FC 7F C4 F3 78 */ mr r4, r30 +/* 800217A0 0001E700 7F E5 FB 78 */ mr r5, r31 +/* 800217A4 0001E704 39 81 00 08 */ addi r12, r1, 8 +/* 800217A8 0001E708 48 36 81 85 */ bl __ptmf_scall +/* 800217AC 0001E70C 60 00 00 00 */ nop +/* 800217B0 0001E710 80 01 00 34 */ lwz r0, 0x34(r1) +/* 800217B4 0001E714 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 800217B8 0001E718 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 800217BC 0001E71C 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 800217C0 0001E720 7C 08 03 A6 */ mtlr r0 +/* 800217C4 0001E724 38 21 00 30 */ addi r1, r1, 0x30 +/* 800217C8 0001E728 4E 80 00 20 */ blr + +.global sub_800217cc +sub_800217cc: +/* 800217CC 0001E72C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 800217D0 0001E730 7C 08 02 A6 */ mflr r0 +/* 800217D4 0001E734 90 01 00 24 */ stw r0, 0x24(r1) +/* 800217D8 0001E738 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 800217DC 0001E73C 7C BF 2B 78 */ mr r31, r5 +/* 800217E0 0001E740 38 A0 00 0C */ li r5, 0xc +/* 800217E4 0001E744 93 C1 00 18 */ stw r30, 0x18(r1) +/* 800217E8 0001E748 7C 7E 1B 78 */ mr r30, r3 +/* 800217EC 0001E74C 38 61 00 08 */ addi r3, r1, 8 +/* 800217F0 0001E750 4B FE 1C A1 */ bl memcpy +/* 800217F4 0001E754 7F C3 F3 78 */ mr r3, r30 +/* 800217F8 0001E758 7F E4 FB 78 */ mr r4, r31 +/* 800217FC 0001E75C 39 81 00 08 */ addi r12, r1, 8 +/* 80021800 0001E760 48 36 81 2D */ bl __ptmf_scall +/* 80021804 0001E764 60 00 00 00 */ nop +/* 80021808 0001E768 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8002180C 0001E76C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80021810 0001E770 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80021814 0001E774 7C 08 03 A6 */ mtlr r0 +/* 80021818 0001E778 38 21 00 20 */ addi r1, r1, 0x20 +/* 8002181C 0001E77C 4E 80 00 20 */ blr + +.global PumpLoad__14SFrontEndFrameFv +PumpLoad__14SFrontEndFrameFv: +/* 80021820 0001E780 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80021824 0001E784 7C 08 02 A6 */ mflr r0 +/* 80021828 0001E788 90 01 00 14 */ stw r0, 0x14(r1) +/* 8002182C 0001E78C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80021830 0001E790 93 C1 00 08 */ stw r30, 8(r1) +/* 80021834 0001E794 7C 7E 1B 78 */ mr r30, r3 +/* 80021838 0001E798 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8002183C 0001E79C 28 00 00 00 */ cmplwi r0, 0 +/* 80021840 0001E7A0 41 82 00 0C */ beq lbl_8002184C +/* 80021844 0001E7A4 38 60 00 01 */ li r3, 1 +/* 80021848 0001E7A8 48 00 00 84 */ b lbl_800218CC +lbl_8002184C: +/* 8002184C 0001E7AC 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80021850 0001E7B0 28 00 00 00 */ cmplwi r0, 0 +/* 80021854 0001E7B4 41 82 00 0C */ beq lbl_80021860 +/* 80021858 0001E7B8 38 60 00 01 */ li r3, 1 +/* 8002185C 0001E7BC 48 00 00 3C */ b lbl_80021898 +lbl_80021860: +/* 80021860 0001E7C0 88 1E 00 0C */ lbz r0, 0xc(r30) +/* 80021864 0001E7C4 28 00 00 00 */ cmplwi r0, 0 +/* 80021868 0001E7C8 41 82 00 2C */ beq lbl_80021894 +/* 8002186C 0001E7CC 80 7E 00 08 */ lwz r3, 8(r30) +/* 80021870 0001E7D0 80 03 00 10 */ lwz r0, 0x10(r3) +/* 80021874 0001E7D4 28 00 00 00 */ cmplwi r0, 0 +/* 80021878 0001E7D8 41 82 00 1C */ beq lbl_80021894 +/* 8002187C 0001E7DC 38 7E 00 08 */ addi r3, r30, 8 +/* 80021880 0001E7E0 48 31 F5 8D */ bl GetObj__6CTokenFv +/* 80021884 0001E7E4 80 03 00 04 */ lwz r0, 4(r3) +/* 80021888 0001E7E8 38 60 00 01 */ li r3, 1 +/* 8002188C 0001E7EC 90 1E 00 10 */ stw r0, 0x10(r30) +/* 80021890 0001E7F0 48 00 00 08 */ b lbl_80021898 +lbl_80021894: +/* 80021894 0001E7F4 38 60 00 00 */ li r3, 0 +lbl_80021898: +/* 80021898 0001E7F8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8002189C 0001E7FC 41 82 00 2C */ beq lbl_800218C8 +/* 800218A0 0001E800 83 FE 00 10 */ lwz r31, 0x10(r30) +/* 800218A4 0001E804 7F E3 FB 78 */ mr r3, r31 +/* 800218A8 0001E808 48 2A 0C A9 */ bl GetIsFinishedLoading__9CGuiFrameCFv +/* 800218AC 0001E80C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800218B0 0001E810 41 82 00 18 */ beq lbl_800218C8 +/* 800218B4 0001E814 93 FE 00 14 */ stw r31, 0x14(r30) +/* 800218B8 0001E818 7F C3 F3 78 */ mr r3, r30 +/* 800218BC 0001E81C 4B FF FC 15 */ bl FinishedLoading__14SFrontEndFrameFv +/* 800218C0 0001E820 38 60 00 01 */ li r3, 1 +/* 800218C4 0001E824 48 00 00 08 */ b lbl_800218CC +lbl_800218C8: +/* 800218C8 0001E828 38 60 00 00 */ li r3, 0 +lbl_800218CC: +/* 800218CC 0001E82C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800218D0 0001E830 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 800218D4 0001E834 83 C1 00 08 */ lwz r30, 8(r1) +/* 800218D8 0001E838 7C 08 03 A6 */ mtlr r0 +/* 800218DC 0001E83C 38 21 00 10 */ addi r1, r1, 0x10 +/* 800218E0 0001E840 4E 80 00 20 */ blr + +.global __dt__14SFrontEndFrameFv +__dt__14SFrontEndFrameFv: +/* 800218E4 0001E844 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800218E8 0001E848 7C 08 02 A6 */ mflr r0 +/* 800218EC 0001E84C 90 01 00 14 */ stw r0, 0x14(r1) +/* 800218F0 0001E850 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800218F4 0001E854 7C 9F 23 78 */ mr r31, r4 +/* 800218F8 0001E858 93 C1 00 08 */ stw r30, 8(r1) +/* 800218FC 0001E85C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80021900 0001E860 41 82 00 30 */ beq lbl_80021930 +/* 80021904 0001E864 34 1E 00 08 */ addic. r0, r30, 8 +/* 80021908 0001E868 41 82 00 18 */ beq lbl_80021920 +/* 8002190C 0001E86C 34 1E 00 08 */ addic. r0, r30, 8 +/* 80021910 0001E870 41 82 00 10 */ beq lbl_80021920 +/* 80021914 0001E874 38 7E 00 08 */ addi r3, r30, 8 +/* 80021918 0001E878 38 80 00 00 */ li r4, 0 +/* 8002191C 0001E87C 48 31 F5 25 */ bl __dt__6CTokenFv +lbl_80021920: +/* 80021920 0001E880 7F E0 07 35 */ extsh. r0, r31 +/* 80021924 0001E884 40 81 00 0C */ ble lbl_80021930 +/* 80021928 0001E888 7F C3 F3 78 */ mr r3, r30 +/* 8002192C 0001E88C 48 2F 40 05 */ bl Free__7CMemoryFPCv +lbl_80021930: +/* 80021930 0001E890 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80021934 0001E894 7F C3 F3 78 */ mr r3, r30 +/* 80021938 0001E898 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8002193C 0001E89C 83 C1 00 08 */ lwz r30, 8(r1) +/* 80021940 0001E8A0 7C 08 03 A6 */ mtlr r0 +/* 80021944 0001E8A4 38 21 00 10 */ addi r1, r1, 0x10 +/* 80021948 0001E8A8 4E 80 00 20 */ blr + +.global __ct__14SFrontEndFrameFv +__ct__14SFrontEndFrameFv: +/* 8002194C 0001E8AC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80021950 0001E8B0 7C 08 02 A6 */ mflr r0 +/* 80021954 0001E8B4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80021958 0001E8B8 38 00 00 00 */ li r0, 0 +/* 8002195C 0001E8BC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80021960 0001E8C0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80021964 0001E8C4 7C 7E 1B 78 */ mr r30, r3 +/* 80021968 0001E8C8 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8002196C 0001E8CC 90 9E 00 00 */ stw r4, 0(r30) +/* 80021970 0001E8D0 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80021974 0001E8D4 38 A4 03 90 */ addi r5, r4, 0x390 +/* 80021978 0001E8D8 38 61 00 08 */ addi r3, r1, 8 +/* 8002197C 0001E8DC 90 1E 00 04 */ stw r0, 4(r30) +/* 80021980 0001E8E0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80021984 0001E8E4 81 84 00 00 */ lwz r12, 0(r4) +/* 80021988 0001E8E8 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8002198C 0001E8EC 7D 89 03 A6 */ mtctr r12 +/* 80021990 0001E8F0 4E 80 04 21 */ bctrl +/* 80021994 0001E8F4 3B FE 00 08 */ addi r31, r30, 8 +/* 80021998 0001E8F8 38 81 00 08 */ addi r4, r1, 8 +/* 8002199C 0001E8FC 7F E3 FB 78 */ mr r3, r31 +/* 800219A0 0001E900 48 31 F5 09 */ bl __ct__6CTokenFRC6CToken +/* 800219A4 0001E904 38 00 00 00 */ li r0, 0 +/* 800219A8 0001E908 38 61 00 08 */ addi r3, r1, 8 +/* 800219AC 0001E90C 90 1F 00 08 */ stw r0, 8(r31) +/* 800219B0 0001E910 38 80 FF FF */ li r4, -1 +/* 800219B4 0001E914 48 31 F4 8D */ bl __dt__6CTokenFv +/* 800219B8 0001E918 38 00 00 00 */ li r0, 0 +/* 800219BC 0001E91C 38 7E 00 1C */ addi r3, r30, 0x1c +/* 800219C0 0001E920 90 1E 00 14 */ stw r0, 0x14(r30) +/* 800219C4 0001E924 90 1E 00 18 */ stw r0, 0x18(r30) +/* 800219C8 0001E928 48 00 14 AD */ bl __ct__12SGuiTextPairFv +/* 800219CC 0001E92C 38 7E 00 24 */ addi r3, r30, 0x24 +/* 800219D0 0001E930 48 00 14 A5 */ bl __ct__12SGuiTextPairFv +/* 800219D4 0001E934 7F E3 FB 78 */ mr r3, r31 +/* 800219D8 0001E938 48 31 F3 AD */ bl Lock__6CTokenFv +/* 800219DC 0001E93C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 800219E0 0001E940 7F C3 F3 78 */ mr r3, r30 +/* 800219E4 0001E944 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 800219E8 0001E948 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 800219EC 0001E94C 7C 08 03 A6 */ mtlr r0 +/* 800219F0 0001E950 38 21 00 20 */ addi r1, r1, 0x20 +/* 800219F4 0001E954 4E 80 00 20 */ blr + +.global OnMessage__16CStateSetterFlowFv +OnMessage__16CStateSetterFlowFv: +/* 800219F8 0001E958 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800219FC 0001E95C 7C 08 02 A6 */ mflr r0 +/* 80021A00 0001E960 90 01 00 14 */ stw r0, 0x14(r1) +/* 80021A04 0001E964 80 04 00 04 */ lwz r0, 4(r4) +/* 80021A08 0001E968 2C 00 00 04 */ cmpwi r0, 4 +/* 80021A0C 0001E96C 41 82 00 08 */ beq lbl_80021A14 +/* 80021A10 0001E970 48 00 00 14 */ b lbl_80021A24 +lbl_80021A14: +/* 80021A14 0001E974 80 6D A0 78 */ lwz r3, gpMain@sda21(r13) +/* 80021A18 0001E978 4B FE 2B 79 */ bl RefreshGameState__5CMainFv +/* 80021A1C 0001E97C 38 60 00 02 */ li r3, 2 +/* 80021A20 0001E980 48 00 00 08 */ b lbl_80021A28 +lbl_80021A24: +/* 80021A24 0001E984 38 60 00 01 */ li r3, 1 +lbl_80021A28: +/* 80021A28 0001E988 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80021A2C 0001E98C 7C 08 03 A6 */ mtlr r0 +/* 80021A30 0001E990 38 21 00 10 */ addi r1, r1, 0x10 +/* 80021A34 0001E994 4E 80 00 20 */ blr + +.global __dt__16CStateSetterFlowFv +__dt__16CStateSetterFlowFv: +/* 80021A38 0001E998 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80021A3C 0001E99C 7C 08 02 A6 */ mflr r0 +/* 80021A40 0001E9A0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80021A44 0001E9A4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80021A48 0001E9A8 7C 9F 23 78 */ mr r31, r4 +/* 80021A4C 0001E9AC 93 C1 00 08 */ stw r30, 8(r1) +/* 80021A50 0001E9B0 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80021A54 0001E9B4 41 82 00 28 */ beq lbl_80021A7C +/* 80021A58 0001E9B8 3C A0 80 3E */ lis r5, lbl_803D9900@ha +/* 80021A5C 0001E9BC 38 80 00 00 */ li r4, 0 +/* 80021A60 0001E9C0 38 05 99 00 */ addi r0, r5, lbl_803D9900@l +/* 80021A64 0001E9C4 90 1E 00 00 */ stw r0, 0(r30) +/* 80021A68 0001E9C8 48 03 11 3D */ bl __dt__6CIOWinFv +/* 80021A6C 0001E9CC 7F E0 07 35 */ extsh. r0, r31 +/* 80021A70 0001E9D0 40 81 00 0C */ ble lbl_80021A7C +/* 80021A74 0001E9D4 7F C3 F3 78 */ mr r3, r30 +/* 80021A78 0001E9D8 48 2F 3E B9 */ bl Free__7CMemoryFPCv +lbl_80021A7C: +/* 80021A7C 0001E9DC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80021A80 0001E9E0 7F C3 F3 78 */ mr r3, r30 +/* 80021A84 0001E9E4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80021A88 0001E9E8 83 C1 00 08 */ lwz r30, 8(r1) +/* 80021A8C 0001E9EC 7C 08 03 A6 */ mtlr r0 +/* 80021A90 0001E9F0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80021A94 0001E9F4 4E 80 00 20 */ blr + +.global __ct__16CStateSetterFlowFv +__ct__16CStateSetterFlowFv: +/* 80021A98 0001E9F8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80021A9C 0001E9FC 7C 08 02 A6 */ mflr r0 +/* 80021AA0 0001EA00 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 80021AA4 0001EA04 90 01 00 24 */ stw r0, 0x24(r1) +/* 80021AA8 0001EA08 38 84 C6 44 */ addi r4, r4, lbl_803CC644@l +/* 80021AAC 0001EA0C 38 84 03 A0 */ addi r4, r4, 0x3a0 +/* 80021AB0 0001EA10 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80021AB4 0001EA14 7C 7F 1B 78 */ mr r31, r3 +/* 80021AB8 0001EA18 38 61 00 08 */ addi r3, r1, 8 +/* 80021ABC 0001EA1C 4B FE 31 FD */ bl string_l__4rstlFPCc +/* 80021AC0 0001EA20 7F E3 FB 78 */ mr r3, r31 +/* 80021AC4 0001EA24 38 81 00 08 */ addi r4, r1, 8 +/* 80021AC8 0001EA28 48 03 11 45 */ bl "__ct__6CIOWinFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80021ACC 0001EA2C 38 61 00 08 */ addi r3, r1, 8 +/* 80021AD0 0001EA30 48 31 C0 11 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80021AD4 0001EA34 3C 80 80 3E */ lis r4, lbl_803D9900@ha +/* 80021AD8 0001EA38 7F E3 FB 78 */ mr r3, r31 +/* 80021ADC 0001EA3C 38 04 99 00 */ addi r0, r4, lbl_803D9900@l +/* 80021AE0 0001EA40 90 1F 00 00 */ stw r0, 0(r31) +/* 80021AE4 0001EA44 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80021AE8 0001EA48 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80021AEC 0001EA4C 7C 08 03 A6 */ mtlr r0 +/* 80021AF0 0001EA50 38 21 00 20 */ addi r1, r1, 0x20 +/* 80021AF4 0001EA54 4E 80 00 20 */ blr + +.global SetUIText__13SGBALinkFrameF7EUIType +SetUIText__13SGBALinkFrameF7EUIType: +/* 80021AF8 0001EA58 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 80021AFC 0001EA5C 7C 08 02 A6 */ mflr r0 +/* 80021B00 0001EA60 90 01 00 94 */ stw r0, 0x94(r1) +/* 80021B04 0001EA64 BE 61 00 5C */ stmw r19, 0x5c(r1) +/* 80021B08 0001EA68 7C 96 23 78 */ mr r22, r4 +/* 80021B0C 0001EA6C 28 16 00 09 */ cmplwi r22, 9 +/* 80021B10 0001EA70 7C 75 1B 78 */ mr r21, r3 +/* 80021B14 0001EA74 3A 80 FF FF */ li r20, -1 +/* 80021B18 0001EA78 3B E0 FF FF */ li r31, -1 +/* 80021B1C 0001EA7C 3B C0 FF FF */ li r30, -1 +/* 80021B20 0001EA80 3B A0 00 00 */ li r29, 0 +/* 80021B24 0001EA84 3B 80 00 00 */ li r28, 0 +/* 80021B28 0001EA88 3B 60 00 00 */ li r27, 0 +/* 80021B2C 0001EA8C 3B 40 00 00 */ li r26, 0 +/* 80021B30 0001EA90 3B 20 00 00 */ li r25, 0 +/* 80021B34 0001EA94 3B 00 00 00 */ li r24, 0 +/* 80021B38 0001EA98 3A E0 00 00 */ li r23, 0 +/* 80021B3C 0001EA9C 41 81 01 04 */ bgt lbl_80021C40 +/* 80021B40 0001EAA0 3C 60 80 3E */ lis r3, lbl_803D98D8@ha +/* 80021B44 0001EAA4 56 C0 10 3A */ slwi r0, r22, 2 +/* 80021B48 0001EAA8 38 63 98 D8 */ addi r3, r3, lbl_803D98D8@l +/* 80021B4C 0001EAAC 7C 03 00 2E */ lwzx r0, r3, r0 +/* 80021B50 0001EAB0 7C 09 03 A6 */ mtctr r0 +/* 80021B54 0001EAB4 4E 80 04 20 */ bctr +/* 80021B58 0001EAB8 3A 80 00 49 */ li r20, 0x49 +/* 80021B5C 0001EABC 3B C0 00 52 */ li r30, 0x52 +/* 80021B60 0001EAC0 3B E0 00 53 */ li r31, 0x53 +/* 80021B64 0001EAC4 3B 20 00 01 */ li r25, 1 +/* 80021B68 0001EAC8 3B 60 00 01 */ li r27, 1 +/* 80021B6C 0001EACC 48 00 00 D4 */ b lbl_80021C40 +/* 80021B70 0001EAD0 3A 80 00 44 */ li r20, 0x44 +/* 80021B74 0001EAD4 3B C0 00 52 */ li r30, 0x52 +/* 80021B78 0001EAD8 3B E0 00 53 */ li r31, 0x53 +/* 80021B7C 0001EADC 3B A0 00 01 */ li r29, 1 +/* 80021B80 0001EAE0 3B 80 00 01 */ li r28, 1 +/* 80021B84 0001EAE4 3B 60 00 01 */ li r27, 1 +/* 80021B88 0001EAE8 48 00 00 B8 */ b lbl_80021C40 +/* 80021B8C 0001EAEC 3A 80 00 4A */ li r20, 0x4a +/* 80021B90 0001EAF0 3B C0 00 52 */ li r30, 0x52 +/* 80021B94 0001EAF4 3B E0 00 53 */ li r31, 0x53 +/* 80021B98 0001EAF8 3B A0 00 01 */ li r29, 1 +/* 80021B9C 0001EAFC 3B 40 00 01 */ li r26, 1 +/* 80021BA0 0001EB00 3B 00 00 01 */ li r24, 1 +/* 80021BA4 0001EB04 48 00 00 9C */ b lbl_80021C40 +/* 80021BA8 0001EB08 3A 80 00 4B */ li r20, 0x4b +/* 80021BAC 0001EB0C 3B C0 00 52 */ li r30, 0x52 +/* 80021BB0 0001EB10 3B E0 00 53 */ li r31, 0x53 +/* 80021BB4 0001EB14 3B A0 00 01 */ li r29, 1 +/* 80021BB8 0001EB18 3B 00 00 01 */ li r24, 1 +/* 80021BBC 0001EB1C 48 00 00 84 */ b lbl_80021C40 +/* 80021BC0 0001EB20 3A 80 00 4C */ li r20, 0x4c +/* 80021BC4 0001EB24 3B C0 00 52 */ li r30, 0x52 +/* 80021BC8 0001EB28 3B E0 00 53 */ li r31, 0x53 +/* 80021BCC 0001EB2C 3B A0 00 01 */ li r29, 1 +/* 80021BD0 0001EB30 3B 00 00 01 */ li r24, 1 +/* 80021BD4 0001EB34 3B 40 00 01 */ li r26, 1 +/* 80021BD8 0001EB38 48 00 00 68 */ b lbl_80021C40 +/* 80021BDC 0001EB3C 80 75 00 04 */ lwz r3, 4(r21) +/* 80021BE0 0001EB40 48 22 70 5D */ bl StartLink__11CGBASupportFv +/* 80021BE4 0001EB44 3A 80 00 48 */ li r20, 0x48 +/* 80021BE8 0001EB48 3B A0 00 01 */ li r29, 1 +/* 80021BEC 0001EB4C 3B 00 00 01 */ li r24, 1 +/* 80021BF0 0001EB50 3A E0 00 01 */ li r23, 1 +/* 80021BF4 0001EB54 48 00 00 4C */ b lbl_80021C40 +/* 80021BF8 0001EB58 3A 80 00 45 */ li r20, 0x45 +/* 80021BFC 0001EB5C 3B C0 00 52 */ li r30, 0x52 +/* 80021C00 0001EB60 3B E0 00 54 */ li r31, 0x54 +/* 80021C04 0001EB64 3B A0 00 01 */ li r29, 1 +/* 80021C08 0001EB68 3B 80 00 01 */ li r28, 1 +/* 80021C0C 0001EB6C 3B 60 00 01 */ li r27, 1 +/* 80021C10 0001EB70 3B 40 00 01 */ li r26, 1 +/* 80021C14 0001EB74 3B 00 00 01 */ li r24, 1 +/* 80021C18 0001EB78 48 00 00 28 */ b lbl_80021C40 +/* 80021C1C 0001EB7C 88 75 00 40 */ lbz r3, 0x40(r21) +/* 80021C20 0001EB80 3B E0 00 53 */ li r31, 0x53 +/* 80021C24 0001EB84 3B A0 00 01 */ li r29, 1 +/* 80021C28 0001EB88 3B 00 00 01 */ li r24, 1 +/* 80021C2C 0001EB8C 7C 03 00 D0 */ neg r0, r3 +/* 80021C30 0001EB90 7C 00 1B 78 */ or r0, r0, r3 +/* 80021C34 0001EB94 7C 03 FE 70 */ srawi r3, r0, 0x1f +/* 80021C38 0001EB98 38 03 00 47 */ addi r0, r3, 0x47 +/* 80021C3C 0001EB9C 7C 14 03 78 */ mr r20, r0 +lbl_80021C40: +/* 80021C40 0001EBA0 38 61 00 38 */ addi r3, r1, 0x38 +/* 80021C44 0001EBA4 38 8D 81 4C */ addi r4, r13, lbl_805A6D0C@sda21 +/* 80021C48 0001EBA8 4B FF 3D A9 */ bl wstring_l__4rstlFPCw +/* 80021C4C 0001EBAC 38 61 00 48 */ addi r3, r1, 0x48 +/* 80021C50 0001EBB0 38 81 00 38 */ addi r4, r1, 0x38 +/* 80021C54 0001EBB4 48 31 BB 35 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80021C58 0001EBB8 38 61 00 38 */ addi r3, r1, 0x38 +/* 80021C5C 0001EBBC 48 31 B4 D9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80021C60 0001EBC0 2C 14 FF FF */ cmpwi r20, -1 +/* 80021C64 0001EBC4 3A 60 00 00 */ li r19, 0 +/* 80021C68 0001EBC8 40 82 00 0C */ bne lbl_80021C74 +/* 80021C6C 0001EBCC 38 81 00 48 */ addi r4, r1, 0x48 +/* 80021C70 0001EBD0 48 00 00 24 */ b lbl_80021C94 +lbl_80021C74: +/* 80021C74 0001EBD4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80021C78 0001EBD8 7E 84 A3 78 */ mr r4, r20 +/* 80021C7C 0001EBDC 48 33 4A 81 */ bl GetString__12CStringTableCFi +/* 80021C80 0001EBE0 7C 64 1B 78 */ mr r4, r3 +/* 80021C84 0001EBE4 38 61 00 28 */ addi r3, r1, 0x28 +/* 80021C88 0001EBE8 4B FF 3D 69 */ bl wstring_l__4rstlFPCw +/* 80021C8C 0001EBEC 3A 60 00 01 */ li r19, 1 +/* 80021C90 0001EBF0 38 81 00 28 */ addi r4, r1, 0x28 +lbl_80021C94: +/* 80021C94 0001EBF4 38 75 00 0C */ addi r3, r21, 0xc +/* 80021C98 0001EBF8 48 00 10 79 */ bl sub_80022d10 +/* 80021C9C 0001EBFC 7E 60 07 75 */ extsb. r0, r19 +/* 80021CA0 0001EC00 41 82 00 0C */ beq lbl_80021CAC +/* 80021CA4 0001EC04 38 61 00 28 */ addi r3, r1, 0x28 +/* 80021CA8 0001EC08 48 31 B4 8D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80021CAC: +/* 80021CAC 0001EC0C 2C 1F FF FF */ cmpwi r31, -1 +/* 80021CB0 0001EC10 3A 60 00 00 */ li r19, 0 +/* 80021CB4 0001EC14 40 82 00 0C */ bne lbl_80021CC0 +/* 80021CB8 0001EC18 38 81 00 48 */ addi r4, r1, 0x48 +/* 80021CBC 0001EC1C 48 00 00 24 */ b lbl_80021CE0 +lbl_80021CC0: +/* 80021CC0 0001EC20 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80021CC4 0001EC24 7F E4 FB 78 */ mr r4, r31 +/* 80021CC8 0001EC28 48 33 4A 35 */ bl GetString__12CStringTableCFi +/* 80021CCC 0001EC2C 7C 64 1B 78 */ mr r4, r3 +/* 80021CD0 0001EC30 38 61 00 18 */ addi r3, r1, 0x18 +/* 80021CD4 0001EC34 4B FF 3D 1D */ bl wstring_l__4rstlFPCw +/* 80021CD8 0001EC38 3A 60 00 01 */ li r19, 1 +/* 80021CDC 0001EC3C 38 81 00 18 */ addi r4, r1, 0x18 +lbl_80021CE0: +/* 80021CE0 0001EC40 80 75 00 14 */ lwz r3, 0x14(r21) +/* 80021CE4 0001EC44 38 A0 00 00 */ li r5, 0 +/* 80021CE8 0001EC48 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80021CEC 0001EC4C 48 2A 7B 99 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80021CF0 0001EC50 7E 60 07 75 */ extsb. r0, r19 +/* 80021CF4 0001EC54 41 82 00 0C */ beq lbl_80021D00 +/* 80021CF8 0001EC58 38 61 00 18 */ addi r3, r1, 0x18 +/* 80021CFC 0001EC5C 48 31 B4 39 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80021D00: +/* 80021D00 0001EC60 2C 1E FF FF */ cmpwi r30, -1 +/* 80021D04 0001EC64 3A 60 00 00 */ li r19, 0 +/* 80021D08 0001EC68 40 82 00 0C */ bne lbl_80021D14 +/* 80021D0C 0001EC6C 38 81 00 48 */ addi r4, r1, 0x48 +/* 80021D10 0001EC70 48 00 00 24 */ b lbl_80021D34 +lbl_80021D14: +/* 80021D14 0001EC74 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80021D18 0001EC78 7F C4 F3 78 */ mr r4, r30 +/* 80021D1C 0001EC7C 48 33 49 E1 */ bl GetString__12CStringTableCFi +/* 80021D20 0001EC80 7C 64 1B 78 */ mr r4, r3 +/* 80021D24 0001EC84 38 61 00 08 */ addi r3, r1, 8 +/* 80021D28 0001EC88 4B FF 3C C9 */ bl wstring_l__4rstlFPCw +/* 80021D2C 0001EC8C 3A 60 00 01 */ li r19, 1 +/* 80021D30 0001EC90 38 81 00 08 */ addi r4, r1, 8 +lbl_80021D34: +/* 80021D34 0001EC94 80 75 00 18 */ lwz r3, 0x18(r21) +/* 80021D38 0001EC98 38 A0 00 00 */ li r5, 0 +/* 80021D3C 0001EC9C 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80021D40 0001ECA0 48 2A 7B 45 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80021D44 0001ECA4 7E 60 07 75 */ extsb. r0, r19 +/* 80021D48 0001ECA8 41 82 00 0C */ beq lbl_80021D54 +/* 80021D4C 0001ECAC 38 61 00 08 */ addi r3, r1, 8 +/* 80021D50 0001ECB0 48 31 B3 E5 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80021D54: +/* 80021D54 0001ECB4 80 75 00 1C */ lwz r3, 0x1c(r21) +/* 80021D58 0001ECB8 38 80 00 01 */ li r4, 1 +/* 80021D5C 0001ECBC 38 A0 00 01 */ li r5, 1 +/* 80021D60 0001ECC0 48 2A 89 89 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80021D64 0001ECC4 80 75 00 20 */ lwz r3, 0x20(r21) +/* 80021D68 0001ECC8 38 80 00 01 */ li r4, 1 +/* 80021D6C 0001ECCC 38 A0 00 01 */ li r5, 1 +/* 80021D70 0001ECD0 48 2A 89 79 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80021D74 0001ECD4 80 75 00 24 */ lwz r3, 0x24(r21) +/* 80021D78 0001ECD8 7F A4 EB 78 */ mr r4, r29 +/* 80021D7C 0001ECDC 38 A0 00 01 */ li r5, 1 +/* 80021D80 0001ECE0 48 2A 89 69 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80021D84 0001ECE4 80 75 00 28 */ lwz r3, 0x28(r21) +/* 80021D88 0001ECE8 7F 84 E3 78 */ mr r4, r28 +/* 80021D8C 0001ECEC 38 A0 00 01 */ li r5, 1 +/* 80021D90 0001ECF0 48 2A 89 59 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80021D94 0001ECF4 80 75 00 2C */ lwz r3, 0x2c(r21) +/* 80021D98 0001ECF8 7F 64 DB 78 */ mr r4, r27 +/* 80021D9C 0001ECFC 38 A0 00 01 */ li r5, 1 +/* 80021DA0 0001ED00 48 2A 89 49 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80021DA4 0001ED04 80 75 00 30 */ lwz r3, 0x30(r21) +/* 80021DA8 0001ED08 7F 44 D3 78 */ mr r4, r26 +/* 80021DAC 0001ED0C 38 A0 00 01 */ li r5, 1 +/* 80021DB0 0001ED10 48 2A 89 39 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80021DB4 0001ED14 80 75 00 34 */ lwz r3, 0x34(r21) +/* 80021DB8 0001ED18 7F 24 CB 78 */ mr r4, r25 +/* 80021DBC 0001ED1C 38 A0 00 01 */ li r5, 1 +/* 80021DC0 0001ED20 48 2A 89 29 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80021DC4 0001ED24 80 75 00 38 */ lwz r3, 0x38(r21) +/* 80021DC8 0001ED28 7F 04 C3 78 */ mr r4, r24 +/* 80021DCC 0001ED2C 38 A0 00 01 */ li r5, 1 +/* 80021DD0 0001ED30 48 2A 89 19 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80021DD4 0001ED34 80 75 00 3C */ lwz r3, 0x3c(r21) +/* 80021DD8 0001ED38 7E E4 BB 78 */ mr r4, r23 +/* 80021DDC 0001ED3C 38 A0 00 01 */ li r5, 1 +/* 80021DE0 0001ED40 48 2A 89 09 */ bl SetVisibility__10CGuiWidgetFb14ETraversalMode +/* 80021DE4 0001ED44 92 D5 00 00 */ stw r22, 0(r21) +/* 80021DE8 0001ED48 38 61 00 48 */ addi r3, r1, 0x48 +/* 80021DEC 0001ED4C 48 31 B3 49 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80021DF0 0001ED50 BA 61 00 5C */ lmw r19, 0x5c(r1) +/* 80021DF4 0001ED54 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80021DF8 0001ED58 7C 08 03 A6 */ mtlr r0 +/* 80021DFC 0001ED5C 38 21 00 90 */ addi r1, r1, 0x90 +/* 80021E00 0001ED60 4E 80 00 20 */ blr + +.global ProcessUserInput__13SGBALinkFrameFRC11CFinalInputb +ProcessUserInput__13SGBALinkFrameFRC11CFinalInputb: +/* 80021E04 0001ED64 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80021E08 0001ED68 7C 08 02 A6 */ mflr r0 +/* 80021E0C 0001ED6C 54 A6 06 3E */ clrlwi r6, r5, 0x18 +/* 80021E10 0001ED70 90 01 00 24 */ stw r0, 0x24(r1) +/* 80021E14 0001ED74 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80021E18 0001ED78 7C 7F 1B 78 */ mr r31, r3 +/* 80021E1C 0001ED7C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80021E20 0001ED80 7C 9E 23 78 */ mr r30, r4 +/* 80021E24 0001ED84 88 03 00 40 */ lbz r0, 0x40(r3) +/* 80021E28 0001ED88 7C 06 00 40 */ cmplw r6, r0 +/* 80021E2C 0001ED8C 41 82 00 10 */ beq lbl_80021E3C +/* 80021E30 0001ED90 98 BF 00 40 */ stb r5, 0x40(r31) +/* 80021E34 0001ED94 80 9F 00 00 */ lwz r4, 0(r31) +/* 80021E38 0001ED98 4B FF FC C1 */ bl SetUIText__13SGBALinkFrameF7EUIType +lbl_80021E3C: +/* 80021E3C 0001ED9C 80 9F 00 00 */ lwz r4, 0(r31) +/* 80021E40 0001EDA0 2C 04 00 08 */ cmpwi r4, 8 +/* 80021E44 0001EDA4 41 82 01 A0 */ beq lbl_80021FE4 +/* 80021E48 0001EDA8 40 80 00 1C */ bge lbl_80021E64 +/* 80021E4C 0001EDAC 2C 04 00 04 */ cmpwi r4, 4 +/* 80021E50 0001EDB0 41 82 00 B4 */ beq lbl_80021F04 +/* 80021E54 0001EDB4 40 80 00 1C */ bge lbl_80021E70 +/* 80021E58 0001EDB8 2C 04 00 00 */ cmpwi r4, 0 +/* 80021E5C 0001EDBC 40 80 00 14 */ bge lbl_80021E70 +/* 80021E60 0001EDC0 48 00 01 94 */ b lbl_80021FF4 +lbl_80021E64: +/* 80021E64 0001EDC4 2C 04 00 0A */ cmpwi r4, 0xa +/* 80021E68 0001EDC8 40 80 01 8C */ bge lbl_80021FF4 +/* 80021E6C 0001EDCC 48 00 01 80 */ b lbl_80021FEC +lbl_80021E70: +/* 80021E70 0001EDD0 88 7E 00 2D */ lbz r3, 0x2d(r30) +/* 80021E74 0001EDD4 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 80021E78 0001EDD8 41 82 00 28 */ beq lbl_80021EA0 +/* 80021E7C 0001EDDC 48 00 10 D9 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 80021E80 0001EDE0 80 1F 00 00 */ lwz r0, 0(r31) +/* 80021E84 0001EDE4 3C 60 80 3D */ lis r3, lbl_803CC5F4@ha +/* 80021E88 0001EDE8 38 83 C5 F4 */ addi r4, r3, lbl_803CC5F4@l +/* 80021E8C 0001EDEC 7F E3 FB 78 */ mr r3, r31 +/* 80021E90 0001EDF0 54 00 10 3A */ slwi r0, r0, 2 +/* 80021E94 0001EDF4 7C 84 00 2E */ lwzx r4, r4, r0 +/* 80021E98 0001EDF8 4B FF FC 61 */ bl SetUIText__13SGBALinkFrameF7EUIType +/* 80021E9C 0001EDFC 48 00 01 58 */ b lbl_80021FF4 +lbl_80021EA0: +/* 80021EA0 0001EE00 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 80021EA4 0001EE04 41 82 01 50 */ beq lbl_80021FF4 +/* 80021EA8 0001EE08 3C 60 80 3D */ lis r3, lbl_803CC61C@ha +/* 80021EAC 0001EE0C 54 80 10 3A */ slwi r0, r4, 2 +/* 80021EB0 0001EE10 38 63 C6 1C */ addi r3, r3, lbl_803CC61C@l +/* 80021EB4 0001EE14 7C 03 00 2E */ lwzx r0, r3, r0 +/* 80021EB8 0001EE18 2C 00 FF FF */ cmpwi r0, -1 +/* 80021EBC 0001EE1C 41 82 01 38 */ beq lbl_80021FF4 +/* 80021EC0 0001EE20 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80021EC4 0001EE24 38 61 00 10 */ addi r3, r1, 0x10 +/* 80021EC8 0001EE28 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80021ECC 0001EE2C 38 80 04 46 */ li r4, 0x446 +/* 80021ED0 0001EE30 38 A0 00 7F */ li r5, 0x7f +/* 80021ED4 0001EE34 38 C0 00 40 */ li r6, 0x40 +/* 80021ED8 0001EE38 38 E0 00 00 */ li r7, 0 +/* 80021EDC 0001EE3C 39 20 00 00 */ li r9, 0 +/* 80021EE0 0001EE40 48 2C 7E 95 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80021EE4 0001EE44 80 1F 00 00 */ lwz r0, 0(r31) +/* 80021EE8 0001EE48 3C 60 80 3D */ lis r3, lbl_803CC61C@ha +/* 80021EEC 0001EE4C 38 83 C6 1C */ addi r4, r3, lbl_803CC61C@l +/* 80021EF0 0001EE50 7F E3 FB 78 */ mr r3, r31 +/* 80021EF4 0001EE54 54 00 10 3A */ slwi r0, r0, 2 +/* 80021EF8 0001EE58 7C 84 00 2E */ lwzx r4, r4, r0 +/* 80021EFC 0001EE5C 4B FF FB FD */ bl SetUIText__13SGBALinkFrameF7EUIType +/* 80021F00 0001EE60 48 00 00 F4 */ b lbl_80021FF4 +lbl_80021F04: +/* 80021F04 0001EE64 80 7F 00 04 */ lwz r3, 4(r31) +/* 80021F08 0001EE68 80 03 00 34 */ lwz r0, 0x34(r3) +/* 80021F0C 0001EE6C 2C 00 00 07 */ cmpwi r0, 7 +/* 80021F10 0001EE70 40 82 00 98 */ bne lbl_80021FA8 +/* 80021F14 0001EE74 88 03 00 44 */ lbz r0, 0x44(r3) +/* 80021F18 0001EE78 28 00 00 00 */ cmplwi r0, 0 +/* 80021F1C 0001EE7C 41 82 00 14 */ beq lbl_80021F30 +/* 80021F20 0001EE80 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80021F24 0001EE84 38 80 00 01 */ li r4, 1 +/* 80021F28 0001EE88 38 63 00 A8 */ addi r3, r3, 0xa8 +/* 80021F2C 0001EE8C 48 1B 32 E5 */ bl sub_801d5210 +lbl_80021F30: +/* 80021F30 0001EE90 80 7F 00 04 */ lwz r3, 4(r31) +/* 80021F34 0001EE94 88 03 00 45 */ lbz r0, 0x45(r3) +/* 80021F38 0001EE98 28 00 00 00 */ cmplwi r0, 0 +/* 80021F3C 0001EE9C 41 82 00 14 */ beq lbl_80021F50 +/* 80021F40 0001EEA0 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80021F44 0001EEA4 38 80 00 01 */ li r4, 1 +/* 80021F48 0001EEA8 38 63 00 A8 */ addi r3, r3, 0xa8 +/* 80021F4C 0001EEAC 48 1B 32 85 */ bl sub_801d51d0 +lbl_80021F50: +/* 80021F50 0001EEB0 80 7F 00 04 */ lwz r3, 4(r31) +/* 80021F54 0001EEB4 88 03 00 44 */ lbz r0, 0x44(r3) +/* 80021F58 0001EEB8 28 00 00 00 */ cmplwi r0, 0 +/* 80021F5C 0001EEBC 41 82 00 18 */ beq lbl_80021F74 +/* 80021F60 0001EEC0 48 00 0F F5 */ bl PlayAdvanceSfx__11CFrontEndUIFv +/* 80021F64 0001EEC4 7F E3 FB 78 */ mr r3, r31 +/* 80021F68 0001EEC8 38 80 00 06 */ li r4, 6 +/* 80021F6C 0001EECC 4B FF FB 8D */ bl SetUIText__13SGBALinkFrameF7EUIType +/* 80021F70 0001EED0 48 00 00 84 */ b lbl_80021FF4 +lbl_80021F74: +/* 80021F74 0001EED4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80021F78 0001EED8 38 61 00 0C */ addi r3, r1, 0xc +/* 80021F7C 0001EEDC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80021F80 0001EEE0 38 80 04 46 */ li r4, 0x446 +/* 80021F84 0001EEE4 38 A0 00 7F */ li r5, 0x7f +/* 80021F88 0001EEE8 38 C0 00 40 */ li r6, 0x40 +/* 80021F8C 0001EEEC 38 E0 00 00 */ li r7, 0 +/* 80021F90 0001EEF0 39 20 00 00 */ li r9, 0 +/* 80021F94 0001EEF4 48 2C 7D E1 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80021F98 0001EEF8 7F E3 FB 78 */ mr r3, r31 +/* 80021F9C 0001EEFC 38 80 00 05 */ li r4, 5 +/* 80021FA0 0001EF00 4B FF FB 59 */ bl SetUIText__13SGBALinkFrameF7EUIType +/* 80021FA4 0001EF04 48 00 00 50 */ b lbl_80021FF4 +lbl_80021FA8: +/* 80021FA8 0001EF08 2C 00 00 08 */ cmpwi r0, 8 +/* 80021FAC 0001EF0C 40 82 00 48 */ bne lbl_80021FF4 +/* 80021FB0 0001EF10 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80021FB4 0001EF14 38 61 00 08 */ addi r3, r1, 8 +/* 80021FB8 0001EF18 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80021FBC 0001EF1C 38 80 04 46 */ li r4, 0x446 +/* 80021FC0 0001EF20 38 A0 00 7F */ li r5, 0x7f +/* 80021FC4 0001EF24 38 C0 00 40 */ li r6, 0x40 +/* 80021FC8 0001EF28 38 E0 00 00 */ li r7, 0 +/* 80021FCC 0001EF2C 39 20 00 00 */ li r9, 0 +/* 80021FD0 0001EF30 48 2C 7D A5 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80021FD4 0001EF34 7F E3 FB 78 */ mr r3, r31 +/* 80021FD8 0001EF38 38 80 00 05 */ li r4, 5 +/* 80021FDC 0001EF3C 4B FF FB 1D */ bl SetUIText__13SGBALinkFrameF7EUIType +/* 80021FE0 0001EF40 48 00 00 14 */ b lbl_80021FF4 +lbl_80021FE4: +/* 80021FE4 0001EF44 38 60 00 01 */ li r3, 1 +/* 80021FE8 0001EF48 48 00 00 10 */ b lbl_80021FF8 +lbl_80021FEC: +/* 80021FEC 0001EF4C 38 60 00 02 */ li r3, 2 +/* 80021FF0 0001EF50 48 00 00 08 */ b lbl_80021FF8 +lbl_80021FF4: +/* 80021FF4 0001EF54 38 60 00 00 */ li r3, 0 +lbl_80021FF8: +/* 80021FF8 0001EF58 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80021FFC 0001EF5C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80022000 0001EF60 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80022004 0001EF64 7C 08 03 A6 */ mtlr r0 +/* 80022008 0001EF68 38 21 00 20 */ addi r1, r1, 0x20 +/* 8002200C 0001EF6C 4E 80 00 20 */ blr + +.global Update__13SGBALinkFrameFf +Update__13SGBALinkFrameFf: +/* 80022010 0001EF70 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80022014 0001EF74 7C 08 02 A6 */ mflr r0 +/* 80022018 0001EF78 90 01 00 24 */ stw r0, 0x24(r1) +/* 8002201C 0001EF7C DB E1 00 18 */ stfd f31, 0x18(r1) +/* 80022020 0001EF80 FF E0 08 90 */ fmr f31, f1 +/* 80022024 0001EF84 93 E1 00 14 */ stw r31, 0x14(r1) +/* 80022028 0001EF88 7C 7F 1B 78 */ mr r31, r3 +/* 8002202C 0001EF8C 80 63 00 04 */ lwz r3, 4(r3) +/* 80022030 0001EF90 48 22 68 E9 */ bl Update__11CGBASupportFv +/* 80022034 0001EF94 FC 20 F8 90 */ fmr f1, f31 +/* 80022038 0001EF98 80 7F 00 08 */ lwz r3, 8(r31) +/* 8002203C 0001EF9C 48 2A 06 C9 */ bl Update__9CGuiFrameFf +/* 80022040 0001EFA0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80022044 0001EFA4 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 80022048 0001EFA8 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 8002204C 0001EFAC 7C 08 03 A6 */ mtlr r0 +/* 80022050 0001EFB0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80022054 0001EFB4 4E 80 00 20 */ blr + +.global FinishedLoading__13SGBALinkFrameFv +FinishedLoading__13SGBALinkFrameFv: +/* 80022058 0001EFB8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8002205C 0001EFBC 7C 08 02 A6 */ mflr r0 +/* 80022060 0001EFC0 90 01 00 24 */ stw r0, 0x24(r1) +/* 80022064 0001EFC4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80022068 0001EFC8 7C 7F 1B 78 */ mr r31, r3 +/* 8002206C 0001EFCC 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022070 0001EFD0 38 A3 C6 44 */ addi r5, r3, lbl_803CC644@l +/* 80022074 0001EFD4 80 9F 00 08 */ lwz r4, 8(r31) +/* 80022078 0001EFD8 38 61 00 08 */ addi r3, r1, 8 +/* 8002207C 0001EFDC 38 A5 01 81 */ addi r5, r5, 0x181 +/* 80022080 0001EFE0 48 00 0D 79 */ bl FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +/* 80022084 0001EFE4 80 01 00 08 */ lwz r0, 8(r1) +/* 80022088 0001EFE8 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 8002208C 0001EFEC 38 63 C6 44 */ addi r3, r3, lbl_803CC644@l +/* 80022090 0001EFF0 90 1F 00 0C */ stw r0, 0xc(r31) +/* 80022094 0001EFF4 38 83 03 A1 */ addi r4, r3, 0x3a1 +/* 80022098 0001EFF8 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8002209C 0001EFFC 90 1F 00 10 */ stw r0, 0x10(r31) +/* 800220A0 0001F000 80 7F 00 08 */ lwz r3, 8(r31) +/* 800220A4 0001F004 48 2A 00 B1 */ bl FindWidget__9CGuiFrameCFPCc +/* 800220A8 0001F008 90 7F 00 14 */ stw r3, 0x14(r31) +/* 800220AC 0001F00C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800220B0 0001F010 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 800220B4 0001F014 80 7F 00 08 */ lwz r3, 8(r31) +/* 800220B8 0001F018 38 84 03 AE */ addi r4, r4, 0x3ae +/* 800220BC 0001F01C 48 2A 00 99 */ bl FindWidget__9CGuiFrameCFPCc +/* 800220C0 0001F020 90 7F 00 18 */ stw r3, 0x18(r31) +/* 800220C4 0001F024 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800220C8 0001F028 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 800220CC 0001F02C 80 7F 00 08 */ lwz r3, 8(r31) +/* 800220D0 0001F030 38 84 03 BA */ addi r4, r4, 0x3ba +/* 800220D4 0001F034 48 2A 00 81 */ bl FindWidget__9CGuiFrameCFPCc +/* 800220D8 0001F038 90 7F 00 1C */ stw r3, 0x1c(r31) +/* 800220DC 0001F03C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800220E0 0001F040 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 800220E4 0001F044 80 7F 00 08 */ lwz r3, 8(r31) +/* 800220E8 0001F048 38 84 03 C3 */ addi r4, r4, 0x3c3 +/* 800220EC 0001F04C 48 2A 00 69 */ bl FindWidget__9CGuiFrameCFPCc +/* 800220F0 0001F050 90 7F 00 20 */ stw r3, 0x20(r31) +/* 800220F4 0001F054 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800220F8 0001F058 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 800220FC 0001F05C 80 7F 00 08 */ lwz r3, 8(r31) +/* 80022100 0001F060 38 84 03 CD */ addi r4, r4, 0x3cd +/* 80022104 0001F064 48 2A 00 51 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022108 0001F068 90 7F 00 24 */ stw r3, 0x24(r31) +/* 8002210C 0001F06C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022110 0001F070 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80022114 0001F074 80 7F 00 08 */ lwz r3, 8(r31) +/* 80022118 0001F078 38 84 03 D9 */ addi r4, r4, 0x3d9 +/* 8002211C 0001F07C 48 2A 00 39 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022120 0001F080 90 7F 00 28 */ stw r3, 0x28(r31) +/* 80022124 0001F084 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022128 0001F088 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8002212C 0001F08C 80 7F 00 08 */ lwz r3, 8(r31) +/* 80022130 0001F090 38 84 03 EC */ addi r4, r4, 0x3ec +/* 80022134 0001F094 48 2A 00 21 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022138 0001F098 90 7F 00 2C */ stw r3, 0x2c(r31) +/* 8002213C 0001F09C 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022140 0001F0A0 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80022144 0001F0A4 80 7F 00 08 */ lwz r3, 8(r31) +/* 80022148 0001F0A8 38 84 04 00 */ addi r4, r4, 0x400 +/* 8002214C 0001F0AC 48 2A 00 09 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022150 0001F0B0 90 7F 00 30 */ stw r3, 0x30(r31) +/* 80022154 0001F0B4 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022158 0001F0B8 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8002215C 0001F0BC 80 7F 00 08 */ lwz r3, 8(r31) +/* 80022160 0001F0C0 38 84 04 18 */ addi r4, r4, 0x418 +/* 80022164 0001F0C4 48 29 FF F1 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022168 0001F0C8 90 7F 00 34 */ stw r3, 0x34(r31) +/* 8002216C 0001F0CC 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022170 0001F0D0 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80022174 0001F0D4 80 7F 00 08 */ lwz r3, 8(r31) +/* 80022178 0001F0D8 38 84 04 25 */ addi r4, r4, 0x425 +/* 8002217C 0001F0DC 48 29 FF D9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022180 0001F0E0 90 7F 00 38 */ stw r3, 0x38(r31) +/* 80022184 0001F0E4 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022188 0001F0E8 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 8002218C 0001F0EC 80 7F 00 08 */ lwz r3, 8(r31) +/* 80022190 0001F0F0 38 84 04 35 */ addi r4, r4, 0x435 +/* 80022194 0001F0F4 48 29 FF C1 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022198 0001F0F8 90 7F 00 3C */ stw r3, 0x3c(r31) +/* 8002219C 0001F0FC 7F E3 FB 78 */ mr r3, r31 +/* 800221A0 0001F100 38 80 00 00 */ li r4, 0 +/* 800221A4 0001F104 4B FF F9 55 */ bl SetUIText__13SGBALinkFrameF7EUIType +/* 800221A8 0001F108 80 01 00 24 */ lwz r0, 0x24(r1) +/* 800221AC 0001F10C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 800221B0 0001F110 7C 08 03 A6 */ mtlr r0 +/* 800221B4 0001F114 38 21 00 20 */ addi r1, r1, 0x20 +/* 800221B8 0001F118 4E 80 00 20 */ blr + +.global Draw__13SGBALinkFrameFv +Draw__13SGBALinkFrameFv: +/* 800221BC 0001F11C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800221C0 0001F120 7C 08 02 A6 */ mflr r0 +/* 800221C4 0001F124 3C 80 80 5A */ lis r4, lbl_8059FD08@ha +/* 800221C8 0001F128 90 01 00 14 */ stw r0, 0x14(r1) +/* 800221CC 0001F12C 38 84 FD 08 */ addi r4, r4, lbl_8059FD08@l +/* 800221D0 0001F130 80 63 00 08 */ lwz r3, 8(r3) +/* 800221D4 0001F134 48 2A 05 61 */ bl Draw__9CGuiFrameCFRC19CGuiWidgetDrawParms +/* 800221D8 0001F138 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800221DC 0001F13C 7C 08 03 A6 */ mtlr r0 +/* 800221E0 0001F140 38 21 00 10 */ addi r1, r1, 0x10 +/* 800221E4 0001F144 4E 80 00 20 */ blr + +.global __dt__13SGBALinkFrameFv +__dt__13SGBALinkFrameFv: +/* 800221E8 0001F148 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800221EC 0001F14C 7C 08 02 A6 */ mflr r0 +/* 800221F0 0001F150 90 01 00 14 */ stw r0, 0x14(r1) +/* 800221F4 0001F154 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800221F8 0001F158 7C 7F 1B 79 */ or. r31, r3, r3 +/* 800221FC 0001F15C 41 82 00 10 */ beq lbl_8002220C +/* 80022200 0001F160 7C 80 07 35 */ extsh. r0, r4 +/* 80022204 0001F164 40 81 00 08 */ ble lbl_8002220C +/* 80022208 0001F168 48 2F 37 29 */ bl Free__7CMemoryFPCv +lbl_8002220C: +/* 8002220C 0001F16C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80022210 0001F170 7F E3 FB 78 */ mr r3, r31 +/* 80022214 0001F174 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80022218 0001F178 7C 08 03 A6 */ mtlr r0 +/* 8002221C 0001F17C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80022220 0001F180 4E 80 00 20 */ blr + +.global __ct__13SGBALinkFrameFPC9CGuiFrameP11CGBASupportb +__ct__13SGBALinkFrameFPC9CGuiFrameP11CGBASupportb: +/* 80022224 0001F184 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80022228 0001F188 7C 08 02 A6 */ mflr r0 +/* 8002222C 0001F18C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80022230 0001F190 38 00 FF FF */ li r0, -1 +/* 80022234 0001F194 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80022238 0001F198 7C DF 33 78 */ mr r31, r6 +/* 8002223C 0001F19C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80022240 0001F1A0 7C BE 2B 78 */ mr r30, r5 +/* 80022244 0001F1A4 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80022248 0001F1A8 7C 7D 1B 78 */ mr r29, r3 +/* 8002224C 0001F1AC 90 03 00 00 */ stw r0, 0(r3) +/* 80022250 0001F1B0 38 7D 00 0C */ addi r3, r29, 0xc +/* 80022254 0001F1B4 93 DD 00 04 */ stw r30, 4(r29) +/* 80022258 0001F1B8 90 9D 00 08 */ stw r4, 8(r29) +/* 8002225C 0001F1BC 48 00 0C 19 */ bl __ct__12SGuiTextPairFv +/* 80022260 0001F1C0 38 00 00 00 */ li r0, 0 +/* 80022264 0001F1C4 7F C3 F3 78 */ mr r3, r30 +/* 80022268 0001F1C8 90 1D 00 14 */ stw r0, 0x14(r29) +/* 8002226C 0001F1CC 90 1D 00 18 */ stw r0, 0x18(r29) +/* 80022270 0001F1D0 90 1D 00 1C */ stw r0, 0x1c(r29) +/* 80022274 0001F1D4 90 1D 00 20 */ stw r0, 0x20(r29) +/* 80022278 0001F1D8 90 1D 00 24 */ stw r0, 0x24(r29) +/* 8002227C 0001F1DC 90 1D 00 28 */ stw r0, 0x28(r29) +/* 80022280 0001F1E0 90 1D 00 2C */ stw r0, 0x2c(r29) +/* 80022284 0001F1E4 90 1D 00 30 */ stw r0, 0x30(r29) +/* 80022288 0001F1E8 90 1D 00 34 */ stw r0, 0x34(r29) +/* 8002228C 0001F1EC 90 1D 00 38 */ stw r0, 0x38(r29) +/* 80022290 0001F1F0 90 1D 00 3C */ stw r0, 0x3c(r29) +/* 80022294 0001F1F4 9B FD 00 40 */ stb r31, 0x40(r29) +/* 80022298 0001F1F8 48 22 69 B9 */ bl InitializeSupport__11CGBASupportFv +/* 8002229C 0001F1FC 7F A3 EB 78 */ mr r3, r29 +/* 800222A0 0001F200 4B FF FD B9 */ bl FinishedLoading__13SGBALinkFrameFv +/* 800222A4 0001F204 80 01 00 24 */ lwz r0, 0x24(r1) +/* 800222A8 0001F208 7F A3 EB 78 */ mr r3, r29 +/* 800222AC 0001F20C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 800222B0 0001F210 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 800222B4 0001F214 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 800222B8 0001F218 7C 08 03 A6 */ mtlr r0 +/* 800222BC 0001F21C 38 21 00 20 */ addi r1, r1, 0x20 +/* 800222C0 0001F220 4E 80 00 20 */ blr + +.global Draw__17SNesEmulatorFrameFRC15CSaveGameScreen +Draw__17SNesEmulatorFrameFRC15CSaveGameScreen: +/* 800222C4 0001F224 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 800222C8 0001F228 7C 08 02 A6 */ mflr r0 +/* 800222CC 0001F22C 90 01 00 64 */ stw r0, 0x64(r1) +/* 800222D0 0001F230 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 800222D4 0001F234 93 C1 00 58 */ stw r30, 0x58(r1) +/* 800222D8 0001F238 7C 9E 23 78 */ mr r30, r4 +/* 800222DC 0001F23C 93 A1 00 54 */ stw r29, 0x54(r1) +/* 800222E0 0001F240 7C 7D 1B 78 */ mr r29, r3 +/* 800222E4 0001F244 48 32 7C C9 */ bl White__6CColorFv +/* 800222E8 0001F248 80 83 00 00 */ lwz r4, 0(r3) +/* 800222EC 0001F24C 38 60 00 60 */ li r3, 0x60 +/* 800222F0 0001F250 38 00 00 FF */ li r0, 0xff +/* 800222F4 0001F254 28 1E 00 00 */ cmplwi r30, 0 +/* 800222F8 0001F258 90 81 00 0C */ stw r4, 0xc(r1) +/* 800222FC 0001F25C 3B E0 00 00 */ li r31, 0 +/* 80022300 0001F260 98 61 00 08 */ stb r3, 8(r1) +/* 80022304 0001F264 98 61 00 09 */ stb r3, 9(r1) +/* 80022308 0001F268 98 61 00 0A */ stb r3, 0xa(r1) +/* 8002230C 0001F26C 98 01 00 0B */ stb r0, 0xb(r1) +/* 80022310 0001F270 41 82 00 14 */ beq lbl_80022324 +/* 80022314 0001F274 80 1E 00 10 */ lwz r0, 0x10(r30) +/* 80022318 0001F278 2C 00 00 10 */ cmpwi r0, 0x10 +/* 8002231C 0001F27C 41 82 00 08 */ beq lbl_80022324 +/* 80022320 0001F280 3B E0 00 01 */ li r31, 1 +lbl_80022324: +/* 80022324 0001F284 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80022328 0001F288 41 82 00 10 */ beq lbl_80022338 +/* 8002232C 0001F28C 38 00 00 00 */ li r0, 0 +/* 80022330 0001F290 90 01 00 0C */ stw r0, 0xc(r1) +/* 80022334 0001F294 48 00 00 18 */ b lbl_8002234C +lbl_80022338: +/* 80022338 0001F298 80 1D 00 08 */ lwz r0, 8(r29) +/* 8002233C 0001F29C 28 00 00 00 */ cmplwi r0, 0 +/* 80022340 0001F2A0 41 82 00 0C */ beq lbl_8002234C +/* 80022344 0001F2A4 80 01 00 08 */ lwz r0, 8(r1) +/* 80022348 0001F2A8 90 01 00 0C */ stw r0, 0xc(r1) +lbl_8002234C: +/* 8002234C 0001F2AC 88 BD 00 15 */ lbz r5, 0x15(r29) +/* 80022350 0001F2B0 38 81 00 0C */ addi r4, r1, 0xc +/* 80022354 0001F2B4 80 7D 00 04 */ lwz r3, 4(r29) +/* 80022358 0001F2B8 48 27 17 FD */ bl Draw__12CNESEmulatorFRC6CColorb +/* 8002235C 0001F2BC 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80022360 0001F2C0 40 82 00 18 */ bne lbl_80022378 +/* 80022364 0001F2C4 80 7D 00 08 */ lwz r3, 8(r29) +/* 80022368 0001F2C8 28 03 00 00 */ cmplwi r3, 0 +/* 8002236C 0001F2CC 41 82 00 0C */ beq lbl_80022378 +/* 80022370 0001F2D0 48 22 26 4D */ bl Draw__15CQuitGameScreenFv +/* 80022374 0001F2D4 48 00 00 0C */ b lbl_80022380 +lbl_80022378: +/* 80022378 0001F2D8 88 7D 00 15 */ lbz r3, 0x15(r29) +/* 8002237C 0001F2DC 48 2E 74 91 */ bl SetUseVideoFilter__9CGraphicsFb +lbl_80022380: +/* 80022380 0001F2E0 C0 3D 00 10 */ lfs f1, 0x10(r29) +/* 80022384 0001F2E4 C0 02 82 F0 */ lfs f0, lbl_805AA010@sda21(r2) +/* 80022388 0001F2E8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8002238C 0001F2EC 40 80 00 A0 */ bge lbl_8002242C +/* 80022390 0001F2F0 C0 02 82 9C */ lfs f0, lbl_805A9FBC@sda21(r2) +/* 80022394 0001F2F4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80022398 0001F2F8 40 81 00 94 */ ble lbl_8002242C +/* 8002239C 0001F2FC 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 800223A0 0001F300 48 2A 78 C5 */ bl GetIsTextSupportFinishedLoading__15CGuiTextSupportCFv +/* 800223A4 0001F304 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800223A8 0001F308 41 82 00 84 */ beq lbl_8002242C +/* 800223AC 0001F30C 38 60 00 00 */ li r3, 0 +/* 800223B0 0001F310 48 2E 96 C1 */ bl SetCullMode__9CGraphicsF12ERglCullMode +/* 800223B4 0001F314 80 8D A0 68 */ lwz r4, gpRender@sda21(r13) +/* 800223B8 0001F318 38 61 00 10 */ addi r3, r1, 0x10 +/* 800223BC 0001F31C C0 22 82 A4 */ lfs f1, lbl_805A9FC4@sda21(r2) +/* 800223C0 0001F320 38 A0 00 01 */ li r5, 1 +/* 800223C4 0001F324 81 84 00 00 */ lwz r12, 0(r4) +/* 800223C8 0001F328 C0 42 82 A8 */ lfs f2, lbl_805A9FC8@sda21(r2) +/* 800223CC 0001F32C 81 8C 00 54 */ lwz r12, 0x54(r12) +/* 800223D0 0001F330 7D 89 03 A6 */ mtctr r12 +/* 800223D4 0001F334 4E 80 04 21 */ bctrl +/* 800223D8 0001F338 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 800223DC 0001F33C 81 83 00 00 */ lwz r12, 0(r3) +/* 800223E0 0001F340 81 8C 00 68 */ lwz r12, 0x68(r12) +/* 800223E4 0001F344 7D 89 03 A6 */ mtctr r12 +/* 800223E8 0001F348 4E 80 04 21 */ bctrl +/* 800223EC 0001F34C 80 6D A0 68 */ lwz r3, gpRender@sda21(r13) +/* 800223F0 0001F350 38 80 00 00 */ li r4, 0 +/* 800223F4 0001F354 38 A0 00 00 */ li r5, 0 +/* 800223F8 0001F358 81 83 00 00 */ lwz r12, 0(r3) +/* 800223FC 0001F35C 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 80022400 0001F360 7D 89 03 A6 */ mtctr r12 +/* 80022404 0001F364 4E 80 04 21 */ bctrl +/* 80022408 0001F368 C0 22 82 F4 */ lfs f1, lbl_805AA014@sda21(r2) +/* 8002240C 0001F36C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80022410 0001F370 C0 42 82 9C */ lfs f2, lbl_805A9FBC@sda21(r2) +/* 80022414 0001F374 C0 62 82 F8 */ lfs f3, lbl_805AA018@sda21(r2) +/* 80022418 0001F378 48 2F 0D 71 */ bl Translate__12CTransform4fFfff +/* 8002241C 0001F37C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80022420 0001F380 48 2E A1 C1 */ bl SetModelMatrix__9CGraphicsFRC12CTransform4f +/* 80022424 0001F384 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 80022428 0001F388 48 2A 71 1D */ bl Render__15CGuiTextSupportFv +lbl_8002242C: +/* 8002242C 0001F38C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80022430 0001F390 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80022434 0001F394 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80022438 0001F398 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 8002243C 0001F39C 7C 08 03 A6 */ mtlr r0 +/* 80022440 0001F3A0 38 21 00 60 */ addi r1, r1, 0x60 +/* 80022444 0001F3A4 4E 80 00 20 */ blr + +.global ProcessUserInput__17SNesEmulatorFrameFRC11CFinalInputPC15CSaveGameScreen +ProcessUserInput__17SNesEmulatorFrameFRC11CFinalInputPC15CSaveGameScreen: +/* 80022448 0001F3A8 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8002244C 0001F3AC 7C 08 02 A6 */ mflr r0 +/* 80022450 0001F3B0 28 05 00 00 */ cmplwi r5, 0 +/* 80022454 0001F3B4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80022458 0001F3B8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8002245C 0001F3BC 3B E0 00 01 */ li r31, 1 +/* 80022460 0001F3C0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80022464 0001F3C4 7C 9E 23 78 */ mr r30, r4 +/* 80022468 0001F3C8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 8002246C 0001F3CC 7C 7D 1B 78 */ mr r29, r3 +/* 80022470 0001F3D0 41 82 00 14 */ beq lbl_80022484 +/* 80022474 0001F3D4 80 05 00 10 */ lwz r0, 0x10(r5) +/* 80022478 0001F3D8 2C 00 00 10 */ cmpwi r0, 0x10 +/* 8002247C 0001F3DC 41 82 00 08 */ beq lbl_80022484 +/* 80022480 0001F3E0 3B E0 00 00 */ li r31, 0 +lbl_80022484: +/* 80022484 0001F3E4 28 05 00 00 */ cmplwi r5, 0 +/* 80022488 0001F3E8 41 82 00 10 */ beq lbl_80022498 +/* 8002248C 0001F3EC 7C A3 2B 78 */ mr r3, r5 +/* 80022490 0001F3F0 7F C4 F3 78 */ mr r4, r30 +/* 80022494 0001F3F4 48 22 D2 DD */ bl ProcessUserInput__15CSaveGameScreenFRC11CFinalInput +lbl_80022498: +/* 80022498 0001F3F8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8002249C 0001F3FC 41 82 00 64 */ beq lbl_80022500 +/* 800224A0 0001F400 80 1D 00 00 */ lwz r0, 0(r29) +/* 800224A4 0001F404 2C 00 00 00 */ cmpwi r0, 0 +/* 800224A8 0001F408 41 82 00 14 */ beq lbl_800224BC +/* 800224AC 0001F40C 41 80 00 54 */ blt lbl_80022500 +/* 800224B0 0001F410 2C 00 00 04 */ cmpwi r0, 4 +/* 800224B4 0001F414 40 80 00 4C */ bge lbl_80022500 +/* 800224B8 0001F418 48 00 00 3C */ b lbl_800224F4 +lbl_800224BC: +/* 800224BC 0001F41C 80 7D 00 04 */ lwz r3, 4(r29) +/* 800224C0 0001F420 7F C4 F3 78 */ mr r4, r30 +/* 800224C4 0001F424 38 A0 00 04 */ li r5, 4 +/* 800224C8 0001F428 48 27 1E 29 */ bl ProcessUserInput__12CNESEmulatorFRC11CFinalInputi +/* 800224CC 0001F42C 80 1E 00 04 */ lwz r0, 4(r30) +/* 800224D0 0001F430 2C 00 00 00 */ cmpwi r0, 0 +/* 800224D4 0001F434 40 82 00 2C */ bne lbl_80022500 +/* 800224D8 0001F438 88 1E 00 2E */ lbz r0, 0x2e(r30) +/* 800224DC 0001F43C 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 800224E0 0001F440 41 82 00 20 */ beq lbl_80022500 +/* 800224E4 0001F444 7F A3 EB 78 */ mr r3, r29 +/* 800224E8 0001F448 38 80 00 03 */ li r4, 3 +/* 800224EC 0001F44C 48 00 03 41 */ bl SetMode__17SNesEmulatorFrameF5EMode +/* 800224F0 0001F450 48 00 00 10 */ b lbl_80022500 +lbl_800224F4: +/* 800224F4 0001F454 80 7D 00 08 */ lwz r3, 8(r29) +/* 800224F8 0001F458 7F C4 F3 78 */ mr r4, r30 +/* 800224FC 0001F45C 48 22 25 A5 */ bl ProcessUserInput__15CQuitGameScreenFRC11CFinalInput +lbl_80022500: +/* 80022500 0001F460 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80022504 0001F464 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80022508 0001F468 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8002250C 0001F46C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80022510 0001F470 7C 08 03 A6 */ mtlr r0 +/* 80022514 0001F474 38 21 00 20 */ addi r1, r1, 0x20 +/* 80022518 0001F478 4E 80 00 20 */ blr + +.global Update__17SNesEmulatorFrameFfR15CSaveGameScreen +Update__17SNesEmulatorFrameFfR15CSaveGameScreen: +/* 8002251C 0001F47C 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80022520 0001F480 7C 08 02 A6 */ mflr r0 +/* 80022524 0001F484 90 01 00 64 */ stw r0, 0x64(r1) +/* 80022528 0001F488 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 8002252C 0001F48C F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80022530 0001F490 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 80022534 0001F494 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 80022538 0001F498 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 8002253C 0001F49C F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 80022540 0001F4A0 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80022544 0001F4A4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80022548 0001F4A8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 8002254C 0001F4AC 93 81 00 20 */ stw r28, 0x20(r1) +/* 80022550 0001F4B0 7C 9F 23 79 */ or. r31, r4, r4 +/* 80022554 0001F4B4 FF A0 08 90 */ fmr f29, f1 +/* 80022558 0001F4B8 7C 7E 1B 78 */ mr r30, r3 +/* 8002255C 0001F4BC 3B 80 00 01 */ li r28, 1 +/* 80022560 0001F4C0 41 82 00 14 */ beq lbl_80022574 +/* 80022564 0001F4C4 80 1F 00 10 */ lwz r0, 0x10(r31) +/* 80022568 0001F4C8 2C 00 00 10 */ cmpwi r0, 0x10 +/* 8002256C 0001F4CC 41 82 00 08 */ beq lbl_80022574 +/* 80022570 0001F4D0 3B 80 00 00 */ li r28, 0 +lbl_80022574: +/* 80022574 0001F4D4 C0 3E 00 10 */ lfs f1, 0x10(r30) +/* 80022578 0001F4D8 C0 0D 81 18 */ lfs f0, lbl_805A6CD8@sda21(r13) +/* 8002257C 0001F4DC EC 21 E8 28 */ fsubs f1, f1, f29 +/* 80022580 0001F4E0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80022584 0001F4E4 D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80022588 0001F4E8 40 80 00 0C */ bge lbl_80022594 +/* 8002258C 0001F4EC 38 61 00 10 */ addi r3, r1, 0x10 +/* 80022590 0001F4F0 48 00 00 08 */ b lbl_80022598 +lbl_80022594: +/* 80022594 0001F4F4 38 6D 81 18 */ addi r3, r13, lbl_805A6CD8@sda21 +lbl_80022598: +/* 80022598 0001F4F8 C0 03 00 00 */ lfs f0, 0(r3) +/* 8002259C 0001F4FC D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 800225A0 0001F500 C0 2D 81 1C */ lfs f1, lbl_805A6CDC@sda21(r13) +/* 800225A4 0001F504 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 800225A8 0001F508 83 BE 00 0C */ lwz r29, 0xc(r30) +/* 800225AC 0001F50C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800225B0 0001F510 40 80 00 0C */ bge lbl_800225BC +/* 800225B4 0001F514 38 6D 81 1C */ addi r3, r13, lbl_805A6CDC@sda21 +/* 800225B8 0001F518 48 00 00 08 */ b lbl_800225C0 +lbl_800225BC: +/* 800225BC 0001F51C 38 7E 00 10 */ addi r3, r30, 0x10 +lbl_800225C0: +/* 800225C0 0001F520 C3 E3 00 00 */ lfs f31, 0(r3) +/* 800225C4 0001F524 48 32 79 E9 */ bl White__6CColorFv +/* 800225C8 0001F528 C0 02 82 AC */ lfs f0, lbl_805A9FCC@sda21(r2) +/* 800225CC 0001F52C EF C0 07 F2 */ fmuls f30, f0, f31 +/* 800225D0 0001F530 F3 C1 A0 08 */ psq_st f30, 8(r1), 1, qr2 +/* 800225D4 0001F534 38 81 00 0C */ addi r4, r1, 0xc +/* 800225D8 0001F538 80 A3 00 00 */ lwz r5, 0(r3) +/* 800225DC 0001F53C 7F A3 EB 78 */ mr r3, r29 +/* 800225E0 0001F540 88 01 00 08 */ lbz r0, 8(r1) +/* 800225E4 0001F544 50 A0 00 2E */ rlwimi r0, r5, 0, 0, 0x17 +/* 800225E8 0001F548 90 01 00 0C */ stw r0, 0xc(r1) +/* 800225EC 0001F54C 48 2A 70 21 */ bl SetGeometryColor__15CGuiTextSupportFRC6CColor +/* 800225F0 0001F550 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 800225F4 0001F554 48 2A 76 71 */ bl GetIsTextSupportFinishedLoading__15CGuiTextSupportCFv +/* 800225F8 0001F558 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800225FC 0001F55C 41 82 00 3C */ beq lbl_80022638 +/* 80022600 0001F560 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80022604 0001F564 48 2A 57 6D */ bl GetBounds__15CGuiTextSupportFv +/* 80022608 0001F568 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 8002260C 0001F56C 80 03 00 08 */ lwz r0, 8(r3) +/* 80022610 0001F570 7C 83 23 78 */ mr r3, r4 +/* 80022614 0001F574 90 04 00 34 */ stw r0, 0x34(r4) +/* 80022618 0001F578 48 2A 5D 4D */ bl ClearRenderBuffer__15CGuiTextSupportFv +/* 8002261C 0001F57C 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 80022620 0001F580 48 2A 57 51 */ bl GetBounds__15CGuiTextSupportFv +/* 80022624 0001F584 80 9E 00 0C */ lwz r4, 0xc(r30) +/* 80022628 0001F588 80 03 00 0C */ lwz r0, 0xc(r3) +/* 8002262C 0001F58C 7C 83 23 78 */ mr r3, r4 +/* 80022630 0001F590 90 04 00 38 */ stw r0, 0x38(r4) +/* 80022634 0001F594 48 2A 5D 31 */ bl ClearRenderBuffer__15CGuiTextSupportFv +lbl_80022638: +/* 80022638 0001F598 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 8002263C 0001F59C 41 82 01 B4 */ beq lbl_800227F0 +/* 80022640 0001F5A0 80 1E 00 00 */ lwz r0, 0(r30) +/* 80022644 0001F5A4 2C 00 00 02 */ cmpwi r0, 2 +/* 80022648 0001F5A8 41 82 01 44 */ beq lbl_8002278C +/* 8002264C 0001F5AC 40 80 00 14 */ bge lbl_80022660 +/* 80022650 0001F5B0 2C 00 00 00 */ cmpwi r0, 0 +/* 80022654 0001F5B4 41 82 00 18 */ beq lbl_8002266C +/* 80022658 0001F5B8 40 80 00 B8 */ bge lbl_80022710 +/* 8002265C 0001F5BC 48 00 01 94 */ b lbl_800227F0 +lbl_80022660: +/* 80022660 0001F5C0 2C 00 00 04 */ cmpwi r0, 4 +/* 80022664 0001F5C4 40 80 01 8C */ bge lbl_800227F0 +/* 80022668 0001F5C8 48 00 01 58 */ b lbl_800227C0 +lbl_8002266C: +/* 8002266C 0001F5CC 80 7E 00 04 */ lwz r3, 4(r30) +/* 80022670 0001F5D0 48 27 1A E1 */ bl Update__12CNESEmulatorFv +/* 80022674 0001F5D4 80 7E 00 04 */ lwz r3, 4(r30) +/* 80022678 0001F5D8 48 27 14 91 */ bl IsGameOver__12CNESEmulatorFv +/* 8002267C 0001F5DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80022680 0001F5E0 40 82 00 0C */ bne lbl_8002268C +/* 80022684 0001F5E4 38 00 00 00 */ li r0, 0 +/* 80022688 0001F5E8 98 1E 00 14 */ stb r0, 0x14(r30) +lbl_8002268C: +/* 8002268C 0001F5EC 80 7E 00 04 */ lwz r3, 4(r30) +/* 80022690 0001F5F0 48 27 14 79 */ bl IsGameOver__12CNESEmulatorFv +/* 80022694 0001F5F4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80022698 0001F5F8 41 82 00 4C */ beq lbl_800226E4 +/* 8002269C 0001F5FC 88 1E 00 14 */ lbz r0, 0x14(r30) +/* 800226A0 0001F600 28 00 00 00 */ cmplwi r0, 0 +/* 800226A4 0001F604 40 82 00 40 */ bne lbl_800226E4 +/* 800226A8 0001F608 38 00 00 01 */ li r0, 1 +/* 800226AC 0001F60C 28 1F 00 00 */ cmplwi r31, 0 +/* 800226B0 0001F610 98 1E 00 14 */ stb r0, 0x14(r30) +/* 800226B4 0001F614 41 82 00 20 */ beq lbl_800226D4 +/* 800226B8 0001F618 88 1F 00 92 */ lbz r0, 0x92(r31) +/* 800226BC 0001F61C 28 00 00 00 */ cmplwi r0, 0 +/* 800226C0 0001F620 40 82 00 14 */ bne lbl_800226D4 +/* 800226C4 0001F624 7F C3 F3 78 */ mr r3, r30 +/* 800226C8 0001F628 38 80 00 01 */ li r4, 1 +/* 800226CC 0001F62C 48 00 01 61 */ bl SetMode__17SNesEmulatorFrameF5EMode +/* 800226D0 0001F630 48 00 01 20 */ b lbl_800227F0 +lbl_800226D4: +/* 800226D4 0001F634 7F C3 F3 78 */ mr r3, r30 +/* 800226D8 0001F638 38 80 00 02 */ li r4, 2 +/* 800226DC 0001F63C 48 00 01 51 */ bl SetMode__17SNesEmulatorFrameF5EMode +/* 800226E0 0001F640 48 00 01 10 */ b lbl_800227F0 +lbl_800226E4: +/* 800226E4 0001F644 80 7E 00 04 */ lwz r3, 4(r30) +/* 800226E8 0001F648 48 27 14 65 */ bl GetPasswordEntryState__12CNESEmulatorFv +/* 800226EC 0001F64C 2C 03 00 01 */ cmpwi r3, 1 +/* 800226F0 0001F650 40 82 01 00 */ bne lbl_800227F0 +/* 800226F4 0001F654 28 1F 00 00 */ cmplwi r31, 0 +/* 800226F8 0001F658 41 82 00 F8 */ beq lbl_800227F0 +/* 800226FC 0001F65C 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 80022700 0001F660 80 7E 00 04 */ lwz r3, 4(r30) +/* 80022704 0001F664 38 84 00 AC */ addi r4, r4, 0xac +/* 80022708 0001F668 48 27 14 09 */ bl LoadPassword__12CNESEmulatorFPCc +/* 8002270C 0001F66C 48 00 00 E4 */ b lbl_800227F0 +lbl_80022710: +/* 80022710 0001F670 28 1F 00 00 */ cmplwi r31, 0 +/* 80022714 0001F674 41 82 00 68 */ beq lbl_8002277C +/* 80022718 0001F678 FC 20 E8 90 */ fmr f1, f29 +/* 8002271C 0001F67C 80 7E 00 08 */ lwz r3, 8(r30) +/* 80022720 0001F680 48 22 22 09 */ bl Update__15CQuitGameScreenFv +/* 80022724 0001F684 2C 03 00 01 */ cmpwi r3, 1 +/* 80022728 0001F688 40 82 00 3C */ bne lbl_80022764 +/* 8002272C 0001F68C 80 8D A0 80 */ lwz r4, gpGameState@sda21(r13) +/* 80022730 0001F690 80 7E 00 04 */ lwz r3, 4(r30) +/* 80022734 0001F694 3B 84 00 AC */ addi r28, r4, 0xac +/* 80022738 0001F698 48 27 13 C9 */ bl GetPassword__12CNESEmulatorFv +/* 8002273C 0001F69C 7C 64 1B 78 */ mr r4, r3 +/* 80022740 0001F6A0 7F 83 E3 78 */ mr r3, r28 +/* 80022744 0001F6A4 38 A0 00 12 */ li r5, 0x12 +/* 80022748 0001F6A8 4B FE 0D 49 */ bl memcpy +/* 8002274C 0001F6AC 7F E3 FB 78 */ mr r3, r31 +/* 80022750 0001F6B0 48 22 CF 21 */ bl SaveNESState__15CSaveGameScreenFv +/* 80022754 0001F6B4 7F C3 F3 78 */ mr r3, r30 +/* 80022758 0001F6B8 38 80 00 02 */ li r4, 2 +/* 8002275C 0001F6BC 48 00 00 D1 */ bl SetMode__17SNesEmulatorFrameF5EMode +/* 80022760 0001F6C0 48 00 00 90 */ b lbl_800227F0 +lbl_80022764: +/* 80022764 0001F6C4 2C 03 00 02 */ cmpwi r3, 2 +/* 80022768 0001F6C8 40 82 00 88 */ bne lbl_800227F0 +/* 8002276C 0001F6CC 7F C3 F3 78 */ mr r3, r30 +/* 80022770 0001F6D0 38 80 00 02 */ li r4, 2 +/* 80022774 0001F6D4 48 00 00 B9 */ bl SetMode__17SNesEmulatorFrameF5EMode +/* 80022778 0001F6D8 48 00 00 78 */ b lbl_800227F0 +lbl_8002277C: +/* 8002277C 0001F6DC 7F C3 F3 78 */ mr r3, r30 +/* 80022780 0001F6E0 38 80 00 02 */ li r4, 2 +/* 80022784 0001F6E4 48 00 00 A9 */ bl SetMode__17SNesEmulatorFrameF5EMode +/* 80022788 0001F6E8 48 00 00 68 */ b lbl_800227F0 +lbl_8002278C: +/* 8002278C 0001F6EC FC 20 E8 90 */ fmr f1, f29 +/* 80022790 0001F6F0 80 7E 00 08 */ lwz r3, 8(r30) +/* 80022794 0001F6F4 48 22 21 95 */ bl Update__15CQuitGameScreenFv +/* 80022798 0001F6F8 2C 03 00 01 */ cmpwi r3, 1 +/* 8002279C 0001F6FC 40 82 00 14 */ bne lbl_800227B0 +/* 800227A0 0001F700 7F C3 F3 78 */ mr r3, r30 +/* 800227A4 0001F704 38 80 00 00 */ li r4, 0 +/* 800227A8 0001F708 48 00 00 85 */ bl SetMode__17SNesEmulatorFrameF5EMode +/* 800227AC 0001F70C 48 00 00 44 */ b lbl_800227F0 +lbl_800227B0: +/* 800227B0 0001F710 2C 03 00 02 */ cmpwi r3, 2 +/* 800227B4 0001F714 40 82 00 3C */ bne lbl_800227F0 +/* 800227B8 0001F718 38 60 00 01 */ li r3, 1 +/* 800227BC 0001F71C 48 00 00 38 */ b lbl_800227F4 +lbl_800227C0: +/* 800227C0 0001F720 FC 20 E8 90 */ fmr f1, f29 +/* 800227C4 0001F724 80 7E 00 08 */ lwz r3, 8(r30) +/* 800227C8 0001F728 48 22 21 61 */ bl Update__15CQuitGameScreenFv +/* 800227CC 0001F72C 2C 03 00 01 */ cmpwi r3, 1 +/* 800227D0 0001F730 40 82 00 0C */ bne lbl_800227DC +/* 800227D4 0001F734 38 60 00 01 */ li r3, 1 +/* 800227D8 0001F738 48 00 00 1C */ b lbl_800227F4 +lbl_800227DC: +/* 800227DC 0001F73C 2C 03 00 02 */ cmpwi r3, 2 +/* 800227E0 0001F740 40 82 00 10 */ bne lbl_800227F0 +/* 800227E4 0001F744 7F C3 F3 78 */ mr r3, r30 +/* 800227E8 0001F748 38 80 00 00 */ li r4, 0 +/* 800227EC 0001F74C 48 00 00 41 */ bl SetMode__17SNesEmulatorFrameF5EMode +lbl_800227F0: +/* 800227F0 0001F750 38 60 00 00 */ li r3, 0 +lbl_800227F4: +/* 800227F4 0001F754 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 800227F8 0001F758 CB E1 00 50 */ lfd f31, 0x50(r1) +/* 800227FC 0001F75C E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 80022800 0001F760 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 80022804 0001F764 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 80022808 0001F768 CB A1 00 30 */ lfd f29, 0x30(r1) +/* 8002280C 0001F76C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80022810 0001F770 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80022814 0001F774 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80022818 0001F778 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8002281C 0001F77C 83 81 00 20 */ lwz r28, 0x20(r1) +/* 80022820 0001F780 7C 08 03 A6 */ mtlr r0 +/* 80022824 0001F784 38 21 00 60 */ addi r1, r1, 0x60 +/* 80022828 0001F788 4E 80 00 20 */ blr + +.global SetMode__17SNesEmulatorFrameF5EMode +SetMode__17SNesEmulatorFrameF5EMode: +/* 8002282C 0001F78C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80022830 0001F790 7C 08 02 A6 */ mflr r0 +/* 80022834 0001F794 90 01 00 24 */ stw r0, 0x24(r1) +/* 80022838 0001F798 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8002283C 0001F79C 7C 9F 23 78 */ mr r31, r4 +/* 80022840 0001F7A0 2C 1F 00 02 */ cmpwi r31, 2 +/* 80022844 0001F7A4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80022848 0001F7A8 7C 7E 1B 78 */ mr r30, r3 +/* 8002284C 0001F7AC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80022850 0001F7B0 93 81 00 10 */ stw r28, 0x10(r1) +/* 80022854 0001F7B4 41 82 00 FC */ beq lbl_80022950 +/* 80022858 0001F7B8 40 80 00 14 */ bge lbl_8002286C +/* 8002285C 0001F7BC 2C 1F 00 00 */ cmpwi r31, 0 +/* 80022860 0001F7C0 41 82 00 18 */ beq lbl_80022878 +/* 80022864 0001F7C4 40 80 00 50 */ bge lbl_800228B4 +/* 80022868 0001F7C8 48 00 02 1C */ b lbl_80022A84 +lbl_8002286C: +/* 8002286C 0001F7CC 2C 1F 00 04 */ cmpwi r31, 4 +/* 80022870 0001F7D0 40 80 02 14 */ bge lbl_80022A84 +/* 80022874 0001F7D4 48 00 01 78 */ b lbl_800229EC +lbl_80022878: +/* 80022878 0001F7D8 83 BE 00 08 */ lwz r29, 8(r30) +/* 8002287C 0001F7DC 28 1D 00 00 */ cmplwi r29, 0 +/* 80022880 0001F7E0 41 82 00 28 */ beq lbl_800228A8 +/* 80022884 0001F7E4 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022888 0001F7E8 41 82 00 18 */ beq lbl_800228A0 +/* 8002288C 0001F7EC 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022890 0001F7F0 41 82 00 10 */ beq lbl_800228A0 +/* 80022894 0001F7F4 38 7D 00 04 */ addi r3, r29, 4 +/* 80022898 0001F7F8 38 80 00 00 */ li r4, 0 +/* 8002289C 0001F7FC 48 31 E5 A5 */ bl __dt__6CTokenFv +lbl_800228A0: +/* 800228A0 0001F800 7F A3 EB 78 */ mr r3, r29 +/* 800228A4 0001F804 48 2F 30 8D */ bl Free__7CMemoryFPCv +lbl_800228A8: +/* 800228A8 0001F808 38 00 00 00 */ li r0, 0 +/* 800228AC 0001F80C 90 1E 00 08 */ stw r0, 8(r30) +/* 800228B0 0001F810 48 00 01 D4 */ b lbl_80022A84 +lbl_800228B4: +/* 800228B4 0001F814 83 BE 00 08 */ lwz r29, 8(r30) +/* 800228B8 0001F818 28 1D 00 00 */ cmplwi r29, 0 +/* 800228BC 0001F81C 41 82 00 28 */ beq lbl_800228E4 +/* 800228C0 0001F820 34 1D 00 04 */ addic. r0, r29, 4 +/* 800228C4 0001F824 41 82 00 18 */ beq lbl_800228DC +/* 800228C8 0001F828 34 1D 00 04 */ addic. r0, r29, 4 +/* 800228CC 0001F82C 41 82 00 10 */ beq lbl_800228DC +/* 800228D0 0001F830 38 7D 00 04 */ addi r3, r29, 4 +/* 800228D4 0001F834 38 80 00 00 */ li r4, 0 +/* 800228D8 0001F838 48 31 E5 69 */ bl __dt__6CTokenFv +lbl_800228DC: +/* 800228DC 0001F83C 7F A3 EB 78 */ mr r3, r29 +/* 800228E0 0001F840 48 2F 30 51 */ bl Free__7CMemoryFPCv +lbl_800228E4: +/* 800228E4 0001F844 38 00 00 00 */ li r0, 0 +/* 800228E8 0001F848 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 800228EC 0001F84C 38 63 C6 44 */ addi r3, r3, lbl_803CC644@l +/* 800228F0 0001F850 90 1E 00 08 */ stw r0, 8(r30) +/* 800228F4 0001F854 38 83 01 14 */ addi r4, r3, 0x114 +/* 800228F8 0001F858 38 60 00 1C */ li r3, 0x1c +/* 800228FC 0001F85C 38 A0 00 00 */ li r5, 0 +/* 80022900 0001F860 48 2F 2F 6D */ bl __nw__FUlPCcPCc +/* 80022904 0001F864 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80022908 0001F868 41 82 00 10 */ beq lbl_80022918 +/* 8002290C 0001F86C 38 80 00 02 */ li r4, 2 +/* 80022910 0001F870 48 22 22 01 */ bl __ct__15CQuitGameScreenF9EQuitType +/* 80022914 0001F874 7C 7C 1B 78 */ mr r28, r3 +lbl_80022918: +/* 80022918 0001F878 83 BE 00 08 */ lwz r29, 8(r30) +/* 8002291C 0001F87C 28 1D 00 00 */ cmplwi r29, 0 +/* 80022920 0001F880 41 82 00 28 */ beq lbl_80022948 +/* 80022924 0001F884 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022928 0001F888 41 82 00 18 */ beq lbl_80022940 +/* 8002292C 0001F88C 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022930 0001F890 41 82 00 10 */ beq lbl_80022940 +/* 80022934 0001F894 38 7D 00 04 */ addi r3, r29, 4 +/* 80022938 0001F898 38 80 00 00 */ li r4, 0 +/* 8002293C 0001F89C 48 31 E5 05 */ bl __dt__6CTokenFv +lbl_80022940: +/* 80022940 0001F8A0 7F A3 EB 78 */ mr r3, r29 +/* 80022944 0001F8A4 48 2F 2F ED */ bl Free__7CMemoryFPCv +lbl_80022948: +/* 80022948 0001F8A8 93 9E 00 08 */ stw r28, 8(r30) +/* 8002294C 0001F8AC 48 00 01 38 */ b lbl_80022A84 +lbl_80022950: +/* 80022950 0001F8B0 83 BE 00 08 */ lwz r29, 8(r30) +/* 80022954 0001F8B4 28 1D 00 00 */ cmplwi r29, 0 +/* 80022958 0001F8B8 41 82 00 28 */ beq lbl_80022980 +/* 8002295C 0001F8BC 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022960 0001F8C0 41 82 00 18 */ beq lbl_80022978 +/* 80022964 0001F8C4 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022968 0001F8C8 41 82 00 10 */ beq lbl_80022978 +/* 8002296C 0001F8CC 38 7D 00 04 */ addi r3, r29, 4 +/* 80022970 0001F8D0 38 80 00 00 */ li r4, 0 +/* 80022974 0001F8D4 48 31 E4 CD */ bl __dt__6CTokenFv +lbl_80022978: +/* 80022978 0001F8D8 7F A3 EB 78 */ mr r3, r29 +/* 8002297C 0001F8DC 48 2F 2F B5 */ bl Free__7CMemoryFPCv +lbl_80022980: +/* 80022980 0001F8E0 38 00 00 00 */ li r0, 0 +/* 80022984 0001F8E4 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022988 0001F8E8 38 63 C6 44 */ addi r3, r3, lbl_803CC644@l +/* 8002298C 0001F8EC 90 1E 00 08 */ stw r0, 8(r30) +/* 80022990 0001F8F0 38 83 01 14 */ addi r4, r3, 0x114 +/* 80022994 0001F8F4 38 60 00 1C */ li r3, 0x1c +/* 80022998 0001F8F8 38 A0 00 00 */ li r5, 0 +/* 8002299C 0001F8FC 48 2F 2E D1 */ bl __nw__FUlPCcPCc +/* 800229A0 0001F900 7C 7C 1B 79 */ or. r28, r3, r3 +/* 800229A4 0001F904 41 82 00 10 */ beq lbl_800229B4 +/* 800229A8 0001F908 38 80 00 04 */ li r4, 4 +/* 800229AC 0001F90C 48 22 21 65 */ bl __ct__15CQuitGameScreenF9EQuitType +/* 800229B0 0001F910 7C 7C 1B 78 */ mr r28, r3 +lbl_800229B4: +/* 800229B4 0001F914 83 BE 00 08 */ lwz r29, 8(r30) +/* 800229B8 0001F918 28 1D 00 00 */ cmplwi r29, 0 +/* 800229BC 0001F91C 41 82 00 28 */ beq lbl_800229E4 +/* 800229C0 0001F920 34 1D 00 04 */ addic. r0, r29, 4 +/* 800229C4 0001F924 41 82 00 18 */ beq lbl_800229DC +/* 800229C8 0001F928 34 1D 00 04 */ addic. r0, r29, 4 +/* 800229CC 0001F92C 41 82 00 10 */ beq lbl_800229DC +/* 800229D0 0001F930 38 7D 00 04 */ addi r3, r29, 4 +/* 800229D4 0001F934 38 80 00 00 */ li r4, 0 +/* 800229D8 0001F938 48 31 E4 69 */ bl __dt__6CTokenFv +lbl_800229DC: +/* 800229DC 0001F93C 7F A3 EB 78 */ mr r3, r29 +/* 800229E0 0001F940 48 2F 2F 51 */ bl Free__7CMemoryFPCv +lbl_800229E4: +/* 800229E4 0001F944 93 9E 00 08 */ stw r28, 8(r30) +/* 800229E8 0001F948 48 00 00 9C */ b lbl_80022A84 +lbl_800229EC: +/* 800229EC 0001F94C 83 BE 00 08 */ lwz r29, 8(r30) +/* 800229F0 0001F950 28 1D 00 00 */ cmplwi r29, 0 +/* 800229F4 0001F954 41 82 00 28 */ beq lbl_80022A1C +/* 800229F8 0001F958 34 1D 00 04 */ addic. r0, r29, 4 +/* 800229FC 0001F95C 41 82 00 18 */ beq lbl_80022A14 +/* 80022A00 0001F960 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022A04 0001F964 41 82 00 10 */ beq lbl_80022A14 +/* 80022A08 0001F968 38 7D 00 04 */ addi r3, r29, 4 +/* 80022A0C 0001F96C 38 80 00 00 */ li r4, 0 +/* 80022A10 0001F970 48 31 E4 31 */ bl __dt__6CTokenFv +lbl_80022A14: +/* 80022A14 0001F974 7F A3 EB 78 */ mr r3, r29 +/* 80022A18 0001F978 48 2F 2F 19 */ bl Free__7CMemoryFPCv +lbl_80022A1C: +/* 80022A1C 0001F97C 38 00 00 00 */ li r0, 0 +/* 80022A20 0001F980 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022A24 0001F984 38 63 C6 44 */ addi r3, r3, lbl_803CC644@l +/* 80022A28 0001F988 90 1E 00 08 */ stw r0, 8(r30) +/* 80022A2C 0001F98C 38 83 01 14 */ addi r4, r3, 0x114 +/* 80022A30 0001F990 38 60 00 1C */ li r3, 0x1c +/* 80022A34 0001F994 38 A0 00 00 */ li r5, 0 +/* 80022A38 0001F998 48 2F 2E 35 */ bl __nw__FUlPCcPCc +/* 80022A3C 0001F99C 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80022A40 0001F9A0 41 82 00 10 */ beq lbl_80022A50 +/* 80022A44 0001F9A4 38 80 00 03 */ li r4, 3 +/* 80022A48 0001F9A8 48 22 20 C9 */ bl __ct__15CQuitGameScreenF9EQuitType +/* 80022A4C 0001F9AC 7C 7C 1B 78 */ mr r28, r3 +lbl_80022A50: +/* 80022A50 0001F9B0 83 BE 00 08 */ lwz r29, 8(r30) +/* 80022A54 0001F9B4 28 1D 00 00 */ cmplwi r29, 0 +/* 80022A58 0001F9B8 41 82 00 28 */ beq lbl_80022A80 +/* 80022A5C 0001F9BC 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022A60 0001F9C0 41 82 00 18 */ beq lbl_80022A78 +/* 80022A64 0001F9C4 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022A68 0001F9C8 41 82 00 10 */ beq lbl_80022A78 +/* 80022A6C 0001F9CC 38 7D 00 04 */ addi r3, r29, 4 +/* 80022A70 0001F9D0 38 80 00 00 */ li r4, 0 +/* 80022A74 0001F9D4 48 31 E3 CD */ bl __dt__6CTokenFv +lbl_80022A78: +/* 80022A78 0001F9D8 7F A3 EB 78 */ mr r3, r29 +/* 80022A7C 0001F9DC 48 2F 2E B5 */ bl Free__7CMemoryFPCv +lbl_80022A80: +/* 80022A80 0001F9E0 93 9E 00 08 */ stw r28, 8(r30) +lbl_80022A84: +/* 80022A84 0001F9E4 93 FE 00 00 */ stw r31, 0(r30) +/* 80022A88 0001F9E8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80022A8C 0001F9EC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80022A90 0001F9F0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80022A94 0001F9F4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80022A98 0001F9F8 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80022A9C 0001F9FC 7C 08 03 A6 */ mtlr r0 +/* 80022AA0 0001FA00 38 21 00 20 */ addi r1, r1, 0x20 +/* 80022AA4 0001FA04 4E 80 00 20 */ blr + +.global __dt__17SNesEmulatorFrameFv +__dt__17SNesEmulatorFrameFv: +/* 80022AA8 0001FA08 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80022AAC 0001FA0C 7C 08 02 A6 */ mflr r0 +/* 80022AB0 0001FA10 90 01 00 24 */ stw r0, 0x24(r1) +/* 80022AB4 0001FA14 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80022AB8 0001FA18 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80022ABC 0001FA1C 7C 9E 23 78 */ mr r30, r4 +/* 80022AC0 0001FA20 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80022AC4 0001FA24 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80022AC8 0001FA28 41 82 00 74 */ beq lbl_80022B3C +/* 80022ACC 0001FA2C 34 1D 00 0C */ addic. r0, r29, 0xc +/* 80022AD0 0001FA30 41 82 00 10 */ beq lbl_80022AE0 +/* 80022AD4 0001FA34 80 7D 00 0C */ lwz r3, 0xc(r29) +/* 80022AD8 0001FA38 38 80 00 01 */ li r4, 1 +/* 80022ADC 0001FA3C 48 2A 71 BD */ bl __dt__15CGuiTextSupportFv +lbl_80022AE0: +/* 80022AE0 0001FA40 34 1D 00 08 */ addic. r0, r29, 8 +/* 80022AE4 0001FA44 41 82 00 34 */ beq lbl_80022B18 +/* 80022AE8 0001FA48 83 FD 00 08 */ lwz r31, 8(r29) +/* 80022AEC 0001FA4C 28 1F 00 00 */ cmplwi r31, 0 +/* 80022AF0 0001FA50 41 82 00 28 */ beq lbl_80022B18 +/* 80022AF4 0001FA54 34 1F 00 04 */ addic. r0, r31, 4 +/* 80022AF8 0001FA58 41 82 00 18 */ beq lbl_80022B10 +/* 80022AFC 0001FA5C 34 1F 00 04 */ addic. r0, r31, 4 +/* 80022B00 0001FA60 41 82 00 10 */ beq lbl_80022B10 +/* 80022B04 0001FA64 38 7F 00 04 */ addi r3, r31, 4 +/* 80022B08 0001FA68 38 80 00 00 */ li r4, 0 +/* 80022B0C 0001FA6C 48 31 E3 35 */ bl __dt__6CTokenFv +lbl_80022B10: +/* 80022B10 0001FA70 7F E3 FB 78 */ mr r3, r31 +/* 80022B14 0001FA74 48 2F 2E 1D */ bl Free__7CMemoryFPCv +lbl_80022B18: +/* 80022B18 0001FA78 34 1D 00 04 */ addic. r0, r29, 4 +/* 80022B1C 0001FA7C 41 82 00 10 */ beq lbl_80022B2C +/* 80022B20 0001FA80 80 7D 00 04 */ lwz r3, 4(r29) +/* 80022B24 0001FA84 38 80 00 01 */ li r4, 1 +/* 80022B28 0001FA88 48 27 19 FD */ bl __dt__12CNESEmulatorFv +lbl_80022B2C: +/* 80022B2C 0001FA8C 7F C0 07 35 */ extsh. r0, r30 +/* 80022B30 0001FA90 40 81 00 0C */ ble lbl_80022B3C +/* 80022B34 0001FA94 7F A3 EB 78 */ mr r3, r29 +/* 80022B38 0001FA98 48 2F 2D F9 */ bl Free__7CMemoryFPCv +lbl_80022B3C: +/* 80022B3C 0001FA9C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80022B40 0001FAA0 7F A3 EB 78 */ mr r3, r29 +/* 80022B44 0001FAA4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80022B48 0001FAA8 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80022B4C 0001FAAC 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80022B50 0001FAB0 7C 08 03 A6 */ mtlr r0 +/* 80022B54 0001FAB4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80022B58 0001FAB8 4E 80 00 20 */ blr + +.global __ct__17SNesEmulatorFrameFv +__ct__17SNesEmulatorFrameFv: +/* 80022B5C 0001FABC 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80022B60 0001FAC0 7C 08 02 A6 */ mflr r0 +/* 80022B64 0001FAC4 38 A0 00 00 */ li r5, 0 +/* 80022B68 0001FAC8 90 01 00 54 */ stw r0, 0x54(r1) +/* 80022B6C 0001FACC 38 00 00 00 */ li r0, 0 +/* 80022B70 0001FAD0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80022B74 0001FAD4 7C 7F 1B 78 */ mr r31, r3 +/* 80022B78 0001FAD8 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022B7C 0001FADC 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80022B80 0001FAE0 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80022B84 0001FAE4 38 60 00 54 */ li r3, 0x54 +/* 80022B88 0001FAE8 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80022B8C 0001FAEC 38 84 01 14 */ addi r4, r4, 0x114 +/* 80022B90 0001FAF0 93 81 00 40 */ stw r28, 0x40(r1) +/* 80022B94 0001FAF4 90 1F 00 00 */ stw r0, 0(r31) +/* 80022B98 0001FAF8 48 2F 2C D5 */ bl __nw__FUlPCcPCc +/* 80022B9C 0001FAFC 7C 60 1B 79 */ or. r0, r3, r3 +/* 80022BA0 0001FB00 41 82 00 0C */ beq lbl_80022BAC +/* 80022BA4 0001FB04 48 27 1A C5 */ bl __ct__12CNESEmulatorFv +/* 80022BA8 0001FB08 7C 60 1B 78 */ mr r0, r3 +lbl_80022BAC: +/* 80022BAC 0001FB0C 90 1F 00 04 */ stw r0, 4(r31) +/* 80022BB0 0001FB10 38 C0 00 00 */ li r6, 0 +/* 80022BB4 0001FB14 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022BB8 0001FB18 C0 02 82 FC */ lfs f0, lbl_805AA01C@sda21(r2) +/* 80022BBC 0001FB1C 90 DF 00 08 */ stw r6, 8(r31) +/* 80022BC0 0001FB20 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80022BC4 0001FB24 38 00 00 01 */ li r0, 1 +/* 80022BC8 0001FB28 38 60 03 0C */ li r3, 0x30c +/* 80022BCC 0001FB2C 90 DF 00 0C */ stw r6, 0xc(r31) +/* 80022BD0 0001FB30 38 84 01 14 */ addi r4, r4, 0x114 +/* 80022BD4 0001FB34 38 A0 00 00 */ li r5, 0 +/* 80022BD8 0001FB38 D0 1F 00 10 */ stfs f0, 0x10(r31) +/* 80022BDC 0001FB3C 98 DF 00 14 */ stb r6, 0x14(r31) +/* 80022BE0 0001FB40 98 1F 00 15 */ stb r0, 0x15(r31) +/* 80022BE4 0001FB44 48 2F 2C 89 */ bl __nw__FUlPCcPCc +/* 80022BE8 0001FB48 7C 7C 1B 79 */ or. r28, r3, r3 +/* 80022BEC 0001FB4C 41 82 00 88 */ beq lbl_80022C74 +/* 80022BF0 0001FB50 38 00 FF FF */ li r0, -1 +/* 80022BF4 0001FB54 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022BF8 0001FB58 90 01 00 14 */ stw r0, 0x14(r1) +/* 80022BFC 0001FB5C 38 83 C6 44 */ addi r4, r3, lbl_803CC644@l +/* 80022C00 0001FB60 80 6D A0 60 */ lwz r3, gpResourceFactory@sda21(r13) +/* 80022C04 0001FB64 38 84 04 43 */ addi r4, r4, 0x443 +/* 80022C08 0001FB68 90 01 00 10 */ stw r0, 0x10(r1) +/* 80022C0C 0001FB6C 81 83 00 00 */ lwz r12, 0(r3) +/* 80022C10 0001FB70 81 8C 00 1C */ lwz r12, 0x1c(r12) +/* 80022C14 0001FB74 7D 89 03 A6 */ mtctr r12 +/* 80022C18 0001FB78 4E 80 04 21 */ bctrl +/* 80022C1C 0001FB7C 7C 7D 1B 78 */ mr r29, r3 +/* 80022C20 0001FB80 48 32 73 95 */ bl Black__6CColorFv +/* 80022C24 0001FB84 7C 7E 1B 78 */ mr r30, r3 +/* 80022C28 0001FB88 38 61 00 28 */ addi r3, r1, 0x28 +/* 80022C2C 0001FB8C 38 80 00 00 */ li r4, 0 +/* 80022C30 0001FB90 38 A0 00 01 */ li r5, 1 +/* 80022C34 0001FB94 38 C0 00 00 */ li r6, 0 +/* 80022C38 0001FB98 38 E0 00 01 */ li r7, 1 +/* 80022C3C 0001FB9C 39 00 00 00 */ li r8, 0 +/* 80022C40 0001FBA0 48 2A 74 05 */ bl __ct__18CGuiTextPropertiesFv +/* 80022C44 0001FBA4 80 0D A0 64 */ lwz r0, gpSimplePool@sda21(r13) +/* 80022C48 0001FBA8 7C 65 1B 78 */ mr r5, r3 +/* 80022C4C 0001FBAC 7F 83 E3 78 */ mr r3, r28 +/* 80022C50 0001FBB0 7F C7 F3 78 */ mr r7, r30 +/* 80022C54 0001FBB4 90 01 00 08 */ stw r0, 8(r1) +/* 80022C58 0001FBB8 38 C1 00 10 */ addi r6, r1, 0x10 +/* 80022C5C 0001FBBC 39 01 00 14 */ addi r8, r1, 0x14 +/* 80022C60 0001FBC0 39 20 00 00 */ li r9, 0 +/* 80022C64 0001FBC4 80 9D 00 04 */ lwz r4, 4(r29) +/* 80022C68 0001FBC8 39 40 00 00 */ li r10, 0 +/* 80022C6C 0001FBCC 48 2A 71 D1 */ bl __ct__15CGuiTextSupportFv +/* 80022C70 0001FBD0 7C 7C 1B 78 */ mr r28, r3 +lbl_80022C74: +/* 80022C74 0001FBD4 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80022C78 0001FBD8 38 80 00 01 */ li r4, 1 +/* 80022C7C 0001FBDC 48 2A 70 1D */ bl __dt__15CGuiTextSupportFv +/* 80022C80 0001FBE0 93 9F 00 0C */ stw r28, 0xc(r31) +/* 80022C84 0001FBE4 38 80 00 67 */ li r4, 0x67 +/* 80022C88 0001FBE8 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80022C8C 0001FBEC 48 33 3A 71 */ bl GetString__12CStringTableCFi +/* 80022C90 0001FBF0 7C 64 1B 78 */ mr r4, r3 +/* 80022C94 0001FBF4 38 61 00 18 */ addi r3, r1, 0x18 +/* 80022C98 0001FBF8 4B FF 2D 59 */ bl wstring_l__4rstlFPCw +/* 80022C9C 0001FBFC 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80022CA0 0001FC00 38 81 00 18 */ addi r4, r1, 0x18 +/* 80022CA4 0001FC04 38 A0 00 00 */ li r5, 0 +/* 80022CA8 0001FC08 48 2A 6B DD */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80022CAC 0001FC0C 38 61 00 18 */ addi r3, r1, 0x18 +/* 80022CB0 0001FC10 48 31 A4 85 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80022CB4 0001FC14 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80022CB8 0001FC18 48 2A 50 B9 */ bl GetBounds__15CGuiTextSupportFv +/* 80022CBC 0001FC1C 80 9F 00 0C */ lwz r4, 0xc(r31) +/* 80022CC0 0001FC20 80 03 00 08 */ lwz r0, 8(r3) +/* 80022CC4 0001FC24 7C 83 23 78 */ mr r3, r4 +/* 80022CC8 0001FC28 90 04 00 34 */ stw r0, 0x34(r4) +/* 80022CCC 0001FC2C 48 2A 56 99 */ bl ClearRenderBuffer__15CGuiTextSupportFv +/* 80022CD0 0001FC30 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80022CD4 0001FC34 48 2A 50 9D */ bl GetBounds__15CGuiTextSupportFv +/* 80022CD8 0001FC38 80 9F 00 0C */ lwz r4, 0xc(r31) +/* 80022CDC 0001FC3C 80 03 00 0C */ lwz r0, 0xc(r3) +/* 80022CE0 0001FC40 7C 83 23 78 */ mr r3, r4 +/* 80022CE4 0001FC44 90 04 00 38 */ stw r0, 0x38(r4) +/* 80022CE8 0001FC48 48 2A 56 7D */ bl ClearRenderBuffer__15CGuiTextSupportFv +/* 80022CEC 0001FC4C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80022CF0 0001FC50 7F E3 FB 78 */ mr r3, r31 +/* 80022CF4 0001FC54 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80022CF8 0001FC58 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80022CFC 0001FC5C 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80022D00 0001FC60 83 81 00 40 */ lwz r28, 0x40(r1) +/* 80022D04 0001FC64 7C 08 03 A6 */ mtlr r0 +/* 80022D08 0001FC68 38 21 00 50 */ addi r1, r1, 0x50 +/* 80022D0C 0001FC6C 4E 80 00 20 */ blr + +.global sub_80022d10 +sub_80022d10: +/* 80022D10 0001FC70 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80022D14 0001FC74 7C 08 02 A6 */ mflr r0 +/* 80022D18 0001FC78 38 A0 00 00 */ li r5, 0 +/* 80022D1C 0001FC7C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80022D20 0001FC80 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80022D24 0001FC84 7C 9F 23 78 */ mr r31, r4 +/* 80022D28 0001FC88 93 C1 00 08 */ stw r30, 8(r1) +/* 80022D2C 0001FC8C 7C 7E 1B 78 */ mr r30, r3 +/* 80022D30 0001FC90 80 63 00 00 */ lwz r3, 0(r3) +/* 80022D34 0001FC94 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80022D38 0001FC98 48 2A 6B 4D */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80022D3C 0001FC9C 80 7E 00 04 */ lwz r3, 4(r30) +/* 80022D40 0001FCA0 7F E4 FB 78 */ mr r4, r31 +/* 80022D44 0001FCA4 38 A0 00 00 */ li r5, 0 +/* 80022D48 0001FCA8 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80022D4C 0001FCAC 48 2A 6B 39 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80022D50 0001FCB0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80022D54 0001FCB4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80022D58 0001FCB8 83 C1 00 08 */ lwz r30, 8(r1) +/* 80022D5C 0001FCBC 7C 08 03 A6 */ mtlr r0 +/* 80022D60 0001FCC0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80022D64 0001FCC4 4E 80 00 20 */ blr + +.global SetPairText__12SGuiTextPairFRCQ24rstl7wstring +SetPairText__12SGuiTextPairFRCQ24rstl7wstring: +/* 80022D68 0001FCC8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80022D6C 0001FCCC 7C 08 02 A6 */ mflr r0 +/* 80022D70 0001FCD0 38 A0 FF FF */ li r5, -1 +/* 80022D74 0001FCD4 90 01 00 44 */ stw r0, 0x44(r1) +/* 80022D78 0001FCD8 38 C1 00 0C */ addi r6, r1, 0xc +/* 80022D7C 0001FCDC 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80022D80 0001FCE0 7C 9F 23 78 */ mr r31, r4 +/* 80022D84 0001FCE4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80022D88 0001FCE8 7C 7E 1B 78 */ mr r30, r3 +/* 80022D8C 0001FCEC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80022D90 0001FCF0 48 31 AA 2D */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80022D94 0001FCF4 80 7E 00 00 */ lwz r3, 0(r30) +/* 80022D98 0001FCF8 38 81 00 20 */ addi r4, r1, 0x20 +/* 80022D9C 0001FCFC 38 A0 00 00 */ li r5, 0 +/* 80022DA0 0001FD00 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80022DA4 0001FD04 48 2A 6A E1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80022DA8 0001FD08 38 61 00 20 */ addi r3, r1, 0x20 +/* 80022DAC 0001FD0C 48 31 A3 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80022DB0 0001FD10 7F E4 FB 78 */ mr r4, r31 +/* 80022DB4 0001FD14 38 61 00 10 */ addi r3, r1, 0x10 +/* 80022DB8 0001FD18 38 C1 00 08 */ addi r6, r1, 8 +/* 80022DBC 0001FD1C 38 A0 FF FF */ li r5, -1 +/* 80022DC0 0001FD20 48 31 A9 FD */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80022DC4 0001FD24 80 7E 00 04 */ lwz r3, 4(r30) +/* 80022DC8 0001FD28 38 81 00 10 */ addi r4, r1, 0x10 +/* 80022DCC 0001FD2C 38 A0 00 00 */ li r5, 0 +/* 80022DD0 0001FD30 38 63 00 D4 */ addi r3, r3, 0xd4 +/* 80022DD4 0001FD34 48 2A 6A B1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80022DD8 0001FD38 38 61 00 10 */ addi r3, r1, 0x10 +/* 80022DDC 0001FD3C 48 31 A3 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80022DE0 0001FD40 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80022DE4 0001FD44 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80022DE8 0001FD48 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80022DEC 0001FD4C 7C 08 03 A6 */ mtlr r0 +/* 80022DF0 0001FD50 38 21 00 40 */ addi r1, r1, 0x40 +/* 80022DF4 0001FD54 4E 80 00 20 */ blr + +.global FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc +FindTextPanePair__14SFrontEndFrameFPC9CGuiFramePCc: +/* 80022DF8 0001FD58 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80022DFC 0001FD5C 7C 08 02 A6 */ mflr r0 +/* 80022E00 0001FD60 90 01 00 24 */ stw r0, 0x24(r1) +/* 80022E04 0001FD64 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80022E08 0001FD68 7C BF 2B 78 */ mr r31, r5 +/* 80022E0C 0001FD6C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80022E10 0001FD70 7C 9E 23 78 */ mr r30, r4 +/* 80022E14 0001FD74 7F E4 FB 78 */ mr r4, r31 +/* 80022E18 0001FD78 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80022E1C 0001FD7C 7C 7D 1B 78 */ mr r29, r3 +/* 80022E20 0001FD80 7F C3 F3 78 */ mr r3, r30 +/* 80022E24 0001FD84 48 29 F3 31 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022E28 0001FD88 3C 80 80 3D */ lis r4, lbl_803CC644@ha +/* 80022E2C 0001FD8C 90 7D 00 00 */ stw r3, 0(r29) +/* 80022E30 0001FD90 38 64 C6 44 */ addi r3, r4, lbl_803CC644@l +/* 80022E34 0001FD94 7F E4 FB 78 */ mr r4, r31 +/* 80022E38 0001FD98 38 63 04 52 */ addi r3, r3, 0x452 +/* 80022E3C 0001FD9C 4C C6 31 82 */ crclr 6 +/* 80022E40 0001FDA0 48 2B 33 71 */ bl Stringize__7CBasicsFPCce +/* 80022E44 0001FDA4 7C 64 1B 78 */ mr r4, r3 +/* 80022E48 0001FDA8 7F C3 F3 78 */ mr r3, r30 +/* 80022E4C 0001FDAC 48 29 F3 09 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022E50 0001FDB0 90 7D 00 04 */ stw r3, 4(r29) +/* 80022E54 0001FDB4 7F A3 EB 78 */ mr r3, r29 +/* 80022E58 0001FDB8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80022E5C 0001FDBC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80022E60 0001FDC0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80022E64 0001FDC4 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80022E68 0001FDC8 7C 08 03 A6 */ mtlr r0 +/* 80022E6C 0001FDCC 38 21 00 20 */ addi r1, r1, 0x20 +/* 80022E70 0001FDD0 4E 80 00 20 */ blr + +.global __ct__12SGuiTextPairFv +__ct__12SGuiTextPairFv: +/* 80022E74 0001FDD4 38 00 00 00 */ li r0, 0 +/* 80022E78 0001FDD8 90 03 00 00 */ stw r0, 0(r3) +/* 80022E7C 0001FDDC 90 03 00 04 */ stw r0, 4(r3) +/* 80022E80 0001FDE0 4E 80 00 20 */ blr + +.global FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring +FindAndSetPairText__14SFrontEndFrameFR9CGuiFramePCcRCQ24rstl7wstring: +/* 80022E84 0001FDE4 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80022E88 0001FDE8 7C 08 02 A6 */ mflr r0 +/* 80022E8C 0001FDEC 90 01 00 44 */ stw r0, 0x44(r1) +/* 80022E90 0001FDF0 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80022E94 0001FDF4 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80022E98 0001FDF8 7C BE 2B 78 */ mr r30, r5 +/* 80022E9C 0001FDFC 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80022EA0 0001FE00 7C 9D 23 78 */ mr r29, r4 +/* 80022EA4 0001FE04 93 81 00 30 */ stw r28, 0x30(r1) +/* 80022EA8 0001FE08 7C 7C 1B 78 */ mr r28, r3 +/* 80022EAC 0001FE0C 48 29 F2 A9 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022EB0 0001FE10 7C 7F 1B 78 */ mr r31, r3 +/* 80022EB4 0001FE14 7F C4 F3 78 */ mr r4, r30 +/* 80022EB8 0001FE18 38 61 00 20 */ addi r3, r1, 0x20 +/* 80022EBC 0001FE1C 38 C1 00 0C */ addi r6, r1, 0xc +/* 80022EC0 0001FE20 38 A0 FF FF */ li r5, -1 +/* 80022EC4 0001FE24 48 31 A8 F9 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80022EC8 0001FE28 38 7F 00 D4 */ addi r3, r31, 0xd4 +/* 80022ECC 0001FE2C 38 81 00 20 */ addi r4, r1, 0x20 +/* 80022ED0 0001FE30 38 A0 00 00 */ li r5, 0 +/* 80022ED4 0001FE34 48 2A 69 B1 */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80022ED8 0001FE38 38 61 00 20 */ addi r3, r1, 0x20 +/* 80022EDC 0001FE3C 48 31 A2 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80022EE0 0001FE40 3C 60 80 3D */ lis r3, lbl_803CC644@ha +/* 80022EE4 0001FE44 7F A4 EB 78 */ mr r4, r29 +/* 80022EE8 0001FE48 38 63 C6 44 */ addi r3, r3, lbl_803CC644@l +/* 80022EEC 0001FE4C 38 63 04 52 */ addi r3, r3, 0x452 +/* 80022EF0 0001FE50 4C C6 31 82 */ crclr 6 +/* 80022EF4 0001FE54 48 2B 32 BD */ bl Stringize__7CBasicsFPCce +/* 80022EF8 0001FE58 7C 64 1B 78 */ mr r4, r3 +/* 80022EFC 0001FE5C 7F 83 E3 78 */ mr r3, r28 +/* 80022F00 0001FE60 48 29 F2 55 */ bl FindWidget__9CGuiFrameCFPCc +/* 80022F04 0001FE64 7C 7F 1B 78 */ mr r31, r3 +/* 80022F08 0001FE68 7F C4 F3 78 */ mr r4, r30 +/* 80022F0C 0001FE6C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80022F10 0001FE70 38 C1 00 08 */ addi r6, r1, 8 +/* 80022F14 0001FE74 38 A0 FF FF */ li r5, -1 +/* 80022F18 0001FE78 48 31 A8 A5 */ bl "__ct__Q24rstl66basic_string,Q24rstl17rmemory_allocator>FPCwiRCQ24rstl17rmemory_allocator" +/* 80022F1C 0001FE7C 38 7F 00 D4 */ addi r3, r31, 0xd4 +/* 80022F20 0001FE80 38 81 00 10 */ addi r4, r1, 0x10 +/* 80022F24 0001FE84 38 A0 00 00 */ li r5, 0 +/* 80022F28 0001FE88 48 2A 69 5D */ bl "SetText__15CGuiTextSupportFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 80022F2C 0001FE8C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80022F30 0001FE90 48 31 A2 05 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 80022F34 0001FE94 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80022F38 0001FE98 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80022F3C 0001FE9C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80022F40 0001FEA0 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80022F44 0001FEA4 83 81 00 30 */ lwz r28, 0x30(r1) +/* 80022F48 0001FEA8 7C 08 03 A6 */ mtlr r0 +/* 80022F4C 0001FEAC 38 21 00 40 */ addi r1, r1, 0x40 +/* 80022F50 0001FEB0 4E 80 00 20 */ blr + +.global PlayAdvanceSfx__11CFrontEndUIFv +PlayAdvanceSfx__11CFrontEndUIFv: +/* 80022F54 0001FEB4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80022F58 0001FEB8 7C 08 02 A6 */ mflr r0 +/* 80022F5C 0001FEBC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80022F60 0001FEC0 38 80 04 48 */ li r4, 0x448 +/* 80022F64 0001FEC4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80022F68 0001FEC8 38 61 00 0C */ addi r3, r1, 0xc +/* 80022F6C 0001FECC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80022F70 0001FED0 38 A0 00 7F */ li r5, 0x7f +/* 80022F74 0001FED4 38 C0 00 40 */ li r6, 0x40 +/* 80022F78 0001FED8 38 E0 00 00 */ li r7, 0 +/* 80022F7C 0001FEDC 39 20 00 00 */ li r9, 0 +/* 80022F80 0001FEE0 48 2C 6D F5 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80022F84 0001FEE4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80022F88 0001FEE8 38 61 00 08 */ addi r3, r1, 8 +/* 80022F8C 0001FEEC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80022F90 0001FEF0 38 80 04 43 */ li r4, 0x443 +/* 80022F94 0001FEF4 38 A0 00 7F */ li r5, 0x7f +/* 80022F98 0001FEF8 38 C0 00 40 */ li r6, 0x40 +/* 80022F9C 0001FEFC 38 E0 00 00 */ li r7, 0 +/* 80022FA0 0001FF00 39 20 00 00 */ li r9, 0 +/* 80022FA4 0001FF04 48 2C 6D D1 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80022FA8 0001FF08 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80022FAC 0001FF0C 7C 08 03 A6 */ mtlr r0 +/* 80022FB0 0001FF10 38 21 00 10 */ addi r1, r1, 0x10 +/* 80022FB4 0001FF14 4E 80 00 20 */ blr + +.global __sinit_CFrontEndUI_cpp +__sinit_CFrontEndUI_cpp: +/* 80022FB8 0001FF18 3C 60 4D 4C */ lis r3, 0x4D4C564C@ha +/* 80022FBC 0001FF1C 3C 80 15 8F */ lis r4, 0x158EFE17@ha +/* 80022FC0 0001FF20 38 A3 56 4C */ addi r5, r3, 0x4D4C564C@l +/* 80022FC4 0001FF24 38 6D A0 F0 */ addi r3, r13, lbl_805A8CB0@sda21 +/* 80022FC8 0001FF28 38 04 FE 17 */ addi r0, r4, 0x158EFE17@l +/* 80022FCC 0001FF2C 90 AD A0 F0 */ stw r5, lbl_805A8CB0@sda21(r13) +/* 80022FD0 0001FF30 90 03 00 04 */ stw r0, 4(r3) +/* 80022FD4 0001FF34 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CInputGenerator.s b/asm/Kyoto_CWD/CInputGenerator.s new file mode 100644 index 00000000..baad9c27 --- /dev/null +++ b/asm/Kyoto_CWD/CInputGenerator.s @@ -0,0 +1,375 @@ +.include "macros.inc" + +.section .text, "ax" + +.global Update__15CInputGeneratorFfR18CArchitectureQueue +Update__15CInputGeneratorFfR18CArchitectureQueue: +/* 80022FD8 0001FF38 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 80022FDC 0001FF3C 7C 08 02 A6 */ mflr r0 +/* 80022FE0 0001FF40 90 01 01 54 */ stw r0, 0x154(r1) +/* 80022FE4 0001FF44 DB E1 01 40 */ stfd f31, 0x140(r1) +/* 80022FE8 0001FF48 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 80022FEC 0001FF4C BE 61 01 0C */ stmw r19, 0x10c(r1) +/* 80022FF0 0001FF50 7C 7E 1B 78 */ mr r30, r3 +/* 80022FF4 0001FF54 FF E0 08 90 */ fmr f31, f1 +/* 80022FF8 0001FF58 80 63 00 00 */ lwz r3, 0(r3) +/* 80022FFC 0001FF5C 7C 9F 23 78 */ mr r31, r4 +/* 80023000 0001FF60 3A C0 00 00 */ li r22, 0 +/* 80023004 0001FF64 48 2B 36 39 */ bl Update__10COsContextFv +/* 80023008 0001FF68 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8002300C 0001FF6C 40 82 00 0C */ bne lbl_80023018 +/* 80023010 0001FF70 38 60 00 00 */ li r3, 0 +/* 80023014 0001FF74 48 00 04 84 */ b lbl_80023498 +lbl_80023018: +/* 80023018 0001FF78 80 7E 00 04 */ lwz r3, 4(r30) +/* 8002301C 0001FF7C 3A A0 00 00 */ li r21, 0 +/* 80023020 0001FF80 28 03 00 00 */ cmplwi r3, 0 +/* 80023024 0001FF84 41 82 02 84 */ beq lbl_800232A8 +/* 80023028 0001FF88 81 83 00 00 */ lwz r12, 0(r3) +/* 8002302C 0001FF8C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80023030 0001FF90 7D 89 03 A6 */ mtctr r12 +/* 80023034 0001FF94 4E 80 04 21 */ bctrl +/* 80023038 0001FF98 7C 7D 1B 78 */ mr r29, r3 +/* 8002303C 0001FF9C 80 7E 00 04 */ lwz r3, 4(r30) +/* 80023040 0001FFA0 81 83 00 00 */ lwz r12, 0(r3) +/* 80023044 0001FFA4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80023048 0001FFA8 7D 89 03 A6 */ mtctr r12 +/* 8002304C 0001FFAC 4E 80 04 21 */ bctrl +/* 80023050 0001FFB0 3B 61 00 38 */ addi r27, r1, 0x38 +/* 80023054 0001FFB4 3B 41 00 68 */ addi r26, r1, 0x68 +/* 80023058 0001FFB8 3B 21 00 2C */ addi r25, r1, 0x2c +/* 8002305C 0001FFBC 3B 01 00 5C */ addi r24, r1, 0x5c +/* 80023060 0001FFC0 3A 80 00 00 */ li r20, 0 +/* 80023064 0001FFC4 48 00 02 3C */ b lbl_800232A0 +lbl_80023068: +/* 80023068 0001FFC8 80 7E 00 04 */ lwz r3, 4(r30) +/* 8002306C 0001FFCC 7E 84 A3 78 */ mr r4, r20 +/* 80023070 0001FFD0 81 83 00 00 */ lwz r12, 0(r3) +/* 80023074 0001FFD4 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80023078 0001FFD8 7D 89 03 A6 */ mtctr r12 +/* 8002307C 0001FFDC 4E 80 04 21 */ bctrl +/* 80023080 0001FFE0 88 03 00 00 */ lbz r0, 0(r3) +/* 80023084 0001FFE4 7C 73 1B 78 */ mr r19, r3 +/* 80023088 0001FFE8 28 00 00 00 */ cmplwi r0, 0 +/* 8002308C 0001FFEC 41 82 01 0C */ beq lbl_80023198 +/* 80023090 0001FFF0 2C 14 00 00 */ cmpwi r20, 0 +/* 80023094 0001FFF4 40 82 00 08 */ bne lbl_8002309C +/* 80023098 0001FFF8 3A A0 00 01 */ li r21, 1 +lbl_8002309C: +/* 8002309C 0001FFFC FC 20 F8 90 */ fmr f1, f31 +/* 800230A0 00020000 C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 800230A4 00020004 C0 7E 00 10 */ lfs f3, 0x10(r30) +/* 800230A8 00020008 7E 84 A3 78 */ mr r4, r20 +/* 800230AC 0002000C 7E 65 9B 78 */ mr r5, r19 +/* 800230B0 00020010 38 61 00 CC */ addi r3, r1, 0xcc +/* 800230B4 00020014 48 32 6B 59 */ bl __ct__11CFinalInputFifRC22CControllerGamepadDataff +/* 800230B8 00020018 38 61 00 30 */ addi r3, r1, 0x30 +/* 800230BC 0002001C 38 A1 00 CC */ addi r5, r1, 0xcc +/* 800230C0 00020020 38 80 00 01 */ li r4, 1 +/* 800230C4 00020024 48 02 EA 2D */ bl CreateUserInput__7MakeMsgF14EArchMsgTargetRC11CFinalInput +/* 800230C8 00020028 80 61 00 30 */ lwz r3, 0x30(r1) +/* 800230CC 0002002C 28 1B 00 00 */ cmplwi r27, 0 +/* 800230D0 00020030 80 01 00 34 */ lwz r0, 0x34(r1) +/* 800230D4 00020034 80 81 00 38 */ lwz r4, 0x38(r1) +/* 800230D8 00020038 90 61 00 60 */ stw r3, 0x60(r1) +/* 800230DC 0002003C 90 01 00 64 */ stw r0, 0x64(r1) +/* 800230E0 00020040 90 81 00 68 */ stw r4, 0x68(r1) +/* 800230E4 00020044 80 64 00 04 */ lwz r3, 4(r4) +/* 800230E8 00020048 38 03 00 01 */ addi r0, r3, 1 +/* 800230EC 0002004C 90 04 00 04 */ stw r0, 4(r4) +/* 800230F0 00020050 41 82 00 0C */ beq lbl_800230FC +/* 800230F4 00020054 7F 63 DB 78 */ mr r3, r27 +/* 800230F8 00020058 4B FE 56 15 */ bl sub_8000870c +lbl_800230FC: +/* 800230FC 0002005C 83 9F 00 08 */ lwz r28, 8(r31) +/* 80023100 00020060 3C 60 80 3D */ lis r3, lbl_803CCAA0@ha +/* 80023104 00020064 38 83 CA A0 */ addi r4, r3, lbl_803CCAA0@l +/* 80023108 00020068 38 A0 00 00 */ li r5, 0 +/* 8002310C 0002006C 82 FC 00 00 */ lwz r23, 0(r28) +/* 80023110 00020070 38 60 00 14 */ li r3, 0x14 +/* 80023114 00020074 48 2F 27 05 */ bl __nwa__FUlPCcPCc +/* 80023118 00020078 28 03 00 00 */ cmplwi r3, 0 +/* 8002311C 0002007C 41 82 00 0C */ beq lbl_80023128 +/* 80023120 00020080 92 E3 00 00 */ stw r23, 0(r3) +/* 80023124 00020084 93 83 00 04 */ stw r28, 4(r3) +lbl_80023128: +/* 80023128 00020088 34 83 00 08 */ addic. r4, r3, 8 +/* 8002312C 0002008C 41 82 00 2C */ beq lbl_80023158 +/* 80023130 00020090 80 01 00 60 */ lwz r0, 0x60(r1) +/* 80023134 00020094 90 04 00 00 */ stw r0, 0(r4) +/* 80023138 00020098 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8002313C 0002009C 90 04 00 04 */ stw r0, 4(r4) +/* 80023140 000200A0 80 01 00 68 */ lwz r0, 0x68(r1) +/* 80023144 000200A4 90 04 00 08 */ stw r0, 8(r4) +/* 80023148 000200A8 80 A4 00 08 */ lwz r5, 8(r4) +/* 8002314C 000200AC 80 85 00 04 */ lwz r4, 4(r5) +/* 80023150 000200B0 38 04 00 01 */ addi r0, r4, 1 +/* 80023154 000200B4 90 05 00 04 */ stw r0, 4(r5) +lbl_80023158: +/* 80023158 000200B8 80 1F 00 04 */ lwz r0, 4(r31) +/* 8002315C 000200BC 7C 1C 00 40 */ cmplw r28, r0 +/* 80023160 000200C0 40 82 00 08 */ bne lbl_80023168 +/* 80023164 000200C4 90 7F 00 04 */ stw r3, 4(r31) +lbl_80023168: +/* 80023168 000200C8 80 83 00 00 */ lwz r4, 0(r3) +/* 8002316C 000200CC 28 1A 00 00 */ cmplwi r26, 0 +/* 80023170 000200D0 90 64 00 04 */ stw r3, 4(r4) +/* 80023174 000200D4 80 83 00 04 */ lwz r4, 4(r3) +/* 80023178 000200D8 90 64 00 00 */ stw r3, 0(r4) +/* 8002317C 000200DC 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 80023180 000200E0 38 03 00 01 */ addi r0, r3, 1 +/* 80023184 000200E4 90 1F 00 14 */ stw r0, 0x14(r31) +/* 80023188 000200E8 41 82 00 0C */ beq lbl_80023194 +/* 8002318C 000200EC 7F 43 D3 78 */ mr r3, r26 +/* 80023190 000200F0 4B FE 55 7D */ bl sub_8000870c +lbl_80023194: +/* 80023194 000200F4 3A D6 00 01 */ addi r22, r22, 1 +lbl_80023198: +/* 80023198 000200F8 3A F4 00 08 */ addi r23, r20, 8 +/* 8002319C 000200FC 88 73 00 00 */ lbz r3, 0(r19) +/* 800231A0 00020100 7C 1E B8 AE */ lbzx r0, r30, r23 +/* 800231A4 00020104 98 61 00 08 */ stb r3, 8(r1) +/* 800231A8 00020108 7C 00 18 40 */ cmplw r0, r3 +/* 800231AC 0002010C 41 82 00 F0 */ beq lbl_8002329C +/* 800231B0 00020110 B2 81 00 0A */ sth r20, 0xa(r1) +/* 800231B4 00020114 38 61 00 24 */ addi r3, r1, 0x24 +/* 800231B8 00020118 38 A1 00 0A */ addi r5, r1, 0xa +/* 800231BC 0002011C 38 C1 00 08 */ addi r6, r1, 8 +/* 800231C0 00020120 38 80 00 01 */ li r4, 1 +/* 800231C4 00020124 48 02 E8 59 */ bl CreateControllerStatus__7MakeMsgF14EArchMsgTargetRCsRCb +/* 800231C8 00020128 80 61 00 24 */ lwz r3, 0x24(r1) +/* 800231CC 0002012C 28 19 00 00 */ cmplwi r25, 0 +/* 800231D0 00020130 80 01 00 28 */ lwz r0, 0x28(r1) +/* 800231D4 00020134 80 81 00 2C */ lwz r4, 0x2c(r1) +/* 800231D8 00020138 90 61 00 54 */ stw r3, 0x54(r1) +/* 800231DC 0002013C 90 01 00 58 */ stw r0, 0x58(r1) +/* 800231E0 00020140 90 81 00 5C */ stw r4, 0x5c(r1) +/* 800231E4 00020144 80 64 00 04 */ lwz r3, 4(r4) +/* 800231E8 00020148 38 03 00 01 */ addi r0, r3, 1 +/* 800231EC 0002014C 90 04 00 04 */ stw r0, 4(r4) +/* 800231F0 00020150 41 82 00 0C */ beq lbl_800231FC +/* 800231F4 00020154 7F 23 CB 78 */ mr r3, r25 +/* 800231F8 00020158 4B FE 55 15 */ bl sub_8000870c +lbl_800231FC: +/* 800231FC 0002015C 83 9F 00 08 */ lwz r28, 8(r31) +/* 80023200 00020160 3C 60 80 3D */ lis r3, lbl_803CCAA0@ha +/* 80023204 00020164 38 83 CA A0 */ addi r4, r3, lbl_803CCAA0@l +/* 80023208 00020168 38 A0 00 00 */ li r5, 0 +/* 8002320C 0002016C 82 7C 00 00 */ lwz r19, 0(r28) +/* 80023210 00020170 38 60 00 14 */ li r3, 0x14 +/* 80023214 00020174 48 2F 26 05 */ bl __nwa__FUlPCcPCc +/* 80023218 00020178 28 03 00 00 */ cmplwi r3, 0 +/* 8002321C 0002017C 41 82 00 0C */ beq lbl_80023228 +/* 80023220 00020180 92 63 00 00 */ stw r19, 0(r3) +/* 80023224 00020184 93 83 00 04 */ stw r28, 4(r3) +lbl_80023228: +/* 80023228 00020188 34 83 00 08 */ addic. r4, r3, 8 +/* 8002322C 0002018C 41 82 00 2C */ beq lbl_80023258 +/* 80023230 00020190 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80023234 00020194 90 04 00 00 */ stw r0, 0(r4) +/* 80023238 00020198 80 01 00 58 */ lwz r0, 0x58(r1) +/* 8002323C 0002019C 90 04 00 04 */ stw r0, 4(r4) +/* 80023240 000201A0 80 01 00 5C */ lwz r0, 0x5c(r1) +/* 80023244 000201A4 90 04 00 08 */ stw r0, 8(r4) +/* 80023248 000201A8 80 A4 00 08 */ lwz r5, 8(r4) +/* 8002324C 000201AC 80 85 00 04 */ lwz r4, 4(r5) +/* 80023250 000201B0 38 04 00 01 */ addi r0, r4, 1 +/* 80023254 000201B4 90 05 00 04 */ stw r0, 4(r5) +lbl_80023258: +/* 80023258 000201B8 80 1F 00 04 */ lwz r0, 4(r31) +/* 8002325C 000201BC 7C 1C 00 40 */ cmplw r28, r0 +/* 80023260 000201C0 40 82 00 08 */ bne lbl_80023268 +/* 80023264 000201C4 90 7F 00 04 */ stw r3, 4(r31) +lbl_80023268: +/* 80023268 000201C8 80 83 00 00 */ lwz r4, 0(r3) +/* 8002326C 000201CC 28 18 00 00 */ cmplwi r24, 0 +/* 80023270 000201D0 88 01 00 08 */ lbz r0, 8(r1) +/* 80023274 000201D4 90 64 00 04 */ stw r3, 4(r4) +/* 80023278 000201D8 80 83 00 04 */ lwz r4, 4(r3) +/* 8002327C 000201DC 90 64 00 00 */ stw r3, 0(r4) +/* 80023280 000201E0 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 80023284 000201E4 38 63 00 01 */ addi r3, r3, 1 +/* 80023288 000201E8 90 7F 00 14 */ stw r3, 0x14(r31) +/* 8002328C 000201EC 7C 1E B9 AE */ stbx r0, r30, r23 +/* 80023290 000201F0 41 82 00 0C */ beq lbl_8002329C +/* 80023294 000201F4 7F 03 C3 78 */ mr r3, r24 +/* 80023298 000201F8 4B FE 54 75 */ bl sub_8000870c +lbl_8002329C: +/* 8002329C 000201FC 3A 94 00 01 */ addi r20, r20, 1 +lbl_800232A0: +/* 800232A0 00020200 7C 14 E8 00 */ cmpw r20, r29 +/* 800232A4 00020204 41 80 FD C4 */ blt lbl_80023068 +lbl_800232A8: +/* 800232A8 00020208 56 A0 06 3F */ clrlwi. r0, r21, 0x18 +/* 800232AC 0002020C 40 82 00 F8 */ bne lbl_800233A4 +/* 800232B0 00020210 FC 20 F8 90 */ fmr f1, f31 +/* 800232B4 00020214 80 BE 00 00 */ lwz r5, 0(r30) +/* 800232B8 00020218 38 61 00 9C */ addi r3, r1, 0x9c +/* 800232BC 0002021C 38 80 00 00 */ li r4, 0 +/* 800232C0 00020220 48 32 5D A1 */ bl __ct__11CFinalInputFifRC10COsContext +/* 800232C4 00020224 7C 65 1B 78 */ mr r5, r3 +/* 800232C8 00020228 38 61 00 18 */ addi r3, r1, 0x18 +/* 800232CC 0002022C 38 80 00 01 */ li r4, 1 +/* 800232D0 00020230 48 02 E8 21 */ bl CreateUserInput__7MakeMsgF14EArchMsgTargetRC11CFinalInput +/* 800232D4 00020234 80 81 00 18 */ lwz r4, 0x18(r1) +/* 800232D8 00020238 34 61 00 20 */ addic. r3, r1, 0x20 +/* 800232DC 0002023C 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 800232E0 00020240 3A E1 00 50 */ addi r23, r1, 0x50 +/* 800232E4 00020244 80 A1 00 20 */ lwz r5, 0x20(r1) +/* 800232E8 00020248 90 81 00 48 */ stw r4, 0x48(r1) +/* 800232EC 0002024C 90 01 00 4C */ stw r0, 0x4c(r1) +/* 800232F0 00020250 90 A1 00 50 */ stw r5, 0x50(r1) +/* 800232F4 00020254 80 85 00 04 */ lwz r4, 4(r5) +/* 800232F8 00020258 38 04 00 01 */ addi r0, r4, 1 +/* 800232FC 0002025C 90 05 00 04 */ stw r0, 4(r5) +/* 80023300 00020260 41 82 00 08 */ beq lbl_80023308 +/* 80023304 00020264 4B FE 54 09 */ bl sub_8000870c +lbl_80023308: +/* 80023308 00020268 82 7F 00 08 */ lwz r19, 8(r31) +/* 8002330C 0002026C 3C 60 80 3D */ lis r3, lbl_803CCAA0@ha +/* 80023310 00020270 38 83 CA A0 */ addi r4, r3, lbl_803CCAA0@l +/* 80023314 00020274 38 A0 00 00 */ li r5, 0 +/* 80023318 00020278 82 93 00 00 */ lwz r20, 0(r19) +/* 8002331C 0002027C 38 60 00 14 */ li r3, 0x14 +/* 80023320 00020280 48 2F 24 F9 */ bl __nwa__FUlPCcPCc +/* 80023324 00020284 28 03 00 00 */ cmplwi r3, 0 +/* 80023328 00020288 41 82 00 0C */ beq lbl_80023334 +/* 8002332C 0002028C 92 83 00 00 */ stw r20, 0(r3) +/* 80023330 00020290 92 63 00 04 */ stw r19, 4(r3) +lbl_80023334: +/* 80023334 00020294 34 83 00 08 */ addic. r4, r3, 8 +/* 80023338 00020298 41 82 00 2C */ beq lbl_80023364 +/* 8002333C 0002029C 80 01 00 48 */ lwz r0, 0x48(r1) +/* 80023340 000202A0 90 04 00 00 */ stw r0, 0(r4) +/* 80023344 000202A4 80 01 00 4C */ lwz r0, 0x4c(r1) +/* 80023348 000202A8 90 04 00 04 */ stw r0, 4(r4) +/* 8002334C 000202AC 80 01 00 50 */ lwz r0, 0x50(r1) +/* 80023350 000202B0 90 04 00 08 */ stw r0, 8(r4) +/* 80023354 000202B4 80 A4 00 08 */ lwz r5, 8(r4) +/* 80023358 000202B8 80 85 00 04 */ lwz r4, 4(r5) +/* 8002335C 000202BC 38 04 00 01 */ addi r0, r4, 1 +/* 80023360 000202C0 90 05 00 04 */ stw r0, 4(r5) +lbl_80023364: +/* 80023364 000202C4 80 1F 00 04 */ lwz r0, 4(r31) +/* 80023368 000202C8 7C 13 00 40 */ cmplw r19, r0 +/* 8002336C 000202CC 40 82 00 08 */ bne lbl_80023374 +/* 80023370 000202D0 90 7F 00 04 */ stw r3, 4(r31) +lbl_80023374: +/* 80023374 000202D4 80 83 00 00 */ lwz r4, 0(r3) +/* 80023378 000202D8 28 17 00 00 */ cmplwi r23, 0 +/* 8002337C 000202DC 90 64 00 04 */ stw r3, 4(r4) +/* 80023380 000202E0 80 83 00 04 */ lwz r4, 4(r3) +/* 80023384 000202E4 90 64 00 00 */ stw r3, 0(r4) +/* 80023388 000202E8 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 8002338C 000202EC 38 03 00 01 */ addi r0, r3, 1 +/* 80023390 000202F0 90 1F 00 14 */ stw r0, 0x14(r31) +/* 80023394 000202F4 41 82 01 00 */ beq lbl_80023494 +/* 80023398 000202F8 7E E3 BB 78 */ mr r3, r23 +/* 8002339C 000202FC 4B FE 53 71 */ bl sub_8000870c +/* 800233A0 00020300 48 00 00 F4 */ b lbl_80023494 +lbl_800233A4: +/* 800233A4 00020304 FC 20 F8 90 */ fmr f1, f31 +/* 800233A8 00020308 80 BE 00 00 */ lwz r5, 0(r30) +/* 800233AC 0002030C 7E C4 B3 78 */ mr r4, r22 +/* 800233B0 00020310 38 61 00 6C */ addi r3, r1, 0x6c +/* 800233B4 00020314 48 32 5C AD */ bl __ct__11CFinalInputFifRC10COsContext +/* 800233B8 00020318 7C 65 1B 78 */ mr r5, r3 +/* 800233BC 0002031C 38 61 00 0C */ addi r3, r1, 0xc +/* 800233C0 00020320 38 80 00 01 */ li r4, 1 +/* 800233C4 00020324 48 02 E7 2D */ bl CreateUserInput__7MakeMsgF14EArchMsgTargetRC11CFinalInput +/* 800233C8 00020328 80 81 00 0C */ lwz r4, 0xc(r1) +/* 800233CC 0002032C 34 61 00 14 */ addic. r3, r1, 0x14 +/* 800233D0 00020330 80 01 00 10 */ lwz r0, 0x10(r1) +/* 800233D4 00020334 3A E1 00 44 */ addi r23, r1, 0x44 +/* 800233D8 00020338 80 A1 00 14 */ lwz r5, 0x14(r1) +/* 800233DC 0002033C 90 81 00 3C */ stw r4, 0x3c(r1) +/* 800233E0 00020340 90 01 00 40 */ stw r0, 0x40(r1) +/* 800233E4 00020344 90 A1 00 44 */ stw r5, 0x44(r1) +/* 800233E8 00020348 80 85 00 04 */ lwz r4, 4(r5) +/* 800233EC 0002034C 38 04 00 01 */ addi r0, r4, 1 +/* 800233F0 00020350 90 05 00 04 */ stw r0, 4(r5) +/* 800233F4 00020354 41 82 00 08 */ beq lbl_800233FC +/* 800233F8 00020358 4B FE 53 15 */ bl sub_8000870c +lbl_800233FC: +/* 800233FC 0002035C 82 7F 00 08 */ lwz r19, 8(r31) +/* 80023400 00020360 3C 60 80 3D */ lis r3, lbl_803CCAA0@ha +/* 80023404 00020364 38 83 CA A0 */ addi r4, r3, lbl_803CCAA0@l +/* 80023408 00020368 38 A0 00 00 */ li r5, 0 +/* 8002340C 0002036C 82 93 00 00 */ lwz r20, 0(r19) +/* 80023410 00020370 38 60 00 14 */ li r3, 0x14 +/* 80023414 00020374 48 2F 24 05 */ bl __nwa__FUlPCcPCc +/* 80023418 00020378 28 03 00 00 */ cmplwi r3, 0 +/* 8002341C 0002037C 41 82 00 0C */ beq lbl_80023428 +/* 80023420 00020380 92 83 00 00 */ stw r20, 0(r3) +/* 80023424 00020384 92 63 00 04 */ stw r19, 4(r3) +lbl_80023428: +/* 80023428 00020388 34 83 00 08 */ addic. r4, r3, 8 +/* 8002342C 0002038C 41 82 00 2C */ beq lbl_80023458 +/* 80023430 00020390 80 01 00 3C */ lwz r0, 0x3c(r1) +/* 80023434 00020394 90 04 00 00 */ stw r0, 0(r4) +/* 80023438 00020398 80 01 00 40 */ lwz r0, 0x40(r1) +/* 8002343C 0002039C 90 04 00 04 */ stw r0, 4(r4) +/* 80023440 000203A0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80023444 000203A4 90 04 00 08 */ stw r0, 8(r4) +/* 80023448 000203A8 80 A4 00 08 */ lwz r5, 8(r4) +/* 8002344C 000203AC 80 85 00 04 */ lwz r4, 4(r5) +/* 80023450 000203B0 38 04 00 01 */ addi r0, r4, 1 +/* 80023454 000203B4 90 05 00 04 */ stw r0, 4(r5) +lbl_80023458: +/* 80023458 000203B8 80 1F 00 04 */ lwz r0, 4(r31) +/* 8002345C 000203BC 7C 13 00 40 */ cmplw r19, r0 +/* 80023460 000203C0 40 82 00 08 */ bne lbl_80023468 +/* 80023464 000203C4 90 7F 00 04 */ stw r3, 4(r31) +lbl_80023468: +/* 80023468 000203C8 80 83 00 00 */ lwz r4, 0(r3) +/* 8002346C 000203CC 28 17 00 00 */ cmplwi r23, 0 +/* 80023470 000203D0 90 64 00 04 */ stw r3, 4(r4) +/* 80023474 000203D4 80 83 00 04 */ lwz r4, 4(r3) +/* 80023478 000203D8 90 64 00 00 */ stw r3, 0(r4) +/* 8002347C 000203DC 80 7F 00 14 */ lwz r3, 0x14(r31) +/* 80023480 000203E0 38 03 00 01 */ addi r0, r3, 1 +/* 80023484 000203E4 90 1F 00 14 */ stw r0, 0x14(r31) +/* 80023488 000203E8 41 82 00 0C */ beq lbl_80023494 +/* 8002348C 000203EC 7E E3 BB 78 */ mr r3, r23 +/* 80023490 000203F0 4B FE 52 7D */ bl sub_8000870c +lbl_80023494: +/* 80023494 000203F4 38 60 00 01 */ li r3, 1 +lbl_80023498: +/* 80023498 000203F8 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 8002349C 000203FC CB E1 01 40 */ lfd f31, 0x140(r1) +/* 800234A0 00020400 BA 61 01 0C */ lmw r19, 0x10c(r1) +/* 800234A4 00020404 80 01 01 54 */ lwz r0, 0x154(r1) +/* 800234A8 00020408 7C 08 03 A6 */ mtlr r0 +/* 800234AC 0002040C 38 21 01 50 */ addi r1, r1, 0x150 +/* 800234B0 00020410 4E 80 00 20 */ blr + +.global __ct__15CInputGeneratorFP10COsContextff +__ct__15CInputGeneratorFP10COsContextff: +/* 800234B4 00020414 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 800234B8 00020418 7C 08 02 A6 */ mflr r0 +/* 800234BC 0002041C 90 01 00 24 */ stw r0, 0x24(r1) +/* 800234C0 00020420 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 800234C4 00020424 FF E0 10 90 */ fmr f31, f2 +/* 800234C8 00020428 DB C1 00 10 */ stfd f30, 0x10(r1) +/* 800234CC 0002042C FF C0 08 90 */ fmr f30, f1 +/* 800234D0 00020430 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800234D4 00020434 7C 7F 1B 78 */ mr r31, r3 +/* 800234D8 00020438 90 83 00 00 */ stw r4, 0(r3) +/* 800234DC 0002043C 7C 83 23 78 */ mr r3, r4 +/* 800234E0 00020440 48 32 BA D5 */ bl Create__11IControllerFRC10COsContext +/* 800234E4 00020444 90 7F 00 04 */ stw r3, 4(r31) +/* 800234E8 00020448 38 00 00 00 */ li r0, 0 +/* 800234EC 0002044C 7F E3 FB 78 */ mr r3, r31 +/* 800234F0 00020450 D3 DF 00 0C */ stfs f30, 0xc(r31) +/* 800234F4 00020454 D3 FF 00 10 */ stfs f31, 0x10(r31) +/* 800234F8 00020458 98 1F 00 08 */ stb r0, 8(r31) +/* 800234FC 0002045C 98 1F 00 09 */ stb r0, 9(r31) +/* 80023500 00020460 98 1F 00 0A */ stb r0, 0xa(r31) +/* 80023504 00020464 98 1F 00 0B */ stb r0, 0xb(r31) +/* 80023508 00020468 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 8002350C 0002046C CB C1 00 10 */ lfd f30, 0x10(r1) +/* 80023510 00020470 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80023514 00020474 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80023518 00020478 7C 08 03 A6 */ mtlr r0 +/* 8002351C 0002047C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80023520 00020480 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CObjectList.s b/asm/Kyoto_CWD/CObjectList.s new file mode 100644 index 00000000..834fa7ab --- /dev/null +++ b/asm/Kyoto_CWD/CObjectList.s @@ -0,0 +1,345 @@ +.include "macros.inc" + +.section .text, "ax" + +.global GetObjectByIndex__11CObjectListCFi +GetObjectByIndex__11CObjectListCFi: +/* 8000FCCC 0000CC2C 54 80 18 38 */ slwi r0, r4, 3 +/* 8000FCD0 0000CC30 7C 63 02 14 */ add r3, r3, r0 +/* 8000FCD4 0000CC34 80 63 00 04 */ lwz r3, 4(r3) +/* 8000FCD8 0000CC38 4E 80 00 20 */ blr + +.global __vc__11CObjectListCFi +__vc__11CObjectListCFi: +/* 8000FCDC 0000CC3C 54 80 18 38 */ slwi r0, r4, 3 +/* 8000FCE0 0000CC40 38 80 00 00 */ li r4, 0 +/* 8000FCE4 0000CC44 7C 63 02 14 */ add r3, r3, r0 +/* 8000FCE8 0000CC48 80 63 00 04 */ lwz r3, 4(r3) +/* 8000FCEC 0000CC4C 28 03 00 00 */ cmplwi r3, 0 +/* 8000FCF0 0000CC50 41 82 00 10 */ beq lbl_8000FD00 +/* 8000FCF4 0000CC54 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8000FCF8 0000CC58 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8000FCFC 0000CC5C 41 82 00 08 */ beq lbl_8000FD04 +lbl_8000FD00: +/* 8000FD00 0000CC60 38 80 00 01 */ li r4, 1 +lbl_8000FD04: +/* 8000FD04 0000CC64 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8000FD08 0000CC68 4D 82 00 20 */ beqlr +/* 8000FD0C 0000CC6C 38 60 00 00 */ li r3, 0 +/* 8000FD10 0000CC70 4E 80 00 20 */ blr + +.global __vc__11CObjectListFi +__vc__11CObjectListFi: +/* 8000FD14 0000CC74 54 80 18 38 */ slwi r0, r4, 3 +/* 8000FD18 0000CC78 38 80 00 00 */ li r4, 0 +/* 8000FD1C 0000CC7C 7C 63 02 14 */ add r3, r3, r0 +/* 8000FD20 0000CC80 80 63 00 04 */ lwz r3, 4(r3) +/* 8000FD24 0000CC84 28 03 00 00 */ cmplwi r3, 0 +/* 8000FD28 0000CC88 41 82 00 10 */ beq lbl_8000FD38 +/* 8000FD2C 0000CC8C 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8000FD30 0000CC90 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8000FD34 0000CC94 41 82 00 08 */ beq lbl_8000FD3C +lbl_8000FD38: +/* 8000FD38 0000CC98 38 80 00 01 */ li r4, 1 +lbl_8000FD3C: +/* 8000FD3C 0000CC9C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8000FD40 0000CCA0 4D 82 00 20 */ beqlr +/* 8000FD44 0000CCA4 38 60 00 00 */ li r3, 0 +/* 8000FD48 0000CCA8 4E 80 00 20 */ blr + +.global GetValidObjectById__11CObjectListCF9TUniqueId +GetValidObjectById__11CObjectListCF9TUniqueId: +/* 8000FD4C 0000CCAC A0 A4 00 00 */ lhz r5, 0(r4) +/* 8000FD50 0000CCB0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8000FD54 0000CCB4 7C 05 00 40 */ cmplw r5, r0 +/* 8000FD58 0000CCB8 40 82 00 0C */ bne lbl_8000FD64 +/* 8000FD5C 0000CCBC 38 60 00 00 */ li r3, 0 +/* 8000FD60 0000CCC0 4E 80 00 20 */ blr +lbl_8000FD64: +/* 8000FD64 0000CCC4 54 A0 1C F8 */ rlwinm r0, r5, 3, 0x13, 0x1c +/* 8000FD68 0000CCC8 38 80 00 00 */ li r4, 0 +/* 8000FD6C 0000CCCC 7C 63 02 14 */ add r3, r3, r0 +/* 8000FD70 0000CCD0 80 63 00 04 */ lwz r3, 4(r3) +/* 8000FD74 0000CCD4 28 03 00 00 */ cmplwi r3, 0 +/* 8000FD78 0000CCD8 41 82 00 14 */ beq lbl_8000FD8C +/* 8000FD7C 0000CCDC A0 03 00 08 */ lhz r0, 8(r3) +/* 8000FD80 0000CCE0 7C 05 00 40 */ cmplw r5, r0 +/* 8000FD84 0000CCE4 40 82 00 08 */ bne lbl_8000FD8C +/* 8000FD88 0000CCE8 38 80 00 01 */ li r4, 1 +lbl_8000FD8C: +/* 8000FD8C 0000CCEC 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8000FD90 0000CCF0 4C 82 00 20 */ bnelr +/* 8000FD94 0000CCF4 38 60 00 00 */ li r3, 0 +/* 8000FD98 0000CCF8 4E 80 00 20 */ blr + +.global GetValidObjectById__11CObjectListF9TUniqueId +GetValidObjectById__11CObjectListF9TUniqueId: +/* 8000FD9C 0000CCFC A0 A4 00 00 */ lhz r5, 0(r4) +/* 8000FDA0 0000CD00 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8000FDA4 0000CD04 7C 05 00 40 */ cmplw r5, r0 +/* 8000FDA8 0000CD08 40 82 00 0C */ bne lbl_8000FDB4 +/* 8000FDAC 0000CD0C 38 60 00 00 */ li r3, 0 +/* 8000FDB0 0000CD10 4E 80 00 20 */ blr +lbl_8000FDB4: +/* 8000FDB4 0000CD14 54 A0 1C F8 */ rlwinm r0, r5, 3, 0x13, 0x1c +/* 8000FDB8 0000CD18 38 80 00 00 */ li r4, 0 +/* 8000FDBC 0000CD1C 7C 63 02 14 */ add r3, r3, r0 +/* 8000FDC0 0000CD20 80 63 00 04 */ lwz r3, 4(r3) +/* 8000FDC4 0000CD24 28 03 00 00 */ cmplwi r3, 0 +/* 8000FDC8 0000CD28 41 82 00 14 */ beq lbl_8000FDDC +/* 8000FDCC 0000CD2C A0 03 00 08 */ lhz r0, 8(r3) +/* 8000FDD0 0000CD30 7C 05 00 40 */ cmplw r5, r0 +/* 8000FDD4 0000CD34 40 82 00 08 */ bne lbl_8000FDDC +/* 8000FDD8 0000CD38 38 80 00 01 */ li r4, 1 +lbl_8000FDDC: +/* 8000FDDC 0000CD3C 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8000FDE0 0000CD40 4C 82 00 20 */ bnelr +/* 8000FDE4 0000CD44 38 60 00 00 */ li r3, 0 +/* 8000FDE8 0000CD48 4E 80 00 20 */ blr + +.global GetObjectById__11CObjectListCF9TUniqueId +GetObjectById__11CObjectListCF9TUniqueId: +/* 8000FDEC 0000CD4C A0 A4 00 00 */ lhz r5, 0(r4) +/* 8000FDF0 0000CD50 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8000FDF4 0000CD54 7C 05 00 40 */ cmplw r5, r0 +/* 8000FDF8 0000CD58 40 82 00 0C */ bne lbl_8000FE04 +/* 8000FDFC 0000CD5C 38 60 00 00 */ li r3, 0 +/* 8000FE00 0000CD60 4E 80 00 20 */ blr +lbl_8000FE04: +/* 8000FE04 0000CD64 54 A0 1C F8 */ rlwinm r0, r5, 3, 0x13, 0x1c +/* 8000FE08 0000CD68 38 80 00 00 */ li r4, 0 +/* 8000FE0C 0000CD6C 7C 63 02 14 */ add r3, r3, r0 +/* 8000FE10 0000CD70 80 63 00 04 */ lwz r3, 4(r3) +/* 8000FE14 0000CD74 28 03 00 00 */ cmplwi r3, 0 +/* 8000FE18 0000CD78 41 82 00 20 */ beq lbl_8000FE38 +/* 8000FE1C 0000CD7C A0 03 00 08 */ lhz r0, 8(r3) +/* 8000FE20 0000CD80 7C 05 00 40 */ cmplw r5, r0 +/* 8000FE24 0000CD84 40 82 00 14 */ bne lbl_8000FE38 +/* 8000FE28 0000CD88 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8000FE2C 0000CD8C 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8000FE30 0000CD90 40 82 00 08 */ bne lbl_8000FE38 +/* 8000FE34 0000CD94 38 80 00 01 */ li r4, 1 +lbl_8000FE38: +/* 8000FE38 0000CD98 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8000FE3C 0000CD9C 4C 82 00 20 */ bnelr +/* 8000FE40 0000CDA0 38 60 00 00 */ li r3, 0 +/* 8000FE44 0000CDA4 4E 80 00 20 */ blr + +.global GetObjectById__11CObjectListF9TUniqueId +GetObjectById__11CObjectListF9TUniqueId: +/* 8000FE48 0000CDA8 A0 A4 00 00 */ lhz r5, 0(r4) +/* 8000FE4C 0000CDAC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8000FE50 0000CDB0 7C 05 00 40 */ cmplw r5, r0 +/* 8000FE54 0000CDB4 40 82 00 0C */ bne lbl_8000FE60 +/* 8000FE58 0000CDB8 38 60 00 00 */ li r3, 0 +/* 8000FE5C 0000CDBC 4E 80 00 20 */ blr +lbl_8000FE60: +/* 8000FE60 0000CDC0 54 A0 1C F8 */ rlwinm r0, r5, 3, 0x13, 0x1c +/* 8000FE64 0000CDC4 38 80 00 00 */ li r4, 0 +/* 8000FE68 0000CDC8 7C 63 02 14 */ add r3, r3, r0 +/* 8000FE6C 0000CDCC 80 63 00 04 */ lwz r3, 4(r3) +/* 8000FE70 0000CDD0 28 03 00 00 */ cmplwi r3, 0 +/* 8000FE74 0000CDD4 41 82 00 20 */ beq lbl_8000FE94 +/* 8000FE78 0000CDD8 A0 03 00 08 */ lhz r0, 8(r3) +/* 8000FE7C 0000CDDC 7C 05 00 40 */ cmplw r5, r0 +/* 8000FE80 0000CDE0 40 82 00 14 */ bne lbl_8000FE94 +/* 8000FE84 0000CDE4 88 03 00 30 */ lbz r0, 0x30(r3) +/* 8000FE88 0000CDE8 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 8000FE8C 0000CDEC 40 82 00 08 */ bne lbl_8000FE94 +/* 8000FE90 0000CDF0 38 80 00 01 */ li r4, 1 +lbl_8000FE94: +/* 8000FE94 0000CDF4 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8000FE98 0000CDF8 4C 82 00 20 */ bnelr +/* 8000FE9C 0000CDFC 38 60 00 00 */ li r3, 0 +/* 8000FEA0 0000CE00 4E 80 00 20 */ blr + +.global RemoveObject__11CObjectListF9TUniqueId +RemoveObject__11CObjectListF9TUniqueId: +/* 8000FEA4 0000CE04 A0 E4 00 00 */ lhz r7, 0(r4) +/* 8000FEA8 0000CE08 54 E0 1C F8 */ rlwinm r0, r7, 3, 0x13, 0x1c +/* 8000FEAC 0000CE0C 54 E8 05 BE */ clrlwi r8, r7, 0x16 +/* 8000FEB0 0000CE10 7C A3 02 14 */ add r5, r3, r0 +/* 8000FEB4 0000CE14 80 C5 00 04 */ lwz r6, 4(r5) +/* 8000FEB8 0000CE18 28 06 00 00 */ cmplwi r6, 0 +/* 8000FEBC 0000CE1C 4D 82 00 20 */ beqlr +/* 8000FEC0 0000CE20 A0 06 00 08 */ lhz r0, 8(r6) +/* 8000FEC4 0000CE24 7C 00 38 40 */ cmplw r0, r7 +/* 8000FEC8 0000CE28 4C 82 00 20 */ bnelr +/* 8000FECC 0000CE2C A8 03 20 08 */ lha r0, 0x2008(r3) +/* 8000FED0 0000CE30 7C 00 40 00 */ cmpw r0, r8 +/* 8000FED4 0000CE34 40 82 00 38 */ bne lbl_8000FF0C +/* 8000FED8 0000CE38 A8 05 00 08 */ lha r0, 8(r5) +/* 8000FEDC 0000CE3C B0 03 20 08 */ sth r0, 0x2008(r3) +/* 8000FEE0 0000CE40 A0 04 00 00 */ lhz r0, 0(r4) +/* 8000FEE4 0000CE44 54 00 1C F8 */ rlwinm r0, r0, 3, 0x13, 0x1c +/* 8000FEE8 0000CE48 7C A3 02 14 */ add r5, r3, r0 +/* 8000FEEC 0000CE4C A8 05 00 08 */ lha r0, 8(r5) +/* 8000FEF0 0000CE50 2C 00 FF FF */ cmpwi r0, -1 +/* 8000FEF4 0000CE54 41 82 00 54 */ beq lbl_8000FF48 +/* 8000FEF8 0000CE58 54 00 18 38 */ slwi r0, r0, 3 +/* 8000FEFC 0000CE5C 38 C0 FF FF */ li r6, -1 +/* 8000FF00 0000CE60 7C A3 02 14 */ add r5, r3, r0 +/* 8000FF04 0000CE64 B0 C5 00 0A */ sth r6, 0xa(r5) +/* 8000FF08 0000CE68 48 00 00 40 */ b lbl_8000FF48 +lbl_8000FF0C: +/* 8000FF0C 0000CE6C A8 05 00 0A */ lha r0, 0xa(r5) +/* 8000FF10 0000CE70 A8 C5 00 08 */ lha r6, 8(r5) +/* 8000FF14 0000CE74 54 00 18 38 */ slwi r0, r0, 3 +/* 8000FF18 0000CE78 7C A3 02 14 */ add r5, r3, r0 +/* 8000FF1C 0000CE7C B0 C5 00 08 */ sth r6, 8(r5) +/* 8000FF20 0000CE80 A0 04 00 00 */ lhz r0, 0(r4) +/* 8000FF24 0000CE84 54 00 1C F8 */ rlwinm r0, r0, 3, 0x13, 0x1c +/* 8000FF28 0000CE88 7C A3 02 14 */ add r5, r3, r0 +/* 8000FF2C 0000CE8C A8 05 00 08 */ lha r0, 8(r5) +/* 8000FF30 0000CE90 2C 00 FF FF */ cmpwi r0, -1 +/* 8000FF34 0000CE94 41 82 00 14 */ beq lbl_8000FF48 +/* 8000FF38 0000CE98 54 00 18 38 */ slwi r0, r0, 3 +/* 8000FF3C 0000CE9C A8 C5 00 0A */ lha r6, 0xa(r5) +/* 8000FF40 0000CEA0 7C A3 02 14 */ add r5, r3, r0 +/* 8000FF44 0000CEA4 B0 C5 00 0A */ sth r6, 0xa(r5) +lbl_8000FF48: +/* 8000FF48 0000CEA8 A8 C3 20 0A */ lha r6, 0x200a(r3) +/* 8000FF4C 0000CEAC 38 E0 00 00 */ li r7, 0 +/* 8000FF50 0000CEB0 38 A0 FF FF */ li r5, -1 +/* 8000FF54 0000CEB4 38 06 FF FF */ addi r0, r6, -1 +/* 8000FF58 0000CEB8 B0 03 20 0A */ sth r0, 0x200a(r3) +/* 8000FF5C 0000CEBC A0 04 00 00 */ lhz r0, 0(r4) +/* 8000FF60 0000CEC0 54 00 1C F8 */ rlwinm r0, r0, 3, 0x13, 0x1c +/* 8000FF64 0000CEC4 7C C3 02 14 */ add r6, r3, r0 +/* 8000FF68 0000CEC8 90 E6 00 04 */ stw r7, 4(r6) +/* 8000FF6C 0000CECC A0 04 00 00 */ lhz r0, 0(r4) +/* 8000FF70 0000CED0 54 00 1C F8 */ rlwinm r0, r0, 3, 0x13, 0x1c +/* 8000FF74 0000CED4 7C 63 02 14 */ add r3, r3, r0 +/* 8000FF78 0000CED8 B0 A3 00 08 */ sth r5, 8(r3) +/* 8000FF7C 0000CEDC B0 A3 00 0A */ sth r5, 0xa(r3) +/* 8000FF80 0000CEE0 4E 80 00 20 */ blr + +.global AddObject__11CObjectListFR7CEntity +AddObject__11CObjectListFR7CEntity: +/* 8000FF84 0000CEE4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000FF88 0000CEE8 7C 08 02 A6 */ mflr r0 +/* 8000FF8C 0000CEEC 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000FF90 0000CEF0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8000FF94 0000CEF4 7C 9F 23 78 */ mr r31, r4 +/* 8000FF98 0000CEF8 93 C1 00 08 */ stw r30, 8(r1) +/* 8000FF9C 0000CEFC 7C 7E 1B 78 */ mr r30, r3 +/* 8000FFA0 0000CF00 81 83 00 00 */ lwz r12, 0(r3) +/* 8000FFA4 0000CF04 81 8C 00 08 */ lwz r12, 8(r12) +/* 8000FFA8 0000CF08 7D 89 03 A6 */ mtctr r12 +/* 8000FFAC 0000CF0C 4E 80 04 21 */ bctrl +/* 8000FFB0 0000CF10 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000FFB4 0000CF14 41 82 00 64 */ beq lbl_80010018 +/* 8000FFB8 0000CF18 A8 1E 20 08 */ lha r0, 0x2008(r30) +/* 8000FFBC 0000CF1C 38 80 FF FF */ li r4, -1 +/* 8000FFC0 0000CF20 2C 00 FF FF */ cmpwi r0, -1 +/* 8000FFC4 0000CF24 41 82 00 1C */ beq lbl_8000FFE0 +/* 8000FFC8 0000CF28 A0 9F 00 08 */ lhz r4, 8(r31) +/* 8000FFCC 0000CF2C 54 00 18 38 */ slwi r0, r0, 3 +/* 8000FFD0 0000CF30 7C 7E 02 14 */ add r3, r30, r0 +/* 8000FFD4 0000CF34 54 80 05 BE */ clrlwi r0, r4, 0x16 +/* 8000FFD8 0000CF38 B0 03 00 0A */ sth r0, 0xa(r3) +/* 8000FFDC 0000CF3C A8 9E 20 08 */ lha r4, 0x2008(r30) +lbl_8000FFE0: +/* 8000FFE0 0000CF40 A0 7F 00 08 */ lhz r3, 8(r31) +/* 8000FFE4 0000CF44 38 00 FF FF */ li r0, -1 +/* 8000FFE8 0000CF48 54 63 05 BE */ clrlwi r3, r3, 0x16 +/* 8000FFEC 0000CF4C B0 7E 20 08 */ sth r3, 0x2008(r30) +/* 8000FFF0 0000CF50 A0 7F 00 08 */ lhz r3, 8(r31) +/* 8000FFF4 0000CF54 54 63 1C F8 */ rlwinm r3, r3, 3, 0x13, 0x1c +/* 8000FFF8 0000CF58 38 63 00 04 */ addi r3, r3, 4 +/* 8000FFFC 0000CF5C 7C 7E 1A 14 */ add r3, r30, r3 +/* 80010000 0000CF60 93 E3 00 00 */ stw r31, 0(r3) +/* 80010004 0000CF64 B0 83 00 04 */ sth r4, 4(r3) +/* 80010008 0000CF68 B0 03 00 06 */ sth r0, 6(r3) +/* 8001000C 0000CF6C A8 7E 20 0A */ lha r3, 0x200a(r30) +/* 80010010 0000CF70 38 03 00 01 */ addi r0, r3, 1 +/* 80010014 0000CF74 B0 1E 20 0A */ sth r0, 0x200a(r30) +lbl_80010018: +/* 80010018 0000CF78 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001001C 0000CF7C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80010020 0000CF80 83 C1 00 08 */ lwz r30, 8(r1) +/* 80010024 0000CF84 7C 08 03 A6 */ mtlr r0 +/* 80010028 0000CF88 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001002C 0000CF8C 4E 80 00 20 */ blr + +.global IsQualified__11CObjectListFRC7CEntity +IsQualified__11CObjectListFRC7CEntity: +/* 80010030 0000CF90 38 60 00 01 */ li r3, 1 +/* 80010034 0000CF94 4E 80 00 20 */ blr + +.global __ct__11CObjectListF15EGameObjectList +__ct__11CObjectListF15EGameObjectList: +/* 80010038 0000CF98 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001003C 0000CF9C 7C 08 02 A6 */ mflr r0 +/* 80010040 0000CFA0 3C A0 80 3E */ lis r5, lbl_803D96D8@ha +/* 80010044 0000CFA4 38 C0 00 08 */ li r6, 8 +/* 80010048 0000CFA8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001004C 0000CFAC 38 05 96 D8 */ addi r0, r5, lbl_803D96D8@l +/* 80010050 0000CFB0 38 A0 00 00 */ li r5, 0 +/* 80010054 0000CFB4 38 E0 04 00 */ li r7, 0x400 +/* 80010058 0000CFB8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001005C 0000CFBC 7C 9F 23 78 */ mr r31, r4 +/* 80010060 0000CFC0 93 C1 00 08 */ stw r30, 8(r1) +/* 80010064 0000CFC4 7C 7E 1B 78 */ mr r30, r3 +/* 80010068 0000CFC8 3C 60 80 01 */ lis r3, __ct__Q211CObjectList16SObjectListEntryFv@ha +/* 8001006C 0000CFCC 90 1E 00 00 */ stw r0, 0(r30) +/* 80010070 0000CFD0 38 03 01 2C */ addi r0, r3, __ct__Q211CObjectList16SObjectListEntryFv@l +/* 80010074 0000CFD4 38 7E 00 04 */ addi r3, r30, 4 +/* 80010078 0000CFD8 7C 04 03 78 */ mr r4, r0 +/* 8001007C 0000CFDC 48 37 96 D1 */ bl __construct_array +/* 80010080 0000CFE0 93 FE 20 04 */ stw r31, 0x2004(r30) +/* 80010084 0000CFE4 38 80 FF FF */ li r4, -1 +/* 80010088 0000CFE8 38 60 00 00 */ li r3, 0 +/* 8001008C 0000CFEC 38 00 00 80 */ li r0, 0x80 +/* 80010090 0000CFF0 B0 9E 20 08 */ sth r4, 0x2008(r30) +/* 80010094 0000CFF4 7F C4 F3 78 */ mr r4, r30 +/* 80010098 0000CFF8 B0 7E 20 0A */ sth r3, 0x200a(r30) +/* 8001009C 0000CFFC 7C 09 03 A6 */ mtctr r0 +lbl_800100A0: +/* 800100A0 0000D000 38 60 00 00 */ li r3, 0 +/* 800100A4 0000D004 38 00 FF FF */ li r0, -1 +/* 800100A8 0000D008 90 64 00 04 */ stw r3, 4(r4) +/* 800100AC 0000D00C B0 04 00 08 */ sth r0, 8(r4) +/* 800100B0 0000D010 B0 04 00 0A */ sth r0, 0xa(r4) +/* 800100B4 0000D014 90 64 00 0C */ stw r3, 0xc(r4) +/* 800100B8 0000D018 B0 04 00 10 */ sth r0, 0x10(r4) +/* 800100BC 0000D01C B0 04 00 12 */ sth r0, 0x12(r4) +/* 800100C0 0000D020 90 64 00 14 */ stw r3, 0x14(r4) +/* 800100C4 0000D024 B0 04 00 18 */ sth r0, 0x18(r4) +/* 800100C8 0000D028 B0 04 00 1A */ sth r0, 0x1a(r4) +/* 800100CC 0000D02C 90 64 00 1C */ stw r3, 0x1c(r4) +/* 800100D0 0000D030 B0 04 00 20 */ sth r0, 0x20(r4) +/* 800100D4 0000D034 B0 04 00 22 */ sth r0, 0x22(r4) +/* 800100D8 0000D038 90 64 00 24 */ stw r3, 0x24(r4) +/* 800100DC 0000D03C B0 04 00 28 */ sth r0, 0x28(r4) +/* 800100E0 0000D040 B0 04 00 2A */ sth r0, 0x2a(r4) +/* 800100E4 0000D044 90 64 00 2C */ stw r3, 0x2c(r4) +/* 800100E8 0000D048 B0 04 00 30 */ sth r0, 0x30(r4) +/* 800100EC 0000D04C B0 04 00 32 */ sth r0, 0x32(r4) +/* 800100F0 0000D050 90 64 00 34 */ stw r3, 0x34(r4) +/* 800100F4 0000D054 B0 04 00 38 */ sth r0, 0x38(r4) +/* 800100F8 0000D058 B0 04 00 3A */ sth r0, 0x3a(r4) +/* 800100FC 0000D05C 90 64 00 3C */ stw r3, 0x3c(r4) +/* 80010100 0000D060 B0 04 00 40 */ sth r0, 0x40(r4) +/* 80010104 0000D064 B0 04 00 42 */ sth r0, 0x42(r4) +/* 80010108 0000D068 38 84 00 40 */ addi r4, r4, 0x40 +/* 8001010C 0000D06C 42 00 FF 94 */ bdnz lbl_800100A0 +/* 80010110 0000D070 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80010114 0000D074 7F C3 F3 78 */ mr r3, r30 +/* 80010118 0000D078 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001011C 0000D07C 83 C1 00 08 */ lwz r30, 8(r1) +/* 80010120 0000D080 7C 08 03 A6 */ mtlr r0 +/* 80010124 0000D084 38 21 00 10 */ addi r1, r1, 0x10 + +.global sub_80010128 +sub_80010128: +/* 80010128 0000D088 4E 80 00 20 */ blr + +.global __ct__Q211CObjectList16SObjectListEntryFv +__ct__Q211CObjectList16SObjectListEntryFv: +/* 8001012C 0000D08C 38 80 00 00 */ li r4, 0 +/* 80010130 0000D090 38 00 FF FF */ li r0, -1 +/* 80010134 0000D094 90 83 00 00 */ stw r4, 0(r3) +/* 80010138 0000D098 B0 03 00 04 */ sth r0, 4(r3) +/* 8001013C 0000D09C B0 03 00 06 */ sth r0, 6(r3) +/* 80010140 0000D0A0 4E 80 00 20 */ blr diff --git a/asm/Kyoto_CWD/CPlayer.s b/asm/Kyoto_CWD/CPlayer.s new file mode 100644 index 00000000..82a1f24b --- /dev/null +++ b/asm/Kyoto_CWD/CPlayer.s @@ -0,0 +1,12658 @@ +.include "macros.inc" + +.section .text, "ax" + +.global __dt__7CPlayerFv +__dt__7CPlayerFv: +/* 80010144 0000D0A4 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80010148 0000D0A8 7C 08 02 A6 */ mflr r0 +/* 8001014C 0000D0AC 90 01 00 84 */ stw r0, 0x84(r1) +/* 80010150 0000D0B0 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 80010154 0000D0B4 7C 9F 23 78 */ mr r31, r4 +/* 80010158 0000D0B8 93 C1 00 78 */ stw r30, 0x78(r1) +/* 8001015C 0000D0BC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80010160 0000D0C0 93 A1 00 74 */ stw r29, 0x74(r1) +/* 80010164 0000D0C4 93 81 00 70 */ stw r28, 0x70(r1) +/* 80010168 0000D0C8 41 82 06 E8 */ beq lbl_80010850 +/* 8001016C 0000D0CC 3C 60 80 3E */ lis r3, lbl_803D96E8@ha +/* 80010170 0000D0D0 34 1E 09 E4 */ addic. r0, r30, 0x9e4 +/* 80010174 0000D0D4 38 03 96 E8 */ addi r0, r3, lbl_803D96E8@l +/* 80010178 0000D0D8 90 1E 00 00 */ stw r0, 0(r30) +/* 8001017C 0000D0DC 41 82 00 58 */ beq lbl_800101D4 +/* 80010180 0000D0E0 80 BE 09 E4 */ lwz r5, 0x9e4(r30) +/* 80010184 0000D0E4 38 60 00 00 */ li r3, 0 +/* 80010188 0000D0E8 2C 05 00 00 */ cmpwi r5, 0 +/* 8001018C 0000D0EC 40 81 00 40 */ ble lbl_800101CC +/* 80010190 0000D0F0 2C 05 00 08 */ cmpwi r5, 8 +/* 80010194 0000D0F4 38 85 FF F8 */ addi r4, r5, -8 +/* 80010198 0000D0F8 40 81 00 20 */ ble lbl_800101B8 +/* 8001019C 0000D0FC 38 04 00 07 */ addi r0, r4, 7 +/* 800101A0 0000D100 54 00 E8 FE */ srwi r0, r0, 3 +/* 800101A4 0000D104 7C 09 03 A6 */ mtctr r0 +/* 800101A8 0000D108 2C 04 00 00 */ cmpwi r4, 0 +/* 800101AC 0000D10C 40 81 00 0C */ ble lbl_800101B8 +lbl_800101B0: +/* 800101B0 0000D110 38 63 00 08 */ addi r3, r3, 8 +/* 800101B4 0000D114 42 00 FF FC */ bdnz lbl_800101B0 +lbl_800101B8: +/* 800101B8 0000D118 7C 03 28 50 */ subf r0, r3, r5 +/* 800101BC 0000D11C 7C 09 03 A6 */ mtctr r0 +/* 800101C0 0000D120 7C 03 28 00 */ cmpw r3, r5 +/* 800101C4 0000D124 40 80 00 08 */ bge lbl_800101CC +lbl_800101C8: +/* 800101C8 0000D128 42 00 00 00 */ bdnz lbl_800101C8 +lbl_800101CC: +/* 800101CC 0000D12C 38 00 00 00 */ li r0, 0 +/* 800101D0 0000D130 90 1E 09 E4 */ stw r0, 0x9e4(r30) +lbl_800101D4: +/* 800101D4 0000D134 34 1E 09 80 */ addic. r0, r30, 0x980 +/* 800101D8 0000D138 41 82 00 58 */ beq lbl_80010230 +/* 800101DC 0000D13C 80 BE 09 80 */ lwz r5, 0x980(r30) +/* 800101E0 0000D140 38 60 00 00 */ li r3, 0 +/* 800101E4 0000D144 2C 05 00 00 */ cmpwi r5, 0 +/* 800101E8 0000D148 40 81 00 40 */ ble lbl_80010228 +/* 800101EC 0000D14C 2C 05 00 08 */ cmpwi r5, 8 +/* 800101F0 0000D150 38 85 FF F8 */ addi r4, r5, -8 +/* 800101F4 0000D154 40 81 00 20 */ ble lbl_80010214 +/* 800101F8 0000D158 38 04 00 07 */ addi r0, r4, 7 +/* 800101FC 0000D15C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80010200 0000D160 7C 09 03 A6 */ mtctr r0 +/* 80010204 0000D164 2C 04 00 00 */ cmpwi r4, 0 +/* 80010208 0000D168 40 81 00 0C */ ble lbl_80010214 +lbl_8001020C: +/* 8001020C 0000D16C 38 63 00 08 */ addi r3, r3, 8 +/* 80010210 0000D170 42 00 FF FC */ bdnz lbl_8001020C +lbl_80010214: +/* 80010214 0000D174 7C 03 28 50 */ subf r0, r3, r5 +/* 80010218 0000D178 7C 09 03 A6 */ mtctr r0 +/* 8001021C 0000D17C 7C 03 28 00 */ cmpw r3, r5 +/* 80010220 0000D180 40 80 00 08 */ bge lbl_80010228 +lbl_80010224: +/* 80010224 0000D184 42 00 00 00 */ bdnz lbl_80010224 +lbl_80010228: +/* 80010228 0000D188 38 00 00 00 */ li r0, 0 +/* 8001022C 0000D18C 90 1E 09 80 */ stw r0, 0x980(r30) +lbl_80010230: +/* 80010230 0000D190 34 1E 09 3C */ addic. r0, r30, 0x93c +/* 80010234 0000D194 41 82 00 58 */ beq lbl_8001028C +/* 80010238 0000D198 80 BE 09 3C */ lwz r5, 0x93c(r30) +/* 8001023C 0000D19C 38 60 00 00 */ li r3, 0 +/* 80010240 0000D1A0 2C 05 00 00 */ cmpwi r5, 0 +/* 80010244 0000D1A4 40 81 00 40 */ ble lbl_80010284 +/* 80010248 0000D1A8 2C 05 00 08 */ cmpwi r5, 8 +/* 8001024C 0000D1AC 38 85 FF F8 */ addi r4, r5, -8 +/* 80010250 0000D1B0 40 81 00 20 */ ble lbl_80010270 +/* 80010254 0000D1B4 38 04 00 07 */ addi r0, r4, 7 +/* 80010258 0000D1B8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8001025C 0000D1BC 7C 09 03 A6 */ mtctr r0 +/* 80010260 0000D1C0 2C 04 00 00 */ cmpwi r4, 0 +/* 80010264 0000D1C4 40 81 00 0C */ ble lbl_80010270 +lbl_80010268: +/* 80010268 0000D1C8 38 63 00 08 */ addi r3, r3, 8 +/* 8001026C 0000D1CC 42 00 FF FC */ bdnz lbl_80010268 +lbl_80010270: +/* 80010270 0000D1D0 7C 03 28 50 */ subf r0, r3, r5 +/* 80010274 0000D1D4 7C 09 03 A6 */ mtctr r0 +/* 80010278 0000D1D8 7C 03 28 00 */ cmpw r3, r5 +/* 8001027C 0000D1DC 40 80 00 08 */ bge lbl_80010284 +lbl_80010280: +/* 80010280 0000D1E0 42 00 00 00 */ bdnz lbl_80010280 +lbl_80010284: +/* 80010284 0000D1E4 38 00 00 00 */ li r0, 0 +/* 80010288 0000D1E8 90 1E 09 3C */ stw r0, 0x93c(r30) +lbl_8001028C: +/* 8001028C 0000D1EC 34 1E 08 38 */ addic. r0, r30, 0x838 +/* 80010290 0000D1F0 41 82 00 58 */ beq lbl_800102E8 +/* 80010294 0000D1F4 80 BE 08 38 */ lwz r5, 0x838(r30) +/* 80010298 0000D1F8 38 60 00 00 */ li r3, 0 +/* 8001029C 0000D1FC 2C 05 00 00 */ cmpwi r5, 0 +/* 800102A0 0000D200 40 81 00 40 */ ble lbl_800102E0 +/* 800102A4 0000D204 2C 05 00 08 */ cmpwi r5, 8 +/* 800102A8 0000D208 38 85 FF F8 */ addi r4, r5, -8 +/* 800102AC 0000D20C 40 81 00 20 */ ble lbl_800102CC +/* 800102B0 0000D210 38 04 00 07 */ addi r0, r4, 7 +/* 800102B4 0000D214 54 00 E8 FE */ srwi r0, r0, 3 +/* 800102B8 0000D218 7C 09 03 A6 */ mtctr r0 +/* 800102BC 0000D21C 2C 04 00 00 */ cmpwi r4, 0 +/* 800102C0 0000D220 40 81 00 0C */ ble lbl_800102CC +lbl_800102C4: +/* 800102C4 0000D224 38 63 00 08 */ addi r3, r3, 8 +/* 800102C8 0000D228 42 00 FF FC */ bdnz lbl_800102C4 +lbl_800102CC: +/* 800102CC 0000D22C 7C 03 28 50 */ subf r0, r3, r5 +/* 800102D0 0000D230 7C 09 03 A6 */ mtctr r0 +/* 800102D4 0000D234 7C 03 28 00 */ cmpw r3, r5 +/* 800102D8 0000D238 40 80 00 08 */ bge lbl_800102E0 +lbl_800102DC: +/* 800102DC 0000D23C 42 00 00 00 */ bdnz lbl_800102DC +lbl_800102E0: +/* 800102E0 0000D240 38 00 00 00 */ li r0, 0 +/* 800102E4 0000D244 90 1E 08 38 */ stw r0, 0x838(r30) +lbl_800102E8: +/* 800102E8 0000D248 34 1E 07 F0 */ addic. r0, r30, 0x7f0 +/* 800102EC 0000D24C 41 82 00 10 */ beq lbl_800102FC +/* 800102F0 0000D250 80 7E 07 F0 */ lwz r3, 0x7f0(r30) +/* 800102F4 0000D254 38 80 00 01 */ li r4, 1 +/* 800102F8 0000D258 48 10 67 55 */ bl __dt__10CModelDataFv +lbl_800102FC: +/* 800102FC 0000D25C 34 1E 07 6C */ addic. r0, r30, 0x76c +/* 80010300 0000D260 41 82 00 CC */ beq lbl_800103CC +/* 80010304 0000D264 80 7E 07 6C */ lwz r3, 0x76c(r30) +/* 80010308 0000D268 28 03 00 00 */ cmplwi r3, 0 +/* 8001030C 0000D26C 41 82 00 C0 */ beq lbl_800103CC +/* 80010310 0000D270 34 03 00 B0 */ addic. r0, r3, 0xb0 +/* 80010314 0000D274 41 82 00 58 */ beq lbl_8001036C +/* 80010318 0000D278 80 C3 00 B0 */ lwz r6, 0xb0(r3) +/* 8001031C 0000D27C 38 80 00 00 */ li r4, 0 +/* 80010320 0000D280 2C 06 00 00 */ cmpwi r6, 0 +/* 80010324 0000D284 40 81 00 40 */ ble lbl_80010364 +/* 80010328 0000D288 2C 06 00 08 */ cmpwi r6, 8 +/* 8001032C 0000D28C 38 A6 FF F8 */ addi r5, r6, -8 +/* 80010330 0000D290 40 81 00 20 */ ble lbl_80010350 +/* 80010334 0000D294 38 05 00 07 */ addi r0, r5, 7 +/* 80010338 0000D298 54 00 E8 FE */ srwi r0, r0, 3 +/* 8001033C 0000D29C 7C 09 03 A6 */ mtctr r0 +/* 80010340 0000D2A0 2C 05 00 00 */ cmpwi r5, 0 +/* 80010344 0000D2A4 40 81 00 0C */ ble lbl_80010350 +lbl_80010348: +/* 80010348 0000D2A8 38 84 00 08 */ addi r4, r4, 8 +/* 8001034C 0000D2AC 42 00 FF FC */ bdnz lbl_80010348 +lbl_80010350: +/* 80010350 0000D2B0 7C 04 30 50 */ subf r0, r4, r6 +/* 80010354 0000D2B4 7C 09 03 A6 */ mtctr r0 +/* 80010358 0000D2B8 7C 04 30 00 */ cmpw r4, r6 +/* 8001035C 0000D2BC 40 80 00 08 */ bge lbl_80010364 +lbl_80010360: +/* 80010360 0000D2C0 42 00 00 00 */ bdnz lbl_80010360 +lbl_80010364: +/* 80010364 0000D2C4 38 00 00 00 */ li r0, 0 +/* 80010368 0000D2C8 90 03 00 B0 */ stw r0, 0xb0(r3) +lbl_8001036C: +/* 8001036C 0000D2CC 34 03 00 7C */ addic. r0, r3, 0x7c +/* 80010370 0000D2D0 41 82 00 58 */ beq lbl_800103C8 +/* 80010374 0000D2D4 80 C3 00 7C */ lwz r6, 0x7c(r3) +/* 80010378 0000D2D8 38 80 00 00 */ li r4, 0 +/* 8001037C 0000D2DC 2C 06 00 00 */ cmpwi r6, 0 +/* 80010380 0000D2E0 40 81 00 40 */ ble lbl_800103C0 +/* 80010384 0000D2E4 2C 06 00 08 */ cmpwi r6, 8 +/* 80010388 0000D2E8 38 A6 FF F8 */ addi r5, r6, -8 +/* 8001038C 0000D2EC 40 81 00 20 */ ble lbl_800103AC +/* 80010390 0000D2F0 38 05 00 07 */ addi r0, r5, 7 +/* 80010394 0000D2F4 54 00 E8 FE */ srwi r0, r0, 3 +/* 80010398 0000D2F8 7C 09 03 A6 */ mtctr r0 +/* 8001039C 0000D2FC 2C 05 00 00 */ cmpwi r5, 0 +/* 800103A0 0000D300 40 81 00 0C */ ble lbl_800103AC +lbl_800103A4: +/* 800103A4 0000D304 38 84 00 08 */ addi r4, r4, 8 +/* 800103A8 0000D308 42 00 FF FC */ bdnz lbl_800103A4 +lbl_800103AC: +/* 800103AC 0000D30C 7C 04 30 50 */ subf r0, r4, r6 +/* 800103B0 0000D310 7C 09 03 A6 */ mtctr r0 +/* 800103B4 0000D314 7C 04 30 00 */ cmpw r4, r6 +/* 800103B8 0000D318 40 80 00 08 */ bge lbl_800103C0 +lbl_800103BC: +/* 800103BC 0000D31C 42 00 00 00 */ bdnz lbl_800103BC +lbl_800103C0: +/* 800103C0 0000D320 38 00 00 00 */ li r0, 0 +/* 800103C4 0000D324 90 03 00 7C */ stw r0, 0x7c(r3) +lbl_800103C8: +/* 800103C8 0000D328 48 00 AB 6D */ bl "__dl__30TOneStatic<16CPlayerCameraBob>FPv" +lbl_800103CC: +/* 800103CC 0000D32C 34 1E 07 68 */ addic. r0, r30, 0x768 +/* 800103D0 0000D330 41 82 00 10 */ beq lbl_800103E0 +/* 800103D4 0000D334 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 800103D8 0000D338 38 80 00 01 */ li r4, 1 +/* 800103DC 0000D33C 48 0E 8A 35 */ bl sub_800f8e10 +lbl_800103E0: +/* 800103E0 0000D340 34 1E 07 30 */ addic. r0, r30, 0x730 +/* 800103E4 0000D344 41 82 00 64 */ beq lbl_80010448 +/* 800103E8 0000D348 80 1E 07 34 */ lwz r0, 0x734(r30) +/* 800103EC 0000D34C 83 9E 07 3C */ lwz r28, 0x73c(r30) +/* 800103F0 0000D350 54 00 18 38 */ slwi r0, r0, 3 +/* 800103F4 0000D354 7F BC 02 14 */ add r29, r28, r0 +/* 800103F8 0000D358 93 81 00 5C */ stw r28, 0x5c(r1) +/* 800103FC 0000D35C 93 A1 00 64 */ stw r29, 0x64(r1) +/* 80010400 0000D360 93 A1 00 60 */ stw r29, 0x60(r1) +/* 80010404 0000D364 93 81 00 58 */ stw r28, 0x58(r1) +/* 80010408 0000D368 48 00 00 28 */ b lbl_80010430 +lbl_8001040C: +/* 8001040C 0000D36C 28 1C 00 00 */ cmplwi r28, 0 +/* 80010410 0000D370 41 82 00 1C */ beq lbl_8001042C +/* 80010414 0000D374 88 1C 00 00 */ lbz r0, 0(r28) +/* 80010418 0000D378 28 00 00 00 */ cmplwi r0, 0 +/* 8001041C 0000D37C 41 82 00 10 */ beq lbl_8001042C +/* 80010420 0000D380 80 7C 00 04 */ lwz r3, 4(r28) +/* 80010424 0000D384 38 80 00 01 */ li r4, 1 +/* 80010428 0000D388 48 10 66 25 */ bl __dt__10CModelDataFv +lbl_8001042C: +/* 8001042C 0000D38C 3B 9C 00 08 */ addi r28, r28, 8 +lbl_80010430: +/* 80010430 0000D390 7C 1C E8 40 */ cmplw r28, r29 +/* 80010434 0000D394 40 82 FF D8 */ bne lbl_8001040C +/* 80010438 0000D398 80 7E 07 3C */ lwz r3, 0x73c(r30) +/* 8001043C 0000D39C 28 03 00 00 */ cmplwi r3, 0 +/* 80010440 0000D3A0 41 82 00 08 */ beq lbl_80010448 +/* 80010444 0000D3A4 48 30 54 ED */ bl Free__7CMemoryFPCv +lbl_80010448: +/* 80010448 0000D3A8 34 1E 07 1C */ addic. r0, r30, 0x71c +/* 8001044C 0000D3AC 41 82 00 60 */ beq lbl_800104AC +/* 80010450 0000D3B0 34 1E 07 1C */ addic. r0, r30, 0x71c +/* 80010454 0000D3B4 41 82 00 58 */ beq lbl_800104AC +/* 80010458 0000D3B8 80 BE 07 1C */ lwz r5, 0x71c(r30) +/* 8001045C 0000D3BC 38 60 00 00 */ li r3, 0 +/* 80010460 0000D3C0 2C 05 00 00 */ cmpwi r5, 0 +/* 80010464 0000D3C4 40 81 00 40 */ ble lbl_800104A4 +/* 80010468 0000D3C8 2C 05 00 08 */ cmpwi r5, 8 +/* 8001046C 0000D3CC 38 85 FF F8 */ addi r4, r5, -8 +/* 80010470 0000D3D0 40 81 00 20 */ ble lbl_80010490 +/* 80010474 0000D3D4 38 04 00 07 */ addi r0, r4, 7 +/* 80010478 0000D3D8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8001047C 0000D3DC 7C 09 03 A6 */ mtctr r0 +/* 80010480 0000D3E0 2C 04 00 00 */ cmpwi r4, 0 +/* 80010484 0000D3E4 40 81 00 0C */ ble lbl_80010490 +lbl_80010488: +/* 80010488 0000D3E8 38 63 00 08 */ addi r3, r3, 8 +/* 8001048C 0000D3EC 42 00 FF FC */ bdnz lbl_80010488 +lbl_80010490: +/* 80010490 0000D3F0 7C 03 28 50 */ subf r0, r3, r5 +/* 80010494 0000D3F4 7C 09 03 A6 */ mtctr r0 +/* 80010498 0000D3F8 7C 03 28 00 */ cmpw r3, r5 +/* 8001049C 0000D3FC 40 80 00 08 */ bge lbl_800104A4 +lbl_800104A0: +/* 800104A0 0000D400 42 00 00 00 */ bdnz lbl_800104A0 +lbl_800104A4: +/* 800104A4 0000D404 38 00 00 00 */ li r0, 0 +/* 800104A8 0000D408 90 1E 07 1C */ stw r0, 0x71c(r30) +lbl_800104AC: +/* 800104AC 0000D40C 34 1E 06 58 */ addic. r0, r30, 0x658 +/* 800104B0 0000D410 41 82 00 60 */ beq lbl_80010510 +/* 800104B4 0000D414 34 1E 06 58 */ addic. r0, r30, 0x658 +/* 800104B8 0000D418 41 82 00 58 */ beq lbl_80010510 +/* 800104BC 0000D41C 80 BE 06 58 */ lwz r5, 0x658(r30) +/* 800104C0 0000D420 38 60 00 00 */ li r3, 0 +/* 800104C4 0000D424 2C 05 00 00 */ cmpwi r5, 0 +/* 800104C8 0000D428 40 81 00 40 */ ble lbl_80010508 +/* 800104CC 0000D42C 2C 05 00 08 */ cmpwi r5, 8 +/* 800104D0 0000D430 38 85 FF F8 */ addi r4, r5, -8 +/* 800104D4 0000D434 40 81 00 20 */ ble lbl_800104F4 +/* 800104D8 0000D438 38 04 00 07 */ addi r0, r4, 7 +/* 800104DC 0000D43C 54 00 E8 FE */ srwi r0, r0, 3 +/* 800104E0 0000D440 7C 09 03 A6 */ mtctr r0 +/* 800104E4 0000D444 2C 04 00 00 */ cmpwi r4, 0 +/* 800104E8 0000D448 40 81 00 0C */ ble lbl_800104F4 +lbl_800104EC: +/* 800104EC 0000D44C 38 63 00 08 */ addi r3, r3, 8 +/* 800104F0 0000D450 42 00 FF FC */ bdnz lbl_800104EC +lbl_800104F4: +/* 800104F4 0000D454 7C 03 28 50 */ subf r0, r3, r5 +/* 800104F8 0000D458 7C 09 03 A6 */ mtctr r0 +/* 800104FC 0000D45C 7C 03 28 00 */ cmpw r3, r5 +/* 80010500 0000D460 40 80 00 08 */ bge lbl_80010508 +lbl_80010504: +/* 80010504 0000D464 42 00 00 00 */ bdnz lbl_80010504 +lbl_80010508: +/* 80010508 0000D468 38 00 00 00 */ li r0, 0 +/* 8001050C 0000D46C 90 1E 06 58 */ stw r0, 0x658(r30) +lbl_80010510: +/* 80010510 0000D470 34 1E 05 94 */ addic. r0, r30, 0x594 +/* 80010514 0000D474 41 82 00 60 */ beq lbl_80010574 +/* 80010518 0000D478 34 1E 05 94 */ addic. r0, r30, 0x594 +/* 8001051C 0000D47C 41 82 00 58 */ beq lbl_80010574 +/* 80010520 0000D480 80 BE 05 94 */ lwz r5, 0x594(r30) +/* 80010524 0000D484 38 60 00 00 */ li r3, 0 +/* 80010528 0000D488 2C 05 00 00 */ cmpwi r5, 0 +/* 8001052C 0000D48C 40 81 00 40 */ ble lbl_8001056C +/* 80010530 0000D490 2C 05 00 08 */ cmpwi r5, 8 +/* 80010534 0000D494 38 85 FF F8 */ addi r4, r5, -8 +/* 80010538 0000D498 40 81 00 20 */ ble lbl_80010558 +/* 8001053C 0000D49C 38 04 00 07 */ addi r0, r4, 7 +/* 80010540 0000D4A0 54 00 E8 FE */ srwi r0, r0, 3 +/* 80010544 0000D4A4 7C 09 03 A6 */ mtctr r0 +/* 80010548 0000D4A8 2C 04 00 00 */ cmpwi r4, 0 +/* 8001054C 0000D4AC 40 81 00 0C */ ble lbl_80010558 +lbl_80010550: +/* 80010550 0000D4B0 38 63 00 08 */ addi r3, r3, 8 +/* 80010554 0000D4B4 42 00 FF FC */ bdnz lbl_80010550 +lbl_80010558: +/* 80010558 0000D4B8 7C 03 28 50 */ subf r0, r3, r5 +/* 8001055C 0000D4BC 7C 09 03 A6 */ mtctr r0 +/* 80010560 0000D4C0 7C 03 28 00 */ cmpw r3, r5 +/* 80010564 0000D4C4 40 80 00 08 */ bge lbl_8001056C +lbl_80010568: +/* 80010568 0000D4C8 42 00 00 00 */ bdnz lbl_80010568 +lbl_8001056C: +/* 8001056C 0000D4CC 38 00 00 00 */ li r0, 0 +/* 80010570 0000D4D0 90 1E 05 94 */ stw r0, 0x594(r30) +lbl_80010574: +/* 80010574 0000D4D4 34 1E 04 A4 */ addic. r0, r30, 0x4a4 +/* 80010578 0000D4D8 41 82 00 60 */ beq lbl_800105D8 +/* 8001057C 0000D4DC 34 1E 04 A4 */ addic. r0, r30, 0x4a4 +/* 80010580 0000D4E0 41 82 00 58 */ beq lbl_800105D8 +/* 80010584 0000D4E4 80 BE 04 A4 */ lwz r5, 0x4a4(r30) +/* 80010588 0000D4E8 38 60 00 00 */ li r3, 0 +/* 8001058C 0000D4EC 2C 05 00 00 */ cmpwi r5, 0 +/* 80010590 0000D4F0 40 81 00 40 */ ble lbl_800105D0 +/* 80010594 0000D4F4 2C 05 00 08 */ cmpwi r5, 8 +/* 80010598 0000D4F8 38 85 FF F8 */ addi r4, r5, -8 +/* 8001059C 0000D4FC 40 81 00 20 */ ble lbl_800105BC +/* 800105A0 0000D500 38 04 00 07 */ addi r0, r4, 7 +/* 800105A4 0000D504 54 00 E8 FE */ srwi r0, r0, 3 +/* 800105A8 0000D508 7C 09 03 A6 */ mtctr r0 +/* 800105AC 0000D50C 2C 04 00 00 */ cmpwi r4, 0 +/* 800105B0 0000D510 40 81 00 0C */ ble lbl_800105BC +lbl_800105B4: +/* 800105B4 0000D514 38 63 00 08 */ addi r3, r3, 8 +/* 800105B8 0000D518 42 00 FF FC */ bdnz lbl_800105B4 +lbl_800105BC: +/* 800105BC 0000D51C 7C 03 28 50 */ subf r0, r3, r5 +/* 800105C0 0000D520 7C 09 03 A6 */ mtctr r0 +/* 800105C4 0000D524 7C 03 28 00 */ cmpw r3, r5 +/* 800105C8 0000D528 40 80 00 08 */ bge lbl_800105D0 +lbl_800105CC: +/* 800105CC 0000D52C 42 00 00 00 */ bdnz lbl_800105CC +lbl_800105D0: +/* 800105D0 0000D530 38 00 00 00 */ li r0, 0 +/* 800105D4 0000D534 90 1E 04 A4 */ stw r0, 0x4a4(r30) +lbl_800105D8: +/* 800105D8 0000D538 38 7E 04 A0 */ addi r3, r30, 0x4a0 +/* 800105DC 0000D53C 38 80 FF FF */ li r4, -1 +/* 800105E0 0000D540 48 00 02 95 */ bl sub_80010874 +/* 800105E4 0000D544 34 1E 04 90 */ addic. r0, r30, 0x490 +/* 800105E8 0000D548 41 82 00 10 */ beq lbl_800105F8 +/* 800105EC 0000D54C 80 7E 04 90 */ lwz r3, 0x490(r30) +/* 800105F0 0000D550 38 80 00 01 */ li r4, 1 +/* 800105F4 0000D554 48 03 23 F1 */ bl __dt__10CPlayerGunFv +lbl_800105F8: +/* 800105F8 0000D558 34 1E 04 04 */ addic. r0, r30, 0x404 +/* 800105FC 0000D55C 41 82 00 60 */ beq lbl_8001065C +/* 80010600 0000D560 34 1E 04 04 */ addic. r0, r30, 0x404 +/* 80010604 0000D564 41 82 00 58 */ beq lbl_8001065C +/* 80010608 0000D568 80 BE 04 04 */ lwz r5, 0x404(r30) +/* 8001060C 0000D56C 38 60 00 00 */ li r3, 0 +/* 80010610 0000D570 2C 05 00 00 */ cmpwi r5, 0 +/* 80010614 0000D574 40 81 00 40 */ ble lbl_80010654 +/* 80010618 0000D578 2C 05 00 08 */ cmpwi r5, 8 +/* 8001061C 0000D57C 38 85 FF F8 */ addi r4, r5, -8 +/* 80010620 0000D580 40 81 00 20 */ ble lbl_80010640 +/* 80010624 0000D584 38 04 00 07 */ addi r0, r4, 7 +/* 80010628 0000D588 54 00 E8 FE */ srwi r0, r0, 3 +/* 8001062C 0000D58C 7C 09 03 A6 */ mtctr r0 +/* 80010630 0000D590 2C 04 00 00 */ cmpwi r4, 0 +/* 80010634 0000D594 40 81 00 0C */ ble lbl_80010640 +lbl_80010638: +/* 80010638 0000D598 38 63 00 08 */ addi r3, r3, 8 +/* 8001063C 0000D59C 42 00 FF FC */ bdnz lbl_80010638 +lbl_80010640: +/* 80010640 0000D5A0 7C 03 28 50 */ subf r0, r3, r5 +/* 80010644 0000D5A4 7C 09 03 A6 */ mtctr r0 +/* 80010648 0000D5A8 7C 03 28 00 */ cmpw r3, r5 +/* 8001064C 0000D5AC 40 80 00 08 */ bge lbl_80010654 +lbl_80010650: +/* 80010650 0000D5B0 42 00 00 00 */ bdnz lbl_80010650 +lbl_80010654: +/* 80010654 0000D5B4 38 00 00 00 */ li r0, 0 +/* 80010658 0000D5B8 90 1E 04 04 */ stw r0, 0x404(r30) +lbl_8001065C: +/* 8001065C 0000D5BC 34 1E 03 64 */ addic. r0, r30, 0x364 +/* 80010660 0000D5C0 41 82 00 44 */ beq lbl_800106A4 +/* 80010664 0000D5C4 80 1E 03 68 */ lwz r0, 0x368(r30) +/* 80010668 0000D5C8 80 7E 03 70 */ lwz r3, 0x370(r30) +/* 8001066C 0000D5CC 54 00 08 3C */ slwi r0, r0, 1 +/* 80010670 0000D5D0 7C 03 02 14 */ add r0, r3, r0 +/* 80010674 0000D5D4 90 61 00 4C */ stw r3, 0x4c(r1) +/* 80010678 0000D5D8 7C 64 1B 78 */ mr r4, r3 +/* 8001067C 0000D5DC 90 01 00 54 */ stw r0, 0x54(r1) +/* 80010680 0000D5E0 90 01 00 50 */ stw r0, 0x50(r1) +/* 80010684 0000D5E4 90 61 00 48 */ stw r3, 0x48(r1) +/* 80010688 0000D5E8 48 00 00 08 */ b lbl_80010690 +lbl_8001068C: +/* 8001068C 0000D5EC 38 84 00 02 */ addi r4, r4, 2 +lbl_80010690: +/* 80010690 0000D5F0 7C 04 00 40 */ cmplw r4, r0 +/* 80010694 0000D5F4 40 82 FF F8 */ bne lbl_8001068C +/* 80010698 0000D5F8 28 03 00 00 */ cmplwi r3, 0 +/* 8001069C 0000D5FC 41 82 00 08 */ beq lbl_800106A4 +/* 800106A0 0000D600 48 30 52 91 */ bl Free__7CMemoryFPCv +lbl_800106A4: +/* 800106A4 0000D604 34 1E 03 54 */ addic. r0, r30, 0x354 +/* 800106A8 0000D608 41 82 00 44 */ beq lbl_800106EC +/* 800106AC 0000D60C 80 1E 03 58 */ lwz r0, 0x358(r30) +/* 800106B0 0000D610 80 7E 03 60 */ lwz r3, 0x360(r30) +/* 800106B4 0000D614 54 00 08 3C */ slwi r0, r0, 1 +/* 800106B8 0000D618 7C 03 02 14 */ add r0, r3, r0 +/* 800106BC 0000D61C 90 61 00 3C */ stw r3, 0x3c(r1) +/* 800106C0 0000D620 7C 64 1B 78 */ mr r4, r3 +/* 800106C4 0000D624 90 01 00 44 */ stw r0, 0x44(r1) +/* 800106C8 0000D628 90 01 00 40 */ stw r0, 0x40(r1) +/* 800106CC 0000D62C 90 61 00 38 */ stw r3, 0x38(r1) +/* 800106D0 0000D630 48 00 00 08 */ b lbl_800106D8 +lbl_800106D4: +/* 800106D4 0000D634 38 84 00 02 */ addi r4, r4, 2 +lbl_800106D8: +/* 800106D8 0000D638 7C 04 00 40 */ cmplw r4, r0 +/* 800106DC 0000D63C 40 82 FF F8 */ bne lbl_800106D4 +/* 800106E0 0000D640 28 03 00 00 */ cmplwi r3, 0 +/* 800106E4 0000D644 41 82 00 08 */ beq lbl_800106EC +/* 800106E8 0000D648 48 30 52 49 */ bl Free__7CMemoryFPCv +lbl_800106EC: +/* 800106EC 0000D64C 34 1E 03 44 */ addic. r0, r30, 0x344 +/* 800106F0 0000D650 41 82 00 44 */ beq lbl_80010734 +/* 800106F4 0000D654 80 1E 03 48 */ lwz r0, 0x348(r30) +/* 800106F8 0000D658 80 7E 03 50 */ lwz r3, 0x350(r30) +/* 800106FC 0000D65C 54 00 08 3C */ slwi r0, r0, 1 +/* 80010700 0000D660 7C 03 02 14 */ add r0, r3, r0 +/* 80010704 0000D664 90 61 00 2C */ stw r3, 0x2c(r1) +/* 80010708 0000D668 7C 64 1B 78 */ mr r4, r3 +/* 8001070C 0000D66C 90 01 00 34 */ stw r0, 0x34(r1) +/* 80010710 0000D670 90 01 00 30 */ stw r0, 0x30(r1) +/* 80010714 0000D674 90 61 00 28 */ stw r3, 0x28(r1) +/* 80010718 0000D678 48 00 00 08 */ b lbl_80010720 +lbl_8001071C: +/* 8001071C 0000D67C 38 84 00 02 */ addi r4, r4, 2 +lbl_80010720: +/* 80010720 0000D680 7C 04 00 40 */ cmplw r4, r0 +/* 80010724 0000D684 40 82 FF F8 */ bne lbl_8001071C +/* 80010728 0000D688 28 03 00 00 */ cmplwi r3, 0 +/* 8001072C 0000D68C 41 82 00 08 */ beq lbl_80010734 +/* 80010730 0000D690 48 30 52 01 */ bl Free__7CMemoryFPCv +lbl_80010734: +/* 80010734 0000D694 34 1E 02 B4 */ addic. r0, r30, 0x2b4 +/* 80010738 0000D698 41 82 00 58 */ beq lbl_80010790 +/* 8001073C 0000D69C 80 BE 02 B4 */ lwz r5, 0x2b4(r30) +/* 80010740 0000D6A0 38 60 00 00 */ li r3, 0 +/* 80010744 0000D6A4 2C 05 00 00 */ cmpwi r5, 0 +/* 80010748 0000D6A8 40 81 00 40 */ ble lbl_80010788 +/* 8001074C 0000D6AC 2C 05 00 08 */ cmpwi r5, 8 +/* 80010750 0000D6B0 38 85 FF F8 */ addi r4, r5, -8 +/* 80010754 0000D6B4 40 81 00 20 */ ble lbl_80010774 +/* 80010758 0000D6B8 38 04 00 07 */ addi r0, r4, 7 +/* 8001075C 0000D6BC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80010760 0000D6C0 7C 09 03 A6 */ mtctr r0 +/* 80010764 0000D6C4 2C 04 00 00 */ cmpwi r4, 0 +/* 80010768 0000D6C8 40 81 00 0C */ ble lbl_80010774 +lbl_8001076C: +/* 8001076C 0000D6CC 38 63 00 08 */ addi r3, r3, 8 +/* 80010770 0000D6D0 42 00 FF FC */ bdnz lbl_8001076C +lbl_80010774: +/* 80010774 0000D6D4 7C 03 28 50 */ subf r0, r3, r5 +/* 80010778 0000D6D8 7C 09 03 A6 */ mtctr r0 +/* 8001077C 0000D6DC 7C 03 28 00 */ cmpw r3, r5 +/* 80010780 0000D6E0 40 80 00 08 */ bge lbl_80010788 +lbl_80010784: +/* 80010784 0000D6E4 42 00 00 00 */ bdnz lbl_80010784 +lbl_80010788: +/* 80010788 0000D6E8 38 00 00 00 */ li r0, 0 +/* 8001078C 0000D6EC 90 1E 02 B4 */ stw r0, 0x2b4(r30) +lbl_80010790: +/* 80010790 0000D6F0 34 1E 02 74 */ addic. r0, r30, 0x274 +/* 80010794 0000D6F4 41 82 00 4C */ beq lbl_800107E0 +/* 80010798 0000D6F8 34 1E 02 74 */ addic. r0, r30, 0x274 +/* 8001079C 0000D6FC 41 82 00 44 */ beq lbl_800107E0 +/* 800107A0 0000D700 80 1E 02 78 */ lwz r0, 0x278(r30) +/* 800107A4 0000D704 80 7E 02 80 */ lwz r3, 0x280(r30) +/* 800107A8 0000D708 54 00 18 38 */ slwi r0, r0, 3 +/* 800107AC 0000D70C 7C 03 02 14 */ add r0, r3, r0 +/* 800107B0 0000D710 90 61 00 0C */ stw r3, 0xc(r1) +/* 800107B4 0000D714 7C 64 1B 78 */ mr r4, r3 +/* 800107B8 0000D718 90 01 00 14 */ stw r0, 0x14(r1) +/* 800107BC 0000D71C 90 01 00 10 */ stw r0, 0x10(r1) +/* 800107C0 0000D720 90 61 00 08 */ stw r3, 8(r1) +/* 800107C4 0000D724 48 00 00 08 */ b lbl_800107CC +lbl_800107C8: +/* 800107C8 0000D728 38 84 00 08 */ addi r4, r4, 8 +lbl_800107CC: +/* 800107CC 0000D72C 7C 04 00 40 */ cmplw r4, r0 +/* 800107D0 0000D730 40 82 FF F8 */ bne lbl_800107C8 +/* 800107D4 0000D734 28 03 00 00 */ cmplwi r3, 0 +/* 800107D8 0000D738 41 82 00 08 */ beq lbl_800107E0 +/* 800107DC 0000D73C 48 30 51 55 */ bl Free__7CMemoryFPCv +lbl_800107E0: +/* 800107E0 0000D740 34 1E 02 5C */ addic. r0, r30, 0x25c +/* 800107E4 0000D744 41 82 00 50 */ beq lbl_80010834 +/* 800107E8 0000D748 80 1E 02 60 */ lwz r0, 0x260(r30) +/* 800107EC 0000D74C 83 9E 02 68 */ lwz r28, 0x268(r30) +/* 800107F0 0000D750 54 00 18 38 */ slwi r0, r0, 3 +/* 800107F4 0000D754 7F BC 02 14 */ add r29, r28, r0 +/* 800107F8 0000D758 93 81 00 1C */ stw r28, 0x1c(r1) +/* 800107FC 0000D75C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80010800 0000D760 93 A1 00 20 */ stw r29, 0x20(r1) +/* 80010804 0000D764 93 81 00 18 */ stw r28, 0x18(r1) +/* 80010808 0000D768 48 00 00 14 */ b lbl_8001081C +lbl_8001080C: +/* 8001080C 0000D76C 7F 83 E3 78 */ mr r3, r28 +/* 80010810 0000D770 38 80 FF FF */ li r4, -1 +/* 80010814 0000D774 48 33 06 2D */ bl __dt__6CTokenFv +/* 80010818 0000D778 3B 9C 00 08 */ addi r28, r28, 8 +lbl_8001081C: +/* 8001081C 0000D77C 7C 1C E8 40 */ cmplw r28, r29 +/* 80010820 0000D780 40 82 FF EC */ bne lbl_8001080C +/* 80010824 0000D784 80 7E 02 68 */ lwz r3, 0x268(r30) +/* 80010828 0000D788 28 03 00 00 */ cmplwi r3, 0 +/* 8001082C 0000D78C 41 82 00 08 */ beq lbl_80010834 +/* 80010830 0000D790 48 30 51 01 */ bl Free__7CMemoryFPCv +lbl_80010834: +/* 80010834 0000D794 7F C3 F3 78 */ mr r3, r30 +/* 80010838 0000D798 38 80 00 00 */ li r4, 0 +/* 8001083C 0000D79C 48 10 BB D9 */ bl __dt__13CPhysicsActorFv +/* 80010840 0000D7A0 7F E0 07 35 */ extsh. r0, r31 +/* 80010844 0000D7A4 40 81 00 0C */ ble lbl_80010850 +/* 80010848 0000D7A8 7F C3 F3 78 */ mr r3, r30 +/* 8001084C 0000D7AC 48 00 A7 A5 */ bl "__dl__20TOneStatic<7CPlayer>FPv" +lbl_80010850: +/* 80010850 0000D7B0 80 01 00 84 */ lwz r0, 0x84(r1) +/* 80010854 0000D7B4 7F C3 F3 78 */ mr r3, r30 +/* 80010858 0000D7B8 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 8001085C 0000D7BC 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 80010860 0000D7C0 83 A1 00 74 */ lwz r29, 0x74(r1) +/* 80010864 0000D7C4 83 81 00 70 */ lwz r28, 0x70(r1) +/* 80010868 0000D7C8 7C 08 03 A6 */ mtlr r0 +/* 8001086C 0000D7CC 38 21 00 80 */ addi r1, r1, 0x80 + +.global sub_80010870 +sub_80010870: +/* 80010870 0000D7D0 4E 80 00 20 */ blr + +.global sub_80010874 +sub_80010874: +/* 80010874 0000D7D4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80010878 0000D7D8 7C 08 02 A6 */ mflr r0 +/* 8001087C 0000D7DC 90 01 00 14 */ stw r0, 0x14(r1) +/* 80010880 0000D7E0 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80010884 0000D7E4 7C 9F 23 78 */ mr r31, r4 +/* 80010888 0000D7E8 93 C1 00 08 */ stw r30, 8(r1) +/* 8001088C 0000D7EC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80010890 0000D7F0 41 82 00 20 */ beq lbl_800108B0 +/* 80010894 0000D7F4 80 7E 00 00 */ lwz r3, 0(r30) +/* 80010898 0000D7F8 38 80 00 01 */ li r4, 1 +/* 8001089C 0000D7FC 48 00 00 31 */ bl __dt__10CMorphBallFv +/* 800108A0 0000D800 7F E0 07 35 */ extsh. r0, r31 +/* 800108A4 0000D804 40 81 00 0C */ ble lbl_800108B0 +/* 800108A8 0000D808 7F C3 F3 78 */ mr r3, r30 +/* 800108AC 0000D80C 48 30 50 85 */ bl Free__7CMemoryFPCv +lbl_800108B0: +/* 800108B0 0000D810 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800108B4 0000D814 7F C3 F3 78 */ mr r3, r30 +/* 800108B8 0000D818 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 800108BC 0000D81C 83 C1 00 08 */ lwz r30, 8(r1) +/* 800108C0 0000D820 7C 08 03 A6 */ mtlr r0 +/* 800108C4 0000D824 38 21 00 10 */ addi r1, r1, 0x10 +/* 800108C8 0000D828 4E 80 00 20 */ blr + +.global __dt__10CMorphBallFv +__dt__10CMorphBallFv: +/* 800108CC 0000D82C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800108D0 0000D830 7C 08 02 A6 */ mflr r0 +/* 800108D4 0000D834 90 01 00 14 */ stw r0, 0x14(r1) +/* 800108D8 0000D838 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800108DC 0000D83C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 800108E0 0000D840 41 82 01 A0 */ beq lbl_80010A80 +/* 800108E4 0000D844 34 1F 02 3C */ addic. r0, r31, 0x23c +/* 800108E8 0000D848 41 82 00 60 */ beq lbl_80010948 +/* 800108EC 0000D84C 34 1F 02 3C */ addic. r0, r31, 0x23c +/* 800108F0 0000D850 41 82 00 58 */ beq lbl_80010948 +/* 800108F4 0000D854 80 DF 02 3C */ lwz r6, 0x23c(r31) +/* 800108F8 0000D858 38 60 00 00 */ li r3, 0 +/* 800108FC 0000D85C 2C 06 00 00 */ cmpwi r6, 0 +/* 80010900 0000D860 40 81 00 40 */ ble lbl_80010940 +/* 80010904 0000D864 2C 06 00 08 */ cmpwi r6, 8 +/* 80010908 0000D868 38 A6 FF F8 */ addi r5, r6, -8 +/* 8001090C 0000D86C 40 81 00 20 */ ble lbl_8001092C +/* 80010910 0000D870 38 05 00 07 */ addi r0, r5, 7 +/* 80010914 0000D874 54 00 E8 FE */ srwi r0, r0, 3 +/* 80010918 0000D878 7C 09 03 A6 */ mtctr r0 +/* 8001091C 0000D87C 2C 05 00 00 */ cmpwi r5, 0 +/* 80010920 0000D880 40 81 00 0C */ ble lbl_8001092C +lbl_80010924: +/* 80010924 0000D884 38 63 00 08 */ addi r3, r3, 8 +/* 80010928 0000D888 42 00 FF FC */ bdnz lbl_80010924 +lbl_8001092C: +/* 8001092C 0000D88C 7C 03 30 50 */ subf r0, r3, r6 +/* 80010930 0000D890 7C 09 03 A6 */ mtctr r0 +/* 80010934 0000D894 7C 03 30 00 */ cmpw r3, r6 +/* 80010938 0000D898 40 80 00 08 */ bge lbl_80010940 +lbl_8001093C: +/* 8001093C 0000D89C 42 00 00 00 */ bdnz lbl_8001093C +lbl_80010940: +/* 80010940 0000D8A0 38 00 00 00 */ li r0, 0 +/* 80010944 0000D8A4 90 1F 02 3C */ stw r0, 0x23c(r31) +lbl_80010948: +/* 80010948 0000D8A8 34 1F 01 48 */ addic. r0, r31, 0x148 +/* 8001094C 0000D8AC 41 82 00 60 */ beq lbl_800109AC +/* 80010950 0000D8B0 34 1F 01 48 */ addic. r0, r31, 0x148 +/* 80010954 0000D8B4 41 82 00 58 */ beq lbl_800109AC +/* 80010958 0000D8B8 80 DF 01 48 */ lwz r6, 0x148(r31) +/* 8001095C 0000D8BC 38 60 00 00 */ li r3, 0 +/* 80010960 0000D8C0 2C 06 00 00 */ cmpwi r6, 0 +/* 80010964 0000D8C4 40 81 00 40 */ ble lbl_800109A4 +/* 80010968 0000D8C8 2C 06 00 08 */ cmpwi r6, 8 +/* 8001096C 0000D8CC 38 A6 FF F8 */ addi r5, r6, -8 +/* 80010970 0000D8D0 40 81 00 20 */ ble lbl_80010990 +/* 80010974 0000D8D4 38 05 00 07 */ addi r0, r5, 7 +/* 80010978 0000D8D8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8001097C 0000D8DC 7C 09 03 A6 */ mtctr r0 +/* 80010980 0000D8E0 2C 05 00 00 */ cmpwi r5, 0 +/* 80010984 0000D8E4 40 81 00 0C */ ble lbl_80010990 +lbl_80010988: +/* 80010988 0000D8E8 38 63 00 08 */ addi r3, r3, 8 +/* 8001098C 0000D8EC 42 00 FF FC */ bdnz lbl_80010988 +lbl_80010990: +/* 80010990 0000D8F0 7C 03 30 50 */ subf r0, r3, r6 +/* 80010994 0000D8F4 7C 09 03 A6 */ mtctr r0 +/* 80010998 0000D8F8 7C 03 30 00 */ cmpw r3, r6 +/* 8001099C 0000D8FC 40 80 00 08 */ bge lbl_800109A4 +lbl_800109A0: +/* 800109A0 0000D900 42 00 00 00 */ bdnz lbl_800109A0 +lbl_800109A4: +/* 800109A4 0000D904 38 00 00 00 */ li r0, 0 +/* 800109A8 0000D908 90 1F 01 48 */ stw r0, 0x148(r31) +lbl_800109AC: +/* 800109AC 0000D90C 34 1F 00 54 */ addic. r0, r31, 0x54 +/* 800109B0 0000D910 41 82 00 60 */ beq lbl_80010A10 +/* 800109B4 0000D914 34 1F 00 54 */ addic. r0, r31, 0x54 +/* 800109B8 0000D918 41 82 00 58 */ beq lbl_80010A10 +/* 800109BC 0000D91C 80 DF 00 54 */ lwz r6, 0x54(r31) +/* 800109C0 0000D920 38 60 00 00 */ li r3, 0 +/* 800109C4 0000D924 2C 06 00 00 */ cmpwi r6, 0 +/* 800109C8 0000D928 40 81 00 40 */ ble lbl_80010A08 +/* 800109CC 0000D92C 2C 06 00 08 */ cmpwi r6, 8 +/* 800109D0 0000D930 38 A6 FF F8 */ addi r5, r6, -8 +/* 800109D4 0000D934 40 81 00 20 */ ble lbl_800109F4 +/* 800109D8 0000D938 38 05 00 07 */ addi r0, r5, 7 +/* 800109DC 0000D93C 54 00 E8 FE */ srwi r0, r0, 3 +/* 800109E0 0000D940 7C 09 03 A6 */ mtctr r0 +/* 800109E4 0000D944 2C 05 00 00 */ cmpwi r5, 0 +/* 800109E8 0000D948 40 81 00 0C */ ble lbl_800109F4 +lbl_800109EC: +/* 800109EC 0000D94C 38 63 00 08 */ addi r3, r3, 8 +/* 800109F0 0000D950 42 00 FF FC */ bdnz lbl_800109EC +lbl_800109F4: +/* 800109F4 0000D954 7C 03 30 50 */ subf r0, r3, r6 +/* 800109F8 0000D958 7C 09 03 A6 */ mtctr r0 +/* 800109FC 0000D95C 7C 03 30 00 */ cmpw r3, r6 +/* 80010A00 0000D960 40 80 00 08 */ bge lbl_80010A08 +lbl_80010A04: +/* 80010A04 0000D964 42 00 00 00 */ bdnz lbl_80010A04 +lbl_80010A08: +/* 80010A08 0000D968 38 00 00 00 */ li r0, 0 +/* 80010A0C 0000D96C 90 1F 00 54 */ stw r0, 0x54(r31) +lbl_80010A10: +/* 80010A10 0000D970 28 1F 00 00 */ cmplwi r31, 0 +/* 80010A14 0000D974 41 82 00 5C */ beq lbl_80010A70 +/* 80010A18 0000D978 41 82 00 58 */ beq lbl_80010A70 +/* 80010A1C 0000D97C 80 DF 00 00 */ lwz r6, 0(r31) +/* 80010A20 0000D980 38 60 00 00 */ li r3, 0 +/* 80010A24 0000D984 2C 06 00 00 */ cmpwi r6, 0 +/* 80010A28 0000D988 40 81 00 40 */ ble lbl_80010A68 +/* 80010A2C 0000D98C 2C 06 00 08 */ cmpwi r6, 8 +/* 80010A30 0000D990 38 A6 FF F8 */ addi r5, r6, -8 +/* 80010A34 0000D994 40 81 00 20 */ ble lbl_80010A54 +/* 80010A38 0000D998 38 05 00 07 */ addi r0, r5, 7 +/* 80010A3C 0000D99C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80010A40 0000D9A0 7C 09 03 A6 */ mtctr r0 +/* 80010A44 0000D9A4 2C 05 00 00 */ cmpwi r5, 0 +/* 80010A48 0000D9A8 40 81 00 0C */ ble lbl_80010A54 +lbl_80010A4C: +/* 80010A4C 0000D9AC 38 63 00 08 */ addi r3, r3, 8 +/* 80010A50 0000D9B0 42 00 FF FC */ bdnz lbl_80010A4C +lbl_80010A54: +/* 80010A54 0000D9B4 7C 03 30 50 */ subf r0, r3, r6 +/* 80010A58 0000D9B8 7C 09 03 A6 */ mtctr r0 +/* 80010A5C 0000D9BC 7C 03 30 00 */ cmpw r3, r6 +/* 80010A60 0000D9C0 40 80 00 08 */ bge lbl_80010A68 +lbl_80010A64: +/* 80010A64 0000D9C4 42 00 00 00 */ bdnz lbl_80010A64 +lbl_80010A68: +/* 80010A68 0000D9C8 38 00 00 00 */ li r0, 0 +/* 80010A6C 0000D9CC 90 1F 00 00 */ stw r0, 0(r31) +lbl_80010A70: +/* 80010A70 0000D9D0 7C 80 07 35 */ extsh. r0, r4 +/* 80010A74 0000D9D4 40 81 00 0C */ ble lbl_80010A80 +/* 80010A78 0000D9D8 7F E3 FB 78 */ mr r3, r31 +/* 80010A7C 0000D9DC 48 30 4E B5 */ bl Free__7CMemoryFPCv +lbl_80010A80: +/* 80010A80 0000D9E0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80010A84 0000D9E4 7F E3 FB 78 */ mr r3, r31 +/* 80010A88 0000D9E8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80010A8C 0000D9EC 7C 08 03 A6 */ mtlr r0 +/* 80010A90 0000D9F0 38 21 00 10 */ addi r1, r1, 0x10 + +.global sub_80010a94 +sub_80010a94: +/* 80010A94 0000D9F4 4E 80 00 20 */ blr + +.global IsTransparent__7CPlayerCFv +IsTransparent__7CPlayerCFv: +/* 80010A98 0000D9F8 C0 23 05 88 */ lfs f1, 0x588(r3) +/* 80010A9C 0000D9FC C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80010AA0 0000DA00 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80010AA4 0000DA04 7C 00 00 26 */ mfcr r0 +/* 80010AA8 0000DA08 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80010AAC 0000DA0C 4E 80 00 20 */ blr + +.global IsEnergyLow__7CPlayerCFRC13CStateManager +IsEnergyLow__7CPlayerCFRC13CStateManager: +/* 80010AB0 0000DA10 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80010AB4 0000DA14 7C 08 02 A6 */ mflr r0 +/* 80010AB8 0000DA18 90 01 00 24 */ stw r0, 0x24(r1) +/* 80010ABC 0000DA1C DB E1 00 10 */ stfd f31, 0x10(r1) +/* 80010AC0 0000DA20 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 80010AC4 0000DA24 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80010AC8 0000DA28 81 83 00 00 */ lwz r12, 0(r3) +/* 80010ACC 0000DA2C 7C 9F 23 78 */ mr r31, r4 +/* 80010AD0 0000DA30 81 8C 00 34 */ lwz r12, 0x34(r12) +/* 80010AD4 0000DA34 7D 89 03 A6 */ mtctr r12 +/* 80010AD8 0000DA38 4E 80 04 21 */ bctrl +/* 80010ADC 0000DA3C 80 BF 08 B8 */ lwz r5, 0x8b8(r31) +/* 80010AE0 0000DA40 38 80 00 18 */ li r4, 0x18 +/* 80010AE4 0000DA44 C3 E3 00 00 */ lfs f31, 0(r3) +/* 80010AE8 0000DA48 80 65 00 00 */ lwz r3, 0(r5) +/* 80010AEC 0000DA4C 48 08 10 09 */ bl GetItemCapacity__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80010AF0 0000DA50 2C 03 00 04 */ cmpwi r3, 4 +/* 80010AF4 0000DA54 41 80 00 0C */ blt lbl_80010B00 +/* 80010AF8 0000DA58 C0 02 81 04 */ lfs f0, lbl_805A9E24@sda21(r2) +/* 80010AFC 0000DA5C 48 00 00 08 */ b lbl_80010B04 +lbl_80010B00: +/* 80010B00 0000DA60 C0 02 81 08 */ lfs f0, lbl_805A9E28@sda21(r2) +lbl_80010B04: +/* 80010B04 0000DA64 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80010B08 0000DA68 7C 00 00 26 */ mfcr r0 +/* 80010B0C 0000DA6C 54 03 0F FE */ srwi r3, r0, 0x1f +/* 80010B10 0000DA70 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 80010B14 0000DA74 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80010B18 0000DA78 CB E1 00 10 */ lfd f31, 0x10(r1) +/* 80010B1C 0000DA7C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80010B20 0000DA80 7C 08 03 A6 */ mtlr r0 +/* 80010B24 0000DA84 38 21 00 20 */ addi r1, r1, 0x20 +/* 80010B28 0000DA88 4E 80 00 20 */ blr + +.global FinishNewScan__7CPlayerFR13CStateManager +FinishNewScan__7CPlayerFR13CStateManager: +/* 80010B2C 0000DA8C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80010B30 0000DA90 7C 08 02 A6 */ mflr r0 +/* 80010B34 0000DA94 90 01 00 34 */ stw r0, 0x34(r1) +/* 80010B38 0000DA98 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80010B3C 0000DA9C 7C 9F 23 78 */ mr r31, r4 +/* 80010B40 0000DAA0 38 81 00 0C */ addi r4, r1, 0xc +/* 80010B44 0000DAA4 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80010B48 0000DAA8 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80010B4C 0000DAAC A0 03 03 10 */ lhz r0, 0x310(r3) +/* 80010B50 0000DAB0 7F E3 FB 78 */ mr r3, r31 +/* 80010B54 0000DAB4 B0 01 00 08 */ sth r0, 8(r1) +/* 80010B58 0000DAB8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80010B5C 0000DABC 48 03 BA 49 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80010B60 0000DAC0 7C 64 1B 78 */ mr r4, r3 +/* 80010B64 0000DAC4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80010B68 0000DAC8 48 09 F1 29 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80010B6C 0000DACC 80 63 00 04 */ lwz r3, 4(r3) +/* 80010B70 0000DAD0 28 03 00 00 */ cmplwi r3, 0 +/* 80010B74 0000DAD4 41 82 00 C8 */ beq lbl_80010C3C +/* 80010B78 0000DAD8 80 83 00 68 */ lwz r4, 0x68(r3) +/* 80010B7C 0000DADC 38 00 00 80 */ li r0, 0x80 +/* 80010B80 0000DAE0 80 C3 00 6C */ lwz r6, 0x6c(r3) +/* 80010B84 0000DAE4 38 A0 00 00 */ li r5, 0 +/* 80010B88 0000DAE8 7C 80 00 38 */ and r0, r4, r0 +/* 80010B8C 0000DAEC 7C C4 28 38 */ and r4, r6, r5 +/* 80010B90 0000DAF0 7C 84 2A 78 */ xor r4, r4, r5 +/* 80010B94 0000DAF4 7C 00 2A 78 */ xor r0, r0, r5 +/* 80010B98 0000DAF8 7C 80 03 79 */ or. r0, r4, r0 +/* 80010B9C 0000DAFC 41 82 00 A0 */ beq lbl_80010C3C +/* 80010BA0 0000DB00 48 04 29 29 */ bl GetScannableObjectInfo__6CActorCFv +/* 80010BA4 0000DB04 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80010BA8 0000DB08 41 82 00 94 */ beq lbl_80010C3C +/* 80010BAC 0000DB0C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80010BB0 0000DB10 80 9E 00 00 */ lwz r4, 0(r30) +/* 80010BB4 0000DB14 80 63 00 00 */ lwz r3, 0(r3) +/* 80010BB8 0000DB18 48 08 0A D9 */ bl GetScanTime__12CPlayerStateCFUi +/* 80010BBC 0000DB1C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80010BC0 0000DB20 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80010BC4 0000DB24 4C 41 13 82 */ cror 2, 1, 2 +/* 80010BC8 0000DB28 40 82 00 74 */ bne lbl_80010C3C +/* 80010BCC 0000DB2C 80 7E 00 00 */ lwz r3, 0(r30) +/* 80010BD0 0000DB30 48 28 92 85 */ bl IsDataLoreResearchScan__FUi +/* 80010BD4 0000DB34 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80010BD8 0000DB38 41 82 00 64 */ beq lbl_80010C3C +/* 80010BDC 0000DB3C 7F E4 FB 78 */ mr r4, r31 +/* 80010BE0 0000DB40 38 61 00 18 */ addi r3, r1, 0x18 +/* 80010BE4 0000DB44 48 28 91 E1 */ bl CalculateScanCompletionRate__13CStateManagerFv +/* 80010BE8 0000DB48 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80010BEC 0000DB4C 83 A1 00 18 */ lwz r29, 0x18(r1) +/* 80010BF0 0000DB50 80 63 00 00 */ lwz r3, 0(r3) +/* 80010BF4 0000DB54 83 C1 00 1C */ lwz r30, 0x1c(r1) +/* 80010BF8 0000DB58 7F A4 EB 78 */ mr r4, r29 +/* 80010BFC 0000DB5C 80 63 01 80 */ lwz r3, 0x180(r3) +/* 80010C00 0000DB60 7F C5 F3 78 */ mr r5, r30 +/* 80010C04 0000DB64 48 28 8F D1 */ bl UpdatePersistentScanPercent__FUiUiUi +/* 80010C08 0000DB68 7C 64 1B 78 */ mr r4, r3 +/* 80010C0C 0000DB6C 3C 04 00 01 */ addis r0, r4, 1 +/* 80010C10 0000DB70 28 00 FF FF */ cmplwi r0, 0xffff +/* 80010C14 0000DB74 41 82 00 10 */ beq lbl_80010C24 +/* 80010C18 0000DB78 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80010C1C 0000DB7C 7F E3 FB 78 */ mr r3, r31 +/* 80010C20 0000DB80 48 03 3C 15 */ bl ShowPausedHUDMemo__13CStateManagerFUif +lbl_80010C24: +/* 80010C24 0000DB84 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80010C28 0000DB88 80 63 00 00 */ lwz r3, 0(r3) +/* 80010C2C 0000DB8C 93 A3 01 80 */ stw r29, 0x180(r3) +/* 80010C30 0000DB90 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80010C34 0000DB94 80 63 00 00 */ lwz r3, 0(r3) +/* 80010C38 0000DB98 93 C3 01 84 */ stw r30, 0x184(r3) +lbl_80010C3C: +/* 80010C3C 0000DB9C 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80010C40 0000DBA0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80010C44 0000DBA4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80010C48 0000DBA8 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80010C4C 0000DBAC 7C 08 03 A6 */ mtlr r0 +/* 80010C50 0000DBB0 38 21 00 30 */ addi r1, r1, 0x30 +/* 80010C54 0000DBB4 4E 80 00 20 */ blr + +.global GetAttachedActorStruggle__7CPlayerCFv +GetAttachedActorStruggle__7CPlayerCFv: +/* 80010C58 0000DBB8 C0 23 0A 28 */ lfs f1, 0xa28(r3) +/* 80010C5C 0000DBBC 4E 80 00 20 */ blr + +.global StartSamusVoiceSfx__7CPlayerFUssi +StartSamusVoiceSfx__7CPlayerFUssi: +/* 80010C60 0000DBC0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80010C64 0000DBC4 7C 08 02 A6 */ mflr r0 +/* 80010C68 0000DBC8 90 01 00 34 */ stw r0, 0x34(r1) +/* 80010C6C 0000DBCC BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 80010C70 0000DBD0 7C 7B 1B 78 */ mr r27, r3 +/* 80010C74 0000DBD4 7C 9C 23 78 */ mr r28, r4 +/* 80010C78 0000DBD8 7C BD 2B 78 */ mr r29, r5 +/* 80010C7C 0000DBDC 7C DE 33 78 */ mr r30, r6 +/* 80010C80 0000DBE0 3B E0 00 01 */ li r31, 1 +/* 80010C84 0000DBE4 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80010C88 0000DBE8 2C 00 00 01 */ cmpwi r0, 1 +/* 80010C8C 0000DBEC 40 82 00 0C */ bne lbl_80010C98 +/* 80010C90 0000DBF0 38 60 00 00 */ li r3, 0 +/* 80010C94 0000DBF4 48 00 00 88 */ b lbl_80010D1C +lbl_80010C98: +/* 80010C98 0000DBF8 80 1B 07 7C */ lwz r0, 0x77c(r27) +/* 80010C9C 0000DBFC 28 00 00 00 */ cmplwi r0, 0 +/* 80010CA0 0000DC00 41 82 00 40 */ beq lbl_80010CE0 +/* 80010CA4 0000DC04 80 1B 07 7C */ lwz r0, 0x77c(r27) +/* 80010CA8 0000DC08 38 61 00 10 */ addi r3, r1, 0x10 +/* 80010CAC 0000DC0C 90 01 00 10 */ stw r0, 0x10(r1) +/* 80010CB0 0000DC10 48 2D 81 25 */ bl IsPlaying__11CSfxManagerF10CSfxHandle +/* 80010CB4 0000DC14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80010CB8 0000DC18 41 82 00 28 */ beq lbl_80010CE0 +/* 80010CBC 0000DC1C 80 1B 07 80 */ lwz r0, 0x780(r27) +/* 80010CC0 0000DC20 3B E0 00 00 */ li r31, 0 +/* 80010CC4 0000DC24 7C 1E 00 00 */ cmpw r30, r0 +/* 80010CC8 0000DC28 40 81 00 18 */ ble lbl_80010CE0 +/* 80010CCC 0000DC2C 80 1B 07 7C */ lwz r0, 0x77c(r27) +/* 80010CD0 0000DC30 38 61 00 0C */ addi r3, r1, 0xc +/* 80010CD4 0000DC34 90 01 00 0C */ stw r0, 0xc(r1) +/* 80010CD8 0000DC38 48 2D 90 71 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 80010CDC 0000DC3C 3B E0 00 01 */ li r31, 1 +lbl_80010CE0: +/* 80010CE0 0000DC40 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80010CE4 0000DC44 41 82 00 34 */ beq lbl_80010D18 +/* 80010CE8 0000DC48 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80010CEC 0000DC4C 7F 84 E3 78 */ mr r4, r28 +/* 80010CF0 0000DC50 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80010CF4 0000DC54 7F A5 EB 78 */ mr r5, r29 +/* 80010CF8 0000DC58 38 61 00 08 */ addi r3, r1, 8 +/* 80010CFC 0000DC5C 38 C0 00 40 */ li r6, 0x40 +/* 80010D00 0000DC60 38 E0 00 00 */ li r7, 0 +/* 80010D04 0000DC64 39 20 00 00 */ li r9, 0 +/* 80010D08 0000DC68 48 2D 90 6D */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80010D0C 0000DC6C 80 01 00 08 */ lwz r0, 8(r1) +/* 80010D10 0000DC70 90 1B 07 7C */ stw r0, 0x77c(r27) +/* 80010D14 0000DC74 93 DB 07 80 */ stw r30, 0x780(r27) +lbl_80010D18: +/* 80010D18 0000DC78 57 E3 06 3E */ clrlwi r3, r31, 0x18 +lbl_80010D1C: +/* 80010D1C 0000DC7C BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 80010D20 0000DC80 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80010D24 0000DC84 7C 08 03 A6 */ mtlr r0 +/* 80010D28 0000DC88 38 21 00 30 */ addi r1, r1, 0x30 +/* 80010D2C 0000DC8C 4E 80 00 20 */ blr + +.global PostUpdate__7CPlayerFfR13CStateManager +PostUpdate__7CPlayerFfR13CStateManager: +/* 80010D30 0000DC90 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 80010D34 0000DC94 7C 08 02 A6 */ mflr r0 +/* 80010D38 0000DC98 90 01 01 54 */ stw r0, 0x154(r1) +/* 80010D3C 0000DC9C DB E1 01 40 */ stfd f31, 0x140(r1) +/* 80010D40 0000DCA0 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 80010D44 0000DCA4 DB C1 01 30 */ stfd f30, 0x130(r1) +/* 80010D48 0000DCA8 F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 +/* 80010D4C 0000DCAC DB A1 01 20 */ stfd f29, 0x120(r1) +/* 80010D50 0000DCB0 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 +/* 80010D54 0000DCB4 93 E1 01 1C */ stw r31, 0x11c(r1) +/* 80010D58 0000DCB8 93 C1 01 18 */ stw r30, 0x118(r1) +/* 80010D5C 0000DCBC FF A0 08 90 */ fmr f29, f1 +/* 80010D60 0000DCC0 7C 7E 1B 78 */ mr r30, r3 +/* 80010D64 0000DCC4 7C 9F 23 78 */ mr r31, r4 +/* 80010D68 0000DCC8 48 00 81 ED */ bl UpdateArmAndGunTransforms__7CPlayerFfR13CStateManager +/* 80010D6C 0000DCCC 80 1E 03 B8 */ lwz r0, 0x3b8(r30) +/* 80010D70 0000DCD0 2C 00 00 03 */ cmpwi r0, 3 +/* 80010D74 0000DCD4 41 82 00 0C */ beq lbl_80010D80 +/* 80010D78 0000DCD8 C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) +/* 80010D7C 0000DCDC 48 00 00 14 */ b lbl_80010D90 +lbl_80010D80: +/* 80010D80 0000DCE0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80010D84 0000DCE4 C0 3E 03 BC */ lfs f1, 0x3bc(r30) +/* 80010D88 0000DCE8 C0 03 02 A8 */ lfs f0, 0x2a8(r3) +/* 80010D8C 0000DCEC EF E1 00 24 */ fdivs f31, f1, f0 +lbl_80010D90: +/* 80010D90 0000DCF0 C3 C2 81 0C */ lfs f30, lbl_805A9E2C@sda21(r2) +/* 80010D94 0000DCF4 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 80010D98 0000DCF8 4B FF 9B 69 */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 80010D9C 0000DCFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80010DA0 0000DD00 41 82 00 F0 */ beq lbl_80010E90 +/* 80010DA4 0000DD04 C0 2D 87 B8 */ lfs f1, lbl_805A7378@sda21(r13) +/* 80010DA8 0000DD08 38 61 00 08 */ addi r3, r1, 8 +/* 80010DAC 0000DD0C C0 4D 87 BC */ lfs f2, lbl_805A737C@sda21(r13) +/* 80010DB0 0000DD10 48 30 34 51 */ bl __ct__9CVector2fFff +/* 80010DB4 0000DD14 C0 2D 87 C0 */ lfs f1, lbl_805A7380@sda21(r13) +/* 80010DB8 0000DD18 7C 65 1B 78 */ mr r5, r3 +/* 80010DBC 0000DD1C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80010DC0 0000DD20 38 80 00 01 */ li r4, 1 +/* 80010DC4 0000DD24 48 0D 94 8D */ bl __ct__16CPlayerCameraBobFQ216CPlayerCameraBob14ECameraBobTypeRC9CVector2ff +/* 80010DC8 0000DD28 80 7E 07 6C */ lwz r3, 0x76c(r30) +/* 80010DCC 0000DD2C 38 81 00 10 */ addi r4, r1, 0x10 +/* 80010DD0 0000DD30 48 00 01 35 */ bl __ct__16CPlayerCameraBobFRC16CPlayerCameraBob +/* 80010DD4 0000DD34 34 A1 00 C0 */ addic. r5, r1, 0xc0 +/* 80010DD8 0000DD38 41 82 00 58 */ beq lbl_80010E30 +/* 80010DDC 0000DD3C 80 C5 00 00 */ lwz r6, 0(r5) +/* 80010DE0 0000DD40 38 60 00 00 */ li r3, 0 +/* 80010DE4 0000DD44 2C 06 00 00 */ cmpwi r6, 0 +/* 80010DE8 0000DD48 40 81 00 40 */ ble lbl_80010E28 +/* 80010DEC 0000DD4C 2C 06 00 08 */ cmpwi r6, 8 +/* 80010DF0 0000DD50 38 86 FF F8 */ addi r4, r6, -8 +/* 80010DF4 0000DD54 40 81 00 20 */ ble lbl_80010E14 +/* 80010DF8 0000DD58 38 04 00 07 */ addi r0, r4, 7 +/* 80010DFC 0000DD5C 54 00 E8 FE */ srwi r0, r0, 3 +/* 80010E00 0000DD60 7C 09 03 A6 */ mtctr r0 +/* 80010E04 0000DD64 2C 04 00 00 */ cmpwi r4, 0 +/* 80010E08 0000DD68 40 81 00 0C */ ble lbl_80010E14 +lbl_80010E0C: +/* 80010E0C 0000DD6C 38 63 00 08 */ addi r3, r3, 8 +/* 80010E10 0000DD70 42 00 FF FC */ bdnz lbl_80010E0C +lbl_80010E14: +/* 80010E14 0000DD74 7C 03 30 50 */ subf r0, r3, r6 +/* 80010E18 0000DD78 7C 09 03 A6 */ mtctr r0 +/* 80010E1C 0000DD7C 7C 03 30 00 */ cmpw r3, r6 +/* 80010E20 0000DD80 40 80 00 08 */ bge lbl_80010E28 +lbl_80010E24: +/* 80010E24 0000DD84 42 00 00 00 */ bdnz lbl_80010E24 +lbl_80010E28: +/* 80010E28 0000DD88 38 00 00 00 */ li r0, 0 +/* 80010E2C 0000DD8C 90 05 00 00 */ stw r0, 0(r5) +lbl_80010E30: +/* 80010E30 0000DD90 34 A1 00 8C */ addic. r5, r1, 0x8c +/* 80010E34 0000DD94 41 82 00 70 */ beq lbl_80010EA4 +/* 80010E38 0000DD98 80 C5 00 00 */ lwz r6, 0(r5) +/* 80010E3C 0000DD9C 38 60 00 00 */ li r3, 0 +/* 80010E40 0000DDA0 2C 06 00 00 */ cmpwi r6, 0 +/* 80010E44 0000DDA4 40 81 00 40 */ ble lbl_80010E84 +/* 80010E48 0000DDA8 2C 06 00 08 */ cmpwi r6, 8 +/* 80010E4C 0000DDAC 38 86 FF F8 */ addi r4, r6, -8 +/* 80010E50 0000DDB0 40 81 00 20 */ ble lbl_80010E70 +/* 80010E54 0000DDB4 38 04 00 07 */ addi r0, r4, 7 +/* 80010E58 0000DDB8 54 00 E8 FE */ srwi r0, r0, 3 +/* 80010E5C 0000DDBC 7C 09 03 A6 */ mtctr r0 +/* 80010E60 0000DDC0 2C 04 00 00 */ cmpwi r4, 0 +/* 80010E64 0000DDC4 40 81 00 0C */ ble lbl_80010E70 +lbl_80010E68: +/* 80010E68 0000DDC8 38 63 00 08 */ addi r3, r3, 8 +/* 80010E6C 0000DDCC 42 00 FF FC */ bdnz lbl_80010E68 +lbl_80010E70: +/* 80010E70 0000DDD0 7C 03 30 50 */ subf r0, r3, r6 +/* 80010E74 0000DDD4 7C 09 03 A6 */ mtctr r0 +/* 80010E78 0000DDD8 7C 03 30 00 */ cmpw r3, r6 +/* 80010E7C 0000DDDC 40 80 00 08 */ bge lbl_80010E84 +lbl_80010E80: +/* 80010E80 0000DDE0 42 00 00 00 */ bdnz lbl_80010E80 +lbl_80010E84: +/* 80010E84 0000DDE4 38 00 00 00 */ li r0, 0 +/* 80010E88 0000DDE8 90 05 00 00 */ stw r0, 0(r5) +/* 80010E8C 0000DDEC 48 00 00 18 */ b lbl_80010EA4 +lbl_80010E90: +/* 80010E90 0000DDF0 FC 20 E8 90 */ fmr f1, f29 +/* 80010E94 0000DDF4 7F C3 F3 78 */ mr r3, r30 +/* 80010E98 0000DDF8 7F E4 FB 78 */ mr r4, r31 +/* 80010E9C 0000DDFC 48 27 31 75 */ bl UpdateCameraBob__7CPlayerFfR13CStateManager +/* 80010EA0 0000DE00 FF C0 08 90 */ fmr f30, f1 +lbl_80010EA4: +/* 80010EA4 0000DE04 FC 20 F8 90 */ fmr f1, f31 +/* 80010EA8 0000DE08 80 7E 04 90 */ lwz r3, 0x490(r30) +/* 80010EAC 0000DE0C FC 40 F0 90 */ fmr f2, f30 +/* 80010EB0 0000DE10 7F E4 FB 78 */ mr r4, r31 +/* 80010EB4 0000DE14 FC 60 E8 90 */ fmr f3, f29 +/* 80010EB8 0000DE18 48 02 FA 7D */ bl Update__10CPlayerGunFfffR13CStateManager +/* 80010EBC 0000DE1C 7F C3 F3 78 */ mr r3, r30 +/* 80010EC0 0000DE20 7F E4 FB 78 */ mr r4, r31 +/* 80010EC4 0000DE24 48 16 DD 65 */ bl UpdateOrbitTarget__7CPlayerFR13CStateManager +/* 80010EC8 0000DE28 7F C3 F3 78 */ mr r3, r30 +/* 80010ECC 0000DE2C 7F E4 FB 78 */ mr r4, r31 +/* 80010ED0 0000DE30 48 16 DB FD */ bl UpdateOrbitOrientation__7CPlayerFR13CStateManager +/* 80010ED4 0000DE34 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 80010ED8 0000DE38 CB E1 01 40 */ lfd f31, 0x140(r1) +/* 80010EDC 0000DE3C E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 +/* 80010EE0 0000DE40 CB C1 01 30 */ lfd f30, 0x130(r1) +/* 80010EE4 0000DE44 E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 +/* 80010EE8 0000DE48 CB A1 01 20 */ lfd f29, 0x120(r1) +/* 80010EEC 0000DE4C 83 E1 01 1C */ lwz r31, 0x11c(r1) +/* 80010EF0 0000DE50 80 01 01 54 */ lwz r0, 0x154(r1) +/* 80010EF4 0000DE54 83 C1 01 18 */ lwz r30, 0x118(r1) +/* 80010EF8 0000DE58 7C 08 03 A6 */ mtlr r0 +/* 80010EFC 0000DE5C 38 21 01 50 */ addi r1, r1, 0x150 +/* 80010F00 0000DE60 4E 80 00 20 */ blr + +.global __ct__16CPlayerCameraBobFRC16CPlayerCameraBob +__ct__16CPlayerCameraBobFRC16CPlayerCameraBob: +/* 80010F04 0000DE64 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80010F08 0000DE68 7C 08 02 A6 */ mflr r0 +/* 80010F0C 0000DE6C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80010F10 0000DE70 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80010F14 0000DE74 7C 9F 23 78 */ mr r31, r4 +/* 80010F18 0000DE78 93 C1 00 08 */ stw r30, 8(r1) +/* 80010F1C 0000DE7C 7C 7E 1B 78 */ mr r30, r3 +/* 80010F20 0000DE80 38 7E 00 2C */ addi r3, r30, 0x2c +/* 80010F24 0000DE84 80 04 00 00 */ lwz r0, 0(r4) +/* 80010F28 0000DE88 38 9F 00 2C */ addi r4, r31, 0x2c +/* 80010F2C 0000DE8C 90 1E 00 00 */ stw r0, 0(r30) +/* 80010F30 0000DE90 80 BF 00 04 */ lwz r5, 4(r31) +/* 80010F34 0000DE94 80 1F 00 08 */ lwz r0, 8(r31) +/* 80010F38 0000DE98 90 BE 00 04 */ stw r5, 4(r30) +/* 80010F3C 0000DE9C 90 1E 00 08 */ stw r0, 8(r30) +/* 80010F40 0000DEA0 C0 1F 00 0C */ lfs f0, 0xc(r31) +/* 80010F44 0000DEA4 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 80010F48 0000DEA8 C0 1F 00 10 */ lfs f0, 0x10(r31) +/* 80010F4C 0000DEAC D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 80010F50 0000DEB0 C0 1F 00 14 */ lfs f0, 0x14(r31) +/* 80010F54 0000DEB4 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 80010F58 0000DEB8 C0 1F 00 18 */ lfs f0, 0x18(r31) +/* 80010F5C 0000DEBC D0 1E 00 18 */ stfs f0, 0x18(r30) +/* 80010F60 0000DEC0 C0 1F 00 1C */ lfs f0, 0x1c(r31) +/* 80010F64 0000DEC4 D0 1E 00 1C */ stfs f0, 0x1c(r30) +/* 80010F68 0000DEC8 80 1F 00 20 */ lwz r0, 0x20(r31) +/* 80010F6C 0000DECC 90 1E 00 20 */ stw r0, 0x20(r30) +/* 80010F70 0000DED0 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 80010F74 0000DED4 90 1E 00 24 */ stw r0, 0x24(r30) +/* 80010F78 0000DED8 88 1F 00 28 */ lbz r0, 0x28(r31) +/* 80010F7C 0000DEDC 98 1E 00 28 */ stb r0, 0x28(r30) +/* 80010F80 0000DEE0 88 1F 00 29 */ lbz r0, 0x29(r31) +/* 80010F84 0000DEE4 98 1E 00 29 */ stb r0, 0x29(r30) +/* 80010F88 0000DEE8 48 30 1B B9 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80010F8C 0000DEEC 80 BF 00 5C */ lwz r5, 0x5c(r31) +/* 80010F90 0000DEF0 38 7E 00 7C */ addi r3, r30, 0x7c +/* 80010F94 0000DEF4 80 9F 00 60 */ lwz r4, 0x60(r31) +/* 80010F98 0000DEF8 38 1F 00 7C */ addi r0, r31, 0x7c +/* 80010F9C 0000DEFC 7C 03 00 40 */ cmplw r3, r0 +/* 80010FA0 0000DF00 90 BE 00 5C */ stw r5, 0x5c(r30) +/* 80010FA4 0000DF04 90 9E 00 60 */ stw r4, 0x60(r30) +/* 80010FA8 0000DF08 80 1F 00 64 */ lwz r0, 0x64(r31) +/* 80010FAC 0000DF0C 90 1E 00 64 */ stw r0, 0x64(r30) +/* 80010FB0 0000DF10 C0 1F 00 68 */ lfs f0, 0x68(r31) +/* 80010FB4 0000DF14 D0 1E 00 68 */ stfs f0, 0x68(r30) +/* 80010FB8 0000DF18 C0 1F 00 6C */ lfs f0, 0x6c(r31) +/* 80010FBC 0000DF1C D0 1E 00 6C */ stfs f0, 0x6c(r30) +/* 80010FC0 0000DF20 C0 1F 00 70 */ lfs f0, 0x70(r31) +/* 80010FC4 0000DF24 D0 1E 00 70 */ stfs f0, 0x70(r30) +/* 80010FC8 0000DF28 C0 1F 00 74 */ lfs f0, 0x74(r31) +/* 80010FCC 0000DF2C D0 1E 00 74 */ stfs f0, 0x74(r30) +/* 80010FD0 0000DF30 C0 1F 00 78 */ lfs f0, 0x78(r31) +/* 80010FD4 0000DF34 D0 1E 00 78 */ stfs f0, 0x78(r30) +/* 80010FD8 0000DF38 41 82 00 A8 */ beq lbl_80011080 +/* 80010FDC 0000DF3C 80 BE 00 7C */ lwz r5, 0x7c(r30) +/* 80010FE0 0000DF40 38 DE 00 80 */ addi r6, r30, 0x80 +/* 80010FE4 0000DF44 38 60 00 00 */ li r3, 0 +/* 80010FE8 0000DF48 2C 05 00 00 */ cmpwi r5, 0 +/* 80010FEC 0000DF4C 40 81 00 40 */ ble lbl_8001102C +/* 80010FF0 0000DF50 2C 05 00 08 */ cmpwi r5, 8 +/* 80010FF4 0000DF54 38 85 FF F8 */ addi r4, r5, -8 +/* 80010FF8 0000DF58 40 81 00 20 */ ble lbl_80011018 +/* 80010FFC 0000DF5C 38 04 00 07 */ addi r0, r4, 7 +/* 80011000 0000DF60 54 00 E8 FE */ srwi r0, r0, 3 +/* 80011004 0000DF64 7C 09 03 A6 */ mtctr r0 +/* 80011008 0000DF68 2C 04 00 00 */ cmpwi r4, 0 +/* 8001100C 0000DF6C 40 81 00 0C */ ble lbl_80011018 +lbl_80011010: +/* 80011010 0000DF70 38 63 00 08 */ addi r3, r3, 8 +/* 80011014 0000DF74 42 00 FF FC */ bdnz lbl_80011010 +lbl_80011018: +/* 80011018 0000DF78 7C 03 28 50 */ subf r0, r3, r5 +/* 8001101C 0000DF7C 7C 09 03 A6 */ mtctr r0 +/* 80011020 0000DF80 7C 03 28 00 */ cmpw r3, r5 +/* 80011024 0000DF84 40 80 00 08 */ bge lbl_8001102C +lbl_80011028: +/* 80011028 0000DF88 42 00 00 00 */ bdnz lbl_80011028 +lbl_8001102C: +/* 8001102C 0000DF8C 38 00 00 00 */ li r0, 0 +/* 80011030 0000DF90 38 7F 00 80 */ addi r3, r31, 0x80 +/* 80011034 0000DF94 90 1E 00 7C */ stw r0, 0x7c(r30) +/* 80011038 0000DF98 80 1F 00 7C */ lwz r0, 0x7c(r31) +/* 8001103C 0000DF9C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80011040 0000DFA0 7C 03 02 14 */ add r0, r3, r0 +/* 80011044 0000DFA4 48 00 00 2C */ b lbl_80011070 +lbl_80011048: +/* 80011048 0000DFA8 28 06 00 00 */ cmplwi r6, 0 +/* 8001104C 0000DFAC 41 82 00 1C */ beq lbl_80011068 +/* 80011050 0000DFB0 C0 03 00 00 */ lfs f0, 0(r3) +/* 80011054 0000DFB4 D0 06 00 00 */ stfs f0, 0(r6) +/* 80011058 0000DFB8 C0 03 00 04 */ lfs f0, 4(r3) +/* 8001105C 0000DFBC D0 06 00 04 */ stfs f0, 4(r6) +/* 80011060 0000DFC0 C0 03 00 08 */ lfs f0, 8(r3) +/* 80011064 0000DFC4 D0 06 00 08 */ stfs f0, 8(r6) +lbl_80011068: +/* 80011068 0000DFC8 38 C6 00 0C */ addi r6, r6, 0xc +/* 8001106C 0000DFCC 38 63 00 0C */ addi r3, r3, 0xc +lbl_80011070: +/* 80011070 0000DFD0 7C 03 00 40 */ cmplw r3, r0 +/* 80011074 0000DFD4 40 82 FF D4 */ bne lbl_80011048 +/* 80011078 0000DFD8 80 1F 00 7C */ lwz r0, 0x7c(r31) +/* 8001107C 0000DFDC 90 1E 00 7C */ stw r0, 0x7c(r30) +lbl_80011080: +/* 80011080 0000DFE0 38 7E 00 B0 */ addi r3, r30, 0xb0 +/* 80011084 0000DFE4 38 1F 00 B0 */ addi r0, r31, 0xb0 +/* 80011088 0000DFE8 7C 03 00 40 */ cmplw r3, r0 +/* 8001108C 0000DFEC 41 82 00 98 */ beq lbl_80011124 +/* 80011090 0000DFF0 80 BE 00 B0 */ lwz r5, 0xb0(r30) +/* 80011094 0000DFF4 38 DE 00 B4 */ addi r6, r30, 0xb4 +/* 80011098 0000DFF8 38 60 00 00 */ li r3, 0 +/* 8001109C 0000DFFC 2C 05 00 00 */ cmpwi r5, 0 +/* 800110A0 0000E000 40 81 00 40 */ ble lbl_800110E0 +/* 800110A4 0000E004 2C 05 00 08 */ cmpwi r5, 8 +/* 800110A8 0000E008 38 85 FF F8 */ addi r4, r5, -8 +/* 800110AC 0000E00C 40 81 00 20 */ ble lbl_800110CC +/* 800110B0 0000E010 38 04 00 07 */ addi r0, r4, 7 +/* 800110B4 0000E014 54 00 E8 FE */ srwi r0, r0, 3 +/* 800110B8 0000E018 7C 09 03 A6 */ mtctr r0 +/* 800110BC 0000E01C 2C 04 00 00 */ cmpwi r4, 0 +/* 800110C0 0000E020 40 81 00 0C */ ble lbl_800110CC +lbl_800110C4: +/* 800110C4 0000E024 38 63 00 08 */ addi r3, r3, 8 +/* 800110C8 0000E028 42 00 FF FC */ bdnz lbl_800110C4 +lbl_800110CC: +/* 800110CC 0000E02C 7C 03 28 50 */ subf r0, r3, r5 +/* 800110D0 0000E030 7C 09 03 A6 */ mtctr r0 +/* 800110D4 0000E034 7C 03 28 00 */ cmpw r3, r5 +/* 800110D8 0000E038 40 80 00 08 */ bge lbl_800110E0 +lbl_800110DC: +/* 800110DC 0000E03C 42 00 00 00 */ bdnz lbl_800110DC +lbl_800110E0: +/* 800110E0 0000E040 38 00 00 00 */ li r0, 0 +/* 800110E4 0000E044 38 7F 00 B4 */ addi r3, r31, 0xb4 +/* 800110E8 0000E048 90 1E 00 B0 */ stw r0, 0xb0(r30) +/* 800110EC 0000E04C 80 1F 00 B0 */ lwz r0, 0xb0(r31) +/* 800110F0 0000E050 54 00 10 3A */ slwi r0, r0, 2 +/* 800110F4 0000E054 7C 03 02 14 */ add r0, r3, r0 +/* 800110F8 0000E058 48 00 00 1C */ b lbl_80011114 +lbl_800110FC: +/* 800110FC 0000E05C 28 06 00 00 */ cmplwi r6, 0 +/* 80011100 0000E060 41 82 00 0C */ beq lbl_8001110C +/* 80011104 0000E064 C0 03 00 00 */ lfs f0, 0(r3) +/* 80011108 0000E068 D0 06 00 00 */ stfs f0, 0(r6) +lbl_8001110C: +/* 8001110C 0000E06C 38 C6 00 04 */ addi r6, r6, 4 +/* 80011110 0000E070 38 63 00 04 */ addi r3, r3, 4 +lbl_80011114: +/* 80011114 0000E074 7C 03 00 40 */ cmplw r3, r0 +/* 80011118 0000E078 40 82 FF E4 */ bne lbl_800110FC +/* 8001111C 0000E07C 80 1F 00 B0 */ lwz r0, 0xb0(r31) +/* 80011120 0000E080 90 1E 00 B0 */ stw r0, 0xb0(r30) +lbl_80011124: +/* 80011124 0000E084 C0 1F 00 C4 */ lfs f0, 0xc4(r31) +/* 80011128 0000E088 38 7E 00 D0 */ addi r3, r30, 0xd0 +/* 8001112C 0000E08C 38 9F 00 D0 */ addi r4, r31, 0xd0 +/* 80011130 0000E090 D0 1E 00 C4 */ stfs f0, 0xc4(r30) +/* 80011134 0000E094 C0 1F 00 C8 */ lfs f0, 0xc8(r31) +/* 80011138 0000E098 D0 1E 00 C8 */ stfs f0, 0xc8(r30) +/* 8001113C 0000E09C 80 1F 00 CC */ lwz r0, 0xcc(r31) +/* 80011140 0000E0A0 90 1E 00 CC */ stw r0, 0xcc(r30) +/* 80011144 0000E0A4 48 30 19 FD */ bl __as__12CTransform4fFRC12CTransform4f +/* 80011148 0000E0A8 C0 1F 01 00 */ lfs f0, 0x100(r31) +/* 8001114C 0000E0AC 7F C3 F3 78 */ mr r3, r30 +/* 80011150 0000E0B0 D0 1E 01 00 */ stfs f0, 0x100(r30) +/* 80011154 0000E0B4 C0 1F 01 04 */ lfs f0, 0x104(r31) +/* 80011158 0000E0B8 D0 1E 01 04 */ stfs f0, 0x104(r30) +/* 8001115C 0000E0BC 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80011160 0000E0C0 83 C1 00 08 */ lwz r30, 8(r1) +/* 80011164 0000E0C4 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80011168 0000E0C8 7C 08 03 A6 */ mtlr r0 +/* 8001116C 0000E0CC 38 21 00 10 */ addi r1, r1, 0x10 +/* 80011170 0000E0D0 4E 80 00 20 */ blr + +.global SetPlayerHitWallDuringMove__7CPlayerFv +SetPlayerHitWallDuringMove__7CPlayerFv: +/* 80011174 0000E0D4 88 03 09 C5 */ lbz r0, 0x9c5(r3) +/* 80011178 0000E0D8 38 80 00 01 */ li r4, 1 +/* 8001117C 0000E0DC 50 80 17 7A */ rlwimi r0, r4, 2, 0x1d, 0x1d +/* 80011180 0000E0E0 98 03 09 C5 */ stb r0, 0x9c5(r3) +/* 80011184 0000E0E4 90 83 02 D0 */ stw r4, 0x2d0(r3) +/* 80011188 0000E0E8 4E 80 00 20 */ blr + +.global ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle: +/* 8001118C 0000E0EC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80011190 0000E0F0 7C 08 02 A6 */ mflr r0 +/* 80011194 0000E0F4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80011198 0000E0F8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001119C 0000E0FC 7C 9F 23 78 */ mr r31, r4 +/* 800111A0 0000E100 48 27 3E 6D */ bl CheckSubmerged__7CPlayerCFv +/* 800111A4 0000E104 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800111A8 0000E108 41 82 00 18 */ beq lbl_800111C0 +/* 800111AC 0000E10C 80 1F 00 00 */ lwz r0, 0(r31) +/* 800111B0 0000E110 38 61 00 08 */ addi r3, r1, 8 +/* 800111B4 0000E114 38 80 00 00 */ li r4, 0 +/* 800111B8 0000E118 90 01 00 08 */ stw r0, 8(r1) +/* 800111BC 0000E11C 48 2D 7C F1 */ bl PitchBend__11CSfxManagerF10CSfxHandlei +lbl_800111C0: +/* 800111C0 0000E120 80 01 00 24 */ lwz r0, 0x24(r1) +/* 800111C4 0000E124 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 800111C8 0000E128 7C 08 03 A6 */ mtlr r0 +/* 800111CC 0000E12C 38 21 00 20 */ addi r1, r1, 0x20 +/* 800111D0 0000E130 4E 80 00 20 */ blr + +.global UpdatePhazonDamage__7CPlayerFfR13CStateManager +UpdatePhazonDamage__7CPlayerFfR13CStateManager: +/* 800111D4 0000E134 94 21 F5 D0 */ stwu r1, -0xa30(r1) +/* 800111D8 0000E138 7C 08 02 A6 */ mflr r0 +/* 800111DC 0000E13C 90 01 0A 34 */ stw r0, 0xa34(r1) +/* 800111E0 0000E140 DB E1 0A 20 */ stfd f31, 0xa20(r1) +/* 800111E4 0000E144 F3 E1 0A 28 */ psq_st f31, -1496(r1), 0, qr0 +/* 800111E8 0000E148 DB C1 0A 10 */ stfd f30, 0xa10(r1) +/* 800111EC 0000E14C F3 C1 0A 18 */ psq_st f30, -1512(r1), 0, qr0 +/* 800111F0 0000E150 DB A1 0A 00 */ stfd f29, 0xa00(r1) +/* 800111F4 0000E154 F3 A1 0A 08 */ psq_st f29, -1528(r1), 0, qr0 +/* 800111F8 0000E158 DB 81 09 F0 */ stfd f28, 0x9f0(r1) +/* 800111FC 0000E15C F3 81 09 F8 */ psq_st f28, -1544(r1), 0, qr0 +/* 80011200 0000E160 BE E1 09 CC */ stmw r23, 0x9cc(r1) +/* 80011204 0000E164 7C 7E 1B 78 */ mr r30, r3 +/* 80011208 0000E168 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8001120C 0000E16C 80 C3 00 04 */ lwz r6, 4(r3) +/* 80011210 0000E170 FF 80 08 90 */ fmr f28, f1 +/* 80011214 0000E174 7C 9F 23 78 */ mr r31, r4 +/* 80011218 0000E178 7C 06 00 00 */ cmpw r6, r0 +/* 8001121C 0000E17C 90 C1 00 30 */ stw r6, 0x30(r1) +/* 80011220 0000E180 41 82 04 F8 */ beq lbl_80011718 +/* 80011224 0000E184 80 BF 08 50 */ lwz r5, 0x850(r31) +/* 80011228 0000E188 54 C3 18 38 */ slwi r3, r6, 3 +/* 8001122C 0000E18C 38 83 00 04 */ addi r4, r3, 4 +/* 80011230 0000E190 90 C1 00 2C */ stw r6, 0x2c(r1) +/* 80011234 0000E194 80 A5 00 20 */ lwz r5, 0x20(r5) +/* 80011238 0000E198 7C 65 20 2E */ lwzx r3, r5, r4 +/* 8001123C 0000E19C 88 03 00 F0 */ lbz r0, 0xf0(r3) +/* 80011240 0000E1A0 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80011244 0000E1A4 40 82 00 08 */ bne lbl_8001124C +/* 80011248 0000E1A8 48 00 04 D0 */ b lbl_80011718 +lbl_8001124C: +/* 8001124C 0000E1AC 7C 65 20 2E */ lwzx r3, r5, r4 +/* 80011250 0000E1B0 3B 40 00 00 */ li r26, 0 +/* 80011254 0000E1B4 90 C1 00 24 */ stw r6, 0x24(r1) +/* 80011258 0000E1B8 80 63 01 2C */ lwz r3, 0x12c(r3) +/* 8001125C 0000E1BC 90 C1 00 28 */ stw r6, 0x28(r1) +/* 80011260 0000E1C0 80 63 10 D8 */ lwz r3, 0x10d8(r3) +/* 80011264 0000E1C4 28 03 00 00 */ cmplwi r3, 0 +/* 80011268 0000E1C8 41 82 00 0C */ beq lbl_80011274 +/* 8001126C 0000E1CC 83 23 00 50 */ lwz r25, 0x50(r3) +/* 80011270 0000E1D0 48 00 00 08 */ b lbl_80011278 +lbl_80011274: +/* 80011274 0000E1D4 3B 20 00 00 */ li r25, 0 +lbl_80011278: +/* 80011278 0000E1D8 2C 19 00 02 */ cmpwi r25, 2 +/* 8001127C 0000E1DC 41 82 00 24 */ beq lbl_800112A0 +/* 80011280 0000E1E0 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80011284 0000E1E4 38 80 00 17 */ li r4, 0x17 +/* 80011288 0000E1E8 80 63 00 00 */ lwz r3, 0(r3) +/* 8001128C 0000E1EC 48 08 08 35 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80011290 0000E1F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80011294 0000E1F4 40 82 02 C8 */ bne lbl_8001155C +/* 80011298 0000E1F8 2C 19 00 01 */ cmpwi r25, 1 +/* 8001129C 0000E1FC 40 82 02 C0 */ bne lbl_8001155C +lbl_800112A0: +/* 800112A0 0000E200 80 AD 81 00 */ lwz r5, lbl_805A6CC0@sda21(r13) +/* 800112A4 0000E204 38 60 00 00 */ li r3, 0 +/* 800112A8 0000E208 38 80 00 01 */ li r4, 1 +/* 800112AC 0000E20C 48 37 8C 49 */ bl __shl2i +/* 800112B0 0000E210 38 A0 00 01 */ li r5, 1 +/* 800112B4 0000E214 38 C0 00 00 */ li r6, 0 +/* 800112B8 0000E218 90 81 01 04 */ stw r4, 0x104(r1) +/* 800112BC 0000E21C 90 61 01 00 */ stw r3, 0x100(r1) +/* 800112C0 0000E220 90 C1 01 0C */ stw r6, 0x10c(r1) +/* 800112C4 0000E224 90 C1 01 08 */ stw r6, 0x108(r1) +/* 800112C8 0000E228 90 A1 01 10 */ stw r5, 0x110(r1) +/* 800112CC 0000E22C 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 800112D0 0000E230 90 A1 00 B8 */ stw r5, 0xb8(r1) +/* 800112D4 0000E234 2C 00 00 01 */ cmpwi r0, 1 +/* 800112D8 0000E238 40 82 00 20 */ bne lbl_800112F8 +/* 800112DC 0000E23C 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 800112E0 0000E240 7F E4 FB 78 */ mr r4, r31 +/* 800112E4 0000E244 C0 22 81 18 */ lfs f1, lbl_805A9E38@sda21(r2) +/* 800112E8 0000E248 38 A1 01 00 */ addi r5, r1, 0x100 +/* 800112EC 0000E24C 48 0E 02 79 */ bl BallCloseToCollision__10CMorphBallCFRC13CStateManagerfRC15CMaterialFilter +/* 800112F0 0000E250 7C 7A 1B 78 */ mr r26, r3 +/* 800112F4 0000E254 48 00 02 68 */ b lbl_8001155C +lbl_800112F8: +/* 800112F8 0000E258 80 AD 81 04 */ lwz r5, lbl_805A6CC4@sda21(r13) +/* 800112FC 0000E25C 38 60 00 00 */ li r3, 0 +/* 80011300 0000E260 90 C1 00 4C */ stw r6, 0x4c(r1) +/* 80011304 0000E264 38 80 00 01 */ li r4, 1 +/* 80011308 0000E268 90 C1 00 48 */ stw r6, 0x48(r1) +/* 8001130C 0000E26C 48 37 8B E9 */ bl __shl2i +/* 80011310 0000E270 80 01 00 48 */ lwz r0, 0x48(r1) +/* 80011314 0000E274 80 C1 00 4C */ lwz r6, 0x4c(r1) +/* 80011318 0000E278 7C 00 1B 78 */ or r0, r0, r3 +/* 8001131C 0000E27C 80 AD 81 08 */ lwz r5, lbl_805A6CC8@sda21(r13) +/* 80011320 0000E280 7C C4 23 78 */ or r4, r6, r4 +/* 80011324 0000E284 90 01 00 48 */ stw r0, 0x48(r1) +/* 80011328 0000E288 38 60 00 00 */ li r3, 0 +/* 8001132C 0000E28C 90 81 00 4C */ stw r4, 0x4c(r1) +/* 80011330 0000E290 38 80 00 01 */ li r4, 1 +/* 80011334 0000E294 48 37 8B C1 */ bl __shl2i +/* 80011338 0000E298 80 01 00 48 */ lwz r0, 0x48(r1) +/* 8001133C 0000E29C 80 A1 00 4C */ lwz r5, 0x4c(r1) +/* 80011340 0000E2A0 7C 00 1B 78 */ or r0, r0, r3 +/* 80011344 0000E2A4 7F C3 F3 78 */ mr r3, r30 +/* 80011348 0000E2A8 7C A4 23 78 */ or r4, r5, r4 +/* 8001134C 0000E2AC 90 01 00 48 */ stw r0, 0x48(r1) +/* 80011350 0000E2B0 90 81 00 4C */ stw r4, 0x4c(r1) +/* 80011354 0000E2B4 81 9E 00 00 */ lwz r12, 0(r30) +/* 80011358 0000E2B8 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 8001135C 0000E2BC 7D 89 03 A6 */ mtctr r12 +/* 80011360 0000E2C0 4E 80 04 21 */ bctrl +/* 80011364 0000E2C4 7C 64 1B 78 */ mr r4, r3 +/* 80011368 0000E2C8 38 61 00 90 */ addi r3, r1, 0x90 +/* 8001136C 0000E2CC 81 84 00 00 */ lwz r12, 0(r4) +/* 80011370 0000E2D0 38 BE 00 34 */ addi r5, r30, 0x34 +/* 80011374 0000E2D4 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80011378 0000E2D8 7D 89 03 A6 */ mtctr r12 +/* 8001137C 0000E2DC 4E 80 04 21 */ bctrl +/* 80011380 0000E2E0 38 61 00 50 */ addi r3, r1, 0x50 +/* 80011384 0000E2E4 38 81 00 90 */ addi r4, r1, 0x90 +/* 80011388 0000E2E8 48 32 62 85 */ bl GetCenterPoint__6CAABoxCFv +/* 8001138C 0000E2EC C3 E1 00 50 */ lfs f31, 0x50(r1) +/* 80011390 0000E2F0 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 80011394 0000E2F4 C3 C1 00 54 */ lfs f30, 0x54(r1) +/* 80011398 0000E2F8 38 81 00 48 */ addi r4, r1, 0x48 +/* 8001139C 0000E2FC C3 A1 00 58 */ lfs f29, 0x58(r1) +/* 800113A0 0000E300 48 2B E5 15 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 800113A4 0000E304 C0 02 81 1C */ lfs f0, lbl_805A9E3C@sda21(r2) +/* 800113A8 0000E308 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 800113AC 0000E30C 38 63 CA F8 */ addi r3, r3, lbl_803ECAF8@l +/* 800113B0 0000E310 38 00 00 00 */ li r0, 0 +/* 800113B4 0000E314 90 61 00 E0 */ stw r3, 0xe0(r1) +/* 800113B8 0000E318 38 61 00 78 */ addi r3, r1, 0x78 +/* 800113BC 0000E31C 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 800113C0 0000E320 D3 E1 00 F0 */ stfs f31, 0xf0(r1) +/* 800113C4 0000E324 D3 C1 00 F4 */ stfs f30, 0xf4(r1) +/* 800113C8 0000E328 D3 A1 00 F8 */ stfs f29, 0xf8(r1) +/* 800113CC 0000E32C D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 800113D0 0000E330 90 01 01 B8 */ stw r0, 0x1b8(r1) +/* 800113D4 0000E334 48 2C 2F F9 */ bl CalculateLocalAABox__17CCollidableSphereCFv +/* 800113D8 0000E338 7F E3 FB 78 */ mr r3, r31 +/* 800113DC 0000E33C 7F C5 F3 78 */ mr r5, r30 +/* 800113E0 0000E340 38 81 01 B8 */ addi r4, r1, 0x1b8 +/* 800113E4 0000E344 38 C1 00 78 */ addi r6, r1, 0x78 +/* 800113E8 0000E348 48 03 B3 15 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" +/* 800113EC 0000E34C 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 800113F0 0000E350 7F E3 FB 78 */ mr r3, r31 +/* 800113F4 0000E354 38 A4 66 70 */ addi r5, r4, skIdentity4f@l +/* 800113F8 0000E358 38 C1 01 00 */ addi r6, r1, 0x100 +/* 800113FC 0000E35C 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 80011400 0000E360 48 17 1F A1 */ bl DetectStaticCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilter +/* 80011404 0000E364 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80011408 0000E368 41 82 00 0C */ beq lbl_80011414 +/* 8001140C 0000E36C 3B 40 00 01 */ li r26, 1 +/* 80011410 0000E370 48 00 00 E0 */ b lbl_800114F0 +lbl_80011414: +/* 80011414 0000E374 3B 61 01 BC */ addi r27, r1, 0x1bc +/* 80011418 0000E378 3B A1 01 50 */ addi r29, r1, 0x150 +/* 8001141C 0000E37C 7F 78 DB 78 */ mr r24, r27 +/* 80011420 0000E380 3B 81 01 88 */ addi r28, r1, 0x188 +/* 80011424 0000E384 48 00 00 B8 */ b lbl_800114DC +lbl_80011428: +/* 80011428 0000E388 A0 18 00 00 */ lhz r0, 0(r24) +/* 8001142C 0000E38C 7F E3 FB 78 */ mr r3, r31 +/* 80011430 0000E390 38 81 00 1C */ addi r4, r1, 0x1c +/* 80011434 0000E394 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80011438 0000E398 48 03 B1 6D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 8001143C 0000E39C 7C 64 1B 78 */ mr r4, r3 +/* 80011440 0000E3A0 38 61 00 34 */ addi r3, r1, 0x34 +/* 80011444 0000E3A4 48 09 B2 A1 */ bl "__ct__27TCastToPtr<13CPhysicsActor>FP7CEntity" +/* 80011448 0000E3A8 82 E3 00 04 */ lwz r23, 4(r3) +/* 8001144C 0000E3AC 28 17 00 00 */ cmplwi r23, 0 +/* 80011450 0000E3B0 41 82 00 88 */ beq lbl_800114D8 +/* 80011454 0000E3B4 7E E4 BB 78 */ mr r4, r23 +/* 80011458 0000E3B8 38 61 01 18 */ addi r3, r1, 0x118 +/* 8001145C 0000E3BC 81 97 00 00 */ lwz r12, 0(r23) +/* 80011460 0000E3C0 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 80011464 0000E3C4 7D 89 03 A6 */ mtctr r12 +/* 80011468 0000E3C8 4E 80 04 21 */ bctrl +/* 8001146C 0000E3CC 7E E3 BB 78 */ mr r3, r23 +/* 80011470 0000E3D0 81 97 00 00 */ lwz r12, 0(r23) +/* 80011474 0000E3D4 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80011478 0000E3D8 7D 89 03 A6 */ mtctr r12 +/* 8001147C 0000E3DC 4E 80 04 21 */ bctrl +/* 80011480 0000E3E0 3C 80 80 5A */ lis r4, lbl_8059FD18@ha +/* 80011484 0000E3E4 90 61 01 48 */ stw r3, 0x148(r1) +/* 80011488 0000E3E8 38 04 FD 18 */ addi r0, r4, lbl_8059FD18@l +/* 8001148C 0000E3EC 7F A3 EB 78 */ mr r3, r29 +/* 80011490 0000E3F0 90 01 01 4C */ stw r0, 0x14c(r1) +/* 80011494 0000E3F4 38 81 01 18 */ addi r4, r1, 0x118 +/* 80011498 0000E3F8 48 30 16 DD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8001149C 0000E3FC 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 800114A0 0000E400 38 01 01 00 */ addi r0, r1, 0x100 +/* 800114A4 0000E404 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 800114A8 0000E408 90 81 01 80 */ stw r4, 0x180(r1) +/* 800114AC 0000E40C 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 800114B0 0000E410 90 01 01 84 */ stw r0, 0x184(r1) +/* 800114B4 0000E414 7F 83 E3 78 */ mr r3, r28 +/* 800114B8 0000E418 48 30 16 BD */ bl __ct__12CTransform4fFRC12CTransform4f +/* 800114BC 0000E41C 38 61 01 80 */ addi r3, r1, 0x180 +/* 800114C0 0000E420 38 81 01 48 */ addi r4, r1, 0x148 +/* 800114C4 0000E424 48 2B D3 69 */ bl CollideBoolean__19CCollisionPrimitiveFRCQ227CInternalCollisionStructure9CPrimDescRCQ227CInternalCollisionStructure9CPrimDesc +/* 800114C8 0000E428 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800114CC 0000E42C 41 82 00 0C */ beq lbl_800114D8 +/* 800114D0 0000E430 3B 40 00 01 */ li r26, 1 +/* 800114D4 0000E434 48 00 00 1C */ b lbl_800114F0 +lbl_800114D8: +/* 800114D8 0000E438 3B 18 00 02 */ addi r24, r24, 2 +lbl_800114DC: +/* 800114DC 0000E43C 80 01 01 B8 */ lwz r0, 0x1b8(r1) +/* 800114E0 0000E440 54 00 08 3C */ slwi r0, r0, 1 +/* 800114E4 0000E444 7C 1B 02 14 */ add r0, r27, r0 +/* 800114E8 0000E448 7C 18 00 40 */ cmplw r24, r0 +/* 800114EC 0000E44C 40 82 FF 3C */ bne lbl_80011428 +lbl_800114F0: +/* 800114F0 0000E450 80 A1 01 B8 */ lwz r5, 0x1b8(r1) +/* 800114F4 0000E454 38 60 00 00 */ li r3, 0 +/* 800114F8 0000E458 2C 05 00 00 */ cmpwi r5, 0 +/* 800114FC 0000E45C 40 81 00 40 */ ble lbl_8001153C +/* 80011500 0000E460 2C 05 00 08 */ cmpwi r5, 8 +/* 80011504 0000E464 38 85 FF F8 */ addi r4, r5, -8 +/* 80011508 0000E468 40 81 00 20 */ ble lbl_80011528 +/* 8001150C 0000E46C 38 04 00 07 */ addi r0, r4, 7 +/* 80011510 0000E470 54 00 E8 FE */ srwi r0, r0, 3 +/* 80011514 0000E474 7C 09 03 A6 */ mtctr r0 +/* 80011518 0000E478 2C 04 00 00 */ cmpwi r4, 0 +/* 8001151C 0000E47C 40 81 00 0C */ ble lbl_80011528 +lbl_80011520: +/* 80011520 0000E480 38 63 00 08 */ addi r3, r3, 8 +/* 80011524 0000E484 42 00 FF FC */ bdnz lbl_80011520 +lbl_80011528: +/* 80011528 0000E488 7C 03 28 50 */ subf r0, r3, r5 +/* 8001152C 0000E48C 7C 09 03 A6 */ mtctr r0 +/* 80011530 0000E490 7C 03 28 00 */ cmpw r3, r5 +/* 80011534 0000E494 40 80 00 08 */ bge lbl_8001153C +lbl_80011538: +/* 80011538 0000E498 42 00 00 00 */ bdnz lbl_80011538 +lbl_8001153C: +/* 8001153C 0000E49C 3C 80 80 3F */ lis r4, lbl_803ECAF8@ha +/* 80011540 0000E4A0 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80011544 0000E4A4 38 04 CA F8 */ addi r0, r4, lbl_803ECAF8@l +/* 80011548 0000E4A8 38 80 00 00 */ li r4, 0 +/* 8001154C 0000E4AC 90 01 00 E0 */ stw r0, 0xe0(r1) +/* 80011550 0000E4B0 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80011554 0000E4B4 90 81 01 B8 */ stw r4, 0x1b8(r1) +/* 80011558 0000E4B8 90 01 00 E0 */ stw r0, 0xe0(r1) +lbl_8001155C: +/* 8001155C 0000E4BC 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 80011560 0000E4C0 41 82 01 34 */ beq lbl_80011694 +/* 80011564 0000E4C4 C0 1E 0A 18 */ lfs f0, 0xa18(r30) +/* 80011568 0000E4C8 EC 00 E0 2A */ fadds f0, f0, f28 +/* 8001156C 0000E4CC D0 1E 0A 18 */ stfs f0, 0xa18(r30) +/* 80011570 0000E4D0 C0 3E 0A 18 */ lfs f1, 0xa18(r30) +/* 80011574 0000E4D4 C0 02 81 10 */ lfs f0, lbl_805A9E30@sda21(r2) +/* 80011578 0000E4D8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001157C 0000E4DC 40 80 00 0C */ bge lbl_80011588 +/* 80011580 0000E4E0 38 7E 0A 18 */ addi r3, r30, 0xa18 +/* 80011584 0000E4E4 48 00 00 08 */ b lbl_8001158C +lbl_80011588: +/* 80011588 0000E4E8 38 62 81 10 */ addi r3, r2, lbl_805A9E30@sda21 +lbl_8001158C: +/* 8001158C 0000E4EC C0 23 00 00 */ lfs f1, 0(r3) +/* 80011590 0000E4F0 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) +/* 80011594 0000E4F4 D0 3E 0A 18 */ stfs f1, 0xa18(r30) +/* 80011598 0000E4F8 C0 3E 0A 18 */ lfs f1, 0xa18(r30) +/* 8001159C 0000E4FC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800115A0 0000E500 40 81 01 48 */ ble lbl_800116E8 +/* 800115A4 0000E504 EC 21 00 28 */ fsubs f1, f1, f0 +/* 800115A8 0000E508 C0 02 81 28 */ lfs f0, lbl_805A9E48@sda21(r2) +/* 800115AC 0000E50C C0 42 81 24 */ lfs f2, lbl_805A9E44@sda21(r2) +/* 800115B0 0000E510 2C 19 00 02 */ cmpwi r25, 2 +/* 800115B4 0000E514 39 00 00 08 */ li r8, 8 +/* 800115B8 0000E518 EC 01 00 24 */ fdivs f0, f1, f0 +/* 800115BC 0000E51C EC 02 00 32 */ fmuls f0, f2, f0 +/* 800115C0 0000E520 EC 3C 00 32 */ fmuls f1, f28, f0 +/* 800115C4 0000E524 40 82 00 08 */ bne lbl_800115CC +/* 800115C8 0000E528 39 00 00 0E */ li r8, 0xe +lbl_800115CC: +/* 800115CC 0000E52C 88 01 00 40 */ lbz r0, 0x40(r1) +/* 800115D0 0000E530 38 E0 00 00 */ li r7, 0 +/* 800115D4 0000E534 50 E0 3E 30 */ rlwimi r0, r7, 7, 0x18, 0x18 +/* 800115D8 0000E538 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800115DC 0000E53C 98 01 00 40 */ stb r0, 0x40(r1) +/* 800115E0 0000E540 54 04 06 3E */ clrlwi r4, r0, 0x18 +/* 800115E4 0000E544 50 E4 36 72 */ rlwimi r4, r7, 6, 0x19, 0x19 +/* 800115E8 0000E548 38 60 00 01 */ li r3, 1 +/* 800115EC 0000E54C 88 01 00 D8 */ lbz r0, 0xd8(r1) +/* 800115F0 0000E550 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 800115F4 0000E554 54 86 06 3E */ clrlwi r6, r4, 0x18 +/* 800115F8 0000E558 98 81 00 40 */ stb r4, 0x40(r1) +/* 800115FC 0000E55C 50 E6 2E B4 */ rlwimi r6, r7, 5, 0x1a, 0x1a +/* 80011600 0000E560 80 AD 80 88 */ lwz r5, lbl_805A6C48@sda21(r13) +/* 80011604 0000E564 91 01 00 3C */ stw r8, 0x3c(r1) +/* 80011608 0000E568 38 60 00 00 */ li r3, 0 +/* 8001160C 0000E56C 38 80 00 01 */ li r4, 1 +/* 80011610 0000E570 98 C1 00 40 */ stb r6, 0x40(r1) +/* 80011614 0000E574 91 01 00 C0 */ stw r8, 0xc0(r1) +/* 80011618 0000E578 98 C1 00 C4 */ stb r6, 0xc4(r1) +/* 8001161C 0000E57C D0 21 00 C8 */ stfs f1, 0xc8(r1) +/* 80011620 0000E580 D0 21 00 CC */ stfs f1, 0xcc(r1) +/* 80011624 0000E584 D0 01 00 D0 */ stfs f0, 0xd0(r1) +/* 80011628 0000E588 D0 01 00 D4 */ stfs f0, 0xd4(r1) +/* 8001162C 0000E58C 98 01 00 D8 */ stb r0, 0xd8(r1) +/* 80011630 0000E590 48 37 88 C5 */ bl __shl2i +/* 80011634 0000E594 A1 4D A3 8C */ lhz r10, lbl_805A8F4C@sda21(r13) +/* 80011638 0000E598 39 00 00 00 */ li r8, 0 +/* 8001163C 0000E59C 38 00 00 03 */ li r0, 3 +/* 80011640 0000E5A0 90 81 00 64 */ stw r4, 0x64(r1) +/* 80011644 0000E5A4 3C A0 80 5A */ lis r5, skZero3f@ha +/* 80011648 0000E5A8 38 81 00 18 */ addi r4, r1, 0x18 +/* 8001164C 0000E5AC 90 61 00 60 */ stw r3, 0x60(r1) +/* 80011650 0000E5B0 39 25 66 A0 */ addi r9, r5, skZero3f@l +/* 80011654 0000E5B4 7F E3 FB 78 */ mr r3, r31 +/* 80011658 0000E5B8 38 A1 00 14 */ addi r5, r1, 0x14 +/* 8001165C 0000E5BC 91 01 00 6C */ stw r8, 0x6c(r1) +/* 80011660 0000E5C0 38 C1 00 0C */ addi r6, r1, 0xc +/* 80011664 0000E5C4 38 E1 00 C0 */ addi r7, r1, 0xc0 +/* 80011668 0000E5C8 91 01 00 68 */ stw r8, 0x68(r1) +/* 8001166C 0000E5CC 39 01 00 60 */ addi r8, r1, 0x60 +/* 80011670 0000E5D0 90 01 00 70 */ stw r0, 0x70(r1) +/* 80011674 0000E5D4 B1 41 00 0C */ sth r10, 0xc(r1) +/* 80011678 0000E5D8 A0 1E 00 08 */ lhz r0, 8(r30) +/* 8001167C 0000E5DC B1 41 00 08 */ sth r10, 8(r1) +/* 80011680 0000E5E0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80011684 0000E5E4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80011688 0000E5E8 B1 41 00 18 */ sth r10, 0x18(r1) +/* 8001168C 0000E5EC 48 03 8A 15 */ bl ApplyDamage__13CStateManagerF9TUniqueId9TUniqueId9TUniqueIdRC11CDamageInfoRC15CMaterialFilterRC9CVector3f +/* 80011690 0000E5F0 48 00 00 58 */ b lbl_800116E8 +lbl_80011694: +/* 80011694 0000E5F4 C0 1E 0A 18 */ lfs f0, 0xa18(r30) +/* 80011698 0000E5F8 EC 00 E0 28 */ fsubs f0, f0, f28 +/* 8001169C 0000E5FC D0 1E 0A 18 */ stfs f0, 0xa18(r30) +/* 800116A0 0000E600 C0 3E 0A 18 */ lfs f1, 0xa18(r30) +/* 800116A4 0000E604 C0 02 81 14 */ lfs f0, lbl_805A9E34@sda21(r2) +/* 800116A8 0000E608 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800116AC 0000E60C 40 80 00 0C */ bge lbl_800116B8 +/* 800116B0 0000E610 38 7E 0A 18 */ addi r3, r30, 0xa18 +/* 800116B4 0000E614 48 00 00 08 */ b lbl_800116BC +lbl_800116B8: +/* 800116B8 0000E618 38 62 81 14 */ addi r3, r2, lbl_805A9E34@sda21 +lbl_800116BC: +/* 800116BC 0000E61C C0 03 00 00 */ lfs f0, 0(r3) +/* 800116C0 0000E620 D0 1E 0A 18 */ stfs f0, 0xa18(r30) +/* 800116C4 0000E624 C0 2D 81 0C */ lfs f1, lbl_805A6CCC@sda21(r13) +/* 800116C8 0000E628 C0 1E 0A 18 */ lfs f0, 0xa18(r30) +/* 800116CC 0000E62C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800116D0 0000E630 40 80 00 0C */ bge lbl_800116DC +/* 800116D4 0000E634 38 7E 0A 18 */ addi r3, r30, 0xa18 +/* 800116D8 0000E638 48 00 00 08 */ b lbl_800116E0 +lbl_800116DC: +/* 800116DC 0000E63C 38 6D 81 0C */ addi r3, r13, lbl_805A6CCC@sda21 +lbl_800116E0: +/* 800116E0 0000E640 C0 03 00 00 */ lfs f0, 0(r3) +/* 800116E4 0000E644 D0 1E 0A 18 */ stfs f0, 0xa18(r30) +lbl_800116E8: +/* 800116E8 0000E648 C0 5E 0A 18 */ lfs f2, 0xa18(r30) +/* 800116EC 0000E64C C0 22 81 20 */ lfs f1, lbl_805A9E40@sda21(r2) +/* 800116F0 0000E650 C0 0D 81 10 */ lfs f0, lbl_805A6CD0@sda21(r13) +/* 800116F4 0000E654 EC 22 08 24 */ fdivs f1, f2, f1 +/* 800116F8 0000E658 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 800116FC 0000E65C D0 21 00 20 */ stfs f1, 0x20(r1) +/* 80011700 0000E660 40 80 00 0C */ bge lbl_8001170C +/* 80011704 0000E664 38 6D 81 10 */ addi r3, r13, lbl_805A6CD0@sda21 +/* 80011708 0000E668 48 00 00 08 */ b lbl_80011710 +lbl_8001170C: +/* 8001170C 0000E66C 38 61 00 20 */ addi r3, r1, 0x20 +lbl_80011710: +/* 80011710 0000E670 C0 03 00 00 */ lfs f0, 0(r3) +/* 80011714 0000E674 D0 1E 0A 1C */ stfs f0, 0xa1c(r30) +lbl_80011718: +/* 80011718 0000E678 E3 E1 0A 28 */ psq_l f31, -1496(r1), 0, qr0 +/* 8001171C 0000E67C CB E1 0A 20 */ lfd f31, 0xa20(r1) +/* 80011720 0000E680 E3 C1 0A 18 */ psq_l f30, -1512(r1), 0, qr0 +/* 80011724 0000E684 CB C1 0A 10 */ lfd f30, 0xa10(r1) +/* 80011728 0000E688 E3 A1 0A 08 */ psq_l f29, -1528(r1), 0, qr0 +/* 8001172C 0000E68C CB A1 0A 00 */ lfd f29, 0xa00(r1) +/* 80011730 0000E690 E3 81 09 F8 */ psq_l f28, -1544(r1), 0, qr0 +/* 80011734 0000E694 CB 81 09 F0 */ lfd f28, 0x9f0(r1) +/* 80011738 0000E698 BA E1 09 CC */ lmw r23, 0x9cc(r1) +/* 8001173C 0000E69C 80 01 0A 34 */ lwz r0, 0xa34(r1) +/* 80011740 0000E6A0 7C 08 03 A6 */ mtlr r0 +/* 80011744 0000E6A4 38 21 0A 30 */ addi r1, r1, 0xa30 +/* 80011748 0000E6A8 4E 80 00 20 */ blr + +.global __dt__17CCollidableSphere +__dt__17CCollidableSphere: +/* 8001174C 0000E6AC 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80011750 0000E6B0 7C 08 02 A6 */ mflr r0 +/* 80011754 0000E6B4 90 01 00 14 */ stw r0, 0x14(r1) +/* 80011758 0000E6B8 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001175C 0000E6BC 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80011760 0000E6C0 41 82 00 30 */ beq lbl_80011790 +/* 80011764 0000E6C4 3C 60 80 3F */ lis r3, lbl_803ECAF8@ha +/* 80011768 0000E6C8 38 03 CA F8 */ addi r0, r3, lbl_803ECAF8@l +/* 8001176C 0000E6CC 90 1F 00 00 */ stw r0, 0(r31) +/* 80011770 0000E6D0 41 82 00 10 */ beq lbl_80011780 +/* 80011774 0000E6D4 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80011778 0000E6D8 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 8001177C 0000E6DC 90 1F 00 00 */ stw r0, 0(r31) +lbl_80011780: +/* 80011780 0000E6E0 7C 80 07 35 */ extsh. r0, r4 +/* 80011784 0000E6E4 40 81 00 0C */ ble lbl_80011790 +/* 80011788 0000E6E8 7F E3 FB 78 */ mr r3, r31 +/* 8001178C 0000E6EC 48 30 41 A5 */ bl Free__7CMemoryFPCv +lbl_80011790: +/* 80011790 0000E6F0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80011794 0000E6F4 7F E3 FB 78 */ mr r3, r31 +/* 80011798 0000E6F8 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001179C 0000E6FC 7C 08 03 A6 */ mtlr r0 +/* 800117A0 0000E700 38 21 00 10 */ addi r1, r1, 0x10 +/* 800117A4 0000E704 4E 80 00 20 */ blr + +.global __dt__19CCollisionPrimitiveFv +__dt__19CCollisionPrimitiveFv: +/* 800117A8 0000E708 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800117AC 0000E70C 7C 08 02 A6 */ mflr r0 +/* 800117B0 0000E710 90 01 00 14 */ stw r0, 0x14(r1) +/* 800117B4 0000E714 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800117B8 0000E718 7C 7F 1B 79 */ or. r31, r3, r3 +/* 800117BC 0000E71C 41 82 00 1C */ beq lbl_800117D8 +/* 800117C0 0000E720 3C A0 80 3E */ lis r5, lbl_803D97E4@ha +/* 800117C4 0000E724 7C 80 07 35 */ extsh. r0, r4 +/* 800117C8 0000E728 38 05 97 E4 */ addi r0, r5, lbl_803D97E4@l +/* 800117CC 0000E72C 90 1F 00 00 */ stw r0, 0(r31) +/* 800117D0 0000E730 40 81 00 08 */ ble lbl_800117D8 +/* 800117D4 0000E734 48 30 41 5D */ bl Free__7CMemoryFPCv +lbl_800117D8: +/* 800117D8 0000E738 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800117DC 0000E73C 7F E3 FB 78 */ mr r3, r31 +/* 800117E0 0000E740 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 800117E4 0000E744 7C 08 03 A6 */ mtlr r0 +/* 800117E8 0000E748 38 21 00 10 */ addi r1, r1, 0x10 +/* 800117EC 0000E74C 4E 80 00 20 */ blr + +.global UpdatePhazonCameraShake__7CPlayerFfR13CStateManager +UpdatePhazonCameraShake__7CPlayerFfR13CStateManager: +/* 800117F0 0000E750 94 21 FE 30 */ stwu r1, -0x1d0(r1) +/* 800117F4 0000E754 7C 08 02 A6 */ mflr r0 +/* 800117F8 0000E758 90 01 01 D4 */ stw r0, 0x1d4(r1) +/* 800117FC 0000E75C DB E1 01 C0 */ stfd f31, 0x1c0(r1) +/* 80011800 0000E760 F3 E1 01 C8 */ psq_st f31, 456(r1), 0, qr0 +/* 80011804 0000E764 93 E1 01 BC */ stw r31, 0x1bc(r1) +/* 80011808 0000E768 93 C1 01 B8 */ stw r30, 0x1b8(r1) +/* 8001180C 0000E76C 7C 7F 1B 78 */ mr r31, r3 +/* 80011810 0000E770 80 02 81 2C */ lwz r0, lbl_805A9E4C@sda21(r2) +/* 80011814 0000E774 80 A3 0A 2C */ lwz r5, 0xa2c(r3) +/* 80011818 0000E778 FF E0 08 90 */ fmr f31, f1 +/* 8001181C 0000E77C 7C 9E 23 78 */ mr r30, r4 +/* 80011820 0000E780 38 61 00 08 */ addi r3, r1, 8 +/* 80011824 0000E784 38 85 00 01 */ addi r4, r5, 1 +/* 80011828 0000E788 7C 00 20 00 */ cmpw r0, r4 +/* 8001182C 0000E78C 90 81 00 08 */ stw r4, 8(r1) +/* 80011830 0000E790 40 80 00 08 */ bge lbl_80011838 +/* 80011834 0000E794 38 62 81 2C */ addi r3, r2, lbl_805A9E4C@sda21 +lbl_80011838: +/* 80011838 0000E798 80 03 00 00 */ lwz r0, 0(r3) +/* 8001183C 0000E79C 90 1F 0A 2C */ stw r0, 0xa2c(r31) +/* 80011840 0000E7A0 80 1F 0A 10 */ lwz r0, 0xa10(r31) +/* 80011844 0000E7A4 2C 00 00 00 */ cmpwi r0, 0 +/* 80011848 0000E7A8 41 82 00 DC */ beq lbl_80011924 +/* 8001184C 0000E7AC C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80011850 0000E7B0 C0 1F 0A 14 */ lfs f0, 0xa14(r31) +/* 80011854 0000E7B4 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80011858 0000E7B8 40 82 00 A8 */ bne lbl_80011900 +/* 8001185C 0000E7BC C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80011860 0000E7C0 38 61 00 0C */ addi r3, r1, 0xc +/* 80011864 0000E7C4 C0 42 81 30 */ lfs f2, lbl_805A9E50@sda21(r2) +/* 80011868 0000E7C8 48 14 C1 D9 */ bl BuildPhazonCameraShakeData__16CCameraShakeDataFff +/* 8001186C 0000E7CC 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 80011870 0000E7D0 38 81 00 0C */ addi r4, r1, 0xc +/* 80011874 0000E7D4 4B FF 95 35 */ bl __ct__16CCameraShakeDataFRC16CCameraShakeData +/* 80011878 0000E7D8 34 81 00 8C */ addic. r4, r1, 0x8c +/* 8001187C 0000E7DC 41 82 00 10 */ beq lbl_8001188C +/* 80011880 0000E7E0 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 80011884 0000E7E4 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 80011888 0000E7E8 90 04 00 00 */ stw r0, 0(r4) +lbl_8001188C: +/* 8001188C 0000E7EC 34 81 00 50 */ addic. r4, r1, 0x50 +/* 80011890 0000E7F0 41 82 00 10 */ beq lbl_800118A0 +/* 80011894 0000E7F4 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 80011898 0000E7F8 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8001189C 0000E7FC 90 04 00 00 */ stw r0, 0(r4) +lbl_800118A0: +/* 800118A0 0000E800 34 81 00 14 */ addic. r4, r1, 0x14 +/* 800118A4 0000E804 41 82 00 10 */ beq lbl_800118B4 +/* 800118A8 0000E808 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 800118AC 0000E80C 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 800118B0 0000E810 90 04 00 00 */ stw r0, 0(r4) +lbl_800118B4: +/* 800118B4 0000E814 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 800118B8 0000E818 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 800118BC 0000E81C 38 A0 00 00 */ li r5, 0 +/* 800118C0 0000E820 4B FF 91 61 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 800118C4 0000E824 34 81 01 60 */ addic. r4, r1, 0x160 +/* 800118C8 0000E828 41 82 00 10 */ beq lbl_800118D8 +/* 800118CC 0000E82C 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 800118D0 0000E830 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 800118D4 0000E834 90 04 00 00 */ stw r0, 0(r4) +lbl_800118D8: +/* 800118D8 0000E838 34 81 01 24 */ addic. r4, r1, 0x124 +/* 800118DC 0000E83C 41 82 00 10 */ beq lbl_800118EC +/* 800118E0 0000E840 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 800118E4 0000E844 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 800118E8 0000E848 90 04 00 00 */ stw r0, 0(r4) +lbl_800118EC: +/* 800118EC 0000E84C 34 81 00 E8 */ addic. r4, r1, 0xe8 +/* 800118F0 0000E850 41 82 00 10 */ beq lbl_80011900 +/* 800118F4 0000E854 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 800118F8 0000E858 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 800118FC 0000E85C 90 04 00 00 */ stw r0, 0(r4) +lbl_80011900: +/* 80011900 0000E860 C0 3F 0A 14 */ lfs f1, 0xa14(r31) +/* 80011904 0000E864 C0 02 81 34 */ lfs f0, lbl_805A9E54@sda21(r2) +/* 80011908 0000E868 EC 21 F8 2A */ fadds f1, f1, f31 +/* 8001190C 0000E86C D0 3F 0A 14 */ stfs f1, 0xa14(r31) +/* 80011910 0000E870 C0 3F 0A 14 */ lfs f1, 0xa14(r31) +/* 80011914 0000E874 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80011918 0000E878 40 81 00 0C */ ble lbl_80011924 +/* 8001191C 0000E87C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80011920 0000E880 D0 1F 0A 14 */ stfs f0, 0xa14(r31) +lbl_80011924: +/* 80011924 0000E884 E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 +/* 80011928 0000E888 80 01 01 D4 */ lwz r0, 0x1d4(r1) +/* 8001192C 0000E88C CB E1 01 C0 */ lfd f31, 0x1c0(r1) +/* 80011930 0000E890 83 E1 01 BC */ lwz r31, 0x1bc(r1) +/* 80011934 0000E894 83 C1 01 B8 */ lwz r30, 0x1b8(r1) +/* 80011938 0000E898 7C 08 03 A6 */ mtlr r0 +/* 8001193C 0000E89C 38 21 01 D0 */ addi r1, r1, 0x1d0 +/* 80011940 0000E8A0 4E 80 00 20 */ blr + +.global DecrementPhazon__7CPlayerFv +DecrementPhazon__7CPlayerFv: +/* 80011944 0000E8A4 80 83 0A 10 */ lwz r4, 0xa10(r3) +/* 80011948 0000E8A8 2C 04 00 00 */ cmpwi r4, 0 +/* 8001194C 0000E8AC 4D 82 00 20 */ beqlr +/* 80011950 0000E8B0 38 04 FF FF */ addi r0, r4, -1 +/* 80011954 0000E8B4 90 03 0A 10 */ stw r0, 0xa10(r3) +/* 80011958 0000E8B8 4E 80 00 20 */ blr + +.global IncrementPhazon__7CPlayerFv +IncrementPhazon__7CPlayerFv: +/* 8001195C 0000E8BC 80 03 0A 10 */ lwz r0, 0xa10(r3) +/* 80011960 0000E8C0 2C 00 00 00 */ cmpwi r0, 0 +/* 80011964 0000E8C4 40 82 00 0C */ bne lbl_80011970 +/* 80011968 0000E8C8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 8001196C 0000E8CC D0 03 0A 14 */ stfs f0, 0xa14(r3) +lbl_80011970: +/* 80011970 0000E8D0 80 83 0A 10 */ lwz r4, 0xa10(r3) +/* 80011974 0000E8D4 38 04 00 01 */ addi r0, r4, 1 +/* 80011978 0000E8D8 90 03 0A 10 */ stw r0, 0xa10(r3) +/* 8001197C 0000E8DC 4E 80 00 20 */ blr + +.global DoPreThink__7CPlayerfRC13CStateManager +DoPreThink__7CPlayerfRC13CStateManager: +/* 80011980 0000E8E0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80011984 0000E8E4 7C 08 02 A6 */ mflr r0 +/* 80011988 0000E8E8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001198C 0000E8EC DB E1 00 18 */ stfd f31, 0x18(r1) +/* 80011990 0000E8F0 FF E0 08 90 */ fmr f31, f1 +/* 80011994 0000E8F4 93 E1 00 14 */ stw r31, 0x14(r1) +/* 80011998 0000E8F8 7C 9F 23 78 */ mr r31, r4 +/* 8001199C 0000E8FC 93 C1 00 10 */ stw r30, 0x10(r1) +/* 800119A0 0000E900 7C 7E 1B 78 */ mr r30, r3 +/* 800119A4 0000E904 81 83 00 00 */ lwz r12, 0(r3) +/* 800119A8 0000E908 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 800119AC 0000E90C 7D 89 03 A6 */ mtctr r12 +/* 800119B0 0000E910 4E 80 04 21 */ bctrl +/* 800119B4 0000E914 A0 1E 0A 00 */ lhz r0, 0xa00(r30) +/* 800119B8 0000E918 7F E3 FB 78 */ mr r3, r31 +/* 800119BC 0000E91C 38 81 00 08 */ addi r4, r1, 8 +/* 800119C0 0000E920 B0 01 00 08 */ sth r0, 8(r1) +/* 800119C4 0000E924 48 03 AB B1 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 800119C8 0000E928 28 03 00 00 */ cmplwi r3, 0 +/* 800119CC 0000E92C 41 82 00 1C */ beq lbl_800119E8 +/* 800119D0 0000E930 81 83 00 00 */ lwz r12, 0(r3) +/* 800119D4 0000E934 FC 20 F8 90 */ fmr f1, f31 +/* 800119D8 0000E938 7F E4 FB 78 */ mr r4, r31 +/* 800119DC 0000E93C 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 800119E0 0000E940 7D 89 03 A6 */ mtctr r12 +/* 800119E4 0000E944 4E 80 04 21 */ bctrl +lbl_800119E8: +/* 800119E8 0000E948 80 01 00 24 */ lwz r0, 0x24(r1) +/* 800119EC 0000E94C CB E1 00 18 */ lfd f31, 0x18(r1) +/* 800119F0 0000E950 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 800119F4 0000E954 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 800119F8 0000E958 7C 08 03 A6 */ mtlr r0 +/* 800119FC 0000E95C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80011A00 0000E960 4E 80 00 20 */ blr + +.global DoThink__7CPlayerFfRC13CStateManager +DoThink__7CPlayerFfRC13CStateManager: +/* 80011A04 0000E964 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80011A08 0000E968 7C 08 02 A6 */ mflr r0 +/* 80011A0C 0000E96C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80011A10 0000E970 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 80011A14 0000E974 FF E0 08 90 */ fmr f31, f1 +/* 80011A18 0000E978 93 E1 00 14 */ stw r31, 0x14(r1) +/* 80011A1C 0000E97C 7C 9F 23 78 */ mr r31, r4 +/* 80011A20 0000E980 93 C1 00 10 */ stw r30, 0x10(r1) +/* 80011A24 0000E984 7C 7E 1B 78 */ mr r30, r3 +/* 80011A28 0000E988 81 83 00 00 */ lwz r12, 0(r3) +/* 80011A2C 0000E98C 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80011A30 0000E990 7D 89 03 A6 */ mtctr r12 +/* 80011A34 0000E994 4E 80 04 21 */ bctrl +/* 80011A38 0000E998 A0 1E 0A 00 */ lhz r0, 0xa00(r30) +/* 80011A3C 0000E99C 7F E3 FB 78 */ mr r3, r31 +/* 80011A40 0000E9A0 38 81 00 08 */ addi r4, r1, 8 +/* 80011A44 0000E9A4 B0 01 00 08 */ sth r0, 8(r1) +/* 80011A48 0000E9A8 48 03 AB 2D */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80011A4C 0000E9AC 28 03 00 00 */ cmplwi r3, 0 +/* 80011A50 0000E9B0 41 82 00 1C */ beq lbl_80011A6C +/* 80011A54 0000E9B4 81 83 00 00 */ lwz r12, 0(r3) +/* 80011A58 0000E9B8 FC 20 F8 90 */ fmr f1, f31 +/* 80011A5C 0000E9BC 7F E4 FB 78 */ mr r4, r31 +/* 80011A60 0000E9C0 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 80011A64 0000E9C4 7D 89 03 A6 */ mtctr r12 +/* 80011A68 0000E9C8 4E 80 04 21 */ bctrl +lbl_80011A6C: +/* 80011A6C 0000E9CC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80011A70 0000E9D0 CB E1 00 18 */ lfd f31, 0x18(r1) +/* 80011A74 0000E9D4 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 80011A78 0000E9D8 83 C1 00 10 */ lwz r30, 0x10(r1) +/* 80011A7C 0000E9DC 7C 08 03 A6 */ mtlr r0 +/* 80011A80 0000E9E0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80011A84 0000E9E4 4E 80 00 20 */ blr + +.global ResetControlDirectionInterpolation__7CPlayerFv +ResetControlDirectionInterpolation__7CPlayerFv: +/* 80011A88 0000E9E8 88 03 09 C6 */ lbz r0, 0x9c6(r3) +/* 80011A8C 0000E9EC 38 80 00 00 */ li r4, 0 +/* 80011A90 0000E9F0 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80011A94 0000E9F4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80011A98 0000E9F8 98 03 09 C6 */ stb r0, 0x9c6(r3) +/* 80011A9C 0000E9FC D0 03 09 F8 */ stfs f0, 0x9f8(r3) +/* 80011AA0 0000EA00 4E 80 00 20 */ blr + +.global SetControlDirectionInterpolation__7CPlayerFf +SetControlDirectionInterpolation__7CPlayerFf: +/* 80011AA4 0000EA04 88 03 09 C6 */ lbz r0, 0x9c6(r3) +/* 80011AA8 0000EA08 38 80 00 01 */ li r4, 1 +/* 80011AAC 0000EA0C 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80011AB0 0000EA10 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80011AB4 0000EA14 98 03 09 C6 */ stb r0, 0x9c6(r3) +/* 80011AB8 0000EA18 D0 03 09 F8 */ stfs f0, 0x9f8(r3) +/* 80011ABC 0000EA1C D0 23 09 FC */ stfs f1, 0x9fc(r3) +/* 80011AC0 0000EA20 4E 80 00 20 */ blr + +.global IsPlayerDeadEnough__7CPlayerCFv +IsPlayerDeadEnough__7CPlayerCFv: +/* 80011AC4 0000EA24 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80011AC8 0000EA28 2C 00 00 01 */ cmpwi r0, 1 +/* 80011ACC 0000EA2C 41 82 00 38 */ beq lbl_80011B04 +/* 80011AD0 0000EA30 40 80 00 10 */ bge lbl_80011AE0 +/* 80011AD4 0000EA34 2C 00 00 00 */ cmpwi r0, 0 +/* 80011AD8 0000EA38 40 80 00 14 */ bge lbl_80011AEC +/* 80011ADC 0000EA3C 48 00 00 48 */ b lbl_80011B24 +lbl_80011AE0: +/* 80011AE0 0000EA40 2C 00 00 04 */ cmpwi r0, 4 +/* 80011AE4 0000EA44 40 80 00 40 */ bge lbl_80011B24 +/* 80011AE8 0000EA48 48 00 00 34 */ b lbl_80011B1C +lbl_80011AEC: +/* 80011AEC 0000EA4C C0 23 09 F4 */ lfs f1, 0x9f4(r3) +/* 80011AF0 0000EA50 C0 02 81 38 */ lfs f0, lbl_805A9E58@sda21(r2) +/* 80011AF4 0000EA54 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80011AF8 0000EA58 7C 00 00 26 */ mfcr r0 +/* 80011AFC 0000EA5C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 80011B00 0000EA60 4E 80 00 20 */ blr +lbl_80011B04: +/* 80011B04 0000EA64 C0 23 09 F4 */ lfs f1, 0x9f4(r3) +/* 80011B08 0000EA68 C0 02 81 3C */ lfs f0, lbl_805A9E5C@sda21(r2) +/* 80011B0C 0000EA6C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80011B10 0000EA70 7C 00 00 26 */ mfcr r0 +/* 80011B14 0000EA74 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 80011B18 0000EA78 4E 80 00 20 */ blr +lbl_80011B1C: +/* 80011B1C 0000EA7C 38 60 00 00 */ li r3, 0 +/* 80011B20 0000EA80 4E 80 00 20 */ blr +lbl_80011B24: +/* 80011B24 0000EA84 38 60 00 00 */ li r3, 0 +/* 80011B28 0000EA88 4E 80 00 20 */ blr + +.global AsyncLoadSuit__7CPlayerFR13CStateManager +AsyncLoadSuit__7CPlayerFR13CStateManager: +/* 80011B2C 0000EA8C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80011B30 0000EA90 7C 08 02 A6 */ mflr r0 +/* 80011B34 0000EA94 90 01 00 14 */ stw r0, 0x14(r1) +/* 80011B38 0000EA98 80 63 04 90 */ lwz r3, 0x490(r3) +/* 80011B3C 0000EA9C 48 02 90 29 */ bl AsyncLoadSuit__10CPlayerGunFR13CStateManager +/* 80011B40 0000EAA0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80011B44 0000EAA4 7C 08 03 A6 */ mtlr r0 +/* 80011B48 0000EAA8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80011B4C 0000EAAC 4E 80 00 20 */ blr + +.global LoadAnimationTokens__7CPlayerFv +LoadAnimationTokens__7CPlayerFv: +/* 80011B50 0000EAB0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80011B54 0000EAB4 7C 08 02 A6 */ mflr r0 +/* 80011B58 0000EAB8 3C A0 80 3D */ lis r5, lbl_803CC4F8@ha +/* 80011B5C 0000EABC 90 01 00 44 */ stw r0, 0x44(r1) +/* 80011B60 0000EAC0 38 A5 C4 F8 */ addi r5, r5, lbl_803CC4F8@l +/* 80011B64 0000EAC4 38 A5 00 09 */ addi r5, r5, 9 +/* 80011B68 0000EAC8 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80011B6C 0000EACC 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80011B70 0000EAD0 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80011B74 0000EAD4 7C 7D 1B 78 */ mr r29, r3 +/* 80011B78 0000EAD8 38 61 00 10 */ addi r3, r1, 0x10 +/* 80011B7C 0000EADC 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80011B80 0000EAE0 81 84 00 00 */ lwz r12, 0(r4) +/* 80011B84 0000EAE4 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80011B88 0000EAE8 7D 89 03 A6 */ mtctr r12 +/* 80011B8C 0000EAEC 4E 80 04 21 */ bctrl +/* 80011B90 0000EAF0 3B C1 00 20 */ addi r30, r1, 0x20 +/* 80011B94 0000EAF4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80011B98 0000EAF8 7F C3 F3 78 */ mr r3, r30 +/* 80011B9C 0000EAFC 48 32 F3 0D */ bl __ct__6CTokenFRC6CToken +/* 80011BA0 0000EB00 7F C3 F3 78 */ mr r3, r30 +/* 80011BA4 0000EB04 48 32 F2 69 */ bl GetObj__6CTokenFv +/* 80011BA8 0000EB08 80 03 00 04 */ lwz r0, 4(r3) +/* 80011BAC 0000EB0C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80011BB0 0000EB10 38 80 FF FF */ li r4, -1 +/* 80011BB4 0000EB14 90 01 00 28 */ stw r0, 0x28(r1) +/* 80011BB8 0000EB18 48 32 F2 89 */ bl __dt__6CTokenFv +/* 80011BBC 0000EB1C 83 E1 00 28 */ lwz r31, 0x28(r1) +/* 80011BC0 0000EB20 38 7D 02 5C */ addi r3, r29, 0x25c +/* 80011BC4 0000EB24 80 9F 00 04 */ lwz r4, 4(r31) +/* 80011BC8 0000EB28 4B FF 6D 95 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +/* 80011BCC 0000EB2C 83 DF 00 0C */ lwz r30, 0xc(r31) +/* 80011BD0 0000EB30 48 00 00 C8 */ b lbl_80011C98 +lbl_80011BD4: +/* 80011BD4 0000EB34 80 7E 00 00 */ lwz r3, 0(r30) +/* 80011BD8 0000EB38 3C 03 BC B3 */ addis r0, r3, 0xbcb3 +/* 80011BDC 0000EB3C 28 00 44 4C */ cmplwi r0, 0x444c +/* 80011BE0 0000EB40 41 82 00 B4 */ beq lbl_80011C94 +/* 80011BE4 0000EB44 3C 03 BC AD */ addis r0, r3, 0xbcad +/* 80011BE8 0000EB48 28 00 4B 52 */ cmplwi r0, 0x4b52 +/* 80011BEC 0000EB4C 41 82 00 A8 */ beq lbl_80011C94 +/* 80011BF0 0000EB50 3C 03 AB A8 */ addis r0, r3, 0xaba8 +/* 80011BF4 0000EB54 28 00 54 52 */ cmplwi r0, 0x5452 +/* 80011BF8 0000EB58 41 82 00 9C */ beq lbl_80011C94 +/* 80011BFC 0000EB5C 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80011C00 0000EB60 7F C5 F3 78 */ mr r5, r30 +/* 80011C04 0000EB64 38 61 00 08 */ addi r3, r1, 8 +/* 80011C08 0000EB68 81 84 00 00 */ lwz r12, 0(r4) +/* 80011C0C 0000EB6C 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80011C10 0000EB70 7D 89 03 A6 */ mtctr r12 +/* 80011C14 0000EB74 4E 80 04 21 */ bctrl +/* 80011C18 0000EB78 38 61 00 18 */ addi r3, r1, 0x18 +/* 80011C1C 0000EB7C 38 81 00 08 */ addi r4, r1, 8 +/* 80011C20 0000EB80 48 32 F2 89 */ bl __ct__6CTokenFRC6CToken +/* 80011C24 0000EB84 38 61 00 08 */ addi r3, r1, 8 +/* 80011C28 0000EB88 38 80 FF FF */ li r4, -1 +/* 80011C2C 0000EB8C 48 32 F2 15 */ bl __dt__6CTokenFv +/* 80011C30 0000EB90 38 61 00 18 */ addi r3, r1, 0x18 +/* 80011C34 0000EB94 48 32 F1 51 */ bl Lock__6CTokenFv +/* 80011C38 0000EB98 80 1D 02 60 */ lwz r0, 0x260(r29) +/* 80011C3C 0000EB9C 80 BD 02 64 */ lwz r5, 0x264(r29) +/* 80011C40 0000EBA0 7C 00 28 00 */ cmpw r0, r5 +/* 80011C44 0000EBA4 41 80 00 1C */ blt lbl_80011C60 +/* 80011C48 0000EBA8 2C 05 00 00 */ cmpwi r5, 0 +/* 80011C4C 0000EBAC 38 7D 02 5C */ addi r3, r29, 0x25c +/* 80011C50 0000EBB0 38 80 00 04 */ li r4, 4 +/* 80011C54 0000EBB4 41 82 00 08 */ beq lbl_80011C5C +/* 80011C58 0000EBB8 54 A4 08 3C */ slwi r4, r5, 1 +lbl_80011C5C: +/* 80011C5C 0000EBBC 4B FF 6D 01 */ bl "reserve__Q24rstl42vector<6CToken,Q24rstl17rmemory_allocator>Fi" +lbl_80011C60: +/* 80011C60 0000EBC0 80 1D 02 60 */ lwz r0, 0x260(r29) +/* 80011C64 0000EBC4 80 7D 02 68 */ lwz r3, 0x268(r29) +/* 80011C68 0000EBC8 54 00 18 38 */ slwi r0, r0, 3 +/* 80011C6C 0000EBCC 7C 63 02 15 */ add. r3, r3, r0 +/* 80011C70 0000EBD0 41 82 00 0C */ beq lbl_80011C7C +/* 80011C74 0000EBD4 38 81 00 18 */ addi r4, r1, 0x18 +/* 80011C78 0000EBD8 48 32 F2 31 */ bl __ct__6CTokenFRC6CToken +lbl_80011C7C: +/* 80011C7C 0000EBDC 80 BD 02 60 */ lwz r5, 0x260(r29) +/* 80011C80 0000EBE0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80011C84 0000EBE4 38 80 FF FF */ li r4, -1 +/* 80011C88 0000EBE8 38 05 00 01 */ addi r0, r5, 1 +/* 80011C8C 0000EBEC 90 1D 02 60 */ stw r0, 0x260(r29) +/* 80011C90 0000EBF0 48 32 F1 B1 */ bl __dt__6CTokenFv +lbl_80011C94: +/* 80011C94 0000EBF4 3B DE 00 08 */ addi r30, r30, 8 +lbl_80011C98: +/* 80011C98 0000EBF8 80 1F 00 04 */ lwz r0, 4(r31) +/* 80011C9C 0000EBFC 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 80011CA0 0000EC00 54 00 18 38 */ slwi r0, r0, 3 +/* 80011CA4 0000EC04 7C 03 02 14 */ add r0, r3, r0 +/* 80011CA8 0000EC08 7C 1E 00 40 */ cmplw r30, r0 +/* 80011CAC 0000EC0C 40 82 FF 28 */ bne lbl_80011BD4 +/* 80011CB0 0000EC10 38 61 00 20 */ addi r3, r1, 0x20 +/* 80011CB4 0000EC14 38 80 00 00 */ li r4, 0 +/* 80011CB8 0000EC18 48 32 F1 89 */ bl __dt__6CTokenFv +/* 80011CBC 0000EC1C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80011CC0 0000EC20 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80011CC4 0000EC24 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80011CC8 0000EC28 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80011CCC 0000EC2C 7C 08 03 A6 */ mtlr r0 +/* 80011CD0 0000EC30 38 21 00 40 */ addi r1, r1, 0x40 + +.global sub_80011cd4 +sub_80011cd4: +/* 80011CD4 0000EC34 4E 80 00 20 */ blr + +.global HasTransitionBeamModel__7CPlayerCFv +HasTransitionBeamModel__7CPlayerCFv: +/* 80011CD8 0000EC38 80 83 07 F0 */ lwz r4, 0x7f0(r3) +/* 80011CDC 0000EC3C 38 60 00 00 */ li r3, 0 +/* 80011CE0 0000EC40 28 04 00 00 */ cmplwi r4, 0 +/* 80011CE4 0000EC44 4D 82 00 20 */ beqlr +/* 80011CE8 0000EC48 80 04 00 10 */ lwz r0, 0x10(r4) +/* 80011CEC 0000EC4C 28 00 00 00 */ cmplwi r0, 0 +/* 80011CF0 0000EC50 40 82 00 10 */ bne lbl_80011D00 +/* 80011CF4 0000EC54 88 04 00 28 */ lbz r0, 0x28(r4) +/* 80011CF8 0000EC58 28 00 00 00 */ cmplwi r0, 0 +/* 80011CFC 0000EC5C 4D 82 00 20 */ beqlr +lbl_80011D00: +/* 80011D00 0000EC60 38 60 00 01 */ li r3, 1 +/* 80011D04 0000EC64 4E 80 00 20 */ blr + +.global CanRenderUnsorted__7CPlayerCFRC13CStateManager +CanRenderUnsorted__7CPlayerCFRC13CStateManager: +/* 80011D08 0000EC68 38 60 00 00 */ li r3, 0 +/* 80011D0C 0000EC6C 4E 80 00 20 */ blr + +.global GetDamageVulnerability__7CPlayerCFRC9CVector3fRC9CVector3fRC11CDamageInfo +GetDamageVulnerability__7CPlayerCFRC9CVector3fRC9CVector3fRC11CDamageInfo: +/* 80011D10 0000EC70 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80011D14 0000EC74 2C 00 00 01 */ cmpwi r0, 1 +/* 80011D18 0000EC78 40 82 00 2C */ bne lbl_80011D44 +/* 80011D1C 0000EC7C C0 23 05 70 */ lfs f1, 0x570(r3) +/* 80011D20 0000EC80 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80011D24 0000EC84 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80011D28 0000EC88 40 81 00 1C */ ble lbl_80011D44 +/* 80011D2C 0000EC8C 88 06 00 18 */ lbz r0, 0x18(r6) +/* 80011D30 0000EC90 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80011D34 0000EC94 40 82 00 10 */ bne lbl_80011D44 +/* 80011D38 0000EC98 3C 60 80 57 */ lis r3, lbl_8056D718@ha +/* 80011D3C 0000EC9C 38 63 D7 18 */ addi r3, r3, lbl_8056D718@l +/* 80011D40 0000ECA0 4E 80 00 20 */ blr +lbl_80011D44: +/* 80011D44 0000ECA4 3C 60 80 57 */ lis r3, lbl_8056D578@ha +/* 80011D48 0000ECA8 38 63 D5 78 */ addi r3, r3, lbl_8056D578@l +/* 80011D4C 0000ECAC 4E 80 00 20 */ blr + +.global GetDamageVulnerability__7CPlayerCFv +GetDamageVulnerability__7CPlayerCFv: +/* 80011D50 0000ECB0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80011D54 0000ECB4 7C 08 02 A6 */ mflr r0 +/* 80011D58 0000ECB8 39 00 00 00 */ li r8, 0 +/* 80011D5C 0000ECBC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80011D60 0000ECC0 90 01 00 34 */ stw r0, 0x34(r1) +/* 80011D64 0000ECC4 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80011D68 0000ECC8 88 A1 00 0C */ lbz r5, 0xc(r1) +/* 80011D6C 0000ECCC 51 05 3E 30 */ rlwimi r5, r8, 7, 0x18, 0x18 +/* 80011D70 0000ECD0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80011D74 0000ECD4 54 A6 06 3E */ clrlwi r6, r5, 0x18 +/* 80011D78 0000ECD8 88 01 00 28 */ lbz r0, 0x28(r1) +/* 80011D7C 0000ECDC 51 06 36 72 */ rlwimi r6, r8, 6, 0x19, 0x19 +/* 80011D80 0000ECE0 51 00 3E 30 */ rlwimi r0, r8, 7, 0x18, 0x18 +/* 80011D84 0000ECE4 54 C7 06 3E */ clrlwi r7, r6, 0x18 +/* 80011D88 0000ECE8 91 01 00 10 */ stw r8, 0x10(r1) +/* 80011D8C 0000ECEC 51 07 2E B4 */ rlwimi r7, r8, 5, 0x1a, 0x1a +/* 80011D90 0000ECF0 98 A1 00 0C */ stb r5, 0xc(r1) +/* 80011D94 0000ECF4 3C A0 80 5A */ lis r5, lbl_805A66F4@ha +/* 80011D98 0000ECF8 38 A5 66 F4 */ addi r5, r5, lbl_805A66F4@l +/* 80011D9C 0000ECFC 98 C1 00 0C */ stb r6, 0xc(r1) +/* 80011DA0 0000ED00 38 C1 00 10 */ addi r6, r1, 0x10 +/* 80011DA4 0000ED04 98 E1 00 14 */ stb r7, 0x14(r1) +/* 80011DA8 0000ED08 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80011DAC 0000ED0C D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80011DB0 0000ED10 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80011DB4 0000ED14 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 80011DB8 0000ED18 98 01 00 28 */ stb r0, 0x28(r1) +/* 80011DBC 0000ED1C 81 83 00 00 */ lwz r12, 0(r3) +/* 80011DC0 0000ED20 91 01 00 08 */ stw r8, 8(r1) +/* 80011DC4 0000ED24 81 8C 00 3C */ lwz r12, 0x3c(r12) +/* 80011DC8 0000ED28 98 E1 00 0C */ stb r7, 0xc(r1) +/* 80011DCC 0000ED2C 7D 89 03 A6 */ mtctr r12 +/* 80011DD0 0000ED30 4E 80 04 21 */ bctrl +/* 80011DD4 0000ED34 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80011DD8 0000ED38 7C 08 03 A6 */ mtlr r0 +/* 80011DDC 0000ED3C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80011DE0 0000ED40 4E 80 00 20 */ blr + +.global GetHomingPosition__7CPlayerCFRC13CStateManagerf +GetHomingPosition__7CPlayerCFRC13CStateManagerf: +/* 80011DE4 0000ED44 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80011DE8 0000ED48 7C 08 02 A6 */ mflr r0 +/* 80011DEC 0000ED4C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80011DF0 0000ED50 90 01 00 54 */ stw r0, 0x54(r1) +/* 80011DF4 0000ED54 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80011DF8 0000ED58 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80011DFC 0000ED5C 7C 9F 23 78 */ mr r31, r4 +/* 80011E00 0000ED60 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80011E04 0000ED64 7C 7E 1B 78 */ mr r30, r3 +/* 80011E08 0000ED68 40 81 00 40 */ ble lbl_80011E48 +/* 80011E0C 0000ED6C 38 61 00 08 */ addi r3, r1, 8 +/* 80011E10 0000ED70 48 10 9E A1 */ bl PredictMotion__13CPhysicsActorCFf +/* 80011E14 0000ED74 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80011E18 0000ED78 C0 01 00 08 */ lfs f0, 8(r1) +/* 80011E1C 0000ED7C C0 9F 00 50 */ lfs f4, 0x50(r31) +/* 80011E20 0000ED80 C0 61 00 0C */ lfs f3, 0xc(r1) +/* 80011E24 0000ED84 EC 01 00 2A */ fadds f0, f1, f0 +/* 80011E28 0000ED88 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80011E2C 0000ED8C C0 21 00 10 */ lfs f1, 0x10(r1) +/* 80011E30 0000ED90 EC 64 18 2A */ fadds f3, f4, f3 +/* 80011E34 0000ED94 D0 1E 00 00 */ stfs f0, 0(r30) +/* 80011E38 0000ED98 EC 02 08 2A */ fadds f0, f2, f1 +/* 80011E3C 0000ED9C D0 7E 00 04 */ stfs f3, 4(r30) +/* 80011E40 0000EDA0 D0 1E 00 08 */ stfs f0, 8(r30) +/* 80011E44 0000EDA4 48 00 00 1C */ b lbl_80011E60 +lbl_80011E48: +/* 80011E48 0000EDA8 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80011E4C 0000EDAC C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80011E50 0000EDB0 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80011E54 0000EDB4 D0 1E 00 00 */ stfs f0, 0(r30) +/* 80011E58 0000EDB8 D0 3E 00 04 */ stfs f1, 4(r30) +/* 80011E5C 0000EDBC D0 5E 00 08 */ stfs f2, 8(r30) +lbl_80011E60: +/* 80011E60 0000EDC0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80011E64 0000EDC4 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80011E68 0000EDC8 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80011E6C 0000EDCC 7C 08 03 A6 */ mtlr r0 +/* 80011E70 0000EDD0 38 21 00 50 */ addi r1, r1, 0x50 +/* 80011E74 0000EDD4 4E 80 00 20 */ blr + +.global GetAimPosition__7CPlayerCFRC13CStateManagerf +GetAimPosition__7CPlayerCFRC13CStateManagerf: +/* 80011E78 0000EDD8 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80011E7C 0000EDDC 7C 08 02 A6 */ mflr r0 +/* 80011E80 0000EDE0 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80011E84 0000EDE4 DB E1 00 90 */ stfd f31, 0x90(r1) +/* 80011E88 0000EDE8 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 80011E8C 0000EDEC DB C1 00 80 */ stfd f30, 0x80(r1) +/* 80011E90 0000EDF0 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 80011E94 0000EDF4 DB A1 00 70 */ stfd f29, 0x70(r1) +/* 80011E98 0000EDF8 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 +/* 80011E9C 0000EDFC 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80011EA0 0000EE00 93 C1 00 68 */ stw r30, 0x68(r1) +/* 80011EA4 0000EE04 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80011EA8 0000EE08 7C 9F 23 78 */ mr r31, r4 +/* 80011EAC 0000EE0C C3 E4 00 40 */ lfs f31, 0x40(r4) +/* 80011EB0 0000EE10 7C 7E 1B 78 */ mr r30, r3 +/* 80011EB4 0000EE14 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80011EB8 0000EE18 C3 C4 00 50 */ lfs f30, 0x50(r4) +/* 80011EBC 0000EE1C C3 A4 00 60 */ lfs f29, 0x60(r4) +/* 80011EC0 0000EE20 40 81 00 7C */ ble lbl_80011F3C +/* 80011EC4 0000EE24 80 1F 03 04 */ lwz r0, 0x304(r31) +/* 80011EC8 0000EE28 2C 00 00 00 */ cmpwi r0, 0 +/* 80011ECC 0000EE2C 40 82 00 28 */ bne lbl_80011EF4 +/* 80011ED0 0000EE30 38 61 00 2C */ addi r3, r1, 0x2c +/* 80011ED4 0000EE34 48 10 9D DD */ bl PredictMotion__13CPhysicsActorCFf +/* 80011ED8 0000EE38 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 80011EDC 0000EE3C C0 21 00 30 */ lfs f1, 0x30(r1) +/* 80011EE0 0000EE40 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 80011EE4 0000EE44 EF FF 10 2A */ fadds f31, f31, f2 +/* 80011EE8 0000EE48 EF DE 08 2A */ fadds f30, f30, f1 +/* 80011EEC 0000EE4C EF BD 00 2A */ fadds f29, f29, f0 +/* 80011EF0 0000EE50 48 00 00 4C */ b lbl_80011F3C +lbl_80011EF4: +/* 80011EF4 0000EE54 C0 5F 01 38 */ lfs f2, 0x138(r31) +/* 80011EF8 0000EE58 38 61 00 14 */ addi r3, r1, 0x14 +/* 80011EFC 0000EE5C C0 7F 01 3C */ lfs f3, 0x13c(r31) +/* 80011F00 0000EE60 38 81 00 08 */ addi r4, r1, 8 +/* 80011F04 0000EE64 C0 1F 01 40 */ lfs f0, 0x140(r31) +/* 80011F08 0000EE68 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80011F0C 0000EE6C D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80011F10 0000EE70 38 DF 03 14 */ addi r6, r31, 0x314 +/* 80011F14 0000EE74 C0 5F 0A 04 */ lfs f2, 0xa04(r31) +/* 80011F18 0000EE78 D0 61 00 24 */ stfs f3, 0x24(r1) +/* 80011F1C 0000EE7C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80011F20 0000EE80 D3 E1 00 08 */ stfs f31, 8(r1) +/* 80011F24 0000EE84 D3 C1 00 0C */ stfs f30, 0xc(r1) +/* 80011F28 0000EE88 D3 A1 00 10 */ stfs f29, 0x10(r1) +/* 80011F2C 0000EE8C 48 12 AB 2D */ bl ProjectOrbitalPosition__18CSteeringBehaviorsFRC9CVector3fRC9CVector3fRC9CVector3ff +/* 80011F30 0000EE90 C3 E1 00 14 */ lfs f31, 0x14(r1) +/* 80011F34 0000EE94 C3 C1 00 18 */ lfs f30, 0x18(r1) +/* 80011F38 0000EE98 C3 A1 00 1C */ lfs f29, 0x1c(r1) +lbl_80011F3C: +/* 80011F3C 0000EE9C 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 80011F40 0000EEA0 2C 00 00 01 */ cmpwi r0, 1 +/* 80011F44 0000EEA4 40 82 00 14 */ bne lbl_80011F58 +/* 80011F48 0000EEA8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80011F4C 0000EEAC C0 03 02 7C */ lfs f0, 0x27c(r3) +/* 80011F50 0000EEB0 EC 1D 00 2A */ fadds f0, f29, f0 +/* 80011F54 0000EEB4 48 00 00 10 */ b lbl_80011F64 +lbl_80011F58: +/* 80011F58 0000EEB8 7F E3 FB 78 */ mr r3, r31 +/* 80011F5C 0000EEBC 48 27 2E 85 */ bl GetEyeHeight__7CPlayerCFv +/* 80011F60 0000EEC0 EC 1D 08 2A */ fadds f0, f29, f1 +lbl_80011F64: +/* 80011F64 0000EEC4 D3 FE 00 00 */ stfs f31, 0(r30) +/* 80011F68 0000EEC8 D3 DE 00 04 */ stfs f30, 4(r30) +/* 80011F6C 0000EECC D0 1E 00 08 */ stfs f0, 8(r30) +/* 80011F70 0000EED0 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 80011F74 0000EED4 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 80011F78 0000EED8 E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 80011F7C 0000EEDC CB C1 00 80 */ lfd f30, 0x80(r1) +/* 80011F80 0000EEE0 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 +/* 80011F84 0000EEE4 CB A1 00 70 */ lfd f29, 0x70(r1) +/* 80011F88 0000EEE8 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 80011F8C 0000EEEC 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80011F90 0000EEF0 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 80011F94 0000EEF4 7C 08 03 A6 */ mtlr r0 +/* 80011F98 0000EEF8 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80011F9C 0000EEFC 4E 80 00 20 */ blr + +.global ObjectInScanningRange__7CPlayerF9TUniqueIdRC13CStateManager +ObjectInScanningRange__7CPlayerF9TUniqueIdRC13CStateManager: +/* 80011FA0 0000EF00 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80011FA4 0000EF04 7C 08 02 A6 */ mflr r0 +/* 80011FA8 0000EF08 90 01 00 44 */ stw r0, 0x44(r1) +/* 80011FAC 0000EF0C DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80011FB0 0000EF10 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80011FB4 0000EF14 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80011FB8 0000EF18 A0 04 00 00 */ lhz r0, 0(r4) +/* 80011FBC 0000EF1C 7C 7F 1B 78 */ mr r31, r3 +/* 80011FC0 0000EF20 38 81 00 08 */ addi r4, r1, 8 +/* 80011FC4 0000EF24 7C A3 2B 78 */ mr r3, r5 +/* 80011FC8 0000EF28 B0 01 00 08 */ sth r0, 8(r1) +/* 80011FCC 0000EF2C 48 03 A5 D9 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80011FD0 0000EF30 7C 64 1B 78 */ mr r4, r3 +/* 80011FD4 0000EF34 38 61 00 0C */ addi r3, r1, 0xc +/* 80011FD8 0000EF38 48 09 DC B9 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80011FDC 0000EF3C 80 83 00 04 */ lwz r4, 4(r3) +/* 80011FE0 0000EF40 28 04 00 00 */ cmplwi r4, 0 +/* 80011FE4 0000EF44 41 82 00 64 */ beq lbl_80012048 +/* 80011FE8 0000EF48 C0 24 00 50 */ lfs f1, 0x50(r4) +/* 80011FEC 0000EF4C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80011FF0 0000EF50 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 80011FF4 0000EF54 C0 64 00 60 */ lfs f3, 0x60(r4) +/* 80011FF8 0000EF58 C0 5F 00 60 */ lfs f2, 0x60(r31) +/* 80011FFC 0000EF5C EC 81 00 28 */ fsubs f4, f1, f0 +/* 80012000 0000EF60 C0 24 00 40 */ lfs f1, 0x40(r4) +/* 80012004 0000EF64 C0 1F 00 40 */ lfs f0, 0x40(r31) +/* 80012008 0000EF68 EC 43 10 28 */ fsubs f2, f3, f2 +/* 8001200C 0000EF6C D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80012010 0000EF70 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80012014 0000EF74 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80012018 0000EF78 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 8001201C 0000EF7C 48 30 26 DD */ bl CanBeNormalized__9CVector3fCFv +/* 80012020 0000EF80 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80012024 0000EF84 41 82 00 24 */ beq lbl_80012048 +/* 80012028 0000EF88 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 8001202C 0000EF8C 38 61 00 14 */ addi r3, r1, 0x14 +/* 80012030 0000EF90 C3 E4 02 18 */ lfs f31, 0x218(r4) +/* 80012034 0000EF94 48 30 28 85 */ bl Magnitude__9CVector3fCFv +/* 80012038 0000EF98 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 8001203C 0000EF9C 40 80 00 0C */ bge lbl_80012048 +/* 80012040 0000EFA0 38 60 00 01 */ li r3, 1 +/* 80012044 0000EFA4 48 00 00 08 */ b lbl_8001204C +lbl_80012048: +/* 80012048 0000EFA8 38 60 00 00 */ li r3, 0 +lbl_8001204C: +/* 8001204C 0000EFAC E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80012050 0000EFB0 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80012054 0000EFB4 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80012058 0000EFB8 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 8001205C 0000EFBC 7C 08 03 A6 */ mtlr r0 +/* 80012060 0000EFC0 38 21 00 40 */ addi r1, r1, 0x40 +/* 80012064 0000EFC4 4E 80 00 20 */ blr + +.global FluidFXThink__7CPlayerFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager +FluidFXThink__7CPlayerFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager: +/* 80012068 0000EFC8 94 21 FE 40 */ stwu r1, -0x1c0(r1) +/* 8001206C 0000EFCC 7C 08 02 A6 */ mflr r0 +/* 80012070 0000EFD0 90 01 01 C4 */ stw r0, 0x1c4(r1) +/* 80012074 0000EFD4 DB E1 01 B0 */ stfd f31, 0x1b0(r1) +/* 80012078 0000EFD8 F3 E1 01 B8 */ psq_st f31, 440(r1), 0, qr0 +/* 8001207C 0000EFDC DB C1 01 A0 */ stfd f30, 0x1a0(r1) +/* 80012080 0000EFE0 F3 C1 01 A8 */ psq_st f30, 424(r1), 0, qr0 +/* 80012084 0000EFE4 DB A1 01 90 */ stfd f29, 0x190(r1) +/* 80012088 0000EFE8 F3 A1 01 98 */ psq_st f29, 408(r1), 0, qr0 +/* 8001208C 0000EFEC DB 81 01 80 */ stfd f28, 0x180(r1) +/* 80012090 0000EFF0 F3 81 01 88 */ psq_st f28, 392(r1), 0, qr0 +/* 80012094 0000EFF4 93 E1 01 7C */ stw r31, 0x17c(r1) +/* 80012098 0000EFF8 93 C1 01 78 */ stw r30, 0x178(r1) +/* 8001209C 0000EFFC 93 A1 01 74 */ stw r29, 0x174(r1) +/* 800120A0 0000F000 93 81 01 70 */ stw r28, 0x170(r1) +/* 800120A4 0000F004 7C 7C 1B 78 */ mr r28, r3 +/* 800120A8 0000F008 7C 9F 23 78 */ mr r31, r4 +/* 800120AC 0000F00C 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 800120B0 0000F010 7C BD 2B 78 */ mr r29, r5 +/* 800120B4 0000F014 7C DE 33 78 */ mr r30, r6 +/* 800120B8 0000F018 2C 00 00 01 */ cmpwi r0, 1 +/* 800120BC 0000F01C 40 82 00 28 */ bne lbl_800120E4 +/* 800120C0 0000F020 80 7C 07 68 */ lwz r3, 0x768(r28) +/* 800120C4 0000F024 48 0D D8 DD */ bl FluidFXThink__10CMorphBallFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager +/* 800120C8 0000F028 2C 1F 00 01 */ cmpwi r31, 1 +/* 800120CC 0000F02C 40 82 03 FC */ bne lbl_800124C8 +/* 800120D0 0000F030 88 1C 09 C5 */ lbz r0, 0x9c5(r28) +/* 800120D4 0000F034 38 60 00 01 */ li r3, 1 +/* 800120D8 0000F038 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 800120DC 0000F03C 98 1C 09 C5 */ stb r0, 0x9c5(r28) +/* 800120E0 0000F040 48 00 03 E8 */ b lbl_800124C8 +lbl_800120E4: +/* 800120E4 0000F044 2C 00 00 00 */ cmpwi r0, 0 +/* 800120E8 0000F048 41 82 00 94 */ beq lbl_8001217C +/* 800120EC 0000F04C A0 1C 00 08 */ lhz r0, 8(r28) +/* 800120F0 0000F050 38 81 00 3C */ addi r4, r1, 0x3c +/* 800120F4 0000F054 B0 01 00 3C */ sth r0, 0x3c(r1) +/* 800120F8 0000F058 B0 01 00 38 */ sth r0, 0x38(r1) +/* 800120FC 0000F05C 80 7E 08 7C */ lwz r3, 0x87c(r30) +/* 80012100 0000F060 48 11 D4 AD */ bl GetLastSplashDeltaTime__18CFluidPlaneManagerCF9TUniqueId +/* 80012104 0000F064 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) +/* 80012108 0000F068 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001210C 0000F06C 4C 41 13 82 */ cror 2, 1, 2 +/* 80012110 0000F070 40 82 03 B8 */ bne lbl_800124C8 +/* 80012114 0000F074 7F A4 EB 78 */ mr r4, r29 +/* 80012118 0000F078 38 61 01 58 */ addi r3, r1, 0x158 +/* 8001211C 0000F07C 48 06 45 B1 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 80012120 0000F080 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 80012124 0000F084 7F E0 00 34 */ cntlzw r0, r31 +/* 80012128 0000F088 C0 1C 00 50 */ lfs f0, 0x50(r28) +/* 8001212C 0000F08C 7F C5 F3 78 */ mr r5, r30 +/* 80012130 0000F090 C0 9C 00 40 */ lfs f4, 0x40(r28) +/* 80012134 0000F094 7F A6 EB 78 */ mr r6, r29 +/* 80012138 0000F098 C0 61 01 6C */ lfs f3, 0x16c(r1) +/* 8001213C 0000F09C 38 81 00 34 */ addi r4, r1, 0x34 +/* 80012140 0000F0A0 D0 81 01 04 */ stfs f4, 0x104(r1) +/* 80012144 0000F0A4 38 E1 01 04 */ addi r7, r1, 0x104 +/* 80012148 0000F0A8 C0 22 81 40 */ lfs f1, lbl_805A9E60@sda21(r2) +/* 8001214C 0000F0AC 54 08 D9 7E */ srwi r8, r0, 5 +/* 80012150 0000F0B0 D0 01 01 08 */ stfs f0, 0x108(r1) +/* 80012154 0000F0B4 D0 61 01 0C */ stfs f3, 0x10c(r1) +/* 80012158 0000F0B8 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8001215C 0000F0BC D0 81 00 C8 */ stfs f4, 0xc8(r1) +/* 80012160 0000F0C0 B0 01 00 34 */ sth r0, 0x34(r1) +/* 80012164 0000F0C4 D0 01 00 CC */ stfs f0, 0xcc(r1) +/* 80012168 0000F0C8 80 7E 08 7C */ lwz r3, 0x87c(r30) +/* 8001216C 0000F0CC D0 41 00 D0 */ stfs f2, 0xd0(r1) +/* 80012170 0000F0D0 B0 01 00 30 */ sth r0, 0x30(r1) +/* 80012174 0000F0D4 48 11 D1 45 */ bl CreateSplash__18CFluidPlaneManagerF9TUniqueIdR13CStateManagerRC12CScriptWaterRC9CVector3ffb +/* 80012178 0000F0D8 48 00 03 50 */ b lbl_800124C8 +lbl_8001217C: +/* 8001217C 0000F0DC A0 1C 00 08 */ lhz r0, 8(r28) +/* 80012180 0000F0E0 38 81 00 2C */ addi r4, r1, 0x2c +/* 80012184 0000F0E4 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80012188 0000F0E8 B0 01 00 28 */ sth r0, 0x28(r1) +/* 8001218C 0000F0EC 80 7E 08 7C */ lwz r3, 0x87c(r30) +/* 80012190 0000F0F0 48 11 D4 1D */ bl GetLastSplashDeltaTime__18CFluidPlaneManagerCF9TUniqueId +/* 80012194 0000F0F4 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) +/* 80012198 0000F0F8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001219C 0000F0FC 4C 41 13 82 */ cror 2, 1, 2 +/* 800121A0 0000F100 40 82 03 28 */ bne lbl_800124C8 +/* 800121A4 0000F104 C0 1C 05 0C */ lfs f0, 0x50c(r28) +/* 800121A8 0000F108 38 61 00 F8 */ addi r3, r1, 0xf8 +/* 800121AC 0000F10C D0 01 00 F8 */ stfs f0, 0xf8(r1) +/* 800121B0 0000F110 C0 1C 05 10 */ lfs f0, 0x510(r28) +/* 800121B4 0000F114 D0 01 00 FC */ stfs f0, 0xfc(r1) +/* 800121B8 0000F118 C0 1C 05 14 */ lfs f0, 0x514(r28) +/* 800121BC 0000F11C D0 01 01 00 */ stfs f0, 0x100(r1) +/* 800121C0 0000F120 48 30 25 39 */ bl CanBeNormalized__9CVector3fCFv +/* 800121C4 0000F124 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800121C8 0000F128 41 82 00 3C */ beq lbl_80012204 +/* 800121CC 0000F12C 38 61 00 BC */ addi r3, r1, 0xbc +/* 800121D0 0000F130 38 81 00 F8 */ addi r4, r1, 0xf8 +/* 800121D4 0000F134 48 30 26 7D */ bl AsNormalized__9CVector3fCFv +/* 800121D8 0000F138 C0 61 00 C4 */ lfs f3, 0xc4(r1) +/* 800121DC 0000F13C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800121E0 0000F140 C0 21 00 BC */ lfs f1, 0xbc(r1) +/* 800121E4 0000F144 C0 42 81 44 */ lfs f2, lbl_805A9E64@sda21(r2) +/* 800121E8 0000F148 EC 63 00 32 */ fmuls f3, f3, f0 +/* 800121EC 0000F14C C0 01 00 C0 */ lfs f0, 0xc0(r1) +/* 800121F0 0000F150 EC 21 00 B2 */ fmuls f1, f1, f2 +/* 800121F4 0000F154 EC 00 00 B2 */ fmuls f0, f0, f2 +/* 800121F8 0000F158 D0 61 01 00 */ stfs f3, 0x100(r1) +/* 800121FC 0000F15C D0 21 00 F8 */ stfs f1, 0xf8(r1) +/* 80012200 0000F160 D0 01 00 FC */ stfs f0, 0xfc(r1) +lbl_80012204: +/* 80012204 0000F164 2C 1F 00 01 */ cmpwi r31, 1 +/* 80012208 0000F168 41 82 01 A8 */ beq lbl_800123B0 +/* 8001220C 0000F16C 40 80 00 10 */ bge lbl_8001221C +/* 80012210 0000F170 2C 1F 00 00 */ cmpwi r31, 0 +/* 80012214 0000F174 40 80 00 14 */ bge lbl_80012228 +/* 80012218 0000F178 48 00 02 B0 */ b lbl_800124C8 +lbl_8001221C: +/* 8001221C 0000F17C 2C 1F 00 03 */ cmpwi r31, 3 +/* 80012220 0000F180 40 80 02 A8 */ bge lbl_800124C8 +/* 80012224 0000F184 48 00 02 34 */ b lbl_80012458 +lbl_80012228: +/* 80012228 0000F188 C0 3C 04 FC */ lfs f1, 0x4fc(r28) +/* 8001222C 0000F18C 3B E0 00 01 */ li r31, 1 +/* 80012230 0000F190 C0 02 81 48 */ lfs f0, lbl_805A9E68@sda21(r2) +/* 80012234 0000F194 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80012238 0000F198 40 81 00 A8 */ ble lbl_800122E0 +/* 8001223C 0000F19C C0 7C 00 58 */ lfs f3, 0x58(r28) +/* 80012240 0000F1A0 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80012244 0000F1A4 C0 5C 00 48 */ lfs f2, 0x48(r28) +/* 80012248 0000F1A8 38 81 00 A4 */ addi r4, r1, 0xa4 +/* 8001224C 0000F1AC C0 3C 00 38 */ lfs f1, 0x38(r28) +/* 80012250 0000F1B0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80012254 0000F1B4 D0 21 00 98 */ stfs f1, 0x98(r1) +/* 80012258 0000F1B8 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 8001225C 0000F1BC D0 61 00 A0 */ stfs f3, 0xa0(r1) +/* 80012260 0000F1C0 D0 21 00 A4 */ stfs f1, 0xa4(r1) +/* 80012264 0000F1C4 D0 41 00 A8 */ stfs f2, 0xa8(r1) +/* 80012268 0000F1C8 D0 01 00 AC */ stfs f0, 0xac(r1) +/* 8001226C 0000F1CC 48 30 25 E5 */ bl AsNormalized__9CVector3fCFv +/* 80012270 0000F1D0 C3 C1 00 B0 */ lfs f30, 0xb0(r1) +/* 80012274 0000F1D4 7F 84 E3 78 */ mr r4, r28 +/* 80012278 0000F1D8 C3 A1 00 B4 */ lfs f29, 0xb4(r1) +/* 8001227C 0000F1DC 38 61 00 68 */ addi r3, r1, 0x68 +/* 80012280 0000F1E0 C3 81 00 B8 */ lfs f28, 0xb8(r1) +/* 80012284 0000F1E4 48 27 62 6D */ bl GetDampedClampedVelocityWR__7CPlayerCFv +/* 80012288 0000F1E8 C3 E1 00 6C */ lfs f31, 0x6c(r1) +/* 8001228C 0000F1EC 7F 84 E3 78 */ mr r4, r28 +/* 80012290 0000F1F0 38 61 00 74 */ addi r3, r1, 0x74 +/* 80012294 0000F1F4 48 27 62 5D */ bl GetDampedClampedVelocityWR__7CPlayerCFv +/* 80012298 0000F1F8 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 8001229C 0000F1FC 38 61 00 8C */ addi r3, r1, 0x8c +/* 800122A0 0000F200 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800122A4 0000F204 38 81 00 80 */ addi r4, r1, 0x80 +/* 800122A8 0000F208 D0 21 00 80 */ stfs f1, 0x80(r1) +/* 800122AC 0000F20C D3 E1 00 84 */ stfs f31, 0x84(r1) +/* 800122B0 0000F210 D0 01 00 88 */ stfs f0, 0x88(r1) +/* 800122B4 0000F214 48 30 25 9D */ bl AsNormalized__9CVector3fCFv +/* 800122B8 0000F218 C0 01 00 90 */ lfs f0, 0x90(r1) +/* 800122BC 0000F21C C0 41 00 8C */ lfs f2, 0x8c(r1) +/* 800122C0 0000F220 EC 3D 00 32 */ fmuls f1, f29, f0 +/* 800122C4 0000F224 C0 61 00 94 */ lfs f3, 0x94(r1) +/* 800122C8 0000F228 C0 02 81 4C */ lfs f0, lbl_805A9E6C@sda21(r2) +/* 800122CC 0000F22C EC 3E 08 BA */ fmadds f1, f30, f2, f1 +/* 800122D0 0000F230 EC 3C 08 FA */ fmadds f1, f28, f3, f1 +/* 800122D4 0000F234 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800122D8 0000F238 40 81 00 08 */ ble lbl_800122E0 +/* 800122DC 0000F23C 3B E0 00 00 */ li r31, 0 +lbl_800122E0: +/* 800122E0 0000F240 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 800122E4 0000F244 41 82 01 E4 */ beq lbl_800124C8 +/* 800122E8 0000F248 7F A4 EB 78 */ mr r4, r29 +/* 800122EC 0000F24C 38 61 01 40 */ addi r3, r1, 0x140 +/* 800122F0 0000F250 48 06 43 DD */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 800122F4 0000F254 C0 7C 00 50 */ lfs f3, 0x50(r28) +/* 800122F8 0000F258 7F C5 F3 78 */ mr r5, r30 +/* 800122FC 0000F25C C0 DC 00 40 */ lfs f6, 0x40(r28) +/* 80012300 0000F260 7F A6 EB 78 */ mr r6, r29 +/* 80012304 0000F264 C0 21 00 F8 */ lfs f1, 0xf8(r1) +/* 80012308 0000F268 38 81 00 24 */ addi r4, r1, 0x24 +/* 8001230C 0000F26C C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 80012310 0000F270 38 E1 00 EC */ addi r7, r1, 0xec +/* 80012314 0000F274 C0 9C 00 60 */ lfs f4, 0x60(r28) +/* 80012318 0000F278 EC 46 08 2A */ fadds f2, f6, f1 +/* 8001231C 0000F27C EC 03 00 2A */ fadds f0, f3, f0 +/* 80012320 0000F280 C0 A1 01 54 */ lfs f5, 0x154(r1) +/* 80012324 0000F284 D0 C1 00 5C */ stfs f6, 0x5c(r1) +/* 80012328 0000F288 39 00 00 01 */ li r8, 1 +/* 8001232C 0000F28C C0 22 81 50 */ lfs f1, lbl_805A9E70@sda21(r2) +/* 80012330 0000F290 D0 41 00 EC */ stfs f2, 0xec(r1) +/* 80012334 0000F294 D0 01 00 F0 */ stfs f0, 0xf0(r1) +/* 80012338 0000F298 D0 A1 00 F4 */ stfs f5, 0xf4(r1) +/* 8001233C 0000F29C A0 1C 00 08 */ lhz r0, 8(r28) +/* 80012340 0000F2A0 D0 61 00 60 */ stfs f3, 0x60(r1) +/* 80012344 0000F2A4 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80012348 0000F2A8 D0 81 00 64 */ stfs f4, 0x64(r1) +/* 8001234C 0000F2AC 80 7E 08 7C */ lwz r3, 0x87c(r30) +/* 80012350 0000F2B0 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80012354 0000F2B4 48 11 CF 65 */ bl CreateSplash__18CFluidPlaneManagerF9TUniqueIdR13CStateManagerRC12CScriptWaterRC9CVector3ffb +/* 80012358 0000F2B8 80 7D 01 B4 */ lwz r3, 0x1b4(r29) +/* 8001235C 0000F2BC 80 03 00 44 */ lwz r0, 0x44(r3) +/* 80012360 0000F2C0 2C 00 00 00 */ cmpwi r0, 0 +/* 80012364 0000F2C4 40 82 01 64 */ bne lbl_800124C8 +/* 80012368 0000F2C8 80 7E 08 4C */ lwz r3, 0x84c(r30) +/* 8001236C 0000F2CC 38 63 01 38 */ addi r3, r3, 0x138 +/* 80012370 0000F2D0 48 30 25 49 */ bl Magnitude__9CVector3fCFv +/* 80012374 0000F2D4 C0 42 81 54 */ lfs f2, lbl_805A9E74@sda21(r2) +/* 80012378 0000F2D8 C0 0D 80 FC */ lfs f0, lbl_805A6CBC@sda21(r13) +/* 8001237C 0000F2DC EC 21 10 24 */ fdivs f1, f1, f2 +/* 80012380 0000F2E0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80012384 0000F2E4 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 80012388 0000F2E8 40 80 00 0C */ bge lbl_80012394 +/* 8001238C 0000F2EC 38 61 00 40 */ addi r3, r1, 0x40 +/* 80012390 0000F2F0 48 00 00 08 */ b lbl_80012398 +lbl_80012394: +/* 80012394 0000F2F4 38 6D 80 FC */ addi r3, r13, lbl_805A6CBC@sda21 +lbl_80012398: +/* 80012398 0000F2F8 C0 22 81 54 */ lfs f1, lbl_805A9E74@sda21(r2) +/* 8001239C 0000F2FC C0 03 00 00 */ lfs f0, 0(r3) +/* 800123A0 0000F300 80 7E 08 80 */ lwz r3, 0x880(r30) +/* 800123A4 0000F304 EC 01 00 32 */ fmuls f0, f1, f0 +/* 800123A8 0000F308 D0 03 0B 54 */ stfs f0, 0xb54(r3) +/* 800123AC 0000F30C 48 00 01 1C */ b lbl_800124C8 +lbl_800123B0: +/* 800123B0 0000F310 38 7C 01 38 */ addi r3, r28, 0x138 +/* 800123B4 0000F314 48 30 25 05 */ bl Magnitude__9CVector3fCFv +/* 800123B8 0000F318 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 800123BC 0000F31C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800123C0 0000F320 40 81 01 08 */ ble lbl_800124C8 +/* 800123C4 0000F324 A0 1C 00 08 */ lhz r0, 8(r28) +/* 800123C8 0000F328 38 81 00 1C */ addi r4, r1, 0x1c +/* 800123CC 0000F32C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 800123D0 0000F330 B0 01 00 18 */ sth r0, 0x18(r1) +/* 800123D4 0000F334 80 7E 08 7C */ lwz r3, 0x87c(r30) +/* 800123D8 0000F338 48 11 D1 A9 */ bl GetLastRippleDeltaTime__18CFluidPlaneManagerCF9TUniqueId +/* 800123DC 0000F33C C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) +/* 800123E0 0000F340 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800123E4 0000F344 4C 41 13 82 */ cror 2, 1, 2 +/* 800123E8 0000F348 40 82 00 E0 */ bne lbl_800124C8 +/* 800123EC 0000F34C 7F A4 EB 78 */ mr r4, r29 +/* 800123F0 0000F350 38 61 01 28 */ addi r3, r1, 0x128 +/* 800123F4 0000F354 48 06 42 D9 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 800123F8 0000F358 C0 5C 00 60 */ lfs f2, 0x60(r28) +/* 800123FC 0000F35C 7F A6 EB 78 */ mr r6, r29 +/* 80012400 0000F360 C0 1C 00 50 */ lfs f0, 0x50(r28) +/* 80012404 0000F364 7F C7 F3 78 */ mr r7, r30 +/* 80012408 0000F368 C0 9C 00 40 */ lfs f4, 0x40(r28) +/* 8001240C 0000F36C 38 81 00 14 */ addi r4, r1, 0x14 +/* 80012410 0000F370 C0 61 01 3C */ lfs f3, 0x13c(r1) +/* 80012414 0000F374 38 A1 00 E0 */ addi r5, r1, 0xe0 +/* 80012418 0000F378 D0 81 00 E0 */ stfs f4, 0xe0(r1) +/* 8001241C 0000F37C C0 22 96 D0 */ lfs f1, lbl_805AB3F0@sda21(r2) +/* 80012420 0000F380 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 80012424 0000F384 D0 61 00 E8 */ stfs f3, 0xe8(r1) +/* 80012428 0000F388 A0 1C 00 08 */ lhz r0, 8(r28) +/* 8001242C 0000F38C D0 81 00 50 */ stfs f4, 0x50(r1) +/* 80012430 0000F390 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80012434 0000F394 80 7D 01 B4 */ lwz r3, 0x1b4(r29) +/* 80012438 0000F398 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 8001243C 0000F39C 81 83 00 00 */ lwz r12, 0(r3) +/* 80012440 0000F3A0 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 80012444 0000F3A4 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80012448 0000F3A8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8001244C 0000F3AC 7D 89 03 A6 */ mtctr r12 +/* 80012450 0000F3B0 4E 80 04 21 */ bctrl +/* 80012454 0000F3B4 48 00 00 74 */ b lbl_800124C8 +lbl_80012458: +/* 80012458 0000F3B8 7F A4 EB 78 */ mr r4, r29 +/* 8001245C 0000F3BC 38 61 01 10 */ addi r3, r1, 0x110 +/* 80012460 0000F3C0 48 06 42 6D */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 80012464 0000F3C4 C0 7C 00 50 */ lfs f3, 0x50(r28) +/* 80012468 0000F3C8 7F C5 F3 78 */ mr r5, r30 +/* 8001246C 0000F3CC C0 DC 00 40 */ lfs f6, 0x40(r28) +/* 80012470 0000F3D0 7F A6 EB 78 */ mr r6, r29 +/* 80012474 0000F3D4 C0 21 00 F8 */ lfs f1, 0xf8(r1) +/* 80012478 0000F3D8 38 81 00 0C */ addi r4, r1, 0xc +/* 8001247C 0000F3DC C0 01 00 FC */ lfs f0, 0xfc(r1) +/* 80012480 0000F3E0 38 E1 00 D4 */ addi r7, r1, 0xd4 +/* 80012484 0000F3E4 C0 9C 00 60 */ lfs f4, 0x60(r28) +/* 80012488 0000F3E8 EC 46 08 2A */ fadds f2, f6, f1 +/* 8001248C 0000F3EC EC 03 00 2A */ fadds f0, f3, f0 +/* 80012490 0000F3F0 C0 A1 01 24 */ lfs f5, 0x124(r1) +/* 80012494 0000F3F4 D0 C1 00 44 */ stfs f6, 0x44(r1) +/* 80012498 0000F3F8 39 00 00 01 */ li r8, 1 +/* 8001249C 0000F3FC C0 22 81 58 */ lfs f1, lbl_805A9E78@sda21(r2) +/* 800124A0 0000F400 D0 41 00 D4 */ stfs f2, 0xd4(r1) +/* 800124A4 0000F404 D0 01 00 D8 */ stfs f0, 0xd8(r1) +/* 800124A8 0000F408 D0 A1 00 DC */ stfs f5, 0xdc(r1) +/* 800124AC 0000F40C A0 1C 00 08 */ lhz r0, 8(r28) +/* 800124B0 0000F410 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 800124B4 0000F414 B0 01 00 0C */ sth r0, 0xc(r1) +/* 800124B8 0000F418 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 800124BC 0000F41C 80 7E 08 7C */ lwz r3, 0x87c(r30) +/* 800124C0 0000F420 B0 01 00 08 */ sth r0, 8(r1) +/* 800124C4 0000F424 48 11 CD F5 */ bl CreateSplash__18CFluidPlaneManagerF9TUniqueIdR13CStateManagerRC12CScriptWaterRC9CVector3ffb +lbl_800124C8: +/* 800124C8 0000F428 E3 E1 01 B8 */ psq_l f31, 440(r1), 0, qr0 +/* 800124CC 0000F42C CB E1 01 B0 */ lfd f31, 0x1b0(r1) +/* 800124D0 0000F430 E3 C1 01 A8 */ psq_l f30, 424(r1), 0, qr0 +/* 800124D4 0000F434 CB C1 01 A0 */ lfd f30, 0x1a0(r1) +/* 800124D8 0000F438 E3 A1 01 98 */ psq_l f29, 408(r1), 0, qr0 +/* 800124DC 0000F43C CB A1 01 90 */ lfd f29, 0x190(r1) +/* 800124E0 0000F440 E3 81 01 88 */ psq_l f28, 392(r1), 0, qr0 +/* 800124E4 0000F444 CB 81 01 80 */ lfd f28, 0x180(r1) +/* 800124E8 0000F448 83 E1 01 7C */ lwz r31, 0x17c(r1) +/* 800124EC 0000F44C 83 C1 01 78 */ lwz r30, 0x178(r1) +/* 800124F0 0000F450 83 A1 01 74 */ lwz r29, 0x174(r1) +/* 800124F4 0000F454 80 01 01 C4 */ lwz r0, 0x1c4(r1) +/* 800124F8 0000F458 83 81 01 70 */ lwz r28, 0x170(r1) +/* 800124FC 0000F45C 7C 08 03 A6 */ mtlr r0 +/* 80012500 0000F460 38 21 01 C0 */ addi r1, r1, 0x1c0 + +.global sub_80012504 +sub_80012504: +/* 80012504 0000F464 4E 80 00 20 */ blr + +.global GetDamageLocationWR__7CPlayerCFv +GetDamageLocationWR__7CPlayerCFv: +/* 80012508 0000F468 C0 04 05 64 */ lfs f0, 0x564(r4) +/* 8001250C 0000F46C D0 03 00 00 */ stfs f0, 0(r3) +/* 80012510 0000F470 C0 04 05 68 */ lfs f0, 0x568(r4) +/* 80012514 0000F474 D0 03 00 04 */ stfs f0, 4(r3) +/* 80012518 0000F478 C0 04 05 6C */ lfs f0, 0x56c(r4) +/* 8001251C 0000F47C D0 03 00 08 */ stfs f0, 8(r3) +/* 80012520 0000F480 4E 80 00 20 */ blr + +.global GetPrevDamageAmount__7CPlayerCFv +GetPrevDamageAmount__7CPlayerCFv: +/* 80012524 0000F484 C0 23 05 60 */ lfs f1, 0x560(r3) +/* 80012528 0000F488 4E 80 00 20 */ blr + +.global GetDamageAmount__7CPlayerCFv +GetDamageAmount__7CPlayerCFv: +/* 8001252C 0000F48C C0 23 05 5C */ lfs f1, 0x55c(r3) +/* 80012530 0000F490 4E 80 00 20 */ blr + +.global WasDamaged__7CPlayerCFv +WasDamaged__7CPlayerCFv: +/* 80012534 0000F494 88 63 05 58 */ lbz r3, 0x558(r3) +/* 80012538 0000F498 4E 80 00 20 */ blr + +.global TakeDamage__7CPlayerFbRC9CVector3ff11EWeaponTypeR13CStateManager +TakeDamage__7CPlayerFbRC9CVector3ff11EWeaponTypeR13CStateManager: +/* 8001253C 0000F49C 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80012540 0000F4A0 7C 08 02 A6 */ mflr r0 +/* 80012544 0000F4A4 90 01 00 54 */ stw r0, 0x54(r1) +/* 80012548 0000F4A8 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 8001254C 0000F4AC F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80012550 0000F4B0 BF 21 00 24 */ stmw r25, 0x24(r1) +/* 80012554 0000F4B4 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 80012558 0000F4B8 FF E0 08 90 */ fmr f31, f1 +/* 8001255C 0000F4BC 7C 7A 1B 78 */ mr r26, r3 +/* 80012560 0000F4C0 7C BB 2B 78 */ mr r27, r5 +/* 80012564 0000F4C4 7C FC 3B 78 */ mr r28, r7 +/* 80012568 0000F4C8 41 82 03 34 */ beq lbl_8001289C +/* 8001256C 0000F4CC C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80012570 0000F4D0 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80012574 0000F4D4 4C 41 13 82 */ cror 2, 1, 2 +/* 80012578 0000F4D8 40 82 03 08 */ bne lbl_80012880 +/* 8001257C 0000F4DC C0 02 81 68 */ lfs f0, lbl_805A9E88@sda21(r2) +/* 80012580 0000F4E0 2C 06 00 09 */ cmpwi r6, 9 +/* 80012584 0000F4E4 38 00 00 00 */ li r0, 0 +/* 80012588 0000F4E8 D0 1A 05 70 */ stfs f0, 0x570(r26) +/* 8001258C 0000F4EC D3 FA 05 5C */ stfs f31, 0x55c(r26) +/* 80012590 0000F4F0 40 82 00 14 */ bne lbl_800125A4 +/* 80012594 0000F4F4 C0 02 81 6C */ lfs f0, lbl_805A9E8C@sda21(r2) +/* 80012598 0000F4F8 FC 00 F8 00 */ fcmpu cr0, f0, f31 +/* 8001259C 0000F4FC 40 82 00 08 */ bne lbl_800125A4 +/* 800125A0 0000F500 38 00 00 01 */ li r0, 1 +lbl_800125A4: +/* 800125A4 0000F504 54 00 06 3F */ clrlwi. r0, r0, 0x18 +/* 800125A8 0000F508 41 82 00 0C */ beq lbl_800125B4 +/* 800125AC 0000F50C C0 02 81 54 */ lfs f0, lbl_805A9E74@sda21(r2) +/* 800125B0 0000F510 48 00 00 08 */ b lbl_800125B8 +lbl_800125B4: +/* 800125B4 0000F514 FC 00 F8 90 */ fmr f0, f31 +lbl_800125B8: +/* 800125B8 0000F518 D0 1A 05 60 */ stfs f0, 0x560(r26) +/* 800125BC 0000F51C 38 06 FF F8 */ addi r0, r6, -8 +/* 800125C0 0000F520 28 00 00 06 */ cmplwi r0, 6 +/* 800125C4 0000F524 38 60 00 01 */ li r3, 1 +/* 800125C8 0000F528 C0 1B 00 00 */ lfs f0, 0(r27) +/* 800125CC 0000F52C 3B E0 00 00 */ li r31, 0 +/* 800125D0 0000F530 3B C0 00 00 */ li r30, 0 +/* 800125D4 0000F534 38 80 00 00 */ li r4, 0 +/* 800125D8 0000F538 D0 1A 05 64 */ stfs f0, 0x564(r26) +/* 800125DC 0000F53C 3B A0 00 00 */ li r29, 0 +/* 800125E0 0000F540 C0 1B 00 04 */ lfs f0, 4(r27) +/* 800125E4 0000F544 D0 1A 05 68 */ stfs f0, 0x568(r26) +/* 800125E8 0000F548 C0 1B 00 08 */ lfs f0, 8(r27) +/* 800125EC 0000F54C D0 1A 05 6C */ stfs f0, 0x56c(r26) +/* 800125F0 0000F550 98 7A 05 58 */ stb r3, 0x558(r26) +/* 800125F4 0000F554 41 81 00 40 */ bgt lbl_80012634 +/* 800125F8 0000F558 3C 60 80 3E */ lis r3, lbl_803D9770@ha +/* 800125FC 0000F55C 54 00 10 3A */ slwi r0, r0, 2 +/* 80012600 0000F560 38 63 97 70 */ addi r3, r3, lbl_803D9770@l +/* 80012604 0000F564 7C 03 00 2E */ lwzx r0, r3, r0 +/* 80012608 0000F568 7C 09 03 A6 */ mtctr r0 +/* 8001260C 0000F56C 4E 80 04 20 */ bctr +/* 80012610 0000F570 3B C0 0C 2A */ li r30, 0xc2a +/* 80012614 0000F574 38 80 06 75 */ li r4, 0x675 +/* 80012618 0000F578 48 00 00 88 */ b lbl_800126A0 +/* 8001261C 0000F57C 3B C0 05 CE */ li r30, 0x5ce +/* 80012620 0000F580 38 80 06 61 */ li r4, 0x661 +/* 80012624 0000F584 48 00 00 7C */ b lbl_800126A0 +/* 80012628 0000F588 3B C0 02 91 */ li r30, 0x291 +/* 8001262C 0000F58C 38 80 06 78 */ li r4, 0x678 +/* 80012630 0000F590 48 00 00 70 */ b lbl_800126A0 +lbl_80012634: +/* 80012634 0000F594 80 1A 02 F8 */ lwz r0, 0x2f8(r26) +/* 80012638 0000F598 2C 00 00 00 */ cmpwi r0, 0 +/* 8001263C 0000F59C 40 82 00 38 */ bne lbl_80012674 +/* 80012640 0000F5A0 C0 02 81 08 */ lfs f0, lbl_805A9E28@sda21(r2) +/* 80012644 0000F5A4 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80012648 0000F5A8 40 81 00 0C */ ble lbl_80012654 +/* 8001264C 0000F5AC 38 80 05 E8 */ li r4, 0x5e8 +/* 80012650 0000F5B0 48 00 00 1C */ b lbl_8001266C +lbl_80012654: +/* 80012654 0000F5B4 C0 02 81 70 */ lfs f0, lbl_805A9E90@sda21(r2) +/* 80012658 0000F5B8 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8001265C 0000F5BC 40 81 00 0C */ ble lbl_80012668 +/* 80012660 0000F5C0 38 80 05 E7 */ li r4, 0x5e7 +/* 80012664 0000F5C4 48 00 00 08 */ b lbl_8001266C +lbl_80012668: +/* 80012668 0000F5C8 38 80 05 D1 */ li r4, 0x5d1 +lbl_8001266C: +/* 8001266C 0000F5CC 3B E0 05 BB */ li r31, 0x5bb +/* 80012670 0000F5D0 48 00 00 30 */ b lbl_800126A0 +lbl_80012674: +/* 80012674 0000F5D4 C0 02 81 08 */ lfs f0, lbl_805A9E28@sda21(r2) +/* 80012678 0000F5D8 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8001267C 0000F5DC 40 81 00 0C */ ble lbl_80012688 +/* 80012680 0000F5E0 3B E0 05 EA */ li r31, 0x5ea +/* 80012684 0000F5E4 48 00 00 1C */ b lbl_800126A0 +lbl_80012688: +/* 80012688 0000F5E8 C0 02 81 70 */ lfs f0, lbl_805A9E90@sda21(r2) +/* 8001268C 0000F5EC FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80012690 0000F5F0 40 81 00 0C */ ble lbl_8001269C +/* 80012694 0000F5F4 3B E0 05 E9 */ li r31, 0x5e9 +/* 80012698 0000F5F8 48 00 00 08 */ b lbl_800126A0 +lbl_8001269C: +/* 8001269C 0000F5FC 3B E0 05 D3 */ li r31, 0x5d3 +lbl_800126A0: +/* 800126A0 0000F600 7C 80 07 35 */ extsh. r0, r4 +/* 800126A4 0000F604 41 82 00 44 */ beq lbl_800126E8 +/* 800126A8 0000F608 C0 3A 07 74 */ lfs f1, 0x774(r26) +/* 800126AC 0000F60C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800126B0 0000F610 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800126B4 0000F614 4C 40 13 82 */ cror 2, 0, 2 +/* 800126B8 0000F618 40 82 00 30 */ bne lbl_800126E8 +/* 800126BC 0000F61C 7F 43 D3 78 */ mr r3, r26 +/* 800126C0 0000F620 54 84 04 3E */ clrlwi r4, r4, 0x10 +/* 800126C4 0000F624 38 A0 00 7F */ li r5, 0x7f +/* 800126C8 0000F628 38 C0 00 08 */ li r6, 8 +/* 800126CC 0000F62C 4B FF E5 95 */ bl StartSamusVoiceSfx__7CPlayerFUssi +/* 800126D0 0000F630 80 7C 09 00 */ lwz r3, 0x900(r28) +/* 800126D4 0000F634 C0 22 81 28 */ lfs f1, lbl_805A9E48@sda21(r2) +/* 800126D8 0000F638 C0 42 81 74 */ lfs f2, lbl_805A9E94@sda21(r2) +/* 800126DC 0000F63C 48 2F FE 69 */ bl Range__9CRandom16Fff +/* 800126E0 0000F640 D0 3A 07 74 */ stfs f1, 0x774(r26) +/* 800126E4 0000F644 3B A0 00 01 */ li r29, 1 +lbl_800126E8: +/* 800126E8 0000F648 80 7A 07 70 */ lwz r3, 0x770(r26) +/* 800126EC 0000F64C 7F C0 07 35 */ extsh. r0, r30 +/* 800126F0 0000F650 7C 03 00 D0 */ neg r0, r3 +/* 800126F4 0000F654 7C 60 03 78 */ or r0, r3, r0 +/* 800126F8 0000F658 54 19 0F FE */ srwi r25, r0, 0x1f +/* 800126FC 0000F65C 41 82 00 98 */ beq lbl_80012794 +/* 80012700 0000F660 88 1A 09 C7 */ lbz r0, 0x9c7(r26) +/* 80012704 0000F664 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80012708 0000F668 40 82 00 8C */ bne lbl_80012794 +/* 8001270C 0000F66C 80 1A 0A 2C */ lwz r0, 0xa2c(r26) +/* 80012710 0000F670 2C 00 00 02 */ cmpwi r0, 2 +/* 80012714 0000F674 41 80 00 80 */ blt lbl_80012794 +/* 80012718 0000F678 28 19 00 00 */ cmplwi r25, 0 +/* 8001271C 0000F67C 41 82 00 14 */ beq lbl_80012730 +/* 80012720 0000F680 A0 7A 07 88 */ lhz r3, 0x788(r26) +/* 80012724 0000F684 7F C0 07 34 */ extsh r0, r30 +/* 80012728 0000F688 7C 03 00 00 */ cmpw r3, r0 +/* 8001272C 0000F68C 41 82 00 60 */ beq lbl_8001278C +lbl_80012730: +/* 80012730 0000F690 28 19 00 00 */ cmplwi r25, 0 +/* 80012734 0000F694 41 82 00 24 */ beq lbl_80012758 +/* 80012738 0000F698 A0 7A 07 88 */ lhz r3, 0x788(r26) +/* 8001273C 0000F69C 7F C0 07 34 */ extsh r0, r30 +/* 80012740 0000F6A0 7C 03 00 00 */ cmpw r3, r0 +/* 80012744 0000F6A4 41 82 00 14 */ beq lbl_80012758 +/* 80012748 0000F6A8 80 1A 07 70 */ lwz r0, 0x770(r26) +/* 8001274C 0000F6AC 38 61 00 14 */ addi r3, r1, 0x14 +/* 80012750 0000F6B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80012754 0000F6B4 48 2D 75 F5 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +lbl_80012758: +/* 80012758 0000F6B8 57 DE 04 3E */ clrlwi r30, r30, 0x10 +/* 8001275C 0000F6BC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80012760 0000F6C0 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80012764 0000F6C4 7F C4 F3 78 */ mr r4, r30 +/* 80012768 0000F6C8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001276C 0000F6CC 38 A0 00 7F */ li r5, 0x7f +/* 80012770 0000F6D0 38 C0 00 40 */ li r6, 0x40 +/* 80012774 0000F6D4 38 E0 00 00 */ li r7, 0 +/* 80012778 0000F6D8 39 20 00 01 */ li r9, 1 +/* 8001277C 0000F6DC 48 2D 75 F9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80012780 0000F6E0 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80012784 0000F6E4 90 1A 07 70 */ stw r0, 0x770(r26) +/* 80012788 0000F6E8 B3 DA 07 88 */ sth r30, 0x788(r26) +lbl_8001278C: +/* 8001278C 0000F6EC C0 02 81 68 */ lfs f0, lbl_805A9E88@sda21(r2) +/* 80012790 0000F6F0 D0 1A 07 84 */ stfs f0, 0x784(r26) +lbl_80012794: +/* 80012794 0000F6F4 7F E0 07 35 */ extsh. r0, r31 +/* 80012798 0000F6F8 41 82 00 5C */ beq lbl_800127F4 +/* 8001279C 0000F6FC 28 19 00 00 */ cmplwi r25, 0 +/* 800127A0 0000F700 41 82 00 1C */ beq lbl_800127BC +/* 800127A4 0000F704 80 1A 07 70 */ lwz r0, 0x770(r26) +/* 800127A8 0000F708 38 61 00 0C */ addi r3, r1, 0xc +/* 800127AC 0000F70C 90 01 00 0C */ stw r0, 0xc(r1) +/* 800127B0 0000F710 48 2D 75 99 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 800127B4 0000F714 38 00 00 00 */ li r0, 0 +/* 800127B8 0000F718 90 1A 07 70 */ stw r0, 0x770(r26) +lbl_800127BC: +/* 800127BC 0000F71C 57 F9 04 3E */ clrlwi r25, r31, 0x10 +/* 800127C0 0000F720 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 800127C4 0000F724 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 800127C8 0000F728 7F 24 CB 78 */ mr r4, r25 +/* 800127CC 0000F72C 38 61 00 08 */ addi r3, r1, 8 +/* 800127D0 0000F730 38 A0 00 7F */ li r5, 0x7f +/* 800127D4 0000F734 38 C0 00 40 */ li r6, 0x40 +/* 800127D8 0000F738 38 E0 00 00 */ li r7, 0 +/* 800127DC 0000F73C 39 20 00 00 */ li r9, 0 +/* 800127E0 0000F740 48 2D 75 95 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 800127E4 0000F744 B3 3A 07 88 */ sth r25, 0x788(r26) +/* 800127E8 0000F748 38 00 00 00 */ li r0, 0 +/* 800127EC 0000F74C 3B A0 00 01 */ li r29, 1 +/* 800127F0 0000F750 90 1A 0A 2C */ stw r0, 0xa2c(r26) +lbl_800127F4: +/* 800127F4 0000F754 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 800127F8 0000F758 41 82 00 64 */ beq lbl_8001285C +/* 800127FC 0000F75C 80 1A 02 F8 */ lwz r0, 0x2f8(r26) +/* 80012800 0000F760 2C 00 00 00 */ cmpwi r0, 0 +/* 80012804 0000F764 40 82 00 18 */ bne lbl_8001281C +/* 80012808 0000F768 FC 20 F8 90 */ fmr f1, f31 +/* 8001280C 0000F76C 80 7A 04 90 */ lwz r3, 0x490(r26) +/* 80012810 0000F770 7F 64 DB 78 */ mr r4, r27 +/* 80012814 0000F774 7F 85 E3 78 */ mr r5, r28 +/* 80012818 0000F778 48 02 A5 91 */ bl DamageRumble__10CPlayerGunFRC9CVector3fRC13CStateManager +lbl_8001281C: +/* 8001281C 0000F77C C0 5A 05 5C */ lfs f2, 0x55c(r26) +/* 80012820 0000F780 C0 22 81 78 */ lfs f1, lbl_805A9E98@sda21(r2) +/* 80012824 0000F784 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) +/* 80012828 0000F788 EC 22 08 24 */ fdivs f1, f2, f1 +/* 8001282C 0000F78C 80 7C 08 8C */ lwz r3, 0x88c(r28) +/* 80012830 0000F790 FC 40 0A 10 */ fabs f2, f1 +/* 80012834 0000F794 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80012838 0000F798 40 81 00 14 */ ble lbl_8001284C +/* 8001283C 0000F79C C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) +/* 80012840 0000F7A0 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) +/* 80012844 0000F7A4 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 80012848 0000F7A8 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_8001284C: +/* 8001284C 0000F7AC 7F 84 E3 78 */ mr r4, r28 +/* 80012850 0000F7B0 38 A0 00 0B */ li r5, 0xb +/* 80012854 0000F7B4 38 C0 00 01 */ li r6, 1 +/* 80012858 0000F7B8 48 21 B9 ED */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +lbl_8001285C: +/* 8001285C 0000F7BC 80 1A 02 F8 */ lwz r0, 0x2f8(r26) +/* 80012860 0000F7C0 2C 00 00 00 */ cmpwi r0, 0 +/* 80012864 0000F7C4 41 82 00 1C */ beq lbl_80012880 +/* 80012868 0000F7C8 80 7A 07 68 */ lwz r3, 0x768(r26) +/* 8001286C 0000F7CC C0 3A 05 5C */ lfs f1, 0x55c(r26) +/* 80012870 0000F7D0 48 0D C4 6D */ bl TakeDamage__10CMorphBallFf +/* 80012874 0000F7D4 80 7A 07 68 */ lwz r3, 0x768(r26) +/* 80012878 0000F7D8 C0 22 81 8C */ lfs f1, lbl_805A9EAC@sda21(r2) +/* 8001287C 0000F7DC 48 0E 64 15 */ bl SetDamageTimer__10CMorphBallFf +lbl_80012880: +/* 80012880 0000F7E0 80 1A 03 B8 */ lwz r0, 0x3b8(r26) +/* 80012884 0000F7E4 2C 00 00 00 */ cmpwi r0, 0 +/* 80012888 0000F7E8 41 82 00 14 */ beq lbl_8001289C +/* 8001288C 0000F7EC 7F 43 D3 78 */ mr r3, r26 +/* 80012890 0000F7F0 7F 85 E3 78 */ mr r5, r28 +/* 80012894 0000F7F4 38 80 00 0B */ li r4, 0xb +/* 80012898 0000F7F8 48 16 88 2D */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +lbl_8001289C: +/* 8001289C 0000F7FC E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 800128A0 0000F800 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 800128A4 0000F804 BB 21 00 24 */ lmw r25, 0x24(r1) +/* 800128A8 0000F808 80 01 00 54 */ lwz r0, 0x54(r1) +/* 800128AC 0000F80C 7C 08 03 A6 */ mtlr r0 +/* 800128B0 0000F810 38 21 00 50 */ addi r1, r1, 0x50 +/* 800128B4 0000F814 4E 80 00 20 */ blr + +.global Accept__7CPlayerFR8IVisitor +Accept__7CPlayerFR8IVisitor: +/* 800128B8 0000F818 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800128BC 0000F81C 7C 08 02 A6 */ mflr r0 +/* 800128C0 0000F820 90 01 00 14 */ stw r0, 0x14(r1) +/* 800128C4 0000F824 7C 60 1B 78 */ mr r0, r3 +/* 800128C8 0000F828 7C 83 23 78 */ mr r3, r4 +/* 800128CC 0000F82C 81 84 00 00 */ lwz r12, 0(r4) +/* 800128D0 0000F830 7C 04 03 78 */ mr r4, r0 +/* 800128D4 0000F834 81 8C 00 54 */ lwz r12, 0x54(r12) +/* 800128D8 0000F838 7D 89 03 A6 */ mtctr r12 +/* 800128DC 0000F83C 4E 80 04 21 */ bctrl +/* 800128E0 0000F840 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800128E4 0000F844 7C 08 03 A6 */ mtlr r0 +/* 800128E8 0000F848 38 21 00 10 */ addi r1, r1, 0x10 +/* 800128EC 0000F84C 4E 80 00 20 */ blr + +.global HealthInfo__7CPlayerFR13CStateManager +HealthInfo__7CPlayerFR13CStateManager: +/* 800128F0 0000F850 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 800128F4 0000F854 80 63 00 00 */ lwz r3, 0(r3) +/* 800128F8 0000F858 38 63 00 0C */ addi r3, r3, 0xc +/* 800128FC 0000F85C 4E 80 00 20 */ blr + +.global GetTransitionAlpha__7CPlayerCFRC9CVector3ff +GetTransitionAlpha__7CPlayerCFRC9CVector3ff: +/* 80012900 0000F860 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80012904 0000F864 7C 08 02 A6 */ mflr r0 +/* 80012908 0000F868 90 01 00 54 */ stw r0, 0x54(r1) +/* 8001290C 0000F86C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80012910 0000F870 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80012914 0000F874 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80012918 0000F878 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 8001291C 0000F87C 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80012920 0000F880 C0 43 02 E4 */ lfs f2, 0x2e4(r3) +/* 80012924 0000F884 7C 9F 23 78 */ mr r31, r4 +/* 80012928 0000F888 C0 03 02 D8 */ lfs f0, 0x2d8(r3) +/* 8001292C 0000F88C 7C 64 1B 78 */ mr r4, r3 +/* 80012930 0000F890 C0 62 81 68 */ lfs f3, lbl_805A9E88@sda21(r2) +/* 80012934 0000F894 38 61 00 08 */ addi r3, r1, 8 +/* 80012938 0000F898 EC 42 00 28 */ fsubs f2, f2, f0 +/* 8001293C 0000F89C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80012940 0000F8A0 EF E3 08 BA */ fmadds f31, f3, f2, f1 +/* 80012944 0000F8A4 EF C0 F8 2A */ fadds f30, f0, f31 +/* 80012948 0000F8A8 48 27 24 35 */ bl GetEyePosition__7CPlayerCFv +/* 8001294C 0000F8AC C0 3F 00 04 */ lfs f1, 4(r31) +/* 80012950 0000F8B0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80012954 0000F8B4 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80012958 0000F8B8 C0 7F 00 08 */ lfs f3, 8(r31) +/* 8001295C 0000F8BC C0 41 00 10 */ lfs f2, 0x10(r1) +/* 80012960 0000F8C0 EC 81 00 28 */ fsubs f4, f1, f0 +/* 80012964 0000F8C4 C0 3F 00 00 */ lfs f1, 0(r31) +/* 80012968 0000F8C8 C0 01 00 08 */ lfs f0, 8(r1) +/* 8001296C 0000F8CC EC 43 10 28 */ fsubs f2, f3, f2 +/* 80012970 0000F8D0 D0 81 00 18 */ stfs f4, 0x18(r1) +/* 80012974 0000F8D4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80012978 0000F8D8 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 8001297C 0000F8DC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80012980 0000F8E0 48 30 1F 39 */ bl Magnitude__9CVector3fCFv +/* 80012984 0000F8E4 FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 80012988 0000F8E8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 8001298C 0000F8EC 4C 41 13 82 */ cror 2, 1, 2 +/* 80012990 0000F8F0 40 82 00 20 */ bne lbl_800129B0 +/* 80012994 0000F8F4 FC 01 F0 40 */ fcmpo cr0, f1, f30 +/* 80012998 0000F8F8 4C 40 13 82 */ cror 2, 0, 2 +/* 8001299C 0000F8FC 40 82 00 14 */ bne lbl_800129B0 +/* 800129A0 0000F900 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 800129A4 0000F904 EC 1E F8 28 */ fsubs f0, f30, f31 +/* 800129A8 0000F908 EC 01 00 24 */ fdivs f0, f1, f0 +/* 800129AC 0000F90C 48 00 00 10 */ b lbl_800129BC +lbl_800129B0: +/* 800129B0 0000F910 FC 01 F0 40 */ fcmpo cr0, f1, f30 +/* 800129B4 0000F914 40 81 00 08 */ ble lbl_800129BC +/* 800129B8 0000F918 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +lbl_800129BC: +/* 800129BC 0000F91C FC 20 00 90 */ fmr f1, f0 +/* 800129C0 0000F920 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 800129C4 0000F924 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 800129C8 0000F928 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 800129CC 0000F92C CB C1 00 30 */ lfd f30, 0x30(r1) +/* 800129D0 0000F930 80 01 00 54 */ lwz r0, 0x54(r1) +/* 800129D4 0000F934 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 800129D8 0000F938 7C 08 03 A6 */ mtlr r0 +/* 800129DC 0000F93C 38 21 00 50 */ addi r1, r1, 0x50 +/* 800129E0 0000F940 4E 80 00 20 */ blr + +.global IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager +IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager: +/* 800129E4 0000F944 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 800129E8 0000F948 7C 08 02 A6 */ mflr r0 +/* 800129EC 0000F94C 90 01 00 34 */ stw r0, 0x34(r1) +/* 800129F0 0000F950 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 800129F4 0000F954 93 C1 00 28 */ stw r30, 0x28(r1) +/* 800129F8 0000F958 7C 9E 23 78 */ mr r30, r4 +/* 800129FC 0000F95C 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80012A00 0000F960 7C 7D 1B 78 */ mr r29, r3 +/* 80012A04 0000F964 38 7D 02 74 */ addi r3, r29, 0x274 +/* 80012A08 0000F968 48 1A 1C 8D */ bl GetEnergyDrainIntensity__18CPlayerEnergyDrainCFv +/* 80012A0C 0000F96C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80012A10 0000F970 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80012A14 0000F974 40 81 00 60 */ ble lbl_80012A74 +/* 80012A18 0000F978 83 FD 02 80 */ lwz r31, 0x280(r29) +/* 80012A1C 0000F97C 48 00 00 40 */ b lbl_80012A5C +lbl_80012A20: +/* 80012A20 0000F980 A0 1F 00 00 */ lhz r0, 0(r31) +/* 80012A24 0000F984 7F C3 F3 78 */ mr r3, r30 +/* 80012A28 0000F988 38 81 00 0C */ addi r4, r1, 0xc +/* 80012A2C 0000F98C B0 01 00 08 */ sth r0, 8(r1) +/* 80012A30 0000F990 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80012A34 0000F994 48 03 9B 71 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80012A38 0000F998 7C 64 1B 78 */ mr r4, r3 +/* 80012A3C 0000F99C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80012A40 0000F9A0 48 09 2A 61 */ bl sub_800a54a0 +/* 80012A44 0000F9A4 48 09 2A 31 */ bl "CastTo<12CMetroidBeta>__10CPatternedFP7CEntity" +/* 80012A48 0000F9A8 28 03 00 00 */ cmplwi r3, 0 +/* 80012A4C 0000F9AC 41 82 00 0C */ beq lbl_80012A58 +/* 80012A50 0000F9B0 38 60 00 01 */ li r3, 1 +/* 80012A54 0000F9B4 48 00 00 24 */ b lbl_80012A78 +lbl_80012A58: +/* 80012A58 0000F9B8 3B FF 00 08 */ addi r31, r31, 8 +lbl_80012A5C: +/* 80012A5C 0000F9BC 80 1D 02 78 */ lwz r0, 0x278(r29) +/* 80012A60 0000F9C0 80 7D 02 80 */ lwz r3, 0x280(r29) +/* 80012A64 0000F9C4 54 00 18 38 */ slwi r0, r0, 3 +/* 80012A68 0000F9C8 7C 03 02 14 */ add r0, r3, r0 +/* 80012A6C 0000F9CC 7C 1F 00 40 */ cmplw r31, r0 +/* 80012A70 0000F9D0 40 82 FF B0 */ bne lbl_80012A20 +lbl_80012A74: +/* 80012A74 0000F9D4 38 60 00 00 */ li r3, 0 +lbl_80012A78: +/* 80012A78 0000F9D8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80012A7C 0000F9DC 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80012A80 0000F9E0 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80012A84 0000F9E4 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80012A88 0000F9E8 7C 08 03 A6 */ mtlr r0 +/* 80012A8C 0000F9EC 38 21 00 30 */ addi r1, r1, 0x30 +/* 80012A90 0000F9F0 4E 80 00 20 */ blr + +.global CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f +CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f: +/* 80012A94 0000F9F4 94 21 F6 80 */ stwu r1, -0x980(r1) +/* 80012A98 0000F9F8 7C 08 02 A6 */ mflr r0 +/* 80012A9C 0000F9FC 90 01 09 84 */ stw r0, 0x984(r1) +/* 80012AA0 0000FA00 DB E1 09 70 */ stfd f31, 0x970(r1) +/* 80012AA4 0000FA04 F3 E1 09 78 */ psq_st f31, -1672(r1), 0, qr0 +/* 80012AA8 0000FA08 DB C1 09 60 */ stfd f30, 0x960(r1) +/* 80012AAC 0000FA0C F3 C1 09 68 */ psq_st f30, -1688(r1), 0, qr0 +/* 80012AB0 0000FA10 DB A1 09 50 */ stfd f29, 0x950(r1) +/* 80012AB4 0000FA14 F3 A1 09 58 */ psq_st f29, -1704(r1), 0, qr0 +/* 80012AB8 0000FA18 DB 81 09 40 */ stfd f28, 0x940(r1) +/* 80012ABC 0000FA1C F3 81 09 48 */ psq_st f28, -1720(r1), 0, qr0 +/* 80012AC0 0000FA20 BF 21 09 24 */ stmw r25, 0x924(r1) +/* 80012AC4 0000FA24 7C 79 1B 78 */ mr r25, r3 +/* 80012AC8 0000FA28 7C 9E 23 78 */ mr r30, r4 +/* 80012ACC 0000FA2C 80 C3 07 68 */ lwz r6, 0x768(r3) +/* 80012AD0 0000FA30 7C BF 2B 78 */ mr r31, r5 +/* 80012AD4 0000FA34 88 06 19 54 */ lbz r0, 0x1954(r6) +/* 80012AD8 0000FA38 28 00 00 00 */ cmplwi r0, 0 +/* 80012ADC 0000FA3C 40 82 00 28 */ bne lbl_80012B04 +/* 80012AE0 0000FA40 88 19 05 90 */ lbz r0, 0x590(r25) +/* 80012AE4 0000FA44 28 00 00 00 */ cmplwi r0, 0 +/* 80012AE8 0000FA48 41 82 00 1C */ beq lbl_80012B04 +/* 80012AEC 0000FA4C 4B FF FE F9 */ bl IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager +/* 80012AF0 0000FA50 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80012AF4 0000FA54 41 82 00 18 */ beq lbl_80012B0C +/* 80012AF8 0000FA58 80 19 02 F8 */ lwz r0, 0x2f8(r25) +/* 80012AFC 0000FA5C 2C 00 00 01 */ cmpwi r0, 1 +/* 80012B00 0000FA60 40 82 00 0C */ bne lbl_80012B0C +lbl_80012B04: +/* 80012B04 0000FA64 38 60 00 00 */ li r3, 0 +/* 80012B08 0000FA68 48 00 03 64 */ b lbl_80012E6C +lbl_80012B0C: +/* 80012B0C 0000FA6C 88 19 09 C4 */ lbz r0, 0x9c4(r25) +/* 80012B10 0000FA70 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80012B14 0000FA74 40 82 00 0C */ bne lbl_80012B20 +/* 80012B18 0000FA78 38 60 00 00 */ li r3, 0 +/* 80012B1C 0000FA7C 48 00 03 50 */ b lbl_80012E6C +lbl_80012B20: +/* 80012B20 0000FA80 38 00 00 00 */ li r0, 0 +/* 80012B24 0000FA84 80 AD 80 F8 */ lwz r5, lbl_805A6CB8@sda21(r13) +/* 80012B28 0000FA88 90 01 01 10 */ stw r0, 0x110(r1) +/* 80012B2C 0000FA8C 38 60 00 00 */ li r3, 0 +/* 80012B30 0000FA90 38 80 00 01 */ li r4, 1 +/* 80012B34 0000FA94 48 37 73 C1 */ bl __shl2i +/* 80012B38 0000FA98 C0 79 02 E8 */ lfs f3, 0x2e8(r25) +/* 80012B3C 0000FA9C 38 C0 00 01 */ li r6, 1 +/* 80012B40 0000FAA0 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) +/* 80012B44 0000FAA4 38 00 00 00 */ li r0, 0 +/* 80012B48 0000FAA8 C0 39 02 EC */ lfs f1, 0x2ec(r25) +/* 80012B4C 0000FAAC 38 A1 00 58 */ addi r5, r1, 0x58 +/* 80012B50 0000FAB0 C0 19 02 E4 */ lfs f0, 0x2e4(r25) +/* 80012B54 0000FAB4 ED 43 10 2A */ fadds f10, f3, f2 +/* 80012B58 0000FAB8 C1 B9 00 50 */ lfs f13, 0x50(r25) +/* 80012B5C 0000FABC ED 21 10 2A */ fadds f9, f1, f2 +/* 80012B60 0000FAC0 C3 99 00 60 */ lfs f28, 0x60(r25) +/* 80012B64 0000FAC4 EC 60 10 2A */ fadds f3, f0, f2 +/* 80012B68 0000FAC8 C0 99 00 40 */ lfs f4, 0x40(r25) +/* 80012B6C 0000FACC C0 19 02 DC */ lfs f0, 0x2dc(r25) +/* 80012B70 0000FAD0 ED 8A 68 2A */ fadds f12, f10, f13 +/* 80012B74 0000FAD4 C0 39 02 E0 */ lfs f1, 0x2e0(r25) +/* 80012B78 0000FAD8 ED 69 E0 2A */ fadds f11, f9, f28 +/* 80012B7C 0000FADC EC C0 10 28 */ fsubs f6, f0, f2 +/* 80012B80 0000FAE0 C0 19 02 D8 */ lfs f0, 0x2d8(r25) +/* 80012B84 0000FAE4 EC A1 10 28 */ fsubs f5, f1, f2 +/* 80012B88 0000FAE8 EC 20 10 28 */ fsubs f1, f0, f2 +/* 80012B8C 0000FAEC 90 81 00 D4 */ stw r4, 0xd4(r1) +/* 80012B90 0000FAF0 EC 43 20 2A */ fadds f2, f3, f4 +/* 80012B94 0000FAF4 ED 06 68 2A */ fadds f8, f6, f13 +/* 80012B98 0000FAF8 90 61 00 D0 */ stw r3, 0xd0(r1) +/* 80012B9C 0000FAFC EC E5 E0 2A */ fadds f7, f5, f28 +/* 80012BA0 0000FB00 EC 01 20 2A */ fadds f0, f1, f4 +/* 80012BA4 0000FB04 90 C1 00 C8 */ stw r6, 0xc8(r1) +/* 80012BA8 0000FB08 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80012BAC 0000FB0C 90 01 00 DC */ stw r0, 0xdc(r1) +/* 80012BB0 0000FB10 38 81 00 70 */ addi r4, r1, 0x70 +/* 80012BB4 0000FB14 90 01 00 D8 */ stw r0, 0xd8(r1) +/* 80012BB8 0000FB18 90 C1 00 E0 */ stw r6, 0xe0(r1) +/* 80012BBC 0000FB1C D0 81 00 7C */ stfs f4, 0x7c(r1) +/* 80012BC0 0000FB20 D1 A1 00 80 */ stfs f13, 0x80(r1) +/* 80012BC4 0000FB24 D3 81 00 84 */ stfs f28, 0x84(r1) +/* 80012BC8 0000FB28 D0 61 00 4C */ stfs f3, 0x4c(r1) +/* 80012BCC 0000FB2C D1 41 00 50 */ stfs f10, 0x50(r1) +/* 80012BD0 0000FB30 D1 21 00 54 */ stfs f9, 0x54(r1) +/* 80012BD4 0000FB34 D0 41 00 58 */ stfs f2, 0x58(r1) +/* 80012BD8 0000FB38 D1 81 00 5C */ stfs f12, 0x5c(r1) +/* 80012BDC 0000FB3C D1 61 00 60 */ stfs f11, 0x60(r1) +/* 80012BE0 0000FB40 D0 21 00 64 */ stfs f1, 0x64(r1) +/* 80012BE4 0000FB44 D0 C1 00 68 */ stfs f6, 0x68(r1) +/* 80012BE8 0000FB48 D0 A1 00 6C */ stfs f5, 0x6c(r1) +/* 80012BEC 0000FB4C D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80012BF0 0000FB50 D1 01 00 74 */ stfs f8, 0x74(r1) +/* 80012BF4 0000FB54 D0 E1 00 78 */ stfs f7, 0x78(r1) +/* 80012BF8 0000FB58 48 32 59 11 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80012BFC 0000FB5C 7C 66 1B 78 */ mr r6, r3 +/* 80012C00 0000FB60 7F C3 F3 78 */ mr r3, r30 +/* 80012C04 0000FB64 7F 25 CB 78 */ mr r5, r25 +/* 80012C08 0000FB68 38 81 01 10 */ addi r4, r1, 0x110 +/* 80012C0C 0000FB6C 48 03 9A F1 */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" +/* 80012C10 0000FB70 7F 23 CB 78 */ mr r3, r25 +/* 80012C14 0000FB74 48 10 7D AD */ bl GetBaseBoundingBox__13CPhysicsActorCFv +/* 80012C18 0000FB78 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80012C1C 0000FB7C C0 79 00 60 */ lfs f3, 0x60(r25) +/* 80012C20 0000FB80 38 E4 66 A0 */ addi r7, r4, skZero3f@l +/* 80012C24 0000FB84 C0 59 00 50 */ lfs f2, 0x50(r25) +/* 80012C28 0000FB88 C0 39 00 40 */ lfs f1, 0x40(r25) +/* 80012C2C 0000FB8C 3C C0 80 3F */ lis r6, lbl_803ECAD0@ha +/* 80012C30 0000FB90 C0 07 00 00 */ lfs f0, 0(r7) +/* 80012C34 0000FB94 3C A0 80 5A */ lis r5, skIdentity4f@ha +/* 80012C38 0000FB98 3C 80 80 3E */ lis r4, lbl_803D97E4@ha +/* 80012C3C 0000FB9C FF 80 10 18 */ frsp f28, f2 +/* 80012C40 0000FBA0 D0 1F 00 00 */ stfs f0, 0(r31) +/* 80012C44 0000FBA4 FF A0 18 18 */ frsp f29, f3 +/* 80012C48 0000FBA8 FF C0 08 18 */ frsp f30, f1 +/* 80012C4C 0000FBAC C3 E2 81 40 */ lfs f31, lbl_805A9E60@sda21(r2) +/* 80012C50 0000FBB0 C0 07 00 04 */ lfs f0, 4(r7) +/* 80012C54 0000FBB4 D0 21 00 40 */ stfs f1, 0x40(r1) +/* 80012C58 0000FBB8 7C 7A 1B 78 */ mr r26, r3 +/* 80012C5C 0000FBBC 3B 66 CA D0 */ addi r27, r6, lbl_803ECAD0@l +/* 80012C60 0000FBC0 D0 1F 00 04 */ stfs f0, 4(r31) +/* 80012C64 0000FBC4 3B 85 66 70 */ addi r28, r5, skIdentity4f@l +/* 80012C68 0000FBC8 3B A4 97 E4 */ addi r29, r4, lbl_803D97E4@l +/* 80012C6C 0000FBCC 3B 20 00 00 */ li r25, 0 +/* 80012C70 0000FBD0 C0 07 00 08 */ lfs f0, 8(r7) +/* 80012C74 0000FBD4 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 80012C78 0000FBD8 D0 61 00 48 */ stfs f3, 0x48(r1) +/* 80012C7C 0000FBDC D0 1F 00 08 */ stfs f0, 8(r31) +lbl_80012C80: +/* 80012C80 0000FBE0 38 00 00 00 */ li r0, 0 +/* 80012C84 0000FBE4 38 61 00 88 */ addi r3, r1, 0x88 +/* 80012C88 0000FBE8 90 01 00 0C */ stw r0, 0xc(r1) +/* 80012C8C 0000FBEC 38 81 00 34 */ addi r4, r1, 0x34 +/* 80012C90 0000FBF0 38 A1 00 1C */ addi r5, r1, 0x1c +/* 80012C94 0000FBF4 90 01 00 08 */ stw r0, 8(r1) +/* 80012C98 0000FBF8 C0 1A 00 10 */ lfs f0, 0x10(r26) +/* 80012C9C 0000FBFC C0 BF 00 04 */ lfs f5, 4(r31) +/* 80012CA0 0000FC00 C0 3A 00 14 */ lfs f1, 0x14(r26) +/* 80012CA4 0000FC04 EC E0 28 2A */ fadds f7, f0, f5 +/* 80012CA8 0000FC08 C0 9F 00 08 */ lfs f4, 8(r31) +/* 80012CAC 0000FC0C C0 1A 00 0C */ lfs f0, 0xc(r26) +/* 80012CB0 0000FC10 EC C1 20 2A */ fadds f6, f1, f4 +/* 80012CB4 0000FC14 C0 7F 00 00 */ lfs f3, 0(r31) +/* 80012CB8 0000FC18 ED 07 E0 2A */ fadds f8, f7, f28 +/* 80012CBC 0000FC1C EC 40 18 2A */ fadds f2, f0, f3 +/* 80012CC0 0000FC20 D0 E1 00 14 */ stfs f7, 0x14(r1) +/* 80012CC4 0000FC24 EC 26 E8 2A */ fadds f1, f6, f29 +/* 80012CC8 0000FC28 D1 01 00 20 */ stfs f8, 0x20(r1) +/* 80012CCC 0000FC2C EC 02 F0 2A */ fadds f0, f2, f30 +/* 80012CD0 0000FC30 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80012CD4 0000FC34 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80012CD8 0000FC38 C0 1A 00 04 */ lfs f0, 4(r26) +/* 80012CDC 0000FC3C C0 3A 00 08 */ lfs f1, 8(r26) +/* 80012CE0 0000FC40 EC A0 28 2A */ fadds f5, f0, f5 +/* 80012CE4 0000FC44 C0 1A 00 00 */ lfs f0, 0(r26) +/* 80012CE8 0000FC48 EC 81 20 2A */ fadds f4, f1, f4 +/* 80012CEC 0000FC4C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80012CF0 0000FC50 EC 20 18 2A */ fadds f1, f0, f3 +/* 80012CF4 0000FC54 EC 65 E0 2A */ fadds f3, f5, f28 +/* 80012CF8 0000FC58 EC 44 E8 2A */ fadds f2, f4, f29 +/* 80012CFC 0000FC5C D0 C1 00 18 */ stfs f6, 0x18(r1) +/* 80012D00 0000FC60 EC 01 F0 2A */ fadds f0, f1, f30 +/* 80012D04 0000FC64 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80012D08 0000FC68 D0 A1 00 2C */ stfs f5, 0x2c(r1) +/* 80012D0C 0000FC6C D0 81 00 30 */ stfs f4, 0x30(r1) +/* 80012D10 0000FC70 D0 01 00 34 */ stfs f0, 0x34(r1) +/* 80012D14 0000FC74 D0 61 00 38 */ stfs f3, 0x38(r1) +/* 80012D18 0000FC78 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 80012D1C 0000FC7C 48 32 57 ED */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80012D20 0000FC80 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80012D24 0000FC84 38 81 00 08 */ addi r4, r1, 8 +/* 80012D28 0000FC88 48 2B CB 8D */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80012D2C 0000FC8C C0 A1 00 88 */ lfs f5, 0x88(r1) +/* 80012D30 0000FC90 7F C3 F3 78 */ mr r3, r30 +/* 80012D34 0000FC94 C0 81 00 8C */ lfs f4, 0x8c(r1) +/* 80012D38 0000FC98 7F 85 E3 78 */ mr r5, r28 +/* 80012D3C 0000FC9C C0 61 00 90 */ lfs f3, 0x90(r1) +/* 80012D40 0000FCA0 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 80012D44 0000FCA4 C0 41 00 94 */ lfs f2, 0x94(r1) +/* 80012D48 0000FCA8 38 C1 00 D0 */ addi r6, r1, 0xd0 +/* 80012D4C 0000FCAC C0 21 00 98 */ lfs f1, 0x98(r1) +/* 80012D50 0000FCB0 38 E1 01 10 */ addi r7, r1, 0x110 +/* 80012D54 0000FCB4 C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 80012D58 0000FCB8 93 61 00 E8 */ stw r27, 0xe8(r1) +/* 80012D5C 0000FCBC D0 A1 00 F8 */ stfs f5, 0xf8(r1) +/* 80012D60 0000FCC0 D0 81 00 FC */ stfs f4, 0xfc(r1) +/* 80012D64 0000FCC4 D0 61 01 00 */ stfs f3, 0x100(r1) +/* 80012D68 0000FCC8 D0 41 01 04 */ stfs f2, 0x104(r1) +/* 80012D6C 0000FCCC D0 21 01 08 */ stfs f1, 0x108(r1) +/* 80012D70 0000FCD0 D0 01 01 0C */ stfs f0, 0x10c(r1) +/* 80012D74 0000FCD4 48 17 18 A1 */ bl "DetectCollisionBoolean__14CGameCollisionFRC13CStateManagerRC19CCollisionPrimitiveRC12CTransform4fRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80012D78 0000FCD8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80012D7C 0000FCDC 40 82 00 78 */ bne lbl_80012DF4 +/* 80012D80 0000FCE0 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 80012D84 0000FCE4 80 A1 01 10 */ lwz r5, 0x110(r1) +/* 80012D88 0000FCE8 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 80012D8C 0000FCEC 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80012D90 0000FCF0 90 01 00 E8 */ stw r0, 0xe8(r1) +/* 80012D94 0000FCF4 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80012D98 0000FCF8 2C 05 00 00 */ cmpwi r5, 0 +/* 80012D9C 0000FCFC 38 60 00 00 */ li r3, 0 +/* 80012DA0 0000FD00 90 01 00 E8 */ stw r0, 0xe8(r1) +/* 80012DA4 0000FD04 40 81 00 40 */ ble lbl_80012DE4 +/* 80012DA8 0000FD08 2C 05 00 08 */ cmpwi r5, 8 +/* 80012DAC 0000FD0C 38 85 FF F8 */ addi r4, r5, -8 +/* 80012DB0 0000FD10 40 81 00 20 */ ble lbl_80012DD0 +/* 80012DB4 0000FD14 38 04 00 07 */ addi r0, r4, 7 +/* 80012DB8 0000FD18 54 00 E8 FE */ srwi r0, r0, 3 +/* 80012DBC 0000FD1C 7C 09 03 A6 */ mtctr r0 +/* 80012DC0 0000FD20 2C 04 00 00 */ cmpwi r4, 0 +/* 80012DC4 0000FD24 40 81 00 0C */ ble lbl_80012DD0 +lbl_80012DC8: +/* 80012DC8 0000FD28 38 63 00 08 */ addi r3, r3, 8 +/* 80012DCC 0000FD2C 42 00 FF FC */ bdnz lbl_80012DC8 +lbl_80012DD0: +/* 80012DD0 0000FD30 7C 03 28 50 */ subf r0, r3, r5 +/* 80012DD4 0000FD34 7C 09 03 A6 */ mtctr r0 +/* 80012DD8 0000FD38 7C 03 28 00 */ cmpw r3, r5 +/* 80012DDC 0000FD3C 40 80 00 08 */ bge lbl_80012DE4 +lbl_80012DE0: +/* 80012DE0 0000FD40 42 00 00 00 */ bdnz lbl_80012DE0 +lbl_80012DE4: +/* 80012DE4 0000FD44 38 00 00 00 */ li r0, 0 +/* 80012DE8 0000FD48 38 60 00 01 */ li r3, 1 +/* 80012DEC 0000FD4C 90 01 01 10 */ stw r0, 0x110(r1) +/* 80012DF0 0000FD50 48 00 00 7C */ b lbl_80012E6C +lbl_80012DF4: +/* 80012DF4 0000FD54 C0 1F 00 08 */ lfs f0, 8(r31) +/* 80012DF8 0000FD58 3B 39 00 01 */ addi r25, r25, 1 +/* 80012DFC 0000FD5C 2C 19 00 08 */ cmpwi r25, 8 +/* 80012E00 0000FD60 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80012E04 0000FD64 D0 1F 00 08 */ stfs f0, 8(r31) +/* 80012E08 0000FD68 93 61 00 E8 */ stw r27, 0xe8(r1) +/* 80012E0C 0000FD6C 93 A1 00 E8 */ stw r29, 0xe8(r1) +/* 80012E10 0000FD70 41 80 FE 70 */ blt lbl_80012C80 +/* 80012E14 0000FD74 80 A1 01 10 */ lwz r5, 0x110(r1) +/* 80012E18 0000FD78 38 60 00 00 */ li r3, 0 +/* 80012E1C 0000FD7C 2C 05 00 00 */ cmpwi r5, 0 +/* 80012E20 0000FD80 40 81 00 40 */ ble lbl_80012E60 +/* 80012E24 0000FD84 2C 05 00 08 */ cmpwi r5, 8 +/* 80012E28 0000FD88 38 85 FF F8 */ addi r4, r5, -8 +/* 80012E2C 0000FD8C 40 81 00 20 */ ble lbl_80012E4C +/* 80012E30 0000FD90 38 04 00 07 */ addi r0, r4, 7 +/* 80012E34 0000FD94 54 00 E8 FE */ srwi r0, r0, 3 +/* 80012E38 0000FD98 7C 09 03 A6 */ mtctr r0 +/* 80012E3C 0000FD9C 2C 04 00 00 */ cmpwi r4, 0 +/* 80012E40 0000FDA0 40 81 00 0C */ ble lbl_80012E4C +lbl_80012E44: +/* 80012E44 0000FDA4 38 63 00 08 */ addi r3, r3, 8 +/* 80012E48 0000FDA8 42 00 FF FC */ bdnz lbl_80012E44 +lbl_80012E4C: +/* 80012E4C 0000FDAC 7C 03 28 50 */ subf r0, r3, r5 +/* 80012E50 0000FDB0 7C 09 03 A6 */ mtctr r0 +/* 80012E54 0000FDB4 7C 03 28 00 */ cmpw r3, r5 +/* 80012E58 0000FDB8 40 80 00 08 */ bge lbl_80012E60 +lbl_80012E5C: +/* 80012E5C 0000FDBC 42 00 00 00 */ bdnz lbl_80012E5C +lbl_80012E60: +/* 80012E60 0000FDC0 38 00 00 00 */ li r0, 0 +/* 80012E64 0000FDC4 38 60 00 00 */ li r3, 0 +/* 80012E68 0000FDC8 90 01 01 10 */ stw r0, 0x110(r1) +lbl_80012E6C: +/* 80012E6C 0000FDCC E3 E1 09 78 */ psq_l f31, -1672(r1), 0, qr0 +/* 80012E70 0000FDD0 CB E1 09 70 */ lfd f31, 0x970(r1) +/* 80012E74 0000FDD4 E3 C1 09 68 */ psq_l f30, -1688(r1), 0, qr0 +/* 80012E78 0000FDD8 CB C1 09 60 */ lfd f30, 0x960(r1) +/* 80012E7C 0000FDDC E3 A1 09 58 */ psq_l f29, -1704(r1), 0, qr0 +/* 80012E80 0000FDE0 CB A1 09 50 */ lfd f29, 0x950(r1) +/* 80012E84 0000FDE4 E3 81 09 48 */ psq_l f28, -1720(r1), 0, qr0 +/* 80012E88 0000FDE8 CB 81 09 40 */ lfd f28, 0x940(r1) +/* 80012E8C 0000FDEC BB 21 09 24 */ lmw r25, 0x924(r1) +/* 80012E90 0000FDF0 80 01 09 84 */ lwz r0, 0x984(r1) +/* 80012E94 0000FDF4 7C 08 03 A6 */ mtlr r0 +/* 80012E98 0000FDF8 38 21 09 80 */ addi r1, r1, 0x980 +/* 80012E9C 0000FDFC 4E 80 00 20 */ blr + +.global __dt__16CCollidableAABoxFv +__dt__16CCollidableAABoxFv: +/* 80012EA0 0000FE00 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80012EA4 0000FE04 7C 08 02 A6 */ mflr r0 +/* 80012EA8 0000FE08 90 01 00 14 */ stw r0, 0x14(r1) +/* 80012EAC 0000FE0C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80012EB0 0000FE10 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80012EB4 0000FE14 41 82 00 30 */ beq lbl_80012EE4 +/* 80012EB8 0000FE18 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 80012EBC 0000FE1C 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 80012EC0 0000FE20 90 1F 00 00 */ stw r0, 0(r31) +/* 80012EC4 0000FE24 41 82 00 10 */ beq lbl_80012ED4 +/* 80012EC8 0000FE28 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80012ECC 0000FE2C 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80012ED0 0000FE30 90 1F 00 00 */ stw r0, 0(r31) +lbl_80012ED4: +/* 80012ED4 0000FE34 7C 80 07 35 */ extsh. r0, r4 +/* 80012ED8 0000FE38 40 81 00 0C */ ble lbl_80012EE4 +/* 80012EDC 0000FE3C 7F E3 FB 78 */ mr r3, r31 +/* 80012EE0 0000FE40 48 30 2A 51 */ bl Free__7CMemoryFPCv +lbl_80012EE4: +/* 80012EE4 0000FE44 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80012EE8 0000FE48 7F E3 FB 78 */ mr r3, r31 +/* 80012EEC 0000FE4C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80012EF0 0000FE50 7C 08 03 A6 */ mtlr r0 +/* 80012EF4 0000FE54 38 21 00 10 */ addi r1, r1, 0x10 +/* 80012EF8 0000FE58 4E 80 00 20 */ blr + +.global CanEnterMorphBallState__7CPlayerCFR13CStateManagerf +CanEnterMorphBallState__7CPlayerCFR13CStateManagerf: +/* 80012EFC 0000FE5C 94 21 F7 E0 */ stwu r1, -0x820(r1) +/* 80012F00 0000FE60 7C 08 02 A6 */ mflr r0 +/* 80012F04 0000FE64 38 A0 00 00 */ li r5, 0 +/* 80012F08 0000FE68 90 01 08 24 */ stw r0, 0x824(r1) +/* 80012F0C 0000FE6C 93 E1 08 1C */ stw r31, 0x81c(r1) +/* 80012F10 0000FE70 7C 7F 1B 78 */ mr r31, r3 +/* 80012F14 0000FE74 80 03 03 B8 */ lwz r0, 0x3b8(r3) +/* 80012F18 0000FE78 90 A1 00 08 */ stw r5, 8(r1) +/* 80012F1C 0000FE7C 2C 00 00 00 */ cmpwi r0, 0 +/* 80012F20 0000FE80 40 82 00 1C */ bne lbl_80012F3C +/* 80012F24 0000FE84 4B FF FA C1 */ bl IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager +/* 80012F28 0000FE88 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80012F2C 0000FE8C 41 82 00 6C */ beq lbl_80012F98 +/* 80012F30 0000FE90 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 80012F34 0000FE94 2C 00 00 00 */ cmpwi r0, 0 +/* 80012F38 0000FE98 40 82 00 60 */ bne lbl_80012F98 +lbl_80012F3C: +/* 80012F3C 0000FE9C 80 A1 00 08 */ lwz r5, 8(r1) +/* 80012F40 0000FEA0 38 60 00 00 */ li r3, 0 +/* 80012F44 0000FEA4 2C 05 00 00 */ cmpwi r5, 0 +/* 80012F48 0000FEA8 40 81 00 40 */ ble lbl_80012F88 +/* 80012F4C 0000FEAC 2C 05 00 08 */ cmpwi r5, 8 +/* 80012F50 0000FEB0 38 85 FF F8 */ addi r4, r5, -8 +/* 80012F54 0000FEB4 40 81 00 20 */ ble lbl_80012F74 +/* 80012F58 0000FEB8 38 04 00 07 */ addi r0, r4, 7 +/* 80012F5C 0000FEBC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80012F60 0000FEC0 7C 09 03 A6 */ mtctr r0 +/* 80012F64 0000FEC4 2C 04 00 00 */ cmpwi r4, 0 +/* 80012F68 0000FEC8 40 81 00 0C */ ble lbl_80012F74 +lbl_80012F6C: +/* 80012F6C 0000FECC 38 63 00 08 */ addi r3, r3, 8 +/* 80012F70 0000FED0 42 00 FF FC */ bdnz lbl_80012F6C +lbl_80012F74: +/* 80012F74 0000FED4 7C 03 28 50 */ subf r0, r3, r5 +/* 80012F78 0000FED8 7C 09 03 A6 */ mtctr r0 +/* 80012F7C 0000FEDC 7C 03 28 00 */ cmpw r3, r5 +/* 80012F80 0000FEE0 40 80 00 08 */ bge lbl_80012F88 +lbl_80012F84: +/* 80012F84 0000FEE4 42 00 00 00 */ bdnz lbl_80012F84 +lbl_80012F88: +/* 80012F88 0000FEE8 38 00 00 00 */ li r0, 0 +/* 80012F8C 0000FEEC 38 60 00 00 */ li r3, 0 +/* 80012F90 0000FEF0 90 01 00 08 */ stw r0, 8(r1) +/* 80012F94 0000FEF4 48 00 00 C4 */ b lbl_80013058 +lbl_80012F98: +/* 80012F98 0000FEF8 88 1F 09 C4 */ lbz r0, 0x9c4(r31) +/* 80012F9C 0000FEFC 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80012FA0 0000FF00 40 82 00 60 */ bne lbl_80013000 +/* 80012FA4 0000FF04 80 A1 00 08 */ lwz r5, 8(r1) +/* 80012FA8 0000FF08 38 60 00 00 */ li r3, 0 +/* 80012FAC 0000FF0C 2C 05 00 00 */ cmpwi r5, 0 +/* 80012FB0 0000FF10 40 81 00 40 */ ble lbl_80012FF0 +/* 80012FB4 0000FF14 2C 05 00 08 */ cmpwi r5, 8 +/* 80012FB8 0000FF18 38 85 FF F8 */ addi r4, r5, -8 +/* 80012FBC 0000FF1C 40 81 00 20 */ ble lbl_80012FDC +/* 80012FC0 0000FF20 38 04 00 07 */ addi r0, r4, 7 +/* 80012FC4 0000FF24 54 00 E8 FE */ srwi r0, r0, 3 +/* 80012FC8 0000FF28 7C 09 03 A6 */ mtctr r0 +/* 80012FCC 0000FF2C 2C 04 00 00 */ cmpwi r4, 0 +/* 80012FD0 0000FF30 40 81 00 0C */ ble lbl_80012FDC +lbl_80012FD4: +/* 80012FD4 0000FF34 38 63 00 08 */ addi r3, r3, 8 +/* 80012FD8 0000FF38 42 00 FF FC */ bdnz lbl_80012FD4 +lbl_80012FDC: +/* 80012FDC 0000FF3C 7C 03 28 50 */ subf r0, r3, r5 +/* 80012FE0 0000FF40 7C 09 03 A6 */ mtctr r0 +/* 80012FE4 0000FF44 7C 03 28 00 */ cmpw r3, r5 +/* 80012FE8 0000FF48 40 80 00 08 */ bge lbl_80012FF0 +lbl_80012FEC: +/* 80012FEC 0000FF4C 42 00 00 00 */ bdnz lbl_80012FEC +lbl_80012FF0: +/* 80012FF0 0000FF50 38 00 00 00 */ li r0, 0 +/* 80012FF4 0000FF54 38 60 00 00 */ li r3, 0 +/* 80012FF8 0000FF58 90 01 00 08 */ stw r0, 8(r1) +/* 80012FFC 0000FF5C 48 00 00 5C */ b lbl_80013058 +lbl_80013000: +/* 80013000 0000FF60 80 A1 00 08 */ lwz r5, 8(r1) +/* 80013004 0000FF64 38 60 00 00 */ li r3, 0 +/* 80013008 0000FF68 2C 05 00 00 */ cmpwi r5, 0 +/* 8001300C 0000FF6C 40 81 00 40 */ ble lbl_8001304C +/* 80013010 0000FF70 2C 05 00 08 */ cmpwi r5, 8 +/* 80013014 0000FF74 38 85 FF F8 */ addi r4, r5, -8 +/* 80013018 0000FF78 40 81 00 20 */ ble lbl_80013038 +/* 8001301C 0000FF7C 38 04 00 07 */ addi r0, r4, 7 +/* 80013020 0000FF80 54 00 E8 FE */ srwi r0, r0, 3 +/* 80013024 0000FF84 7C 09 03 A6 */ mtctr r0 +/* 80013028 0000FF88 2C 04 00 00 */ cmpwi r4, 0 +/* 8001302C 0000FF8C 40 81 00 0C */ ble lbl_80013038 +lbl_80013030: +/* 80013030 0000FF90 38 63 00 08 */ addi r3, r3, 8 +/* 80013034 0000FF94 42 00 FF FC */ bdnz lbl_80013030 +lbl_80013038: +/* 80013038 0000FF98 7C 03 28 50 */ subf r0, r3, r5 +/* 8001303C 0000FF9C 7C 09 03 A6 */ mtctr r0 +/* 80013040 0000FFA0 7C 03 28 00 */ cmpw r3, r5 +/* 80013044 0000FFA4 40 80 00 08 */ bge lbl_8001304C +lbl_80013048: +/* 80013048 0000FFA8 42 00 00 00 */ bdnz lbl_80013048 +lbl_8001304C: +/* 8001304C 0000FFAC 38 00 00 00 */ li r0, 0 +/* 80013050 0000FFB0 38 60 00 01 */ li r3, 1 +/* 80013054 0000FFB4 90 01 00 08 */ stw r0, 8(r1) +lbl_80013058: +/* 80013058 0000FFB8 80 01 08 24 */ lwz r0, 0x824(r1) +/* 8001305C 0000FFBC 83 E1 08 1C */ lwz r31, 0x81c(r1) +/* 80013060 0000FFC0 7C 08 03 A6 */ mtlr r0 +/* 80013064 0000FFC4 38 21 08 20 */ addi r1, r1, 0x820 +/* 80013068 0000FFC8 4E 80 00 20 */ blr + +.global SetHudDisable__7CPlayerFfff +SetHudDisable__7CPlayerFfff: +/* 8001306C 0000FFCC D0 23 07 40 */ stfs f1, 0x740(r3) +/* 80013070 0000FFD0 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80013074 0000FFD4 D0 43 07 44 */ stfs f2, 0x744(r3) +/* 80013078 0000FFD8 D0 63 07 48 */ stfs f3, 0x748(r3) +/* 8001307C 0000FFDC C0 03 07 44 */ lfs f0, 0x744(r3) +/* 80013080 0000FFE0 FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80013084 0000FFE4 4C 82 00 20 */ bnelr +/* 80013088 0000FFE8 C0 03 07 40 */ lfs f0, 0x740(r3) +/* 8001308C 0000FFEC FC 01 00 00 */ fcmpu cr0, f1, f0 +/* 80013090 0000FFF0 40 82 00 10 */ bne lbl_800130A0 +/* 80013094 0000FFF4 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80013098 0000FFF8 D0 03 07 4C */ stfs f0, 0x74c(r3) +/* 8001309C 0000FFFC 4E 80 00 20 */ blr +lbl_800130A0: +/* 800130A0 00010000 D0 23 07 4C */ stfs f1, 0x74c(r3) +/* 800130A4 00010004 4E 80 00 20 */ blr + +.global GetTouchBounds__7CPlayerCFv +GetTouchBounds__7CPlayerCFv: +/* 800130A8 00010008 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 800130AC 0001000C 7C 08 02 A6 */ mflr r0 +/* 800130B0 00010010 90 01 00 84 */ stw r0, 0x84(r1) +/* 800130B4 00010014 DB E1 00 70 */ stfd f31, 0x70(r1) +/* 800130B8 00010018 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 +/* 800130BC 0001001C DB C1 00 60 */ stfd f30, 0x60(r1) +/* 800130C0 00010020 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 +/* 800130C4 00010024 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 800130C8 00010028 93 C1 00 58 */ stw r30, 0x58(r1) +/* 800130CC 0001002C 7C 9F 23 78 */ mr r31, r4 +/* 800130D0 00010030 7C 7E 1B 78 */ mr r30, r3 +/* 800130D4 00010034 80 04 02 F8 */ lwz r0, 0x2f8(r4) +/* 800130D8 00010038 2C 00 00 01 */ cmpwi r0, 1 +/* 800130DC 0001003C 40 82 00 BC */ bne lbl_80013198 +/* 800130E0 00010040 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 800130E4 00010044 48 0E 5D 15 */ bl GetBallTouchRadius__10CMorphBallCFv +/* 800130E8 00010048 FF E0 08 90 */ fmr f31, f1 +/* 800130EC 0001004C 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 800130F0 00010050 FF C0 F8 50 */ fneg f30, f31 +/* 800130F4 00010054 48 0E 5D 11 */ bl GetBallRadius__10CMorphBallCFv +/* 800130F8 00010058 C0 1F 00 60 */ lfs f0, 0x60(r31) +/* 800130FC 0001005C 38 61 00 38 */ addi r3, r1, 0x38 +/* 80013100 00010060 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 80013104 00010064 38 81 00 14 */ addi r4, r1, 0x14 +/* 80013108 00010068 EC A0 08 2A */ fadds f5, f0, f1 +/* 8001310C 0001006C C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80013110 00010070 C0 1F 00 50 */ lfs f0, 0x50(r31) +/* 80013114 00010074 38 A1 00 08 */ addi r5, r1, 8 +/* 80013118 00010078 EC 42 08 2A */ fadds f2, f2, f1 +/* 8001311C 0001007C EC 20 08 2A */ fadds f1, f0, f1 +/* 80013120 00010080 EC 05 F8 2A */ fadds f0, f5, f31 +/* 80013124 00010084 EC 82 F8 2A */ fadds f4, f2, f31 +/* 80013128 00010088 EC 61 F8 2A */ fadds f3, f1, f31 +/* 8001312C 0001008C EC 42 F0 2A */ fadds f2, f2, f30 +/* 80013130 00010090 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80013134 00010094 EC 21 F0 2A */ fadds f1, f1, f30 +/* 80013138 00010098 EC 05 F0 2A */ fadds f0, f5, f30 +/* 8001313C 0001009C D0 81 00 08 */ stfs f4, 8(r1) +/* 80013140 000100A0 D0 61 00 0C */ stfs f3, 0xc(r1) +/* 80013144 000100A4 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80013148 000100A8 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 8001314C 000100AC D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80013150 000100B0 48 32 53 B9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80013154 000100B4 38 00 00 01 */ li r0, 1 +/* 80013158 000100B8 28 1E 00 00 */ cmplwi r30, 0 +/* 8001315C 000100BC 98 1E 00 18 */ stb r0, 0x18(r30) +/* 80013160 000100C0 41 82 00 80 */ beq lbl_800131E0 +/* 80013164 000100C4 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 80013168 000100C8 D0 1E 00 00 */ stfs f0, 0(r30) +/* 8001316C 000100CC C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 80013170 000100D0 D0 1E 00 04 */ stfs f0, 4(r30) +/* 80013174 000100D4 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80013178 000100D8 D0 1E 00 08 */ stfs f0, 8(r30) +/* 8001317C 000100DC C0 01 00 44 */ lfs f0, 0x44(r1) +/* 80013180 000100E0 D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 80013184 000100E4 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80013188 000100E8 D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 8001318C 000100EC C0 01 00 4C */ lfs f0, 0x4c(r1) +/* 80013190 000100F0 D0 1E 00 14 */ stfs f0, 0x14(r30) +/* 80013194 000100F4 48 00 00 4C */ b lbl_800131E0 +lbl_80013198: +/* 80013198 000100F8 38 61 00 20 */ addi r3, r1, 0x20 +/* 8001319C 000100FC 48 10 77 91 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 800131A0 00010100 38 00 00 01 */ li r0, 1 +/* 800131A4 00010104 28 1E 00 00 */ cmplwi r30, 0 +/* 800131A8 00010108 98 1E 00 18 */ stb r0, 0x18(r30) +/* 800131AC 0001010C 41 82 00 34 */ beq lbl_800131E0 +/* 800131B0 00010110 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 800131B4 00010114 D0 1E 00 00 */ stfs f0, 0(r30) +/* 800131B8 00010118 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 800131BC 0001011C D0 1E 00 04 */ stfs f0, 4(r30) +/* 800131C0 00010120 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 800131C4 00010124 D0 1E 00 08 */ stfs f0, 8(r30) +/* 800131C8 00010128 C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 800131CC 0001012C D0 1E 00 0C */ stfs f0, 0xc(r30) +/* 800131D0 00010130 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 800131D4 00010134 D0 1E 00 10 */ stfs f0, 0x10(r30) +/* 800131D8 00010138 C0 01 00 34 */ lfs f0, 0x34(r1) +/* 800131DC 0001013C D0 1E 00 14 */ stfs f0, 0x14(r30) +lbl_800131E0: +/* 800131E0 00010140 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 +/* 800131E4 00010144 CB E1 00 70 */ lfd f31, 0x70(r1) +/* 800131E8 00010148 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 +/* 800131EC 0001014C CB C1 00 60 */ lfd f30, 0x60(r1) +/* 800131F0 00010150 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 800131F4 00010154 80 01 00 84 */ lwz r0, 0x84(r1) +/* 800131F8 00010158 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 800131FC 0001015C 7C 08 03 A6 */ mtlr r0 +/* 80013200 00010160 38 21 00 80 */ addi r1, r1, 0x80 +/* 80013204 00010164 4E 80 00 20 */ blr + +.global Touch__7CPlayerFR6CActorR13CStateManager +Touch__7CPlayerFR6CActorR13CStateManager: +/* 80013208 00010168 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001320C 0001016C 7C 08 02 A6 */ mflr r0 +/* 80013210 00010170 90 01 00 14 */ stw r0, 0x14(r1) +/* 80013214 00010174 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80013218 00010178 2C 00 00 01 */ cmpwi r0, 1 +/* 8001321C 0001017C 40 82 00 0C */ bne lbl_80013228 +/* 80013220 00010180 80 63 07 68 */ lwz r3, 0x768(r3) +/* 80013224 00010184 48 0D CA 3D */ bl Touch__10CMorphBallFR6CActorR13CStateManager +lbl_80013228: +/* 80013228 00010188 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001322C 0001018C 7C 08 03 A6 */ mtlr r0 +/* 80013230 00010190 38 21 00 10 */ addi r1, r1, 0x10 +/* 80013234 00010194 4E 80 00 20 */ blr + +.global UpdateScanningState__7CPlayerFRC11CFinalInputR13CStateManagerf +UpdateScanningState__7CPlayerFRC11CFinalInputR13CStateManagerf: +/* 80013238 00010198 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8001323C 0001019C 7C 08 02 A6 */ mflr r0 +/* 80013240 000101A0 90 01 00 54 */ stw r0, 0x54(r1) +/* 80013244 000101A4 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80013248 000101A8 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8001324C 000101AC 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80013250 000101B0 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80013254 000101B4 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80013258 000101B8 7C BF 2B 78 */ mr r31, r5 +/* 8001325C 000101BC FF E0 08 90 */ fmr f31, f1 +/* 80013260 000101C0 80 C5 08 B8 */ lwz r6, 0x8b8(r5) +/* 80013264 000101C4 7C 7E 1B 78 */ mr r30, r3 +/* 80013268 000101C8 7C 9D 23 78 */ mr r29, r4 +/* 8001326C 000101CC 80 86 00 00 */ lwz r4, 0(r6) +/* 80013270 000101D0 80 04 00 14 */ lwz r0, 0x14(r4) +/* 80013274 000101D4 2C 00 00 02 */ cmpwi r0, 2 +/* 80013278 000101D8 41 82 00 10 */ beq lbl_80013288 +/* 8001327C 000101DC 38 80 00 00 */ li r4, 0 +/* 80013280 000101E0 48 00 03 A1 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager +/* 80013284 000101E4 48 00 02 5C */ b lbl_800134E0 +lbl_80013288: +/* 80013288 000101E8 80 1E 03 A8 */ lwz r0, 0x3a8(r30) +/* 8001328C 000101EC 2C 00 00 00 */ cmpwi r0, 0 +/* 80013290 000101F0 41 82 00 28 */ beq lbl_800132B8 +/* 80013294 000101F4 A0 1E 03 B4 */ lhz r0, 0x3b4(r30) +/* 80013298 000101F8 A0 9E 03 10 */ lhz r4, 0x310(r30) +/* 8001329C 000101FC 7C 00 20 40 */ cmplw r0, r4 +/* 800132A0 00010200 41 82 00 18 */ beq lbl_800132B8 +/* 800132A4 00010204 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 800132A8 00010208 7C 04 00 40 */ cmplw r4, r0 +/* 800132AC 0001020C 41 82 00 0C */ beq lbl_800132B8 +/* 800132B0 00010210 38 80 00 00 */ li r4, 0 +/* 800132B4 00010214 48 00 03 6D */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager +lbl_800132B8: +/* 800132B8 00010218 80 1E 03 A8 */ lwz r0, 0x3a8(r30) +/* 800132BC 0001021C 2C 00 00 01 */ cmpwi r0, 1 +/* 800132C0 00010220 41 82 00 E4 */ beq lbl_800133A4 +/* 800132C4 00010224 40 80 00 10 */ bge lbl_800132D4 +/* 800132C8 00010228 2C 00 00 00 */ cmpwi r0, 0 +/* 800132CC 0001022C 40 80 00 14 */ bge lbl_800132E0 +/* 800132D0 00010230 48 00 02 10 */ b lbl_800134E0 +lbl_800132D4: +/* 800132D4 00010234 2C 00 00 03 */ cmpwi r0, 3 +/* 800132D8 00010238 40 80 02 08 */ bge lbl_800134E0 +/* 800132DC 0001023C 48 00 01 DC */ b lbl_800134B8 +lbl_800132E0: +/* 800132E0 00010240 7F C3 F3 78 */ mr r3, r30 +/* 800132E4 00010244 7F A4 EB 78 */ mr r4, r29 +/* 800132E8 00010248 7F E5 FB 78 */ mr r5, r31 +/* 800132EC 0001024C 48 00 02 19 */ bl ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager +/* 800132F0 00010250 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800132F4 00010254 41 82 01 EC */ beq lbl_800134E0 +/* 800132F8 00010258 A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 800132FC 0001025C 7F E3 FB 78 */ mr r3, r31 +/* 80013300 00010260 38 81 00 14 */ addi r4, r1, 0x14 +/* 80013304 00010264 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80013308 00010268 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8001330C 0001026C 48 03 92 69 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80013310 00010270 7C 64 1B 78 */ mr r4, r3 +/* 80013314 00010274 38 61 00 28 */ addi r3, r1, 0x28 +/* 80013318 00010278 48 09 C9 79 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8001331C 0001027C 80 63 00 04 */ lwz r3, 4(r3) +/* 80013320 00010280 28 03 00 00 */ cmplwi r3, 0 +/* 80013324 00010284 41 82 01 BC */ beq lbl_800134E0 +/* 80013328 00010288 48 04 01 A1 */ bl GetScannableObjectInfo__6CActorCFv +/* 8001332C 0001028C 80 BF 08 B8 */ lwz r5, 0x8b8(r31) +/* 80013330 00010290 7C 7D 1B 78 */ mr r29, r3 +/* 80013334 00010294 80 83 00 00 */ lwz r4, 0(r3) +/* 80013338 00010298 80 65 00 00 */ lwz r3, 0(r5) +/* 8001333C 0001029C 48 07 E3 55 */ bl GetScanTime__12CPlayerStateCFUi +/* 80013340 000102A0 FF E0 08 90 */ fmr f31, f1 +/* 80013344 000102A4 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80013348 000102A8 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 8001334C 000102AC 4C 41 13 82 */ cror 2, 1, 2 +/* 80013350 000102B0 40 82 00 1C */ bne lbl_8001336C +/* 80013354 000102B4 88 1E 09 C6 */ lbz r0, 0x9c6(r30) +/* 80013358 000102B8 38 60 00 00 */ li r3, 0 +/* 8001335C 000102BC 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80013360 000102C0 FF E0 00 90 */ fmr f31, f0 +/* 80013364 000102C4 98 1E 09 C6 */ stb r0, 0x9c6(r30) +/* 80013368 000102C8 48 00 00 14 */ b lbl_8001337C +lbl_8001336C: +/* 8001336C 000102CC 88 1E 09 C6 */ lbz r0, 0x9c6(r30) +/* 80013370 000102D0 38 60 00 01 */ li r3, 1 +/* 80013374 000102D4 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e +/* 80013378 000102D8 98 1E 09 C6 */ stb r0, 0x9c6(r30) +lbl_8001337C: +/* 8001337C 000102DC 7F C3 F3 78 */ mr r3, r30 +/* 80013380 000102E0 7F E5 FB 78 */ mr r5, r31 +/* 80013384 000102E4 38 80 00 01 */ li r4, 1 +/* 80013388 000102E8 48 00 02 99 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager +/* 8001338C 000102EC C0 3D 00 08 */ lfs f1, 8(r29) +/* 80013390 000102F0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80013394 000102F4 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 80013398 000102F8 D0 3E 03 AC */ stfs f1, 0x3ac(r30) +/* 8001339C 000102FC D0 1E 03 B0 */ stfs f0, 0x3b0(r30) +/* 800133A0 00010300 48 00 01 40 */ b lbl_800134E0 +lbl_800133A4: +/* 800133A4 00010304 7F C3 F3 78 */ mr r3, r30 +/* 800133A8 00010308 7F A4 EB 78 */ mr r4, r29 +/* 800133AC 0001030C 7F E5 FB 78 */ mr r5, r31 +/* 800133B0 00010310 48 00 01 55 */ bl ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager +/* 800133B4 00010314 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800133B8 00010318 41 82 00 EC */ beq lbl_800134A4 +/* 800133BC 0001031C A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 800133C0 00010320 7F E3 FB 78 */ mr r3, r31 +/* 800133C4 00010324 38 81 00 0C */ addi r4, r1, 0xc +/* 800133C8 00010328 B0 01 00 08 */ sth r0, 8(r1) +/* 800133CC 0001032C B0 01 00 0C */ sth r0, 0xc(r1) +/* 800133D0 00010330 48 03 91 A5 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 800133D4 00010334 7C 64 1B 78 */ mr r4, r3 +/* 800133D8 00010338 38 61 00 20 */ addi r3, r1, 0x20 +/* 800133DC 0001033C 48 09 C8 B5 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 800133E0 00010340 80 63 00 04 */ lwz r3, 4(r3) +/* 800133E4 00010344 28 03 00 00 */ cmplwi r3, 0 +/* 800133E8 00010348 41 82 00 A8 */ beq lbl_80013490 +/* 800133EC 0001034C 48 04 00 DD */ bl GetScannableObjectInfo__6CActorCFv +/* 800133F0 00010350 28 03 00 00 */ cmplwi r3, 0 +/* 800133F4 00010354 41 82 00 EC */ beq lbl_800134E0 +/* 800133F8 00010358 C0 23 00 08 */ lfs f1, 8(r3) +/* 800133FC 0001035C D0 21 00 1C */ stfs f1, 0x1c(r1) +/* 80013400 00010360 C0 1E 03 AC */ lfs f0, 0x3ac(r30) +/* 80013404 00010364 EC 00 F8 2A */ fadds f0, f0, f31 +/* 80013408 00010368 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001340C 0001036C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80013410 00010370 40 80 00 0C */ bge lbl_8001341C +/* 80013414 00010374 38 81 00 1C */ addi r4, r1, 0x1c +/* 80013418 00010378 48 00 00 08 */ b lbl_80013420 +lbl_8001341C: +/* 8001341C 0001037C 38 81 00 18 */ addi r4, r1, 0x18 +lbl_80013420: +/* 80013420 00010380 C0 04 00 00 */ lfs f0, 0(r4) +/* 80013424 00010384 D0 1E 03 AC */ stfs f0, 0x3ac(r30) +/* 80013428 00010388 C0 1E 03 B0 */ lfs f0, 0x3b0(r30) +/* 8001342C 0001038C EC 00 F8 2A */ fadds f0, f0, f31 +/* 80013430 00010390 D0 1E 03 B0 */ stfs f0, 0x3b0(r30) +/* 80013434 00010394 C0 3E 03 AC */ lfs f1, 0x3ac(r30) +/* 80013438 00010398 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 8001343C 0001039C 80 BF 08 B8 */ lwz r5, 0x8b8(r31) +/* 80013440 000103A0 EC 21 00 24 */ fdivs f1, f1, f0 +/* 80013444 000103A4 80 83 00 00 */ lwz r4, 0(r3) +/* 80013448 000103A8 80 65 00 00 */ lwz r3, 0(r5) +/* 8001344C 000103AC 48 07 E1 89 */ bl SetScanTime__12CPlayerStateFUif +/* 80013450 000103B0 C0 3E 03 AC */ lfs f1, 0x3ac(r30) +/* 80013454 000103B4 C0 01 00 1C */ lfs f0, 0x1c(r1) +/* 80013458 000103B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001345C 000103BC 4C 41 13 82 */ cror 2, 1, 2 +/* 80013460 000103C0 40 82 00 80 */ bne lbl_800134E0 +/* 80013464 000103C4 80 6D A1 38 */ lwz r3, gpTweakGui@sda21(r13) +/* 80013468 000103C8 C0 3E 03 B0 */ lfs f1, 0x3b0(r30) +/* 8001346C 000103CC C0 03 02 24 */ lfs f0, 0x224(r3) +/* 80013470 000103D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80013474 000103D4 4C 41 13 82 */ cror 2, 1, 2 +/* 80013478 000103D8 40 82 00 68 */ bne lbl_800134E0 +/* 8001347C 000103DC 7F C3 F3 78 */ mr r3, r30 +/* 80013480 000103E0 7F E5 FB 78 */ mr r5, r31 +/* 80013484 000103E4 38 80 00 02 */ li r4, 2 +/* 80013488 000103E8 48 00 01 99 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager +/* 8001348C 000103EC 48 00 00 54 */ b lbl_800134E0 +lbl_80013490: +/* 80013490 000103F0 7F C3 F3 78 */ mr r3, r30 +/* 80013494 000103F4 7F E5 FB 78 */ mr r5, r31 +/* 80013498 000103F8 38 80 00 00 */ li r4, 0 +/* 8001349C 000103FC 48 00 01 85 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager +/* 800134A0 00010400 48 00 00 40 */ b lbl_800134E0 +lbl_800134A4: +/* 800134A4 00010404 7F C3 F3 78 */ mr r3, r30 +/* 800134A8 00010408 7F E5 FB 78 */ mr r5, r31 +/* 800134AC 0001040C 38 80 00 00 */ li r4, 0 +/* 800134B0 00010410 48 00 01 71 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager +/* 800134B4 00010414 48 00 00 2C */ b lbl_800134E0 +lbl_800134B8: +/* 800134B8 00010418 7F C3 F3 78 */ mr r3, r30 +/* 800134BC 0001041C 7F A4 EB 78 */ mr r4, r29 +/* 800134C0 00010420 7F E5 FB 78 */ mr r5, r31 +/* 800134C4 00010424 48 00 00 41 */ bl ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager +/* 800134C8 00010428 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800134CC 0001042C 40 82 00 14 */ bne lbl_800134E0 +/* 800134D0 00010430 7F C3 F3 78 */ mr r3, r30 +/* 800134D4 00010434 7F E5 FB 78 */ mr r5, r31 +/* 800134D8 00010438 38 80 00 00 */ li r4, 0 +/* 800134DC 0001043C 48 00 01 45 */ bl SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager +lbl_800134E0: +/* 800134E0 00010440 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 800134E4 00010444 80 01 00 54 */ lwz r0, 0x54(r1) +/* 800134E8 00010448 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 800134EC 0001044C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 800134F0 00010450 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 800134F4 00010454 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 800134F8 00010458 7C 08 03 A6 */ mtlr r0 +/* 800134FC 0001045C 38 21 00 50 */ addi r1, r1, 0x50 +/* 80013500 00010460 4E 80 00 20 */ blr + +.global ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager +ValidateScanning__7CPlayerFRC11CFinalInputR13CStateManager: +/* 80013504 00010464 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80013508 00010468 7C 08 02 A6 */ mflr r0 +/* 8001350C 0001046C 90 01 00 44 */ stw r0, 0x44(r1) +/* 80013510 00010470 DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80013514 00010474 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80013518 00010478 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 8001351C 0001047C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80013520 00010480 7C 7E 1B 78 */ mr r30, r3 +/* 80013524 00010484 7C BF 2B 78 */ mr r31, r5 +/* 80013528 00010488 38 60 00 3C */ li r3, 0x3c +/* 8001352C 0001048C 4B FF 93 49 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80013530 00010490 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80013534 00010494 41 82 00 C8 */ beq lbl_800135FC +/* 80013538 00010498 A0 1E 03 10 */ lhz r0, 0x310(r30) +/* 8001353C 0001049C 7F E3 FB 78 */ mr r3, r31 +/* 80013540 000104A0 38 81 00 0C */ addi r4, r1, 0xc +/* 80013544 000104A4 B0 01 00 08 */ sth r0, 8(r1) +/* 80013548 000104A8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8001354C 000104AC 48 03 90 29 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80013550 000104B0 7C 64 1B 78 */ mr r4, r3 +/* 80013554 000104B4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80013558 000104B8 48 09 C7 39 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8001355C 000104BC 80 1E 03 04 */ lwz r0, 0x304(r30) +/* 80013560 000104C0 80 C3 00 04 */ lwz r6, 4(r3) +/* 80013564 000104C4 2C 00 00 01 */ cmpwi r0, 1 +/* 80013568 000104C8 40 82 00 94 */ bne lbl_800135FC +/* 8001356C 000104CC 28 06 00 00 */ cmplwi r6, 0 +/* 80013570 000104D0 41 82 00 8C */ beq lbl_800135FC +/* 80013574 000104D4 80 66 00 68 */ lwz r3, 0x68(r6) +/* 80013578 000104D8 38 00 00 80 */ li r0, 0x80 +/* 8001357C 000104DC 80 A6 00 6C */ lwz r5, 0x6c(r6) +/* 80013580 000104E0 38 80 00 00 */ li r4, 0 +/* 80013584 000104E4 7C 60 00 38 */ and r0, r3, r0 +/* 80013588 000104E8 7C A3 20 38 */ and r3, r5, r4 +/* 8001358C 000104EC 7C 63 22 78 */ xor r3, r3, r4 +/* 80013590 000104F0 7C 00 22 78 */ xor r0, r0, r4 +/* 80013594 000104F4 7C 60 03 79 */ or. r0, r3, r0 +/* 80013598 000104F8 41 82 00 64 */ beq lbl_800135FC +/* 8001359C 000104FC C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 800135A0 00010500 38 61 00 18 */ addi r3, r1, 0x18 +/* 800135A4 00010504 C0 06 00 50 */ lfs f0, 0x50(r6) +/* 800135A8 00010508 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 800135AC 0001050C C0 46 00 60 */ lfs f2, 0x60(r6) +/* 800135B0 00010510 EC 81 00 28 */ fsubs f4, f1, f0 +/* 800135B4 00010514 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 800135B8 00010518 C0 06 00 40 */ lfs f0, 0x40(r6) +/* 800135BC 0001051C EC 43 10 28 */ fsubs f2, f3, f2 +/* 800135C0 00010520 EC 01 00 28 */ fsubs f0, f1, f0 +/* 800135C4 00010524 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 800135C8 00010528 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 800135CC 0001052C D0 01 00 18 */ stfs f0, 0x18(r1) +/* 800135D0 00010530 48 30 11 29 */ bl CanBeNormalized__9CVector3fCFv +/* 800135D4 00010534 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800135D8 00010538 41 82 00 24 */ beq lbl_800135FC +/* 800135DC 0001053C 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 800135E0 00010540 38 61 00 18 */ addi r3, r1, 0x18 +/* 800135E4 00010544 C3 E4 02 18 */ lfs f31, 0x218(r4) +/* 800135E8 00010548 48 30 12 D1 */ bl Magnitude__9CVector3fCFv +/* 800135EC 0001054C FC 01 F8 40 */ fcmpo cr0, f1, f31 +/* 800135F0 00010550 40 80 00 0C */ bge lbl_800135FC +/* 800135F4 00010554 38 60 00 01 */ li r3, 1 +/* 800135F8 00010558 48 00 00 08 */ b lbl_80013600 +lbl_800135FC: +/* 800135FC 0001055C 38 60 00 00 */ li r3, 0 +lbl_80013600: +/* 80013600 00010560 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80013604 00010564 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80013608 00010568 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 8001360C 0001056C 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80013610 00010570 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80013614 00010574 7C 08 03 A6 */ mtlr r0 +/* 80013618 00010578 38 21 00 40 */ addi r1, r1, 0x40 +/* 8001361C 0001057C 4E 80 00 20 */ blr + +.global SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager +SetScanningState__7CPlayerFQ27CPlayer16EPlayerScanStateR13CStateManager: +/* 80013620 00010580 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80013624 00010584 7C 08 02 A6 */ mflr r0 +/* 80013628 00010588 90 01 00 44 */ stw r0, 0x44(r1) +/* 8001362C 0001058C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80013630 00010590 7C BF 2B 78 */ mr r31, r5 +/* 80013634 00010594 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80013638 00010598 7C 9E 23 78 */ mr r30, r4 +/* 8001363C 0001059C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80013640 000105A0 7C 7D 1B 78 */ mr r29, r3 +/* 80013644 000105A4 93 81 00 30 */ stw r28, 0x30(r1) +/* 80013648 000105A8 80 03 03 A8 */ lwz r0, 0x3a8(r3) +/* 8001364C 000105AC 7C 00 F0 00 */ cmpw r0, r30 +/* 80013650 000105B0 41 82 01 A0 */ beq lbl_800137F0 +/* 80013654 000105B4 7F E3 FB 78 */ mr r3, r31 +/* 80013658 000105B8 38 80 00 00 */ li r4, 0 +/* 8001365C 000105BC 48 03 08 FD */ bl SetGameState__13CStateManagerFQ213CStateManager10EGameState +/* 80013660 000105C0 80 1D 03 A8 */ lwz r0, 0x3a8(r29) +/* 80013664 000105C4 2C 00 00 02 */ cmpwi r0, 2 +/* 80013668 000105C8 40 82 00 48 */ bne lbl_800136B0 +/* 8001366C 000105CC A0 1D 03 B4 */ lhz r0, 0x3b4(r29) +/* 80013670 000105D0 7F E3 FB 78 */ mr r3, r31 +/* 80013674 000105D4 38 81 00 10 */ addi r4, r1, 0x10 +/* 80013678 000105D8 B0 01 00 10 */ sth r0, 0x10(r1) +/* 8001367C 000105DC 48 03 8E F9 */ bl ObjectById__13CStateManagerF9TUniqueId +/* 80013680 000105E0 7C 64 1B 78 */ mr r4, r3 +/* 80013684 000105E4 38 61 00 1C */ addi r3, r1, 0x1c +/* 80013688 000105E8 48 09 C6 09 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 8001368C 000105EC 80 63 00 04 */ lwz r3, 4(r3) +/* 80013690 000105F0 28 03 00 00 */ cmplwi r3, 0 +/* 80013694 000105F4 41 82 00 1C */ beq lbl_800136B0 +/* 80013698 000105F8 81 83 00 00 */ lwz r12, 0(r3) +/* 8001369C 000105FC 7F E5 FB 78 */ mr r5, r31 +/* 800136A0 00010600 38 80 00 02 */ li r4, 2 +/* 800136A4 00010604 81 8C 00 60 */ lwz r12, 0x60(r12) +/* 800136A8 00010608 7D 89 03 A6 */ mtctr r12 +/* 800136AC 0001060C 4E 80 04 21 */ bctrl +lbl_800136B0: +/* 800136B0 00010610 2C 1E 00 01 */ cmpwi r30, 1 +/* 800136B4 00010614 41 82 01 08 */ beq lbl_800137BC +/* 800136B8 00010618 40 80 00 10 */ bge lbl_800136C8 +/* 800136BC 0001061C 2C 1E 00 00 */ cmpwi r30, 0 +/* 800136C0 00010620 40 80 00 14 */ bge lbl_800136D4 +/* 800136C4 00010624 48 00 01 28 */ b lbl_800137EC +lbl_800136C8: +/* 800136C8 00010628 2C 1E 00 03 */ cmpwi r30, 3 +/* 800136CC 0001062C 40 80 01 20 */ bge lbl_800137EC +/* 800136D0 00010630 48 00 00 F8 */ b lbl_800137C8 +lbl_800136D4: +/* 800136D4 00010634 80 1D 03 A8 */ lwz r0, 0x3a8(r29) +/* 800136D8 00010638 2C 00 00 01 */ cmpwi r0, 1 +/* 800136DC 0001063C 41 82 00 0C */ beq lbl_800136E8 +/* 800136E0 00010640 2C 00 00 02 */ cmpwi r0, 2 +/* 800136E4 00010644 40 82 00 1C */ bne lbl_80013700 +lbl_800136E8: +/* 800136E8 00010648 88 1D 09 C6 */ lbz r0, 0x9c6(r29) +/* 800136EC 0001064C 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 800136F0 00010650 41 82 00 10 */ beq lbl_80013700 +/* 800136F4 00010654 7F A3 EB 78 */ mr r3, r29 +/* 800136F8 00010658 7F E4 FB 78 */ mr r4, r31 +/* 800136FC 0001065C 4B FF D4 31 */ bl FinishNewScan__7CPlayerFR13CStateManager +lbl_80013700: +/* 80013700 00010660 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80013704 00010664 D0 1D 03 AC */ stfs f0, 0x3ac(r29) +/* 80013708 00010668 D0 1D 03 B0 */ stfs f0, 0x3b0(r29) +/* 8001370C 0001066C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80013710 00010670 88 03 02 1C */ lbz r0, 0x21c(r3) +/* 80013714 00010674 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80013718 00010678 40 82 00 98 */ bne lbl_800137B0 +/* 8001371C 0001067C A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 80013720 00010680 7F E3 FB 78 */ mr r3, r31 +/* 80013724 00010684 38 81 00 0C */ addi r4, r1, 0xc +/* 80013728 00010688 B0 01 00 08 */ sth r0, 8(r1) +/* 8001372C 0001068C B0 01 00 0C */ sth r0, 0xc(r1) +/* 80013730 00010690 48 03 8E 75 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80013734 00010694 7C 64 1B 78 */ mr r4, r3 +/* 80013738 00010698 38 61 00 14 */ addi r3, r1, 0x14 +/* 8001373C 0001069C 48 09 C5 55 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 80013740 000106A0 80 63 00 04 */ lwz r3, 4(r3) +/* 80013744 000106A4 28 03 00 00 */ cmplwi r3, 0 +/* 80013748 000106A8 41 82 00 68 */ beq lbl_800137B0 +/* 8001374C 000106AC 80 83 00 68 */ lwz r4, 0x68(r3) +/* 80013750 000106B0 38 00 00 80 */ li r0, 0x80 +/* 80013754 000106B4 80 C3 00 6C */ lwz r6, 0x6c(r3) +/* 80013758 000106B8 38 A0 00 00 */ li r5, 0 +/* 8001375C 000106BC 7C 80 00 38 */ and r0, r4, r0 +/* 80013760 000106C0 7C C4 28 38 */ and r4, r6, r5 +/* 80013764 000106C4 7C 84 2A 78 */ xor r4, r4, r5 +/* 80013768 000106C8 7C 00 2A 78 */ xor r0, r0, r5 +/* 8001376C 000106CC 7C 80 03 79 */ or. r0, r4, r0 +/* 80013770 000106D0 41 82 00 40 */ beq lbl_800137B0 +/* 80013774 000106D4 48 03 FD 55 */ bl GetScannableObjectInfo__6CActorCFv +/* 80013778 000106D8 7C 7C 1B 79 */ or. r28, r3, r3 +/* 8001377C 000106DC 41 82 00 34 */ beq lbl_800137B0 +/* 80013780 000106E0 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80013784 000106E4 80 9C 00 00 */ lwz r4, 0(r28) +/* 80013788 000106E8 80 63 00 00 */ lwz r3, 0(r3) +/* 8001378C 000106EC 48 07 DF 05 */ bl GetScanTime__12CPlayerStateCFUi +/* 80013790 000106F0 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80013794 000106F4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80013798 000106F8 40 80 00 18 */ bge lbl_800137B0 +/* 8001379C 000106FC 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 800137A0 00010700 80 9C 00 00 */ lwz r4, 0(r28) +/* 800137A4 00010704 80 63 00 00 */ lwz r3, 0(r3) +/* 800137A8 00010708 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 800137AC 0001070C 48 07 DE 29 */ bl SetScanTime__12CPlayerStateFUif +lbl_800137B0: +/* 800137B0 00010710 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 800137B4 00010714 B0 1D 03 B4 */ sth r0, 0x3b4(r29) +/* 800137B8 00010718 48 00 00 34 */ b lbl_800137EC +lbl_800137BC: +/* 800137BC 0001071C A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 800137C0 00010720 B0 1D 03 B4 */ sth r0, 0x3b4(r29) +/* 800137C4 00010724 48 00 00 28 */ b lbl_800137EC +lbl_800137C8: +/* 800137C8 00010728 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 800137CC 0001072C 88 03 02 1C */ lbz r0, 0x21c(r3) +/* 800137D0 00010730 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 800137D4 00010734 41 82 00 10 */ beq lbl_800137E4 +/* 800137D8 00010738 7F E3 FB 78 */ mr r3, r31 +/* 800137DC 0001073C 38 80 00 01 */ li r4, 1 +/* 800137E0 00010740 48 03 07 79 */ bl SetGameState__13CStateManagerFQ213CStateManager10EGameState +lbl_800137E4: +/* 800137E4 00010744 A0 1D 03 10 */ lhz r0, 0x310(r29) +/* 800137E8 00010748 B0 1D 03 B4 */ sth r0, 0x3b4(r29) +lbl_800137EC: +/* 800137EC 0001074C 93 DD 03 A8 */ stw r30, 0x3a8(r29) +lbl_800137F0: +/* 800137F0 00010750 80 01 00 44 */ lwz r0, 0x44(r1) +/* 800137F4 00010754 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 800137F8 00010758 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 800137FC 0001075C 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 80013800 00010760 83 81 00 30 */ lwz r28, 0x30(r1) +/* 80013804 00010764 7C 08 03 A6 */ mtlr r0 +/* 80013808 00010768 38 21 00 40 */ addi r1, r1, 0x40 +/* 8001380C 0001076C 4E 80 00 20 */ blr + +.global GetExplorationMode__7CPlayerCFv +GetExplorationMode__7CPlayerCFv: +/* 80013810 00010770 80 03 04 98 */ lwz r0, 0x498(r3) +/* 80013814 00010774 2C 00 00 03 */ cmpwi r0, 3 +/* 80013818 00010778 41 82 00 20 */ beq lbl_80013838 +/* 8001381C 0001077C 40 80 00 24 */ bge lbl_80013840 +/* 80013820 00010780 2C 00 00 00 */ cmpwi r0, 0 +/* 80013824 00010784 41 82 00 14 */ beq lbl_80013838 +/* 80013828 00010788 40 80 00 08 */ bge lbl_80013830 +/* 8001382C 0001078C 48 00 00 14 */ b lbl_80013840 +lbl_80013830: +/* 80013830 00010790 38 60 00 00 */ li r3, 0 +/* 80013834 00010794 4E 80 00 20 */ blr +lbl_80013838: +/* 80013838 00010798 38 60 00 01 */ li r3, 1 +/* 8001383C 0001079C 4E 80 00 20 */ blr +lbl_80013840: +/* 80013840 000107A0 38 60 00 00 */ li r3, 0 +/* 80013844 000107A4 4E 80 00 20 */ blr + +.global GetCombatMode__7CPlayerCFv +GetCombatMode__7CPlayerCFv: +/* 80013848 000107A8 80 03 04 98 */ lwz r0, 0x498(r3) +/* 8001384C 000107AC 2C 00 00 03 */ cmpwi r0, 3 +/* 80013850 000107B0 41 82 00 20 */ beq lbl_80013870 +/* 80013854 000107B4 40 80 00 24 */ bge lbl_80013878 +/* 80013858 000107B8 2C 00 00 00 */ cmpwi r0, 0 +/* 8001385C 000107BC 41 82 00 14 */ beq lbl_80013870 +/* 80013860 000107C0 40 80 00 08 */ bge lbl_80013868 +/* 80013864 000107C4 48 00 00 14 */ b lbl_80013878 +lbl_80013868: +/* 80013868 000107C8 38 60 00 01 */ li r3, 1 +/* 8001386C 000107CC 4E 80 00 20 */ blr +lbl_80013870: +/* 80013870 000107D0 38 60 00 00 */ li r3, 0 +/* 80013874 000107D4 4E 80 00 20 */ blr +lbl_80013878: +/* 80013878 000107D8 38 60 00 00 */ li r3, 0 +/* 8001387C 000107DC 4E 80 00 20 */ blr + +.global RenderGun__7CPlayerCFRC13CStateManagerRC9CVector3f +RenderGun__7CPlayerCFRC13CStateManagerRC9CVector3f: +/* 80013880 000107E0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80013884 000107E4 7C 08 02 A6 */ mflr r0 +/* 80013888 000107E8 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001388C 000107EC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80013890 000107F0 7C BF 2B 78 */ mr r31, r5 +/* 80013894 000107F4 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80013898 000107F8 7C 9E 23 78 */ mr r30, r4 +/* 8001389C 000107FC 93 A1 00 14 */ stw r29, 0x14(r1) +/* 800138A0 00010800 7C 7D 1B 78 */ mr r29, r3 +/* 800138A4 00010804 93 81 00 10 */ stw r28, 0x10(r1) +/* 800138A8 00010808 80 64 08 70 */ lwz r3, 0x870(r4) +/* 800138AC 0001080C 4B FF 70 55 */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 800138B0 00010810 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800138B4 00010814 40 82 00 FC */ bne lbl_800139B0 +/* 800138B8 00010818 80 7D 04 90 */ lwz r3, 0x490(r29) +/* 800138BC 0001081C 80 63 07 40 */ lwz r3, 0x740(r3) +/* 800138C0 00010820 88 03 03 B2 */ lbz r0, 0x3b2(r3) +/* 800138C4 00010824 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 800138C8 00010828 41 82 00 1C */ beq lbl_800138E4 +/* 800138CC 0001082C 80 03 03 34 */ lwz r0, 0x334(r3) +/* 800138D0 00010830 2C 00 00 0A */ cmpwi r0, 0xa +/* 800138D4 00010834 41 82 00 10 */ beq lbl_800138E4 +/* 800138D8 00010838 7F C4 F3 78 */ mr r4, r30 +/* 800138DC 0001083C 7F E5 FB 78 */ mr r5, r31 +/* 800138E0 00010840 48 10 BB D9 */ bl RenderGrappleBeam__11CGrappleArmCFRC13CStateManagerRC9CVector3f +lbl_800138E4: +/* 800138E4 00010844 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 800138E8 00010848 7F C4 F3 78 */ mr r4, r30 +/* 800138EC 0001084C 80 63 00 00 */ lwz r3, 0(r3) +/* 800138F0 00010850 48 07 DC 69 */ bl GetActiveVisor__12CPlayerStateCFRC13CStateManager +/* 800138F4 00010854 80 9E 08 B8 */ lwz r4, 0x8b8(r30) +/* 800138F8 00010858 20 03 00 02 */ subfic r0, r3, 2 +/* 800138FC 0001085C 7C 00 00 34 */ cntlzw r0, r0 +/* 80013900 00010860 80 64 00 00 */ lwz r3, 0(r4) +/* 80013904 00010864 54 1C D9 7E */ srwi r28, r0, 5 +/* 80013908 00010868 48 07 DF 5D */ bl GetVisorTransitionFactor__12CPlayerStateCFv +/* 8001390C 0001086C 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 80013910 00010870 38 60 00 00 */ li r3, 0 +/* 80013914 00010874 41 82 00 18 */ beq lbl_8001392C +/* 80013918 00010878 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 8001391C 0001087C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80013920 00010880 4C 41 13 82 */ cror 2, 1, 2 +/* 80013924 00010884 40 82 00 08 */ bne lbl_8001392C +/* 80013928 00010888 38 60 00 01 */ li r3, 1 +lbl_8001392C: +/* 8001392C 0001088C 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 80013930 00010890 28 00 00 01 */ cmplwi r0, 1 +/* 80013934 00010894 41 82 00 7C */ beq lbl_800139B0 +/* 80013938 00010898 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 8001393C 0001089C 4B FF 6F A9 */ bl IsInFirstPersonCamera__14CCameraManagerCFv +/* 80013940 000108A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80013944 000108A4 41 82 00 10 */ beq lbl_80013954 +/* 80013948 000108A8 80 1D 02 F4 */ lwz r0, 0x2f4(r29) +/* 8001394C 000108AC 2C 00 00 00 */ cmpwi r0, 0 +/* 80013950 000108B0 41 82 00 1C */ beq lbl_8001396C +lbl_80013954: +/* 80013954 000108B4 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80013958 000108B8 2C 00 00 02 */ cmpwi r0, 2 +/* 8001395C 000108BC 40 82 00 54 */ bne lbl_800139B0 +/* 80013960 000108C0 80 1D 04 98 */ lwz r0, 0x498(r29) +/* 80013964 000108C4 2C 00 00 03 */ cmpwi r0, 3 +/* 80013968 000108C8 40 82 00 48 */ bne lbl_800139B0 +lbl_8001396C: +/* 8001396C 000108CC C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80013970 000108D0 38 60 00 05 */ li r3, 5 +/* 80013974 000108D4 38 80 00 00 */ li r4, 0 +/* 80013978 000108D8 38 00 00 03 */ li r0, 3 +/* 8001397C 000108DC FC 40 08 90 */ fmr f2, f1 +/* 80013980 000108E0 98 61 00 08 */ stb r3, 8(r1) +/* 80013984 000108E4 FC 60 08 90 */ fmr f3, f1 +/* 80013988 000108E8 C0 9D 04 94 */ lfs f4, 0x494(r29) +/* 8001398C 000108EC 98 81 00 09 */ stb r4, 9(r1) +/* 80013990 000108F0 38 61 00 0C */ addi r3, r1, 0xc +/* 80013994 000108F4 B0 01 00 0A */ sth r0, 0xa(r1) +/* 80013998 000108F8 48 34 FA 55 */ bl __ct__6CColorFffff +/* 8001399C 000108FC 80 7D 04 90 */ lwz r3, 0x490(r29) +/* 800139A0 00010900 7F C4 F3 78 */ mr r4, r30 +/* 800139A4 00010904 7F E5 FB 78 */ mr r5, r31 +/* 800139A8 00010908 38 C1 00 08 */ addi r6, r1, 8 +/* 800139AC 0001090C 48 02 E0 E1 */ bl Render__10CPlayerGunCFRC13CStateManagerRC9CVector3fRC11CModelFlags +lbl_800139B0: +/* 800139B0 00010910 80 01 00 24 */ lwz r0, 0x24(r1) +/* 800139B4 00010914 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 800139B8 00010918 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 800139BC 0001091C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 800139C0 00010920 83 81 00 10 */ lwz r28, 0x10(r1) +/* 800139C4 00010924 7C 08 03 A6 */ mtlr r0 +/* 800139C8 00010928 38 21 00 20 */ addi r1, r1, 0x20 +/* 800139CC 0001092C 4E 80 00 20 */ blr + +.global Render__7CPlayerCFRC13CStateManager +Render__7CPlayerCFRC13CStateManager: +/* 800139D0 00010930 94 21 FD 60 */ stwu r1, -0x2a0(r1) +/* 800139D4 00010934 7C 08 02 A6 */ mflr r0 +/* 800139D8 00010938 90 01 02 A4 */ stw r0, 0x2a4(r1) +/* 800139DC 0001093C DB E1 02 90 */ stfd f31, 0x290(r1) +/* 800139E0 00010940 F3 E1 02 98 */ psq_st f31, 664(r1), 0, qr0 +/* 800139E4 00010944 DB C1 02 80 */ stfd f30, 0x280(r1) +/* 800139E8 00010948 F3 C1 02 88 */ psq_st f30, 648(r1), 0, qr0 +/* 800139EC 0001094C DB A1 02 70 */ stfd f29, 0x270(r1) +/* 800139F0 00010950 F3 A1 02 78 */ psq_st f29, 632(r1), 0, qr0 +/* 800139F4 00010954 DB 81 02 60 */ stfd f28, 0x260(r1) +/* 800139F8 00010958 F3 81 02 68 */ psq_st f28, 616(r1), 0, qr0 +/* 800139FC 0001095C DB 61 02 50 */ stfd f27, 0x250(r1) +/* 80013A00 00010960 F3 61 02 58 */ psq_st f27, 600(r1), 0, qr0 +/* 80013A04 00010964 BE A1 02 24 */ stmw r21, 0x224(r1) +/* 80013A08 00010968 80 A3 02 F4 */ lwz r5, 0x2f4(r3) +/* 80013A0C 0001096C 7C 7E 1B 78 */ mr r30, r3 +/* 80013A10 00010970 7C 9F 23 78 */ mr r31, r4 +/* 80013A14 00010974 20 65 00 04 */ subfic r3, r5, 4 +/* 80013A18 00010978 38 05 FF FC */ addi r0, r5, -4 +/* 80013A1C 0001097C 7C 60 03 78 */ or r0, r3, r0 +/* 80013A20 00010980 54 15 0F FF */ rlwinm. r21, r0, 1, 0x1f, 0x1f +/* 80013A24 00010984 40 82 00 48 */ bne lbl_80013A6C +/* 80013A28 00010988 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 80013A2C 0001098C 4B FF 80 ED */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 80013A30 00010990 7C 64 1B 78 */ mr r4, r3 +/* 80013A34 00010994 38 61 00 10 */ addi r3, r1, 0x10 +/* 80013A38 00010998 48 09 BC F9 */ bl "__ct__30TCastToPtr<16CCinematicCamera>FR7CEntity" +/* 80013A3C 0001099C 80 83 00 04 */ lwz r4, 4(r3) +/* 80013A40 000109A0 28 04 00 00 */ cmplwi r4, 0 +/* 80013A44 000109A4 41 82 00 28 */ beq lbl_80013A6C +/* 80013A48 000109A8 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80013A4C 000109AC 38 60 00 00 */ li r3, 0 +/* 80013A50 000109B0 2C 00 00 01 */ cmpwi r0, 1 +/* 80013A54 000109B4 40 82 00 14 */ bne lbl_80013A68 +/* 80013A58 000109B8 80 04 02 1C */ lwz r0, 0x21c(r4) +/* 80013A5C 000109BC 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 +/* 80013A60 000109C0 41 82 00 08 */ beq lbl_80013A68 +/* 80013A64 000109C4 38 60 00 01 */ li r3, 1 +lbl_80013A68: +/* 80013A68 000109C8 7C 75 1B 78 */ mr r21, r3 +lbl_80013A6C: +/* 80013A6C 000109CC 80 1E 02 F4 */ lwz r0, 0x2f4(r30) +/* 80013A70 000109D0 2C 00 00 00 */ cmpwi r0, 0 +/* 80013A74 000109D4 41 82 06 28 */ beq lbl_8001409C +/* 80013A78 000109D8 56 A0 06 3F */ clrlwi. r0, r21, 0x18 +/* 80013A7C 000109DC 41 82 06 20 */ beq lbl_8001409C +/* 80013A80 000109E0 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80013A84 000109E4 3A A0 00 00 */ li r21, 0 +/* 80013A88 000109E8 3A E0 00 00 */ li r23, 0 +/* 80013A8C 000109EC 2C 00 00 02 */ cmpwi r0, 2 +/* 80013A90 000109F0 41 82 00 A8 */ beq lbl_80013B38 +/* 80013A94 000109F4 40 80 00 14 */ bge lbl_80013AA8 +/* 80013A98 000109F8 2C 00 00 00 */ cmpwi r0, 0 +/* 80013A9C 000109FC 41 82 00 18 */ beq lbl_80013AB4 +/* 80013AA0 00010A00 40 80 00 C8 */ bge lbl_80013B68 +/* 80013AA4 00010A04 48 00 00 E4 */ b lbl_80013B88 +lbl_80013AA8: +/* 80013AA8 00010A08 2C 00 00 04 */ cmpwi r0, 4 +/* 80013AAC 00010A0C 40 80 00 DC */ bge lbl_80013B88 +/* 80013AB0 00010A10 48 00 00 A0 */ b lbl_80013B50 +lbl_80013AB4: +/* 80013AB4 00010A14 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80013AB8 00010A18 7F E4 FB 78 */ mr r4, r31 +/* 80013ABC 00010A1C 38 A0 00 00 */ li r5, 0 +/* 80013AC0 00010A20 48 10 22 51 */ bl Touch__10CModelDataCFRC13CStateManageri +/* 80013AC4 00010A24 7F C3 F3 78 */ mr r3, r30 +/* 80013AC8 00010A28 7F E4 FB 78 */ mr r4, r31 +/* 80013ACC 00010A2C 48 10 6A 1D */ bl Render__13CPhysicsActorCFRC13CStateManager +/* 80013AD0 00010A30 7F C3 F3 78 */ mr r3, r30 +/* 80013AD4 00010A34 4B FF E2 05 */ bl HasTransitionBeamModel__7CPlayerCFv +/* 80013AD8 00010A38 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80013ADC 00010A3C 41 82 00 AC */ beq lbl_80013B88 +/* 80013AE0 00010A40 80 7E 07 F0 */ lwz r3, 0x7f0(r30) +/* 80013AE4 00010A44 7F E4 FB 78 */ mr r4, r31 +/* 80013AE8 00010A48 38 A0 00 00 */ li r5, 0 +/* 80013AEC 00010A4C 48 10 22 25 */ bl Touch__10CModelDataCFRC13CStateManageri +/* 80013AF0 00010A50 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80013AF4 00010A54 38 80 00 00 */ li r4, 0 +/* 80013AF8 00010A58 38 00 00 03 */ li r0, 3 +/* 80013AFC 00010A5C 98 81 00 78 */ stb r4, 0x78(r1) +/* 80013B00 00010A60 FC 40 08 90 */ fmr f2, f1 +/* 80013B04 00010A64 38 61 00 7C */ addi r3, r1, 0x7c +/* 80013B08 00010A68 FC 60 08 90 */ fmr f3, f1 +/* 80013B0C 00010A6C 98 81 00 79 */ stb r4, 0x79(r1) +/* 80013B10 00010A70 FC 80 08 90 */ fmr f4, f1 +/* 80013B14 00010A74 B0 01 00 7A */ sth r0, 0x7a(r1) +/* 80013B18 00010A78 48 34 F8 D5 */ bl __ct__6CColorFffff +/* 80013B1C 00010A7C 80 7E 07 F0 */ lwz r3, 0x7f0(r30) +/* 80013B20 00010A80 7F E4 FB 78 */ mr r4, r31 +/* 80013B24 00010A84 80 DE 00 90 */ lwz r6, 0x90(r30) +/* 80013B28 00010A88 38 BE 07 F4 */ addi r5, r30, 0x7f4 +/* 80013B2C 00010A8C 38 E1 00 78 */ addi r7, r1, 0x78 +/* 80013B30 00010A90 48 10 12 8D */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 80013B34 00010A94 48 00 00 54 */ b lbl_80013B88 +lbl_80013B38: +/* 80013B38 00010A98 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80013B3C 00010A9C 7F E4 FB 78 */ mr r4, r31 +/* 80013B40 00010AA0 48 0D B4 7D */ bl TouchModel__10CMorphBallCFRC13CStateManager +/* 80013B44 00010AA4 3A A0 00 01 */ li r21, 1 +/* 80013B48 00010AA8 3A E0 00 01 */ li r23, 1 +/* 80013B4C 00010AAC 48 00 00 3C */ b lbl_80013B88 +lbl_80013B50: +/* 80013B50 00010AB0 80 7E 04 90 */ lwz r3, 0x490(r30) +/* 80013B54 00010AB4 7F E4 FB 78 */ mr r4, r31 +/* 80013B58 00010AB8 48 02 E8 25 */ bl TouchModel__10CPlayerGunCFRC13CStateManager +/* 80013B5C 00010ABC 3A A0 00 01 */ li r21, 1 +/* 80013B60 00010AC0 3A E0 00 01 */ li r23, 1 +/* 80013B64 00010AC4 48 00 00 24 */ b lbl_80013B88 +lbl_80013B68: +/* 80013B68 00010AC8 80 7E 00 64 */ lwz r3, 0x64(r30) +/* 80013B6C 00010ACC 7F E4 FB 78 */ mr r4, r31 +/* 80013B70 00010AD0 38 A0 00 00 */ li r5, 0 +/* 80013B74 00010AD4 48 10 21 9D */ bl Touch__10CModelDataCFRC13CStateManageri +/* 80013B78 00010AD8 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80013B7C 00010ADC 7F E4 FB 78 */ mr r4, r31 +/* 80013B80 00010AE0 80 BE 00 90 */ lwz r5, 0x90(r30) +/* 80013B84 00010AE4 48 0D E6 F5 */ bl Render__10CMorphBallCFRC13CStateManagerPC12CActorLights_0 +lbl_80013B88: +/* 80013B88 00010AE8 56 A0 06 3F */ clrlwi. r0, r21, 0x18 +/* 80013B8C 00010AEC 41 82 05 10 */ beq lbl_8001409C +/* 80013B90 00010AF0 7F C3 F3 78 */ mr r3, r30 +/* 80013B94 00010AF4 7F E4 FB 78 */ mr r4, r31 +/* 80013B98 00010AF8 48 10 69 51 */ bl Render__13CPhysicsActorCFRC13CStateManager +/* 80013B9C 00010AFC 7F C3 F3 78 */ mr r3, r30 +/* 80013BA0 00010B00 4B FF E1 39 */ bl HasTransitionBeamModel__7CPlayerCFv +/* 80013BA4 00010B04 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80013BA8 00010B08 41 82 00 74 */ beq lbl_80013C1C +/* 80013BAC 00010B0C C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80013BB0 00010B10 38 A0 00 05 */ li r5, 5 +/* 80013BB4 00010B14 38 80 00 00 */ li r4, 0 +/* 80013BB8 00010B18 38 00 00 03 */ li r0, 3 +/* 80013BBC 00010B1C FC 40 08 90 */ fmr f2, f1 +/* 80013BC0 00010B20 C0 9E 05 88 */ lfs f4, 0x588(r30) +/* 80013BC4 00010B24 FC 60 08 90 */ fmr f3, f1 +/* 80013BC8 00010B28 98 A1 00 68 */ stb r5, 0x68(r1) +/* 80013BCC 00010B2C 38 61 00 6C */ addi r3, r1, 0x6c +/* 80013BD0 00010B30 98 81 00 69 */ stb r4, 0x69(r1) +/* 80013BD4 00010B34 B0 01 00 6A */ sth r0, 0x6a(r1) +/* 80013BD8 00010B38 48 34 F8 15 */ bl __ct__6CColorFffff +/* 80013BDC 00010B3C A0 01 00 6A */ lhz r0, 0x6a(r1) +/* 80013BE0 00010B40 38 BE 07 F4 */ addi r5, r30, 0x7f4 +/* 80013BE4 00010B44 88 61 00 68 */ lbz r3, 0x68(r1) +/* 80013BE8 00010B48 38 E1 00 70 */ addi r7, r1, 0x70 +/* 80013BEC 00010B4C 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d +/* 80013BF0 00010B50 88 C1 00 69 */ lbz r6, 0x69(r1) +/* 80013BF4 00010B54 60 08 00 03 */ ori r8, r0, 3 +/* 80013BF8 00010B58 80 01 00 6C */ lwz r0, 0x6c(r1) +/* 80013BFC 00010B5C 98 61 00 70 */ stb r3, 0x70(r1) +/* 80013C00 00010B60 38 80 00 00 */ li r4, 0 +/* 80013C04 00010B64 80 7E 07 F0 */ lwz r3, 0x7f0(r30) +/* 80013C08 00010B68 98 C1 00 71 */ stb r6, 0x71(r1) +/* 80013C0C 00010B6C 80 DE 00 90 */ lwz r6, 0x90(r30) +/* 80013C10 00010B70 B1 01 00 72 */ sth r8, 0x72(r1) +/* 80013C14 00010B74 90 01 00 74 */ stw r0, 0x74(r1) +/* 80013C18 00010B78 48 10 2C 5D */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_80013C1C: +/* 80013C1C 00010B7C C0 5E 05 74 */ lfs f2, 0x574(r30) +/* 80013C20 00010B80 C0 1E 05 78 */ lfs f0, 0x578(r30) +/* 80013C24 00010B84 C0 22 81 90 */ lfs f1, lbl_805A9EB0@sda21(r2) +/* 80013C28 00010B88 EC 42 00 24 */ fdivs f2, f2, f0 +/* 80013C2C 00010B8C 80 7E 07 34 */ lwz r3, 0x734(r30) +/* 80013C30 00010B90 FC 02 08 40 */ fcmpo cr0, f2, f1 +/* 80013C34 00010B94 40 80 00 0C */ bge lbl_80013C40 +/* 80013C38 00010B98 C3 82 81 0C */ lfs f28, lbl_805A9E2C@sda21(r2) +/* 80013C3C 00010B9C 48 00 00 44 */ b lbl_80013C80 +lbl_80013C40: +/* 80013C40 00010BA0 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 80013C44 00010BA4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80013C48 00010BA8 40 80 00 10 */ bge lbl_80013C58 +/* 80013C4C 00010BAC EC 02 08 28 */ fsubs f0, f2, f1 +/* 80013C50 00010BB0 EF 80 08 24 */ fdivs f28, f0, f1 +/* 80013C54 00010BB4 48 00 00 2C */ b lbl_80013C80 +lbl_80013C58: +/* 80013C58 00010BB8 C0 02 81 94 */ lfs f0, lbl_805A9EB4@sda21(r2) +/* 80013C5C 00010BBC FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80013C60 00010BC0 40 80 00 0C */ bge lbl_80013C6C +/* 80013C64 00010BC4 C3 82 81 00 */ lfs f28, lbl_805A9E20@sda21(r2) +/* 80013C68 00010BC8 48 00 00 18 */ b lbl_80013C80 +lbl_80013C6C: +/* 80013C6C 00010BCC EC 22 00 28 */ fsubs f1, f2, f0 +/* 80013C70 00010BD0 C0 02 81 98 */ lfs f0, lbl_805A9EB8@sda21(r2) +/* 80013C74 00010BD4 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) +/* 80013C78 00010BD8 EC 01 00 24 */ fdivs f0, f1, f0 +/* 80013C7C 00010BDC EF 82 00 28 */ fsubs f28, f2, f0 +lbl_80013C80: +/* 80013C80 00010BE0 38 03 00 01 */ addi r0, r3, 1 +/* 80013C84 00010BE4 C3 A2 81 00 */ lfs f29, lbl_805A9E20@sda21(r2) +/* 80013C88 00010BE8 CB C2 81 60 */ lfd f30, lbl_805A9E80@sda21(r2) +/* 80013C8C 00010BEC 3B 21 00 54 */ addi r25, r1, 0x54 +/* 80013C90 00010BF0 C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) +/* 80013C94 00010BF4 3B 01 00 44 */ addi r24, r1, 0x44 +/* 80013C98 00010BF8 6C 1D 80 00 */ xoris r29, r0, 0x8000 +/* 80013C9C 00010BFC 3A C0 00 00 */ li r22, 0 +/* 80013CA0 00010C00 3B 40 00 00 */ li r26, 0 +/* 80013CA4 00010C04 3F 80 43 30 */ lis r28, 0x4330 +/* 80013CA8 00010C08 48 00 01 A0 */ b lbl_80013E48 +lbl_80013CAC: +/* 80013CAC 00010C0C 3A B6 00 01 */ addi r21, r22, 1 +/* 80013CB0 00010C10 38 61 00 60 */ addi r3, r1, 0x60 +/* 80013CB4 00010C14 7E A5 AB 78 */ mr r5, r21 +/* 80013CB8 00010C18 38 9E 07 1C */ addi r4, r30, 0x71c +/* 80013CBC 00010C1C 48 00 04 7D */ bl "GetEntry__21TReservedAverageCFi" +/* 80013CC0 00010C20 38 75 00 01 */ addi r3, r21, 1 +/* 80013CC4 00010C24 38 00 00 00 */ li r0, 0 +/* 80013CC8 00010C28 6C 63 80 00 */ xoris r3, r3, 0x8000 +/* 80013CCC 00010C2C 93 81 02 08 */ stw r28, 0x208(r1) +/* 80013CD0 00010C30 C0 01 00 60 */ lfs f0, 0x60(r1) +/* 80013CD4 00010C34 90 61 02 0C */ stw r3, 0x20c(r1) +/* 80013CD8 00010C38 C8 21 02 08 */ lfd f1, 0x208(r1) +/* 80013CDC 00010C3C 93 A1 02 14 */ stw r29, 0x214(r1) +/* 80013CE0 00010C40 EC 41 F0 28 */ fsubs f2, f1, f30 +/* 80013CE4 00010C44 93 81 02 10 */ stw r28, 0x210(r1) +/* 80013CE8 00010C48 C8 21 02 10 */ lfd f1, 0x210(r1) +/* 80013CEC 00010C4C 98 01 00 64 */ stb r0, 0x64(r1) +/* 80013CF0 00010C50 EC 21 F0 28 */ fsubs f1, f1, f30 +/* 80013CF4 00010C54 EC 22 08 24 */ fdivs f1, f2, f1 +/* 80013CF8 00010C58 EC 3D 08 28 */ fsubs f1, f29, f1 +/* 80013CFC 00010C5C EC 3C 00 72 */ fmuls f1, f28, f1 +/* 80013D00 00010C60 EF 61 00 32 */ fmuls f27, f1, f0 +/* 80013D04 00010C64 FC 1F D8 00 */ fcmpu cr0, f31, f27 +/* 80013D08 00010C68 41 82 01 38 */ beq lbl_80013E40 +/* 80013D0C 00010C6C 80 9E 07 3C */ lwz r4, 0x73c(r30) +/* 80013D10 00010C70 38 1A 00 04 */ addi r0, r26, 4 +/* 80013D14 00010C74 7E A5 AB 78 */ mr r5, r21 +/* 80013D18 00010C78 38 61 01 D4 */ addi r3, r1, 0x1d4 +/* 80013D1C 00010C7C 7F 64 00 2E */ lwzx r27, r4, r0 +/* 80013D20 00010C80 38 9E 06 58 */ addi r4, r30, 0x658 +/* 80013D24 00010C84 48 00 03 B5 */ bl "GetEntry__34TReservedAverage<12CTransform4f,4>CFi" +/* 80013D28 00010C88 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80013D2C 00010C8C 38 60 00 05 */ li r3, 5 +/* 80013D30 00010C90 38 80 00 00 */ li r4, 0 +/* 80013D34 00010C94 38 00 00 03 */ li r0, 3 +/* 80013D38 00010C98 FC 40 08 90 */ fmr f2, f1 +/* 80013D3C 00010C9C 98 61 00 50 */ stb r3, 0x50(r1) +/* 80013D40 00010CA0 FC 60 08 90 */ fmr f3, f1 +/* 80013D44 00010CA4 7F 23 CB 78 */ mr r3, r25 +/* 80013D48 00010CA8 FC 80 D8 90 */ fmr f4, f27 +/* 80013D4C 00010CAC 98 81 00 51 */ stb r4, 0x51(r1) +/* 80013D50 00010CB0 B0 01 00 52 */ sth r0, 0x52(r1) +/* 80013D54 00010CB4 48 34 F6 99 */ bl __ct__6CColorFffff +/* 80013D58 00010CB8 A0 01 00 52 */ lhz r0, 0x52(r1) +/* 80013D5C 00010CBC 7F E3 FB 78 */ mr r3, r31 +/* 80013D60 00010CC0 88 C1 00 50 */ lbz r6, 0x50(r1) +/* 80013D64 00010CC4 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d +/* 80013D68 00010CC8 88 A1 00 51 */ lbz r5, 0x51(r1) +/* 80013D6C 00010CCC 60 04 00 01 */ ori r4, r0, 1 +/* 80013D70 00010CD0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80013D74 00010CD4 98 C1 00 58 */ stb r6, 0x58(r1) +/* 80013D78 00010CD8 98 A1 00 59 */ stb r5, 0x59(r1) +/* 80013D7C 00010CDC B0 81 00 5A */ sth r4, 0x5a(r1) +/* 80013D80 00010CE0 90 01 00 5C */ stw r0, 0x5c(r1) +/* 80013D84 00010CE4 48 10 11 59 */ bl GetRenderingModel__10CModelDataFRC13CStateManager +/* 80013D88 00010CE8 80 DE 00 90 */ lwz r6, 0x90(r30) +/* 80013D8C 00010CEC 7C 64 1B 78 */ mr r4, r3 +/* 80013D90 00010CF0 7F 63 DB 78 */ mr r3, r27 +/* 80013D94 00010CF4 38 A1 01 D4 */ addi r5, r1, 0x1d4 +/* 80013D98 00010CF8 38 E1 00 58 */ addi r7, r1, 0x58 +/* 80013D9C 00010CFC 48 10 2A D9 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 80013DA0 00010D00 38 00 00 00 */ li r0, 0 +/* 80013DA4 00010D04 7F C3 F3 78 */ mr r3, r30 +/* 80013DA8 00010D08 98 01 02 04 */ stb r0, 0x204(r1) +/* 80013DAC 00010D0C 4B FF DF 2D */ bl HasTransitionBeamModel__7CPlayerCFv +/* 80013DB0 00010D10 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80013DB4 00010D14 41 82 00 8C */ beq lbl_80013E40 +/* 80013DB8 00010D18 7E A5 AB 78 */ mr r5, r21 +/* 80013DBC 00010D1C 38 61 01 A0 */ addi r3, r1, 0x1a0 +/* 80013DC0 00010D20 38 9E 05 94 */ addi r4, r30, 0x594 +/* 80013DC4 00010D24 48 00 03 15 */ bl "GetEntry__34TReservedAverage<12CTransform4f,4>CFi" +/* 80013DC8 00010D28 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80013DCC 00010D2C 38 60 00 05 */ li r3, 5 +/* 80013DD0 00010D30 38 80 00 00 */ li r4, 0 +/* 80013DD4 00010D34 38 00 00 03 */ li r0, 3 +/* 80013DD8 00010D38 FC 40 08 90 */ fmr f2, f1 +/* 80013DDC 00010D3C 98 61 00 40 */ stb r3, 0x40(r1) +/* 80013DE0 00010D40 FC 60 08 90 */ fmr f3, f1 +/* 80013DE4 00010D44 7F 03 C3 78 */ mr r3, r24 +/* 80013DE8 00010D48 FC 80 D8 90 */ fmr f4, f27 +/* 80013DEC 00010D4C 98 81 00 41 */ stb r4, 0x41(r1) +/* 80013DF0 00010D50 B0 01 00 42 */ sth r0, 0x42(r1) +/* 80013DF4 00010D54 48 34 F5 F9 */ bl __ct__6CColorFffff +/* 80013DF8 00010D58 A0 01 00 42 */ lhz r0, 0x42(r1) +/* 80013DFC 00010D5C 38 A1 01 A0 */ addi r5, r1, 0x1a0 +/* 80013E00 00010D60 88 61 00 40 */ lbz r3, 0x40(r1) +/* 80013E04 00010D64 38 E1 00 48 */ addi r7, r1, 0x48 +/* 80013E08 00010D68 54 00 00 3A */ rlwinm r0, r0, 0, 0, 0x1d +/* 80013E0C 00010D6C 88 C1 00 41 */ lbz r6, 0x41(r1) +/* 80013E10 00010D70 60 08 00 01 */ ori r8, r0, 1 +/* 80013E14 00010D74 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80013E18 00010D78 98 61 00 48 */ stb r3, 0x48(r1) +/* 80013E1C 00010D7C 38 80 00 00 */ li r4, 0 +/* 80013E20 00010D80 80 7E 07 F0 */ lwz r3, 0x7f0(r30) +/* 80013E24 00010D84 98 C1 00 49 */ stb r6, 0x49(r1) +/* 80013E28 00010D88 80 DE 00 90 */ lwz r6, 0x90(r30) +/* 80013E2C 00010D8C B1 01 00 4A */ sth r8, 0x4a(r1) +/* 80013E30 00010D90 90 01 00 4C */ stw r0, 0x4c(r1) +/* 80013E34 00010D94 48 10 2A 41 */ bl Render__10CModelDataCFQ210CModelData11EWhichModelRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 80013E38 00010D98 38 00 00 00 */ li r0, 0 +/* 80013E3C 00010D9C 98 01 01 D0 */ stb r0, 0x1d0(r1) +lbl_80013E40: +/* 80013E40 00010DA0 3B 5A 00 08 */ addi r26, r26, 8 +/* 80013E44 00010DA4 3A D6 00 01 */ addi r22, r22, 1 +lbl_80013E48: +/* 80013E48 00010DA8 80 1E 07 34 */ lwz r0, 0x734(r30) +/* 80013E4C 00010DAC 7C 16 00 00 */ cmpw r22, r0 +/* 80013E50 00010DB0 41 80 FE 5C */ blt lbl_80013CAC +/* 80013E54 00010DB4 56 E0 06 3F */ clrlwi. r0, r23, 0x18 +/* 80013E58 00010DB8 41 82 02 44 */ beq lbl_8001409C +/* 80013E5C 00010DBC C0 3E 05 74 */ lfs f1, 0x574(r30) +/* 80013E60 00010DC0 C0 1E 05 78 */ lfs f0, 0x578(r30) +/* 80013E64 00010DC4 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80013E68 00010DC8 EF 61 00 24 */ fdivs f27, f1, f0 +/* 80013E6C 00010DCC C0 22 81 4C */ lfs f1, lbl_805A9E6C@sda21(r2) +/* 80013E70 00010DD0 2C 00 00 03 */ cmpwi r0, 3 +/* 80013E74 00010DD4 C0 82 81 74 */ lfs f4, lbl_805A9E94@sda21(r2) +/* 80013E78 00010DD8 40 82 00 14 */ bne lbl_80013E8C +/* 80013E7C 00010DDC C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80013E80 00010DE0 C0 22 81 9C */ lfs f1, lbl_805A9EBC@sda21(r2) +/* 80013E84 00010DE4 EF 60 D8 28 */ fsubs f27, f0, f27 +/* 80013E88 00010DE8 C0 82 81 A0 */ lfs f4, lbl_805A9EC0@sda21(r2) +lbl_80013E8C: +/* 80013E8C 00010DEC FC 1B 08 40 */ fcmpo cr0, f27, f1 +/* 80013E90 00010DF0 40 81 00 80 */ ble lbl_80013F10 +/* 80013E94 00010DF4 EC 1B 08 28 */ fsubs f0, f27, f1 +/* 80013E98 00010DF8 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80013E9C 00010DFC 80 9E 07 68 */ lwz r4, 0x768(r30) +/* 80013EA0 00010E00 38 61 00 08 */ addi r3, r1, 8 +/* 80013EA4 00010E04 FC 40 08 90 */ fmr f2, f1 +/* 80013EA8 00010E08 FC 60 08 90 */ fmr f3, f1 +/* 80013EAC 00010E0C EC 84 00 32 */ fmuls f4, f4, f0 +/* 80013EB0 00010E10 82 A4 00 5C */ lwz r21, 0x5c(r4) +/* 80013EB4 00010E14 48 34 F5 39 */ bl __ct__6CColorFffff +/* 80013EB8 00010E18 80 01 00 08 */ lwz r0, 8(r1) +/* 80013EBC 00010E1C 38 E0 00 05 */ li r7, 5 +/* 80013EC0 00010E20 38 A0 00 03 */ li r5, 3 +/* 80013EC4 00010E24 38 C0 00 00 */ li r6, 0 +/* 80013EC8 00010E28 80 9E 07 68 */ lwz r4, 0x768(r30) +/* 80013ECC 00010E2C 38 61 01 70 */ addi r3, r1, 0x170 +/* 80013ED0 00010E30 98 E1 00 38 */ stb r7, 0x38(r1) +/* 80013ED4 00010E34 9A A1 00 39 */ stb r21, 0x39(r1) +/* 80013ED8 00010E38 B0 A1 00 3A */ sth r5, 0x3a(r1) +/* 80013EDC 00010E3C 90 01 00 3C */ stw r0, 0x3c(r1) +/* 80013EE0 00010E40 98 E1 00 30 */ stb r7, 0x30(r1) +/* 80013EE4 00010E44 82 A4 00 58 */ lwz r21, 0x58(r4) +/* 80013EE8 00010E48 98 C1 00 31 */ stb r6, 0x31(r1) +/* 80013EEC 00010E4C B0 A1 00 32 */ sth r5, 0x32(r1) +/* 80013EF0 00010E50 90 01 00 34 */ stw r0, 0x34(r1) +/* 80013EF4 00010E54 48 0E 28 01 */ bl GetBallToWorld__10CMorphBallCFv +/* 80013EF8 00010E58 80 DE 00 90 */ lwz r6, 0x90(r30) +/* 80013EFC 00010E5C 7E A3 AB 78 */ mr r3, r21 +/* 80013F00 00010E60 7F E4 FB 78 */ mr r4, r31 +/* 80013F04 00010E64 38 A1 01 70 */ addi r5, r1, 0x170 +/* 80013F08 00010E68 38 E1 00 38 */ addi r7, r1, 0x38 +/* 80013F0C 00010E6C 48 10 0E B1 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_80013F10: +/* 80013F10 00010E70 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80013F14 00010E74 2C 00 00 02 */ cmpwi r0, 2 +/* 80013F18 00010E78 40 82 01 84 */ bne lbl_8001409C +/* 80013F1C 00010E7C C0 82 81 68 */ lfs f4, lbl_805A9E88@sda21(r2) +/* 80013F20 00010E80 FC 1B 20 40 */ fcmpo cr0, f27, f4 +/* 80013F24 00010E84 40 81 01 6C */ ble lbl_80014090 +/* 80013F28 00010E88 EC 7B 20 28 */ fsubs f3, f27, f4 +/* 80013F2C 00010E8C C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) +/* 80013F30 00010E90 C0 02 81 4C */ lfs f0, lbl_805A9E6C@sda21(r2) +/* 80013F34 00010E94 C0 22 81 40 */ lfs f1, lbl_805A9E60@sda21(r2) +/* 80013F38 00010E98 EC 63 20 24 */ fdivs f3, f3, f4 +/* 80013F3C 00010E9C EC A2 18 28 */ fsubs f5, f2, f3 +/* 80013F40 00010EA0 FC 03 08 40 */ fcmpo cr0, f3, f1 +/* 80013F44 00010EA4 EF E0 11 7A */ fmadds f31, f0, f5, f2 +/* 80013F48 00010EA8 40 80 00 0C */ bge lbl_80013F54 +/* 80013F4C 00010EAC C0 82 81 0C */ lfs f4, lbl_805A9E2C@sda21(r2) +/* 80013F50 00010EB0 48 00 00 40 */ b lbl_80013F90 +lbl_80013F54: +/* 80013F54 00010EB4 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) +/* 80013F58 00010EB8 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80013F5C 00010EBC 40 80 00 10 */ bge lbl_80013F6C +/* 80013F60 00010EC0 EC 03 08 28 */ fsubs f0, f3, f1 +/* 80013F64 00010EC4 EC 80 08 24 */ fdivs f4, f0, f1 +/* 80013F68 00010EC8 48 00 00 28 */ b lbl_80013F90 +lbl_80013F6C: +/* 80013F6C 00010ECC C0 02 81 A4 */ lfs f0, lbl_805A9EC4@sda21(r2) +/* 80013F70 00010ED0 FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 80013F74 00010ED4 40 80 00 0C */ bge lbl_80013F80 +/* 80013F78 00010ED8 FC 80 10 90 */ fmr f4, f2 +/* 80013F7C 00010EDC 48 00 00 14 */ b lbl_80013F90 +lbl_80013F80: +/* 80013F80 00010EE0 EC 3B 00 28 */ fsubs f1, f27, f0 +/* 80013F84 00010EE4 C0 02 81 A8 */ lfs f0, lbl_805A9EC8@sda21(r2) +/* 80013F88 00010EE8 EC 01 00 24 */ fdivs f0, f1, f0 +/* 80013F8C 00010EEC EC 82 00 28 */ fsubs f4, f2, f0 +lbl_80013F90: +/* 80013F90 00010EF0 C0 02 81 B0 */ lfs f0, lbl_805A9ED0@sda21(r2) +/* 80013F94 00010EF4 C0 62 81 68 */ lfs f3, lbl_805A9E88@sda21(r2) +/* 80013F98 00010EF8 EC 20 01 72 */ fmuls f1, f0, f5 +/* 80013F9C 00010EFC C0 42 81 AC */ lfs f2, lbl_805A9ECC@sda21(r2) +/* 80013FA0 00010F00 EC 84 00 F2 */ fmuls f4, f4, f3 +/* 80013FA4 00010F04 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80013FA8 00010F08 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80013FAC 00010F0C FC 04 00 40 */ fcmpo cr0, f4, f0 +/* 80013FB0 00010F10 D0 21 00 0C */ stfs f1, 0xc(r1) +/* 80013FB4 00010F14 40 81 00 DC */ ble lbl_80014090 +/* 80013FB8 00010F18 80 9E 07 68 */ lwz r4, 0x768(r30) +/* 80013FBC 00010F1C 38 A0 00 07 */ li r5, 7 +/* 80013FC0 00010F20 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80013FC4 00010F24 38 00 00 03 */ li r0, 3 +/* 80013FC8 00010F28 82 A4 00 5C */ lwz r21, 0x5c(r4) +/* 80013FCC 00010F2C 38 80 00 00 */ li r4, 0 +/* 80013FD0 00010F30 FC 40 08 90 */ fmr f2, f1 +/* 80013FD4 00010F34 38 61 00 1C */ addi r3, r1, 0x1c +/* 80013FD8 00010F38 FC 60 08 90 */ fmr f3, f1 +/* 80013FDC 00010F3C 98 A1 00 18 */ stb r5, 0x18(r1) +/* 80013FE0 00010F40 98 81 00 19 */ stb r4, 0x19(r1) +/* 80013FE4 00010F44 B0 01 00 1A */ sth r0, 0x1a(r1) +/* 80013FE8 00010F48 48 34 F4 05 */ bl __ct__6CColorFffff +/* 80013FEC 00010F4C A0 61 00 1A */ lhz r3, 0x1a(r1) +/* 80013FF0 00010F50 FC 20 F8 90 */ fmr f1, f31 +/* 80013FF4 00010F54 88 C1 00 18 */ lbz r6, 0x18(r1) +/* 80013FF8 00010F58 FC 40 F8 90 */ fmr f2, f31 +/* 80013FFC 00010F5C 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80014000 00010F60 54 63 00 3A */ rlwinm r3, r3, 0, 0, 0x1d +/* 80014004 00010F64 60 64 00 01 */ ori r4, r3, 1 +/* 80014008 00010F68 88 A1 00 19 */ lbz r5, 0x19(r1) +/* 8001400C 00010F6C FC 60 F8 90 */ fmr f3, f31 +/* 80014010 00010F70 82 DE 07 68 */ lwz r22, 0x768(r30) +/* 80014014 00010F74 38 61 00 80 */ addi r3, r1, 0x80 +/* 80014018 00010F78 98 C1 00 28 */ stb r6, 0x28(r1) +/* 8001401C 00010F7C 9A A1 00 29 */ stb r21, 0x29(r1) +/* 80014020 00010F80 B0 81 00 2A */ sth r4, 0x2a(r1) +/* 80014024 00010F84 90 01 00 2C */ stw r0, 0x2c(r1) +/* 80014028 00010F88 98 C1 00 20 */ stb r6, 0x20(r1) +/* 8001402C 00010F8C 82 B6 00 58 */ lwz r21, 0x58(r22) +/* 80014030 00010F90 98 A1 00 21 */ stb r5, 0x21(r1) +/* 80014034 00010F94 B0 81 00 22 */ sth r4, 0x22(r1) +/* 80014038 00010F98 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001403C 00010F9C 48 2F F1 CD */ bl Scale__12CTransform4fFfff +/* 80014040 00010FA0 38 61 00 B0 */ addi r3, r1, 0xb0 +/* 80014044 00010FA4 38 81 00 0C */ addi r4, r1, 0xc +/* 80014048 00010FA8 48 2F F7 C9 */ bl RotateZ__12CTransform4fFRC9CRelAngle +/* 8001404C 00010FAC 7E C4 B3 78 */ mr r4, r22 +/* 80014050 00010FB0 38 61 00 E0 */ addi r3, r1, 0xe0 +/* 80014054 00010FB4 48 0E 26 A1 */ bl GetBallToWorld__10CMorphBallCFv +/* 80014058 00010FB8 38 61 01 10 */ addi r3, r1, 0x110 +/* 8001405C 00010FBC 38 81 00 E0 */ addi r4, r1, 0xe0 +/* 80014060 00010FC0 38 A1 00 B0 */ addi r5, r1, 0xb0 +/* 80014064 00010FC4 48 2F E8 ED */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80014068 00010FC8 38 61 01 40 */ addi r3, r1, 0x140 +/* 8001406C 00010FCC 38 81 01 10 */ addi r4, r1, 0x110 +/* 80014070 00010FD0 38 A1 00 80 */ addi r5, r1, 0x80 +/* 80014074 00010FD4 48 2F E8 DD */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80014078 00010FD8 80 DE 00 90 */ lwz r6, 0x90(r30) +/* 8001407C 00010FDC 7E A3 AB 78 */ mr r3, r21 +/* 80014080 00010FE0 7F E4 FB 78 */ mr r4, r31 +/* 80014084 00010FE4 38 A1 01 40 */ addi r5, r1, 0x140 +/* 80014088 00010FE8 38 E1 00 28 */ addi r7, r1, 0x28 +/* 8001408C 00010FEC 48 10 0D 31 */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +lbl_80014090: +/* 80014090 00010FF0 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80014094 00010FF4 7F E4 FB 78 */ mr r4, r31 +/* 80014098 00010FF8 48 0D DF 29 */ bl RenderMorphBallTransitionFlash__10CMorphBallCFRC13CStateManager +lbl_8001409C: +/* 8001409C 00010FFC E3 E1 02 98 */ psq_l f31, 664(r1), 0, qr0 +/* 800140A0 00011000 CB E1 02 90 */ lfd f31, 0x290(r1) +/* 800140A4 00011004 E3 C1 02 88 */ psq_l f30, 648(r1), 0, qr0 +/* 800140A8 00011008 CB C1 02 80 */ lfd f30, 0x280(r1) +/* 800140AC 0001100C E3 A1 02 78 */ psq_l f29, 632(r1), 0, qr0 +/* 800140B0 00011010 CB A1 02 70 */ lfd f29, 0x270(r1) +/* 800140B4 00011014 E3 81 02 68 */ psq_l f28, 616(r1), 0, qr0 +/* 800140B8 00011018 CB 81 02 60 */ lfd f28, 0x260(r1) +/* 800140BC 0001101C E3 61 02 58 */ psq_l f27, 600(r1), 0, qr0 +/* 800140C0 00011020 CB 61 02 50 */ lfd f27, 0x250(r1) +/* 800140C4 00011024 BA A1 02 24 */ lmw r21, 0x224(r1) +/* 800140C8 00011028 80 01 02 A4 */ lwz r0, 0x2a4(r1) +/* 800140CC 0001102C 7C 08 03 A6 */ mtlr r0 +/* 800140D0 00011030 38 21 02 A0 */ addi r1, r1, 0x2a0 +/* 800140D4 00011034 4E 80 00 20 */ blr + +.global "GetEntry__34TReservedAverage<12CTransform4f,4>CFi" +"GetEntry__34TReservedAverage<12CTransform4f,4>CFi": +/* 800140D8 00011038 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800140DC 0001103C 7C 08 02 A6 */ mflr r0 +/* 800140E0 00011040 90 01 00 14 */ stw r0, 0x14(r1) +/* 800140E4 00011044 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800140E8 00011048 7C 7F 1B 78 */ mr r31, r3 +/* 800140EC 0001104C 80 04 00 00 */ lwz r0, 0(r4) +/* 800140F0 00011050 7C 05 00 00 */ cmpw r5, r0 +/* 800140F4 00011054 41 80 00 10 */ blt lbl_80014104 +/* 800140F8 00011058 38 00 00 00 */ li r0, 0 +/* 800140FC 0001105C 98 1F 00 30 */ stb r0, 0x30(r31) +/* 80014100 00011060 48 00 00 24 */ b lbl_80014124 +lbl_80014104: +/* 80014104 00011064 1C A5 00 30 */ mulli r5, r5, 0x30 +/* 80014108 00011068 38 00 00 01 */ li r0, 1 +/* 8001410C 0001106C 28 1F 00 00 */ cmplwi r31, 0 +/* 80014110 00011070 98 1F 00 30 */ stb r0, 0x30(r31) +/* 80014114 00011074 7C 84 2A 14 */ add r4, r4, r5 +/* 80014118 00011078 38 84 00 04 */ addi r4, r4, 4 +/* 8001411C 0001107C 41 82 00 08 */ beq lbl_80014124 +/* 80014120 00011080 48 2F EA 55 */ bl __ct__12CTransform4fFRC12CTransform4f +lbl_80014124: +/* 80014124 00011084 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80014128 00011088 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001412C 0001108C 7C 08 03 A6 */ mtlr r0 +/* 80014130 00011090 38 21 00 10 */ addi r1, r1, 0x10 +/* 80014134 00011094 4E 80 00 20 */ blr + +.global "GetEntry__21TReservedAverageCFi" +"GetEntry__21TReservedAverageCFi": +/* 80014138 00011098 80 04 00 00 */ lwz r0, 0(r4) +/* 8001413C 0001109C 7C 05 00 00 */ cmpw r5, r0 +/* 80014140 000110A0 41 80 00 10 */ blt lbl_80014150 +/* 80014144 000110A4 38 00 00 00 */ li r0, 0 +/* 80014148 000110A8 98 03 00 04 */ stb r0, 4(r3) +/* 8001414C 000110AC 4E 80 00 20 */ blr +lbl_80014150: +/* 80014150 000110B0 38 00 00 01 */ li r0, 1 +/* 80014154 000110B4 28 03 00 00 */ cmplwi r3, 0 +/* 80014158 000110B8 54 A5 10 3A */ slwi r5, r5, 2 +/* 8001415C 000110BC 98 03 00 04 */ stb r0, 4(r3) +/* 80014160 000110C0 7C 84 2A 14 */ add r4, r4, r5 +/* 80014164 000110C4 4D 82 00 20 */ beqlr +/* 80014168 000110C8 C0 04 00 04 */ lfs f0, 4(r4) +/* 8001416C 000110CC D0 03 00 00 */ stfs f0, 0(r3) +/* 80014170 000110D0 4E 80 00 20 */ blr + +.global RenderReflectedPlayer__7CPlayerFR13CStateManager +RenderReflectedPlayer__7CPlayerFR13CStateManager: +/* 80014174 000110D4 94 21 FF 80 */ stwu r1, -0x80(r1) +/* 80014178 000110D8 7C 08 02 A6 */ mflr r0 +/* 8001417C 000110DC 90 01 00 84 */ stw r0, 0x84(r1) +/* 80014180 000110E0 38 00 00 00 */ li r0, 0 +/* 80014184 000110E4 93 E1 00 7C */ stw r31, 0x7c(r1) +/* 80014188 000110E8 7C 9F 23 78 */ mr r31, r4 +/* 8001418C 000110EC 93 C1 00 78 */ stw r30, 0x78(r1) +/* 80014190 000110F0 7C 7E 1B 78 */ mr r30, r3 +/* 80014194 000110F4 90 01 00 10 */ stw r0, 0x10(r1) +/* 80014198 000110F8 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8001419C 000110FC 2C 00 00 01 */ cmpwi r0, 1 +/* 800141A0 00011100 41 82 00 A8 */ beq lbl_80014248 +/* 800141A4 00011104 40 80 00 10 */ bge lbl_800141B4 +/* 800141A8 00011108 2C 00 00 00 */ cmpwi r0, 0 +/* 800141AC 0001110C 40 80 00 10 */ bge lbl_800141BC +/* 800141B0 00011110 48 00 00 A4 */ b lbl_80014254 +lbl_800141B4: +/* 800141B4 00011114 2C 00 00 04 */ cmpwi r0, 4 +/* 800141B8 00011118 40 80 00 9C */ bge lbl_80014254 +lbl_800141BC: +/* 800141BC 0001111C 7F C3 F3 78 */ mr r3, r30 +/* 800141C0 00011120 38 80 00 01 */ li r4, 1 +/* 800141C4 00011124 48 03 F7 5D */ bl SetCalculateLighting__6CActorFb +/* 800141C8 00011128 80 1E 02 F4 */ lwz r0, 0x2f4(r30) +/* 800141CC 0001112C 2C 00 00 00 */ cmpwi r0, 0 +/* 800141D0 00011130 40 82 00 14 */ bne lbl_800141E4 +/* 800141D4 00011134 7F C3 F3 78 */ mr r3, r30 +/* 800141D8 00011138 7F E4 FB 78 */ mr r4, r31 +/* 800141DC 0001113C 38 A1 00 10 */ addi r5, r1, 0x10 +/* 800141E0 00011140 48 04 0B 01 */ bl PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes +lbl_800141E4: +/* 800141E4 00011144 7F C3 F3 78 */ mr r3, r30 +/* 800141E8 00011148 7F E4 FB 78 */ mr r4, r31 +/* 800141EC 0001114C 48 10 62 FD */ bl Render__13CPhysicsActorCFRC13CStateManager +/* 800141F0 00011150 7F C3 F3 78 */ mr r3, r30 +/* 800141F4 00011154 4B FF DA E5 */ bl HasTransitionBeamModel__7CPlayerCFv +/* 800141F8 00011158 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800141FC 0001115C 41 82 00 58 */ beq lbl_80014254 +/* 80014200 00011160 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80014204 00011164 38 80 00 00 */ li r4, 0 +/* 80014208 00011168 38 00 00 03 */ li r0, 3 +/* 8001420C 0001116C 98 81 00 08 */ stb r4, 8(r1) +/* 80014210 00011170 FC 40 08 90 */ fmr f2, f1 +/* 80014214 00011174 38 61 00 0C */ addi r3, r1, 0xc +/* 80014218 00011178 FC 60 08 90 */ fmr f3, f1 +/* 8001421C 0001117C 98 81 00 09 */ stb r4, 9(r1) +/* 80014220 00011180 FC 80 08 90 */ fmr f4, f1 +/* 80014224 00011184 B0 01 00 0A */ sth r0, 0xa(r1) +/* 80014228 00011188 48 34 F1 C5 */ bl __ct__6CColorFffff +/* 8001422C 0001118C 80 7E 07 F0 */ lwz r3, 0x7f0(r30) +/* 80014230 00011190 7F E4 FB 78 */ mr r4, r31 +/* 80014234 00011194 38 BE 07 F4 */ addi r5, r30, 0x7f4 +/* 80014238 00011198 38 E1 00 08 */ addi r7, r1, 8 +/* 8001423C 0001119C 38 C0 00 00 */ li r6, 0 +/* 80014240 000111A0 48 10 0B 7D */ bl Render__10CModelDataCFRC13CStateManagerRC12CTransform4fPC12CActorLightsRC11CModelFlags +/* 80014244 000111A4 48 00 00 10 */ b lbl_80014254 +lbl_80014248: +/* 80014248 000111A8 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 8001424C 000111AC 80 BE 00 90 */ lwz r5, 0x90(r30) +/* 80014250 000111B0 48 0D E0 29 */ bl Render__10CMorphBallCFRC13CStateManagerPC12CActorLights_0 +lbl_80014254: +/* 80014254 000111B4 80 A1 00 10 */ lwz r5, 0x10(r1) +/* 80014258 000111B8 38 60 00 00 */ li r3, 0 +/* 8001425C 000111BC 2C 05 00 00 */ cmpwi r5, 0 +/* 80014260 000111C0 40 81 00 40 */ ble lbl_800142A0 +/* 80014264 000111C4 2C 05 00 08 */ cmpwi r5, 8 +/* 80014268 000111C8 38 85 FF F8 */ addi r4, r5, -8 +/* 8001426C 000111CC 40 81 00 20 */ ble lbl_8001428C +/* 80014270 000111D0 38 04 00 07 */ addi r0, r4, 7 +/* 80014274 000111D4 54 00 E8 FE */ srwi r0, r0, 3 +/* 80014278 000111D8 7C 09 03 A6 */ mtctr r0 +/* 8001427C 000111DC 2C 04 00 00 */ cmpwi r4, 0 +/* 80014280 000111E0 40 81 00 0C */ ble lbl_8001428C +lbl_80014284: +/* 80014284 000111E4 38 63 00 08 */ addi r3, r3, 8 +/* 80014288 000111E8 42 00 FF FC */ bdnz lbl_80014284 +lbl_8001428C: +/* 8001428C 000111EC 7C 03 28 50 */ subf r0, r3, r5 +/* 80014290 000111F0 7C 09 03 A6 */ mtctr r0 +/* 80014294 000111F4 7C 03 28 00 */ cmpw r3, r5 +/* 80014298 000111F8 40 80 00 08 */ bge lbl_800142A0 +lbl_8001429C: +/* 8001429C 000111FC 42 00 00 00 */ bdnz lbl_8001429C +lbl_800142A0: +/* 800142A0 00011200 38 00 00 00 */ li r0, 0 +/* 800142A4 00011204 90 01 00 10 */ stw r0, 0x10(r1) +/* 800142A8 00011208 80 01 00 84 */ lwz r0, 0x84(r1) +/* 800142AC 0001120C 83 E1 00 7C */ lwz r31, 0x7c(r1) +/* 800142B0 00011210 83 C1 00 78 */ lwz r30, 0x78(r1) +/* 800142B4 00011214 7C 08 03 A6 */ mtlr r0 +/* 800142B8 00011218 38 21 00 80 */ addi r1, r1, 0x80 +/* 800142BC 0001121C 4E 80 00 20 */ blr + +.global PreRender__7CPlayerFR13CStateManagerRC14CFrustumPlanes +PreRender__7CPlayerFR13CStateManagerRC14CFrustumPlanes: +/* 800142C0 00011220 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 800142C4 00011224 7C 08 02 A6 */ mflr r0 +/* 800142C8 00011228 90 01 00 34 */ stw r0, 0x34(r1) +/* 800142CC 0001122C BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 800142D0 00011230 7C 7B 1B 78 */ mr r27, r3 +/* 800142D4 00011234 7C 9C 23 78 */ mr r28, r4 +/* 800142D8 00011238 7C BD 2B 78 */ mr r29, r5 +/* 800142DC 0001123C 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 800142E0 00011240 2C 00 00 01 */ cmpwi r0, 1 +/* 800142E4 00011244 40 82 00 20 */ bne lbl_80014304 +/* 800142E8 00011248 38 80 00 00 */ li r4, 0 +/* 800142EC 0001124C 48 03 F6 35 */ bl SetCalculateLighting__6CActorFb +/* 800142F0 00011250 80 7B 07 68 */ lwz r3, 0x768(r27) +/* 800142F4 00011254 7F 84 E3 78 */ mr r4, r28 +/* 800142F8 00011258 7F A5 EB 78 */ mr r5, r29 +/* 800142FC 0001125C 48 0D EB 8D */ bl PreRender__10CMorphBallFR13CStateManagerRC14CFrustumPlanes +/* 80014300 00011260 48 00 00 40 */ b lbl_80014340 +lbl_80014304: +/* 80014304 00011264 38 80 00 01 */ li r4, 1 +/* 80014308 00011268 48 03 F6 19 */ bl SetCalculateLighting__6CActorFb +/* 8001430C 0001126C 80 1B 02 F8 */ lwz r0, 0x2f8(r27) +/* 80014310 00011270 2C 00 00 00 */ cmpwi r0, 0 +/* 80014314 00011274 40 82 00 2C */ bne lbl_80014340 +/* 80014318 00011278 83 FB 04 90 */ lwz r31, 0x490(r27) +/* 8001431C 0001127C 7F 85 E3 78 */ mr r5, r28 +/* 80014320 00011280 80 9C 08 70 */ lwz r4, 0x870(r28) +/* 80014324 00011284 38 61 00 08 */ addi r3, r1, 8 +/* 80014328 00011288 4B FF 65 ED */ bl GetGlobalCameraTranslation__14CCameraManagerCFRC13CStateManager +/* 8001432C 0001128C 7F E3 FB 78 */ mr r3, r31 +/* 80014330 00011290 7F 84 E3 78 */ mr r4, r28 +/* 80014334 00011294 7F A5 EB 78 */ mr r5, r29 +/* 80014338 00011298 38 C1 00 08 */ addi r6, r1, 8 +/* 8001433C 0001129C 48 02 E4 29 */ bl PreRender__10CPlayerGunFR13CStateManagerRC14CFrustumPlanesRC9CVector3f +lbl_80014340: +/* 80014340 000112A0 80 1B 02 F8 */ lwz r0, 0x2f8(r27) +/* 80014344 000112A4 2C 00 00 00 */ cmpwi r0, 0 +/* 80014348 000112A8 41 82 00 14 */ beq lbl_8001435C +/* 8001434C 000112AC 80 7C 08 70 */ lwz r3, 0x870(r28) +/* 80014350 000112B0 4B FF 65 B1 */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 80014354 000112B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014358 000112B8 41 82 00 10 */ beq lbl_80014368 +lbl_8001435C: +/* 8001435C 000112BC 80 7B 07 68 */ lwz r3, 0x768(r27) +/* 80014360 000112C0 48 0D 94 8D */ bl DeleteBallShadow__10CMorphBallFv +/* 80014364 000112C4 48 00 00 18 */ b lbl_8001437C +lbl_80014368: +/* 80014368 000112C8 80 7B 07 68 */ lwz r3, 0x768(r27) +/* 8001436C 000112CC 48 0D 94 BD */ bl CreateBallShadow__10CMorphBallFv +/* 80014370 000112D0 80 7B 07 68 */ lwz r3, 0x768(r27) +/* 80014374 000112D4 7F 84 E3 78 */ mr r4, r28 +/* 80014378 000112D8 48 0D 95 AD */ bl RenderToShadowTex__10CMorphBallFR13CStateManager +lbl_8001437C: +/* 8001437C 000112DC 3B C0 00 00 */ li r30, 0 +/* 80014380 000112E0 3B E0 00 00 */ li r31, 0 +/* 80014384 000112E4 48 00 00 20 */ b lbl_800143A4 +lbl_80014388: +/* 80014388 000112E8 80 7B 07 3C */ lwz r3, 0x73c(r27) +/* 8001438C 000112EC 38 1F 00 04 */ addi r0, r31, 4 +/* 80014390 000112F0 7C 63 00 2E */ lwzx r3, r3, r0 +/* 80014394 000112F4 80 63 00 10 */ lwz r3, 0x10(r3) +/* 80014398 000112F8 48 01 86 6D */ bl PreRender__9CAnimDataFv +/* 8001439C 000112FC 3B FF 00 08 */ addi r31, r31, 8 +/* 800143A0 00011300 3B DE 00 01 */ addi r30, r30, 1 +lbl_800143A4: +/* 800143A4 00011304 80 1B 07 34 */ lwz r0, 0x734(r27) +/* 800143A8 00011308 7C 1E 00 00 */ cmpw r30, r0 +/* 800143AC 0001130C 41 80 FF DC */ blt lbl_80014388 +/* 800143B0 00011310 80 1B 02 F4 */ lwz r0, 0x2f4(r27) +/* 800143B4 00011314 2C 00 00 00 */ cmpwi r0, 0 +/* 800143B8 00011318 41 82 00 14 */ beq lbl_800143CC +/* 800143BC 0001131C 7F 63 DB 78 */ mr r3, r27 +/* 800143C0 00011320 7F 84 E3 78 */ mr r4, r28 +/* 800143C4 00011324 7F A5 EB 78 */ mr r5, r29 +/* 800143C8 00011328 48 04 09 19 */ bl PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes +lbl_800143CC: +/* 800143CC 0001132C BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 800143D0 00011330 80 01 00 34 */ lwz r0, 0x34(r1) +/* 800143D4 00011334 7C 08 03 A6 */ mtlr r0 +/* 800143D8 00011338 38 21 00 30 */ addi r1, r1, 0x30 +/* 800143DC 0001133C 4E 80 00 20 */ blr + +.global CalculateRenderBounds__7CPlayerFv +CalculateRenderBounds__7CPlayerFv: +/* 800143E0 00011340 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 800143E4 00011344 7C 08 02 A6 */ mflr r0 +/* 800143E8 00011348 90 01 00 44 */ stw r0, 0x44(r1) +/* 800143EC 0001134C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 800143F0 00011350 7C 7F 1B 78 */ mr r31, r3 +/* 800143F4 00011354 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 800143F8 00011358 2C 00 00 01 */ cmpwi r0, 1 +/* 800143FC 0001135C 40 82 00 8C */ bne lbl_80014488 +/* 80014400 00011360 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 80014404 00011364 48 0E 4A 01 */ bl GetBallRadius__10CMorphBallCFv +/* 80014408 00011368 C0 DF 00 50 */ lfs f6, 0x50(r31) +/* 8001440C 0001136C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80014410 00011370 C0 5F 00 40 */ lfs f2, 0x40(r31) +/* 80014414 00011374 38 81 00 14 */ addi r4, r1, 0x14 +/* 80014418 00011378 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 8001441C 0001137C EC 81 30 2A */ fadds f4, f1, f6 +/* 80014420 00011380 C0 02 81 34 */ lfs f0, lbl_805A9E54@sda21(r2) +/* 80014424 00011384 EC A1 10 2A */ fadds f5, f1, f2 +/* 80014428 00011388 EC 42 08 28 */ fsubs f2, f2, f1 +/* 8001442C 0001138C D0 61 00 1C */ stfs f3, 0x1c(r1) +/* 80014430 00011390 EC 60 18 7A */ fmadds f3, f0, f1, f3 +/* 80014434 00011394 EC 06 08 28 */ fsubs f0, f6, f1 +/* 80014438 00011398 D0 A1 00 08 */ stfs f5, 8(r1) +/* 8001443C 0001139C 38 A1 00 08 */ addi r5, r1, 8 +/* 80014440 000113A0 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 80014444 000113A4 D0 61 00 10 */ stfs f3, 0x10(r1) +/* 80014448 000113A8 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 8001444C 000113AC D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80014450 000113B0 48 32 40 B9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80014454 000113B4 80 61 00 20 */ lwz r3, 0x20(r1) +/* 80014458 000113B8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001445C 000113BC 90 7F 00 9C */ stw r3, 0x9c(r31) +/* 80014460 000113C0 90 1F 00 A0 */ stw r0, 0xa0(r31) +/* 80014464 000113C4 80 01 00 28 */ lwz r0, 0x28(r1) +/* 80014468 000113C8 90 1F 00 A4 */ stw r0, 0xa4(r31) +/* 8001446C 000113CC 80 61 00 2C */ lwz r3, 0x2c(r1) +/* 80014470 000113D0 80 01 00 30 */ lwz r0, 0x30(r1) +/* 80014474 000113D4 90 7F 00 A8 */ stw r3, 0xa8(r31) +/* 80014478 000113D8 90 1F 00 AC */ stw r0, 0xac(r31) +/* 8001447C 000113DC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80014480 000113E0 90 1F 00 B0 */ stw r0, 0xb0(r31) +/* 80014484 000113E4 48 00 00 08 */ b lbl_8001448C +lbl_80014488: +/* 80014488 000113E8 48 04 0C 4D */ bl CalculateRenderBounds__6CActorFv +lbl_8001448C: +/* 8001448C 000113EC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80014490 000113F0 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80014494 000113F4 7C 08 03 A6 */ mtlr r0 +/* 80014498 000113F8 38 21 00 40 */ addi r1, r1, 0x40 +/* 8001449C 000113FC 4E 80 00 20 */ blr + +.global AddToRenderer__7CPlayerCFRC14CFrustumPlanesRC13CStateManager +AddToRenderer__7CPlayerCFRC14CFrustumPlanesRC13CStateManager: +/* 800144A0 00011400 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 800144A4 00011404 7C 08 02 A6 */ mflr r0 +/* 800144A8 00011408 90 01 00 24 */ stw r0, 0x24(r1) +/* 800144AC 0001140C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 800144B0 00011410 7C BF 2B 78 */ mr r31, r5 +/* 800144B4 00011414 93 C1 00 18 */ stw r30, 0x18(r1) +/* 800144B8 00011418 7C 9E 23 78 */ mr r30, r4 +/* 800144BC 0001141C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 800144C0 00011420 7C 7D 1B 78 */ mr r29, r3 +/* 800144C4 00011424 80 03 02 F4 */ lwz r0, 0x2f4(r3) +/* 800144C8 00011428 2C 00 00 00 */ cmpwi r0, 0 +/* 800144CC 0001142C 41 82 00 44 */ beq lbl_80014510 +/* 800144D0 00011430 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 800144D4 00011434 2C 00 00 01 */ cmpwi r0, 1 +/* 800144D8 00011438 40 82 00 38 */ bne lbl_80014510 +/* 800144DC 0001143C 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 800144E0 00011440 48 0D C2 BD */ bl IsInFrustum__10CMorphBallCFRC14CFrustumPlanes +/* 800144E4 00011444 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800144E8 00011448 41 82 00 18 */ beq lbl_80014500 +/* 800144EC 0001144C 7F A3 EB 78 */ mr r3, r29 +/* 800144F0 00011450 7F C4 F3 78 */ mr r4, r30 +/* 800144F4 00011454 7F E5 FB 78 */ mr r5, r31 +/* 800144F8 00011458 48 04 06 41 */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager +/* 800144FC 0001145C 48 00 00 34 */ b lbl_80014530 +lbl_80014500: +/* 80014500 00011460 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 80014504 00011464 7F E4 FB 78 */ mr r4, r31 +/* 80014508 00011468 48 0D AA B5 */ bl TouchModel__10CMorphBallCFRC13CStateManager +/* 8001450C 0001146C 48 00 00 24 */ b lbl_80014530 +lbl_80014510: +/* 80014510 00011470 80 7D 04 90 */ lwz r3, 0x490(r29) +/* 80014514 00011474 7F C4 F3 78 */ mr r4, r30 +/* 80014518 00011478 7F E5 FB 78 */ mr r5, r31 +/* 8001451C 0001147C 48 02 E4 95 */ bl AddToRenderer__10CPlayerGunCFRC14CFrustumPlanesRC13CStateManager +/* 80014520 00011480 7F A3 EB 78 */ mr r3, r29 +/* 80014524 00011484 7F C4 F3 78 */ mr r4, r30 +/* 80014528 00011488 7F E5 FB 78 */ mr r5, r31 +/* 8001452C 0001148C 48 04 06 0D */ bl AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager +lbl_80014530: +/* 80014530 00011490 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80014534 00011494 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80014538 00011498 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001453C 0001149C 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80014540 000114A0 7C 08 03 A6 */ mtlr r0 +/* 80014544 000114A4 38 21 00 20 */ addi r1, r1, 0x20 +/* 80014548 000114A8 4E 80 00 20 */ blr + +.global UpdateGunAlpha__7CPlayerFRC13CStateManager +UpdateGunAlpha__7CPlayerFRC13CStateManager: +/* 8001454C 000114AC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80014550 000114B0 7C 08 02 A6 */ mflr r0 +/* 80014554 000114B4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80014558 000114B8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001455C 000114BC 7C 7F 1B 78 */ mr r31, r3 +/* 80014560 000114C0 80 03 04 98 */ lwz r0, 0x498(r3) +/* 80014564 000114C4 2C 00 00 02 */ cmpwi r0, 2 +/* 80014568 000114C8 41 82 00 94 */ beq lbl_800145FC +/* 8001456C 000114CC 40 80 00 14 */ bge lbl_80014580 +/* 80014570 000114D0 2C 00 00 00 */ cmpwi r0, 0 +/* 80014574 000114D4 41 82 00 18 */ beq lbl_8001458C +/* 80014578 000114D8 40 80 00 50 */ bge lbl_800145C8 +/* 8001457C 000114DC 48 00 00 88 */ b lbl_80014604 +lbl_80014580: +/* 80014580 000114E0 2C 00 00 04 */ cmpwi r0, 4 +/* 80014584 000114E4 40 80 00 80 */ bge lbl_80014604 +/* 80014588 000114E8 48 00 00 10 */ b lbl_80014598 +lbl_8001458C: +/* 8001458C 000114EC C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80014590 000114F0 D0 1F 04 94 */ stfs f0, 0x494(r31) +/* 80014594 000114F4 48 00 00 70 */ b lbl_80014604 +lbl_80014598: +/* 80014598 000114F8 80 AD A1 34 */ lwz r5, gpTweakPlayerGun@sda21(r13) +/* 8001459C 000114FC 38 81 00 0C */ addi r4, r1, 0xc +/* 800145A0 00011500 C0 3F 04 9C */ lfs f1, 0x49c(r31) +/* 800145A4 00011504 38 6D 80 E8 */ addi r3, r13, lbl_805A6CA8@sda21 +/* 800145A8 00011508 C0 05 00 3C */ lfs f0, 0x3c(r5) +/* 800145AC 0001150C 38 AD 80 EC */ addi r5, r13, lbl_805A6CAC@sda21 +/* 800145B0 00011510 EC 01 00 24 */ fdivs f0, f1, f0 +/* 800145B4 00011514 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 800145B8 00011518 4B FF 7C FD */ bl "Clamp__5CMathFRCfRCfRCf" +/* 800145BC 0001151C C0 03 00 00 */ lfs f0, 0(r3) +/* 800145C0 00011520 D0 1F 04 94 */ stfs f0, 0x494(r31) +/* 800145C4 00011524 48 00 00 40 */ b lbl_80014604 +lbl_800145C8: +/* 800145C8 00011528 C0 3F 04 9C */ lfs f1, 0x49c(r31) +/* 800145CC 0001152C 38 81 00 08 */ addi r4, r1, 8 +/* 800145D0 00011530 C0 02 81 B4 */ lfs f0, lbl_805A9ED4@sda21(r2) +/* 800145D4 00011534 38 6D 80 F0 */ addi r3, r13, lbl_805A6CB0@sda21 +/* 800145D8 00011538 38 AD 80 F4 */ addi r5, r13, lbl_805A6CB4@sda21 +/* 800145DC 0001153C EC 01 00 24 */ fdivs f0, f1, f0 +/* 800145E0 00011540 D0 01 00 08 */ stfs f0, 8(r1) +/* 800145E4 00011544 4B FF 7C D1 */ bl "Clamp__5CMathFRCfRCfRCf" +/* 800145E8 00011548 C0 23 00 00 */ lfs f1, 0(r3) +/* 800145EC 0001154C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 800145F0 00011550 EC 00 08 28 */ fsubs f0, f0, f1 +/* 800145F4 00011554 D0 1F 04 94 */ stfs f0, 0x494(r31) +/* 800145F8 00011558 48 00 00 0C */ b lbl_80014604 +lbl_800145FC: +/* 800145FC 0001155C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80014600 00011560 D0 1F 04 94 */ stfs f0, 0x494(r31) +lbl_80014604: +/* 80014604 00011564 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80014608 00011568 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001460C 0001156C 7C 08 03 A6 */ mtlr r0 +/* 80014610 00011570 38 21 00 20 */ addi r1, r1, 0x20 +/* 80014614 00011574 4E 80 00 20 */ blr + +.global ComputeFreeLook__7CPlayerFRC11CFinalInput +ComputeFreeLook__7CPlayerFRC11CFinalInput: +/* 80014618 00011578 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8001461C 0001157C 7C 08 02 A6 */ mflr r0 +/* 80014620 00011580 90 01 00 54 */ stw r0, 0x54(r1) +/* 80014624 00011584 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80014628 00011588 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8001462C 0001158C DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80014630 00011590 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 80014634 00011594 DB A1 00 20 */ stfd f29, 0x20(r1) +/* 80014638 00011598 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 +/* 8001463C 0001159C DB 81 00 10 */ stfd f28, 0x10(r1) +/* 80014640 000115A0 F3 81 00 18 */ psq_st f28, 24(r1), 0, qr0 +/* 80014644 000115A4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80014648 000115A8 93 C1 00 08 */ stw r30, 8(r1) +/* 8001464C 000115AC 7C 7E 1B 78 */ mr r30, r3 +/* 80014650 000115B0 7C 9F 23 78 */ mr r31, r4 +/* 80014654 000115B4 38 60 00 06 */ li r3, 6 +/* 80014658 000115B8 4B FF 82 C1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8001465C 000115BC FF C0 08 90 */ fmr f30, f1 +/* 80014660 000115C0 7F E4 FB 78 */ mr r4, r31 +/* 80014664 000115C4 38 60 00 07 */ li r3, 7 +/* 80014668 000115C8 4B FF 82 B1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8001466C 000115CC FF E0 08 90 */ fmr f31, f1 +/* 80014670 000115D0 7F E4 FB 78 */ mr r4, r31 +/* 80014674 000115D4 38 60 00 08 */ li r3, 8 +/* 80014678 000115D8 4B FF 82 A1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8001467C 000115DC FF A0 08 90 */ fmr f29, f1 +/* 80014680 000115E0 7F E4 FB 78 */ mr r4, r31 +/* 80014684 000115E4 38 60 00 09 */ li r3, 9 +/* 80014688 000115E8 4B FF 82 91 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8001468C 000115EC 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80014690 000115F0 FF 80 08 90 */ fmr f28, f1 +/* 80014694 000115F4 88 03 01 E4 */ lbz r0, 0x1e4(r3) +/* 80014698 000115F8 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f +/* 8001469C 000115FC 41 82 00 24 */ beq lbl_800146C0 +/* 800146A0 00011600 7F E4 FB 78 */ mr r4, r31 +/* 800146A4 00011604 38 60 00 09 */ li r3, 9 +/* 800146A8 00011608 4B FF 82 71 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800146AC 0001160C FF A0 08 90 */ fmr f29, f1 +/* 800146B0 00011610 7F E4 FB 78 */ mr r4, r31 +/* 800146B4 00011614 38 60 00 08 */ li r3, 8 +/* 800146B8 00011618 4B FF 82 61 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800146BC 0001161C FF 80 08 90 */ fmr f28, f1 +lbl_800146C0: +/* 800146C0 00011620 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 800146C4 00011624 88 03 02 29 */ lbz r0, 0x229(r3) +/* 800146C8 00011628 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 800146CC 0001162C 40 82 00 34 */ bne lbl_80014700 +/* 800146D0 00011630 7F E4 FB 78 */ mr r4, r31 +/* 800146D4 00011634 38 60 00 0B */ li r3, 0xb +/* 800146D8 00011638 4B FF 81 9D */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800146DC 0001163C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800146E0 00011640 40 82 00 10 */ bne lbl_800146F0 +/* 800146E4 00011644 80 1E 03 04 */ lwz r0, 0x304(r30) +/* 800146E8 00011648 2C 00 00 00 */ cmpwi r0, 0 +/* 800146EC 0001164C 41 82 00 14 */ beq lbl_80014700 +lbl_800146F0: +/* 800146F0 00011650 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800146F4 00011654 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) +/* 800146F8 00011658 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) +/* 800146FC 0001165C 48 00 00 5C */ b lbl_80014758 +lbl_80014700: +/* 80014700 00011660 88 1E 03 DC */ lbz r0, 0x3dc(r30) +/* 80014704 00011664 28 00 00 00 */ cmplwi r0, 0 +/* 80014708 00011668 41 82 00 2C */ beq lbl_80014734 +/* 8001470C 0001166C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80014710 00011670 EC 5E F8 28 */ fsubs f2, f30, f31 +/* 80014714 00011674 EC 3D E0 28 */ fsubs f1, f29, f28 +/* 80014718 00011678 C0 03 01 30 */ lfs f0, 0x130(r3) +/* 8001471C 0001167C EC 02 00 32 */ fmuls f0, f2, f0 +/* 80014720 00011680 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) +/* 80014724 00011684 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80014728 00011688 C0 03 01 34 */ lfs f0, 0x134(r3) +/* 8001472C 0001168C EC 01 00 32 */ fmuls f0, f1, f0 +/* 80014730 00011690 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) +lbl_80014734: +/* 80014734 00011694 88 1E 03 DE */ lbz r0, 0x3de(r30) +/* 80014738 00011698 28 00 00 00 */ cmplwi r0, 0 +/* 8001473C 0001169C 41 82 00 10 */ beq lbl_8001474C +/* 80014740 000116A0 88 1E 03 DD */ lbz r0, 0x3dd(r30) +/* 80014744 000116A4 28 00 00 00 */ cmplwi r0, 0 +/* 80014748 000116A8 40 82 00 10 */ bne lbl_80014758 +lbl_8001474C: +/* 8001474C 000116AC C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80014750 000116B0 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) +/* 80014754 000116B4 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) +lbl_80014758: +/* 80014758 000116B8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 8001475C 000116BC 88 63 02 28 */ lbz r3, 0x228(r3) +/* 80014760 000116C0 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 80014764 000116C4 41 82 00 68 */ beq lbl_800147CC +/* 80014768 000116C8 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 8001476C 000116CC 41 82 00 2C */ beq lbl_80014798 +/* 80014770 000116D0 7F E4 FB 78 */ mr r4, r31 +/* 80014774 000116D4 38 60 00 21 */ li r3, 0x21 +/* 80014778 000116D8 4B FF 80 FD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8001477C 000116DC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014780 000116E0 41 82 00 40 */ beq lbl_800147C0 +/* 80014784 000116E4 7F E4 FB 78 */ mr r4, r31 +/* 80014788 000116E8 38 60 00 22 */ li r3, 0x22 +/* 8001478C 000116EC 4B FF 80 E9 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80014790 000116F0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014794 000116F4 41 82 00 2C */ beq lbl_800147C0 +lbl_80014798: +/* 80014798 000116F8 7F E4 FB 78 */ mr r4, r31 +/* 8001479C 000116FC 38 60 00 21 */ li r3, 0x21 +/* 800147A0 00011700 4B FF 80 D5 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800147A4 00011704 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800147A8 00011708 40 82 00 24 */ bne lbl_800147CC +/* 800147AC 0001170C 7F E4 FB 78 */ mr r4, r31 +/* 800147B0 00011710 38 60 00 22 */ li r3, 0x22 +/* 800147B4 00011714 4B FF 80 C1 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800147B8 00011718 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800147BC 0001171C 40 82 00 10 */ bne lbl_800147CC +lbl_800147C0: +/* 800147C0 00011720 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800147C4 00011724 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) +/* 800147C8 00011728 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) +lbl_800147CC: +/* 800147CC 0001172C 7F C3 F3 78 */ mr r3, r30 +/* 800147D0 00011730 48 00 5A 45 */ bl IsMorphBallTransitioning__7CPlayerCFv +/* 800147D4 00011734 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800147D8 00011738 41 82 00 10 */ beq lbl_800147E8 +/* 800147DC 0001173C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800147E0 00011740 D0 1E 03 E8 */ stfs f0, 0x3e8(r30) +/* 800147E4 00011744 D0 1E 03 F0 */ stfs f0, 0x3f0(r30) +lbl_800147E8: +/* 800147E8 00011748 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 800147EC 0001174C CB E1 00 40 */ lfd f31, 0x40(r1) +/* 800147F0 00011750 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 800147F4 00011754 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 800147F8 00011758 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 +/* 800147FC 0001175C CB A1 00 20 */ lfd f29, 0x20(r1) +/* 80014800 00011760 E3 81 00 18 */ psq_l f28, 24(r1), 0, qr0 +/* 80014804 00011764 CB 81 00 10 */ lfd f28, 0x10(r1) +/* 80014808 00011768 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001480C 0001176C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80014810 00011770 83 C1 00 08 */ lwz r30, 8(r1) +/* 80014814 00011774 7C 08 03 A6 */ mtlr r0 +/* 80014818 00011778 38 21 00 50 */ addi r1, r1, 0x50 +/* 8001481C 0001177C 4E 80 00 20 */ blr + +.global UpdateFreeLook__7CPlayerFf +UpdateFreeLook__7CPlayerFf: +/* 80014820 00011780 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80014824 00011784 7C 08 02 A6 */ mflr r0 +/* 80014828 00011788 90 01 00 54 */ stw r0, 0x54(r1) +/* 8001482C 0001178C DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80014830 00011790 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80014834 00011794 DB C1 00 30 */ stfd f30, 0x30(r1) +/* 80014838 00011798 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 +/* 8001483C 0001179C DB A1 00 20 */ stfd f29, 0x20(r1) +/* 80014840 000117A0 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 +/* 80014844 000117A4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80014848 000117A8 7C 7F 1B 78 */ mr r31, r3 +/* 8001484C 000117AC FF A0 08 90 */ fmr f29, f1 +/* 80014850 000117B0 48 00 14 AD */ bl GetFrozenState__7CPlayerCFv +/* 80014854 000117B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014858 000117B8 40 82 01 20 */ bne lbl_80014978 +/* 8001485C 000117BC 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80014860 000117C0 88 1F 03 DE */ lbz r0, 0x3de(r31) +/* 80014864 000117C4 C0 03 01 38 */ lfs f0, 0x138(r3) +/* 80014868 000117C8 28 00 00 00 */ cmplwi r0, 0 +/* 8001486C 000117CC EF FD 00 32 */ fmuls f31, f29, f0 +/* 80014870 000117D0 40 82 00 0C */ bne lbl_8001487C +/* 80014874 000117D4 C0 03 01 3C */ lfs f0, 0x13c(r3) +/* 80014878 000117D8 EF FD 00 32 */ fmuls f31, f29, f0 +lbl_8001487C: +/* 8001487C 000117DC C3 DF 03 F0 */ lfs f30, 0x3f0(r31) +/* 80014880 000117E0 38 81 00 0C */ addi r4, r1, 0xc +/* 80014884 000117E4 C0 3F 03 EC */ lfs f1, 0x3ec(r31) +/* 80014888 000117E8 38 6D 80 D8 */ addi r3, r13, lbl_805A6C98@sda21 +/* 8001488C 000117EC C0 02 81 B8 */ lfs f0, lbl_805A9ED8@sda21(r2) +/* 80014890 000117F0 38 AD 80 DC */ addi r5, r13, lbl_805A6C9C@sda21 +/* 80014894 000117F4 EF DE 08 28 */ fsubs f30, f30, f1 +/* 80014898 000117F8 EC 1E 00 24 */ fdivs f0, f30, f0 +/* 8001489C 000117FC FC 00 02 10 */ fabs f0, f0 +/* 800148A0 00011800 FC 00 00 18 */ frsp f0, f0 +/* 800148A4 00011804 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 800148A8 00011808 4B FF 7A 0D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 800148AC 0001180C C3 A3 00 00 */ lfs f29, 0(r3) +/* 800148B0 00011810 C0 02 81 BC */ lfs f0, lbl_805A9EDC@sda21(r2) +/* 800148B4 00011814 EC 20 07 72 */ fmuls f1, f0, f29 +/* 800148B8 00011818 48 38 02 25 */ bl sin +/* 800148BC 0001181C FC 40 08 18 */ frsp f2, f1 +/* 800148C0 00011820 C0 22 81 34 */ lfs f1, lbl_805A9E54@sda21(r2) +/* 800148C4 00011824 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800148C8 00011828 EC 21 17 78 */ fmsubs f1, f1, f29, f2 +/* 800148CC 0001182C FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 800148D0 00011830 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 800148D4 00011834 4C 40 13 82 */ cror 2, 0, 2 +/* 800148D8 00011838 40 82 00 14 */ bne lbl_800148EC +/* 800148DC 0001183C C0 1F 03 EC */ lfs f0, 0x3ec(r31) +/* 800148E0 00011840 EC 00 08 2A */ fadds f0, f0, f1 +/* 800148E4 00011844 D0 1F 03 EC */ stfs f0, 0x3ec(r31) +/* 800148E8 00011848 48 00 00 10 */ b lbl_800148F8 +lbl_800148EC: +/* 800148EC 0001184C C0 1F 03 EC */ lfs f0, 0x3ec(r31) +/* 800148F0 00011850 EC 00 08 28 */ fsubs f0, f0, f1 +/* 800148F4 00011854 D0 1F 03 EC */ stfs f0, 0x3ec(r31) +lbl_800148F8: +/* 800148F8 00011858 C3 DF 03 E8 */ lfs f30, 0x3e8(r31) +/* 800148FC 0001185C 38 81 00 08 */ addi r4, r1, 8 +/* 80014900 00011860 C0 1F 03 E4 */ lfs f0, 0x3e4(r31) +/* 80014904 00011864 38 6D 80 E0 */ addi r3, r13, lbl_805A6CA0@sda21 +/* 80014908 00011868 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) +/* 8001490C 0001186C 38 AD 80 E4 */ addi r5, r13, lbl_805A6CA4@sda21 +/* 80014910 00011870 EF DE 00 28 */ fsubs f30, f30, f0 +/* 80014914 00011874 C0 06 01 30 */ lfs f0, 0x130(r6) +/* 80014918 00011878 EC 1E 00 24 */ fdivs f0, f30, f0 +/* 8001491C 0001187C FC 00 02 10 */ fabs f0, f0 +/* 80014920 00011880 FC 00 00 18 */ frsp f0, f0 +/* 80014924 00011884 D0 01 00 08 */ stfs f0, 8(r1) +/* 80014928 00011888 4B FF 79 8D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8001492C 0001188C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80014930 00011890 C0 23 00 00 */ lfs f1, 0(r3) +/* 80014934 00011894 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 80014938 00011898 EC 3F 00 72 */ fmuls f1, f31, f1 +/* 8001493C 0001189C 4C 40 13 82 */ cror 2, 0, 2 +/* 80014940 000118A0 40 82 00 14 */ bne lbl_80014954 +/* 80014944 000118A4 C0 1F 03 E4 */ lfs f0, 0x3e4(r31) +/* 80014948 000118A8 EC 00 08 2A */ fadds f0, f0, f1 +/* 8001494C 000118AC D0 1F 03 E4 */ stfs f0, 0x3e4(r31) +/* 80014950 000118B0 48 00 00 10 */ b lbl_80014960 +lbl_80014954: +/* 80014954 000118B4 C0 1F 03 E4 */ lfs f0, 0x3e4(r31) +/* 80014958 000118B8 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8001495C 000118BC D0 1F 03 E4 */ stfs f0, 0x3e4(r31) +lbl_80014960: +/* 80014960 000118C0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80014964 000118C4 88 03 02 28 */ lbz r0, 0x228(r3) +/* 80014968 000118C8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8001496C 000118CC 41 82 00 0C */ beq lbl_80014978 +/* 80014970 000118D0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80014974 000118D4 D0 1F 03 E4 */ stfs f0, 0x3e4(r31) +lbl_80014978: +/* 80014978 000118D8 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 8001497C 000118DC CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80014980 000118E0 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 +/* 80014984 000118E4 CB C1 00 30 */ lfd f30, 0x30(r1) +/* 80014988 000118E8 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 +/* 8001498C 000118EC CB A1 00 20 */ lfd f29, 0x20(r1) +/* 80014990 000118F0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80014994 000118F4 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80014998 000118F8 7C 08 03 A6 */ mtlr r0 +/* 8001499C 000118FC 38 21 00 50 */ addi r1, r1, 0x50 +/* 800149A0 00011900 4E 80 00 20 */ blr + +.global DetachActorFromPlayer__7CPlayerFv +DetachActorFromPlayer__7CPlayerFv: +/* 800149A4 00011904 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 800149A8 00011908 38 80 00 00 */ li r4, 0 +/* 800149AC 0001190C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800149B0 00011910 B0 03 02 6C */ sth r0, 0x26c(r3) +/* 800149B4 00011914 D0 03 02 70 */ stfs f0, 0x270(r3) +/* 800149B8 00011918 D0 03 0A 28 */ stfs f0, 0xa28(r3) +/* 800149BC 0001191C 80 63 04 90 */ lwz r3, 0x490(r3) +/* 800149C0 00011920 88 03 08 35 */ lbz r0, 0x835(r3) +/* 800149C4 00011924 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f +/* 800149C8 00011928 98 03 08 35 */ stb r0, 0x835(r3) +/* 800149CC 0001192C 4E 80 00 20 */ blr + +.global AttachActorToPlayer__7CPlayerF9TUniqueId +AttachActorToPlayer__7CPlayerF9TUniqueId: +/* 800149D0 00011930 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800149D4 00011934 7C 08 02 A6 */ mflr r0 +/* 800149D8 00011938 90 01 00 14 */ stw r0, 0x14(r1) +/* 800149DC 0001193C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 800149E0 00011940 A0 C3 02 6C */ lhz r6, 0x26c(r3) +/* 800149E4 00011944 7C 06 00 40 */ cmplw r6, r0 +/* 800149E8 00011948 40 82 00 44 */ bne lbl_80014A2C +/* 800149EC 0001194C 54 A0 06 3F */ clrlwi. r0, r5, 0x18 +/* 800149F0 00011950 41 82 00 18 */ beq lbl_80014A08 +/* 800149F4 00011954 80 A3 04 90 */ lwz r5, 0x490(r3) +/* 800149F8 00011958 38 C0 00 01 */ li r6, 1 +/* 800149FC 0001195C 88 05 08 35 */ lbz r0, 0x835(r5) +/* 80014A00 00011960 50 C0 07 FE */ rlwimi r0, r6, 0, 0x1f, 0x1f +/* 80014A04 00011964 98 05 08 35 */ stb r0, 0x835(r5) +lbl_80014A08: +/* 80014A08 00011968 A0 04 00 00 */ lhz r0, 0(r4) +/* 80014A0C 0001196C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80014A10 00011970 B0 03 02 6C */ sth r0, 0x26c(r3) +/* 80014A14 00011974 D0 03 02 70 */ stfs f0, 0x270(r3) +/* 80014A18 00011978 D0 03 0A 28 */ stfs f0, 0xa28(r3) +/* 80014A1C 0001197C 80 63 07 68 */ lwz r3, 0x768(r3) +/* 80014A20 00011980 48 0E 0B 8D */ bl StopEffects__10CMorphBallFv +/* 80014A24 00011984 38 60 00 01 */ li r3, 1 +/* 80014A28 00011988 48 00 00 08 */ b lbl_80014A30 +lbl_80014A2C: +/* 80014A2C 0001198C 38 60 00 00 */ li r3, 0 +lbl_80014A30: +/* 80014A30 00011990 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80014A34 00011994 7C 08 03 A6 */ mtlr r0 +/* 80014A38 00011998 38 21 00 10 */ addi r1, r1, 0x10 +/* 80014A3C 0001199C 4E 80 00 20 */ blr + +.global CalculateLeftStickEdgePosition__7CPlayerCFff +CalculateLeftStickEdgePosition__7CPlayerCFff: +/* 80014A40 000119A0 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80014A44 000119A4 7C 08 02 A6 */ mflr r0 +/* 80014A48 000119A8 90 01 00 44 */ stw r0, 0x44(r1) +/* 80014A4C 000119AC DB E1 00 30 */ stfd f31, 0x30(r1) +/* 80014A50 000119B0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 +/* 80014A54 000119B4 DB C1 00 20 */ stfd f30, 0x20(r1) +/* 80014A58 000119B8 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 +/* 80014A5C 000119BC DB A1 00 10 */ stfd f29, 0x10(r1) +/* 80014A60 000119C0 F3 A1 00 18 */ psq_st f29, 24(r1), 0, qr0 +/* 80014A64 000119C4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80014A68 000119C8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80014A6C 000119CC 7C 7F 1B 78 */ mr r31, r3 +/* 80014A70 000119D0 C3 E2 81 88 */ lfs f31, lbl_805A9EA8@sda21(r2) +/* 80014A74 000119D4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80014A78 000119D8 C3 C2 81 C0 */ lfs f30, lbl_805A9EE0@sda21(r2) +/* 80014A7C 000119DC C3 A2 81 C4 */ lfs f29, lbl_805A9EE4@sda21(r2) +/* 80014A80 000119E0 4C 41 13 82 */ cror 2, 1, 2 +/* 80014A84 000119E4 40 82 00 0C */ bne lbl_80014A90 +/* 80014A88 000119E8 FF E0 F8 50 */ fneg f31, f31 +/* 80014A8C 000119EC FF C0 F0 50 */ fneg f30, f30 +lbl_80014A90: +/* 80014A90 000119F0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80014A94 000119F4 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80014A98 000119F8 40 80 00 0C */ bge lbl_80014AA4 +/* 80014A9C 000119FC C0 02 81 C4 */ lfs f0, lbl_805A9EE4@sda21(r2) +/* 80014AA0 00011A00 FF A0 00 50 */ fneg f29, f0 +lbl_80014AA4: +/* 80014AA4 00011A04 FC 00 0A 10 */ fabs f0, f1 +/* 80014AA8 00011A08 FC 20 12 10 */ fabs f1, f2 +/* 80014AAC 00011A0C FC 00 00 18 */ frsp f0, f0 +/* 80014AB0 00011A10 FC 20 08 18 */ frsp f1, f1 +/* 80014AB4 00011A14 EC 21 00 24 */ fdivs f1, f1, f0 +/* 80014AB8 00011A18 48 30 08 B5 */ bl ArcTangentR__5CMathFf +/* 80014ABC 00011A1C C0 42 81 C8 */ lfs f2, lbl_805A9EE8@sda21(r2) +/* 80014AC0 00011A20 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) +/* 80014AC4 00011A24 EC 81 10 24 */ fdivs f4, f1, f2 +/* 80014AC8 00011A28 FC 20 22 10 */ fabs f1, f4 +/* 80014ACC 00011A2C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80014AD0 00011A30 40 81 00 14 */ ble lbl_80014AE4 +/* 80014AD4 00011A34 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) +/* 80014AD8 00011A38 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80014ADC 00011A3C FC 04 00 6E */ fsel f0, f4, f1, f0 +/* 80014AE0 00011A40 EC 81 00 32 */ fmuls f4, f1, f0 +lbl_80014AE4: +/* 80014AE4 00011A44 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) +/* 80014AE8 00011A48 EC 1E F8 28 */ fsubs f0, f30, f31 +/* 80014AEC 00011A4C EC 3D 10 28 */ fsubs f1, f29, f2 +/* 80014AF0 00011A50 EC 64 00 32 */ fmuls f3, f4, f0 +/* 80014AF4 00011A54 EC 04 00 B2 */ fmuls f0, f4, f2 +/* 80014AF8 00011A58 EC 24 00 72 */ fmuls f1, f4, f1 +/* 80014AFC 00011A5C EC 7F 18 2A */ fadds f3, f31, f3 +/* 80014B00 00011A60 EC 02 00 2A */ fadds f0, f2, f0 +/* 80014B04 00011A64 EC 22 08 2A */ fadds f1, f2, f1 +/* 80014B08 00011A68 D0 7F 00 00 */ stfs f3, 0(r31) +/* 80014B0C 00011A6C D0 3F 00 04 */ stfs f1, 4(r31) +/* 80014B10 00011A70 D0 1F 00 08 */ stfs f0, 8(r31) +/* 80014B14 00011A74 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 +/* 80014B18 00011A78 CB E1 00 30 */ lfd f31, 0x30(r1) +/* 80014B1C 00011A7C E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 +/* 80014B20 00011A80 CB C1 00 20 */ lfd f30, 0x20(r1) +/* 80014B24 00011A84 E3 A1 00 18 */ psq_l f29, 24(r1), 0, qr0 +/* 80014B28 00011A88 CB A1 00 10 */ lfd f29, 0x10(r1) +/* 80014B2C 00011A8C 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80014B30 00011A90 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80014B34 00011A94 7C 08 03 A6 */ mtlr r0 +/* 80014B38 00011A98 38 21 00 40 */ addi r1, r1, 0x40 +/* 80014B3C 00011A9C 4E 80 00 20 */ blr + +.global GetMaximumPlayerPositiveVerticalVelocity__7CPlayerCFRC13CStateManager +GetMaximumPlayerPositiveVerticalVelocity__7CPlayerCFRC13CStateManager: +/* 80014B40 00011AA0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80014B44 00011AA4 7C 08 02 A6 */ mflr r0 +/* 80014B48 00011AA8 90 01 00 14 */ stw r0, 0x14(r1) +/* 80014B4C 00011AAC 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 80014B50 00011AB0 38 80 00 0F */ li r4, 0xf +/* 80014B54 00011AB4 80 63 00 00 */ lwz r3, 0(r3) +/* 80014B58 00011AB8 48 07 CF C5 */ bl GetItemAmount__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80014B5C 00011ABC 2C 03 00 00 */ cmpwi r3, 0 +/* 80014B60 00011AC0 41 82 00 0C */ beq lbl_80014B6C +/* 80014B64 00011AC4 C0 22 81 CC */ lfs f1, lbl_805A9EEC@sda21(r2) +/* 80014B68 00011AC8 48 00 00 08 */ b lbl_80014B70 +lbl_80014B6C: +/* 80014B6C 00011ACC C0 22 81 D0 */ lfs f1, lbl_805A9EF0@sda21(r2) +lbl_80014B70: +/* 80014B70 00011AD0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80014B74 00011AD4 7C 08 03 A6 */ mtlr r0 +/* 80014B78 00011AD8 38 21 00 10 */ addi r1, r1, 0x10 +/* 80014B7C 00011ADC 4E 80 00 20 */ blr + +.global UpdateMorphBallState__7CPlayerFfRC11CFinalInputR13CStateManager +UpdateMorphBallState__7CPlayerFfRC11CFinalInputR13CStateManager: +/* 80014B80 00011AE0 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80014B84 00011AE4 7C 08 02 A6 */ mflr r0 +/* 80014B88 00011AE8 90 01 00 54 */ stw r0, 0x54(r1) +/* 80014B8C 00011AEC DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80014B90 00011AF0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 80014B94 00011AF4 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80014B98 00011AF8 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80014B9C 00011AFC FF E0 08 90 */ fmr f31, f1 +/* 80014BA0 00011B00 7C 7E 1B 78 */ mr r30, r3 +/* 80014BA4 00011B04 7C BF 2B 78 */ mr r31, r5 +/* 80014BA8 00011B08 38 60 00 0D */ li r3, 0xd +/* 80014BAC 00011B0C 4B FF 7C 25 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80014BB0 00011B10 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014BB4 00011B14 41 82 01 88 */ beq lbl_80014D3C +/* 80014BB8 00011B18 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80014BBC 00011B1C 2C 00 00 01 */ cmpwi r0, 1 +/* 80014BC0 00011B20 41 82 00 AC */ beq lbl_80014C6C +/* 80014BC4 00011B24 40 80 01 78 */ bge lbl_80014D3C +/* 80014BC8 00011B28 2C 00 00 00 */ cmpwi r0, 0 +/* 80014BCC 00011B2C 40 80 00 0C */ bge lbl_80014BD8 +/* 80014BD0 00011B30 48 00 01 6C */ b lbl_80014D3C +/* 80014BD4 00011B34 48 00 01 68 */ b lbl_80014D3C +lbl_80014BD8: +/* 80014BD8 00011B38 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80014BDC 00011B3C 38 80 00 10 */ li r4, 0x10 +/* 80014BE0 00011B40 80 63 00 00 */ lwz r3, 0(r3) +/* 80014BE4 00011B44 48 07 CE DD */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80014BE8 00011B48 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 80014BEC 00011B4C 28 00 00 01 */ cmplwi r0, 1 +/* 80014BF0 00011B50 40 82 00 40 */ bne lbl_80014C30 +/* 80014BF4 00011B54 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80014BF8 00011B58 7F C3 F3 78 */ mr r3, r30 +/* 80014BFC 00011B5C 7F E4 FB 78 */ mr r4, r31 +/* 80014C00 00011B60 4B FF E2 FD */ bl CanEnterMorphBallState__7CPlayerCFR13CStateManagerf +/* 80014C04 00011B64 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014C08 00011B68 41 82 00 28 */ beq lbl_80014C30 +/* 80014C0C 00011B6C C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) +/* 80014C10 00011B70 FC 20 F8 90 */ fmr f1, f31 +/* 80014C14 00011B74 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80014C18 00011B78 7F C3 F3 78 */ mr r3, r30 +/* 80014C1C 00011B7C D0 5E 05 74 */ stfs f2, 0x574(r30) +/* 80014C20 00011B80 7F E4 FB 78 */ mr r4, r31 +/* 80014C24 00011B84 D0 1E 05 78 */ stfs f0, 0x578(r30) +/* 80014C28 00011B88 48 26 ED 25 */ bl TransitionToMorphBallState__7CPlayerFfR13CStateManager +/* 80014C2C 00011B8C 48 00 01 10 */ b lbl_80014D3C +lbl_80014C30: +/* 80014C30 00011B90 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80014C34 00011B94 38 61 00 10 */ addi r3, r1, 0x10 +/* 80014C38 00011B98 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80014C3C 00011B9C 38 80 06 F5 */ li r4, 0x6f5 +/* 80014C40 00011BA0 38 A0 00 7F */ li r5, 0x7f +/* 80014C44 00011BA4 38 C0 00 40 */ li r6, 0x40 +/* 80014C48 00011BA8 38 E0 00 01 */ li r7, 1 +/* 80014C4C 00011BAC 39 20 00 00 */ li r9, 0 +/* 80014C50 00011BB0 48 2D 51 25 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80014C54 00011BB4 80 01 00 10 */ lwz r0, 0x10(r1) +/* 80014C58 00011BB8 7F C3 F3 78 */ mr r3, r30 +/* 80014C5C 00011BBC 38 81 00 14 */ addi r4, r1, 0x14 +/* 80014C60 00011BC0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80014C64 00011BC4 4B FF C5 29 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 80014C68 00011BC8 48 00 00 D4 */ b lbl_80014D3C +lbl_80014C6C: +/* 80014C6C 00011BCC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80014C70 00011BD0 7F C3 F3 78 */ mr r3, r30 +/* 80014C74 00011BD4 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 80014C78 00011BD8 7F E4 FB 78 */ mr r4, r31 +/* 80014C7C 00011BDC C0 46 00 00 */ lfs f2, 0(r6) +/* 80014C80 00011BE0 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80014C84 00011BE4 C0 26 00 04 */ lfs f1, 4(r6) +/* 80014C88 00011BE8 C0 06 00 08 */ lfs f0, 8(r6) +/* 80014C8C 00011BEC D0 41 00 24 */ stfs f2, 0x24(r1) +/* 80014C90 00011BF0 D0 21 00 28 */ stfs f1, 0x28(r1) +/* 80014C94 00011BF4 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80014C98 00011BF8 4B FF DD FD */ bl CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f +/* 80014C9C 00011BFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014CA0 00011C00 41 82 00 64 */ beq lbl_80014D04 +/* 80014CA4 00011C04 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 80014CA8 00011C08 7F C3 F3 78 */ mr r3, r30 +/* 80014CAC 00011C0C C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80014CB0 00011C10 38 81 00 18 */ addi r4, r1, 0x18 +/* 80014CB4 00011C14 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 80014CB8 00011C18 C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 80014CBC 00011C1C EC 81 00 2A */ fadds f4, f1, f0 +/* 80014CC0 00011C20 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 80014CC4 00011C24 C0 01 00 24 */ lfs f0, 0x24(r1) +/* 80014CC8 00011C28 EC 43 10 2A */ fadds f2, f3, f2 +/* 80014CCC 00011C2C D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80014CD0 00011C30 EC 01 00 2A */ fadds f0, f1, f0 +/* 80014CD4 00011C34 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80014CD8 00011C38 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80014CDC 00011C3C 48 03 E1 B1 */ bl SetTranslation__6CActorFRC9CVector3f +/* 80014CE0 00011C40 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) +/* 80014CE4 00011C44 FC 20 F8 90 */ fmr f1, f31 +/* 80014CE8 00011C48 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80014CEC 00011C4C 7F C3 F3 78 */ mr r3, r30 +/* 80014CF0 00011C50 D0 5E 05 74 */ stfs f2, 0x574(r30) +/* 80014CF4 00011C54 7F E4 FB 78 */ mr r4, r31 +/* 80014CF8 00011C58 D0 1E 05 78 */ stfs f0, 0x578(r30) +/* 80014CFC 00011C5C 48 26 E3 79 */ bl TransitionFromMorphBallState__7CPlayerFR13CStateManager +/* 80014D00 00011C60 48 00 00 3C */ b lbl_80014D3C +lbl_80014D04: +/* 80014D04 00011C64 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80014D08 00011C68 38 61 00 08 */ addi r3, r1, 8 +/* 80014D0C 00011C6C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80014D10 00011C70 38 80 06 F5 */ li r4, 0x6f5 +/* 80014D14 00011C74 38 A0 00 7F */ li r5, 0x7f +/* 80014D18 00011C78 38 C0 00 40 */ li r6, 0x40 +/* 80014D1C 00011C7C 38 E0 00 01 */ li r7, 1 +/* 80014D20 00011C80 39 20 00 00 */ li r9, 0 +/* 80014D24 00011C84 48 2D 50 51 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80014D28 00011C88 80 01 00 08 */ lwz r0, 8(r1) +/* 80014D2C 00011C8C 7F C3 F3 78 */ mr r3, r30 +/* 80014D30 00011C90 38 81 00 0C */ addi r4, r1, 0xc +/* 80014D34 00011C94 90 01 00 0C */ stw r0, 0xc(r1) +/* 80014D38 00011C98 4B FF C4 55 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +lbl_80014D3C: +/* 80014D3C 00011C9C E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 80014D40 00011CA0 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80014D44 00011CA4 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 80014D48 00011CA8 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 80014D4C 00011CAC 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 80014D50 00011CB0 7C 08 03 A6 */ mtlr r0 +/* 80014D54 00011CB4 38 21 00 50 */ addi r1, r1, 0x50 +/* 80014D58 00011CB8 4E 80 00 20 */ blr + +.global ProcessInput__7CPlayerFRC11CFinalInputR13CStateManager +ProcessInput__7CPlayerFRC11CFinalInputR13CStateManager: +/* 80014D5C 00011CBC 94 21 DA 60 */ stwu r1, -0x25a0(r1) +/* 80014D60 00011CC0 7C 08 02 A6 */ mflr r0 +/* 80014D64 00011CC4 90 01 25 A4 */ stw r0, 0x25a4(r1) +/* 80014D68 00011CC8 38 00 25 98 */ li r0, 0x2598 +/* 80014D6C 00011CCC DB E1 25 90 */ stfd f31, 0x2590(r1) +/* 80014D70 00011CD0 13 E1 00 0E */ psq_stx f31, r1, r0, 0, qr0 +/* 80014D74 00011CD4 38 00 25 88 */ li r0, 0x2588 +/* 80014D78 00011CD8 DB C1 25 80 */ stfd f30, 0x2580(r1) +/* 80014D7C 00011CDC 13 C1 00 0E */ psq_stx f30, r1, r0, 0, qr0 +/* 80014D80 00011CE0 38 00 25 78 */ li r0, 0x2578 +/* 80014D84 00011CE4 DB A1 25 70 */ stfd f29, 0x2570(r1) +/* 80014D88 00011CE8 13 A1 00 0E */ psq_stx f29, r1, r0, 0, qr0 +/* 80014D8C 00011CEC BF 21 25 54 */ stmw r25, 0x2554(r1) +/* 80014D90 00011CF0 7C 9E 23 78 */ mr r30, r4 +/* 80014D94 00011CF4 7C 7D 1B 78 */ mr r29, r3 +/* 80014D98 00011CF8 80 04 00 04 */ lwz r0, 4(r4) +/* 80014D9C 00011CFC 7C BF 2B 78 */ mr r31, r5 +/* 80014DA0 00011D00 2C 00 00 00 */ cmpwi r0, 0 +/* 80014DA4 00011D04 40 82 09 30 */ bne lbl_800156D4 +/* 80014DA8 00011D08 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80014DAC 00011D0C C3 FE 00 00 */ lfs f31, 0(r30) +/* 80014DB0 00011D10 2C 00 00 01 */ cmpwi r0, 1 +/* 80014DB4 00011D14 41 82 00 0C */ beq lbl_80014DC0 +/* 80014DB8 00011D18 FC 20 F8 90 */ fmr f1, f31 +/* 80014DBC 00011D1C 4B FF E4 7D */ bl UpdateScanningState__7CPlayerFRC11CFinalInputR13CStateManagerf +lbl_80014DC0: +/* 80014DC0 00011D20 80 1F 09 04 */ lwz r0, 0x904(r31) +/* 80014DC4 00011D24 2C 00 00 00 */ cmpwi r0, 0 +/* 80014DC8 00011D28 40 82 09 0C */ bne lbl_800156D4 +/* 80014DCC 00011D2C 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80014DD0 00011D30 80 63 00 00 */ lwz r3, 0(r3) +/* 80014DD4 00011D34 88 03 00 00 */ lbz r0, 0(r3) +/* 80014DD8 00011D38 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80014DDC 00011D3C 40 82 00 08 */ bne lbl_80014DE4 +/* 80014DE0 00011D40 48 00 08 F4 */ b lbl_800156D4 +lbl_80014DE4: +/* 80014DE4 00011D44 7F A3 EB 78 */ mr r3, r29 +/* 80014DE8 00011D48 48 00 0F 15 */ bl GetFrozenState__7CPlayerCFv +/* 80014DEC 00011D4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014DF0 00011D50 41 82 00 8C */ beq lbl_80014E7C +/* 80014DF4 00011D54 7F A3 EB 78 */ mr r3, r29 +/* 80014DF8 00011D58 7F C4 F3 78 */ mr r4, r30 +/* 80014DFC 00011D5C 7F E5 FB 78 */ mr r5, r31 +/* 80014E00 00011D60 48 00 09 FD */ bl UpdateFrozenState__7CPlayerFRC11CFinalInputR13CStateManager +/* 80014E04 00011D64 7F A3 EB 78 */ mr r3, r29 +/* 80014E08 00011D68 48 00 0E F5 */ bl GetFrozenState__7CPlayerCFv +/* 80014E0C 00011D6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014E10 00011D70 41 82 00 6C */ beq lbl_80014E7C +/* 80014E14 00011D74 80 1D 02 58 */ lwz r0, 0x258(r29) +/* 80014E18 00011D78 2C 00 00 00 */ cmpwi r0, 0 +/* 80014E1C 00011D7C 41 82 08 B8 */ beq lbl_800156D4 +/* 80014E20 00011D80 2C 00 00 04 */ cmpwi r0, 4 +/* 80014E24 00011D84 41 82 08 B0 */ beq lbl_800156D4 +/* 80014E28 00011D88 38 61 01 D0 */ addi r3, r1, 0x1d0 +/* 80014E2C 00011D8C 48 33 4F F5 */ bl __ct__11CFinalInputFv +/* 80014E30 00011D90 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80014E34 00011D94 2C 00 00 01 */ cmpwi r0, 1 +/* 80014E38 00011D98 40 82 00 2C */ bne lbl_80014E64 +/* 80014E3C 00011D9C FC 20 F8 90 */ fmr f1, f31 +/* 80014E40 00011DA0 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 80014E44 00011DA4 7F E5 FB 78 */ mr r5, r31 +/* 80014E48 00011DA8 38 81 01 D0 */ addi r4, r1, 0x1d0 +/* 80014E4C 00011DAC 48 0E 3E DD */ bl ComputeBallMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf +/* 80014E50 00011DB0 FC 20 F8 90 */ fmr f1, f31 +/* 80014E54 00011DB4 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 80014E58 00011DB8 7F E4 FB 78 */ mr r4, r31 +/* 80014E5C 00011DBC 48 0E 0D F1 */ bl UpdateBallDynamics__10CMorphBallFR13CStateManagerf +/* 80014E60 00011DC0 48 00 08 74 */ b lbl_800156D4 +lbl_80014E64: +/* 80014E64 00011DC4 FC 20 F8 90 */ fmr f1, f31 +/* 80014E68 00011DC8 7F A3 EB 78 */ mr r3, r29 +/* 80014E6C 00011DCC 7F E5 FB 78 */ mr r5, r31 +/* 80014E70 00011DD0 38 81 01 D0 */ addi r4, r1, 0x1d0 +/* 80014E74 00011DD4 48 27 21 01 */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf +/* 80014E78 00011DD8 48 00 08 5C */ b lbl_800156D4 +lbl_80014E7C: +/* 80014E7C 00011DDC 88 1D 07 60 */ lbz r0, 0x760(r29) +/* 80014E80 00011DE0 28 00 00 00 */ cmplwi r0, 0 +/* 80014E84 00011DE4 41 82 00 18 */ beq lbl_80014E9C +/* 80014E88 00011DE8 FC 20 F8 90 */ fmr f1, f31 +/* 80014E8C 00011DEC 7F A3 EB 78 */ mr r3, r29 +/* 80014E90 00011DF0 7F E4 FB 78 */ mr r4, r31 +/* 80014E94 00011DF4 48 00 08 95 */ bl ProcessFrozenInput__7CPlayerFfR13CStateManager +/* 80014E98 00011DF8 48 00 08 3C */ b lbl_800156D4 +lbl_80014E9C: +/* 80014E9C 00011DFC 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80014EA0 00011E00 2C 00 00 00 */ cmpwi r0, 0 +/* 80014EA4 00011E04 40 82 03 84 */ bne lbl_80015228 +/* 80014EA8 00011E08 80 7D 04 A0 */ lwz r3, 0x4a0(r29) +/* 80014EAC 00011E0C 48 28 20 C1 */ bl Passes__Q27CPlayer12CInputFilterFv +/* 80014EB0 00011E10 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80014EB4 00011E14 41 82 03 74 */ beq lbl_80015228 +/* 80014EB8 00011E18 7F A3 EB 78 */ mr r3, r29 +/* 80014EBC 00011E1C 81 9D 00 00 */ lwz r12, 0(r29) +/* 80014EC0 00011E20 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80014EC4 00011E24 7D 89 03 A6 */ mtctr r12 +/* 80014EC8 00011E28 4E 80 04 21 */ bctrl +/* 80014ECC 00011E2C 3B 43 00 10 */ addi r26, r3, 0x10 +/* 80014ED0 00011E30 7F A3 EB 78 */ mr r3, r29 +/* 80014ED4 00011E34 81 9D 00 00 */ lwz r12, 0(r29) +/* 80014ED8 00011E38 81 8C 00 6C */ lwz r12, 0x6c(r12) +/* 80014EDC 00011E3C 7D 89 03 A6 */ mtctr r12 +/* 80014EE0 00011E40 4E 80 04 21 */ bctrl +/* 80014EE4 00011E44 81 83 00 00 */ lwz r12, 0(r3) +/* 80014EE8 00011E48 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 80014EEC 00011E4C 7D 89 03 A6 */ mtctr r12 +/* 80014EF0 00011E50 4E 80 04 21 */ bctrl +/* 80014EF4 00011E54 C0 5A 00 10 */ lfs f2, 0x10(r26) +/* 80014EF8 00011E58 7C 79 1B 78 */ mr r25, r3 +/* 80014EFC 00011E5C C0 62 81 20 */ lfs f3, lbl_805A9E40@sda21(r2) +/* 80014F00 00011E60 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80014F04 00011E64 C0 3A 00 14 */ lfs f1, 0x14(r26) +/* 80014F08 00011E68 38 81 00 6C */ addi r4, r1, 0x6c +/* 80014F0C 00011E6C C0 1A 00 0C */ lfs f0, 0xc(r26) +/* 80014F10 00011E70 EC 42 18 2A */ fadds f2, f2, f3 +/* 80014F14 00011E74 EC 21 18 2A */ fadds f1, f1, f3 +/* 80014F18 00011E78 38 A1 00 60 */ addi r5, r1, 0x60 +/* 80014F1C 00011E7C EC 00 18 2A */ fadds f0, f0, f3 +/* 80014F20 00011E80 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 80014F24 00011E84 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80014F28 00011E88 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80014F2C 00011E8C C0 5A 00 04 */ lfs f2, 4(r26) +/* 80014F30 00011E90 C0 3A 00 08 */ lfs f1, 8(r26) +/* 80014F34 00011E94 C0 1A 00 00 */ lfs f0, 0(r26) +/* 80014F38 00011E98 EC 42 18 28 */ fsubs f2, f2, f3 +/* 80014F3C 00011E9C EC 21 18 28 */ fsubs f1, f1, f3 +/* 80014F40 00011EA0 EC 00 18 28 */ fsubs f0, f0, f3 +/* 80014F44 00011EA4 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 80014F48 00011EA8 D0 01 00 6C */ stfs f0, 0x6c(r1) +/* 80014F4C 00011EAC D0 21 00 74 */ stfs f1, 0x74(r1) +/* 80014F50 00011EB0 48 32 35 B9 */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80014F54 00011EB4 7F 24 CB 78 */ mr r4, r25 +/* 80014F58 00011EB8 38 61 01 A8 */ addi r3, r1, 0x1a8 +/* 80014F5C 00011EBC 48 2B A9 59 */ bl __ct__19CCollisionPrimitiveFRC13CMaterialList +/* 80014F60 00011EC0 C0 A1 00 B8 */ lfs f5, 0xb8(r1) +/* 80014F64 00011EC4 3C 60 80 3F */ lis r3, lbl_803ECAD0@ha +/* 80014F68 00011EC8 C0 81 00 BC */ lfs f4, 0xbc(r1) +/* 80014F6C 00011ECC 38 03 CA D0 */ addi r0, r3, lbl_803ECAD0@l +/* 80014F70 00011ED0 C0 61 00 C0 */ lfs f3, 0xc0(r1) +/* 80014F74 00011ED4 7F A3 EB 78 */ mr r3, r29 +/* 80014F78 00011ED8 C0 41 00 C4 */ lfs f2, 0xc4(r1) +/* 80014F7C 00011EDC C0 21 00 C8 */ lfs f1, 0xc8(r1) +/* 80014F80 00011EE0 C0 01 00 CC */ lfs f0, 0xcc(r1) +/* 80014F84 00011EE4 90 01 01 A8 */ stw r0, 0x1a8(r1) +/* 80014F88 00011EE8 D0 A1 01 B8 */ stfs f5, 0x1b8(r1) +/* 80014F8C 00011EEC D0 81 01 BC */ stfs f4, 0x1bc(r1) +/* 80014F90 00011EF0 D0 61 01 C0 */ stfs f3, 0x1c0(r1) +/* 80014F94 00011EF4 D0 41 01 C4 */ stfs f2, 0x1c4(r1) +/* 80014F98 00011EF8 D0 21 01 C8 */ stfs f1, 0x1c8(r1) +/* 80014F9C 00011EFC D0 01 01 CC */ stfs f0, 0x1cc(r1) +/* 80014FA0 00011F00 48 10 63 D9 */ bl Stop__13CPhysicsActorFv +/* 80014FA4 00011F04 7F 44 D3 78 */ mr r4, r26 +/* 80014FA8 00011F08 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80014FAC 00011F0C 38 BD 00 34 */ addi r5, r29, 0x34 +/* 80014FB0 00011F10 48 32 29 4D */ bl GetTransformedAABox__6CAABoxCFRC12CTransform4f +/* 80014FB4 00011F14 C0 41 00 AC */ lfs f2, 0xac(r1) +/* 80014FB8 00011F18 38 61 00 88 */ addi r3, r1, 0x88 +/* 80014FBC 00011F1C C0 C2 81 28 */ lfs f6, lbl_805A9E48@sda21(r2) +/* 80014FC0 00011F20 38 81 00 54 */ addi r4, r1, 0x54 +/* 80014FC4 00011F24 C0 21 00 B0 */ lfs f1, 0xb0(r1) +/* 80014FC8 00011F28 38 A1 00 48 */ addi r5, r1, 0x48 +/* 80014FCC 00011F2C C0 01 00 B4 */ lfs f0, 0xb4(r1) +/* 80014FD0 00011F30 EC A2 30 2A */ fadds f5, f2, f6 +/* 80014FD4 00011F34 C0 41 00 A0 */ lfs f2, 0xa0(r1) +/* 80014FD8 00011F38 EC 81 30 2A */ fadds f4, f1, f6 +/* 80014FDC 00011F3C C0 21 00 A4 */ lfs f1, 0xa4(r1) +/* 80014FE0 00011F40 EC 60 30 2A */ fadds f3, f0, f6 +/* 80014FE4 00011F44 C0 01 00 A8 */ lfs f0, 0xa8(r1) +/* 80014FE8 00011F48 EC 42 30 28 */ fsubs f2, f2, f6 +/* 80014FEC 00011F4C D0 A1 00 48 */ stfs f5, 0x48(r1) +/* 80014FF0 00011F50 EC 21 30 28 */ fsubs f1, f1, f6 +/* 80014FF4 00011F54 EC 00 30 28 */ fsubs f0, f0, f6 +/* 80014FF8 00011F58 D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 80014FFC 00011F5C D0 61 00 50 */ stfs f3, 0x50(r1) +/* 80015000 00011F60 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 80015004 00011F64 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 80015008 00011F68 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 8001500C 00011F6C 48 32 34 FD */ bl __ct__6CAABoxFRC9CVector3fRC9CVector3f +/* 80015010 00011F70 C0 A1 00 88 */ lfs f5, 0x88(r1) +/* 80015014 00011F74 38 61 0A 04 */ addi r3, r1, 0xa04 +/* 80015018 00011F78 C0 81 00 8C */ lfs f4, 0x8c(r1) +/* 8001501C 00011F7C 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80015020 00011F80 C0 61 00 90 */ lfs f3, 0x90(r1) +/* 80015024 00011F84 C0 41 00 94 */ lfs f2, 0x94(r1) +/* 80015028 00011F88 C0 21 00 98 */ lfs f1, 0x98(r1) +/* 8001502C 00011F8C C0 01 00 9C */ lfs f0, 0x9c(r1) +/* 80015030 00011F90 D0 A1 00 D0 */ stfs f5, 0xd0(r1) +/* 80015034 00011F94 D0 81 00 D4 */ stfs f4, 0xd4(r1) +/* 80015038 00011F98 D0 61 00 D8 */ stfs f3, 0xd8(r1) +/* 8001503C 00011F9C D0 41 00 DC */ stfs f2, 0xdc(r1) +/* 80015040 00011FA0 D0 21 00 E0 */ stfs f1, 0xe0(r1) +/* 80015044 00011FA4 D0 01 00 E4 */ stfs f0, 0xe4(r1) +/* 80015048 00011FA8 48 28 EA 49 */ bl __ct__19CAreaCollisionCacheFRC6CAABox +/* 8001504C 00011FAC 7F E3 FB 78 */ mr r3, r31 +/* 80015050 00011FB0 38 81 0A 04 */ addi r4, r1, 0xa04 +/* 80015054 00011FB4 48 16 F6 71 */ bl BuildAreaCollisionCache__14CGameCollisionFRC13CStateManagerR19CAreaCollisionCache +/* 80015058 00011FB8 38 00 00 00 */ li r0, 0 +/* 8001505C 00011FBC 7F E3 FB 78 */ mr r3, r31 +/* 80015060 00011FC0 90 01 02 00 */ stw r0, 0x200(r1) +/* 80015064 00011FC4 7F A5 EB 78 */ mr r5, r29 +/* 80015068 00011FC8 38 81 02 00 */ addi r4, r1, 0x200 +/* 8001506C 00011FCC 38 C1 00 D0 */ addi r6, r1, 0xd0 +/* 80015070 00011FD0 48 03 76 8D */ bl "BuildColliderList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CActorRC6CAABox" +/* 80015074 00011FD4 7F E4 FB 78 */ mr r4, r31 +/* 80015078 00011FD8 7F A6 EB 78 */ mr r6, r29 +/* 8001507C 00011FDC 38 61 00 38 */ addi r3, r1, 0x38 +/* 80015080 00011FE0 38 A1 0A 04 */ addi r5, r1, 0xa04 +/* 80015084 00011FE4 38 E1 01 A8 */ addi r7, r1, 0x1a8 +/* 80015088 00011FE8 39 01 02 00 */ addi r8, r1, 0x200 +/* 8001508C 00011FEC 48 16 B3 61 */ bl "FindNonIntersectingVector__14CGameCollisionFR13CStateManagerRC19CAreaCollisionCacheRC13CPhysicsActorRC19CCollisionPrimitiveRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 80015090 00011FF0 88 01 00 44 */ lbz r0, 0x44(r1) +/* 80015094 00011FF4 28 00 00 00 */ cmplwi r0, 0 +/* 80015098 00011FF8 98 01 00 84 */ stb r0, 0x84(r1) +/* 8001509C 00011FFC 41 82 00 24 */ beq lbl_800150C0 +/* 800150A0 00012000 34 61 00 78 */ addic. r3, r1, 0x78 +/* 800150A4 00012004 41 82 00 1C */ beq lbl_800150C0 +/* 800150A8 00012008 C0 01 00 38 */ lfs f0, 0x38(r1) +/* 800150AC 0001200C D0 03 00 00 */ stfs f0, 0(r3) +/* 800150B0 00012010 C0 01 00 3C */ lfs f0, 0x3c(r1) +/* 800150B4 00012014 D0 03 00 04 */ stfs f0, 4(r3) +/* 800150B8 00012018 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 800150BC 0001201C D0 03 00 08 */ stfs f0, 8(r3) +lbl_800150C0: +/* 800150C0 00012020 88 01 00 84 */ lbz r0, 0x84(r1) +/* 800150C4 00012024 38 60 00 00 */ li r3, 0 +/* 800150C8 00012028 98 61 00 44 */ stb r3, 0x44(r1) +/* 800150CC 0001202C 28 00 00 00 */ cmplwi r0, 0 +/* 800150D0 00012030 41 82 00 54 */ beq lbl_80015124 +/* 800150D4 00012034 80 7D 04 A0 */ lwz r3, 0x4a0(r29) +/* 800150D8 00012038 48 28 1D 4D */ bl Reset__Q27CPlayer12CInputFilterFv +/* 800150DC 0001203C C0 BD 00 60 */ lfs f5, 0x60(r29) +/* 800150E0 00012040 7F A3 EB 78 */ mr r3, r29 +/* 800150E4 00012044 C0 9D 00 50 */ lfs f4, 0x50(r29) +/* 800150E8 00012048 38 81 00 2C */ addi r4, r1, 0x2c +/* 800150EC 0001204C C0 7D 00 40 */ lfs f3, 0x40(r29) +/* 800150F0 00012050 C0 41 00 7C */ lfs f2, 0x7c(r1) +/* 800150F4 00012054 C0 21 00 80 */ lfs f1, 0x80(r1) +/* 800150F8 00012058 C0 01 00 78 */ lfs f0, 0x78(r1) +/* 800150FC 0001205C EC 44 10 2A */ fadds f2, f4, f2 +/* 80015100 00012060 EC 25 08 2A */ fadds f1, f5, f1 +/* 80015104 00012064 D0 61 00 20 */ stfs f3, 0x20(r1) +/* 80015108 00012068 EC 03 00 2A */ fadds f0, f3, f0 +/* 8001510C 0001206C D0 81 00 24 */ stfs f4, 0x24(r1) +/* 80015110 00012070 D0 A1 00 28 */ stfs f5, 0x28(r1) +/* 80015114 00012074 D0 01 00 2C */ stfs f0, 0x2c(r1) +/* 80015118 00012078 D0 41 00 30 */ stfs f2, 0x30(r1) +/* 8001511C 0001207C D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80015120 00012080 48 03 DD 6D */ bl SetTranslation__6CActorFRC9CVector3f +lbl_80015124: +/* 80015124 00012084 80 A1 02 00 */ lwz r5, 0x200(r1) +/* 80015128 00012088 38 60 00 00 */ li r3, 0 +/* 8001512C 0001208C 98 61 00 84 */ stb r3, 0x84(r1) +/* 80015130 00012090 2C 05 00 00 */ cmpwi r5, 0 +/* 80015134 00012094 40 81 00 40 */ ble lbl_80015174 +/* 80015138 00012098 2C 05 00 08 */ cmpwi r5, 8 +/* 8001513C 0001209C 38 85 FF F8 */ addi r4, r5, -8 +/* 80015140 000120A0 40 81 00 20 */ ble lbl_80015160 +/* 80015144 000120A4 38 04 00 07 */ addi r0, r4, 7 +/* 80015148 000120A8 54 00 E8 FE */ srwi r0, r0, 3 +/* 8001514C 000120AC 7C 09 03 A6 */ mtctr r0 +/* 80015150 000120B0 2C 04 00 00 */ cmpwi r4, 0 +/* 80015154 000120B4 40 81 00 0C */ ble lbl_80015160 +lbl_80015158: +/* 80015158 000120B8 38 63 00 08 */ addi r3, r3, 8 +/* 8001515C 000120BC 42 00 FF FC */ bdnz lbl_80015158 +lbl_80015160: +/* 80015160 000120C0 7C 03 28 50 */ subf r0, r3, r5 +/* 80015164 000120C4 7C 09 03 A6 */ mtctr r0 +/* 80015168 000120C8 7C 03 28 00 */ cmpw r3, r5 +/* 8001516C 000120CC 40 80 00 08 */ bge lbl_80015174 +lbl_80015170: +/* 80015170 000120D0 42 00 00 00 */ bdnz lbl_80015170 +lbl_80015174: +/* 80015174 000120D4 38 60 00 00 */ li r3, 0 +/* 80015178 000120D8 34 E1 0A 1C */ addic. r7, r1, 0xa1c +/* 8001517C 000120DC 90 61 02 00 */ stw r3, 0x200(r1) +/* 80015180 000120E0 41 82 00 90 */ beq lbl_80015210 +/* 80015184 000120E4 38 C7 00 04 */ addi r6, r7, 4 +/* 80015188 000120E8 48 00 00 74 */ b lbl_800151FC +lbl_8001518C: +/* 8001518C 000120EC 28 06 00 00 */ cmplwi r6, 0 +/* 80015190 000120F0 41 82 00 64 */ beq lbl_800151F4 +/* 80015194 000120F4 34 06 00 04 */ addic. r0, r6, 4 +/* 80015198 000120F8 41 82 00 5C */ beq lbl_800151F4 +/* 8001519C 000120FC 81 06 00 04 */ lwz r8, 4(r6) +/* 800151A0 00012100 38 80 00 00 */ li r4, 0 +/* 800151A4 00012104 2C 08 00 00 */ cmpwi r8, 0 +/* 800151A8 00012108 40 81 00 44 */ ble lbl_800151EC +/* 800151AC 0001210C 2C 08 00 08 */ cmpwi r8, 8 +/* 800151B0 00012110 38 A8 FF F8 */ addi r5, r8, -8 +/* 800151B4 00012114 40 81 00 20 */ ble lbl_800151D4 +/* 800151B8 00012118 38 05 00 07 */ addi r0, r5, 7 +/* 800151BC 0001211C 54 00 E8 FE */ srwi r0, r0, 3 +/* 800151C0 00012120 7C 09 03 A6 */ mtctr r0 +/* 800151C4 00012124 2C 05 00 00 */ cmpwi r5, 0 +/* 800151C8 00012128 40 81 00 0C */ ble lbl_800151D4 +lbl_800151CC: +/* 800151CC 0001212C 38 84 00 08 */ addi r4, r4, 8 +/* 800151D0 00012130 42 00 FF FC */ bdnz lbl_800151CC +lbl_800151D4: +/* 800151D4 00012134 7C 04 40 50 */ subf r0, r4, r8 +/* 800151D8 00012138 7C 09 03 A6 */ mtctr r0 +/* 800151DC 0001213C 7C 04 40 00 */ cmpw r4, r8 +/* 800151E0 00012140 40 80 00 0C */ bge lbl_800151EC +lbl_800151E4: +/* 800151E4 00012144 38 84 00 01 */ addi r4, r4, 1 +/* 800151E8 00012148 42 00 FF FC */ bdnz lbl_800151E4 +lbl_800151EC: +/* 800151EC 0001214C 38 00 00 00 */ li r0, 0 +/* 800151F0 00012150 90 06 00 04 */ stw r0, 4(r6) +lbl_800151F4: +/* 800151F4 00012154 38 C6 09 0C */ addi r6, r6, 0x90c +/* 800151F8 00012158 38 63 00 01 */ addi r3, r3, 1 +lbl_800151FC: +/* 800151FC 0001215C 80 07 00 00 */ lwz r0, 0(r7) +/* 80015200 00012160 7C 03 00 00 */ cmpw r3, r0 +/* 80015204 00012164 41 80 FF 88 */ blt lbl_8001518C +/* 80015208 00012168 38 00 00 00 */ li r0, 0 +/* 8001520C 0001216C 90 07 00 00 */ stw r0, 0(r7) +lbl_80015210: +/* 80015210 00012170 3C 80 80 3F */ lis r4, lbl_803ECAD0@ha +/* 80015214 00012174 3C 60 80 3E */ lis r3, lbl_803D97E4@ha +/* 80015218 00012178 38 04 CA D0 */ addi r0, r4, lbl_803ECAD0@l +/* 8001521C 0001217C 90 01 01 A8 */ stw r0, 0x1a8(r1) +/* 80015220 00012180 38 03 97 E4 */ addi r0, r3, lbl_803D97E4@l +/* 80015224 00012184 90 01 01 A8 */ stw r0, 0x1a8(r1) +lbl_80015228: +/* 80015228 00012188 7F A3 EB 78 */ mr r3, r29 +/* 8001522C 0001218C 7F C4 F3 78 */ mr r4, r30 +/* 80015230 00012190 7F E5 FB 78 */ mr r5, r31 +/* 80015234 00012194 48 16 54 35 */ bl UpdateGrappleState__7CPlayerFRC11CFinalInputR13CStateManager +/* 80015238 00012198 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 8001523C 0001219C 2C 00 00 01 */ cmpwi r0, 1 +/* 80015240 000121A0 40 82 01 04 */ bne lbl_80015344 +/* 80015244 000121A4 A0 7D 02 6C */ lhz r3, 0x26c(r29) +/* 80015248 000121A8 80 8D A1 1C */ lwz r4, gpTweakBall@sda21(r13) +/* 8001524C 000121AC A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80015250 000121B0 C3 A4 01 E4 */ lfs f29, 0x1e4(r4) +/* 80015254 000121B4 7C 03 00 40 */ cmplw r3, r0 +/* 80015258 000121B8 C3 C4 01 E8 */ lfs f30, 0x1e8(r4) +/* 8001525C 000121BC 40 82 00 18 */ bne lbl_80015274 +/* 80015260 000121C0 7F A3 EB 78 */ mr r3, r29 +/* 80015264 000121C4 7F E4 FB 78 */ mr r4, r31 +/* 80015268 000121C8 4B FF D7 7D */ bl IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager +/* 8001526C 000121CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80015270 000121D0 41 82 00 08 */ beq lbl_80015278 +lbl_80015274: +/* 80015274 000121D4 C3 A2 81 34 */ lfs f29, lbl_805A9E54@sda21(r2) +lbl_80015278: +/* 80015278 000121D8 FC 20 E8 90 */ fmr f1, f29 +/* 8001527C 000121DC 7F C4 F3 78 */ mr r4, r30 +/* 80015280 000121E0 FC 40 F0 90 */ fmr f2, f30 +/* 80015284 000121E4 38 61 01 18 */ addi r3, r1, 0x118 +/* 80015288 000121E8 48 33 3C 1D */ bl ScaleAnalogueSticks__11CFinalInputCFff +/* 8001528C 000121EC C1 21 01 18 */ lfs f9, 0x118(r1) +/* 80015290 000121F0 FC 20 F8 90 */ fmr f1, f31 +/* 80015294 000121F4 81 61 01 1C */ lwz r11, 0x11c(r1) +/* 80015298 000121F8 7F E5 FB 78 */ mr r5, r31 +/* 8001529C 000121FC C1 01 01 20 */ lfs f8, 0x120(r1) +/* 800152A0 00012200 38 81 01 78 */ addi r4, r1, 0x178 +/* 800152A4 00012204 C0 E1 01 24 */ lfs f7, 0x124(r1) +/* 800152A8 00012208 C0 C1 01 28 */ lfs f6, 0x128(r1) +/* 800152AC 0001220C C0 A1 01 2C */ lfs f5, 0x12c(r1) +/* 800152B0 00012210 C0 81 01 30 */ lfs f4, 0x130(r1) +/* 800152B4 00012214 C0 61 01 34 */ lfs f3, 0x134(r1) +/* 800152B8 00012218 89 41 01 38 */ lbz r10, 0x138(r1) +/* 800152BC 0001221C 89 21 01 39 */ lbz r9, 0x139(r1) +/* 800152C0 00012220 89 01 01 3A */ lbz r8, 0x13a(r1) +/* 800152C4 00012224 88 E1 01 3B */ lbz r7, 0x13b(r1) +/* 800152C8 00012228 C0 41 01 3C */ lfs f2, 0x13c(r1) +/* 800152CC 0001222C C0 01 01 40 */ lfs f0, 0x140(r1) +/* 800152D0 00012230 88 C1 01 44 */ lbz r6, 0x144(r1) +/* 800152D4 00012234 88 61 01 45 */ lbz r3, 0x145(r1) +/* 800152D8 00012238 88 01 01 46 */ lbz r0, 0x146(r1) +/* 800152DC 0001223C D1 21 01 78 */ stfs f9, 0x178(r1) +/* 800152E0 00012240 91 61 01 7C */ stw r11, 0x17c(r1) +/* 800152E4 00012244 D1 01 01 80 */ stfs f8, 0x180(r1) +/* 800152E8 00012248 D0 E1 01 84 */ stfs f7, 0x184(r1) +/* 800152EC 0001224C D0 C1 01 88 */ stfs f6, 0x188(r1) +/* 800152F0 00012250 D0 A1 01 8C */ stfs f5, 0x18c(r1) +/* 800152F4 00012254 D0 81 01 90 */ stfs f4, 0x190(r1) +/* 800152F8 00012258 D0 61 01 94 */ stfs f3, 0x194(r1) +/* 800152FC 0001225C 99 41 01 98 */ stb r10, 0x198(r1) +/* 80015300 00012260 99 21 01 99 */ stb r9, 0x199(r1) +/* 80015304 00012264 99 01 01 9A */ stb r8, 0x19a(r1) +/* 80015308 00012268 98 E1 01 9B */ stb r7, 0x19b(r1) +/* 8001530C 0001226C D0 41 01 9C */ stfs f2, 0x19c(r1) +/* 80015310 00012270 D0 01 01 A0 */ stfs f0, 0x1a0(r1) +/* 80015314 00012274 98 C1 01 A4 */ stb r6, 0x1a4(r1) +/* 80015318 00012278 98 61 01 A5 */ stb r3, 0x1a5(r1) +/* 8001531C 0001227C 98 01 01 A6 */ stb r0, 0x1a6(r1) +/* 80015320 00012280 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 80015324 00012284 48 0E 3A 05 */ bl ComputeBallMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf +/* 80015328 00012288 FC 20 F8 90 */ fmr f1, f31 +/* 8001532C 0001228C 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 80015330 00012290 7F E4 FB 78 */ mr r4, r31 +/* 80015334 00012294 48 0E 09 19 */ bl UpdateBallDynamics__10CMorphBallFR13CStateManagerf +/* 80015338 00012298 80 7D 04 A0 */ lwz r3, 0x4a0(r29) +/* 8001533C 0001229C 48 28 1A E9 */ bl Reset__Q27CPlayer12CInputFilterFv +/* 80015340 000122A0 48 00 01 70 */ b lbl_800154B0 +lbl_80015344: +/* 80015344 000122A4 80 1D 03 04 */ lwz r0, 0x304(r29) +/* 80015348 000122A8 2C 00 00 05 */ cmpwi r0, 5 +/* 8001534C 000122AC 40 82 00 1C */ bne lbl_80015368 +/* 80015350 000122B0 FC 20 F8 90 */ fmr f1, f31 +/* 80015354 000122B4 7F A3 EB 78 */ mr r3, r29 +/* 80015358 000122B8 7F C4 F3 78 */ mr r4, r30 +/* 8001535C 000122BC 7F E5 FB 78 */ mr r5, r31 +/* 80015360 000122C0 48 16 43 4D */ bl ApplyGrappleForces__7CPlayerFRC11CFinalInputR13CStateManagerf +/* 80015364 000122C4 48 00 00 D0 */ b lbl_80015434 +lbl_80015368: +/* 80015368 000122C8 7F A3 EB 78 */ mr r3, r29 +/* 8001536C 000122CC 7F E4 FB 78 */ mr r4, r31 +/* 80015370 000122D0 4B FF D6 75 */ bl IsUnderBetaMetroidAttack__7CPlayerCFR13CStateManager +/* 80015374 000122D4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80015378 000122D8 41 82 00 0C */ beq lbl_80015384 +/* 8001537C 000122DC C0 22 81 28 */ lfs f1, lbl_805A9E48@sda21(r2) +/* 80015380 000122E0 48 00 00 08 */ b lbl_80015388 +lbl_80015384: +/* 80015384 000122E4 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +lbl_80015388: +/* 80015388 000122E8 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) +/* 8001538C 000122EC 7F C4 F3 78 */ mr r4, r30 +/* 80015390 000122F0 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 80015394 000122F4 48 33 3B 11 */ bl ScaleAnalogueSticks__11CFinalInputCFff +/* 80015398 000122F8 C1 21 00 E8 */ lfs f9, 0xe8(r1) +/* 8001539C 000122FC FC 20 F8 90 */ fmr f1, f31 +/* 800153A0 00012300 81 81 00 EC */ lwz r12, 0xec(r1) +/* 800153A4 00012304 7F A3 EB 78 */ mr r3, r29 +/* 800153A8 00012308 C1 01 00 F0 */ lfs f8, 0xf0(r1) +/* 800153AC 0001230C 7F E5 FB 78 */ mr r5, r31 +/* 800153B0 00012310 C0 E1 00 F4 */ lfs f7, 0xf4(r1) +/* 800153B4 00012314 C0 C1 00 F8 */ lfs f6, 0xf8(r1) +/* 800153B8 00012318 38 81 01 48 */ addi r4, r1, 0x148 +/* 800153BC 0001231C C0 A1 00 FC */ lfs f5, 0xfc(r1) +/* 800153C0 00012320 C0 81 01 00 */ lfs f4, 0x100(r1) +/* 800153C4 00012324 C0 61 01 04 */ lfs f3, 0x104(r1) +/* 800153C8 00012328 89 61 01 08 */ lbz r11, 0x108(r1) +/* 800153CC 0001232C 89 41 01 09 */ lbz r10, 0x109(r1) +/* 800153D0 00012330 89 21 01 0A */ lbz r9, 0x10a(r1) +/* 800153D4 00012334 89 01 01 0B */ lbz r8, 0x10b(r1) +/* 800153D8 00012338 C0 41 01 0C */ lfs f2, 0x10c(r1) +/* 800153DC 0001233C C0 01 01 10 */ lfs f0, 0x110(r1) +/* 800153E0 00012340 88 E1 01 14 */ lbz r7, 0x114(r1) +/* 800153E4 00012344 88 C1 01 15 */ lbz r6, 0x115(r1) +/* 800153E8 00012348 88 01 01 16 */ lbz r0, 0x116(r1) +/* 800153EC 0001234C D1 21 01 48 */ stfs f9, 0x148(r1) +/* 800153F0 00012350 91 81 01 4C */ stw r12, 0x14c(r1) +/* 800153F4 00012354 D1 01 01 50 */ stfs f8, 0x150(r1) +/* 800153F8 00012358 D0 E1 01 54 */ stfs f7, 0x154(r1) +/* 800153FC 0001235C D0 C1 01 58 */ stfs f6, 0x158(r1) +/* 80015400 00012360 D0 A1 01 5C */ stfs f5, 0x15c(r1) +/* 80015404 00012364 D0 81 01 60 */ stfs f4, 0x160(r1) +/* 80015408 00012368 D0 61 01 64 */ stfs f3, 0x164(r1) +/* 8001540C 0001236C 99 61 01 68 */ stb r11, 0x168(r1) +/* 80015410 00012370 99 41 01 69 */ stb r10, 0x169(r1) +/* 80015414 00012374 99 21 01 6A */ stb r9, 0x16a(r1) +/* 80015418 00012378 99 01 01 6B */ stb r8, 0x16b(r1) +/* 8001541C 0001237C D0 41 01 6C */ stfs f2, 0x16c(r1) +/* 80015420 00012380 D0 01 01 70 */ stfs f0, 0x170(r1) +/* 80015424 00012384 98 E1 01 74 */ stb r7, 0x174(r1) +/* 80015428 00012388 98 C1 01 75 */ stb r6, 0x175(r1) +/* 8001542C 0001238C 98 01 01 76 */ stb r0, 0x176(r1) +/* 80015430 00012390 48 27 1B 45 */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf +lbl_80015434: +/* 80015434 00012394 7F A3 EB 78 */ mr r3, r29 +/* 80015438 00012398 7F E4 FB 78 */ mr r4, r31 +/* 8001543C 0001239C 48 00 32 A9 */ bl ShouldSampleFailsafe__7CPlayerCFv +/* 80015440 000123A0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80015444 000123A4 41 82 00 6C */ beq lbl_800154B0 +/* 80015448 000123A8 80 1D 02 58 */ lwz r0, 0x258(r29) +/* 8001544C 000123AC 3B 40 00 02 */ li r26, 2 +/* 80015450 000123B0 2C 00 00 02 */ cmpwi r0, 2 +/* 80015454 000123B4 40 82 00 0C */ bne lbl_80015460 +/* 80015458 000123B8 3B 40 00 01 */ li r26, 1 +/* 8001545C 000123BC 48 00 00 10 */ b lbl_8001546C +lbl_80015460: +/* 80015460 000123C0 2C 00 00 01 */ cmpwi r0, 1 +/* 80015464 000123C4 40 82 00 08 */ bne lbl_8001546C +/* 80015468 000123C8 3B 40 00 00 */ li r26, 0 +lbl_8001546C: +/* 8001546C 000123CC C0 9D 00 60 */ lfs f4, 0x60(r29) +/* 80015470 000123D0 38 61 00 0C */ addi r3, r1, 0xc +/* 80015474 000123D4 C0 7D 00 50 */ lfs f3, 0x50(r29) +/* 80015478 000123D8 C0 1D 00 40 */ lfs f0, 0x40(r29) +/* 8001547C 000123DC C0 5E 00 0C */ lfs f2, 0xc(r30) +/* 80015480 000123E0 D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80015484 000123E4 C0 3E 00 08 */ lfs f1, 8(r30) +/* 80015488 000123E8 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 8001548C 000123EC D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80015490 000123F0 83 3D 04 A0 */ lwz r25, 0x4a0(r29) +/* 80015494 000123F4 48 2F ED 6D */ bl __ct__9CVector2fFff +/* 80015498 000123F8 7C 67 1B 78 */ mr r7, r3 +/* 8001549C 000123FC 7F 23 CB 78 */ mr r3, r25 +/* 800154A0 00012400 7F 44 D3 78 */ mr r4, r26 +/* 800154A4 00012404 38 A1 00 14 */ addi r5, r1, 0x14 +/* 800154A8 00012408 38 DD 01 38 */ addi r6, r29, 0x138 +/* 800154AC 0001240C 48 28 20 0D */ bl AddSample__Q27CPlayer12CInputFilterFiRC9CVector3fRC9CVector3fRC9CVector2f +lbl_800154B0: +/* 800154B0 00012410 7F A3 EB 78 */ mr r3, r29 +/* 800154B4 00012414 7F C4 F3 78 */ mr r4, r30 +/* 800154B8 00012418 4B FF F1 61 */ bl ComputeFreeLook__7CPlayerFRC11CFinalInput +/* 800154BC 0001241C FC 20 F8 90 */ fmr f1, f31 +/* 800154C0 00012420 7F A3 EB 78 */ mr r3, r29 +/* 800154C4 00012424 7F C4 F3 78 */ mr r4, r30 +/* 800154C8 00012428 7F E5 FB 78 */ mr r5, r31 +/* 800154CC 0001242C 48 00 1A 19 */ bl UpdateFreeLookState__7CPlayerFRC11CFinalInputfR13CStateManager +/* 800154D0 00012430 7F A3 EB 78 */ mr r3, r29 +/* 800154D4 00012434 7F C4 F3 78 */ mr r4, r30 +/* 800154D8 00012438 7F E5 FB 78 */ mr r5, r31 +/* 800154DC 0001243C 48 16 8C F5 */ bl UpdateOrbitInput__7CPlayerFRC11CFinalInputR13CStateManager +/* 800154E0 00012440 7F A3 EB 78 */ mr r3, r29 +/* 800154E4 00012444 7F E4 FB 78 */ mr r4, r31 +/* 800154E8 00012448 48 16 8C A1 */ bl UpdateOrbitZone__7CPlayerFR13CStateManager +/* 800154EC 0001244C 7F A3 EB 78 */ mr r3, r29 +/* 800154F0 00012450 7F C4 F3 78 */ mr r4, r30 +/* 800154F4 00012454 7F E5 FB 78 */ mr r5, r31 +/* 800154F8 00012458 48 00 49 29 */ bl UpdateGunState__7CPlayerFRC11CFinalInputR13CStateManager +/* 800154FC 0001245C FC 20 F8 90 */ fmr f1, f31 +/* 80015500 00012460 7F A3 EB 78 */ mr r3, r29 +/* 80015504 00012464 7F C4 F3 78 */ mr r4, r30 +/* 80015508 00012468 7F E5 FB 78 */ mr r5, r31 +/* 8001550C 0001246C 48 00 30 25 */ bl UpdateVisorState__7CPlayerFRC11CFinalInputfR13CStateManager +/* 80015510 00012470 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80015514 00012474 2C 00 00 01 */ cmpwi r0, 1 +/* 80015518 00012478 41 82 00 18 */ beq lbl_80015530 +/* 8001551C 0001247C 2C 00 00 00 */ cmpwi r0, 0 +/* 80015520 00012480 40 82 01 2C */ bne lbl_8001564C +/* 80015524 00012484 80 1D 04 98 */ lwz r0, 0x498(r29) +/* 80015528 00012488 2C 00 00 02 */ cmpwi r0, 2 +/* 8001552C 0001248C 40 82 01 20 */ bne lbl_8001564C +lbl_80015530: +/* 80015530 00012490 80 7D 04 90 */ lwz r3, 0x490(r29) +/* 80015534 00012494 7F C4 F3 78 */ mr r4, r30 +/* 80015538 00012498 7F E5 FB 78 */ mr r5, r31 +/* 8001553C 0001249C 48 02 B2 6D */ bl ProcessInput__10CPlayerGunFRC11CFinalInputR13CStateManager +/* 80015540 000124A0 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80015544 000124A4 2C 00 00 01 */ cmpwi r0, 1 +/* 80015548 000124A8 40 82 01 04 */ bne lbl_8001564C +/* 8001554C 000124AC A0 7D 02 6C */ lhz r3, 0x26c(r29) +/* 80015550 000124B0 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80015554 000124B4 7C 03 00 40 */ cmplw r3, r0 +/* 80015558 000124B8 41 82 00 F4 */ beq lbl_8001564C +/* 8001555C 000124BC 7F C4 F3 78 */ mr r4, r30 +/* 80015560 000124C0 38 60 00 02 */ li r3, 2 +/* 80015564 000124C4 4B FF 72 6D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80015568 000124C8 7C 79 1B 78 */ mr r25, r3 +/* 8001556C 000124CC 7F C4 F3 78 */ mr r4, r30 +/* 80015570 000124D0 38 60 00 03 */ li r3, 3 +/* 80015574 000124D4 4B FF 72 5D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80015578 000124D8 7C 7A 1B 78 */ mr r26, r3 +/* 8001557C 000124DC 7F C4 F3 78 */ mr r4, r30 +/* 80015580 000124E0 38 60 00 00 */ li r3, 0 +/* 80015584 000124E4 4B FF 72 4D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80015588 000124E8 7C 7B 1B 78 */ mr r27, r3 +/* 8001558C 000124EC 7F C4 F3 78 */ mr r4, r30 +/* 80015590 000124F0 38 60 00 01 */ li r3, 1 +/* 80015594 000124F4 4B FF 72 3D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80015598 000124F8 7C 7C 1B 78 */ mr r28, r3 +/* 8001559C 000124FC 7F C4 F3 78 */ mr r4, r30 +/* 800155A0 00012500 38 60 00 0A */ li r3, 0xa +/* 800155A4 00012504 4B FF 72 2D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800155A8 00012508 57 20 06 3F */ clrlwi. r0, r25, 0x18 +/* 800155AC 0001250C 40 82 00 24 */ bne lbl_800155D0 +/* 800155B0 00012510 57 40 06 3F */ clrlwi. r0, r26, 0x18 +/* 800155B4 00012514 40 82 00 1C */ bne lbl_800155D0 +/* 800155B8 00012518 57 60 06 3F */ clrlwi. r0, r27, 0x18 +/* 800155BC 0001251C 40 82 00 14 */ bne lbl_800155D0 +/* 800155C0 00012520 57 80 06 3F */ clrlwi. r0, r28, 0x18 +/* 800155C4 00012524 40 82 00 0C */ bne lbl_800155D0 +/* 800155C8 00012528 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800155CC 0001252C 41 82 00 30 */ beq lbl_800155FC +lbl_800155D0: +/* 800155D0 00012530 C0 02 81 D4 */ lfs f0, lbl_805A9EF4@sda21(r2) +/* 800155D4 00012534 C0 3D 0A 28 */ lfs f1, 0xa28(r29) +/* 800155D8 00012538 EC 40 07 F2 */ fmuls f2, f0, f31 +/* 800155DC 0001253C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 800155E0 00012540 EC 3F 08 BA */ fmadds f1, f31, f2, f1 +/* 800155E4 00012544 D0 3D 0A 28 */ stfs f1, 0xa28(r29) +/* 800155E8 00012548 C0 3D 0A 28 */ lfs f1, 0xa28(r29) +/* 800155EC 0001254C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800155F0 00012550 40 81 00 5C */ ble lbl_8001564C +/* 800155F4 00012554 D0 1D 0A 28 */ stfs f0, 0xa28(r29) +/* 800155F8 00012558 48 00 00 54 */ b lbl_8001564C +lbl_800155FC: +/* 800155FC 0001255C C0 02 81 D8 */ lfs f0, lbl_805A9EF8@sda21(r2) +/* 80015600 00012560 C0 3D 0A 28 */ lfs f1, 0xa28(r29) +/* 80015604 00012564 EC 40 07 F2 */ fmuls f2, f0, f31 +/* 80015608 00012568 C0 0D 80 D4 */ lfs f0, lbl_805A6C94@sda21(r13) +/* 8001560C 0001256C EC 21 10 BA */ fmadds f1, f1, f2, f2 +/* 80015610 00012570 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80015614 00012574 D0 21 00 08 */ stfs f1, 8(r1) +/* 80015618 00012578 40 80 00 0C */ bge lbl_80015624 +/* 8001561C 0001257C 38 6D 80 D4 */ addi r3, r13, lbl_805A6C94@sda21 +/* 80015620 00012580 48 00 00 08 */ b lbl_80015628 +lbl_80015624: +/* 80015624 00012584 38 61 00 08 */ addi r3, r1, 8 +lbl_80015628: +/* 80015628 00012588 C0 43 00 00 */ lfs f2, 0(r3) +/* 8001562C 0001258C C0 3D 0A 28 */ lfs f1, 0xa28(r29) +/* 80015630 00012590 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80015634 00012594 EC 3F 08 BC */ fnmsubs f1, f31, f2, f1 +/* 80015638 00012598 D0 3D 0A 28 */ stfs f1, 0xa28(r29) +/* 8001563C 0001259C C0 3D 0A 28 */ lfs f1, 0xa28(r29) +/* 80015640 000125A0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80015644 000125A4 40 80 00 08 */ bge lbl_8001564C +/* 80015648 000125A8 D0 1D 0A 28 */ stfs f0, 0xa28(r29) +lbl_8001564C: +/* 8001564C 000125AC 7F A3 EB 78 */ mr r3, r29 +/* 80015650 000125B0 7F E4 FB 78 */ mr r4, r31 +/* 80015654 000125B4 48 00 1D A1 */ bl UpdateCameraState__7CPlayerFR13CStateManager +/* 80015658 000125B8 FC 20 F8 90 */ fmr f1, f31 +/* 8001565C 000125BC 7F A3 EB 78 */ mr r3, r29 +/* 80015660 000125C0 7F C4 F3 78 */ mr r4, r30 +/* 80015664 000125C4 7F E5 FB 78 */ mr r5, r31 +/* 80015668 000125C8 4B FF F5 19 */ bl UpdateMorphBallState__7CPlayerFfRC11CFinalInputR13CStateManager +/* 8001566C 000125CC FC 20 F8 90 */ fmr f1, f31 +/* 80015670 000125D0 7F A3 EB 78 */ mr r3, r29 +/* 80015674 000125D4 7F C4 F3 78 */ mr r4, r30 +/* 80015678 000125D8 48 00 17 25 */ bl UpdateCameraTimers__7CPlayerFfRC11CFinalInput +/* 8001567C 000125DC FC 20 F8 90 */ fmr f1, f31 +/* 80015680 000125E0 7F A3 EB 78 */ mr r3, r29 +/* 80015684 000125E4 7F C4 F3 78 */ mr r4, r30 +/* 80015688 000125E8 7F E5 FB 78 */ mr r5, r31 +/* 8001568C 000125EC 48 00 26 65 */ bl UpdateFootstepSounds__7CPlayerFRC11CFinalInputR13CStateManagerf +/* 80015690 000125F0 C0 1D 02 A8 */ lfs f0, 0x2a8(r29) +/* 80015694 000125F4 7F A3 EB 78 */ mr r3, r29 +/* 80015698 000125F8 EC 00 F8 2A */ fadds f0, f0, f31 +/* 8001569C 000125FC D0 1D 02 A8 */ stfs f0, 0x2a8(r29) +/* 800156A0 00012600 48 26 F9 6D */ bl CheckSubmerged__7CPlayerCFv +/* 800156A4 00012604 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800156A8 00012608 41 82 00 14 */ beq lbl_800156BC +/* 800156AC 0001260C 7F A3 EB 78 */ mr r3, r29 +/* 800156B0 00012610 38 80 00 00 */ li r4, 0 +/* 800156B4 00012614 48 03 DC 71 */ bl SetSoundEventPitchBend__6CActorFi +/* 800156B8 00012618 48 00 00 10 */ b lbl_800156C8 +lbl_800156BC: +/* 800156BC 0001261C 7F A3 EB 78 */ mr r3, r29 +/* 800156C0 00012620 38 80 20 00 */ li r4, 0x2000 +/* 800156C4 00012624 48 03 DC 61 */ bl SetSoundEventPitchBend__6CActorFi +lbl_800156C8: +/* 800156C8 00012628 7F A3 EB 78 */ mr r3, r29 +/* 800156CC 0001262C 7F C4 F3 78 */ mr r4, r30 +/* 800156D0 00012630 48 27 03 2D */ bl CalculateLeaveMorphBallDirection__7CPlayerFRC11CFinalInput +lbl_800156D4: +/* 800156D4 00012634 38 00 25 98 */ li r0, 0x2598 +/* 800156D8 00012638 13 E1 00 0C */ psq_lx f31, r1, r0, 0, qr0 +/* 800156DC 0001263C CB E1 25 90 */ lfd f31, 0x2590(r1) +/* 800156E0 00012640 38 00 25 88 */ li r0, 0x2588 +/* 800156E4 00012644 13 C1 00 0C */ psq_lx f30, r1, r0, 0, qr0 +/* 800156E8 00012648 CB C1 25 80 */ lfd f30, 0x2580(r1) +/* 800156EC 0001264C 38 00 25 78 */ li r0, 0x2578 +/* 800156F0 00012650 13 A1 00 0C */ psq_lx f29, r1, r0, 0, qr0 +/* 800156F4 00012654 CB A1 25 70 */ lfd f29, 0x2570(r1) +/* 800156F8 00012658 BB 21 25 54 */ lmw r25, 0x2554(r1) +/* 800156FC 0001265C 80 01 25 A4 */ lwz r0, 0x25a4(r1) +/* 80015700 00012660 7C 08 03 A6 */ mtlr r0 +/* 80015704 00012664 38 21 25 A0 */ addi r1, r1, 0x25a0 +/* 80015708 00012668 4E 80 00 20 */ blr + +.global GetMaterial__19CCollisionPrimitiveCFv +GetMaterial__19CCollisionPrimitiveCFv: +/* 8001570C 0001266C 38 63 00 08 */ addi r3, r3, 8 +/* 80015710 00012670 4E 80 00 20 */ blr + +.global StartLandingControlFreeze__7CPlayerFv +StartLandingControlFreeze__7CPlayerFv: +/* 80015714 00012674 38 00 00 01 */ li r0, 1 +/* 80015718 00012678 C0 02 81 4C */ lfs f0, lbl_805A9E6C@sda21(r2) +/* 8001571C 0001267C 98 03 07 60 */ stb r0, 0x760(r3) +/* 80015720 00012680 D0 03 07 64 */ stfs f0, 0x764(r3) +/* 80015724 00012684 4E 80 00 20 */ blr + +.global ProcessFrozenInput__7CPlayerFfR13CStateManager +ProcessFrozenInput__7CPlayerFfR13CStateManager: +/* 80015728 00012688 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 8001572C 0001268C 7C 08 02 A6 */ mflr r0 +/* 80015730 00012690 90 01 00 54 */ stw r0, 0x54(r1) +/* 80015734 00012694 DB E1 00 40 */ stfd f31, 0x40(r1) +/* 80015738 00012698 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 +/* 8001573C 0001269C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80015740 000126A0 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80015744 000126A4 7C 7E 1B 78 */ mr r30, r3 +/* 80015748 000126A8 FF E0 08 90 */ fmr f31, f1 +/* 8001574C 000126AC C0 23 07 64 */ lfs f1, 0x764(r3) +/* 80015750 000126B0 7C 9F 23 78 */ mr r31, r4 +/* 80015754 000126B4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80015758 000126B8 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 8001575C 000126BC D0 23 07 64 */ stfs f1, 0x764(r3) +/* 80015760 000126C0 C0 23 07 64 */ lfs f1, 0x764(r3) +/* 80015764 000126C4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80015768 000126C8 4C 40 13 82 */ cror 2, 0, 2 +/* 8001576C 000126CC 40 82 00 0C */ bne lbl_80015778 +/* 80015770 000126D0 48 00 00 79 */ bl EndLandingControlFreeze__7CPlayerFv +/* 80015774 000126D4 48 00 00 54 */ b lbl_800157C8 +lbl_80015778: +/* 80015778 000126D8 38 61 00 08 */ addi r3, r1, 8 +/* 8001577C 000126DC 48 33 46 A5 */ bl __ct__11CFinalInputFv +/* 80015780 000126E0 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80015784 000126E4 2C 00 00 01 */ cmpwi r0, 1 +/* 80015788 000126E8 40 82 00 2C */ bne lbl_800157B4 +/* 8001578C 000126EC FC 20 F8 90 */ fmr f1, f31 +/* 80015790 000126F0 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80015794 000126F4 7F E5 FB 78 */ mr r5, r31 +/* 80015798 000126F8 38 81 00 08 */ addi r4, r1, 8 +/* 8001579C 000126FC 48 0E 35 8D */ bl ComputeBallMovement__10CMorphBallFRC11CFinalInputR13CStateManagerf +/* 800157A0 00012700 FC 20 F8 90 */ fmr f1, f31 +/* 800157A4 00012704 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 800157A8 00012708 7F E4 FB 78 */ mr r4, r31 +/* 800157AC 0001270C 48 0E 04 A1 */ bl UpdateBallDynamics__10CMorphBallFR13CStateManagerf +/* 800157B0 00012710 48 00 00 18 */ b lbl_800157C8 +lbl_800157B4: +/* 800157B4 00012714 FC 20 F8 90 */ fmr f1, f31 +/* 800157B8 00012718 7F C3 F3 78 */ mr r3, r30 +/* 800157BC 0001271C 7F E5 FB 78 */ mr r5, r31 +/* 800157C0 00012720 38 81 00 08 */ addi r4, r1, 8 +/* 800157C4 00012724 48 27 17 B1 */ bl ComputeMovement__7CPlayerFRC11CFinalInputR13CStateManagerf +lbl_800157C8: +/* 800157C8 00012728 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 +/* 800157CC 0001272C 80 01 00 54 */ lwz r0, 0x54(r1) +/* 800157D0 00012730 CB E1 00 40 */ lfd f31, 0x40(r1) +/* 800157D4 00012734 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 800157D8 00012738 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 800157DC 0001273C 7C 08 03 A6 */ mtlr r0 +/* 800157E0 00012740 38 21 00 50 */ addi r1, r1, 0x50 +/* 800157E4 00012744 4E 80 00 20 */ blr + +.global EndLandingControlFreeze__7CPlayerFv +EndLandingControlFreeze__7CPlayerFv: +/* 800157E8 00012748 38 00 00 00 */ li r0, 0 +/* 800157EC 0001274C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800157F0 00012750 98 03 07 60 */ stb r0, 0x760(r3) +/* 800157F4 00012754 D0 03 07 64 */ stfs f0, 0x764(r3) +/* 800157F8 00012758 4E 80 00 20 */ blr + +.global UpdateFrozenState__7CPlayerFRC11CFinalInputR13CStateManager +UpdateFrozenState__7CPlayerFRC11CFinalInputR13CStateManager: +/* 800157FC 0001275C 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80015800 00012760 7C 08 02 A6 */ mflr r0 +/* 80015804 00012764 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80015808 00012768 90 01 00 44 */ stw r0, 0x44(r1) +/* 8001580C 0001276C 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80015810 00012770 7C BF 2B 78 */ mr r31, r5 +/* 80015814 00012774 93 C1 00 38 */ stw r30, 0x38(r1) +/* 80015818 00012778 7C 9E 23 78 */ mr r30, r4 +/* 8001581C 0001277C 93 A1 00 34 */ stw r29, 0x34(r1) +/* 80015820 00012780 7C 7D 1B 78 */ mr r29, r3 +/* 80015824 00012784 C0 43 07 50 */ lfs f2, 0x750(r3) +/* 80015828 00012788 C0 24 00 00 */ lfs f1, 0(r4) +/* 8001582C 0001278C EC 22 08 28 */ fsubs f1, f2, f1 +/* 80015830 00012790 D0 23 07 50 */ stfs f1, 0x750(r3) +/* 80015834 00012794 C0 23 07 50 */ lfs f1, 0x750(r3) +/* 80015838 00012798 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001583C 0001279C 40 81 00 20 */ ble lbl_8001585C +/* 80015840 000127A0 C0 22 81 DC */ lfs f1, lbl_805A9EFC@sda21(r2) +/* 80015844 000127A4 38 A0 00 00 */ li r5, 0 +/* 80015848 000127A8 C0 42 81 E0 */ lfs f2, lbl_805A9F00@sda21(r2) +/* 8001584C 000127AC C0 62 81 E4 */ lfs f3, lbl_805A9F04@sda21(r2) +/* 80015850 000127B0 80 9D 0A 08 */ lwz r4, 0xa08(r29) +/* 80015854 000127B4 48 00 22 61 */ bl SetVisorSteam__7CPlayerFfffUib +/* 80015858 000127B8 48 00 00 10 */ b lbl_80015868 +lbl_8001585C: +/* 8001585C 000127BC 7F E4 FB 78 */ mr r4, r31 +/* 80015860 000127C0 48 00 01 CD */ bl UnFreeze__7CPlayerFR13CStateManager +/* 80015864 000127C4 48 00 01 70 */ b lbl_800159D4 +lbl_80015868: +/* 80015868 000127C8 80 1D 02 58 */ lwz r0, 0x258(r29) +/* 8001586C 000127CC 2C 00 00 00 */ cmpwi r0, 0 +/* 80015870 000127D0 41 82 00 0C */ beq lbl_8001587C +/* 80015874 000127D4 2C 00 00 04 */ cmpwi r0, 4 +/* 80015878 000127D8 40 82 00 14 */ bne lbl_8001588C +lbl_8001587C: +/* 8001587C 000127DC 7F A3 EB 78 */ mr r3, r29 +/* 80015880 000127E0 48 10 5A F9 */ bl Stop__13CPhysicsActorFv +/* 80015884 000127E4 7F A3 EB 78 */ mr r3, r29 +/* 80015888 000127E8 48 10 5A 2D */ bl ClearForcesAndTorques__13CPhysicsActorFv +lbl_8001588C: +/* 8001588C 000127EC C0 3E 00 00 */ lfs f1, 0(r30) +/* 80015890 000127F0 38 7D 07 A0 */ addi r3, r29, 0x7a0 +/* 80015894 000127F4 48 00 22 79 */ bl Update__Q27CPlayer11CVisorSteamFf +/* 80015898 000127F8 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 8001589C 000127FC 2C 00 00 01 */ cmpwi r0, 1 +/* 800158A0 00012800 41 82 00 20 */ beq lbl_800158C0 +/* 800158A4 00012804 40 80 00 10 */ bge lbl_800158B4 +/* 800158A8 00012808 2C 00 00 00 */ cmpwi r0, 0 +/* 800158AC 0001280C 40 80 00 28 */ bge lbl_800158D4 +/* 800158B0 00012810 48 00 01 24 */ b lbl_800159D4 +lbl_800158B4: +/* 800158B4 00012814 2C 00 00 04 */ cmpwi r0, 4 +/* 800158B8 00012818 40 80 01 1C */ bge lbl_800159D4 +/* 800158BC 0001281C 48 00 00 18 */ b lbl_800158D4 +lbl_800158C0: +/* 800158C0 00012820 80 7D 04 90 */ lwz r3, 0x490(r29) +/* 800158C4 00012824 7F C4 F3 78 */ mr r4, r30 +/* 800158C8 00012828 7F E5 FB 78 */ mr r5, r31 +/* 800158CC 0001282C 48 02 AE DD */ bl ProcessInput__10CPlayerGunFRC11CFinalInputR13CStateManager +/* 800158D0 00012830 48 00 01 04 */ b lbl_800159D4 +lbl_800158D4: +/* 800158D4 00012834 7F C4 F3 78 */ mr r4, r30 +/* 800158D8 00012838 38 60 00 0A */ li r3, 0xa +/* 800158DC 0001283C 4B FF 6E F5 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800158E0 00012840 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800158E4 00012844 41 82 00 F0 */ beq lbl_800159D4 +/* 800158E8 00012848 80 1D 07 54 */ lwz r0, 0x754(r29) +/* 800158EC 0001284C 2C 00 00 00 */ cmpwi r0, 0 +/* 800158F0 00012850 41 82 00 40 */ beq lbl_80015930 +/* 800158F4 00012854 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 800158F8 00012858 38 61 00 10 */ addi r3, r1, 0x10 +/* 800158FC 0001285C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80015900 00012860 38 80 0C 37 */ li r4, 0xc37 +/* 80015904 00012864 38 A0 00 7F */ li r5, 0x7f +/* 80015908 00012868 38 C0 00 40 */ li r6, 0x40 +/* 8001590C 0001286C 38 E0 00 00 */ li r7, 0 +/* 80015910 00012870 39 20 00 00 */ li r9, 0 +/* 80015914 00012874 48 2D 44 61 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80015918 00012878 80 01 00 10 */ lwz r0, 0x10(r1) +/* 8001591C 0001287C 7F A3 EB 78 */ mr r3, r29 +/* 80015920 00012880 38 81 00 14 */ addi r4, r1, 0x14 +/* 80015924 00012884 90 01 00 14 */ stw r0, 0x14(r1) +/* 80015928 00012888 4B FF B8 65 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 8001592C 0001288C 48 00 00 3C */ b lbl_80015968 +lbl_80015930: +/* 80015930 00012890 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80015934 00012894 38 61 00 08 */ addi r3, r1, 8 +/* 80015938 00012898 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001593C 0001289C 38 80 0C 38 */ li r4, 0xc38 +/* 80015940 000128A0 38 A0 00 7F */ li r5, 0x7f +/* 80015944 000128A4 38 C0 00 40 */ li r6, 0x40 +/* 80015948 000128A8 38 E0 00 00 */ li r7, 0 +/* 8001594C 000128AC 39 20 00 00 */ li r9, 0 +/* 80015950 000128B0 48 2D 44 25 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80015954 000128B4 80 01 00 08 */ lwz r0, 8(r1) +/* 80015958 000128B8 7F A3 EB 78 */ mr r3, r29 +/* 8001595C 000128BC 38 81 00 0C */ addi r4, r1, 0xc +/* 80015960 000128C0 90 01 00 0C */ stw r0, 0xc(r1) +/* 80015964 000128C4 4B FF B8 29 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +lbl_80015968: +/* 80015968 000128C8 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 8001596C 000128CC 80 7D 07 54 */ lwz r3, 0x754(r29) +/* 80015970 000128D0 80 84 02 FC */ lwz r4, 0x2fc(r4) +/* 80015974 000128D4 38 03 00 01 */ addi r0, r3, 1 +/* 80015978 000128D8 7C 00 20 00 */ cmpw r0, r4 +/* 8001597C 000128DC 90 1D 07 54 */ stw r0, 0x754(r29) +/* 80015980 000128E0 40 81 00 54 */ ble lbl_800159D4 +/* 80015984 000128E4 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80015988 000128E8 38 63 00 A8 */ addi r3, r3, 0xa8 +/* 8001598C 000128EC 48 1B F9 35 */ bl IncrementFrozenFpsCount__14CSystemOptionsFv +/* 80015990 000128F0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80015994 000128F4 38 8D 81 14 */ addi r4, r13, lbl_805A6CD4@sda21 +/* 80015998 000128F8 48 00 00 59 */ bl wstring_l__4rstlFPCw +/* 8001599C 000128FC C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800159A0 00012900 38 00 00 01 */ li r0, 1 +/* 800159A4 00012904 98 01 00 1C */ stb r0, 0x1c(r1) +/* 800159A8 00012908 38 61 00 20 */ addi r3, r1, 0x20 +/* 800159AC 0001290C 38 81 00 18 */ addi r4, r1, 0x18 +/* 800159B0 00012910 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 800159B4 00012914 98 01 00 1D */ stb r0, 0x1d(r1) +/* 800159B8 00012918 98 01 00 1E */ stb r0, 0x1e(r1) +/* 800159BC 0001291C 48 05 62 AD */ bl DisplayHudMemo__9CSamusHudFRC7wstringRC12SHudMemoInfo +/* 800159C0 00012920 38 61 00 20 */ addi r3, r1, 0x20 +/* 800159C4 00012924 48 32 77 71 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 800159C8 00012928 7F A3 EB 78 */ mr r3, r29 +/* 800159CC 0001292C 7F E4 FB 78 */ mr r4, r31 +/* 800159D0 00012930 48 00 00 5D */ bl UnFreeze__7CPlayerFR13CStateManager +lbl_800159D4: +/* 800159D4 00012934 80 01 00 44 */ lwz r0, 0x44(r1) +/* 800159D8 00012938 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 800159DC 0001293C 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 800159E0 00012940 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 800159E4 00012944 7C 08 03 A6 */ mtlr r0 +/* 800159E8 00012948 38 21 00 40 */ addi r1, r1, 0x40 +/* 800159EC 0001294C 4E 80 00 20 */ blr + +.global wstring_l__4rstlFPCw +wstring_l__4rstlFPCw: +/* 800159F0 00012950 90 83 00 00 */ stw r4, 0(r3) +/* 800159F4 00012954 38 00 00 00 */ li r0, 0 +/* 800159F8 00012958 7C 85 23 78 */ mr r5, r4 +/* 800159FC 0001295C 90 03 00 04 */ stw r0, 4(r3) +/* 80015A00 00012960 48 00 00 08 */ b lbl_80015A08 +lbl_80015A04: +/* 80015A04 00012964 38 A5 00 02 */ addi r5, r5, 2 +lbl_80015A08: +/* 80015A08 00012968 A0 05 00 00 */ lhz r0, 0(r5) +/* 80015A0C 0001296C 28 00 00 00 */ cmplwi r0, 0 +/* 80015A10 00012970 40 82 FF F4 */ bne lbl_80015A04 +/* 80015A14 00012974 7C 84 28 50 */ subf r4, r4, r5 +/* 80015A18 00012978 54 80 0F FE */ srwi r0, r4, 0x1f +/* 80015A1C 0001297C 7C 00 22 14 */ add r0, r0, r4 +/* 80015A20 00012980 7C 00 0E 70 */ srawi r0, r0, 1 +/* 80015A24 00012984 90 03 00 08 */ stw r0, 8(r3) +/* 80015A28 00012988 4E 80 00 20 */ blr + +.global UnFreeze__7CPlayerFR13CStateManager +UnFreeze__7CPlayerFR13CStateManager: +/* 80015A2C 0001298C 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 80015A30 00012990 7C 08 02 A6 */ mflr r0 +/* 80015A34 00012994 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80015A38 00012998 BE C1 00 88 */ stmw r22, 0x88(r1) +/* 80015A3C 0001299C 7C 7D 1B 78 */ mr r29, r3 +/* 80015A40 000129A0 7C 9E 23 78 */ mr r30, r4 +/* 80015A44 000129A4 48 00 02 B9 */ bl GetFrozenState__7CPlayerCFv +/* 80015A48 000129A8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80015A4C 000129AC 41 82 02 9C */ beq lbl_80015CE8 +/* 80015A50 000129B0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80015A54 000129B4 38 00 00 00 */ li r0, 0 +/* 80015A58 000129B8 7F A3 EB 78 */ mr r3, r29 +/* 80015A5C 000129BC D0 1D 07 50 */ stfs f0, 0x750(r29) +/* 80015A60 000129C0 90 1D 07 54 */ stw r0, 0x754(r29) +/* 80015A64 000129C4 48 10 59 15 */ bl Stop__13CPhysicsActorFv +/* 80015A68 000129C8 7F A3 EB 78 */ mr r3, r29 +/* 80015A6C 000129CC 48 10 58 49 */ bl ClearForcesAndTorques__13CPhysicsActorFv +/* 80015A70 000129D0 7F A3 EB 78 */ mr r3, r29 +/* 80015A74 000129D4 7F C5 F3 78 */ mr r5, r30 +/* 80015A78 000129D8 38 80 00 2B */ li r4, 0x2b +/* 80015A7C 000129DC 48 03 E5 05 */ bl RemoveMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80015A80 000129E0 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 80015A84 000129E4 4B FF 4E 7D */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 80015A88 000129E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80015A8C 000129EC 40 82 02 38 */ bne lbl_80015CC4 +/* 80015A90 000129F0 80 7D 0A 0C */ lwz r3, 0xa0c(r29) +/* 80015A94 000129F4 3C 03 00 01 */ addis r0, r3, 1 +/* 80015A98 000129F8 28 00 FF FF */ cmplwi r0, 0xffff +/* 80015A9C 000129FC 41 82 02 28 */ beq lbl_80015CC4 +/* 80015AA0 00012A00 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha +/* 80015AA4 00012A04 3B 80 00 00 */ li r28, 0 +/* 80015AA8 00012A08 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l +/* 80015AAC 00012A0C 3B 60 00 00 */ li r27, 0 +/* 80015AB0 00012A10 38 83 00 1D */ addi r4, r3, 0x1d +/* 80015AB4 00012A14 3B 40 00 00 */ li r26, 0 +/* 80015AB8 00012A18 3B 20 00 00 */ li r25, 0 +/* 80015ABC 00012A1C 3A C0 00 00 */ li r22, 0 +/* 80015AC0 00012A20 38 60 01 10 */ li r3, 0x110 +/* 80015AC4 00012A24 38 A0 00 00 */ li r5, 0 +/* 80015AC8 00012A28 48 2F FD A5 */ bl __nw__FUlPCcPCc +/* 80015ACC 00012A2C 7C 7F 1B 79 */ or. r31, r3, r3 +/* 80015AD0 00012A30 41 82 01 20 */ beq lbl_80015BF0 +/* 80015AD4 00012A34 80 DD 0A 0C */ lwz r6, 0xa0c(r29) +/* 80015AD8 00012A38 3C 60 50 41 */ lis r3, 0x50415254@ha +/* 80015ADC 00012A3C 38 03 52 54 */ addi r0, r3, 0x50415254@l +/* 80015AE0 00012A40 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80015AE4 00012A44 90 01 00 34 */ stw r0, 0x34(r1) +/* 80015AE8 00012A48 38 61 00 2C */ addi r3, r1, 0x2c +/* 80015AEC 00012A4C 38 A1 00 34 */ addi r5, r1, 0x34 +/* 80015AF0 00012A50 90 C1 00 38 */ stw r6, 0x38(r1) +/* 80015AF4 00012A54 81 84 00 00 */ lwz r12, 0(r4) +/* 80015AF8 00012A58 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80015AFC 00012A5C 7D 89 03 A6 */ mtctr r12 +/* 80015B00 00012A60 4E 80 04 21 */ bctrl +/* 80015B04 00012A64 38 61 00 24 */ addi r3, r1, 0x24 +/* 80015B08 00012A68 38 81 00 2C */ addi r4, r1, 0x2c +/* 80015B0C 00012A6C 3B 40 00 01 */ li r26, 1 +/* 80015B10 00012A70 48 32 B3 99 */ bl __ct__6CTokenFRC6CToken +/* 80015B14 00012A74 38 00 00 01 */ li r0, 1 +/* 80015B18 00012A78 34 61 00 3C */ addic. r3, r1, 0x3c +/* 80015B1C 00012A7C 98 01 00 44 */ stb r0, 0x44(r1) +/* 80015B20 00012A80 3B 20 00 01 */ li r25, 1 +/* 80015B24 00012A84 41 82 00 0C */ beq lbl_80015B30 +/* 80015B28 00012A88 38 81 00 24 */ addi r4, r1, 0x24 +/* 80015B2C 00012A8C 48 32 B3 7D */ bl __ct__6CTokenFRC6CToken +lbl_80015B30: +/* 80015B30 00012A90 38 00 00 00 */ li r0, 0 +/* 80015B34 00012A94 7F C4 F3 78 */ mr r4, r30 +/* 80015B38 00012A98 98 01 00 50 */ stb r0, 0x50(r1) +/* 80015B3C 00012A9C 38 61 00 10 */ addi r3, r1, 0x10 +/* 80015B40 00012AA0 3A C0 00 01 */ li r22, 1 +/* 80015B44 00012AA4 3B 60 00 01 */ li r27, 1 +/* 80015B48 00012AA8 48 03 75 95 */ bl AllocateUniqueId__13CStateManagerFv +/* 80015B4C 00012AAC A0 01 00 10 */ lhz r0, 0x10(r1) +/* 80015B50 00012AB0 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha +/* 80015B54 00012AB4 38 83 C4 F8 */ addi r4, r3, lbl_803CC4F8@l +/* 80015B58 00012AB8 38 61 00 54 */ addi r3, r1, 0x54 +/* 80015B5C 00012ABC B0 01 00 14 */ sth r0, 0x14(r1) +/* 80015B60 00012AC0 38 84 00 24 */ addi r4, r4, 0x24 +/* 80015B64 00012AC4 4B FE F1 55 */ bl string_l__4rstlFPCc +/* 80015B68 00012AC8 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80015B6C 00012ACC 38 61 00 20 */ addi r3, r1, 0x20 +/* 80015B70 00012AD0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80015B74 00012AD4 3B 80 00 01 */ li r28, 1 +/* 80015B78 00012AD8 FC 40 08 90 */ fmr f2, f1 +/* 80015B7C 00012ADC D0 21 00 64 */ stfs f1, 0x64(r1) +/* 80015B80 00012AE0 FC 60 08 90 */ fmr f3, f1 +/* 80015B84 00012AE4 FC 80 08 90 */ fmr f4, f1 +/* 80015B88 00012AE8 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80015B8C 00012AEC D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 80015B90 00012AF0 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80015B94 00012AF4 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80015B98 00012AF8 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 80015B9C 00012AFC 48 34 D8 51 */ bl __ct__6CColorFffff +/* 80015BA0 00012B00 7C 77 1B 78 */ mr r23, r3 +/* 80015BA4 00012B04 7F C3 F3 78 */ mr r3, r30 +/* 80015BA8 00012B08 48 11 A6 85 */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager +/* 80015BAC 00012B0C 7C 78 1B 78 */ mr r24, r3 +/* 80015BB0 00012B10 7F C3 F3 78 */ mr r3, r30 +/* 80015BB4 00012B14 48 11 A6 45 */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager +/* 80015BB8 00012B18 38 61 00 64 */ addi r3, r1, 0x64 +/* 80015BBC 00012B1C 38 01 00 70 */ addi r0, r1, 0x70 +/* 80015BC0 00012B20 90 61 00 08 */ stw r3, 8(r1) +/* 80015BC4 00012B24 7F E3 FB 78 */ mr r3, r31 +/* 80015BC8 00012B28 7F 09 C3 78 */ mr r9, r24 +/* 80015BCC 00012B2C 7E EA BB 78 */ mr r10, r23 +/* 80015BD0 00012B30 90 01 00 0C */ stw r0, 0xc(r1) +/* 80015BD4 00012B34 38 81 00 3C */ addi r4, r1, 0x3c +/* 80015BD8 00012B38 38 A1 00 48 */ addi r5, r1, 0x48 +/* 80015BDC 00012B3C 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80015BE0 00012B40 39 01 00 54 */ addi r8, r1, 0x54 +/* 80015BE4 00012B44 38 E0 00 01 */ li r7, 1 +/* 80015BE8 00012B48 48 11 A3 11 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" +/* 80015BEC 00012B4C 7C 7F 1B 78 */ mr r31, r3 +lbl_80015BF0: +/* 80015BF0 00012B50 7F C3 F3 78 */ mr r3, r30 +/* 80015BF4 00012B54 7F E4 FB 78 */ mr r4, r31 +/* 80015BF8 00012B58 48 03 70 FD */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 80015BFC 00012B5C 7E C0 07 75 */ extsb. r0, r22 +/* 80015C00 00012B60 41 82 00 28 */ beq lbl_80015C28 +/* 80015C04 00012B64 88 01 00 44 */ lbz r0, 0x44(r1) +/* 80015C08 00012B68 28 00 00 00 */ cmplwi r0, 0 +/* 80015C0C 00012B6C 41 82 00 14 */ beq lbl_80015C20 +/* 80015C10 00012B70 34 61 00 3C */ addic. r3, r1, 0x3c +/* 80015C14 00012B74 41 82 00 0C */ beq lbl_80015C20 +/* 80015C18 00012B78 38 80 00 00 */ li r4, 0 +/* 80015C1C 00012B7C 48 32 B2 25 */ bl __dt__6CTokenFv +lbl_80015C20: +/* 80015C20 00012B80 38 00 00 00 */ li r0, 0 +/* 80015C24 00012B84 98 01 00 44 */ stb r0, 0x44(r1) +lbl_80015C28: +/* 80015C28 00012B88 7F 20 07 75 */ extsb. r0, r25 +/* 80015C2C 00012B8C 41 82 00 10 */ beq lbl_80015C3C +/* 80015C30 00012B90 38 61 00 24 */ addi r3, r1, 0x24 +/* 80015C34 00012B94 38 80 00 00 */ li r4, 0 +/* 80015C38 00012B98 48 32 B2 09 */ bl __dt__6CTokenFv +lbl_80015C3C: +/* 80015C3C 00012B9C 7F 40 07 75 */ extsb. r0, r26 +/* 80015C40 00012BA0 41 82 00 10 */ beq lbl_80015C50 +/* 80015C44 00012BA4 38 61 00 2C */ addi r3, r1, 0x2c +/* 80015C48 00012BA8 38 80 FF FF */ li r4, -1 +/* 80015C4C 00012BAC 48 32 B1 F5 */ bl __dt__6CTokenFv +lbl_80015C50: +/* 80015C50 00012BB0 7F 60 07 75 */ extsb. r0, r27 +/* 80015C54 00012BB4 41 82 00 28 */ beq lbl_80015C7C +/* 80015C58 00012BB8 88 01 00 50 */ lbz r0, 0x50(r1) +/* 80015C5C 00012BBC 28 00 00 00 */ cmplwi r0, 0 +/* 80015C60 00012BC0 41 82 00 14 */ beq lbl_80015C74 +/* 80015C64 00012BC4 34 61 00 48 */ addic. r3, r1, 0x48 +/* 80015C68 00012BC8 41 82 00 0C */ beq lbl_80015C74 +/* 80015C6C 00012BCC 38 80 00 00 */ li r4, 0 +/* 80015C70 00012BD0 48 32 B1 D1 */ bl __dt__6CTokenFv +lbl_80015C74: +/* 80015C74 00012BD4 38 00 00 00 */ li r0, 0 +/* 80015C78 00012BD8 98 01 00 50 */ stb r0, 0x50(r1) +lbl_80015C7C: +/* 80015C7C 00012BDC 7F 80 07 75 */ extsb. r0, r28 +/* 80015C80 00012BE0 41 82 00 0C */ beq lbl_80015C8C +/* 80015C84 00012BE4 38 61 00 54 */ addi r3, r1, 0x54 +/* 80015C88 00012BE8 48 32 7E 59 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80015C8C: +/* 80015C8C 00012BEC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80015C90 00012BF0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80015C94 00012BF4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80015C98 00012BF8 38 80 0C 39 */ li r4, 0xc39 +/* 80015C9C 00012BFC 38 A0 00 7F */ li r5, 0x7f +/* 80015CA0 00012C00 38 C0 00 40 */ li r6, 0x40 +/* 80015CA4 00012C04 38 E0 00 00 */ li r7, 0 +/* 80015CA8 00012C08 39 20 00 00 */ li r9, 0 +/* 80015CAC 00012C0C 48 2D 40 C9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80015CB0 00012C10 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80015CB4 00012C14 7F A3 EB 78 */ mr r3, r29 +/* 80015CB8 00012C18 38 81 00 1C */ addi r4, r1, 0x1c +/* 80015CBC 00012C1C 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80015CC0 00012C20 4B FF B4 CD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +lbl_80015CC4: +/* 80015CC4 00012C24 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 80015CC8 00012C28 48 0D C2 8D */ bl Stop__10CMorphBallFv +/* 80015CCC 00012C2C C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80015CD0 00012C30 7F A3 EB 78 */ mr r3, r29 +/* 80015CD4 00012C34 C0 42 81 E0 */ lfs f2, lbl_805A9F00@sda21(r2) +/* 80015CD8 00012C38 38 A0 00 00 */ li r5, 0 +/* 80015CDC 00012C3C C0 62 81 E4 */ lfs f3, lbl_805A9F04@sda21(r2) +/* 80015CE0 00012C40 80 9D 0A 08 */ lwz r4, 0xa08(r29) +/* 80015CE4 00012C44 48 00 1D D1 */ bl SetVisorSteam__7CPlayerFfffUib +lbl_80015CE8: +/* 80015CE8 00012C48 BA C1 00 88 */ lmw r22, 0x88(r1) +/* 80015CEC 00012C4C 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 80015CF0 00012C50 7C 08 03 A6 */ mtlr r0 +/* 80015CF4 00012C54 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 80015CF8 00012C58 4E 80 00 20 */ blr + +.global GetFrozenState__7CPlayerCFv +GetFrozenState__7CPlayerCFv: +/* 80015CFC 00012C5C C0 23 07 50 */ lfs f1, 0x750(r3) +/* 80015D00 00012C60 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80015D04 00012C64 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80015D08 00012C68 7C 00 00 26 */ mfcr r0 +/* 80015D0C 00012C6C 54 03 17 FE */ rlwinm r3, r0, 2, 0x1f, 0x1f +/* 80015D10 00012C70 4E 80 00 20 */ blr + +.global Freeze__7CPlayerFR13CStateManagerUiUsUi +Freeze__7CPlayerFR13CStateManagerUiUsUi: +/* 80015D14 00012C74 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80015D18 00012C78 7C 08 02 A6 */ mflr r0 +/* 80015D1C 00012C7C 90 01 00 44 */ stw r0, 0x44(r1) +/* 80015D20 00012C80 BF 61 00 2C */ stmw r27, 0x2c(r1) +/* 80015D24 00012C84 7C 7B 1B 78 */ mr r27, r3 +/* 80015D28 00012C88 7C 9C 23 78 */ mr r28, r4 +/* 80015D2C 00012C8C 7C BD 2B 78 */ mr r29, r5 +/* 80015D30 00012C90 7C DE 33 78 */ mr r30, r6 +/* 80015D34 00012C94 7C FF 3B 78 */ mr r31, r7 +/* 80015D38 00012C98 80 64 08 70 */ lwz r3, 0x870(r4) +/* 80015D3C 00012C9C 4B FF 4B C5 */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 80015D40 00012CA0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80015D44 00012CA4 40 82 01 58 */ bne lbl_80015E9C +/* 80015D48 00012CA8 7F 63 DB 78 */ mr r3, r27 +/* 80015D4C 00012CAC 4B FF FF B1 */ bl GetFrozenState__7CPlayerCFv +/* 80015D50 00012CB0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80015D54 00012CB4 40 82 01 48 */ bne lbl_80015E9C +/* 80015D58 00012CB8 80 1B 02 F8 */ lwz r0, 0x2f8(r27) +/* 80015D5C 00012CBC 80 6D A0 80 */ lwz r3, gpGameState@sda21(r13) +/* 80015D60 00012CC0 2C 00 00 00 */ cmpwi r0, 0 +/* 80015D64 00012CC4 38 63 00 A8 */ addi r3, r3, 0xa8 +/* 80015D68 00012CC8 40 82 00 0C */ bne lbl_80015D74 +/* 80015D6C 00012CCC 48 1B F5 89 */ bl GetShowFrozenFpsMessage__14CSystemOptionsCFv +/* 80015D70 00012CD0 48 00 00 08 */ b lbl_80015D78 +lbl_80015D74: +/* 80015D74 00012CD4 48 1B F5 31 */ bl GetShowFrozenBallMessage__14CSystemOptionsCFv +lbl_80015D78: +/* 80015D78 00012CD8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80015D7C 00012CDC 41 82 00 60 */ beq lbl_80015DDC +/* 80015D80 00012CE0 80 BB 02 F8 */ lwz r5, 0x2f8(r27) +/* 80015D84 00012CE4 80 6D A0 74 */ lwz r3, gpStringTable@sda21(r13) +/* 80015D88 00012CE8 38 85 FF FF */ addi r4, r5, -1 +/* 80015D8C 00012CEC 20 05 00 01 */ subfic r0, r5, 1 +/* 80015D90 00012CF0 7C 80 03 78 */ or r0, r4, r0 +/* 80015D94 00012CF4 7C 04 FE 70 */ srawi r4, r0, 0x1f +/* 80015D98 00012CF8 38 84 00 14 */ addi r4, r4, 0x14 +/* 80015D9C 00012CFC 48 34 09 61 */ bl GetString__12CStringTableCFi +/* 80015DA0 00012D00 7C 64 1B 78 */ mr r4, r3 +/* 80015DA4 00012D04 38 61 00 18 */ addi r3, r1, 0x18 +/* 80015DA8 00012D08 4B FF FC 49 */ bl wstring_l__4rstlFPCw +/* 80015DAC 00012D0C C0 02 81 E8 */ lfs f0, lbl_805A9F08@sda21(r2) +/* 80015DB0 00012D10 38 00 00 00 */ li r0, 0 +/* 80015DB4 00012D14 38 A0 00 01 */ li r5, 1 +/* 80015DB8 00012D18 98 01 00 15 */ stb r0, 0x15(r1) +/* 80015DBC 00012D1C 38 61 00 18 */ addi r3, r1, 0x18 +/* 80015DC0 00012D20 38 81 00 10 */ addi r4, r1, 0x10 +/* 80015DC4 00012D24 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80015DC8 00012D28 98 A1 00 14 */ stb r5, 0x14(r1) +/* 80015DCC 00012D2C 98 01 00 16 */ stb r0, 0x16(r1) +/* 80015DD0 00012D30 48 05 5E 99 */ bl DisplayHudMemo__9CSamusHudFRC7wstringRC12SHudMemoInfo +/* 80015DD4 00012D34 38 61 00 18 */ addi r3, r1, 0x18 +/* 80015DD8 00012D38 48 32 73 5D */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80015DDC: +/* 80015DDC 00012D3C 80 8D A1 18 */ lwz r4, gpTweakPlayer@sda21(r13) +/* 80015DE0 00012D40 7F 63 DB 78 */ mr r3, r27 +/* 80015DE4 00012D44 C0 3B 07 58 */ lfs f1, 0x758(r27) +/* 80015DE8 00012D48 C0 04 02 F8 */ lfs f0, 0x2f8(r4) +/* 80015DEC 00012D4C EC 01 00 2A */ fadds f0, f1, f0 +/* 80015DF0 00012D50 D0 1B 07 50 */ stfs f0, 0x750(r27) +/* 80015DF4 00012D54 80 1B 07 5C */ lwz r0, 0x75c(r27) +/* 80015DF8 00012D58 7C 00 00 D0 */ neg r0, r0 +/* 80015DFC 00012D5C 90 1B 07 54 */ stw r0, 0x754(r27) +/* 80015E00 00012D60 48 10 55 79 */ bl Stop__13CPhysicsActorFv +/* 80015E04 00012D64 7F 63 DB 78 */ mr r3, r27 +/* 80015E08 00012D68 48 10 54 AD */ bl ClearForcesAndTorques__13CPhysicsActorFv +/* 80015E0C 00012D6C 80 1B 03 B8 */ lwz r0, 0x3b8(r27) +/* 80015E10 00012D70 2C 00 00 00 */ cmpwi r0, 0 +/* 80015E14 00012D74 41 82 00 18 */ beq lbl_80015E2C +/* 80015E18 00012D78 7F 63 DB 78 */ mr r3, r27 +/* 80015E1C 00012D7C 7F 85 E3 78 */ mr r5, r28 +/* 80015E20 00012D80 38 80 00 0A */ li r4, 0xa +/* 80015E24 00012D84 48 16 52 A1 */ bl BreakGrapple__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 80015E28 00012D88 48 00 00 14 */ b lbl_80015E3C +lbl_80015E2C: +/* 80015E2C 00012D8C 7F 63 DB 78 */ mr r3, r27 +/* 80015E30 00012D90 7F 85 E3 78 */ mr r5, r28 +/* 80015E34 00012D94 38 80 00 0A */ li r4, 0xa +/* 80015E38 00012D98 48 16 53 65 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +lbl_80015E3C: +/* 80015E3C 00012D9C 7F 63 DB 78 */ mr r3, r27 +/* 80015E40 00012DA0 7F 85 E3 78 */ mr r5, r28 +/* 80015E44 00012DA4 38 80 00 2B */ li r4, 0x2b +/* 80015E48 00012DA8 48 03 E5 09 */ bl AddMaterial__6CActorF14EMaterialTypesR13CStateManager +/* 80015E4C 00012DAC 7F 63 DB 78 */ mr r3, r27 +/* 80015E50 00012DB0 48 00 43 C5 */ bl IsMorphBallTransitioning__7CPlayerCFv +/* 80015E54 00012DB4 93 BB 0A 08 */ stw r29, 0xa08(r27) +/* 80015E58 00012DB8 7F C4 F3 78 */ mr r4, r30 +/* 80015E5C 00012DBC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80015E60 00012DC0 38 61 00 08 */ addi r3, r1, 8 +/* 80015E64 00012DC4 93 FB 0A 0C */ stw r31, 0xa0c(r27) +/* 80015E68 00012DC8 38 A0 00 7F */ li r5, 0x7f +/* 80015E6C 00012DCC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80015E70 00012DD0 38 C0 00 40 */ li r6, 0x40 +/* 80015E74 00012DD4 38 E0 00 00 */ li r7, 0 +/* 80015E78 00012DD8 39 20 00 00 */ li r9, 0 +/* 80015E7C 00012DDC 48 2D 3E F9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80015E80 00012DE0 80 01 00 08 */ lwz r0, 8(r1) +/* 80015E84 00012DE4 7F 63 DB 78 */ mr r3, r27 +/* 80015E88 00012DE8 38 81 00 0C */ addi r4, r1, 0xc +/* 80015E8C 00012DEC 90 01 00 0C */ stw r0, 0xc(r1) +/* 80015E90 00012DF0 4B FF B2 FD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 80015E94 00012DF4 7F 63 DB 78 */ mr r3, r27 +/* 80015E98 00012DF8 4B FF F9 51 */ bl EndLandingControlFreeze__7CPlayerFv +lbl_80015E9C: +/* 80015E9C 00012DFC BB 61 00 2C */ lmw r27, 0x2c(r1) +/* 80015EA0 00012E00 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80015EA4 00012E04 7C 08 03 A6 */ mtlr r0 +/* 80015EA8 00012E08 38 21 00 40 */ addi r1, r1, 0x40 +/* 80015EAC 00012E0C 4E 80 00 20 */ blr + +.global Think__7CPlayerFfR13CStateManager +Think__7CPlayerFfR13CStateManager: +/* 80015EB0 00012E10 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 80015EB4 00012E14 7C 08 02 A6 */ mflr r0 +/* 80015EB8 00012E18 90 01 01 24 */ stw r0, 0x124(r1) +/* 80015EBC 00012E1C DB E1 01 10 */ stfd f31, 0x110(r1) +/* 80015EC0 00012E20 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 80015EC4 00012E24 BE E1 00 EC */ stmw r23, 0xec(r1) +/* 80015EC8 00012E28 FF E0 08 90 */ fmr f31, f1 +/* 80015ECC 00012E2C 7C 7D 1B 78 */ mr r29, r3 +/* 80015ED0 00012E30 7C 9E 23 78 */ mr r30, r4 +/* 80015ED4 00012E34 48 27 21 F1 */ bl UpdateStepCameraZBias__7CPlayerFf +/* 80015ED8 00012E38 7F A3 EB 78 */ mr r3, r29 +/* 80015EDC 00012E3C 7F C4 F3 78 */ mr r4, r30 +/* 80015EE0 00012E40 48 00 05 6D */ bl UpdateWaterSurfaceCameraBias__7CPlayerFR13CStateManager +/* 80015EE4 00012E44 FC 20 F8 90 */ fmr f1, f31 +/* 80015EE8 00012E48 7F A3 EB 78 */ mr r3, r29 +/* 80015EEC 00012E4C 7F C4 F3 78 */ mr r4, r30 +/* 80015EF0 00012E50 4B FF B9 01 */ bl UpdatePhazonCameraShake__7CPlayerFfR13CStateManager +/* 80015EF4 00012E54 FC 20 F8 90 */ fmr f1, f31 +/* 80015EF8 00012E58 7F A3 EB 78 */ mr r3, r29 +/* 80015EFC 00012E5C 7F C4 F3 78 */ mr r4, r30 +/* 80015F00 00012E60 4B FF B2 D5 */ bl UpdatePhazonDamage__7CPlayerFfR13CStateManager +/* 80015F04 00012E64 FC 20 F8 90 */ fmr f1, f31 +/* 80015F08 00012E68 7F A3 EB 78 */ mr r3, r29 +/* 80015F0C 00012E6C 4B FF E9 15 */ bl UpdateFreeLook__7CPlayerFf +/* 80015F10 00012E70 7F A3 EB 78 */ mr r3, r29 +/* 80015F14 00012E74 7F C4 F3 78 */ mr r4, r30 +/* 80015F18 00012E78 48 26 E6 B5 */ bl UpdatePlayerHints__7CPlayerFRC13CStateManager +/* 80015F1C 00012E7C 80 7D 02 B0 */ lwz r3, 0x2b0(r29) +/* 80015F20 00012E80 2C 03 00 02 */ cmpwi r3, 2 +/* 80015F24 00012E84 40 80 00 0C */ bge lbl_80015F30 +/* 80015F28 00012E88 38 03 00 01 */ addi r0, r3, 1 +/* 80015F2C 00012E8C 90 1D 02 B0 */ stw r0, 0x2b0(r29) +lbl_80015F30: +/* 80015F30 00012E90 88 BD 09 C4 */ lbz r5, 0x9c4(r29) +/* 80015F34 00012E94 38 80 00 00 */ li r4, 0 +/* 80015F38 00012E98 88 1D 09 C5 */ lbz r0, 0x9c5(r29) +/* 80015F3C 00012E9C 7F A3 EB 78 */ mr r3, r29 +/* 80015F40 00012EA0 50 A0 3E 30 */ rlwimi r0, r5, 7, 0x18, 0x18 +/* 80015F44 00012EA4 98 1D 09 C5 */ stb r0, 0x9c5(r29) +/* 80015F48 00012EA8 88 BD 09 C5 */ lbz r5, 0x9c5(r29) +/* 80015F4C 00012EAC 88 1D 09 C4 */ lbz r0, 0x9c4(r29) +/* 80015F50 00012EB0 50 A0 D7 FE */ rlwimi r0, r5, 0x1a, 0x1f, 0x1f +/* 80015F54 00012EB4 98 1D 09 C4 */ stb r0, 0x9c4(r29) +/* 80015F58 00012EB8 88 1D 09 C5 */ lbz r0, 0x9c5(r29) +/* 80015F5C 00012EBC 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 +/* 80015F60 00012EC0 98 1D 09 C5 */ stb r0, 0x9c5(r29) +/* 80015F64 00012EC4 48 27 23 21 */ bl UpdateBombJumpStuff__7CPlayerFv +/* 80015F68 00012EC8 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80015F6C 00012ECC C0 1D 02 88 */ lfs f0, 0x288(r29) +/* 80015F70 00012ED0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80015F74 00012ED4 40 80 00 2C */ bge lbl_80015FA0 +/* 80015F78 00012ED8 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80015F7C 00012EDC D0 1D 02 88 */ stfs f0, 0x288(r29) +/* 80015F80 00012EE0 C0 1D 02 88 */ lfs f0, 0x288(r29) +/* 80015F84 00012EE4 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80015F88 00012EE8 4C 41 13 82 */ cror 2, 1, 2 +/* 80015F8C 00012EEC 40 82 00 14 */ bne lbl_80015FA0 +/* 80015F90 00012EF0 7F A3 EB 78 */ mr r3, r29 +/* 80015F94 00012EF4 7F C5 F3 78 */ mr r5, r30 +/* 80015F98 00012EF8 38 80 00 02 */ li r4, 2 +/* 80015F9C 00012EFC 48 27 04 51 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +lbl_80015FA0: +/* 80015FA0 00012F00 C0 3D 02 A0 */ lfs f1, 0x2a0(r29) +/* 80015FA4 00012F04 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80015FA8 00012F08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80015FAC 00012F0C 40 81 00 0C */ ble lbl_80015FB8 +/* 80015FB0 00012F10 EC 01 F8 2A */ fadds f0, f1, f31 +/* 80015FB4 00012F14 D0 1D 02 A0 */ stfs f0, 0x2a0(r29) +lbl_80015FB8: +/* 80015FB8 00012F18 C0 3D 07 74 */ lfs f1, 0x774(r29) +/* 80015FBC 00012F1C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80015FC0 00012F20 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80015FC4 00012F24 40 81 00 0C */ ble lbl_80015FD0 +/* 80015FC8 00012F28 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 80015FCC 00012F2C D0 1D 07 74 */ stfs f0, 0x774(r29) +lbl_80015FD0: +/* 80015FD0 00012F30 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80015FD4 00012F34 C0 1D 02 8C */ lfs f0, 0x28c(r29) +/* 80015FD8 00012F38 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80015FDC 00012F3C 40 80 00 0C */ bge lbl_80015FE8 +/* 80015FE0 00012F40 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80015FE4 00012F44 D0 1D 02 8C */ stfs f0, 0x28c(r29) +lbl_80015FE8: +/* 80015FE8 00012F48 C0 1D 03 00 */ lfs f0, 0x300(r29) +/* 80015FEC 00012F4C EC 00 F8 2A */ fadds f0, f0, f31 +/* 80015FF0 00012F50 D0 1D 03 00 */ stfs f0, 0x300(r29) +/* 80015FF4 00012F54 80 1D 02 58 */ lwz r0, 0x258(r29) +/* 80015FF8 00012F58 2C 00 00 04 */ cmpwi r0, 4 +/* 80015FFC 00012F5C 40 82 00 24 */ bne lbl_80016020 +/* 80016000 00012F60 C0 3D 03 00 */ lfs f1, 0x300(r29) +/* 80016004 00012F64 C0 02 81 8C */ lfs f0, lbl_805A9EAC@sda21(r2) +/* 80016008 00012F68 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001600C 00012F6C 40 81 00 14 */ ble lbl_80016020 +/* 80016010 00012F70 7F A3 EB 78 */ mr r3, r29 +/* 80016014 00012F74 7F C5 F3 78 */ mr r5, r30 +/* 80016018 00012F78 38 80 00 02 */ li r4, 2 +/* 8001601C 00012F7C 48 27 03 D1 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +lbl_80016020: +/* 80016020 00012F80 C0 3D 05 70 */ lfs f1, 0x570(r29) +/* 80016024 00012F84 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016028 00012F88 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001602C 00012F8C 40 81 00 0C */ ble lbl_80016038 +/* 80016030 00012F90 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 80016034 00012F94 D0 1D 05 70 */ stfs f0, 0x570(r29) +lbl_80016038: +/* 80016038 00012F98 FC 20 F8 90 */ fmr f1, f31 +/* 8001603C 00012F9C 7F A3 EB 78 */ mr r3, r29 +/* 80016040 00012FA0 7F C4 F3 78 */ mr r4, r30 +/* 80016044 00012FA4 48 00 27 2D */ bl Update__7CPlayerFfR13CStateManager +/* 80016048 00012FA8 FC 20 F8 90 */ fmr f1, f31 +/* 8001604C 00012FAC 7F A3 EB 78 */ mr r3, r29 +/* 80016050 00012FB0 7F C4 F3 78 */ mr r4, r30 +/* 80016054 00012FB4 48 26 CA C5 */ bl UpdateTransitionFilter__7CPlayerFfR13CStateManager +/* 80016058 00012FB8 FC 20 F8 90 */ fmr f1, f31 +/* 8001605C 00012FBC 7F A3 EB 78 */ mr r3, r29 +/* 80016060 00012FC0 48 26 FF C5 */ bl CalculatePlayerMovementDirection__7CPlayerFf +/* 80016064 00012FC4 FC 20 F8 90 */ fmr f1, f31 +/* 80016068 00012FC8 7F A3 EB 78 */ mr r3, r29 +/* 8001606C 00012FCC 7F C4 F3 78 */ mr r4, r30 +/* 80016070 00012FD0 48 26 FE 29 */ bl UpdatePlayerControlDirection__7CPlayerFfR13CStateManager +/* 80016074 00012FD4 88 0D A0 B8 */ lbz r0, lbl_805A8C78@sda21(r13) +/* 80016078 00012FD8 28 00 00 00 */ cmplwi r0, 0 +/* 8001607C 00012FDC 41 82 00 20 */ beq lbl_8001609C +/* 80016080 00012FE0 80 0D A0 BC */ lwz r0, lbl_805A8C7C@sda21(r13) +/* 80016084 00012FE4 2C 00 00 04 */ cmpwi r0, 4 +/* 80016088 00012FE8 40 82 00 10 */ bne lbl_80016098 +/* 8001608C 00012FEC 38 00 00 00 */ li r0, 0 +/* 80016090 00012FF0 90 1D 02 B0 */ stw r0, 0x2b0(r29) +/* 80016094 00012FF4 48 00 00 08 */ b lbl_8001609C +lbl_80016098: +/* 80016098 00012FF8 90 1D 02 AC */ stw r0, 0x2ac(r29) +lbl_8001609C: +/* 8001609C 00012FFC 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 800160A0 00013000 2C 00 00 00 */ cmpwi r0, 0 +/* 800160A4 00013004 40 82 01 F0 */ bne lbl_80016294 +/* 800160A8 00013008 88 1D 09 C5 */ lbz r0, 0x9c5(r29) +/* 800160AC 0001300C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 800160B0 00013010 41 82 01 E4 */ beq lbl_80016294 +/* 800160B4 00013014 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 800160B8 00013018 80 03 00 74 */ lwz r0, 0x74(r3) +/* 800160BC 0001301C 2C 00 00 00 */ cmpwi r0, 0 +/* 800160C0 00013020 40 82 01 D4 */ bne lbl_80016294 +/* 800160C4 00013024 7F A3 EB 78 */ mr r3, r29 +/* 800160C8 00013028 7F C4 F3 78 */ mr r4, r30 +/* 800160CC 0001302C 48 00 19 95 */ bl GetVisorRunoffEffect__FRC7CPlayerRC13CStateManager +/* 800160D0 00013030 7C 7F 1B 79 */ or. r31, r3, r3 +/* 800160D4 00013034 41 82 01 C0 */ beq lbl_80016294 +/* 800160D8 00013038 88 1F 02 48 */ lbz r0, 0x248(r31) +/* 800160DC 0001303C 28 00 00 00 */ cmplwi r0, 0 +/* 800160E0 00013040 41 82 01 7C */ beq lbl_8001625C +/* 800160E4 00013044 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha +/* 800160E8 00013048 3B 80 00 00 */ li r28, 0 +/* 800160EC 0001304C 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l +/* 800160F0 00013050 3B 60 00 00 */ li r27, 0 +/* 800160F4 00013054 38 83 00 1D */ addi r4, r3, 0x1d +/* 800160F8 00013058 3A E0 00 00 */ li r23, 0 +/* 800160FC 0001305C 38 60 01 10 */ li r3, 0x110 +/* 80016100 00013060 38 A0 00 00 */ li r5, 0 +/* 80016104 00013064 48 2F F7 69 */ bl __nw__FUlPCcPCc +/* 80016108 00013068 7C 78 1B 79 */ or. r24, r3, r3 +/* 8001610C 0001306C 41 82 00 DC */ beq lbl_800161E8 +/* 80016110 00013070 38 00 00 01 */ li r0, 1 +/* 80016114 00013074 34 61 00 60 */ addic. r3, r1, 0x60 +/* 80016118 00013078 98 01 00 68 */ stb r0, 0x68(r1) +/* 8001611C 0001307C 38 9F 02 3C */ addi r4, r31, 0x23c +/* 80016120 00013080 41 82 00 08 */ beq lbl_80016128 +/* 80016124 00013084 48 32 AD 85 */ bl __ct__6CTokenFRC6CToken +lbl_80016128: +/* 80016128 00013088 38 00 00 00 */ li r0, 0 +/* 8001612C 0001308C 7F C4 F3 78 */ mr r4, r30 +/* 80016130 00013090 98 01 00 74 */ stb r0, 0x74(r1) +/* 80016134 00013094 38 61 00 10 */ addi r3, r1, 0x10 +/* 80016138 00013098 3A E0 00 01 */ li r23, 1 +/* 8001613C 0001309C 3B 60 00 01 */ li r27, 1 +/* 80016140 000130A0 48 03 6F 9D */ bl AllocateUniqueId__13CStateManagerFv +/* 80016144 000130A4 A0 01 00 10 */ lhz r0, 0x10(r1) +/* 80016148 000130A8 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha +/* 8001614C 000130AC 38 83 C4 F8 */ addi r4, r3, lbl_803CC4F8@l +/* 80016150 000130B0 38 61 00 78 */ addi r3, r1, 0x78 +/* 80016154 000130B4 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80016158 000130B8 38 84 00 33 */ addi r4, r4, 0x33 +/* 8001615C 000130BC 4B FE EB 5D */ bl string_l__4rstlFPCc +/* 80016160 000130C0 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80016164 000130C4 38 61 00 20 */ addi r3, r1, 0x20 +/* 80016168 000130C8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 8001616C 000130CC 3B 80 00 01 */ li r28, 1 +/* 80016170 000130D0 FC 40 08 90 */ fmr f2, f1 +/* 80016174 000130D4 D0 21 00 88 */ stfs f1, 0x88(r1) +/* 80016178 000130D8 FC 60 08 90 */ fmr f3, f1 +/* 8001617C 000130DC FC 80 08 90 */ fmr f4, f1 +/* 80016180 000130E0 D0 21 00 8C */ stfs f1, 0x8c(r1) +/* 80016184 000130E4 D0 21 00 90 */ stfs f1, 0x90(r1) +/* 80016188 000130E8 D0 01 00 94 */ stfs f0, 0x94(r1) +/* 8001618C 000130EC D0 01 00 98 */ stfs f0, 0x98(r1) +/* 80016190 000130F0 D0 01 00 9C */ stfs f0, 0x9c(r1) +/* 80016194 000130F4 48 34 D2 59 */ bl __ct__6CColorFffff +/* 80016198 000130F8 7C 79 1B 78 */ mr r25, r3 +/* 8001619C 000130FC 7F C3 F3 78 */ mr r3, r30 +/* 800161A0 00013100 48 11 A0 8D */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager +/* 800161A4 00013104 7C 7A 1B 78 */ mr r26, r3 +/* 800161A8 00013108 7F C3 F3 78 */ mr r3, r30 +/* 800161AC 0001310C 48 11 A0 4D */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager +/* 800161B0 00013110 38 61 00 88 */ addi r3, r1, 0x88 +/* 800161B4 00013114 38 01 00 94 */ addi r0, r1, 0x94 +/* 800161B8 00013118 90 61 00 08 */ stw r3, 8(r1) +/* 800161BC 0001311C 7F 03 C3 78 */ mr r3, r24 +/* 800161C0 00013120 7F 49 D3 78 */ mr r9, r26 +/* 800161C4 00013124 7F 2A CB 78 */ mr r10, r25 +/* 800161C8 00013128 90 01 00 0C */ stw r0, 0xc(r1) +/* 800161CC 0001312C 38 81 00 60 */ addi r4, r1, 0x60 +/* 800161D0 00013130 38 A1 00 6C */ addi r5, r1, 0x6c +/* 800161D4 00013134 38 C1 00 14 */ addi r6, r1, 0x14 +/* 800161D8 00013138 39 01 00 78 */ addi r8, r1, 0x78 +/* 800161DC 0001313C 38 E0 00 01 */ li r7, 1 +/* 800161E0 00013140 48 11 9D 19 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" +/* 800161E4 00013144 7C 78 1B 78 */ mr r24, r3 +lbl_800161E8: +/* 800161E8 00013148 7F C3 F3 78 */ mr r3, r30 +/* 800161EC 0001314C 7F 04 C3 78 */ mr r4, r24 +/* 800161F0 00013150 48 03 6B 05 */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 800161F4 00013154 7E E0 07 75 */ extsb. r0, r23 +/* 800161F8 00013158 41 82 00 28 */ beq lbl_80016220 +/* 800161FC 0001315C 88 01 00 68 */ lbz r0, 0x68(r1) +/* 80016200 00013160 28 00 00 00 */ cmplwi r0, 0 +/* 80016204 00013164 41 82 00 14 */ beq lbl_80016218 +/* 80016208 00013168 34 61 00 60 */ addic. r3, r1, 0x60 +/* 8001620C 0001316C 41 82 00 0C */ beq lbl_80016218 +/* 80016210 00013170 38 80 00 00 */ li r4, 0 +/* 80016214 00013174 48 32 AC 2D */ bl __dt__6CTokenFv +lbl_80016218: +/* 80016218 00013178 38 00 00 00 */ li r0, 0 +/* 8001621C 0001317C 98 01 00 68 */ stb r0, 0x68(r1) +lbl_80016220: +/* 80016220 00013180 7F 60 07 75 */ extsb. r0, r27 +/* 80016224 00013184 41 82 00 28 */ beq lbl_8001624C +/* 80016228 00013188 88 01 00 74 */ lbz r0, 0x74(r1) +/* 8001622C 0001318C 28 00 00 00 */ cmplwi r0, 0 +/* 80016230 00013190 41 82 00 14 */ beq lbl_80016244 +/* 80016234 00013194 34 61 00 6C */ addic. r3, r1, 0x6c +/* 80016238 00013198 41 82 00 0C */ beq lbl_80016244 +/* 8001623C 0001319C 38 80 00 00 */ li r4, 0 +/* 80016240 000131A0 48 32 AC 01 */ bl __dt__6CTokenFv +lbl_80016244: +/* 80016244 000131A4 38 00 00 00 */ li r0, 0 +/* 80016248 000131A8 98 01 00 74 */ stb r0, 0x74(r1) +lbl_8001624C: +/* 8001624C 000131AC 7F 80 07 75 */ extsb. r0, r28 +/* 80016250 000131B0 41 82 00 0C */ beq lbl_8001625C +/* 80016254 000131B4 38 61 00 78 */ addi r3, r1, 0x78 +/* 80016258 000131B8 48 32 78 89 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_8001625C: +/* 8001625C 000131BC A0 9F 02 60 */ lhz r4, 0x260(r31) +/* 80016260 000131C0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80016264 000131C4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80016268 000131C8 38 A0 00 7F */ li r5, 0x7f +/* 8001626C 000131CC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80016270 000131D0 38 C0 00 40 */ li r6, 0x40 +/* 80016274 000131D4 38 E0 00 00 */ li r7, 0 +/* 80016278 000131D8 39 20 00 00 */ li r9, 0 +/* 8001627C 000131DC 48 2D 3A F9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80016280 000131E0 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80016284 000131E4 7F A3 EB 78 */ mr r3, r29 +/* 80016288 000131E8 38 81 00 1C */ addi r4, r1, 0x1c +/* 8001628C 000131EC 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80016290 000131F0 4B FF AE FD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +lbl_80016294: +/* 80016294 000131F4 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 80016298 000131F8 88 1D 09 C5 */ lbz r0, 0x9c5(r29) +/* 8001629C 000131FC 80 83 00 74 */ lwz r4, 0x74(r3) +/* 800162A0 00013200 7C 64 00 D0 */ neg r3, r4 +/* 800162A4 00013204 7C 63 23 78 */ or r3, r3, r4 +/* 800162A8 00013208 50 60 2E F6 */ rlwimi r0, r3, 5, 0x1b, 0x1b +/* 800162AC 0001320C 98 1D 09 C5 */ stb r0, 0x9c5(r29) +/* 800162B0 00013210 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 800162B4 00013214 2C 00 00 01 */ cmpwi r0, 1 +/* 800162B8 00013218 41 82 01 60 */ beq lbl_80016418 +/* 800162BC 0001321C C0 7D 00 54 */ lfs f3, 0x54(r29) +/* 800162C0 00013220 C0 3D 00 44 */ lfs f1, 0x44(r29) +/* 800162C4 00013224 FC 80 1A 10 */ fabs f4, f3 +/* 800162C8 00013228 C0 1D 00 34 */ lfs f0, 0x34(r29) +/* 800162CC 0001322C C0 42 81 EC */ lfs f2, lbl_805A9F0C@sda21(r2) +/* 800162D0 00013230 D0 01 00 54 */ stfs f0, 0x54(r1) +/* 800162D4 00013234 FC 00 20 18 */ frsp f0, f4 +/* 800162D8 00013238 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 800162DC 0001323C FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 800162E0 00013240 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 800162E4 00013244 41 81 00 2C */ bgt lbl_80016310 +/* 800162E8 00013248 C0 7D 00 58 */ lfs f3, 0x58(r29) +/* 800162EC 0001324C C0 1D 00 48 */ lfs f0, 0x48(r29) +/* 800162F0 00013250 FC 80 1A 10 */ fabs f4, f3 +/* 800162F4 00013254 C0 3D 00 38 */ lfs f1, 0x38(r29) +/* 800162F8 00013258 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 800162FC 0001325C FC 00 20 18 */ frsp f0, f4 +/* 80016300 00013260 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80016304 00013264 D0 61 00 50 */ stfs f3, 0x50(r1) +/* 80016308 00013268 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 8001630C 0001326C 40 81 01 0C */ ble lbl_80016418 +lbl_80016310: +/* 80016310 00013270 C0 7D 00 60 */ lfs f3, 0x60(r29) +/* 80016314 00013274 38 61 00 A0 */ addi r3, r1, 0xa0 +/* 80016318 00013278 C0 5D 00 50 */ lfs f2, 0x50(r29) +/* 8001631C 0001327C C0 3D 00 40 */ lfs f1, 0x40(r29) +/* 80016320 00013280 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016324 00013284 D0 21 00 AC */ stfs f1, 0xac(r1) +/* 80016328 00013288 D0 41 00 B0 */ stfs f2, 0xb0(r1) +/* 8001632C 0001328C D0 61 00 B4 */ stfs f3, 0xb4(r1) +/* 80016330 00013290 C0 7D 00 58 */ lfs f3, 0x58(r29) +/* 80016334 00013294 C0 5D 00 48 */ lfs f2, 0x48(r29) +/* 80016338 00013298 C0 3D 00 38 */ lfs f1, 0x38(r29) +/* 8001633C 0001329C D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 80016340 000132A0 D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 80016344 000132A4 D0 41 00 A4 */ stfs f2, 0xa4(r1) +/* 80016348 000132A8 D0 01 00 A8 */ stfs f0, 0xa8(r1) +/* 8001634C 000132AC 48 2F E3 AD */ bl CanBeNormalized__9CVector3fCFv +/* 80016350 000132B0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016354 000132B4 41 82 00 80 */ beq lbl_800163D4 +/* 80016358 000132B8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8001635C 000132BC 38 81 00 A0 */ addi r4, r1, 0xa0 +/* 80016360 000132C0 48 2F E4 F1 */ bl AsNormalized__9CVector3fCFv +/* 80016364 000132C4 38 61 00 30 */ addi r3, r1, 0x30 +/* 80016368 000132C8 38 81 00 24 */ addi r4, r1, 0x24 +/* 8001636C 000132CC 48 2F DA 65 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 80016370 000132D0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80016374 000132D4 7C 7B 1B 78 */ mr r27, r3 +/* 80016378 000132D8 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 8001637C 000132DC 38 61 00 3C */ addi r3, r1, 0x3c +/* 80016380 000132E0 48 2F DA 51 */ bl __ct__11CUnitVectorFRC9CVector3f +/* 80016384 000132E4 3C 80 80 5A */ lis r4, lbl_805A66F4@ha +/* 80016388 000132E8 7F 65 DB 78 */ mr r5, r27 +/* 8001638C 000132EC 38 C4 66 F4 */ addi r6, r4, lbl_805A66F4@l +/* 80016390 000132F0 7C 64 1B 78 */ mr r4, r3 +/* 80016394 000132F4 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80016398 000132F8 48 2F D7 79 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 8001639C 000132FC 38 7D 00 34 */ addi r3, r29, 0x34 +/* 800163A0 00013300 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 800163A4 00013304 48 2F C7 9D */ bl __as__12CTransform4fFRC12CTransform4f +/* 800163A8 00013308 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 800163AC 0001330C 38 60 00 01 */ li r3, 1 +/* 800163B0 00013310 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 800163B4 00013314 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 800163B8 00013318 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 800163BC 0001331C 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 800163C0 00013320 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 800163C4 00013324 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 800163C8 00013328 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 800163CC 0001332C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 800163D0 00013330 48 00 00 3C */ b lbl_8001640C +lbl_800163D4: +/* 800163D4 00013334 3C 80 80 5A */ lis r4, skIdentity4f@ha +/* 800163D8 00013338 38 7D 00 34 */ addi r3, r29, 0x34 +/* 800163DC 0001333C 38 84 66 70 */ addi r4, r4, skIdentity4f@l +/* 800163E0 00013340 48 2F C7 61 */ bl __as__12CTransform4fFRC12CTransform4f +/* 800163E4 00013344 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 800163E8 00013348 38 60 00 01 */ li r3, 1 +/* 800163EC 0001334C 50 60 26 F6 */ rlwimi r0, r3, 4, 0x1b, 0x1b +/* 800163F0 00013350 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 800163F4 00013354 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 800163F8 00013358 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c +/* 800163FC 0001335C 98 1D 00 E4 */ stb r0, 0xe4(r29) +/* 80016400 00013360 88 1D 00 E4 */ lbz r0, 0xe4(r29) +/* 80016404 00013364 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d +/* 80016408 00013368 98 1D 00 E4 */ stb r0, 0xe4(r29) +lbl_8001640C: +/* 8001640C 0001336C 7F A3 EB 78 */ mr r3, r29 +/* 80016410 00013370 38 81 00 AC */ addi r4, r1, 0xac +/* 80016414 00013374 48 03 CA 79 */ bl SetTranslation__6CActorFRC9CVector3f +lbl_80016418: +/* 80016418 00013378 C0 1D 01 38 */ lfs f0, 0x138(r29) +/* 8001641C 0001337C D0 1D 07 94 */ stfs f0, 0x794(r29) +/* 80016420 00013380 C0 1D 01 3C */ lfs f0, 0x13c(r29) +/* 80016424 00013384 D0 1D 07 98 */ stfs f0, 0x798(r29) +/* 80016428 00013388 C0 1D 01 40 */ lfs f0, 0x140(r29) +/* 8001642C 0001338C D0 1D 07 9C */ stfs f0, 0x79c(r29) +/* 80016430 00013390 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 80016434 00013394 CB E1 01 10 */ lfd f31, 0x110(r1) +/* 80016438 00013398 BA E1 00 EC */ lmw r23, 0xec(r1) +/* 8001643C 0001339C 80 01 01 24 */ lwz r0, 0x124(r1) +/* 80016440 000133A0 7C 08 03 A6 */ mtlr r0 +/* 80016444 000133A4 38 21 01 20 */ addi r1, r1, 0x120 + +.global sub_80016448 +sub_80016448: +/* 80016448 000133A8 4E 80 00 20 */ blr + +.global UpdateWaterSurfaceCameraBias__7CPlayerFR13CStateManager +UpdateWaterSurfaceCameraBias__7CPlayerFR13CStateManager: +/* 8001644C 000133AC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80016450 000133B0 7C 08 02 A6 */ mflr r0 +/* 80016454 000133B4 90 01 00 64 */ stw r0, 0x64(r1) +/* 80016458 000133B8 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 8001645C 000133BC F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80016460 000133C0 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80016464 000133C4 A0 03 00 C4 */ lhz r0, 0xc4(r3) +/* 80016468 000133C8 7C 7F 1B 78 */ mr r31, r3 +/* 8001646C 000133CC 7C 83 23 78 */ mr r3, r4 +/* 80016470 000133D0 38 81 00 0C */ addi r4, r1, 0xc +/* 80016474 000133D4 B0 01 00 08 */ sth r0, 8(r1) +/* 80016478 000133D8 B0 01 00 0C */ sth r0, 0xc(r1) +/* 8001647C 000133DC 48 03 61 29 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80016480 000133E0 7C 64 1B 78 */ mr r4, r3 +/* 80016484 000133E4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80016488 000133E8 48 09 03 D9 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 8001648C 000133EC 80 83 00 04 */ lwz r4, 4(r3) +/* 80016490 000133F0 28 04 00 00 */ cmplwi r4, 0 +/* 80016494 000133F4 41 82 00 90 */ beq lbl_80016524 +/* 80016498 000133F8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8001649C 000133FC 48 06 02 31 */ bl GetTriggerBoundsWR__14CScriptTriggerCFv +/* 800164A0 00013400 C3 E1 00 38 */ lfs f31, 0x38(r1) +/* 800164A4 00013404 7F E4 FB 78 */ mr r4, r31 +/* 800164A8 00013408 38 61 00 18 */ addi r3, r1, 0x18 +/* 800164AC 0001340C 48 26 E8 D1 */ bl GetEyePosition__7CPlayerCFv +/* 800164B0 00013410 C0 41 00 20 */ lfs f2, 0x20(r1) +/* 800164B4 00013414 C0 7F 09 C8 */ lfs f3, 0x9c8(r31) +/* 800164B8 00013418 EC 42 18 28 */ fsubs f2, f2, f3 +/* 800164BC 0001341C FC 02 F8 40 */ fcmpo cr0, f2, f31 +/* 800164C0 00013420 EC 82 F8 28 */ fsubs f4, f2, f31 +/* 800164C4 00013424 4C 41 13 82 */ cror 2, 1, 2 +/* 800164C8 00013428 40 82 00 2C */ bne lbl_800164F4 +/* 800164CC 0001342C C0 22 81 F0 */ lfs f1, lbl_805A9F10@sda21(r2) +/* 800164D0 00013430 FC 04 08 40 */ fcmpo cr0, f4, f1 +/* 800164D4 00013434 4C 40 13 82 */ cror 2, 0, 2 +/* 800164D8 00013438 40 82 00 1C */ bne lbl_800164F4 +/* 800164DC 0001343C EC 03 F8 2A */ fadds f0, f3, f31 +/* 800164E0 00013440 7F E3 FB 78 */ mr r3, r31 +/* 800164E4 00013444 EC 01 00 2A */ fadds f0, f1, f0 +/* 800164E8 00013448 EC 20 10 28 */ fsubs f1, f0, f2 +/* 800164EC 0001344C 48 26 DE 81 */ bl SetEyeZBias__7CPlayerFf +/* 800164F0 00013450 48 00 00 34 */ b lbl_80016524 +lbl_800164F4: +/* 800164F4 00013454 FC 02 F8 40 */ fcmpo cr0, f2, f31 +/* 800164F8 00013458 40 80 00 2C */ bge lbl_80016524 +/* 800164FC 0001345C C0 02 81 F4 */ lfs f0, lbl_805A9F14@sda21(r2) +/* 80016500 00013460 FC 04 00 40 */ fcmpo cr0, f4, f0 +/* 80016504 00013464 4C 41 13 82 */ cror 2, 1, 2 +/* 80016508 00013468 40 82 00 1C */ bne lbl_80016524 +/* 8001650C 0001346C EC 23 F8 2A */ fadds f1, f3, f31 +/* 80016510 00013470 C0 02 81 20 */ lfs f0, lbl_805A9E40@sda21(r2) +/* 80016514 00013474 7F E3 FB 78 */ mr r3, r31 +/* 80016518 00013478 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8001651C 0001347C EC 20 10 28 */ fsubs f1, f0, f2 +/* 80016520 00013480 48 26 DE 4D */ bl SetEyeZBias__7CPlayerFf +lbl_80016524: +/* 80016524 00013484 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 80016528 00013488 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8001652C 0001348C CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80016530 00013490 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80016534 00013494 7C 08 03 A6 */ mtlr r0 +/* 80016538 00013498 38 21 00 60 */ addi r1, r1, 0x60 +/* 8001653C 0001349C 4E 80 00 20 */ blr + +.global PreThink__7CPlayerFfR13CStateManager +PreThink__7CPlayerFfR13CStateManager: +/* 80016540 000134A0 38 00 00 00 */ li r0, 0 +/* 80016544 000134A4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016548 000134A8 98 03 05 58 */ stb r0, 0x558(r3) +/* 8001654C 000134AC 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80016550 000134B0 D0 03 05 5C */ stfs f0, 0x55c(r3) +/* 80016554 000134B4 D0 03 05 60 */ stfs f0, 0x560(r3) +/* 80016558 000134B8 C4 04 66 A0 */ lfsu f0, skZero3f@l(r4) +/* 8001655C 000134BC D0 03 05 64 */ stfs f0, 0x564(r3) +/* 80016560 000134C0 C0 04 00 04 */ lfs f0, 4(r4) +/* 80016564 000134C4 D0 03 05 68 */ stfs f0, 0x568(r3) +/* 80016568 000134C8 C0 04 00 08 */ lfs f0, 8(r4) +/* 8001656C 000134CC D0 03 05 6C */ stfs f0, 0x56c(r3) +/* 80016570 000134D0 D0 23 0A 04 */ stfs f1, 0xa04(r3) +/* 80016574 000134D4 4E 80 00 20 */ blr + +.global AcceptScriptMsg__7CPlayerF20EScriptObjectMessage9TUniqueIdR13CStateManager +AcceptScriptMsg__7CPlayerF20EScriptObjectMessage9TUniqueIdR13CStateManager: +/* 80016578 000134D8 94 21 FE 00 */ stwu r1, -0x200(r1) +/* 8001657C 000134DC 7C 08 02 A6 */ mflr r0 +/* 80016580 000134E0 90 01 02 04 */ stw r0, 0x204(r1) +/* 80016584 000134E4 DB E1 01 F0 */ stfd f31, 0x1f0(r1) +/* 80016588 000134E8 F3 E1 01 F8 */ psq_st f31, 504(r1), 0, qr0 +/* 8001658C 000134EC DB C1 01 E0 */ stfd f30, 0x1e0(r1) +/* 80016590 000134F0 F3 C1 01 E8 */ psq_st f30, 488(r1), 0, qr0 +/* 80016594 000134F4 BF 41 01 C8 */ stmw r26, 0x1c8(r1) +/* 80016598 000134F8 7C 9C 23 78 */ mr r28, r4 +/* 8001659C 000134FC 7C 7B 1B 78 */ mr r27, r3 +/* 800165A0 00013500 38 1C FF E9 */ addi r0, r28, -23 +/* 800165A4 00013504 7C BD 2B 78 */ mr r29, r5 +/* 800165A8 00013508 28 00 00 15 */ cmplwi r0, 0x15 +/* 800165AC 0001350C 7C DE 33 78 */ mr r30, r6 +/* 800165B0 00013510 41 81 07 74 */ bgt lbl_80016D24 +/* 800165B4 00013514 3C 80 80 3E */ lis r4, lbl_803D978C@ha +/* 800165B8 00013518 54 00 10 3A */ slwi r0, r0, 2 +/* 800165BC 0001351C 38 84 97 8C */ addi r4, r4, lbl_803D978C@l +/* 800165C0 00013520 7C 04 00 2E */ lwzx r0, r4, r0 +/* 800165C4 00013524 7C 09 03 A6 */ mtctr r0 +/* 800165C8 00013528 4E 80 04 20 */ bctr +/* 800165CC 0001352C 80 7B 02 58 */ lwz r3, 0x258(r27) +/* 800165D0 00013530 2C 03 00 00 */ cmpwi r3, 0 +/* 800165D4 00013534 41 82 02 3C */ beq lbl_80016810 +/* 800165D8 00013538 80 1B 02 F8 */ lwz r0, 0x2f8(r27) +/* 800165DC 0001353C 2C 00 00 01 */ cmpwi r0, 1 +/* 800165E0 00013540 41 82 02 30 */ beq lbl_80016810 +/* 800165E4 00013544 C0 3B 03 00 */ lfs f1, 0x300(r27) +/* 800165E8 00013548 C0 02 81 50 */ lfs f0, lbl_805A9E70@sda21(r2) +/* 800165EC 0001354C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800165F0 00013550 40 81 02 20 */ ble lbl_80016810 +/* 800165F4 00013554 2C 03 00 03 */ cmpwi r3, 3 +/* 800165F8 00013558 41 82 03 4C */ beq lbl_80016944 +/* 800165FC 0001355C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80016600 00013560 C0 22 81 34 */ lfs f1, lbl_805A9E54@sda21(r2) +/* 80016604 00013564 C0 03 00 C4 */ lfs f0, 0xc4(r3) +/* 80016608 00013568 C0 42 81 08 */ lfs f2, lbl_805A9E28@sda21(r2) +/* 8001660C 0001356C FC 00 00 50 */ fneg f0, f0 +/* 80016610 00013570 C3 C2 81 0C */ lfs f30, lbl_805A9E2C@sda21(r2) +/* 80016614 00013574 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80016618 00013578 EC 22 00 32 */ fmuls f1, f2, f0 +/* 8001661C 0001357C FC 1E 08 00 */ fcmpu cr0, f30, f1 +/* 80016620 00013580 40 82 00 08 */ bne lbl_80016628 +/* 80016624 00013584 48 00 00 10 */ b lbl_80016634 +lbl_80016628: +/* 80016628 00013588 FC 00 08 34 */ frsqrte f0, f1 +/* 8001662C 0001358C FF C1 00 32 */ fmul f30, f1, f0 +/* 80016630 00013590 FF C0 F0 18 */ frsp f30, f30 +lbl_80016634: +/* 80016634 00013594 C0 1B 07 9C */ lfs f0, 0x79c(r27) +/* 80016638 00013598 38 81 00 4C */ addi r4, r1, 0x4c +/* 8001663C 0001359C C0 42 82 04 */ lfs f2, lbl_805A9F24@sda21(r2) +/* 80016640 000135A0 38 62 81 F8 */ addi r3, r2, lbl_805A9F18@sda21 +/* 80016644 000135A4 FC 20 00 50 */ fneg f1, f0 +/* 80016648 000135A8 C0 02 82 00 */ lfs f0, lbl_805A9F20@sda21(r2) +/* 8001664C 000135AC 38 A2 81 FC */ addi r5, r2, lbl_805A9F1C@sda21 +/* 80016650 000135B0 EC 02 00 7A */ fmadds f0, f2, f1, f0 +/* 80016654 000135B4 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80016658 000135B8 4B FF 5C 5D */ bl "Clamp__5CMathFRCfRCfRCf" +/* 8001665C 000135BC C3 E3 00 00 */ lfs f31, 0(r3) +/* 80016660 000135C0 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 +/* 80016664 000135C4 C0 1B 07 9C */ lfs f0, 0x79c(r27) +/* 80016668 000135C8 8B E1 00 08 */ lbz r31, 8(r1) +/* 8001666C 000135CC FC 00 00 50 */ fneg f0, f0 +/* 80016670 000135D0 FC 00 F0 40 */ fcmpo cr0, f0, f30 +/* 80016674 000135D4 40 80 00 2C */ bge lbl_800166A0 +/* 80016678 000135D8 3C 60 80 3D */ lis r3, lbl_803CC438@ha +/* 8001667C 000135DC 3C C0 00 01 */ lis r6, 0x0000FFFF@ha +/* 80016680 000135E0 38 A3 C4 38 */ addi r5, r3, lbl_803CC438@l +/* 80016684 000135E4 7F C4 F3 78 */ mr r4, r30 +/* 80016688 000135E8 38 E6 FF FF */ addi r7, r6, 0x0000FFFF@l +/* 8001668C 000135EC 7F 63 DB 78 */ mr r3, r27 +/* 80016690 000135F0 38 C0 00 18 */ li r6, 0x18 +/* 80016694 000135F4 48 00 1A A1 */ bl GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs +/* 80016698 000135F8 7C 7A 1B 78 */ mr r26, r3 +/* 8001669C 000135FC 48 00 00 D4 */ b lbl_80016770 +lbl_800166A0: +/* 800166A0 00013600 3C 60 80 3D */ lis r3, lbl_803CC468@ha +/* 800166A4 00013604 3C C0 00 01 */ lis r6, 0x0000FFFF@ha +/* 800166A8 00013608 38 A3 C4 68 */ addi r5, r3, lbl_803CC468@l +/* 800166AC 0001360C 7F C4 F3 78 */ mr r4, r30 +/* 800166B0 00013610 38 E6 FF FF */ addi r7, r6, 0x0000FFFF@l +/* 800166B4 00013614 7F 63 DB 78 */ mr r3, r27 +/* 800166B8 00013618 38 C0 00 18 */ li r6, 0x18 +/* 800166BC 0001361C 48 00 1A 79 */ bl GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs +/* 800166C0 00013620 7C 60 1B 78 */ mr r0, r3 +/* 800166C4 00013624 7F 63 DB 78 */ mr r3, r27 +/* 800166C8 00013628 7C 1A 03 78 */ mr r26, r0 +/* 800166CC 0001362C 38 80 06 0E */ li r4, 0x60e +/* 800166D0 00013630 38 A0 00 7F */ li r5, 0x7f +/* 800166D4 00013634 38 C0 00 05 */ li r6, 5 +/* 800166D8 00013638 4B FF A5 89 */ bl StartSamusVoiceSfx__7CPlayerFUssi +/* 800166DC 0001363C C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 800166E0 00013640 38 00 00 01 */ li r0, 1 +/* 800166E4 00013644 C0 02 81 54 */ lfs f0, lbl_805A9E74@sda21(r2) +/* 800166E8 00013648 38 61 00 E8 */ addi r3, r1, 0xe8 +/* 800166EC 0001364C D0 3B 05 5C */ stfs f1, 0x55c(r27) +/* 800166F0 00013650 C0 22 81 50 */ lfs f1, lbl_805A9E70@sda21(r2) +/* 800166F4 00013654 D0 1B 05 60 */ stfs f0, 0x560(r27) +/* 800166F8 00013658 C0 42 82 08 */ lfs f2, lbl_805A9F28@sda21(r2) +/* 800166FC 0001365C C0 9B 00 60 */ lfs f4, 0x60(r27) +/* 80016700 00013660 C0 7B 00 50 */ lfs f3, 0x50(r27) +/* 80016704 00013664 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 80016708 00013668 D0 1B 05 64 */ stfs f0, 0x564(r27) +/* 8001670C 0001366C D0 7B 05 68 */ stfs f3, 0x568(r27) +/* 80016710 00013670 D0 9B 05 6C */ stfs f4, 0x56c(r27) +/* 80016714 00013674 98 1B 05 58 */ stb r0, 0x558(r27) +/* 80016718 00013678 48 14 6F AD */ bl BuildLandingCameraShake__16CCameraShakeDataFff +/* 8001671C 0001367C 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 80016720 00013680 38 81 00 E8 */ addi r4, r1, 0xe8 +/* 80016724 00013684 38 A0 00 00 */ li r5, 0 +/* 80016728 00013688 4B FF 42 F9 */ bl AddCameraShaker__14CCameraManagerFRC16CCameraShakeDatab +/* 8001672C 0001368C 34 81 01 68 */ addic. r4, r1, 0x168 +/* 80016730 00013690 41 82 00 10 */ beq lbl_80016740 +/* 80016734 00013694 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 80016738 00013698 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 8001673C 0001369C 90 04 00 00 */ stw r0, 0(r4) +lbl_80016740: +/* 80016740 000136A0 34 81 01 2C */ addic. r4, r1, 0x12c +/* 80016744 000136A4 41 82 00 10 */ beq lbl_80016754 +/* 80016748 000136A8 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 8001674C 000136AC 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 80016750 000136B0 90 04 00 00 */ stw r0, 0(r4) +lbl_80016754: +/* 80016754 000136B4 34 81 00 F0 */ addic. r4, r1, 0xf0 +/* 80016758 000136B8 41 82 00 10 */ beq lbl_80016768 +/* 8001675C 000136BC 3C 60 80 3E */ lis r3, lbl_803D8EA8@ha +/* 80016760 000136C0 38 03 8E A8 */ addi r0, r3, lbl_803D8EA8@l +/* 80016764 000136C4 90 04 00 00 */ stw r0, 0(r4) +lbl_80016768: +/* 80016768 000136C8 7F 63 DB 78 */ mr r3, r27 +/* 8001676C 000136CC 4B FF EF A9 */ bl StartLandingControlFreeze__7CPlayerFv +lbl_80016770: +/* 80016770 000136D0 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80016774 000136D4 7F E5 FB 78 */ mr r5, r31 +/* 80016778 000136D8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001677C 000136DC 38 61 00 44 */ addi r3, r1, 0x44 +/* 80016780 000136E0 57 44 04 3E */ clrlwi r4, r26, 0x10 +/* 80016784 000136E4 38 C0 00 40 */ li r6, 0x40 +/* 80016788 000136E8 38 E0 00 01 */ li r7, 1 +/* 8001678C 000136EC 39 20 00 00 */ li r9, 0 +/* 80016790 000136F0 48 2D 35 E5 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80016794 000136F4 80 01 00 44 */ lwz r0, 0x44(r1) +/* 80016798 000136F8 7F 63 DB 78 */ mr r3, r27 +/* 8001679C 000136FC 38 81 00 48 */ addi r4, r1, 0x48 +/* 800167A0 00013700 90 01 00 48 */ stw r0, 0x48(r1) +/* 800167A4 00013704 4B FF A9 E9 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 800167A8 00013708 C0 1B 07 9C */ lfs f0, 0x79c(r27) +/* 800167AC 0001370C C0 42 82 0C */ lfs f2, lbl_805A9F2C@sda21(r2) +/* 800167B0 00013710 FC 20 00 50 */ fneg f1, f0 +/* 800167B4 00013714 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800167B8 00013718 EC 62 00 72 */ fmuls f3, f2, f1 +/* 800167BC 0001371C FC 03 00 40 */ fcmpo cr0, f3, f0 +/* 800167C0 00013720 40 81 00 44 */ ble lbl_80016804 +/* 800167C4 00013724 FC 20 1A 10 */ fabs f1, f3 +/* 800167C8 00013728 C8 02 82 10 */ lfd f0, lbl_805A9F30@sda21(r2) +/* 800167CC 0001372C 80 7E 08 8C */ lwz r3, 0x88c(r30) +/* 800167D0 00013730 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800167D4 00013734 40 81 00 1C */ ble lbl_800167F0 +/* 800167D8 00013738 C0 42 81 88 */ lfs f2, lbl_805A9EA8@sda21(r2) +/* 800167DC 0001373C C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 800167E0 00013740 C0 02 81 94 */ lfs f0, lbl_805A9EB4@sda21(r2) +/* 800167E4 00013744 FC 23 10 6E */ fsel f1, f3, f1, f2 +/* 800167E8 00013748 EC 20 00 72 */ fmuls f1, f0, f1 +/* 800167EC 0001374C 48 00 00 08 */ b lbl_800167F4 +lbl_800167F0: +/* 800167F0 00013750 FC 20 18 90 */ fmr f1, f3 +lbl_800167F4: +/* 800167F4 00013754 7F C4 F3 78 */ mr r4, r30 +/* 800167F8 00013758 38 A0 00 0F */ li r5, 0xf +/* 800167FC 0001375C 38 C0 00 01 */ li r6, 1 +/* 80016800 00013760 48 21 7A 45 */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +lbl_80016804: +/* 80016804 00013764 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016808 00013768 D0 1B 02 A0 */ stfs f0, 0x2a0(r27) +/* 8001680C 0001376C 48 00 01 38 */ b lbl_80016944 +lbl_80016810: +/* 80016810 00013770 2C 03 00 00 */ cmpwi r3, 0 +/* 80016814 00013774 41 82 01 30 */ beq lbl_80016944 +/* 80016818 00013778 80 1B 02 F8 */ lwz r0, 0x2f8(r27) +/* 8001681C 0001377C 2C 00 00 01 */ cmpwi r0, 1 +/* 80016820 00013780 40 82 01 24 */ bne lbl_80016944 +/* 80016824 00013784 C0 3B 01 40 */ lfs f1, 0x140(r27) +/* 80016828 00013788 C0 02 82 18 */ lfs f0, lbl_805A9F38@sda21(r2) +/* 8001682C 0001378C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80016830 00013790 40 80 00 3C */ bge lbl_8001686C +/* 80016834 00013794 80 7B 07 68 */ lwz r3, 0x768(r27) +/* 80016838 00013798 48 0D B1 99 */ bl GetIsInHalfPipeMode__10CMorphBallCFv +/* 8001683C 0001379C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016840 000137A0 40 82 00 2C */ bne lbl_8001686C +/* 80016844 000137A4 80 1B 02 58 */ lwz r0, 0x258(r27) +/* 80016848 000137A8 2C 00 00 02 */ cmpwi r0, 2 +/* 8001684C 000137AC 40 82 00 20 */ bne lbl_8001686C +/* 80016850 000137B0 C0 3B 03 00 */ lfs f1, 0x300(r27) +/* 80016854 000137B4 C0 02 81 4C */ lfs f0, lbl_805A9E6C@sda21(r2) +/* 80016858 000137B8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001685C 000137BC 40 81 00 10 */ ble lbl_8001686C +/* 80016860 000137C0 C0 22 81 20 */ lfs f1, lbl_805A9E40@sda21(r2) +/* 80016864 000137C4 7F 63 DB 78 */ mr r3, r27 +/* 80016868 000137C8 48 10 3C 79 */ bl SetCoefficientOfRestitutionModifier__13CPhysicsActorFf +lbl_8001686C: +/* 8001686C 000137CC 80 7B 07 68 */ lwz r3, 0x768(r27) +/* 80016870 000137D0 48 0D 7F 41 */ bl StartLandingSfx__10CMorphBallFv +/* 80016874 000137D4 C0 3B 01 40 */ lfs f1, 0x140(r27) +/* 80016878 000137D8 C0 02 82 1C */ lfs f0, lbl_805A9F3C@sda21(r2) +/* 8001687C 000137DC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80016880 000137E0 40 80 00 60 */ bge lbl_800168E0 +/* 80016884 000137E4 FC 20 08 50 */ fneg f1, f1 +/* 80016888 000137E8 C0 42 82 0C */ lfs f2, lbl_805A9F2C@sda21(r2) +/* 8001688C 000137EC C0 62 81 68 */ lfs f3, lbl_805A9E88@sda21(r2) +/* 80016890 000137F0 C8 02 82 10 */ lfd f0, lbl_805A9F30@sda21(r2) +/* 80016894 000137F4 EC 22 00 72 */ fmuls f1, f2, f1 +/* 80016898 000137F8 80 7E 08 8C */ lwz r3, 0x88c(r30) +/* 8001689C 000137FC EC 63 00 72 */ fmuls f3, f3, f1 +/* 800168A0 00013800 FC 20 1A 10 */ fabs f1, f3 +/* 800168A4 00013804 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800168A8 00013808 40 81 00 1C */ ble lbl_800168C4 +/* 800168AC 0001380C C0 42 81 88 */ lfs f2, lbl_805A9EA8@sda21(r2) +/* 800168B0 00013810 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 800168B4 00013814 C0 02 81 94 */ lfs f0, lbl_805A9EB4@sda21(r2) +/* 800168B8 00013818 FC 23 10 6E */ fsel f1, f3, f1, f2 +/* 800168BC 0001381C EC 20 00 72 */ fmuls f1, f0, f1 +/* 800168C0 00013820 48 00 00 08 */ b lbl_800168C8 +lbl_800168C4: +/* 800168C4 00013824 FC 20 18 90 */ fmr f1, f3 +lbl_800168C8: +/* 800168C8 00013828 7F C4 F3 78 */ mr r4, r30 +/* 800168CC 0001382C 38 A0 00 0F */ li r5, 0xf +/* 800168D0 00013830 38 C0 00 01 */ li r6, 1 +/* 800168D4 00013834 48 21 79 71 */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +/* 800168D8 00013838 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800168DC 0001383C D0 1B 02 A0 */ stfs f0, 0x2a0(r27) +lbl_800168E0: +/* 800168E0 00013840 C0 3B 01 40 */ lfs f1, 0x140(r27) +/* 800168E4 00013844 C0 02 82 20 */ lfs f0, lbl_805A9F40@sda21(r2) +/* 800168E8 00013848 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800168EC 0001384C 40 80 00 58 */ bge lbl_80016944 +/* 800168F0 00013850 FC 20 08 50 */ fneg f1, f1 +/* 800168F4 00013854 C0 42 82 0C */ lfs f2, lbl_805A9F2C@sda21(r2) +/* 800168F8 00013858 C8 02 82 10 */ lfd f0, lbl_805A9F30@sda21(r2) +/* 800168FC 0001385C 80 7E 08 8C */ lwz r3, 0x88c(r30) +/* 80016900 00013860 EC 62 00 72 */ fmuls f3, f2, f1 +/* 80016904 00013864 FC 20 1A 10 */ fabs f1, f3 +/* 80016908 00013868 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001690C 0001386C 40 81 00 1C */ ble lbl_80016928 +/* 80016910 00013870 C0 42 81 88 */ lfs f2, lbl_805A9EA8@sda21(r2) +/* 80016914 00013874 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80016918 00013878 C0 02 81 94 */ lfs f0, lbl_805A9EB4@sda21(r2) +/* 8001691C 0001387C FC 23 10 6E */ fsel f1, f3, f1, f2 +/* 80016920 00013880 EC 20 00 72 */ fmuls f1, f0, f1 +/* 80016924 00013884 48 00 00 08 */ b lbl_8001692C +lbl_80016928: +/* 80016928 00013888 FC 20 18 90 */ fmr f1, f3 +lbl_8001692C: +/* 8001692C 0001388C 7F C4 F3 78 */ mr r4, r30 +/* 80016930 00013890 38 A0 00 0F */ li r5, 0xf +/* 80016934 00013894 38 C0 00 01 */ li r6, 1 +/* 80016938 00013898 48 21 79 0D */ bl Rumble__14CRumbleManagerFR13CStateManager11ERumbleFxIdf15ERumblePriority +/* 8001693C 0001389C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016940 000138A0 D0 1B 02 A0 */ stfs f0, 0x2a0(r27) +lbl_80016944: +/* 80016944 000138A4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016948 000138A8 7F 63 DB 78 */ mr r3, r27 +/* 8001694C 000138AC 7F C5 F3 78 */ mr r5, r30 +/* 80016950 000138B0 38 80 00 00 */ li r4, 0 +/* 80016954 000138B4 D0 1B 03 00 */ stfs f0, 0x300(r27) +/* 80016958 000138B8 48 26 FA 95 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +/* 8001695C 000138BC 48 00 03 C8 */ b lbl_80016D24 +/* 80016960 000138C0 80 9B 02 F8 */ lwz r4, 0x2f8(r27) +/* 80016964 000138C4 2C 04 00 01 */ cmpwi r4, 1 +/* 80016968 000138C8 40 82 00 14 */ bne lbl_8001697C +/* 8001696C 000138CC 80 7B 07 68 */ lwz r3, 0x768(r27) +/* 80016970 000138D0 80 03 18 7C */ lwz r0, 0x187c(r3) +/* 80016974 000138D4 2C 00 00 01 */ cmpwi r0, 1 +/* 80016978 000138D8 41 82 03 AC */ beq lbl_80016D24 +lbl_8001697C: +/* 8001697C 000138DC 2C 04 00 01 */ cmpwi r4, 1 +/* 80016980 000138E0 41 82 00 18 */ beq lbl_80016998 +/* 80016984 000138E4 7F 63 DB 78 */ mr r3, r27 +/* 80016988 000138E8 7F C5 F3 78 */ mr r5, r30 +/* 8001698C 000138EC 38 80 00 03 */ li r4, 3 +/* 80016990 000138F0 48 26 FA 5D */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +/* 80016994 000138F4 48 00 03 90 */ b lbl_80016D24 +lbl_80016998: +/* 80016998 000138F8 80 1B 02 58 */ lwz r0, 0x258(r27) +/* 8001699C 000138FC 2C 00 00 00 */ cmpwi r0, 0 +/* 800169A0 00013900 40 82 03 84 */ bne lbl_80016D24 +/* 800169A4 00013904 7F 63 DB 78 */ mr r3, r27 +/* 800169A8 00013908 7F C5 F3 78 */ mr r5, r30 +/* 800169AC 0001390C 38 80 00 04 */ li r4, 4 +/* 800169B0 00013910 48 26 FA 3D */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +/* 800169B4 00013914 48 00 03 70 */ b lbl_80016D24 +/* 800169B8 00013918 80 1B 02 F8 */ lwz r0, 0x2f8(r27) +/* 800169BC 0001391C 2C 00 00 01 */ cmpwi r0, 1 +/* 800169C0 00013920 40 82 03 64 */ bne lbl_80016D24 +/* 800169C4 00013924 80 9B 07 68 */ lwz r4, 0x768(r27) +/* 800169C8 00013928 80 04 18 7C */ lwz r0, 0x187c(r4) +/* 800169CC 0001392C 2C 00 00 01 */ cmpwi r0, 1 +/* 800169D0 00013930 40 82 03 54 */ bne lbl_80016D24 +/* 800169D4 00013934 80 1B 02 58 */ lwz r0, 0x258(r27) +/* 800169D8 00013938 2C 00 00 02 */ cmpwi r0, 2 +/* 800169DC 0001393C 41 82 03 48 */ beq lbl_80016D24 +/* 800169E0 00013940 7F C5 F3 78 */ mr r5, r30 +/* 800169E4 00013944 38 80 00 02 */ li r4, 2 +/* 800169E8 00013948 48 26 FA 05 */ bl SetMoveState__7CPlayerFQ27NPlayer20EPlayerMovementStateR13CStateManager +/* 800169EC 0001394C 48 00 03 38 */ b lbl_80016D24 +/* 800169F0 00013950 38 00 00 02 */ li r0, 2 +/* 800169F4 00013954 90 1B 02 AC */ stw r0, 0x2ac(r27) +/* 800169F8 00013958 48 00 03 2C */ b lbl_80016D24 +/* 800169FC 0001395C 38 00 00 03 */ li r0, 3 +/* 80016A00 00013960 90 1B 02 AC */ stw r0, 0x2ac(r27) +/* 80016A04 00013964 48 00 03 20 */ b lbl_80016D24 +/* 80016A08 00013968 38 00 00 00 */ li r0, 0 +/* 80016A0C 0001396C 90 1B 02 AC */ stw r0, 0x2ac(r27) +/* 80016A10 00013970 48 00 03 14 */ b lbl_80016D24 +/* 80016A14 00013974 38 00 00 07 */ li r0, 7 +/* 80016A18 00013978 90 1B 02 AC */ stw r0, 0x2ac(r27) +/* 80016A1C 0001397C 48 00 03 08 */ b lbl_80016D24 +/* 80016A20 00013980 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80016A24 00013984 38 A1 00 30 */ addi r5, r1, 0x30 +/* 80016A28 00013988 38 80 00 01 */ li r4, 1 +/* 80016A2C 0001398C B0 01 00 30 */ sth r0, 0x30(r1) +/* 80016A30 00013990 48 03 C8 91 */ bl SetInFluid__6CActorFb9TUniqueId +/* 80016A34 00013994 7F 63 DB 78 */ mr r3, r27 +/* 80016A38 00013998 7F C4 F3 78 */ mr r4, r30 +/* 80016A3C 0001399C 48 26 E4 8D */ bl UpdateSubmerged__7CPlayerFRC13CStateManager +/* 80016A40 000139A0 7F 63 DB 78 */ mr r3, r27 +/* 80016A44 000139A4 48 26 E3 9D */ bl GetEyeHeight__7CPlayerCFv +/* 80016A48 000139A8 C0 02 81 68 */ lfs f0, lbl_805A9E88@sda21(r2) +/* 80016A4C 000139AC 38 60 00 00 */ li r3, 0 +/* 80016A50 000139B0 80 AD 80 D0 */ lwz r5, lbl_805A6C90@sda21(r13) +/* 80016A54 000139B4 38 80 00 01 */ li r4, 1 +/* 80016A58 000139B8 EF C0 00 72 */ fmuls f30, f0, f1 +/* 80016A5C 000139BC 48 37 34 99 */ bl __shl2i +/* 80016A60 000139C0 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) +/* 80016A64 000139C4 39 00 00 01 */ li r8, 1 +/* 80016A68 000139C8 38 00 00 00 */ li r0, 0 +/* 80016A6C 000139CC C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) +/* 80016A70 000139D0 90 81 00 A4 */ stw r4, 0xa4(r1) +/* 80016A74 000139D4 FC 20 F0 90 */ fmr f1, f30 +/* 80016A78 000139D8 7F C4 F3 78 */ mr r4, r30 +/* 80016A7C 000139DC 38 A1 00 78 */ addi r5, r1, 0x78 +/* 80016A80 000139E0 90 61 00 A0 */ stw r3, 0xa0(r1) +/* 80016A84 000139E4 38 61 00 B8 */ addi r3, r1, 0xb8 +/* 80016A88 000139E8 38 C1 00 6C */ addi r6, r1, 0x6c +/* 80016A8C 000139EC 90 01 00 AC */ stw r0, 0xac(r1) +/* 80016A90 000139F0 38 E1 00 A0 */ addi r7, r1, 0xa0 +/* 80016A94 000139F4 90 01 00 A8 */ stw r0, 0xa8(r1) +/* 80016A98 000139F8 91 01 00 B0 */ stw r8, 0xb0(r1) +/* 80016A9C 000139FC D0 41 00 6C */ stfs f2, 0x6c(r1) +/* 80016AA0 00013A00 D0 41 00 70 */ stfs f2, 0x70(r1) +/* 80016AA4 00013A04 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 80016AA8 00013A08 C0 7B 00 60 */ lfs f3, 0x60(r27) +/* 80016AAC 00013A0C C0 5B 00 50 */ lfs f2, 0x50(r27) +/* 80016AB0 00013A10 C0 1B 00 40 */ lfs f0, 0x40(r27) +/* 80016AB4 00013A14 91 01 00 98 */ stw r8, 0x98(r1) +/* 80016AB8 00013A18 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 80016ABC 00013A1C D0 41 00 7C */ stfs f2, 0x7c(r1) +/* 80016AC0 00013A20 D0 61 00 80 */ stfs f3, 0x80(r1) +/* 80016AC4 00013A24 48 03 64 D5 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter +/* 80016AC8 00013A28 88 01 00 D8 */ lbz r0, 0xd8(r1) +/* 80016ACC 00013A2C 28 00 00 00 */ cmplwi r0, 0 +/* 80016AD0 00013A30 40 82 02 54 */ bne lbl_80016D24 +/* 80016AD4 00013A34 C0 62 82 24 */ lfs f3, lbl_805A9F44@sda21(r2) +/* 80016AD8 00013A38 7F 63 DB 78 */ mr r3, r27 +/* 80016ADC 00013A3C C0 5B 01 3C */ lfs f2, 0x13c(r27) +/* 80016AE0 00013A40 38 81 00 60 */ addi r4, r1, 0x60 +/* 80016AE4 00013A44 C0 3B 01 40 */ lfs f1, 0x140(r27) +/* 80016AE8 00013A48 C0 1B 01 38 */ lfs f0, 0x138(r27) +/* 80016AEC 00013A4C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80016AF0 00013A50 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80016AF4 00013A54 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80016AF8 00013A58 D0 41 00 64 */ stfs f2, 0x64(r1) +/* 80016AFC 00013A5C D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80016B00 00013A60 D0 21 00 68 */ stfs f1, 0x68(r1) +/* 80016B04 00013A64 48 10 41 9D */ bl SetVelocityWR__13CPhysicsActorFRC9CVector3f +/* 80016B08 00013A68 C0 62 82 24 */ lfs f3, lbl_805A9F44@sda21(r2) +/* 80016B0C 00013A6C C0 1B 00 FC */ lfs f0, 0xfc(r27) +/* 80016B10 00013A70 C0 5B 01 00 */ lfs f2, 0x100(r27) +/* 80016B14 00013A74 C0 3B 01 04 */ lfs f1, 0x104(r27) +/* 80016B18 00013A78 EC 03 00 32 */ fmuls f0, f3, f0 +/* 80016B1C 00013A7C EC 43 00 B2 */ fmuls f2, f3, f2 +/* 80016B20 00013A80 EC 23 00 72 */ fmuls f1, f3, f1 +/* 80016B24 00013A84 D0 1B 00 FC */ stfs f0, 0xfc(r27) +/* 80016B28 00013A88 D0 5B 01 00 */ stfs f2, 0x100(r27) +/* 80016B2C 00013A8C D0 3B 01 04 */ stfs f1, 0x104(r27) +/* 80016B30 00013A90 48 00 01 F4 */ b lbl_80016D24 +/* 80016B34 00013A94 7F C4 F3 78 */ mr r4, r30 +/* 80016B38 00013A98 48 26 E3 91 */ bl UpdateSubmerged__7CPlayerFRC13CStateManager +/* 80016B3C 00013A9C 7F 63 DB 78 */ mr r3, r27 +/* 80016B40 00013AA0 48 26 E4 CD */ bl CheckSubmerged__7CPlayerCFv +/* 80016B44 00013AA4 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016B48 00013AA8 41 82 00 B0 */ beq lbl_80016BF8 +/* 80016B4C 00013AAC 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80016B50 00013AB0 38 80 00 15 */ li r4, 0x15 +/* 80016B54 00013AB4 80 63 00 00 */ lwz r3, 0(r3) +/* 80016B58 00013AB8 48 07 AF 69 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80016B5C 00013ABC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016B60 00013AC0 40 82 00 98 */ bne lbl_80016BF8 +/* 80016B64 00013AC4 A0 1B 00 C4 */ lhz r0, 0xc4(r27) +/* 80016B68 00013AC8 7F C3 F3 78 */ mr r3, r30 +/* 80016B6C 00013ACC 38 81 00 2C */ addi r4, r1, 0x2c +/* 80016B70 00013AD0 B0 01 00 28 */ sth r0, 0x28(r1) +/* 80016B74 00013AD4 B0 01 00 2C */ sth r0, 0x2c(r1) +/* 80016B78 00013AD8 48 03 5A 2D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80016B7C 00013ADC 7C 64 1B 78 */ mr r4, r3 +/* 80016B80 00013AE0 38 61 00 58 */ addi r3, r1, 0x58 +/* 80016B84 00013AE4 48 08 FC DD */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 80016B88 00013AE8 80 63 00 04 */ lwz r3, 4(r3) +/* 80016B8C 00013AEC 28 03 00 00 */ cmplwi r3, 0 +/* 80016B90 00013AF0 41 82 00 68 */ beq lbl_80016BF8 +/* 80016B94 00013AF4 80 63 01 B4 */ lwz r3, 0x1b4(r3) +/* 80016B98 00013AF8 80 03 00 44 */ lwz r0, 0x44(r3) +/* 80016B9C 00013AFC 2C 00 00 03 */ cmpwi r0, 3 +/* 80016BA0 00013B00 41 82 00 50 */ beq lbl_80016BF0 +/* 80016BA4 00013B04 40 80 00 1C */ bge lbl_80016BC0 +/* 80016BA8 00013B08 2C 00 00 01 */ cmpwi r0, 1 +/* 80016BAC 00013B0C 41 82 00 38 */ beq lbl_80016BE4 +/* 80016BB0 00013B10 40 80 00 28 */ bge lbl_80016BD8 +/* 80016BB4 00013B14 2C 00 00 00 */ cmpwi r0, 0 +/* 80016BB8 00013B18 40 80 00 14 */ bge lbl_80016BCC +/* 80016BBC 00013B1C 48 00 00 3C */ b lbl_80016BF8 +lbl_80016BC0: +/* 80016BC0 00013B20 2C 00 00 05 */ cmpwi r0, 5 +/* 80016BC4 00013B24 41 82 00 14 */ beq lbl_80016BD8 +/* 80016BC8 00013B28 48 00 00 30 */ b lbl_80016BF8 +lbl_80016BCC: +/* 80016BCC 00013B2C 38 00 00 00 */ li r0, 0 +/* 80016BD0 00013B30 90 1B 02 B0 */ stw r0, 0x2b0(r27) +/* 80016BD4 00013B34 48 00 00 24 */ b lbl_80016BF8 +lbl_80016BD8: +/* 80016BD8 00013B38 38 00 00 05 */ li r0, 5 +/* 80016BDC 00013B3C 90 1B 02 AC */ stw r0, 0x2ac(r27) +/* 80016BE0 00013B40 48 00 00 18 */ b lbl_80016BF8 +lbl_80016BE4: +/* 80016BE4 00013B44 38 00 00 00 */ li r0, 0 +/* 80016BE8 00013B48 90 1B 02 B0 */ stw r0, 0x2b0(r27) +/* 80016BEC 00013B4C 48 00 00 0C */ b lbl_80016BF8 +lbl_80016BF0: +/* 80016BF0 00013B50 38 00 00 06 */ li r0, 6 +/* 80016BF4 00013B54 90 1B 02 AC */ stw r0, 0x2ac(r27) +lbl_80016BF8: +/* 80016BF8 00013B58 88 1B 09 C5 */ lbz r0, 0x9c5(r27) +/* 80016BFC 00013B5C 38 60 00 01 */ li r3, 1 +/* 80016C00 00013B60 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80016C04 00013B64 98 1B 09 C5 */ stb r0, 0x9c5(r27) +/* 80016C08 00013B68 48 00 01 1C */ b lbl_80016D24 +/* 80016C0C 00013B6C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80016C10 00013B70 38 A1 00 24 */ addi r5, r1, 0x24 +/* 80016C14 00013B74 38 80 00 00 */ li r4, 0 +/* 80016C18 00013B78 B0 01 00 24 */ sth r0, 0x24(r1) +/* 80016C1C 00013B7C 48 03 C6 A5 */ bl SetInFluid__6CActorFb9TUniqueId +/* 80016C20 00013B80 7F 63 DB 78 */ mr r3, r27 +/* 80016C24 00013B84 7F C4 F3 78 */ mr r4, r30 +/* 80016C28 00013B88 48 26 E2 A1 */ bl UpdateSubmerged__7CPlayerFRC13CStateManager +/* 80016C2C 00013B8C 48 00 00 F8 */ b lbl_80016D24 +/* 80016C30 00013B90 80 CD A1 18 */ lwz r6, gpTweakPlayer@sda21(r13) +/* 80016C34 00013B94 7F C5 F3 78 */ mr r5, r30 +/* 80016C38 00013B98 38 80 00 09 */ li r4, 9 +/* 80016C3C 00013B9C C0 06 01 FC */ lfs f0, 0x1fc(r6) +/* 80016C40 00013BA0 D0 1B 03 78 */ stfs f0, 0x378(r27) +/* 80016C44 00013BA4 48 16 45 59 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 80016C48 00013BA8 48 00 00 DC */ b lbl_80016D24 +/* 80016C4C 00013BAC A0 1D 00 00 */ lhz r0, 0(r29) +/* 80016C50 00013BB0 B0 1B 08 2E */ sth r0, 0x82e(r27) +/* 80016C54 00013BB4 48 00 00 D0 */ b lbl_80016D24 +/* 80016C58 00013BB8 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80016C5C 00013BBC 7F C3 F3 78 */ mr r3, r30 +/* 80016C60 00013BC0 38 81 00 20 */ addi r4, r1, 0x20 +/* 80016C64 00013BC4 B0 01 00 20 */ sth r0, 0x20(r1) +/* 80016C68 00013BC8 48 03 59 3D */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80016C6C 00013BCC 7C 64 1B 78 */ mr r4, r3 +/* 80016C70 00013BD0 38 61 00 50 */ addi r3, r1, 0x50 +/* 80016C74 00013BD4 48 09 80 55 */ bl "__ct__31TCastToPtr<17CEnergyProjectile>FP7CEntity" +/* 80016C78 00013BD8 80 63 00 04 */ lwz r3, 4(r3) +/* 80016C7C 00013BDC 28 03 00 00 */ cmplwi r3, 0 +/* 80016C80 00013BE0 41 82 00 A4 */ beq lbl_80016D24 +/* 80016C84 00013BE4 80 03 00 E8 */ lwz r0, 0xe8(r3) +/* 80016C88 00013BE8 54 00 04 62 */ rlwinm r0, r0, 0, 0x11, 0x11 +/* 80016C8C 00013BEC 2C 00 40 00 */ cmpwi r0, 0x4000 +/* 80016C90 00013BF0 40 82 00 94 */ bne lbl_80016D24 +/* 80016C94 00013BF4 A0 1B 00 08 */ lhz r0, 8(r27) +/* 80016C98 00013BF8 38 81 00 1C */ addi r4, r1, 0x1c +/* 80016C9C 00013BFC C0 43 01 54 */ lfs f2, 0x154(r3) +/* 80016CA0 00013C00 C0 22 81 50 */ lfs f1, lbl_805A9E70@sda21(r2) +/* 80016CA4 00013C04 B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80016CA8 00013C08 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80016CAC 00013C0C B0 01 00 18 */ sth r0, 0x18(r1) +/* 80016CB0 00013C10 80 63 00 00 */ lwz r3, 0(r3) +/* 80016CB4 00013C14 38 63 01 88 */ addi r3, r3, 0x188 +/* 80016CB8 00013C18 48 1A 9E 81 */ bl AddSource__19CStaticInterferenceF9TUniqueId +/* 80016CBC 00013C1C 48 00 00 68 */ b lbl_80016D24 +/* 80016CC0 00013C20 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 80016CC4 00013C24 80 63 00 00 */ lwz r3, 0(r3) +/* 80016CC8 00013C28 48 07 AC AD */ bl ResetVisor__12CPlayerStateFv +/* 80016CCC 00013C2C 80 1B 07 34 */ lwz r0, 0x734(r27) +/* 80016CD0 00013C30 83 5B 07 3C */ lwz r26, 0x73c(r27) +/* 80016CD4 00013C34 54 00 18 38 */ slwi r0, r0, 3 +/* 80016CD8 00013C38 7F FA 02 14 */ add r31, r26, r0 +/* 80016CDC 00013C3C 93 41 00 38 */ stw r26, 0x38(r1) +/* 80016CE0 00013C40 93 E1 00 40 */ stw r31, 0x40(r1) +/* 80016CE4 00013C44 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 80016CE8 00013C48 93 41 00 34 */ stw r26, 0x34(r1) +/* 80016CEC 00013C4C 48 00 00 28 */ b lbl_80016D14 +lbl_80016CF0: +/* 80016CF0 00013C50 28 1A 00 00 */ cmplwi r26, 0 +/* 80016CF4 00013C54 41 82 00 1C */ beq lbl_80016D10 +/* 80016CF8 00013C58 88 1A 00 00 */ lbz r0, 0(r26) +/* 80016CFC 00013C5C 28 00 00 00 */ cmplwi r0, 0 +/* 80016D00 00013C60 41 82 00 10 */ beq lbl_80016D10 +/* 80016D04 00013C64 80 7A 00 04 */ lwz r3, 4(r26) +/* 80016D08 00013C68 38 80 00 01 */ li r4, 1 +/* 80016D0C 00013C6C 48 0F FD 41 */ bl __dt__10CModelDataFv +lbl_80016D10: +/* 80016D10 00013C70 3B 5A 00 08 */ addi r26, r26, 8 +lbl_80016D14: +/* 80016D14 00013C74 7C 1A F8 40 */ cmplw r26, r31 +/* 80016D18 00013C78 40 82 FF D8 */ bne lbl_80016CF0 +/* 80016D1C 00013C7C 38 00 00 00 */ li r0, 0 +/* 80016D20 00013C80 90 1B 07 34 */ stw r0, 0x734(r27) +lbl_80016D24: +/* 80016D24 00013C84 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80016D28 00013C88 7F 84 E3 78 */ mr r4, r28 +/* 80016D2C 00013C8C 7F C6 F3 78 */ mr r6, r30 +/* 80016D30 00013C90 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80016D34 00013C94 B0 01 00 14 */ sth r0, 0x14(r1) +/* 80016D38 00013C98 80 7B 04 90 */ lwz r3, 0x490(r27) +/* 80016D3C 00013C9C 48 02 57 B1 */ bl AcceptScriptMsg__10CPlayerGunF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80016D40 00013CA0 A0 1D 00 00 */ lhz r0, 0(r29) +/* 80016D44 00013CA4 7F 84 E3 78 */ mr r4, r28 +/* 80016D48 00013CA8 7F C6 F3 78 */ mr r6, r30 +/* 80016D4C 00013CAC 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80016D50 00013CB0 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80016D54 00013CB4 80 7B 07 68 */ lwz r3, 0x768(r27) +/* 80016D58 00013CB8 48 0D EA B5 */ bl AcceptScriptMsg__10CMorphBallF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80016D5C 00013CBC A0 1D 00 00 */ lhz r0, 0(r29) +/* 80016D60 00013CC0 7F 63 DB 78 */ mr r3, r27 +/* 80016D64 00013CC4 7F 84 E3 78 */ mr r4, r28 +/* 80016D68 00013CC8 7F C6 F3 78 */ mr r6, r30 +/* 80016D6C 00013CCC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80016D70 00013CD0 38 A1 00 0C */ addi r5, r1, 0xc +/* 80016D74 00013CD4 48 03 C8 A1 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager +/* 80016D78 00013CD8 E3 E1 01 F8 */ psq_l f31, 504(r1), 0, qr0 +/* 80016D7C 00013CDC CB E1 01 F0 */ lfd f31, 0x1f0(r1) +/* 80016D80 00013CE0 E3 C1 01 E8 */ psq_l f30, 488(r1), 0, qr0 +/* 80016D84 00013CE4 CB C1 01 E0 */ lfd f30, 0x1e0(r1) +/* 80016D88 00013CE8 BB 41 01 C8 */ lmw r26, 0x1c8(r1) +/* 80016D8C 00013CEC 80 01 02 04 */ lwz r0, 0x204(r1) +/* 80016D90 00013CF0 7C 08 03 A6 */ mtlr r0 +/* 80016D94 00013CF4 38 21 02 00 */ addi r1, r1, 0x200 +/* 80016D98 00013CF8 4E 80 00 20 */ blr + +.global UpdateCameraTimers__7CPlayerFfRC11CFinalInput +UpdateCameraTimers__7CPlayerFfRC11CFinalInput: +/* 80016D9C 00013CFC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80016DA0 00013D00 7C 08 02 A6 */ mflr r0 +/* 80016DA4 00013D04 90 01 00 24 */ stw r0, 0x24(r1) +/* 80016DA8 00013D08 DB E1 00 10 */ stfd f31, 0x10(r1) +/* 80016DAC 00013D0C F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 +/* 80016DB0 00013D10 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80016DB4 00013D14 93 C1 00 08 */ stw r30, 8(r1) +/* 80016DB8 00013D18 7C 7E 1B 78 */ mr r30, r3 +/* 80016DBC 00013D1C FF E0 08 90 */ fmr f31, f1 +/* 80016DC0 00013D20 88 03 03 DC */ lbz r0, 0x3dc(r3) +/* 80016DC4 00013D24 7C 9F 23 78 */ mr r31, r4 +/* 80016DC8 00013D28 28 00 00 00 */ cmplwi r0, 0 +/* 80016DCC 00013D2C 40 82 00 10 */ bne lbl_80016DDC +/* 80016DD0 00013D30 88 1E 03 DD */ lbz r0, 0x3dd(r30) +/* 80016DD4 00013D34 28 00 00 00 */ cmplwi r0, 0 +/* 80016DD8 00013D38 41 82 00 14 */ beq lbl_80016DEC +lbl_80016DDC: +/* 80016DDC 00013D3C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016DE0 00013D40 D0 1E 02 94 */ stfs f0, 0x294(r30) +/* 80016DE4 00013D44 D0 1E 02 9C */ stfs f0, 0x29c(r30) +/* 80016DE8 00013D48 48 00 00 DC */ b lbl_80016EC4 +lbl_80016DEC: +/* 80016DEC 00013D4C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80016DF0 00013D50 88 03 02 2A */ lbz r0, 0x22a(r3) +/* 80016DF4 00013D54 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80016DF8 00013D58 41 82 00 44 */ beq lbl_80016E3C +/* 80016DFC 00013D5C 38 60 00 0B */ li r3, 0xb +/* 80016E00 00013D60 4B FF 5A 75 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80016E04 00013D64 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016E08 00013D68 40 82 00 18 */ bne lbl_80016E20 +/* 80016E0C 00013D6C 7F E4 FB 78 */ mr r4, r31 +/* 80016E10 00013D70 38 60 00 0C */ li r3, 0xc +/* 80016E14 00013D74 4B FF 5A 61 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80016E18 00013D78 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016E1C 00013D7C 41 82 00 20 */ beq lbl_80016E3C +lbl_80016E20: +/* 80016E20 00013D80 C0 3E 02 88 */ lfs f1, 0x288(r30) +/* 80016E24 00013D84 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016E28 00013D88 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80016E2C 00013D8C 40 81 00 10 */ ble lbl_80016E3C +/* 80016E30 00013D90 38 00 00 01 */ li r0, 1 +/* 80016E34 00013D94 98 1E 02 A4 */ stb r0, 0x2a4(r30) +/* 80016E38 00013D98 48 00 00 8C */ b lbl_80016EC4 +lbl_80016E3C: +/* 80016E3C 00013D9C 7F E4 FB 78 */ mr r4, r31 +/* 80016E40 00013DA0 38 60 00 0A */ li r3, 0xa +/* 80016E44 00013DA4 4B FF 59 8D */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80016E48 00013DA8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016E4C 00013DAC 41 82 00 10 */ beq lbl_80016E5C +/* 80016E50 00013DB0 80 7E 02 98 */ lwz r3, 0x298(r30) +/* 80016E54 00013DB4 38 03 00 01 */ addi r0, r3, 1 +/* 80016E58 00013DB8 90 1E 02 98 */ stw r0, 0x298(r30) +lbl_80016E5C: +/* 80016E5C 00013DBC 7F E4 FB 78 */ mr r4, r31 +/* 80016E60 00013DC0 38 60 00 0A */ li r3, 0xa +/* 80016E64 00013DC4 4B FF 5A 11 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80016E68 00013DC8 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016E6C 00013DCC 41 82 00 34 */ beq lbl_80016EA0 +/* 80016E70 00013DD0 C0 3E 02 94 */ lfs f1, 0x294(r30) +/* 80016E74 00013DD4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016E78 00013DD8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80016E7C 00013DDC 40 81 00 24 */ ble lbl_80016EA0 +/* 80016E80 00013DE0 88 1E 02 A4 */ lbz r0, 0x2a4(r30) +/* 80016E84 00013DE4 28 00 00 00 */ cmplwi r0, 0 +/* 80016E88 00013DE8 40 82 00 18 */ bne lbl_80016EA0 +/* 80016E8C 00013DEC 80 1E 02 98 */ lwz r0, 0x298(r30) +/* 80016E90 00013DF0 2C 00 00 02 */ cmpwi r0, 2 +/* 80016E94 00013DF4 41 81 00 0C */ bgt lbl_80016EA0 +/* 80016E98 00013DF8 EC 01 F8 2A */ fadds f0, f1, f31 +/* 80016E9C 00013DFC D0 1E 02 94 */ stfs f0, 0x294(r30) +lbl_80016EA0: +/* 80016EA0 00013E00 C0 3E 02 9C */ lfs f1, 0x29c(r30) +/* 80016EA4 00013E04 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016EA8 00013E08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80016EAC 00013E0C 40 81 00 18 */ ble lbl_80016EC4 +/* 80016EB0 00013E10 88 1E 02 A4 */ lbz r0, 0x2a4(r30) +/* 80016EB4 00013E14 28 00 00 00 */ cmplwi r0, 0 +/* 80016EB8 00013E18 40 82 00 0C */ bne lbl_80016EC4 +/* 80016EBC 00013E1C EC 01 F8 2A */ fadds f0, f1, f31 +/* 80016EC0 00013E20 D0 1E 02 9C */ stfs f0, 0x29c(r30) +lbl_80016EC4: +/* 80016EC4 00013E24 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 +/* 80016EC8 00013E28 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80016ECC 00013E2C CB E1 00 10 */ lfd f31, 0x10(r1) +/* 80016ED0 00013E30 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80016ED4 00013E34 83 C1 00 08 */ lwz r30, 8(r1) +/* 80016ED8 00013E38 7C 08 03 A6 */ mtlr r0 +/* 80016EDC 00013E3C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80016EE0 00013E40 4E 80 00 20 */ blr + +.global UpdateFreeLookState__7CPlayerFRC11CFinalInputfR13CStateManager +UpdateFreeLookState__7CPlayerFRC11CFinalInputfR13CStateManager: +/* 80016EE4 00013E44 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80016EE8 00013E48 7C 08 02 A6 */ mflr r0 +/* 80016EEC 00013E4C 90 01 00 64 */ stw r0, 0x64(r1) +/* 80016EF0 00013E50 DB E1 00 50 */ stfd f31, 0x50(r1) +/* 80016EF4 00013E54 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 +/* 80016EF8 00013E58 DB C1 00 40 */ stfd f30, 0x40(r1) +/* 80016EFC 00013E5C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 +/* 80016F00 00013E60 DB A1 00 30 */ stfd f29, 0x30(r1) +/* 80016F04 00013E64 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 +/* 80016F08 00013E68 93 E1 00 2C */ stw r31, 0x2c(r1) +/* 80016F0C 00013E6C 93 C1 00 28 */ stw r30, 0x28(r1) +/* 80016F10 00013E70 93 A1 00 24 */ stw r29, 0x24(r1) +/* 80016F14 00013E74 7C 7D 1B 78 */ mr r29, r3 +/* 80016F18 00013E78 FF A0 08 90 */ fmr f29, f1 +/* 80016F1C 00013E7C 80 03 03 04 */ lwz r0, 0x304(r3) +/* 80016F20 00013E80 7C 9E 23 78 */ mr r30, r4 +/* 80016F24 00013E84 7C BF 2B 78 */ mr r31, r5 +/* 80016F28 00013E88 2C 00 00 04 */ cmpwi r0, 4 +/* 80016F2C 00013E8C 41 82 00 30 */ beq lbl_80016F5C +/* 80016F30 00013E90 48 00 32 E5 */ bl IsMorphBallTransitioning__7CPlayerCFv +/* 80016F34 00013E94 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016F38 00013E98 40 82 00 24 */ bne lbl_80016F5C +/* 80016F3C 00013E9C 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80016F40 00013EA0 2C 00 00 00 */ cmpwi r0, 0 +/* 80016F44 00013EA4 40 82 00 18 */ bne lbl_80016F5C +/* 80016F48 00013EA8 80 1D 03 B8 */ lwz r0, 0x3b8(r29) +/* 80016F4C 00013EAC 2C 00 00 00 */ cmpwi r0, 0 +/* 80016F50 00013EB0 41 82 00 38 */ beq lbl_80016F88 +/* 80016F54 00013EB4 2C 00 00 01 */ cmpwi r0, 1 +/* 80016F58 00013EB8 41 82 00 30 */ beq lbl_80016F88 +lbl_80016F5C: +/* 80016F5C 00013EBC 38 60 00 00 */ li r3, 0 +/* 80016F60 00013EC0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80016F64 00013EC4 98 7D 03 DC */ stb r3, 0x3dc(r29) +/* 80016F68 00013EC8 98 7D 03 DD */ stb r3, 0x3dd(r29) +/* 80016F6C 00013ECC 98 7D 03 DE */ stb r3, 0x3de(r29) +/* 80016F70 00013ED0 D0 1D 03 E8 */ stfs f0, 0x3e8(r29) +/* 80016F74 00013ED4 D0 1D 03 F0 */ stfs f0, 0x3f0(r29) +/* 80016F78 00013ED8 88 1D 09 C4 */ lbz r0, 0x9c4(r29) +/* 80016F7C 00013EDC 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 80016F80 00013EE0 98 1D 09 C4 */ stb r0, 0x9c4(r29) +/* 80016F84 00013EE4 48 00 02 E4 */ b lbl_80017268 +lbl_80016F88: +/* 80016F88 00013EE8 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80016F8C 00013EEC 88 63 02 28 */ lbz r3, 0x228(r3) +/* 80016F90 00013EF0 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f +/* 80016F94 00013EF4 41 82 01 CC */ beq lbl_80017160 +/* 80016F98 00013EF8 54 60 F7 FF */ rlwinm. r0, r3, 0x1e, 0x1f, 0x1f +/* 80016F9C 00013EFC 41 82 00 2C */ beq lbl_80016FC8 +/* 80016FA0 00013F00 7F C4 F3 78 */ mr r4, r30 +/* 80016FA4 00013F04 38 60 00 21 */ li r3, 0x21 +/* 80016FA8 00013F08 4B FF 58 CD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80016FAC 00013F0C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016FB0 00013F10 41 82 00 18 */ beq lbl_80016FC8 +/* 80016FB4 00013F14 7F C4 F3 78 */ mr r4, r30 +/* 80016FB8 00013F18 38 60 00 22 */ li r3, 0x22 +/* 80016FBC 00013F1C 4B FF 58 B9 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80016FC0 00013F20 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016FC4 00013F24 40 82 00 3C */ bne lbl_80017000 +lbl_80016FC8: +/* 80016FC8 00013F28 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80016FCC 00013F2C 88 03 02 28 */ lbz r0, 0x228(r3) +/* 80016FD0 00013F30 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f +/* 80016FD4 00013F34 40 82 01 6C */ bne lbl_80017140 +/* 80016FD8 00013F38 7F C4 F3 78 */ mr r4, r30 +/* 80016FDC 00013F3C 38 60 00 21 */ li r3, 0x21 +/* 80016FE0 00013F40 4B FF 58 95 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80016FE4 00013F44 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016FE8 00013F48 40 82 00 18 */ bne lbl_80017000 +/* 80016FEC 00013F4C 7F C4 F3 78 */ mr r4, r30 +/* 80016FF0 00013F50 38 60 00 22 */ li r3, 0x22 +/* 80016FF4 00013F54 4B FF 58 81 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80016FF8 00013F58 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80016FFC 00013F5C 41 82 01 44 */ beq lbl_80017140 +lbl_80017000: +/* 80017000 00013F60 88 1D 03 DD */ lbz r0, 0x3dd(r29) +/* 80017004 00013F64 28 00 00 00 */ cmplwi r0, 0 +/* 80017008 00013F68 40 82 00 A4 */ bne lbl_800170AC +/* 8001700C 00013F6C 80 9F 08 70 */ lwz r4, 0x870(r31) +/* 80017010 00013F70 38 61 00 08 */ addi r3, r1, 8 +/* 80017014 00013F74 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017018 00013F78 80 84 00 7C */ lwz r4, 0x7c(r4) +/* 8001701C 00013F7C C3 A4 00 58 */ lfs f29, 0x58(r4) +/* 80017020 00013F80 C3 C4 00 48 */ lfs f30, 0x48(r4) +/* 80017024 00013F84 C3 E4 00 38 */ lfs f31, 0x38(r4) +/* 80017028 00013F88 D3 A1 00 10 */ stfs f29, 0x10(r1) +/* 8001702C 00013F8C D3 E1 00 08 */ stfs f31, 8(r1) +/* 80017030 00013F90 D3 C1 00 0C */ stfs f30, 0xc(r1) +/* 80017034 00013F94 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 80017038 00013F98 D0 1D 03 E4 */ stfs f0, 0x3e4(r29) +/* 8001703C 00013F9C 48 2F D6 BD */ bl CanBeNormalized__9CVector3fCFv +/* 80017040 00013FA0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80017044 00013FA4 41 82 00 68 */ beq lbl_800170AC +/* 80017048 00013FA8 38 61 00 08 */ addi r3, r1, 8 +/* 8001704C 00013FAC 48 2F D8 AD */ bl Normalize__9CVector3fFv +/* 80017050 00013FB0 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80017054 00013FB4 C0 41 00 08 */ lfs f2, 8(r1) +/* 80017058 00013FB8 EC 3E 00 32 */ fmuls f1, f30, f0 +/* 8001705C 00013FBC C0 61 00 10 */ lfs f3, 0x10(r1) +/* 80017060 00013FC0 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) +/* 80017064 00013FC4 EC 3F 08 BA */ fmadds f1, f31, f2, f1 +/* 80017068 00013FC8 EC 3D 08 FA */ fmadds f1, f29, f3, f1 +/* 8001706C 00013FCC FC 40 0A 10 */ fabs f2, f1 +/* 80017070 00013FD0 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80017074 00013FD4 40 81 00 14 */ ble lbl_80017088 +/* 80017078 00013FD8 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) +/* 8001707C 00013FDC C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) +/* 80017080 00013FE0 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 80017084 00013FE4 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_80017088: +/* 80017088 00013FE8 48 37 DB A5 */ bl acos +/* 8001708C 00013FEC FC 20 08 18 */ frsp f1, f1 +/* 80017090 00013FF0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017094 00013FF4 FC 1D 00 40 */ fcmpo cr0, f29, f0 +/* 80017098 00013FF8 D0 3D 03 EC */ stfs f1, 0x3ec(r29) +/* 8001709C 00013FFC 40 80 00 10 */ bge lbl_800170AC +/* 800170A0 00014000 C0 1D 03 EC */ lfs f0, 0x3ec(r29) +/* 800170A4 00014004 FC 00 00 50 */ fneg f0, f0 +/* 800170A8 00014008 D0 1D 03 EC */ stfs f0, 0x3ec(r29) +lbl_800170AC: +/* 800170AC 0001400C 38 00 00 01 */ li r0, 1 +/* 800170B0 00014010 7F C4 F3 78 */ mr r4, r30 +/* 800170B4 00014014 98 1D 03 DC */ stb r0, 0x3dc(r29) +/* 800170B8 00014018 38 60 00 06 */ li r3, 6 +/* 800170BC 0001401C 98 1D 03 DD */ stb r0, 0x3dd(r29) +/* 800170C0 00014020 4B FF 58 59 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800170C4 00014024 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 800170C8 00014028 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800170CC 0001402C 4C 41 13 82 */ cror 2, 1, 2 +/* 800170D0 00014030 41 82 00 58 */ beq lbl_80017128 +/* 800170D4 00014034 7F C4 F3 78 */ mr r4, r30 +/* 800170D8 00014038 38 60 00 07 */ li r3, 7 +/* 800170DC 0001403C 4B FF 58 3D */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800170E0 00014040 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 800170E4 00014044 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800170E8 00014048 4C 41 13 82 */ cror 2, 1, 2 +/* 800170EC 0001404C 41 82 00 3C */ beq lbl_80017128 +/* 800170F0 00014050 7F C4 F3 78 */ mr r4, r30 +/* 800170F4 00014054 38 60 00 09 */ li r3, 9 +/* 800170F8 00014058 4B FF 58 21 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800170FC 0001405C C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 80017100 00014060 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80017104 00014064 4C 41 13 82 */ cror 2, 1, 2 +/* 80017108 00014068 41 82 00 20 */ beq lbl_80017128 +/* 8001710C 0001406C 7F C4 F3 78 */ mr r4, r30 +/* 80017110 00014070 38 60 00 08 */ li r3, 8 +/* 80017114 00014074 4B FF 58 05 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80017118 00014078 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 8001711C 0001407C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80017120 00014080 4C 41 13 82 */ cror 2, 1, 2 +/* 80017124 00014084 40 82 00 10 */ bne lbl_80017134 +lbl_80017128: +/* 80017128 00014088 38 00 00 01 */ li r0, 1 +/* 8001712C 0001408C 98 1D 03 DE */ stb r0, 0x3de(r29) +/* 80017130 00014090 48 00 01 2C */ b lbl_8001725C +lbl_80017134: +/* 80017134 00014094 38 00 00 00 */ li r0, 0 +/* 80017138 00014098 98 1D 03 DE */ stb r0, 0x3de(r29) +/* 8001713C 0001409C 48 00 01 20 */ b lbl_8001725C +lbl_80017140: +/* 80017140 000140A0 38 00 00 00 */ li r0, 0 +/* 80017144 000140A4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017148 000140A8 98 1D 03 DC */ stb r0, 0x3dc(r29) +/* 8001714C 000140AC 98 1D 03 DD */ stb r0, 0x3dd(r29) +/* 80017150 000140B0 98 1D 03 DE */ stb r0, 0x3de(r29) +/* 80017154 000140B4 D0 1D 03 E8 */ stfs f0, 0x3e8(r29) +/* 80017158 000140B8 D0 1D 03 F0 */ stfs f0, 0x3f0(r29) +/* 8001715C 000140BC 48 00 01 00 */ b lbl_8001725C +lbl_80017160: +/* 80017160 000140C0 7F C4 F3 78 */ mr r4, r30 +/* 80017164 000140C4 38 60 00 06 */ li r3, 6 +/* 80017168 000140C8 4B FF 57 B1 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8001716C 000140CC C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 80017170 000140D0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80017174 000140D4 4C 41 13 82 */ cror 2, 1, 2 +/* 80017178 000140D8 41 82 00 58 */ beq lbl_800171D0 +/* 8001717C 000140DC 7F C4 F3 78 */ mr r4, r30 +/* 80017180 000140E0 38 60 00 07 */ li r3, 7 +/* 80017184 000140E4 4B FF 57 95 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80017188 000140E8 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 8001718C 000140EC FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80017190 000140F0 4C 41 13 82 */ cror 2, 1, 2 +/* 80017194 000140F4 41 82 00 3C */ beq lbl_800171D0 +/* 80017198 000140F8 7F C4 F3 78 */ mr r4, r30 +/* 8001719C 000140FC 38 60 00 09 */ li r3, 9 +/* 800171A0 00014100 4B FF 57 79 */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800171A4 00014104 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 800171A8 00014108 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800171AC 0001410C 4C 41 13 82 */ cror 2, 1, 2 +/* 800171B0 00014110 41 82 00 20 */ beq lbl_800171D0 +/* 800171B4 00014114 7F C4 F3 78 */ mr r4, r30 +/* 800171B8 00014118 38 60 00 08 */ li r3, 8 +/* 800171BC 0001411C 4B FF 57 5D */ bl GetAnalogInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800171C0 00014120 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 800171C4 00014124 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800171C8 00014128 4C 41 13 82 */ cror 2, 1, 2 +/* 800171CC 0001412C 40 82 00 10 */ bne lbl_800171DC +lbl_800171D0: +/* 800171D0 00014130 38 00 00 01 */ li r0, 1 +/* 800171D4 00014134 98 1D 03 DE */ stb r0, 0x3de(r29) +/* 800171D8 00014138 48 00 00 0C */ b lbl_800171E4 +lbl_800171DC: +/* 800171DC 0001413C 38 00 00 00 */ li r0, 0 +/* 800171E0 00014140 98 1D 03 DE */ stb r0, 0x3de(r29) +lbl_800171E4: +/* 800171E4 00014144 38 00 00 00 */ li r0, 0 +/* 800171E8 00014148 98 1D 03 DD */ stb r0, 0x3dd(r29) +/* 800171EC 0001414C C0 1D 03 E4 */ lfs f0, 0x3e4(r29) +/* 800171F0 00014150 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 800171F4 00014154 FC 00 02 10 */ fabs f0, f0 +/* 800171F8 00014158 C0 23 01 44 */ lfs f1, 0x144(r3) +/* 800171FC 0001415C FC 00 00 18 */ frsp f0, f0 +/* 80017200 00014160 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80017204 00014164 40 80 00 48 */ bge lbl_8001724C +/* 80017208 00014168 C0 1D 03 EC */ lfs f0, 0x3ec(r29) +/* 8001720C 0001416C FC 00 02 10 */ fabs f0, f0 +/* 80017210 00014170 FC 00 00 18 */ frsp f0, f0 +/* 80017214 00014174 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80017218 00014178 40 80 00 34 */ bge lbl_8001724C +/* 8001721C 0001417C C0 3D 03 E0 */ lfs f1, 0x3e0(r29) +/* 80017220 00014180 C0 03 01 48 */ lfs f0, 0x148(r3) +/* 80017224 00014184 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80017228 00014188 40 81 00 18 */ ble lbl_80017240 +/* 8001722C 0001418C 98 1D 03 DC */ stb r0, 0x3dc(r29) +/* 80017230 00014190 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017234 00014194 D0 1D 03 E8 */ stfs f0, 0x3e8(r29) +/* 80017238 00014198 D0 1D 03 F0 */ stfs f0, 0x3f0(r29) +/* 8001723C 0001419C 48 00 00 20 */ b lbl_8001725C +lbl_80017240: +/* 80017240 000141A0 EC 01 E8 2A */ fadds f0, f1, f29 +/* 80017244 000141A4 D0 1D 03 E0 */ stfs f0, 0x3e0(r29) +/* 80017248 000141A8 48 00 00 14 */ b lbl_8001725C +lbl_8001724C: +/* 8001724C 000141AC 38 00 00 01 */ li r0, 1 +/* 80017250 000141B0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017254 000141B4 98 1D 03 DC */ stb r0, 0x3dc(r29) +/* 80017258 000141B8 D0 1D 03 E0 */ stfs f0, 0x3e0(r29) +lbl_8001725C: +/* 8001725C 000141BC 7F A3 EB 78 */ mr r3, r29 +/* 80017260 000141C0 7F C4 F3 78 */ mr r4, r30 +/* 80017264 000141C4 48 00 12 3D */ bl UpdateCrosshairsState__7CPlayerFRC11CFinalInput +lbl_80017268: +/* 80017268 000141C8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 +/* 8001726C 000141CC CB E1 00 50 */ lfd f31, 0x50(r1) +/* 80017270 000141D0 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 +/* 80017274 000141D4 CB C1 00 40 */ lfd f30, 0x40(r1) +/* 80017278 000141D8 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 +/* 8001727C 000141DC CB A1 00 30 */ lfd f29, 0x30(r1) +/* 80017280 000141E0 83 E1 00 2C */ lwz r31, 0x2c(r1) +/* 80017284 000141E4 83 C1 00 28 */ lwz r30, 0x28(r1) +/* 80017288 000141E8 80 01 00 64 */ lwz r0, 0x64(r1) +/* 8001728C 000141EC 83 A1 00 24 */ lwz r29, 0x24(r1) +/* 80017290 000141F0 7C 08 03 A6 */ mtlr r0 +/* 80017294 000141F4 38 21 00 60 */ addi r1, r1, 0x60 +/* 80017298 000141F8 4E 80 00 20 */ blr + +.global SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager +SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager: +/* 8001729C 000141FC 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 800172A0 00014200 7C 08 02 A6 */ mflr r0 +/* 800172A4 00014204 90 01 00 44 */ stw r0, 0x44(r1) +/* 800172A8 00014208 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 800172AC 0001420C 7C BF 2B 78 */ mr r31, r5 +/* 800172B0 00014210 93 C1 00 38 */ stw r30, 0x38(r1) +/* 800172B4 00014214 7C 7E 1B 78 */ mr r30, r3 +/* 800172B8 00014218 93 A1 00 34 */ stw r29, 0x34(r1) +/* 800172BC 0001421C 80 03 02 F4 */ lwz r0, 0x2f4(r3) +/* 800172C0 00014220 7C 00 20 00 */ cmpw r0, r4 +/* 800172C4 00014224 41 82 01 14 */ beq lbl_800173D8 +/* 800172C8 00014228 90 9E 02 F4 */ stw r4, 0x2f4(r30) +/* 800172CC 0001422C 2C 04 00 02 */ cmpwi r4, 2 +/* 800172D0 00014230 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 800172D4 00014234 41 82 01 04 */ beq lbl_800173D8 +/* 800172D8 00014238 40 80 00 14 */ bge lbl_800172EC +/* 800172DC 0001423C 2C 04 00 00 */ cmpwi r4, 0 +/* 800172E0 00014240 41 82 00 1C */ beq lbl_800172FC +/* 800172E4 00014244 40 80 00 44 */ bge lbl_80017328 +/* 800172E8 00014248 48 00 00 F0 */ b lbl_800173D8 +lbl_800172EC: +/* 800172EC 0001424C 2C 04 00 04 */ cmpwi r4, 4 +/* 800172F0 00014250 41 82 00 90 */ beq lbl_80017380 +/* 800172F4 00014254 40 80 00 E4 */ bge lbl_800173D8 +/* 800172F8 00014258 48 00 00 5C */ b lbl_80017354 +lbl_800172FC: +/* 800172FC 0001425C 80 A3 00 7C */ lwz r5, 0x7c(r3) +/* 80017300 00014260 38 81 00 1C */ addi r4, r1, 0x1c +/* 80017304 00014264 A0 05 00 08 */ lhz r0, 8(r5) +/* 80017308 00014268 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8001730C 0001426C B0 01 00 1C */ sth r0, 0x1c(r1) +/* 80017310 00014270 4B FF 47 B5 */ bl SetCurrentCameraId__14CCameraManagerF9TUniqueIdR13CStateManager +/* 80017314 00014274 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80017318 00014278 7F E4 FB 78 */ mr r4, r31 +/* 8001731C 0001427C 38 A0 00 00 */ li r5, 0 +/* 80017320 00014280 48 0D E4 21 */ bl SetBallLightActive__10CMorphBallFR13CStateManagerb +/* 80017324 00014284 48 00 00 B4 */ b lbl_800173D8 +lbl_80017328: +/* 80017328 00014288 80 A3 00 80 */ lwz r5, 0x80(r3) +/* 8001732C 0001428C 38 81 00 14 */ addi r4, r1, 0x14 +/* 80017330 00014290 A0 05 00 08 */ lhz r0, 8(r5) +/* 80017334 00014294 B0 01 00 10 */ sth r0, 0x10(r1) +/* 80017338 00014298 B0 01 00 14 */ sth r0, 0x14(r1) +/* 8001733C 0001429C 4B FF 47 89 */ bl SetCurrentCameraId__14CCameraManagerF9TUniqueIdR13CStateManager +/* 80017340 000142A0 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80017344 000142A4 7F E4 FB 78 */ mr r4, r31 +/* 80017348 000142A8 38 A0 00 01 */ li r5, 1 +/* 8001734C 000142AC 48 0D E3 F5 */ bl SetBallLightActive__10CMorphBallFR13CStateManagerb +/* 80017350 000142B0 48 00 00 88 */ b lbl_800173D8 +lbl_80017354: +/* 80017354 000142B4 80 A3 00 80 */ lwz r5, 0x80(r3) +/* 80017358 000142B8 38 81 00 0C */ addi r4, r1, 0xc +/* 8001735C 000142BC A0 05 00 08 */ lhz r0, 8(r5) +/* 80017360 000142C0 B0 01 00 08 */ sth r0, 8(r1) +/* 80017364 000142C4 B0 01 00 0C */ sth r0, 0xc(r1) +/* 80017368 000142C8 4B FF 47 5D */ bl SetCurrentCameraId__14CCameraManagerF9TUniqueIdR13CStateManager +/* 8001736C 000142CC 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80017370 000142D0 7F E4 FB 78 */ mr r4, r31 +/* 80017374 000142D4 38 A0 00 01 */ li r5, 1 +/* 80017378 000142D8 48 0D E3 C9 */ bl SetBallLightActive__10CMorphBallFR13CStateManagerb +/* 8001737C 000142DC 48 00 00 5C */ b lbl_800173D8 +lbl_80017380: +/* 80017380 000142E0 7F E4 FB 78 */ mr r4, r31 +/* 80017384 000142E4 3B A0 00 00 */ li r29, 0 +/* 80017388 000142E8 4B FF 47 91 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 8001738C 000142EC 7C 64 1B 78 */ mr r4, r3 +/* 80017390 000142F0 38 61 00 20 */ addi r3, r1, 0x20 +/* 80017394 000142F4 48 09 83 9D */ bl "__ct__30TCastToPtr<16CCinematicCamera>FR7CEntity" +/* 80017398 000142F8 80 83 00 04 */ lwz r4, 4(r3) +/* 8001739C 000142FC 28 04 00 00 */ cmplwi r4, 0 +/* 800173A0 00014300 41 82 00 28 */ beq lbl_800173C8 +/* 800173A4 00014304 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 800173A8 00014308 38 60 00 00 */ li r3, 0 +/* 800173AC 0001430C 2C 00 00 01 */ cmpwi r0, 1 +/* 800173B0 00014310 40 82 00 14 */ bne lbl_800173C4 +/* 800173B4 00014314 80 04 02 1C */ lwz r0, 0x21c(r4) +/* 800173B8 00014318 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 +/* 800173BC 0001431C 41 82 00 08 */ beq lbl_800173C4 +/* 800173C0 00014320 38 60 00 01 */ li r3, 1 +lbl_800173C4: +/* 800173C4 00014324 7C 7D 1B 78 */ mr r29, r3 +lbl_800173C8: +/* 800173C8 00014328 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 800173CC 0001432C 7F E4 FB 78 */ mr r4, r31 +/* 800173D0 00014330 57 A5 06 3E */ clrlwi r5, r29, 0x18 +/* 800173D4 00014334 48 0D E3 6D */ bl SetBallLightActive__10CMorphBallFR13CStateManagerb +lbl_800173D8: +/* 800173D8 00014338 80 01 00 44 */ lwz r0, 0x44(r1) +/* 800173DC 0001433C 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 800173E0 00014340 83 C1 00 38 */ lwz r30, 0x38(r1) +/* 800173E4 00014344 83 A1 00 34 */ lwz r29, 0x34(r1) +/* 800173E8 00014348 7C 08 03 A6 */ mtlr r0 +/* 800173EC 0001434C 38 21 00 40 */ addi r1, r1, 0x40 +/* 800173F0 00014350 4E 80 00 20 */ blr + +.global UpdateCameraState__7CPlayerFR13CStateManager +UpdateCameraState__7CPlayerFR13CStateManager: +/* 800173F4 00014354 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800173F8 00014358 7C 08 02 A6 */ mflr r0 +/* 800173FC 0001435C 90 01 00 14 */ stw r0, 0x14(r1) +/* 80017400 00014360 48 00 00 15 */ bl UpdateCinematicState__7CPlayerFR13CStateManager +/* 80017404 00014364 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80017408 00014368 7C 08 03 A6 */ mtlr r0 +/* 8001740C 0001436C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80017410 00014370 4E 80 00 20 */ blr + +.global UpdateCinematicState__7CPlayerFR13CStateManager +UpdateCinematicState__7CPlayerFR13CStateManager: +/* 80017414 00014374 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80017418 00014378 7C 08 02 A6 */ mflr r0 +/* 8001741C 0001437C 90 01 00 64 */ stw r0, 0x64(r1) +/* 80017420 00014380 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80017424 00014384 7C 9F 23 78 */ mr r31, r4 +/* 80017428 00014388 93 C1 00 58 */ stw r30, 0x58(r1) +/* 8001742C 0001438C 7C 7E 1B 78 */ mr r30, r3 +/* 80017430 00014390 80 64 08 70 */ lwz r3, 0x870(r4) +/* 80017434 00014394 4B FF 34 CD */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 80017438 00014398 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001743C 0001439C 41 82 00 54 */ beq lbl_80017490 +/* 80017440 000143A0 80 1E 02 F4 */ lwz r0, 0x2f4(r30) +/* 80017444 000143A4 2C 00 00 04 */ cmpwi r0, 4 +/* 80017448 000143A8 41 82 02 0C */ beq lbl_80017654 +/* 8001744C 000143AC 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80017450 000143B0 90 1E 02 FC */ stw r0, 0x2fc(r30) +/* 80017454 000143B4 80 1E 02 FC */ lwz r0, 0x2fc(r30) +/* 80017458 000143B8 2C 00 00 03 */ cmpwi r0, 3 +/* 8001745C 000143BC 40 82 00 0C */ bne lbl_80017468 +/* 80017460 000143C0 38 00 00 00 */ li r0, 0 +/* 80017464 000143C4 90 1E 02 FC */ stw r0, 0x2fc(r30) +lbl_80017468: +/* 80017468 000143C8 80 1E 02 FC */ lwz r0, 0x2fc(r30) +/* 8001746C 000143CC 2C 00 00 02 */ cmpwi r0, 2 +/* 80017470 000143D0 40 82 00 0C */ bne lbl_8001747C +/* 80017474 000143D4 38 00 00 01 */ li r0, 1 +/* 80017478 000143D8 90 1E 02 FC */ stw r0, 0x2fc(r30) +lbl_8001747C: +/* 8001747C 000143DC 7F C3 F3 78 */ mr r3, r30 +/* 80017480 000143E0 7F E5 FB 78 */ mr r5, r31 +/* 80017484 000143E4 38 80 00 04 */ li r4, 4 +/* 80017488 000143E8 4B FF FE 15 */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager +/* 8001748C 000143EC 48 00 01 C8 */ b lbl_80017654 +lbl_80017490: +/* 80017490 000143F0 80 1E 02 F4 */ lwz r0, 0x2f4(r30) +/* 80017494 000143F4 2C 00 00 04 */ cmpwi r0, 4 +/* 80017498 000143F8 40 82 01 BC */ bne lbl_80017654 +/* 8001749C 000143FC 80 7E 02 FC */ lwz r3, 0x2fc(r30) +/* 800174A0 00014400 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 800174A4 00014404 7C 03 00 00 */ cmpw r3, r0 +/* 800174A8 00014408 40 82 00 74 */ bne lbl_8001751C +/* 800174AC 0001440C 2C 03 00 01 */ cmpwi r3, 1 +/* 800174B0 00014410 41 82 00 14 */ beq lbl_800174C4 +/* 800174B4 00014414 40 80 01 A0 */ bge lbl_80017654 +/* 800174B8 00014418 2C 03 00 00 */ cmpwi r3, 0 +/* 800174BC 0001441C 40 80 00 1C */ bge lbl_800174D8 +/* 800174C0 00014420 48 00 01 94 */ b lbl_80017654 +lbl_800174C4: +/* 800174C4 00014424 7F C3 F3 78 */ mr r3, r30 +/* 800174C8 00014428 7F E5 FB 78 */ mr r5, r31 +/* 800174CC 0001442C 38 80 00 01 */ li r4, 1 +/* 800174D0 00014430 4B FF FD CD */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager +/* 800174D4 00014434 48 00 01 80 */ b lbl_80017654 +lbl_800174D8: +/* 800174D8 00014438 7F C3 F3 78 */ mr r3, r30 +/* 800174DC 0001443C 7F E5 FB 78 */ mr r5, r31 +/* 800174E0 00014440 38 80 00 00 */ li r4, 0 +/* 800174E4 00014444 4B FF FD B9 */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager +/* 800174E8 00014448 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 800174EC 0001444C 80 63 00 00 */ lwz r3, 0(r3) +/* 800174F0 00014450 80 03 00 14 */ lwz r0, 0x14(r3) +/* 800174F4 00014454 2C 00 00 02 */ cmpwi r0, 2 +/* 800174F8 00014458 41 82 01 5C */ beq lbl_80017654 +/* 800174FC 0001445C 7F C3 F3 78 */ mr r3, r30 +/* 80017500 00014460 7F E5 FB 78 */ mr r5, r31 +/* 80017504 00014464 38 9E 00 34 */ addi r4, r30, 0x34 +/* 80017508 00014468 48 00 19 C1 */ bl ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager +/* 8001750C 0001446C 7F C3 F3 78 */ mr r3, r30 +/* 80017510 00014470 7F E4 FB 78 */ mr r4, r31 +/* 80017514 00014474 48 00 2B 99 */ bl DrawGun__7CPlayerFR13CStateManager +/* 80017518 00014478 48 00 01 3C */ b lbl_80017654 +lbl_8001751C: +/* 8001751C 0001447C 7F C3 F3 78 */ mr r3, r30 +/* 80017520 00014480 48 10 3E 59 */ bl Stop__13CPhysicsActorFv +/* 80017524 00014484 7F C3 F3 78 */ mr r3, r30 +/* 80017528 00014488 7F E5 FB 78 */ mr r5, r31 +/* 8001752C 0001448C 38 80 00 01 */ li r4, 1 +/* 80017530 00014490 48 16 3C 6D */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 80017534 00014494 80 1E 02 FC */ lwz r0, 0x2fc(r30) +/* 80017538 00014498 2C 00 00 01 */ cmpwi r0, 1 +/* 8001753C 0001449C 41 82 00 C4 */ beq lbl_80017600 +/* 80017540 000144A0 40 80 01 14 */ bge lbl_80017654 +/* 80017544 000144A4 2C 00 00 00 */ cmpwi r0, 0 +/* 80017548 000144A8 40 80 00 08 */ bge lbl_80017550 +/* 8001754C 000144AC 48 00 01 08 */ b lbl_80017654 +lbl_80017550: +/* 80017550 000144B0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80017554 000144B4 7F C3 F3 78 */ mr r3, r30 +/* 80017558 000144B8 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 8001755C 000144BC 7F E4 FB 78 */ mr r4, r31 +/* 80017560 000144C0 C0 46 00 00 */ lfs f2, 0(r6) +/* 80017564 000144C4 38 A1 00 14 */ addi r5, r1, 0x14 +/* 80017568 000144C8 C0 26 00 04 */ lfs f1, 4(r6) +/* 8001756C 000144CC C0 06 00 08 */ lfs f0, 8(r6) +/* 80017570 000144D0 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 80017574 000144D4 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80017578 000144D8 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 8001757C 000144DC 4B FF B5 19 */ bl CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f +/* 80017580 000144E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80017584 000144E4 41 82 00 D0 */ beq lbl_80017654 +/* 80017588 000144E8 C0 3E 00 50 */ lfs f1, 0x50(r30) +/* 8001758C 000144EC 7F C3 F3 78 */ mr r3, r30 +/* 80017590 000144F0 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 80017594 000144F4 38 81 00 08 */ addi r4, r1, 8 +/* 80017598 000144F8 C0 7E 00 60 */ lfs f3, 0x60(r30) +/* 8001759C 000144FC C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 800175A0 00014500 EC 81 00 2A */ fadds f4, f1, f0 +/* 800175A4 00014504 C0 3E 00 40 */ lfs f1, 0x40(r30) +/* 800175A8 00014508 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 800175AC 0001450C EC 43 10 2A */ fadds f2, f3, f2 +/* 800175B0 00014510 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 800175B4 00014514 EC 01 00 2A */ fadds f0, f1, f0 +/* 800175B8 00014518 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 800175BC 0001451C D0 01 00 08 */ stfs f0, 8(r1) +/* 800175C0 00014520 48 03 B8 CD */ bl SetTranslation__6CActorFRC9CVector3f +/* 800175C4 00014524 7F C3 F3 78 */ mr r3, r30 +/* 800175C8 00014528 7F E4 FB 78 */ mr r4, r31 +/* 800175CC 0001452C 48 26 B7 51 */ bl LeaveMorphBallState__7CPlayerFR13CStateManager +/* 800175D0 00014530 7F C3 F3 78 */ mr r3, r30 +/* 800175D4 00014534 7F E5 FB 78 */ mr r5, r31 +/* 800175D8 00014538 38 80 00 00 */ li r4, 0 +/* 800175DC 0001453C 4B FF FC C1 */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager +/* 800175E0 00014540 7F C3 F3 78 */ mr r3, r30 +/* 800175E4 00014544 7F E5 FB 78 */ mr r5, r31 +/* 800175E8 00014548 38 9E 00 34 */ addi r4, r30, 0x34 +/* 800175EC 0001454C 48 00 18 DD */ bl ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager +/* 800175F0 00014550 7F C3 F3 78 */ mr r3, r30 +/* 800175F4 00014554 7F E4 FB 78 */ mr r4, r31 +/* 800175F8 00014558 48 00 2A B5 */ bl DrawGun__7CPlayerFR13CStateManager +/* 800175FC 0001455C 48 00 00 58 */ b lbl_80017654 +lbl_80017600: +/* 80017600 00014560 7F C3 F3 78 */ mr r3, r30 +/* 80017604 00014564 7F E4 FB 78 */ mr r4, r31 +/* 80017608 00014568 48 26 B8 E9 */ bl EnterMorphBallState__7CPlayerFR13CStateManager +/* 8001760C 0001456C 7F C3 F3 78 */ mr r3, r30 +/* 80017610 00014570 7F E4 FB 78 */ mr r4, r31 +/* 80017614 00014574 48 26 BA 19 */ bl ActivateMorphBallCamera__7CPlayerFR13CStateManager +/* 80017618 00014578 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 8001761C 0001457C 7F E4 FB 78 */ mr r4, r31 +/* 80017620 00014580 4B FF 1D F1 */ bl SetupBallCamera__14CCameraManagerFR13CStateManager +/* 80017624 00014584 80 BF 08 70 */ lwz r5, 0x870(r31) +/* 80017628 00014588 7F C4 F3 78 */ mr r4, r30 +/* 8001762C 0001458C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80017630 00014590 83 C5 00 80 */ lwz r30, 0x80(r5) +/* 80017634 00014594 48 26 E0 B5 */ bl CreateTransformFromMovementDirection__7CPlayerCFv +/* 80017638 00014598 7F C3 F3 78 */ mr r3, r30 +/* 8001763C 0001459C 7F E5 FB 78 */ mr r5, r31 +/* 80017640 000145A0 81 9E 00 00 */ lwz r12, 0(r30) +/* 80017644 000145A4 38 81 00 20 */ addi r4, r1, 0x20 +/* 80017648 000145A8 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 8001764C 000145AC 7D 89 03 A6 */ mtctr r12 +/* 80017650 000145B0 4E 80 04 21 */ bctrl +lbl_80017654: +/* 80017654 000145B4 80 01 00 64 */ lwz r0, 0x64(r1) +/* 80017658 000145B8 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 8001765C 000145BC 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 80017660 000145C0 7C 08 03 A6 */ mtlr r0 +/* 80017664 000145C4 38 21 00 60 */ addi r1, r1, 0x60 +/* 80017668 000145C8 4E 80 00 20 */ blr + +.global SetSpawnedMorphBallState__7CPlayerFQ27CPlayer21EPlayerMorphBallStateR13CStateManager +SetSpawnedMorphBallState__7CPlayerFQ27CPlayer21EPlayerMorphBallStateR13CStateManager: +/* 8001766C 000145CC 94 21 FF A0 */ stwu r1, -0x60(r1) +/* 80017670 000145D0 7C 08 02 A6 */ mflr r0 +/* 80017674 000145D4 90 01 00 64 */ stw r0, 0x64(r1) +/* 80017678 000145D8 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 8001767C 000145DC 7C 7F 1B 78 */ mr r31, r3 +/* 80017680 000145E0 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80017684 000145E4 7C BE 2B 78 */ mr r30, r5 +/* 80017688 000145E8 90 83 02 FC */ stw r4, 0x2fc(r3) +/* 8001768C 000145EC 38 80 00 04 */ li r4, 4 +/* 80017690 000145F0 4B FF FC 0D */ bl SetCameraState__7CPlayerFQ27CPlayer18EPlayerCameraStateR13CStateManager +/* 80017694 000145F4 80 7F 02 FC */ lwz r3, 0x2fc(r31) +/* 80017698 000145F8 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 8001769C 000145FC 7C 03 00 00 */ cmpw r3, r0 +/* 800176A0 00014600 41 82 01 2C */ beq lbl_800177CC +/* 800176A4 00014604 7F E3 FB 78 */ mr r3, r31 +/* 800176A8 00014608 48 10 3C D1 */ bl Stop__13CPhysicsActorFv +/* 800176AC 0001460C 7F E3 FB 78 */ mr r3, r31 +/* 800176B0 00014610 7F C5 F3 78 */ mr r5, r30 +/* 800176B4 00014614 38 80 00 01 */ li r4, 1 +/* 800176B8 00014618 48 16 3A E5 */ bl SetOrbitRequest__7CPlayerF19EPlayerOrbitRequestR13CStateManager +/* 800176BC 0001461C 80 1F 02 FC */ lwz r0, 0x2fc(r31) +/* 800176C0 00014620 2C 00 00 01 */ cmpwi r0, 1 +/* 800176C4 00014624 41 82 00 B4 */ beq lbl_80017778 +/* 800176C8 00014628 40 80 01 04 */ bge lbl_800177CC +/* 800176CC 0001462C 2C 00 00 00 */ cmpwi r0, 0 +/* 800176D0 00014630 40 80 00 08 */ bge lbl_800176D8 +/* 800176D4 00014634 48 00 00 F8 */ b lbl_800177CC +lbl_800176D8: +/* 800176D8 00014638 3C 80 80 5A */ lis r4, skZero3f@ha +/* 800176DC 0001463C 7F E3 FB 78 */ mr r3, r31 +/* 800176E0 00014640 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 800176E4 00014644 7F C4 F3 78 */ mr r4, r30 +/* 800176E8 00014648 C0 46 00 00 */ lfs f2, 0(r6) +/* 800176EC 0001464C 38 A1 00 14 */ addi r5, r1, 0x14 +/* 800176F0 00014650 C0 26 00 04 */ lfs f1, 4(r6) +/* 800176F4 00014654 C0 06 00 08 */ lfs f0, 8(r6) +/* 800176F8 00014658 D0 41 00 14 */ stfs f2, 0x14(r1) +/* 800176FC 0001465C D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80017700 00014660 D0 01 00 1C */ stfs f0, 0x1c(r1) +/* 80017704 00014664 4B FF B3 91 */ bl CanLeaveMorphBallState__7CPlayerCFR13CStateManagerR9CVector3f +/* 80017708 00014668 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001770C 0001466C 41 82 00 C0 */ beq lbl_800177CC +/* 80017710 00014670 C0 3F 00 50 */ lfs f1, 0x50(r31) +/* 80017714 00014674 7F E3 FB 78 */ mr r3, r31 +/* 80017718 00014678 C0 01 00 18 */ lfs f0, 0x18(r1) +/* 8001771C 0001467C 38 81 00 08 */ addi r4, r1, 8 +/* 80017720 00014680 C0 7F 00 60 */ lfs f3, 0x60(r31) +/* 80017724 00014684 C0 41 00 1C */ lfs f2, 0x1c(r1) +/* 80017728 00014688 EC 81 00 2A */ fadds f4, f1, f0 +/* 8001772C 0001468C C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 80017730 00014690 C0 01 00 14 */ lfs f0, 0x14(r1) +/* 80017734 00014694 EC 43 10 2A */ fadds f2, f3, f2 +/* 80017738 00014698 D0 81 00 0C */ stfs f4, 0xc(r1) +/* 8001773C 0001469C EC 01 00 2A */ fadds f0, f1, f0 +/* 80017740 000146A0 D0 41 00 10 */ stfs f2, 0x10(r1) +/* 80017744 000146A4 D0 01 00 08 */ stfs f0, 8(r1) +/* 80017748 000146A8 48 03 B7 45 */ bl SetTranslation__6CActorFRC9CVector3f +/* 8001774C 000146AC 7F E3 FB 78 */ mr r3, r31 +/* 80017750 000146B0 7F C4 F3 78 */ mr r4, r30 +/* 80017754 000146B4 48 26 B5 C9 */ bl LeaveMorphBallState__7CPlayerFR13CStateManager +/* 80017758 000146B8 7F E3 FB 78 */ mr r3, r31 +/* 8001775C 000146BC 7F C5 F3 78 */ mr r5, r30 +/* 80017760 000146C0 38 9F 00 34 */ addi r4, r31, 0x34 +/* 80017764 000146C4 48 00 17 65 */ bl ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager +/* 80017768 000146C8 7F E3 FB 78 */ mr r3, r31 +/* 8001776C 000146CC 7F C4 F3 78 */ mr r4, r30 +/* 80017770 000146D0 48 00 29 3D */ bl DrawGun__7CPlayerFR13CStateManager +/* 80017774 000146D4 48 00 00 58 */ b lbl_800177CC +lbl_80017778: +/* 80017778 000146D8 7F E3 FB 78 */ mr r3, r31 +/* 8001777C 000146DC 7F C4 F3 78 */ mr r4, r30 +/* 80017780 000146E0 48 26 B7 71 */ bl EnterMorphBallState__7CPlayerFR13CStateManager +/* 80017784 000146E4 7F E3 FB 78 */ mr r3, r31 +/* 80017788 000146E8 7F C4 F3 78 */ mr r4, r30 +/* 8001778C 000146EC 48 26 B8 A1 */ bl ActivateMorphBallCamera__7CPlayerFR13CStateManager +/* 80017790 000146F0 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 80017794 000146F4 7F C4 F3 78 */ mr r4, r30 +/* 80017798 000146F8 4B FF 1C 79 */ bl SetupBallCamera__14CCameraManagerFR13CStateManager +/* 8001779C 000146FC 80 BE 08 70 */ lwz r5, 0x870(r30) +/* 800177A0 00014700 7F E4 FB 78 */ mr r4, r31 +/* 800177A4 00014704 38 61 00 20 */ addi r3, r1, 0x20 +/* 800177A8 00014708 83 E5 00 80 */ lwz r31, 0x80(r5) +/* 800177AC 0001470C 48 26 DF 3D */ bl CreateTransformFromMovementDirection__7CPlayerCFv +/* 800177B0 00014710 7F E3 FB 78 */ mr r3, r31 +/* 800177B4 00014714 7F C5 F3 78 */ mr r5, r30 +/* 800177B8 00014718 81 9F 00 00 */ lwz r12, 0(r31) +/* 800177BC 0001471C 38 81 00 20 */ addi r4, r1, 0x20 +/* 800177C0 00014720 81 8C 00 70 */ lwz r12, 0x70(r12) +/* 800177C4 00014724 7D 89 03 A6 */ mtctr r12 +/* 800177C8 00014728 4E 80 04 21 */ bctrl +lbl_800177CC: +/* 800177CC 0001472C 80 01 00 64 */ lwz r0, 0x64(r1) +/* 800177D0 00014730 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 800177D4 00014734 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 800177D8 00014738 7C 08 03 A6 */ mtlr r0 +/* 800177DC 0001473C 38 21 00 60 */ addi r1, r1, 0x60 +/* 800177E0 00014740 4E 80 00 20 */ blr + +.global SetMorphBallState__7CPlayerFQ27CPlayer21EPlayerMorphBallStateR13CStateManager +SetMorphBallState__7CPlayerFQ27CPlayer21EPlayerMorphBallStateR13CStateManager: +/* 800177E4 00014744 94 21 FF 70 */ stwu r1, -0x90(r1) +/* 800177E8 00014748 7C 08 02 A6 */ mflr r0 +/* 800177EC 0001474C 90 01 00 94 */ stw r0, 0x94(r1) +/* 800177F0 00014750 BE E1 00 6C */ stmw r23, 0x6c(r1) +/* 800177F4 00014754 7C 7D 1B 78 */ mr r29, r3 +/* 800177F8 00014758 7C BE 2B 78 */ mr r30, r5 +/* 800177FC 0001475C 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80017800 00014760 2C 00 00 01 */ cmpwi r0, 1 +/* 80017804 00014764 40 82 00 1C */ bne lbl_80017820 +/* 80017808 00014768 2C 04 00 01 */ cmpwi r4, 1 +/* 8001780C 0001476C 41 82 00 14 */ beq lbl_80017820 +/* 80017810 00014770 88 7D 09 C4 */ lbz r3, 0x9c4(r29) +/* 80017814 00014774 88 1D 09 C5 */ lbz r0, 0x9c5(r29) +/* 80017818 00014778 50 60 2E B4 */ rlwimi r0, r3, 5, 0x1a, 0x1a +/* 8001781C 0001477C 98 1D 09 C5 */ stb r0, 0x9c5(r29) +lbl_80017820: +/* 80017820 00014780 20 04 00 01 */ subfic r0, r4, 1 +/* 80017824 00014784 90 9D 02 F8 */ stw r4, 0x2f8(r29) +/* 80017828 00014788 7C 00 00 34 */ cntlzw r0, r0 +/* 8001782C 0001478C 2C 04 00 03 */ cmpwi r4, 3 +/* 80017830 00014790 54 00 DE 3E */ rlwinm r0, r0, 0x1b, 0x18, 0x1f +/* 80017834 00014794 98 1D 00 F9 */ stb r0, 0xf9(r29) +/* 80017838 00014798 41 82 02 14 */ beq lbl_80017A4C +/* 8001783C 0001479C 40 80 02 10 */ bge lbl_80017A4C +/* 80017840 000147A0 2C 04 00 00 */ cmpwi r4, 0 +/* 80017844 000147A4 41 82 00 0C */ beq lbl_80017850 +/* 80017848 000147A8 40 80 01 F8 */ bge lbl_80017A40 +/* 8001784C 000147AC 48 00 02 00 */ b lbl_80017A4C +lbl_80017850: +/* 80017850 000147B0 88 1D 09 C5 */ lbz r0, 0x9c5(r29) +/* 80017854 000147B4 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f +/* 80017858 000147B8 41 82 01 F4 */ beq lbl_80017A4C +/* 8001785C 000147BC 80 7E 08 70 */ lwz r3, 0x870(r30) +/* 80017860 000147C0 80 03 00 74 */ lwz r0, 0x74(r3) +/* 80017864 000147C4 2C 00 00 00 */ cmpwi r0, 0 +/* 80017868 000147C8 40 82 01 E4 */ bne lbl_80017A4C +/* 8001786C 000147CC 7F A3 EB 78 */ mr r3, r29 +/* 80017870 000147D0 7F C4 F3 78 */ mr r4, r30 +/* 80017874 000147D4 48 00 01 ED */ bl GetVisorRunoffEffect__FRC7CPlayerRC13CStateManager +/* 80017878 000147D8 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8001787C 000147DC 41 82 01 D0 */ beq lbl_80017A4C +/* 80017880 000147E0 88 1F 02 5C */ lbz r0, 0x25c(r31) +/* 80017884 000147E4 28 00 00 00 */ cmplwi r0, 0 +/* 80017888 000147E8 41 82 01 7C */ beq lbl_80017A04 +/* 8001788C 000147EC 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha +/* 80017890 000147F0 3B 80 00 00 */ li r28, 0 +/* 80017894 000147F4 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l +/* 80017898 000147F8 3B 60 00 00 */ li r27, 0 +/* 8001789C 000147FC 38 83 00 1D */ addi r4, r3, 0x1d +/* 800178A0 00014800 3A E0 00 00 */ li r23, 0 +/* 800178A4 00014804 38 60 01 10 */ li r3, 0x110 +/* 800178A8 00014808 38 A0 00 00 */ li r5, 0 +/* 800178AC 0001480C 48 2F DF C1 */ bl __nw__FUlPCcPCc +/* 800178B0 00014810 7C 78 1B 79 */ or. r24, r3, r3 +/* 800178B4 00014814 41 82 00 DC */ beq lbl_80017990 +/* 800178B8 00014818 38 00 00 01 */ li r0, 1 +/* 800178BC 0001481C 34 61 00 24 */ addic. r3, r1, 0x24 +/* 800178C0 00014820 98 01 00 2C */ stb r0, 0x2c(r1) +/* 800178C4 00014824 38 9F 02 50 */ addi r4, r31, 0x250 +/* 800178C8 00014828 41 82 00 08 */ beq lbl_800178D0 +/* 800178CC 0001482C 48 32 95 DD */ bl __ct__6CTokenFRC6CToken +lbl_800178D0: +/* 800178D0 00014830 38 00 00 00 */ li r0, 0 +/* 800178D4 00014834 7F C4 F3 78 */ mr r4, r30 +/* 800178D8 00014838 98 01 00 38 */ stb r0, 0x38(r1) +/* 800178DC 0001483C 38 61 00 10 */ addi r3, r1, 0x10 +/* 800178E0 00014840 3A E0 00 01 */ li r23, 1 +/* 800178E4 00014844 3B 60 00 01 */ li r27, 1 +/* 800178E8 00014848 48 03 57 F5 */ bl AllocateUniqueId__13CStateManagerFv +/* 800178EC 0001484C A0 01 00 10 */ lhz r0, 0x10(r1) +/* 800178F0 00014850 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha +/* 800178F4 00014854 38 83 C4 F8 */ addi r4, r3, lbl_803CC4F8@l +/* 800178F8 00014858 38 61 00 3C */ addi r3, r1, 0x3c +/* 800178FC 0001485C B0 01 00 14 */ sth r0, 0x14(r1) +/* 80017900 00014860 38 84 00 33 */ addi r4, r4, 0x33 +/* 80017904 00014864 4B FE D3 B5 */ bl string_l__4rstlFPCc +/* 80017908 00014868 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 8001790C 0001486C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80017910 00014870 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017914 00014874 3B 80 00 01 */ li r28, 1 +/* 80017918 00014878 FC 40 08 90 */ fmr f2, f1 +/* 8001791C 0001487C D0 21 00 4C */ stfs f1, 0x4c(r1) +/* 80017920 00014880 FC 60 08 90 */ fmr f3, f1 +/* 80017924 00014884 FC 80 08 90 */ fmr f4, f1 +/* 80017928 00014888 D0 21 00 50 */ stfs f1, 0x50(r1) +/* 8001792C 0001488C D0 21 00 54 */ stfs f1, 0x54(r1) +/* 80017930 00014890 D0 01 00 58 */ stfs f0, 0x58(r1) +/* 80017934 00014894 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 80017938 00014898 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 8001793C 0001489C 48 34 BA B1 */ bl __ct__6CColorFffff +/* 80017940 000148A0 7C 79 1B 78 */ mr r25, r3 +/* 80017944 000148A4 7F C3 F3 78 */ mr r3, r30 +/* 80017948 000148A8 48 11 88 E5 */ bl GetScaleForPOV__19CHUDBillboardEffectFRC13CStateManager +/* 8001794C 000148AC 7C 7A 1B 78 */ mr r26, r3 +/* 80017950 000148B0 7F C3 F3 78 */ mr r3, r30 +/* 80017954 000148B4 48 11 88 A5 */ bl GetNearClipDistance__19CHUDBillboardEffectFRC13CStateManager +/* 80017958 000148B8 38 61 00 4C */ addi r3, r1, 0x4c +/* 8001795C 000148BC 38 01 00 58 */ addi r0, r1, 0x58 +/* 80017960 000148C0 90 61 00 08 */ stw r3, 8(r1) +/* 80017964 000148C4 7F 03 C3 78 */ mr r3, r24 +/* 80017968 000148C8 7F 49 D3 78 */ mr r9, r26 +/* 8001796C 000148CC 7F 2A CB 78 */ mr r10, r25 +/* 80017970 000148D0 90 01 00 0C */ stw r0, 0xc(r1) +/* 80017974 000148D4 38 81 00 24 */ addi r4, r1, 0x24 +/* 80017978 000148D8 38 A1 00 30 */ addi r5, r1, 0x30 +/* 8001797C 000148DC 38 C1 00 14 */ addi r6, r1, 0x14 +/* 80017980 000148E0 39 01 00 3C */ addi r8, r1, 0x3c +/* 80017984 000148E4 38 E0 00 01 */ li r7, 1 +/* 80017988 000148E8 48 11 85 71 */ bl "__ct__19CHUDBillboardEffectFRCQ24rstl44optional_object<25TToken<15CGenDescription>>RCQ24rstl49optional_object<30TToken<20CElectricDescription>>9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>fRC9CVector3fRC6CColorRC9CVector3fRC9CVector3f" +/* 8001798C 000148EC 7C 78 1B 78 */ mr r24, r3 +lbl_80017990: +/* 80017990 000148F0 7F C3 F3 78 */ mr r3, r30 +/* 80017994 000148F4 7F 04 C3 78 */ mr r4, r24 +/* 80017998 000148F8 48 03 53 5D */ bl AddObject__13CStateManagerFP7CEntityQ213CStateManager18EScriptPersistence +/* 8001799C 000148FC 7E E0 07 75 */ extsb. r0, r23 +/* 800179A0 00014900 41 82 00 28 */ beq lbl_800179C8 +/* 800179A4 00014904 88 01 00 2C */ lbz r0, 0x2c(r1) +/* 800179A8 00014908 28 00 00 00 */ cmplwi r0, 0 +/* 800179AC 0001490C 41 82 00 14 */ beq lbl_800179C0 +/* 800179B0 00014910 34 61 00 24 */ addic. r3, r1, 0x24 +/* 800179B4 00014914 41 82 00 0C */ beq lbl_800179C0 +/* 800179B8 00014918 38 80 00 00 */ li r4, 0 +/* 800179BC 0001491C 48 32 94 85 */ bl __dt__6CTokenFv +lbl_800179C0: +/* 800179C0 00014920 38 00 00 00 */ li r0, 0 +/* 800179C4 00014924 98 01 00 2C */ stb r0, 0x2c(r1) +lbl_800179C8: +/* 800179C8 00014928 7F 60 07 75 */ extsb. r0, r27 +/* 800179CC 0001492C 41 82 00 28 */ beq lbl_800179F4 +/* 800179D0 00014930 88 01 00 38 */ lbz r0, 0x38(r1) +/* 800179D4 00014934 28 00 00 00 */ cmplwi r0, 0 +/* 800179D8 00014938 41 82 00 14 */ beq lbl_800179EC +/* 800179DC 0001493C 34 61 00 30 */ addic. r3, r1, 0x30 +/* 800179E0 00014940 41 82 00 0C */ beq lbl_800179EC +/* 800179E4 00014944 38 80 00 00 */ li r4, 0 +/* 800179E8 00014948 48 32 94 59 */ bl __dt__6CTokenFv +lbl_800179EC: +/* 800179EC 0001494C 38 00 00 00 */ li r0, 0 +/* 800179F0 00014950 98 01 00 38 */ stb r0, 0x38(r1) +lbl_800179F4: +/* 800179F4 00014954 7F 80 07 75 */ extsb. r0, r28 +/* 800179F8 00014958 41 82 00 0C */ beq lbl_80017A04 +/* 800179FC 0001495C 38 61 00 3C */ addi r3, r1, 0x3c +/* 80017A00 00014960 48 32 60 E1 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +lbl_80017A04: +/* 80017A04 00014964 A0 9F 02 62 */ lhz r4, 0x262(r31) +/* 80017A08 00014968 38 61 00 18 */ addi r3, r1, 0x18 +/* 80017A0C 0001496C A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80017A10 00014970 38 A0 00 7F */ li r5, 0x7f +/* 80017A14 00014974 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80017A18 00014978 38 C0 00 40 */ li r6, 0x40 +/* 80017A1C 0001497C 38 E0 00 00 */ li r7, 0 +/* 80017A20 00014980 39 20 00 00 */ li r9, 0 +/* 80017A24 00014984 48 2D 23 51 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80017A28 00014988 80 01 00 18 */ lwz r0, 0x18(r1) +/* 80017A2C 0001498C 7F A3 EB 78 */ mr r3, r29 +/* 80017A30 00014990 38 81 00 1C */ addi r4, r1, 0x1c +/* 80017A34 00014994 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80017A38 00014998 4B FF 97 55 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 80017A3C 0001499C 48 00 00 10 */ b lbl_80017A4C +lbl_80017A40: +/* 80017A40 000149A0 80 7D 07 68 */ lwz r3, 0x768(r29) +/* 80017A44 000149A4 7F C4 F3 78 */ mr r4, r30 +/* 80017A48 000149A8 48 0D 7C E5 */ bl LoadMorphBallModel__10CMorphBallFR13CStateManager +lbl_80017A4C: +/* 80017A4C 000149AC BA E1 00 6C */ lmw r23, 0x6c(r1) +/* 80017A50 000149B0 80 01 00 94 */ lwz r0, 0x94(r1) +/* 80017A54 000149B4 7C 08 03 A6 */ mtlr r0 +/* 80017A58 000149B8 38 21 00 90 */ addi r1, r1, 0x90 +/* 80017A5C 000149BC 4E 80 00 20 */ blr + +.global GetVisorRunoffEffect__FRC7CPlayerRC13CStateManager +GetVisorRunoffEffect__FRC7CPlayerRC13CStateManager: +/* 80017A60 000149C0 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80017A64 000149C4 7C 08 02 A6 */ mflr r0 +/* 80017A68 000149C8 90 01 00 24 */ stw r0, 0x24(r1) +/* 80017A6C 000149CC A0 A3 00 C4 */ lhz r5, 0xc4(r3) +/* 80017A70 000149D0 38 60 00 00 */ li r3, 0 +/* 80017A74 000149D4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80017A78 000149D8 7C 05 00 40 */ cmplw r5, r0 +/* 80017A7C 000149DC 41 82 00 28 */ beq lbl_80017AA4 +/* 80017A80 000149E0 B0 A1 00 08 */ sth r5, 8(r1) +/* 80017A84 000149E4 7C 83 23 78 */ mr r3, r4 +/* 80017A88 000149E8 38 81 00 0C */ addi r4, r1, 0xc +/* 80017A8C 000149EC B0 A1 00 0C */ sth r5, 0xc(r1) +/* 80017A90 000149F0 48 03 4B 15 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80017A94 000149F4 7C 64 1B 78 */ mr r4, r3 +/* 80017A98 000149F8 38 61 00 10 */ addi r3, r1, 0x10 +/* 80017A9C 000149FC 48 08 ED C5 */ bl "__ct__26TCastToPtr<12CScriptWater>FP7CEntity" +/* 80017AA0 00014A00 80 63 00 04 */ lwz r3, 4(r3) +lbl_80017AA4: +/* 80017AA4 00014A04 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80017AA8 00014A08 7C 08 03 A6 */ mtlr r0 +/* 80017AAC 00014A0C 38 21 00 20 */ addi r1, r1, 0x20 +/* 80017AB0 00014A10 4E 80 00 20 */ blr + +.global SetVisorSteam__7CPlayerFfffUib +SetVisorSteam__7CPlayerFfffUib: +/* 80017AB4 00014A14 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80017AB8 00014A18 7C 08 02 A6 */ mflr r0 +/* 80017ABC 00014A1C 38 63 07 A0 */ addi r3, r3, 0x7a0 +/* 80017AC0 00014A20 90 01 00 14 */ stw r0, 0x14(r1) +/* 80017AC4 00014A24 48 00 00 15 */ bl SetSteam__Q27CPlayer11CVisorSteamFfffUib +/* 80017AC8 00014A28 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80017ACC 00014A2C 7C 08 03 A6 */ mtlr r0 +/* 80017AD0 00014A30 38 21 00 10 */ addi r1, r1, 0x10 +/* 80017AD4 00014A34 4E 80 00 20 */ blr + +.global SetSteam__Q27CPlayer11CVisorSteamFfffUib +SetSteam__Q27CPlayer11CVisorSteamFfffUib: +/* 80017AD8 00014A38 80 C3 00 1C */ lwz r6, 0x1c(r3) +/* 80017ADC 00014A3C 3C 06 00 01 */ addis r0, r6, 1 +/* 80017AE0 00014A40 28 00 FF FF */ cmplwi r0, 0xffff +/* 80017AE4 00014A44 41 82 00 10 */ beq lbl_80017AF4 +/* 80017AE8 00014A48 C0 03 00 10 */ lfs f0, 0x10(r3) +/* 80017AEC 00014A4C FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80017AF0 00014A50 40 81 00 14 */ ble lbl_80017B04 +lbl_80017AF4: +/* 80017AF4 00014A54 D0 23 00 10 */ stfs f1, 0x10(r3) +/* 80017AF8 00014A58 D0 43 00 14 */ stfs f2, 0x14(r3) +/* 80017AFC 00014A5C D0 63 00 18 */ stfs f3, 0x18(r3) +/* 80017B00 00014A60 90 83 00 1C */ stw r4, 0x1c(r3) +lbl_80017B04: +/* 80017B04 00014A64 98 A3 00 28 */ stb r5, 0x28(r3) +/* 80017B08 00014A68 4E 80 00 20 */ blr + +.global Update__Q27CPlayer11CVisorSteamFf +Update__Q27CPlayer11CVisorSteamFf: +/* 80017B0C 00014A6C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80017B10 00014A70 7C 08 02 A6 */ mflr r0 +/* 80017B14 00014A74 90 01 00 34 */ stw r0, 0x34(r1) +/* 80017B18 00014A78 DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80017B1C 00014A7C F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80017B20 00014A80 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80017B24 00014A84 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80017B28 00014A88 7C 7E 1B 78 */ mr r30, r3 +/* 80017B2C 00014A8C FF E0 08 90 */ fmr f31, f1 +/* 80017B30 00014A90 80 63 00 1C */ lwz r3, 0x1c(r3) +/* 80017B34 00014A94 3C 03 00 01 */ addis r0, r3, 1 +/* 80017B38 00014A98 28 00 FF FF */ cmplwi r0, 0xffff +/* 80017B3C 00014A9C 41 82 00 28 */ beq lbl_80017B64 +/* 80017B40 00014AA0 C0 1E 00 10 */ lfs f0, 0x10(r30) +/* 80017B44 00014AA4 D0 1E 00 00 */ stfs f0, 0(r30) +/* 80017B48 00014AA8 C0 1E 00 14 */ lfs f0, 0x14(r30) +/* 80017B4C 00014AAC D0 1E 00 04 */ stfs f0, 4(r30) +/* 80017B50 00014AB0 C0 1E 00 18 */ lfs f0, 0x18(r30) +/* 80017B54 00014AB4 D0 1E 00 08 */ stfs f0, 8(r30) +/* 80017B58 00014AB8 80 1E 00 1C */ lwz r0, 0x1c(r30) +/* 80017B5C 00014ABC 90 1E 00 0C */ stw r0, 0xc(r30) +/* 80017B60 00014AC0 48 00 00 0C */ b lbl_80017B6C +lbl_80017B64: +/* 80017B64 00014AC4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017B68 00014AC8 D0 1E 00 00 */ stfs f0, 0(r30) +lbl_80017B6C: +/* 80017B6C 00014ACC 38 00 FF FF */ li r0, -1 +/* 80017B70 00014AD0 C0 22 82 28 */ lfs f1, lbl_805A9F48@sda21(r2) +/* 80017B74 00014AD4 90 1E 00 1C */ stw r0, 0x1c(r30) +/* 80017B78 00014AD8 C0 5E 00 20 */ lfs f2, 0x20(r30) +/* 80017B7C 00014ADC C0 1E 00 00 */ lfs f0, 0(r30) +/* 80017B80 00014AE0 EC 02 00 28 */ fsubs f0, f2, f0 +/* 80017B84 00014AE4 FC 00 02 10 */ fabs f0, f0 +/* 80017B88 00014AE8 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80017B8C 00014AEC 40 80 00 18 */ bge lbl_80017BA4 +/* 80017B90 00014AF0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017B94 00014AF4 EC 02 00 28 */ fsubs f0, f2, f0 +/* 80017B98 00014AF8 FC 00 02 10 */ fabs f0, f0 +/* 80017B9C 00014AFC FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80017BA0 00014B00 41 80 00 F4 */ blt lbl_80017C94 +lbl_80017BA4: +/* 80017BA4 00014B04 C0 5E 00 20 */ lfs f2, 0x20(r30) +/* 80017BA8 00014B08 C0 1E 00 00 */ lfs f0, 0(r30) +/* 80017BAC 00014B0C FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80017BB0 00014B10 40 81 00 5C */ ble lbl_80017C0C +/* 80017BB4 00014B14 C0 1E 00 24 */ lfs f0, 0x24(r30) +/* 80017BB8 00014B18 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80017BBC 00014B1C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80017BC0 00014B20 4C 40 13 82 */ cror 2, 0, 2 +/* 80017BC4 00014B24 40 82 00 2C */ bne lbl_80017BF0 +/* 80017BC8 00014B28 C0 1E 00 08 */ lfs f0, 8(r30) +/* 80017BCC 00014B2C EC 1F 00 24 */ fdivs f0, f31, f0 +/* 80017BD0 00014B30 EC 02 00 28 */ fsubs f0, f2, f0 +/* 80017BD4 00014B34 D0 1E 00 20 */ stfs f0, 0x20(r30) +/* 80017BD8 00014B38 C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 80017BDC 00014B3C C0 3E 00 00 */ lfs f1, 0(r30) +/* 80017BE0 00014B40 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80017BE4 00014B44 40 80 00 B0 */ bge lbl_80017C94 +/* 80017BE8 00014B48 D0 3E 00 20 */ stfs f1, 0x20(r30) +/* 80017BEC 00014B4C 48 00 00 A8 */ b lbl_80017C94 +lbl_80017BF0: +/* 80017BF0 00014B50 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80017BF4 00014B54 D0 1E 00 24 */ stfs f0, 0x24(r30) +/* 80017BF8 00014B58 C0 1E 00 24 */ lfs f0, 0x24(r30) +/* 80017BFC 00014B5C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80017C00 00014B60 40 80 00 94 */ bge lbl_80017C94 +/* 80017C04 00014B64 D0 3E 00 24 */ stfs f1, 0x24(r30) +/* 80017C08 00014B68 48 00 00 8C */ b lbl_80017C94 +lbl_80017C0C: +/* 80017C0C 00014B6C 80 DE 00 0C */ lwz r6, 0xc(r30) +/* 80017C10 00014B70 3C 60 54 58 */ lis r3, 0x54585452@ha +/* 80017C14 00014B74 38 03 54 52 */ addi r0, r3, 0x54585452@l +/* 80017C18 00014B78 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13) +/* 80017C1C 00014B7C 90 01 00 10 */ stw r0, 0x10(r1) +/* 80017C20 00014B80 38 61 00 08 */ addi r3, r1, 8 +/* 80017C24 00014B84 38 A1 00 10 */ addi r5, r1, 0x10 +/* 80017C28 00014B88 90 C1 00 14 */ stw r6, 0x14(r1) +/* 80017C2C 00014B8C 81 84 00 00 */ lwz r12, 0(r4) +/* 80017C30 00014B90 81 8C 00 0C */ lwz r12, 0xc(r12) +/* 80017C34 00014B94 7D 89 03 A6 */ mtctr r12 +/* 80017C38 00014B98 4E 80 04 21 */ bctrl +/* 80017C3C 00014B9C 80 A1 00 08 */ lwz r5, 8(r1) +/* 80017C40 00014BA0 38 61 00 08 */ addi r3, r1, 8 +/* 80017C44 00014BA4 38 80 FF FF */ li r4, -1 +/* 80017C48 00014BA8 80 A5 00 10 */ lwz r5, 0x10(r5) +/* 80017C4C 00014BAC 7C 05 00 D0 */ neg r0, r5 +/* 80017C50 00014BB0 7C 00 2B 78 */ or r0, r0, r5 +/* 80017C54 00014BB4 54 1F 0F FE */ srwi r31, r0, 0x1f +/* 80017C58 00014BB8 48 32 91 E9 */ bl __dt__6CTokenFv +/* 80017C5C 00014BBC 28 1F 00 00 */ cmplwi r31, 0 +/* 80017C60 00014BC0 41 82 00 34 */ beq lbl_80017C94 +/* 80017C64 00014BC4 C0 1E 00 04 */ lfs f0, 4(r30) +/* 80017C68 00014BC8 C0 3E 00 20 */ lfs f1, 0x20(r30) +/* 80017C6C 00014BCC EC 1F 00 24 */ fdivs f0, f31, f0 +/* 80017C70 00014BD0 EC 01 00 2A */ fadds f0, f1, f0 +/* 80017C74 00014BD4 D0 1E 00 20 */ stfs f0, 0x20(r30) +/* 80017C78 00014BD8 C0 1E 00 20 */ lfs f0, 0x20(r30) +/* 80017C7C 00014BDC C0 3E 00 00 */ lfs f1, 0(r30) +/* 80017C80 00014BE0 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80017C84 00014BE4 40 81 00 08 */ ble lbl_80017C8C +/* 80017C88 00014BE8 D0 3E 00 20 */ stfs f1, 0x20(r30) +lbl_80017C8C: +/* 80017C8C 00014BEC C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 80017C90 00014BF0 D0 1E 00 24 */ stfs f0, 0x24(r30) +lbl_80017C94: +/* 80017C94 00014BF4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 80017C98 00014BF8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 80017C9C 00014BFC CB E1 00 20 */ lfd f31, 0x20(r1) +/* 80017CA0 00014C00 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80017CA4 00014C04 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80017CA8 00014C08 7C 08 03 A6 */ mtlr r0 +/* 80017CAC 00014C0C 38 21 00 30 */ addi r1, r1, 0x30 +/* 80017CB0 00014C10 4E 80 00 20 */ blr + +.global __ct__Q27CPlayer11CVisorSteamFv +__ct__Q27CPlayer11CVisorSteamFv: +/* 80017CB4 00014C14 D0 23 00 00 */ stfs f1, 0(r3) +/* 80017CB8 00014C18 38 A0 FF FF */ li r5, -1 +/* 80017CBC 00014C1C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017CC0 00014C20 38 00 00 00 */ li r0, 0 +/* 80017CC4 00014C24 D0 43 00 04 */ stfs f2, 4(r3) +/* 80017CC8 00014C28 D0 63 00 08 */ stfs f3, 8(r3) +/* 80017CCC 00014C2C 90 83 00 0C */ stw r4, 0xc(r3) +/* 80017CD0 00014C30 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 80017CD4 00014C34 D0 03 00 14 */ stfs f0, 0x14(r3) +/* 80017CD8 00014C38 D0 03 00 18 */ stfs f0, 0x18(r3) +/* 80017CDC 00014C3C 90 A3 00 1C */ stw r5, 0x1c(r3) +/* 80017CE0 00014C40 D0 03 00 20 */ stfs f0, 0x20(r3) +/* 80017CE4 00014C44 D0 03 00 24 */ stfs f0, 0x24(r3) +/* 80017CE8 00014C48 98 03 00 28 */ stb r0, 0x28(r3) +/* 80017CEC 00014C4C 4E 80 00 20 */ blr + +.global UpdateFootstepSounds__7CPlayerFRC11CFinalInputR13CStateManagerf +UpdateFootstepSounds__7CPlayerFRC11CFinalInputR13CStateManagerf: +/* 80017CF0 00014C50 94 21 FF 60 */ stwu r1, -0xa0(r1) +/* 80017CF4 00014C54 7C 08 02 A6 */ mflr r0 +/* 80017CF8 00014C58 90 01 00 A4 */ stw r0, 0xa4(r1) +/* 80017CFC 00014C5C DB E1 00 90 */ stfd f31, 0x90(r1) +/* 80017D00 00014C60 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 +/* 80017D04 00014C64 DB C1 00 80 */ stfd f30, 0x80(r1) +/* 80017D08 00014C68 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 +/* 80017D0C 00014C6C DB A1 00 70 */ stfd f29, 0x70(r1) +/* 80017D10 00014C70 F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 +/* 80017D14 00014C74 DB 81 00 60 */ stfd f28, 0x60(r1) +/* 80017D18 00014C78 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 +/* 80017D1C 00014C7C 93 E1 00 5C */ stw r31, 0x5c(r1) +/* 80017D20 00014C80 93 C1 00 58 */ stw r30, 0x58(r1) +/* 80017D24 00014C84 93 A1 00 54 */ stw r29, 0x54(r1) +/* 80017D28 00014C88 93 81 00 50 */ stw r28, 0x50(r1) +/* 80017D2C 00014C8C 7C 7D 1B 78 */ mr r29, r3 +/* 80017D30 00014C90 FF 80 08 90 */ fmr f28, f1 +/* 80017D34 00014C94 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80017D38 00014C98 7C 9C 23 78 */ mr r28, r4 +/* 80017D3C 00014C9C 7C BE 2B 78 */ mr r30, r5 +/* 80017D40 00014CA0 2C 00 00 00 */ cmpwi r0, 0 +/* 80017D44 00014CA4 40 82 03 B0 */ bne lbl_800180F4 +/* 80017D48 00014CA8 80 1D 02 58 */ lwz r0, 0x258(r29) +/* 80017D4C 00014CAC 2C 00 00 00 */ cmpwi r0, 0 +/* 80017D50 00014CB0 40 82 03 A4 */ bne lbl_800180F4 +/* 80017D54 00014CB4 88 1D 03 DC */ lbz r0, 0x3dc(r29) +/* 80017D58 00014CB8 28 00 00 00 */ cmplwi r0, 0 +/* 80017D5C 00014CBC 40 82 03 98 */ bne lbl_800180F4 +/* 80017D60 00014CC0 88 1D 03 DD */ lbz r0, 0x3dd(r29) +/* 80017D64 00014CC4 28 00 00 00 */ cmplwi r0, 0 +/* 80017D68 00014CC8 40 82 03 8C */ bne lbl_800180F4 +/* 80017D6C 00014CCC C0 1D 07 8C */ lfs f0, 0x78c(r29) +/* 80017D70 00014CD0 3B E0 00 7F */ li r31, 0x7f +/* 80017D74 00014CD4 EC 00 E0 2A */ fadds f0, f0, f28 +/* 80017D78 00014CD8 D0 1D 07 8C */ stfs f0, 0x78c(r29) +/* 80017D7C 00014CDC 48 26 ED 01 */ bl TurnInput__7CPlayerCFRC11CFinalInput +/* 80017D80 00014CE0 FF E0 08 90 */ fmr f31, f1 +/* 80017D84 00014CE4 7F A3 EB 78 */ mr r3, r29 +/* 80017D88 00014CE8 7F 84 E3 78 */ mr r4, r28 +/* 80017D8C 00014CEC 48 26 EF 49 */ bl ForwardInput__7CPlayerCFRC11CFinalInputf +/* 80017D90 00014CF0 FC 20 0A 10 */ fabs f1, f1 +/* 80017D94 00014CF4 C0 02 81 90 */ lfs f0, lbl_805A9EB0@sda21(r2) +/* 80017D98 00014CF8 FC 40 FA 10 */ fabs f2, f31 +/* 80017D9C 00014CFC C3 A2 81 0C */ lfs f29, lbl_805A9E2C@sda21(r2) +/* 80017DA0 00014D00 FC 20 08 18 */ frsp f1, f1 +/* 80017DA4 00014D04 FC 40 10 18 */ frsp f2, f2 +/* 80017DA8 00014D08 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80017DAC 00014D0C 41 81 00 10 */ bgt lbl_80017DBC +/* 80017DB0 00014D10 80 1D 03 04 */ lwz r0, 0x304(r29) +/* 80017DB4 00014D14 2C 00 00 00 */ cmpwi r0, 0 +/* 80017DB8 00014D18 41 82 00 B0 */ beq lbl_80017E68 +lbl_80017DBC: +/* 80017DBC 00014D1C C0 1D 01 38 */ lfs f0, 0x138(r29) +/* 80017DC0 00014D20 38 61 00 38 */ addi r3, r1, 0x38 +/* 80017DC4 00014D24 D0 01 00 38 */ stfs f0, 0x38(r1) +/* 80017DC8 00014D28 C0 1D 01 3C */ lfs f0, 0x13c(r29) +/* 80017DCC 00014D2C D0 01 00 3C */ stfs f0, 0x3c(r1) +/* 80017DD0 00014D30 C0 1D 01 40 */ lfs f0, 0x140(r29) +/* 80017DD4 00014D34 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80017DD8 00014D38 48 2F CA E1 */ bl Magnitude__9CVector3fCFv +/* 80017DDC 00014D3C FF E0 08 90 */ fmr f31, f1 +/* 80017DE0 00014D40 7F A3 EB 78 */ mr r3, r29 +/* 80017DE4 00014D44 FC 20 E0 90 */ fmr f1, f28 +/* 80017DE8 00014D48 48 26 DB 21 */ bl GetActualFirstPersonMaxVelocity__7CPlayerCFv +/* 80017DEC 00014D4C EC 3F 08 24 */ fdivs f1, f31, f1 +/* 80017DF0 00014D50 C0 0D 80 CC */ lfs f0, lbl_805A6C8C@sda21(r13) +/* 80017DF4 00014D54 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80017DF8 00014D58 D0 21 00 34 */ stfs f1, 0x34(r1) +/* 80017DFC 00014D5C 40 80 00 0C */ bge lbl_80017E08 +/* 80017E00 00014D60 38 6D 80 CC */ addi r3, r13, lbl_805A6C8C@sda21 +/* 80017E04 00014D64 48 00 00 08 */ b lbl_80017E0C +lbl_80017E08: +/* 80017E08 00014D68 38 61 00 34 */ addi r3, r1, 0x34 +lbl_80017E0C: +/* 80017E0C 00014D6C C0 43 00 00 */ lfs f2, 0(r3) +/* 80017E10 00014D70 C0 02 81 90 */ lfs f0, lbl_805A9EB0@sda21(r2) +/* 80017E14 00014D74 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80017E18 00014D78 40 81 00 28 */ ble lbl_80017E40 +/* 80017E1C 00014D7C 80 1D 07 90 */ lwz r0, 0x790(r29) +/* 80017E20 00014D80 C0 22 82 30 */ lfs f1, lbl_805A9F50@sda21(r2) +/* 80017E24 00014D84 C0 02 82 2C */ lfs f0, lbl_805A9F4C@sda21(r2) +/* 80017E28 00014D88 2C 00 00 00 */ cmpwi r0, 0 +/* 80017E2C 00014D8C EF A1 00 BA */ fmadds f29, f1, f2, f0 +/* 80017E30 00014D90 40 82 00 20 */ bne lbl_80017E50 +/* 80017E34 00014D94 38 00 00 01 */ li r0, 1 +/* 80017E38 00014D98 90 1D 07 90 */ stw r0, 0x790(r29) +/* 80017E3C 00014D9C 48 00 00 14 */ b lbl_80017E50 +lbl_80017E40: +/* 80017E40 00014DA0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017E44 00014DA4 38 00 00 00 */ li r0, 0 +/* 80017E48 00014DA8 D0 1D 07 8C */ stfs f0, 0x78c(r29) +/* 80017E4C 00014DAC 90 1D 07 90 */ stw r0, 0x790(r29) +lbl_80017E50: +/* 80017E50 00014DB0 C0 22 82 38 */ lfs f1, lbl_805A9F58@sda21(r2) +/* 80017E54 00014DB4 C0 02 82 34 */ lfs f0, lbl_805A9F54@sda21(r2) +/* 80017E58 00014DB8 EF C1 00 BA */ fmadds f30, f1, f2, f0 +/* 80017E5C 00014DBC F3 C1 C0 08 */ psq_st f30, 8(r1), 1, qr4 +/* 80017E60 00014DC0 8B E1 00 08 */ lbz r31, 8(r1) +/* 80017E64 00014DC4 48 00 00 5C */ b lbl_80017EC0 +lbl_80017E68: +/* 80017E68 00014DC8 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 80017E6C 00014DCC 40 81 00 48 */ ble lbl_80017EB4 +/* 80017E70 00014DD0 80 1D 07 90 */ lwz r0, 0x790(r29) +/* 80017E74 00014DD4 2C 00 00 01 */ cmpwi r0, 1 +/* 80017E78 00014DD8 40 82 00 14 */ bne lbl_80017E8C +/* 80017E7C 00014DDC C0 22 82 3C */ lfs f1, lbl_805A9F5C@sda21(r2) +/* 80017E80 00014DE0 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80017E84 00014DE4 EF A1 00 BA */ fmadds f29, f1, f2, f0 +/* 80017E88 00014DE8 48 00 00 10 */ b lbl_80017E98 +lbl_80017E8C: +/* 80017E8C 00014DEC C0 22 82 40 */ lfs f1, lbl_805A9F60@sda21(r2) +/* 80017E90 00014DF0 C0 02 81 28 */ lfs f0, lbl_805A9E48@sda21(r2) +/* 80017E94 00014DF4 EF A1 00 BA */ fmadds f29, f1, f2, f0 +lbl_80017E98: +/* 80017E98 00014DF8 2C 00 00 00 */ cmpwi r0, 0 +/* 80017E9C 00014DFC 40 82 00 10 */ bne lbl_80017EAC +/* 80017EA0 00014E00 38 00 00 01 */ li r0, 1 +/* 80017EA4 00014E04 90 1D 07 90 */ stw r0, 0x790(r29) +/* 80017EA8 00014E08 C3 BD 07 8C */ lfs f29, 0x78c(r29) +lbl_80017EAC: +/* 80017EAC 00014E0C 3B E0 00 60 */ li r31, 0x60 +/* 80017EB0 00014E10 48 00 00 10 */ b lbl_80017EC0 +lbl_80017EB4: +/* 80017EB4 00014E14 D3 BD 07 8C */ stfs f29, 0x78c(r29) +/* 80017EB8 00014E18 38 00 00 00 */ li r0, 0 +/* 80017EBC 00014E1C 90 1D 07 90 */ stw r0, 0x790(r29) +lbl_80017EC0: +/* 80017EC0 00014E20 80 1D 07 90 */ lwz r0, 0x790(r29) +/* 80017EC4 00014E24 2C 00 00 00 */ cmpwi r0, 0 +/* 80017EC8 00014E28 41 82 02 2C */ beq lbl_800180F4 +/* 80017ECC 00014E2C C0 1D 07 8C */ lfs f0, 0x78c(r29) +/* 80017ED0 00014E30 FC 00 E8 40 */ fcmpo cr0, f0, f29 +/* 80017ED4 00014E34 40 81 02 20 */ ble lbl_800180F4 +/* 80017ED8 00014E38 88 0D A0 C8 */ lbz r0, lbl_805A8C88@sda21(r13) +/* 80017EDC 00014E3C 7C 00 07 75 */ extsb. r0, r0 +/* 80017EE0 00014E40 40 82 00 20 */ bne lbl_80017F00 +/* 80017EE4 00014E44 7F A3 EB 78 */ mr r3, r29 +/* 80017EE8 00014E48 48 26 CE F9 */ bl GetEyeHeight__7CPlayerCFv +/* 80017EEC 00014E4C C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 80017EF0 00014E50 38 00 00 01 */ li r0, 1 +/* 80017EF4 00014E54 98 0D A0 C8 */ stb r0, lbl_805A8C88@sda21(r13) +/* 80017EF8 00014E58 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80017EFC 00014E5C D0 0D A0 C4 */ stfs f0, lbl_805A8C84@sda21(r13) +lbl_80017F00: +/* 80017F00 00014E60 88 1D 00 E6 */ lbz r0, 0xe6(r29) +/* 80017F04 00014E64 54 00 DF 7F */ rlwinm. r0, r0, 0x1b, 0x1d, 0x1f +/* 80017F08 00014E68 41 82 01 34 */ beq lbl_8001803C +/* 80017F0C 00014E6C C0 3D 08 28 */ lfs f1, 0x828(r29) +/* 80017F10 00014E70 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80017F14 00014E74 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80017F18 00014E78 40 81 01 24 */ ble lbl_8001803C +/* 80017F1C 00014E7C C0 0D A0 C4 */ lfs f0, lbl_805A8C84@sda21(r13) +/* 80017F20 00014E80 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80017F24 00014E84 40 80 01 18 */ bge lbl_8001803C +/* 80017F28 00014E88 88 1D 08 2C */ lbz r0, 0x82c(r29) +/* 80017F2C 00014E8C 28 00 00 00 */ cmplwi r0, 0 +/* 80017F30 00014E90 41 82 00 88 */ beq lbl_80017FB8 +/* 80017F34 00014E94 80 1D 07 90 */ lwz r0, 0x790(r29) +/* 80017F38 00014E98 2C 00 00 01 */ cmpwi r0, 1 +/* 80017F3C 00014E9C 40 82 00 40 */ bne lbl_80017F7C +/* 80017F40 00014EA0 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80017F44 00014EA4 38 61 00 2C */ addi r3, r1, 0x2c +/* 80017F48 00014EA8 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80017F4C 00014EAC 7F E5 07 74 */ extsb r5, r31 +/* 80017F50 00014EB0 38 80 08 87 */ li r4, 0x887 +/* 80017F54 00014EB4 38 C0 00 40 */ li r6, 0x40 +/* 80017F58 00014EB8 38 E0 00 01 */ li r7, 1 +/* 80017F5C 00014EBC 39 20 00 00 */ li r9, 0 +/* 80017F60 00014EC0 48 2D 1E 15 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80017F64 00014EC4 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 80017F68 00014EC8 7F A3 EB 78 */ mr r3, r29 +/* 80017F6C 00014ECC 38 81 00 30 */ addi r4, r1, 0x30 +/* 80017F70 00014ED0 90 01 00 30 */ stw r0, 0x30(r1) +/* 80017F74 00014ED4 4B FF 92 19 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 80017F78 00014ED8 48 00 01 54 */ b lbl_800180CC +lbl_80017F7C: +/* 80017F7C 00014EDC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80017F80 00014EE0 38 61 00 24 */ addi r3, r1, 0x24 +/* 80017F84 00014EE4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80017F88 00014EE8 7F E5 07 74 */ extsb r5, r31 +/* 80017F8C 00014EEC 38 80 08 88 */ li r4, 0x888 +/* 80017F90 00014EF0 38 C0 00 40 */ li r6, 0x40 +/* 80017F94 00014EF4 38 E0 00 01 */ li r7, 1 +/* 80017F98 00014EF8 39 20 00 00 */ li r9, 0 +/* 80017F9C 00014EFC 48 2D 1D D9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80017FA0 00014F00 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80017FA4 00014F04 7F A3 EB 78 */ mr r3, r29 +/* 80017FA8 00014F08 38 81 00 28 */ addi r4, r1, 0x28 +/* 80017FAC 00014F0C 90 01 00 28 */ stw r0, 0x28(r1) +/* 80017FB0 00014F10 4B FF 91 DD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 80017FB4 00014F14 48 00 01 18 */ b lbl_800180CC +lbl_80017FB8: +/* 80017FB8 00014F18 80 1D 07 90 */ lwz r0, 0x790(r29) +/* 80017FBC 00014F1C 2C 00 00 01 */ cmpwi r0, 1 +/* 80017FC0 00014F20 40 82 00 40 */ bne lbl_80018000 +/* 80017FC4 00014F24 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80017FC8 00014F28 38 61 00 1C */ addi r3, r1, 0x1c +/* 80017FCC 00014F2C 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80017FD0 00014F30 7F E5 07 74 */ extsb r5, r31 +/* 80017FD4 00014F34 38 80 05 CC */ li r4, 0x5cc +/* 80017FD8 00014F38 38 C0 00 40 */ li r6, 0x40 +/* 80017FDC 00014F3C 38 E0 00 01 */ li r7, 1 +/* 80017FE0 00014F40 39 20 00 00 */ li r9, 0 +/* 80017FE4 00014F44 48 2D 1D 91 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80017FE8 00014F48 80 01 00 1C */ lwz r0, 0x1c(r1) +/* 80017FEC 00014F4C 7F A3 EB 78 */ mr r3, r29 +/* 80017FF0 00014F50 38 81 00 20 */ addi r4, r1, 0x20 +/* 80017FF4 00014F54 90 01 00 20 */ stw r0, 0x20(r1) +/* 80017FF8 00014F58 4B FF 91 95 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 80017FFC 00014F5C 48 00 00 D0 */ b lbl_800180CC +lbl_80018000: +/* 80018000 00014F60 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80018004 00014F64 38 61 00 14 */ addi r3, r1, 0x14 +/* 80018008 00014F68 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 8001800C 00014F6C 7F E5 07 74 */ extsb r5, r31 +/* 80018010 00014F70 38 80 05 CD */ li r4, 0x5cd +/* 80018014 00014F74 38 C0 00 40 */ li r6, 0x40 +/* 80018018 00014F78 38 E0 00 01 */ li r7, 1 +/* 8001801C 00014F7C 39 20 00 00 */ li r9, 0 +/* 80018020 00014F80 48 2D 1D 55 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80018024 00014F84 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80018028 00014F88 7F A3 EB 78 */ mr r3, r29 +/* 8001802C 00014F8C 38 81 00 18 */ addi r4, r1, 0x18 +/* 80018030 00014F90 90 01 00 18 */ stw r0, 0x18(r1) +/* 80018034 00014F94 4B FF 91 59 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +/* 80018038 00014F98 48 00 00 94 */ b lbl_800180CC +lbl_8001803C: +/* 8001803C 00014F9C 80 1D 07 90 */ lwz r0, 0x790(r29) +/* 80018040 00014FA0 2C 00 00 01 */ cmpwi r0, 1 +/* 80018044 00014FA4 40 82 00 2C */ bne lbl_80018070 +/* 80018048 00014FA8 3C 60 80 3D */ lis r3, lbl_803CC498@ha +/* 8001804C 00014FAC 3C C0 00 01 */ lis r6, 0x0000FFFF@ha +/* 80018050 00014FB0 38 A3 C4 98 */ addi r5, r3, lbl_803CC498@l +/* 80018054 00014FB4 7F C4 F3 78 */ mr r4, r30 +/* 80018058 00014FB8 38 E6 FF FF */ addi r7, r6, 0x0000FFFF@l +/* 8001805C 00014FBC 7F A3 EB 78 */ mr r3, r29 +/* 80018060 00014FC0 38 C0 00 18 */ li r6, 0x18 +/* 80018064 00014FC4 48 00 00 D1 */ bl GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs +/* 80018068 00014FC8 7C 60 1B 78 */ mr r0, r3 +/* 8001806C 00014FCC 48 00 00 28 */ b lbl_80018094 +lbl_80018070: +/* 80018070 00014FD0 3C 60 80 3D */ lis r3, lbl_803CC4C8@ha +/* 80018074 00014FD4 3C C0 00 01 */ lis r6, 0x0000FFFF@ha +/* 80018078 00014FD8 38 A3 C4 C8 */ addi r5, r3, lbl_803CC4C8@l +/* 8001807C 00014FDC 7F C4 F3 78 */ mr r4, r30 +/* 80018080 00014FE0 38 E6 FF FF */ addi r7, r6, 0x0000FFFF@l +/* 80018084 00014FE4 7F A3 EB 78 */ mr r3, r29 +/* 80018088 00014FE8 38 C0 00 18 */ li r6, 0x18 +/* 8001808C 00014FEC 48 00 00 A9 */ bl GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs +/* 80018090 00014FF0 7C 60 1B 78 */ mr r0, r3 +lbl_80018094: +/* 80018094 00014FF4 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80018098 00014FF8 38 61 00 0C */ addi r3, r1, 0xc +/* 8001809C 00014FFC 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 800180A0 00015000 54 04 04 3E */ clrlwi r4, r0, 0x10 +/* 800180A4 00015004 7F E5 07 74 */ extsb r5, r31 +/* 800180A8 00015008 38 C0 00 40 */ li r6, 0x40 +/* 800180AC 0001500C 38 E0 00 01 */ li r7, 1 +/* 800180B0 00015010 39 20 00 00 */ li r9, 0 +/* 800180B4 00015014 48 2D 1C C1 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 800180B8 00015018 80 01 00 0C */ lwz r0, 0xc(r1) +/* 800180BC 0001501C 7F A3 EB 78 */ mr r3, r29 +/* 800180C0 00015020 38 81 00 10 */ addi r4, r1, 0x10 +/* 800180C4 00015024 90 01 00 10 */ stw r0, 0x10(r1) +/* 800180C8 00015028 4B FF 90 C5 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +lbl_800180CC: +/* 800180CC 0001502C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 800180D0 00015030 D0 1D 07 8C */ stfs f0, 0x78c(r29) +/* 800180D4 00015034 80 1D 07 90 */ lwz r0, 0x790(r29) +/* 800180D8 00015038 2C 00 00 01 */ cmpwi r0, 1 +/* 800180DC 0001503C 40 82 00 10 */ bne lbl_800180EC +/* 800180E0 00015040 38 00 00 02 */ li r0, 2 +/* 800180E4 00015044 90 1D 07 90 */ stw r0, 0x790(r29) +/* 800180E8 00015048 48 00 00 0C */ b lbl_800180F4 +lbl_800180EC: +/* 800180EC 0001504C 38 00 00 01 */ li r0, 1 +/* 800180F0 00015050 90 1D 07 90 */ stw r0, 0x790(r29) +lbl_800180F4: +/* 800180F4 00015054 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 +/* 800180F8 00015058 CB E1 00 90 */ lfd f31, 0x90(r1) +/* 800180FC 0001505C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 +/* 80018100 00015060 CB C1 00 80 */ lfd f30, 0x80(r1) +/* 80018104 00015064 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 +/* 80018108 00015068 CB A1 00 70 */ lfd f29, 0x70(r1) +/* 8001810C 0001506C E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 +/* 80018110 00015070 CB 81 00 60 */ lfd f28, 0x60(r1) +/* 80018114 00015074 83 E1 00 5C */ lwz r31, 0x5c(r1) +/* 80018118 00015078 83 C1 00 58 */ lwz r30, 0x58(r1) +/* 8001811C 0001507C 83 A1 00 54 */ lwz r29, 0x54(r1) +/* 80018120 00015080 80 01 00 A4 */ lwz r0, 0xa4(r1) +/* 80018124 00015084 83 81 00 50 */ lwz r28, 0x50(r1) +/* 80018128 00015088 7C 08 03 A6 */ mtlr r0 +/* 8001812C 0001508C 38 21 00 A0 */ addi r1, r1, 0xa0 +/* 80018130 00015090 4E 80 00 20 */ blr + +.global GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs +GetMaterialSoundUnderPlayer__7CPlayerFR13CStateManagerPCUsiUs: +/* 80018134 00015094 94 21 F7 10 */ stwu r1, -0x8f0(r1) +/* 80018138 00015098 7C 08 02 A6 */ mflr r0 +/* 8001813C 0001509C 90 01 08 F4 */ stw r0, 0x8f4(r1) +/* 80018140 000150A0 BF 41 08 D8 */ stmw r26, 0x8d8(r1) +/* 80018144 000150A4 7C FE 3B 78 */ mr r30, r7 +/* 80018148 000150A8 7C 7A 1B 78 */ mr r26, r3 +/* 8001814C 000150AC 7C 9B 23 78 */ mr r27, r4 +/* 80018150 000150B0 7C BC 2B 78 */ mr r28, r5 +/* 80018154 000150B4 7C DD 33 78 */ mr r29, r6 +/* 80018158 000150B8 54 FF 04 3E */ clrlwi r31, r7, 0x10 +/* 8001815C 000150BC 88 0D A0 C0 */ lbz r0, lbl_805A8C80@sda21(r13) +/* 80018160 000150C0 7C 00 07 75 */ extsb. r0, r0 +/* 80018164 000150C4 40 82 00 24 */ bne lbl_80018188 +/* 80018168 000150C8 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 8001816C 000150CC 3C 60 80 45 */ lis r3, lbl_804579E8@ha +/* 80018170 000150D0 38 00 00 01 */ li r0, 1 +/* 80018174 000150D4 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) +/* 80018178 000150D8 D4 23 79 E8 */ stfsu f1, lbl_804579E8@l(r3) +/* 8001817C 000150DC D0 23 00 04 */ stfs f1, 4(r3) +/* 80018180 000150E0 D0 03 00 08 */ stfs f0, 8(r3) +/* 80018184 000150E4 98 0D A0 C0 */ stb r0, lbl_805A8C80@sda21(r13) +lbl_80018188: +/* 80018188 000150E8 88 0D A0 C1 */ lbz r0, lbl_805A8C81@sda21(r13) +/* 8001818C 000150EC 7C 00 07 75 */ extsb. r0, r0 +/* 80018190 000150F0 40 82 00 40 */ bne lbl_800181D0 +/* 80018194 000150F4 80 AD 80 C8 */ lwz r5, lbl_805A6C88@sda21(r13) +/* 80018198 000150F8 38 60 00 00 */ li r3, 0 +/* 8001819C 000150FC 38 80 00 01 */ li r4, 1 +/* 800181A0 00015100 48 37 1D 55 */ bl __shl2i +/* 800181A4 00015104 3C A0 80 45 */ lis r5, lbl_804579F8@ha +/* 800181A8 00015108 38 C0 00 01 */ li r6, 1 +/* 800181AC 0001510C 38 A5 79 F8 */ addi r5, r5, lbl_804579F8@l +/* 800181B0 00015110 38 00 00 00 */ li r0, 0 +/* 800181B4 00015114 90 C1 00 50 */ stw r6, 0x50(r1) +/* 800181B8 00015118 90 85 00 04 */ stw r4, 4(r5) +/* 800181BC 0001511C 90 65 00 00 */ stw r3, 0(r5) +/* 800181C0 00015120 90 05 00 0C */ stw r0, 0xc(r5) +/* 800181C4 00015124 90 05 00 08 */ stw r0, 8(r5) +/* 800181C8 00015128 90 C5 00 10 */ stw r6, 0x10(r5) +/* 800181CC 0001512C 98 CD A0 C1 */ stb r6, lbl_805A8C81@sda21(r13) +lbl_800181D0: +/* 800181D0 00015130 A0 AD A3 8C */ lhz r5, lbl_805A8F4C@sda21(r13) +/* 800181D4 00015134 38 00 00 00 */ li r0, 0 +/* 800181D8 00015138 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 800181DC 0001513C 7F 44 D3 78 */ mr r4, r26 +/* 800181E0 00015140 38 61 00 24 */ addi r3, r1, 0x24 +/* 800181E4 00015144 B0 A1 00 08 */ sth r5, 8(r1) +/* 800181E8 00015148 48 10 27 45 */ bl GetBoundingBox__13CPhysicsActorCFv +/* 800181EC 0001514C C0 81 00 24 */ lfs f4, 0x24(r1) +/* 800181F0 00015150 3C 60 80 45 */ lis r3, lbl_804579E8@ha +/* 800181F4 00015154 C0 41 00 28 */ lfs f2, 0x28(r1) +/* 800181F8 00015158 38 A3 79 E8 */ addi r5, r3, lbl_804579E8@l +/* 800181FC 0001515C C0 01 00 2C */ lfs f0, 0x2c(r1) +/* 80018200 00015160 38 61 00 58 */ addi r3, r1, 0x58 +/* 80018204 00015164 C0 A1 00 30 */ lfs f5, 0x30(r1) +/* 80018208 00015168 38 81 00 18 */ addi r4, r1, 0x18 +/* 8001820C 0001516C C0 61 00 34 */ lfs f3, 0x34(r1) +/* 80018210 00015170 C0 21 00 38 */ lfs f1, 0x38(r1) +/* 80018214 00015174 D0 81 00 58 */ stfs f4, 0x58(r1) +/* 80018218 00015178 C0 85 00 04 */ lfs f4, 4(r5) +/* 8001821C 0001517C D0 41 00 5C */ stfs f2, 0x5c(r1) +/* 80018220 00015180 C0 45 00 08 */ lfs f2, 8(r5) +/* 80018224 00015184 D0 01 00 60 */ stfs f0, 0x60(r1) +/* 80018228 00015188 C0 05 00 00 */ lfs f0, 0(r5) +/* 8001822C 0001518C D0 A1 00 64 */ stfs f5, 0x64(r1) +/* 80018230 00015190 D0 61 00 68 */ stfs f3, 0x68(r1) +/* 80018234 00015194 D0 21 00 6C */ stfs f1, 0x6c(r1) +/* 80018238 00015198 C0 BA 00 50 */ lfs f5, 0x50(r26) +/* 8001823C 0001519C C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 80018240 000151A0 C0 3A 00 40 */ lfs f1, 0x40(r26) +/* 80018244 000151A4 EC 85 20 2A */ fadds f4, f5, f4 +/* 80018248 000151A8 EC 43 10 2A */ fadds f2, f3, f2 +/* 8001824C 000151AC EC 01 00 2A */ fadds f0, f1, f0 +/* 80018250 000151B0 D0 81 00 1C */ stfs f4, 0x1c(r1) +/* 80018254 000151B4 D0 01 00 18 */ stfs f0, 0x18(r1) +/* 80018258 000151B8 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 8001825C 000151BC 48 31 F8 AD */ bl AccumulateBounds__6CAABoxFRC9CVector3f +/* 80018260 000151C0 3C 80 80 45 */ lis r4, lbl_804579F8@ha +/* 80018264 000151C4 7F 63 DB 78 */ mr r3, r27 +/* 80018268 000151C8 38 C4 79 F8 */ addi r6, r4, lbl_804579F8@l +/* 8001826C 000151CC 38 A1 00 58 */ addi r5, r1, 0x58 +/* 80018270 000151D0 38 81 00 D0 */ addi r4, r1, 0xd0 +/* 80018274 000151D4 38 E0 00 00 */ li r7, 0 +/* 80018278 000151D8 48 03 44 A9 */ bl "BuildNearList__13CStateManagerCFRQ24rstl32reserved_vector<9TUniqueId,1024>RC6CAABoxRC15CMaterialFilterPC6CActor" +/* 8001827C 000151DC C0 7A 00 60 */ lfs f3, 0x60(r26) +/* 80018280 000151E0 3C 80 80 45 */ lis r4, lbl_804579E8@ha +/* 80018284 000151E4 C0 5A 00 50 */ lfs f2, 0x50(r26) +/* 80018288 000151E8 3C 60 80 45 */ lis r3, lbl_804579F8@ha +/* 8001828C 000151EC C0 1A 00 40 */ lfs f0, 0x40(r26) +/* 80018290 000151F0 38 E4 79 E8 */ addi r7, r4, lbl_804579E8@l +/* 80018294 000151F4 39 03 79 F8 */ addi r8, r3, lbl_804579F8@l +/* 80018298 000151F8 C0 22 82 44 */ lfs f1, lbl_805A9F64@sda21(r2) +/* 8001829C 000151FC D0 01 00 0C */ stfs f0, 0xc(r1) +/* 800182A0 00015200 7F 64 DB 78 */ mr r4, r27 +/* 800182A4 00015204 38 61 00 70 */ addi r3, r1, 0x70 +/* 800182A8 00015208 38 A1 00 08 */ addi r5, r1, 8 +/* 800182AC 0001520C D0 41 00 10 */ stfs f2, 0x10(r1) +/* 800182B0 00015210 38 C1 00 0C */ addi r6, r1, 0xc +/* 800182B4 00015214 39 21 00 D0 */ addi r9, r1, 0xd0 +/* 800182B8 00015218 D0 61 00 14 */ stfs f3, 0x14(r1) +/* 800182BC 0001521C 48 03 4D 09 */ bl "RayWorldIntersection__13CStateManagerCFR9TUniqueIdRC9CVector3fRC9CVector3ffRC15CMaterialFilterRCQ24rstl32reserved_vector<9TUniqueId,1024>" +/* 800182C0 00015220 88 A1 00 90 */ lbz r5, 0x90(r1) +/* 800182C4 00015224 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 800182C8 00015228 C0 E1 00 70 */ lfs f7, 0x70(r1) +/* 800182CC 0001522C C0 C1 00 74 */ lfs f6, 0x74(r1) +/* 800182D0 00015230 28 05 00 00 */ cmplwi r5, 0 +/* 800182D4 00015234 C0 A1 00 78 */ lfs f5, 0x78(r1) +/* 800182D8 00015238 C0 81 00 7C */ lfs f4, 0x7c(r1) +/* 800182DC 0001523C C0 61 00 80 */ lfs f3, 0x80(r1) +/* 800182E0 00015240 C0 41 00 84 */ lfs f2, 0x84(r1) +/* 800182E4 00015244 C0 21 00 88 */ lfs f1, 0x88(r1) +/* 800182E8 00015248 C0 01 00 8C */ lfs f0, 0x8c(r1) +/* 800182EC 0001524C 80 01 00 98 */ lwz r0, 0x98(r1) +/* 800182F0 00015250 80 81 00 9C */ lwz r4, 0x9c(r1) +/* 800182F4 00015254 D0 E1 00 A0 */ stfs f7, 0xa0(r1) +/* 800182F8 00015258 D0 C1 00 A4 */ stfs f6, 0xa4(r1) +/* 800182FC 0001525C D0 A1 00 A8 */ stfs f5, 0xa8(r1) +/* 80018300 00015260 D0 81 00 AC */ stfs f4, 0xac(r1) +/* 80018304 00015264 D0 61 00 B0 */ stfs f3, 0xb0(r1) +/* 80018308 00015268 D0 41 00 B4 */ stfs f2, 0xb4(r1) +/* 8001830C 0001526C D0 21 00 B8 */ stfs f1, 0xb8(r1) +/* 80018310 00015270 D0 01 00 BC */ stfs f0, 0xbc(r1) +/* 80018314 00015274 98 A1 00 C0 */ stb r5, 0xc0(r1) +/* 80018318 00015278 90 81 00 CC */ stw r4, 0xcc(r1) +/* 8001831C 0001527C 90 01 00 C8 */ stw r0, 0xc8(r1) +/* 80018320 00015280 41 82 00 18 */ beq lbl_80018338 +/* 80018324 00015284 7F 84 E3 78 */ mr r4, r28 +/* 80018328 00015288 7F A5 EB 78 */ mr r5, r29 +/* 8001832C 0001528C 7F C6 F3 78 */ mr r6, r30 +/* 80018330 00015290 48 00 00 75 */ bl SfxIdFromMaterial__7CPlayerFRC13CMaterialListPCUsiUs +/* 80018334 00015294 7C 7F 1B 78 */ mr r31, r3 +lbl_80018338: +/* 80018338 00015298 80 C1 00 D0 */ lwz r6, 0xd0(r1) +/* 8001833C 0001529C 57 E3 04 3E */ clrlwi r3, r31, 0x10 +/* 80018340 000152A0 38 80 00 00 */ li r4, 0 +/* 80018344 000152A4 2C 06 00 00 */ cmpwi r6, 0 +/* 80018348 000152A8 40 81 00 40 */ ble lbl_80018388 +/* 8001834C 000152AC 2C 06 00 08 */ cmpwi r6, 8 +/* 80018350 000152B0 38 A6 FF F8 */ addi r5, r6, -8 +/* 80018354 000152B4 40 81 00 20 */ ble lbl_80018374 +/* 80018358 000152B8 38 05 00 07 */ addi r0, r5, 7 +/* 8001835C 000152BC 54 00 E8 FE */ srwi r0, r0, 3 +/* 80018360 000152C0 7C 09 03 A6 */ mtctr r0 +/* 80018364 000152C4 2C 05 00 00 */ cmpwi r5, 0 +/* 80018368 000152C8 40 81 00 0C */ ble lbl_80018374 +lbl_8001836C: +/* 8001836C 000152CC 38 84 00 08 */ addi r4, r4, 8 +/* 80018370 000152D0 42 00 FF FC */ bdnz lbl_8001836C +lbl_80018374: +/* 80018374 000152D4 7C 04 30 50 */ subf r0, r4, r6 +/* 80018378 000152D8 7C 09 03 A6 */ mtctr r0 +/* 8001837C 000152DC 7C 04 30 00 */ cmpw r4, r6 +/* 80018380 000152E0 40 80 00 08 */ bge lbl_80018388 +lbl_80018384: +/* 80018384 000152E4 42 00 00 00 */ bdnz lbl_80018384 +lbl_80018388: +/* 80018388 000152E8 38 00 00 00 */ li r0, 0 +/* 8001838C 000152EC 90 01 00 D0 */ stw r0, 0xd0(r1) +/* 80018390 000152F0 BB 41 08 D8 */ lmw r26, 0x8d8(r1) +/* 80018394 000152F4 80 01 08 F4 */ lwz r0, 0x8f4(r1) +/* 80018398 000152F8 7C 08 03 A6 */ mtlr r0 +/* 8001839C 000152FC 38 21 08 F0 */ addi r1, r1, 0x8f0 +/* 800183A0 00015300 4E 80 00 20 */ blr + +.global SfxIdFromMaterial__7CPlayerFRC13CMaterialListPCUsiUs +SfxIdFromMaterial__7CPlayerFRC13CMaterialListPCUsiUs: +/* 800183A4 00015304 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 800183A8 00015308 7C 08 02 A6 */ mflr r0 +/* 800183AC 0001530C 90 01 00 24 */ stw r0, 0x24(r1) +/* 800183B0 00015310 BF 41 00 08 */ stmw r26, 8(r1) +/* 800183B4 00015314 7C 7A 1B 78 */ mr r26, r3 +/* 800183B8 00015318 7C BB 2B 78 */ mr r27, r5 +/* 800183BC 0001531C 54 DD 04 3E */ clrlwi r29, r6, 0x10 +/* 800183C0 00015320 7C 9E 23 78 */ mr r30, r4 +/* 800183C4 00015324 3B 80 00 00 */ li r28, 0 +/* 800183C8 00015328 3B E0 00 00 */ li r31, 0 +/* 800183CC 0001532C 48 00 00 48 */ b lbl_80018414 +lbl_800183D0: +/* 800183D0 00015330 38 60 00 00 */ li r3, 0 +/* 800183D4 00015334 38 80 00 01 */ li r4, 1 +/* 800183D8 00015338 48 37 1B 1D */ bl __shl2i +/* 800183DC 0001533C 80 1A 00 00 */ lwz r0, 0(r26) +/* 800183E0 00015340 80 BA 00 04 */ lwz r5, 4(r26) +/* 800183E4 00015344 7C 00 18 38 */ and r0, r0, r3 +/* 800183E8 00015348 7C A3 20 38 */ and r3, r5, r4 +/* 800183EC 0001534C 7C 63 FA 78 */ xor r3, r3, r31 +/* 800183F0 00015350 7C 00 FA 78 */ xor r0, r0, r31 +/* 800183F4 00015354 7C 60 03 79 */ or. r0, r3, r0 +/* 800183F8 00015358 41 82 00 14 */ beq lbl_8001840C +/* 800183FC 0001535C A0 1E 00 00 */ lhz r0, 0(r30) +/* 80018400 00015360 28 00 FF FF */ cmplwi r0, 0xffff +/* 80018404 00015364 41 82 00 08 */ beq lbl_8001840C +/* 80018408 00015368 7C 1D 03 78 */ mr r29, r0 +lbl_8001840C: +/* 8001840C 0001536C 3B DE 00 02 */ addi r30, r30, 2 +/* 80018410 00015370 3B 9C 00 01 */ addi r28, r28, 1 +lbl_80018414: +/* 80018414 00015374 7F 85 07 34 */ extsh r5, r28 +/* 80018418 00015378 7C 05 D8 00 */ cmpw r5, r27 +/* 8001841C 0001537C 41 80 FF B4 */ blt lbl_800183D0 +/* 80018420 00015380 57 A3 04 3E */ clrlwi r3, r29, 0x10 +/* 80018424 00015384 BB 41 00 08 */ lmw r26, 8(r1) +/* 80018428 00015388 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001842C 0001538C 7C 08 03 A6 */ mtlr r0 +/* 80018430 00015390 38 21 00 20 */ addi r1, r1, 0x20 +/* 80018434 00015394 4E 80 00 20 */ blr + +.global UpdatePlayerSounds__7CPlayerFf +UpdatePlayerSounds__7CPlayerFf: +/* 80018438 00015398 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001843C 0001539C 7C 08 02 A6 */ mflr r0 +/* 80018440 000153A0 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) +/* 80018444 000153A4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80018448 000153A8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001844C 000153AC 7C 7F 1B 78 */ mr r31, r3 +/* 80018450 000153B0 C0 03 07 84 */ lfs f0, 0x784(r3) +/* 80018454 000153B4 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 80018458 000153B8 40 81 00 34 */ ble lbl_8001848C +/* 8001845C 000153BC EC 00 08 28 */ fsubs f0, f0, f1 +/* 80018460 000153C0 D0 1F 07 84 */ stfs f0, 0x784(r31) +/* 80018464 000153C4 C0 1F 07 84 */ lfs f0, 0x784(r31) +/* 80018468 000153C8 FC 00 10 40 */ fcmpo cr0, f0, f2 +/* 8001846C 000153CC 4C 40 13 82 */ cror 2, 0, 2 +/* 80018470 000153D0 40 82 00 1C */ bne lbl_8001848C +/* 80018474 000153D4 80 1F 07 70 */ lwz r0, 0x770(r31) +/* 80018478 000153D8 38 61 00 08 */ addi r3, r1, 8 +/* 8001847C 000153DC 90 01 00 08 */ stw r0, 8(r1) +/* 80018480 000153E0 48 2D 18 C9 */ bl SfxStop__11CSfxManagerFRC10CSfxHandle +/* 80018484 000153E4 38 00 00 00 */ li r0, 0 +/* 80018488 000153E8 90 1F 07 70 */ stw r0, 0x770(r31) +lbl_8001848C: +/* 8001848C 000153EC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80018490 000153F0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80018494 000153F4 7C 08 03 A6 */ mtlr r0 +/* 80018498 000153F8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001849C 000153FC 4E 80 00 20 */ blr + +.global UpdateCrosshairsState__7CPlayerFRC11CFinalInput +UpdateCrosshairsState__7CPlayerFRC11CFinalInput: +/* 800184A0 00015400 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800184A4 00015404 7C 08 02 A6 */ mflr r0 +/* 800184A8 00015408 90 01 00 14 */ stw r0, 0x14(r1) +/* 800184AC 0001540C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800184B0 00015410 7C 7F 1B 78 */ mr r31, r3 +/* 800184B4 00015414 38 60 00 39 */ li r3, 0x39 +/* 800184B8 00015418 4B FF 43 BD */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800184BC 0001541C 88 1F 09 C4 */ lbz r0, 0x9c4(r31) +/* 800184C0 00015420 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 +/* 800184C4 00015424 98 1F 09 C4 */ stb r0, 0x9c4(r31) +/* 800184C8 00015428 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 800184CC 0001542C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800184D0 00015430 7C 08 03 A6 */ mtlr r0 +/* 800184D4 00015434 38 21 00 10 */ addi r1, r1, 0x10 +/* 800184D8 00015438 4E 80 00 20 */ blr + +.global UpdateVisorTransition__7CPlayerFfR13CStateManager +UpdateVisorTransition__7CPlayerFfR13CStateManager: +/* 800184DC 0001543C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 800184E0 00015440 7C 08 02 A6 */ mflr r0 +/* 800184E4 00015444 90 01 00 24 */ stw r0, 0x24(r1) +/* 800184E8 00015448 DB E1 00 18 */ stfd f31, 0x18(r1) +/* 800184EC 0001544C FF E0 08 90 */ fmr f31, f1 +/* 800184F0 00015450 93 E1 00 14 */ stw r31, 0x14(r1) +/* 800184F4 00015454 80 64 08 B8 */ lwz r3, 0x8b8(r4) +/* 800184F8 00015458 83 E3 00 00 */ lwz r31, 0(r3) +/* 800184FC 0001545C 7F E3 FB 78 */ mr r3, r31 +/* 80018500 00015460 48 07 93 35 */ bl GetIsVisorTransitioning__12CPlayerStateCFv +/* 80018504 00015464 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80018508 00015468 41 82 00 10 */ beq lbl_80018518 +/* 8001850C 0001546C FC 20 F8 90 */ fmr f1, f31 +/* 80018510 00015470 7F E3 FB 78 */ mr r3, r31 +/* 80018514 00015474 48 07 93 61 */ bl UpdateVisorTransition__12CPlayerStateFf +lbl_80018518: +/* 80018518 00015478 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001851C 0001547C CB E1 00 18 */ lfd f31, 0x18(r1) +/* 80018520 00015480 83 E1 00 14 */ lwz r31, 0x14(r1) +/* 80018524 00015484 7C 08 03 A6 */ mtlr r0 +/* 80018528 00015488 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001852C 0001548C 4E 80 00 20 */ blr + +.global UpdateVisorState__7CPlayerFRC11CFinalInputfR13CStateManager +UpdateVisorState__7CPlayerFRC11CFinalInputfR13CStateManager: +/* 80018530 00015490 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 80018534 00015494 7C 08 02 A6 */ mflr r0 +/* 80018538 00015498 90 01 00 44 */ stw r0, 0x44(r1) +/* 8001853C 0001549C BF 01 00 20 */ stmw r24, 0x20(r1) +/* 80018540 000154A0 7C 7C 1B 78 */ mr r28, r3 +/* 80018544 000154A4 7C 9D 23 78 */ mr r29, r4 +/* 80018548 000154A8 7C BE 2B 78 */ mr r30, r5 +/* 8001854C 000154AC 38 7C 07 A0 */ addi r3, r28, 0x7a0 +/* 80018550 000154B0 4B FF F5 BD */ bl Update__Q27CPlayer11CVisorSteamFf +/* 80018554 000154B4 88 1C 07 C8 */ lbz r0, 0x7c8(r28) +/* 80018558 000154B8 28 00 00 00 */ cmplwi r0, 0 +/* 8001855C 000154BC 41 82 00 14 */ beq lbl_80018570 +/* 80018560 000154C0 C0 3E 0F 28 */ lfs f1, 0xf28(r30) +/* 80018564 000154C4 C0 1C 07 C0 */ lfs f0, 0x7c0(r28) +/* 80018568 000154C8 EC 01 00 2A */ fadds f0, f1, f0 +/* 8001856C 000154CC D0 1E 0F 28 */ stfs f0, 0xf28(r30) +lbl_80018570: +/* 80018570 000154D0 80 BE 08 B8 */ lwz r5, 0x8b8(r30) +/* 80018574 000154D4 7F C3 F3 78 */ mr r3, r30 +/* 80018578 000154D8 A0 1C 03 10 */ lhz r0, 0x310(r28) +/* 8001857C 000154DC 38 81 00 0C */ addi r4, r1, 0xc +/* 80018580 000154E0 83 7C 02 F8 */ lwz r27, 0x2f8(r28) +/* 80018584 000154E4 83 E5 00 00 */ lwz r31, 0(r5) +/* 80018588 000154E8 B0 01 00 08 */ sth r0, 8(r1) +/* 8001858C 000154EC B0 01 00 0C */ sth r0, 0xc(r1) +/* 80018590 000154F0 48 03 40 15 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 80018594 000154F4 7C 64 1B 78 */ mr r4, r3 +/* 80018598 000154F8 38 61 00 10 */ addi r3, r1, 0x10 +/* 8001859C 000154FC 48 09 15 2D */ bl "__ct__33TCastToPtr<19CScriptGrapplePoint>FP7CEntity" +/* 800185A0 00015500 80 1C 03 04 */ lwz r0, 0x304(r28) +/* 800185A4 00015504 80 63 00 04 */ lwz r3, 4(r3) +/* 800185A8 00015508 2C 00 00 05 */ cmpwi r0, 5 +/* 800185AC 0001550C 41 82 01 24 */ beq lbl_800186D0 +/* 800185B0 00015510 28 03 00 00 */ cmplwi r3, 0 +/* 800185B4 00015514 41 82 00 08 */ beq lbl_800185BC +/* 800185B8 00015518 48 00 01 18 */ b lbl_800186D0 +lbl_800185BC: +/* 800185BC 0001551C 2C 1B 00 00 */ cmpwi r27, 0 +/* 800185C0 00015520 40 82 01 10 */ bne lbl_800186D0 +/* 800185C4 00015524 7F E3 FB 78 */ mr r3, r31 +/* 800185C8 00015528 48 07 92 6D */ bl GetIsVisorTransitioning__12CPlayerStateCFv +/* 800185CC 0001552C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800185D0 00015530 40 82 01 00 */ bne lbl_800186D0 +/* 800185D4 00015534 80 1C 03 A8 */ lwz r0, 0x3a8(r28) +/* 800185D8 00015538 2C 00 00 00 */ cmpwi r0, 0 +/* 800185DC 0001553C 40 82 00 F4 */ bne lbl_800186D0 +/* 800185E0 00015540 83 5F 00 18 */ lwz r26, 0x18(r31) +/* 800185E4 00015544 2C 1A 00 02 */ cmpwi r26, 2 +/* 800185E8 00015548 40 82 00 58 */ bne lbl_80018640 +/* 800185EC 0001554C 7F A4 EB 78 */ mr r4, r29 +/* 800185F0 00015550 38 60 00 0B */ li r3, 0xb +/* 800185F4 00015554 4B FF 41 DD */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 800185F8 00015558 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 800185FC 0001555C 40 82 00 18 */ bne lbl_80018614 +/* 80018600 00015560 7F A4 EB 78 */ mr r4, r29 +/* 80018604 00015564 38 60 00 0C */ li r3, 0xc +/* 80018608 00015568 4B FF 41 C9 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8001860C 0001556C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80018610 00015570 41 82 00 30 */ beq lbl_80018640 +lbl_80018614: +/* 80018614 00015574 7F E3 FB 78 */ mr r3, r31 +/* 80018618 00015578 38 80 00 11 */ li r4, 0x11 +/* 8001861C 0001557C 48 07 94 A5 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 80018620 00015580 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80018624 00015584 41 82 00 1C */ beq lbl_80018640 +/* 80018628 00015588 7F E3 FB 78 */ mr r3, r31 +/* 8001862C 0001558C 38 80 00 00 */ li r4, 0 +/* 80018630 00015590 48 07 93 25 */ bl StartTransitionToVisor__12CPlayerStateFQ212CPlayerState12EPlayerVisor +/* 80018634 00015594 7F 83 E3 78 */ mr r3, r28 +/* 80018638 00015598 7F C4 F3 78 */ mr r4, r30 +/* 8001863C 0001559C 48 00 1A 71 */ bl DrawGun__7CPlayerFR13CStateManager +lbl_80018640: +/* 80018640 000155A0 3C 60 80 45 */ lis r3, lbl_804579C8@ha +/* 80018644 000155A4 3B 20 00 00 */ li r25, 0 +/* 80018648 000155A8 3B 63 79 C8 */ addi r27, r3, lbl_804579C8@l +lbl_8001864C: +/* 8001864C 000155AC 83 1B 00 04 */ lwz r24, 4(r27) +/* 80018650 000155B0 7F E3 FB 78 */ mr r3, r31 +/* 80018654 000155B4 80 9B 00 00 */ lwz r4, 0(r27) +/* 80018658 000155B8 48 07 94 69 */ bl HasPowerUp__12CPlayerStateCFQ212CPlayerState9EItemType +/* 8001865C 000155BC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80018660 000155C0 41 82 00 60 */ beq lbl_800186C0 +/* 80018664 000155C4 7F 03 C3 78 */ mr r3, r24 +/* 80018668 000155C8 7F A4 EB 78 */ mr r4, r29 +/* 8001866C 000155CC 4B FF 41 65 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80018670 000155D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80018674 000155D4 41 82 00 4C */ beq lbl_800186C0 +/* 80018678 000155D8 88 1C 09 C4 */ lbz r0, 0x9c4(r28) +/* 8001867C 000155DC 38 60 00 01 */ li r3, 1 +/* 80018680 000155E0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 +/* 80018684 000155E4 7C 1A C8 00 */ cmpw r26, r25 +/* 80018688 000155E8 98 1C 09 C4 */ stb r0, 0x9c4(r28) +/* 8001868C 000155EC 41 82 00 34 */ beq lbl_800186C0 +/* 80018690 000155F0 7F E3 FB 78 */ mr r3, r31 +/* 80018694 000155F4 7F 24 CB 78 */ mr r4, r25 +/* 80018698 000155F8 48 07 92 BD */ bl StartTransitionToVisor__12CPlayerStateFQ212CPlayerState12EPlayerVisor +/* 8001869C 000155FC 2C 19 00 02 */ cmpwi r25, 2 +/* 800186A0 00015600 40 82 00 14 */ bne lbl_800186B4 +/* 800186A4 00015604 7F 83 E3 78 */ mr r3, r28 +/* 800186A8 00015608 7F C4 F3 78 */ mr r4, r30 +/* 800186AC 0001560C 48 00 1A C1 */ bl HolsterGun__7CPlayerFR13CStateManager +/* 800186B0 00015610 48 00 00 10 */ b lbl_800186C0 +lbl_800186B4: +/* 800186B4 00015614 7F 83 E3 78 */ mr r3, r28 +/* 800186B8 00015618 7F C4 F3 78 */ mr r4, r30 +/* 800186BC 0001561C 48 00 19 F1 */ bl DrawGun__7CPlayerFR13CStateManager +lbl_800186C0: +/* 800186C0 00015620 3B 39 00 01 */ addi r25, r25, 1 +/* 800186C4 00015624 3B 7B 00 08 */ addi r27, r27, 8 +/* 800186C8 00015628 2C 19 00 04 */ cmpwi r25, 4 +/* 800186CC 0001562C 41 80 FF 80 */ blt lbl_8001864C +lbl_800186D0: +/* 800186D0 00015630 BB 01 00 20 */ lmw r24, 0x20(r1) +/* 800186D4 00015634 80 01 00 44 */ lwz r0, 0x44(r1) +/* 800186D8 00015638 7C 08 03 A6 */ mtlr r0 +/* 800186DC 0001563C 38 21 00 40 */ addi r1, r1, 0x40 +/* 800186E0 00015640 4E 80 00 20 */ blr + +.global ShouldSampleFailsafe__7CPlayerCFv +ShouldSampleFailsafe__7CPlayerCFv: +/* 800186E4 00015644 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 800186E8 00015648 7C 08 02 A6 */ mflr r0 +/* 800186EC 0001564C 90 01 00 24 */ stw r0, 0x24(r1) +/* 800186F0 00015650 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 800186F4 00015654 7C 9F 23 78 */ mr r31, r4 +/* 800186F8 00015658 93 C1 00 18 */ stw r30, 0x18(r1) +/* 800186FC 0001565C 7C 7E 1B 78 */ mr r30, r3 +/* 80018700 00015660 80 64 08 70 */ lwz r3, 0x870(r4) +/* 80018704 00015664 4B FF 34 15 */ bl GetCurrentCamera__14CCameraManagerCFR13CStateManager +/* 80018708 00015668 7C 64 1B 78 */ mr r4, r3 +/* 8001870C 0001566C 38 61 00 08 */ addi r3, r1, 8 +/* 80018710 00015670 48 09 70 21 */ bl "__ct__30TCastToPtr<16CCinematicCamera>FR7CEntity" +/* 80018714 00015674 80 9F 08 B8 */ lwz r4, 0x8b8(r31) +/* 80018718 00015678 80 A3 00 04 */ lwz r5, 4(r3) +/* 8001871C 0001567C 80 64 00 00 */ lwz r3, 0(r4) +/* 80018720 00015680 88 03 00 00 */ lbz r0, 0(r3) +/* 80018724 00015684 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80018728 00015688 41 82 00 24 */ beq lbl_8001874C +/* 8001872C 0001568C 80 1E 02 F4 */ lwz r0, 0x2f4(r30) +/* 80018730 00015690 2C 00 00 04 */ cmpwi r0, 4 +/* 80018734 00015694 40 82 00 20 */ bne lbl_80018754 +/* 80018738 00015698 28 05 00 00 */ cmplwi r5, 0 +/* 8001873C 0001569C 41 82 00 18 */ beq lbl_80018754 +/* 80018740 000156A0 80 05 02 1C */ lwz r0, 0x21c(r5) +/* 80018744 000156A4 54 00 06 31 */ rlwinm. r0, r0, 0, 0x18, 0x18 +/* 80018748 000156A8 41 82 00 0C */ beq lbl_80018754 +lbl_8001874C: +/* 8001874C 000156AC 38 60 00 00 */ li r3, 0 +/* 80018750 000156B0 48 00 00 08 */ b lbl_80018758 +lbl_80018754: +/* 80018754 000156B4 38 60 00 01 */ li r3, 1 +lbl_80018758: +/* 80018758 000156B8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001875C 000156BC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80018760 000156C0 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80018764 000156C4 7C 08 03 A6 */ mtlr r0 +/* 80018768 000156C8 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001876C 000156CC 4E 80 00 20 */ blr + +.global Update__7CPlayerFfR13CStateManager +Update__7CPlayerFfR13CStateManager: +/* 80018770 000156D0 94 21 FE B0 */ stwu r1, -0x150(r1) +/* 80018774 000156D4 7C 08 02 A6 */ mflr r0 +/* 80018778 000156D8 90 01 01 54 */ stw r0, 0x154(r1) +/* 8001877C 000156DC DB E1 01 40 */ stfd f31, 0x140(r1) +/* 80018780 000156E0 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 +/* 80018784 000156E4 93 E1 01 3C */ stw r31, 0x13c(r1) +/* 80018788 000156E8 93 C1 01 38 */ stw r30, 0x138(r1) +/* 8001878C 000156EC 93 A1 01 34 */ stw r29, 0x134(r1) +/* 80018790 000156F0 D0 21 00 08 */ stfs f1, 8(r1) +/* 80018794 000156F4 7C 7E 1B 78 */ mr r30, r3 +/* 80018798 000156F8 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 8001879C 000156FC 7C 9F 23 78 */ mr r31, r4 +/* 800187A0 00015700 48 10 1D 41 */ bl SetCoefficientOfRestitutionModifier__13CPhysicsActorFf +/* 800187A4 00015704 C0 21 00 08 */ lfs f1, 8(r1) +/* 800187A8 00015708 7F C3 F3 78 */ mr r3, r30 +/* 800187AC 0001570C 7F E4 FB 78 */ mr r4, r31 +/* 800187B0 00015710 48 26 95 B9 */ bl UpdateMorphBallTransition__7CPlayerFfR13CStateManager +/* 800187B4 00015714 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 800187B8 00015718 80 1E 07 EC */ lwz r0, 0x7ec(r30) +/* 800187BC 0001571C 80 63 00 00 */ lwz r3, 0(r3) +/* 800187C0 00015720 80 63 00 08 */ lwz r3, 8(r3) +/* 800187C4 00015724 7C 00 18 00 */ cmpw r0, r3 +/* 800187C8 00015728 41 82 00 B4 */ beq lbl_8001887C +/* 800187CC 0001572C 90 7E 07 EC */ stw r3, 0x7ec(r30) +/* 800187D0 00015730 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13) +/* 800187D4 00015734 80 9E 07 EC */ lwz r4, 0x7ec(r30) +/* 800187D8 00015738 48 19 3A 61 */ bl GetBallTransitionBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId +/* 800187DC 0001573C 90 61 00 44 */ stw r3, 0x44(r1) +/* 800187E0 00015740 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 800187E4 00015744 38 81 00 44 */ addi r4, r1, 0x44 +/* 800187E8 00015748 C0 1E 07 D8 */ lfs f0, 0x7d8(r30) +/* 800187EC 0001574C D0 01 00 48 */ stfs f0, 0x48(r1) +/* 800187F0 00015750 C0 1E 07 DC */ lfs f0, 0x7dc(r30) +/* 800187F4 00015754 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 800187F8 00015758 C0 1E 07 E0 */ lfs f0, 0x7e0(r30) +/* 800187FC 0001575C D0 01 00 50 */ stfs f0, 0x50(r1) +/* 80018800 00015760 48 0F E5 5D */ bl __ct__10CModelDataFRC10CStaticRes +/* 80018804 00015764 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 80018808 00015768 38 60 00 00 */ li r3, 0 +/* 8001880C 0001576C 28 00 00 00 */ cmplwi r0, 0 +/* 80018810 00015770 40 82 00 14 */ bne lbl_80018824 +/* 80018814 00015774 88 01 01 0C */ lbz r0, 0x10c(r1) +/* 80018818 00015778 28 00 00 00 */ cmplwi r0, 0 +/* 8001881C 0001577C 40 82 00 08 */ bne lbl_80018824 +/* 80018820 00015780 38 60 00 01 */ li r3, 1 +lbl_80018824: +/* 80018824 00015784 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80018828 00015788 41 82 00 0C */ beq lbl_80018834 +/* 8001882C 0001578C 3B A0 00 00 */ li r29, 0 +/* 80018830 00015790 48 00 00 30 */ b lbl_80018860 +lbl_80018834: +/* 80018834 00015794 3C 80 80 3D */ lis r4, lbl_803CC4F8@ha +/* 80018838 00015798 38 60 00 4C */ li r3, 0x4c +/* 8001883C 0001579C 38 84 C4 F8 */ addi r4, r4, lbl_803CC4F8@l +/* 80018840 000157A0 38 A0 00 00 */ li r5, 0 +/* 80018844 000157A4 38 84 00 1D */ addi r4, r4, 0x1d +/* 80018848 000157A8 48 2F D0 25 */ bl __nw__FUlPCcPCc +/* 8001884C 000157AC 7C 7D 1B 79 */ or. r29, r3, r3 +/* 80018850 000157B0 41 82 00 10 */ beq lbl_80018860 +/* 80018854 000157B4 38 81 00 E4 */ addi r4, r1, 0xe4 +/* 80018858 000157B8 48 00 05 35 */ bl __ct__10CModelDataFRC10CModelData +/* 8001885C 000157BC 7C 7D 1B 78 */ mr r29, r3 +lbl_80018860: +/* 80018860 000157C0 80 7E 07 F0 */ lwz r3, 0x7f0(r30) +/* 80018864 000157C4 38 80 00 01 */ li r4, 1 +/* 80018868 000157C8 48 0F E1 E5 */ bl __dt__10CModelDataFv +/* 8001886C 000157CC 93 BE 07 F0 */ stw r29, 0x7f0(r30) +/* 80018870 000157D0 38 61 00 E4 */ addi r3, r1, 0xe4 +/* 80018874 000157D4 38 80 FF FF */ li r4, -1 +/* 80018878 000157D8 48 0F E1 D5 */ bl __dt__10CModelDataFv +lbl_8001887C: +/* 8001887C 000157DC 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80018880 000157E0 80 63 00 00 */ lwz r3, 0(r3) +/* 80018884 000157E4 88 03 00 00 */ lbz r0, 0(r3) +/* 80018888 000157E8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 8001888C 000157EC 40 82 01 08 */ bne lbl_80018994 +/* 80018890 000157F0 C3 FE 09 F4 */ lfs f31, 0x9f4(r30) +/* 80018894 000157F4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80018898 000157F8 FC 00 F8 00 */ fcmpu cr0, f0, f31 +/* 8001889C 000157FC 40 82 00 54 */ bne lbl_800188F0 +/* 800188A0 00015800 38 60 00 01 */ li r3, 1 +/* 800188A4 00015804 48 2D 12 11 */ bl KillAll__11CSfxManagerFQ211CSfxManager12ESfxChannels +/* 800188A8 00015808 48 34 CF FD */ bl StopAll__19CStreamAudioManagerFv +/* 800188AC 0001580C 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 800188B0 00015810 2C 00 00 00 */ cmpwi r0, 0 +/* 800188B4 00015814 40 82 00 3C */ bne lbl_800188F0 +/* 800188B8 00015818 A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 800188BC 0001581C 38 61 00 2C */ addi r3, r1, 0x2c +/* 800188C0 00015820 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 800188C4 00015824 38 80 05 EC */ li r4, 0x5ec +/* 800188C8 00015828 38 A0 00 7F */ li r5, 0x7f +/* 800188CC 0001582C 38 C0 00 40 */ li r6, 0x40 +/* 800188D0 00015830 38 E0 00 00 */ li r7, 0 +/* 800188D4 00015834 39 20 00 00 */ li r9, 0 +/* 800188D8 00015838 48 2D 14 9D */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 800188DC 0001583C 80 01 00 2C */ lwz r0, 0x2c(r1) +/* 800188E0 00015840 7F C3 F3 78 */ mr r3, r30 +/* 800188E4 00015844 38 81 00 30 */ addi r4, r1, 0x30 +/* 800188E8 00015848 90 01 00 30 */ stw r0, 0x30(r1) +/* 800188EC 0001584C 4B FF 88 A1 */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +lbl_800188F0: +/* 800188F0 00015850 C0 3E 09 F4 */ lfs f1, 0x9f4(r30) +/* 800188F4 00015854 C0 01 00 08 */ lfs f0, 8(r1) +/* 800188F8 00015858 EC 01 00 2A */ fadds f0, f1, f0 +/* 800188FC 0001585C D0 1E 09 F4 */ stfs f0, 0x9f4(r30) +/* 80018900 00015860 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80018904 00015864 2C 00 00 00 */ cmpwi r0, 0 +/* 80018908 00015868 41 82 00 8C */ beq lbl_80018994 +/* 8001890C 0001586C C0 3E 09 F4 */ lfs f1, 0x9f4(r30) +/* 80018910 00015870 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80018914 00015874 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80018918 00015878 4C 41 13 82 */ cror 2, 1, 2 +/* 8001891C 0001587C 40 82 00 24 */ bne lbl_80018940 +/* 80018920 00015880 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80018924 00015884 40 80 00 1C */ bge lbl_80018940 +/* 80018928 00015888 80 9E 04 90 */ lwz r4, 0x490(r30) +/* 8001892C 0001588C 7F E5 FB 78 */ mr r5, r31 +/* 80018930 00015890 38 61 00 0C */ addi r3, r1, 0xc +/* 80018934 00015894 48 02 1F D1 */ bl DropPowerBomb__10CPlayerGunCFR13CStateManager +/* 80018938 00015898 A0 01 00 0C */ lhz r0, 0xc(r1) +/* 8001893C 0001589C B0 1E 0A 00 */ sth r0, 0xa00(r30) +lbl_80018940: +/* 80018940 000158A0 C0 3E 09 F4 */ lfs f1, 0x9f4(r30) +/* 80018944 000158A4 C0 02 81 74 */ lfs f0, lbl_805A9E94@sda21(r2) +/* 80018948 000158A8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001894C 000158AC 4C 41 13 82 */ cror 2, 1, 2 +/* 80018950 000158B0 40 82 00 44 */ bne lbl_80018994 +/* 80018954 000158B4 FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80018958 000158B8 40 80 00 3C */ bge lbl_80018994 +/* 8001895C 000158BC A9 02 C5 FA */ lha r8, lbl_805AE31A@sda21(r2) +/* 80018960 000158C0 38 61 00 24 */ addi r3, r1, 0x24 +/* 80018964 000158C4 81 42 C6 00 */ lwz r10, lbl_805AE320@sda21(r2) +/* 80018968 000158C8 38 80 05 EC */ li r4, 0x5ec +/* 8001896C 000158CC 38 A0 00 7F */ li r5, 0x7f +/* 80018970 000158D0 38 C0 00 40 */ li r6, 0x40 +/* 80018974 000158D4 38 E0 00 00 */ li r7, 0 +/* 80018978 000158D8 39 20 00 00 */ li r9, 0 +/* 8001897C 000158DC 48 2D 13 F9 */ bl SfxStart__11CSfxManagerFUsssbsbi +/* 80018980 000158E0 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80018984 000158E4 7F C3 F3 78 */ mr r3, r30 +/* 80018988 000158E8 38 81 00 28 */ addi r4, r1, 0x28 +/* 8001898C 000158EC 90 01 00 28 */ stw r0, 0x28(r1) +/* 80018990 000158F0 4B FF 87 FD */ bl ApplySubmergedPitchBend__7CPlayerFR10CSfxHandle +lbl_80018994: +/* 80018994 000158F4 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80018998 000158F8 2C 00 00 01 */ cmpwi r0, 1 +/* 8001899C 000158FC 41 82 00 68 */ beq lbl_80018A04 +/* 800189A0 00015900 40 80 00 10 */ bge lbl_800189B0 +/* 800189A4 00015904 2C 00 00 00 */ cmpwi r0, 0 +/* 800189A8 00015908 40 80 00 10 */ bge lbl_800189B8 +/* 800189AC 0001590C 48 00 00 58 */ b lbl_80018A04 +lbl_800189B0: +/* 800189B0 00015910 2C 00 00 04 */ cmpwi r0, 4 +/* 800189B4 00015914 40 80 00 50 */ bge lbl_80018A04 +lbl_800189B8: +/* 800189B8 00015918 80 82 80 F4 */ lwz r4, lbl_805A9E14@sda21(r2) +/* 800189BC 0001591C 38 61 00 34 */ addi r3, r1, 0x34 +/* 800189C0 00015920 4B FE C2 F9 */ bl string_l__4rstlFPCc +/* 800189C4 00015924 80 9E 00 64 */ lwz r4, 0x64(r30) +/* 800189C8 00015928 38 61 00 84 */ addi r3, r1, 0x84 +/* 800189CC 0001592C 38 A1 00 34 */ addi r5, r1, 0x34 +/* 800189D0 00015930 48 0F CF D1 */ bl "GetScaledLocatorTransform__10CModelDataCFRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>" +/* 800189D4 00015934 38 61 00 B4 */ addi r3, r1, 0xb4 +/* 800189D8 00015938 38 81 00 84 */ addi r4, r1, 0x84 +/* 800189DC 0001593C 48 2F A1 99 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 800189E0 00015940 38 61 00 34 */ addi r3, r1, 0x34 +/* 800189E4 00015944 48 32 50 FD */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 800189E8 00015948 38 61 00 54 */ addi r3, r1, 0x54 +/* 800189EC 0001594C 38 9E 00 34 */ addi r4, r30, 0x34 +/* 800189F0 00015950 38 A1 00 B4 */ addi r5, r1, 0xb4 +/* 800189F4 00015954 48 2F 9F 5D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 800189F8 00015958 38 7E 07 F4 */ addi r3, r30, 0x7f4 +/* 800189FC 0001595C 38 81 00 54 */ addi r4, r1, 0x54 +/* 80018A00 00015960 48 2F A1 41 */ bl __as__12CTransform4fFRC12CTransform4f +lbl_80018A04: +/* 80018A04 00015964 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80018A08 00015968 2C 00 00 00 */ cmpwi r0, 0 +/* 80018A0C 0001596C 40 82 00 28 */ bne lbl_80018A34 +/* 80018A10 00015970 C0 21 00 08 */ lfs f1, 8(r1) +/* 80018A14 00015974 7F C3 F3 78 */ mr r3, r30 +/* 80018A18 00015978 48 16 33 3D */ bl UpdateAimTargetTimer__7CPlayerFf +/* 80018A1C 0001597C 7F C3 F3 78 */ mr r3, r30 +/* 80018A20 00015980 7F E4 FB 78 */ mr r4, r31 +/* 80018A24 00015984 48 16 30 7D */ bl UpdateAimTarget__7CPlayerFR13CStateManager +/* 80018A28 00015988 C0 21 00 08 */ lfs f1, 8(r1) +/* 80018A2C 0001598C 7F C3 F3 78 */ mr r3, r30 +/* 80018A30 00015990 48 16 57 25 */ bl UpdateOrbitModeTimer__7CPlayerFf +lbl_80018A34: +/* 80018A34 00015994 C0 21 00 08 */ lfs f1, 8(r1) +/* 80018A38 00015998 7F C3 F3 78 */ mr r3, r30 +/* 80018A3C 0001599C 48 16 56 FD */ bl UpdateOrbitPreventionTimer__7CPlayerFf +/* 80018A40 000159A0 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80018A44 000159A4 2C 00 00 01 */ cmpwi r0, 1 +/* 80018A48 000159A8 40 82 00 18 */ bne lbl_80018A60 +/* 80018A4C 000159AC 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80018A50 000159B0 7F E4 FB 78 */ mr r4, r31 +/* 80018A54 000159B4 C0 21 00 08 */ lfs f1, 8(r1) +/* 80018A58 000159B8 48 0D CF 1D */ bl Update__10CMorphBallFfR13CStateManager +/* 80018A5C 000159BC 48 00 00 0C */ b lbl_80018A68 +lbl_80018A60: +/* 80018A60 000159C0 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80018A64 000159C4 48 0D 5E 09 */ bl StopSounds__10CMorphBallFv +lbl_80018A68: +/* 80018A68 000159C8 80 1E 02 F8 */ lwz r0, 0x2f8(r30) +/* 80018A6C 000159CC 2C 00 00 02 */ cmpwi r0, 2 +/* 80018A70 000159D0 41 82 00 0C */ beq lbl_80018A7C +/* 80018A74 000159D4 2C 00 00 03 */ cmpwi r0, 3 +/* 80018A78 000159D8 40 82 00 14 */ bne lbl_80018A8C +lbl_80018A7C: +/* 80018A7C 000159DC 80 7E 07 68 */ lwz r3, 0x768(r30) +/* 80018A80 000159E0 7F E4 FB 78 */ mr r4, r31 +/* 80018A84 000159E4 C0 21 00 08 */ lfs f1, 8(r1) +/* 80018A88 000159E8 48 0D BD E1 */ bl UpdateEffects__10CMorphBallFfR13CStateManager +lbl_80018A8C: +/* 80018A8C 000159EC 7F C3 F3 78 */ mr r3, r30 +/* 80018A90 000159F0 4B FF BA BD */ bl UpdateGunAlpha__7CPlayerFRC13CStateManager +/* 80018A94 000159F4 7F C3 F3 78 */ mr r3, r30 +/* 80018A98 000159F8 7F E4 FB 78 */ mr r4, r31 +/* 80018A9C 000159FC 48 00 06 2D */ bl UpdateDebugCamera__7CPlayerFR13CStateManager +/* 80018AA0 00015A00 C0 21 00 08 */ lfs f1, 8(r1) +/* 80018AA4 00015A04 7F C3 F3 78 */ mr r3, r30 +/* 80018AA8 00015A08 7F E4 FB 78 */ mr r4, r31 +/* 80018AAC 00015A0C 4B FF FA 31 */ bl UpdateVisorTransition__7CPlayerFfR13CStateManager +/* 80018AB0 00015A10 80 DF 08 50 */ lwz r6, 0x850(r31) +/* 80018AB4 00015A14 7F E3 FB 78 */ mr r3, r31 +/* 80018AB8 00015A18 7F C4 F3 78 */ mr r4, r30 +/* 80018ABC 00015A1C 38 A1 00 20 */ addi r5, r1, 0x20 +/* 80018AC0 00015A20 80 06 00 68 */ lwz r0, 0x68(r6) +/* 80018AC4 00015A24 90 01 00 1C */ stw r0, 0x1c(r1) +/* 80018AC8 00015A28 90 01 00 20 */ stw r0, 0x20(r1) +/* 80018ACC 00015A2C 48 02 C7 AD */ bl SetActorAreaId__13CStateManagerFR6CActor7TAreaId +/* 80018AD0 00015A30 C0 21 00 08 */ lfs f1, 8(r1) +/* 80018AD4 00015A34 7F C3 F3 78 */ mr r3, r30 +/* 80018AD8 00015A38 4B FF F9 61 */ bl UpdatePlayerSounds__7CPlayerFf +/* 80018ADC 00015A3C A0 7E 02 6C */ lhz r3, 0x26c(r30) +/* 80018AE0 00015A40 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80018AE4 00015A44 7C 03 00 40 */ cmplw r3, r0 +/* 80018AE8 00015A48 41 82 00 14 */ beq lbl_80018AFC +/* 80018AEC 00015A4C C0 3E 02 70 */ lfs f1, 0x270(r30) +/* 80018AF0 00015A50 C0 01 00 08 */ lfs f0, 8(r1) +/* 80018AF4 00015A54 EC 01 00 2A */ fadds f0, f1, f0 +/* 80018AF8 00015A58 D0 1E 02 70 */ stfs f0, 0x270(r30) +lbl_80018AFC: +/* 80018AFC 00015A5C C0 5E 07 40 */ lfs f2, 0x740(r30) +/* 80018B00 00015A60 C0 21 00 08 */ lfs f1, 8(r1) +/* 80018B04 00015A64 C0 0D 80 BC */ lfs f0, lbl_805A6C7C@sda21(r13) +/* 80018B08 00015A68 EC 22 08 28 */ fsubs f1, f2, f1 +/* 80018B0C 00015A6C FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80018B10 00015A70 D0 21 00 18 */ stfs f1, 0x18(r1) +/* 80018B14 00015A74 40 80 00 0C */ bge lbl_80018B20 +/* 80018B18 00015A78 38 61 00 18 */ addi r3, r1, 0x18 +/* 80018B1C 00015A7C 48 00 00 08 */ b lbl_80018B24 +lbl_80018B20: +/* 80018B20 00015A80 38 6D 80 BC */ addi r3, r13, lbl_805A6C7C@sda21 +lbl_80018B24: +/* 80018B24 00015A84 C0 23 00 00 */ lfs f1, 0(r3) +/* 80018B28 00015A88 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80018B2C 00015A8C D0 3E 07 40 */ stfs f1, 0x740(r30) +/* 80018B30 00015A90 C0 3E 07 40 */ lfs f1, 0x740(r30) +/* 80018B34 00015A94 C0 7E 07 44 */ lfs f3, 0x744(r30) +/* 80018B38 00015A98 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80018B3C 00015A9C C0 9E 07 48 */ lfs f4, 0x748(r30) +/* 80018B40 00015AA0 40 81 00 38 */ ble lbl_80018B78 +/* 80018B44 00015AA4 C0 41 00 08 */ lfs f2, 8(r1) +/* 80018B48 00015AA8 C0 3E 07 4C */ lfs f1, 0x74c(r30) +/* 80018B4C 00015AAC C0 0D 80 C0 */ lfs f0, lbl_805A6C80@sda21(r13) +/* 80018B50 00015AB0 EC 22 08 FC */ fnmsubs f1, f2, f3, f1 +/* 80018B54 00015AB4 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80018B58 00015AB8 D0 21 00 14 */ stfs f1, 0x14(r1) +/* 80018B5C 00015ABC 40 80 00 0C */ bge lbl_80018B68 +/* 80018B60 00015AC0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80018B64 00015AC4 48 00 00 08 */ b lbl_80018B6C +lbl_80018B68: +/* 80018B68 00015AC8 38 6D 80 C0 */ addi r3, r13, lbl_805A6C80@sda21 +lbl_80018B6C: +/* 80018B6C 00015ACC C0 03 00 00 */ lfs f0, 0(r3) +/* 80018B70 00015AD0 D0 1E 07 4C */ stfs f0, 0x74c(r30) +/* 80018B74 00015AD4 48 00 00 34 */ b lbl_80018BA8 +lbl_80018B78: +/* 80018B78 00015AD8 C0 41 00 08 */ lfs f2, 8(r1) +/* 80018B7C 00015ADC C0 3E 07 4C */ lfs f1, 0x74c(r30) +/* 80018B80 00015AE0 C0 0D 80 C4 */ lfs f0, lbl_805A6C84@sda21(r13) +/* 80018B84 00015AE4 EC 22 09 3A */ fmadds f1, f2, f4, f1 +/* 80018B88 00015AE8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80018B8C 00015AEC D0 21 00 10 */ stfs f1, 0x10(r1) +/* 80018B90 00015AF0 40 80 00 0C */ bge lbl_80018B9C +/* 80018B94 00015AF4 38 61 00 10 */ addi r3, r1, 0x10 +/* 80018B98 00015AF8 48 00 00 08 */ b lbl_80018BA0 +lbl_80018B9C: +/* 80018B9C 00015AFC 38 6D 80 C4 */ addi r3, r13, lbl_805A6C84@sda21 +lbl_80018BA0: +/* 80018BA0 00015B00 C0 03 00 00 */ lfs f0, 0(r3) +/* 80018BA4 00015B04 D0 1E 07 4C */ stfs f0, 0x74c(r30) +lbl_80018BA8: +/* 80018BA8 00015B08 C0 21 00 08 */ lfs f1, 8(r1) +/* 80018BAC 00015B0C 7F E4 FB 78 */ mr r4, r31 +/* 80018BB0 00015B10 38 7E 02 74 */ addi r3, r30, 0x274 +/* 80018BB4 00015B14 48 19 BA 19 */ bl ProcessEnergyDrain__18CPlayerEnergyDrainFRC13CStateManagerf +/* 80018BB8 00015B18 80 1E 04 A4 */ lwz r0, 0x4a4(r30) +/* 80018BBC 00015B1C 2C 00 00 14 */ cmpwi r0, 0x14 +/* 80018BC0 00015B20 40 80 00 28 */ bge lbl_80018BE8 +/* 80018BC4 00015B24 54 00 10 3A */ slwi r0, r0, 2 +/* 80018BC8 00015B28 7C 7E 02 14 */ add r3, r30, r0 +/* 80018BCC 00015B2C 34 63 04 A8 */ addic. r3, r3, 0x4a8 +/* 80018BD0 00015B30 41 82 00 0C */ beq lbl_80018BDC +/* 80018BD4 00015B34 C0 1E 04 F8 */ lfs f0, 0x4f8(r30) +/* 80018BD8 00015B38 D0 03 00 00 */ stfs f0, 0(r3) +lbl_80018BDC: +/* 80018BDC 00015B3C 80 7E 04 A4 */ lwz r3, 0x4a4(r30) +/* 80018BE0 00015B40 38 03 00 01 */ addi r0, r3, 1 +/* 80018BE4 00015B44 90 1E 04 A4 */ stw r0, 0x4a4(r30) +lbl_80018BE8: +/* 80018BE8 00015B48 80 7E 04 A4 */ lwz r3, 0x4a4(r30) +/* 80018BEC 00015B4C 38 FE 04 A8 */ addi r7, r30, 0x4a8 +/* 80018BF0 00015B50 34 A3 FF FF */ addic. r5, r3, -1 +/* 80018BF4 00015B54 54 A0 10 3A */ slwi r0, r5, 2 +/* 80018BF8 00015B58 7C A3 2B 78 */ mr r3, r5 +/* 80018BFC 00015B5C 7C C7 02 14 */ add r6, r7, r0 +/* 80018C00 00015B60 40 81 00 C4 */ ble lbl_80018CC4 +/* 80018C04 00015B64 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f +/* 80018C08 00015B68 7C 09 03 A6 */ mtctr r0 +/* 80018C0C 00015B6C 41 82 00 98 */ beq lbl_80018CA4 +lbl_80018C10: +/* 80018C10 00015B70 38 85 FF FF */ addi r4, r5, -1 +/* 80018C14 00015B74 54 80 10 3A */ slwi r0, r4, 2 +/* 80018C18 00015B78 7C 07 04 2E */ lfsx f0, r7, r0 +/* 80018C1C 00015B7C 38 85 FF FE */ addi r4, r5, -2 +/* 80018C20 00015B80 54 80 10 3A */ slwi r0, r4, 2 +/* 80018C24 00015B84 D0 06 00 00 */ stfs f0, 0(r6) +/* 80018C28 00015B88 38 85 FF FD */ addi r4, r5, -3 +/* 80018C2C 00015B8C 7C 07 04 2E */ lfsx f0, r7, r0 +/* 80018C30 00015B90 54 80 10 3A */ slwi r0, r4, 2 +/* 80018C34 00015B94 38 85 FF FC */ addi r4, r5, -4 +/* 80018C38 00015B98 D0 06 FF FC */ stfs f0, -4(r6) +/* 80018C3C 00015B9C 7C 07 04 2E */ lfsx f0, r7, r0 +/* 80018C40 00015BA0 54 80 10 3A */ slwi r0, r4, 2 +/* 80018C44 00015BA4 38 85 FF FB */ addi r4, r5, -5 +/* 80018C48 00015BA8 D0 06 FF F8 */ stfs f0, -8(r6) +/* 80018C4C 00015BAC 7C 07 04 2E */ lfsx f0, r7, r0 +/* 80018C50 00015BB0 54 80 10 3A */ slwi r0, r4, 2 +/* 80018C54 00015BB4 38 85 FF FA */ addi r4, r5, -6 +/* 80018C58 00015BB8 D0 06 FF F4 */ stfs f0, -0xc(r6) +/* 80018C5C 00015BBC 7C 07 04 2E */ lfsx f0, r7, r0 +/* 80018C60 00015BC0 54 80 10 3A */ slwi r0, r4, 2 +/* 80018C64 00015BC4 38 85 FF F9 */ addi r4, r5, -7 +/* 80018C68 00015BC8 D0 06 FF F0 */ stfs f0, -0x10(r6) +/* 80018C6C 00015BCC 7C 07 04 2E */ lfsx f0, r7, r0 +/* 80018C70 00015BD0 54 80 10 3A */ slwi r0, r4, 2 +/* 80018C74 00015BD4 38 85 FF F8 */ addi r4, r5, -8 +/* 80018C78 00015BD8 38 A5 FF F8 */ addi r5, r5, -8 +/* 80018C7C 00015BDC D0 06 FF EC */ stfs f0, -0x14(r6) +/* 80018C80 00015BE0 7C 07 04 2E */ lfsx f0, r7, r0 +/* 80018C84 00015BE4 54 80 10 3A */ slwi r0, r4, 2 +/* 80018C88 00015BE8 D0 06 FF E8 */ stfs f0, -0x18(r6) +/* 80018C8C 00015BEC 7C 07 04 2E */ lfsx f0, r7, r0 +/* 80018C90 00015BF0 D0 06 FF E4 */ stfs f0, -0x1c(r6) +/* 80018C94 00015BF4 38 C6 FF E0 */ addi r6, r6, -32 +/* 80018C98 00015BF8 42 00 FF 78 */ bdnz lbl_80018C10 +/* 80018C9C 00015BFC 70 63 00 07 */ andi. r3, r3, 7 +/* 80018CA0 00015C00 41 82 00 24 */ beq lbl_80018CC4 +lbl_80018CA4: +/* 80018CA4 00015C04 7C 69 03 A6 */ mtctr r3 +lbl_80018CA8: +/* 80018CA8 00015C08 38 85 FF FF */ addi r4, r5, -1 +/* 80018CAC 00015C0C 38 A5 FF FF */ addi r5, r5, -1 +/* 80018CB0 00015C10 54 80 10 3A */ slwi r0, r4, 2 +/* 80018CB4 00015C14 7C 07 04 2E */ lfsx f0, r7, r0 +/* 80018CB8 00015C18 D0 06 00 00 */ stfs f0, 0(r6) +/* 80018CBC 00015C1C 38 C6 FF FC */ addi r6, r6, -4 +/* 80018CC0 00015C20 42 00 FF E8 */ bdnz lbl_80018CA8 +lbl_80018CC4: +/* 80018CC4 00015C24 C0 1E 04 F8 */ lfs f0, 0x4f8(r30) +/* 80018CC8 00015C28 7F E4 FB 78 */ mr r4, r31 +/* 80018CCC 00015C2C 38 A1 00 08 */ addi r5, r1, 8 +/* 80018CD0 00015C30 D0 07 00 00 */ stfs f0, 0(r7) +/* 80018CD4 00015C34 80 7F 08 B8 */ lwz r3, 0x8b8(r31) +/* 80018CD8 00015C38 80 63 00 00 */ lwz r3, 0(r3) +/* 80018CDC 00015C3C 48 07 88 D1 */ bl UpdateStaticInterference__12CPlayerStateFR13CStateManagerRCf +/* 80018CE0 00015C40 7F C3 F3 78 */ mr r3, r30 +/* 80018CE4 00015C44 7F E4 FB 78 */ mr r4, r31 +/* 80018CE8 00015C48 4B FF F9 FD */ bl ShouldSampleFailsafe__7CPlayerCFv +/* 80018CEC 00015C4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80018CF0 00015C50 40 82 00 0C */ bne lbl_80018CFC +/* 80018CF4 00015C54 7F C3 F3 78 */ mr r3, r30 +/* 80018CF8 00015C58 48 10 26 81 */ bl Stop__13CPhysicsActorFv +lbl_80018CFC: +/* 80018CFC 00015C5C 7F C3 F3 78 */ mr r3, r30 +/* 80018D00 00015C60 7F E4 FB 78 */ mr r4, r31 +/* 80018D04 00015C64 4B FF 7D AD */ bl IsEnergyLow__7CPlayerCFRC13CStateManager +/* 80018D08 00015C68 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80018D0C 00015C6C 41 82 00 14 */ beq lbl_80018D20 +/* 80018D10 00015C70 C0 3E 0A 30 */ lfs f1, 0xa30(r30) +/* 80018D14 00015C74 C0 01 00 08 */ lfs f0, 8(r1) +/* 80018D18 00015C78 EC 01 00 28 */ fsubs f0, f1, f0 +/* 80018D1C 00015C7C 48 00 00 08 */ b lbl_80018D24 +lbl_80018D20: +/* 80018D20 00015C80 C0 02 81 74 */ lfs f0, lbl_805A9E94@sda21(r2) +lbl_80018D24: +/* 80018D24 00015C84 D0 1E 0A 30 */ stfs f0, 0xa30(r30) +/* 80018D28 00015C88 80 7F 08 70 */ lwz r3, 0x870(r31) +/* 80018D2C 00015C8C 4B FF 1B D5 */ bl IsInCinematicCamera__14CCameraManagerCFv +/* 80018D30 00015C90 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80018D34 00015C94 40 82 00 34 */ bne lbl_80018D68 +/* 80018D38 00015C98 C0 3E 0A 30 */ lfs f1, 0xa30(r30) +/* 80018D3C 00015C9C C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80018D40 00015CA0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80018D44 00015CA4 4C 40 13 82 */ cror 2, 0, 2 +/* 80018D48 00015CA8 40 82 00 20 */ bne lbl_80018D68 +/* 80018D4C 00015CAC 7F C3 F3 78 */ mr r3, r30 +/* 80018D50 00015CB0 38 80 06 37 */ li r4, 0x637 +/* 80018D54 00015CB4 38 A0 00 7F */ li r5, 0x7f +/* 80018D58 00015CB8 38 C0 00 07 */ li r6, 7 +/* 80018D5C 00015CBC 4B FF 7F 05 */ bl StartSamusVoiceSfx__7CPlayerFUssi +/* 80018D60 00015CC0 C0 02 81 74 */ lfs f0, lbl_805A9E94@sda21(r2) +/* 80018D64 00015CC4 D0 1E 0A 30 */ stfs f0, 0xa30(r30) +lbl_80018D68: +/* 80018D68 00015CC8 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 +/* 80018D6C 00015CCC 80 01 01 54 */ lwz r0, 0x154(r1) +/* 80018D70 00015CD0 CB E1 01 40 */ lfd f31, 0x140(r1) +/* 80018D74 00015CD4 83 E1 01 3C */ lwz r31, 0x13c(r1) +/* 80018D78 00015CD8 83 C1 01 38 */ lwz r30, 0x138(r1) +/* 80018D7C 00015CDC 83 A1 01 34 */ lwz r29, 0x134(r1) +/* 80018D80 00015CE0 7C 08 03 A6 */ mtlr r0 +/* 80018D84 00015CE4 38 21 01 50 */ addi r1, r1, 0x150 +/* 80018D88 00015CE8 4E 80 00 20 */ blr + +.global __ct__10CModelDataFRC10CModelData +__ct__10CModelDataFRC10CModelData: +/* 80018D8C 00015CEC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80018D90 00015CF0 7C 08 02 A6 */ mflr r0 +/* 80018D94 00015CF4 90 01 00 24 */ stw r0, 0x24(r1) +/* 80018D98 00015CF8 38 00 00 00 */ li r0, 0 +/* 80018D9C 00015CFC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80018DA0 00015D00 7C 9F 23 78 */ mr r31, r4 +/* 80018DA4 00015D04 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80018DA8 00015D08 7C 7E 1B 78 */ mr r30, r3 +/* 80018DAC 00015D0C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80018DB0 00015D10 93 81 00 10 */ stw r28, 0x10(r1) +/* 80018DB4 00015D14 C0 04 00 00 */ lfs f0, 0(r4) +/* 80018DB8 00015D18 D0 03 00 00 */ stfs f0, 0(r3) +/* 80018DBC 00015D1C C0 04 00 04 */ lfs f0, 4(r4) +/* 80018DC0 00015D20 D0 03 00 04 */ stfs f0, 4(r3) +/* 80018DC4 00015D24 C0 04 00 08 */ lfs f0, 8(r4) +/* 80018DC8 00015D28 D0 03 00 08 */ stfs f0, 8(r3) +/* 80018DCC 00015D2C 88 64 00 0C */ lbz r3, 0xc(r4) +/* 80018DD0 00015D30 98 7E 00 0C */ stb r3, 0xc(r30) +/* 80018DD4 00015D34 80 64 00 10 */ lwz r3, 0x10(r4) +/* 80018DD8 00015D38 90 7E 00 10 */ stw r3, 0x10(r30) +/* 80018DDC 00015D3C 98 04 00 0C */ stb r0, 0xc(r4) +/* 80018DE0 00015D40 88 04 00 14 */ lbz r0, 0x14(r4) +/* 80018DE4 00015D44 98 1E 00 14 */ stb r0, 0x14(r30) +/* 80018DE8 00015D48 80 04 00 18 */ lwz r0, 0x18(r4) +/* 80018DEC 00015D4C 90 1E 00 18 */ stw r0, 0x18(r30) +/* 80018DF0 00015D50 88 04 00 28 */ lbz r0, 0x28(r4) +/* 80018DF4 00015D54 98 1E 00 28 */ stb r0, 0x28(r30) +/* 80018DF8 00015D58 88 04 00 28 */ lbz r0, 0x28(r4) +/* 80018DFC 00015D5C 28 00 00 00 */ cmplwi r0, 0 +/* 80018E00 00015D60 41 82 00 2C */ beq lbl_80018E2C +/* 80018E04 00015D64 37 BE 00 1C */ addic. r29, r30, 0x1c +/* 80018E08 00015D68 3B 9F 00 1C */ addi r28, r31, 0x1c +/* 80018E0C 00015D6C 41 82 00 20 */ beq lbl_80018E2C +/* 80018E10 00015D70 7F A3 EB 78 */ mr r3, r29 +/* 80018E14 00015D74 7F 84 E3 78 */ mr r4, r28 +/* 80018E18 00015D78 48 32 80 91 */ bl __ct__6CTokenFRC6CToken +/* 80018E1C 00015D7C 80 1C 00 08 */ lwz r0, 8(r28) +/* 80018E20 00015D80 7F A3 EB 78 */ mr r3, r29 +/* 80018E24 00015D84 90 1D 00 08 */ stw r0, 8(r29) +/* 80018E28 00015D88 48 32 7F 5D */ bl Lock__6CTokenFv +lbl_80018E2C: +/* 80018E2C 00015D8C 88 1F 00 38 */ lbz r0, 0x38(r31) +/* 80018E30 00015D90 98 1E 00 38 */ stb r0, 0x38(r30) +/* 80018E34 00015D94 88 1F 00 38 */ lbz r0, 0x38(r31) +/* 80018E38 00015D98 28 00 00 00 */ cmplwi r0, 0 +/* 80018E3C 00015D9C 41 82 00 2C */ beq lbl_80018E68 +/* 80018E40 00015DA0 37 BE 00 2C */ addic. r29, r30, 0x2c +/* 80018E44 00015DA4 3B 9F 00 2C */ addi r28, r31, 0x2c +/* 80018E48 00015DA8 41 82 00 20 */ beq lbl_80018E68 +/* 80018E4C 00015DAC 7F A3 EB 78 */ mr r3, r29 +/* 80018E50 00015DB0 7F 84 E3 78 */ mr r4, r28 +/* 80018E54 00015DB4 48 32 80 55 */ bl __ct__6CTokenFRC6CToken +/* 80018E58 00015DB8 80 1C 00 08 */ lwz r0, 8(r28) +/* 80018E5C 00015DBC 7F A3 EB 78 */ mr r3, r29 +/* 80018E60 00015DC0 90 1D 00 08 */ stw r0, 8(r29) +/* 80018E64 00015DC4 48 32 7F 21 */ bl Lock__6CTokenFv +lbl_80018E68: +/* 80018E68 00015DC8 88 1F 00 48 */ lbz r0, 0x48(r31) +/* 80018E6C 00015DCC 98 1E 00 48 */ stb r0, 0x48(r30) +/* 80018E70 00015DD0 88 1F 00 48 */ lbz r0, 0x48(r31) +/* 80018E74 00015DD4 28 00 00 00 */ cmplwi r0, 0 +/* 80018E78 00015DD8 41 82 00 2C */ beq lbl_80018EA4 +/* 80018E7C 00015DDC 37 BE 00 3C */ addic. r29, r30, 0x3c +/* 80018E80 00015DE0 3B 9F 00 3C */ addi r28, r31, 0x3c +/* 80018E84 00015DE4 41 82 00 20 */ beq lbl_80018EA4 +/* 80018E88 00015DE8 7F A3 EB 78 */ mr r3, r29 +/* 80018E8C 00015DEC 7F 84 E3 78 */ mr r4, r28 +/* 80018E90 00015DF0 48 32 80 19 */ bl __ct__6CTokenFRC6CToken +/* 80018E94 00015DF4 80 1C 00 08 */ lwz r0, 8(r28) +/* 80018E98 00015DF8 7F A3 EB 78 */ mr r3, r29 +/* 80018E9C 00015DFC 90 1D 00 08 */ stw r0, 8(r29) +/* 80018EA0 00015E00 48 32 7E E5 */ bl Lock__6CTokenFv +lbl_80018EA4: +/* 80018EA4 00015E04 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80018EA8 00015E08 7F C3 F3 78 */ mr r3, r30 +/* 80018EAC 00015E0C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80018EB0 00015E10 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 80018EB4 00015E14 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 80018EB8 00015E18 83 81 00 10 */ lwz r28, 0x10(r1) +/* 80018EBC 00015E1C 7C 08 03 A6 */ mtlr r0 +/* 80018EC0 00015E20 38 21 00 20 */ addi r1, r1, 0x20 +/* 80018EC4 00015E24 4E 80 00 20 */ blr + +.global ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager +ForceGunOrientation__7CPlayerFRC12CTransform4fR13CStateManager: +/* 80018EC8 00015E28 94 21 FF B0 */ stwu r1, -0x50(r1) +/* 80018ECC 00015E2C 7C 08 02 A6 */ mflr r0 +/* 80018ED0 00015E30 90 01 00 54 */ stw r0, 0x54(r1) +/* 80018ED4 00015E34 93 E1 00 4C */ stw r31, 0x4c(r1) +/* 80018ED8 00015E38 7C BF 2B 78 */ mr r31, r5 +/* 80018EDC 00015E3C 93 C1 00 48 */ stw r30, 0x48(r1) +/* 80018EE0 00015E40 7C 9E 23 78 */ mr r30, r4 +/* 80018EE4 00015E44 7F E4 FB 78 */ mr r4, r31 +/* 80018EE8 00015E48 93 A1 00 44 */ stw r29, 0x44(r1) +/* 80018EEC 00015E4C 7C 7D 1B 78 */ mr r29, r3 +/* 80018EF0 00015E50 48 00 12 29 */ bl ResetGun__7CPlayerFR13CStateManager +/* 80018EF4 00015E54 C0 5E 00 24 */ lfs f2, 0x24(r30) +/* 80018EF8 00015E58 7F C4 F3 78 */ mr r4, r30 +/* 80018EFC 00015E5C C0 3E 00 14 */ lfs f1, 0x14(r30) +/* 80018F00 00015E60 38 61 00 08 */ addi r3, r1, 8 +/* 80018F04 00015E64 C0 1E 00 04 */ lfs f0, 4(r30) +/* 80018F08 00015E68 D0 1D 05 30 */ stfs f0, 0x530(r29) +/* 80018F0C 00015E6C D0 3D 05 34 */ stfs f1, 0x534(r29) +/* 80018F10 00015E70 D0 5D 05 38 */ stfs f2, 0x538(r29) +/* 80018F14 00015E74 48 2F 9C 61 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80018F18 00015E78 80 7D 04 90 */ lwz r3, 0x490(r29) +/* 80018F1C 00015E7C 38 81 00 08 */ addi r4, r1, 8 +/* 80018F20 00015E80 38 63 03 E8 */ addi r3, r3, 0x3e8 +/* 80018F24 00015E84 48 2F 9C 1D */ bl __as__12CTransform4fFRC12CTransform4f +/* 80018F28 00015E88 C0 22 82 48 */ lfs f1, lbl_805A9F68@sda21(r2) +/* 80018F2C 00015E8C 7F A3 EB 78 */ mr r3, r29 +/* 80018F30 00015E90 7F E4 FB 78 */ mr r4, r31 +/* 80018F34 00015E94 48 00 00 21 */ bl UpdateArmAndGunTransforms__7CPlayerFfR13CStateManager +/* 80018F38 00015E98 80 01 00 54 */ lwz r0, 0x54(r1) +/* 80018F3C 00015E9C 83 E1 00 4C */ lwz r31, 0x4c(r1) +/* 80018F40 00015EA0 83 C1 00 48 */ lwz r30, 0x48(r1) +/* 80018F44 00015EA4 83 A1 00 44 */ lwz r29, 0x44(r1) +/* 80018F48 00015EA8 7C 08 03 A6 */ mtlr r0 +/* 80018F4C 00015EAC 38 21 00 50 */ addi r1, r1, 0x50 +/* 80018F50 00015EB0 4E 80 00 20 */ blr + +.global UpdateArmAndGunTransforms__7CPlayerFfR13CStateManager +UpdateArmAndGunTransforms__7CPlayerFfR13CStateManager: +/* 80018F54 00015EB4 94 21 FF 50 */ stwu r1, -0xb0(r1) +/* 80018F58 00015EB8 7C 08 02 A6 */ mflr r0 +/* 80018F5C 00015EBC 90 01 00 B4 */ stw r0, 0xb4(r1) +/* 80018F60 00015EC0 DB E1 00 A0 */ stfd f31, 0xa0(r1) +/* 80018F64 00015EC4 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0 +/* 80018F68 00015EC8 DB C1 00 90 */ stfd f30, 0x90(r1) +/* 80018F6C 00015ECC F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 +/* 80018F70 00015ED0 DB A1 00 80 */ stfd f29, 0x80(r1) +/* 80018F74 00015ED4 F3 A1 00 88 */ psq_st f29, 136(r1), 0, qr0 +/* 80018F78 00015ED8 DB 81 00 70 */ stfd f28, 0x70(r1) +/* 80018F7C 00015EDC F3 81 00 78 */ psq_st f28, 120(r1), 0, qr0 +/* 80018F80 00015EE0 93 E1 00 6C */ stw r31, 0x6c(r1) +/* 80018F84 00015EE4 93 C1 00 68 */ stw r30, 0x68(r1) +/* 80018F88 00015EE8 3C A0 80 5A */ lis r5, skZero3f@ha +/* 80018F8C 00015EEC C4 45 66 A0 */ lfsu f2, skZero3f@l(r5) +/* 80018F90 00015EF0 FF 80 08 90 */ fmr f28, f1 +/* 80018F94 00015EF4 7C 7E 1B 78 */ mr r30, r3 +/* 80018F98 00015EF8 C0 25 00 04 */ lfs f1, 4(r5) +/* 80018F9C 00015EFC 7C 9F 23 78 */ mr r31, r4 +/* 80018FA0 00015F00 C0 05 00 08 */ lfs f0, 8(r5) +/* 80018FA4 00015F04 D0 41 00 20 */ stfs f2, 0x20(r1) +/* 80018FA8 00015F08 D0 21 00 24 */ stfs f1, 0x24(r1) +/* 80018FAC 00015F0C D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80018FB0 00015F10 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 80018FB4 00015F14 2C 00 00 01 */ cmpwi r0, 1 +/* 80018FB8 00015F18 40 82 00 14 */ bne lbl_80018FCC +/* 80018FBC 00015F1C C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) +/* 80018FC0 00015F20 C3 A2 82 4C */ lfs f29, lbl_805A9F6C@sda21(r2) +/* 80018FC4 00015F24 FF C0 F8 90 */ fmr f30, f31 +/* 80018FC8 00015F28 48 00 00 68 */ b lbl_80019030 +lbl_80018FCC: +/* 80018FCC 00015F2C 80 7E 04 90 */ lwz r3, 0x490(r30) +/* 80018FD0 00015F30 80 8D A1 34 */ lwz r4, gpTweakPlayerGun@sda21(r13) +/* 80018FD4 00015F34 80 63 07 40 */ lwz r3, 0x740(r3) +/* 80018FD8 00015F38 C3 E4 00 4C */ lfs f31, 0x4c(r4) +/* 80018FDC 00015F3C 88 03 03 B2 */ lbz r0, 0x3b2(r3) +/* 80018FE0 00015F40 C3 C4 00 50 */ lfs f30, 0x50(r4) +/* 80018FE4 00015F44 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80018FE8 00015F48 C3 A4 00 54 */ lfs f29, 0x54(r4) +/* 80018FEC 00015F4C 41 82 00 08 */ beq lbl_80018FF4 +/* 80018FF0 00015F50 48 00 00 08 */ b lbl_80018FF8 +lbl_80018FF4: +/* 80018FF4 00015F54 38 A4 00 64 */ addi r5, r4, 0x64 +lbl_80018FF8: +/* 80018FF8 00015F58 C0 05 00 00 */ lfs f0, 0(r5) +/* 80018FFC 00015F5C 7F C3 F3 78 */ mr r3, r30 +/* 80019000 00015F60 D0 01 00 20 */ stfs f0, 0x20(r1) +/* 80019004 00015F64 C0 05 00 04 */ lfs f0, 4(r5) +/* 80019008 00015F68 D0 01 00 24 */ stfs f0, 0x24(r1) +/* 8001900C 00015F6C C0 05 00 08 */ lfs f0, 8(r5) +/* 80019010 00015F70 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 80019014 00015F74 48 26 BD CD */ bl GetEyeHeight__7CPlayerCFv +/* 80019018 00015F78 EF BD 08 2A */ fadds f29, f29, f1 +/* 8001901C 00015F7C 7F C3 F3 78 */ mr r3, r30 +/* 80019020 00015F80 48 26 BD C1 */ bl GetEyeHeight__7CPlayerCFv +/* 80019024 00015F84 C0 01 00 28 */ lfs f0, 0x28(r1) +/* 80019028 00015F88 EC 00 08 2A */ fadds f0, f0, f1 +/* 8001902C 00015F8C D0 01 00 28 */ stfs f0, 0x28(r1) +lbl_80019030: +/* 80019030 00015F90 80 9E 07 6C */ lwz r4, 0x76c(r30) +/* 80019034 00015F94 38 61 00 2C */ addi r3, r1, 0x2c +/* 80019038 00015F98 48 0D 0C F1 */ bl GetGunBobTransformation__16CPlayerCameraBobCFv +/* 8001903C 00015F9C C0 81 00 58 */ lfs f4, 0x58(r1) +/* 80019040 00015FA0 7F C3 F3 78 */ mr r3, r30 +/* 80019044 00015FA4 C0 01 00 48 */ lfs f0, 0x48(r1) +/* 80019048 00015FA8 7F E5 FB 78 */ mr r5, r31 +/* 8001904C 00015FAC C0 21 00 38 */ lfs f1, 0x38(r1) +/* 80019050 00015FB0 EC 5D 20 2A */ fadds f2, f29, f4 +/* 80019054 00015FB4 EC 7E 00 2A */ fadds f3, f30, f0 +/* 80019058 00015FB8 D0 01 00 0C */ stfs f0, 0xc(r1) +/* 8001905C 00015FBC EC 1F 08 2A */ fadds f0, f31, f1 +/* 80019060 00015FC0 38 81 00 14 */ addi r4, r1, 0x14 +/* 80019064 00015FC4 D0 21 00 08 */ stfs f1, 8(r1) +/* 80019068 00015FC8 D0 81 00 10 */ stfs f4, 0x10(r1) +/* 8001906C 00015FCC D0 01 00 14 */ stfs f0, 0x14(r1) +/* 80019070 00015FD0 D0 61 00 18 */ stfs f3, 0x18(r1) +/* 80019074 00015FD4 D0 41 00 1C */ stfs f2, 0x1c(r1) +/* 80019078 00015FD8 48 00 00 7D */ bl UpdateGunTransform__7CPlayerFRC9CVector3fR13CStateManager +/* 8001907C 00015FDC FC 20 E0 90 */ fmr f1, f28 +/* 80019080 00015FE0 7F C3 F3 78 */ mr r3, r30 +/* 80019084 00015FE4 7F E5 FB 78 */ mr r5, r31 +/* 80019088 00015FE8 38 81 00 20 */ addi r4, r1, 0x20 +/* 8001908C 00015FEC 48 16 03 01 */ bl UpdateGrappleArmTransform__7CPlayerFRC9CVector3fR13CStateManagerf +/* 80019090 00015FF0 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0 +/* 80019094 00015FF4 CB E1 00 A0 */ lfd f31, 0xa0(r1) +/* 80019098 00015FF8 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 +/* 8001909C 00015FFC CB C1 00 90 */ lfd f30, 0x90(r1) +/* 800190A0 00016000 E3 A1 00 88 */ psq_l f29, 136(r1), 0, qr0 +/* 800190A4 00016004 CB A1 00 80 */ lfd f29, 0x80(r1) +/* 800190A8 00016008 E3 81 00 78 */ psq_l f28, 120(r1), 0, qr0 +/* 800190AC 0001600C CB 81 00 70 */ lfd f28, 0x70(r1) +/* 800190B0 00016010 83 E1 00 6C */ lwz r31, 0x6c(r1) +/* 800190B4 00016014 80 01 00 B4 */ lwz r0, 0xb4(r1) +/* 800190B8 00016018 83 C1 00 68 */ lwz r30, 0x68(r1) +/* 800190BC 0001601C 7C 08 03 A6 */ mtlr r0 +/* 800190C0 00016020 38 21 00 B0 */ addi r1, r1, 0xb0 +/* 800190C4 00016024 4E 80 00 20 */ blr + +.global UpdateDebugCamera__7CPlayerFR13CStateManager +UpdateDebugCamera__7CPlayerFR13CStateManager: +/* 800190C8 00016028 4E 80 00 20 */ blr + +.global GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager +GetFirstPersonCameraTransform__7CPlayerCFR13CStateManager: +/* 800190CC 0001602C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800190D0 00016030 7C 08 02 A6 */ mflr r0 +/* 800190D4 00016034 90 01 00 14 */ stw r0, 0x14(r1) +/* 800190D8 00016038 80 64 08 70 */ lwz r3, 0x870(r4) +/* 800190DC 0001603C 80 63 00 7C */ lwz r3, 0x7c(r3) +/* 800190E0 00016040 4B FF 50 05 */ bl GetGunFollowTransform__18CFirstPersonCameraCFv +/* 800190E4 00016044 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800190E8 00016048 7C 08 03 A6 */ mtlr r0 +/* 800190EC 0001604C 38 21 00 10 */ addi r1, r1, 0x10 +/* 800190F0 00016050 4E 80 00 20 */ blr + +.global UpdateGunTransform__7CPlayerFRC9CVector3fR13CStateManager +UpdateGunTransform__7CPlayerFRC9CVector3fR13CStateManager: +/* 800190F4 00016054 94 21 FC 10 */ stwu r1, -0x3f0(r1) +/* 800190F8 00016058 7C 08 02 A6 */ mflr r0 +/* 800190FC 0001605C 90 01 03 F4 */ stw r0, 0x3f4(r1) +/* 80019100 00016060 DB E1 03 E0 */ stfd f31, 0x3e0(r1) +/* 80019104 00016064 F3 E1 03 E8 */ psq_st f31, 1000(r1), 0, qr0 +/* 80019108 00016068 DB C1 03 D0 */ stfd f30, 0x3d0(r1) +/* 8001910C 0001606C F3 C1 03 D8 */ psq_st f30, 984(r1), 0, qr0 +/* 80019110 00016070 DB A1 03 C0 */ stfd f29, 0x3c0(r1) +/* 80019114 00016074 F3 A1 03 C8 */ psq_st f29, 968(r1), 0, qr0 +/* 80019118 00016078 93 E1 03 BC */ stw r31, 0x3bc(r1) +/* 8001911C 0001607C 93 C1 03 B8 */ stw r30, 0x3b8(r1) +/* 80019120 00016080 93 A1 03 B4 */ stw r29, 0x3b4(r1) +/* 80019124 00016084 7C 7D 1B 78 */ mr r29, r3 +/* 80019128 00016088 7C 9E 23 78 */ mr r30, r4 +/* 8001912C 0001608C 7C BF 2B 78 */ mr r31, r5 +/* 80019130 00016090 38 61 03 74 */ addi r3, r1, 0x374 +/* 80019134 00016094 38 9D 00 34 */ addi r4, r29, 0x34 +/* 80019138 00016098 48 2F 9A 3D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8001913C 0001609C 7F A3 EB 78 */ mr r3, r29 +/* 80019140 000160A0 48 26 BC A1 */ bl GetEyeHeight__7CPlayerCFv +/* 80019144 000160A4 FF A0 08 90 */ fmr f29, f1 +/* 80019148 000160A8 80 9F 08 70 */ lwz r4, 0x870(r31) +/* 8001914C 000160AC 7F E5 FB 78 */ mr r5, r31 +/* 80019150 000160B0 38 61 02 B4 */ addi r3, r1, 0x2b4 +/* 80019154 000160B4 4B FF 18 15 */ bl GetCurrentCameraTransform__14CCameraManagerCFRC13CStateManager +/* 80019158 000160B8 38 61 03 44 */ addi r3, r1, 0x344 +/* 8001915C 000160BC 38 81 02 B4 */ addi r4, r1, 0x2b4 +/* 80019160 000160C0 48 2F 9A 15 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80019164 000160C4 38 61 03 14 */ addi r3, r1, 0x314 +/* 80019168 000160C8 38 81 03 44 */ addi r4, r1, 0x344 +/* 8001916C 000160CC 48 2F 9A 09 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80019170 000160D0 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80019174 000160D4 2C 00 00 02 */ cmpwi r0, 2 +/* 80019178 000160D8 40 82 00 58 */ bne lbl_800191D0 +/* 8001917C 000160DC C0 1E 00 08 */ lfs f0, 8(r30) +/* 80019180 000160E0 38 61 00 8C */ addi r3, r1, 0x8c +/* 80019184 000160E4 C0 5E 00 04 */ lfs f2, 4(r30) +/* 80019188 000160E8 38 81 03 44 */ addi r4, r1, 0x344 +/* 8001918C 000160EC EC 60 E8 28 */ fsubs f3, f0, f29 +/* 80019190 000160F0 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80019194 000160F4 C0 1E 00 00 */ lfs f0, 0(r30) +/* 80019198 000160F8 38 A1 00 80 */ addi r5, r1, 0x80 +/* 8001919C 000160FC EC 42 08 28 */ fsubs f2, f2, f1 +/* 800191A0 00016100 EC 00 08 28 */ fsubs f0, f0, f1 +/* 800191A4 00016104 D0 61 00 7C */ stfs f3, 0x7c(r1) +/* 800191A8 00016108 D0 01 00 74 */ stfs f0, 0x74(r1) +/* 800191AC 0001610C D0 41 00 78 */ stfs f2, 0x78(r1) +/* 800191B0 00016110 D0 01 00 80 */ stfs f0, 0x80(r1) +/* 800191B4 00016114 D0 41 00 84 */ stfs f2, 0x84(r1) +/* 800191B8 00016118 D0 61 00 88 */ stfs f3, 0x88(r1) +/* 800191BC 0001611C 48 2F 99 2D */ bl __ml__12CTransform4fCFRC9CVector3f +/* 800191C0 00016120 C3 E1 00 8C */ lfs f31, 0x8c(r1) +/* 800191C4 00016124 C3 C1 00 90 */ lfs f30, 0x90(r1) +/* 800191C8 00016128 C3 A1 00 94 */ lfs f29, 0x94(r1) +/* 800191CC 0001612C 48 00 00 6C */ b lbl_80019238 +lbl_800191D0: +/* 800191D0 00016130 C0 1E 00 08 */ lfs f0, 8(r30) +/* 800191D4 00016134 38 61 00 5C */ addi r3, r1, 0x5c +/* 800191D8 00016138 C0 5E 00 04 */ lfs f2, 4(r30) +/* 800191DC 0001613C 38 81 03 44 */ addi r4, r1, 0x344 +/* 800191E0 00016140 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 800191E4 00016144 EC 60 E8 28 */ fsubs f3, f0, f29 +/* 800191E8 00016148 C0 1E 00 00 */ lfs f0, 0(r30) +/* 800191EC 0001614C 38 A1 00 50 */ addi r5, r1, 0x50 +/* 800191F0 00016150 EC 42 08 28 */ fsubs f2, f2, f1 +/* 800191F4 00016154 EC 00 08 28 */ fsubs f0, f0, f1 +/* 800191F8 00016158 D0 61 00 58 */ stfs f3, 0x58(r1) +/* 800191FC 0001615C D0 41 00 54 */ stfs f2, 0x54(r1) +/* 80019200 00016160 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 80019204 00016164 48 2F 98 7D */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 80019208 00016168 7F A4 EB 78 */ mr r4, r29 +/* 8001920C 0001616C 38 61 00 68 */ addi r3, r1, 0x68 +/* 80019210 00016170 48 26 BB 6D */ bl GetEyePosition__7CPlayerCFv +/* 80019214 00016174 C0 21 00 68 */ lfs f1, 0x68(r1) +/* 80019218 00016178 C0 01 00 5C */ lfs f0, 0x5c(r1) +/* 8001921C 0001617C C0 61 00 6C */ lfs f3, 0x6c(r1) +/* 80019220 00016180 C0 41 00 60 */ lfs f2, 0x60(r1) +/* 80019224 00016184 EF E1 00 2A */ fadds f31, f1, f0 +/* 80019228 00016188 C0 21 00 70 */ lfs f1, 0x70(r1) +/* 8001922C 0001618C C0 01 00 64 */ lfs f0, 0x64(r1) +/* 80019230 00016190 EF C3 10 2A */ fadds f30, f3, f2 +/* 80019234 00016194 EF A1 00 2A */ fadds f29, f1, f0 +lbl_80019238: +/* 80019238 00016198 C0 41 03 44 */ lfs f2, 0x344(r1) +/* 8001923C 0001619C 38 61 00 C8 */ addi r3, r1, 0xc8 +/* 80019240 000161A0 C0 21 03 54 */ lfs f1, 0x354(r1) +/* 80019244 000161A4 38 81 00 44 */ addi r4, r1, 0x44 +/* 80019248 000161A8 C0 01 03 64 */ lfs f0, 0x364(r1) +/* 8001924C 000161AC D3 E1 03 20 */ stfs f31, 0x320(r1) +/* 80019250 000161B0 D3 C1 03 30 */ stfs f30, 0x330(r1) +/* 80019254 000161B4 D3 A1 03 40 */ stfs f29, 0x340(r1) +/* 80019258 000161B8 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8001925C 000161BC D0 21 00 48 */ stfs f1, 0x48(r1) +/* 80019260 000161C0 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 80019264 000161C4 48 2F AB 6D */ bl __ct__11CUnitVectorFRC9CVector3f +/* 80019268 000161C8 80 1D 04 98 */ lwz r0, 0x498(r29) +/* 8001926C 000161CC 2C 00 00 02 */ cmpwi r0, 2 +/* 80019270 000161D0 41 82 02 6C */ beq lbl_800194DC +/* 80019274 000161D4 40 80 00 14 */ bge lbl_80019288 +/* 80019278 000161D8 2C 00 00 00 */ cmpwi r0, 0 +/* 8001927C 000161DC 41 82 00 D8 */ beq lbl_80019354 +/* 80019280 000161E0 40 80 00 14 */ bge lbl_80019294 +/* 80019284 000161E4 48 00 02 58 */ b lbl_800194DC +lbl_80019288: +/* 80019288 000161E8 2C 00 00 04 */ cmpwi r0, 4 +/* 8001928C 000161EC 40 80 02 50 */ bge lbl_800194DC +/* 80019290 000161F0 48 00 01 48 */ b lbl_800193D8 +lbl_80019294: +/* 80019294 000161F4 C0 5D 04 9C */ lfs f2, 0x49c(r29) +/* 80019298 000161F8 C0 22 81 B4 */ lfs f1, lbl_805A9ED4@sda21(r2) +/* 8001929C 000161FC C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) +/* 800192A0 00016200 EC 42 08 24 */ fdivs f2, f2, f1 +/* 800192A4 00016204 FC 20 12 10 */ fabs f1, f2 +/* 800192A8 00016208 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800192AC 0001620C 40 81 00 14 */ ble lbl_800192C0 +/* 800192B0 00016210 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) +/* 800192B4 00016214 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 800192B8 00016218 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 800192BC 0001621C EC 41 00 32 */ fmuls f2, f1, f0 +lbl_800192C0: +/* 800192C0 00016220 C0 02 82 48 */ lfs f0, lbl_805A9F68@sda21(r2) +/* 800192C4 00016224 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 800192C8 00016228 40 81 02 14 */ ble lbl_800194DC +/* 800192CC 0001622C 80 AD A1 34 */ lwz r5, gpTweakPlayerGun@sda21(r13) +/* 800192D0 00016230 FC 20 10 50 */ fneg f1, f2 +/* 800192D4 00016234 38 61 00 34 */ addi r3, r1, 0x34 +/* 800192D8 00016238 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 800192DC 0001623C C0 05 00 44 */ lfs f0, 0x44(r5) +/* 800192E0 00016240 38 A1 00 10 */ addi r5, r1, 0x10 +/* 800192E4 00016244 EC 01 00 32 */ fmuls f0, f1, f0 +/* 800192E8 00016248 D0 01 00 10 */ stfs f0, 0x10(r1) +/* 800192EC 0001624C 48 2F 80 09 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 800192F0 00016250 C0 61 00 34 */ lfs f3, 0x34(r1) +/* 800192F4 00016254 38 61 02 24 */ addi r3, r1, 0x224 +/* 800192F8 00016258 C0 41 00 38 */ lfs f2, 0x38(r1) +/* 800192FC 0001625C 38 81 03 44 */ addi r4, r1, 0x344 +/* 80019300 00016260 C0 21 00 3C */ lfs f1, 0x3c(r1) +/* 80019304 00016264 C0 01 00 40 */ lfs f0, 0x40(r1) +/* 80019308 00016268 D0 61 00 B8 */ stfs f3, 0xb8(r1) +/* 8001930C 0001626C D0 41 00 BC */ stfs f2, 0xbc(r1) +/* 80019310 00016270 D0 21 00 C0 */ stfs f1, 0xc0(r1) +/* 80019314 00016274 D0 01 00 C4 */ stfs f0, 0xc4(r1) +/* 80019318 00016278 48 2F 99 29 */ bl GetRotation__12CTransform4fCFv +/* 8001931C 0001627C 38 61 02 54 */ addi r3, r1, 0x254 +/* 80019320 00016280 38 81 00 B8 */ addi r4, r1, 0xb8 +/* 80019324 00016284 48 2F 8C 95 */ bl BuildTransform4f__11CQuaternionCFv +/* 80019328 00016288 38 61 02 84 */ addi r3, r1, 0x284 +/* 8001932C 0001628C 38 81 02 54 */ addi r4, r1, 0x254 +/* 80019330 00016290 38 A1 02 24 */ addi r5, r1, 0x224 +/* 80019334 00016294 48 2F 96 1D */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 80019338 00016298 38 61 03 14 */ addi r3, r1, 0x314 +/* 8001933C 0001629C 38 81 02 84 */ addi r4, r1, 0x284 +/* 80019340 000162A0 48 2F 98 01 */ bl __as__12CTransform4fFRC12CTransform4f +/* 80019344 000162A4 D3 E1 03 20 */ stfs f31, 0x320(r1) +/* 80019348 000162A8 D3 C1 03 30 */ stfs f30, 0x330(r1) +/* 8001934C 000162AC D3 A1 03 40 */ stfs f29, 0x340(r1) +/* 80019350 000162B0 48 00 01 8C */ b lbl_800194DC +lbl_80019354: +/* 80019354 000162B4 80 CD A1 34 */ lwz r6, gpTweakPlayerGun@sda21(r13) +/* 80019358 000162B8 38 61 00 24 */ addi r3, r1, 0x24 +/* 8001935C 000162BC 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 80019360 000162C0 38 A1 00 0C */ addi r5, r1, 0xc +/* 80019364 000162C4 C0 06 00 44 */ lfs f0, 0x44(r6) +/* 80019368 000162C8 FC 00 00 50 */ fneg f0, f0 +/* 8001936C 000162CC D0 01 00 0C */ stfs f0, 0xc(r1) +/* 80019370 000162D0 48 2F 7F 85 */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 80019374 000162D4 C0 61 00 24 */ lfs f3, 0x24(r1) +/* 80019378 000162D8 38 61 01 94 */ addi r3, r1, 0x194 +/* 8001937C 000162DC C0 41 00 28 */ lfs f2, 0x28(r1) +/* 80019380 000162E0 38 81 03 44 */ addi r4, r1, 0x344 +/* 80019384 000162E4 C0 21 00 2C */ lfs f1, 0x2c(r1) +/* 80019388 000162E8 C0 01 00 30 */ lfs f0, 0x30(r1) +/* 8001938C 000162EC D0 61 00 A8 */ stfs f3, 0xa8(r1) +/* 80019390 000162F0 D0 41 00 AC */ stfs f2, 0xac(r1) +/* 80019394 000162F4 D0 21 00 B0 */ stfs f1, 0xb0(r1) +/* 80019398 000162F8 D0 01 00 B4 */ stfs f0, 0xb4(r1) +/* 8001939C 000162FC 48 2F 98 A5 */ bl GetRotation__12CTransform4fCFv +/* 800193A0 00016300 38 61 01 C4 */ addi r3, r1, 0x1c4 +/* 800193A4 00016304 38 81 00 A8 */ addi r4, r1, 0xa8 +/* 800193A8 00016308 48 2F 8C 11 */ bl BuildTransform4f__11CQuaternionCFv +/* 800193AC 0001630C 38 61 01 F4 */ addi r3, r1, 0x1f4 +/* 800193B0 00016310 38 81 01 C4 */ addi r4, r1, 0x1c4 +/* 800193B4 00016314 38 A1 01 94 */ addi r5, r1, 0x194 +/* 800193B8 00016318 48 2F 95 99 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 800193BC 0001631C 38 61 03 14 */ addi r3, r1, 0x314 +/* 800193C0 00016320 38 81 01 F4 */ addi r4, r1, 0x1f4 +/* 800193C4 00016324 48 2F 97 7D */ bl __as__12CTransform4fFRC12CTransform4f +/* 800193C8 00016328 D3 E1 03 20 */ stfs f31, 0x320(r1) +/* 800193CC 0001632C D3 C1 03 30 */ stfs f30, 0x330(r1) +/* 800193D0 00016330 D3 A1 03 40 */ stfs f29, 0x340(r1) +/* 800193D4 00016334 48 00 01 08 */ b lbl_800194DC +lbl_800193D8: +/* 800193D8 00016338 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) +/* 800193DC 0001633C C0 5D 04 9C */ lfs f2, 0x49c(r29) +/* 800193E0 00016340 C0 23 00 3C */ lfs f1, 0x3c(r3) +/* 800193E4 00016344 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) +/* 800193E8 00016348 EC 42 08 24 */ fdivs f2, f2, f1 +/* 800193EC 0001634C FC 20 12 10 */ fabs f1, f2 +/* 800193F0 00016350 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 800193F4 00016354 40 81 00 14 */ ble lbl_80019408 +/* 800193F8 00016358 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) +/* 800193FC 0001635C C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 80019400 00016360 FC 02 00 6E */ fsel f0, f2, f1, f0 +/* 80019404 00016364 EC 41 00 32 */ fmuls f2, f1, f0 +lbl_80019408: +/* 80019408 00016368 C0 62 81 00 */ lfs f3, lbl_805A9E20@sda21(r2) +/* 8001940C 0001636C 80 1D 02 F8 */ lwz r0, 0x2f8(r29) +/* 80019410 00016370 EC 23 10 28 */ fsubs f1, f3, f2 +/* 80019414 00016374 2C 00 00 02 */ cmpwi r0, 2 +/* 80019418 00016378 40 82 00 34 */ bne lbl_8001944C +/* 8001941C 0001637C C0 5D 04 9C */ lfs f2, 0x49c(r29) +/* 80019420 00016380 C0 22 81 40 */ lfs f1, lbl_805A9E60@sda21(r2) +/* 80019424 00016384 C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) +/* 80019428 00016388 EC 42 08 24 */ fdivs f2, f2, f1 +/* 8001942C 0001638C FC 20 12 10 */ fabs f1, f2 +/* 80019430 00016390 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80019434 00016394 40 81 00 10 */ ble lbl_80019444 +/* 80019438 00016398 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) +/* 8001943C 0001639C FC 02 00 EE */ fsel f0, f2, f3, f0 +/* 80019440 000163A0 EC 43 00 32 */ fmuls f2, f3, f0 +lbl_80019444: +/* 80019444 000163A4 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 80019448 000163A8 EC 20 10 28 */ fsubs f1, f0, f2 +lbl_8001944C: +/* 8001944C 000163AC C0 02 82 48 */ lfs f0, lbl_805A9F68@sda21(r2) +/* 80019450 000163B0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80019454 000163B4 40 81 00 88 */ ble lbl_800194DC +/* 80019458 000163B8 80 AD A1 34 */ lwz r5, gpTweakPlayerGun@sda21(r13) +/* 8001945C 000163BC FC 20 08 50 */ fneg f1, f1 +/* 80019460 000163C0 38 61 00 14 */ addi r3, r1, 0x14 +/* 80019464 000163C4 38 81 00 C8 */ addi r4, r1, 0xc8 +/* 80019468 000163C8 C0 05 00 44 */ lfs f0, 0x44(r5) +/* 8001946C 000163CC 38 A1 00 08 */ addi r5, r1, 8 +/* 80019470 000163D0 EC 01 00 32 */ fmuls f0, f1, f0 +/* 80019474 000163D4 D0 01 00 08 */ stfs f0, 8(r1) +/* 80019478 000163D8 48 2F 7E 7D */ bl AxisAngle__11CQuaternionFRC13CUnitVector3fRC9CRelAngle +/* 8001947C 000163DC C0 61 00 14 */ lfs f3, 0x14(r1) +/* 80019480 000163E0 38 61 01 04 */ addi r3, r1, 0x104 +/* 80019484 000163E4 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 80019488 000163E8 38 81 03 44 */ addi r4, r1, 0x344 +/* 8001948C 000163EC C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 80019490 000163F0 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80019494 000163F4 D0 61 00 98 */ stfs f3, 0x98(r1) +/* 80019498 000163F8 D0 41 00 9C */ stfs f2, 0x9c(r1) +/* 8001949C 000163FC D0 21 00 A0 */ stfs f1, 0xa0(r1) +/* 800194A0 00016400 D0 01 00 A4 */ stfs f0, 0xa4(r1) +/* 800194A4 00016404 48 2F 97 9D */ bl GetRotation__12CTransform4fCFv +/* 800194A8 00016408 38 61 01 34 */ addi r3, r1, 0x134 +/* 800194AC 0001640C 38 81 00 98 */ addi r4, r1, 0x98 +/* 800194B0 00016410 48 2F 8B 09 */ bl BuildTransform4f__11CQuaternionCFv +/* 800194B4 00016414 38 61 01 64 */ addi r3, r1, 0x164 +/* 800194B8 00016418 38 81 01 34 */ addi r4, r1, 0x134 +/* 800194BC 0001641C 38 A1 01 04 */ addi r5, r1, 0x104 +/* 800194C0 00016420 48 2F 94 91 */ bl __ml__12CTransform4fCFRC12CTransform4f +/* 800194C4 00016424 38 61 03 14 */ addi r3, r1, 0x314 +/* 800194C8 00016428 38 81 01 64 */ addi r4, r1, 0x164 +/* 800194CC 0001642C 48 2F 96 75 */ bl __as__12CTransform4fFRC12CTransform4f +/* 800194D0 00016430 D3 E1 03 20 */ stfs f31, 0x320(r1) +/* 800194D4 00016434 D3 C1 03 30 */ stfs f30, 0x330(r1) +/* 800194D8 00016438 D3 A1 03 40 */ stfs f29, 0x340(r1) +lbl_800194DC: +/* 800194DC 0001643C 38 61 00 D4 */ addi r3, r1, 0xd4 +/* 800194E0 00016440 38 81 03 14 */ addi r4, r1, 0x314 +/* 800194E4 00016444 48 2F 96 91 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 800194E8 00016448 80 7D 04 90 */ lwz r3, 0x490(r29) +/* 800194EC 0001644C 38 81 00 D4 */ addi r4, r1, 0xd4 +/* 800194F0 00016450 38 63 03 E8 */ addi r3, r3, 0x3e8 +/* 800194F4 00016454 48 2F 96 4D */ bl __as__12CTransform4fFRC12CTransform4f +/* 800194F8 00016458 38 61 02 E4 */ addi r3, r1, 0x2e4 +/* 800194FC 0001645C 38 81 03 14 */ addi r4, r1, 0x314 +/* 80019500 00016460 48 2F 96 75 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 80019504 00016464 7F A3 EB 78 */ mr r3, r29 +/* 80019508 00016468 7F E5 FB 78 */ mr r5, r31 +/* 8001950C 0001646C 38 81 02 E4 */ addi r4, r1, 0x2e4 +/* 80019510 00016470 48 00 04 31 */ bl UpdateAimTargetPrediction__7CPlayerFRC12CTransform4fR13CStateManager +/* 80019514 00016474 7F A3 EB 78 */ mr r3, r29 +/* 80019518 00016478 7F E5 FB 78 */ mr r5, r31 +/* 8001951C 0001647C 38 81 02 E4 */ addi r4, r1, 0x2e4 +/* 80019520 00016480 48 00 00 39 */ bl UpdateAssistedAiming__7CPlayerFRC12CTransform4fR13CStateManager +/* 80019524 00016484 E3 E1 03 E8 */ psq_l f31, 1000(r1), 0, qr0 +/* 80019528 00016488 CB E1 03 E0 */ lfd f31, 0x3e0(r1) +/* 8001952C 0001648C E3 C1 03 D8 */ psq_l f30, 984(r1), 0, qr0 +/* 80019530 00016490 CB C1 03 D0 */ lfd f30, 0x3d0(r1) +/* 80019534 00016494 E3 A1 03 C8 */ psq_l f29, 968(r1), 0, qr0 +/* 80019538 00016498 CB A1 03 C0 */ lfd f29, 0x3c0(r1) +/* 8001953C 0001649C 83 E1 03 BC */ lwz r31, 0x3bc(r1) +/* 80019540 000164A0 83 C1 03 B8 */ lwz r30, 0x3b8(r1) +/* 80019544 000164A4 80 01 03 F4 */ lwz r0, 0x3f4(r1) +/* 80019548 000164A8 83 A1 03 B4 */ lwz r29, 0x3b4(r1) +/* 8001954C 000164AC 7C 08 03 A6 */ mtlr r0 +/* 80019550 000164B0 38 21 03 F0 */ addi r1, r1, 0x3f0 +/* 80019554 000164B4 4E 80 00 20 */ blr + +.global UpdateAssistedAiming__7CPlayerFRC12CTransform4fR13CStateManager +UpdateAssistedAiming__7CPlayerFRC12CTransform4fR13CStateManager: +/* 80019558 000164B8 94 21 FE E0 */ stwu r1, -0x120(r1) +/* 8001955C 000164BC 7C 08 02 A6 */ mflr r0 +/* 80019560 000164C0 90 01 01 24 */ stw r0, 0x124(r1) +/* 80019564 000164C4 DB E1 01 10 */ stfd f31, 0x110(r1) +/* 80019568 000164C8 F3 E1 01 18 */ psq_st f31, 280(r1), 0, qr0 +/* 8001956C 000164CC DB C1 01 00 */ stfd f30, 0x100(r1) +/* 80019570 000164D0 F3 C1 01 08 */ psq_st f30, 264(r1), 0, qr0 +/* 80019574 000164D4 DB A1 00 F0 */ stfd f29, 0xf0(r1) +/* 80019578 000164D8 F3 A1 00 F8 */ psq_st f29, 248(r1), 0, qr0 +/* 8001957C 000164DC DB 81 00 E0 */ stfd f28, 0xe0(r1) +/* 80019580 000164E0 F3 81 00 E8 */ psq_st f28, 232(r1), 0, qr0 +/* 80019584 000164E4 DB 61 00 D0 */ stfd f27, 0xd0(r1) +/* 80019588 000164E8 F3 61 00 D8 */ psq_st f27, 216(r1), 0, qr0 +/* 8001958C 000164EC 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 80019590 000164F0 93 C1 00 C8 */ stw r30, 0xc8(r1) +/* 80019594 000164F4 93 A1 00 C4 */ stw r29, 0xc4(r1) +/* 80019598 000164F8 93 81 00 C0 */ stw r28, 0xc0(r1) +/* 8001959C 000164FC 7C 7E 1B 78 */ mr r30, r3 +/* 800195A0 00016500 7C 9F 23 78 */ mr r31, r4 +/* 800195A4 00016504 7C BC 2B 78 */ mr r28, r5 +/* 800195A8 00016508 38 61 00 90 */ addi r3, r1, 0x90 +/* 800195AC 0001650C 48 2F 95 C9 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 800195B0 00016510 A0 1E 03 F4 */ lhz r0, 0x3f4(r30) +/* 800195B4 00016514 7F 83 E3 78 */ mr r3, r28 +/* 800195B8 00016518 38 81 00 0C */ addi r4, r1, 0xc +/* 800195BC 0001651C B0 01 00 08 */ sth r0, 8(r1) +/* 800195C0 00016520 B0 01 00 0C */ sth r0, 0xc(r1) +/* 800195C4 00016524 48 03 2F E1 */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 800195C8 00016528 7C 64 1B 78 */ mr r4, r3 +/* 800195CC 0001652C 38 61 00 10 */ addi r3, r1, 0x10 +/* 800195D0 00016530 48 09 66 C1 */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 800195D4 00016534 80 03 00 04 */ lwz r0, 4(r3) +/* 800195D8 00016538 28 00 00 00 */ cmplwi r0, 0 +/* 800195DC 0001653C 41 82 03 0C */ beq lbl_800198E8 +/* 800195E0 00016540 C0 5E 04 84 */ lfs f2, 0x484(r30) +/* 800195E4 00016544 38 61 00 48 */ addi r3, r1, 0x48 +/* 800195E8 00016548 C0 3F 00 1C */ lfs f1, 0x1c(r31) +/* 800195EC 0001654C C0 7E 04 88 */ lfs f3, 0x488(r30) +/* 800195F0 00016550 C0 1F 00 2C */ lfs f0, 0x2c(r31) +/* 800195F4 00016554 EC 82 08 28 */ fsubs f4, f2, f1 +/* 800195F8 00016558 C0 5E 04 80 */ lfs f2, 0x480(r30) +/* 800195FC 0001655C C0 3F 00 0C */ lfs f1, 0xc(r31) +/* 80019600 00016560 EC 63 00 28 */ fsubs f3, f3, f0 +/* 80019604 00016564 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80019608 00016568 EC 22 08 28 */ fsubs f1, f2, f1 +/* 8001960C 0001656C D0 81 00 58 */ stfs f4, 0x58(r1) +/* 80019610 00016570 D0 61 00 5C */ stfs f3, 0x5c(r1) +/* 80019614 00016574 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 80019618 00016578 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8001961C 0001657C D0 81 00 4C */ stfs f4, 0x4c(r1) +/* 80019620 00016580 D0 01 00 50 */ stfs f0, 0x50(r1) +/* 80019624 00016584 48 2F B2 95 */ bl Magnitude__9CVector3fCFv +/* 80019628 00016588 C0 1F 00 24 */ lfs f0, 0x24(r31) +/* 8001962C 0001658C FF 80 08 90 */ fmr f28, f1 +/* 80019630 00016590 C0 7F 00 14 */ lfs f3, 0x14(r31) +/* 80019634 00016594 38 61 00 3C */ addi r3, r1, 0x3c +/* 80019638 00016598 C0 5F 00 04 */ lfs f2, 4(r31) +/* 8001963C 0001659C D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80019640 000165A0 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80019644 000165A4 D0 41 00 3C */ stfs f2, 0x3c(r1) +/* 80019648 000165A8 D0 61 00 40 */ stfs f3, 0x40(r1) +/* 8001964C 000165AC D0 01 00 44 */ stfs f0, 0x44(r1) +/* 80019650 000165B0 48 2F B2 69 */ bl Magnitude__9CVector3fCFv +/* 80019654 000165B4 FF E0 08 90 */ fmr f31, f1 +/* 80019658 000165B8 38 61 00 48 */ addi r3, r1, 0x48 +/* 8001965C 000165BC 48 2F B0 9D */ bl CanBeNormalized__9CVector3fCFv +/* 80019660 000165C0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80019664 000165C4 41 82 02 84 */ beq lbl_800198E8 +/* 80019668 000165C8 38 61 00 3C */ addi r3, r1, 0x3c +/* 8001966C 000165CC 48 2F B0 8D */ bl CanBeNormalized__9CVector3fCFv +/* 80019670 000165D0 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80019674 000165D4 41 82 02 74 */ beq lbl_800198E8 +/* 80019678 000165D8 C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 8001967C 000165DC FC 40 E0 90 */ fmr f2, f28 +/* 80019680 000165E0 C0 E1 00 48 */ lfs f7, 0x48(r1) +/* 80019684 000165E4 ED 01 E0 24 */ fdivs f8, f1, f28 +/* 80019688 000165E8 C0 C1 00 4C */ lfs f6, 0x4c(r1) +/* 8001968C 000165EC C0 A1 00 50 */ lfs f5, 0x50(r1) +/* 80019690 000165F0 C0 81 00 3C */ lfs f4, 0x3c(r1) +/* 80019694 000165F4 C0 61 00 40 */ lfs f3, 0x40(r1) +/* 80019698 000165F8 C0 01 00 44 */ lfs f0, 0x44(r1) +/* 8001969C 000165FC ED 21 F8 24 */ fdivs f9, f1, f31 +/* 800196A0 00016600 C0 21 00 5C */ lfs f1, 0x5c(r1) +/* 800196A4 00016604 EC E7 02 32 */ fmuls f7, f7, f8 +/* 800196A8 00016608 EC C6 02 32 */ fmuls f6, f6, f8 +/* 800196AC 0001660C EC A5 02 32 */ fmuls f5, f5, f8 +/* 800196B0 00016610 EC 84 02 72 */ fmuls f4, f4, f9 +/* 800196B4 00016614 D0 E1 00 48 */ stfs f7, 0x48(r1) +/* 800196B8 00016618 EC 63 02 72 */ fmuls f3, f3, f9 +/* 800196BC 0001661C EC 00 02 72 */ fmuls f0, f0, f9 +/* 800196C0 00016620 D0 C1 00 4C */ stfs f6, 0x4c(r1) +/* 800196C4 00016624 D0 A1 00 50 */ stfs f5, 0x50(r1) +/* 800196C8 00016628 D0 81 00 3C */ stfs f4, 0x3c(r1) +/* 800196CC 0001662C D0 61 00 40 */ stfs f3, 0x40(r1) +/* 800196D0 00016630 D0 01 00 44 */ stfs f0, 0x44(r1) +/* 800196D4 00016634 48 37 B5 99 */ bl atan2 +/* 800196D8 00016638 C0 9F 00 24 */ lfs f4, 0x24(r31) +/* 800196DC 0001663C FF C0 08 18 */ frsp f30, f1 +/* 800196E0 00016640 C0 7F 00 14 */ lfs f3, 0x14(r31) +/* 800196E4 00016644 FC 40 F8 90 */ fmr f2, f31 +/* 800196E8 00016648 C0 1F 00 04 */ lfs f0, 4(r31) +/* 800196EC 0001664C FC 20 20 90 */ fmr f1, f4 +/* 800196F0 00016650 D0 61 00 34 */ stfs f3, 0x34(r1) +/* 800196F4 00016654 D0 01 00 30 */ stfs f0, 0x30(r1) +/* 800196F8 00016658 D0 81 00 38 */ stfs f4, 0x38(r1) +/* 800196FC 0001665C 48 37 B5 71 */ bl atan2 +/* 80019700 00016660 FC 00 08 18 */ frsp f0, f1 +/* 80019704 00016664 88 1E 09 C6 */ lbz r0, 0x9c6(r30) +/* 80019708 00016668 3B A0 00 01 */ li r29, 1 +/* 8001970C 0001666C 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80019710 00016670 EF FE 00 28 */ fsubs f31, f30, f0 +/* 80019714 00016674 40 82 00 4C */ bne lbl_80019760 +/* 80019718 00016678 FC 00 FA 10 */ fabs f0, f31 +/* 8001971C 0001667C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80019720 00016680 C0 23 02 68 */ lfs f1, 0x268(r3) +/* 80019724 00016684 FC 00 00 18 */ frsp f0, f0 +/* 80019728 00016688 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 8001972C 0001668C 40 81 00 34 */ ble lbl_80019760 +/* 80019730 00016690 88 03 02 2A */ lbz r0, 0x22a(r3) +/* 80019734 00016694 54 00 EF FF */ rlwinm. r0, r0, 0x1d, 0x1f, 0x1f +/* 80019738 00016698 41 82 00 10 */ beq lbl_80019748 +/* 8001973C 0001669C C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) +/* 80019740 000166A0 3B A0 00 00 */ li r29, 0 +/* 80019744 000166A4 48 00 00 1C */ b lbl_80019760 +lbl_80019748: +/* 80019748 000166A8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 8001974C 000166AC FC 1F 00 40 */ fcmpo cr0, f31, f0 +/* 80019750 000166B0 40 81 00 0C */ ble lbl_8001975C +/* 80019754 000166B4 FF E0 08 90 */ fmr f31, f1 +/* 80019758 000166B8 48 00 00 08 */ b lbl_80019760 +lbl_8001975C: +/* 8001975C 000166BC FF E0 08 50 */ fneg f31, f1 +lbl_80019760: +/* 80019760 000166C0 C0 E1 00 40 */ lfs f7, 0x40(r1) +/* 80019764 000166C4 C0 81 00 48 */ lfs f4, 0x48(r1) +/* 80019768 000166C8 C1 21 00 44 */ lfs f9, 0x44(r1) +/* 8001976C 000166CC C0 C1 00 4C */ lfs f6, 0x4c(r1) +/* 80019770 000166D0 EC 04 01 F2 */ fmuls f0, f4, f7 +/* 80019774 000166D4 C0 A1 00 3C */ lfs f5, 0x3c(r1) +/* 80019778 000166D8 C1 01 00 50 */ lfs f8, 0x50(r1) +/* 8001977C 000166DC EC 66 02 72 */ fmuls f3, f6, f9 +/* 80019780 000166E0 EC 25 01 B8 */ fmsubs f1, f5, f6, f0 +/* 80019784 000166E4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80019788 000166E8 EC 48 01 72 */ fmuls f2, f8, f5 +/* 8001978C 000166EC EC 67 1A 38 */ fmsubs f3, f7, f8, f3 +/* 80019790 000166F0 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80019794 000166F4 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 80019798 000166F8 EC 09 11 38 */ fmsubs f0, f9, f4, f2 +/* 8001979C 000166FC D0 61 00 24 */ stfs f3, 0x24(r1) +/* 800197A0 00016700 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 800197A4 00016704 7C 00 00 26 */ mfcr r0 +/* 800197A8 00016708 EC 27 01 B2 */ fmuls f1, f7, f6 +/* 800197AC 0001670C C8 02 81 80 */ lfd f0, lbl_805A9EA0@sda21(r2) +/* 800197B0 00016710 54 1C 17 FE */ rlwinm r28, r0, 2, 0x1f, 0x1f +/* 800197B4 00016714 EC 25 09 3A */ fmadds f1, f5, f4, f1 +/* 800197B8 00016718 EC 29 0A 3A */ fmadds f1, f9, f8, f1 +/* 800197BC 0001671C FC 40 0A 10 */ fabs f2, f1 +/* 800197C0 00016720 FC 02 00 40 */ fcmpo cr0, f2, f0 +/* 800197C4 00016724 40 81 00 14 */ ble lbl_800197D8 +/* 800197C8 00016728 C0 02 81 88 */ lfs f0, lbl_805A9EA8@sda21(r2) +/* 800197CC 0001672C C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) +/* 800197D0 00016730 FC 01 00 AE */ fsel f0, f1, f2, f0 +/* 800197D4 00016734 EC 22 00 32 */ fmuls f1, f2, f0 +lbl_800197D8: +/* 800197D8 00016738 48 37 B4 55 */ bl acos +/* 800197DC 0001673C FC 00 08 18 */ frsp f0, f1 +/* 800197E0 00016740 88 1E 09 C6 */ lbz r0, 0x9c6(r30) +/* 800197E4 00016744 38 80 00 01 */ li r4, 1 +/* 800197E8 00016748 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 800197EC 0001674C FF 60 00 90 */ fmr f27, f0 +/* 800197F0 00016750 40 82 00 34 */ bne lbl_80019824 +/* 800197F4 00016754 FC 00 02 10 */ fabs f0, f0 +/* 800197F8 00016758 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 800197FC 0001675C C0 23 02 64 */ lfs f1, 0x264(r3) +/* 80019800 00016760 FC 00 00 18 */ frsp f0, f0 +/* 80019804 00016764 FC 00 08 40 */ fcmpo cr0, f0, f1 +/* 80019808 00016768 40 81 00 1C */ ble lbl_80019824 +/* 8001980C 0001676C 88 03 02 2A */ lbz r0, 0x22a(r3) +/* 80019810 00016770 FF 60 08 90 */ fmr f27, f1 +/* 80019814 00016774 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80019818 00016778 41 82 00 0C */ beq lbl_80019824 +/* 8001981C 0001677C C3 62 81 0C */ lfs f27, lbl_805A9E2C@sda21(r2) +/* 80019820 00016780 38 80 00 00 */ li r4, 0 +lbl_80019824: +/* 80019824 00016784 28 1C 00 00 */ cmplwi r28, 0 +/* 80019828 00016788 41 82 00 08 */ beq lbl_80019830 +/* 8001982C 0001678C FF 60 D8 50 */ fneg f27, f27 +lbl_80019830: +/* 80019830 00016790 57 A0 06 3F */ clrlwi. r0, r29, 0x18 +/* 80019834 00016794 41 82 00 0C */ beq lbl_80019840 +/* 80019838 00016798 54 80 06 3F */ clrlwi. r0, r4, 0x18 +/* 8001983C 0001679C 40 82 00 0C */ bne lbl_80019848 +lbl_80019840: +/* 80019840 000167A0 C3 E2 81 0C */ lfs f31, lbl_805A9E2C@sda21(r2) +/* 80019844 000167A4 FF 60 F8 90 */ fmr f27, f31 +lbl_80019848: +/* 80019848 000167A8 FC 20 F8 90 */ fmr f1, f31 +/* 8001984C 000167AC 48 37 B2 91 */ bl sin +/* 80019850 000167B0 FF C0 08 18 */ frsp f30, f1 +/* 80019854 000167B4 FC 20 F8 90 */ fmr f1, f31 +/* 80019858 000167B8 48 37 AB 99 */ bl cos +/* 8001985C 000167BC FF A0 08 18 */ frsp f29, f1 +/* 80019860 000167C0 FC 20 D8 90 */ fmr f1, f27 +/* 80019864 000167C4 48 37 AB 8D */ bl cos +/* 80019868 000167C8 FF 80 08 18 */ frsp f28, f1 +/* 8001986C 000167CC FC 20 F8 90 */ fmr f1, f31 +/* 80019870 000167D0 48 37 AB 81 */ bl cos +/* 80019874 000167D4 FF E0 08 18 */ frsp f31, f1 +/* 80019878 000167D8 FC 20 D8 90 */ fmr f1, f27 +/* 8001987C 000167DC 48 37 B2 61 */ bl sin +/* 80019880 000167E0 FC 20 08 18 */ frsp f1, f1 +/* 80019884 000167E4 D3 C1 00 5C */ stfs f30, 0x5c(r1) +/* 80019888 000167E8 EC 1C 07 72 */ fmuls f0, f28, f29 +/* 8001988C 000167EC 7F E4 FB 78 */ mr r4, r31 +/* 80019890 000167F0 38 61 00 18 */ addi r3, r1, 0x18 +/* 80019894 000167F4 38 A1 00 54 */ addi r5, r1, 0x54 +/* 80019898 000167F8 EC 21 07 F2 */ fmuls f1, f1, f31 +/* 8001989C 000167FC D0 01 00 58 */ stfs f0, 0x58(r1) +/* 800198A0 00016800 D0 21 00 54 */ stfs f1, 0x54(r1) +/* 800198A4 00016804 48 2F 91 DD */ bl Rotate__12CTransform4fCFRC9CVector3f +/* 800198A8 00016808 C0 41 00 18 */ lfs f2, 0x18(r1) +/* 800198AC 0001680C 3C 80 80 5A */ lis r4, skZero3f@ha +/* 800198B0 00016810 C0 21 00 1C */ lfs f1, 0x1c(r1) +/* 800198B4 00016814 3C 60 80 5A */ lis r3, lbl_805A66F4@ha +/* 800198B8 00016818 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 800198BC 0001681C 38 C3 66 F4 */ addi r6, r3, lbl_805A66F4@l +/* 800198C0 00016820 D0 41 00 54 */ stfs f2, 0x54(r1) +/* 800198C4 00016824 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 800198C8 00016828 38 61 00 60 */ addi r3, r1, 0x60 +/* 800198CC 0001682C 38 A1 00 54 */ addi r5, r1, 0x54 +/* 800198D0 00016830 D0 21 00 58 */ stfs f1, 0x58(r1) +/* 800198D4 00016834 D0 01 00 5C */ stfs f0, 0x5c(r1) +/* 800198D8 00016838 48 2F A2 39 */ bl LookAt__12CTransform4fFRC9CVector3fRC9CVector3fRC9CVector3f +/* 800198DC 0001683C 38 61 00 90 */ addi r3, r1, 0x90 +/* 800198E0 00016840 38 81 00 60 */ addi r4, r1, 0x60 +/* 800198E4 00016844 48 2F 92 5D */ bl __as__12CTransform4fFRC12CTransform4f +lbl_800198E8: +/* 800198E8 00016848 80 7E 04 90 */ lwz r3, 0x490(r30) +/* 800198EC 0001684C 38 81 00 90 */ addi r4, r1, 0x90 +/* 800198F0 00016850 38 63 04 78 */ addi r3, r3, 0x478 +/* 800198F4 00016854 48 2F 92 4D */ bl __as__12CTransform4fFRC12CTransform4f +/* 800198F8 00016858 E3 E1 01 18 */ psq_l f31, 280(r1), 0, qr0 +/* 800198FC 0001685C CB E1 01 10 */ lfd f31, 0x110(r1) +/* 80019900 00016860 E3 C1 01 08 */ psq_l f30, 264(r1), 0, qr0 +/* 80019904 00016864 CB C1 01 00 */ lfd f30, 0x100(r1) +/* 80019908 00016868 E3 A1 00 F8 */ psq_l f29, 248(r1), 0, qr0 +/* 8001990C 0001686C CB A1 00 F0 */ lfd f29, 0xf0(r1) +/* 80019910 00016870 E3 81 00 E8 */ psq_l f28, 232(r1), 0, qr0 +/* 80019914 00016874 CB 81 00 E0 */ lfd f28, 0xe0(r1) +/* 80019918 00016878 E3 61 00 D8 */ psq_l f27, 216(r1), 0, qr0 +/* 8001991C 0001687C CB 61 00 D0 */ lfd f27, 0xd0(r1) +/* 80019920 00016880 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 80019924 00016884 83 C1 00 C8 */ lwz r30, 0xc8(r1) +/* 80019928 00016888 83 A1 00 C4 */ lwz r29, 0xc4(r1) +/* 8001992C 0001688C 80 01 01 24 */ lwz r0, 0x124(r1) +/* 80019930 00016890 83 81 00 C0 */ lwz r28, 0xc0(r1) +/* 80019934 00016894 7C 08 03 A6 */ mtlr r0 +/* 80019938 00016898 38 21 01 20 */ addi r1, r1, 0x120 +/* 8001993C 0001689C 4E 80 00 20 */ blr + +.global UpdateAimTargetPrediction__7CPlayerFRC12CTransform4fR13CStateManager +UpdateAimTargetPrediction__7CPlayerFRC12CTransform4fR13CStateManager: +/* 80019940 000168A0 94 21 FE F0 */ stwu r1, -0x110(r1) +/* 80019944 000168A4 7C 08 02 A6 */ mflr r0 +/* 80019948 000168A8 90 01 01 14 */ stw r0, 0x114(r1) +/* 8001994C 000168AC DB E1 01 00 */ stfd f31, 0x100(r1) +/* 80019950 000168B0 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 +/* 80019954 000168B4 DB C1 00 F0 */ stfd f30, 0xf0(r1) +/* 80019958 000168B8 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 +/* 8001995C 000168BC DB A1 00 E0 */ stfd f29, 0xe0(r1) +/* 80019960 000168C0 F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 +/* 80019964 000168C4 DB 81 00 D0 */ stfd f28, 0xd0(r1) +/* 80019968 000168C8 F3 81 00 D8 */ psq_st f28, 216(r1), 0, qr0 +/* 8001996C 000168CC DB 61 00 C0 */ stfd f27, 0xc0(r1) +/* 80019970 000168D0 F3 61 00 C8 */ psq_st f27, 200(r1), 0, qr0 +/* 80019974 000168D4 DB 41 00 B0 */ stfd f26, 0xb0(r1) +/* 80019978 000168D8 F3 41 00 B8 */ psq_st f26, 184(r1), 0, qr0 +/* 8001997C 000168DC DB 21 00 A0 */ stfd f25, 0xa0(r1) +/* 80019980 000168E0 F3 21 00 A8 */ psq_st f25, 168(r1), 0, qr0 +/* 80019984 000168E4 DB 01 00 90 */ stfd f24, 0x90(r1) +/* 80019988 000168E8 F3 01 00 98 */ psq_st f24, 152(r1), 0, qr0 +/* 8001998C 000168EC 93 E1 00 8C */ stw r31, 0x8c(r1) +/* 80019990 000168F0 93 C1 00 88 */ stw r30, 0x88(r1) +/* 80019994 000168F4 93 A1 00 84 */ stw r29, 0x84(r1) +/* 80019998 000168F8 93 81 00 80 */ stw r28, 0x80(r1) +/* 8001999C 000168FC 7C 7F 1B 78 */ mr r31, r3 +/* 800199A0 00016900 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 800199A4 00016904 A0 C3 03 F4 */ lhz r6, 0x3f4(r3) +/* 800199A8 00016908 7C 9C 23 78 */ mr r28, r4 +/* 800199AC 0001690C 7C BD 2B 78 */ mr r29, r5 +/* 800199B0 00016910 7C 06 00 40 */ cmplw r6, r0 +/* 800199B4 00016914 41 82 01 C0 */ beq lbl_80019B74 +/* 800199B8 00016918 B0 C1 00 08 */ sth r6, 8(r1) +/* 800199BC 0001691C 7F A3 EB 78 */ mr r3, r29 +/* 800199C0 00016920 38 81 00 0C */ addi r4, r1, 0xc +/* 800199C4 00016924 B0 C1 00 0C */ sth r6, 0xc(r1) +/* 800199C8 00016928 48 03 2B DD */ bl GetObjectById__13CStateManagerCF9TUniqueId +/* 800199CC 0001692C 7C 64 1B 78 */ mr r4, r3 +/* 800199D0 00016930 38 61 00 18 */ addi r3, r1, 0x18 +/* 800199D4 00016934 48 09 62 BD */ bl "__ct__19TCastToPtr<6CActor>FP7CEntity" +/* 800199D8 00016938 83 C3 00 04 */ lwz r30, 4(r3) +/* 800199DC 0001693C 28 1E 00 00 */ cmplwi r30, 0 +/* 800199E0 00016940 41 82 01 94 */ beq lbl_80019B74 +/* 800199E4 00016944 7F C4 F3 78 */ mr r4, r30 +/* 800199E8 00016948 38 61 00 10 */ addi r3, r1, 0x10 +/* 800199EC 0001694C 48 09 3D 21 */ bl "__ct__29TCastToPtr<15CGameProjectile>FP7CEntity" +/* 800199F0 00016950 80 E3 00 04 */ lwz r7, 4(r3) +/* 800199F4 00016954 7F C4 F3 78 */ mr r4, r30 +/* 800199F8 00016958 88 1F 09 C6 */ lbz r0, 0x9c6(r31) +/* 800199FC 0001695C 7F A5 EB 78 */ mr r5, r29 +/* 80019A00 00016960 7C C7 00 D0 */ neg r6, r7 +/* 80019A04 00016964 38 61 00 58 */ addi r3, r1, 0x58 +/* 80019A08 00016968 7C C6 3B 78 */ or r6, r6, r7 +/* 80019A0C 0001696C C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 80019A10 00016970 50 C0 2E F6 */ rlwimi r0, r6, 5, 0x1b, 0x1b +/* 80019A14 00016974 98 1F 09 C6 */ stb r0, 0x9c6(r31) +/* 80019A18 00016978 81 9E 00 00 */ lwz r12, 0(r30) +/* 80019A1C 0001697C 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80019A20 00016980 7D 89 03 A6 */ mtctr r12 +/* 80019A24 00016984 4E 80 04 21 */ bctrl +/* 80019A28 00016988 C3 61 00 58 */ lfs f27, 0x58(r1) +/* 80019A2C 0001698C C0 1C 00 0C */ lfs f0, 0xc(r28) +/* 80019A30 00016990 C3 C1 00 5C */ lfs f30, 0x5c(r1) +/* 80019A34 00016994 C0 5C 00 1C */ lfs f2, 0x1c(r28) +/* 80019A38 00016998 EC 1B 00 28 */ fsubs f0, f27, f0 +/* 80019A3C 0001699C C3 A1 00 60 */ lfs f29, 0x60(r1) +/* 80019A40 000169A0 C0 3C 00 2C */ lfs f1, 0x2c(r28) +/* 80019A44 000169A4 EC 5E 10 28 */ fsubs f2, f30, f2 +/* 80019A48 000169A8 D0 01 00 70 */ stfs f0, 0x70(r1) +/* 80019A4C 000169AC EC 1D 08 28 */ fsubs f0, f29, f1 +/* 80019A50 000169B0 D0 41 00 74 */ stfs f2, 0x74(r1) +/* 80019A54 000169B4 D0 01 00 78 */ stfs f0, 0x78(r1) +/* 80019A58 000169B8 80 7F 04 90 */ lwz r3, 0x490(r31) +/* 80019A5C 000169BC 48 02 48 89 */ bl GetBeamVelocity__10CPlayerGunCFv +/* 80019A60 000169C0 FF E0 08 90 */ fmr f31, f1 +/* 80019A64 000169C4 38 61 00 70 */ addi r3, r1, 0x70 +/* 80019A68 000169C8 48 2F AE 51 */ bl Magnitude__9CVector3fCFv +/* 80019A6C 000169CC EC 21 F8 24 */ fdivs f1, f1, f31 +/* 80019A70 000169D0 81 9E 00 00 */ lwz r12, 0(r30) +/* 80019A74 000169D4 7F C4 F3 78 */ mr r4, r30 +/* 80019A78 000169D8 7F A5 EB 78 */ mr r5, r29 +/* 80019A7C 000169DC 81 8C 00 4C */ lwz r12, 0x4c(r12) +/* 80019A80 000169E0 38 61 00 4C */ addi r3, r1, 0x4c +/* 80019A84 000169E4 7D 89 03 A6 */ mtctr r12 +/* 80019A88 000169E8 4E 80 04 21 */ bctrl +/* 80019A8C 000169EC C3 41 00 4C */ lfs f26, 0x4c(r1) +/* 80019A90 000169F0 38 61 00 64 */ addi r3, r1, 0x64 +/* 80019A94 000169F4 C3 E1 00 50 */ lfs f31, 0x50(r1) +/* 80019A98 000169F8 C3 81 00 54 */ lfs f28, 0x54(r1) +/* 80019A9C 000169FC EC 1A D8 28 */ fsubs f0, f26, f27 +/* 80019AA0 00016A00 EF 3F F0 28 */ fsubs f25, f31, f30 +/* 80019AA4 00016A04 EF 1C E8 28 */ fsubs f24, f28, f29 +/* 80019AA8 00016A08 D0 01 00 64 */ stfs f0, 0x64(r1) +/* 80019AAC 00016A0C D3 21 00 68 */ stfs f25, 0x68(r1) +/* 80019AB0 00016A10 D3 01 00 6C */ stfs f24, 0x6c(r1) +/* 80019AB4 00016A14 D3 7F 03 F8 */ stfs f27, 0x3f8(r31) +/* 80019AB8 00016A18 D3 DF 03 FC */ stfs f30, 0x3fc(r31) +/* 80019ABC 00016A1C D3 BF 04 00 */ stfs f29, 0x400(r31) +/* 80019AC0 00016A20 48 2F AD F9 */ bl Magnitude__9CVector3fCFv +/* 80019AC4 00016A24 C0 02 81 40 */ lfs f0, lbl_805A9E60@sda21(r2) +/* 80019AC8 00016A28 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80019ACC 00016A2C 40 80 00 18 */ bge lbl_80019AE4 +/* 80019AD0 00016A30 3C 80 80 5A */ lis r4, skZero3f@ha +/* 80019AD4 00016A34 38 7F 04 04 */ addi r3, r31, 0x404 +/* 80019AD8 00016A38 38 84 66 A0 */ addi r4, r4, skZero3f@l +/* 80019ADC 00016A3C 48 00 01 6D */ bl sub_80019c48 +/* 80019AE0 00016A40 48 00 00 20 */ b lbl_80019B00 +lbl_80019AE4: +/* 80019AE4 00016A44 EC 1A D8 28 */ fsubs f0, f26, f27 +/* 80019AE8 00016A48 D3 21 00 44 */ stfs f25, 0x44(r1) +/* 80019AEC 00016A4C 38 7F 04 04 */ addi r3, r31, 0x404 +/* 80019AF0 00016A50 38 81 00 40 */ addi r4, r1, 0x40 +/* 80019AF4 00016A54 D3 01 00 48 */ stfs f24, 0x48(r1) +/* 80019AF8 00016A58 D0 01 00 40 */ stfs f0, 0x40(r1) +/* 80019AFC 00016A5C 48 00 01 4D */ bl sub_80019c48 +lbl_80019B00: +/* 80019B00 00016A60 38 61 00 30 */ addi r3, r1, 0x30 +/* 80019B04 00016A64 38 9F 04 04 */ addi r4, r31, 0x404 +/* 80019B08 00016A68 48 00 00 CD */ bl "GetAverage__31TReservedAverage<9CVector3f,20>CFv" +/* 80019B0C 00016A6C 88 61 00 3C */ lbz r3, 0x3c(r1) +/* 80019B10 00016A70 38 00 00 00 */ li r0, 0 +/* 80019B14 00016A74 28 03 00 00 */ cmplwi r3, 0 +/* 80019B18 00016A78 98 01 00 3C */ stb r0, 0x3c(r1) +/* 80019B1C 00016A7C 41 82 00 4C */ beq lbl_80019B68 +/* 80019B20 00016A80 88 1F 09 C6 */ lbz r0, 0x9c6(r31) +/* 80019B24 00016A84 54 00 E7 FF */ rlwinm. r0, r0, 0x1c, 0x1f, 0x1f +/* 80019B28 00016A88 40 82 00 40 */ bne lbl_80019B68 +/* 80019B2C 00016A8C 38 61 00 20 */ addi r3, r1, 0x20 +/* 80019B30 00016A90 38 9F 04 04 */ addi r4, r31, 0x404 +/* 80019B34 00016A94 48 00 00 A1 */ bl "GetAverage__31TReservedAverage<9CVector3f,20>CFv" +/* 80019B38 00016A98 C0 01 00 20 */ lfs f0, 0x20(r1) +/* 80019B3C 00016A9C 38 00 00 00 */ li r0, 0 +/* 80019B40 00016AA0 C0 41 00 24 */ lfs f2, 0x24(r1) +/* 80019B44 00016AA4 EC 1B 00 2A */ fadds f0, f27, f0 +/* 80019B48 00016AA8 C0 21 00 28 */ lfs f1, 0x28(r1) +/* 80019B4C 00016AAC EC 5E 10 2A */ fadds f2, f30, f2 +/* 80019B50 00016AB0 EC 3D 08 2A */ fadds f1, f29, f1 +/* 80019B54 00016AB4 D0 1F 04 80 */ stfs f0, 0x480(r31) +/* 80019B58 00016AB8 D0 5F 04 84 */ stfs f2, 0x484(r31) +/* 80019B5C 00016ABC D0 3F 04 88 */ stfs f1, 0x488(r31) +/* 80019B60 00016AC0 98 01 00 2C */ stb r0, 0x2c(r1) +/* 80019B64 00016AC4 48 00 00 10 */ b lbl_80019B74 +lbl_80019B68: +/* 80019B68 00016AC8 D3 5F 04 80 */ stfs f26, 0x480(r31) +/* 80019B6C 00016ACC D3 FF 04 84 */ stfs f31, 0x484(r31) +/* 80019B70 00016AD0 D3 9F 04 88 */ stfs f28, 0x488(r31) +lbl_80019B74: +/* 80019B74 00016AD4 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 +/* 80019B78 00016AD8 CB E1 01 00 */ lfd f31, 0x100(r1) +/* 80019B7C 00016ADC E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 +/* 80019B80 00016AE0 CB C1 00 F0 */ lfd f30, 0xf0(r1) +/* 80019B84 00016AE4 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 +/* 80019B88 00016AE8 CB A1 00 E0 */ lfd f29, 0xe0(r1) +/* 80019B8C 00016AEC E3 81 00 D8 */ psq_l f28, 216(r1), 0, qr0 +/* 80019B90 00016AF0 CB 81 00 D0 */ lfd f28, 0xd0(r1) +/* 80019B94 00016AF4 E3 61 00 C8 */ psq_l f27, 200(r1), 0, qr0 +/* 80019B98 00016AF8 CB 61 00 C0 */ lfd f27, 0xc0(r1) +/* 80019B9C 00016AFC E3 41 00 B8 */ psq_l f26, 184(r1), 0, qr0 +/* 80019BA0 00016B00 CB 41 00 B0 */ lfd f26, 0xb0(r1) +/* 80019BA4 00016B04 E3 21 00 A8 */ psq_l f25, 168(r1), 0, qr0 +/* 80019BA8 00016B08 CB 21 00 A0 */ lfd f25, 0xa0(r1) +/* 80019BAC 00016B0C E3 01 00 98 */ psq_l f24, 152(r1), 0, qr0 +/* 80019BB0 00016B10 CB 01 00 90 */ lfd f24, 0x90(r1) +/* 80019BB4 00016B14 83 E1 00 8C */ lwz r31, 0x8c(r1) +/* 80019BB8 00016B18 83 C1 00 88 */ lwz r30, 0x88(r1) +/* 80019BBC 00016B1C 83 A1 00 84 */ lwz r29, 0x84(r1) +/* 80019BC0 00016B20 80 01 01 14 */ lwz r0, 0x114(r1) +/* 80019BC4 00016B24 83 81 00 80 */ lwz r28, 0x80(r1) +/* 80019BC8 00016B28 7C 08 03 A6 */ mtlr r0 +/* 80019BCC 00016B2C 38 21 01 10 */ addi r1, r1, 0x110 +/* 80019BD0 00016B30 4E 80 00 20 */ blr + +.global "GetAverage__31TReservedAverage<9CVector3f,20>CFv" +"GetAverage__31TReservedAverage<9CVector3f,20>CFv": +/* 80019BD4 00016B34 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 80019BD8 00016B38 7C 08 02 A6 */ mflr r0 +/* 80019BDC 00016B3C 90 01 00 24 */ stw r0, 0x24(r1) +/* 80019BE0 00016B40 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80019BE4 00016B44 7C 7F 1B 78 */ mr r31, r3 +/* 80019BE8 00016B48 80 A4 00 00 */ lwz r5, 0(r4) +/* 80019BEC 00016B4C 2C 05 00 00 */ cmpwi r5, 0 +/* 80019BF0 00016B50 40 82 00 10 */ bne lbl_80019C00 +/* 80019BF4 00016B54 38 00 00 00 */ li r0, 0 +/* 80019BF8 00016B58 98 1F 00 0C */ stb r0, 0xc(r31) +/* 80019BFC 00016B5C 48 00 00 38 */ b lbl_80019C34 +lbl_80019C00: +/* 80019C00 00016B60 38 61 00 08 */ addi r3, r1, 8 +/* 80019C04 00016B64 38 84 00 04 */ addi r4, r4, 4 +/* 80019C08 00016B68 48 00 14 39 */ bl "GetAverageValue<9CVector3f>__FPC9CVector3fi" +/* 80019C0C 00016B6C 38 00 00 01 */ li r0, 1 +/* 80019C10 00016B70 28 1F 00 00 */ cmplwi r31, 0 +/* 80019C14 00016B74 98 1F 00 0C */ stb r0, 0xc(r31) +/* 80019C18 00016B78 41 82 00 1C */ beq lbl_80019C34 +/* 80019C1C 00016B7C C0 01 00 08 */ lfs f0, 8(r1) +/* 80019C20 00016B80 D0 1F 00 00 */ stfs f0, 0(r31) +/* 80019C24 00016B84 C0 01 00 0C */ lfs f0, 0xc(r1) +/* 80019C28 00016B88 D0 1F 00 04 */ stfs f0, 4(r31) +/* 80019C2C 00016B8C C0 01 00 10 */ lfs f0, 0x10(r1) +/* 80019C30 00016B90 D0 1F 00 08 */ stfs f0, 8(r31) +lbl_80019C34: +/* 80019C34 00016B94 80 01 00 24 */ lwz r0, 0x24(r1) +/* 80019C38 00016B98 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 80019C3C 00016B9C 7C 08 03 A6 */ mtlr r0 +/* 80019C40 00016BA0 38 21 00 20 */ addi r1, r1, 0x20 +/* 80019C44 00016BA4 4E 80 00 20 */ blr + +.global sub_80019c48 +sub_80019c48: +/* 80019C48 00016BA8 80 03 00 00 */ lwz r0, 0(r3) +/* 80019C4C 00016BAC 2C 00 00 0A */ cmpwi r0, 0xa +/* 80019C50 00016BB0 40 80 00 38 */ bge lbl_80019C88 +/* 80019C54 00016BB4 1C 00 00 0C */ mulli r0, r0, 0xc +/* 80019C58 00016BB8 7C A3 02 14 */ add r5, r3, r0 +/* 80019C5C 00016BBC 34 A5 00 04 */ addic. r5, r5, 4 +/* 80019C60 00016BC0 41 82 00 1C */ beq lbl_80019C7C +/* 80019C64 00016BC4 C0 04 00 00 */ lfs f0, 0(r4) +/* 80019C68 00016BC8 D0 05 00 00 */ stfs f0, 0(r5) +/* 80019C6C 00016BCC C0 04 00 04 */ lfs f0, 4(r4) +/* 80019C70 00016BD0 D0 05 00 04 */ stfs f0, 4(r5) +/* 80019C74 00016BD4 C0 04 00 08 */ lfs f0, 8(r4) +/* 80019C78 00016BD8 D0 05 00 08 */ stfs f0, 8(r5) +lbl_80019C7C: +/* 80019C7C 00016BDC 80 A3 00 00 */ lwz r5, 0(r3) +/* 80019C80 00016BE0 38 05 00 01 */ addi r0, r5, 1 +/* 80019C84 00016BE4 90 03 00 00 */ stw r0, 0(r3) +lbl_80019C88: +/* 80019C88 00016BE8 80 A3 00 00 */ lwz r5, 0(r3) +/* 80019C8C 00016BEC 35 25 FF FF */ addic. r9, r5, -1 +/* 80019C90 00016BF0 1C 09 00 0C */ mulli r0, r9, 0xc +/* 80019C94 00016BF4 7D 25 4B 78 */ mr r5, r9 +/* 80019C98 00016BF8 7D 03 02 14 */ add r8, r3, r0 +/* 80019C9C 00016BFC 39 08 00 04 */ addi r8, r8, 4 +/* 80019CA0 00016C00 40 81 00 E8 */ ble lbl_80019D88 +/* 80019CA4 00016C04 55 20 F0 BF */ rlwinm. r0, r9, 0x1e, 2, 0x1f +/* 80019CA8 00016C08 7C 09 03 A6 */ mtctr r0 +/* 80019CAC 00016C0C 41 82 00 A8 */ beq lbl_80019D54 +lbl_80019CB0: +/* 80019CB0 00016C10 38 C9 FF FF */ addi r6, r9, -1 +/* 80019CB4 00016C14 1C 06 00 0C */ mulli r0, r6, 0xc +/* 80019CB8 00016C18 38 C9 FF FE */ addi r6, r9, -2 +/* 80019CBC 00016C1C 7C E3 02 14 */ add r7, r3, r0 +/* 80019CC0 00016C20 C0 07 00 04 */ lfs f0, 4(r7) +/* 80019CC4 00016C24 1C 06 00 0C */ mulli r0, r6, 0xc +/* 80019CC8 00016C28 38 C9 FF FD */ addi r6, r9, -3 +/* 80019CCC 00016C2C D0 08 00 00 */ stfs f0, 0(r8) +/* 80019CD0 00016C30 C0 07 00 08 */ lfs f0, 8(r7) +/* 80019CD4 00016C34 D0 08 00 04 */ stfs f0, 4(r8) +/* 80019CD8 00016C38 C0 07 00 0C */ lfs f0, 0xc(r7) +/* 80019CDC 00016C3C 7C E3 02 14 */ add r7, r3, r0 +/* 80019CE0 00016C40 1C 06 00 0C */ mulli r0, r6, 0xc +/* 80019CE4 00016C44 38 C9 FF FC */ addi r6, r9, -4 +/* 80019CE8 00016C48 D0 08 00 08 */ stfs f0, 8(r8) +/* 80019CEC 00016C4C 39 29 FF FC */ addi r9, r9, -4 +/* 80019CF0 00016C50 C0 07 00 04 */ lfs f0, 4(r7) +/* 80019CF4 00016C54 D0 08 FF F4 */ stfs f0, -0xc(r8) +/* 80019CF8 00016C58 C0 07 00 08 */ lfs f0, 8(r7) +/* 80019CFC 00016C5C D0 08 FF F8 */ stfs f0, -8(r8) +/* 80019D00 00016C60 C0 07 00 0C */ lfs f0, 0xc(r7) +/* 80019D04 00016C64 7C E3 02 14 */ add r7, r3, r0 +/* 80019D08 00016C68 1C 06 00 0C */ mulli r0, r6, 0xc +/* 80019D0C 00016C6C D0 08 FF FC */ stfs f0, -4(r8) +/* 80019D10 00016C70 C0 07 00 04 */ lfs f0, 4(r7) +/* 80019D14 00016C74 D0 08 FF E8 */ stfs f0, -0x18(r8) +/* 80019D18 00016C78 C0 07 00 08 */ lfs f0, 8(r7) +/* 80019D1C 00016C7C D0 08 FF EC */ stfs f0, -0x14(r8) +/* 80019D20 00016C80 C0 07 00 0C */ lfs f0, 0xc(r7) +/* 80019D24 00016C84 7C E3 02 14 */ add r7, r3, r0 +/* 80019D28 00016C88 D0 08 FF F0 */ stfs f0, -0x10(r8) +/* 80019D2C 00016C8C C0 07 00 04 */ lfs f0, 4(r7) +/* 80019D30 00016C90 D0 08 FF DC */ stfs f0, -0x24(r8) +/* 80019D34 00016C94 C0 07 00 08 */ lfs f0, 8(r7) +/* 80019D38 00016C98 D0 08 FF E0 */ stfs f0, -0x20(r8) +/* 80019D3C 00016C9C C0 07 00 0C */ lfs f0, 0xc(r7) +/* 80019D40 00016CA0 D0 08 FF E4 */ stfs f0, -0x1c(r8) +/* 80019D44 00016CA4 39 08 FF D0 */ addi r8, r8, -48 +/* 80019D48 00016CA8 42 00 FF 68 */ bdnz lbl_80019CB0 +/* 80019D4C 00016CAC 70 A5 00 03 */ andi. r5, r5, 3 +/* 80019D50 00016CB0 41 82 00 38 */ beq lbl_80019D88 +lbl_80019D54: +/* 80019D54 00016CB4 7C A9 03 A6 */ mtctr r5 +lbl_80019D58: +/* 80019D58 00016CB8 38 C9 FF FF */ addi r6, r9, -1 +/* 80019D5C 00016CBC 39 29 FF FF */ addi r9, r9, -1 +/* 80019D60 00016CC0 1C 06 00 0C */ mulli r0, r6, 0xc +/* 80019D64 00016CC4 7C E3 02 14 */ add r7, r3, r0 +/* 80019D68 00016CC8 C0 07 00 04 */ lfs f0, 4(r7) +/* 80019D6C 00016CCC D0 08 00 00 */ stfs f0, 0(r8) +/* 80019D70 00016CD0 C0 07 00 08 */ lfs f0, 8(r7) +/* 80019D74 00016CD4 D0 08 00 04 */ stfs f0, 4(r8) +/* 80019D78 00016CD8 C0 07 00 0C */ lfs f0, 0xc(r7) +/* 80019D7C 00016CDC D0 08 00 08 */ stfs f0, 8(r8) +/* 80019D80 00016CE0 39 08 FF F4 */ addi r8, r8, -12 +/* 80019D84 00016CE4 42 00 FF D4 */ bdnz lbl_80019D58 +lbl_80019D88: +/* 80019D88 00016CE8 C0 04 00 00 */ lfs f0, 0(r4) +/* 80019D8C 00016CEC D0 03 00 04 */ stfs f0, 4(r3) +/* 80019D90 00016CF0 C0 04 00 04 */ lfs f0, 4(r4) +/* 80019D94 00016CF4 D0 03 00 08 */ stfs f0, 8(r3) +/* 80019D98 00016CF8 C0 04 00 08 */ lfs f0, 8(r4) +/* 80019D9C 00016CFC D0 03 00 0C */ stfs f0, 0xc(r3) +/* 80019DA0 00016D00 4E 80 00 20 */ blr + +.global ResetAimTargetPrediction__7CPlayerF9TUniqueId +ResetAimTargetPrediction__7CPlayerF9TUniqueId: +/* 80019DA4 00016D04 A0 A4 00 00 */ lhz r5, 0(r4) +/* 80019DA8 00016D08 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 80019DAC 00016D0C 7C 05 00 40 */ cmplw r5, r0 +/* 80019DB0 00016D10 41 82 00 10 */ beq lbl_80019DC0 +/* 80019DB4 00016D14 A0 03 03 F4 */ lhz r0, 0x3f4(r3) +/* 80019DB8 00016D18 7C 00 28 40 */ cmplw r0, r5 +/* 80019DBC 00016D1C 41 82 00 58 */ beq lbl_80019E14 +lbl_80019DC0: +/* 80019DC0 00016D20 80 E3 04 04 */ lwz r7, 0x404(r3) +/* 80019DC4 00016D24 38 A0 00 00 */ li r5, 0 +/* 80019DC8 00016D28 2C 07 00 00 */ cmpwi r7, 0 +/* 80019DCC 00016D2C 40 81 00 40 */ ble lbl_80019E0C +/* 80019DD0 00016D30 2C 07 00 08 */ cmpwi r7, 8 +/* 80019DD4 00016D34 38 C7 FF F8 */ addi r6, r7, -8 +/* 80019DD8 00016D38 40 81 00 20 */ ble lbl_80019DF8 +/* 80019DDC 00016D3C 38 06 00 07 */ addi r0, r6, 7 +/* 80019DE0 00016D40 54 00 E8 FE */ srwi r0, r0, 3 +/* 80019DE4 00016D44 7C 09 03 A6 */ mtctr r0 +/* 80019DE8 00016D48 2C 06 00 00 */ cmpwi r6, 0 +/* 80019DEC 00016D4C 40 81 00 0C */ ble lbl_80019DF8 +lbl_80019DF0: +/* 80019DF0 00016D50 38 A5 00 08 */ addi r5, r5, 8 +/* 80019DF4 00016D54 42 00 FF FC */ bdnz lbl_80019DF0 +lbl_80019DF8: +/* 80019DF8 00016D58 7C 05 38 50 */ subf r0, r5, r7 +/* 80019DFC 00016D5C 7C 09 03 A6 */ mtctr r0 +/* 80019E00 00016D60 7C 05 38 00 */ cmpw r5, r7 +/* 80019E04 00016D64 40 80 00 08 */ bge lbl_80019E0C +lbl_80019E08: +/* 80019E08 00016D68 42 00 00 00 */ bdnz lbl_80019E08 +lbl_80019E0C: +/* 80019E0C 00016D6C 38 00 00 00 */ li r0, 0 +/* 80019E10 00016D70 90 03 04 04 */ stw r0, 0x404(r3) +lbl_80019E14: +/* 80019E14 00016D74 A0 04 00 00 */ lhz r0, 0(r4) +/* 80019E18 00016D78 B0 03 03 F4 */ sth r0, 0x3f4(r3) +/* 80019E1C 00016D7C 4E 80 00 20 */ blr + +.global UpdateGunState__7CPlayerFRC11CFinalInputR13CStateManager +UpdateGunState__7CPlayerFRC11CFinalInputR13CStateManager: +/* 80019E20 00016D80 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 80019E24 00016D84 7C 08 02 A6 */ mflr r0 +/* 80019E28 00016D88 90 01 00 34 */ stw r0, 0x34(r1) +/* 80019E2C 00016D8C DB E1 00 20 */ stfd f31, 0x20(r1) +/* 80019E30 00016D90 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 +/* 80019E34 00016D94 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 80019E38 00016D98 93 C1 00 18 */ stw r30, 0x18(r1) +/* 80019E3C 00016D9C 93 A1 00 14 */ stw r29, 0x14(r1) +/* 80019E40 00016DA0 93 81 00 10 */ stw r28, 0x10(r1) +/* 80019E44 00016DA4 7C 7D 1B 78 */ mr r29, r3 +/* 80019E48 00016DA8 7C 9C 23 78 */ mr r28, r4 +/* 80019E4C 00016DAC 80 03 04 98 */ lwz r0, 0x498(r3) +/* 80019E50 00016DB0 7C BE 2B 78 */ mr r30, r5 +/* 80019E54 00016DB4 C3 E4 00 00 */ lfs f31, 0(r4) +/* 80019E58 00016DB8 2C 00 00 02 */ cmpwi r0, 2 +/* 80019E5C 00016DBC 41 82 00 24 */ beq lbl_80019E80 +/* 80019E60 00016DC0 40 80 00 14 */ bge lbl_80019E74 +/* 80019E64 00016DC4 2C 00 00 00 */ cmpwi r0, 0 +/* 80019E68 00016DC8 41 82 01 4C */ beq lbl_80019FB4 +/* 80019E6C 00016DCC 40 80 01 14 */ bge lbl_80019F80 +/* 80019E70 00016DD0 48 00 02 14 */ b lbl_8001A084 +lbl_80019E74: +/* 80019E74 00016DD4 2C 00 00 04 */ cmpwi r0, 4 +/* 80019E78 00016DD8 40 80 02 0C */ bge lbl_8001A084 +/* 80019E7C 00016DDC 48 00 01 E4 */ b lbl_8001A060 +lbl_80019E80: +/* 80019E80 00016DE0 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80019E84 00016DE4 3B E0 00 00 */ li r31, 0 +/* 80019E88 00016DE8 88 03 02 29 */ lbz r0, 0x229(r3) +/* 80019E8C 00016DEC 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 80019E90 00016DF0 41 82 00 78 */ beq lbl_80019F08 +/* 80019E94 00016DF4 38 60 00 17 */ li r3, 0x17 +/* 80019E98 00016DF8 4B FF 29 39 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80019E9C 00016DFC 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80019EA0 00016E00 41 82 00 08 */ beq lbl_80019EA8 +/* 80019EA4 00016E04 3B E0 00 01 */ li r31, 1 +lbl_80019EA8: +/* 80019EA8 00016E08 7F 84 E3 78 */ mr r4, r28 +/* 80019EAC 00016E0C 38 60 00 0B */ li r3, 0xb +/* 80019EB0 00016E10 4B FF 29 C5 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80019EB4 00016E14 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80019EB8 00016E18 40 82 00 B0 */ bne lbl_80019F68 +/* 80019EBC 00016E1C 7F 84 E3 78 */ mr r4, r28 +/* 80019EC0 00016E20 38 60 00 0C */ li r3, 0xc +/* 80019EC4 00016E24 4B FF 29 B1 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80019EC8 00016E28 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80019ECC 00016E2C 40 82 00 9C */ bne lbl_80019F68 +/* 80019ED0 00016E30 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80019ED4 00016E34 88 03 02 29 */ lbz r0, 0x229(r3) +/* 80019ED8 00016E38 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80019EDC 00016E3C 41 82 00 8C */ beq lbl_80019F68 +/* 80019EE0 00016E40 C0 3D 04 9C */ lfs f1, 0x49c(r29) +/* 80019EE4 00016E44 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80019EE8 00016E48 EC 21 F8 28 */ fsubs f1, f1, f31 +/* 80019EEC 00016E4C D0 3D 04 9C */ stfs f1, 0x49c(r29) +/* 80019EF0 00016E50 C0 3D 04 9C */ lfs f1, 0x49c(r29) +/* 80019EF4 00016E54 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80019EF8 00016E58 4C 40 13 82 */ cror 2, 0, 2 +/* 80019EFC 00016E5C 40 82 00 6C */ bne lbl_80019F68 +/* 80019F00 00016E60 3B E0 00 01 */ li r31, 1 +/* 80019F04 00016E64 48 00 00 64 */ b lbl_80019F68 +lbl_80019F08: +/* 80019F08 00016E68 38 60 00 0B */ li r3, 0xb +/* 80019F0C 00016E6C 4B FF 29 69 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80019F10 00016E70 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80019F14 00016E74 40 82 00 48 */ bne lbl_80019F5C +/* 80019F18 00016E78 7F 84 E3 78 */ mr r4, r28 +/* 80019F1C 00016E7C 38 60 00 0C */ li r3, 0xc +/* 80019F20 00016E80 4B FF 29 55 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80019F24 00016E84 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80019F28 00016E88 40 82 00 34 */ bne lbl_80019F5C +/* 80019F2C 00016E8C 80 7D 04 90 */ lwz r3, 0x490(r29) +/* 80019F30 00016E90 88 03 08 33 */ lbz r0, 0x833(r3) +/* 80019F34 00016E94 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f +/* 80019F38 00016E98 41 82 00 24 */ beq lbl_80019F5C +/* 80019F3C 00016E9C 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80019F40 00016EA0 88 03 02 29 */ lbz r0, 0x229(r3) +/* 80019F44 00016EA4 54 00 07 FF */ clrlwi. r0, r0, 0x1f +/* 80019F48 00016EA8 41 82 00 20 */ beq lbl_80019F68 +/* 80019F4C 00016EAC C0 1D 04 9C */ lfs f0, 0x49c(r29) +/* 80019F50 00016EB0 EC 00 F8 28 */ fsubs f0, f0, f31 +/* 80019F54 00016EB4 D0 1D 04 9C */ stfs f0, 0x49c(r29) +/* 80019F58 00016EB8 48 00 00 10 */ b lbl_80019F68 +lbl_80019F5C: +/* 80019F5C 00016EBC 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) +/* 80019F60 00016EC0 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80019F64 00016EC4 D0 1D 04 9C */ stfs f0, 0x49c(r29) +lbl_80019F68: +/* 80019F68 00016EC8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 80019F6C 00016ECC 41 82 01 18 */ beq lbl_8001A084 +/* 80019F70 00016ED0 7F A3 EB 78 */ mr r3, r29 +/* 80019F74 00016ED4 7F C4 F3 78 */ mr r4, r30 +/* 80019F78 00016ED8 48 00 01 F5 */ bl HolsterGun__7CPlayerFR13CStateManager +/* 80019F7C 00016EDC 48 00 01 08 */ b lbl_8001A084 +lbl_80019F80: +/* 80019F80 00016EE0 C0 3D 04 9C */ lfs f1, 0x49c(r29) +/* 80019F84 00016EE4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 80019F88 00016EE8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 80019F8C 00016EEC 40 81 00 10 */ ble lbl_80019F9C +/* 80019F90 00016EF0 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 80019F94 00016EF4 D0 1D 04 9C */ stfs f0, 0x49c(r29) +/* 80019F98 00016EF8 48 00 00 EC */ b lbl_8001A084 +lbl_80019F9C: +/* 80019F9C 00016EFC 38 00 00 02 */ li r0, 2 +/* 80019FA0 00016F00 90 1D 04 98 */ stw r0, 0x498(r29) +/* 80019FA4 00016F04 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) +/* 80019FA8 00016F08 C0 03 00 40 */ lfs f0, 0x40(r3) +/* 80019FAC 00016F0C D0 1D 04 9C */ stfs f0, 0x49c(r29) +/* 80019FB0 00016F10 48 00 00 D4 */ b lbl_8001A084 +lbl_80019FB4: +/* 80019FB4 00016F14 3B E0 00 00 */ li r31, 0 +/* 80019FB8 00016F18 38 60 00 0B */ li r3, 0xb +/* 80019FBC 00016F1C 4B FF 28 B9 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80019FC0 00016F20 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80019FC4 00016F24 40 82 00 24 */ bne lbl_80019FE8 +/* 80019FC8 00016F28 7F 84 E3 78 */ mr r4, r28 +/* 80019FCC 00016F2C 38 60 00 0C */ li r3, 0xc +/* 80019FD0 00016F30 4B FF 28 A5 */ bl GetDigitalInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 80019FD4 00016F34 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 80019FD8 00016F38 40 82 00 10 */ bne lbl_80019FE8 +/* 80019FDC 00016F3C 80 1D 03 B8 */ lwz r0, 0x3b8(r29) +/* 80019FE0 00016F40 2C 00 00 00 */ cmpwi r0, 0 +/* 80019FE4 00016F44 40 82 00 0C */ bne lbl_80019FF0 +lbl_80019FE8: +/* 80019FE8 00016F48 3B E0 00 01 */ li r31, 1 +/* 80019FEC 00016F4C 48 00 00 2C */ b lbl_8001A018 +lbl_80019FF0: +/* 80019FF0 00016F50 80 6D A1 18 */ lwz r3, gpTweakPlayer@sda21(r13) +/* 80019FF4 00016F54 88 03 02 29 */ lbz r0, 0x229(r3) +/* 80019FF8 00016F58 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f +/* 80019FFC 00016F5C 41 82 00 1C */ beq lbl_8001A018 +/* 8001A000 00016F60 7F 84 E3 78 */ mr r4, r28 +/* 8001A004 00016F64 38 60 00 17 */ li r3, 0x17 +/* 8001A008 00016F68 4B FF 27 C9 */ bl GetPressInput__13ControlMapperFQ213ControlMapper9ECommandsRC11CFinalInput +/* 8001A00C 00016F6C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001A010 00016F70 41 82 00 08 */ beq lbl_8001A018 +/* 8001A014 00016F74 3B E0 00 01 */ li r31, 1 +lbl_8001A018: +/* 8001A018 00016F78 80 1D 03 B8 */ lwz r0, 0x3b8(r29) +/* 8001A01C 00016F7C 2C 00 00 00 */ cmpwi r0, 0 +/* 8001A020 00016F80 40 82 00 24 */ bne lbl_8001A044 +/* 8001A024 00016F84 80 7E 08 B8 */ lwz r3, 0x8b8(r30) +/* 8001A028 00016F88 80 63 00 00 */ lwz r3, 0(r3) +/* 8001A02C 00016F8C 80 03 00 14 */ lwz r0, 0x14(r3) +/* 8001A030 00016F90 2C 00 00 02 */ cmpwi r0, 2 +/* 8001A034 00016F94 41 82 00 10 */ beq lbl_8001A044 +/* 8001A038 00016F98 80 03 00 18 */ lwz r0, 0x18(r3) +/* 8001A03C 00016F9C 2C 00 00 02 */ cmpwi r0, 2 +/* 8001A040 00016FA0 40 82 00 08 */ bne lbl_8001A048 +lbl_8001A044: +/* 8001A044 00016FA4 3B E0 00 00 */ li r31, 0 +lbl_8001A048: +/* 8001A048 00016FA8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 +/* 8001A04C 00016FAC 41 82 00 38 */ beq lbl_8001A084 +/* 8001A050 00016FB0 7F A3 EB 78 */ mr r3, r29 +/* 8001A054 00016FB4 7F C4 F3 78 */ mr r4, r30 +/* 8001A058 00016FB8 48 00 00 55 */ bl DrawGun__7CPlayerFR13CStateManager +/* 8001A05C 00016FBC 48 00 00 28 */ b lbl_8001A084 +lbl_8001A060: +/* 8001A060 00016FC0 C0 3D 04 9C */ lfs f1, 0x49c(r29) +/* 8001A064 00016FC4 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 8001A068 00016FC8 FC 01 00 40 */ fcmpo cr0, f1, f0 +/* 8001A06C 00016FCC 40 81 00 10 */ ble lbl_8001A07C +/* 8001A070 00016FD0 EC 01 F8 28 */ fsubs f0, f1, f31 +/* 8001A074 00016FD4 D0 1D 04 9C */ stfs f0, 0x49c(r29) +/* 8001A078 00016FD8 48 00 00 0C */ b lbl_8001A084 +lbl_8001A07C: +/* 8001A07C 00016FDC 38 00 00 00 */ li r0, 0 +/* 8001A080 00016FE0 90 1D 04 98 */ stw r0, 0x498(r29) +lbl_8001A084: +/* 8001A084 00016FE4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 +/* 8001A088 00016FE8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8001A08C 00016FEC CB E1 00 20 */ lfd f31, 0x20(r1) +/* 8001A090 00016FF0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001A094 00016FF4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 8001A098 00016FF8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 8001A09C 00016FFC 83 81 00 10 */ lwz r28, 0x10(r1) +/* 8001A0A0 00017000 7C 08 03 A6 */ mtlr r0 +/* 8001A0A4 00017004 38 21 00 30 */ addi r1, r1, 0x30 +/* 8001A0A8 00017008 4E 80 00 20 */ blr + +.global DrawGun__7CPlayerFR13CStateManager +DrawGun__7CPlayerFR13CStateManager: +/* 8001A0AC 0001700C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001A0B0 00017010 7C 08 02 A6 */ mflr r0 +/* 8001A0B4 00017014 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001A0B8 00017018 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8001A0BC 0001701C 7C 9F 23 78 */ mr r31, r4 +/* 8001A0C0 00017020 93 C1 00 08 */ stw r30, 8(r1) +/* 8001A0C4 00017024 7C 7E 1B 78 */ mr r30, r3 +/* 8001A0C8 00017028 80 03 04 98 */ lwz r0, 0x498(r3) +/* 8001A0CC 0001702C 2C 00 00 00 */ cmpwi r0, 0 +/* 8001A0D0 00017030 40 82 00 30 */ bne lbl_8001A100 +/* 8001A0D4 00017034 48 16 11 D5 */ bl InGrappleJumpCooldown__7CPlayerCFv +/* 8001A0D8 00017038 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001A0DC 0001703C 41 82 00 08 */ beq lbl_8001A0E4 +/* 8001A0E0 00017040 48 00 00 20 */ b lbl_8001A100 +lbl_8001A0E4: +/* 8001A0E4 00017044 38 00 00 01 */ li r0, 1 +/* 8001A0E8 00017048 C0 02 81 B4 */ lfs f0, lbl_805A9ED4@sda21(r2) +/* 8001A0EC 0001704C 90 1E 04 98 */ stw r0, 0x498(r30) +/* 8001A0F0 00017050 7F E4 FB 78 */ mr r4, r31 +/* 8001A0F4 00017054 D0 1E 04 9C */ stfs f0, 0x49c(r30) +/* 8001A0F8 00017058 80 7E 04 90 */ lwz r3, 0x490(r30) +/* 8001A0FC 0001705C 48 02 38 3D */ bl ResetIdle__10CPlayerGunFR13CStateManager +lbl_8001A100: +/* 8001A100 00017060 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001A104 00017064 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8001A108 00017068 83 C1 00 08 */ lwz r30, 8(r1) +/* 8001A10C 0001706C 7C 08 03 A6 */ mtlr r0 +/* 8001A110 00017070 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001A114 00017074 4E 80 00 20 */ blr + +.global ResetGun__7CPlayerFR13CStateManager +ResetGun__7CPlayerFR13CStateManager: +/* 8001A118 00017078 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001A11C 0001707C 7C 08 02 A6 */ mflr r0 +/* 8001A120 00017080 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 8001A124 00017084 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001A128 00017088 38 00 00 00 */ li r0, 0 +/* 8001A12C 0001708C 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001A130 00017090 7C 7F 1B 78 */ mr r31, r3 +/* 8001A134 00017094 90 03 04 98 */ stw r0, 0x498(r3) +/* 8001A138 00017098 D0 03 04 9C */ stfs f0, 0x49c(r3) +/* 8001A13C 0001709C 80 63 04 90 */ lwz r3, 0x490(r3) +/* 8001A140 000170A0 48 02 29 19 */ bl CancelFiring__10CPlayerGunFR13CStateManager +/* 8001A144 000170A4 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8001A148 000170A8 7F E3 FB 78 */ mr r3, r31 +/* 8001A14C 000170AC 38 81 00 08 */ addi r4, r1, 8 +/* 8001A150 000170B0 B0 01 00 08 */ sth r0, 8(r1) +/* 8001A154 000170B4 4B FF FC 51 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +/* 8001A158 000170B8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001A15C 000170BC 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001A160 000170C0 7C 08 03 A6 */ mtlr r0 +/* 8001A164 000170C4 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001A168 000170C8 4E 80 00 20 */ blr + +.global HolsterGun__7CPlayerFR13CStateManager +HolsterGun__7CPlayerFR13CStateManager: +/* 8001A16C 000170CC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8001A170 000170D0 7C 08 02 A6 */ mflr r0 +/* 8001A174 000170D4 90 01 00 24 */ stw r0, 0x24(r1) +/* 8001A178 000170D8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8001A17C 000170DC 7C 7F 1B 78 */ mr r31, r3 +/* 8001A180 000170E0 80 A3 04 98 */ lwz r5, 0x498(r3) +/* 8001A184 000170E4 2C 05 00 00 */ cmpwi r5, 0 +/* 8001A188 000170E8 41 82 00 78 */ beq lbl_8001A200 +/* 8001A18C 000170EC 2C 05 00 03 */ cmpwi r5, 3 +/* 8001A190 000170F0 40 82 00 08 */ bne lbl_8001A198 +/* 8001A194 000170F4 48 00 00 6C */ b lbl_8001A200 +lbl_8001A198: +/* 8001A198 000170F8 80 1F 02 F8 */ lwz r0, 0x2f8(r31) +/* 8001A19C 000170FC 80 6D A1 34 */ lwz r3, gpTweakPlayerGun@sda21(r13) +/* 8001A1A0 00017100 2C 00 00 02 */ cmpwi r0, 2 +/* 8001A1A4 00017104 C0 63 00 3C */ lfs f3, 0x3c(r3) +/* 8001A1A8 00017108 40 82 00 08 */ bne lbl_8001A1B0 +/* 8001A1AC 0001710C C0 62 81 40 */ lfs f3, lbl_805A9E60@sda21(r2) +lbl_8001A1B0: +/* 8001A1B0 00017110 2C 05 00 01 */ cmpwi r5, 1 +/* 8001A1B4 00017114 40 82 00 24 */ bne lbl_8001A1D8 +/* 8001A1B8 00017118 C0 3F 04 9C */ lfs f1, 0x49c(r31) +/* 8001A1BC 0001711C C0 02 81 B4 */ lfs f0, lbl_805A9ED4@sda21(r2) +/* 8001A1C0 00017120 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) +/* 8001A1C4 00017124 EC 01 00 24 */ fdivs f0, f1, f0 +/* 8001A1C8 00017128 EC 02 00 28 */ fsubs f0, f2, f0 +/* 8001A1CC 0001712C EC 03 00 32 */ fmuls f0, f3, f0 +/* 8001A1D0 00017130 D0 1F 04 9C */ stfs f0, 0x49c(r31) +/* 8001A1D4 00017134 48 00 00 08 */ b lbl_8001A1DC +lbl_8001A1D8: +/* 8001A1D8 00017138 D0 7F 04 9C */ stfs f3, 0x49c(r31) +lbl_8001A1DC: +/* 8001A1DC 0001713C 38 00 00 03 */ li r0, 3 +/* 8001A1E0 00017140 90 1F 04 98 */ stw r0, 0x498(r31) +/* 8001A1E4 00017144 80 7F 04 90 */ lwz r3, 0x490(r31) +/* 8001A1E8 00017148 48 02 28 71 */ bl CancelFiring__10CPlayerGunFR13CStateManager +/* 8001A1EC 0001714C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8001A1F0 00017150 7F E3 FB 78 */ mr r3, r31 +/* 8001A1F4 00017154 38 81 00 08 */ addi r4, r1, 8 +/* 8001A1F8 00017158 B0 01 00 08 */ sth r0, 8(r1) +/* 8001A1FC 0001715C 4B FF FB A9 */ bl ResetAimTargetPrediction__7CPlayerF9TUniqueId +lbl_8001A200: +/* 8001A200 00017160 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8001A204 00017164 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8001A208 00017168 7C 08 03 A6 */ mtlr r0 +/* 8001A20C 0001716C 38 21 00 20 */ addi r1, r1, 0x20 +/* 8001A210 00017170 4E 80 00 20 */ blr + +.global IsMorphBallTransitioning__7CPlayerCFv +IsMorphBallTransitioning__7CPlayerCFv: +/* 8001A214 00017174 80 03 02 F8 */ lwz r0, 0x2f8(r3) +/* 8001A218 00017178 2C 00 00 04 */ cmpwi r0, 4 +/* 8001A21C 0001717C 40 80 00 18 */ bge lbl_8001A234 +/* 8001A220 00017180 2C 00 00 02 */ cmpwi r0, 2 +/* 8001A224 00017184 40 80 00 08 */ bge lbl_8001A22C +/* 8001A228 00017188 48 00 00 0C */ b lbl_8001A234 +lbl_8001A22C: +/* 8001A22C 0001718C 38 60 00 01 */ li r3, 1 +/* 8001A230 00017190 4E 80 00 20 */ blr +lbl_8001A234: +/* 8001A234 00017194 38 60 00 00 */ li r3, 0 +/* 8001A238 00017198 4E 80 00 20 */ blr + +.global __ct__7CPlayerF9TUniqueIdRC12CTransform4fRC6CAABoxUi9CVector3fffffRC13CMaterialList +__ct__7CPlayerF9TUniqueIdRC12CTransform4fRC6CAABoxUi9CVector3fffffRC13CMaterialList: +/* 8001A23C 0001719C 94 21 FD 50 */ stwu r1, -0x2b0(r1) +/* 8001A240 000171A0 7C 08 02 A6 */ mflr r0 +/* 8001A244 000171A4 90 01 02 B4 */ stw r0, 0x2b4(r1) +/* 8001A248 000171A8 DB E1 02 A0 */ stfd f31, 0x2a0(r1) +/* 8001A24C 000171AC F3 E1 02 A8 */ psq_st f31, 680(r1), 0, qr0 +/* 8001A250 000171B0 DB C1 02 90 */ stfd f30, 0x290(r1) +/* 8001A254 000171B4 F3 C1 02 98 */ psq_st f30, 664(r1), 0, qr0 +/* 8001A258 000171B8 DB A1 02 80 */ stfd f29, 0x280(r1) +/* 8001A25C 000171BC F3 A1 02 88 */ psq_st f29, 648(r1), 0, qr0 +/* 8001A260 000171C0 DB 81 02 70 */ stfd f28, 0x270(r1) +/* 8001A264 000171C4 F3 81 02 78 */ psq_st f28, 632(r1), 0, qr0 +/* 8001A268 000171C8 BE E1 02 4C */ stmw r23, 0x24c(r1) +/* 8001A26C 000171CC 3D 40 80 3D */ lis r10, lbl_803CC4F8@ha +/* 8001A270 000171D0 FF 80 08 90 */ fmr f28, f1 +/* 8001A274 000171D4 FF A0 10 90 */ fmr f29, f2 +/* 8001A278 000171D8 39 4A C4 F8 */ addi r10, r10, lbl_803CC4F8@l +/* 8001A27C 000171DC 7C 7F 1B 78 */ mr r31, r3 +/* 8001A280 000171E0 7C 98 23 78 */ mr r24, r4 +/* 8001A284 000171E4 FF C0 18 90 */ fmr f30, f3 +/* 8001A288 000171E8 FF E0 20 90 */ fmr f31, f4 +/* 8001A28C 000171EC 7C B9 2B 78 */ mr r25, r5 +/* 8001A290 000171F0 7C DA 33 78 */ mr r26, r6 +/* 8001A294 000171F4 7C FB 3B 78 */ mr r27, r7 +/* 8001A298 000171F8 7D 1E 43 78 */ mr r30, r8 +/* 8001A29C 000171FC 7D 3C 4B 78 */ mr r28, r9 +/* 8001A2A0 00017200 38 61 00 50 */ addi r3, r1, 0x50 +/* 8001A2A4 00017204 38 8A 00 3F */ addi r4, r10, 0x3f +/* 8001A2A8 00017208 4B FE AA 11 */ bl string_l__4rstlFPCc +/* 8001A2AC 0001720C 80 8D A3 88 */ lwz r4, lbl_805A8F48@sda21(r13) +/* 8001A2B0 00017210 3C 60 80 57 */ lis r3, lbl_8056D410@ha +/* 8001A2B4 00017214 80 0D A3 90 */ lwz r0, lbl_805A8F50@sda21(r13) +/* 8001A2B8 00017218 38 A3 D4 10 */ addi r5, r3, lbl_8056D410@l +/* 8001A2BC 0001721C 90 81 00 30 */ stw r4, 0x30(r1) +/* 8001A2C0 00017220 38 61 00 94 */ addi r3, r1, 0x94 +/* 8001A2C4 00017224 38 81 00 34 */ addi r4, r1, 0x34 +/* 8001A2C8 00017228 38 C1 00 30 */ addi r6, r1, 0x30 +/* 8001A2CC 0001722C 90 01 00 34 */ stw r0, 0x34(r1) +/* 8001A2D0 00017230 48 03 71 B5 */ bl "__ct__11CEntityInfoF7TAreaIdRCQ24rstl48vector<11SConnection,Q24rstl17rmemory_allocator>9TEditorId" +/* 8001A2D4 00017234 7F 64 DB 78 */ mr r4, r27 +/* 8001A2D8 00017238 7F C5 F3 78 */ mr r5, r30 +/* 8001A2DC 0001723C 38 61 00 78 */ addi r3, r1, 0x78 +/* 8001A2E0 00017240 48 00 0B 79 */ bl MakePlayerAnimres__FUiRC9CVector3f +/* 8001A2E4 00017244 38 61 01 AC */ addi r3, r1, 0x1ac +/* 8001A2E8 00017248 38 81 00 78 */ addi r4, r1, 0x78 +/* 8001A2EC 0001724C 48 0F C8 69 */ bl __ct__10CModelDataFRC8CAnimRes +/* 8001A2F0 00017250 38 61 01 44 */ addi r3, r1, 0x144 +/* 8001A2F4 00017254 48 00 0B 45 */ bl None__16CActorParametersFv +/* 8001A2F8 00017258 48 00 12 3D */ bl Identity__10CAxisAngleFv +/* 8001A2FC 0001725C 7C 77 1B 78 */ mr r23, r3 +/* 8001A300 00017260 48 00 12 35 */ bl Identity__10CAxisAngleFv +/* 8001A304 00017264 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8001A308 00017268 A1 98 00 00 */ lhz r12, 0(r24) +/* 8001A30C 0001726C 3B A4 66 A0 */ addi r29, r4, skZero3f@l +/* 8001A310 00017270 39 61 01 10 */ addi r11, r1, 0x110 +/* 8001A314 00017274 C0 7D 00 00 */ lfs f3, 0(r29) +/* 8001A318 00017278 FC 20 E8 90 */ fmr f1, f29 +/* 8001A31C 0001727C C0 9D 00 04 */ lfs f4, 4(r29) +/* 8001A320 00017280 FC 40 F0 90 */ fmr f2, f30 +/* 8001A324 00017284 C0 BD 00 08 */ lfs f5, 8(r29) +/* 8001A328 00017288 38 01 01 44 */ addi r0, r1, 0x144 +/* 8001A32C 0001728C D0 61 01 10 */ stfs f3, 0x110(r1) +/* 8001A330 00017290 7F 28 CB 78 */ mr r8, r25 +/* 8001A334 00017294 7F 8A E3 78 */ mr r10, r28 +/* 8001A338 00017298 D0 81 01 14 */ stfs f4, 0x114(r1) +/* 8001A33C 0001729C 38 81 00 1C */ addi r4, r1, 0x1c +/* 8001A340 000172A0 38 C1 00 50 */ addi r6, r1, 0x50 +/* 8001A344 000172A4 38 E1 00 94 */ addi r7, r1, 0x94 +/* 8001A348 000172A8 D0 A1 01 18 */ stfs f5, 0x118(r1) +/* 8001A34C 000172AC 39 21 01 AC */ addi r9, r1, 0x1ac +/* 8001A350 000172B0 38 A0 00 01 */ li r5, 1 +/* 8001A354 000172B4 C0 03 00 00 */ lfs f0, 0(r3) +/* 8001A358 000172B8 D0 01 01 1C */ stfs f0, 0x11c(r1) +/* 8001A35C 000172BC C0 03 00 04 */ lfs f0, 4(r3) +/* 8001A360 000172C0 D0 01 01 20 */ stfs f0, 0x120(r1) +/* 8001A364 000172C4 C0 03 00 08 */ lfs f0, 8(r3) +/* 8001A368 000172C8 7F E3 FB 78 */ mr r3, r31 +/* 8001A36C 000172CC D0 01 01 24 */ stfs f0, 0x124(r1) +/* 8001A370 000172D0 D0 61 01 28 */ stfs f3, 0x128(r1) +/* 8001A374 000172D4 D0 81 01 2C */ stfs f4, 0x12c(r1) +/* 8001A378 000172D8 D0 A1 01 30 */ stfs f5, 0x130(r1) +/* 8001A37C 000172DC C0 17 00 00 */ lfs f0, 0(r23) +/* 8001A380 000172E0 D0 01 01 34 */ stfs f0, 0x134(r1) +/* 8001A384 000172E4 C0 17 00 04 */ lfs f0, 4(r23) +/* 8001A388 000172E8 D0 01 01 38 */ stfs f0, 0x138(r1) +/* 8001A38C 000172EC C0 17 00 08 */ lfs f0, 8(r23) +/* 8001A390 000172F0 D0 01 01 3C */ stfs f0, 0x13c(r1) +/* 8001A394 000172F4 D3 81 01 40 */ stfs f28, 0x140(r1) +/* 8001A398 000172F8 B1 81 00 1C */ sth r12, 0x1c(r1) +/* 8001A39C 000172FC 93 41 00 08 */ stw r26, 8(r1) +/* 8001A3A0 00017300 91 61 00 0C */ stw r11, 0xc(r1) +/* 8001A3A4 00017304 90 01 00 10 */ stw r0, 0x10(r1) +/* 8001A3A8 00017308 48 10 21 09 */ bl "__ct__13CPhysicsActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC6CAABoxRC10SMoverDataRC16CActorParametersff" +/* 8001A3AC 0001730C 38 61 01 44 */ addi r3, r1, 0x144 +/* 8001A3B0 00017310 38 80 FF FF */ li r4, -1 +/* 8001A3B4 00017314 48 0E C2 55 */ bl __dt__16CActorParametersFv +/* 8001A3B8 00017318 38 61 01 AC */ addi r3, r1, 0x1ac +/* 8001A3BC 0001731C 38 80 FF FF */ li r4, -1 +/* 8001A3C0 00017320 48 0F C6 8D */ bl __dt__10CModelDataFv +/* 8001A3C4 00017324 80 01 00 9C */ lwz r0, 0x9c(r1) +/* 8001A3C8 00017328 80 61 00 A4 */ lwz r3, 0xa4(r1) +/* 8001A3CC 0001732C 1C 00 00 0C */ mulli r0, r0, 0xc +/* 8001A3D0 00017330 90 61 00 24 */ stw r3, 0x24(r1) +/* 8001A3D4 00017334 7C 64 1B 78 */ mr r4, r3 +/* 8001A3D8 00017338 7C 03 02 14 */ add r0, r3, r0 +/* 8001A3DC 0001733C 90 61 00 20 */ stw r3, 0x20(r1) +/* 8001A3E0 00017340 90 01 00 2C */ stw r0, 0x2c(r1) +/* 8001A3E4 00017344 90 01 00 28 */ stw r0, 0x28(r1) +/* 8001A3E8 00017348 48 00 00 08 */ b lbl_8001A3F0 +lbl_8001A3EC: +/* 8001A3EC 0001734C 38 84 00 0C */ addi r4, r4, 0xc +lbl_8001A3F0: +/* 8001A3F0 00017350 7C 04 00 40 */ cmplw r4, r0 +/* 8001A3F4 00017354 40 82 FF F8 */ bne lbl_8001A3EC +/* 8001A3F8 00017358 28 03 00 00 */ cmplwi r3, 0 +/* 8001A3FC 0001735C 41 82 00 08 */ beq lbl_8001A404 +/* 8001A400 00017360 48 2F B5 31 */ bl Free__7CMemoryFPCv +lbl_8001A404: +/* 8001A404 00017364 38 61 00 50 */ addi r3, r1, 0x50 +/* 8001A408 00017368 48 32 36 D9 */ bl "internal_dereference__Q24rstl66basic_string,Q24rstl17rmemory_allocator>Fv" +/* 8001A40C 0001736C 3C 60 80 3E */ lis r3, lbl_803D96E8@ha +/* 8001A410 00017370 38 00 00 00 */ li r0, 0 +/* 8001A414 00017374 38 63 96 E8 */ addi r3, r3, lbl_803D96E8@l +/* 8001A418 00017378 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 8001A41C 0001737C 90 7F 00 00 */ stw r3, 0(r31) +/* 8001A420 00017380 38 7F 02 74 */ addi r3, r31, 0x274 +/* 8001A424 00017384 38 80 00 04 */ li r4, 4 +/* 8001A428 00017388 90 1F 02 58 */ stw r0, 0x258(r31) +/* 8001A42C 0001738C 90 1F 02 60 */ stw r0, 0x260(r31) +/* 8001A430 00017390 90 1F 02 64 */ stw r0, 0x264(r31) +/* 8001A434 00017394 90 1F 02 68 */ stw r0, 0x268(r31) +/* 8001A438 00017398 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8001A43C 0001739C B0 1F 02 6C */ sth r0, 0x26c(r31) +/* 8001A440 000173A0 D0 1F 02 70 */ stfs f0, 0x270(r31) +/* 8001A444 000173A4 48 19 A8 81 */ bl __ct__18CPlayerEnergyDrainFUi +/* 8001A448 000173A8 C0 82 81 0C */ lfs f4, lbl_805A9E2C@sda21(r2) +/* 8001A44C 000173AC 39 00 00 00 */ li r8, 0 +/* 8001A450 000173B0 C0 02 82 50 */ lfs f0, lbl_805A9F70@sda21(r2) +/* 8001A454 000173B4 38 E0 00 02 */ li r7, 2 +/* 8001A458 000173B8 D0 9F 02 88 */ stfs f4, 0x288(r31) +/* 8001A45C 000173BC 38 60 00 01 */ li r3, 1 +/* 8001A460 000173C0 C0 62 81 00 */ lfs f3, lbl_805A9E20@sda21(r2) +/* 8001A464 000173C4 38 00 00 03 */ li r0, 3 +/* 8001A468 000173C8 D0 9F 02 8C */ stfs f4, 0x28c(r31) +/* 8001A46C 000173CC D0 9F 02 90 */ stfs f4, 0x290(r31) +/* 8001A470 000173D0 D0 9F 02 94 */ stfs f4, 0x294(r31) +/* 8001A474 000173D4 91 1F 02 98 */ stw r8, 0x298(r31) +/* 8001A478 000173D8 D0 9F 02 9C */ stfs f4, 0x29c(r31) +/* 8001A47C 000173DC D0 9F 02 A0 */ stfs f4, 0x2a0(r31) +/* 8001A480 000173E0 99 1F 02 A4 */ stb r8, 0x2a4(r31) +/* 8001A484 000173E4 D0 1F 02 A8 */ stfs f0, 0x2a8(r31) +/* 8001A488 000173E8 91 1F 02 AC */ stw r8, 0x2ac(r31) +/* 8001A48C 000173EC 90 FF 02 B0 */ stw r7, 0x2b0(r31) +/* 8001A490 000173F0 91 1F 02 B4 */ stw r8, 0x2b4(r31) +/* 8001A494 000173F4 90 7F 02 D0 */ stw r3, 0x2d0(r31) +/* 8001A498 000173F8 D0 9F 02 D4 */ stfs f4, 0x2d4(r31) +/* 8001A49C 000173FC C0 1A 00 00 */ lfs f0, 0(r26) +/* 8001A4A0 00017400 D0 1F 02 D8 */ stfs f0, 0x2d8(r31) +/* 8001A4A4 00017404 C0 1A 00 04 */ lfs f0, 4(r26) +/* 8001A4A8 00017408 D0 1F 02 DC */ stfs f0, 0x2dc(r31) +/* 8001A4AC 0001740C C0 1A 00 08 */ lfs f0, 8(r26) +/* 8001A4B0 00017410 D0 1F 02 E0 */ stfs f0, 0x2e0(r31) +/* 8001A4B4 00017414 C0 1A 00 0C */ lfs f0, 0xc(r26) +/* 8001A4B8 00017418 D0 1F 02 E4 */ stfs f0, 0x2e4(r31) +/* 8001A4BC 0001741C C0 1A 00 10 */ lfs f0, 0x10(r26) +/* 8001A4C0 00017420 D0 1F 02 E8 */ stfs f0, 0x2e8(r31) +/* 8001A4C4 00017424 C0 1A 00 14 */ lfs f0, 0x14(r26) +/* 8001A4C8 00017428 D0 1F 02 EC */ stfs f0, 0x2ec(r31) +/* 8001A4CC 0001742C D0 7F 02 F0 */ stfs f3, 0x2f0(r31) +/* 8001A4D0 00017430 91 1F 02 F4 */ stw r8, 0x2f4(r31) +/* 8001A4D4 00017434 91 1F 02 F8 */ stw r8, 0x2f8(r31) +/* 8001A4D8 00017438 91 1F 02 FC */ stw r8, 0x2fc(r31) +/* 8001A4DC 0001743C D0 9F 03 00 */ stfs f4, 0x300(r31) +/* 8001A4E0 00017440 91 1F 03 04 */ stw r8, 0x304(r31) +/* 8001A4E4 00017444 91 1F 03 08 */ stw r8, 0x308(r31) +/* 8001A4E8 00017448 90 1F 03 0C */ stw r0, 0x30c(r31) +/* 8001A4EC 0001744C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8001A4F0 00017450 B0 1F 03 10 */ sth r0, 0x310(r31) +/* 8001A4F4 00017454 D0 9F 03 14 */ stfs f4, 0x314(r31) +/* 8001A4F8 00017458 D0 9F 03 18 */ stfs f4, 0x318(r31) +/* 8001A4FC 0001745C D0 9F 03 1C */ stfs f4, 0x31c(r31) +/* 8001A500 00017460 D0 9F 03 20 */ stfs f4, 0x320(r31) +/* 8001A504 00017464 D0 9F 03 24 */ stfs f4, 0x324(r31) +/* 8001A508 00017468 D0 9F 03 28 */ stfs f4, 0x328(r31) +/* 8001A50C 0001746C D0 9F 03 2C */ stfs f4, 0x32c(r31) +/* 8001A510 00017470 91 1F 03 30 */ stw r8, 0x330(r31) +/* 8001A514 00017474 90 7F 03 34 */ stw r3, 0x334(r31) +/* 8001A518 00017478 90 7F 03 38 */ stw r3, 0x338(r31) +/* 8001A51C 0001747C A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8001A520 00017480 B0 1F 03 3C */ sth r0, 0x33c(r31) +/* 8001A524 00017484 D0 9F 03 40 */ stfs f4, 0x340(r31) +/* 8001A528 00017488 91 1F 03 48 */ stw r8, 0x348(r31) +/* 8001A52C 0001748C 91 1F 03 4C */ stw r8, 0x34c(r31) +/* 8001A530 00017490 91 1F 03 50 */ stw r8, 0x350(r31) +/* 8001A534 00017494 91 1F 03 58 */ stw r8, 0x358(r31) +/* 8001A538 00017498 91 1F 03 5C */ stw r8, 0x35c(r31) +/* 8001A53C 0001749C 91 1F 03 60 */ stw r8, 0x360(r31) +/* 8001A540 000174A0 91 1F 03 68 */ stw r8, 0x368(r31) +/* 8001A544 000174A4 91 1F 03 6C */ stw r8, 0x36c(r31) +/* 8001A548 000174A8 91 1F 03 70 */ stw r8, 0x370(r31) +/* 8001A54C 000174AC 99 1F 03 74 */ stb r8, 0x374(r31) +/* 8001A550 000174B0 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8001A554 000174B4 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha +/* 8001A558 000174B8 C0 42 82 44 */ lfs f2, lbl_805A9F64@sda21(r2) +/* 8001A55C 000174BC D0 9F 03 78 */ stfs f4, 0x378(r31) +/* 8001A560 000174C0 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l +/* 8001A564 000174C4 C0 22 81 68 */ lfs f1, lbl_805A9E88@sda21(r2) +/* 8001A568 000174C8 38 C4 66 A0 */ addi r6, r4, skZero3f@l +/* 8001A56C 000174CC 99 1F 03 7C */ stb r8, 0x37c(r31) +/* 8001A570 000174D0 38 83 00 1D */ addi r4, r3, 0x1d +/* 8001A574 000174D4 C0 02 81 B4 */ lfs f0, lbl_805A9ED4@sda21(r2) +/* 8001A578 000174D8 38 60 08 38 */ li r3, 0x838 +/* 8001A57C 000174DC D0 9F 03 80 */ stfs f4, 0x380(r31) +/* 8001A580 000174E0 38 A0 00 00 */ li r5, 0 +/* 8001A584 000174E4 D0 9F 03 84 */ stfs f4, 0x384(r31) +/* 8001A588 000174E8 D0 9F 03 88 */ stfs f4, 0x388(r31) +/* 8001A58C 000174EC 99 1F 03 8C */ stb r8, 0x38c(r31) +/* 8001A590 000174F0 90 FF 03 90 */ stw r7, 0x390(r31) +/* 8001A594 000174F4 99 1F 03 94 */ stb r8, 0x394(r31) +/* 8001A598 000174F8 D0 5F 03 98 */ stfs f2, 0x398(r31) +/* 8001A59C 000174FC 99 1F 03 9C */ stb r8, 0x39c(r31) +/* 8001A5A0 00017500 D0 3F 03 A0 */ stfs f1, 0x3a0(r31) +/* 8001A5A4 00017504 D0 1F 03 A4 */ stfs f0, 0x3a4(r31) +/* 8001A5A8 00017508 91 1F 03 A8 */ stw r8, 0x3a8(r31) +/* 8001A5AC 0001750C D0 9F 03 AC */ stfs f4, 0x3ac(r31) +/* 8001A5B0 00017510 D0 9F 03 B0 */ stfs f4, 0x3b0(r31) +/* 8001A5B4 00017514 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8001A5B8 00017518 B0 1F 03 B4 */ sth r0, 0x3b4(r31) +/* 8001A5BC 0001751C 91 1F 03 B8 */ stw r8, 0x3b8(r31) +/* 8001A5C0 00017520 D0 9F 03 BC */ stfs f4, 0x3bc(r31) +/* 8001A5C4 00017524 D0 9F 03 C0 */ stfs f4, 0x3c0(r31) +/* 8001A5C8 00017528 D0 7F 03 C4 */ stfs f3, 0x3c4(r31) +/* 8001A5CC 0001752C D0 9F 03 C8 */ stfs f4, 0x3c8(r31) +/* 8001A5D0 00017530 D0 9F 03 CC */ stfs f4, 0x3cc(r31) +/* 8001A5D4 00017534 D0 9F 03 D0 */ stfs f4, 0x3d0(r31) +/* 8001A5D8 00017538 D0 9F 03 D4 */ stfs f4, 0x3d4(r31) +/* 8001A5DC 0001753C D0 9F 03 D8 */ stfs f4, 0x3d8(r31) +/* 8001A5E0 00017540 99 1F 03 DC */ stb r8, 0x3dc(r31) +/* 8001A5E4 00017544 99 1F 03 DD */ stb r8, 0x3dd(r31) +/* 8001A5E8 00017548 99 1F 03 DE */ stb r8, 0x3de(r31) +/* 8001A5EC 0001754C D0 9F 03 E0 */ stfs f4, 0x3e0(r31) +/* 8001A5F0 00017550 D0 9F 03 E4 */ stfs f4, 0x3e4(r31) +/* 8001A5F4 00017554 D0 9F 03 E8 */ stfs f4, 0x3e8(r31) +/* 8001A5F8 00017558 D0 9F 03 EC */ stfs f4, 0x3ec(r31) +/* 8001A5FC 0001755C D0 9F 03 F0 */ stfs f4, 0x3f0(r31) +/* 8001A600 00017560 A0 0D A3 8C */ lhz r0, lbl_805A8F4C@sda21(r13) +/* 8001A604 00017564 B0 1F 03 F4 */ sth r0, 0x3f4(r31) +/* 8001A608 00017568 C0 06 00 00 */ lfs f0, 0(r6) +/* 8001A60C 0001756C D0 1F 03 F8 */ stfs f0, 0x3f8(r31) +/* 8001A610 00017570 C0 1D 00 04 */ lfs f0, 4(r29) +/* 8001A614 00017574 D0 1F 03 FC */ stfs f0, 0x3fc(r31) +/* 8001A618 00017578 C0 1D 00 08 */ lfs f0, 8(r29) +/* 8001A61C 0001757C D0 1F 04 00 */ stfs f0, 0x400(r31) +/* 8001A620 00017580 91 1F 04 04 */ stw r8, 0x404(r31) +/* 8001A624 00017584 C0 06 00 00 */ lfs f0, 0(r6) +/* 8001A628 00017588 D0 1F 04 80 */ stfs f0, 0x480(r31) +/* 8001A62C 0001758C C0 1D 00 04 */ lfs f0, 4(r29) +/* 8001A630 00017590 D0 1F 04 84 */ stfs f0, 0x484(r31) +/* 8001A634 00017594 C0 1D 00 08 */ lfs f0, 8(r29) +/* 8001A638 00017598 D0 1F 04 88 */ stfs f0, 0x488(r31) +/* 8001A63C 0001759C D0 9F 04 8C */ stfs f4, 0x48c(r31) +/* 8001A640 000175A0 48 00 08 65 */ bl "__nw__24TOneStatic<10CPlayerGun>FUlPCcPCc" +/* 8001A644 000175A4 7C 60 1B 79 */ or. r0, r3, r3 +/* 8001A648 000175A8 41 82 00 18 */ beq lbl_8001A660 +/* 8001A64C 000175AC A0 18 00 00 */ lhz r0, 0(r24) +/* 8001A650 000175B0 38 81 00 18 */ addi r4, r1, 0x18 +/* 8001A654 000175B4 B0 01 00 18 */ sth r0, 0x18(r1) +/* 8001A658 000175B8 48 02 8B 71 */ bl __ct__10CPlayerGunF9TUniqueId +/* 8001A65C 000175BC 7C 60 1B 78 */ mr r0, r3 +lbl_8001A660: +/* 8001A660 000175C0 90 1F 04 90 */ stw r0, 0x490(r31) +/* 8001A664 000175C4 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha +/* 8001A668 000175C8 C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 8001A66C 000175CC 38 83 C4 F8 */ addi r4, r3, lbl_803CC4F8@l +/* 8001A670 000175D0 38 00 00 02 */ li r0, 2 +/* 8001A674 000175D4 38 60 02 E0 */ li r3, 0x2e0 +/* 8001A678 000175D8 D0 1F 04 94 */ stfs f0, 0x494(r31) +/* 8001A67C 000175DC 38 84 00 1D */ addi r4, r4, 0x1d +/* 8001A680 000175E0 38 A0 00 00 */ li r5, 0 +/* 8001A684 000175E4 90 1F 04 98 */ stw r0, 0x498(r31) +/* 8001A688 000175E8 80 CD A1 34 */ lwz r6, gpTweakPlayerGun@sda21(r13) +/* 8001A68C 000175EC C0 06 00 40 */ lfs f0, 0x40(r6) +/* 8001A690 000175F0 D0 1F 04 9C */ stfs f0, 0x49c(r31) +/* 8001A694 000175F4 48 2F B1 D9 */ bl __nw__FUlPCcPCc +/* 8001A698 000175F8 7C 60 1B 79 */ or. r0, r3, r3 +/* 8001A69C 000175FC 41 82 00 0C */ beq lbl_8001A6A8 +/* 8001A6A0 00017600 48 27 D3 2D */ bl __ct__Q27CPlayer12CInputFilterFv +/* 8001A6A4 00017604 7C 60 1B 78 */ mr r0, r3 +lbl_8001A6A8: +/* 8001A6A8 00017608 90 1F 04 A0 */ stw r0, 0x4a0(r31) +/* 8001A6AC 0001760C 39 00 00 00 */ li r8, 0 +/* 8001A6B0 00017610 3C 80 80 5A */ lis r4, skZero3f@ha +/* 8001A6B4 00017614 3C 60 80 3D */ lis r3, lbl_803CC4F8@ha +/* 8001A6B8 00017618 91 1F 04 A4 */ stw r8, 0x4a4(r31) +/* 8001A6BC 0001761C 38 63 C4 F8 */ addi r3, r3, lbl_803CC4F8@l +/* 8001A6C0 00017620 C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) +/* 8001A6C4 00017624 38 E4 66 A0 */ addi r7, r4, skZero3f@l +/* 8001A6C8 00017628 38 C0 FF FF */ li r6, -1 +/* 8001A6CC 0001762C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 8001A6D0 00017630 D0 5F 04 F8 */ stfs f2, 0x4f8(r31) +/* 8001A6D4 00017634 38 00 00 01 */ li r0, 1 +/* 8001A6D8 00017638 38 83 00 1D */ addi r4, r3, 0x1d +/* 8001A6DC 0001763C 38 60 01 08 */ li r3, 0x108 +/* 8001A6E0 00017640 D0 5F 04 FC */ stfs f2, 0x4fc(r31) +/* 8001A6E4 00017644 38 A0 00 00 */ li r5, 0 +/* 8001A6E8 00017648 C0 9F 00 58 */ lfs f4, 0x58(r31) +/* 8001A6EC 0001764C C0 7F 00 48 */ lfs f3, 0x48(r31) +/* 8001A6F0 00017650 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8001A6F4 00017654 D0 3F 05 00 */ stfs f1, 0x500(r31) +/* 8001A6F8 00017658 D0 7F 05 04 */ stfs f3, 0x504(r31) +/* 8001A6FC 0001765C D0 9F 05 08 */ stfs f4, 0x508(r31) +/* 8001A700 00017660 C0 9F 00 58 */ lfs f4, 0x58(r31) +/* 8001A704 00017664 C0 7F 00 48 */ lfs f3, 0x48(r31) +/* 8001A708 00017668 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8001A70C 0001766C D0 3F 05 0C */ stfs f1, 0x50c(r31) +/* 8001A710 00017670 D0 7F 05 10 */ stfs f3, 0x510(r31) +/* 8001A714 00017674 D0 9F 05 14 */ stfs f4, 0x514(r31) +/* 8001A718 00017678 C0 9F 00 58 */ lfs f4, 0x58(r31) +/* 8001A71C 0001767C C0 7F 00 48 */ lfs f3, 0x48(r31) +/* 8001A720 00017680 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8001A724 00017684 D0 3F 05 18 */ stfs f1, 0x518(r31) +/* 8001A728 00017688 D0 7F 05 1C */ stfs f3, 0x51c(r31) +/* 8001A72C 0001768C D0 9F 05 20 */ stfs f4, 0x520(r31) +/* 8001A730 00017690 C0 9F 00 60 */ lfs f4, 0x60(r31) +/* 8001A734 00017694 C0 7F 00 50 */ lfs f3, 0x50(r31) +/* 8001A738 00017698 C0 3F 00 40 */ lfs f1, 0x40(r31) +/* 8001A73C 0001769C D0 3F 05 24 */ stfs f1, 0x524(r31) +/* 8001A740 000176A0 D0 7F 05 28 */ stfs f3, 0x528(r31) +/* 8001A744 000176A4 D0 9F 05 2C */ stfs f4, 0x52c(r31) +/* 8001A748 000176A8 C0 9F 00 58 */ lfs f4, 0x58(r31) +/* 8001A74C 000176AC C0 7F 00 48 */ lfs f3, 0x48(r31) +/* 8001A750 000176B0 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8001A754 000176B4 D0 3F 05 30 */ stfs f1, 0x530(r31) +/* 8001A758 000176B8 D0 7F 05 34 */ stfs f3, 0x534(r31) +/* 8001A75C 000176BC D0 9F 05 38 */ stfs f4, 0x538(r31) +/* 8001A760 000176C0 D0 5F 05 3C */ stfs f2, 0x53c(r31) +/* 8001A764 000176C4 C0 9F 00 58 */ lfs f4, 0x58(r31) +/* 8001A768 000176C8 C0 7F 00 48 */ lfs f3, 0x48(r31) +/* 8001A76C 000176CC C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8001A770 000176D0 D0 3F 05 40 */ stfs f1, 0x540(r31) +/* 8001A774 000176D4 D0 7F 05 44 */ stfs f3, 0x544(r31) +/* 8001A778 000176D8 D0 9F 05 48 */ stfs f4, 0x548(r31) +/* 8001A77C 000176DC C0 9F 00 58 */ lfs f4, 0x58(r31) +/* 8001A780 000176E0 C0 7F 00 48 */ lfs f3, 0x48(r31) +/* 8001A784 000176E4 C0 3F 00 38 */ lfs f1, 0x38(r31) +/* 8001A788 000176E8 D0 3F 05 4C */ stfs f1, 0x54c(r31) +/* 8001A78C 000176EC D0 7F 05 50 */ stfs f3, 0x550(r31) +/* 8001A790 000176F0 D0 9F 05 54 */ stfs f4, 0x554(r31) +/* 8001A794 000176F4 99 1F 05 58 */ stb r8, 0x558(r31) +/* 8001A798 000176F8 D0 5F 05 5C */ stfs f2, 0x55c(r31) +/* 8001A79C 000176FC D0 5F 05 60 */ stfs f2, 0x560(r31) +/* 8001A7A0 00017700 C0 27 00 00 */ lfs f1, 0(r7) +/* 8001A7A4 00017704 D0 3F 05 64 */ stfs f1, 0x564(r31) +/* 8001A7A8 00017708 C0 3D 00 04 */ lfs f1, 4(r29) +/* 8001A7AC 0001770C D0 3F 05 68 */ stfs f1, 0x568(r31) +/* 8001A7B0 00017710 C0 3D 00 08 */ lfs f1, 8(r29) +/* 8001A7B4 00017714 D0 3F 05 6C */ stfs f1, 0x56c(r31) +/* 8001A7B8 00017718 D0 5F 05 70 */ stfs f2, 0x570(r31) +/* 8001A7BC 0001771C D0 5F 05 74 */ stfs f2, 0x574(r31) +/* 8001A7C0 00017720 D0 5F 05 78 */ stfs f2, 0x578(r31) +/* 8001A7C4 00017724 91 1F 05 7C */ stw r8, 0x57c(r31) +/* 8001A7C8 00017728 91 1F 05 80 */ stw r8, 0x580(r31) +/* 8001A7CC 0001772C 90 DF 05 84 */ stw r6, 0x584(r31) +/* 8001A7D0 00017730 D0 1F 05 88 */ stfs f0, 0x588(r31) +/* 8001A7D4 00017734 D0 5F 05 8C */ stfs f2, 0x58c(r31) +/* 8001A7D8 00017738 98 1F 05 90 */ stb r0, 0x590(r31) +/* 8001A7DC 0001773C 91 1F 05 94 */ stw r8, 0x594(r31) +/* 8001A7E0 00017740 91 1F 06 58 */ stw r8, 0x658(r31) +/* 8001A7E4 00017744 91 1F 07 1C */ stw r8, 0x71c(r31) +/* 8001A7E8 00017748 91 1F 07 34 */ stw r8, 0x734(r31) +/* 8001A7EC 0001774C 91 1F 07 38 */ stw r8, 0x738(r31) +/* 8001A7F0 00017750 91 1F 07 3C */ stw r8, 0x73c(r31) +/* 8001A7F4 00017754 D0 5F 07 40 */ stfs f2, 0x740(r31) +/* 8001A7F8 00017758 D0 5F 07 44 */ stfs f2, 0x744(r31) +/* 8001A7FC 0001775C D0 5F 07 48 */ stfs f2, 0x748(r31) +/* 8001A800 00017760 D0 1F 07 4C */ stfs f0, 0x74c(r31) +/* 8001A804 00017764 D0 5F 07 50 */ stfs f2, 0x750(r31) +/* 8001A808 00017768 91 1F 07 54 */ stw r8, 0x754(r31) +/* 8001A80C 0001776C D0 5F 07 58 */ stfs f2, 0x758(r31) +/* 8001A810 00017770 91 1F 07 5C */ stw r8, 0x75c(r31) +/* 8001A814 00017774 99 1F 07 60 */ stb r8, 0x760(r31) +/* 8001A818 00017778 D0 5F 07 64 */ stfs f2, 0x764(r31) +/* 8001A81C 0001777C 91 1F 07 68 */ stw r8, 0x768(r31) +/* 8001A820 00017780 48 00 06 E5 */ bl "__nw__30TOneStatic<16CPlayerCameraBob>FUlPCcPCc" +/* 8001A824 00017784 7C 77 1B 79 */ or. r23, r3, r3 +/* 8001A828 00017788 41 82 00 2C */ beq lbl_8001A854 +/* 8001A82C 0001778C C0 2D 87 B8 */ lfs f1, lbl_805A7378@sda21(r13) +/* 8001A830 00017790 38 61 00 38 */ addi r3, r1, 0x38 +/* 8001A834 00017794 C0 4D 87 BC */ lfs f2, lbl_805A737C@sda21(r13) +/* 8001A838 00017798 48 2F 99 C9 */ bl __ct__9CVector2fFff +/* 8001A83C 0001779C C0 2D 87 C0 */ lfs f1, lbl_805A7380@sda21(r13) +/* 8001A840 000177A0 7C 65 1B 78 */ mr r5, r3 +/* 8001A844 000177A4 7E E3 BB 78 */ mr r3, r23 +/* 8001A848 000177A8 38 80 00 01 */ li r4, 1 +/* 8001A84C 000177AC 48 0C FA 05 */ bl __ct__16CPlayerCameraBobFQ216CPlayerCameraBob14ECameraBobTypeRC9CVector2ff +/* 8001A850 000177B0 7C 77 1B 78 */ mr r23, r3 +lbl_8001A854: +/* 8001A854 000177B4 92 FF 07 6C */ stw r23, 0x76c(r31) +/* 8001A858 000177B8 38 00 00 00 */ li r0, 0 +/* 8001A85C 000177BC C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 8001A860 000177C0 3C 60 80 5A */ lis r3, skZero3f@ha +/* 8001A864 000177C4 90 1F 07 70 */ stw r0, 0x770(r31) +/* 8001A868 000177C8 38 A3 66 A0 */ addi r5, r3, skZero3f@l +/* 8001A86C 000177CC FC 40 08 90 */ fmr f2, f1 +/* 8001A870 000177D0 38 7F 07 A0 */ addi r3, r31, 0x7a0 +/* 8001A874 000177D4 D0 3F 07 74 */ stfs f1, 0x774(r31) +/* 8001A878 000177D8 FC 60 08 90 */ fmr f3, f1 +/* 8001A87C 000177DC 38 80 FF FF */ li r4, -1 +/* 8001A880 000177E0 90 1F 07 78 */ stw r0, 0x778(r31) +/* 8001A884 000177E4 90 1F 07 7C */ stw r0, 0x77c(r31) +/* 8001A888 000177E8 90 1F 07 80 */ stw r0, 0x780(r31) +/* 8001A88C 000177EC D0 3F 07 84 */ stfs f1, 0x784(r31) +/* 8001A890 000177F0 B0 1F 07 88 */ sth r0, 0x788(r31) +/* 8001A894 000177F4 D0 3F 07 8C */ stfs f1, 0x78c(r31) +/* 8001A898 000177F8 90 1F 07 90 */ stw r0, 0x790(r31) +/* 8001A89C 000177FC C0 05 00 00 */ lfs f0, 0(r5) +/* 8001A8A0 00017800 D0 1F 07 94 */ stfs f0, 0x794(r31) +/* 8001A8A4 00017804 C0 1D 00 04 */ lfs f0, 4(r29) +/* 8001A8A8 00017808 D0 1F 07 98 */ stfs f0, 0x798(r31) +/* 8001A8AC 0001780C C0 1D 00 08 */ lfs f0, 8(r29) +/* 8001A8B0 00017810 D0 1F 07 9C */ stfs f0, 0x79c(r31) +/* 8001A8B4 00017814 4B FF D4 01 */ bl __ct__Q27CPlayer11CVisorSteamFv +/* 8001A8B8 00017818 38 00 FF FF */ li r0, -1 +/* 8001A8BC 0001781C 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8001A8C0 00017820 90 1F 07 CC */ stw r0, 0x7cc(r31) +/* 8001A8C4 00017824 38 83 66 70 */ addi r4, r3, skIdentity4f@l +/* 8001A8C8 00017828 80 C2 83 F0 */ lwz r6, lbl_805AA110@sda21(r2) +/* 8001A8CC 0001782C 38 A0 00 01 */ li r5, 1 +/* 8001A8D0 00017830 93 7F 07 D0 */ stw r27, 0x7d0(r31) +/* 8001A8D4 00017834 38 00 00 00 */ li r0, 0 +/* 8001A8D8 00017838 38 7F 07 F4 */ addi r3, r31, 0x7f4 +/* 8001A8DC 0001783C 90 DF 07 D4 */ stw r6, 0x7d4(r31) +/* 8001A8E0 00017840 C0 1E 00 00 */ lfs f0, 0(r30) +/* 8001A8E4 00017844 D0 1F 07 D8 */ stfs f0, 0x7d8(r31) +/* 8001A8E8 00017848 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8001A8EC 0001784C D0 1F 07 DC */ stfs f0, 0x7dc(r31) +/* 8001A8F0 00017850 C0 1E 00 08 */ lfs f0, 8(r30) +/* 8001A8F4 00017854 D0 1F 07 E0 */ stfs f0, 0x7e0(r31) +/* 8001A8F8 00017858 98 BF 07 E4 */ stb r5, 0x7e4(r31) +/* 8001A8FC 0001785C 90 1F 07 E8 */ stw r0, 0x7e8(r31) +/* 8001A900 00017860 90 1F 07 EC */ stw r0, 0x7ec(r31) +/* 8001A904 00017864 90 1F 07 F0 */ stw r0, 0x7f0(r31) +/* 8001A908 00017868 48 2F 82 6D */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8001A90C 0001786C C0 42 81 0C */ lfs f2, lbl_805A9E2C@sda21(r2) +/* 8001A910 00017870 38 00 00 00 */ li r0, 0 +/* 8001A914 00017874 38 60 03 E8 */ li r3, 0x3e8 +/* 8001A918 00017878 38 80 00 01 */ li r4, 1 +/* 8001A91C 0001787C D0 5F 08 24 */ stfs f2, 0x824(r31) +/* 8001A920 00017880 D0 5F 08 28 */ stfs f2, 0x828(r31) +/* 8001A924 00017884 98 1F 08 2C */ stb r0, 0x82c(r31) +/* 8001A928 00017888 A0 AD A3 8C */ lhz r5, lbl_805A8F4C@sda21(r13) +/* 8001A92C 0001788C B0 BF 08 2E */ sth r5, 0x82e(r31) +/* 8001A930 00017890 A0 AD A3 8C */ lhz r5, lbl_805A8F4C@sda21(r13) +/* 8001A934 00017894 B0 BF 08 30 */ sth r5, 0x830(r31) +/* 8001A938 00017898 90 7F 08 34 */ stw r3, 0x834(r31) +/* 8001A93C 0001789C 90 1F 08 38 */ stw r0, 0x838(r31) +/* 8001A940 000178A0 90 1F 09 3C */ stw r0, 0x93c(r31) +/* 8001A944 000178A4 90 1F 09 80 */ stw r0, 0x980(r31) +/* 8001A948 000178A8 88 7F 09 C4 */ lbz r3, 0x9c4(r31) +/* 8001A94C 000178AC 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 +/* 8001A950 000178B0 98 7F 09 C4 */ stb r3, 0x9c4(r31) +/* 8001A954 000178B4 88 7F 09 C4 */ lbz r3, 0x9c4(r31) +/* 8001A958 000178B8 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 +/* 8001A95C 000178BC 98 7F 09 C4 */ stb r3, 0x9c4(r31) +/* 8001A960 000178C0 88 7F 09 C4 */ lbz r3, 0x9c4(r31) +/* 8001A964 000178C4 50 83 2E B4 */ rlwimi r3, r4, 5, 0x1a, 0x1a +/* 8001A968 000178C8 98 7F 09 C4 */ stb r3, 0x9c4(r31) +/* 8001A96C 000178CC 88 7F 09 C4 */ lbz r3, 0x9c4(r31) +/* 8001A970 000178D0 50 83 26 F6 */ rlwimi r3, r4, 4, 0x1b, 0x1b +/* 8001A974 000178D4 98 7F 09 C4 */ stb r3, 0x9c4(r31) +/* 8001A978 000178D8 88 7F 09 C4 */ lbz r3, 0x9c4(r31) +/* 8001A97C 000178DC 50 83 1F 38 */ rlwimi r3, r4, 3, 0x1c, 0x1c +/* 8001A980 000178E0 98 7F 09 C4 */ stb r3, 0x9c4(r31) +/* 8001A984 000178E4 88 7F 09 C4 */ lbz r3, 0x9c4(r31) +/* 8001A988 000178E8 50 03 17 7A */ rlwimi r3, r0, 2, 0x1d, 0x1d +/* 8001A98C 000178EC 98 7F 09 C4 */ stb r3, 0x9c4(r31) +/* 8001A990 000178F0 88 7F 09 C4 */ lbz r3, 0x9c4(r31) +/* 8001A994 000178F4 50 03 0F BC */ rlwimi r3, r0, 1, 0x1e, 0x1e +/* 8001A998 000178F8 98 7F 09 C4 */ stb r3, 0x9c4(r31) +/* 8001A99C 000178FC 88 7F 09 C4 */ lbz r3, 0x9c4(r31) +/* 8001A9A0 00017900 50 03 07 FE */ rlwimi r3, r0, 0, 0x1f, 0x1f +/* 8001A9A4 00017904 98 7F 09 C4 */ stb r3, 0x9c4(r31) +/* 8001A9A8 00017908 88 7F 09 C5 */ lbz r3, 0x9c5(r31) +/* 8001A9AC 0001790C 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 +/* 8001A9B0 00017910 98 7F 09 C5 */ stb r3, 0x9c5(r31) +/* 8001A9B4 00017914 88 7F 09 C5 */ lbz r3, 0x9c5(r31) +/* 8001A9B8 00017918 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 +/* 8001A9BC 0001791C 98 7F 09 C5 */ stb r3, 0x9c5(r31) +/* 8001A9C0 00017920 88 7F 09 C5 */ lbz r3, 0x9c5(r31) +/* 8001A9C4 00017924 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a +/* 8001A9C8 00017928 98 7F 09 C5 */ stb r3, 0x9c5(r31) +/* 8001A9CC 0001792C 88 7F 09 C5 */ lbz r3, 0x9c5(r31) +/* 8001A9D0 00017930 50 03 26 F6 */ rlwimi r3, r0, 4, 0x1b, 0x1b +/* 8001A9D4 00017934 98 7F 09 C5 */ stb r3, 0x9c5(r31) +/* 8001A9D8 00017938 88 7F 09 C5 */ lbz r3, 0x9c5(r31) +/* 8001A9DC 0001793C 50 03 1F 38 */ rlwimi r3, r0, 3, 0x1c, 0x1c +/* 8001A9E0 00017940 98 7F 09 C5 */ stb r3, 0x9c5(r31) +/* 8001A9E4 00017944 88 7F 09 C5 */ lbz r3, 0x9c5(r31) +/* 8001A9E8 00017948 50 03 17 7A */ rlwimi r3, r0, 2, 0x1d, 0x1d +/* 8001A9EC 0001794C 98 7F 09 C5 */ stb r3, 0x9c5(r31) +/* 8001A9F0 00017950 88 7F 09 C5 */ lbz r3, 0x9c5(r31) +/* 8001A9F4 00017954 50 83 07 FE */ rlwimi r3, r4, 0, 0x1f, 0x1f +/* 8001A9F8 00017958 98 7F 09 C5 */ stb r3, 0x9c5(r31) +/* 8001A9FC 0001795C 88 7F 09 C6 */ lbz r3, 0x9c6(r31) +/* 8001AA00 00017960 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 +/* 8001AA04 00017964 98 7F 09 C6 */ stb r3, 0x9c6(r31) +/* 8001AA08 00017968 88 7F 09 C6 */ lbz r3, 0x9c6(r31) +/* 8001AA0C 0001796C 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 +/* 8001AA10 00017970 98 7F 09 C6 */ stb r3, 0x9c6(r31) +/* 8001AA14 00017974 88 7F 09 C6 */ lbz r3, 0x9c6(r31) +/* 8001AA18 00017978 50 03 2E B4 */ rlwimi r3, r0, 5, 0x1a, 0x1a +/* 8001AA1C 0001797C 98 7F 09 C6 */ stb r3, 0x9c6(r31) +/* 8001AA20 00017980 88 7F 09 C6 */ lbz r3, 0x9c6(r31) +/* 8001AA24 00017984 50 03 26 F6 */ rlwimi r3, r0, 4, 0x1b, 0x1b +/* 8001AA28 00017988 98 7F 09 C6 */ stb r3, 0x9c6(r31) +/* 8001AA2C 0001798C 88 7F 09 C6 */ lbz r3, 0x9c6(r31) +/* 8001AA30 00017990 50 03 1F 38 */ rlwimi r3, r0, 3, 0x1c, 0x1c +/* 8001AA34 00017994 98 7F 09 C6 */ stb r3, 0x9c6(r31) +/* 8001AA38 00017998 88 7F 09 C6 */ lbz r3, 0x9c6(r31) +/* 8001AA3C 0001799C 50 03 17 7A */ rlwimi r3, r0, 2, 0x1d, 0x1d +/* 8001AA40 000179A0 98 7F 09 C6 */ stb r3, 0x9c6(r31) +/* 8001AA44 000179A4 88 7F 09 C6 */ lbz r3, 0x9c6(r31) +/* 8001AA48 000179A8 50 03 07 FE */ rlwimi r3, r0, 0, 0x1f, 0x1f +/* 8001AA4C 000179AC C0 22 81 00 */ lfs f1, lbl_805A9E20@sda21(r2) +/* 8001AA50 000179B0 38 80 FF FF */ li r4, -1 +/* 8001AA54 000179B4 98 7F 09 C6 */ stb r3, 0x9c6(r31) +/* 8001AA58 000179B8 38 60 00 02 */ li r3, 2 +/* 8001AA5C 000179BC C0 02 81 74 */ lfs f0, lbl_805A9E94@sda21(r2) +/* 8001AA60 000179C0 88 BF 09 C7 */ lbz r5, 0x9c7(r31) +/* 8001AA64 000179C4 50 05 36 72 */ rlwimi r5, r0, 6, 0x19, 0x19 +/* 8001AA68 000179C8 98 BF 09 C7 */ stb r5, 0x9c7(r31) +/* 8001AA6C 000179CC D0 5F 09 C8 */ stfs f2, 0x9c8(r31) +/* 8001AA70 000179D0 D0 5F 09 CC */ stfs f2, 0x9cc(r31) +/* 8001AA74 000179D4 90 1F 09 D0 */ stw r0, 0x9d0(r31) +/* 8001AA78 000179D8 90 1F 09 D4 */ stw r0, 0x9d4(r31) +/* 8001AA7C 000179DC D0 5F 09 D8 */ stfs f2, 0x9d8(r31) +/* 8001AA80 000179E0 D0 3F 09 DC */ stfs f1, 0x9dc(r31) +/* 8001AA84 000179E4 D0 5F 09 E0 */ stfs f2, 0x9e0(r31) +/* 8001AA88 000179E8 90 1F 09 E4 */ stw r0, 0x9e4(r31) +/* 8001AA8C 000179EC D0 5F 09 F4 */ stfs f2, 0x9f4(r31) +/* 8001AA90 000179F0 D0 5F 09 F8 */ stfs f2, 0x9f8(r31) +/* 8001AA94 000179F4 D0 5F 09 FC */ stfs f2, 0x9fc(r31) +/* 8001AA98 000179F8 A0 AD A3 8C */ lhz r5, lbl_805A8F4C@sda21(r13) +/* 8001AA9C 000179FC B0 BF 0A 00 */ sth r5, 0xa00(r31) +/* 8001AAA0 00017A00 D0 5F 0A 04 */ stfs f2, 0xa04(r31) +/* 8001AAA4 00017A04 90 9F 0A 08 */ stw r4, 0xa08(r31) +/* 8001AAA8 00017A08 90 1F 0A 10 */ stw r0, 0xa10(r31) +/* 8001AAAC 00017A0C D0 5F 0A 14 */ stfs f2, 0xa14(r31) +/* 8001AAB0 00017A10 D0 5F 0A 18 */ stfs f2, 0xa18(r31) +/* 8001AAB4 00017A14 D0 5F 0A 1C */ stfs f2, 0xa1c(r31) +/* 8001AAB8 00017A18 D0 3F 0A 20 */ stfs f1, 0xa20(r31) +/* 8001AABC 00017A1C D0 3F 0A 24 */ stfs f1, 0xa24(r31) +/* 8001AAC0 00017A20 D0 5F 0A 28 */ stfs f2, 0xa28(r31) +/* 8001AAC4 00017A24 90 7F 0A 2C */ stw r3, 0xa2c(r31) +/* 8001AAC8 00017A28 D0 1F 0A 30 */ stfs f0, 0xa30(r31) +/* 8001AACC 00017A2C 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13) +/* 8001AAD0 00017A30 80 9F 07 EC */ lwz r4, 0x7ec(r31) +/* 8001AAD4 00017A34 48 19 17 65 */ bl GetBallTransitionBeamResId__15CTweakPlayerResCFQ212CPlayerState7EBeamId +/* 8001AAD8 00017A38 C0 5E 00 00 */ lfs f2, 0(r30) +/* 8001AADC 00017A3C 38 81 00 40 */ addi r4, r1, 0x40 +/* 8001AAE0 00017A40 C0 3E 00 04 */ lfs f1, 4(r30) +/* 8001AAE4 00017A44 C0 1E 00 08 */ lfs f0, 8(r30) +/* 8001AAE8 00017A48 90 61 00 40 */ stw r3, 0x40(r1) +/* 8001AAEC 00017A4C 38 61 01 F8 */ addi r3, r1, 0x1f8 +/* 8001AAF0 00017A50 D0 41 00 44 */ stfs f2, 0x44(r1) +/* 8001AAF4 00017A54 D0 21 00 48 */ stfs f1, 0x48(r1) +/* 8001AAF8 00017A58 D0 01 00 4C */ stfs f0, 0x4c(r1) +/* 8001AAFC 00017A5C 48 0F C2 61 */ bl __ct__10CModelDataFRC10CStaticRes +/* 8001AB00 00017A60 80 01 02 08 */ lwz r0, 0x208(r1) +/* 8001AB04 00017A64 38 60 00 00 */ li r3, 0 +/* 8001AB08 00017A68 28 00 00 00 */ cmplwi r0, 0 +/* 8001AB0C 00017A6C 40 82 00 14 */ bne lbl_8001AB20 +/* 8001AB10 00017A70 88 01 02 20 */ lbz r0, 0x220(r1) +/* 8001AB14 00017A74 28 00 00 00 */ cmplwi r0, 0 +/* 8001AB18 00017A78 40 82 00 08 */ bne lbl_8001AB20 +/* 8001AB1C 00017A7C 38 60 00 01 */ li r3, 1 +lbl_8001AB20: +/* 8001AB20 00017A80 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001AB24 00017A84 41 82 00 0C */ beq lbl_8001AB30 +/* 8001AB28 00017A88 3A E0 00 00 */ li r23, 0 +/* 8001AB2C 00017A8C 48 00 00 30 */ b lbl_8001AB5C +lbl_8001AB30: +/* 8001AB30 00017A90 3C 80 80 3D */ lis r4, lbl_803CC4F8@ha +/* 8001AB34 00017A94 38 60 00 4C */ li r3, 0x4c +/* 8001AB38 00017A98 38 84 C4 F8 */ addi r4, r4, lbl_803CC4F8@l +/* 8001AB3C 00017A9C 38 A0 00 00 */ li r5, 0 +/* 8001AB40 00017AA0 38 84 00 1D */ addi r4, r4, 0x1d +/* 8001AB44 00017AA4 48 2F AD 29 */ bl __nw__FUlPCcPCc +/* 8001AB48 00017AA8 7C 77 1B 79 */ or. r23, r3, r3 +/* 8001AB4C 00017AAC 41 82 00 10 */ beq lbl_8001AB5C +/* 8001AB50 00017AB0 38 81 01 F8 */ addi r4, r1, 0x1f8 +/* 8001AB54 00017AB4 4B FF E2 39 */ bl __ct__10CModelDataFRC10CModelData +/* 8001AB58 00017AB8 7C 77 1B 78 */ mr r23, r3 +lbl_8001AB5C: +/* 8001AB5C 00017ABC 80 7F 07 F0 */ lwz r3, 0x7f0(r31) +/* 8001AB60 00017AC0 38 80 00 01 */ li r4, 1 +/* 8001AB64 00017AC4 48 0F BE E9 */ bl __dt__10CModelDataFv +/* 8001AB68 00017AC8 92 FF 07 F0 */ stw r23, 0x7f0(r31) +/* 8001AB6C 00017ACC 38 7F 07 30 */ addi r3, r31, 0x730 +/* 8001AB70 00017AD0 38 80 00 03 */ li r4, 3 +/* 8001AB74 00017AD4 48 00 06 45 */ bl "reserve__Q24rstl66vector,Q24rstl17rmemory_allocator>Fi" +/* 8001AB78 00017AD8 3C 80 80 3D */ lis r4, lbl_803CC4F8@ha +/* 8001AB7C 00017ADC 38 60 1E 58 */ li r3, 0x1e58 +/* 8001AB80 00017AE0 38 84 C4 F8 */ addi r4, r4, lbl_803CC4F8@l +/* 8001AB84 00017AE4 38 A0 00 00 */ li r5, 0 +/* 8001AB88 00017AE8 38 84 00 1D */ addi r4, r4, 0x1d +/* 8001AB8C 00017AEC 48 00 04 05 */ bl "__nw__24TOneStatic<10CMorphBall>FUlPCcPCc" +/* 8001AB90 00017AF0 7C 77 1B 79 */ or. r23, r3, r3 +/* 8001AB94 00017AF4 41 82 00 14 */ beq lbl_8001ABA8 +/* 8001AB98 00017AF8 FC 20 F8 90 */ fmr f1, f31 +/* 8001AB9C 00017AFC 7F E4 FB 78 */ mr r4, r31 +/* 8001ABA0 00017B00 48 0D E9 D5 */ bl __ct__10CMorphBallFR7CPlayerf +/* 8001ABA4 00017B04 7C 77 1B 78 */ mr r23, r3 +lbl_8001ABA8: +/* 8001ABA8 00017B08 80 7F 07 68 */ lwz r3, 0x768(r31) +/* 8001ABAC 00017B0C 38 80 00 01 */ li r4, 1 +/* 8001ABB0 00017B10 48 0D E2 61 */ bl sub_800f8e10 +/* 8001ABB4 00017B14 92 FF 07 68 */ stw r23, 0x768(r31) +/* 8001ABB8 00017B18 7F E3 FB 78 */ mr r3, r31 +/* 8001ABBC 00017B1C C0 3F 00 E8 */ lfs f1, 0xe8(r31) +/* 8001ABC0 00017B20 48 0F FE 9D */ bl SetInertiaTensorScalar__13CPhysicsActorFf +/* 8001ABC4 00017B24 7F E4 FB 78 */ mr r4, r31 +/* 8001ABC8 00017B28 38 61 00 DC */ addi r3, r1, 0xdc +/* 8001ABCC 00017B2C 48 10 0A A9 */ bl GetMotionState__13CPhysicsActorCFv +/* 8001ABD0 00017B30 80 A1 00 DC */ lwz r5, 0xdc(r1) +/* 8001ABD4 00017B34 38 61 00 AC */ addi r3, r1, 0xac +/* 8001ABD8 00017B38 80 01 00 E0 */ lwz r0, 0xe0(r1) +/* 8001ABDC 00017B3C 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8001ABE0 00017B40 90 BF 01 F4 */ stw r5, 0x1f4(r31) +/* 8001ABE4 00017B44 90 1F 01 F8 */ stw r0, 0x1f8(r31) +/* 8001ABE8 00017B48 80 01 00 E4 */ lwz r0, 0xe4(r1) +/* 8001ABEC 00017B4C 90 1F 01 FC */ stw r0, 0x1fc(r31) +/* 8001ABF0 00017B50 80 A1 00 E8 */ lwz r5, 0xe8(r1) +/* 8001ABF4 00017B54 80 01 00 EC */ lwz r0, 0xec(r1) +/* 8001ABF8 00017B58 90 BF 02 00 */ stw r5, 0x200(r31) +/* 8001ABFC 00017B5C 90 1F 02 04 */ stw r0, 0x204(r31) +/* 8001AC00 00017B60 80 A1 00 F0 */ lwz r5, 0xf0(r1) +/* 8001AC04 00017B64 80 01 00 F4 */ lwz r0, 0xf4(r1) +/* 8001AC08 00017B68 90 BF 02 08 */ stw r5, 0x208(r31) +/* 8001AC0C 00017B6C 90 1F 02 0C */ stw r0, 0x20c(r31) +/* 8001AC10 00017B70 80 A1 00 F8 */ lwz r5, 0xf8(r1) +/* 8001AC14 00017B74 80 01 00 FC */ lwz r0, 0xfc(r1) +/* 8001AC18 00017B78 90 BF 02 10 */ stw r5, 0x210(r31) +/* 8001AC1C 00017B7C 90 1F 02 14 */ stw r0, 0x214(r31) +/* 8001AC20 00017B80 80 01 01 00 */ lwz r0, 0x100(r1) +/* 8001AC24 00017B84 90 1F 02 18 */ stw r0, 0x218(r31) +/* 8001AC28 00017B88 80 A1 01 04 */ lwz r5, 0x104(r1) +/* 8001AC2C 00017B8C 80 01 01 08 */ lwz r0, 0x108(r1) +/* 8001AC30 00017B90 90 BF 02 1C */ stw r5, 0x21c(r31) +/* 8001AC34 00017B94 90 1F 02 20 */ stw r0, 0x220(r31) +/* 8001AC38 00017B98 80 01 01 0C */ lwz r0, 0x10c(r1) +/* 8001AC3C 00017B9C 90 1F 02 24 */ stw r0, 0x224(r31) +/* 8001AC40 00017BA0 48 2F 7F 35 */ bl __ct__12CTransform4fFRC12CTransform4f +/* 8001AC44 00017BA4 80 7F 04 90 */ lwz r3, 0x490(r31) +/* 8001AC48 00017BA8 38 81 00 AC */ addi r4, r1, 0xac +/* 8001AC4C 00017BAC 38 63 03 E8 */ addi r3, r3, 0x3e8 +/* 8001AC50 00017BB0 48 2F 7E F1 */ bl __as__12CTransform4fFRC12CTransform4f +/* 8001AC54 00017BB4 80 7F 04 90 */ lwz r3, 0x490(r31) +/* 8001AC58 00017BB8 38 9F 00 34 */ addi r4, r31, 0x34 +/* 8001AC5C 00017BBC 80 63 07 40 */ lwz r3, 0x740(r3) +/* 8001AC60 00017BC0 38 63 02 20 */ addi r3, r3, 0x220 +/* 8001AC64 00017BC4 48 2F 7E DD */ bl __as__12CTransform4fFRC12CTransform4f +/* 8001AC68 00017BC8 7F E3 FB 78 */ mr r3, r31 +/* 8001AC6C 00017BCC 48 26 80 1D */ bl InitializeBallTransition__7CPlayerFv +/* 8001AC70 00017BD0 3C 60 80 5A */ lis r3, skIdentity4f@ha +/* 8001AC74 00017BD4 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 8001AC78 00017BD8 38 A3 66 70 */ addi r5, r3, skIdentity4f@l +/* 8001AC7C 00017BDC 38 61 00 60 */ addi r3, r1, 0x60 +/* 8001AC80 00017BE0 48 0F AB 35 */ bl GetBounds__10CModelDataCFRC12CTransform4f +/* 8001AC84 00017BE4 C0 21 00 74 */ lfs f1, 0x74(r1) +/* 8001AC88 00017BE8 7F E3 FB 78 */ mr r3, r31 +/* 8001AC8C 00017BEC C0 01 00 68 */ lfs f0, 0x68(r1) +/* 8001AC90 00017BF0 38 80 00 01 */ li r4, 1 +/* 8001AC94 00017BF4 EC 01 00 28 */ fsubs f0, f1, f0 +/* 8001AC98 00017BF8 D0 1F 02 F0 */ stfs f0, 0x2f0(r31) +/* 8001AC9C 00017BFC 48 03 8C 85 */ bl SetCalculateLighting__6CActorFb +/* 8001ACA0 00017C00 80 9F 00 90 */ lwz r4, 0x90(r31) +/* 8001ACA4 00017C04 38 A0 00 01 */ li r5, 1 +/* 8001ACA8 00017C08 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 8001ACAC 00017C0C 38 7F 05 0C */ addi r3, r31, 0x50c +/* 8001ACB0 00017C10 88 04 02 98 */ lbz r0, 0x298(r4) +/* 8001ACB4 00017C14 50 A0 36 72 */ rlwimi r0, r5, 6, 0x19, 0x19 +/* 8001ACB8 00017C18 98 04 02 98 */ stb r0, 0x298(r4) +/* 8001ACBC 00017C1C D0 1F 05 14 */ stfs f0, 0x514(r31) +/* 8001ACC0 00017C20 48 2F 9A 39 */ bl CanBeNormalized__9CVector3fCFv +/* 8001ACC4 00017C24 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8001ACC8 00017C28 41 82 00 0C */ beq lbl_8001ACD4 +/* 8001ACCC 00017C2C 38 7F 05 0C */ addi r3, r31, 0x50c +/* 8001ACD0 00017C30 48 2F 9C 29 */ bl Normalize__9CVector3fFv +lbl_8001ACD4: +/* 8001ACD4 00017C34 38 7F 02 B4 */ addi r3, r31, 0x2b4 +/* 8001ACD8 00017C38 80 1F 02 B4 */ lwz r0, 0x2b4(r31) +/* 8001ACDC 00017C3C 54 00 10 3A */ slwi r0, r0, 2 +/* 8001ACE0 00017C40 7C 63 02 14 */ add r3, r3, r0 +/* 8001ACE4 00017C44 34 63 00 04 */ addic. r3, r3, 4 +/* 8001ACE8 00017C48 41 82 00 0C */ beq lbl_8001ACF4 +/* 8001ACEC 00017C4C C0 0D 80 AC */ lfs f0, lbl_805A6C6C@sda21(r13) +/* 8001ACF0 00017C50 D0 03 00 00 */ stfs f0, 0(r3) +lbl_8001ACF4: +/* 8001ACF4 00017C54 80 7F 02 B4 */ lwz r3, 0x2b4(r31) +/* 8001ACF8 00017C58 38 9F 02 B4 */ addi r4, r31, 0x2b4 +/* 8001ACFC 00017C5C 38 03 00 01 */ addi r0, r3, 1 +/* 8001AD00 00017C60 90 1F 02 B4 */ stw r0, 0x2b4(r31) +/* 8001AD04 00017C64 80 1F 02 B4 */ lwz r0, 0x2b4(r31) +/* 8001AD08 00017C68 54 00 10 3A */ slwi r0, r0, 2 +/* 8001AD0C 00017C6C 7C 64 02 14 */ add r3, r4, r0 +/* 8001AD10 00017C70 34 63 00 04 */ addic. r3, r3, 4 +/* 8001AD14 00017C74 41 82 00 0C */ beq lbl_8001AD20 +/* 8001AD18 00017C78 C0 0D 80 B0 */ lfs f0, lbl_805A6C70@sda21(r13) +/* 8001AD1C 00017C7C D0 03 00 00 */ stfs f0, 0(r3) +lbl_8001AD20: +/* 8001AD20 00017C80 80 7F 02 B4 */ lwz r3, 0x2b4(r31) +/* 8001AD24 00017C84 38 9F 02 B4 */ addi r4, r31, 0x2b4 +/* 8001AD28 00017C88 38 03 00 01 */ addi r0, r3, 1 +/* 8001AD2C 00017C8C 90 1F 02 B4 */ stw r0, 0x2b4(r31) +/* 8001AD30 00017C90 80 1F 02 B4 */ lwz r0, 0x2b4(r31) +/* 8001AD34 00017C94 54 00 10 3A */ slwi r0, r0, 2 +/* 8001AD38 00017C98 7C 64 02 14 */ add r3, r4, r0 +/* 8001AD3C 00017C9C 34 63 00 04 */ addic. r3, r3, 4 +/* 8001AD40 00017CA0 41 82 00 0C */ beq lbl_8001AD4C +/* 8001AD44 00017CA4 C0 0D 80 B4 */ lfs f0, lbl_805A6C74@sda21(r13) +/* 8001AD48 00017CA8 D0 03 00 00 */ stfs f0, 0(r3) +lbl_8001AD4C: +/* 8001AD4C 00017CAC 80 7F 02 B4 */ lwz r3, 0x2b4(r31) +/* 8001AD50 00017CB0 38 9F 02 B4 */ addi r4, r31, 0x2b4 +/* 8001AD54 00017CB4 38 03 00 01 */ addi r0, r3, 1 +/* 8001AD58 00017CB8 90 1F 02 B4 */ stw r0, 0x2b4(r31) +/* 8001AD5C 00017CBC 80 1F 02 B4 */ lwz r0, 0x2b4(r31) +/* 8001AD60 00017CC0 54 00 10 3A */ slwi r0, r0, 2 +/* 8001AD64 00017CC4 7C 64 02 14 */ add r3, r4, r0 +/* 8001AD68 00017CC8 34 63 00 04 */ addic. r3, r3, 4 +/* 8001AD6C 00017CCC 41 82 00 0C */ beq lbl_8001AD78 +/* 8001AD70 00017CD0 C0 0D 80 B8 */ lfs f0, lbl_805A6C78@sda21(r13) +/* 8001AD74 00017CD4 D0 03 00 00 */ stfs f0, 0(r3) +lbl_8001AD78: +/* 8001AD78 00017CD8 80 9F 02 B4 */ lwz r4, 0x2b4(r31) +/* 8001AD7C 00017CDC 7F E3 FB 78 */ mr r3, r31 +/* 8001AD80 00017CE0 C0 22 81 78 */ lfs f1, lbl_805A9E98@sda21(r2) +/* 8001AD84 00017CE4 38 04 00 01 */ addi r0, r4, 1 +/* 8001AD88 00017CE8 90 1F 02 B4 */ stw r0, 0x2b4(r31) +/* 8001AD8C 00017CEC 48 0F F7 35 */ bl SetMaximumCollisionVelocity__13CPhysicsActorFf +/* 8001AD90 00017CF0 38 7F 03 54 */ addi r3, r31, 0x354 +/* 8001AD94 00017CF4 38 80 00 40 */ li r4, 0x40 +/* 8001AD98 00017CF8 4B FF 16 71 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 8001AD9C 00017CFC 38 7F 03 44 */ addi r3, r31, 0x344 +/* 8001ADA0 00017D00 38 80 00 40 */ li r4, 0x40 +/* 8001ADA4 00017D04 4B FF 16 65 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 8001ADA8 00017D08 38 7F 03 64 */ addi r3, r31, 0x364 +/* 8001ADAC 00017D0C 38 80 00 40 */ li r4, 0x40 +/* 8001ADB0 00017D10 4B FF 16 59 */ bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi" +/* 8001ADB4 00017D14 80 9F 00 64 */ lwz r4, 0x64(r31) +/* 8001ADB8 00017D18 7F E3 FB 78 */ mr r3, r31 +/* 8001ADBC 00017D1C C0 1E 00 00 */ lfs f0, 0(r30) +/* 8001ADC0 00017D20 D0 04 00 00 */ stfs f0, 0(r4) +/* 8001ADC4 00017D24 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8001ADC8 00017D28 D0 04 00 04 */ stfs f0, 4(r4) +/* 8001ADCC 00017D2C C0 1E 00 08 */ lfs f0, 8(r30) +/* 8001ADD0 00017D30 D0 04 00 08 */ stfs f0, 8(r4) +/* 8001ADD4 00017D34 80 9F 07 F0 */ lwz r4, 0x7f0(r31) +/* 8001ADD8 00017D38 C0 1E 00 00 */ lfs f0, 0(r30) +/* 8001ADDC 00017D3C D0 04 00 00 */ stfs f0, 0(r4) +/* 8001ADE0 00017D40 C0 1E 00 04 */ lfs f0, 4(r30) +/* 8001ADE4 00017D44 D0 04 00 04 */ stfs f0, 4(r4) +/* 8001ADE8 00017D48 C0 1E 00 08 */ lfs f0, 8(r30) +/* 8001ADEC 00017D4C D0 04 00 08 */ stfs f0, 8(r4) +/* 8001ADF0 00017D50 4B FF 6D 61 */ bl LoadAnimationTokens__7CPlayerFv +/* 8001ADF4 00017D54 38 61 01 F8 */ addi r3, r1, 0x1f8 +/* 8001ADF8 00017D58 38 80 FF FF */ li r4, -1 +/* 8001ADFC 00017D5C 48 0F BC 51 */ bl __dt__10CModelDataFv +/* 8001AE00 00017D60 7F E3 FB 78 */ mr r3, r31 +/* 8001AE04 00017D64 E3 E1 02 A8 */ psq_l f31, 680(r1), 0, qr0 +/* 8001AE08 00017D68 CB E1 02 A0 */ lfd f31, 0x2a0(r1) +/* 8001AE0C 00017D6C E3 C1 02 98 */ psq_l f30, 664(r1), 0, qr0 +/* 8001AE10 00017D70 CB C1 02 90 */ lfd f30, 0x290(r1) +/* 8001AE14 00017D74 E3 A1 02 88 */ psq_l f29, 648(r1), 0, qr0 +/* 8001AE18 00017D78 CB A1 02 80 */ lfd f29, 0x280(r1) +/* 8001AE1C 00017D7C E3 81 02 78 */ psq_l f28, 632(r1), 0, qr0 +/* 8001AE20 00017D80 CB 81 02 70 */ lfd f28, 0x270(r1) +/* 8001AE24 00017D84 BA E1 02 4C */ lmw r23, 0x24c(r1) +/* 8001AE28 00017D88 80 01 02 B4 */ lwz r0, 0x2b4(r1) +/* 8001AE2C 00017D8C 7C 08 03 A6 */ mtlr r0 +/* 8001AE30 00017D90 38 21 02 B0 */ addi r1, r1, 0x2b0 +/* 8001AE34 00017D94 4E 80 00 20 */ blr + +.global None__16CActorParametersFv +None__16CActorParametersFv: +/* 8001AE38 00017D98 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001AE3C 00017D9C 7C 08 02 A6 */ mflr r0 +/* 8001AE40 00017DA0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001AE44 00017DA4 48 0E BB 8D */ bl __ct__16CActorParametersFv +/* 8001AE48 00017DA8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001AE4C 00017DAC 7C 08 03 A6 */ mtlr r0 +/* 8001AE50 00017DB0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001AE54 00017DB4 4E 80 00 20 */ blr + +.global MakePlayerAnimres__FUiRC9CVector3f +MakePlayerAnimres__FUiRC9CVector3f: +/* 8001AE58 00017DB8 90 83 00 00 */ stw r4, 0(r3) +/* 8001AE5C 00017DBC 38 80 00 01 */ li r4, 1 +/* 8001AE60 00017DC0 80 C2 83 F0 */ lwz r6, lbl_805AA110@sda21(r2) +/* 8001AE64 00017DC4 38 00 00 00 */ li r0, 0 +/* 8001AE68 00017DC8 90 C3 00 04 */ stw r6, 4(r3) +/* 8001AE6C 00017DCC C0 05 00 00 */ lfs f0, 0(r5) +/* 8001AE70 00017DD0 D0 03 00 08 */ stfs f0, 8(r3) +/* 8001AE74 00017DD4 C0 05 00 04 */ lfs f0, 4(r5) +/* 8001AE78 00017DD8 D0 03 00 0C */ stfs f0, 0xc(r3) +/* 8001AE7C 00017DDC C0 05 00 08 */ lfs f0, 8(r5) +/* 8001AE80 00017DE0 D0 03 00 10 */ stfs f0, 0x10(r3) +/* 8001AE84 00017DE4 98 83 00 14 */ stb r4, 0x14(r3) +/* 8001AE88 00017DE8 90 03 00 18 */ stw r0, 0x18(r3) +/* 8001AE8C 00017DEC 4E 80 00 20 */ blr + +.global SetMaterial__19CCollisionPrimitiveFRC13CMaterialList +SetMaterial__19CCollisionPrimitiveFRC13CMaterialList: +/* 8001AE90 00017DF0 80 04 00 00 */ lwz r0, 0(r4) +/* 8001AE94 00017DF4 80 84 00 04 */ lwz r4, 4(r4) +/* 8001AE98 00017DF8 90 83 00 0C */ stw r4, 0xc(r3) +/* 8001AE9C 00017DFC 90 03 00 08 */ stw r0, 8(r3) +/* 8001AEA0 00017E00 4E 80 00 20 */ blr + +.global "__nw__24TOneStatic<10CPlayerGun>FUlPCcPCc" +"__nw__24TOneStatic<10CPlayerGun>FUlPCcPCc": +/* 8001AEA4 00017E04 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001AEA8 00017E08 7C 08 02 A6 */ mflr r0 +/* 8001AEAC 00017E0C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001AEB0 00017E10 48 00 00 31 */ bl "ReferenceCount__24TOneStatic<10CPlayerGun>Fv" +/* 8001AEB4 00017E14 80 83 00 00 */ lwz r4, 0(r3) +/* 8001AEB8 00017E18 38 04 00 01 */ addi r0, r4, 1 +/* 8001AEBC 00017E1C 90 03 00 00 */ stw r0, 0(r3) +/* 8001AEC0 00017E20 48 00 00 15 */ bl "GetAllocSpace__24TOneStatic<10CPlayerGun>Fv" +/* 8001AEC4 00017E24 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001AEC8 00017E28 7C 08 03 A6 */ mtlr r0 +/* 8001AECC 00017E2C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001AED0 00017E30 4E 80 00 20 */ blr + +.global "GetAllocSpace__24TOneStatic<10CPlayerGun>Fv" +"GetAllocSpace__24TOneStatic<10CPlayerGun>Fv": +/* 8001AED4 00017E34 3C 60 80 45 */ lis r3, lbl_80457A10@ha +/* 8001AED8 00017E38 38 63 7A 10 */ addi r3, r3, lbl_80457A10@l +/* 8001AEDC 00017E3C 4E 80 00 20 */ blr + +.global "ReferenceCount__24TOneStatic<10CPlayerGun>Fv" +"ReferenceCount__24TOneStatic<10CPlayerGun>Fv": +/* 8001AEE0 00017E40 88 0D A0 D0 */ lbz r0, lbl_805A8C90@sda21(r13) +/* 8001AEE4 00017E44 7C 00 07 75 */ extsb. r0, r0 +/* 8001AEE8 00017E48 40 82 00 14 */ bne lbl_8001AEFC +/* 8001AEEC 00017E4C 38 60 00 00 */ li r3, 0 +/* 8001AEF0 00017E50 38 00 00 01 */ li r0, 1 +/* 8001AEF4 00017E54 90 6D A0 CC */ stw r3, lbl_805A8C8C@sda21(r13) +/* 8001AEF8 00017E58 98 0D A0 D0 */ stb r0, lbl_805A8C90@sda21(r13) +lbl_8001AEFC: +/* 8001AEFC 00017E5C 38 6D A0 CC */ addi r3, r13, lbl_805A8C8C@sda21 +/* 8001AF00 00017E60 4E 80 00 20 */ blr + +.global "__nw__30TOneStatic<16CPlayerCameraBob>FUlPCcPCc" +"__nw__30TOneStatic<16CPlayerCameraBob>FUlPCcPCc": +/* 8001AF04 00017E64 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001AF08 00017E68 7C 08 02 A6 */ mflr r0 +/* 8001AF0C 00017E6C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001AF10 00017E70 48 00 00 5D */ bl "ReferenceCount__30TOneStatic<16CPlayerCameraBob>Fv" +/* 8001AF14 00017E74 80 83 00 00 */ lwz r4, 0(r3) +/* 8001AF18 00017E78 38 04 00 01 */ addi r0, r4, 1 +/* 8001AF1C 00017E7C 90 03 00 00 */ stw r0, 0(r3) +/* 8001AF20 00017E80 48 00 00 41 */ bl "GetAllocSpace__30TOneStatic<16CPlayerCameraBob>Fv" +/* 8001AF24 00017E84 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001AF28 00017E88 7C 08 03 A6 */ mtlr r0 +/* 8001AF2C 00017E8C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001AF30 00017E90 4E 80 00 20 */ blr + +.global "__dl__30TOneStatic<16CPlayerCameraBob>FPv" +"__dl__30TOneStatic<16CPlayerCameraBob>FPv": +/* 8001AF34 00017E94 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001AF38 00017E98 7C 08 02 A6 */ mflr r0 +/* 8001AF3C 00017E9C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001AF40 00017EA0 48 00 00 2D */ bl "ReferenceCount__30TOneStatic<16CPlayerCameraBob>Fv" +/* 8001AF44 00017EA4 80 83 00 00 */ lwz r4, 0(r3) +/* 8001AF48 00017EA8 38 04 FF FF */ addi r0, r4, -1 +/* 8001AF4C 00017EAC 90 03 00 00 */ stw r0, 0(r3) +/* 8001AF50 00017EB0 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001AF54 00017EB4 7C 08 03 A6 */ mtlr r0 +/* 8001AF58 00017EB8 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001AF5C 00017EBC 4E 80 00 20 */ blr + +.global "GetAllocSpace__30TOneStatic<16CPlayerCameraBob>Fv" +"GetAllocSpace__30TOneStatic<16CPlayerCameraBob>Fv": +/* 8001AF60 00017EC0 3C 60 80 46 */ lis r3, lbl_80458248@ha +/* 8001AF64 00017EC4 38 63 82 48 */ addi r3, r3, lbl_80458248@l +/* 8001AF68 00017EC8 4E 80 00 20 */ blr + +.global "ReferenceCount__30TOneStatic<16CPlayerCameraBob>Fv" +"ReferenceCount__30TOneStatic<16CPlayerCameraBob>Fv": +/* 8001AF6C 00017ECC 88 0D A0 D8 */ lbz r0, lbl_805A8C98@sda21(r13) +/* 8001AF70 00017ED0 7C 00 07 75 */ extsb. r0, r0 +/* 8001AF74 00017ED4 40 82 00 14 */ bne lbl_8001AF88 +/* 8001AF78 00017ED8 38 60 00 00 */ li r3, 0 +/* 8001AF7C 00017EDC 38 00 00 01 */ li r0, 1 +/* 8001AF80 00017EE0 90 6D A0 D4 */ stw r3, lbl_805A8C94@sda21(r13) +/* 8001AF84 00017EE4 98 0D A0 D8 */ stb r0, lbl_805A8C98@sda21(r13) +lbl_8001AF88: +/* 8001AF88 00017EE8 38 6D A0 D4 */ addi r3, r13, lbl_805A8C94@sda21 +/* 8001AF8C 00017EEC 4E 80 00 20 */ blr + +.global "__nw__24TOneStatic<10CMorphBall>FUlPCcPCc" +"__nw__24TOneStatic<10CMorphBall>FUlPCcPCc": +/* 8001AF90 00017EF0 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001AF94 00017EF4 7C 08 02 A6 */ mflr r0 +/* 8001AF98 00017EF8 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001AF9C 00017EFC 48 00 00 31 */ bl "ReferenceCount__24TOneStatic<10CMorphBall>Fv" +/* 8001AFA0 00017F00 80 83 00 00 */ lwz r4, 0(r3) +/* 8001AFA4 00017F04 38 04 00 01 */ addi r0, r4, 1 +/* 8001AFA8 00017F08 90 03 00 00 */ stw r0, 0(r3) +/* 8001AFAC 00017F0C 48 00 00 15 */ bl "GetAllocSpace__24TOneStatic<10CMorphBall>Fv" +/* 8001AFB0 00017F10 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001AFB4 00017F14 7C 08 03 A6 */ mtlr r0 +/* 8001AFB8 00017F18 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001AFBC 00017F1C 4E 80 00 20 */ blr + +.global "GetAllocSpace__24TOneStatic<10CMorphBall>Fv" +"GetAllocSpace__24TOneStatic<10CMorphBall>Fv": +/* 8001AFC0 00017F20 3C 60 80 46 */ lis r3, lbl_80458350@ha +/* 8001AFC4 00017F24 38 63 83 50 */ addi r3, r3, lbl_80458350@l +/* 8001AFC8 00017F28 4E 80 00 20 */ blr + +.global "ReferenceCount__24TOneStatic<10CMorphBall>Fv" +"ReferenceCount__24TOneStatic<10CMorphBall>Fv": +/* 8001AFCC 00017F2C 88 0D A0 E0 */ lbz r0, lbl_805A8CA0@sda21(r13) +/* 8001AFD0 00017F30 7C 00 07 75 */ extsb. r0, r0 +/* 8001AFD4 00017F34 40 82 00 14 */ bne lbl_8001AFE8 +/* 8001AFD8 00017F38 38 60 00 00 */ li r3, 0 +/* 8001AFDC 00017F3C 38 00 00 01 */ li r0, 1 +/* 8001AFE0 00017F40 90 6D A0 DC */ stw r3, lbl_805A8C9C@sda21(r13) +/* 8001AFE4 00017F44 98 0D A0 E0 */ stb r0, lbl_805A8CA0@sda21(r13) +lbl_8001AFE8: +/* 8001AFE8 00017F48 38 6D A0 DC */ addi r3, r13, lbl_805A8C9C@sda21 +/* 8001AFEC 00017F4C 4E 80 00 20 */ blr + +.global "__dl__20TOneStatic<7CPlayer>FPv" +"__dl__20TOneStatic<7CPlayer>FPv": +/* 8001AFF0 00017F50 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001AFF4 00017F54 7C 08 02 A6 */ mflr r0 +/* 8001AFF8 00017F58 90 01 00 14 */ stw r0, 0x14(r1) +/* 8001AFFC 00017F5C 48 00 00 21 */ bl "ReferenceCount__20TOneStatic<7CPlayer>Fv" +/* 8001B000 00017F60 80 83 00 00 */ lwz r4, 0(r3) +/* 8001B004 00017F64 38 04 FF FF */ addi r0, r4, -1 +/* 8001B008 00017F68 90 03 00 00 */ stw r0, 0(r3) +/* 8001B00C 00017F6C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8001B010 00017F70 7C 08 03 A6 */ mtlr r0 +/* 8001B014 00017F74 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001B018 00017F78 4E 80 00 20 */ blr + +.global "ReferenceCount__20TOneStatic<7CPlayer>Fv" +"ReferenceCount__20TOneStatic<7CPlayer>Fv": +/* 8001B01C 00017F7C 88 0D A0 E8 */ lbz r0, lbl_805A8CA8@sda21(r13) +/* 8001B020 00017F80 7C 00 07 75 */ extsb. r0, r0 +/* 8001B024 00017F84 40 82 00 14 */ bne lbl_8001B038 +/* 8001B028 00017F88 38 60 00 00 */ li r3, 0 +/* 8001B02C 00017F8C 38 00 00 01 */ li r0, 1 +/* 8001B030 00017F90 90 6D A0 E4 */ stw r3, lbl_805A8CA4@sda21(r13) +/* 8001B034 00017F94 98 0D A0 E8 */ stb r0, lbl_805A8CA8@sda21(r13) +lbl_8001B038: +/* 8001B038 00017F98 38 6D A0 E4 */ addi r3, r13, lbl_805A8CA4@sda21 +/* 8001B03C 00017F9C 4E 80 00 20 */ blr + +.global "GetAverageValue<9CVector3f>__FPC9CVector3fi" +"GetAverageValue<9CVector3f>__FPC9CVector3fi": +/* 8001B040 00017FA0 1C C5 00 0C */ mulli r6, r5, 0xc +/* 8001B044 00017FA4 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8001B048 00017FA8 38 E4 00 0C */ addi r7, r4, 0xc +/* 8001B04C 00017FAC C0 64 00 00 */ lfs f3, 0(r4) +/* 8001B050 00017FB0 38 00 00 0C */ li r0, 0xc +/* 8001B054 00017FB4 7C C4 32 14 */ add r6, r4, r6 +/* 8001B058 00017FB8 C0 84 00 04 */ lfs f4, 4(r4) +/* 8001B05C 00017FBC 7C 07 30 40 */ cmplw r7, r6 +/* 8001B060 00017FC0 C0 A4 00 08 */ lfs f5, 8(r4) +/* 8001B064 00017FC4 38 86 00 0B */ addi r4, r6, 0xb +/* 8001B068 00017FC8 7C 87 20 50 */ subf r4, r7, r4 +/* 8001B06C 00017FCC 7C 84 03 96 */ divwu r4, r4, r0 +/* 8001B070 00017FD0 40 80 01 04 */ bge lbl_8001B174 +/* 8001B074 00017FD4 54 80 E8 FF */ rlwinm. r0, r4, 0x1d, 3, 0x1f +/* 8001B078 00017FD8 7C 09 03 A6 */ mtctr r0 +/* 8001B07C 00017FDC 41 82 00 D4 */ beq lbl_8001B150 +lbl_8001B080: +/* 8001B080 00017FE0 C0 47 00 00 */ lfs f2, 0(r7) +/* 8001B084 00017FE4 C0 27 00 04 */ lfs f1, 4(r7) +/* 8001B088 00017FE8 C0 07 00 08 */ lfs f0, 8(r7) +/* 8001B08C 00017FEC EC 63 10 2A */ fadds f3, f3, f2 +/* 8001B090 00017FF0 EC 84 08 2A */ fadds f4, f4, f1 +/* 8001B094 00017FF4 C0 47 00 0C */ lfs f2, 0xc(r7) +/* 8001B098 00017FF8 EC A5 00 2A */ fadds f5, f5, f0 +/* 8001B09C 00017FFC C0 27 00 10 */ lfs f1, 0x10(r7) +/* 8001B0A0 00018000 C0 07 00 14 */ lfs f0, 0x14(r7) +/* 8001B0A4 00018004 EC 63 10 2A */ fadds f3, f3, f2 +/* 8001B0A8 00018008 EC 84 08 2A */ fadds f4, f4, f1 +/* 8001B0AC 0001800C C0 47 00 18 */ lfs f2, 0x18(r7) +/* 8001B0B0 00018010 EC A5 00 2A */ fadds f5, f5, f0 +/* 8001B0B4 00018014 C0 27 00 1C */ lfs f1, 0x1c(r7) +/* 8001B0B8 00018018 C0 07 00 20 */ lfs f0, 0x20(r7) +/* 8001B0BC 0001801C EC 63 10 2A */ fadds f3, f3, f2 +/* 8001B0C0 00018020 EC 84 08 2A */ fadds f4, f4, f1 +/* 8001B0C4 00018024 C0 47 00 24 */ lfs f2, 0x24(r7) +/* 8001B0C8 00018028 EC A5 00 2A */ fadds f5, f5, f0 +/* 8001B0CC 0001802C C0 27 00 28 */ lfs f1, 0x28(r7) +/* 8001B0D0 00018030 C0 07 00 2C */ lfs f0, 0x2c(r7) +/* 8001B0D4 00018034 EC 63 10 2A */ fadds f3, f3, f2 +/* 8001B0D8 00018038 EC 84 08 2A */ fadds f4, f4, f1 +/* 8001B0DC 0001803C C0 47 00 30 */ lfs f2, 0x30(r7) +/* 8001B0E0 00018040 EC A5 00 2A */ fadds f5, f5, f0 +/* 8001B0E4 00018044 C0 27 00 34 */ lfs f1, 0x34(r7) +/* 8001B0E8 00018048 C0 07 00 38 */ lfs f0, 0x38(r7) +/* 8001B0EC 0001804C EC 63 10 2A */ fadds f3, f3, f2 +/* 8001B0F0 00018050 EC 84 08 2A */ fadds f4, f4, f1 +/* 8001B0F4 00018054 C0 47 00 3C */ lfs f2, 0x3c(r7) +/* 8001B0F8 00018058 EC A5 00 2A */ fadds f5, f5, f0 +/* 8001B0FC 0001805C C0 27 00 40 */ lfs f1, 0x40(r7) +/* 8001B100 00018060 C0 07 00 44 */ lfs f0, 0x44(r7) +/* 8001B104 00018064 EC 63 10 2A */ fadds f3, f3, f2 +/* 8001B108 00018068 EC 84 08 2A */ fadds f4, f4, f1 +/* 8001B10C 0001806C C0 47 00 48 */ lfs f2, 0x48(r7) +/* 8001B110 00018070 EC A5 00 2A */ fadds f5, f5, f0 +/* 8001B114 00018074 C0 27 00 4C */ lfs f1, 0x4c(r7) +/* 8001B118 00018078 C0 07 00 50 */ lfs f0, 0x50(r7) +/* 8001B11C 0001807C EC 63 10 2A */ fadds f3, f3, f2 +/* 8001B120 00018080 EC 84 08 2A */ fadds f4, f4, f1 +/* 8001B124 00018084 C0 47 00 54 */ lfs f2, 0x54(r7) +/* 8001B128 00018088 EC A5 00 2A */ fadds f5, f5, f0 +/* 8001B12C 0001808C C0 27 00 58 */ lfs f1, 0x58(r7) +/* 8001B130 00018090 C0 07 00 5C */ lfs f0, 0x5c(r7) +/* 8001B134 00018094 EC 63 10 2A */ fadds f3, f3, f2 +/* 8001B138 00018098 EC 84 08 2A */ fadds f4, f4, f1 +/* 8001B13C 0001809C 38 E7 00 60 */ addi r7, r7, 0x60 +/* 8001B140 000180A0 EC A5 00 2A */ fadds f5, f5, f0 +/* 8001B144 000180A4 42 00 FF 3C */ bdnz lbl_8001B080 +/* 8001B148 000180A8 70 84 00 07 */ andi. r4, r4, 7 +/* 8001B14C 000180AC 41 82 00 28 */ beq lbl_8001B174 +lbl_8001B150: +/* 8001B150 000180B0 7C 89 03 A6 */ mtctr r4 +lbl_8001B154: +/* 8001B154 000180B4 C0 47 00 00 */ lfs f2, 0(r7) +/* 8001B158 000180B8 C0 27 00 04 */ lfs f1, 4(r7) +/* 8001B15C 000180BC C0 07 00 08 */ lfs f0, 8(r7) +/* 8001B160 000180C0 EC 63 10 2A */ fadds f3, f3, f2 +/* 8001B164 000180C4 EC 84 08 2A */ fadds f4, f4, f1 +/* 8001B168 000180C8 38 E7 00 0C */ addi r7, r7, 0xc +/* 8001B16C 000180CC EC A5 00 2A */ fadds f5, f5, f0 +/* 8001B170 000180D0 42 00 FF E4 */ bdnz lbl_8001B154 +lbl_8001B174: +/* 8001B174 000180D4 6C A4 80 00 */ xoris r4, r5, 0x8000 +/* 8001B178 000180D8 3C 00 43 30 */ lis r0, 0x4330 +/* 8001B17C 000180DC 90 81 00 0C */ stw r4, 0xc(r1) +/* 8001B180 000180E0 C8 22 81 60 */ lfd f1, lbl_805A9E80@sda21(r2) +/* 8001B184 000180E4 90 01 00 08 */ stw r0, 8(r1) +/* 8001B188 000180E8 C0 42 81 00 */ lfs f2, lbl_805A9E20@sda21(r2) +/* 8001B18C 000180EC C8 01 00 08 */ lfd f0, 8(r1) +/* 8001B190 000180F0 EC 00 08 28 */ fsubs f0, f0, f1 +/* 8001B194 000180F4 EC 02 00 24 */ fdivs f0, f2, f0 +/* 8001B198 000180F8 EC 40 00 F2 */ fmuls f2, f0, f3 +/* 8001B19C 000180FC EC 20 01 32 */ fmuls f1, f0, f4 +/* 8001B1A0 00018100 EC 00 01 72 */ fmuls f0, f0, f5 +/* 8001B1A4 00018104 D0 43 00 00 */ stfs f2, 0(r3) +/* 8001B1A8 00018108 D0 23 00 04 */ stfs f1, 4(r3) +/* 8001B1AC 0001810C D0 03 00 08 */ stfs f0, 8(r3) +/* 8001B1B0 00018110 38 21 00 10 */ addi r1, r1, 0x10 +/* 8001B1B4 00018114 4E 80 00 20 */ blr + +.global "reserve__Q24rstl66vector,Q24rstl17rmemory_allocator>Fi" +"reserve__Q24rstl66vector,Q24rstl17rmemory_allocator>Fi": +/* 8001B1B8 00018118 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8001B1BC 0001811C 7C 08 02 A6 */ mflr r0 +/* 8001B1C0 00018120 90 01 00 34 */ stw r0, 0x34(r1) +/* 8001B1C4 00018124 BF 61 00 1C */ stmw r27, 0x1c(r1) +/* 8001B1C8 00018128 7C 9F 23 78 */ mr r31, r4 +/* 8001B1CC 0001812C 7C 7E 1B 78 */ mr r30, r3 +/* 8001B1D0 00018130 80 03 00 08 */ lwz r0, 8(r3) +/* 8001B1D4 00018134 7C 1F 00 00 */ cmpw r31, r0 +/* 8001B1D8 00018138 40 81 00 DC */ ble lbl_8001B2B4 +/* 8001B1DC 0001813C 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c +/* 8001B1E0 00018140 40 82 00 0C */ bne lbl_8001B1EC +/* 8001B1E4 00018144 3B A0 00 00 */ li r29, 0 +/* 8001B1E8 00018148 48 00 00 1C */ b lbl_8001B204 +lbl_8001B1EC: +/* 8001B1EC 0001814C 3C 80 80 3D */ lis r4, lbl_803CC4F8@ha +/* 8001B1F0 00018150 38 A0 00 00 */ li r5, 0 +/* 8001B1F4 00018154 38 84 C4 F8 */ addi r4, r4, lbl_803CC4F8@l +/* 8001B1F8 00018158 38 84 00 1D */ addi r4, r4, 0x1d +/* 8001B1FC 0001815C 48 2F A6 1D */ bl __nwa__FUlPCcPCc +/* 8001B200 00018160 7C 7D 1B 78 */ mr r29, r3 +lbl_8001B204: +/* 8001B204 00018164 80 7E 00 04 */ lwz r3, 4(r30) +/* 8001B208 00018168 7F A5 EB 78 */ mr r5, r29 +/* 8001B20C 0001816C 80 DE 00 0C */ lwz r6, 0xc(r30) +/* 8001B210 00018170 38 00 00 00 */ li r0, 0 +/* 8001B214 00018174 54 63 18 38 */ slwi r3, r3, 3 +/* 8001B218 00018178 7C 86 1A 14 */ add r4, r6, r3 +/* 8001B21C 0001817C 90 C1 00 10 */ stw r6, 0x10(r1) +/* 8001B220 00018180 90 81 00 08 */ stw r4, 8(r1) +/* 8001B224 00018184 90 81 00 0C */ stw r4, 0xc(r1) +/* 8001B228 00018188 90 C1 00 14 */ stw r6, 0x14(r1) +/* 8001B22C 0001818C 48 00 00 28 */ b lbl_8001B254 +lbl_8001B230: +/* 8001B230 00018190 28 05 00 00 */ cmplwi r5, 0 +/* 8001B234 00018194 41 82 00 18 */ beq lbl_8001B24C +/* 8001B238 00018198 88 66 00 00 */ lbz r3, 0(r6) +/* 8001B23C 0001819C 98 65 00 00 */ stb r3, 0(r5) +/* 8001B240 000181A0 80 66 00 04 */ lwz r3, 4(r6) +/* 8001B244 000181A4 90 65 00 04 */ stw r3, 4(r5) +/* 8001B248 000181A8 98 06 00 00 */ stb r0, 0(r6) +lbl_8001B24C: +/* 8001B24C 000181AC 38 A5 00 08 */ addi r5, r5, 8 +/* 8001B250 000181B0 38 C6 00 08 */ addi r6, r6, 8 +lbl_8001B254: +/* 8001B254 000181B4 7C 06 20 40 */ cmplw r6, r4 +/* 8001B258 000181B8 40 82 FF D8 */ bne lbl_8001B230 +/* 8001B25C 000181BC 80 1E 00 04 */ lwz r0, 4(r30) +/* 8001B260 000181C0 83 7E 00 0C */ lwz r27, 0xc(r30) +/* 8001B264 000181C4 54 00 18 38 */ slwi r0, r0, 3 +/* 8001B268 000181C8 7F 9B 02 14 */ add r28, r27, r0 +/* 8001B26C 000181CC 48 00 00 28 */ b lbl_8001B294 +lbl_8001B270: +/* 8001B270 000181D0 28 1B 00 00 */ cmplwi r27, 0 +/* 8001B274 000181D4 41 82 00 1C */ beq lbl_8001B290 +/* 8001B278 000181D8 88 1B 00 00 */ lbz r0, 0(r27) +/* 8001B27C 000181DC 28 00 00 00 */ cmplwi r0, 0 +/* 8001B280 000181E0 41 82 00 10 */ beq lbl_8001B290 +/* 8001B284 000181E4 80 7B 00 04 */ lwz r3, 4(r27) +/* 8001B288 000181E8 38 80 00 01 */ li r4, 1 +/* 8001B28C 000181EC 48 0F B7 C1 */ bl __dt__10CModelDataFv +lbl_8001B290: +/* 8001B290 000181F0 3B 7B 00 08 */ addi r27, r27, 8 +lbl_8001B294: +/* 8001B294 000181F4 7C 1B E0 40 */ cmplw r27, r28 +/* 8001B298 000181F8 40 82 FF D8 */ bne lbl_8001B270 +/* 8001B29C 000181FC 80 7E 00 0C */ lwz r3, 0xc(r30) +/* 8001B2A0 00018200 28 03 00 00 */ cmplwi r3, 0 +/* 8001B2A4 00018204 41 82 00 08 */ beq lbl_8001B2AC +/* 8001B2A8 00018208 48 2F A6 89 */ bl Free__7CMemoryFPCv +lbl_8001B2AC: +/* 8001B2AC 0001820C 93 BE 00 0C */ stw r29, 0xc(r30) +/* 8001B2B0 00018210 93 FE 00 08 */ stw r31, 8(r30) +lbl_8001B2B4: +/* 8001B2B4 00018214 BB 61 00 1C */ lmw r27, 0x1c(r1) +/* 8001B2B8 00018218 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8001B2BC 0001821C 7C 08 03 A6 */ mtlr r0 +/* 8001B2C0 00018220 38 21 00 30 */ addi r1, r1, 0x30 +/* 8001B2C4 00018224 4E 80 00 20 */ blr + +.global __sinit_CPlayer_cpp +__sinit_CPlayer_cpp: +/* 8001B2C8 00018228 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 8001B2CC 0001822C 7C 08 02 A6 */ mflr r0 +/* 8001B2D0 00018230 3C 60 80 45 */ lis r3, lbl_80457908@ha +/* 8001B2D4 00018234 C0 22 81 0C */ lfs f1, lbl_805A9E2C@sda21(r2) +/* 8001B2D8 00018238 90 01 00 44 */ stw r0, 0x44(r1) +/* 8001B2DC 0001823C C0 02 81 00 */ lfs f0, lbl_805A9E20@sda21(r2) +/* 8001B2E0 00018240 93 E1 00 3C */ stw r31, 0x3c(r1) +/* 8001B2E4 00018244 3B E3 79 08 */ addi r31, r3, lbl_80457908@l +/* 8001B2E8 00018248 38 9F 00 18 */ addi r4, r31, 0x18 +/* 8001B2EC 0001824C 38 61 00 28 */ addi r3, r1, 0x28 +/* 8001B2F0 00018250 38 DF 00 00 */ addi r6, r31, 0 +/* 8001B2F4 00018254 38 BF 00 0C */ addi r5, r31, 0xc +/* 8001B2F8 00018258 D0 3F 00 00 */ stfs f1, 0(r31) +/* 8001B2FC 0001825C D0 26 00 04 */ stfs f1, 4(r6) +/* 8001B300 00018260 D0 26 00 08 */ stfs f1, 8(r6) +/* 8001B304 00018264 D0 3F 00 0C */ stfs f1, 0xc(r31) +/* 8001B308 00018268 D0 25 00 04 */ stfs f1, 4(r5) +/* 8001B30C 0001826C D0 05 00 08 */ stfs f0, 8(r5) +/* 8001B310 00018270 D0 3F 00 18 */ stfs f1, 0x18(r31) +/* 8001B314 00018274 D0 24 00 04 */ stfs f1, 4(r4) +/* 8001B318 00018278 D0 24 00 08 */ stfs f1, 8(r4) +/* 8001B31C 0001827C D0 24 00 0C */ stfs f1, 0xc(r4) +/* 8001B320 00018280 D0 01 00 28 */ stfs f0, 0x28(r1) +/* 8001B324 00018284 D0 21 00 2C */ stfs f1, 0x2c(r1) +/* 8001B328 00018288 D0 21 00 30 */ stfs f1, 0x30(r1) +/* 8001B32C 0001828C 48 2F 95 CD */ bl Normalize__9CVector3fFv +/* 8001B330 00018290 C0 61 00 28 */ lfs f3, 0x28(r1) +/* 8001B334 00018294 38 BF 00 18 */ addi r5, r31, 0x18 +/* 8001B338 00018298 38 00 00 00 */ li r0, 0 +/* 8001B33C 0001829C C0 41 00 2C */ lfs f2, 0x2c(r1) +/* 8001B340 000182A0 C0 21 00 30 */ lfs f1, 0x30(r1) +/* 8001B344 000182A4 38 7F 00 48 */ addi r3, r31, 0x48 +/* 8001B348 000182A8 C0 02 81 0C */ lfs f0, lbl_805A9E2C@sda21(r2) +/* 8001B34C 000182AC 38 80 00 00 */ li r4, 0 +/* 8001B350 000182B0 D0 65 00 10 */ stfs f3, 0x10(r5) +/* 8001B354 000182B4 D0 45 00 14 */ stfs f2, 0x14(r5) +/* 8001B358 000182B8 D0 25 00 18 */ stfs f1, 0x18(r5) +/* 8001B35C 000182BC D0 05 00 1C */ stfs f0, 0x1c(r5) +/* 8001B360 000182C0 98 05 00 20 */ stb r0, 0x20(r5) +/* 8001B364 000182C4 90 05 00 2C */ stw r0, 0x2c(r5) +/* 8001B368 000182C8 90 05 00 28 */ stw r0, 0x28(r5) +/* 8001B36C 000182CC 48 2B 2E 1D */ bl __ct__14CCollisionInfoFQ214CCollisionInfo8EInvalid +/* 8001B370 000182D0 3C 60 80 5A */ lis r3, lbl_805A6784@ha +/* 8001B374 000182D4 81 4D 80 8C */ lwz r10, lbl_805A6C4C@sda21(r13) +/* 8001B378 000182D8 39 83 67 84 */ addi r12, r3, lbl_805A6784@l +/* 8001B37C 000182DC 81 2D 80 90 */ lwz r9, lbl_805A6C50@sda21(r13) +/* 8001B380 000182E0 C0 AC 00 00 */ lfs f5, 0(r12) +/* 8001B384 000182E4 39 1F 00 C0 */ addi r8, r31, 0xc0 +/* 8001B388 000182E8 80 ED 80 94 */ lwz r7, lbl_805A6C54@sda21(r13) +/* 8001B38C 000182EC 39 7F 00 A8 */ addi r11, r31, 0xa8 +/* 8001B390 000182F0 80 CD 80 98 */ lwz r6, lbl_805A6C58@sda21(r13) +/* 8001B394 000182F4 80 AD 80 9C */ lwz r5, lbl_805A6C5C@sda21(r13) +/* 8001B398 000182F8 80 8D 80 A0 */ lwz r4, lbl_805A6C60@sda21(r13) +/* 8001B39C 000182FC 80 6D 80 A4 */ lwz r3, lbl_805A6C64@sda21(r13) +/* 8001B3A0 00018300 80 0D 80 A8 */ lwz r0, lbl_805A6C68@sda21(r13) +/* 8001B3A4 00018304 C0 8C 00 04 */ lfs f4, 4(r12) +/* 8001B3A8 00018308 C0 6C 00 08 */ lfs f3, 8(r12) +/* 8001B3AC 0001830C C0 4C 00 0C */ lfs f2, 0xc(r12) +/* 8001B3B0 00018310 C0 2C 00 10 */ lfs f1, 0x10(r12) +/* 8001B3B4 00018314 C0 0C 00 14 */ lfs f0, 0x14(r12) +/* 8001B3B8 00018318 D0 BF 00 A8 */ stfs f5, 0xa8(r31) +/* 8001B3BC 0001831C D0 8B 00 04 */ stfs f4, 4(r11) +/* 8001B3C0 00018320 D0 6B 00 08 */ stfs f3, 8(r11) +/* 8001B3C4 00018324 D0 4B 00 0C */ stfs f2, 0xc(r11) +/* 8001B3C8 00018328 D0 2B 00 10 */ stfs f1, 0x10(r11) +/* 8001B3CC 0001832C D0 0B 00 14 */ stfs f0, 0x14(r11) +/* 8001B3D0 00018330 91 41 00 20 */ stw r10, 0x20(r1) +/* 8001B3D4 00018334 91 21 00 24 */ stw r9, 0x24(r1) +/* 8001B3D8 00018338 91 5F 00 C0 */ stw r10, 0xc0(r31) +/* 8001B3DC 0001833C 91 28 00 04 */ stw r9, 4(r8) +/* 8001B3E0 00018340 90 E1 00 18 */ stw r7, 0x18(r1) +/* 8001B3E4 00018344 90 C1 00 1C */ stw r6, 0x1c(r1) +/* 8001B3E8 00018348 90 E8 00 08 */ stw r7, 8(r8) +/* 8001B3EC 0001834C 90 C8 00 0C */ stw r6, 0xc(r8) +/* 8001B3F0 00018350 90 A1 00 10 */ stw r5, 0x10(r1) +/* 8001B3F4 00018354 90 81 00 14 */ stw r4, 0x14(r1) +/* 8001B3F8 00018358 90 A8 00 10 */ stw r5, 0x10(r8) +/* 8001B3FC 0001835C 90 88 00 14 */ stw r4, 0x14(r8) +/* 8001B400 00018360 90 61 00 08 */ stw r3, 8(r1) +/* 8001B404 00018364 90 01 00 0C */ stw r0, 0xc(r1) +/* 8001B408 00018368 90 68 00 18 */ stw r3, 0x18(r8) +/* 8001B40C 0001836C 90 08 00 1C */ stw r0, 0x1c(r8) +/* 8001B410 00018370 83 E1 00 3C */ lwz r31, 0x3c(r1) +/* 8001B414 00018374 80 01 00 44 */ lwz r0, 0x44(r1) +/* 8001B418 00018378 7C 08 03 A6 */ mtlr r0 +/* 8001B41C 0001837C 38 21 00 40 */ addi r1, r1, 0x40 +/* 8001B420 00018380 4E 80 00 20 */ blr diff --git a/asm/bss.s b/asm/bss.s index acc3008a..a59dd820 100644 --- a/asm/bss.s +++ b/asm/bss.s @@ -1,9 +1,7 @@ .include "macros.inc" .section .bss, "wa" # 0x803F7560 - 0x805A6BBF -.global lbl_804578F8 -lbl_804578F8: - .skip 0x10 + .global lbl_80457908 lbl_80457908: .skip 0xC0 diff --git a/asm/rodata.s b/asm/rodata.s index 5eedeb86..bd4b4cfb 100644 --- a/asm/rodata.s +++ b/asm/rodata.s @@ -2,9 +2,6 @@ .section .rodata, "a" # 0x803CB3A0 - 0x803D8D60 -.global lbl_803CC030 -lbl_803CC030: - .incbin "baserom.dol", 0x3C9030, 0x3F0 .global lbl_803CC420 lbl_803CC420: .incbin "baserom.dol", 0x3C9420, 0x18 diff --git a/asm/sdata.s b/asm/sdata.s index a6791112..c27709fd 100644 --- a/asm/sdata.s +++ b/asm/sdata.s @@ -2,12 +2,6 @@ .section .sdata, "wa" # 0x805A6BC0 - 0x805A8C1C -.global lbl_805A6BF0 -lbl_805A6BF0: - # ROM: 0x3F4590 - .4byte 0x01000000 - .4byte 0 - .global lbl_805A6BF8 lbl_805A6BF8: # ROM: 0x3F4598 diff --git a/asm/sdata2.s b/asm/sdata2.s index eede63c0..1768ab48 100644 --- a/asm/sdata2.s +++ b/asm/sdata2.s @@ -2,16 +2,6 @@ .section .sdata2, "a" # 0x805A9D20 - 0x805AF45C -.global lbl_805A9DC8 -lbl_805A9DC8: - # ROM: 0x3F6668 - .4byte 0 - -.global lbl_805A9DCC -lbl_805A9DCC: - # ROM: 0x3F666C - .4byte 0x3F800000 - .global lbl_805A9DD0 lbl_805A9DD0: # ROM: 0x3F6670 diff --git a/asm/text.s.REMOVED.git-id b/asm/text.s.REMOVED.git-id index f5b4f457..0144a629 100644 --- a/asm/text.s.REMOVED.git-id +++ b/asm/text.s.REMOVED.git-id @@ -1 +1 @@ -c5524d39555012d305c4c880bc34c4bbb8fc732d \ No newline at end of file +53a96a3794e4ec562ba56cd07b7d0001ef93cf11 \ No newline at end of file diff --git a/obj_files.mk b/obj_files.mk index 15e203f4..7a33a551 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -10,7 +10,14 @@ KYOTO_CWD :=\ $(BUILD_DIR)/asm/Kyoto_CWD/main.o\ $(BUILD_DIR)/asm/Kyoto_CWD/text_80008894_80009144.o\ $(BUILD_DIR)/asm/Kyoto_CWD/CCameraManager.o\ - $(BUILD_DIR)/asm/Kyoto_CWD/CControlMapper.o + $(BUILD_DIR)/asm/Kyoto_CWD/CControlMapper.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CFirstPersonCamera.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CObjectList.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CPlayer.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CAxisAngle.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CEulerAngles.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CFrontEndUI.o\ + $(BUILD_DIR)/asm/Kyoto_CWD/CInputGenerator.o\ AI_FILES :=\ $(BUILD_DIR)/asm/Dolphin/ai.o