tp/asm/Z2AudioLib/Z2SpeechMgr2.s

1574 lines
76 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 802cbc60
.global Z2SpeechMgr2
Z2SpeechMgr2:
/* 802CBC60 002C8BA0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802CBC64 002C8BA4 7C 08 02 A6 */ mflr r0
/* 802CBC68 002C8BA8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802CBC6C 002C8BAC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802CBC70 002C8BB0 7C 7F 1B 78 */ mr r31, r3
/* 802CBC74 002C8BB4 93 ED 85 F0 */ stw r31, lbl_80450B70-_SDA_BASE_(r13)
/* 802CBC78 002C8BB8 38 00 00 00 */ li r0, 0
/* 802CBC7C 002C8BBC 90 03 00 00 */ stw r0, 0(r3)
/* 802CBC80 002C8BC0 90 03 00 04 */ stw r0, 4(r3)
/* 802CBC84 002C8BC4 38 7F 00 08 */ addi r3, r31, 8
/* 802CBC88 002C8BC8 38 80 00 00 */ li r4, 0
/* 802CBC8C 002C8BCC 48 06 DE 59 */ bl JMath_NS_TRandom_fast_
/* 802CBC90 002C8BD0 38 7F 00 0C */ addi r3, r31, 0xc
/* 802CBC94 002C8BD4 48 00 13 25 */ bl Z2SpeechStarter
/* 802CBC98 002C8BD8 38 00 00 00 */ li r0, 0
/* 802CBC9C 002C8BDC B0 1F 03 F8 */ sth r0, 0x3f8(r31)
/* 802CBCA0 002C8BE0 38 60 FF FF */ li r3, -1
/* 802CBCA4 002C8BE4 B0 7F 03 FA */ sth r3, 0x3fa(r31)
/* 802CBCA8 002C8BE8 B0 1F 03 FC */ sth r0, 0x3fc(r31)
/* 802CBCAC 002C8BEC 98 1F 03 FE */ stb r0, 0x3fe(r31)
/* 802CBCB0 002C8BF0 98 1F 03 FF */ stb r0, 0x3ff(r31)
/* 802CBCB4 002C8BF4 98 1F 04 01 */ stb r0, 0x401(r31)
/* 802CBCB8 002C8BF8 38 80 00 00 */ li r4, 0
/* 802CBCBC 002C8BFC 38 00 00 40 */ li r0, 0x40
/* 802CBCC0 002C8C00 7C 09 03 A6 */ mtctr r0
lbl_802CBCC4:
/* 802CBCC4 002C8C04 38 04 04 02 */ addi r0, r4, 0x402
/* 802CBCC8 002C8C08 7C 7F 01 AE */ stbx r3, r31, r0
/* 802CBCCC 002C8C0C 38 84 00 01 */ addi r4, r4, 1
/* 802CBCD0 002C8C10 42 00 FF F4 */ bdnz lbl_802CBCC4
/* 802CBCD4 002C8C14 7F E3 FB 78 */ mr r3, r31
/* 802CBCD8 002C8C18 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802CBCDC 002C8C1C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802CBCE0 002C8C20 7C 08 03 A6 */ mtlr r0
/* 802CBCE4 002C8C24 38 21 00 10 */ addi r1, r1, 0x10
/* 802CBCE8 002C8C28 4E 80 00 20 */ blr
/* 802CBCEC 002C8C2C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802CBCF0 002C8C30 7C 08 02 A6 */ mflr r0
/* 802CBCF4 002C8C34 90 01 00 14 */ stw r0, 0x14(r1)
/* 802CBCF8 002C8C38 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802CBCFC 002C8C3C 93 C1 00 08 */ stw r30, 8(r1)
/* 802CBD00 002C8C40 7C 7E 1B 79 */ or. r30, r3, r3
/* 802CBD04 002C8C44 7C 9F 23 78 */ mr r31, r4
/* 802CBD08 002C8C48 41 82 00 64 */ beq lbl_802CBD6C
/* 802CBD0C 002C8C4C 3C 60 80 3D */ lis r3, lbl_803CBF24@ha
/* 802CBD10 002C8C50 38 03 BF 24 */ addi r0, r3, lbl_803CBF24@l
/* 802CBD14 002C8C54 90 1E 00 00 */ stw r0, 0(r30)
/* 802CBD18 002C8C58 41 82 00 44 */ beq lbl_802CBD5C
/* 802CBD1C 002C8C5C 3C 60 80 3D */ lis r3, lbl_803C9D80@ha
/* 802CBD20 002C8C60 38 03 9D 80 */ addi r0, r3, lbl_803C9D80@l
/* 802CBD24 002C8C64 90 1E 00 00 */ stw r0, 0(r30)
/* 802CBD28 002C8C68 34 1E 00 04 */ addic. r0, r30, 4
/* 802CBD2C 002C8C6C 41 82 00 24 */ beq lbl_802CBD50
/* 802CBD30 002C8C70 34 7E 00 04 */ addic. r3, r30, 4
/* 802CBD34 002C8C74 41 82 00 08 */ beq lbl_802CBD3C
/* 802CBD38 002C8C78 38 63 FF FC */ addi r3, r3, -4
lbl_802CBD3C:
/* 802CBD3C 002C8C7C 80 0D 85 F4 */ lwz r0, lbl_80450B74-_SDA_BASE_(r13)
/* 802CBD40 002C8C80 7C 00 18 40 */ cmplw r0, r3
/* 802CBD44 002C8C84 40 82 00 0C */ bne lbl_802CBD50
/* 802CBD48 002C8C88 38 00 00 00 */ li r0, 0
/* 802CBD4C 002C8C8C 90 0D 85 F4 */ stw r0, lbl_80450B74-_SDA_BASE_(r13)
lbl_802CBD50:
/* 802CBD50 002C8C90 7F C3 F3 78 */ mr r3, r30
/* 802CBD54 002C8C94 38 80 00 00 */ li r4, 0
/* 802CBD58 002C8C98 4B FD 72 31 */ bl JAISoundStarter_NS_dtor
lbl_802CBD5C:
/* 802CBD5C 002C8C9C 7F E0 07 35 */ extsh. r0, r31
/* 802CBD60 002C8CA0 40 81 00 0C */ ble lbl_802CBD6C
/* 802CBD64 002C8CA4 7F C3 F3 78 */ mr r3, r30
/* 802CBD68 002C8CA8 48 00 2F D5 */ bl __dl__FPv
lbl_802CBD6C:
/* 802CBD6C 002C8CAC 7F C3 F3 78 */ mr r3, r30
/* 802CBD70 002C8CB0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802CBD74 002C8CB4 83 C1 00 08 */ lwz r30, 8(r1)
/* 802CBD78 002C8CB8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802CBD7C 002C8CBC 7C 08 03 A6 */ mtlr r0
/* 802CBD80 002C8CC0 38 21 00 10 */ addi r1, r1, 0x10
/* 802CBD84 002C8CC4 4E 80 00 20 */ blr
.global Z2SpeechMgr2_NS_setString
Z2SpeechMgr2_NS_setString:
/* 802CBD88 002C8CC8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802CBD8C 002C8CCC 7C 08 02 A6 */ mflr r0
/* 802CBD90 002C8CD0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802CBD94 002C8CD4 54 C0 06 3E */ clrlwi r0, r6, 0x18
/* 802CBD98 002C8CD8 28 00 00 71 */ cmplwi r0, 0x71
/* 802CBD9C 002C8CDC 41 81 00 AC */ bgt lbl_802CBE48
/* 802CBDA0 002C8CE0 3C C0 80 3D */ lis r6, lbl_803CBD08@ha
/* 802CBDA4 002C8CE4 38 C6 BD 08 */ addi r6, r6, lbl_803CBD08@l
/* 802CBDA8 002C8CE8 54 00 10 3A */ slwi r0, r0, 2
/* 802CBDAC 002C8CEC 7C 06 00 2E */ lwzx r0, r6, r0
/* 802CBDB0 002C8CF0 7C 09 03 A6 */ mtctr r0
/* 802CBDB4 002C8CF4 4E 80 04 20 */ bctr
/* 802CBDB8 002C8CF8 38 00 00 01 */ li r0, 1
/* 802CBDBC 002C8CFC 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBDC0 002C8D00 48 00 00 90 */ b lbl_802CBE50
/* 802CBDC4 002C8D04 38 00 00 02 */ li r0, 2
/* 802CBDC8 002C8D08 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBDCC 002C8D0C 48 00 00 84 */ b lbl_802CBE50
/* 802CBDD0 002C8D10 38 00 00 0C */ li r0, 0xc
/* 802CBDD4 002C8D14 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBDD8 002C8D18 48 00 00 78 */ b lbl_802CBE50
/* 802CBDDC 002C8D1C 38 00 00 0D */ li r0, 0xd
/* 802CBDE0 002C8D20 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBDE4 002C8D24 48 00 00 6C */ b lbl_802CBE50
/* 802CBDE8 002C8D28 38 00 00 0E */ li r0, 0xe
/* 802CBDEC 002C8D2C 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBDF0 002C8D30 48 00 00 60 */ b lbl_802CBE50
/* 802CBDF4 002C8D34 38 00 00 0F */ li r0, 0xf
/* 802CBDF8 002C8D38 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBDFC 002C8D3C 48 00 00 54 */ b lbl_802CBE50
/* 802CBE00 002C8D40 38 00 00 10 */ li r0, 0x10
/* 802CBE04 002C8D44 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBE08 002C8D48 48 00 00 48 */ b lbl_802CBE50
/* 802CBE0C 002C8D4C 38 00 00 11 */ li r0, 0x11
/* 802CBE10 002C8D50 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBE14 002C8D54 48 00 00 3C */ b lbl_802CBE50
/* 802CBE18 002C8D58 38 00 00 12 */ li r0, 0x12
/* 802CBE1C 002C8D5C 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBE20 002C8D60 48 00 00 30 */ b lbl_802CBE50
/* 802CBE24 002C8D64 38 00 00 1E */ li r0, 0x1e
/* 802CBE28 002C8D68 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBE2C 002C8D6C 48 00 00 24 */ b lbl_802CBE50
/* 802CBE30 002C8D70 38 00 00 1F */ li r0, 0x1f
/* 802CBE34 002C8D74 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBE38 002C8D78 48 00 00 18 */ b lbl_802CBE50
/* 802CBE3C 002C8D7C 38 00 00 63 */ li r0, 0x63
/* 802CBE40 002C8D80 98 03 03 FE */ stb r0, 0x3fe(r3)
/* 802CBE44 002C8D84 48 00 01 0C */ b lbl_802CBF50
lbl_802CBE48:
/* 802CBE48 002C8D88 38 00 00 0B */ li r0, 0xb
/* 802CBE4C 002C8D8C 98 03 03 FE */ stb r0, 0x3fe(r3)
lbl_802CBE50:
/* 802CBE50 002C8D90 88 C3 03 FE */ lbz r6, 0x3fe(r3)
/* 802CBE54 002C8D94 28 06 00 01 */ cmplwi r6, 1
/* 802CBE58 002C8D98 41 82 00 0C */ beq lbl_802CBE64
/* 802CBE5C 002C8D9C 28 06 00 02 */ cmplwi r6, 2
/* 802CBE60 002C8DA0 40 82 00 48 */ bne lbl_802CBEA8
lbl_802CBE64:
/* 802CBE64 002C8DA4 54 E0 04 3F */ clrlwi. r0, r7, 0x10
/* 802CBE68 002C8DA8 40 82 00 10 */ bne lbl_802CBE78
/* 802CBE6C 002C8DAC 38 00 00 00 */ li r0, 0
/* 802CBE70 002C8DB0 B0 03 03 FC */ sth r0, 0x3fc(r3)
/* 802CBE74 002C8DB4 48 00 00 38 */ b lbl_802CBEAC
lbl_802CBE78:
/* 802CBE78 002C8DB8 28 00 00 11 */ cmplwi r0, 0x11
/* 802CBE7C 002C8DBC 40 81 00 20 */ ble lbl_802CBE9C
/* 802CBE80 002C8DC0 28 06 00 15 */ cmplwi r6, 0x15
/* 802CBE84 002C8DC4 41 82 00 0C */ beq lbl_802CBE90
/* 802CBE88 002C8DC8 28 06 00 14 */ cmplwi r6, 0x14
/* 802CBE8C 002C8DCC 40 82 00 20 */ bne lbl_802CBEAC
lbl_802CBE90:
/* 802CBE90 002C8DD0 38 00 00 00 */ li r0, 0
/* 802CBE94 002C8DD4 B0 03 03 FC */ sth r0, 0x3fc(r3)
/* 802CBE98 002C8DD8 48 00 00 14 */ b lbl_802CBEAC
lbl_802CBE9C:
/* 802CBE9C 002C8DDC 38 07 FF FF */ addi r0, r7, -1
/* 802CBEA0 002C8DE0 B0 03 03 FC */ sth r0, 0x3fc(r3)
/* 802CBEA4 002C8DE4 48 00 00 08 */ b lbl_802CBEAC
lbl_802CBEA8:
/* 802CBEA8 002C8DE8 B0 E3 03 FC */ sth r7, 0x3fc(r3)
lbl_802CBEAC:
/* 802CBEAC 002C8DEC 38 C0 00 00 */ li r6, 0
/* 802CBEB0 002C8DF0 7C C7 33 78 */ mr r7, r6
/* 802CBEB4 002C8DF4 38 00 01 F4 */ li r0, 0x1f4
/* 802CBEB8 002C8DF8 7C 09 03 A6 */ mtctr r0
lbl_802CBEBC:
/* 802CBEBC 002C8DFC 38 06 00 10 */ addi r0, r6, 0x10
/* 802CBEC0 002C8E00 7C E3 03 2E */ sthx r7, r3, r0
/* 802CBEC4 002C8E04 38 C6 00 02 */ addi r6, r6, 2
/* 802CBEC8 002C8E08 42 00 FF F4 */ bdnz lbl_802CBEBC
/* 802CBECC 002C8E0C 7C A0 07 34 */ extsh r0, r5
/* 802CBED0 002C8E10 2C 00 01 F4 */ cmpwi r0, 0x1f4
/* 802CBED4 002C8E14 40 81 00 10 */ ble lbl_802CBEE4
/* 802CBED8 002C8E18 38 00 01 F4 */ li r0, 0x1f4
/* 802CBEDC 002C8E1C B0 03 03 F8 */ sth r0, 0x3f8(r3)
/* 802CBEE0 002C8E20 48 00 00 08 */ b lbl_802CBEE8
lbl_802CBEE4:
/* 802CBEE4 002C8E24 B0 A3 03 F8 */ sth r5, 0x3f8(r3)
lbl_802CBEE8:
/* 802CBEE8 002C8E28 38 E0 00 00 */ li r7, 0
/* 802CBEEC 002C8E2C 38 A0 00 00 */ li r5, 0
/* 802CBEF0 002C8E30 48 00 00 18 */ b lbl_802CBF08
lbl_802CBEF4:
/* 802CBEF4 002C8E34 7C C4 2A 2E */ lhzx r6, r4, r5
/* 802CBEF8 002C8E38 38 05 00 10 */ addi r0, r5, 0x10
/* 802CBEFC 002C8E3C 7C C3 03 2E */ sthx r6, r3, r0
/* 802CBF00 002C8E40 38 E7 00 01 */ addi r7, r7, 1
/* 802CBF04 002C8E44 38 A5 00 02 */ addi r5, r5, 2
lbl_802CBF08:
/* 802CBF08 002C8E48 A8 03 03 F8 */ lha r0, 0x3f8(r3)
/* 802CBF0C 002C8E4C 7C 07 00 00 */ cmpw r7, r0
/* 802CBF10 002C8E50 41 80 FF E4 */ blt lbl_802CBEF4
/* 802CBF14 002C8E54 38 00 00 00 */ li r0, 0
/* 802CBF18 002C8E58 B0 03 03 FA */ sth r0, 0x3fa(r3)
/* 802CBF1C 002C8E5C 98 03 03 FF */ stb r0, 0x3ff(r3)
/* 802CBF20 002C8E60 98 03 04 00 */ stb r0, 0x400(r3)
/* 802CBF24 002C8E64 98 03 04 01 */ stb r0, 0x401(r3)
/* 802CBF28 002C8E68 38 A0 00 00 */ li r5, 0
/* 802CBF2C 002C8E6C 38 80 FF FF */ li r4, -1
/* 802CBF30 002C8E70 38 00 00 40 */ li r0, 0x40
/* 802CBF34 002C8E74 7C 09 03 A6 */ mtctr r0
lbl_802CBF38:
/* 802CBF38 002C8E78 38 05 04 02 */ addi r0, r5, 0x402
/* 802CBF3C 002C8E7C 7C 83 01 AE */ stbx r4, r3, r0
/* 802CBF40 002C8E80 38 A5 00 01 */ addi r5, r5, 1
/* 802CBF44 002C8E84 42 00 FF F4 */ bdnz lbl_802CBF38
/* 802CBF48 002C8E88 38 80 00 00 */ li r4, 0
/* 802CBF4C 002C8E8C 48 00 05 75 */ bl Z2SpeechMgr2_NS_selectUnit
lbl_802CBF50:
/* 802CBF50 002C8E90 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802CBF54 002C8E94 7C 08 03 A6 */ mtlr r0
/* 802CBF58 002C8E98 38 21 00 10 */ addi r1, r1, 0x10
/* 802CBF5C 002C8E9C 4E 80 00 20 */ blr
.global Z2SpeechMgr2_NS_setTextCount
Z2SpeechMgr2_NS_setTextCount:
/* 802CBF60 002C8EA0 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 802CBF64 002C8EA4 7C 08 02 A6 */ mflr r0
/* 802CBF68 002C8EA8 90 01 00 54 */ stw r0, 0x54(r1)
/* 802CBF6C 002C8EAC 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 802CBF70 002C8EB0 7C 7F 1B 78 */ mr r31, r3
/* 802CBF74 002C8EB4 88 03 03 FE */ lbz r0, 0x3fe(r3)
/* 802CBF78 002C8EB8 28 00 00 63 */ cmplwi r0, 0x63
/* 802CBF7C 002C8EBC 41 82 02 00 */ beq lbl_802CC17C
/* 802CBF80 002C8EC0 38 00 00 00 */ li r0, 0
/* 802CBF84 002C8EC4 98 1F 03 FF */ stb r0, 0x3ff(r31)
/* 802CBF88 002C8EC8 7C 84 07 34 */ extsh r4, r4
/* 802CBF8C 002C8ECC 30 04 FF FF */ addic r0, r4, -1
/* 802CBF90 002C8ED0 7C 60 01 10 */ subfe r3, r0, r0
/* 802CBF94 002C8ED4 38 04 FF FF */ addi r0, r4, -1
/* 802CBF98 002C8ED8 7C 00 18 78 */ andc r0, r0, r3
/* 802CBF9C 002C8EDC 7C 03 07 34 */ extsh r3, r0
/* 802CBFA0 002C8EE0 38 80 00 00 */ li r4, 0
/* 802CBFA4 002C8EE4 A8 1F 03 FA */ lha r0, 0x3fa(r31)
/* 802CBFA8 002C8EE8 2C 00 00 00 */ cmpwi r0, 0
/* 802CBFAC 002C8EEC 40 82 00 14 */ bne lbl_802CBFC0
/* 802CBFB0 002C8EF0 A8 1F 03 F8 */ lha r0, 0x3f8(r31)
/* 802CBFB4 002C8EF4 7C 03 00 00 */ cmpw r3, r0
/* 802CBFB8 002C8EF8 41 80 00 08 */ blt lbl_802CBFC0
/* 802CBFBC 002C8EFC 38 80 00 01 */ li r4, 1
lbl_802CBFC0:
/* 802CBFC0 002C8F00 B0 7F 03 FA */ sth r3, 0x3fa(r31)
/* 802CBFC4 002C8F04 A8 1F 03 FA */ lha r0, 0x3fa(r31)
/* 802CBFC8 002C8F08 A8 7F 03 F8 */ lha r3, 0x3f8(r31)
/* 802CBFCC 002C8F0C 7C 00 18 00 */ cmpw r0, r3
/* 802CBFD0 002C8F10 41 80 00 08 */ blt lbl_802CBFD8
/* 802CBFD4 002C8F14 B0 7F 03 FA */ sth r3, 0x3fa(r31)
lbl_802CBFD8:
/* 802CBFD8 002C8F18 88 1F 03 FE */ lbz r0, 0x3fe(r31)
/* 802CBFDC 002C8F1C 28 00 00 01 */ cmplwi r0, 1
/* 802CBFE0 002C8F20 41 82 00 0C */ beq lbl_802CBFEC
/* 802CBFE4 002C8F24 28 00 00 02 */ cmplwi r0, 2
/* 802CBFE8 002C8F28 40 82 00 20 */ bne lbl_802CC008
lbl_802CBFEC:
/* 802CBFEC 002C8F2C 80 1F 00 00 */ lwz r0, 0(r31)
/* 802CBFF0 002C8F30 28 00 00 00 */ cmplwi r0, 0
/* 802CBFF4 002C8F34 40 82 01 88 */ bne lbl_802CC17C
/* 802CBFF8 002C8F38 7F E3 FB 78 */ mr r3, r31
/* 802CBFFC 002C8F3C 38 80 00 00 */ li r4, 0
/* 802CC000 002C8F40 48 00 01 91 */ bl Z2SpeechMgr2_NS_speakOneWord
/* 802CC004 002C8F44 48 00 01 78 */ b lbl_802CC17C
lbl_802CC008:
/* 802CC008 002C8F48 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 802CC00C 002C8F4C 41 82 00 58 */ beq lbl_802CC064
/* 802CC010 002C8F50 A0 1F 03 FC */ lhz r0, 0x3fc(r31)
/* 802CC014 002C8F54 28 00 00 00 */ cmplwi r0, 0
/* 802CC018 002C8F58 40 82 01 64 */ bne lbl_802CC17C
/* 802CC01C 002C8F5C 38 00 00 7A */ li r0, 0x7a
/* 802CC020 002C8F60 90 01 00 34 */ stw r0, 0x34(r1)
/* 802CC024 002C8F64 38 7F 00 0C */ addi r3, r31, 0xc
/* 802CC028 002C8F68 38 81 00 34 */ addi r4, r1, 0x34
/* 802CC02C 002C8F6C 38 BF 00 04 */ addi r5, r31, 4
/* 802CC030 002C8F70 38 C0 00 00 */ li r6, 0
/* 802CC034 002C8F74 38 E0 00 00 */ li r7, 0
/* 802CC038 002C8F78 C0 22 C5 30 */ lfs f1, lbl_80455F30-_SDA2_BASE_(r2)
/* 802CC03C 002C8F7C C0 42 C5 34 */ lfs f2, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CC040 002C8F80 FC 60 10 90 */ fmr f3, f2
/* 802CC044 002C8F84 C0 82 C5 38 */ lfs f4, lbl_80455F38-_SDA2_BASE_(r2)
/* 802CC048 002C8F88 FC A0 20 90 */ fmr f5, f4
/* 802CC04C 002C8F8C 39 00 00 00 */ li r8, 0
/* 802CC050 002C8F90 81 9F 00 0C */ lwz r12, 0xc(r31)
/* 802CC054 002C8F94 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 802CC058 002C8F98 7D 89 03 A6 */ mtctr r12
/* 802CC05C 002C8F9C 4E 80 04 21 */ bctrl
/* 802CC060 002C8FA0 48 00 01 1C */ b lbl_802CC17C
lbl_802CC064:
/* 802CC064 002C8FA4 7F E3 FB 78 */ mr r3, r31
/* 802CC068 002C8FA8 48 00 02 95 */ bl Z2SpeechMgr2_NS_isNonVerbal
/* 802CC06C 002C8FAC 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802CC070 002C8FB0 40 82 01 0C */ bne lbl_802CC17C
/* 802CC074 002C8FB4 88 7F 03 FE */ lbz r3, 0x3fe(r31)
/* 802CC078 002C8FB8 38 03 FF F5 */ addi r0, r3, -11
/* 802CC07C 002C8FBC 28 00 00 14 */ cmplwi r0, 0x14
/* 802CC080 002C8FC0 41 81 00 B8 */ bgt lbl_802CC138
/* 802CC084 002C8FC4 3C 60 80 3D */ lis r3, lbl_803CBED0@ha
/* 802CC088 002C8FC8 38 63 BE D0 */ addi r3, r3, lbl_803CBED0@l
/* 802CC08C 002C8FCC 54 00 10 3A */ slwi r0, r0, 2
/* 802CC090 002C8FD0 7C 03 00 2E */ lwzx r0, r3, r0
/* 802CC094 002C8FD4 7C 09 03 A6 */ mtctr r0
/* 802CC098 002C8FD8 4E 80 04 20 */ bctr
/* 802CC09C 002C8FDC 38 00 00 7B */ li r0, 0x7b
/* 802CC0A0 002C8FE0 90 01 00 30 */ stw r0, 0x30(r1)
/* 802CC0A4 002C8FE4 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CC0A8 002C8FE8 48 00 00 90 */ b lbl_802CC138
/* 802CC0AC 002C8FEC 38 00 00 7C */ li r0, 0x7c
/* 802CC0B0 002C8FF0 90 01 00 2C */ stw r0, 0x2c(r1)
/* 802CC0B4 002C8FF4 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CC0B8 002C8FF8 48 00 00 80 */ b lbl_802CC138
/* 802CC0BC 002C8FFC 38 00 00 7D */ li r0, 0x7d
/* 802CC0C0 002C9000 90 01 00 28 */ stw r0, 0x28(r1)
/* 802CC0C4 002C9004 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CC0C8 002C9008 48 00 00 70 */ b lbl_802CC138
/* 802CC0CC 002C900C 38 00 00 7E */ li r0, 0x7e
/* 802CC0D0 002C9010 90 01 00 24 */ stw r0, 0x24(r1)
/* 802CC0D4 002C9014 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CC0D8 002C9018 48 00 00 60 */ b lbl_802CC138
/* 802CC0DC 002C901C 38 00 00 7F */ li r0, 0x7f
/* 802CC0E0 002C9020 90 01 00 20 */ stw r0, 0x20(r1)
/* 802CC0E4 002C9024 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CC0E8 002C9028 48 00 00 50 */ b lbl_802CC138
/* 802CC0EC 002C902C 38 00 00 80 */ li r0, 0x80
/* 802CC0F0 002C9030 90 01 00 1C */ stw r0, 0x1c(r1)
/* 802CC0F4 002C9034 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CC0F8 002C9038 48 00 00 40 */ b lbl_802CC138
/* 802CC0FC 002C903C 38 00 00 81 */ li r0, 0x81
/* 802CC100 002C9040 90 01 00 18 */ stw r0, 0x18(r1)
/* 802CC104 002C9044 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CC108 002C9048 48 00 00 30 */ b lbl_802CC138
/* 802CC10C 002C904C 38 00 00 82 */ li r0, 0x82
/* 802CC110 002C9050 90 01 00 14 */ stw r0, 0x14(r1)
/* 802CC114 002C9054 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CC118 002C9058 48 00 00 20 */ b lbl_802CC138
/* 802CC11C 002C905C 38 00 00 83 */ li r0, 0x83
/* 802CC120 002C9060 90 01 00 10 */ stw r0, 0x10(r1)
/* 802CC124 002C9064 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CC128 002C9068 48 00 00 10 */ b lbl_802CC138
/* 802CC12C 002C906C 38 00 00 84 */ li r0, 0x84
/* 802CC130 002C9070 90 01 00 0C */ stw r0, 0xc(r1)
/* 802CC134 002C9074 90 01 00 38 */ stw r0, 0x38(r1)
lbl_802CC138:
/* 802CC138 002C9078 80 01 00 38 */ lwz r0, 0x38(r1)
/* 802CC13C 002C907C 90 01 00 08 */ stw r0, 8(r1)
/* 802CC140 002C9080 38 7F 00 0C */ addi r3, r31, 0xc
/* 802CC144 002C9084 38 81 00 08 */ addi r4, r1, 8
/* 802CC148 002C9088 38 BF 00 04 */ addi r5, r31, 4
/* 802CC14C 002C908C 38 C0 00 00 */ li r6, 0
/* 802CC150 002C9090 38 E0 00 00 */ li r7, 0
/* 802CC154 002C9094 C0 22 C5 30 */ lfs f1, lbl_80455F30-_SDA2_BASE_(r2)
/* 802CC158 002C9098 C0 42 C5 34 */ lfs f2, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CC15C 002C909C FC 60 10 90 */ fmr f3, f2
/* 802CC160 002C90A0 C0 82 C5 38 */ lfs f4, lbl_80455F38-_SDA2_BASE_(r2)
/* 802CC164 002C90A4 FC A0 20 90 */ fmr f5, f4
/* 802CC168 002C90A8 39 00 00 00 */ li r8, 0
/* 802CC16C 002C90AC 81 9F 00 0C */ lwz r12, 0xc(r31)
/* 802CC170 002C90B0 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 802CC174 002C90B4 7D 89 03 A6 */ mtctr r12
/* 802CC178 002C90B8 4E 80 04 21 */ bctrl
lbl_802CC17C:
/* 802CC17C 002C90BC 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 802CC180 002C90C0 80 01 00 54 */ lwz r0, 0x54(r1)
/* 802CC184 002C90C4 7C 08 03 A6 */ mtlr r0
/* 802CC188 002C90C8 38 21 00 50 */ addi r1, r1, 0x50
/* 802CC18C 002C90CC 4E 80 00 20 */ blr
.global Z2SpeechMgr2_NS_speakOneWord
Z2SpeechMgr2_NS_speakOneWord:
/* 802CC190 002C90D0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802CC194 002C90D4 7C 08 02 A6 */ mflr r0
/* 802CC198 002C90D8 90 01 00 34 */ stw r0, 0x34(r1)
/* 802CC19C 002C90DC 39 61 00 30 */ addi r11, r1, 0x30
/* 802CC1A0 002C90E0 48 09 60 3D */ bl _savegpr_29
/* 802CC1A4 002C90E4 7C 7E 1B 78 */ mr r30, r3
/* 802CC1A8 002C90E8 7C 9F 23 78 */ mr r31, r4
/* 802CC1AC 002C90EC 80 6D 86 00 */ lwz r3, lbl_80450B80-_SDA_BASE_(r13)
/* 802CC1B0 002C90F0 88 03 00 1D */ lbz r0, 0x1d(r3)
/* 802CC1B4 002C90F4 28 00 00 00 */ cmplwi r0, 0
/* 802CC1B8 002C90F8 41 82 01 2C */ beq lbl_802CC2E4
/* 802CC1BC 002C90FC 88 1E 03 FE */ lbz r0, 0x3fe(r30)
/* 802CC1C0 002C9100 28 00 00 01 */ cmplwi r0, 1
/* 802CC1C4 002C9104 41 82 00 0C */ beq lbl_802CC1D0
/* 802CC1C8 002C9108 28 00 00 02 */ cmplwi r0, 2
/* 802CC1CC 002C910C 40 82 01 18 */ bne lbl_802CC2E4
lbl_802CC1D0:
/* 802CC1D0 002C9110 88 1E 04 00 */ lbz r0, 0x400(r30)
/* 802CC1D4 002C9114 28 00 00 00 */ cmplwi r0, 0
/* 802CC1D8 002C9118 40 82 01 0C */ bne lbl_802CC2E4
/* 802CC1DC 002C911C 88 1E 03 FF */ lbz r0, 0x3ff(r30)
/* 802CC1E0 002C9120 28 00 00 1E */ cmplwi r0, 0x1e
/* 802CC1E4 002C9124 41 81 01 00 */ bgt lbl_802CC2E4
/* 802CC1E8 002C9128 A8 7E 03 FA */ lha r3, 0x3fa(r30)
/* 802CC1EC 002C912C A8 1E 03 F8 */ lha r0, 0x3f8(r30)
/* 802CC1F0 002C9130 7C 03 00 00 */ cmpw r3, r0
/* 802CC1F4 002C9134 41 80 00 18 */ blt lbl_802CC20C
/* 802CC1F8 002C9138 7F C3 F3 78 */ mr r3, r30
/* 802CC1FC 002C913C 48 00 05 3D */ bl Z2SpeechMgr2_NS_selectTail
/* 802CC200 002C9140 38 00 00 01 */ li r0, 1
/* 802CC204 002C9144 98 1E 04 00 */ stb r0, 0x400(r30)
/* 802CC208 002C9148 48 00 00 14 */ b lbl_802CC21C
lbl_802CC20C:
/* 802CC20C 002C914C 7F C3 F3 78 */ mr r3, r30
/* 802CC210 002C9150 48 00 00 ED */ bl Z2SpeechMgr2_NS_isNonVerbal
/* 802CC214 002C9154 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802CC218 002C9158 40 82 00 CC */ bne lbl_802CC2E4
lbl_802CC21C:
/* 802CC21C 002C915C A0 7E 03 FC */ lhz r3, 0x3fc(r30)
/* 802CC220 002C9160 3F A3 00 05 */ addis r29, r3, 5
/* 802CC224 002C9164 80 6D 86 00 */ lwz r3, lbl_80450B80-_SDA_BASE_(r13)
/* 802CC228 002C9168 88 63 00 0C */ lbz r3, 0xc(r3)
/* 802CC22C 002C916C 7C 63 07 74 */ extsb r3, r3
/* 802CC230 002C9170 3B BD 00 A1 */ addi r29, r29, 0xa1
/* 802CC234 002C9174 4B D6 0E 39 */ bl dComIfGp_getReverb
/* 802CC238 002C9178 7C 60 1B 78 */ mr r0, r3
/* 802CC23C 002C917C 93 A1 00 08 */ stw r29, 8(r1)
/* 802CC240 002C9180 38 7E 00 0C */ addi r3, r30, 0xc
/* 802CC244 002C9184 38 81 00 08 */ addi r4, r1, 8
/* 802CC248 002C9188 7F C5 F3 78 */ mr r5, r30
/* 802CC24C 002C918C 38 C0 00 00 */ li r6, 0
/* 802CC250 002C9190 38 E0 00 00 */ li r7, 0
/* 802CC254 002C9194 7C 00 07 74 */ extsb r0, r0
/* 802CC258 002C9198 C8 22 C5 40 */ lfd f1, lbl_80455F40-_SDA2_BASE_(r2)
/* 802CC25C 002C919C 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 802CC260 002C91A0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802CC264 002C91A4 3C 00 43 30 */ lis r0, 0x4330
/* 802CC268 002C91A8 90 01 00 10 */ stw r0, 0x10(r1)
/* 802CC26C 002C91AC C8 01 00 10 */ lfd f0, 0x10(r1)
/* 802CC270 002C91B0 EC 20 08 28 */ fsubs f1, f0, f1
/* 802CC274 002C91B4 C0 02 C5 3C */ lfs f0, lbl_80455F3C-_SDA2_BASE_(r2)
/* 802CC278 002C91B8 EC 21 00 24 */ fdivs f1, f1, f0
/* 802CC27C 002C91BC C0 42 C5 34 */ lfs f2, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CC280 002C91C0 FC 60 10 90 */ fmr f3, f2
/* 802CC284 002C91C4 C0 82 C5 38 */ lfs f4, lbl_80455F38-_SDA2_BASE_(r2)
/* 802CC288 002C91C8 FC A0 20 90 */ fmr f5, f4
/* 802CC28C 002C91CC 39 00 00 00 */ li r8, 0
/* 802CC290 002C91D0 81 9E 00 0C */ lwz r12, 0xc(r30)
/* 802CC294 002C91D4 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 802CC298 002C91D8 7D 89 03 A6 */ mtctr r12
/* 802CC29C 002C91DC 4E 80 04 21 */ bctrl
/* 802CC2A0 002C91E0 38 7E 00 0C */ addi r3, r30, 0xc
/* 802CC2A4 002C91E4 7F C4 F3 78 */ mr r4, r30
/* 802CC2A8 002C91E8 38 A0 00 08 */ li r5, 8
/* 802CC2AC 002C91EC 88 1E 04 01 */ lbz r0, 0x401(r30)
/* 802CC2B0 002C91F0 7C DE 02 14 */ add r6, r30, r0
/* 802CC2B4 002C91F4 88 06 04 01 */ lbz r0, 0x401(r6)
/* 802CC2B8 002C91F8 7C 06 07 74 */ extsb r6, r0
/* 802CC2BC 002C91FC 38 06 00 01 */ addi r0, r6, 1
/* 802CC2C0 002C9200 54 06 04 3E */ clrlwi r6, r0, 0x10
/* 802CC2C4 002C9204 38 E0 FF FF */ li r7, -1
/* 802CC2C8 002C9208 4B FD EC 15 */ bl Z2SoundStarter_NS_setPortData
/* 802CC2CC 002C920C 88 1E 04 00 */ lbz r0, 0x400(r30)
/* 802CC2D0 002C9210 28 00 00 00 */ cmplwi r0, 0
/* 802CC2D4 002C9214 40 82 00 10 */ bne lbl_802CC2E4
/* 802CC2D8 002C9218 7F C3 F3 78 */ mr r3, r30
/* 802CC2DC 002C921C 7F E4 FB 78 */ mr r4, r31
/* 802CC2E0 002C9220 48 00 01 E1 */ bl Z2SpeechMgr2_NS_selectUnit
lbl_802CC2E4:
/* 802CC2E4 002C9224 39 61 00 30 */ addi r11, r1, 0x30
/* 802CC2E8 002C9228 48 09 5F 41 */ bl _restgpr_29
/* 802CC2EC 002C922C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802CC2F0 002C9230 7C 08 03 A6 */ mtlr r0
/* 802CC2F4 002C9234 38 21 00 30 */ addi r1, r1, 0x30
/* 802CC2F8 002C9238 4E 80 00 20 */ blr
.global Z2SpeechMgr2_NS_isNonVerbal
Z2SpeechMgr2_NS_isNonVerbal:
/* 802CC2FC 002C923C A8 03 03 FA */ lha r0, 0x3fa(r3)
/* 802CC300 002C9240 54 00 08 3C */ slwi r0, r0, 1
/* 802CC304 002C9244 7C 83 02 14 */ add r4, r3, r0
/* 802CC308 002C9248 A0 A4 00 10 */ lhz r5, 0x10(r4)
/* 802CC30C 002C924C 3C 80 00 01 */ lis r4, 0x00008162@ha
/* 802CC310 002C9250 38 04 81 62 */ addi r0, r4, 0x00008162@l
/* 802CC314 002C9254 7C 05 00 00 */ cmpw r5, r0
/* 802CC318 002C9258 41 82 01 68 */ beq lbl_802CC480
/* 802CC31C 002C925C 40 80 00 9C */ bge lbl_802CC3B8
/* 802CC320 002C9260 2C 05 00 5B */ cmpwi r5, 0x5b
/* 802CC324 002C9264 40 80 00 4C */ bge lbl_802CC370
/* 802CC328 002C9268 2C 05 00 3A */ cmpwi r5, 0x3a
/* 802CC32C 002C926C 40 80 00 24 */ bge lbl_802CC350
/* 802CC330 002C9270 2C 05 00 20 */ cmpwi r5, 0x20
/* 802CC334 002C9274 40 80 00 10 */ bge lbl_802CC344
/* 802CC338 002C9278 2C 05 00 00 */ cmpwi r5, 0
/* 802CC33C 002C927C 41 82 01 44 */ beq lbl_802CC480
/* 802CC340 002C9280 48 00 01 48 */ b lbl_802CC488
lbl_802CC344:
/* 802CC344 002C9284 2C 05 00 30 */ cmpwi r5, 0x30
/* 802CC348 002C9288 40 80 01 40 */ bge lbl_802CC488
/* 802CC34C 002C928C 48 00 01 34 */ b lbl_802CC480
lbl_802CC350:
/* 802CC350 002C9290 2C 05 00 4B */ cmpwi r5, 0x4b
/* 802CC354 002C9294 40 80 00 10 */ bge lbl_802CC364
/* 802CC358 002C9298 2C 05 00 40 */ cmpwi r5, 0x40
/* 802CC35C 002C929C 40 80 01 2C */ bge lbl_802CC488
/* 802CC360 002C92A0 48 00 01 20 */ b lbl_802CC480
lbl_802CC364:
/* 802CC364 002C92A4 2C 05 00 50 */ cmpwi r5, 0x50
/* 802CC368 002C92A8 40 80 01 20 */ bge lbl_802CC488
/* 802CC36C 002C92AC 48 00 01 14 */ b lbl_802CC480
lbl_802CC370:
/* 802CC370 002C92B0 38 04 81 51 */ addi r0, r4, -32431
/* 802CC374 002C92B4 7C 05 00 00 */ cmpw r5, r0
/* 802CC378 002C92B8 41 82 01 08 */ beq lbl_802CC480
/* 802CC37C 002C92BC 40 80 00 2C */ bge lbl_802CC3A8
/* 802CC380 002C92C0 38 04 81 3F */ addi r0, r4, -32449
/* 802CC384 002C92C4 7C 05 00 00 */ cmpw r5, r0
/* 802CC388 002C92C8 40 80 00 10 */ bge lbl_802CC398
/* 802CC38C 002C92CC 2C 05 00 60 */ cmpwi r5, 0x60
/* 802CC390 002C92D0 40 80 00 F8 */ bge lbl_802CC488
/* 802CC394 002C92D4 48 00 00 EC */ b lbl_802CC480
lbl_802CC398:
/* 802CC398 002C92D8 38 04 81 4C */ addi r0, r4, -32436
/* 802CC39C 002C92DC 7C 05 00 00 */ cmpw r5, r0
/* 802CC3A0 002C92E0 40 80 00 E8 */ bge lbl_802CC488
/* 802CC3A4 002C92E4 48 00 00 DC */ b lbl_802CC480
lbl_802CC3A8:
/* 802CC3A8 002C92E8 38 04 81 5E */ addi r0, r4, -32418
/* 802CC3AC 002C92EC 7C 05 00 00 */ cmpw r5, r0
/* 802CC3B0 002C92F0 41 82 00 D0 */ beq lbl_802CC480
/* 802CC3B4 002C92F4 48 00 00 D4 */ b lbl_802CC488
lbl_802CC3B8:
/* 802CC3B8 002C92F8 38 04 81 7B */ addi r0, r4, -32389
/* 802CC3BC 002C92FC 7C 05 00 00 */ cmpw r5, r0
/* 802CC3C0 002C9300 40 80 00 6C */ bge lbl_802CC42C
/* 802CC3C4 002C9304 38 04 81 6D */ addi r0, r4, -32403
/* 802CC3C8 002C9308 7C 05 00 00 */ cmpw r5, r0
/* 802CC3CC 002C930C 40 80 00 34 */ bge lbl_802CC400
/* 802CC3D0 002C9310 38 04 81 67 */ addi r0, r4, -32409
/* 802CC3D4 002C9314 7C 05 00 00 */ cmpw r5, r0
/* 802CC3D8 002C9318 41 82 00 B0 */ beq lbl_802CC488
/* 802CC3DC 002C931C 40 80 00 14 */ bge lbl_802CC3F0
/* 802CC3E0 002C9320 38 04 81 66 */ addi r0, r4, -32410
/* 802CC3E4 002C9324 7C 05 00 00 */ cmpw r5, r0
/* 802CC3E8 002C9328 40 80 00 98 */ bge lbl_802CC480
/* 802CC3EC 002C932C 48 00 00 9C */ b lbl_802CC488
lbl_802CC3F0:
/* 802CC3F0 002C9330 38 04 81 6B */ addi r0, r4, -32405
/* 802CC3F4 002C9334 7C 05 00 00 */ cmpw r5, r0
/* 802CC3F8 002C9338 40 80 00 90 */ bge lbl_802CC488
/* 802CC3FC 002C933C 48 00 00 84 */ b lbl_802CC480
lbl_802CC400:
/* 802CC400 002C9340 38 04 81 75 */ addi r0, r4, -32395
/* 802CC404 002C9344 7C 05 00 00 */ cmpw r5, r0
/* 802CC408 002C9348 40 80 00 14 */ bge lbl_802CC41C
/* 802CC40C 002C934C 38 04 81 73 */ addi r0, r4, -32397
/* 802CC410 002C9350 7C 05 00 00 */ cmpw r5, r0
/* 802CC414 002C9354 40 80 00 74 */ bge lbl_802CC488
/* 802CC418 002C9358 48 00 00 68 */ b lbl_802CC480
lbl_802CC41C:
/* 802CC41C 002C935C 38 04 81 77 */ addi r0, r4, -32393
/* 802CC420 002C9360 7C 05 00 00 */ cmpw r5, r0
/* 802CC424 002C9364 40 80 00 64 */ bge lbl_802CC488
/* 802CC428 002C9368 48 00 00 58 */ b lbl_802CC480
lbl_802CC42C:
/* 802CC42C 002C936C 38 04 81 8F */ addi r0, r4, -32369
/* 802CC430 002C9370 7C 05 00 00 */ cmpw r5, r0
/* 802CC434 002C9374 40 80 00 24 */ bge lbl_802CC458
/* 802CC438 002C9378 38 04 81 81 */ addi r0, r4, -32383
/* 802CC43C 002C937C 7C 05 00 00 */ cmpw r5, r0
/* 802CC440 002C9380 41 82 00 40 */ beq lbl_802CC480
/* 802CC444 002C9384 40 80 00 44 */ bge lbl_802CC488
/* 802CC448 002C9388 38 04 81 7D */ addi r0, r4, -32387
/* 802CC44C 002C938C 7C 05 00 00 */ cmpw r5, r0
/* 802CC450 002C9390 40 80 00 38 */ bge lbl_802CC488
/* 802CC454 002C9394 48 00 00 2C */ b lbl_802CC480
lbl_802CC458:
/* 802CC458 002C9398 38 04 81 93 */ addi r0, r4, -32365
/* 802CC45C 002C939C 7C 05 00 00 */ cmpw r5, r0
/* 802CC460 002C93A0 40 80 00 14 */ bge lbl_802CC474
/* 802CC464 002C93A4 38 04 81 91 */ addi r0, r4, -32367
/* 802CC468 002C93A8 7C 05 00 00 */ cmpw r5, r0
/* 802CC46C 002C93AC 40 80 00 1C */ bge lbl_802CC488
/* 802CC470 002C93B0 48 00 00 10 */ b lbl_802CC480
lbl_802CC474:
/* 802CC474 002C93B4 38 04 81 97 */ addi r0, r4, -32361
/* 802CC478 002C93B8 7C 05 00 00 */ cmpw r5, r0
/* 802CC47C 002C93BC 40 80 00 0C */ bge lbl_802CC488
lbl_802CC480:
/* 802CC480 002C93C0 38 60 00 01 */ li r3, 1
/* 802CC484 002C93C4 4E 80 00 20 */ blr
lbl_802CC488:
/* 802CC488 002C93C8 28 05 00 0A */ cmplwi r5, 0xa
/* 802CC48C 002C93CC 40 82 00 2C */ bne lbl_802CC4B8
/* 802CC490 002C93D0 88 03 03 FE */ lbz r0, 0x3fe(r3)
/* 802CC494 002C93D4 2C 00 00 03 */ cmpwi r0, 3
/* 802CC498 002C93D8 40 80 00 18 */ bge lbl_802CC4B0
/* 802CC49C 002C93DC 2C 00 00 01 */ cmpwi r0, 1
/* 802CC4A0 002C93E0 40 80 00 08 */ bge lbl_802CC4A8
/* 802CC4A4 002C93E4 48 00 00 0C */ b lbl_802CC4B0
lbl_802CC4A8:
/* 802CC4A8 002C93E8 38 60 00 00 */ li r3, 0
/* 802CC4AC 002C93EC 4E 80 00 20 */ blr
lbl_802CC4B0:
/* 802CC4B0 002C93F0 38 60 00 01 */ li r3, 1
/* 802CC4B4 002C93F4 4E 80 00 20 */ blr
lbl_802CC4B8:
/* 802CC4B8 002C93F8 38 60 00 00 */ li r3, 0
/* 802CC4BC 002C93FC 4E 80 00 20 */ blr
.global Z2SpeechMgr2_NS_selectUnit
Z2SpeechMgr2_NS_selectUnit:
/* 802CC4C0 002C9400 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802CC4C4 002C9404 7C 08 02 A6 */ mflr r0
/* 802CC4C8 002C9408 90 01 00 34 */ stw r0, 0x34(r1)
/* 802CC4CC 002C940C 88 03 04 01 */ lbz r0, 0x401(r3)
/* 802CC4D0 002C9410 28 00 00 40 */ cmplwi r0, 0x40
/* 802CC4D4 002C9414 41 80 00 10 */ blt lbl_802CC4E4
/* 802CC4D8 002C9418 80 63 00 00 */ lwz r3, 0(r3)
/* 802CC4DC 002C941C 4B FD 60 BD */ bl JAISound_NS_stop_X1_
/* 802CC4E0 002C9420 48 00 02 48 */ b lbl_802CC728
lbl_802CC4E4:
/* 802CC4E4 002C9424 3C A0 80 3A */ lis r5, lbl_8039C98C@ha
/* 802CC4E8 002C9428 38 C5 C9 8C */ addi r6, r5, lbl_8039C98C@l
/* 802CC4EC 002C942C A0 03 03 FC */ lhz r0, 0x3fc(r3)
/* 802CC4F0 002C9430 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802CC4F4 002C9434 7C A6 02 14 */ add r5, r6, r0
/* 802CC4F8 002C9438 89 05 00 08 */ lbz r8, 8(r5)
/* 802CC4FC 002C943C 80 03 00 08 */ lwz r0, 8(r3)
/* 802CC500 002C9440 3C A0 00 19 */ lis r5, 0x0019660D@ha
/* 802CC504 002C9444 38 A5 66 0D */ addi r5, r5, 0x0019660D@l
/* 802CC508 002C9448 7C E0 29 D6 */ mullw r7, r0, r5
/* 802CC50C 002C944C 3C E7 3C 6F */ addis r7, r7, 0x3c6f
/* 802CC510 002C9450 38 07 F3 5F */ addi r0, r7, -3233
/* 802CC514 002C9454 90 03 00 08 */ stw r0, 8(r3)
/* 802CC518 002C9458 80 03 00 08 */ lwz r0, 8(r3)
/* 802CC51C 002C945C 54 00 BA 7E */ srwi r0, r0, 9
/* 802CC520 002C9460 64 00 3F 80 */ oris r0, r0, 0x3f80
/* 802CC524 002C9464 90 01 00 10 */ stw r0, 0x10(r1)
/* 802CC528 002C9468 C0 01 00 10 */ lfs f0, 0x10(r1)
/* 802CC52C 002C946C C0 42 C5 34 */ lfs f2, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CC530 002C9470 EC 60 10 28 */ fsubs f3, f0, f2
/* 802CC534 002C9474 C8 22 C5 48 */ lfd f1, lbl_80455F48-_SDA2_BASE_(r2)
/* 802CC538 002C9478 91 01 00 24 */ stw r8, 0x24(r1)
/* 802CC53C 002C947C 3C 00 43 30 */ lis r0, 0x4330
/* 802CC540 002C9480 90 01 00 20 */ stw r0, 0x20(r1)
/* 802CC544 002C9484 C8 01 00 20 */ lfd f0, 0x20(r1)
/* 802CC548 002C9488 EC 00 08 28 */ fsubs f0, f0, f1
/* 802CC54C 002C948C EC 00 00 F2 */ fmuls f0, f0, f3
/* 802CC550 002C9490 FC 00 00 1E */ fctiwz f0, f0
/* 802CC554 002C9494 D8 01 00 28 */ stfd f0, 0x28(r1)
/* 802CC558 002C9498 80 E1 00 2C */ lwz r7, 0x2c(r1)
/* 802CC55C 002C949C 7C E8 07 74 */ extsb r8, r7
/* 802CC560 002C94A0 88 E3 04 01 */ lbz r7, 0x401(r3)
/* 802CC564 002C94A4 28 07 00 00 */ cmplwi r7, 0
/* 802CC568 002C94A8 41 82 01 A8 */ beq lbl_802CC710
/* 802CC56C 002C94AC 54 84 06 3F */ clrlwi. r4, r4, 0x18
/* 802CC570 002C94B0 41 82 01 A0 */ beq lbl_802CC710
/* 802CC574 002C94B4 39 00 00 00 */ li r8, 0
/* 802CC578 002C94B8 7C 83 3A 14 */ add r4, r3, r7
/* 802CC57C 002C94BC 88 84 04 01 */ lbz r4, 0x401(r4)
/* 802CC580 002C94C0 7C 84 07 74 */ extsb r4, r4
/* 802CC584 002C94C4 54 84 08 3C */ slwi r4, r4, 1
lbl_802CC588:
/* 802CC588 002C94C8 39 20 00 00 */ li r9, 0
/* 802CC58C 002C94CC A0 E3 03 FC */ lhz r7, 0x3fc(r3)
/* 802CC590 002C94D0 1C E7 00 0C */ mulli r7, r7, 0xc
/* 802CC594 002C94D4 7C E6 3A 14 */ add r7, r6, r7
/* 802CC598 002C94D8 89 47 00 08 */ lbz r10, 8(r7)
/* 802CC59C 002C94DC 80 E3 00 08 */ lwz r7, 8(r3)
/* 802CC5A0 002C94E0 7C E7 29 D6 */ mullw r7, r7, r5
/* 802CC5A4 002C94E4 3C E7 3C 6F */ addis r7, r7, 0x3c6f
/* 802CC5A8 002C94E8 38 E7 F3 5F */ addi r7, r7, -3233
/* 802CC5AC 002C94EC 90 E3 00 08 */ stw r7, 8(r3)
/* 802CC5B0 002C94F0 80 E3 00 08 */ lwz r7, 8(r3)
/* 802CC5B4 002C94F4 54 E7 BA 7E */ srwi r7, r7, 9
/* 802CC5B8 002C94F8 64 E7 3F 80 */ oris r7, r7, 0x3f80
/* 802CC5BC 002C94FC 90 E1 00 0C */ stw r7, 0xc(r1)
/* 802CC5C0 002C9500 C0 01 00 0C */ lfs f0, 0xc(r1)
/* 802CC5C4 002C9504 EC 60 10 28 */ fsubs f3, f0, f2
/* 802CC5C8 002C9508 91 41 00 2C */ stw r10, 0x2c(r1)
/* 802CC5CC 002C950C 90 01 00 28 */ stw r0, 0x28(r1)
/* 802CC5D0 002C9510 C8 01 00 28 */ lfd f0, 0x28(r1)
/* 802CC5D4 002C9514 EC 00 08 28 */ fsubs f0, f0, f1
/* 802CC5D8 002C9518 EC 00 00 F2 */ fmuls f0, f0, f3
/* 802CC5DC 002C951C FC 00 00 1E */ fctiwz f0, f0
/* 802CC5E0 002C9520 D8 01 00 20 */ stfd f0, 0x20(r1)
/* 802CC5E4 002C9524 80 E1 00 24 */ lwz r7, 0x24(r1)
/* 802CC5E8 002C9528 7C E7 07 74 */ extsb r7, r7
/* 802CC5EC 002C952C 39 60 00 00 */ li r11, 0
/* 802CC5F0 002C9530 89 43 04 01 */ lbz r10, 0x401(r3)
/* 802CC5F4 002C9534 7D 49 03 A6 */ mtctr r10
/* 802CC5F8 002C9538 2C 0A 00 00 */ cmpwi r10, 0
/* 802CC5FC 002C953C 40 81 00 28 */ ble lbl_802CC624
lbl_802CC600:
/* 802CC600 002C9540 39 4B 04 02 */ addi r10, r11, 0x402
/* 802CC604 002C9544 7D 43 50 AE */ lbzx r10, r3, r10
/* 802CC608 002C9548 7D 4A 07 74 */ extsb r10, r10
/* 802CC60C 002C954C 7C 0A 38 00 */ cmpw r10, r7
/* 802CC610 002C9550 40 82 00 0C */ bne lbl_802CC61C
/* 802CC614 002C9554 39 20 00 01 */ li r9, 1
/* 802CC618 002C9558 48 00 00 0C */ b lbl_802CC624
lbl_802CC61C:
/* 802CC61C 002C955C 39 6B 00 01 */ addi r11, r11, 1
/* 802CC620 002C9560 42 00 FF E0 */ bdnz lbl_802CC600
lbl_802CC624:
/* 802CC624 002C9564 55 2A 06 3F */ clrlwi. r10, r9, 0x18
/* 802CC628 002C9568 40 82 FF 60 */ bne lbl_802CC588
/* 802CC62C 002C956C 39 40 00 00 */ li r10, 0
/* 802CC630 002C9570 7D 0B 07 75 */ extsb. r11, r8
/* 802CC634 002C9574 39 81 00 14 */ addi r12, r1, 0x14
/* 802CC638 002C9578 7D 69 03 A6 */ mtctr r11
/* 802CC63C 002C957C 40 81 00 24 */ ble lbl_802CC660
lbl_802CC640:
/* 802CC640 002C9580 7D 6C 50 AE */ lbzx r11, r12, r10
/* 802CC644 002C9584 7D 6B 07 74 */ extsb r11, r11
/* 802CC648 002C9588 7C 07 58 00 */ cmpw r7, r11
/* 802CC64C 002C958C 40 82 00 0C */ bne lbl_802CC658
/* 802CC650 002C9590 39 20 00 01 */ li r9, 1
/* 802CC654 002C9594 48 00 00 0C */ b lbl_802CC660
lbl_802CC658:
/* 802CC658 002C9598 39 4A 00 02 */ addi r10, r10, 2
/* 802CC65C 002C959C 42 00 FF E4 */ bdnz lbl_802CC640
lbl_802CC660:
/* 802CC660 002C95A0 55 29 06 3F */ clrlwi. r9, r9, 0x18
/* 802CC664 002C95A4 40 82 FF 24 */ bne lbl_802CC588
/* 802CC668 002C95A8 A1 23 03 FC */ lhz r9, 0x3fc(r3)
/* 802CC66C 002C95AC 1D 49 00 0C */ mulli r10, r9, 0xc
/* 802CC670 002C95B0 3D 20 80 3A */ lis r9, lbl_8039C98C@ha
/* 802CC674 002C95B4 39 29 C9 8C */ addi r9, r9, lbl_8039C98C@l
/* 802CC678 002C95B8 7D 69 50 2E */ lwzx r11, r9, r10
/* 802CC67C 002C95BC 39 2B 00 01 */ addi r9, r11, 1
/* 802CC680 002C95C0 7D 44 48 AE */ lbzx r10, r4, r9
/* 802CC684 002C95C4 54 E9 08 3C */ slwi r9, r7, 1
/* 802CC688 002C95C8 7D 2B 48 AE */ lbzx r9, r11, r9
/* 802CC68C 002C95CC 7D 4A 48 50 */ subf r10, r10, r9
/* 802CC690 002C95D0 7D 49 FE 70 */ srawi r9, r10, 0x1f
/* 802CC694 002C95D4 7D 2A 52 78 */ xor r10, r9, r10
/* 802CC698 002C95D8 7D 49 50 50 */ subf r10, r9, r10
/* 802CC69C 002C95DC A1 22 D1 A8 */ lhz r9, lbl_80456BA8-_SDA2_BASE_(r2)
/* 802CC6A0 002C95E0 B1 21 00 08 */ sth r9, 8(r1)
/* 802CC6A4 002C95E4 98 E1 00 08 */ stb r7, 8(r1)
/* 802CC6A8 002C95E8 99 41 00 09 */ stb r10, 9(r1)
/* 802CC6AC 002C95EC 7D 09 07 74 */ extsb r9, r8
/* 802CC6B0 002C95F0 55 29 08 3C */ slwi r9, r9, 1
/* 802CC6B4 002C95F4 39 61 00 14 */ addi r11, r1, 0x14
/* 802CC6B8 002C95F8 7D 6B 4A 14 */ add r11, r11, r9
/* 802CC6BC 002C95FC 98 EB 00 00 */ stb r7, 0(r11)
/* 802CC6C0 002C9600 99 4B 00 01 */ stb r10, 1(r11)
/* 802CC6C4 002C9604 39 08 00 01 */ addi r8, r8, 1
/* 802CC6C8 002C9608 7D 07 07 74 */ extsb r7, r8
/* 802CC6CC 002C960C 2C 07 00 05 */ cmpwi r7, 5
/* 802CC6D0 002C9610 40 82 FE B8 */ bne lbl_802CC588
/* 802CC6D4 002C9614 88 E1 00 15 */ lbz r7, 0x15(r1)
/* 802CC6D8 002C9618 89 01 00 14 */ lbz r8, 0x14(r1)
/* 802CC6DC 002C961C 38 80 00 00 */ li r4, 0
/* 802CC6E0 002C9620 38 00 00 05 */ li r0, 5
/* 802CC6E4 002C9624 7C 09 03 A6 */ mtctr r0
lbl_802CC6E8:
/* 802CC6E8 002C9628 38 C1 00 14 */ addi r6, r1, 0x14
/* 802CC6EC 002C962C 7C C6 22 14 */ add r6, r6, r4
/* 802CC6F0 002C9630 88 A6 00 01 */ lbz r5, 1(r6)
/* 802CC6F4 002C9634 54 E0 04 3E */ clrlwi r0, r7, 0x10
/* 802CC6F8 002C9638 7C 05 00 00 */ cmpw r5, r0
/* 802CC6FC 002C963C 40 80 00 0C */ bge lbl_802CC708
/* 802CC700 002C9640 7C A7 2B 78 */ mr r7, r5
/* 802CC704 002C9644 89 06 00 00 */ lbz r8, 0(r6)
lbl_802CC708:
/* 802CC708 002C9648 38 84 00 02 */ addi r4, r4, 2
/* 802CC70C 002C964C 42 00 FF DC */ bdnz lbl_802CC6E8
lbl_802CC710:
/* 802CC710 002C9650 88 03 04 01 */ lbz r0, 0x401(r3)
/* 802CC714 002C9654 7C 83 02 14 */ add r4, r3, r0
/* 802CC718 002C9658 99 04 04 02 */ stb r8, 0x402(r4)
/* 802CC71C 002C965C 88 83 04 01 */ lbz r4, 0x401(r3)
/* 802CC720 002C9660 38 04 00 01 */ addi r0, r4, 1
/* 802CC724 002C9664 98 03 04 01 */ stb r0, 0x401(r3)
lbl_802CC728:
/* 802CC728 002C9668 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802CC72C 002C966C 7C 08 03 A6 */ mtlr r0
/* 802CC730 002C9670 38 21 00 30 */ addi r1, r1, 0x30
/* 802CC734 002C9674 4E 80 00 20 */ blr
.global Z2SpeechMgr2_NS_selectTail
Z2SpeechMgr2_NS_selectTail:
/* 802CC738 002C9678 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802CC73C 002C967C 38 A0 00 00 */ li r5, 0
/* 802CC740 002C9680 88 03 04 01 */ lbz r0, 0x401(r3)
/* 802CC744 002C9684 7C 83 02 14 */ add r4, r3, r0
/* 802CC748 002C9688 88 04 04 01 */ lbz r0, 0x401(r4)
/* 802CC74C 002C968C 7C 00 07 74 */ extsb r0, r0
/* 802CC750 002C9690 54 04 08 3C */ slwi r4, r0, 1
/* 802CC754 002C9694 39 41 00 14 */ addi r10, r1, 0x14
lbl_802CC758:
/* 802CC758 002C9698 38 E0 00 00 */ li r7, 0
/* 802CC75C 002C969C 88 03 03 FE */ lbz r0, 0x3fe(r3)
/* 802CC760 002C96A0 2C 00 00 02 */ cmpwi r0, 2
/* 802CC764 002C96A4 41 82 00 14 */ beq lbl_802CC778
/* 802CC768 002C96A8 40 80 02 60 */ bge lbl_802CC9C8
/* 802CC76C 002C96AC 2C 00 00 01 */ cmpwi r0, 1
/* 802CC770 002C96B0 40 80 00 88 */ bge lbl_802CC7F8
/* 802CC774 002C96B4 48 00 02 54 */ b lbl_802CC9C8
lbl_802CC778:
/* 802CC778 002C96B8 A0 03 03 FC */ lhz r0, 0x3fc(r3)
/* 802CC77C 002C96BC 1D 00 00 0C */ mulli r8, r0, 0xc
/* 802CC780 002C96C0 3C C0 80 3A */ lis r6, lbl_8039C98C@ha
/* 802CC784 002C96C4 38 06 C9 8C */ addi r0, r6, lbl_8039C98C@l
/* 802CC788 002C96C8 7C C0 42 14 */ add r6, r0, r8
/* 802CC78C 002C96CC 88 C6 00 09 */ lbz r6, 9(r6)
/* 802CC790 002C96D0 81 23 00 08 */ lwz r9, 8(r3)
/* 802CC794 002C96D4 3D 00 00 19 */ lis r8, 0x0019660D@ha
/* 802CC798 002C96D8 38 08 66 0D */ addi r0, r8, 0x0019660D@l
/* 802CC79C 002C96DC 7D 09 01 D6 */ mullw r8, r9, r0
/* 802CC7A0 002C96E0 3D 08 3C 6F */ addis r8, r8, 0x3c6f
/* 802CC7A4 002C96E4 38 08 F3 5F */ addi r0, r8, -3233
/* 802CC7A8 002C96E8 90 03 00 08 */ stw r0, 8(r3)
/* 802CC7AC 002C96EC 80 03 00 08 */ lwz r0, 8(r3)
/* 802CC7B0 002C96F0 54 00 BA 7E */ srwi r0, r0, 9
/* 802CC7B4 002C96F4 64 00 3F 80 */ oris r0, r0, 0x3f80
/* 802CC7B8 002C96F8 90 01 00 10 */ stw r0, 0x10(r1)
/* 802CC7BC 002C96FC C0 21 00 10 */ lfs f1, 0x10(r1)
/* 802CC7C0 002C9700 C0 02 C5 34 */ lfs f0, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CC7C4 002C9704 EC 41 00 28 */ fsubs f2, f1, f0
/* 802CC7C8 002C9708 C8 22 C5 48 */ lfd f1, lbl_80455F48-_SDA2_BASE_(r2)
/* 802CC7CC 002C970C 90 C1 00 24 */ stw r6, 0x24(r1)
/* 802CC7D0 002C9710 3C 00 43 30 */ lis r0, 0x4330
/* 802CC7D4 002C9714 90 01 00 20 */ stw r0, 0x20(r1)
/* 802CC7D8 002C9718 C8 01 00 20 */ lfd f0, 0x20(r1)
/* 802CC7DC 002C971C EC 00 08 28 */ fsubs f0, f0, f1
/* 802CC7E0 002C9720 EC 00 00 B2 */ fmuls f0, f0, f2
/* 802CC7E4 002C9724 FC 00 00 1E */ fctiwz f0, f0
/* 802CC7E8 002C9728 D8 01 00 28 */ stfd f0, 0x28(r1)
/* 802CC7EC 002C972C 80 01 00 2C */ lwz r0, 0x2c(r1)
/* 802CC7F0 002C9730 7C 00 07 74 */ extsb r0, r0
/* 802CC7F4 002C9734 48 00 00 9C */ b lbl_802CC890
lbl_802CC7F8:
/* 802CC7F8 002C9738 A0 03 03 FC */ lhz r0, 0x3fc(r3)
/* 802CC7FC 002C973C 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802CC800 002C9740 3C C0 80 3A */ lis r6, lbl_8039C98C@ha
/* 802CC804 002C9744 39 66 C9 8C */ addi r11, r6, lbl_8039C98C@l
/* 802CC808 002C9748 7C CB 02 14 */ add r6, r11, r0
/* 802CC80C 002C974C 88 C6 00 0A */ lbz r6, 0xa(r6)
/* 802CC810 002C9750 81 23 00 08 */ lwz r9, 8(r3)
/* 802CC814 002C9754 3D 00 00 19 */ lis r8, 0x0019660D@ha
/* 802CC818 002C9758 38 08 66 0D */ addi r0, r8, 0x0019660D@l
/* 802CC81C 002C975C 7D 09 01 D6 */ mullw r8, r9, r0
/* 802CC820 002C9760 3D 08 3C 6F */ addis r8, r8, 0x3c6f
/* 802CC824 002C9764 38 08 F3 5F */ addi r0, r8, -3233
/* 802CC828 002C9768 90 03 00 08 */ stw r0, 8(r3)
/* 802CC82C 002C976C 80 03 00 08 */ lwz r0, 8(r3)
/* 802CC830 002C9770 54 00 BA 7E */ srwi r0, r0, 9
/* 802CC834 002C9774 64 00 3F 80 */ oris r0, r0, 0x3f80
/* 802CC838 002C9778 90 01 00 0C */ stw r0, 0xc(r1)
/* 802CC83C 002C977C C0 21 00 0C */ lfs f1, 0xc(r1)
/* 802CC840 002C9780 C0 02 C5 34 */ lfs f0, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CC844 002C9784 EC 41 00 28 */ fsubs f2, f1, f0
/* 802CC848 002C9788 A0 03 03 FC */ lhz r0, 0x3fc(r3)
/* 802CC84C 002C978C 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802CC850 002C9790 7D 0B 02 14 */ add r8, r11, r0
/* 802CC854 002C9794 89 08 00 09 */ lbz r8, 9(r8)
/* 802CC858 002C9798 C8 22 C5 48 */ lfd f1, lbl_80455F48-_SDA2_BASE_(r2)
/* 802CC85C 002C979C 90 C1 00 2C */ stw r6, 0x2c(r1)
/* 802CC860 002C97A0 3C 00 43 30 */ lis r0, 0x4330
/* 802CC864 002C97A4 90 01 00 28 */ stw r0, 0x28(r1)
/* 802CC868 002C97A8 C8 01 00 28 */ lfd f0, 0x28(r1)
/* 802CC86C 002C97AC EC 00 08 28 */ fsubs f0, f0, f1
/* 802CC870 002C97B0 EC 00 00 B2 */ fmuls f0, f0, f2
/* 802CC874 002C97B4 FC 00 00 1E */ fctiwz f0, f0
/* 802CC878 002C97B8 D8 01 00 20 */ stfd f0, 0x20(r1)
/* 802CC87C 002C97BC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802CC880 002C97C0 7C 08 02 14 */ add r0, r8, r0
/* 802CC884 002C97C4 7C 00 07 74 */ extsb r0, r0
/* 802CC888 002C97C8 48 00 00 08 */ b lbl_802CC890
/* 802CC88C 002C97CC 48 00 01 3C */ b lbl_802CC9C8
lbl_802CC890:
/* 802CC890 002C97D0 39 00 00 00 */ li r8, 0
/* 802CC894 002C97D4 7C A9 07 75 */ extsb. r9, r5
/* 802CC898 002C97D8 7C 0B 07 74 */ extsb r11, r0
/* 802CC89C 002C97DC 7D 29 03 A6 */ mtctr r9
/* 802CC8A0 002C97E0 40 81 00 24 */ ble lbl_802CC8C4
lbl_802CC8A4:
/* 802CC8A4 002C97E4 7D 2A 40 AE */ lbzx r9, r10, r8
/* 802CC8A8 002C97E8 7D 29 07 74 */ extsb r9, r9
/* 802CC8AC 002C97EC 7C 0B 48 00 */ cmpw r11, r9
/* 802CC8B0 002C97F0 40 82 00 0C */ bne lbl_802CC8BC
/* 802CC8B4 002C97F4 38 E0 00 01 */ li r7, 1
/* 802CC8B8 002C97F8 48 00 00 0C */ b lbl_802CC8C4
lbl_802CC8BC:
/* 802CC8BC 002C97FC 39 08 00 02 */ addi r8, r8, 2
/* 802CC8C0 002C9800 42 00 FF E4 */ bdnz lbl_802CC8A4
lbl_802CC8C4:
/* 802CC8C4 002C9804 54 E7 06 3F */ clrlwi. r7, r7, 0x18
/* 802CC8C8 002C9808 40 82 FE 90 */ bne lbl_802CC758
/* 802CC8CC 002C980C A0 E3 03 FC */ lhz r7, 0x3fc(r3)
/* 802CC8D0 002C9810 1D 07 00 0C */ mulli r8, r7, 0xc
/* 802CC8D4 002C9814 3C E0 80 3A */ lis r7, lbl_8039C98C@ha
/* 802CC8D8 002C9818 38 E7 C9 8C */ addi r7, r7, lbl_8039C98C@l
/* 802CC8DC 002C981C 7D 07 42 14 */ add r8, r7, r8
/* 802CC8E0 002C9820 80 E8 00 00 */ lwz r7, 0(r8)
/* 802CC8E4 002C9824 38 E7 00 01 */ addi r7, r7, 1
/* 802CC8E8 002C9828 7D 24 38 AE */ lbzx r9, r4, r7
/* 802CC8EC 002C982C 81 08 00 04 */ lwz r8, 4(r8)
/* 802CC8F0 002C9830 7C 07 07 74 */ extsb r7, r0
/* 802CC8F4 002C9834 7C E8 38 AE */ lbzx r7, r8, r7
/* 802CC8F8 002C9838 7D 09 38 50 */ subf r8, r9, r7
/* 802CC8FC 002C983C 7D 07 FE 70 */ srawi r7, r8, 0x1f
/* 802CC900 002C9840 7C E8 42 78 */ xor r8, r7, r8
/* 802CC904 002C9844 7D 07 40 50 */ subf r8, r7, r8
/* 802CC908 002C9848 A0 E2 D1 AC */ lhz r7, lbl_80456BAC-_SDA2_BASE_(r2)
/* 802CC90C 002C984C B0 E1 00 08 */ sth r7, 8(r1)
/* 802CC910 002C9850 98 01 00 08 */ stb r0, 8(r1)
/* 802CC914 002C9854 99 01 00 09 */ stb r8, 9(r1)
/* 802CC918 002C9858 7C A7 07 74 */ extsb r7, r5
/* 802CC91C 002C985C 54 E7 08 3C */ slwi r7, r7, 1
/* 802CC920 002C9860 39 21 00 14 */ addi r9, r1, 0x14
/* 802CC924 002C9864 7D 29 3A 14 */ add r9, r9, r7
/* 802CC928 002C9868 98 09 00 00 */ stb r0, 0(r9)
/* 802CC92C 002C986C 99 09 00 01 */ stb r8, 1(r9)
/* 802CC930 002C9870 38 A5 00 01 */ addi r5, r5, 1
/* 802CC934 002C9874 7C A0 07 74 */ extsb r0, r5
/* 802CC938 002C9878 54 C7 06 3E */ clrlwi r7, r6, 0x18
/* 802CC93C 002C987C 7C 00 38 00 */ cmpw r0, r7
/* 802CC940 002C9880 41 82 00 0C */ beq lbl_802CC94C
/* 802CC944 002C9884 2C 00 00 05 */ cmpwi r0, 5
/* 802CC948 002C9888 40 82 FE 10 */ bne lbl_802CC758
lbl_802CC94C:
/* 802CC94C 002C988C 89 21 00 15 */ lbz r9, 0x15(r1)
/* 802CC950 002C9890 89 01 00 14 */ lbz r8, 0x14(r1)
/* 802CC954 002C9894 54 C0 06 3E */ clrlwi r0, r6, 0x18
/* 802CC958 002C9898 28 00 00 05 */ cmplwi r0, 5
/* 802CC95C 002C989C 38 00 00 05 */ li r0, 5
/* 802CC960 002C98A0 40 80 00 08 */ bge lbl_802CC968
/* 802CC964 002C98A4 7C E0 3B 78 */ mr r0, r7
lbl_802CC968:
/* 802CC968 002C98A8 38 80 00 00 */ li r4, 0
/* 802CC96C 002C98AC 7C 09 03 A6 */ mtctr r0
/* 802CC970 002C98B0 2C 00 00 00 */ cmpwi r0, 0
/* 802CC974 002C98B4 40 81 00 2C */ ble lbl_802CC9A0
lbl_802CC978:
/* 802CC978 002C98B8 38 C1 00 14 */ addi r6, r1, 0x14
/* 802CC97C 002C98BC 7C C6 22 14 */ add r6, r6, r4
/* 802CC980 002C98C0 88 A6 00 01 */ lbz r5, 1(r6)
/* 802CC984 002C98C4 55 20 04 3E */ clrlwi r0, r9, 0x10
/* 802CC988 002C98C8 7C 05 00 00 */ cmpw r5, r0
/* 802CC98C 002C98CC 40 80 00 0C */ bge lbl_802CC998
/* 802CC990 002C98D0 7C A9 2B 78 */ mr r9, r5
/* 802CC994 002C98D4 89 06 00 00 */ lbz r8, 0(r6)
lbl_802CC998:
/* 802CC998 002C98D8 38 84 00 02 */ addi r4, r4, 2
/* 802CC99C 002C98DC 42 00 FF DC */ bdnz lbl_802CC978
lbl_802CC9A0:
/* 802CC9A0 002C98E0 3C 80 80 3A */ lis r4, lbl_8039C98C@ha
/* 802CC9A4 002C98E4 38 84 C9 8C */ addi r4, r4, lbl_8039C98C@l
/* 802CC9A8 002C98E8 A0 03 03 FC */ lhz r0, 0x3fc(r3)
/* 802CC9AC 002C98EC 1C 00 00 0C */ mulli r0, r0, 0xc
/* 802CC9B0 002C98F0 7C 84 02 14 */ add r4, r4, r0
/* 802CC9B4 002C98F4 88 04 00 08 */ lbz r0, 8(r4)
/* 802CC9B8 002C98F8 7C 88 02 14 */ add r4, r8, r0
/* 802CC9BC 002C98FC 88 03 04 01 */ lbz r0, 0x401(r3)
/* 802CC9C0 002C9900 7C 63 02 14 */ add r3, r3, r0
/* 802CC9C4 002C9904 98 83 04 01 */ stb r4, 0x401(r3)
lbl_802CC9C8:
/* 802CC9C8 002C9908 38 21 00 30 */ addi r1, r1, 0x30
/* 802CC9CC 002C990C 4E 80 00 20 */ blr
.global Z2SpeechMgr2_NS_framework
Z2SpeechMgr2_NS_framework:
/* 802CC9D0 002C9910 88 03 03 FE */ lbz r0, 0x3fe(r3)
/* 802CC9D4 002C9914 2C 00 00 03 */ cmpwi r0, 3
/* 802CC9D8 002C9918 4C 80 00 20 */ bgelr
/* 802CC9DC 002C991C 2C 00 00 01 */ cmpwi r0, 1
/* 802CC9E0 002C9920 4D 80 00 20 */ bltlr
/* 802CC9E4 002C9924 80 03 00 00 */ lwz r0, 0(r3)
/* 802CC9E8 002C9928 28 00 00 00 */ cmplwi r0, 0
/* 802CC9EC 002C992C 41 82 00 20 */ beq lbl_802CCA0C
/* 802CC9F0 002C9930 88 83 03 FF */ lbz r4, 0x3ff(r3)
/* 802CC9F4 002C9934 38 04 00 01 */ addi r0, r4, 1
/* 802CC9F8 002C9938 98 03 03 FF */ stb r0, 0x3ff(r3)
/* 802CC9FC 002C993C 88 03 03 FF */ lbz r0, 0x3ff(r3)
/* 802CCA00 002C9940 28 00 00 1E */ cmplwi r0, 0x1e
/* 802CCA04 002C9944 4C 81 00 20 */ blelr
/* 802CCA08 002C9948 4E 80 00 20 */ blr
lbl_802CCA0C:
/* 802CCA0C 002C994C 38 00 00 00 */ li r0, 0
/* 802CCA10 002C9950 B0 03 03 FA */ sth r0, 0x3fa(r3)
/* 802CCA14 002C9954 4E 80 00 20 */ blr
.global Z2SpeechMgr2_NS_playOneShotVoice
Z2SpeechMgr2_NS_playOneShotVoice:
/* 802CCA18 002C9958 94 21 FF 50 */ stwu r1, -0xb0(r1)
/* 802CCA1C 002C995C 7C 08 02 A6 */ mflr r0
/* 802CCA20 002C9960 90 01 00 B4 */ stw r0, 0xb4(r1)
/* 802CCA24 002C9964 DB E1 00 A0 */ stfd f31, 0xa0(r1)
/* 802CCA28 002C9968 F3 E1 00 A8 */ psq_st f31, 168(r1), 0, qr0
/* 802CCA2C 002C996C 39 61 00 A0 */ addi r11, r1, 0xa0
/* 802CCA30 002C9970 48 09 57 A9 */ bl _savegpr_28
/* 802CCA34 002C9974 7C 7C 1B 78 */ mr r28, r3
/* 802CCA38 002C9978 7C 9D 23 78 */ mr r29, r4
/* 802CCA3C 002C997C 7C BE 2B 78 */ mr r30, r5
/* 802CCA40 002C9980 7C DF 33 78 */ mr r31, r6
/* 802CCA44 002C9984 54 80 06 3F */ clrlwi. r0, r4, 0x18
/* 802CCA48 002C9988 41 82 05 20 */ beq lbl_802CCF68
/* 802CCA4C 002C998C 80 6D 86 00 */ lwz r3, lbl_80450B80-_SDA_BASE_(r13)
/* 802CCA50 002C9990 88 63 00 0C */ lbz r3, 0xc(r3)
/* 802CCA54 002C9994 7C 63 07 74 */ extsb r3, r3
/* 802CCA58 002C9998 4B D6 06 15 */ bl dComIfGp_getReverb
/* 802CCA5C 002C999C 7C 60 07 74 */ extsb r0, r3
/* 802CCA60 002C99A0 C8 22 C5 40 */ lfd f1, lbl_80455F40-_SDA2_BASE_(r2)
/* 802CCA64 002C99A4 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 802CCA68 002C99A8 90 01 00 8C */ stw r0, 0x8c(r1)
/* 802CCA6C 002C99AC 3C 00 43 30 */ lis r0, 0x4330
/* 802CCA70 002C99B0 90 01 00 88 */ stw r0, 0x88(r1)
/* 802CCA74 002C99B4 C8 01 00 88 */ lfd f0, 0x88(r1)
/* 802CCA78 002C99B8 EC 20 08 28 */ fsubs f1, f0, f1
/* 802CCA7C 002C99BC C0 02 C5 3C */ lfs f0, lbl_80455F3C-_SDA2_BASE_(r2)
/* 802CCA80 002C99C0 EF E1 00 24 */ fdivs f31, f1, f0
/* 802CCA84 002C99C4 88 1C 03 FE */ lbz r0, 0x3fe(r28)
/* 802CCA88 002C99C8 28 00 00 01 */ cmplwi r0, 1
/* 802CCA8C 002C99CC 41 82 00 0C */ beq lbl_802CCA98
/* 802CCA90 002C99D0 28 00 00 02 */ cmplwi r0, 2
/* 802CCA94 002C99D4 40 82 01 6C */ bne lbl_802CCC00
lbl_802CCA98:
/* 802CCA98 002C99D8 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCA9C 002C99DC 2C 00 00 64 */ cmpwi r0, 0x64
/* 802CCAA0 002C99E0 41 82 00 A4 */ beq lbl_802CCB44
/* 802CCAA4 002C99E4 40 80 00 2C */ bge lbl_802CCAD0
/* 802CCAA8 002C99E8 2C 00 00 1E */ cmpwi r0, 0x1e
/* 802CCAAC 002C99EC 41 82 00 5C */ beq lbl_802CCB08
/* 802CCAB0 002C99F0 40 80 00 10 */ bge lbl_802CCAC0
/* 802CCAB4 002C99F4 2C 00 00 19 */ cmpwi r0, 0x19
/* 802CCAB8 002C99F8 41 82 00 3C */ beq lbl_802CCAF4
/* 802CCABC 002C99FC 48 00 04 AC */ b lbl_802CCF68
lbl_802CCAC0:
/* 802CCAC0 002C9A00 2C 00 00 20 */ cmpwi r0, 0x20
/* 802CCAC4 002C9A04 41 82 00 6C */ beq lbl_802CCB30
/* 802CCAC8 002C9A08 40 80 04 A0 */ bge lbl_802CCF68
/* 802CCACC 002C9A0C 48 00 00 50 */ b lbl_802CCB1C
lbl_802CCAD0:
/* 802CCAD0 002C9A10 2C 00 00 67 */ cmpwi r0, 0x67
/* 802CCAD4 002C9A14 41 82 00 AC */ beq lbl_802CCB80
/* 802CCAD8 002C9A18 40 80 00 10 */ bge lbl_802CCAE8
/* 802CCADC 002C9A1C 2C 00 00 66 */ cmpwi r0, 0x66
/* 802CCAE0 002C9A20 40 80 00 8C */ bge lbl_802CCB6C
/* 802CCAE4 002C9A24 48 00 00 74 */ b lbl_802CCB58
lbl_802CCAE8:
/* 802CCAE8 002C9A28 2C 00 00 69 */ cmpwi r0, 0x69
/* 802CCAEC 002C9A2C 40 80 04 7C */ bge lbl_802CCF68
/* 802CCAF0 002C9A30 48 00 00 A4 */ b lbl_802CCB94
lbl_802CCAF4:
/* 802CCAF4 002C9A34 3C 60 00 05 */ lis r3, 0x00050075@ha
/* 802CCAF8 002C9A38 38 03 00 75 */ addi r0, r3, 0x00050075@l
/* 802CCAFC 002C9A3C 90 01 00 7C */ stw r0, 0x7c(r1)
/* 802CCB00 002C9A40 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CCB04 002C9A44 48 00 00 A8 */ b lbl_802CCBAC
lbl_802CCB08:
/* 802CCB08 002C9A48 3C 60 00 05 */ lis r3, 0x000500B5@ha
/* 802CCB0C 002C9A4C 38 03 00 B5 */ addi r0, r3, 0x000500B5@l
/* 802CCB10 002C9A50 90 01 00 78 */ stw r0, 0x78(r1)
/* 802CCB14 002C9A54 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CCB18 002C9A58 48 00 00 94 */ b lbl_802CCBAC
lbl_802CCB1C:
/* 802CCB1C 002C9A5C 3C 60 00 05 */ lis r3, 0x000500B6@ha
/* 802CCB20 002C9A60 38 03 00 B6 */ addi r0, r3, 0x000500B6@l
/* 802CCB24 002C9A64 90 01 00 74 */ stw r0, 0x74(r1)
/* 802CCB28 002C9A68 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CCB2C 002C9A6C 48 00 00 80 */ b lbl_802CCBAC
lbl_802CCB30:
/* 802CCB30 002C9A70 3C 60 00 05 */ lis r3, 0x000500B7@ha
/* 802CCB34 002C9A74 38 03 00 B7 */ addi r0, r3, 0x000500B7@l
/* 802CCB38 002C9A78 90 01 00 70 */ stw r0, 0x70(r1)
/* 802CCB3C 002C9A7C 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CCB40 002C9A80 48 00 00 6C */ b lbl_802CCBAC
lbl_802CCB44:
/* 802CCB44 002C9A84 3C 60 00 05 */ lis r3, 0x000501C8@ha
/* 802CCB48 002C9A88 38 03 01 C8 */ addi r0, r3, 0x000501C8@l
/* 802CCB4C 002C9A8C 90 01 00 6C */ stw r0, 0x6c(r1)
/* 802CCB50 002C9A90 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CCB54 002C9A94 48 00 00 58 */ b lbl_802CCBAC
lbl_802CCB58:
/* 802CCB58 002C9A98 3C 60 00 05 */ lis r3, 0x000501C9@ha
/* 802CCB5C 002C9A9C 38 03 01 C9 */ addi r0, r3, 0x000501C9@l
/* 802CCB60 002C9AA0 90 01 00 68 */ stw r0, 0x68(r1)
/* 802CCB64 002C9AA4 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CCB68 002C9AA8 48 00 00 44 */ b lbl_802CCBAC
lbl_802CCB6C:
/* 802CCB6C 002C9AAC 3C 60 00 05 */ lis r3, 0x000500B8@ha
/* 802CCB70 002C9AB0 38 03 00 B8 */ addi r0, r3, 0x000500B8@l
/* 802CCB74 002C9AB4 90 01 00 64 */ stw r0, 0x64(r1)
/* 802CCB78 002C9AB8 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CCB7C 002C9ABC 48 00 00 30 */ b lbl_802CCBAC
lbl_802CCB80:
/* 802CCB80 002C9AC0 3C 60 00 05 */ lis r3, 0x000500B9@ha
/* 802CCB84 002C9AC4 38 03 00 B9 */ addi r0, r3, 0x000500B9@l
/* 802CCB88 002C9AC8 90 01 00 60 */ stw r0, 0x60(r1)
/* 802CCB8C 002C9ACC 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CCB90 002C9AD0 48 00 00 1C */ b lbl_802CCBAC
lbl_802CCB94:
/* 802CCB94 002C9AD4 3C 60 00 05 */ lis r3, 0x000500BA@ha
/* 802CCB98 002C9AD8 38 03 00 BA */ addi r0, r3, 0x000500BA@l
/* 802CCB9C 002C9ADC 90 01 00 5C */ stw r0, 0x5c(r1)
/* 802CCBA0 002C9AE0 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CCBA4 002C9AE4 48 00 00 08 */ b lbl_802CCBAC
/* 802CCBA8 002C9AE8 48 00 03 C0 */ b lbl_802CCF68
lbl_802CCBAC:
/* 802CCBAC 002C9AEC 80 61 00 84 */ lwz r3, 0x84(r1)
/* 802CCBB0 002C9AF0 3C 03 00 01 */ addis r0, r3, 1
/* 802CCBB4 002C9AF4 28 00 FF FF */ cmplwi r0, 0xffff
/* 802CCBB8 002C9AF8 41 82 03 B0 */ beq lbl_802CCF68
/* 802CCBBC 002C9AFC 90 61 00 58 */ stw r3, 0x58(r1)
/* 802CCBC0 002C9B00 38 7C 00 0C */ addi r3, r28, 0xc
/* 802CCBC4 002C9B04 38 81 00 58 */ addi r4, r1, 0x58
/* 802CCBC8 002C9B08 7F 85 E3 78 */ mr r5, r28
/* 802CCBCC 002C9B0C 7F E6 FB 78 */ mr r6, r31
/* 802CCBD0 002C9B10 57 A7 06 3E */ clrlwi r7, r29, 0x18
/* 802CCBD4 002C9B14 FC 20 F8 90 */ fmr f1, f31
/* 802CCBD8 002C9B18 C0 42 C5 34 */ lfs f2, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CCBDC 002C9B1C FC 60 10 90 */ fmr f3, f2
/* 802CCBE0 002C9B20 C0 82 C5 38 */ lfs f4, lbl_80455F38-_SDA2_BASE_(r2)
/* 802CCBE4 002C9B24 FC A0 20 90 */ fmr f5, f4
/* 802CCBE8 002C9B28 39 00 00 00 */ li r8, 0
/* 802CCBEC 002C9B2C 81 9C 00 0C */ lwz r12, 0xc(r28)
/* 802CCBF0 002C9B30 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 802CCBF4 002C9B34 7D 89 03 A6 */ mtctr r12
/* 802CCBF8 002C9B38 4E 80 04 21 */ bctrl
/* 802CCBFC 002C9B3C 48 00 03 6C */ b lbl_802CCF68
lbl_802CCC00:
/* 802CCC00 002C9B40 3C 60 00 05 */ lis r3, 0x000500CD@ha
/* 802CCC04 002C9B44 38 03 00 CD */ addi r0, r3, 0x000500CD@l
/* 802CCC08 002C9B48 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCC0C 002C9B4C 57 A0 06 3E */ clrlwi r0, r29, 0x18
/* 802CCC10 002C9B50 2C 00 00 2F */ cmpwi r0, 0x2f
/* 802CCC14 002C9B54 41 82 01 78 */ beq lbl_802CCD8C
/* 802CCC18 002C9B58 40 80 00 58 */ bge lbl_802CCC70
/* 802CCC1C 002C9B5C 2C 00 00 20 */ cmpwi r0, 0x20
/* 802CCC20 002C9B60 41 82 01 18 */ beq lbl_802CCD38
/* 802CCC24 002C9B64 40 80 00 28 */ bge lbl_802CCC4C
/* 802CCC28 002C9B68 2C 00 00 1D */ cmpwi r0, 0x1d
/* 802CCC2C 002C9B6C 41 82 00 D8 */ beq lbl_802CCD04
/* 802CCC30 002C9B70 40 80 00 10 */ bge lbl_802CCC40
/* 802CCC34 002C9B74 2C 00 00 03 */ cmpwi r0, 3
/* 802CCC38 002C9B78 41 82 00 90 */ beq lbl_802CCCC8
/* 802CCC3C 002C9B7C 48 00 02 B0 */ b lbl_802CCEEC
lbl_802CCC40:
/* 802CCC40 002C9B80 2C 00 00 1F */ cmpwi r0, 0x1f
/* 802CCC44 002C9B84 40 80 02 A8 */ bge lbl_802CCEEC
/* 802CCC48 002C9B88 48 00 00 A0 */ b lbl_802CCCE8
lbl_802CCC4C:
/* 802CCC4C 002C9B8C 2C 00 00 25 */ cmpwi r0, 0x25
/* 802CCC50 002C9B90 41 82 01 20 */ beq lbl_802CCD70
/* 802CCC54 002C9B94 40 80 00 10 */ bge lbl_802CCC64
/* 802CCC58 002C9B98 2C 00 00 23 */ cmpwi r0, 0x23
/* 802CCC5C 002C9B9C 41 82 00 F8 */ beq lbl_802CCD54
/* 802CCC60 002C9BA0 48 00 02 8C */ b lbl_802CCEEC
lbl_802CCC64:
/* 802CCC64 002C9BA4 2C 00 00 27 */ cmpwi r0, 0x27
/* 802CCC68 002C9BA8 40 80 02 84 */ bge lbl_802CCEEC
/* 802CCC6C 002C9BAC 48 00 02 68 */ b lbl_802CCED4
lbl_802CCC70:
/* 802CCC70 002C9BB0 2C 00 00 4A */ cmpwi r0, 0x4a
/* 802CCC74 002C9BB4 41 82 01 F0 */ beq lbl_802CCE64
/* 802CCC78 002C9BB8 40 80 00 2C */ bge lbl_802CCCA4
/* 802CCC7C 002C9BBC 2C 00 00 47 */ cmpwi r0, 0x47
/* 802CCC80 002C9BC0 41 82 01 90 */ beq lbl_802CCE10
/* 802CCC84 002C9BC4 40 80 00 14 */ bge lbl_802CCC98
/* 802CCC88 002C9BC8 2C 00 00 45 */ cmpwi r0, 0x45
/* 802CCC8C 002C9BCC 41 82 01 34 */ beq lbl_802CCDC0
/* 802CCC90 002C9BD0 40 80 01 64 */ bge lbl_802CCDF4
/* 802CCC94 002C9BD4 48 00 02 58 */ b lbl_802CCEEC
lbl_802CCC98:
/* 802CCC98 002C9BD8 2C 00 00 49 */ cmpwi r0, 0x49
/* 802CCC9C 002C9BDC 40 80 01 AC */ bge lbl_802CCE48
/* 802CCCA0 002C9BE0 48 00 01 8C */ b lbl_802CCE2C
lbl_802CCCA4:
/* 802CCCA4 002C9BE4 2C 00 00 70 */ cmpwi r0, 0x70
/* 802CCCA8 002C9BE8 41 82 02 10 */ beq lbl_802CCEB8
/* 802CCCAC 002C9BEC 40 80 00 10 */ bge lbl_802CCCBC
/* 802CCCB0 002C9BF0 2C 00 00 6B */ cmpwi r0, 0x6b
/* 802CCCB4 002C9BF4 41 82 01 CC */ beq lbl_802CCE80
/* 802CCCB8 002C9BF8 48 00 02 34 */ b lbl_802CCEEC
lbl_802CCCBC:
/* 802CCCBC 002C9BFC 2C 00 00 72 */ cmpwi r0, 0x72
/* 802CCCC0 002C9C00 40 80 02 2C */ bge lbl_802CCEEC
/* 802CCCC4 002C9C04 48 00 01 D8 */ b lbl_802CCE9C
lbl_802CCCC8:
/* 802CCCC8 002C9C08 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCCCC 002C9C0C 28 00 00 01 */ cmplwi r0, 1
/* 802CCCD0 002C9C10 40 82 02 1C */ bne lbl_802CCEEC
/* 802CCCD4 002C9C14 80 6D 86 04 */ lwz r3, lbl_80450B84-_SDA_BASE_(r13)
/* 802CCCD8 002C9C18 3C 80 01 00 */ lis r4, 0x0100000B@ha
/* 802CCCDC 002C9C1C 38 84 00 0B */ addi r4, r4, 0x0100000B@l
/* 802CCCE0 002C9C20 4B FE 27 BD */ bl subBgmStart__8Z2SeqMgrFUl
/* 802CCCE4 002C9C24 48 00 02 84 */ b lbl_802CCF68
lbl_802CCCE8:
/* 802CCCE8 002C9C28 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCCEC 002C9C2C 28 00 00 0F */ cmplwi r0, 0xf
/* 802CCCF0 002C9C30 40 82 01 FC */ bne lbl_802CCEEC
/* 802CCCF4 002C9C34 38 03 00 47 */ addi r0, r3, 0x47
/* 802CCCF8 002C9C38 90 01 00 54 */ stw r0, 0x54(r1)
/* 802CCCFC 002C9C3C 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCD00 002C9C40 48 00 01 EC */ b lbl_802CCEEC
lbl_802CCD04:
/* 802CCD04 002C9C44 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCD08 002C9C48 28 00 00 04 */ cmplwi r0, 4
/* 802CCD0C 002C9C4C 40 82 00 14 */ bne lbl_802CCD20
/* 802CCD10 002C9C50 38 03 00 E2 */ addi r0, r3, 0xe2
/* 802CCD14 002C9C54 90 01 00 50 */ stw r0, 0x50(r1)
/* 802CCD18 002C9C58 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCD1C 002C9C5C 48 00 01 D0 */ b lbl_802CCEEC
lbl_802CCD20:
/* 802CCD20 002C9C60 28 00 00 05 */ cmplwi r0, 5
/* 802CCD24 002C9C64 40 82 01 C8 */ bne lbl_802CCEEC
/* 802CCD28 002C9C68 38 03 00 E3 */ addi r0, r3, 0xe3
/* 802CCD2C 002C9C6C 90 01 00 4C */ stw r0, 0x4c(r1)
/* 802CCD30 002C9C70 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCD34 002C9C74 48 00 01 B8 */ b lbl_802CCEEC
lbl_802CCD38:
/* 802CCD38 002C9C78 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCD3C 002C9C7C 28 00 00 06 */ cmplwi r0, 6
/* 802CCD40 002C9C80 40 82 01 AC */ bne lbl_802CCEEC
/* 802CCD44 002C9C84 38 03 00 DA */ addi r0, r3, 0xda
/* 802CCD48 002C9C88 90 01 00 48 */ stw r0, 0x48(r1)
/* 802CCD4C 002C9C8C 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCD50 002C9C90 48 00 01 9C */ b lbl_802CCEEC
lbl_802CCD54:
/* 802CCD54 002C9C94 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCD58 002C9C98 28 00 00 0A */ cmplwi r0, 0xa
/* 802CCD5C 002C9C9C 40 82 01 90 */ bne lbl_802CCEEC
/* 802CCD60 002C9CA0 38 03 00 E4 */ addi r0, r3, 0xe4
/* 802CCD64 002C9CA4 90 01 00 44 */ stw r0, 0x44(r1)
/* 802CCD68 002C9CA8 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCD6C 002C9CAC 48 00 01 80 */ b lbl_802CCEEC
lbl_802CCD70:
/* 802CCD70 002C9CB0 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCD74 002C9CB4 28 00 00 0A */ cmplwi r0, 0xa
/* 802CCD78 002C9CB8 40 82 01 74 */ bne lbl_802CCEEC
/* 802CCD7C 002C9CBC 38 03 00 D9 */ addi r0, r3, 0xd9
/* 802CCD80 002C9CC0 90 01 00 40 */ stw r0, 0x40(r1)
/* 802CCD84 002C9CC4 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCD88 002C9CC8 48 00 01 64 */ b lbl_802CCEEC
lbl_802CCD8C:
/* 802CCD8C 002C9CCC 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCD90 002C9CD0 28 00 00 0F */ cmplwi r0, 0xf
/* 802CCD94 002C9CD4 40 82 00 14 */ bne lbl_802CCDA8
/* 802CCD98 002C9CD8 38 03 00 EE */ addi r0, r3, 0xee
/* 802CCD9C 002C9CDC 90 01 00 3C */ stw r0, 0x3c(r1)
/* 802CCDA0 002C9CE0 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCDA4 002C9CE4 48 00 01 48 */ b lbl_802CCEEC
lbl_802CCDA8:
/* 802CCDA8 002C9CE8 28 00 00 11 */ cmplwi r0, 0x11
/* 802CCDAC 002C9CEC 40 82 01 40 */ bne lbl_802CCEEC
/* 802CCDB0 002C9CF0 38 03 00 EF */ addi r0, r3, 0xef
/* 802CCDB4 002C9CF4 90 01 00 38 */ stw r0, 0x38(r1)
/* 802CCDB8 002C9CF8 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCDBC 002C9CFC 48 00 01 30 */ b lbl_802CCEEC
lbl_802CCDC0:
/* 802CCDC0 002C9D00 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCDC4 002C9D04 28 00 00 01 */ cmplwi r0, 1
/* 802CCDC8 002C9D08 40 82 00 14 */ bne lbl_802CCDDC
/* 802CCDCC 002C9D0C 38 03 01 CC */ addi r0, r3, 0x1cc
/* 802CCDD0 002C9D10 90 01 00 34 */ stw r0, 0x34(r1)
/* 802CCDD4 002C9D14 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCDD8 002C9D18 48 00 01 14 */ b lbl_802CCEEC
lbl_802CCDDC:
/* 802CCDDC 002C9D1C 28 00 00 02 */ cmplwi r0, 2
/* 802CCDE0 002C9D20 40 82 01 0C */ bne lbl_802CCEEC
/* 802CCDE4 002C9D24 38 03 01 CD */ addi r0, r3, 0x1cd
/* 802CCDE8 002C9D28 90 01 00 30 */ stw r0, 0x30(r1)
/* 802CCDEC 002C9D2C 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCDF0 002C9D30 48 00 00 FC */ b lbl_802CCEEC
lbl_802CCDF4:
/* 802CCDF4 002C9D34 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCDF8 002C9D38 28 00 00 01 */ cmplwi r0, 1
/* 802CCDFC 002C9D3C 40 82 00 F0 */ bne lbl_802CCEEC
/* 802CCE00 002C9D40 38 03 01 CF */ addi r0, r3, 0x1cf
/* 802CCE04 002C9D44 90 01 00 2C */ stw r0, 0x2c(r1)
/* 802CCE08 002C9D48 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCE0C 002C9D4C 48 00 00 E0 */ b lbl_802CCEEC
lbl_802CCE10:
/* 802CCE10 002C9D50 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCE14 002C9D54 28 00 00 01 */ cmplwi r0, 1
/* 802CCE18 002C9D58 40 82 00 D4 */ bne lbl_802CCEEC
/* 802CCE1C 002C9D5C 38 03 01 CA */ addi r0, r3, 0x1ca
/* 802CCE20 002C9D60 90 01 00 28 */ stw r0, 0x28(r1)
/* 802CCE24 002C9D64 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCE28 002C9D68 48 00 00 C4 */ b lbl_802CCEEC
lbl_802CCE2C:
/* 802CCE2C 002C9D6C 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCE30 002C9D70 28 00 00 01 */ cmplwi r0, 1
/* 802CCE34 002C9D74 40 82 00 B8 */ bne lbl_802CCEEC
/* 802CCE38 002C9D78 38 03 01 CB */ addi r0, r3, 0x1cb
/* 802CCE3C 002C9D7C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802CCE40 002C9D80 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCE44 002C9D84 48 00 00 A8 */ b lbl_802CCEEC
lbl_802CCE48:
/* 802CCE48 002C9D88 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCE4C 002C9D8C 28 00 00 01 */ cmplwi r0, 1
/* 802CCE50 002C9D90 40 82 00 9C */ bne lbl_802CCEEC
/* 802CCE54 002C9D94 38 03 01 D0 */ addi r0, r3, 0x1d0
/* 802CCE58 002C9D98 90 01 00 20 */ stw r0, 0x20(r1)
/* 802CCE5C 002C9D9C 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCE60 002C9DA0 48 00 00 8C */ b lbl_802CCEEC
lbl_802CCE64:
/* 802CCE64 002C9DA4 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCE68 002C9DA8 28 00 00 01 */ cmplwi r0, 1
/* 802CCE6C 002C9DAC 40 82 00 80 */ bne lbl_802CCEEC
/* 802CCE70 002C9DB0 38 03 01 CE */ addi r0, r3, 0x1ce
/* 802CCE74 002C9DB4 90 01 00 1C */ stw r0, 0x1c(r1)
/* 802CCE78 002C9DB8 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCE7C 002C9DBC 48 00 00 70 */ b lbl_802CCEEC
lbl_802CCE80:
/* 802CCE80 002C9DC0 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCE84 002C9DC4 28 00 00 01 */ cmplwi r0, 1
/* 802CCE88 002C9DC8 40 82 00 64 */ bne lbl_802CCEEC
/* 802CCE8C 002C9DCC 38 03 01 D1 */ addi r0, r3, 0x1d1
/* 802CCE90 002C9DD0 90 01 00 18 */ stw r0, 0x18(r1)
/* 802CCE94 002C9DD4 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCE98 002C9DD8 48 00 00 54 */ b lbl_802CCEEC
lbl_802CCE9C:
/* 802CCE9C 002C9DDC 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCEA0 002C9DE0 28 00 00 01 */ cmplwi r0, 1
/* 802CCEA4 002C9DE4 40 82 00 48 */ bne lbl_802CCEEC
/* 802CCEA8 002C9DE8 38 03 00 9F */ addi r0, r3, 0x9f
/* 802CCEAC 002C9DEC 90 01 00 14 */ stw r0, 0x14(r1)
/* 802CCEB0 002C9DF0 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCEB4 002C9DF4 48 00 00 38 */ b lbl_802CCEEC
lbl_802CCEB8:
/* 802CCEB8 002C9DF8 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCEBC 002C9DFC 28 00 00 01 */ cmplwi r0, 1
/* 802CCEC0 002C9E00 40 82 00 2C */ bne lbl_802CCEEC
/* 802CCEC4 002C9E04 38 03 00 42 */ addi r0, r3, 0x42
/* 802CCEC8 002C9E08 90 01 00 10 */ stw r0, 0x10(r1)
/* 802CCECC 002C9E0C 90 01 00 80 */ stw r0, 0x80(r1)
/* 802CCED0 002C9E10 48 00 00 1C */ b lbl_802CCEEC
lbl_802CCED4:
/* 802CCED4 002C9E14 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 802CCED8 002C9E18 28 00 00 04 */ cmplwi r0, 4
/* 802CCEDC 002C9E1C 40 82 00 10 */ bne lbl_802CCEEC
/* 802CCEE0 002C9E20 38 03 02 A0 */ addi r0, r3, 0x2a0
/* 802CCEE4 002C9E24 90 01 00 0C */ stw r0, 0xc(r1)
/* 802CCEE8 002C9E28 90 01 00 80 */ stw r0, 0x80(r1)
lbl_802CCEEC:
/* 802CCEEC 002C9E2C 80 1C 00 00 */ lwz r0, 0(r28)
/* 802CCEF0 002C9E30 28 00 00 00 */ cmplwi r0, 0
/* 802CCEF4 002C9E34 41 82 00 0C */ beq lbl_802CCF00
/* 802CCEF8 002C9E38 7F 83 E3 78 */ mr r3, r28
/* 802CCEFC 002C9E3C 4B FD 52 89 */ bl JAISoundHandle_NS_releaseSound
lbl_802CCF00:
/* 802CCF00 002C9E40 80 01 00 80 */ lwz r0, 0x80(r1)
/* 802CCF04 002C9E44 90 01 00 08 */ stw r0, 8(r1)
/* 802CCF08 002C9E48 38 7C 00 0C */ addi r3, r28, 0xc
/* 802CCF0C 002C9E4C 38 81 00 08 */ addi r4, r1, 8
/* 802CCF10 002C9E50 7F 85 E3 78 */ mr r5, r28
/* 802CCF14 002C9E54 7F E6 FB 78 */ mr r6, r31
/* 802CCF18 002C9E58 57 A7 06 3E */ clrlwi r7, r29, 0x18
/* 802CCF1C 002C9E5C FC 20 F8 90 */ fmr f1, f31
/* 802CCF20 002C9E60 C0 42 C5 34 */ lfs f2, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CCF24 002C9E64 FC 60 10 90 */ fmr f3, f2
/* 802CCF28 002C9E68 C0 82 C5 38 */ lfs f4, lbl_80455F38-_SDA2_BASE_(r2)
/* 802CCF2C 002C9E6C FC A0 20 90 */ fmr f5, f4
/* 802CCF30 002C9E70 39 00 00 00 */ li r8, 0
/* 802CCF34 002C9E74 81 9C 00 0C */ lwz r12, 0xc(r28)
/* 802CCF38 002C9E78 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 802CCF3C 002C9E7C 7D 89 03 A6 */ mtctr r12
/* 802CCF40 002C9E80 4E 80 04 21 */ bctrl
/* 802CCF44 002C9E84 80 1C 00 00 */ lwz r0, 0(r28)
/* 802CCF48 002C9E88 28 00 00 00 */ cmplwi r0, 0
/* 802CCF4C 002C9E8C 41 82 00 1C */ beq lbl_802CCF68
/* 802CCF50 002C9E90 38 7C 00 0C */ addi r3, r28, 0xc
/* 802CCF54 002C9E94 7F 84 E3 78 */ mr r4, r28
/* 802CCF58 002C9E98 38 A0 00 08 */ li r5, 8
/* 802CCF5C 002C9E9C 7F C6 F3 78 */ mr r6, r30
/* 802CCF60 002C9EA0 38 E0 FF FF */ li r7, -1
/* 802CCF64 002C9EA4 4B FD DF 79 */ bl Z2SoundStarter_NS_setPortData
lbl_802CCF68:
/* 802CCF68 002C9EA8 E3 E1 00 A8 */ psq_l f31, 168(r1), 0, qr0
/* 802CCF6C 002C9EAC CB E1 00 A0 */ lfd f31, 0xa0(r1)
/* 802CCF70 002C9EB0 39 61 00 A0 */ addi r11, r1, 0xa0
/* 802CCF74 002C9EB4 48 09 52 B1 */ bl _restgpr_28
/* 802CCF78 002C9EB8 80 01 00 B4 */ lwz r0, 0xb4(r1)
/* 802CCF7C 002C9EBC 7C 08 03 A6 */ mtlr r0
/* 802CCF80 002C9EC0 38 21 00 B0 */ addi r1, r1, 0xb0
/* 802CCF84 002C9EC4 4E 80 00 20 */ blr
.global Z2SpeechMgr2_NS_isMidnaSpeak
Z2SpeechMgr2_NS_isMidnaSpeak:
/* 802CCF88 002C9EC8 88 03 03 FE */ lbz r0, 0x3fe(r3)
/* 802CCF8C 002C9ECC 28 00 00 01 */ cmplwi r0, 1
/* 802CCF90 002C9ED0 41 82 00 0C */ beq lbl_802CCF9C
/* 802CCF94 002C9ED4 28 00 00 02 */ cmplwi r0, 2
/* 802CCF98 002C9ED8 40 82 00 18 */ bne lbl_802CCFB0
lbl_802CCF9C:
/* 802CCF9C 002C9EDC 80 03 00 00 */ lwz r0, 0(r3)
/* 802CCFA0 002C9EE0 28 00 00 00 */ cmplwi r0, 0
/* 802CCFA4 002C9EE4 41 82 00 0C */ beq lbl_802CCFB0
/* 802CCFA8 002C9EE8 38 60 00 01 */ li r3, 1
/* 802CCFAC 002C9EEC 4E 80 00 20 */ blr
lbl_802CCFB0:
/* 802CCFB0 002C9EF0 38 60 00 00 */ li r3, 0
/* 802CCFB4 002C9EF4 4E 80 00 20 */ blr
.global Z2SpeechStarter
Z2SpeechStarter:
/* 802CCFB8 002C9EF8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802CCFBC 002C9EFC 7C 08 02 A6 */ mflr r0
/* 802CCFC0 002C9F00 90 01 00 14 */ stw r0, 0x14(r1)
/* 802CCFC4 002C9F04 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802CCFC8 002C9F08 7C 7F 1B 78 */ mr r31, r3
/* 802CCFCC 002C9F0C 38 80 00 00 */ li r4, 0
/* 802CCFD0 002C9F10 4B FD DB C5 */ bl Z2SoundStarter
/* 802CCFD4 002C9F14 3C 60 80 3D */ lis r3, lbl_803CBF24@ha
/* 802CCFD8 002C9F18 38 03 BF 24 */ addi r0, r3, lbl_803CBF24@l
/* 802CCFDC 002C9F1C 90 1F 00 00 */ stw r0, 0(r31)
/* 802CCFE0 002C9F20 7F E3 FB 78 */ mr r3, r31
/* 802CCFE4 002C9F24 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802CCFE8 002C9F28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802CCFEC 002C9F2C 7C 08 03 A6 */ mtlr r0
/* 802CCFF0 002C9F30 38 21 00 10 */ addi r1, r1, 0x10
/* 802CCFF4 002C9F34 4E 80 00 20 */ blr
/* 802CCFF8 002C9F38 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 802CCFFC 002C9F3C 7C 08 02 A6 */ mflr r0
/* 802CD000 002C9F40 90 01 00 84 */ stw r0, 0x84(r1)
/* 802CD004 002C9F44 DB E1 00 70 */ stfd f31, 0x70(r1)
/* 802CD008 002C9F48 F3 E1 00 78 */ psq_st f31, 120(r1), 0, qr0
/* 802CD00C 002C9F4C DB C1 00 60 */ stfd f30, 0x60(r1)
/* 802CD010 002C9F50 F3 C1 00 68 */ psq_st f30, 104(r1), 0, qr0
/* 802CD014 002C9F54 DB A1 00 50 */ stfd f29, 0x50(r1)
/* 802CD018 002C9F58 F3 A1 00 58 */ psq_st f29, 88(r1), 0, qr0
/* 802CD01C 002C9F5C DB 81 00 40 */ stfd f28, 0x40(r1)
/* 802CD020 002C9F60 F3 81 00 48 */ psq_st f28, 72(r1), 0, qr0
/* 802CD024 002C9F64 DB 61 00 30 */ stfd f27, 0x30(r1)
/* 802CD028 002C9F68 F3 61 00 38 */ psq_st f27, 56(r1), 0, qr0
/* 802CD02C 002C9F6C 39 61 00 30 */ addi r11, r1, 0x30
/* 802CD030 002C9F70 48 09 51 A1 */ bl _savegpr_26
/* 802CD034 002C9F74 7C 7D 1B 78 */ mr r29, r3
/* 802CD038 002C9F78 7C 9A 23 78 */ mr r26, r4
/* 802CD03C 002C9F7C 7C BE 2B 78 */ mr r30, r5
/* 802CD040 002C9F80 7C DC 33 78 */ mr r28, r6
/* 802CD044 002C9F84 7C FB 3B 78 */ mr r27, r7
/* 802CD048 002C9F88 FF 60 08 90 */ fmr f27, f1
/* 802CD04C 002C9F8C FF 80 10 90 */ fmr f28, f2
/* 802CD050 002C9F90 FF A0 18 90 */ fmr f29, f3
/* 802CD054 002C9F94 FF C0 20 90 */ fmr f30, f4
/* 802CD058 002C9F98 FF E0 28 90 */ fmr f31, f5
/* 802CD05C 002C9F9C 7D 1F 43 78 */ mr r31, r8
/* 802CD060 002C9FA0 80 8D 86 00 */ lwz r4, lbl_80450B80-_SDA_BASE_(r13)
/* 802CD064 002C9FA4 88 04 00 1E */ lbz r0, 0x1e(r4)
/* 802CD068 002C9FA8 28 00 00 00 */ cmplwi r0, 0
/* 802CD06C 002C9FAC 41 82 00 20 */ beq lbl_802CD08C
/* 802CD070 002C9FB0 88 04 00 16 */ lbz r0, 0x16(r4)
/* 802CD074 002C9FB4 28 00 00 77 */ cmplwi r0, 0x77
/* 802CD078 002C9FB8 41 82 00 14 */ beq lbl_802CD08C
/* 802CD07C 002C9FBC 28 00 00 78 */ cmplwi r0, 0x78
/* 802CD080 002C9FC0 41 82 00 0C */ beq lbl_802CD08C
/* 802CD084 002C9FC4 C3 62 C5 34 */ lfs f27, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CD088 002C9FC8 48 00 00 84 */ b lbl_802CD10C
lbl_802CD08C:
/* 802CD08C 002C9FCC 80 6D 85 FC */ lwz r3, lbl_80450B7C-_SDA_BASE_(r13)
/* 802CD090 002C9FD0 C0 03 00 1C */ lfs f0, 0x1c(r3)
/* 802CD094 002C9FD4 C0 42 C5 30 */ lfs f2, lbl_80455F30-_SDA2_BASE_(r2)
/* 802CD098 002C9FD8 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 802CD09C 002C9FDC 7C 00 00 26 */ mfcr r0
/* 802CD0A0 002C9FE0 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f
/* 802CD0A4 002C9FE4 C8 22 C5 48 */ lfd f1, lbl_80455F48-_SDA2_BASE_(r2)
/* 802CD0A8 002C9FE8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802CD0AC 002C9FEC 3C 00 43 30 */ lis r0, 0x4330
/* 802CD0B0 002C9FF0 90 01 00 10 */ stw r0, 0x10(r1)
/* 802CD0B4 002C9FF4 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 802CD0B8 002C9FF8 EC 00 08 28 */ fsubs f0, f0, f1
/* 802CD0BC 002C9FFC FC 00 10 00 */ fcmpu cr0, f0, f2
/* 802CD0C0 002CA000 41 82 00 0C */ beq lbl_802CD0CC
/* 802CD0C4 002CA004 FF 60 00 90 */ fmr f27, f0
/* 802CD0C8 002CA008 48 00 00 44 */ b lbl_802CD10C
lbl_802CD0CC:
/* 802CD0CC 002CA00C 88 04 00 16 */ lbz r0, 0x16(r4)
/* 802CD0D0 002CA010 28 00 00 6C */ cmplwi r0, 0x6c
/* 802CD0D4 002CA014 41 82 00 0C */ beq lbl_802CD0E0
/* 802CD0D8 002CA018 28 00 00 77 */ cmplwi r0, 0x77
/* 802CD0DC 002CA01C 40 82 00 0C */ bne lbl_802CD0E8
lbl_802CD0E0:
/* 802CD0E0 002CA020 C3 62 C5 50 */ lfs f27, lbl_80455F50-_SDA2_BASE_(r2)
/* 802CD0E4 002CA024 48 00 00 28 */ b lbl_802CD10C
lbl_802CD0E8:
/* 802CD0E8 002CA028 80 6D 85 BC */ lwz r3, lbl_80450B3C-_SDA_BASE_(r13)
/* 802CD0EC 002CA02C 4B FF C2 F9 */ bl Z2EnvSeMgr_NS_getFogDensity
/* 802CD0F0 002CA030 C0 02 C5 54 */ lfs f0, lbl_80455F54-_SDA2_BASE_(r2)
/* 802CD0F4 002CA034 EC 00 00 72 */ fmuls f0, f0, f1
/* 802CD0F8 002CA038 EF 7B 00 2A */ fadds f27, f27, f0
/* 802CD0FC 002CA03C C0 02 C5 34 */ lfs f0, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CD100 002CA040 FC 1B 00 40 */ fcmpo cr0, f27, f0
/* 802CD104 002CA044 40 81 00 08 */ ble lbl_802CD10C
/* 802CD108 002CA048 FF 60 00 90 */ fmr f27, f0
lbl_802CD10C:
/* 802CD10C 002CA04C 80 1A 00 00 */ lwz r0, 0(r26)
/* 802CD110 002CA050 90 01 00 08 */ stw r0, 8(r1)
/* 802CD114 002CA054 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13)
/* 802CD118 002CA058 38 81 00 08 */ addi r4, r1, 8
/* 802CD11C 002CA05C 7F C5 F3 78 */ mr r5, r30
/* 802CD120 002CA060 7F 86 E3 78 */ mr r6, r28
/* 802CD124 002CA064 81 83 05 14 */ lwz r12, 0x514(r3)
/* 802CD128 002CA068 81 8C 00 08 */ lwz r12, 8(r12)
/* 802CD12C 002CA06C 7D 89 03 A6 */ mtctr r12
/* 802CD130 002CA070 4E 80 04 21 */ bctrl
/* 802CD134 002CA074 7C 7C 1B 78 */ mr r28, r3
/* 802CD138 002CA078 80 1E 00 00 */ lwz r0, 0(r30)
/* 802CD13C 002CA07C 28 00 00 00 */ cmplwi r0, 0
/* 802CD140 002CA080 41 82 00 C4 */ beq lbl_802CD204
/* 802CD144 002CA084 28 1B 00 00 */ cmplwi r27, 0
/* 802CD148 002CA088 41 82 00 1C */ beq lbl_802CD164
/* 802CD14C 002CA08C 7F A3 EB 78 */ mr r3, r29
/* 802CD150 002CA090 7F C4 F3 78 */ mr r4, r30
/* 802CD154 002CA094 38 A0 00 06 */ li r5, 6
/* 802CD158 002CA098 57 66 04 3E */ clrlwi r6, r27, 0x10
/* 802CD15C 002CA09C 38 E0 FF FF */ li r7, -1
/* 802CD160 002CA0A0 4B FD DD 7D */ bl Z2SoundStarter_NS_setPortData
lbl_802CD164:
/* 802CD164 002CA0A4 C0 02 C5 30 */ lfs f0, lbl_80455F30-_SDA2_BASE_(r2)
/* 802CD168 002CA0A8 FC 1B 00 40 */ fcmpo cr0, f27, f0
/* 802CD16C 002CA0AC 40 81 00 18 */ ble lbl_802CD184
/* 802CD170 002CA0B0 80 7E 00 00 */ lwz r3, 0(r30)
/* 802CD174 002CA0B4 38 63 00 48 */ addi r3, r3, 0x48
/* 802CD178 002CA0B8 FC 20 D8 90 */ fmr f1, f27
/* 802CD17C 002CA0BC 7F E4 FB 78 */ mr r4, r31
/* 802CD180 002CA0C0 4B FD 5C E5 */ bl JAISoundParamsMove_NS_moveFxMix
lbl_802CD184:
/* 802CD184 002CA0C4 C0 02 C5 34 */ lfs f0, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CD188 002CA0C8 FC 00 E0 00 */ fcmpu cr0, f0, f28
/* 802CD18C 002CA0CC 41 82 00 18 */ beq lbl_802CD1A4
/* 802CD190 002CA0D0 80 7E 00 00 */ lwz r3, 0(r30)
/* 802CD194 002CA0D4 38 63 00 48 */ addi r3, r3, 0x48
/* 802CD198 002CA0D8 FC 20 E0 90 */ fmr f1, f28
/* 802CD19C 002CA0DC 7F E4 FB 78 */ mr r4, r31
/* 802CD1A0 002CA0E0 4B FD 5C 6D */ bl JAISoundParamsMove_NS_movePitch
lbl_802CD1A4:
/* 802CD1A4 002CA0E4 C0 02 C5 34 */ lfs f0, lbl_80455F34-_SDA2_BASE_(r2)
/* 802CD1A8 002CA0E8 FC 00 E8 00 */ fcmpu cr0, f0, f29
/* 802CD1AC 002CA0EC 41 82 00 18 */ beq lbl_802CD1C4
/* 802CD1B0 002CA0F0 80 7E 00 00 */ lwz r3, 0(r30)
/* 802CD1B4 002CA0F4 38 63 00 48 */ addi r3, r3, 0x48
/* 802CD1B8 002CA0F8 FC 20 E8 90 */ fmr f1, f29
/* 802CD1BC 002CA0FC 7F E4 FB 78 */ mr r4, r31
/* 802CD1C0 002CA100 4B FD 5B F5 */ bl moveVolume__18JAISoundParamsMoveFfUl
lbl_802CD1C4:
/* 802CD1C4 002CA104 C0 02 C5 38 */ lfs f0, lbl_80455F38-_SDA2_BASE_(r2)
/* 802CD1C8 002CA108 FC 00 F0 00 */ fcmpu cr0, f0, f30
/* 802CD1CC 002CA10C 41 82 00 18 */ beq lbl_802CD1E4
/* 802CD1D0 002CA110 80 7E 00 00 */ lwz r3, 0(r30)
/* 802CD1D4 002CA114 38 63 00 48 */ addi r3, r3, 0x48
/* 802CD1D8 002CA118 FC 20 F0 90 */ fmr f1, f30
/* 802CD1DC 002CA11C 7F E4 FB 78 */ mr r4, r31
/* 802CD1E0 002CA120 4B FD 5C DD */ bl JAISoundParamsMove_NS_movePan
lbl_802CD1E4:
/* 802CD1E4 002CA124 C0 02 C5 38 */ lfs f0, lbl_80455F38-_SDA2_BASE_(r2)
/* 802CD1E8 002CA128 FC 00 F8 00 */ fcmpu cr0, f0, f31
/* 802CD1EC 002CA12C 41 82 00 18 */ beq lbl_802CD204
/* 802CD1F0 002CA130 80 7E 00 00 */ lwz r3, 0(r30)
/* 802CD1F4 002CA134 38 63 00 48 */ addi r3, r3, 0x48
/* 802CD1F8 002CA138 FC 20 F8 90 */ fmr f1, f31
/* 802CD1FC 002CA13C 7F E4 FB 78 */ mr r4, r31
/* 802CD200 002CA140 4B FD 5D 15 */ bl JAISoundParamsMove_NS_moveDolby
lbl_802CD204:
/* 802CD204 002CA144 7F 83 E3 78 */ mr r3, r28
/* 802CD208 002CA148 E3 E1 00 78 */ psq_l f31, 120(r1), 0, qr0
/* 802CD20C 002CA14C CB E1 00 70 */ lfd f31, 0x70(r1)
/* 802CD210 002CA150 E3 C1 00 68 */ psq_l f30, 104(r1), 0, qr0
/* 802CD214 002CA154 CB C1 00 60 */ lfd f30, 0x60(r1)
/* 802CD218 002CA158 E3 A1 00 58 */ psq_l f29, 88(r1), 0, qr0
/* 802CD21C 002CA15C CB A1 00 50 */ lfd f29, 0x50(r1)
/* 802CD220 002CA160 E3 81 00 48 */ psq_l f28, 72(r1), 0, qr0
/* 802CD224 002CA164 CB 81 00 40 */ lfd f28, 0x40(r1)
/* 802CD228 002CA168 E3 61 00 38 */ psq_l f27, 56(r1), 0, qr0
/* 802CD22C 002CA16C CB 61 00 30 */ lfd f27, 0x30(r1)
/* 802CD230 002CA170 39 61 00 30 */ addi r11, r1, 0x30
/* 802CD234 002CA174 48 09 4F E9 */ bl _restgpr_26
/* 802CD238 002CA178 80 01 00 84 */ lwz r0, 0x84(r1)
/* 802CD23C 002CA17C 7C 08 03 A6 */ mtlr r0
/* 802CD240 002CA180 38 21 00 80 */ addi r1, r1, 0x80
/* 802CD244 002CA184 4E 80 00 20 */ blr