.include "macros.inc" .section .data .global lbl_803DF128 lbl_803DF128: # ROM: 0x3DC128 .4byte 0 .4byte 0 .4byte __dt__12CScriptSoundFv .4byte Accept__12CScriptSoundFR8IVisitor .4byte PreThink__12CScriptSoundFfR13CStateManager .4byte Think__12CScriptSoundFfR13CStateManager .4byte AcceptScriptMsg__12CScriptSoundF20EScriptObjectMessage9TUniqueIdR13CStateManager .4byte SetActive__6CActorFb .4byte PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes .4byte AddToRenderer__12CScriptSoundCFRC14CFrustumPlanesRC13CStateManager .4byte Render__6CActorCFRC13CStateManager .4byte CanRenderUnsorted__6CActorCFRC13CStateManager .4byte CalculateRenderBounds__6CActorFv .4byte HealthInfo__6CActorFR13CStateManager .4byte GetDamageVulnerability__6CActorCFv .4byte GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo .4byte GetTouchBounds__6CActorCFv .4byte Touch__6CActorFR6CActorR13CStateManager .4byte GetOrbitPosition__6CActorCFRC13CStateManager .4byte GetAimPosition__6CActorCFRC13CStateManagerf .4byte GetHomingPosition__6CActorCFRC13CStateManagerf .4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager .4byte GetCollisionResponseType__6CActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei .4byte FluidFXThink__6CActorFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC12CTransform4f .4byte DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventType .global lbl_803DF194 lbl_803DF194: # ROM: 0x3DC194 .4byte lbl_800B0528 .4byte lbl_800B04F4 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B04E4 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B04C8 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B04AC .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0528 .4byte lbl_800B0474 .4byte lbl_800B0510 .section .sdata .global lbl_805A71E0 lbl_805A71E0: # ROM: 0x3F4B80 .4byte 0 .global lbl_805A71E4 lbl_805A71E4: # ROM: 0x3F4B84 .4byte 0x00000013 .global lbl_805A71E8 lbl_805A71E8: # ROM: 0x3F4B88 .4byte 0x00000012 .4byte 0 .section .bss .global lbl_8046C438 lbl_8046C438: .skip 0x18 .section .sbss # CScriptSound .global lbl_805A8E90 lbl_805A8E90: .skip 0x4 .global lbl_805A8E94 lbl_805A8E94: .skip 0x4 .global lbl_805A8E98 lbl_805A8E98: .skip 0x4 .global lbl_805A8E9C lbl_805A8E9C: .skip 0x4 .global lbl_805A8EA0 lbl_805A8EA0: .skip 0x1 .global lbl_805A8EA1 lbl_805A8EA1: .skip 0x7 .section .text, "ax" .global GetOccludedVolumeAmount__12CScriptSoundFRC9CVector3fRC13CStateManager GetOccludedVolumeAmount__12CScriptSoundFRC9CVector3fRC13CStateManager: /* 800AFD60 000ACCC0 94 21 FD F0 */ stwu r1, -0x210(r1) /* 800AFD64 000ACCC4 7C 08 02 A6 */ mflr r0 /* 800AFD68 000ACCC8 90 01 02 14 */ stw r0, 0x214(r1) /* 800AFD6C 000ACCCC DB E1 02 00 */ stfd f31, 0x200(r1) /* 800AFD70 000ACCD0 F3 E1 02 08 */ psq_st f31, 520(r1), 0, qr0 /* 800AFD74 000ACCD4 DB C1 01 F0 */ stfd f30, 0x1f0(r1) /* 800AFD78 000ACCD8 F3 C1 01 F8 */ psq_st f30, 504(r1), 0, qr0 /* 800AFD7C 000ACCDC DB A1 01 E0 */ stfd f29, 0x1e0(r1) /* 800AFD80 000ACCE0 F3 A1 01 E8 */ psq_st f29, 488(r1), 0, qr0 /* 800AFD84 000ACCE4 DB 81 01 D0 */ stfd f28, 0x1d0(r1) /* 800AFD88 000ACCE8 F3 81 01 D8 */ psq_st f28, 472(r1), 0, qr0 /* 800AFD8C 000ACCEC DB 61 01 C0 */ stfd f27, 0x1c0(r1) /* 800AFD90 000ACCF0 F3 61 01 C8 */ psq_st f27, 456(r1), 0, qr0 /* 800AFD94 000ACCF4 DB 41 01 B0 */ stfd f26, 0x1b0(r1) /* 800AFD98 000ACCF8 F3 41 01 B8 */ psq_st f26, 440(r1), 0, qr0 /* 800AFD9C 000ACCFC DB 21 01 A0 */ stfd f25, 0x1a0(r1) /* 800AFDA0 000ACD00 F3 21 01 A8 */ psq_st f25, 424(r1), 0, qr0 /* 800AFDA4 000ACD04 DB 01 01 90 */ stfd f24, 0x190(r1) /* 800AFDA8 000ACD08 F3 01 01 98 */ psq_st f24, 408(r1), 0, qr0 /* 800AFDAC 000ACD0C DA E1 01 80 */ stfd f23, 0x180(r1) /* 800AFDB0 000ACD10 F2 E1 01 88 */ psq_st f23, 392(r1), 0, qr0 /* 800AFDB4 000ACD14 DA C1 01 70 */ stfd f22, 0x170(r1) /* 800AFDB8 000ACD18 F2 C1 01 78 */ psq_st f22, 376(r1), 0, qr0 /* 800AFDBC 000ACD1C DA A1 01 60 */ stfd f21, 0x160(r1) /* 800AFDC0 000ACD20 F2 A1 01 68 */ psq_st f21, 360(r1), 0, qr0 /* 800AFDC4 000ACD24 DA 81 01 50 */ stfd f20, 0x150(r1) /* 800AFDC8 000ACD28 F2 81 01 58 */ psq_st f20, 344(r1), 0, qr0 /* 800AFDCC 000ACD2C DA 61 01 40 */ stfd f19, 0x140(r1) /* 800AFDD0 000ACD30 F2 61 01 48 */ psq_st f19, 328(r1), 0, qr0 /* 800AFDD4 000ACD34 DA 41 01 30 */ stfd f18, 0x130(r1) /* 800AFDD8 000ACD38 F2 41 01 38 */ psq_st f18, 312(r1), 0, qr0 /* 800AFDDC 000ACD3C DA 21 01 20 */ stfd f17, 0x120(r1) /* 800AFDE0 000ACD40 F2 21 01 28 */ psq_st f17, 296(r1), 0, qr0 /* 800AFDE4 000ACD44 DA 01 01 10 */ stfd f16, 0x110(r1) /* 800AFDE8 000ACD48 F2 01 01 18 */ psq_st f16, 280(r1), 0, qr0 /* 800AFDEC 000ACD4C D9 E1 01 00 */ stfd f15, 0x100(r1) /* 800AFDF0 000ACD50 F1 E1 01 08 */ psq_st f15, 264(r1), 0, qr0 /* 800AFDF4 000ACD54 BF 61 00 EC */ stmw r27, 0xec(r1) /* 800AFDF8 000ACD58 7C 9F 23 78 */ mr r31, r4 /* 800AFDFC 000ACD5C 7C 7E 1B 78 */ mr r30, r3 /* 800AFE00 000ACD60 80 84 08 70 */ lwz r4, 0x870(r4) /* 800AFE04 000ACD64 7F E5 FB 78 */ mr r5, r31 /* 800AFE08 000ACD68 38 61 00 78 */ addi r3, r1, 0x78 /* 800AFE0C 000ACD6C 4B F5 AB 5D */ bl GetCurrentCameraTransform__14CCameraManagerCFRC13CStateManager /* 800AFE10 000ACD70 38 61 00 A8 */ addi r3, r1, 0xa8 /* 800AFE14 000ACD74 38 81 00 78 */ addi r4, r1, 0x78 /* 800AFE18 000ACD78 48 26 2D 5D */ bl __ct__12CTransform4fFRC12CTransform4f /* 800AFE1C 000ACD7C C0 21 00 C4 */ lfs f1, 0xc4(r1) /* 800AFE20 000ACD80 38 61 00 20 */ addi r3, r1, 0x20 /* 800AFE24 000ACD84 C0 1E 00 04 */ lfs f0, 4(r30) /* 800AFE28 000ACD88 C0 61 00 D4 */ lfs f3, 0xd4(r1) /* 800AFE2C 000ACD8C C0 5E 00 08 */ lfs f2, 8(r30) /* 800AFE30 000ACD90 EC 81 00 28 */ fsubs f4, f1, f0 /* 800AFE34 000ACD94 C0 21 00 B4 */ lfs f1, 0xb4(r1) /* 800AFE38 000ACD98 C0 1E 00 00 */ lfs f0, 0(r30) /* 800AFE3C 000ACD9C EC 43 10 28 */ fsubs f2, f3, f2 /* 800AFE40 000ACDA0 D0 81 00 24 */ stfs f4, 0x24(r1) /* 800AFE44 000ACDA4 EC 01 00 28 */ fsubs f0, f1, f0 /* 800AFE48 000ACDA8 D0 41 00 28 */ stfs f2, 0x28(r1) /* 800AFE4C 000ACDAC D0 01 00 20 */ stfs f0, 0x20(r1) /* 800AFE50 000ACDB0 48 26 4A 69 */ bl Magnitude__9CVector3fCFv /* 800AFE54 000ACDB4 FE 40 08 90 */ fmr f18, f1 /* 800AFE58 000ACDB8 C0 82 8C 80 */ lfs f4, lbl_805AA9A0@sda21(r2) /* 800AFE5C 000ACDBC 88 0D A2 D8 */ lbz r0, lbl_805A8E98@sda21(r13) /* 800AFE60 000ACDC0 C0 41 00 24 */ lfs f2, 0x24(r1) /* 800AFE64 000ACDC4 EC A4 90 24 */ fdivs f5, f4, f18 /* 800AFE68 000ACDC8 C0 21 00 20 */ lfs f1, 0x20(r1) /* 800AFE6C 000ACDCC C0 01 00 28 */ lfs f0, 0x28(r1) /* 800AFE70 000ACDD0 7C 00 07 75 */ extsb. r0, r0 /* 800AFE74 000ACDD4 C0 62 8C 84 */ lfs f3, lbl_805AA9A4@sda21(r2) /* 800AFE78 000ACDD8 EF 45 00 B2 */ fmuls f26, f5, f2 /* 800AFE7C 000ACDDC EF 65 00 32 */ fmuls f27, f5, f0 /* 800AFE80 000ACDE0 EF 25 00 72 */ fmuls f25, f5, f1 /* 800AFE84 000ACDE4 EC 03 06 B2 */ fmuls f0, f3, f26 /* 800AFE88 000ACDE8 EC 03 06 7A */ fmadds f0, f3, f25, f0 /* 800AFE8C 000ACDEC EC 04 06 FA */ fmadds f0, f4, f27, f0 /* 800AFE90 000ACDF0 EC 40 06 72 */ fmuls f2, f0, f25 /* 800AFE94 000ACDF4 EC 20 06 B2 */ fmuls f1, f0, f26 /* 800AFE98 000ACDF8 EC 00 06 F2 */ fmuls f0, f0, f27 /* 800AFE9C 000ACDFC EE C3 10 28 */ fsubs f22, f3, f2 /* 800AFEA0 000ACE00 EE E3 08 28 */ fsubs f23, f3, f1 /* 800AFEA4 000ACE04 EF 04 00 28 */ fsubs f24, f4, f0 /* 800AFEA8 000ACE08 EC 16 06 B2 */ fmuls f0, f22, f26 /* 800AFEAC 000ACE0C EC 57 06 F2 */ fmuls f2, f23, f27 /* 800AFEB0 000ACE10 EC 38 06 72 */ fmuls f1, f24, f25 /* 800AFEB4 000ACE14 EE 79 05 F8 */ fmsubs f19, f25, f23, f0 /* 800AFEB8 000ACE18 EE BA 16 38 */ fmsubs f21, f26, f24, f2 /* 800AFEBC 000ACE1C EE 9B 0D B8 */ fmsubs f20, f27, f22, f1 /* 800AFEC0 000ACE20 40 82 00 18 */ bne lbl_800AFED8 /* 800AFEC4 000ACE24 C0 02 8C 88 */ lfs f0, lbl_805AA9A8@sda21(r2) /* 800AFEC8 000ACE28 38 00 00 01 */ li r0, 1 /* 800AFECC 000ACE2C 98 0D A2 D8 */ stb r0, lbl_805A8E98@sda21(r13) /* 800AFED0 000ACE30 EC 00 90 24 */ fdivs f0, f0, f18 /* 800AFED4 000ACE34 D0 0D A2 D4 */ stfs f0, lbl_805A8E94@sda21(r13) lbl_800AFED8: /* 800AFED8 000ACE38 88 0D A2 E0 */ lbz r0, lbl_805A8EA0@sda21(r13) /* 800AFEDC 000ACE3C 7C 00 07 75 */ extsb. r0, r0 /* 800AFEE0 000ACE40 40 82 00 14 */ bne lbl_800AFEF4 /* 800AFEE4 000ACE44 C0 0D A2 D4 */ lfs f0, lbl_805A8E94@sda21(r13) /* 800AFEE8 000ACE48 38 00 00 01 */ li r0, 1 /* 800AFEEC 000ACE4C 98 0D A2 E0 */ stb r0, lbl_805A8EA0@sda21(r13) /* 800AFEF0 000ACE50 D0 0D A2 DC */ stfs f0, lbl_805A8E9C@sda21(r13) lbl_800AFEF4: /* 800AFEF4 000ACE54 88 0D A2 E1 */ lbz r0, lbl_805A8EA1@sda21(r13) /* 800AFEF8 000ACE58 7C 00 07 75 */ extsb. r0, r0 /* 800AFEFC 000ACE5C 40 82 00 58 */ bne lbl_800AFF54 /* 800AFF00 000ACE60 80 AD 86 28 */ lwz r5, lbl_805A71E8@sda21(r13) /* 800AFF04 000ACE64 38 60 00 00 */ li r3, 0 /* 800AFF08 000ACE68 38 80 00 01 */ li r4, 1 /* 800AFF0C 000ACE6C 48 2D 9F E9 */ bl __shl2i /* 800AFF10 000ACE70 80 AD 86 24 */ lwz r5, lbl_805A71E4@sda21(r13) /* 800AFF14 000ACE74 7C 9C 23 78 */ mr r28, r4 /* 800AFF18 000ACE78 7C 7D 1B 78 */ mr r29, r3 /* 800AFF1C 000ACE7C 38 60 00 00 */ li r3, 0 /* 800AFF20 000ACE80 38 80 00 01 */ li r4, 1 /* 800AFF24 000ACE84 48 2D 9F D1 */ bl __shl2i /* 800AFF28 000ACE88 3C A0 80 47 */ lis r5, lbl_8046C438@ha /* 800AFF2C 000ACE8C 38 C0 00 03 */ li r6, 3 /* 800AFF30 000ACE90 38 A5 C4 38 */ addi r5, r5, lbl_8046C438@l /* 800AFF34 000ACE94 38 00 00 01 */ li r0, 1 /* 800AFF38 000ACE98 90 C1 00 40 */ stw r6, 0x40(r1) /* 800AFF3C 000ACE9C 90 85 00 04 */ stw r4, 4(r5) /* 800AFF40 000ACEA0 90 65 00 00 */ stw r3, 0(r5) /* 800AFF44 000ACEA4 93 85 00 0C */ stw r28, 0xc(r5) /* 800AFF48 000ACEA8 93 A5 00 08 */ stw r29, 8(r5) /* 800AFF4C 000ACEAC 90 C5 00 10 */ stw r6, 0x10(r5) /* 800AFF50 000ACEB0 98 0D A2 E1 */ stb r0, lbl_805A8EA1@sda21(r13) lbl_800AFF54: /* 800AFF54 000ACEB4 C3 8D A2 D4 */ lfs f28, lbl_805A8E94@sda21(r13) /* 800AFF58 000ACEB8 3C 60 80 47 */ lis r3, lbl_8046C438@ha /* 800AFF5C 000ACEBC C1 ED A2 DC */ lfs f15, lbl_805A8E9C@sda21(r13) /* 800AFF60 000ACEC0 3B A3 C4 38 */ addi r29, r3, lbl_8046C438@l /* 800AFF64 000ACEC4 FE 20 E0 50 */ fneg f17, f28 /* 800AFF68 000ACEC8 3B 80 00 00 */ li r28, 0 /* 800AFF6C 000ACECC 3B 60 00 00 */ li r27, 0 /* 800AFF70 000ACED0 48 00 00 98 */ b lbl_800B0008 lbl_800AFF74: /* 800AFF74 000ACED4 EC 11 05 B2 */ fmuls f0, f17, f22 /* 800AFF78 000ACED8 EC 31 05 F2 */ fmuls f1, f17, f23 /* 800AFF7C 000ACEDC EC 51 06 32 */ fmuls f2, f17, f24 /* 800AFF80 000ACEE0 FE 00 E0 50 */ fneg f16, f28 /* 800AFF84 000ACEE4 EF B9 00 2A */ fadds f29, f25, f0 /* 800AFF88 000ACEE8 EF DA 08 2A */ fadds f30, f26, f1 /* 800AFF8C 000ACEEC EF FB 10 2A */ fadds f31, f27, f2 /* 800AFF90 000ACEF0 48 00 00 68 */ b lbl_800AFFF8 lbl_800AFF94: /* 800AFF94 000ACEF4 EC 50 05 72 */ fmuls f2, f16, f21 /* 800AFF98 000ACEF8 38 61 00 08 */ addi r3, r1, 8 /* 800AFF9C 000ACEFC EC 30 05 32 */ fmuls f1, f16, f20 /* 800AFFA0 000ACF00 38 81 00 14 */ addi r4, r1, 0x14 /* 800AFFA4 000ACF04 EC 10 04 F2 */ fmuls f0, f16, f19 /* 800AFFA8 000ACF08 3B 9C 00 01 */ addi r28, r28, 1 /* 800AFFAC 000ACF0C EC 5D 10 2A */ fadds f2, f29, f2 /* 800AFFB0 000ACF10 EC 3E 08 2A */ fadds f1, f30, f1 /* 800AFFB4 000ACF14 EC 1F 00 2A */ fadds f0, f31, f0 /* 800AFFB8 000ACF18 D0 41 00 14 */ stfs f2, 0x14(r1) /* 800AFFBC 000ACF1C D0 21 00 18 */ stfs f1, 0x18(r1) /* 800AFFC0 000ACF20 D0 01 00 1C */ stfs f0, 0x1c(r1) /* 800AFFC4 000ACF24 48 26 48 8D */ bl AsNormalized__9CVector3fCFv /* 800AFFC8 000ACF28 FC 20 90 90 */ fmr f1, f18 /* 800AFFCC 000ACF2C 7F E4 FB 78 */ mr r4, r31 /* 800AFFD0 000ACF30 7F C5 F3 78 */ mr r5, r30 /* 800AFFD4 000ACF34 7F A7 EB 78 */ mr r7, r29 /* 800AFFD8 000ACF38 38 61 00 48 */ addi r3, r1, 0x48 /* 800AFFDC 000ACF3C 38 C1 00 08 */ addi r6, r1, 8 /* 800AFFE0 000ACF40 4B F9 CF B9 */ bl RayStaticIntersection__13CStateManagerCFRC9CVector3fRC9CVector3ffRC15CMaterialFilter /* 800AFFE4 000ACF44 88 01 00 68 */ lbz r0, 0x68(r1) /* 800AFFE8 000ACF48 28 00 00 00 */ cmplwi r0, 0 /* 800AFFEC 000ACF4C 40 82 00 08 */ bne lbl_800AFFF4 /* 800AFFF0 000ACF50 3B 7B 00 01 */ addi r27, r27, 1 lbl_800AFFF4: /* 800AFFF4 000ACF54 EE 10 78 2A */ fadds f16, f16, f15 lbl_800AFFF8: /* 800AFFF8 000ACF58 FC 10 E0 40 */ fcmpo cr0, f16, f28 /* 800AFFFC 000ACF5C 4C 40 13 82 */ cror 2, 0, 2 /* 800B0000 000ACF60 41 82 FF 94 */ beq lbl_800AFF94 /* 800B0004 000ACF64 EE 31 78 2A */ fadds f17, f17, f15 lbl_800B0008: /* 800B0008 000ACF68 FC 11 E0 40 */ fcmpo cr0, f17, f28 /* 800B000C 000ACF6C 4C 40 13 82 */ cror 2, 0, 2 /* 800B0010 000ACF70 41 82 FF 64 */ beq lbl_800AFF74 /* 800B0014 000ACF74 3C 60 43 30 */ lis r3, 0x4330 /* 800B0018 000ACF78 6F 64 80 00 */ xoris r4, r27, 0x8000 /* 800B001C 000ACF7C 6F 80 80 00 */ xoris r0, r28, 0x8000 /* 800B0020 000ACF80 90 81 00 DC */ stw r4, 0xdc(r1) /* 800B0024 000ACF84 C8 62 8C 98 */ lfd f3, lbl_805AA9B8@sda21(r2) /* 800B0028 000ACF88 90 61 00 D8 */ stw r3, 0xd8(r1) /* 800B002C 000ACF8C C0 82 8C 90 */ lfs f4, lbl_805AA9B0@sda21(r2) /* 800B0030 000ACF90 C8 01 00 D8 */ lfd f0, 0xd8(r1) /* 800B0034 000ACF94 90 01 00 E4 */ stw r0, 0xe4(r1) /* 800B0038 000ACF98 EC 40 18 28 */ fsubs f2, f0, f3 /* 800B003C 000ACF9C C0 02 8C 8C */ lfs f0, lbl_805AA9AC@sda21(r2) /* 800B0040 000ACFA0 90 61 00 E0 */ stw r3, 0xe0(r1) /* 800B0044 000ACFA4 C8 21 00 E0 */ lfd f1, 0xe0(r1) /* 800B0048 000ACFA8 EC 21 18 28 */ fsubs f1, f1, f3 /* 800B004C 000ACFAC EC 22 08 24 */ fdivs f1, f2, f1 /* 800B0050 000ACFB0 EC 24 00 7A */ fmadds f1, f4, f1, f0 /* 800B0054 000ACFB4 E3 E1 02 08 */ psq_l f31, 520(r1), 0, qr0 /* 800B0058 000ACFB8 CB E1 02 00 */ lfd f31, 0x200(r1) /* 800B005C 000ACFBC E3 C1 01 F8 */ psq_l f30, 504(r1), 0, qr0 /* 800B0060 000ACFC0 CB C1 01 F0 */ lfd f30, 0x1f0(r1) /* 800B0064 000ACFC4 E3 A1 01 E8 */ psq_l f29, 488(r1), 0, qr0 /* 800B0068 000ACFC8 CB A1 01 E0 */ lfd f29, 0x1e0(r1) /* 800B006C 000ACFCC E3 81 01 D8 */ psq_l f28, 472(r1), 0, qr0 /* 800B0070 000ACFD0 CB 81 01 D0 */ lfd f28, 0x1d0(r1) /* 800B0074 000ACFD4 E3 61 01 C8 */ psq_l f27, 456(r1), 0, qr0 /* 800B0078 000ACFD8 CB 61 01 C0 */ lfd f27, 0x1c0(r1) /* 800B007C 000ACFDC E3 41 01 B8 */ psq_l f26, 440(r1), 0, qr0 /* 800B0080 000ACFE0 CB 41 01 B0 */ lfd f26, 0x1b0(r1) /* 800B0084 000ACFE4 E3 21 01 A8 */ psq_l f25, 424(r1), 0, qr0 /* 800B0088 000ACFE8 CB 21 01 A0 */ lfd f25, 0x1a0(r1) /* 800B008C 000ACFEC E3 01 01 98 */ psq_l f24, 408(r1), 0, qr0 /* 800B0090 000ACFF0 CB 01 01 90 */ lfd f24, 0x190(r1) /* 800B0094 000ACFF4 E2 E1 01 88 */ psq_l f23, 392(r1), 0, qr0 /* 800B0098 000ACFF8 CA E1 01 80 */ lfd f23, 0x180(r1) /* 800B009C 000ACFFC E2 C1 01 78 */ psq_l f22, 376(r1), 0, qr0 /* 800B00A0 000AD000 CA C1 01 70 */ lfd f22, 0x170(r1) /* 800B00A4 000AD004 E2 A1 01 68 */ psq_l f21, 360(r1), 0, qr0 /* 800B00A8 000AD008 CA A1 01 60 */ lfd f21, 0x160(r1) /* 800B00AC 000AD00C E2 81 01 58 */ psq_l f20, 344(r1), 0, qr0 /* 800B00B0 000AD010 CA 81 01 50 */ lfd f20, 0x150(r1) /* 800B00B4 000AD014 E2 61 01 48 */ psq_l f19, 328(r1), 0, qr0 /* 800B00B8 000AD018 CA 61 01 40 */ lfd f19, 0x140(r1) /* 800B00BC 000AD01C E2 41 01 38 */ psq_l f18, 312(r1), 0, qr0 /* 800B00C0 000AD020 CA 41 01 30 */ lfd f18, 0x130(r1) /* 800B00C4 000AD024 E2 21 01 28 */ psq_l f17, 296(r1), 0, qr0 /* 800B00C8 000AD028 CA 21 01 20 */ lfd f17, 0x120(r1) /* 800B00CC 000AD02C E2 01 01 18 */ psq_l f16, 280(r1), 0, qr0 /* 800B00D0 000AD030 CA 01 01 10 */ lfd f16, 0x110(r1) /* 800B00D4 000AD034 E1 E1 01 08 */ psq_l f15, 264(r1), 0, qr0 /* 800B00D8 000AD038 C9 E1 01 00 */ lfd f15, 0x100(r1) /* 800B00DC 000AD03C BB 61 00 EC */ lmw r27, 0xec(r1) /* 800B00E0 000AD040 80 01 02 14 */ lwz r0, 0x214(r1) /* 800B00E4 000AD044 7C 08 03 A6 */ mtlr r0 /* 800B00E8 000AD048 38 21 02 10 */ addi r1, r1, 0x210 /* 800B00EC 000AD04C 4E 80 00 20 */ blr .global Accept__12CScriptSoundFR8IVisitor Accept__12CScriptSoundFR8IVisitor: /* 800B00F0 000AD050 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800B00F4 000AD054 7C 08 02 A6 */ mflr r0 /* 800B00F8 000AD058 90 01 00 14 */ stw r0, 0x14(r1) /* 800B00FC 000AD05C 7C 60 1B 78 */ mr r0, r3 /* 800B0100 000AD060 7C 83 23 78 */ mr r3, r4 /* 800B0104 000AD064 81 84 00 00 */ lwz r12, 0(r4) /* 800B0108 000AD068 7C 04 03 78 */ mr r4, r0 /* 800B010C 000AD06C 81 8C 00 AC */ lwz r12, 0xac(r12) /* 800B0110 000AD070 7D 89 03 A6 */ mtctr r12 /* 800B0114 000AD074 4E 80 04 21 */ bctrl /* 800B0118 000AD078 80 01 00 14 */ lwz r0, 0x14(r1) /* 800B011C 000AD07C 7C 08 03 A6 */ mtlr r0 /* 800B0120 000AD080 38 21 00 10 */ addi r1, r1, 0x10 /* 800B0124 000AD084 4E 80 00 20 */ blr .global AddToRenderer__12CScriptSoundCFRC14CFrustumPlanesRC13CStateManager AddToRenderer__12CScriptSoundCFRC14CFrustumPlanesRC13CStateManager: /* 800B0128 000AD088 4E 80 00 20 */ blr .global StopSound__12CScriptSoundFv StopSound__12CScriptSoundFv: /* 800B012C 000AD08C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800B0130 000AD090 7C 08 02 A6 */ mflr r0 /* 800B0134 000AD094 90 01 00 24 */ stw r0, 0x24(r1) /* 800B0138 000AD098 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800B013C 000AD09C 7C 7F 1B 78 */ mr r31, r3 /* 800B0140 000AD0A0 38 60 00 00 */ li r3, 0 /* 800B0144 000AD0A4 88 1F 01 1C */ lbz r0, 0x11c(r31) /* 800B0148 000AD0A8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 800B014C 000AD0AC 98 1F 01 1C */ stb r0, 0x11c(r31) /* 800B0150 000AD0B0 88 7F 01 1C */ lbz r3, 0x11c(r31) /* 800B0154 000AD0B4 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f /* 800B0158 000AD0B8 41 82 00 28 */ beq lbl_800B0180 /* 800B015C 000AD0BC 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f /* 800B0160 000AD0C0 41 82 00 20 */ beq lbl_800B0180 /* 800B0164 000AD0C4 A0 1F 01 00 */ lhz r0, 0x100(r31) /* 800B0168 000AD0C8 80 64 08 50 */ lwz r3, 0x850(r4) /* 800B016C 000AD0CC 7C 04 03 78 */ mr r4, r0 /* 800B0170 000AD0D0 4B FA 5C F5 */ bl StopSound__6CWorldFs /* 800B0174 000AD0D4 38 00 00 00 */ li r0, 0 /* 800B0178 000AD0D8 90 1F 00 EC */ stw r0, 0xec(r31) /* 800B017C 000AD0DC 48 00 00 28 */ b lbl_800B01A4 lbl_800B0180: /* 800B0180 000AD0E0 80 1F 00 EC */ lwz r0, 0xec(r31) /* 800B0184 000AD0E4 28 00 00 00 */ cmplwi r0, 0 /* 800B0188 000AD0E8 41 82 00 1C */ beq lbl_800B01A4 /* 800B018C 000AD0EC 80 1F 00 EC */ lwz r0, 0xec(r31) /* 800B0190 000AD0F0 38 61 00 08 */ addi r3, r1, 8 /* 800B0194 000AD0F4 90 01 00 08 */ stw r0, 8(r1) /* 800B0198 000AD0F8 48 23 9C ED */ bl RemoveEmitter__11CSfxManagerFRC10CSfxHandle /* 800B019C 000AD0FC 38 00 00 00 */ li r0, 0 /* 800B01A0 000AD100 90 1F 00 EC */ stw r0, 0xec(r31) lbl_800B01A4: /* 800B01A4 000AD104 80 01 00 24 */ lwz r0, 0x24(r1) /* 800B01A8 000AD108 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800B01AC 000AD10C 7C 08 03 A6 */ mtlr r0 /* 800B01B0 000AD110 38 21 00 20 */ addi r1, r1, 0x20 /* 800B01B4 000AD114 4E 80 00 20 */ blr .global PlaySound__12CScriptSoundFR13CStateManager PlaySound__12CScriptSoundFR13CStateManager: /* 800B01B8 000AD118 94 21 FF 80 */ stwu r1, -0x80(r1) /* 800B01BC 000AD11C 7C 08 02 A6 */ mflr r0 /* 800B01C0 000AD120 90 01 00 84 */ stw r0, 0x84(r1) /* 800B01C4 000AD124 DB E1 00 70 */ stfd f31, 0x70(r1) /* 800B01C8 000AD128 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 800B01CC 000AD12C 93 E1 00 6C */ stw r31, 0x6c(r1) /* 800B01D0 000AD130 93 C1 00 68 */ stw r30, 0x68(r1) /* 800B01D4 000AD134 93 A1 00 64 */ stw r29, 0x64(r1) /* 800B01D8 000AD138 88 03 01 1D */ lbz r0, 0x11d(r3) /* 800B01DC 000AD13C 7C 7D 1B 78 */ mr r29, r3 /* 800B01E0 000AD140 83 E3 00 04 */ lwz r31, 4(r3) /* 800B01E4 000AD144 7C 9E 23 78 */ mr r30, r4 /* 800B01E8 000AD148 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800B01EC 000AD14C 40 82 00 28 */ bne lbl_800B0214 /* 800B01F0 000AD150 80 1D 00 EC */ lwz r0, 0xec(r29) /* 800B01F4 000AD154 28 00 00 00 */ cmplwi r0, 0 /* 800B01F8 000AD158 41 82 00 1C */ beq lbl_800B0214 /* 800B01FC 000AD15C 80 1D 00 EC */ lwz r0, 0xec(r29) /* 800B0200 000AD160 38 61 00 1C */ addi r3, r1, 0x1c /* 800B0204 000AD164 90 01 00 1C */ stw r0, 0x1c(r1) /* 800B0208 000AD168 48 23 8B 2D */ bl IsHandleValid__11CSfxManagerF10CSfxHandle /* 800B020C 000AD16C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800B0210 000AD170 40 82 01 EC */ bne lbl_800B03FC lbl_800B0214: /* 800B0214 000AD174 88 7D 01 1D */ lbz r3, 0x11d(r29) /* 800B0218 000AD178 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f /* 800B021C 000AD17C 41 82 00 08 */ beq lbl_800B0224 /* 800B0220 000AD180 48 00 01 DC */ b lbl_800B03FC lbl_800B0224: /* 800B0224 000AD184 38 00 00 01 */ li r0, 1 /* 800B0228 000AD188 50 03 36 72 */ rlwimi r3, r0, 6, 0x19, 0x19 /* 800B022C 000AD18C 98 7D 01 1D */ stb r3, 0x11d(r29) /* 800B0230 000AD190 88 7D 01 1C */ lbz r3, 0x11c(r29) /* 800B0234 000AD194 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f /* 800B0238 000AD198 41 82 00 88 */ beq lbl_800B02C0 /* 800B023C 000AD19C 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f /* 800B0240 000AD1A0 83 DE 08 50 */ lwz r30, 0x850(r30) /* 800B0244 000AD1A4 41 82 00 18 */ beq lbl_800B025C /* 800B0248 000AD1A8 A0 9D 01 00 */ lhz r4, 0x100(r29) /* 800B024C 000AD1AC 7F C3 F3 78 */ mr r3, r30 /* 800B0250 000AD1B0 4B FA 5D 29 */ bl IsPlayingSound__6CWorldCFUi /* 800B0254 000AD1B4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800B0258 000AD1B8 40 82 01 A4 */ bne lbl_800B03FC lbl_800B025C: /* 800B025C 000AD1BC 88 FD 01 1C */ lbz r7, 0x11c(r29) /* 800B0260 000AD1C0 38 61 00 18 */ addi r3, r1, 0x18 /* 800B0264 000AD1C4 A0 9D 01 00 */ lhz r4, 0x100(r29) /* 800B0268 000AD1C8 54 E0 FF FF */ rlwinm. r0, r7, 0x1f, 0x1f, 0x1f /* 800B026C 000AD1CC 54 E9 D7 FE */ rlwinm r9, r7, 0x1a, 0x1f, 0x1f /* 800B0270 000AD1D0 A8 BD 01 0E */ lha r5, 0x10e(r29) /* 800B0274 000AD1D4 54 E7 F7 FE */ rlwinm r7, r7, 0x1e, 0x1f, 0x1f /* 800B0278 000AD1D8 A8 DD 01 14 */ lha r6, 0x114(r29) /* 800B027C 000AD1DC A9 1D 01 12 */ lha r8, 0x112(r29) /* 800B0280 000AD1E0 41 82 00 08 */ beq lbl_800B0288 /* 800B0284 000AD1E4 83 E2 C6 00 */ lwz r31, lbl_805AE320@sda21(r2) lbl_800B0288: /* 800B0288 000AD1E8 7F EA FB 78 */ mr r10, r31 /* 800B028C 000AD1EC 48 23 9A E9 */ bl SfxStart__11CSfxManagerFUsssbsbi /* 800B0290 000AD1F0 80 01 00 18 */ lwz r0, 0x18(r1) /* 800B0294 000AD1F4 90 1D 00 EC */ stw r0, 0xec(r29) /* 800B0298 000AD1F8 88 1D 01 1C */ lbz r0, 0x11c(r29) /* 800B029C 000AD1FC 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 800B02A0 000AD200 41 82 01 5C */ beq lbl_800B03FC /* 800B02A4 000AD204 80 1D 00 EC */ lwz r0, 0xec(r29) /* 800B02A8 000AD208 7F C3 F3 78 */ mr r3, r30 /* 800B02AC 000AD20C 38 A1 00 14 */ addi r5, r1, 0x14 /* 800B02B0 000AD210 90 01 00 14 */ stw r0, 0x14(r1) /* 800B02B4 000AD214 A0 9D 01 00 */ lhz r4, 0x100(r29) /* 800B02B8 000AD218 4B FA 5C 85 */ bl AddGlobalSound__6CWorldFUs10CSfxHandle /* 800B02BC 000AD21C 48 00 01 40 */ b lbl_800B03FC lbl_800B02C0: /* 800B02C0 000AD220 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f /* 800B02C4 000AD224 41 82 00 2C */ beq lbl_800B02F0 /* 800B02C8 000AD228 C0 5D 00 60 */ lfs f2, 0x60(r29) /* 800B02CC 000AD22C 7F C4 F3 78 */ mr r4, r30 /* 800B02D0 000AD230 C0 3D 00 50 */ lfs f1, 0x50(r29) /* 800B02D4 000AD234 38 61 00 20 */ addi r3, r1, 0x20 /* 800B02D8 000AD238 C0 1D 00 40 */ lfs f0, 0x40(r29) /* 800B02DC 000AD23C D0 01 00 20 */ stfs f0, 0x20(r1) /* 800B02E0 000AD240 D0 21 00 24 */ stfs f1, 0x24(r1) /* 800B02E4 000AD244 D0 41 00 28 */ stfs f2, 0x28(r1) /* 800B02E8 000AD248 4B FF FA 79 */ bl GetOccludedVolumeAmount__12CScriptSoundFRC9CVector3fRC13CStateManager /* 800B02EC 000AD24C 48 00 00 08 */ b lbl_800B02F4 lbl_800B02F0: /* 800B02F0 000AD250 C0 22 8C 80 */ lfs f1, lbl_805AA9A0@sda21(r2) lbl_800B02F4: /* 800B02F4 000AD254 A8 7D 01 0E */ lha r3, 0x10e(r29) /* 800B02F8 000AD258 3C 00 43 30 */ lis r0, 0x4330 /* 800B02FC 000AD25C 90 01 00 58 */ stw r0, 0x58(r1) /* 800B0300 000AD260 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 800B0304 000AD264 C8 42 8C 98 */ lfd f2, lbl_805AA9B8@sda21(r2) /* 800B0308 000AD268 90 01 00 5C */ stw r0, 0x5c(r1) /* 800B030C 000AD26C C8 01 00 58 */ lfd f0, 0x58(r1) /* 800B0310 000AD270 EC 00 10 28 */ fsubs f0, f0, f2 /* 800B0314 000AD274 EF E0 00 72 */ fmuls f31, f0, f1 /* 800B0318 000AD278 F3 E1 B0 08 */ psq_st f31, 8(r1), 1, qr3 /* 800B031C 000AD27C 38 80 00 01 */ li r4, 1 /* 800B0320 000AD280 C0 02 8C 84 */ lfs f0, lbl_805AA9A4@sda21(r2) /* 800B0324 000AD284 38 60 00 00 */ li r3, 0 /* 800B0328 000AD288 A0 A1 00 08 */ lhz r5, 8(r1) /* 800B032C 000AD28C 88 02 CC 41 */ lbz r0, lbl_805AE961@sda21(r2) /* 800B0330 000AD290 B0 BD 00 F0 */ sth r5, 0xf0(r29) /* 800B0334 000AD294 A8 BD 00 F0 */ lha r5, 0xf0(r29) /* 800B0338 000AD298 B0 BD 00 F2 */ sth r5, 0xf2(r29) /* 800B033C 000AD29C A8 DD 01 0C */ lha r6, 0x10c(r29) /* 800B0340 000AD2A0 A8 BD 00 F0 */ lha r5, 0xf0(r29) /* 800B0344 000AD2A4 C0 5D 01 08 */ lfs f2, 0x108(r29) /* 800B0348 000AD2A8 C0 3D 01 04 */ lfs f1, 0x104(r29) /* 800B034C 000AD2AC D0 01 00 2C */ stfs f0, 0x2c(r1) /* 800B0350 000AD2B0 D0 01 00 30 */ stfs f0, 0x30(r1) /* 800B0354 000AD2B4 D0 01 00 34 */ stfs f0, 0x34(r1) /* 800B0358 000AD2B8 D0 01 00 38 */ stfs f0, 0x38(r1) /* 800B035C 000AD2BC D0 01 00 3C */ stfs f0, 0x3c(r1) /* 800B0360 000AD2C0 D0 01 00 40 */ stfs f0, 0x40(r1) /* 800B0364 000AD2C4 D0 21 00 44 */ stfs f1, 0x44(r1) /* 800B0368 000AD2C8 D0 41 00 48 */ stfs f2, 0x48(r1) /* 800B036C 000AD2CC 90 81 00 4C */ stw r4, 0x4c(r1) /* 800B0370 000AD2D0 B0 61 00 50 */ sth r3, 0x50(r1) /* 800B0374 000AD2D4 98 A1 00 52 */ stb r5, 0x52(r1) /* 800B0378 000AD2D8 98 C1 00 53 */ stb r6, 0x53(r1) /* 800B037C 000AD2DC 98 61 00 54 */ stb r3, 0x54(r1) /* 800B0380 000AD2E0 98 01 00 55 */ stb r0, 0x55(r1) /* 800B0384 000AD2E4 C0 5D 00 60 */ lfs f2, 0x60(r29) /* 800B0388 000AD2E8 C0 3D 00 50 */ lfs f1, 0x50(r29) /* 800B038C 000AD2EC C0 1D 00 40 */ lfs f0, 0x40(r29) /* 800B0390 000AD2F0 D0 01 00 2C */ stfs f0, 0x2c(r1) /* 800B0394 000AD2F4 D0 21 00 30 */ stfs f1, 0x30(r1) /* 800B0398 000AD2F8 D0 41 00 34 */ stfs f2, 0x34(r1) /* 800B039C 000AD2FC A0 1D 01 00 */ lhz r0, 0x100(r29) /* 800B03A0 000AD300 B0 01 00 50 */ sth r0, 0x50(r1) /* 800B03A4 000AD304 88 BD 01 1C */ lbz r5, 0x11c(r29) /* 800B03A8 000AD308 54 A0 D7 FF */ rlwinm. r0, r5, 0x1a, 0x1f, 0x1f /* 800B03AC 000AD30C 41 82 00 2C */ beq lbl_800B03D8 /* 800B03B0 000AD310 A8 DD 01 12 */ lha r6, 0x112(r29) /* 800B03B4 000AD314 7F E8 FB 78 */ mr r8, r31 /* 800B03B8 000AD318 38 61 00 10 */ addi r3, r1, 0x10 /* 800B03BC 000AD31C 38 81 00 2C */ addi r4, r1, 0x2c /* 800B03C0 000AD320 54 A5 F7 FE */ rlwinm r5, r5, 0x1e, 0x1f, 0x1f /* 800B03C4 000AD324 38 E0 00 01 */ li r7, 1 /* 800B03C8 000AD328 48 23 9C 19 */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi /* 800B03CC 000AD32C 80 01 00 10 */ lwz r0, 0x10(r1) /* 800B03D0 000AD330 90 1D 00 EC */ stw r0, 0xec(r29) /* 800B03D4 000AD334 48 00 00 28 */ b lbl_800B03FC lbl_800B03D8: /* 800B03D8 000AD338 A8 DD 01 12 */ lha r6, 0x112(r29) /* 800B03DC 000AD33C 7F E8 FB 78 */ mr r8, r31 /* 800B03E0 000AD340 38 61 00 0C */ addi r3, r1, 0xc /* 800B03E4 000AD344 38 81 00 2C */ addi r4, r1, 0x2c /* 800B03E8 000AD348 54 A5 F7 FE */ rlwinm r5, r5, 0x1e, 0x1f, 0x1f /* 800B03EC 000AD34C 38 E0 00 00 */ li r7, 0 /* 800B03F0 000AD350 48 23 9B F1 */ bl AddEmitter__11CSfxManagerFRQ29CAudioSys18C3DEmitterParmDatabsbi /* 800B03F4 000AD354 80 01 00 0C */ lwz r0, 0xc(r1) /* 800B03F8 000AD358 90 1D 00 EC */ stw r0, 0xec(r29) lbl_800B03FC: /* 800B03FC 000AD35C E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 800B0400 000AD360 80 01 00 84 */ lwz r0, 0x84(r1) /* 800B0404 000AD364 CB E1 00 70 */ lfd f31, 0x70(r1) /* 800B0408 000AD368 83 E1 00 6C */ lwz r31, 0x6c(r1) /* 800B040C 000AD36C 83 C1 00 68 */ lwz r30, 0x68(r1) /* 800B0410 000AD370 83 A1 00 64 */ lwz r29, 0x64(r1) /* 800B0414 000AD374 7C 08 03 A6 */ mtlr r0 /* 800B0418 000AD378 38 21 00 80 */ addi r1, r1, 0x80 /* 800B041C 000AD37C 4E 80 00 20 */ blr .global AcceptScriptMsg__12CScriptSoundF20EScriptObjectMessage9TUniqueIdR13CStateManager AcceptScriptMsg__12CScriptSoundF20EScriptObjectMessage9TUniqueIdR13CStateManager: /* 800B0420 000AD380 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800B0424 000AD384 7C 08 02 A6 */ mflr r0 /* 800B0428 000AD388 90 01 00 24 */ stw r0, 0x24(r1) /* 800B042C 000AD38C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800B0430 000AD390 7C DF 33 78 */ mr r31, r6 /* 800B0434 000AD394 93 C1 00 18 */ stw r30, 0x18(r1) /* 800B0438 000AD398 7C 7E 1B 78 */ mr r30, r3 /* 800B043C 000AD39C 93 A1 00 14 */ stw r29, 0x14(r1) /* 800B0440 000AD3A0 7C 9D 23 78 */ mr r29, r4 /* 800B0444 000AD3A4 A0 05 00 00 */ lhz r0, 0(r5) /* 800B0448 000AD3A8 38 A1 00 08 */ addi r5, r1, 8 /* 800B044C 000AD3AC B0 01 00 08 */ sth r0, 8(r1) /* 800B0450 000AD3B0 4B FA 31 C5 */ bl AcceptScriptMsg__6CActorF20EScriptObjectMessage9TUniqueIdR13CStateManager /* 800B0454 000AD3B4 28 1D 00 22 */ cmplwi r29, 0x22 /* 800B0458 000AD3B8 41 81 00 D0 */ bgt lbl_800B0528 /* 800B045C 000AD3BC 3C 60 80 3E */ lis r3, lbl_803DF194@ha /* 800B0460 000AD3C0 57 A0 10 3A */ slwi r0, r29, 2 /* 800B0464 000AD3C4 38 63 F1 94 */ addi r3, r3, lbl_803DF194@l /* 800B0468 000AD3C8 7C 03 00 2E */ lwzx r0, r3, r0 /* 800B046C 000AD3CC 7C 09 03 A6 */ mtctr r0 /* 800B0470 000AD3D0 4E 80 04 20 */ bctr .global lbl_800B0474 lbl_800B0474: /* 800B0474 000AD3D4 88 1E 00 30 */ lbz r0, 0x30(r30) /* 800B0478 000AD3D8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800B047C 000AD3DC 41 82 00 1C */ beq lbl_800B0498 /* 800B0480 000AD3E0 88 7E 01 1C */ lbz r3, 0x11c(r30) /* 800B0484 000AD3E4 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f /* 800B0488 000AD3E8 41 82 00 10 */ beq lbl_800B0498 /* 800B048C 000AD3EC 38 00 00 01 */ li r0, 1 /* 800B0490 000AD3F0 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 /* 800B0494 000AD3F4 98 7E 01 1C */ stb r3, 0x11c(r30) lbl_800B0498: /* 800B0498 000AD3F8 88 7F 0F 94 */ lbz r3, 0xf94(r31) /* 800B049C 000AD3FC 88 1E 01 1C */ lbz r0, 0x11c(r30) /* 800B04A0 000AD400 50 60 DF FE */ rlwimi r0, r3, 0x1b, 0x1f, 0x1f /* 800B04A4 000AD404 98 1E 01 1C */ stb r0, 0x11c(r30) /* 800B04A8 000AD408 48 00 00 80 */ b lbl_800B0528 .global lbl_800B04AC lbl_800B04AC: /* 800B04AC 000AD40C 88 1E 00 30 */ lbz r0, 0x30(r30) /* 800B04B0 000AD410 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800B04B4 000AD414 41 82 00 74 */ beq lbl_800B0528 /* 800B04B8 000AD418 7F C3 F3 78 */ mr r3, r30 /* 800B04BC 000AD41C 7F E4 FB 78 */ mr r4, r31 /* 800B04C0 000AD420 4B FF FC F9 */ bl PlaySound__12CScriptSoundFR13CStateManager /* 800B04C4 000AD424 48 00 00 64 */ b lbl_800B0528 .global lbl_800B04C8 lbl_800B04C8: /* 800B04C8 000AD428 88 1E 00 30 */ lbz r0, 0x30(r30) /* 800B04CC 000AD42C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800B04D0 000AD430 41 82 00 58 */ beq lbl_800B0528 /* 800B04D4 000AD434 7F C3 F3 78 */ mr r3, r30 /* 800B04D8 000AD438 7F E4 FB 78 */ mr r4, r31 /* 800B04DC 000AD43C 4B FF FC 51 */ bl StopSound__12CScriptSoundFv /* 800B04E0 000AD440 48 00 00 48 */ b lbl_800B0528 .global lbl_800B04E4 lbl_800B04E4: /* 800B04E4 000AD444 7F C3 F3 78 */ mr r3, r30 /* 800B04E8 000AD448 7F E4 FB 78 */ mr r4, r31 /* 800B04EC 000AD44C 4B FF FC 41 */ bl StopSound__12CScriptSoundFv /* 800B04F0 000AD450 48 00 00 38 */ b lbl_800B0528 .global lbl_800B04F4 lbl_800B04F4: /* 800B04F4 000AD454 88 7E 01 1C */ lbz r3, 0x11c(r30) /* 800B04F8 000AD458 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f /* 800B04FC 000AD45C 41 82 00 2C */ beq lbl_800B0528 /* 800B0500 000AD460 38 00 00 01 */ li r0, 1 /* 800B0504 000AD464 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 /* 800B0508 000AD468 98 7E 01 1C */ stb r3, 0x11c(r30) /* 800B050C 000AD46C 48 00 00 1C */ b lbl_800B0528 .global lbl_800B0510 lbl_800B0510: /* 800B0510 000AD470 88 1E 01 1C */ lbz r0, 0x11c(r30) /* 800B0514 000AD474 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f /* 800B0518 000AD478 40 82 00 10 */ bne lbl_800B0528 /* 800B051C 000AD47C 7F C3 F3 78 */ mr r3, r30 /* 800B0520 000AD480 7F E4 FB 78 */ mr r4, r31 /* 800B0524 000AD484 4B FF FC 09 */ bl StopSound__12CScriptSoundFv .global lbl_800B0528 lbl_800B0528: /* 800B0528 000AD488 80 01 00 24 */ lwz r0, 0x24(r1) /* 800B052C 000AD48C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800B0530 000AD490 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800B0534 000AD494 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800B0538 000AD498 7C 08 03 A6 */ mtlr r0 /* 800B053C 000AD49C 38 21 00 20 */ addi r1, r1, 0x20 /* 800B0540 000AD4A0 4E 80 00 20 */ blr .global Think__12CScriptSoundFfR13CStateManager Think__12CScriptSoundFfR13CStateManager: /* 800B0544 000AD4A4 94 21 FF 80 */ stwu r1, -0x80(r1) /* 800B0548 000AD4A8 7C 08 02 A6 */ mflr r0 /* 800B054C 000AD4AC 90 01 00 84 */ stw r0, 0x84(r1) /* 800B0550 000AD4B0 DB E1 00 70 */ stfd f31, 0x70(r1) /* 800B0554 000AD4B4 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0 /* 800B0558 000AD4B8 DB C1 00 60 */ stfd f30, 0x60(r1) /* 800B055C 000AD4BC F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0 /* 800B0560 000AD4C0 93 E1 00 5C */ stw r31, 0x5c(r1) /* 800B0564 000AD4C4 93 C1 00 58 */ stw r30, 0x58(r1) /* 800B0568 000AD4C8 7C 7E 1B 78 */ mr r30, r3 /* 800B056C 000AD4CC 88 63 01 1C */ lbz r3, 0x11c(r3) /* 800B0570 000AD4D0 FF E0 08 90 */ fmr f31, f1 /* 800B0574 000AD4D4 7C 9F 23 78 */ mr r31, r4 /* 800B0578 000AD4D8 54 60 07 FF */ clrlwi. r0, r3, 0x1f /* 800B057C 000AD4DC 41 82 00 3C */ beq lbl_800B05B8 /* 800B0580 000AD4E0 88 1E 00 30 */ lbz r0, 0x30(r30) /* 800B0584 000AD4E4 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800B0588 000AD4E8 41 82 00 14 */ beq lbl_800B059C /* 800B058C 000AD4EC 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f /* 800B0590 000AD4F0 40 82 00 0C */ bne lbl_800B059C /* 800B0594 000AD4F4 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f /* 800B0598 000AD4F8 40 82 00 20 */ bne lbl_800B05B8 lbl_800B059C: /* 800B059C 000AD4FC A0 1E 00 08 */ lhz r0, 8(r30) /* 800B05A0 000AD500 7F E3 FB 78 */ mr r3, r31 /* 800B05A4 000AD504 38 81 00 18 */ addi r4, r1, 0x18 /* 800B05A8 000AD508 B0 01 00 14 */ sth r0, 0x14(r1) /* 800B05AC 000AD50C B0 01 00 18 */ sth r0, 0x18(r1) /* 800B05B0 000AD510 4B F9 BC BD */ bl FreeScriptObject__13CStateManagerF9TUniqueId /* 800B05B4 000AD514 48 00 03 24 */ b lbl_800B08D8 lbl_800B05B8: /* 800B05B8 000AD518 88 1E 00 30 */ lbz r0, 0x30(r30) /* 800B05BC 000AD51C 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800B05C0 000AD520 41 82 03 18 */ beq lbl_800B08D8 /* 800B05C4 000AD524 88 7E 01 1C */ lbz r3, 0x11c(r30) /* 800B05C8 000AD528 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f /* 800B05CC 000AD52C 40 82 00 50 */ bne lbl_800B061C /* 800B05D0 000AD530 54 60 E7 FF */ rlwinm. r0, r3, 0x1c, 0x1f, 0x1f /* 800B05D4 000AD534 41 82 00 48 */ beq lbl_800B061C /* 800B05D8 000AD538 54 60 CF FF */ rlwinm. r0, r3, 0x19, 0x1f, 0x1f /* 800B05DC 000AD53C 40 82 00 40 */ bne lbl_800B061C /* 800B05E0 000AD540 80 1E 00 EC */ lwz r0, 0xec(r30) /* 800B05E4 000AD544 28 00 00 00 */ cmplwi r0, 0 /* 800B05E8 000AD548 41 82 00 34 */ beq lbl_800B061C /* 800B05EC 000AD54C 80 1E 00 EC */ lwz r0, 0xec(r30) /* 800B05F0 000AD550 38 61 00 28 */ addi r3, r1, 0x28 /* 800B05F4 000AD554 90 01 00 28 */ stw r0, 0x28(r1) /* 800B05F8 000AD558 48 23 87 DD */ bl IsPlaying__11CSfxManagerF10CSfxHandle /* 800B05FC 000AD55C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 800B0600 000AD560 40 82 00 1C */ bne lbl_800B061C /* 800B0604 000AD564 A0 1E 00 08 */ lhz r0, 8(r30) /* 800B0608 000AD568 7F E3 FB 78 */ mr r3, r31 /* 800B060C 000AD56C 38 81 00 10 */ addi r4, r1, 0x10 /* 800B0610 000AD570 B0 01 00 0C */ sth r0, 0xc(r1) /* 800B0614 000AD574 B0 01 00 10 */ sth r0, 0x10(r1) /* 800B0618 000AD578 4B F9 BC 55 */ bl FreeScriptObject__13CStateManagerF9TUniqueId lbl_800B061C: /* 800B061C 000AD57C 88 1E 01 1C */ lbz r0, 0x11c(r30) /* 800B0620 000AD580 54 00 DF FF */ rlwinm. r0, r0, 0x1b, 0x1f, 0x1f /* 800B0624 000AD584 40 82 00 74 */ bne lbl_800B0698 /* 800B0628 000AD588 80 1E 00 EC */ lwz r0, 0xec(r30) /* 800B062C 000AD58C 28 00 00 00 */ cmplwi r0, 0 /* 800B0630 000AD590 41 82 00 68 */ beq lbl_800B0698 /* 800B0634 000AD594 C0 3E 00 F8 */ lfs f1, 0xf8(r30) /* 800B0638 000AD598 C0 02 8C 84 */ lfs f0, lbl_805AA9A4@sda21(r2) /* 800B063C 000AD59C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800B0640 000AD5A0 4C 40 13 82 */ cror 2, 0, 2 /* 800B0644 000AD5A4 40 82 00 4C */ bne lbl_800B0690 /* 800B0648 000AD5A8 C0 02 8C A0 */ lfs f0, lbl_805AA9C0@sda21(r2) /* 800B064C 000AD5AC 3C 60 80 5A */ lis r3, skZero3f@ha /* 800B0650 000AD5B0 38 A3 66 A0 */ addi r5, r3, skZero3f@l /* 800B0654 000AD5B4 38 81 00 44 */ addi r4, r1, 0x44 /* 800B0658 000AD5B8 D0 1E 00 F8 */ stfs f0, 0xf8(r30) /* 800B065C 000AD5BC 38 61 00 24 */ addi r3, r1, 0x24 /* 800B0660 000AD5C0 A8 1E 00 F2 */ lha r0, 0xf2(r30) /* 800B0664 000AD5C4 C0 5E 00 60 */ lfs f2, 0x60(r30) /* 800B0668 000AD5C8 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 800B066C 000AD5CC 54 06 06 3E */ clrlwi r6, r0, 0x18 /* 800B0670 000AD5D0 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 800B0674 000AD5D4 D0 01 00 44 */ stfs f0, 0x44(r1) /* 800B0678 000AD5D8 D0 21 00 48 */ stfs f1, 0x48(r1) /* 800B067C 000AD5DC D0 41 00 4C */ stfs f2, 0x4c(r1) /* 800B0680 000AD5E0 80 1E 00 EC */ lwz r0, 0xec(r30) /* 800B0684 000AD5E4 90 01 00 24 */ stw r0, 0x24(r1) /* 800B0688 000AD5E8 48 23 98 29 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc /* 800B068C 000AD5EC 48 00 00 0C */ b lbl_800B0698 lbl_800B0690: /* 800B0690 000AD5F0 EC 01 F8 28 */ fsubs f0, f1, f31 /* 800B0694 000AD5F4 D0 1E 00 F8 */ stfs f0, 0xf8(r30) lbl_800B0698: /* 800B0698 000AD5F8 80 1E 00 EC */ lwz r0, 0xec(r30) /* 800B069C 000AD5FC 28 00 00 00 */ cmplwi r0, 0 /* 800B06A0 000AD600 41 82 01 C4 */ beq lbl_800B0864 /* 800B06A4 000AD604 88 7E 01 1C */ lbz r3, 0x11c(r30) /* 800B06A8 000AD608 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f /* 800B06AC 000AD60C 40 82 01 B8 */ bne lbl_800B0864 /* 800B06B0 000AD610 54 60 EF FF */ rlwinm. r0, r3, 0x1d, 0x1f, 0x1f /* 800B06B4 000AD614 41 82 01 B0 */ beq lbl_800B0864 /* 800B06B8 000AD618 C0 3E 00 E8 */ lfs f1, 0xe8(r30) /* 800B06BC 000AD61C C0 02 8C 84 */ lfs f0, lbl_805AA9A4@sda21(r2) /* 800B06C0 000AD620 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800B06C4 000AD624 4C 40 13 82 */ cror 2, 0, 2 /* 800B06C8 000AD628 40 82 00 F8 */ bne lbl_800B07C0 /* 800B06CC 000AD62C 88 0D A2 D0 */ lbz r0, lbl_805A8E90@sda21(r13) /* 800B06D0 000AD630 28 00 00 00 */ cmplwi r0, 0 /* 800B06D4 000AD634 41 82 00 EC */ beq lbl_800B07C0 /* 800B06D8 000AD638 38 00 00 00 */ li r0, 0 /* 800B06DC 000AD63C 7F E4 FB 78 */ mr r4, r31 /* 800B06E0 000AD640 98 0D A2 D0 */ stb r0, lbl_805A8E90@sda21(r13) /* 800B06E4 000AD644 38 61 00 38 */ addi r3, r1, 0x38 /* 800B06E8 000AD648 C0 5E 00 60 */ lfs f2, 0x60(r30) /* 800B06EC 000AD64C C0 3E 00 50 */ lfs f1, 0x50(r30) /* 800B06F0 000AD650 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 800B06F4 000AD654 D0 01 00 38 */ stfs f0, 0x38(r1) /* 800B06F8 000AD658 D0 21 00 3C */ stfs f1, 0x3c(r1) /* 800B06FC 000AD65C D0 41 00 40 */ stfs f2, 0x40(r1) /* 800B0700 000AD660 4B FF F6 61 */ bl GetOccludedVolumeAmount__12CScriptSoundFRC9CVector3fRC13CStateManager /* 800B0704 000AD664 A8 7E 01 0E */ lha r3, 0x10e(r30) /* 800B0708 000AD668 3C 00 43 30 */ lis r0, 0x4330 /* 800B070C 000AD66C 90 01 00 50 */ stw r0, 0x50(r1) /* 800B0710 000AD670 6C 60 80 00 */ xoris r0, r3, 0x8000 /* 800B0714 000AD674 C8 42 8C 98 */ lfd f2, lbl_805AA9B8@sda21(r2) /* 800B0718 000AD678 90 01 00 54 */ stw r0, 0x54(r1) /* 800B071C 000AD67C C8 01 00 50 */ lfd f0, 0x50(r1) /* 800B0720 000AD680 EC 00 10 28 */ fsubs f0, f0, f2 /* 800B0724 000AD684 EF C0 00 72 */ fmuls f30, f0, f1 /* 800B0728 000AD688 F3 C1 B0 08 */ psq_st f30, 8(r1), 1, qr3 /* 800B072C 000AD68C A8 7E 01 0C */ lha r3, 0x10c(r30) /* 800B0730 000AD690 A0 01 00 08 */ lhz r0, 8(r1) /* 800B0734 000AD694 7C 04 07 34 */ extsh r4, r0 /* 800B0738 000AD698 7C 04 18 00 */ cmpw r4, r3 /* 800B073C 000AD69C 40 80 00 08 */ bge lbl_800B0744 /* 800B0740 000AD6A0 7C 64 1B 78 */ mr r4, r3 lbl_800B0744: /* 800B0744 000AD6A4 A8 7E 00 F0 */ lha r3, 0xf0(r30) /* 800B0748 000AD6A8 7C 80 07 34 */ extsh r0, r4 /* 800B074C 000AD6AC 7C 03 00 00 */ cmpw r3, r0 /* 800B0750 000AD6B0 41 82 00 64 */ beq lbl_800B07B4 /* 800B0754 000AD6B4 B0 9E 00 F0 */ sth r4, 0xf0(r30) /* 800B0758 000AD6B8 3C 60 88 89 */ lis r3, 0x88888889@ha /* 800B075C 000AD6BC 38 83 88 89 */ addi r4, r3, 0x88888889@l /* 800B0760 000AD6C0 A8 7E 00 F2 */ lha r3, 0xf2(r30) /* 800B0764 000AD6C4 A8 1E 00 F0 */ lha r0, 0xf0(r30) /* 800B0768 000AD6C8 7C 03 00 50 */ subf r0, r3, r0 /* 800B076C 000AD6CC 7C 64 00 96 */ mulhw r3, r4, r0 /* 800B0770 000AD6D0 7C 03 02 14 */ add r0, r3, r0 /* 800B0774 000AD6D4 7C 00 26 70 */ srawi r0, r0, 4 /* 800B0778 000AD6D8 54 03 0F FE */ srwi r3, r0, 0x1f /* 800B077C 000AD6DC 7C 00 1A 14 */ add r0, r0, r3 /* 800B0780 000AD6E0 B0 1E 00 F4 */ sth r0, 0xf4(r30) /* 800B0784 000AD6E4 A8 1E 00 F4 */ lha r0, 0xf4(r30) /* 800B0788 000AD6E8 2C 00 00 00 */ cmpwi r0, 0 /* 800B078C 000AD6EC 40 82 00 28 */ bne lbl_800B07B4 /* 800B0790 000AD6F0 A8 7E 00 F2 */ lha r3, 0xf2(r30) /* 800B0794 000AD6F4 A8 1E 00 F0 */ lha r0, 0xf0(r30) /* 800B0798 000AD6F8 7C 03 00 00 */ cmpw r3, r0 /* 800B079C 000AD6FC 40 80 00 10 */ bge lbl_800B07AC /* 800B07A0 000AD700 38 00 00 01 */ li r0, 1 /* 800B07A4 000AD704 B0 1E 00 F4 */ sth r0, 0xf4(r30) /* 800B07A8 000AD708 48 00 00 0C */ b lbl_800B07B4 lbl_800B07AC: /* 800B07AC 000AD70C 38 00 FF FF */ li r0, -1 /* 800B07B0 000AD710 B0 1E 00 F4 */ sth r0, 0xf4(r30) lbl_800B07B4: /* 800B07B4 000AD714 C0 02 8C A4 */ lfs f0, lbl_805AA9C4@sda21(r2) /* 800B07B8 000AD718 D0 1E 00 E8 */ stfs f0, 0xe8(r30) /* 800B07BC 000AD71C 48 00 00 10 */ b lbl_800B07CC lbl_800B07C0: /* 800B07C0 000AD720 C0 1E 00 E8 */ lfs f0, 0xe8(r30) /* 800B07C4 000AD724 EC 00 F8 28 */ fsubs f0, f0, f31 /* 800B07C8 000AD728 D0 1E 00 E8 */ stfs f0, 0xe8(r30) lbl_800B07CC: /* 800B07CC 000AD72C A8 7E 00 F2 */ lha r3, 0xf2(r30) /* 800B07D0 000AD730 A8 1E 00 F0 */ lha r0, 0xf0(r30) /* 800B07D4 000AD734 7C 03 00 00 */ cmpw r3, r0 /* 800B07D8 000AD738 41 82 00 8C */ beq lbl_800B0864 /* 800B07DC 000AD73C A8 1E 00 F4 */ lha r0, 0xf4(r30) /* 800B07E0 000AD740 7C 03 02 14 */ add r0, r3, r0 /* 800B07E4 000AD744 B0 1E 00 F2 */ sth r0, 0xf2(r30) /* 800B07E8 000AD748 A8 1E 00 F4 */ lha r0, 0xf4(r30) /* 800B07EC 000AD74C 2C 00 00 00 */ cmpwi r0, 0 /* 800B07F0 000AD750 40 81 00 18 */ ble lbl_800B0808 /* 800B07F4 000AD754 A8 1E 00 F2 */ lha r0, 0xf2(r30) /* 800B07F8 000AD758 A8 7E 00 F0 */ lha r3, 0xf0(r30) /* 800B07FC 000AD75C 7C 00 18 00 */ cmpw r0, r3 /* 800B0800 000AD760 40 81 00 08 */ ble lbl_800B0808 /* 800B0804 000AD764 B0 7E 00 F2 */ sth r3, 0xf2(r30) lbl_800B0808: /* 800B0808 000AD768 A8 1E 00 F4 */ lha r0, 0xf4(r30) /* 800B080C 000AD76C 2C 00 00 00 */ cmpwi r0, 0 /* 800B0810 000AD770 40 80 00 18 */ bge lbl_800B0828 /* 800B0814 000AD774 A8 1E 00 F2 */ lha r0, 0xf2(r30) /* 800B0818 000AD778 A8 7E 00 F0 */ lha r3, 0xf0(r30) /* 800B081C 000AD77C 7C 00 18 00 */ cmpw r0, r3 /* 800B0820 000AD780 40 80 00 08 */ bge lbl_800B0828 /* 800B0824 000AD784 B0 7E 00 F2 */ sth r3, 0xf2(r30) lbl_800B0828: /* 800B0828 000AD788 A8 1E 00 F2 */ lha r0, 0xf2(r30) /* 800B082C 000AD78C 3C 60 80 5A */ lis r3, skZero3f@ha /* 800B0830 000AD790 C0 5E 00 60 */ lfs f2, 0x60(r30) /* 800B0834 000AD794 38 A3 66 A0 */ addi r5, r3, skZero3f@l /* 800B0838 000AD798 C0 3E 00 50 */ lfs f1, 0x50(r30) /* 800B083C 000AD79C 54 06 06 3E */ clrlwi r6, r0, 0x18 /* 800B0840 000AD7A0 C0 1E 00 40 */ lfs f0, 0x40(r30) /* 800B0844 000AD7A4 38 61 00 20 */ addi r3, r1, 0x20 /* 800B0848 000AD7A8 38 81 00 2C */ addi r4, r1, 0x2c /* 800B084C 000AD7AC D0 01 00 2C */ stfs f0, 0x2c(r1) /* 800B0850 000AD7B0 D0 21 00 30 */ stfs f1, 0x30(r1) /* 800B0854 000AD7B4 D0 41 00 34 */ stfs f2, 0x34(r1) /* 800B0858 000AD7B8 80 1E 00 EC */ lwz r0, 0xec(r30) /* 800B085C 000AD7BC 90 01 00 20 */ stw r0, 0x20(r1) /* 800B0860 000AD7C0 48 23 96 51 */ bl UpdateEmitter__11CSfxManagerF10CSfxHandleRC9CVector3fRC9CVector3fUc lbl_800B0864: /* 800B0864 000AD7C4 88 1E 01 1C */ lbz r0, 0x11c(r30) /* 800B0868 000AD7C8 54 00 CF FF */ rlwinm. r0, r0, 0x19, 0x1f, 0x1f /* 800B086C 000AD7CC 41 82 00 40 */ beq lbl_800B08AC /* 800B0870 000AD7D0 C0 3E 00 FC */ lfs f1, 0xfc(r30) /* 800B0874 000AD7D4 C0 02 8C 84 */ lfs f0, lbl_805AA9A4@sda21(r2) /* 800B0878 000AD7D8 EC 21 F8 28 */ fsubs f1, f1, f31 /* 800B087C 000AD7DC D0 3E 00 FC */ stfs f1, 0xfc(r30) /* 800B0880 000AD7E0 C0 3E 00 FC */ lfs f1, 0xfc(r30) /* 800B0884 000AD7E4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 800B0888 000AD7E8 4C 40 13 82 */ cror 2, 0, 2 /* 800B088C 000AD7EC 40 82 00 20 */ bne lbl_800B08AC /* 800B0890 000AD7F0 88 1E 01 1C */ lbz r0, 0x11c(r30) /* 800B0894 000AD7F4 38 60 00 00 */ li r3, 0 /* 800B0898 000AD7F8 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 /* 800B089C 000AD7FC 7F C3 F3 78 */ mr r3, r30 /* 800B08A0 000AD800 98 1E 01 1C */ stb r0, 0x11c(r30) /* 800B08A4 000AD804 7F E4 FB 78 */ mr r4, r31 /* 800B08A8 000AD808 4B FF F9 11 */ bl PlaySound__12CScriptSoundFR13CStateManager lbl_800B08AC: /* 800B08AC 000AD80C 80 1E 01 18 */ lwz r0, 0x118(r30) /* 800B08B0 000AD810 2C 00 20 00 */ cmpwi r0, 0x2000 /* 800B08B4 000AD814 41 82 00 24 */ beq lbl_800B08D8 /* 800B08B8 000AD818 80 1E 00 EC */ lwz r0, 0xec(r30) /* 800B08BC 000AD81C 28 00 00 00 */ cmplwi r0, 0 /* 800B08C0 000AD820 41 82 00 18 */ beq lbl_800B08D8 /* 800B08C4 000AD824 80 1E 00 EC */ lwz r0, 0xec(r30) /* 800B08C8 000AD828 38 61 00 1C */ addi r3, r1, 0x1c /* 800B08CC 000AD82C 90 01 00 1C */ stw r0, 0x1c(r1) /* 800B08D0 000AD830 80 9E 01 18 */ lwz r4, 0x118(r30) /* 800B08D4 000AD834 48 23 85 D9 */ bl PitchBend__11CSfxManagerF10CSfxHandlei lbl_800B08D8: /* 800B08D8 000AD838 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0 /* 800B08DC 000AD83C CB E1 00 70 */ lfd f31, 0x70(r1) /* 800B08E0 000AD840 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0 /* 800B08E4 000AD844 CB C1 00 60 */ lfd f30, 0x60(r1) /* 800B08E8 000AD848 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 800B08EC 000AD84C 80 01 00 84 */ lwz r0, 0x84(r1) /* 800B08F0 000AD850 83 C1 00 58 */ lwz r30, 0x58(r1) /* 800B08F4 000AD854 7C 08 03 A6 */ mtlr r0 /* 800B08F8 000AD858 38 21 00 80 */ addi r1, r1, 0x80 /* 800B08FC 000AD85C 4E 80 00 20 */ blr .global __dt__12CScriptSoundFv __dt__12CScriptSoundFv: /* 800B0900 000AD860 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800B0904 000AD864 7C 08 02 A6 */ mflr r0 /* 800B0908 000AD868 90 01 00 14 */ stw r0, 0x14(r1) /* 800B090C 000AD86C 93 E1 00 0C */ stw r31, 0xc(r1) /* 800B0910 000AD870 7C 9F 23 78 */ mr r31, r4 /* 800B0914 000AD874 93 C1 00 08 */ stw r30, 8(r1) /* 800B0918 000AD878 7C 7E 1B 79 */ or. r30, r3, r3 /* 800B091C 000AD87C 41 82 00 28 */ beq lbl_800B0944 /* 800B0920 000AD880 3C A0 80 3E */ lis r5, lbl_803DF128@ha /* 800B0924 000AD884 38 80 00 00 */ li r4, 0 /* 800B0928 000AD888 38 05 F1 28 */ addi r0, r5, lbl_803DF128@l /* 800B092C 000AD88C 90 1E 00 00 */ stw r0, 0(r30) /* 800B0930 000AD890 4B FA 4D C1 */ bl __dt__6CActorFv /* 800B0934 000AD894 7F E0 07 35 */ extsh. r0, r31 /* 800B0938 000AD898 40 81 00 0C */ ble lbl_800B0944 /* 800B093C 000AD89C 7F C3 F3 78 */ mr r3, r30 /* 800B0940 000AD8A0 48 26 4F F1 */ bl Free__7CMemoryFPCv lbl_800B0944: /* 800B0944 000AD8A4 80 01 00 14 */ lwz r0, 0x14(r1) /* 800B0948 000AD8A8 7F C3 F3 78 */ mr r3, r30 /* 800B094C 000AD8AC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800B0950 000AD8B0 83 C1 00 08 */ lwz r30, 8(r1) /* 800B0954 000AD8B4 7C 08 03 A6 */ mtlr r0 /* 800B0958 000AD8B8 38 21 00 10 */ addi r1, r1, 0x10 /* 800B095C 000AD8BC 4E 80 00 20 */ blr .global PreThink__12CScriptSoundFfR13CStateManager PreThink__12CScriptSoundFfR13CStateManager: /* 800B0960 000AD8C0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800B0964 000AD8C4 7C 08 02 A6 */ mflr r0 /* 800B0968 000AD8C8 90 01 00 14 */ stw r0, 0x14(r1) /* 800B096C 000AD8CC 93 E1 00 0C */ stw r31, 0xc(r1) /* 800B0970 000AD8D0 7C 7F 1B 78 */ mr r31, r3 /* 800B0974 000AD8D4 4B FA 07 49 */ bl PreThink__7CEntityFfR13CStateManager /* 800B0978 000AD8D8 38 00 00 01 */ li r0, 1 /* 800B097C 000AD8DC 38 60 00 00 */ li r3, 0 /* 800B0980 000AD8E0 98 0D A2 D0 */ stb r0, lbl_805A8E90@sda21(r13) /* 800B0984 000AD8E4 88 1F 01 1D */ lbz r0, 0x11d(r31) /* 800B0988 000AD8E8 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 /* 800B098C 000AD8EC 98 1F 01 1D */ stb r0, 0x11d(r31) /* 800B0990 000AD8F0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800B0994 000AD8F4 80 01 00 14 */ lwz r0, 0x14(r1) /* 800B0998 000AD8F8 7C 08 03 A6 */ mtlr r0 /* 800B099C 000AD8FC 38 21 00 10 */ addi r1, r1, 0x10 /* 800B09A0 000AD900 4E 80 00 20 */ blr .global "__ct__12CScriptSoundF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fUsbfffiiiibbbbbb" "__ct__12CScriptSoundF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fUsbfffiiiibbbbbb": /* 800B09A4 000AD904 94 21 FE B0 */ stwu r1, -0x150(r1) /* 800B09A8 000AD908 7C 08 02 A6 */ mflr r0 /* 800B09AC 000AD90C 90 01 01 54 */ stw r0, 0x154(r1) /* 800B09B0 000AD910 DB E1 01 40 */ stfd f31, 0x140(r1) /* 800B09B4 000AD914 F3 E1 01 48 */ psq_st f31, 328(r1), 0, qr0 /* 800B09B8 000AD918 DB C1 01 30 */ stfd f30, 0x130(r1) /* 800B09BC 000AD91C F3 C1 01 38 */ psq_st f30, 312(r1), 0, qr0 /* 800B09C0 000AD920 DB A1 01 20 */ stfd f29, 0x120(r1) /* 800B09C4 000AD924 F3 A1 01 28 */ psq_st f29, 296(r1), 0, qr0 /* 800B09C8 000AD928 BD C1 00 D8 */ stmw r14, 0xd8(r1) /* 800B09CC 000AD92C FF A0 08 90 */ fmr f29, f1 /* 800B09D0 000AD930 7C 6F 1B 78 */ mr r15, r3 /* 800B09D4 000AD934 FF C0 10 90 */ fmr f30, f2 /* 800B09D8 000AD938 82 E1 01 58 */ lwz r23, 0x158(r1) /* 800B09DC 000AD93C FF E0 18 90 */ fmr f31, f3 /* 800B09E0 000AD940 83 01 01 5C */ lwz r24, 0x15c(r1) /* 800B09E4 000AD944 83 21 01 60 */ lwz r25, 0x160(r1) /* 800B09E8 000AD948 7C 90 23 78 */ mr r16, r4 /* 800B09EC 000AD94C 83 41 01 64 */ lwz r26, 0x164(r1) /* 800B09F0 000AD950 7C B1 2B 78 */ mr r17, r5 /* 800B09F4 000AD954 83 61 01 68 */ lwz r27, 0x168(r1) /* 800B09F8 000AD958 7C D2 33 78 */ mr r18, r6 /* 800B09FC 000AD95C 8B 81 01 6F */ lbz r28, 0x16f(r1) /* 800B0A00 000AD960 7C F3 3B 78 */ mr r19, r7 /* 800B0A04 000AD964 8B A1 01 73 */ lbz r29, 0x173(r1) /* 800B0A08 000AD968 7D 14 43 78 */ mr r20, r8 /* 800B0A0C 000AD96C 8B C1 01 77 */ lbz r30, 0x177(r1) /* 800B0A10 000AD970 7D 35 4B 78 */ mr r21, r9 /* 800B0A14 000AD974 8B E1 01 7B */ lbz r31, 0x17b(r1) /* 800B0A18 000AD978 7D 56 53 78 */ mr r22, r10 /* 800B0A1C 000AD97C 81 C1 01 88 */ lwz r14, 0x188(r1) /* 800B0A20 000AD980 38 61 00 88 */ addi r3, r1, 0x88 /* 800B0A24 000AD984 4B F8 9D 81 */ bl CModelDataNull__10CModelDataFv /* 800B0A28 000AD988 38 61 00 20 */ addi r3, r1, 0x20 /* 800B0A2C 000AD98C 4B F6 A4 0D */ bl None__16CActorParametersFv /* 800B0A30 000AD990 A0 8D A3 8C */ lhz r4, kInvalidUniqueId@sda21(r13) /* 800B0A34 000AD994 38 00 00 00 */ li r0, 0 /* 800B0A38 000AD998 80 AD 86 20 */ lwz r5, lbl_805A71E0@sda21(r13) /* 800B0A3C 000AD99C 38 60 00 00 */ li r3, 0 /* 800B0A40 000AD9A0 B0 81 00 10 */ sth r4, 0x10(r1) /* 800B0A44 000AD9A4 38 80 00 01 */ li r4, 1 /* 800B0A48 000AD9A8 90 01 00 1C */ stw r0, 0x1c(r1) /* 800B0A4C 000AD9AC 90 01 00 18 */ stw r0, 0x18(r1) /* 800B0A50 000AD9B0 48 2D 94 A5 */ bl __shl2i /* 800B0A54 000AD9B4 80 A1 00 18 */ lwz r5, 0x18(r1) /* 800B0A58 000AD9B8 39 61 00 20 */ addi r11, r1, 0x20 /* 800B0A5C 000AD9BC 80 C1 00 1C */ lwz r6, 0x1c(r1) /* 800B0A60 000AD9C0 38 01 00 10 */ addi r0, r1, 0x10 /* 800B0A64 000AD9C4 7C A3 1B 78 */ or r3, r5, r3 /* 800B0A68 000AD9C8 A1 30 00 00 */ lhz r9, 0(r16) /* 800B0A6C 000AD9CC 7C C4 23 78 */ or r4, r6, r4 /* 800B0A70 000AD9D0 90 61 00 18 */ stw r3, 0x18(r1) /* 800B0A74 000AD9D4 7D E3 7B 78 */ mr r3, r15 /* 800B0A78 000AD9D8 7E A5 AB 78 */ mr r5, r21 /* 800B0A7C 000AD9DC 90 81 00 1C */ stw r4, 0x1c(r1) /* 800B0A80 000AD9E0 7E 26 8B 78 */ mr r6, r17 /* 800B0A84 000AD9E4 7E 47 93 78 */ mr r7, r18 /* 800B0A88 000AD9E8 7E 68 9B 78 */ mr r8, r19 /* 800B0A8C 000AD9EC B1 21 00 14 */ sth r9, 0x14(r1) /* 800B0A90 000AD9F0 38 81 00 14 */ addi r4, r1, 0x14 /* 800B0A94 000AD9F4 39 21 00 88 */ addi r9, r1, 0x88 /* 800B0A98 000AD9F8 39 41 00 18 */ addi r10, r1, 0x18 /* 800B0A9C 000AD9FC 91 61 00 08 */ stw r11, 8(r1) /* 800B0AA0 000ADA00 90 01 00 0C */ stw r0, 0xc(r1) /* 800B0AA4 000ADA04 4B FA 4D 7D */ bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId" /* 800B0AA8 000ADA08 38 61 00 20 */ addi r3, r1, 0x20 /* 800B0AAC 000ADA0C 38 80 FF FF */ li r4, -1 /* 800B0AB0 000ADA10 48 05 5B 59 */ bl __dt__16CActorParametersFv /* 800B0AB4 000ADA14 38 61 00 88 */ addi r3, r1, 0x88 /* 800B0AB8 000ADA18 38 80 FF FF */ li r4, -1 /* 800B0ABC 000ADA1C 48 06 5F 91 */ bl __dt__10CModelDataFv /* 800B0AC0 000ADA20 3C 60 80 3E */ lis r3, lbl_803DF128@ha /* 800B0AC4 000ADA24 C0 02 8C 84 */ lfs f0, lbl_805AA9A4@sda21(r2) /* 800B0AC8 000ADA28 38 63 F1 28 */ addi r3, r3, lbl_803DF128@l /* 800B0ACC 000ADA2C 38 00 00 00 */ li r0, 0 /* 800B0AD0 000ADA30 90 6F 00 00 */ stw r3, 0(r15) /* 800B0AD4 000ADA34 56 83 04 3E */ clrlwi r3, r20, 0x10 /* 800B0AD8 000ADA38 D0 0F 00 E8 */ stfs f0, 0xe8(r15) /* 800B0ADC 000ADA3C 90 0F 00 EC */ stw r0, 0xec(r15) /* 800B0AE0 000ADA40 B0 0F 00 F0 */ sth r0, 0xf0(r15) /* 800B0AE4 000ADA44 B0 0F 00 F4 */ sth r0, 0xf4(r15) /* 800B0AE8 000ADA48 D0 0F 00 F8 */ stfs f0, 0xf8(r15) /* 800B0AEC 000ADA4C D3 EF 00 FC */ stfs f31, 0xfc(r15) /* 800B0AF0 000ADA50 48 23 7E C1 */ bl TranslateSFXID__11CSfxManagerFUs /* 800B0AF4 000ADA54 B0 6F 01 00 */ sth r3, 0x100(r15) /* 800B0AF8 000ADA58 38 0E 20 00 */ addi r0, r14, 0x2000 /* 800B0AFC 000ADA5C 38 80 00 00 */ li r4, 0 /* 800B0B00 000ADA60 D3 AF 01 04 */ stfs f29, 0x104(r15) /* 800B0B04 000ADA64 D3 CF 01 08 */ stfs f30, 0x108(r15) /* 800B0B08 000ADA68 B2 CF 01 0C */ sth r22, 0x10c(r15) /* 800B0B0C 000ADA6C B2 EF 01 0E */ sth r23, 0x10e(r15) /* 800B0B10 000ADA70 B3 0F 01 10 */ sth r24, 0x110(r15) /* 800B0B14 000ADA74 B3 2F 01 12 */ sth r25, 0x112(r15) /* 800B0B18 000ADA78 B3 4F 01 14 */ sth r26, 0x114(r15) /* 800B0B1C 000ADA7C B3 6F 01 16 */ sth r27, 0x116(r15) /* 800B0B20 000ADA80 90 0F 01 18 */ stw r0, 0x118(r15) /* 800B0B24 000ADA84 88 0F 01 1C */ lbz r0, 0x11c(r15) /* 800B0B28 000ADA88 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18 /* 800B0B2C 000ADA8C 98 0F 01 1C */ stb r0, 0x11c(r15) /* 800B0B30 000ADA90 88 0F 01 1C */ lbz r0, 0x11c(r15) /* 800B0B34 000ADA94 53 80 36 72 */ rlwimi r0, r28, 6, 0x19, 0x19 /* 800B0B38 000ADA98 98 0F 01 1C */ stb r0, 0x11c(r15) /* 800B0B3C 000ADA9C 88 0F 01 1C */ lbz r0, 0x11c(r15) /* 800B0B40 000ADAA0 53 A0 2E B4 */ rlwimi r0, r29, 5, 0x1a, 0x1a /* 800B0B44 000ADAA4 98 0F 01 1C */ stb r0, 0x11c(r15) /* 800B0B48 000ADAA8 88 0F 01 1C */ lbz r0, 0x11c(r15) /* 800B0B4C 000ADAAC 53 C0 26 F6 */ rlwimi r0, r30, 4, 0x1b, 0x1b /* 800B0B50 000ADAB0 98 0F 01 1C */ stb r0, 0x11c(r15) /* 800B0B54 000ADAB4 88 0F 01 1C */ lbz r0, 0x11c(r15) /* 800B0B58 000ADAB8 53 E0 1F 38 */ rlwimi r0, r31, 3, 0x1c, 0x1c /* 800B0B5C 000ADABC 98 0F 01 1C */ stb r0, 0x11c(r15) /* 800B0B60 000ADAC0 88 01 01 7F */ lbz r0, 0x17f(r1) /* 800B0B64 000ADAC4 88 6F 01 1C */ lbz r3, 0x11c(r15) /* 800B0B68 000ADAC8 50 03 17 7A */ rlwimi r3, r0, 2, 0x1d, 0x1d /* 800B0B6C 000ADACC 88 01 01 83 */ lbz r0, 0x183(r1) /* 800B0B70 000ADAD0 98 6F 01 1C */ stb r3, 0x11c(r15) /* 800B0B74 000ADAD4 88 6F 01 1C */ lbz r3, 0x11c(r15) /* 800B0B78 000ADAD8 50 03 0F BC */ rlwimi r3, r0, 1, 0x1e, 0x1e /* 800B0B7C 000ADADC 98 6F 01 1C */ stb r3, 0x11c(r15) /* 800B0B80 000ADAE0 88 0F 01 1C */ lbz r0, 0x11c(r15) /* 800B0B84 000ADAE4 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f /* 800B0B88 000ADAE8 98 0F 01 1C */ stb r0, 0x11c(r15) /* 800B0B8C 000ADAEC 88 01 01 87 */ lbz r0, 0x187(r1) /* 800B0B90 000ADAF0 88 6F 01 1D */ lbz r3, 0x11d(r15) /* 800B0B94 000ADAF4 50 03 3E 30 */ rlwimi r3, r0, 7, 0x18, 0x18 /* 800B0B98 000ADAF8 98 6F 01 1D */ stb r3, 0x11d(r15) /* 800B0B9C 000ADAFC 88 0F 01 1D */ lbz r0, 0x11d(r15) /* 800B0BA0 000ADB00 50 80 36 72 */ rlwimi r0, r4, 6, 0x19, 0x19 /* 800B0BA4 000ADB04 98 0F 01 1D */ stb r0, 0x11d(r15) /* 800B0BA8 000ADB08 88 6F 01 1C */ lbz r3, 0x11c(r15) /* 800B0BAC 000ADB0C 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f /* 800B0BB0 000ADB10 41 82 00 14 */ beq lbl_800B0BC4 /* 800B0BB4 000ADB14 54 60 DF FF */ rlwinm. r0, r3, 0x1b, 0x1f, 0x1f /* 800B0BB8 000ADB18 40 82 00 0C */ bne lbl_800B0BC4 /* 800B0BBC 000ADB1C 50 83 0F BC */ rlwimi r3, r4, 1, 0x1e, 0x1e /* 800B0BC0 000ADB20 98 6F 01 1C */ stb r3, 0x11c(r15) lbl_800B0BC4: /* 800B0BC4 000ADB24 88 6F 01 1C */ lbz r3, 0x11c(r15) /* 800B0BC8 000ADB28 54 60 FF FF */ rlwinm. r0, r3, 0x1f, 0x1f, 0x1f /* 800B0BCC 000ADB2C 41 82 00 18 */ beq lbl_800B0BE4 /* 800B0BD0 000ADB30 54 60 D7 FF */ rlwinm. r0, r3, 0x1a, 0x1f, 0x1f /* 800B0BD4 000ADB34 40 82 00 10 */ bne lbl_800B0BE4 /* 800B0BD8 000ADB38 38 00 00 00 */ li r0, 0 /* 800B0BDC 000ADB3C 50 03 0F BC */ rlwimi r3, r0, 1, 0x1e, 0x1e /* 800B0BE0 000ADB40 98 6F 01 1C */ stb r3, 0x11c(r15) lbl_800B0BE4: /* 800B0BE4 000ADB44 7D E3 7B 78 */ mr r3, r15 /* 800B0BE8 000ADB48 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 /* 800B0BEC 000ADB4C CB E1 01 40 */ lfd f31, 0x140(r1) /* 800B0BF0 000ADB50 E3 C1 01 38 */ psq_l f30, 312(r1), 0, qr0 /* 800B0BF4 000ADB54 CB C1 01 30 */ lfd f30, 0x130(r1) /* 800B0BF8 000ADB58 E3 A1 01 28 */ psq_l f29, 296(r1), 0, qr0 /* 800B0BFC 000ADB5C CB A1 01 20 */ lfd f29, 0x120(r1) /* 800B0C00 000ADB60 B9 C1 00 D8 */ lmw r14, 0xd8(r1) /* 800B0C04 000ADB64 80 01 01 54 */ lwz r0, 0x154(r1) /* 800B0C08 000ADB68 7C 08 03 A6 */ mtlr r0 /* 800B0C0C 000ADB6C 38 21 01 50 */ addi r1, r1, 0x150 /* 800B0C10 000ADB70 4E 80 00 20 */ blr