tp/asm/Z2AudioLib/Z2SoundObject.s

1878 lines
92 KiB
ArmAsm

.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