.include "macros.inc" .section .text, "ax" # 802bdef0 .global Z2SoundObjBase Z2SoundObjBase: /* 802BDEF0 002BAE30 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BDEF4 002BAE34 7C 08 02 A6 */ mflr r0 /* 802BDEF8 002BAE38 90 01 00 14 */ stw r0, 0x14(r1) /* 802BDEFC 002BAE3C 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BDF00 002BAE40 7C 7F 1B 78 */ mr r31, r3 /* 802BDF04 002BAE44 4B FE D1 79 */ bl Z2SoundHandles /* 802BDF08 002BAE48 3C 60 80 3D */ lis r3, lbl_803CAD50@ha /* 802BDF0C 002BAE4C 38 03 AD 50 */ addi r0, r3, lbl_803CAD50@l /* 802BDF10 002BAE50 90 1F 00 10 */ stw r0, 0x10(r31) /* 802BDF14 002BAE54 38 60 00 00 */ li r3, 0 /* 802BDF18 002BAE58 90 7F 00 18 */ stw r3, 0x18(r31) /* 802BDF1C 002BAE5C 98 7F 00 1F */ stb r3, 0x1f(r31) /* 802BDF20 002BAE60 80 0D 85 F4 */ lwz r0, lbl_80450B74-_SDA_BASE_(r13) /* 802BDF24 002BAE64 90 1F 00 14 */ stw r0, 0x14(r31) /* 802BDF28 002BAE68 B0 7F 00 1C */ sth r3, 0x1c(r31) /* 802BDF2C 002BAE6C 98 7F 00 1E */ stb r3, 0x1e(r31) /* 802BDF30 002BAE70 7F E3 FB 78 */ mr r3, r31 /* 802BDF34 002BAE74 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BDF38 002BAE78 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BDF3C 002BAE7C 7C 08 03 A6 */ mtlr r0 /* 802BDF40 002BAE80 38 21 00 10 */ addi r1, r1, 0x10 /* 802BDF44 002BAE84 4E 80 00 20 */ blr .global Z2SoundObjBase_NS_dtor Z2SoundObjBase_NS_dtor: /* 802BDF48 002BAE88 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BDF4C 002BAE8C 7C 08 02 A6 */ mflr r0 /* 802BDF50 002BAE90 90 01 00 14 */ stw r0, 0x14(r1) /* 802BDF54 002BAE94 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BDF58 002BAE98 93 C1 00 08 */ stw r30, 8(r1) /* 802BDF5C 002BAE9C 7C 7E 1B 79 */ or. r30, r3, r3 /* 802BDF60 002BAEA0 7C 9F 23 78 */ mr r31, r4 /* 802BDF64 002BAEA4 41 82 00 30 */ beq lbl_802BDF94 /* 802BDF68 002BAEA8 3C 80 80 3D */ lis r4, lbl_803CAD50@ha /* 802BDF6C 002BAEAC 38 04 AD 50 */ addi r0, r4, lbl_803CAD50@l /* 802BDF70 002BAEB0 90 1E 00 10 */ stw r0, 0x10(r30) /* 802BDF74 002BAEB4 48 00 00 85 */ bl Z2SoundObjBase_NS_deleteObject /* 802BDF78 002BAEB8 7F C3 F3 78 */ mr r3, r30 /* 802BDF7C 002BAEBC 38 80 00 00 */ li r4, 0 /* 802BDF80 002BAEC0 4B FE D1 35 */ bl Z2SoundHandles_NS_dtor /* 802BDF84 002BAEC4 7F E0 07 35 */ extsh. r0, r31 /* 802BDF88 002BAEC8 40 81 00 0C */ ble lbl_802BDF94 /* 802BDF8C 002BAECC 7F C3 F3 78 */ mr r3, r30 /* 802BDF90 002BAED0 48 01 0D AD */ bl __dl__FPv lbl_802BDF94: /* 802BDF94 002BAED4 7F C3 F3 78 */ mr r3, r30 /* 802BDF98 002BAED8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BDF9C 002BAEDC 83 C1 00 08 */ lwz r30, 8(r1) /* 802BDFA0 002BAEE0 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BDFA4 002BAEE4 7C 08 03 A6 */ mtlr r0 /* 802BDFA8 002BAEE8 38 21 00 10 */ addi r1, r1, 0x10 /* 802BDFAC 002BAEEC 4E 80 00 20 */ blr .global Z2SoundObjBase_NS_init Z2SoundObjBase_NS_init: /* 802BDFB0 002BAEF0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BDFB4 002BAEF4 7C 08 02 A6 */ mflr r0 /* 802BDFB8 002BAEF8 90 01 00 14 */ stw r0, 0x14(r1) /* 802BDFBC 002BAEFC 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BDFC0 002BAF00 93 C1 00 08 */ stw r30, 8(r1) /* 802BDFC4 002BAF04 7C 7E 1B 78 */ mr r30, r3 /* 802BDFC8 002BAF08 7C 9F 23 78 */ mr r31, r4 /* 802BDFCC 002BAF0C 7C A4 2B 78 */ mr r4, r5 /* 802BDFD0 002BAF10 4B FE D1 49 */ bl Z2SoundHandles_NS_initHandlesPool /* 802BDFD4 002BAF14 93 FE 00 18 */ stw r31, 0x18(r30) /* 802BDFD8 002BAF18 38 00 00 01 */ li r0, 1 /* 802BDFDC 002BAF1C 98 1E 00 1F */ stb r0, 0x1f(r30) /* 802BDFE0 002BAF20 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BDFE4 002BAF24 83 C1 00 08 */ lwz r30, 8(r1) /* 802BDFE8 002BAF28 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BDFEC 002BAF2C 7C 08 03 A6 */ mtlr r0 /* 802BDFF0 002BAF30 38 21 00 10 */ addi r1, r1, 0x10 /* 802BDFF4 002BAF34 4E 80 00 20 */ blr .global Z2SoundObjBase_NS_deleteObject Z2SoundObjBase_NS_deleteObject: /* 802BDFF8 002BAF38 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BDFFC 002BAF3C 7C 08 02 A6 */ mflr r0 /* 802BE000 002BAF40 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE004 002BAF44 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BE008 002BAF48 7C 7F 1B 78 */ mr r31, r3 /* 802BE00C 002BAF4C 81 83 00 10 */ lwz r12, 0x10(r3) /* 802BE010 002BAF50 81 8C 00 0C */ lwz r12, 0xc(r12) /* 802BE014 002BAF54 7D 89 03 A6 */ mtctr r12 /* 802BE018 002BAF58 4E 80 04 21 */ bctrl /* 802BE01C 002BAF5C 7F E3 FB 78 */ mr r3, r31 /* 802BE020 002BAF60 4B FE D1 01 */ bl Z2SoundHandles_NS_deleteHandlesPool /* 802BE024 002BAF64 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BE028 002BAF68 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BE02C 002BAF6C 7C 08 03 A6 */ mtlr r0 /* 802BE030 002BAF70 38 21 00 10 */ addi r1, r1, 0x10 /* 802BE034 002BAF74 4E 80 00 20 */ blr .global Z2SoundObjBase_NS_framework Z2SoundObjBase_NS_framework: /* 802BE038 002BAF78 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BE03C 002BAF7C 7C 08 02 A6 */ mflr r0 /* 802BE040 002BAF80 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE044 002BAF84 88 03 00 1F */ lbz r0, 0x1f(r3) /* 802BE048 002BAF88 28 00 00 00 */ cmplwi r0, 0 /* 802BE04C 002BAF8C 41 82 00 14 */ beq lbl_802BE060 /* 802BE050 002BAF90 B0 83 00 1C */ sth r4, 0x1c(r3) /* 802BE054 002BAF94 98 A3 00 1E */ stb r5, 0x1e(r3) /* 802BE058 002BAF98 80 83 00 18 */ lwz r4, 0x18(r3) /* 802BE05C 002BAF9C 4B FE D4 DD */ bl Z2SoundHandles_NS_setPos lbl_802BE060: /* 802BE060 002BAFA0 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BE064 002BAFA4 7C 08 03 A6 */ mtlr r0 /* 802BE068 002BAFA8 38 21 00 10 */ addi r1, r1, 0x10 /* 802BE06C 002BAFAC 4E 80 00 20 */ blr /* 802BE070 002BAFB0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802BE074 002BAFB4 7C 08 02 A6 */ mflr r0 /* 802BE078 002BAFB8 90 01 00 24 */ stw r0, 0x24(r1) /* 802BE07C 002BAFBC 39 61 00 20 */ addi r11, r1, 0x20 /* 802BE080 002BAFC0 48 0A 41 5D */ bl _savegpr_29 /* 802BE084 002BAFC4 7C 7D 1B 78 */ mr r29, r3 /* 802BE088 002BAFC8 83 C3 00 00 */ lwz r30, 0(r3) /* 802BE08C 002BAFCC 48 00 00 50 */ b lbl_802BE0DC lbl_802BE090: /* 802BE090 002BAFD0 83 FE 00 00 */ lwz r31, 0(r30) /* 802BE094 002BAFD4 28 1F 00 00 */ cmplwi r31, 0 /* 802BE098 002BAFD8 41 82 00 40 */ beq lbl_802BE0D8 /* 802BE09C 002BAFDC 80 7F 00 00 */ lwz r3, 0(r31) /* 802BE0A0 002BAFE0 28 03 00 00 */ cmplwi r3, 0 /* 802BE0A4 002BAFE4 41 82 00 34 */ beq lbl_802BE0D8 /* 802BE0A8 002BAFE8 80 03 00 18 */ lwz r0, 0x18(r3) /* 802BE0AC 002BAFEC 90 01 00 08 */ stw r0, 8(r1) /* 802BE0B0 002BAFF0 80 6D 85 CC */ lwz r3, lbl_80450B4C-_SDA_BASE_(r13) /* 802BE0B4 002BAFF4 38 81 00 08 */ addi r4, r1, 8 /* 802BE0B8 002BAFF8 4B FF DA 11 */ bl Z2SoundInfo_NS_getSwBit /* 802BE0BC 002BAFFC 54 60 04 21 */ rlwinm. r0, r3, 0, 0x10, 0x10 /* 802BE0C0 002BB000 41 82 00 10 */ beq lbl_802BE0D0 /* 802BE0C4 002BB004 7F E3 FB 78 */ mr r3, r31 /* 802BE0C8 002BB008 4B FE 40 BD */ bl JAISoundHandle_NS_releaseSound /* 802BE0CC 002BB00C 48 00 00 0C */ b lbl_802BE0D8 lbl_802BE0D0: /* 802BE0D0 002BB010 80 7F 00 00 */ lwz r3, 0(r31) /* 802BE0D4 002BB014 4B FE 44 C5 */ bl JAISound_NS_stop_X1_ lbl_802BE0D8: /* 802BE0D8 002BB018 83 DE 00 0C */ lwz r30, 0xc(r30) lbl_802BE0DC: /* 802BE0DC 002BB01C 28 1E 00 00 */ cmplwi r30, 0 /* 802BE0E0 002BB020 40 82 FF B0 */ bne lbl_802BE090 /* 802BE0E4 002BB024 38 00 00 00 */ li r0, 0 /* 802BE0E8 002BB028 98 1D 00 1F */ stb r0, 0x1f(r29) /* 802BE0EC 002BB02C 39 61 00 20 */ addi r11, r1, 0x20 /* 802BE0F0 002BB030 48 0A 41 39 */ bl _restgpr_29 /* 802BE0F4 002BB034 80 01 00 24 */ lwz r0, 0x24(r1) /* 802BE0F8 002BB038 7C 08 03 A6 */ mtlr r0 /* 802BE0FC 002BB03C 38 21 00 20 */ addi r1, r1, 0x20 /* 802BE100 002BB040 4E 80 00 20 */ blr /* 802BE104 002BB044 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BE108 002BB048 7C 08 02 A6 */ mflr r0 /* 802BE10C 002BB04C 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE110 002BB050 80 64 00 00 */ lwz r3, 0(r4) /* 802BE114 002BB054 80 03 00 18 */ lwz r0, 0x18(r3) /* 802BE118 002BB058 90 01 00 08 */ stw r0, 8(r1) /* 802BE11C 002BB05C 80 6D 85 CC */ lwz r3, lbl_80450B4C-_SDA_BASE_(r13) /* 802BE120 002BB060 38 81 00 08 */ addi r4, r1, 8 /* 802BE124 002BB064 4B FF D9 A5 */ bl Z2SoundInfo_NS_getSwBit /* 802BE128 002BB068 54 60 04 20 */ rlwinm r0, r3, 0, 0x10, 0x10 /* 802BE12C 002BB06C 7C 00 00 34 */ cntlzw r0, r0 /* 802BE130 002BB070 54 03 D9 7E */ srwi r3, r0, 5 /* 802BE134 002BB074 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BE138 002BB078 7C 08 03 A6 */ mtlr r0 /* 802BE13C 002BB07C 38 21 00 10 */ addi r1, r1, 0x10 /* 802BE140 002BB080 4E 80 00 20 */ blr .global Z2SoundObjBase_NS_startSound Z2SoundObjBase_NS_startSound: /* 802BE144 002BB084 94 21 FF B0 */ stwu r1, -0x50(r1) /* 802BE148 002BB088 7C 08 02 A6 */ mflr r0 /* 802BE14C 002BB08C 90 01 00 54 */ stw r0, 0x54(r1) /* 802BE150 002BB090 DB E1 00 40 */ stfd f31, 0x40(r1) /* 802BE154 002BB094 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 /* 802BE158 002BB098 39 61 00 40 */ addi r11, r1, 0x40 /* 802BE15C 002BB09C 48 0A 40 7D */ bl _savegpr_28 /* 802BE160 002BB0A0 7C 7D 1B 78 */ mr r29, r3 /* 802BE164 002BB0A4 7C 9E 23 78 */ mr r30, r4 /* 802BE168 002BB0A8 7C BF 2B 78 */ mr r31, r5 /* 802BE16C 002BB0AC 7C DC 33 78 */ mr r28, r6 /* 802BE170 002BB0B0 88 03 00 1F */ lbz r0, 0x1f(r3) /* 802BE174 002BB0B4 28 00 00 00 */ cmplwi r0, 0 /* 802BE178 002BB0B8 40 82 00 0C */ bne lbl_802BE184 /* 802BE17C 002BB0BC 38 60 00 00 */ li r3, 0 /* 802BE180 002BB0C0 48 00 01 34 */ b lbl_802BE2B4 lbl_802BE184: /* 802BE184 002BB0C4 80 1E 00 00 */ lwz r0, 0(r30) /* 802BE188 002BB0C8 90 01 00 18 */ stw r0, 0x18(r1) /* 802BE18C 002BB0CC 80 6D 86 08 */ lwz r3, lbl_80450B88-_SDA_BASE_(r13) /* 802BE190 002BB0D0 38 81 00 18 */ addi r4, r1, 0x18 /* 802BE194 002BB0D4 4B FF 04 1D */ bl isSoundCulling__7Z2SeMgrF10JAISoundID /* 802BE198 002BB0D8 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802BE19C 002BB0DC 41 82 00 0C */ beq lbl_802BE1A8 /* 802BE1A0 002BB0E0 38 60 00 00 */ li r3, 0 /* 802BE1A4 002BB0E4 48 00 01 10 */ b lbl_802BE2B4 lbl_802BE1A8: /* 802BE1A8 002BB0E8 28 1F 00 00 */ cmplwi r31, 0 /* 802BE1AC 002BB0EC 40 82 00 08 */ bne lbl_802BE1B4 /* 802BE1B0 002BB0F0 A3 FD 00 1C */ lhz r31, 0x1c(r29) lbl_802BE1B4: /* 802BE1B4 002BB0F4 7F 80 07 75 */ extsb. r0, r28 /* 802BE1B8 002BB0F8 40 80 00 08 */ bge lbl_802BE1C0 /* 802BE1BC 002BB0FC 8B 9D 00 1E */ lbz r28, 0x1e(r29) lbl_802BE1C0: /* 802BE1C0 002BB100 7F 80 07 74 */ extsb r0, r28 /* 802BE1C4 002BB104 C8 22 C1 48 */ lfd f1, lbl_80455B48-_SDA2_BASE_(r2) /* 802BE1C8 002BB108 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802BE1CC 002BB10C 90 01 00 24 */ stw r0, 0x24(r1) /* 802BE1D0 002BB110 3C 00 43 30 */ lis r0, 0x4330 /* 802BE1D4 002BB114 90 01 00 20 */ stw r0, 0x20(r1) /* 802BE1D8 002BB118 C8 01 00 20 */ lfd f0, 0x20(r1) /* 802BE1DC 002BB11C EC 20 08 28 */ fsubs f1, f0, f1 /* 802BE1E0 002BB120 C0 02 C1 38 */ lfs f0, lbl_80455B38-_SDA2_BASE_(r2) /* 802BE1E4 002BB124 EF E1 00 24 */ fdivs f31, f1, f0 /* 802BE1E8 002BB128 80 1E 00 00 */ lwz r0, 0(r30) /* 802BE1EC 002BB12C 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE1F0 002BB130 7F A3 EB 78 */ mr r3, r29 /* 802BE1F4 002BB134 38 81 00 14 */ addi r4, r1, 0x14 /* 802BE1F8 002BB138 4B FE D0 5D */ bl Z2SoundHandles_NS_getHandleSoundID /* 802BE1FC 002BB13C 7C 7C 1B 79 */ or. r28, r3, r3 /* 802BE200 002BB140 41 82 00 30 */ beq lbl_802BE230 /* 802BE204 002BB144 80 1E 00 00 */ lwz r0, 0(r30) /* 802BE208 002BB148 90 01 00 10 */ stw r0, 0x10(r1) /* 802BE20C 002BB14C 80 6D 85 CC */ lwz r3, lbl_80450B4C-_SDA_BASE_(r13) /* 802BE210 002BB150 38 81 00 10 */ addi r4, r1, 0x10 /* 802BE214 002BB154 4B FF D8 B5 */ bl Z2SoundInfo_NS_getSwBit /* 802BE218 002BB158 54 60 04 63 */ rlwinm. r0, r3, 0, 0x11, 0x11 /* 802BE21C 002BB15C 41 82 00 0C */ beq lbl_802BE228 /* 802BE220 002BB160 3B 80 00 00 */ li r28, 0 /* 802BE224 002BB164 48 00 00 0C */ b lbl_802BE230 lbl_802BE228: /* 802BE228 002BB168 38 60 00 00 */ li r3, 0 /* 802BE22C 002BB16C 48 00 00 88 */ b lbl_802BE2B4 lbl_802BE230: /* 802BE230 002BB170 28 1C 00 00 */ cmplwi r28, 0 /* 802BE234 002BB174 40 82 00 10 */ bne lbl_802BE244 /* 802BE238 002BB178 7F A3 EB 78 */ mr r3, r29 /* 802BE23C 002BB17C 4B FE D0 9D */ bl Z2SoundHandles_NS_getFreeHandle /* 802BE240 002BB180 7C 7C 1B 78 */ mr r28, r3 lbl_802BE244: /* 802BE244 002BB184 28 1C 00 00 */ cmplwi r28, 0 /* 802BE248 002BB188 40 82 00 1C */ bne lbl_802BE264 /* 802BE24C 002BB18C 80 1E 00 00 */ lwz r0, 0(r30) /* 802BE250 002BB190 90 01 00 0C */ stw r0, 0xc(r1) /* 802BE254 002BB194 7F A3 EB 78 */ mr r3, r29 /* 802BE258 002BB198 38 81 00 0C */ addi r4, r1, 0xc /* 802BE25C 002BB19C 4B FE D1 75 */ bl Z2SoundHandles_NS_getLowPrioSound /* 802BE260 002BB1A0 7C 7C 1B 78 */ mr r28, r3 lbl_802BE264: /* 802BE264 002BB1A4 28 1C 00 00 */ cmplwi r28, 0 /* 802BE268 002BB1A8 41 82 00 48 */ beq lbl_802BE2B0 /* 802BE26C 002BB1AC 80 1E 00 00 */ lwz r0, 0(r30) /* 802BE270 002BB1B0 90 01 00 08 */ stw r0, 8(r1) /* 802BE274 002BB1B4 80 7D 00 14 */ lwz r3, 0x14(r29) /* 802BE278 002BB1B8 38 81 00 08 */ addi r4, r1, 8 /* 802BE27C 002BB1BC 7F 85 E3 78 */ mr r5, r28 /* 802BE280 002BB1C0 80 DD 00 18 */ lwz r6, 0x18(r29) /* 802BE284 002BB1C4 7F E7 FB 78 */ mr r7, r31 /* 802BE288 002BB1C8 FC 20 F8 90 */ fmr f1, f31 /* 802BE28C 002BB1CC C0 42 C1 3C */ lfs f2, lbl_80455B3C-_SDA2_BASE_(r2) /* 802BE290 002BB1D0 FC 60 10 90 */ fmr f3, f2 /* 802BE294 002BB1D4 C0 82 C1 40 */ lfs f4, lbl_80455B40-_SDA2_BASE_(r2) /* 802BE298 002BB1D8 FC A0 20 90 */ fmr f5, f4 /* 802BE29C 002BB1DC 39 00 00 00 */ li r8, 0 /* 802BE2A0 002BB1E0 81 83 00 00 */ lwz r12, 0(r3) /* 802BE2A4 002BB1E4 81 8C 00 10 */ lwz r12, 0x10(r12) /* 802BE2A8 002BB1E8 7D 89 03 A6 */ mtctr r12 /* 802BE2AC 002BB1EC 4E 80 04 21 */ bctrl lbl_802BE2B0: /* 802BE2B0 002BB1F0 7F 83 E3 78 */ mr r3, r28 lbl_802BE2B4: /* 802BE2B4 002BB1F4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 /* 802BE2B8 002BB1F8 CB E1 00 40 */ lfd f31, 0x40(r1) /* 802BE2BC 002BB1FC 39 61 00 40 */ addi r11, r1, 0x40 /* 802BE2C0 002BB200 48 0A 3F 65 */ bl _restgpr_28 /* 802BE2C4 002BB204 80 01 00 54 */ lwz r0, 0x54(r1) /* 802BE2C8 002BB208 7C 08 03 A6 */ mtlr r0 /* 802BE2CC 002BB20C 38 21 00 50 */ addi r1, r1, 0x50 /* 802BE2D0 002BB210 4E 80 00 20 */ blr .global Z2SoundObjBase_NS_startLevelSound Z2SoundObjBase_NS_startLevelSound: /* 802BE2D4 002BB214 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802BE2D8 002BB218 7C 08 02 A6 */ mflr r0 /* 802BE2DC 002BB21C 90 01 00 44 */ stw r0, 0x44(r1) /* 802BE2E0 002BB220 DB E1 00 30 */ stfd f31, 0x30(r1) /* 802BE2E4 002BB224 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 802BE2E8 002BB228 39 61 00 30 */ addi r11, r1, 0x30 /* 802BE2EC 002BB22C 48 0A 3E ED */ bl _savegpr_28 /* 802BE2F0 002BB230 7C 7E 1B 78 */ mr r30, r3 /* 802BE2F4 002BB234 7C 9C 23 78 */ mr r28, r4 /* 802BE2F8 002BB238 7C BF 2B 78 */ mr r31, r5 /* 802BE2FC 002BB23C 88 03 00 1F */ lbz r0, 0x1f(r3) /* 802BE300 002BB240 28 00 00 00 */ cmplwi r0, 0 /* 802BE304 002BB244 40 82 00 0C */ bne lbl_802BE310 /* 802BE308 002BB248 38 60 00 00 */ li r3, 0 /* 802BE30C 002BB24C 48 00 01 78 */ b lbl_802BE484 lbl_802BE310: /* 802BE310 002BB250 28 1F 00 00 */ cmplwi r31, 0 /* 802BE314 002BB254 40 82 00 08 */ bne lbl_802BE31C /* 802BE318 002BB258 A3 FE 00 1C */ lhz r31, 0x1c(r30) lbl_802BE31C: /* 802BE31C 002BB25C 7C C0 07 75 */ extsb. r0, r6 /* 802BE320 002BB260 40 80 00 08 */ bge lbl_802BE328 /* 802BE324 002BB264 88 DE 00 1E */ lbz r6, 0x1e(r30) lbl_802BE328: /* 802BE328 002BB268 7C C0 07 74 */ extsb r0, r6 /* 802BE32C 002BB26C C8 22 C1 48 */ lfd f1, lbl_80455B48-_SDA2_BASE_(r2) /* 802BE330 002BB270 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802BE334 002BB274 90 01 00 1C */ stw r0, 0x1c(r1) /* 802BE338 002BB278 3C 00 43 30 */ lis r0, 0x4330 /* 802BE33C 002BB27C 90 01 00 18 */ stw r0, 0x18(r1) /* 802BE340 002BB280 C8 01 00 18 */ lfd f0, 0x18(r1) /* 802BE344 002BB284 EC 20 08 28 */ fsubs f1, f0, f1 /* 802BE348 002BB288 C0 02 C1 38 */ lfs f0, lbl_80455B38-_SDA2_BASE_(r2) /* 802BE34C 002BB28C EF E1 00 24 */ fdivs f31, f1, f0 /* 802BE350 002BB290 80 1C 00 00 */ lwz r0, 0(r28) /* 802BE354 002BB294 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE358 002BB298 7F C3 F3 78 */ mr r3, r30 /* 802BE35C 002BB29C 38 81 00 14 */ addi r4, r1, 0x14 /* 802BE360 002BB2A0 4B FE CE F5 */ bl Z2SoundHandles_NS_getHandleSoundID /* 802BE364 002BB2A4 7C 7D 1B 79 */ or. r29, r3, r3 /* 802BE368 002BB2A8 41 82 00 4C */ beq lbl_802BE3B4 /* 802BE36C 002BB2AC 80 7D 00 00 */ lwz r3, 0(r29) /* 802BE370 002BB2B0 80 03 00 10 */ lwz r0, 0x10(r3) /* 802BE374 002BB2B4 28 00 00 01 */ cmplwi r0, 1 /* 802BE378 002BB2B8 40 80 00 0C */ bge lbl_802BE384 /* 802BE37C 002BB2BC 38 00 00 01 */ li r0, 1 /* 802BE380 002BB2C0 90 03 00 10 */ stw r0, 0x10(r3) lbl_802BE384: /* 802BE384 002BB2C4 80 7E 00 14 */ lwz r3, 0x14(r30) /* 802BE388 002BB2C8 7F A4 EB 78 */ mr r4, r29 /* 802BE38C 002BB2CC 38 A0 00 06 */ li r5, 6 /* 802BE390 002BB2D0 57 E6 04 3E */ clrlwi r6, r31, 0x10 /* 802BE394 002BB2D4 38 E0 FF FF */ li r7, -1 /* 802BE398 002BB2D8 4B FE CB 45 */ bl Z2SoundStarter_NS_setPortData /* 802BE39C 002BB2DC 80 7D 00 00 */ lwz r3, 0(r29) /* 802BE3A0 002BB2E0 38 63 00 48 */ addi r3, r3, 0x48 /* 802BE3A4 002BB2E4 FC 20 F8 90 */ fmr f1, f31 /* 802BE3A8 002BB2E8 38 80 00 00 */ li r4, 0 /* 802BE3AC 002BB2EC 4B FE 4A B9 */ bl JAISoundParamsMove_NS_moveFxMix /* 802BE3B0 002BB2F0 48 00 00 D0 */ b lbl_802BE480 lbl_802BE3B4: /* 802BE3B4 002BB2F4 80 1C 00 00 */ lwz r0, 0(r28) /* 802BE3B8 002BB2F8 90 01 00 10 */ stw r0, 0x10(r1) /* 802BE3BC 002BB2FC 80 6D 86 08 */ lwz r3, lbl_80450B88-_SDA_BASE_(r13) /* 802BE3C0 002BB300 38 81 00 10 */ addi r4, r1, 0x10 /* 802BE3C4 002BB304 4B FF 01 ED */ bl isSoundCulling__7Z2SeMgrF10JAISoundID /* 802BE3C8 002BB308 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802BE3CC 002BB30C 41 82 00 0C */ beq lbl_802BE3D8 /* 802BE3D0 002BB310 38 60 00 00 */ li r3, 0 /* 802BE3D4 002BB314 48 00 00 B0 */ b lbl_802BE484 lbl_802BE3D8: /* 802BE3D8 002BB318 7F C3 F3 78 */ mr r3, r30 /* 802BE3DC 002BB31C 4B FE CE FD */ bl Z2SoundHandles_NS_getFreeHandle /* 802BE3E0 002BB320 7C 7D 1B 79 */ or. r29, r3, r3 /* 802BE3E4 002BB324 40 82 00 1C */ bne lbl_802BE400 /* 802BE3E8 002BB328 80 1C 00 00 */ lwz r0, 0(r28) /* 802BE3EC 002BB32C 90 01 00 0C */ stw r0, 0xc(r1) /* 802BE3F0 002BB330 7F C3 F3 78 */ mr r3, r30 /* 802BE3F4 002BB334 38 81 00 0C */ addi r4, r1, 0xc /* 802BE3F8 002BB338 4B FE CF D9 */ bl Z2SoundHandles_NS_getLowPrioSound /* 802BE3FC 002BB33C 7C 7D 1B 78 */ mr r29, r3 lbl_802BE400: /* 802BE400 002BB340 28 1D 00 00 */ cmplwi r29, 0 /* 802BE404 002BB344 41 82 00 7C */ beq lbl_802BE480 /* 802BE408 002BB348 80 1C 00 00 */ lwz r0, 0(r28) /* 802BE40C 002BB34C 90 01 00 08 */ stw r0, 8(r1) /* 802BE410 002BB350 80 7E 00 14 */ lwz r3, 0x14(r30) /* 802BE414 002BB354 38 81 00 08 */ addi r4, r1, 8 /* 802BE418 002BB358 7F A5 EB 78 */ mr r5, r29 /* 802BE41C 002BB35C 80 DE 00 18 */ lwz r6, 0x18(r30) /* 802BE420 002BB360 7F E7 FB 78 */ mr r7, r31 /* 802BE424 002BB364 FC 20 F8 90 */ fmr f1, f31 /* 802BE428 002BB368 C0 42 C1 3C */ lfs f2, lbl_80455B3C-_SDA2_BASE_(r2) /* 802BE42C 002BB36C FC 60 10 90 */ fmr f3, f2 /* 802BE430 002BB370 C0 82 C1 40 */ lfs f4, lbl_80455B40-_SDA2_BASE_(r2) /* 802BE434 002BB374 FC A0 20 90 */ fmr f5, f4 /* 802BE438 002BB378 39 00 00 00 */ li r8, 0 /* 802BE43C 002BB37C 81 83 00 00 */ lwz r12, 0(r3) /* 802BE440 002BB380 81 8C 00 10 */ lwz r12, 0x10(r12) /* 802BE444 002BB384 7D 89 03 A6 */ mtctr r12 /* 802BE448 002BB388 4E 80 04 21 */ bctrl /* 802BE44C 002BB38C 28 1D 00 00 */ cmplwi r29, 0 /* 802BE450 002BB390 41 82 00 30 */ beq lbl_802BE480 /* 802BE454 002BB394 80 9D 00 00 */ lwz r4, 0(r29) /* 802BE458 002BB398 28 04 00 00 */ cmplwi r4, 0 /* 802BE45C 002BB39C 41 82 00 24 */ beq lbl_802BE480 /* 802BE460 002BB3A0 38 60 00 01 */ li r3, 1 /* 802BE464 002BB3A4 90 64 00 10 */ stw r3, 0x10(r4) /* 802BE468 002BB3A8 88 04 00 1D */ lbz r0, 0x1d(r4) /* 802BE46C 002BB3AC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 802BE470 002BB3B0 98 04 00 1D */ stb r0, 0x1d(r4) /* 802BE474 002BB3B4 88 04 00 1D */ lbz r0, 0x1d(r4) /* 802BE478 002BB3B8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 802BE47C 002BB3BC 98 04 00 1D */ stb r0, 0x1d(r4) lbl_802BE480: /* 802BE480 002BB3C0 7F A3 EB 78 */ mr r3, r29 lbl_802BE484: /* 802BE484 002BB3C4 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 802BE488 002BB3C8 CB E1 00 30 */ lfd f31, 0x30(r1) /* 802BE48C 002BB3CC 39 61 00 30 */ addi r11, r1, 0x30 /* 802BE490 002BB3D0 48 0A 3D 95 */ bl _restgpr_28 /* 802BE494 002BB3D4 80 01 00 44 */ lwz r0, 0x44(r1) /* 802BE498 002BB3D8 7C 08 03 A6 */ mtlr r0 /* 802BE49C 002BB3DC 38 21 00 40 */ addi r1, r1, 0x40 /* 802BE4A0 002BB3E0 4E 80 00 20 */ blr .global Z2SoundObjBase_NS_startCollisionSE Z2SoundObjBase_NS_startCollisionSE: /* 802BE4A4 002BB3E4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802BE4A8 002BB3E8 7C 08 02 A6 */ mflr r0 /* 802BE4AC 002BB3EC 90 01 00 24 */ stw r0, 0x24(r1) /* 802BE4B0 002BB3F0 39 61 00 20 */ addi r11, r1, 0x20 /* 802BE4B4 002BB3F4 48 0A 3D 25 */ bl _savegpr_28 /* 802BE4B8 002BB3F8 7C 7C 1B 78 */ mr r28, r3 /* 802BE4BC 002BB3FC 7C 9D 23 78 */ mr r29, r4 /* 802BE4C0 002BB400 7C BE 2B 78 */ mr r30, r5 /* 802BE4C4 002BB404 28 06 00 00 */ cmplwi r6, 0 /* 802BE4C8 002BB408 41 82 00 14 */ beq lbl_802BE4DC /* 802BE4CC 002BB40C 7C C3 33 78 */ mr r3, r6 /* 802BE4D0 002BB410 38 C0 00 00 */ li r6, 0 /* 802BE4D4 002BB414 4B FF FF D1 */ bl Z2SoundObjBase_NS_startCollisionSE /* 802BE4D8 002BB418 48 00 00 B0 */ b lbl_802BE588 lbl_802BE4DC: /* 802BE4DC 002BB41C 28 1E 00 35 */ cmplwi r30, 0x35 /* 802BE4E0 002BB420 40 81 00 08 */ ble lbl_802BE4E8 /* 802BE4E4 002BB424 3B C0 00 00 */ li r30, 0 lbl_802BE4E8: /* 802BE4E8 002BB428 80 6D 85 E0 */ lwz r3, lbl_80450B60-_SDA_BASE_(r13) /* 802BE4EC 002BB42C 83 E3 02 20 */ lwz r31, 0x220(r3) /* 802BE4F0 002BB430 48 00 00 30 */ b lbl_802BE520 lbl_802BE4F4: /* 802BE4F4 002BB434 80 7F 00 00 */ lwz r3, 0(r31) /* 802BE4F8 002BB438 80 03 00 28 */ lwz r0, 0x28(r3) /* 802BE4FC 002BB43C 90 01 00 0C */ stw r0, 0xc(r1) /* 802BE500 002BB440 7C 1D 00 40 */ cmplw r29, r0 /* 802BE504 002BB444 40 82 00 18 */ bne lbl_802BE51C /* 802BE508 002BB448 80 03 00 30 */ lwz r0, 0x30(r3) /* 802BE50C 002BB44C 7C 1E 00 40 */ cmplw r30, r0 /* 802BE510 002BB450 40 82 00 0C */ bne lbl_802BE51C /* 802BE514 002BB454 38 63 00 10 */ addi r3, r3, 0x10 /* 802BE518 002BB458 4B FE 40 81 */ bl JAISound_NS_stop_X1_ lbl_802BE51C: /* 802BE51C 002BB45C 83 FF 00 0C */ lwz r31, 0xc(r31) lbl_802BE520: /* 802BE520 002BB460 28 1F 00 00 */ cmplwi r31, 0 /* 802BE524 002BB464 40 82 FF D0 */ bne lbl_802BE4F4 /* 802BE528 002BB468 93 A1 00 08 */ stw r29, 8(r1) /* 802BE52C 002BB46C 7F 83 E3 78 */ mr r3, r28 /* 802BE530 002BB470 38 81 00 08 */ addi r4, r1, 8 /* 802BE534 002BB474 7F C5 F3 78 */ mr r5, r30 /* 802BE538 002BB478 38 C0 FF FF */ li r6, -1 /* 802BE53C 002BB47C 4B FF FC 09 */ bl Z2SoundObjBase_NS_startSound /* 802BE540 002BB480 28 03 00 00 */ cmplwi r3, 0 /* 802BE544 002BB484 41 82 00 44 */ beq lbl_802BE588 /* 802BE548 002BB488 80 83 00 00 */ lwz r4, 0(r3) /* 802BE54C 002BB48C 28 04 00 00 */ cmplwi r4, 0 /* 802BE550 002BB490 41 82 00 38 */ beq lbl_802BE588 /* 802BE554 002BB494 93 C4 00 20 */ stw r30, 0x20(r4) /* 802BE558 002BB498 28 1E 00 1E */ cmplwi r30, 0x1e /* 802BE55C 002BB49C 41 80 00 2C */ blt lbl_802BE588 /* 802BE560 002BB4A0 28 1E 00 34 */ cmplwi r30, 0x34 /* 802BE564 002BB4A4 41 81 00 24 */ bgt lbl_802BE588 /* 802BE568 002BB4A8 80 83 00 00 */ lwz r4, 0(r3) /* 802BE56C 002BB4AC 80 A4 00 08 */ lwz r5, 8(r4) /* 802BE570 002BB4B0 28 05 00 00 */ cmplwi r5, 0 /* 802BE574 002BB4B4 41 82 00 14 */ beq lbl_802BE588 /* 802BE578 002BB4B8 38 80 00 08 */ li r4, 8 /* 802BE57C 002BB4BC 88 05 00 11 */ lbz r0, 0x11(r5) /* 802BE580 002BB4C0 50 80 06 BE */ rlwimi r0, r4, 0, 0x1a, 0x1f /* 802BE584 002BB4C4 98 05 00 11 */ stb r0, 0x11(r5) lbl_802BE588: /* 802BE588 002BB4C8 39 61 00 20 */ addi r11, r1, 0x20 /* 802BE58C 002BB4CC 48 0A 3C 99 */ bl _restgpr_28 /* 802BE590 002BB4D0 80 01 00 24 */ lwz r0, 0x24(r1) /* 802BE594 002BB4D4 7C 08 03 A6 */ mtlr r0 /* 802BE598 002BB4D8 38 21 00 20 */ addi r1, r1, 0x20 /* 802BE59C 002BB4DC 4E 80 00 20 */ blr .global Z2DopplerSoundObjBase Z2DopplerSoundObjBase: /* 802BE5A0 002BB4E0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BE5A4 002BB4E4 7C 08 02 A6 */ mflr r0 /* 802BE5A8 002BB4E8 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE5AC 002BB4EC 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BE5B0 002BB4F0 7C 7F 1B 78 */ mr r31, r3 /* 802BE5B4 002BB4F4 4B FF F9 3D */ bl Z2SoundObjBase /* 802BE5B8 002BB4F8 3C 60 80 3D */ lis r3, lbl_803CAD30@ha /* 802BE5BC 002BB4FC 38 03 AD 30 */ addi r0, r3, lbl_803CAD30@l /* 802BE5C0 002BB500 90 1F 00 10 */ stw r0, 0x10(r31) /* 802BE5C4 002BB504 3C 60 80 3A */ lis r3, lbl_8039C230@ha /* 802BE5C8 002BB508 38 63 C2 30 */ addi r3, r3, lbl_8039C230@l /* 802BE5CC 002BB50C E0 23 00 00 */ psq_l f1, 0(r3), 0, qr0 /* 802BE5D0 002BB510 C0 03 00 08 */ lfs f0, 8(r3) /* 802BE5D4 002BB514 F0 3F 00 20 */ psq_st f1, 32(r31), 0, qr0 /* 802BE5D8 002BB518 D0 1F 00 28 */ stfs f0, 0x28(r31) /* 802BE5DC 002BB51C F0 3F 00 2C */ psq_st f1, 44(r31), 0, qr0 /* 802BE5E0 002BB520 D0 1F 00 34 */ stfs f0, 0x34(r31) /* 802BE5E4 002BB524 7F E3 FB 78 */ mr r3, r31 /* 802BE5E8 002BB528 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BE5EC 002BB52C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BE5F0 002BB530 7C 08 03 A6 */ mtlr r0 /* 802BE5F4 002BB534 38 21 00 10 */ addi r1, r1, 0x10 /* 802BE5F8 002BB538 4E 80 00 20 */ blr /* 802BE5FC 002BB53C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BE600 002BB540 7C 08 02 A6 */ mflr r0 /* 802BE604 002BB544 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE608 002BB548 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BE60C 002BB54C 93 C1 00 08 */ stw r30, 8(r1) /* 802BE610 002BB550 7C 7E 1B 79 */ or. r30, r3, r3 /* 802BE614 002BB554 7C 9F 23 78 */ mr r31, r4 /* 802BE618 002BB558 41 82 00 28 */ beq lbl_802BE640 /* 802BE61C 002BB55C 3C 80 80 3D */ lis r4, lbl_803CAD30@ha /* 802BE620 002BB560 38 04 AD 30 */ addi r0, r4, lbl_803CAD30@l /* 802BE624 002BB564 90 1E 00 10 */ stw r0, 0x10(r30) /* 802BE628 002BB568 38 80 00 00 */ li r4, 0 /* 802BE62C 002BB56C 4B FF F9 1D */ bl Z2SoundObjBase_NS_dtor /* 802BE630 002BB570 7F E0 07 35 */ extsh. r0, r31 /* 802BE634 002BB574 40 81 00 0C */ ble lbl_802BE640 /* 802BE638 002BB578 7F C3 F3 78 */ mr r3, r30 /* 802BE63C 002BB57C 48 01 07 01 */ bl __dl__FPv lbl_802BE640: /* 802BE640 002BB580 7F C3 F3 78 */ mr r3, r30 /* 802BE644 002BB584 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BE648 002BB588 83 C1 00 08 */ lwz r30, 8(r1) /* 802BE64C 002BB58C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BE650 002BB590 7C 08 03 A6 */ mtlr r0 /* 802BE654 002BB594 38 21 00 10 */ addi r1, r1, 0x10 /* 802BE658 002BB598 4E 80 00 20 */ blr /* 802BE65C 002BB59C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BE660 002BB5A0 7C 08 02 A6 */ mflr r0 /* 802BE664 002BB5A4 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE668 002BB5A8 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BE66C 002BB5AC 7C 7F 1B 78 */ mr r31, r3 /* 802BE670 002BB5B0 4B FF F9 41 */ bl Z2SoundObjBase_NS_init /* 802BE674 002BB5B4 80 7F 00 18 */ lwz r3, 0x18(r31) /* 802BE678 002BB5B8 28 03 00 00 */ cmplwi r3, 0 /* 802BE67C 002BB5BC 41 82 00 28 */ beq lbl_802BE6A4 /* 802BE680 002BB5C0 E0 23 00 00 */ psq_l f1, 0(r3), 0, qr0 /* 802BE684 002BB5C4 C0 03 00 08 */ lfs f0, 8(r3) /* 802BE688 002BB5C8 F0 3F 00 20 */ psq_st f1, 32(r31), 0, qr0 /* 802BE68C 002BB5CC D0 1F 00 28 */ stfs f0, 0x28(r31) /* 802BE690 002BB5D0 80 7F 00 18 */ lwz r3, 0x18(r31) /* 802BE694 002BB5D4 E0 23 00 00 */ psq_l f1, 0(r3), 0, qr0 /* 802BE698 002BB5D8 C0 03 00 08 */ lfs f0, 8(r3) /* 802BE69C 002BB5DC F0 3F 00 2C */ psq_st f1, 44(r31), 0, qr0 /* 802BE6A0 002BB5E0 D0 1F 00 34 */ stfs f0, 0x34(r31) lbl_802BE6A4: /* 802BE6A4 002BB5E4 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BE6A8 002BB5E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BE6AC 002BB5EC 7C 08 03 A6 */ mtlr r0 /* 802BE6B0 002BB5F0 38 21 00 10 */ addi r1, r1, 0x10 /* 802BE6B4 002BB5F4 4E 80 00 20 */ blr /* 802BE6B8 002BB5F8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BE6BC 002BB5FC 7C 08 02 A6 */ mflr r0 /* 802BE6C0 002BB600 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE6C4 002BB604 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BE6C8 002BB608 7C 7F 1B 78 */ mr r31, r3 /* 802BE6CC 002BB60C 4B FF F9 6D */ bl Z2SoundObjBase_NS_framework /* 802BE6D0 002BB610 80 1F 00 18 */ lwz r0, 0x18(r31) /* 802BE6D4 002BB614 28 00 00 00 */ cmplwi r0, 0 /* 802BE6D8 002BB618 41 82 00 28 */ beq lbl_802BE700 /* 802BE6DC 002BB61C E0 3F 00 2C */ psq_l f1, 44(r31), 0, qr0 /* 802BE6E0 002BB620 C0 1F 00 34 */ lfs f0, 0x34(r31) /* 802BE6E4 002BB624 F0 3F 00 20 */ psq_st f1, 32(r31), 0, qr0 /* 802BE6E8 002BB628 D0 1F 00 28 */ stfs f0, 0x28(r31) /* 802BE6EC 002BB62C 80 7F 00 18 */ lwz r3, 0x18(r31) /* 802BE6F0 002BB630 E0 23 00 00 */ psq_l f1, 0(r3), 0, qr0 /* 802BE6F4 002BB634 C0 03 00 08 */ lfs f0, 8(r3) /* 802BE6F8 002BB638 F0 3F 00 2C */ psq_st f1, 44(r31), 0, qr0 /* 802BE6FC 002BB63C D0 1F 00 34 */ stfs f0, 0x34(r31) lbl_802BE700: /* 802BE700 002BB640 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BE704 002BB644 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BE708 002BB648 7C 08 03 A6 */ mtlr r0 /* 802BE70C 002BB64C 38 21 00 10 */ addi r1, r1, 0x10 /* 802BE710 002BB650 4E 80 00 20 */ blr /* 802BE714 002BB654 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802BE718 002BB658 7C 08 02 A6 */ mflr r0 /* 802BE71C 002BB65C 90 01 00 24 */ stw r0, 0x24(r1) /* 802BE720 002BB660 39 61 00 20 */ addi r11, r1, 0x20 /* 802BE724 002BB664 48 0A 3A B9 */ bl _savegpr_29 /* 802BE728 002BB668 7C 7D 1B 78 */ mr r29, r3 /* 802BE72C 002BB66C 83 E3 00 18 */ lwz r31, 0x18(r3) /* 802BE730 002BB670 38 00 00 00 */ li r0, 0 /* 802BE734 002BB674 90 03 00 18 */ stw r0, 0x18(r3) /* 802BE738 002BB678 80 04 00 00 */ lwz r0, 0(r4) /* 802BE73C 002BB67C 90 01 00 08 */ stw r0, 8(r1) /* 802BE740 002BB680 38 81 00 08 */ addi r4, r1, 8 /* 802BE744 002BB684 4B FF FA 01 */ bl Z2SoundObjBase_NS_startSound /* 802BE748 002BB688 7C 7E 1B 78 */ mr r30, r3 /* 802BE74C 002BB68C 28 1F 00 00 */ cmplwi r31, 0 /* 802BE750 002BB690 41 82 00 3C */ beq lbl_802BE78C /* 802BE754 002BB694 28 1E 00 00 */ cmplwi r30, 0 /* 802BE758 002BB698 41 82 00 34 */ beq lbl_802BE78C /* 802BE75C 002BB69C 80 7E 00 00 */ lwz r3, 0(r30) /* 802BE760 002BB6A0 28 03 00 00 */ cmplwi r3, 0 /* 802BE764 002BB6A4 41 82 00 28 */ beq lbl_802BE78C /* 802BE768 002BB6A8 4B FE 3C E5 */ bl JAISound_NS_acceptsNewAudible /* 802BE76C 002BB6AC 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802BE770 002BB6B0 41 82 00 1C */ beq lbl_802BE78C /* 802BE774 002BB6B4 80 7E 00 00 */ lwz r3, 0(r30) /* 802BE778 002BB6B8 7F E4 FB 78 */ mr r4, r31 /* 802BE77C 002BB6BC 38 BD 00 20 */ addi r5, r29, 0x20 /* 802BE780 002BB6C0 38 C0 00 00 */ li r6, 0 /* 802BE784 002BB6C4 38 E0 00 00 */ li r7, 0 /* 802BE788 002BB6C8 4B FE 3C ED */ bl JAISound_NS_newAudible lbl_802BE78C: /* 802BE78C 002BB6CC 93 FD 00 18 */ stw r31, 0x18(r29) /* 802BE790 002BB6D0 7F C3 F3 78 */ mr r3, r30 /* 802BE794 002BB6D4 39 61 00 20 */ addi r11, r1, 0x20 /* 802BE798 002BB6D8 48 0A 3A 91 */ bl _restgpr_29 /* 802BE79C 002BB6DC 80 01 00 24 */ lwz r0, 0x24(r1) /* 802BE7A0 002BB6E0 7C 08 03 A6 */ mtlr r0 /* 802BE7A4 002BB6E4 38 21 00 20 */ addi r1, r1, 0x20 /* 802BE7A8 002BB6E8 4E 80 00 20 */ blr /* 802BE7AC 002BB6EC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802BE7B0 002BB6F0 7C 08 02 A6 */ mflr r0 /* 802BE7B4 002BB6F4 90 01 00 24 */ stw r0, 0x24(r1) /* 802BE7B8 002BB6F8 39 61 00 20 */ addi r11, r1, 0x20 /* 802BE7BC 002BB6FC 48 0A 3A 21 */ bl _savegpr_29 /* 802BE7C0 002BB700 7C 7D 1B 78 */ mr r29, r3 /* 802BE7C4 002BB704 83 E3 00 18 */ lwz r31, 0x18(r3) /* 802BE7C8 002BB708 38 00 00 00 */ li r0, 0 /* 802BE7CC 002BB70C 90 03 00 18 */ stw r0, 0x18(r3) /* 802BE7D0 002BB710 80 04 00 00 */ lwz r0, 0(r4) /* 802BE7D4 002BB714 90 01 00 08 */ stw r0, 8(r1) /* 802BE7D8 002BB718 38 81 00 08 */ addi r4, r1, 8 /* 802BE7DC 002BB71C 4B FF FA F9 */ bl Z2SoundObjBase_NS_startLevelSound /* 802BE7E0 002BB720 7C 7E 1B 78 */ mr r30, r3 /* 802BE7E4 002BB724 28 1F 00 00 */ cmplwi r31, 0 /* 802BE7E8 002BB728 41 82 00 3C */ beq lbl_802BE824 /* 802BE7EC 002BB72C 28 1E 00 00 */ cmplwi r30, 0 /* 802BE7F0 002BB730 41 82 00 34 */ beq lbl_802BE824 /* 802BE7F4 002BB734 80 7E 00 00 */ lwz r3, 0(r30) /* 802BE7F8 002BB738 28 03 00 00 */ cmplwi r3, 0 /* 802BE7FC 002BB73C 41 82 00 28 */ beq lbl_802BE824 /* 802BE800 002BB740 4B FE 3C 4D */ bl JAISound_NS_acceptsNewAudible /* 802BE804 002BB744 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802BE808 002BB748 41 82 00 1C */ beq lbl_802BE824 /* 802BE80C 002BB74C 80 7E 00 00 */ lwz r3, 0(r30) /* 802BE810 002BB750 7F E4 FB 78 */ mr r4, r31 /* 802BE814 002BB754 38 BD 00 20 */ addi r5, r29, 0x20 /* 802BE818 002BB758 38 C0 00 00 */ li r6, 0 /* 802BE81C 002BB75C 38 E0 00 00 */ li r7, 0 /* 802BE820 002BB760 4B FE 3C 55 */ bl JAISound_NS_newAudible lbl_802BE824: /* 802BE824 002BB764 93 FD 00 18 */ stw r31, 0x18(r29) /* 802BE828 002BB768 7F C3 F3 78 */ mr r3, r30 /* 802BE82C 002BB76C 39 61 00 20 */ addi r11, r1, 0x20 /* 802BE830 002BB770 48 0A 39 F9 */ bl _restgpr_29 /* 802BE834 002BB774 80 01 00 24 */ lwz r0, 0x24(r1) /* 802BE838 002BB778 7C 08 03 A6 */ mtlr r0 /* 802BE83C 002BB77C 38 21 00 20 */ addi r1, r1, 0x20 /* 802BE840 002BB780 4E 80 00 20 */ blr .global Z2SoundObjSimple Z2SoundObjSimple: /* 802BE844 002BB784 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BE848 002BB788 7C 08 02 A6 */ mflr r0 /* 802BE84C 002BB78C 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE850 002BB790 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BE854 002BB794 7C 7F 1B 78 */ mr r31, r3 /* 802BE858 002BB798 4B FF F6 99 */ bl Z2SoundObjBase /* 802BE85C 002BB79C 3C 60 80 3D */ lis r3, lbl_803CAD10@ha /* 802BE860 002BB7A0 38 03 AD 10 */ addi r0, r3, lbl_803CAD10@l /* 802BE864 002BB7A4 90 1F 00 10 */ stw r0, 0x10(r31) /* 802BE868 002BB7A8 7F E3 FB 78 */ mr r3, r31 /* 802BE86C 002BB7AC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BE870 002BB7B0 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BE874 002BB7B4 7C 08 03 A6 */ mtlr r0 /* 802BE878 002BB7B8 38 21 00 10 */ addi r1, r1, 0x10 /* 802BE87C 002BB7BC 4E 80 00 20 */ blr /* 802BE880 002BB7C0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BE884 002BB7C4 7C 08 02 A6 */ mflr r0 /* 802BE888 002BB7C8 90 01 00 14 */ stw r0, 0x14(r1) /* 802BE88C 002BB7CC 4B FF F7 25 */ bl Z2SoundObjBase_NS_init /* 802BE890 002BB7D0 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BE894 002BB7D4 7C 08 03 A6 */ mtlr r0 /* 802BE898 002BB7D8 38 21 00 10 */ addi r1, r1, 0x10 /* 802BE89C 002BB7DC 4E 80 00 20 */ blr /* 802BE8A0 002BB7E0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802BE8A4 002BB7E4 7C 08 02 A6 */ mflr r0 /* 802BE8A8 002BB7E8 90 01 00 44 */ stw r0, 0x44(r1) /* 802BE8AC 002BB7EC DB E1 00 30 */ stfd f31, 0x30(r1) /* 802BE8B0 002BB7F0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 802BE8B4 002BB7F4 39 61 00 30 */ addi r11, r1, 0x30 /* 802BE8B8 002BB7F8 48 0A 39 25 */ bl _savegpr_29 /* 802BE8BC 002BB7FC 7C 9D 23 78 */ mr r29, r4 /* 802BE8C0 002BB800 7C BE 2B 78 */ mr r30, r5 /* 802BE8C4 002BB804 80 04 00 00 */ lwz r0, 0(r4) /* 802BE8C8 002BB808 90 01 00 08 */ stw r0, 8(r1) /* 802BE8CC 002BB80C 38 81 00 08 */ addi r4, r1, 8 /* 802BE8D0 002BB810 4B FF F8 75 */ bl Z2SoundObjBase_NS_startSound /* 802BE8D4 002BB814 7C 7F 1B 78 */ mr r31, r3 /* 802BE8D8 002BB818 80 7D 00 00 */ lwz r3, 0(r29) /* 802BE8DC 002BB81C 3C 03 FF FE */ addis r0, r3, 0xfffe /* 802BE8E0 002BB820 28 00 00 C7 */ cmplwi r0, 0xc7 /* 802BE8E4 002BB824 40 82 00 A8 */ bne lbl_802BE98C /* 802BE8E8 002BB828 28 1F 00 00 */ cmplwi r31, 0 /* 802BE8EC 002BB82C 41 82 00 A0 */ beq lbl_802BE98C /* 802BE8F0 002BB830 80 1F 00 00 */ lwz r0, 0(r31) /* 802BE8F4 002BB834 28 00 00 00 */ cmplwi r0, 0 /* 802BE8F8 002BB838 41 82 00 94 */ beq lbl_802BE98C /* 802BE8FC 002BB83C C8 22 C1 68 */ lfd f1, lbl_80455B68-_SDA2_BASE_(r2) /* 802BE900 002BB840 93 C1 00 14 */ stw r30, 0x14(r1) /* 802BE904 002BB844 3C 00 43 30 */ lis r0, 0x4330 /* 802BE908 002BB848 90 01 00 10 */ stw r0, 0x10(r1) /* 802BE90C 002BB84C C8 01 00 10 */ lfd f0, 0x10(r1) /* 802BE910 002BB850 EC 20 08 28 */ fsubs f1, f0, f1 /* 802BE914 002BB854 C0 42 C1 50 */ lfs f2, lbl_80455B50-_SDA2_BASE_(r2) /* 802BE918 002BB858 C0 62 C1 38 */ lfs f3, lbl_80455B38-_SDA2_BASE_(r2) /* 802BE91C 002BB85C C0 82 C1 54 */ lfs f4, lbl_80455B54-_SDA2_BASE_(r2) /* 802BE920 002BB860 C0 A2 C1 58 */ lfs f5, lbl_80455B58-_SDA2_BASE_(r2) /* 802BE924 002BB864 C0 C2 C1 3C */ lfs f6, lbl_80455B3C-_SDA2_BASE_(r2) /* 802BE928 002BB868 38 60 00 01 */ li r3, 1 /* 802BE92C 002BB86C 4B FE AD C9 */ bl getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign /* 802BE930 002BB870 FF E0 08 90 */ fmr f31, f1 /* 802BE934 002BB874 C8 22 C1 68 */ lfd f1, lbl_80455B68-_SDA2_BASE_(r2) /* 802BE938 002BB878 93 C1 00 1C */ stw r30, 0x1c(r1) /* 802BE93C 002BB87C 3C 00 43 30 */ lis r0, 0x4330 /* 802BE940 002BB880 90 01 00 18 */ stw r0, 0x18(r1) /* 802BE944 002BB884 C8 01 00 18 */ lfd f0, 0x18(r1) /* 802BE948 002BB888 EC 20 08 28 */ fsubs f1, f0, f1 /* 802BE94C 002BB88C C0 42 C1 50 */ lfs f2, lbl_80455B50-_SDA2_BASE_(r2) /* 802BE950 002BB890 C0 62 C1 38 */ lfs f3, lbl_80455B38-_SDA2_BASE_(r2) /* 802BE954 002BB894 C0 82 C1 54 */ lfs f4, lbl_80455B54-_SDA2_BASE_(r2) /* 802BE958 002BB898 C0 A2 C1 5C */ lfs f5, lbl_80455B5C-_SDA2_BASE_(r2) /* 802BE95C 002BB89C C0 C2 C1 60 */ lfs f6, lbl_80455B60-_SDA2_BASE_(r2) /* 802BE960 002BB8A0 38 60 00 01 */ li r3, 1 /* 802BE964 002BB8A4 4B FE AD 91 */ bl getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign /* 802BE968 002BB8A8 80 7F 00 00 */ lwz r3, 0(r31) /* 802BE96C 002BB8AC 38 63 00 48 */ addi r3, r3, 0x48 /* 802BE970 002BB8B0 38 80 00 00 */ li r4, 0 /* 802BE974 002BB8B4 4B FE 44 99 */ bl JAISoundParamsMove_NS_movePitch /* 802BE978 002BB8B8 80 7F 00 00 */ lwz r3, 0(r31) /* 802BE97C 002BB8BC 38 63 00 48 */ addi r3, r3, 0x48 /* 802BE980 002BB8C0 FC 20 F8 90 */ fmr f1, f31 /* 802BE984 002BB8C4 38 80 00 00 */ li r4, 0 /* 802BE988 002BB8C8 4B FE 44 2D */ bl moveVolume__18JAISoundParamsMoveFfUl lbl_802BE98C: /* 802BE98C 002BB8CC 7F E3 FB 78 */ mr r3, r31 /* 802BE990 002BB8D0 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 802BE994 002BB8D4 CB E1 00 30 */ lfd f31, 0x30(r1) /* 802BE998 002BB8D8 39 61 00 30 */ addi r11, r1, 0x30 /* 802BE99C 002BB8DC 48 0A 38 8D */ bl _restgpr_29 /* 802BE9A0 002BB8E0 80 01 00 44 */ lwz r0, 0x44(r1) /* 802BE9A4 002BB8E4 7C 08 03 A6 */ mtlr r0 /* 802BE9A8 002BB8E8 38 21 00 40 */ addi r1, r1, 0x40 /* 802BE9AC 002BB8EC 4E 80 00 20 */ blr /* 802BE9B0 002BB8F0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802BE9B4 002BB8F4 7C 08 02 A6 */ mflr r0 /* 802BE9B8 002BB8F8 90 01 00 44 */ stw r0, 0x44(r1) /* 802BE9BC 002BB8FC DB E1 00 30 */ stfd f31, 0x30(r1) /* 802BE9C0 002BB900 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 802BE9C4 002BB904 39 61 00 30 */ addi r11, r1, 0x30 /* 802BE9C8 002BB908 48 0A 38 15 */ bl _savegpr_29 /* 802BE9CC 002BB90C 7C 9D 23 78 */ mr r29, r4 /* 802BE9D0 002BB910 7C BE 2B 78 */ mr r30, r5 /* 802BE9D4 002BB914 80 04 00 00 */ lwz r0, 0(r4) /* 802BE9D8 002BB918 90 01 00 08 */ stw r0, 8(r1) /* 802BE9DC 002BB91C 38 81 00 08 */ addi r4, r1, 8 /* 802BE9E0 002BB920 4B FF F8 F5 */ bl Z2SoundObjBase_NS_startLevelSound /* 802BE9E4 002BB924 7C 7F 1B 79 */ or. r31, r3, r3 /* 802BE9E8 002BB928 41 82 01 2C */ beq lbl_802BEB14 /* 802BE9EC 002BB92C 80 1F 00 00 */ lwz r0, 0(r31) /* 802BE9F0 002BB930 28 00 00 00 */ cmplwi r0, 0 /* 802BE9F4 002BB934 41 82 01 20 */ beq lbl_802BEB14 /* 802BE9F8 002BB938 C0 C2 C1 3C */ lfs f6, lbl_80455B3C-_SDA2_BASE_(r2) /* 802BE9FC 002BB93C FF E0 30 90 */ fmr f31, f6 /* 802BEA00 002BB940 80 9D 00 00 */ lwz r4, 0(r29) /* 802BEA04 002BB944 3C 60 00 08 */ lis r3, 0x0008025C@ha /* 802BEA08 002BB948 38 03 02 5C */ addi r0, r3, 0x0008025C@l /* 802BEA0C 002BB94C 7C 04 00 00 */ cmpw r4, r0 /* 802BEA10 002BB950 41 82 00 8C */ beq lbl_802BEA9C /* 802BEA14 002BB954 40 80 00 D8 */ bge lbl_802BEAEC /* 802BEA18 002BB958 3C 60 00 02 */ lis r3, 0x000200C6@ha /* 802BEA1C 002BB95C 38 03 00 C6 */ addi r0, r3, 0x000200C6@l /* 802BEA20 002BB960 7C 04 00 00 */ cmpw r4, r0 /* 802BEA24 002BB964 41 82 00 08 */ beq lbl_802BEA2C /* 802BEA28 002BB968 48 00 00 C4 */ b lbl_802BEAEC lbl_802BEA2C: /* 802BEA2C 002BB96C C8 22 C1 68 */ lfd f1, lbl_80455B68-_SDA2_BASE_(r2) /* 802BEA30 002BB970 93 C1 00 14 */ stw r30, 0x14(r1) /* 802BEA34 002BB974 3C 00 43 30 */ lis r0, 0x4330 /* 802BEA38 002BB978 90 01 00 10 */ stw r0, 0x10(r1) /* 802BEA3C 002BB97C C8 01 00 10 */ lfd f0, 0x10(r1) /* 802BEA40 002BB980 EC 20 08 28 */ fsubs f1, f0, f1 /* 802BEA44 002BB984 C0 42 C1 50 */ lfs f2, lbl_80455B50-_SDA2_BASE_(r2) /* 802BEA48 002BB988 C0 62 C1 38 */ lfs f3, lbl_80455B38-_SDA2_BASE_(r2) /* 802BEA4C 002BB98C C0 82 C1 54 */ lfs f4, lbl_80455B54-_SDA2_BASE_(r2) /* 802BEA50 002BB990 C0 A2 C1 58 */ lfs f5, lbl_80455B58-_SDA2_BASE_(r2) /* 802BEA54 002BB994 38 60 00 01 */ li r3, 1 /* 802BEA58 002BB998 4B FE AC 9D */ bl getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign /* 802BEA5C 002BB99C FF E0 08 90 */ fmr f31, f1 /* 802BEA60 002BB9A0 C8 22 C1 68 */ lfd f1, lbl_80455B68-_SDA2_BASE_(r2) /* 802BEA64 002BB9A4 93 C1 00 1C */ stw r30, 0x1c(r1) /* 802BEA68 002BB9A8 3C 00 43 30 */ lis r0, 0x4330 /* 802BEA6C 002BB9AC 90 01 00 18 */ stw r0, 0x18(r1) /* 802BEA70 002BB9B0 C8 01 00 18 */ lfd f0, 0x18(r1) /* 802BEA74 002BB9B4 EC 20 08 28 */ fsubs f1, f0, f1 /* 802BEA78 002BB9B8 C0 42 C1 50 */ lfs f2, lbl_80455B50-_SDA2_BASE_(r2) /* 802BEA7C 002BB9BC C0 62 C1 38 */ lfs f3, lbl_80455B38-_SDA2_BASE_(r2) /* 802BEA80 002BB9C0 C0 82 C1 54 */ lfs f4, lbl_80455B54-_SDA2_BASE_(r2) /* 802BEA84 002BB9C4 C0 A2 C1 5C */ lfs f5, lbl_80455B5C-_SDA2_BASE_(r2) /* 802BEA88 002BB9C8 C0 C2 C1 60 */ lfs f6, lbl_80455B60-_SDA2_BASE_(r2) /* 802BEA8C 002BB9CC 38 60 00 01 */ li r3, 1 /* 802BEA90 002BB9D0 4B FE AC 65 */ bl getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign /* 802BEA94 002BB9D4 FC C0 08 90 */ fmr f6, f1 /* 802BEA98 002BB9D8 48 00 00 54 */ b lbl_802BEAEC lbl_802BEA9C: /* 802BEA9C 002BB9DC 28 1E 00 64 */ cmplwi r30, 0x64 /* 802BEAA0 002BB9E0 40 81 00 0C */ ble lbl_802BEAAC /* 802BEAA4 002BB9E4 C0 C2 C1 70 */ lfs f6, lbl_80455B70-_SDA2_BASE_(r2) /* 802BEAA8 002BB9E8 48 00 00 44 */ b lbl_802BEAEC lbl_802BEAAC: /* 802BEAAC 002BB9EC 28 1E 00 15 */ cmplwi r30, 0x15 /* 802BEAB0 002BB9F0 40 81 00 3C */ ble lbl_802BEAEC /* 802BEAB4 002BB9F4 C8 22 C1 68 */ lfd f1, lbl_80455B68-_SDA2_BASE_(r2) /* 802BEAB8 002BB9F8 93 C1 00 1C */ stw r30, 0x1c(r1) /* 802BEABC 002BB9FC 3C 00 43 30 */ lis r0, 0x4330 /* 802BEAC0 002BBA00 90 01 00 18 */ stw r0, 0x18(r1) /* 802BEAC4 002BBA04 C8 01 00 18 */ lfd f0, 0x18(r1) /* 802BEAC8 002BBA08 EC 20 08 28 */ fsubs f1, f0, f1 /* 802BEACC 002BBA0C C0 42 C1 74 */ lfs f2, lbl_80455B74-_SDA2_BASE_(r2) /* 802BEAD0 002BBA10 C0 62 C1 78 */ lfs f3, lbl_80455B78-_SDA2_BASE_(r2) /* 802BEAD4 002BBA14 C0 82 C1 58 */ lfs f4, lbl_80455B58-_SDA2_BASE_(r2) /* 802BEAD8 002BBA18 FC A0 30 90 */ fmr f5, f6 /* 802BEADC 002BBA1C C0 C2 C1 7C */ lfs f6, lbl_80455B7C-_SDA2_BASE_(r2) /* 802BEAE0 002BBA20 38 60 00 00 */ li r3, 0 /* 802BEAE4 002BBA24 4B FE AC 11 */ bl getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign /* 802BEAE8 002BBA28 FC C0 08 90 */ fmr f6, f1 lbl_802BEAEC: /* 802BEAEC 002BBA2C 80 7F 00 00 */ lwz r3, 0(r31) /* 802BEAF0 002BBA30 38 63 00 48 */ addi r3, r3, 0x48 /* 802BEAF4 002BBA34 FC 20 30 90 */ fmr f1, f6 /* 802BEAF8 002BBA38 38 80 00 00 */ li r4, 0 /* 802BEAFC 002BBA3C 4B FE 43 11 */ bl JAISoundParamsMove_NS_movePitch /* 802BEB00 002BBA40 80 7F 00 00 */ lwz r3, 0(r31) /* 802BEB04 002BBA44 38 63 00 48 */ addi r3, r3, 0x48 /* 802BEB08 002BBA48 FC 20 F8 90 */ fmr f1, f31 /* 802BEB0C 002BBA4C 38 80 00 00 */ li r4, 0 /* 802BEB10 002BBA50 4B FE 42 A5 */ bl moveVolume__18JAISoundParamsMoveFfUl lbl_802BEB14: /* 802BEB14 002BBA54 7F E3 FB 78 */ mr r3, r31 /* 802BEB18 002BBA58 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 802BEB1C 002BBA5C CB E1 00 30 */ lfd f31, 0x30(r1) /* 802BEB20 002BBA60 39 61 00 30 */ addi r11, r1, 0x30 /* 802BEB24 002BBA64 48 0A 37 05 */ bl _restgpr_29 /* 802BEB28 002BBA68 80 01 00 44 */ lwz r0, 0x44(r1) /* 802BEB2C 002BBA6C 7C 08 03 A6 */ mtlr r0 /* 802BEB30 002BBA70 38 21 00 40 */ addi r1, r1, 0x40 /* 802BEB34 002BBA74 4E 80 00 20 */ blr /* 802BEB38 002BBA78 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BEB3C 002BBA7C 7C 08 02 A6 */ mflr r0 /* 802BEB40 002BBA80 90 01 00 14 */ stw r0, 0x14(r1) /* 802BEB44 002BBA84 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BEB48 002BBA88 7C 7F 1B 78 */ mr r31, r3 /* 802BEB4C 002BBA8C 4B FF FA 55 */ bl Z2DopplerSoundObjBase /* 802BEB50 002BBA90 3C 60 80 3D */ lis r3, lbl_803CACF0@ha /* 802BEB54 002BBA94 38 03 AC F0 */ addi r0, r3, lbl_803CACF0@l /* 802BEB58 002BBA98 90 1F 00 10 */ stw r0, 0x10(r31) /* 802BEB5C 002BBA9C 7F E3 FB 78 */ mr r3, r31 /* 802BEB60 002BBAA0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BEB64 002BBAA4 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BEB68 002BBAA8 7C 08 03 A6 */ mtlr r0 /* 802BEB6C 002BBAAC 38 21 00 10 */ addi r1, r1, 0x10 /* 802BEB70 002BBAB0 4E 80 00 20 */ blr /* 802BEB74 002BBAB4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BEB78 002BBAB8 7C 08 02 A6 */ mflr r0 /* 802BEB7C 002BBABC 90 01 00 14 */ stw r0, 0x14(r1) /* 802BEB80 002BBAC0 4B FF F4 31 */ bl Z2SoundObjBase_NS_init /* 802BEB84 002BBAC4 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BEB88 002BBAC8 7C 08 03 A6 */ mtlr r0 /* 802BEB8C 002BBACC 38 21 00 10 */ addi r1, r1, 0x10 /* 802BEB90 002BBAD0 4E 80 00 20 */ blr .global Z2SoundObjAnime Z2SoundObjAnime: /* 802BEB94 002BBAD4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BEB98 002BBAD8 7C 08 02 A6 */ mflr r0 /* 802BEB9C 002BBADC 90 01 00 14 */ stw r0, 0x14(r1) /* 802BEBA0 002BBAE0 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BEBA4 002BBAE4 7C 7F 1B 78 */ mr r31, r3 /* 802BEBA8 002BBAE8 4B FF F3 49 */ bl Z2SoundObjBase /* 802BEBAC 002BBAEC 3C 60 80 3D */ lis r3, lbl_803CACD0@ha /* 802BEBB0 002BBAF0 38 03 AC D0 */ addi r0, r3, lbl_803CACD0@l /* 802BEBB4 002BBAF4 90 1F 00 10 */ stw r0, 0x10(r31) /* 802BEBB8 002BBAF8 38 00 00 00 */ li r0, 0 /* 802BEBBC 002BBAFC 90 1F 00 20 */ stw r0, 0x20(r31) /* 802BEBC0 002BBB00 98 1F 00 44 */ stb r0, 0x44(r31) /* 802BEBC4 002BBB04 7F E3 FB 78 */ mr r3, r31 /* 802BEBC8 002BBB08 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BEBCC 002BBB0C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BEBD0 002BBB10 7C 08 03 A6 */ mtlr r0 /* 802BEBD4 002BBB14 38 21 00 10 */ addi r1, r1, 0x10 /* 802BEBD8 002BBB18 4E 80 00 20 */ blr /* 802BEBDC 002BBB1C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BEBE0 002BBB20 7C 08 02 A6 */ mflr r0 /* 802BEBE4 002BBB24 90 01 00 14 */ stw r0, 0x14(r1) /* 802BEBE8 002BBB28 4B FF F3 C9 */ bl Z2SoundObjBase_NS_init /* 802BEBEC 002BBB2C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BEBF0 002BBB30 7C 08 03 A6 */ mtlr r0 /* 802BEBF4 002BBB34 38 21 00 10 */ addi r1, r1, 0x10 /* 802BEBF8 002BBB38 4E 80 00 20 */ blr .global Z2SoundObjAnime_NS_initAnime Z2SoundObjAnime_NS_initAnime: /* 802BEBFC 002BBB3C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802BEC00 002BBB40 7C 08 02 A6 */ mflr r0 /* 802BEC04 002BBB44 90 01 00 44 */ stw r0, 0x44(r1) /* 802BEC08 002BBB48 DB E1 00 30 */ stfd f31, 0x30(r1) /* 802BEC0C 002BBB4C F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 802BEC10 002BBB50 DB C1 00 20 */ stfd f30, 0x20(r1) /* 802BEC14 002BBB54 F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 802BEC18 002BBB58 39 61 00 20 */ addi r11, r1, 0x20 /* 802BEC1C 002BBB5C 48 0A 35 C1 */ bl _savegpr_29 /* 802BEC20 002BBB60 7C 7F 1B 78 */ mr r31, r3 /* 802BEC24 002BBB64 7C 9D 23 78 */ mr r29, r4 /* 802BEC28 002BBB68 7C BE 2B 78 */ mr r30, r5 /* 802BEC2C 002BBB6C FF C0 08 90 */ fmr f30, f1 /* 802BEC30 002BBB70 FF E0 10 90 */ fmr f31, f2 /* 802BEC34 002BBB74 48 00 01 35 */ bl Z2SoundObjAnime_NS_ageSounds_ /* 802BEC38 002BBB78 93 BF 00 20 */ stw r29, 0x20(r31) /* 802BEC3C 002BBB7C 80 1F 00 20 */ lwz r0, 0x20(r31) /* 802BEC40 002BBB80 28 00 00 00 */ cmplwi r0, 0 /* 802BEC44 002BBB84 41 82 00 FC */ beq lbl_802BED40 /* 802BEC48 002BBB88 57 C0 06 3E */ clrlwi r0, r30, 0x18 /* 802BEC4C 002BBB8C 7C 00 00 34 */ cntlzw r0, r0 /* 802BEC50 002BBB90 54 00 D9 7E */ srwi r0, r0, 5 /* 802BEC54 002BBB94 98 1F 00 44 */ stb r0, 0x44(r31) /* 802BEC58 002BBB98 38 60 00 00 */ li r3, 0 /* 802BEC5C 002BBB9C 90 7F 00 3C */ stw r3, 0x3c(r31) /* 802BEC60 002BBBA0 88 1F 00 44 */ lbz r0, 0x44(r31) /* 802BEC64 002BBBA4 28 00 00 00 */ cmplwi r0, 0 /* 802BEC68 002BBBA8 41 82 00 70 */ beq lbl_802BECD8 /* 802BEC6C 002BBBAC 80 9F 00 20 */ lwz r4, 0x20(r31) /* 802BEC70 002BBBB0 80 64 00 04 */ lwz r3, 4(r4) /* 802BEC74 002BBBB4 28 03 00 00 */ cmplwi r3, 0 /* 802BEC78 002BBBB8 41 82 00 18 */ beq lbl_802BEC90 /* 802BEC7C 002BBBBC 81 83 00 00 */ lwz r12, 0(r3) /* 802BEC80 002BBBC0 81 8C 00 10 */ lwz r12, 0x10(r12) /* 802BEC84 002BBBC4 7D 89 03 A6 */ mtctr r12 /* 802BEC88 002BBBC8 4E 80 04 21 */ bctrl /* 802BEC8C 002BBBCC 48 00 00 08 */ b lbl_802BEC94 lbl_802BEC90: /* 802BEC90 002BBBD0 A0 64 00 00 */ lhz r3, 0(r4) lbl_802BEC94: /* 802BEC94 002BBBD4 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 802BEC98 002BBBD8 38 03 FF FF */ addi r0, r3, -1 /* 802BEC9C 002BBBDC 90 1F 00 40 */ stw r0, 0x40(r31) /* 802BECA0 002BBBE0 3C 60 80 45 */ lis r3, lbl_80450AE8@ha /* 802BECA4 002BBBE4 C0 03 0A E8 */ lfs f0, lbl_80450AE8@l(r3) /* 802BECA8 002BBBE8 D0 1F 00 28 */ stfs f0, 0x28(r31) /* 802BECAC 002BBBEC C0 22 C1 50 */ lfs f1, lbl_80455B50-_SDA2_BASE_(r2) /* 802BECB0 002BBBF0 D0 3F 00 2C */ stfs f1, 0x2c(r31) /* 802BECB4 002BBBF4 80 7F 00 20 */ lwz r3, 0x20(r31) /* 802BECB8 002BBBF8 4B FE 82 B9 */ bl JAUSoundAnimation_NS_getStartSoundIndex /* 802BECBC 002BBBFC 90 7F 00 34 */ stw r3, 0x34(r31) /* 802BECC0 002BBC00 D3 DF 00 30 */ stfs f30, 0x30(r31) /* 802BECC4 002BBC04 80 7F 00 20 */ lwz r3, 0x20(r31) /* 802BECC8 002BBC08 FC 20 F0 90 */ fmr f1, f30 /* 802BECCC 002BBC0C 4B FE 83 79 */ bl JAUSoundAnimation_NS_getEndSoundIndex /* 802BECD0 002BBC10 90 7F 00 38 */ stw r3, 0x38(r31) /* 802BECD4 002BBC14 48 00 00 38 */ b lbl_802BED0C lbl_802BECD8: /* 802BECD8 002BBC18 90 7F 00 40 */ stw r3, 0x40(r31) /* 802BECDC 002BBC1C C0 02 C1 50 */ lfs f0, lbl_80455B50-_SDA2_BASE_(r2) /* 802BECE0 002BBC20 D0 1F 00 28 */ stfs f0, 0x28(r31) /* 802BECE4 002BBC24 D3 DF 00 2C */ stfs f30, 0x2c(r31) /* 802BECE8 002BBC28 80 7F 00 20 */ lwz r3, 0x20(r31) /* 802BECEC 002BBC2C FC 20 F0 90 */ fmr f1, f30 /* 802BECF0 002BBC30 4B FE 82 81 */ bl JAUSoundAnimation_NS_getStartSoundIndex /* 802BECF4 002BBC34 90 7F 00 34 */ stw r3, 0x34(r31) /* 802BECF8 002BBC38 C0 22 C1 50 */ lfs f1, lbl_80455B50-_SDA2_BASE_(r2) /* 802BECFC 002BBC3C D0 3F 00 30 */ stfs f1, 0x30(r31) /* 802BED00 002BBC40 80 7F 00 20 */ lwz r3, 0x20(r31) /* 802BED04 002BBC44 4B FE 83 41 */ bl JAUSoundAnimation_NS_getEndSoundIndex /* 802BED08 002BBC48 90 7F 00 38 */ stw r3, 0x38(r31) lbl_802BED0C: /* 802BED0C 002BBC4C D3 FF 00 28 */ stfs f31, 0x28(r31) /* 802BED10 002BBC50 80 7F 00 20 */ lwz r3, 0x20(r31) /* 802BED14 002BBC54 FC 20 F8 90 */ fmr f1, f31 /* 802BED18 002BBC58 4B FE 82 59 */ bl JAUSoundAnimation_NS_getStartSoundIndex /* 802BED1C 002BBC5C 90 7F 00 40 */ stw r3, 0x40(r31) /* 802BED20 002BBC60 88 1F 00 44 */ lbz r0, 0x44(r31) /* 802BED24 002BBC64 28 00 00 00 */ cmplwi r0, 0 /* 802BED28 002BBC68 41 82 00 18 */ beq lbl_802BED40 /* 802BED2C 002BBC6C 80 7F 00 40 */ lwz r3, 0x40(r31) /* 802BED30 002BBC70 2C 03 00 00 */ cmpwi r3, 0 /* 802BED34 002BBC74 40 81 00 0C */ ble lbl_802BED40 /* 802BED38 002BBC78 38 03 FF FF */ addi r0, r3, -1 /* 802BED3C 002BBC7C 90 1F 00 40 */ stw r0, 0x40(r31) lbl_802BED40: /* 802BED40 002BBC80 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 802BED44 002BBC84 CB E1 00 30 */ lfd f31, 0x30(r1) /* 802BED48 002BBC88 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 802BED4C 002BBC8C CB C1 00 20 */ lfd f30, 0x20(r1) /* 802BED50 002BBC90 39 61 00 20 */ addi r11, r1, 0x20 /* 802BED54 002BBC94 48 0A 34 D5 */ bl _restgpr_29 /* 802BED58 002BBC98 80 01 00 44 */ lwz r0, 0x44(r1) /* 802BED5C 002BBC9C 7C 08 03 A6 */ mtlr r0 /* 802BED60 002BBCA0 38 21 00 40 */ addi r1, r1, 0x40 /* 802BED64 002BBCA4 4E 80 00 20 */ blr .global Z2SoundObjAnime_NS_ageSounds_ Z2SoundObjAnime_NS_ageSounds_: /* 802BED68 002BBCA8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802BED6C 002BBCAC 7C 08 02 A6 */ mflr r0 /* 802BED70 002BBCB0 90 01 00 14 */ stw r0, 0x14(r1) /* 802BED74 002BBCB4 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BED78 002BBCB8 93 C1 00 08 */ stw r30, 8(r1) /* 802BED7C 002BBCBC 7C 7F 1B 78 */ mr r31, r3 /* 802BED80 002BBCC0 3B C0 00 00 */ li r30, 0 /* 802BED84 002BBCC4 48 00 01 2C */ b lbl_802BEEB0 lbl_802BED88: /* 802BED88 002BBCC8 7F E3 FB 78 */ mr r3, r31 /* 802BED8C 002BBCCC 7F C4 F3 78 */ mr r4, r30 /* 802BED90 002BBCD0 48 01 D4 7D */ bl getNthLink__10JSUPtrListCFUl /* 802BED94 002BBCD4 28 03 00 00 */ cmplwi r3, 0 /* 802BED98 002BBCD8 41 82 00 08 */ beq lbl_802BEDA0 /* 802BED9C 002BBCDC 38 63 FF FC */ addi r3, r3, -4 lbl_802BEDA0: /* 802BEDA0 002BBCE0 80 03 00 00 */ lwz r0, 0(r3) /* 802BEDA4 002BBCE4 28 00 00 00 */ cmplwi r0, 0 /* 802BEDA8 002BBCE8 41 82 01 04 */ beq lbl_802BEEAC /* 802BEDAC 002BBCEC 7F E3 FB 78 */ mr r3, r31 /* 802BEDB0 002BBCF0 7F C4 F3 78 */ mr r4, r30 /* 802BEDB4 002BBCF4 48 01 D4 59 */ bl getNthLink__10JSUPtrListCFUl /* 802BEDB8 002BBCF8 28 03 00 00 */ cmplwi r3, 0 /* 802BEDBC 002BBCFC 41 82 00 08 */ beq lbl_802BEDC4 /* 802BEDC0 002BBD00 38 63 FF FC */ addi r3, r3, -4 lbl_802BEDC4: /* 802BEDC4 002BBD04 80 63 00 00 */ lwz r3, 0(r3) /* 802BEDC8 002BBD08 88 03 00 1F */ lbz r0, 0x1f(r3) /* 802BEDCC 002BBD0C 54 00 E7 BE */ rlwinm r0, r0, 0x1c, 0x1e, 0x1f /* 802BEDD0 002BBD10 2C 00 00 01 */ cmpwi r0, 1 /* 802BEDD4 002BBD14 41 82 00 10 */ beq lbl_802BEDE4 /* 802BEDD8 002BBD18 40 80 00 D4 */ bge lbl_802BEEAC /* 802BEDDC 002BBD1C 48 00 00 D0 */ b lbl_802BEEAC /* 802BEDE0 002BBD20 48 00 00 CC */ b lbl_802BEEAC lbl_802BEDE4: /* 802BEDE4 002BBD24 7F E3 FB 78 */ mr r3, r31 /* 802BEDE8 002BBD28 7F C4 F3 78 */ mr r4, r30 /* 802BEDEC 002BBD2C 48 01 D4 21 */ bl getNthLink__10JSUPtrListCFUl /* 802BEDF0 002BBD30 28 03 00 00 */ cmplwi r3, 0 /* 802BEDF4 002BBD34 41 82 00 08 */ beq lbl_802BEDFC /* 802BEDF8 002BBD38 38 63 FF FC */ addi r3, r3, -4 lbl_802BEDFC: /* 802BEDFC 002BBD3C 80 63 00 00 */ lwz r3, 0(r3) /* 802BEE00 002BBD40 88 03 00 1D */ lbz r0, 0x1d(r3) /* 802BEE04 002BBD44 54 00 D7 FF */ rlwinm. r0, r0, 0x1a, 0x1f, 0x1f /* 802BEE08 002BBD48 41 82 00 28 */ beq lbl_802BEE30 /* 802BEE0C 002BBD4C 7F E3 FB 78 */ mr r3, r31 /* 802BEE10 002BBD50 7F C4 F3 78 */ mr r4, r30 /* 802BEE14 002BBD54 48 01 D3 F9 */ bl getNthLink__10JSUPtrListCFUl /* 802BEE18 002BBD58 28 03 00 00 */ cmplwi r3, 0 /* 802BEE1C 002BBD5C 41 82 00 08 */ beq lbl_802BEE24 /* 802BEE20 002BBD60 38 63 FF FC */ addi r3, r3, -4 lbl_802BEE24: /* 802BEE24 002BBD64 80 63 00 00 */ lwz r3, 0(r3) /* 802BEE28 002BBD68 4B FE 37 71 */ bl JAISound_NS_stop_X1_ /* 802BEE2C 002BBD6C 48 00 00 80 */ b lbl_802BEEAC lbl_802BEE30: /* 802BEE30 002BBD70 7F E3 FB 78 */ mr r3, r31 /* 802BEE34 002BBD74 7F C4 F3 78 */ mr r4, r30 /* 802BEE38 002BBD78 48 01 D3 D5 */ bl getNthLink__10JSUPtrListCFUl /* 802BEE3C 002BBD7C 28 03 00 00 */ cmplwi r3, 0 /* 802BEE40 002BBD80 41 82 00 08 */ beq lbl_802BEE48 /* 802BEE44 002BBD84 38 63 FF FC */ addi r3, r3, -4 lbl_802BEE48: /* 802BEE48 002BBD88 80 63 00 00 */ lwz r3, 0(r3) /* 802BEE4C 002BBD8C 80 63 00 20 */ lwz r3, 0x20(r3) /* 802BEE50 002BBD90 80 03 00 10 */ lwz r0, 0x10(r3) /* 802BEE54 002BBD94 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d /* 802BEE58 002BBD98 41 82 00 28 */ beq lbl_802BEE80 /* 802BEE5C 002BBD9C 7F E3 FB 78 */ mr r3, r31 /* 802BEE60 002BBDA0 7F C4 F3 78 */ mr r4, r30 /* 802BEE64 002BBDA4 48 01 D3 A9 */ bl getNthLink__10JSUPtrListCFUl /* 802BEE68 002BBDA8 28 03 00 00 */ cmplwi r3, 0 /* 802BEE6C 002BBDAC 41 82 00 08 */ beq lbl_802BEE74 /* 802BEE70 002BBDB0 38 63 FF FC */ addi r3, r3, -4 lbl_802BEE74: /* 802BEE74 002BBDB4 80 63 00 00 */ lwz r3, 0(r3) /* 802BEE78 002BBDB8 4B FE 37 21 */ bl JAISound_NS_stop_X1_ /* 802BEE7C 002BBDBC 48 00 00 30 */ b lbl_802BEEAC lbl_802BEE80: /* 802BEE80 002BBDC0 7F E3 FB 78 */ mr r3, r31 /* 802BEE84 002BBDC4 7F C4 F3 78 */ mr r4, r30 /* 802BEE88 002BBDC8 48 01 D3 85 */ bl getNthLink__10JSUPtrListCFUl /* 802BEE8C 002BBDCC 28 03 00 00 */ cmplwi r3, 0 /* 802BEE90 002BBDD0 41 82 00 08 */ beq lbl_802BEE98 /* 802BEE94 002BBDD4 38 63 FF FC */ addi r3, r3, -4 lbl_802BEE98: /* 802BEE98 002BBDD8 80 83 00 00 */ lwz r4, 0(r3) /* 802BEE9C 002BBDDC 38 60 00 02 */ li r3, 2 /* 802BEEA0 002BBDE0 88 04 00 1F */ lbz r0, 0x1f(r4) /* 802BEEA4 002BBDE4 50 60 26 B6 */ rlwimi r0, r3, 4, 0x1a, 0x1b /* 802BEEA8 002BBDE8 98 04 00 1F */ stb r0, 0x1f(r4) lbl_802BEEAC: /* 802BEEAC 002BBDEC 3B DE 00 01 */ addi r30, r30, 1 lbl_802BEEB0: /* 802BEEB0 002BBDF0 80 1F 00 08 */ lwz r0, 8(r31) /* 802BEEB4 002BBDF4 7C 1E 00 00 */ cmpw r30, r0 /* 802BEEB8 002BBDF8 41 80 FE D0 */ blt lbl_802BED88 /* 802BEEBC 002BBDFC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BEEC0 002BBE00 83 C1 00 08 */ lwz r30, 8(r1) /* 802BEEC4 002BBE04 80 01 00 14 */ lwz r0, 0x14(r1) /* 802BEEC8 002BBE08 7C 08 03 A6 */ mtlr r0 /* 802BEECC 002BBE0C 38 21 00 10 */ addi r1, r1, 0x10 /* 802BEED0 002BBE10 4E 80 00 20 */ blr .global Z2SoundObjAnime_NS_updateAnime Z2SoundObjAnime_NS_updateAnime: /* 802BEED4 002BBE14 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802BEED8 002BBE18 7C 08 02 A6 */ mflr r0 /* 802BEEDC 002BBE1C 90 01 00 44 */ stw r0, 0x44(r1) /* 802BEEE0 002BBE20 DB E1 00 30 */ stfd f31, 0x30(r1) /* 802BEEE4 002BBE24 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 802BEEE8 002BBE28 DB C1 00 20 */ stfd f30, 0x20(r1) /* 802BEEEC 002BBE2C F3 C1 00 28 */ psq_st f30, 40(r1), 0, qr0 /* 802BEEF0 002BBE30 39 61 00 20 */ addi r11, r1, 0x20 /* 802BEEF4 002BBE34 48 0A 32 E9 */ bl _savegpr_29 /* 802BEEF8 002BBE38 7C 7F 1B 78 */ mr r31, r3 /* 802BEEFC 002BBE3C FF C0 08 90 */ fmr f30, f1 /* 802BEF00 002BBE40 FF E0 10 90 */ fmr f31, f2 /* 802BEF04 002BBE44 3B C0 00 00 */ li r30, 0 /* 802BEF08 002BBE48 48 00 00 98 */ b lbl_802BEFA0 lbl_802BEF0C: /* 802BEF0C 002BBE4C 7F E3 FB 78 */ mr r3, r31 /* 802BEF10 002BBE50 7F C4 F3 78 */ mr r4, r30 /* 802BEF14 002BBE54 48 01 D2 F9 */ bl getNthLink__10JSUPtrListCFUl /* 802BEF18 002BBE58 28 03 00 00 */ cmplwi r3, 0 /* 802BEF1C 002BBE5C 41 82 00 08 */ beq lbl_802BEF24 /* 802BEF20 002BBE60 38 63 FF FC */ addi r3, r3, -4 lbl_802BEF24: /* 802BEF24 002BBE64 80 03 00 00 */ lwz r0, 0(r3) /* 802BEF28 002BBE68 28 00 00 00 */ cmplwi r0, 0 /* 802BEF2C 002BBE6C 41 82 00 70 */ beq lbl_802BEF9C /* 802BEF30 002BBE70 7F E3 FB 78 */ mr r3, r31 /* 802BEF34 002BBE74 7F C4 F3 78 */ mr r4, r30 /* 802BEF38 002BBE78 48 01 D2 D5 */ bl getNthLink__10JSUPtrListCFUl /* 802BEF3C 002BBE7C 28 03 00 00 */ cmplwi r3, 0 /* 802BEF40 002BBE80 41 82 00 08 */ beq lbl_802BEF48 /* 802BEF44 002BBE84 38 63 FF FC */ addi r3, r3, -4 lbl_802BEF48: /* 802BEF48 002BBE88 80 63 00 00 */ lwz r3, 0(r3) /* 802BEF4C 002BBE8C 88 03 00 1F */ lbz r0, 0x1f(r3) /* 802BEF50 002BBE90 54 00 E7 BF */ rlwinm. r0, r0, 0x1c, 0x1e, 0x1f /* 802BEF54 002BBE94 41 82 00 48 */ beq lbl_802BEF9C /* 802BEF58 002BBE98 83 BF 00 18 */ lwz r29, 0x18(r31) /* 802BEF5C 002BBE9C 7F E3 FB 78 */ mr r3, r31 /* 802BEF60 002BBEA0 7F C4 F3 78 */ mr r4, r30 /* 802BEF64 002BBEA4 48 01 D2 A9 */ bl getNthLink__10JSUPtrListCFUl /* 802BEF68 002BBEA8 28 03 00 00 */ cmplwi r3, 0 /* 802BEF6C 002BBEAC 41 82 00 08 */ beq lbl_802BEF74 /* 802BEF70 002BBEB0 38 63 FF FC */ addi r3, r3, -4 lbl_802BEF74: /* 802BEF74 002BBEB4 80 63 00 00 */ lwz r3, 0(r3) /* 802BEF78 002BBEB8 80 63 00 08 */ lwz r3, 8(r3) /* 802BEF7C 002BBEBC 28 03 00 00 */ cmplwi r3, 0 /* 802BEF80 002BBEC0 41 82 00 1C */ beq lbl_802BEF9C /* 802BEF84 002BBEC4 C0 1D 00 00 */ lfs f0, 0(r29) /* 802BEF88 002BBEC8 D0 03 00 04 */ stfs f0, 4(r3) /* 802BEF8C 002BBECC C0 1D 00 04 */ lfs f0, 4(r29) /* 802BEF90 002BBED0 D0 03 00 08 */ stfs f0, 8(r3) /* 802BEF94 002BBED4 C0 1D 00 08 */ lfs f0, 8(r29) /* 802BEF98 002BBED8 D0 03 00 0C */ stfs f0, 0xc(r3) lbl_802BEF9C: /* 802BEF9C 002BBEDC 3B DE 00 01 */ addi r30, r30, 1 lbl_802BEFA0: /* 802BEFA0 002BBEE0 80 1F 00 08 */ lwz r0, 8(r31) /* 802BEFA4 002BBEE4 7C 1E 00 00 */ cmpw r30, r0 /* 802BEFA8 002BBEE8 41 80 FF 64 */ blt lbl_802BEF0C /* 802BEFAC 002BBEEC 80 9F 00 20 */ lwz r4, 0x20(r31) /* 802BEFB0 002BBEF0 28 04 00 00 */ cmplwi r4, 0 /* 802BEFB4 002BBEF4 41 82 03 28 */ beq lbl_802BF2DC /* 802BEFB8 002BBEF8 80 64 00 04 */ lwz r3, 4(r4) /* 802BEFBC 002BBEFC 28 03 00 00 */ cmplwi r3, 0 /* 802BEFC0 002BBF00 41 82 00 18 */ beq lbl_802BEFD8 /* 802BEFC4 002BBF04 81 83 00 00 */ lwz r12, 0(r3) /* 802BEFC8 002BBF08 81 8C 00 10 */ lwz r12, 0x10(r12) /* 802BEFCC 002BBF0C 7D 89 03 A6 */ mtctr r12 /* 802BEFD0 002BBF10 4E 80 04 21 */ bctrl /* 802BEFD4 002BBF14 48 00 00 08 */ b lbl_802BEFDC lbl_802BEFD8: /* 802BEFD8 002BBF18 A0 64 00 00 */ lhz r3, 0(r4) lbl_802BEFDC: /* 802BEFDC 002BBF1C 54 60 04 3F */ clrlwi. r0, r3, 0x10 /* 802BEFE0 002BBF20 40 82 00 08 */ bne lbl_802BEFE8 /* 802BEFE4 002BBF24 48 00 02 F8 */ b lbl_802BF2DC lbl_802BEFE8: /* 802BEFE8 002BBF28 88 1F 00 44 */ lbz r0, 0x44(r31) /* 802BEFEC 002BBF2C 28 00 00 00 */ cmplwi r0, 0 /* 802BEFF0 002BBF30 40 82 01 8C */ bne lbl_802BF17C /* 802BEFF4 002BBF34 C0 1F 00 28 */ lfs f0, 0x28(r31) /* 802BEFF8 002BBF38 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 802BEFFC 002BBF3C 40 80 00 5C */ bge lbl_802BF058 /* 802BF000 002BBF40 48 00 00 20 */ b lbl_802BF020 lbl_802BF004: /* 802BF004 002BBF44 7F E3 FB 78 */ mr r3, r31 /* 802BF008 002BBF48 80 9F 00 18 */ lwz r4, 0x18(r31) /* 802BF00C 002BBF4C FC 20 F8 90 */ fmr f1, f31 /* 802BF010 002BBF50 80 BF 00 14 */ lwz r5, 0x14(r31) /* 802BF014 002BBF54 A0 DF 00 1C */ lhz r6, 0x1c(r31) /* 802BF018 002BBF58 88 FF 00 1E */ lbz r7, 0x1e(r31) /* 802BF01C 002BBF5C 48 00 06 45 */ bl Z2SoundObjAnime_NS_startSoundInner lbl_802BF020: /* 802BF020 002BBF60 80 7F 00 40 */ lwz r3, 0x40(r31) /* 802BF024 002BBF64 80 1F 00 38 */ lwz r0, 0x38(r31) /* 802BF028 002BBF68 7C 03 00 00 */ cmpw r3, r0 /* 802BF02C 002BBF6C 41 80 FF D8 */ blt lbl_802BF004 /* 802BF030 002BBF70 80 1F 00 34 */ lwz r0, 0x34(r31) /* 802BF034 002BBF74 90 1F 00 40 */ stw r0, 0x40(r31) /* 802BF038 002BBF78 D3 DF 00 28 */ stfs f30, 0x28(r31) /* 802BF03C 002BBF7C 80 9F 00 3C */ lwz r4, 0x3c(r31) /* 802BF040 002BBF80 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 802BF044 002BBF84 38 03 FF FF */ addi r0, r3, 0x0000FFFF@l /* 802BF048 002BBF88 7C 04 00 00 */ cmpw r4, r0 /* 802BF04C 002BBF8C 40 80 00 0C */ bge lbl_802BF058 /* 802BF050 002BBF90 38 04 00 01 */ addi r0, r4, 1 /* 802BF054 002BBF94 90 1F 00 3C */ stw r0, 0x3c(r31) lbl_802BF058: /* 802BF058 002BBF98 7F E3 FB 78 */ mr r3, r31 /* 802BF05C 002BBF9C FC 20 F0 90 */ fmr f1, f30 /* 802BF060 002BBFA0 FC 40 F8 90 */ fmr f2, f31 /* 802BF064 002BBFA4 48 00 02 A1 */ bl Z2SoundObjAnime_NS_updateSoundLifeTime_ /* 802BF068 002BBFA8 48 00 00 20 */ b lbl_802BF088 lbl_802BF06C: /* 802BF06C 002BBFAC 7F E3 FB 78 */ mr r3, r31 /* 802BF070 002BBFB0 80 9F 00 18 */ lwz r4, 0x18(r31) /* 802BF074 002BBFB4 FC 20 F8 90 */ fmr f1, f31 /* 802BF078 002BBFB8 80 BF 00 14 */ lwz r5, 0x14(r31) /* 802BF07C 002BBFBC A0 DF 00 1C */ lhz r6, 0x1c(r31) /* 802BF080 002BBFC0 88 FF 00 1E */ lbz r7, 0x1e(r31) /* 802BF084 002BBFC4 48 00 05 DD */ bl Z2SoundObjAnime_NS_startSoundInner lbl_802BF088: /* 802BF088 002BBFC8 80 9F 00 20 */ lwz r4, 0x20(r31) /* 802BF08C 002BBFCC 80 64 00 04 */ lwz r3, 4(r4) /* 802BF090 002BBFD0 28 03 00 00 */ cmplwi r3, 0 /* 802BF094 002BBFD4 41 82 00 18 */ beq lbl_802BF0AC /* 802BF098 002BBFD8 81 83 00 00 */ lwz r12, 0(r3) /* 802BF09C 002BBFDC 81 8C 00 10 */ lwz r12, 0x10(r12) /* 802BF0A0 002BBFE0 7D 89 03 A6 */ mtctr r12 /* 802BF0A4 002BBFE4 4E 80 04 21 */ bctrl /* 802BF0A8 002BBFE8 48 00 00 08 */ b lbl_802BF0B0 lbl_802BF0AC: /* 802BF0AC 002BBFEC A0 64 00 00 */ lhz r3, 0(r4) lbl_802BF0B0: /* 802BF0B0 002BBFF0 80 BF 00 40 */ lwz r5, 0x40(r31) /* 802BF0B4 002BBFF4 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 802BF0B8 002BBFF8 7C 05 00 00 */ cmpw r5, r0 /* 802BF0BC 002BBFFC 40 80 02 1C */ bge lbl_802BF2D8 /* 802BF0C0 002BC000 80 9F 00 20 */ lwz r4, 0x20(r31) /* 802BF0C4 002BC004 80 64 00 04 */ lwz r3, 4(r4) /* 802BF0C8 002BC008 28 03 00 00 */ cmplwi r3, 0 /* 802BF0CC 002BC00C 41 82 00 18 */ beq lbl_802BF0E4 /* 802BF0D0 002BC010 81 83 00 00 */ lwz r12, 0(r3) /* 802BF0D4 002BC014 81 8C 00 0C */ lwz r12, 0xc(r12) /* 802BF0D8 002BC018 7D 89 03 A6 */ mtctr r12 /* 802BF0DC 002BC01C 4E 80 04 21 */ bctrl /* 802BF0E0 002BC020 48 00 00 10 */ b lbl_802BF0F0 lbl_802BF0E4: /* 802BF0E4 002BC024 54 A3 28 34 */ slwi r3, r5, 5 /* 802BF0E8 002BC028 38 63 00 08 */ addi r3, r3, 8 /* 802BF0EC 002BC02C 7C 64 1A 14 */ add r3, r4, r3 lbl_802BF0F0: /* 802BF0F0 002BC030 80 03 00 10 */ lwz r0, 0x10(r3) /* 802BF0F4 002BC034 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 802BF0F8 002BC038 41 82 00 64 */ beq lbl_802BF15C /* 802BF0FC 002BC03C C0 23 00 04 */ lfs f1, 4(r3) /* 802BF100 002BC040 C0 03 00 08 */ lfs f0, 8(r3) /* 802BF104 002BC044 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 802BF108 002BC048 40 82 00 0C */ bne lbl_802BF114 /* 802BF10C 002BC04C 38 00 00 01 */ li r0, 1 /* 802BF110 002BC050 48 00 00 60 */ b lbl_802BF170 lbl_802BF114: /* 802BF114 002BC054 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802BF118 002BC058 40 81 00 20 */ ble lbl_802BF138 /* 802BF11C 002BC05C FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 802BF120 002BC060 4C 40 13 82 */ cror 2, 0, 2 /* 802BF124 002BC064 40 82 00 30 */ bne lbl_802BF154 /* 802BF128 002BC068 FC 1E 08 40 */ fcmpo cr0, f30, f1 /* 802BF12C 002BC06C 40 80 00 28 */ bge lbl_802BF154 /* 802BF130 002BC070 38 00 00 01 */ li r0, 1 /* 802BF134 002BC074 48 00 00 3C */ b lbl_802BF170 lbl_802BF138: /* 802BF138 002BC078 FC 01 F0 40 */ fcmpo cr0, f1, f30 /* 802BF13C 002BC07C 4C 40 13 82 */ cror 2, 0, 2 /* 802BF140 002BC080 40 82 00 14 */ bne lbl_802BF154 /* 802BF144 002BC084 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 802BF148 002BC088 40 80 00 0C */ bge lbl_802BF154 /* 802BF14C 002BC08C 38 00 00 01 */ li r0, 1 /* 802BF150 002BC090 48 00 00 20 */ b lbl_802BF170 lbl_802BF154: /* 802BF154 002BC094 38 00 00 00 */ li r0, 0 /* 802BF158 002BC098 48 00 00 18 */ b lbl_802BF170 lbl_802BF15C: /* 802BF15C 002BC09C C0 03 00 04 */ lfs f0, 4(r3) /* 802BF160 002BC0A0 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 802BF164 002BC0A4 4C 41 13 82 */ cror 2, 1, 2 /* 802BF168 002BC0A8 7C 00 00 26 */ mfcr r0 /* 802BF16C 002BC0AC 54 00 1F FE */ rlwinm r0, r0, 3, 0x1f, 0x1f lbl_802BF170: /* 802BF170 002BC0B0 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 802BF174 002BC0B4 40 82 FE F8 */ bne lbl_802BF06C /* 802BF178 002BC0B8 48 00 01 60 */ b lbl_802BF2D8 lbl_802BF17C: /* 802BF17C 002BC0BC C0 1F 00 28 */ lfs f0, 0x28(r31) /* 802BF180 002BC0C0 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 802BF184 002BC0C4 40 81 00 60 */ ble lbl_802BF1E4 /* 802BF188 002BC0C8 48 00 00 20 */ b lbl_802BF1A8 lbl_802BF18C: /* 802BF18C 002BC0CC 7F E3 FB 78 */ mr r3, r31 /* 802BF190 002BC0D0 80 9F 00 18 */ lwz r4, 0x18(r31) /* 802BF194 002BC0D4 FC 20 F8 90 */ fmr f1, f31 /* 802BF198 002BC0D8 80 BF 00 14 */ lwz r5, 0x14(r31) /* 802BF19C 002BC0DC A0 DF 00 1C */ lhz r6, 0x1c(r31) /* 802BF1A0 002BC0E0 88 FF 00 1E */ lbz r7, 0x1e(r31) /* 802BF1A4 002BC0E4 48 00 04 BD */ bl Z2SoundObjAnime_NS_startSoundInner lbl_802BF1A8: /* 802BF1A8 002BC0E8 80 7F 00 40 */ lwz r3, 0x40(r31) /* 802BF1AC 002BC0EC 80 1F 00 34 */ lwz r0, 0x34(r31) /* 802BF1B0 002BC0F0 7C 03 00 00 */ cmpw r3, r0 /* 802BF1B4 002BC0F4 40 80 FF D8 */ bge lbl_802BF18C /* 802BF1B8 002BC0F8 80 7F 00 38 */ lwz r3, 0x38(r31) /* 802BF1BC 002BC0FC 38 03 FF FF */ addi r0, r3, -1 /* 802BF1C0 002BC100 90 1F 00 40 */ stw r0, 0x40(r31) /* 802BF1C4 002BC104 D3 DF 00 28 */ stfs f30, 0x28(r31) /* 802BF1C8 002BC108 80 9F 00 3C */ lwz r4, 0x3c(r31) /* 802BF1CC 002BC10C 3C 60 00 01 */ lis r3, 0x0000FFFF@ha /* 802BF1D0 002BC110 38 03 FF FF */ addi r0, r3, 0x0000FFFF@l /* 802BF1D4 002BC114 7C 04 00 00 */ cmpw r4, r0 /* 802BF1D8 002BC118 40 80 00 0C */ bge lbl_802BF1E4 /* 802BF1DC 002BC11C 38 04 00 01 */ addi r0, r4, 1 /* 802BF1E0 002BC120 90 1F 00 3C */ stw r0, 0x3c(r31) lbl_802BF1E4: /* 802BF1E4 002BC124 7F E3 FB 78 */ mr r3, r31 /* 802BF1E8 002BC128 FC 20 F0 90 */ fmr f1, f30 /* 802BF1EC 002BC12C FC 40 F8 90 */ fmr f2, f31 /* 802BF1F0 002BC130 48 00 01 15 */ bl Z2SoundObjAnime_NS_updateSoundLifeTime_ /* 802BF1F4 002BC134 48 00 00 20 */ b lbl_802BF214 lbl_802BF1F8: /* 802BF1F8 002BC138 7F E3 FB 78 */ mr r3, r31 /* 802BF1FC 002BC13C 80 9F 00 18 */ lwz r4, 0x18(r31) /* 802BF200 002BC140 FC 20 F8 90 */ fmr f1, f31 /* 802BF204 002BC144 80 BF 00 14 */ lwz r5, 0x14(r31) /* 802BF208 002BC148 A0 DF 00 1C */ lhz r6, 0x1c(r31) /* 802BF20C 002BC14C 88 FF 00 1E */ lbz r7, 0x1e(r31) /* 802BF210 002BC150 48 00 04 51 */ bl Z2SoundObjAnime_NS_startSoundInner lbl_802BF214: /* 802BF214 002BC154 80 BF 00 40 */ lwz r5, 0x40(r31) /* 802BF218 002BC158 2C 05 00 00 */ cmpwi r5, 0 /* 802BF21C 002BC15C 41 80 00 BC */ blt lbl_802BF2D8 /* 802BF220 002BC160 80 9F 00 20 */ lwz r4, 0x20(r31) /* 802BF224 002BC164 80 64 00 04 */ lwz r3, 4(r4) /* 802BF228 002BC168 28 03 00 00 */ cmplwi r3, 0 /* 802BF22C 002BC16C 41 82 00 18 */ beq lbl_802BF244 /* 802BF230 002BC170 81 83 00 00 */ lwz r12, 0(r3) /* 802BF234 002BC174 81 8C 00 0C */ lwz r12, 0xc(r12) /* 802BF238 002BC178 7D 89 03 A6 */ mtctr r12 /* 802BF23C 002BC17C 4E 80 04 21 */ bctrl /* 802BF240 002BC180 48 00 00 10 */ b lbl_802BF250 lbl_802BF244: /* 802BF244 002BC184 54 A3 28 34 */ slwi r3, r5, 5 /* 802BF248 002BC188 38 63 00 08 */ addi r3, r3, 8 /* 802BF24C 002BC18C 7C 64 1A 14 */ add r3, r4, r3 lbl_802BF250: /* 802BF250 002BC190 80 03 00 10 */ lwz r0, 0x10(r3) /* 802BF254 002BC194 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 802BF258 002BC198 41 82 00 64 */ beq lbl_802BF2BC /* 802BF25C 002BC19C C0 23 00 04 */ lfs f1, 4(r3) /* 802BF260 002BC1A0 C0 03 00 08 */ lfs f0, 8(r3) /* 802BF264 002BC1A4 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 802BF268 002BC1A8 40 82 00 0C */ bne lbl_802BF274 /* 802BF26C 002BC1AC 38 00 00 01 */ li r0, 1 /* 802BF270 002BC1B0 48 00 00 60 */ b lbl_802BF2D0 lbl_802BF274: /* 802BF274 002BC1B4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802BF278 002BC1B8 40 81 00 20 */ ble lbl_802BF298 /* 802BF27C 002BC1BC FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 802BF280 002BC1C0 4C 40 13 82 */ cror 2, 0, 2 /* 802BF284 002BC1C4 40 82 00 30 */ bne lbl_802BF2B4 /* 802BF288 002BC1C8 FC 1E 08 40 */ fcmpo cr0, f30, f1 /* 802BF28C 002BC1CC 40 80 00 28 */ bge lbl_802BF2B4 /* 802BF290 002BC1D0 38 00 00 01 */ li r0, 1 /* 802BF294 002BC1D4 48 00 00 3C */ b lbl_802BF2D0 lbl_802BF298: /* 802BF298 002BC1D8 FC 01 F0 40 */ fcmpo cr0, f1, f30 /* 802BF29C 002BC1DC 4C 40 13 82 */ cror 2, 0, 2 /* 802BF2A0 002BC1E0 40 82 00 14 */ bne lbl_802BF2B4 /* 802BF2A4 002BC1E4 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 802BF2A8 002BC1E8 40 80 00 0C */ bge lbl_802BF2B4 /* 802BF2AC 002BC1EC 38 00 00 01 */ li r0, 1 /* 802BF2B0 002BC1F0 48 00 00 20 */ b lbl_802BF2D0 lbl_802BF2B4: /* 802BF2B4 002BC1F4 38 00 00 00 */ li r0, 0 /* 802BF2B8 002BC1F8 48 00 00 18 */ b lbl_802BF2D0 lbl_802BF2BC: /* 802BF2BC 002BC1FC C0 03 00 04 */ lfs f0, 4(r3) /* 802BF2C0 002BC200 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 802BF2C4 002BC204 4C 40 13 82 */ cror 2, 0, 2 /* 802BF2C8 002BC208 7C 00 00 26 */ mfcr r0 /* 802BF2CC 002BC20C 54 00 1F FE */ rlwinm r0, r0, 3, 0x1f, 0x1f lbl_802BF2D0: /* 802BF2D0 002BC210 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 802BF2D4 002BC214 40 82 FF 24 */ bne lbl_802BF1F8 lbl_802BF2D8: /* 802BF2D8 002BC218 D3 DF 00 28 */ stfs f30, 0x28(r31) lbl_802BF2DC: /* 802BF2DC 002BC21C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 802BF2E0 002BC220 CB E1 00 30 */ lfd f31, 0x30(r1) /* 802BF2E4 002BC224 E3 C1 00 28 */ psq_l f30, 40(r1), 0, qr0 /* 802BF2E8 002BC228 CB C1 00 20 */ lfd f30, 0x20(r1) /* 802BF2EC 002BC22C 39 61 00 20 */ addi r11, r1, 0x20 /* 802BF2F0 002BC230 48 0A 2F 39 */ bl _restgpr_29 /* 802BF2F4 002BC234 80 01 00 44 */ lwz r0, 0x44(r1) /* 802BF2F8 002BC238 7C 08 03 A6 */ mtlr r0 /* 802BF2FC 002BC23C 38 21 00 40 */ addi r1, r1, 0x40 /* 802BF300 002BC240 4E 80 00 20 */ blr .global Z2SoundObjAnime_NS_updateSoundLifeTime_ Z2SoundObjAnime_NS_updateSoundLifeTime_: /* 802BF304 002BC244 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802BF308 002BC248 7C 08 02 A6 */ mflr r0 /* 802BF30C 002BC24C 90 01 00 34 */ stw r0, 0x34(r1) /* 802BF310 002BC250 DB E1 00 20 */ stfd f31, 0x20(r1) /* 802BF314 002BC254 F3 E1 00 28 */ psq_st f31, 40(r1), 0, qr0 /* 802BF318 002BC258 DB C1 00 10 */ stfd f30, 0x10(r1) /* 802BF31C 002BC25C F3 C1 00 18 */ psq_st f30, 24(r1), 0, qr0 /* 802BF320 002BC260 93 E1 00 0C */ stw r31, 0xc(r1) /* 802BF324 002BC264 93 C1 00 08 */ stw r30, 8(r1) /* 802BF328 002BC268 7C 7F 1B 78 */ mr r31, r3 /* 802BF32C 002BC26C FF C0 08 90 */ fmr f30, f1 /* 802BF330 002BC270 FF E0 10 90 */ fmr f31, f2 /* 802BF334 002BC274 80 03 00 20 */ lwz r0, 0x20(r3) /* 802BF338 002BC278 28 00 00 00 */ cmplwi r0, 0 /* 802BF33C 002BC27C 41 82 02 FC */ beq lbl_802BF638 /* 802BF340 002BC280 3B C0 00 00 */ li r30, 0 /* 802BF344 002BC284 48 00 02 E8 */ b lbl_802BF62C lbl_802BF348: /* 802BF348 002BC288 7F E3 FB 78 */ mr r3, r31 /* 802BF34C 002BC28C 7F C4 F3 78 */ mr r4, r30 /* 802BF350 002BC290 48 01 CE BD */ bl getNthLink__10JSUPtrListCFUl /* 802BF354 002BC294 28 03 00 00 */ cmplwi r3, 0 /* 802BF358 002BC298 41 82 00 08 */ beq lbl_802BF360 /* 802BF35C 002BC29C 38 63 FF FC */ addi r3, r3, -4 lbl_802BF360: /* 802BF360 002BC2A0 80 03 00 00 */ lwz r0, 0(r3) /* 802BF364 002BC2A4 28 00 00 00 */ cmplwi r0, 0 /* 802BF368 002BC2A8 41 82 02 C0 */ beq lbl_802BF628 /* 802BF36C 002BC2AC 7F E3 FB 78 */ mr r3, r31 /* 802BF370 002BC2B0 7F C4 F3 78 */ mr r4, r30 /* 802BF374 002BC2B4 48 01 CE 99 */ bl getNthLink__10JSUPtrListCFUl /* 802BF378 002BC2B8 28 03 00 00 */ cmplwi r3, 0 /* 802BF37C 002BC2BC 41 82 00 08 */ beq lbl_802BF384 /* 802BF380 002BC2C0 38 63 FF FC */ addi r3, r3, -4 lbl_802BF384: /* 802BF384 002BC2C4 80 63 00 00 */ lwz r3, 0(r3) /* 802BF388 002BC2C8 88 03 00 1F */ lbz r0, 0x1f(r3) /* 802BF38C 002BC2CC 54 00 E7 BE */ rlwinm r0, r0, 0x1c, 0x1e, 0x1f /* 802BF390 002BC2D0 2C 00 00 01 */ cmpwi r0, 1 /* 802BF394 002BC2D4 41 82 00 10 */ beq lbl_802BF3A4 /* 802BF398 002BC2D8 40 80 02 90 */ bge lbl_802BF628 /* 802BF39C 002BC2DC 48 00 02 8C */ b lbl_802BF628 /* 802BF3A0 002BC2E0 48 00 02 88 */ b lbl_802BF628 lbl_802BF3A4: /* 802BF3A4 002BC2E4 7F E3 FB 78 */ mr r3, r31 /* 802BF3A8 002BC2E8 7F C4 F3 78 */ mr r4, r30 /* 802BF3AC 002BC2EC 48 01 CE 61 */ bl getNthLink__10JSUPtrListCFUl /* 802BF3B0 002BC2F0 28 03 00 00 */ cmplwi r3, 0 /* 802BF3B4 002BC2F4 41 82 00 08 */ beq lbl_802BF3BC /* 802BF3B8 002BC2F8 38 63 FF FC */ addi r3, r3, -4 lbl_802BF3BC: /* 802BF3BC 002BC2FC 80 63 00 00 */ lwz r3, 0(r3) /* 802BF3C0 002BC300 80 63 00 20 */ lwz r3, 0x20(r3) /* 802BF3C4 002BC304 38 80 00 00 */ li r4, 0 /* 802BF3C8 002BC308 C0 02 C1 50 */ lfs f0, lbl_80455B50-_SDA2_BASE_(r2) /* 802BF3CC 002BC30C FC 00 F8 00 */ fcmpu cr0, f0, f31 /* 802BF3D0 002BC310 40 82 00 14 */ bne lbl_802BF3E4 /* 802BF3D4 002BC314 80 03 00 10 */ lwz r0, 0x10(r3) /* 802BF3D8 002BC318 54 00 06 B5 */ rlwinm. r0, r0, 0, 0x1a, 0x1a /* 802BF3DC 002BC31C 41 82 00 08 */ beq lbl_802BF3E4 /* 802BF3E0 002BC320 38 80 00 01 */ li r4, 1 lbl_802BF3E4: /* 802BF3E4 002BC324 80 A3 00 10 */ lwz r5, 0x10(r3) /* 802BF3E8 002BC328 54 A6 06 73 */ rlwinm. r6, r5, 0, 0x19, 0x19 /* 802BF3EC 002BC32C 41 82 01 24 */ beq lbl_802BF510 /* 802BF3F0 002BC330 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 802BF3F4 002BC334 41 82 00 34 */ beq lbl_802BF428 /* 802BF3F8 002BC338 7F E3 FB 78 */ mr r3, r31 /* 802BF3FC 002BC33C 7F C4 F3 78 */ mr r4, r30 /* 802BF400 002BC340 48 01 CE 0D */ bl getNthLink__10JSUPtrListCFUl /* 802BF404 002BC344 28 03 00 00 */ cmplwi r3, 0 /* 802BF408 002BC348 41 82 00 08 */ beq lbl_802BF410 /* 802BF40C 002BC34C 38 63 FF FC */ addi r3, r3, -4 lbl_802BF410: /* 802BF410 002BC350 80 83 00 00 */ lwz r4, 0(r3) /* 802BF414 002BC354 38 60 00 01 */ li r3, 1 /* 802BF418 002BC358 88 04 00 1C */ lbz r0, 0x1c(r4) /* 802BF41C 002BC35C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 802BF420 002BC360 98 04 00 1C */ stb r0, 0x1c(r4) /* 802BF424 002BC364 48 00 02 04 */ b lbl_802BF628 lbl_802BF428: /* 802BF428 002BC368 C0 23 00 04 */ lfs f1, 4(r3) /* 802BF42C 002BC36C C0 03 00 08 */ lfs f0, 8(r3) /* 802BF430 002BC370 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 802BF434 002BC374 40 82 00 0C */ bne lbl_802BF440 /* 802BF438 002BC378 38 00 00 01 */ li r0, 1 /* 802BF43C 002BC37C 48 00 00 48 */ b lbl_802BF484 lbl_802BF440: /* 802BF440 002BC380 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802BF444 002BC384 40 81 00 20 */ ble lbl_802BF464 /* 802BF448 002BC388 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 802BF44C 002BC38C 4C 40 13 82 */ cror 2, 0, 2 /* 802BF450 002BC390 40 82 00 30 */ bne lbl_802BF480 /* 802BF454 002BC394 FC 1E 08 40 */ fcmpo cr0, f30, f1 /* 802BF458 002BC398 40 80 00 28 */ bge lbl_802BF480 /* 802BF45C 002BC39C 38 00 00 01 */ li r0, 1 /* 802BF460 002BC3A0 48 00 00 24 */ b lbl_802BF484 lbl_802BF464: /* 802BF464 002BC3A4 FC 01 F0 40 */ fcmpo cr0, f1, f30 /* 802BF468 002BC3A8 4C 40 13 82 */ cror 2, 0, 2 /* 802BF46C 002BC3AC 40 82 00 14 */ bne lbl_802BF480 /* 802BF470 002BC3B0 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 802BF474 002BC3B4 40 80 00 0C */ bge lbl_802BF480 /* 802BF478 002BC3B8 38 00 00 01 */ li r0, 1 /* 802BF47C 002BC3BC 48 00 00 08 */ b lbl_802BF484 lbl_802BF480: /* 802BF480 002BC3C0 38 00 00 00 */ li r0, 0 lbl_802BF484: /* 802BF484 002BC3C4 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 802BF488 002BC3C8 41 82 00 64 */ beq lbl_802BF4EC /* 802BF48C 002BC3CC 7F E3 FB 78 */ mr r3, r31 /* 802BF490 002BC3D0 7F C4 F3 78 */ mr r4, r30 /* 802BF494 002BC3D4 48 01 CD 79 */ bl getNthLink__10JSUPtrListCFUl /* 802BF498 002BC3D8 28 03 00 00 */ cmplwi r3, 0 /* 802BF49C 002BC3DC 41 82 00 08 */ beq lbl_802BF4A4 /* 802BF4A0 002BC3E0 38 63 FF FC */ addi r3, r3, -4 lbl_802BF4A4: /* 802BF4A4 002BC3E4 80 63 00 00 */ lwz r3, 0(r3) /* 802BF4A8 002BC3E8 80 03 00 10 */ lwz r0, 0x10(r3) /* 802BF4AC 002BC3EC 28 00 00 01 */ cmplwi r0, 1 /* 802BF4B0 002BC3F0 40 80 00 0C */ bge lbl_802BF4BC /* 802BF4B4 002BC3F4 38 00 00 01 */ li r0, 1 /* 802BF4B8 002BC3F8 90 03 00 10 */ stw r0, 0x10(r3) lbl_802BF4BC: /* 802BF4BC 002BC3FC 7F E3 FB 78 */ mr r3, r31 /* 802BF4C0 002BC400 7F C4 F3 78 */ mr r4, r30 /* 802BF4C4 002BC404 48 01 CD 49 */ bl getNthLink__10JSUPtrListCFUl /* 802BF4C8 002BC408 28 03 00 00 */ cmplwi r3, 0 /* 802BF4CC 002BC40C 41 82 00 08 */ beq lbl_802BF4D4 /* 802BF4D0 002BC410 38 63 FF FC */ addi r3, r3, -4 lbl_802BF4D4: /* 802BF4D4 002BC414 80 83 00 00 */ lwz r4, 0(r3) /* 802BF4D8 002BC418 38 60 00 00 */ li r3, 0 /* 802BF4DC 002BC41C 88 04 00 1C */ lbz r0, 0x1c(r4) /* 802BF4E0 002BC420 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 802BF4E4 002BC424 98 04 00 1C */ stb r0, 0x1c(r4) /* 802BF4E8 002BC428 48 00 01 40 */ b lbl_802BF628 lbl_802BF4EC: /* 802BF4EC 002BC42C 7F E3 FB 78 */ mr r3, r31 /* 802BF4F0 002BC430 7F C4 F3 78 */ mr r4, r30 /* 802BF4F4 002BC434 48 01 CD 19 */ bl getNthLink__10JSUPtrListCFUl /* 802BF4F8 002BC438 28 03 00 00 */ cmplwi r3, 0 /* 802BF4FC 002BC43C 41 82 00 08 */ beq lbl_802BF504 /* 802BF500 002BC440 38 63 FF FC */ addi r3, r3, -4 lbl_802BF504: /* 802BF504 002BC444 80 63 00 00 */ lwz r3, 0(r3) /* 802BF508 002BC448 4B FE 30 91 */ bl JAISound_NS_stop_X1_ /* 802BF50C 002BC44C 48 00 01 1C */ b lbl_802BF628 lbl_802BF510: /* 802BF510 002BC450 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 802BF514 002BC454 41 82 00 28 */ beq lbl_802BF53C /* 802BF518 002BC458 7F E3 FB 78 */ mr r3, r31 /* 802BF51C 002BC45C 7F C4 F3 78 */ mr r4, r30 /* 802BF520 002BC460 48 01 CC ED */ bl getNthLink__10JSUPtrListCFUl /* 802BF524 002BC464 28 03 00 00 */ cmplwi r3, 0 /* 802BF528 002BC468 41 82 00 08 */ beq lbl_802BF530 /* 802BF52C 002BC46C 38 63 FF FC */ addi r3, r3, -4 lbl_802BF530: /* 802BF530 002BC470 80 63 00 00 */ lwz r3, 0(r3) /* 802BF534 002BC474 4B FE 30 65 */ bl JAISound_NS_stop_X1_ /* 802BF538 002BC478 48 00 00 F0 */ b lbl_802BF628 lbl_802BF53C: /* 802BF53C 002BC47C 54 A0 06 F7 */ rlwinm. r0, r5, 0, 0x1b, 0x1b /* 802BF540 002BC480 41 82 00 E8 */ beq lbl_802BF628 /* 802BF544 002BC484 88 1F 00 44 */ lbz r0, 0x44(r31) /* 802BF548 002BC488 28 06 00 00 */ cmplwi r6, 0 /* 802BF54C 002BC48C 41 82 00 70 */ beq lbl_802BF5BC /* 802BF550 002BC490 C0 23 00 04 */ lfs f1, 4(r3) /* 802BF554 002BC494 C0 03 00 08 */ lfs f0, 8(r3) /* 802BF558 002BC498 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 802BF55C 002BC49C 40 82 00 0C */ bne lbl_802BF568 /* 802BF560 002BC4A0 38 00 00 01 */ li r0, 1 /* 802BF564 002BC4A4 48 00 00 48 */ b lbl_802BF5AC lbl_802BF568: /* 802BF568 002BC4A8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802BF56C 002BC4AC 40 81 00 20 */ ble lbl_802BF58C /* 802BF570 002BC4B0 FC 00 F0 40 */ fcmpo cr0, f0, f30 /* 802BF574 002BC4B4 4C 40 13 82 */ cror 2, 0, 2 /* 802BF578 002BC4B8 40 82 00 30 */ bne lbl_802BF5A8 /* 802BF57C 002BC4BC FC 1E 08 40 */ fcmpo cr0, f30, f1 /* 802BF580 002BC4C0 40 80 00 28 */ bge lbl_802BF5A8 /* 802BF584 002BC4C4 38 00 00 01 */ li r0, 1 /* 802BF588 002BC4C8 48 00 00 24 */ b lbl_802BF5AC lbl_802BF58C: /* 802BF58C 002BC4CC FC 01 F0 40 */ fcmpo cr0, f1, f30 /* 802BF590 002BC4D0 4C 40 13 82 */ cror 2, 0, 2 /* 802BF594 002BC4D4 40 82 00 14 */ bne lbl_802BF5A8 /* 802BF598 002BC4D8 FC 1E 00 40 */ fcmpo cr0, f30, f0 /* 802BF59C 002BC4DC 40 80 00 0C */ bge lbl_802BF5A8 /* 802BF5A0 002BC4E0 38 00 00 01 */ li r0, 1 /* 802BF5A4 002BC4E4 48 00 00 08 */ b lbl_802BF5AC lbl_802BF5A8: /* 802BF5A8 002BC4E8 38 00 00 00 */ li r0, 0 lbl_802BF5AC: /* 802BF5AC 002BC4EC 54 00 06 3E */ clrlwi r0, r0, 0x18 /* 802BF5B0 002BC4F0 7C 00 00 34 */ cntlzw r0, r0 /* 802BF5B4 002BC4F4 54 00 D9 7E */ srwi r0, r0, 5 /* 802BF5B8 002BC4F8 48 00 00 48 */ b lbl_802BF600 lbl_802BF5BC: /* 802BF5BC 002BC4FC C0 03 00 04 */ lfs f0, 4(r3) /* 802BF5C0 002BC500 C0 23 00 08 */ lfs f1, 8(r3) /* 802BF5C4 002BC504 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 802BF5C8 002BC508 40 82 00 0C */ bne lbl_802BF5D4 /* 802BF5CC 002BC50C 38 00 00 00 */ li r0, 0 /* 802BF5D0 002BC510 48 00 00 30 */ b lbl_802BF600 lbl_802BF5D4: /* 802BF5D4 002BC514 28 00 00 00 */ cmplwi r0, 0 /* 802BF5D8 002BC518 41 82 00 18 */ beq lbl_802BF5F0 /* 802BF5DC 002BC51C FC 1E 08 40 */ fcmpo cr0, f30, f1 /* 802BF5E0 002BC520 4C 40 13 82 */ cror 2, 0, 2 /* 802BF5E4 002BC524 7C 00 00 26 */ mfcr r0 /* 802BF5E8 002BC528 54 00 1F FE */ rlwinm r0, r0, 3, 0x1f, 0x1f /* 802BF5EC 002BC52C 48 00 00 14 */ b lbl_802BF600 lbl_802BF5F0: /* 802BF5F0 002BC530 FC 1E 08 40 */ fcmpo cr0, f30, f1 /* 802BF5F4 002BC534 4C 41 13 82 */ cror 2, 1, 2 /* 802BF5F8 002BC538 7C 00 00 26 */ mfcr r0 /* 802BF5FC 002BC53C 54 00 1F FE */ rlwinm r0, r0, 3, 0x1f, 0x1f lbl_802BF600: /* 802BF600 002BC540 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 802BF604 002BC544 41 82 00 24 */ beq lbl_802BF628 /* 802BF608 002BC548 7F E3 FB 78 */ mr r3, r31 /* 802BF60C 002BC54C 7F C4 F3 78 */ mr r4, r30 /* 802BF610 002BC550 48 01 CB FD */ bl getNthLink__10JSUPtrListCFUl /* 802BF614 002BC554 28 03 00 00 */ cmplwi r3, 0 /* 802BF618 002BC558 41 82 00 08 */ beq lbl_802BF620 /* 802BF61C 002BC55C 38 63 FF FC */ addi r3, r3, -4 lbl_802BF620: /* 802BF620 002BC560 80 63 00 00 */ lwz r3, 0(r3) /* 802BF624 002BC564 4B FE 2F 75 */ bl JAISound_NS_stop_X1_ lbl_802BF628: /* 802BF628 002BC568 3B DE 00 01 */ addi r30, r30, 1 lbl_802BF62C: /* 802BF62C 002BC56C 80 1F 00 08 */ lwz r0, 8(r31) /* 802BF630 002BC570 7C 1E 00 00 */ cmpw r30, r0 /* 802BF634 002BC574 41 80 FD 14 */ blt lbl_802BF348 lbl_802BF638: /* 802BF638 002BC578 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 802BF63C 002BC57C CB E1 00 20 */ lfd f31, 0x20(r1) /* 802BF640 002BC580 E3 C1 00 18 */ psq_l f30, 24(r1), 0, qr0 /* 802BF644 002BC584 CB C1 00 10 */ lfd f30, 0x10(r1) /* 802BF648 002BC588 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802BF64C 002BC58C 83 C1 00 08 */ lwz r30, 8(r1) /* 802BF650 002BC590 80 01 00 34 */ lwz r0, 0x34(r1) /* 802BF654 002BC594 7C 08 03 A6 */ mtlr r0 /* 802BF658 002BC598 38 21 00 30 */ addi r1, r1, 0x30 /* 802BF65C 002BC59C 4E 80 00 20 */ blr .global Z2SoundObjAnime_NS_startSoundInner Z2SoundObjAnime_NS_startSoundInner: /* 802BF660 002BC5A0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 802BF664 002BC5A4 7C 08 02 A6 */ mflr r0 /* 802BF668 002BC5A8 90 01 00 64 */ stw r0, 0x64(r1) /* 802BF66C 002BC5AC DB E1 00 50 */ stfd f31, 0x50(r1) /* 802BF670 002BC5B0 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 /* 802BF674 002BC5B4 39 61 00 50 */ addi r11, r1, 0x50 /* 802BF678 002BC5B8 48 0A 2B 4D */ bl _savegpr_23 /* 802BF67C 002BC5BC 7C 78 1B 78 */ mr r24, r3 /* 802BF680 002BC5C0 7C 99 23 78 */ mr r25, r4 /* 802BF684 002BC5C4 FF E0 08 90 */ fmr f31, f1 /* 802BF688 002BC5C8 7C BA 2B 78 */ mr r26, r5 /* 802BF68C 002BC5CC 7C DB 33 78 */ mr r27, r6 /* 802BF690 002BC5D0 7C FC 3B 78 */ mr r28, r7 /* 802BF694 002BC5D4 80 A3 00 40 */ lwz r5, 0x40(r3) /* 802BF698 002BC5D8 80 83 00 20 */ lwz r4, 0x20(r3) /* 802BF69C 002BC5DC 80 64 00 04 */ lwz r3, 4(r4) /* 802BF6A0 002BC5E0 28 03 00 00 */ cmplwi r3, 0 /* 802BF6A4 002BC5E4 41 82 00 18 */ beq lbl_802BF6BC /* 802BF6A8 002BC5E8 81 83 00 00 */ lwz r12, 0(r3) /* 802BF6AC 002BC5EC 81 8C 00 0C */ lwz r12, 0xc(r12) /* 802BF6B0 002BC5F0 7D 89 03 A6 */ mtctr r12 /* 802BF6B4 002BC5F4 4E 80 04 21 */ bctrl /* 802BF6B8 002BC5F8 48 00 00 10 */ b lbl_802BF6C8 lbl_802BF6BC: /* 802BF6BC 002BC5FC 54 A3 28 34 */ slwi r3, r5, 5 /* 802BF6C0 002BC600 38 63 00 08 */ addi r3, r3, 8 /* 802BF6C4 002BC604 7C 64 1A 14 */ add r3, r4, r3 lbl_802BF6C8: /* 802BF6C8 002BC608 7C 7F 1B 78 */ mr r31, r3 /* 802BF6CC 002BC60C 7C 7E 1B 78 */ mr r30, r3 /* 802BF6D0 002BC610 88 18 00 44 */ lbz r0, 0x44(r24) /* 802BF6D4 002BC614 28 00 00 00 */ cmplwi r0, 0 /* 802BF6D8 002BC618 41 82 00 14 */ beq lbl_802BF6EC /* 802BF6DC 002BC61C 80 78 00 40 */ lwz r3, 0x40(r24) /* 802BF6E0 002BC620 38 03 FF FF */ addi r0, r3, -1 /* 802BF6E4 002BC624 90 18 00 40 */ stw r0, 0x40(r24) /* 802BF6E8 002BC628 48 00 00 10 */ b lbl_802BF6F8 lbl_802BF6EC: /* 802BF6EC 002BC62C 80 78 00 40 */ lwz r3, 0x40(r24) /* 802BF6F0 002BC630 38 03 00 01 */ addi r0, r3, 1 /* 802BF6F4 002BC634 90 18 00 40 */ stw r0, 0x40(r24) lbl_802BF6F8: /* 802BF6F8 002BC638 88 7F 00 1A */ lbz r3, 0x1a(r31) /* 802BF6FC 002BC63C 7C 60 07 75 */ extsb. r0, r3 /* 802BF700 002BC640 40 81 00 08 */ ble lbl_802BF708 /* 802BF704 002BC644 7C 7B 07 74 */ extsb r27, r3 lbl_802BF708: /* 802BF708 002BC648 7F 03 C3 78 */ mr r3, r24 /* 802BF70C 002BC64C 7F E4 FB 78 */ mr r4, r31 /* 802BF710 002BC650 7F 25 CB 78 */ mr r5, r25 /* 802BF714 002BC654 FC 20 F8 90 */ fmr f1, f31 /* 802BF718 002BC658 48 00 01 81 */ bl Z2SoundObjAnime_NS_playsSound /* 802BF71C 002BC65C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802BF720 002BC660 41 82 01 50 */ beq lbl_802BF870 /* 802BF724 002BC664 7F 03 C3 78 */ mr r3, r24 /* 802BF728 002BC668 7F E4 FB 78 */ mr r4, r31 /* 802BF72C 002BC66C 7F 25 CB 78 */ mr r5, r25 /* 802BF730 002BC670 FC 20 F8 90 */ fmr f1, f31 /* 802BF734 002BC674 48 00 01 5D */ bl Z2SoundObjAnime_NS_getSoundID /* 802BF738 002BC678 7C 77 1B 78 */ mr r23, r3 /* 802BF73C 002BC67C 92 E1 00 0C */ stw r23, 0xc(r1) /* 802BF740 002BC680 80 6D 86 08 */ lwz r3, lbl_80450B88-_SDA_BASE_(r13) /* 802BF744 002BC684 38 81 00 0C */ addi r4, r1, 0xc /* 802BF748 002BC688 4B FE EE 69 */ bl isSoundCulling__7Z2SeMgrF10JAISoundID /* 802BF74C 002BC68C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802BF750 002BC690 40 82 01 20 */ bne lbl_802BF870 /* 802BF754 002BC694 7F 03 C3 78 */ mr r3, r24 /* 802BF758 002BC698 7F C4 F3 78 */ mr r4, r30 /* 802BF75C 002BC69C 4B FE BB 45 */ bl Z2SoundHandles_NS_getHandleUserData /* 802BF760 002BC6A0 7C 7D 1B 79 */ or. r29, r3, r3 /* 802BF764 002BC6A4 41 82 00 24 */ beq lbl_802BF788 /* 802BF768 002BC6A8 80 7D 00 00 */ lwz r3, 0(r29) /* 802BF76C 002BC6AC 28 03 00 00 */ cmplwi r3, 0 /* 802BF770 002BC6B0 41 82 00 18 */ beq lbl_802BF788 /* 802BF774 002BC6B4 88 03 00 1F */ lbz r0, 0x1f(r3) /* 802BF778 002BC6B8 54 00 E7 BE */ rlwinm r0, r0, 0x1c, 0x1e, 0x1f /* 802BF77C 002BC6BC 28 00 00 01 */ cmplwi r0, 1 /* 802BF780 002BC6C0 41 82 00 08 */ beq lbl_802BF788 /* 802BF784 002BC6C4 3B A0 00 00 */ li r29, 0 lbl_802BF788: /* 802BF788 002BC6C8 28 1D 00 00 */ cmplwi r29, 0 /* 802BF78C 002BC6CC 40 82 00 10 */ bne lbl_802BF79C /* 802BF790 002BC6D0 7F 03 C3 78 */ mr r3, r24 /* 802BF794 002BC6D4 4B FE BB 45 */ bl Z2SoundHandles_NS_getFreeHandle /* 802BF798 002BC6D8 7C 7D 1B 78 */ mr r29, r3 lbl_802BF79C: /* 802BF79C 002BC6DC 28 1D 00 00 */ cmplwi r29, 0 /* 802BF7A0 002BC6E0 41 82 00 D0 */ beq lbl_802BF870 /* 802BF7A4 002BC6E4 92 E1 00 08 */ stw r23, 8(r1) /* 802BF7A8 002BC6E8 7F 43 D3 78 */ mr r3, r26 /* 802BF7AC 002BC6EC 38 81 00 08 */ addi r4, r1, 8 /* 802BF7B0 002BC6F0 7F A5 EB 78 */ mr r5, r29 /* 802BF7B4 002BC6F4 7F 26 CB 78 */ mr r6, r25 /* 802BF7B8 002BC6F8 7F 67 DB 78 */ mr r7, r27 /* 802BF7BC 002BC6FC 7F 80 07 74 */ extsb r0, r28 /* 802BF7C0 002BC700 C8 22 C1 48 */ lfd f1, lbl_80455B48-_SDA2_BASE_(r2) /* 802BF7C4 002BC704 6C 00 80 00 */ xoris r0, r0, 0x8000 /* 802BF7C8 002BC708 90 01 00 14 */ stw r0, 0x14(r1) /* 802BF7CC 002BC70C 3D 00 43 30 */ lis r8, 0x4330 /* 802BF7D0 002BC710 91 01 00 10 */ stw r8, 0x10(r1) /* 802BF7D4 002BC714 C8 01 00 10 */ lfd f0, 0x10(r1) /* 802BF7D8 002BC718 EC 00 08 28 */ fsubs f0, f0, f1 /* 802BF7DC 002BC71C C0 82 C1 38 */ lfs f4, lbl_80455B38-_SDA2_BASE_(r2) /* 802BF7E0 002BC720 EC 20 20 24 */ fdivs f1, f0, f4 /* 802BF7E4 002BC724 C0 5F 00 0C */ lfs f2, 0xc(r31) /* 802BF7E8 002BC728 88 1F 00 14 */ lbz r0, 0x14(r31) /* 802BF7EC 002BC72C C8 62 C1 68 */ lfd f3, lbl_80455B68-_SDA2_BASE_(r2) /* 802BF7F0 002BC730 90 01 00 1C */ stw r0, 0x1c(r1) /* 802BF7F4 002BC734 91 01 00 18 */ stw r8, 0x18(r1) /* 802BF7F8 002BC738 C8 01 00 18 */ lfd f0, 0x18(r1) /* 802BF7FC 002BC73C EC 00 18 28 */ fsubs f0, f0, f3 /* 802BF800 002BC740 EC 60 20 24 */ fdivs f3, f0, f4 /* 802BF804 002BC744 C0 82 C1 40 */ lfs f4, lbl_80455B40-_SDA2_BASE_(r2) /* 802BF808 002BC748 FC A0 20 90 */ fmr f5, f4 /* 802BF80C 002BC74C 39 00 00 00 */ li r8, 0 /* 802BF810 002BC750 81 9A 00 00 */ lwz r12, 0(r26) /* 802BF814 002BC754 81 8C 00 10 */ lwz r12, 0x10(r12) /* 802BF818 002BC758 7D 89 03 A6 */ mtctr r12 /* 802BF81C 002BC75C 4E 80 04 21 */ bctrl /* 802BF820 002BC760 80 9D 00 00 */ lwz r4, 0(r29) /* 802BF824 002BC764 28 04 00 00 */ cmplwi r4, 0 /* 802BF828 002BC768 41 82 00 48 */ beq lbl_802BF870 /* 802BF82C 002BC76C 38 60 00 01 */ li r3, 1 /* 802BF830 002BC770 88 04 00 1F */ lbz r0, 0x1f(r4) /* 802BF834 002BC774 50 60 26 B6 */ rlwimi r0, r3, 4, 0x1a, 0x1b /* 802BF838 002BC778 98 04 00 1F */ stb r0, 0x1f(r4) /* 802BF83C 002BC77C 80 9D 00 00 */ lwz r4, 0(r29) /* 802BF840 002BC780 93 C4 00 20 */ stw r30, 0x20(r4) /* 802BF844 002BC784 80 1F 00 10 */ lwz r0, 0x10(r31) /* 802BF848 002BC788 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19 /* 802BF84C 002BC78C 41 82 00 24 */ beq lbl_802BF870 /* 802BF850 002BC790 80 9D 00 00 */ lwz r4, 0(r29) /* 802BF854 002BC794 90 64 00 10 */ stw r3, 0x10(r4) /* 802BF858 002BC798 88 04 00 1D */ lbz r0, 0x1d(r4) /* 802BF85C 002BC79C 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 802BF860 002BC7A0 98 04 00 1D */ stb r0, 0x1d(r4) /* 802BF864 002BC7A4 88 04 00 1D */ lbz r0, 0x1d(r4) /* 802BF868 002BC7A8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 802BF86C 002BC7AC 98 04 00 1D */ stb r0, 0x1d(r4) lbl_802BF870: /* 802BF870 002BC7B0 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 802BF874 002BC7B4 CB E1 00 50 */ lfd f31, 0x50(r1) /* 802BF878 002BC7B8 39 61 00 50 */ addi r11, r1, 0x50 /* 802BF87C 002BC7BC 48 0A 29 95 */ bl _restgpr_23 /* 802BF880 002BC7C0 80 01 00 64 */ lwz r0, 0x64(r1) /* 802BF884 002BC7C4 7C 08 03 A6 */ mtlr r0 /* 802BF888 002BC7C8 38 21 00 60 */ addi r1, r1, 0x60 /* 802BF88C 002BC7CC 4E 80 00 20 */ blr .global Z2SoundObjAnime_NS_getSoundID Z2SoundObjAnime_NS_getSoundID: /* 802BF890 002BC7D0 80 64 00 00 */ lwz r3, 0(r4) /* 802BF894 002BC7D4 4E 80 00 20 */ blr .global Z2SoundObjAnime_NS_playsSound Z2SoundObjAnime_NS_playsSound: /* 802BF898 002BC7D8 80 E4 00 10 */ lwz r7, 0x10(r4) /* 802BF89C 002BC7DC 54 E0 07 39 */ rlwinm. r0, r7, 0, 0x1c, 0x1c /* 802BF8A0 002BC7E0 41 82 00 1C */ beq lbl_802BF8BC /* 802BF8A4 002BC7E4 80 A3 00 3C */ lwz r5, 0x3c(r3) /* 802BF8A8 002BC7E8 88 04 00 16 */ lbz r0, 0x16(r4) /* 802BF8AC 002BC7EC 7C 05 00 00 */ cmpw r5, r0 /* 802BF8B0 002BC7F0 41 82 00 3C */ beq lbl_802BF8EC /* 802BF8B4 002BC7F4 38 60 00 00 */ li r3, 0 /* 802BF8B8 002BC7F8 4E 80 00 20 */ blr lbl_802BF8BC: /* 802BF8BC 002BC7FC 54 E0 06 31 */ rlwinm. r0, r7, 0, 0x18, 0x18 /* 802BF8C0 002BC800 41 82 00 2C */ beq lbl_802BF8EC /* 802BF8C4 002BC804 88 C4 00 16 */ lbz r6, 0x16(r4) /* 802BF8C8 002BC808 80 A3 00 3C */ lwz r5, 0x3c(r3) /* 802BF8CC 002BC80C 88 84 00 19 */ lbz r4, 0x19(r4) /* 802BF8D0 002BC810 7C 05 23 D6 */ divw r0, r5, r4 /* 802BF8D4 002BC814 7C 00 21 D6 */ mullw r0, r0, r4 /* 802BF8D8 002BC818 7C 00 28 50 */ subf r0, r0, r5 /* 802BF8DC 002BC81C 7C 06 00 00 */ cmpw r6, r0 /* 802BF8E0 002BC820 41 82 00 0C */ beq lbl_802BF8EC /* 802BF8E4 002BC824 38 60 00 00 */ li r3, 0 /* 802BF8E8 002BC828 4E 80 00 20 */ blr lbl_802BF8EC: /* 802BF8EC 002BC82C 88 03 00 44 */ lbz r0, 0x44(r3) /* 802BF8F0 002BC830 28 00 00 00 */ cmplwi r0, 0 /* 802BF8F4 002BC834 41 82 00 14 */ beq lbl_802BF908 /* 802BF8F8 002BC838 54 E0 07 FF */ clrlwi. r0, r7, 0x1f /* 802BF8FC 002BC83C 41 82 00 1C */ beq lbl_802BF918 /* 802BF900 002BC840 38 60 00 00 */ li r3, 0 /* 802BF904 002BC844 4E 80 00 20 */ blr lbl_802BF908: /* 802BF908 002BC848 54 E0 07 BD */ rlwinm. r0, r7, 0, 0x1e, 0x1e /* 802BF90C 002BC84C 41 82 00 0C */ beq lbl_802BF918 /* 802BF910 002BC850 38 60 00 00 */ li r3, 0 /* 802BF914 002BC854 4E 80 00 20 */ blr lbl_802BF918: /* 802BF918 002BC858 38 60 00 01 */ li r3, 1 /* 802BF91C 002BC85C 4E 80 00 20 */ blr